Implement Eq, Hash, and Clone for PdfBookmark #105
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# To run locally using act, use command: | |
# act -P ubuntu-latest=ghcr.io/catthehacker/ubuntu:rust-latest | |
# See: https://github.com/nektos/act/issues/297 | |
name: Auto-build pdfium-render | |
on: | |
push: | |
branches: [ "master" ] | |
pull_request: | |
branches: [ "master" ] | |
env: | |
CARGO_TERM_COLOR: always | |
PDFIUM_RELEASE_TAG: 6721 # September 2024, https://github.com/bblanchon/pdfium-binaries/releases/tag/chromium%2F6721 | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Build | |
run: rustup update && cargo build --verbose | |
- name: Download Pdfium | |
run: curl -L -o "pdfium.tgz" "https://github.com/bblanchon/pdfium-binaries/releases/download/chromium/${PDFIUM_RELEASE_TAG}/pdfium-linux-x64.tgz" | |
- name: Unpack Pdfium | |
run: mkdir pdfium && tar -xvzf pdfium.tgz -C pdfium | |
- name: Install Pdfium | |
run: cp pdfium/lib/libpdfium.so . && export LD_LIBRARY_PATH="./" | |
- name: Run tests | |
run: cargo test --verbose --features="paragraph" | |
- name: Verify static linking compatibility | |
run: cargo check --features="static" | |
- name: Verify WASM compatibility | |
run: cargo install wasm-pack && wasm-pack build examples/ --target no-modules | |
- name: Generate documentation | |
run: cargo doc | |
# Check to make sure we have complete Pdfium API coverage in bindings | |
- name: Check bindings API coverage | |
run: bash .github/scripts/api_coverage_test.sh | |
# Compatibility checks for dynamic and thread safe bindings | |
- name: Check forward compatibility with pdfium_future and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_future" | |
- name: Check backward compatibility with pdfium_5961 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_5961" | |
- name: Check backward compatibility with pdfium_6015 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6015" | |
- name: Check backward compatibility with pdfium_6043 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6043" | |
- name: Check backward compatibility with pdfium_6084 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6084" | |
- name: Check backward compatibility with pdfium_6110 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6110" | |
- name: Check backward compatibility with pdfium_6124 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6124" | |
- name: Check backward compatibility with pdfium_6164 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6164" | |
- name: Check backward compatibility with pdfium_6259 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6259" | |
- name: Check backward compatibility with pdfium_6295 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6295" | |
- name: Check backward compatibility with pdfium_6337 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6337" | |
- name: Check backward compatibility with pdfium_6406 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6406" | |
- name: Check backward compatibility with pdfium_6490 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6490" | |
- name: Check backward compatibility with pdfium_6555 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6555" | |
- name: Check backward compatibility with pdfium_6569 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6569" | |
- name: Check backward compatibility with pdfium_6611 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6611" | |
- name: Check backward compatibility with pdfium_6666 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6666" | |
- name: Check backward compatibility with pdfium_6721 and dynamic bindings | |
run: cargo check --no-default-features --features="image, thread_safe, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6721" | |
# Compatibility checks for static bindings | |
- name: Check forward compatibility with pdfium_future and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_future" | |
- name: Check backward compatibility with pdfium_5961 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_5961" | |
- name: Check backward compatibility with pdfium_6015 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6015" | |
- name: Check backward compatibility with pdfium_6043 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6043" | |
- name: Check backward compatibility with pdfium_6084 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6084" | |
- name: Check backward compatibility with pdfium_6110 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6110" | |
- name: Check backward compatibility with pdfium_6124 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6124" | |
- name: Check backward compatibility with pdfium_6164 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6164" | |
- name: Check backward compatibility with pdfium_6259 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6259" | |
- name: Check backward compatibility with pdfium_6295 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6295" | |
- name: Check backward compatibility with pdfium_6337 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6337" | |
- name: Check backward compatibility with pdfium_6406 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6406" | |
- name: Check backward compatibility with pdfium_6490 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6490" | |
- name: Check backward compatibility with pdfium_6555 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6555" | |
- name: Check backward compatibility with pdfium_6569 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6569" | |
- name: Check backward compatibility with pdfium_6611 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6611" | |
- name: Check backward compatibility with pdfium_6666 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6666" | |
- name: Check backward compatibility with pdfium_6721 and static bindings | |
run: cargo check --no-default-features --features="image, static, pdfium_use_skia, pdfium_enable_xfa, pdfium_enable_v8, pdfium_6721" | |
# Compatibility checks for WASM bindings | |
- name: Check forward compatibility with pdfium_future and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_future | |
- name: Check backward compatibility with pdfium_5961 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_5961 | |
- name: Check backward compatibility with pdfium_6015 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6015 | |
- name: Check backward compatibility with pdfium_6043 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6043 | |
- name: Check backward compatibility with pdfium_6084 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6084 | |
- name: Check backward compatibility with pdfium_6110 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6110 | |
- name: Check backward compatibility with pdfium_6124 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6124 | |
- name: Check backward compatibility with pdfium_6164 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6164 | |
- name: Check backward compatibility with pdfium_6259 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6259 | |
- name: Check backward compatibility with pdfium_6295 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6295 | |
- name: Check backward compatibility with pdfium_6337 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6337 | |
- name: Check backward compatibility with pdfium_6406 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6406 | |
- name: Check backward compatibility with pdfium_6490 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6490 | |
- name: Check backward compatibility with pdfium_6555 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6555 | |
- name: Check backward compatibility with pdfium_6569 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6569 | |
- name: Check backward compatibility with pdfium_6611 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6611 | |
- name: Check backward compatibility with pdfium_6666 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6666 | |
- name: Check backward compatibility with pdfium_6721 and WASM bindings | |
run: bash .github/scripts/wasm_api_compat_test.sh pdfium_6721 |