vbs 0.1.7

Version-tagged serialization adaptor with compile-time version checking
Documentation
# Copyright (c) 2022 Espresso Systems (espressosys.com)
# This file is part of the Tide Disco library.
#
# This program is free software: you can redistribute it and/or modify it under the terms of the GNU
# General Public License as published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
# This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
# You should have received a copy of the GNU General Public License along with this program. If not,
# see <https://www.gnu.org/licenses/>.

name: Windows build

on:
  push:
    branches:
      - main
      - release-*
  pull_request:
    branches:
      - main
      - release-*
  workflow_dispatch:

concurrency:
    group: ${{ github.workflow }}-${{ github.ref }}
    cancel-in-progress: true

jobs:
  windows:
    runs-on: windows-latest
    env:
        RUST_LOG: info
    steps:
      - uses: dtolnay/rust-toolchain@stable

      - name: Checkout Repository
        uses: actions/checkout@v4

      - uses: Swatinem/rust-cache@v2
        name: Enable Rust Caching

      - name: Build
        run: |
          cargo build --workspace --release

      - name: Test
        run: |
          cargo test --workspace --release --all-features --no-run
          cargo test --workspace --release --all-features --verbose -- --test-threads 2
        timeout-minutes: 60