libxml 0.3.8

A Rust wrapper for libxml2 - the XML C parser and toolkit developed for the Gnome project
Documentation
on: [push, pull_request]

name: CI Windows

jobs:
  test-default-windows:
    name: Windows vcpkg (default)
    runs-on: windows-latest
    env: 
      VCPKGRS_DYNAMIC: 1
      VCPKG_DEFAULT_TRIPLET: x64-windows
      VCPKG_ROOT: C:\vcpkg
    steps:
      - uses: actions/checkout@v4
      - name: Setup vcpkg libxml2 Cache
        uses: actions/cache@v4
        id: vcpkg-cache
        with:
          path: C:\vcpkg
          key: vcpkg-libxml2
      - name: Install libxml2 with vcpkg
        run: |
          vcpkg install libxml2:x64-windows
          vcpkg integrate install
      - name: run tests
        uses: actions-rs/cargo@v1
        with:
          command: test

  test-mingw64-windows:
    name: Windows (mingw64)
    runs-on: windows-latest
    defaults:
      run:
        shell: msys2 {0}
    steps:
      - uses: actions/checkout@v4
      - uses: msys2/setup-msys2@v2
        with:
          path-type: minimal
          release: false
          update: false
          msystem: MINGW64
          install: >-
            mingw64/mingw-w64-x86_64-pkg-config
            mingw64/mingw-w64-x86_64-libxml2
      - name: Install stable windows-gnu Rust toolchain
        uses: actions-rs/toolchain@v1
        with:
          toolchain: stable-x86_64-pc-windows-gnu
          target: x86_64-pc-windows-gnu
          override: true
      - name: Ensure mingw64 pkg-config is in path
        run: echo "C:\msys64\mingw64\bin" >> "$GITHUB_PATH"
      - name: run tests
        uses: actions-rs/cargo@v1
        with:
          command: test