Deprecate kaleido #590
Workflow file for this run
This file contains hidden or 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
| name: CI | |
| on: | |
| workflow_dispatch: | |
| pull_request: | |
| branches: [ main ] | |
| push: | |
| branches: [ main ] | |
| # Cancel any in-flight jobs for the same PR/branch so there's only one active | |
| # at a time | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| RUST_BACKTRACE: full | |
| jobs: | |
| rustfmt: | |
| name: Rustfmt | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@nightly | |
| with: | |
| components: rustfmt | |
| - run: cargo fmt --all -- --check | |
| - run: cd ${{ github.workspace }}/examples && cargo fmt --all -- --check | |
| clippy: | |
| name: Clippy | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Chrome | |
| uses: browser-actions/setup-chrome@v1 | |
| with: | |
| chrome-version: 'latest' | |
| install-chromedriver: true | |
| install-dependencies: true | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: clippy | |
| targets: wasm32-unknown-unknown | |
| # lint the main library workspace for non-wasm target | |
| - run: cargo clippy --features all -- -D warnings -A deprecated | |
| # lint the non-wasm examples | |
| - run: cd ${{ github.workspace }}/examples && cargo clippy --workspace --exclude "wasm*" --exclude "kaleido" -- -D warnings | |
| # lint the plotly library for wasm target | |
| - run: cargo clippy --package plotly --target wasm32-unknown-unknown -- -D warnings | |
| # lint the wasm examples | |
| - run: cd ${{ github.workspace }}/examples/wasm-yew && cargo clippy --target wasm32-unknown-unknown --all | |
| semver: | |
| name: semver | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Check semver | |
| uses: obi1kenobi/cargo-semver-checks-action@v2 | |
| with: | |
| package: plotly | |
| feature-group: only-explicit-features | |
| features: kaleido | |
| rust-toolchain: stable | |
| release-type: minor | |
| test: | |
| name: Tests | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, windows-latest, macos-latest] | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - name: Setup Chrome | |
| uses: browser-actions/setup-chrome@v1 | |
| with: | |
| chrome-version: 'latest' | |
| install-chromedriver: true | |
| install-dependencies: true | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - run: cargo test --features plotly_ndarray,plotly_image,static_export_default | |
| - if: ${{ matrix.os == 'windows-latest' }} | |
| run: gci -recurse -filter "*example*" | |
| test-static-export: | |
| name: Test Static Export | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, windows-latest, macos-latest] | |
| browser: [firefox, chrome] | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Firefox | |
| if: matrix.browser == 'firefox' | |
| uses: browser-actions/setup-firefox@v1 | |
| with: | |
| firefox-version: 'latest' | |
| - name: Setup Chrome | |
| if: matrix.browser == 'chrome' | |
| uses: browser-actions/setup-chrome@v1 | |
| with: | |
| chrome-version: 'latest' | |
| install-chromedriver: true | |
| install-dependencies: true | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Test plotly and plotly_static | |
| shell: bash | |
| run: | | |
| if [ "${{ matrix.browser }}" = "firefox" ]; then | |
| cargo test --features static_export_default --lib | |
| cd plotly_static && cargo test --features geckodriver,webdriver_download | |
| else | |
| cargo test --features static_export_chromedriver,static_export_downloader --lib | |
| cd plotly_static && cargo test --features chromedriver,webdriver_download | |
| fi | |
| code-coverage: | |
| name: Code Coverage | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: llvm-tools-preview | |
| - uses: taiki-e/install-action@cargo-llvm-cov | |
| - uses: codecov/codecov-action@v3 | |
| build_examples: | |
| name: Build Examples | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| example: # missing jupyter | |
| [ | |
| 3d_charts, | |
| basic_charts, | |
| custom_controls, | |
| customization, | |
| financial_charts, | |
| images, | |
| kaleido, | |
| maps, | |
| ndarray, | |
| scientific_charts, | |
| shapes, | |
| static_export, | |
| subplots, | |
| themes, | |
| ] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Firefox (for static_export) | |
| if: matrix.example == 'static_export' | |
| uses: browser-actions/setup-firefox@v1 | |
| with: | |
| firefox-version: 'latest' | |
| - uses: dtolnay/rust-toolchain@stable | |
| - run: cd ${{ github.workspace }}/examples/${{ matrix.example }} && cargo build | |
| build_wasm_examples: | |
| name: Build Wasm Examples | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| example: [basic, callback-example] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| targets: wasm32-unknown-unknown | |
| - run: cd ${{ github.workspace }}/examples/wasm-yew/${{ matrix.example }} && cargo build --target wasm32-unknown-unknown | |
| build_book: | |
| name: Build Book | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Firefox (for static_export example) | |
| uses: browser-actions/setup-firefox@v1 | |
| with: | |
| firefox-version: 'latest' | |
| - uses: dtolnay/rust-toolchain@stable | |
| - run: cargo install mdbook --no-default-features --features search --vers "^0.4" --locked --quiet | |
| - name: Build examples to generate needed html files | |
| run: | | |
| cd ${{ github.workspace }}/examples/basic_charts && cargo run | |
| cd ${{ github.workspace }}/examples/statistical_charts && cargo run | |
| cd ${{ github.workspace }}/examples/scientific_charts && cargo run | |
| cd ${{ github.workspace }}/examples/financial_charts && cargo run | |
| cd ${{ github.workspace }}/examples/3d_charts && cargo run | |
| cd ${{ github.workspace }}/examples/subplots && cargo run | |
| cd ${{ github.workspace }}/examples/shapes && cargo run | |
| cd ${{ github.workspace }}/examples/themes && cargo run | |
| cd ${{ github.workspace }}/examples/static_export && cargo run | |
| - name: Build book | |
| run: mdbook build docs/book |