Add basic QSettings wrapper #352
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
name: Rust | |
on: | |
push: | |
branches: [ master ] | |
pull_request: | |
branches: [ master ] | |
workflow_dispatch: | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
build: | |
env: | |
QT_QPA_PLATFORM: offscreen | |
strategy: | |
matrix: | |
os: [ubuntu-latest, windows-latest] | |
qt: [5.15.2, 5.9.9, 5.12.9] | |
rust: [stable, nightly] | |
include: | |
- os: macos-latest | |
rust: stable | |
qt: 5.15.2 | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: ${{ matrix.rust }} | |
override: true | |
components: rustfmt, clippy | |
- uses: Swatinem/rust-cache@v1 | |
with: | |
key: rust_cache | |
- name: Cache Qt | |
id: cache-qt | |
uses: actions/cache@v1 | |
with: | |
path: ../Qt | |
key: QtCache-${{ runner.os }}-${{ matrix.qt }} | |
- name: Install Qt | |
uses: jurplel/install-qt-action@v2 | |
with: | |
version: ${{ matrix.qt }} | |
cached: ${{ steps.cache-qt.outputs.cache-hit }} | |
modules: 'qtwebengine' | |
- name: Build | |
run: cargo build --all-features | |
- name: Run tests | |
# I'm getting error i don't know how to solve 'dyld: Library not loaded: @rpath/QtCore.framework/Versions/5/QtCore | |
if: matrix.os != 'macos-latest' | |
run: cargo test --all-features | |
# Qt6 is in a different job right now because it does not have many modules and most example don't compile | |
qt6: | |
strategy: | |
matrix: | |
os: [ubuntu-latest, windows-latest] | |
env: | |
QT_QPA_PLATFORM: offscreen | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: stable | |
override: true | |
components: rustfmt, clippy | |
- uses: Swatinem/rust-cache@v1 | |
with: | |
key: rust_cache6 | |
- name: Cache Qt | |
id: cache-qt6 | |
uses: actions/cache@v1 | |
with: | |
path: ../Qt | |
key: QtCache-${{ runner.os }}-6.2 | |
- name: Install Qt | |
uses: jurplel/install-qt-action@v2 | |
with: | |
version: 6.2.0 | |
cached: ${{ steps.cache-qt6.outputs.cache-hit }} | |
- name: Test | |
run: | | |
cargo test --manifest-path qttypes/Cargo.toml | |
cargo test --manifest-path qmetaobject_impl/Cargo.toml | |
cargo test --manifest-path qmetaobject/Cargo.toml | |
no_qt: | |
strategy: | |
matrix: | |
os: [ubuntu-latest, windows-latest] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
with: | |
key: rust_cache | |
- name: Build qttypes without qt | |
run: | | |
cargo build --manifest-path qttypes/Cargo.toml --no-default-features |