tauri/.github/workflows/test-core.yml

104 lines
3.0 KiB
YAML
Raw Normal View History

# Copyright 2019-2024 Tauri Programme within The Commons Conservancy
feat(license): SPDX Headers (#1449) * chore(licenses): api Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(licenses): scripts Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): cli/core Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): cli/tauri-bundler Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): workflows Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): require license_template in rust Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): core/tauri Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): core/tauri-api Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): core/tauri-build Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): core/tauri-codegen Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): core/tauri-macros Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): core/tauri-updater Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): core/tauri-utils Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): examples Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): cli/tauri.js Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): changefile Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): place both licenses in root Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): package.json SPDX Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): SPDX everywhere Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * fix(tauri.js): tests more time for ubuntu Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): commons conservancy language Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): add spdx file Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * fix(license): clippy Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com> * chore(license): language Signed-off-by: Daniel Thompson-Yvetot <denjell@mailscript.com>
2021-04-11 01:09:09 +03:00
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: MIT
name: test core
on:
2021-04-22 23:34:46 +03:00
push:
branches:
2021-04-23 21:34:38 +03:00
- dev
- 1.x
pull_request:
paths:
- '.github/workflows/test-core.yml'
- 'core/**'
- '!core/tauri/scripts/**'
env:
RUST_BACKTRACE: 1
2022-02-14 02:27:21 +03:00
CARGO_PROFILE_DEV_DEBUG: 0 # This would add unnecessary bloat to the target folder, decreasing cache efficiency.
2022-04-21 21:09:57 +03:00
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
2022-04-21 21:09:57 +03:00
cancel-in-progress: true
jobs:
Merge remote-tracking branch 'origin/dev' into next (#7067) Co-authored-by: wusyong <wusyong@users.noreply.github.com> Co-authored-by: Fabian-Lars <fabianlars@fabianlars.de> Co-authored-by: Lucas Nogueira <lucas@tauri.studio> Co-authored-by: Simon Hyll <hyllsimon@gmail.com> Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.app> Co-authored-by: Lucas Nogueira <lucas@tauri.app> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Lucas Fernandes Nogueira <lucas@tauri.studio> Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: chip <chip@chip.sh> Co-authored-by: Raphii <iam@raphii.co> Co-authored-by: Ronie Martinez <ronmarti18@gmail.com> Co-authored-by: hanaTsuk1 <101488209+hanaTsuk1@users.noreply.github.com> Co-authored-by: nathan-fall <39990940+nathan-fall@users.noreply.github.com> Co-authored-by: Akshay <nerdy@peppe.rs> Co-authored-by: KurikoMoe <kurikomoe@gmail.com> Co-authored-by: Guilherme Oenning <me@goenning.net> Co-authored-by: Pierre Cashon <biaocy91@gmail.com> Co-authored-by: Jack Wills <32690432+mrjackwills@users.noreply.github.com> Co-authored-by: Amirhossein Akhlaghpour <m9.akhlaghpoor@gmail.com> Co-authored-by: Risto Stevcev <me@risto.codes> Co-authored-by: Soumt <rltks1305@naver.com> Co-authored-by: yutotnh <57719497+yutotnh@users.noreply.github.com> Co-authored-by: Gökçe Merdun <agmmnn@gmail.com> Co-authored-by: Nathanael Rea <Nathan@NathanaelRea.com> Co-authored-by: Usman Rajab <usman.rajab@gmail.com> Co-authored-by: Francis The Basilisk <36006338+snorkysnark@users.noreply.github.com> Co-authored-by: Lej77 <31554212+Lej77@users.noreply.github.com> Co-authored-by: Tomáš Diblík <dibla.tomas@post.cz> Co-authored-by: Jonas Kruckenberg <iterpre@protonmail.com> Co-authored-by: Pascal Sommer <Pascal-So@users.noreply.github.com> Co-authored-by: Bo <bertonzh@gmail.com> Co-authored-by: Kevin Yue <k3vinyue@gmail.com> fixed grammar and typos (#6937) Fix api.js docs pipeline with updated typedoc dependencies (#6945) closes #6887 (#6922) fix(core): Fix `WindowBuilder::on_navigation` handler never registerd, closes #6865 (#6921) fix(core): Fix `WindowBuilder::on_navigation` handler never registerd, closes #6865 fix broken symlinks in license files (#6336) fix(cli): fix cli connection timeout to dev server (fix #6045) (#6046) fix(bundler): ensure that there are no duplicate extension arguments when bundling on Windows, fixes #6103 (#6917) fix(bundler): ensure that there are no duplicate extension arguments during bundling on Windows (fix #6103) closes #5491 (#6408) fix(nsis): prefill $INSTDIR with previous install path and respect `/D` flag, closes #6928 (#6935) fix(nsis): prefill $INSTDIR with previous install path and respect `/D` flag, closes #6928 fix(updater): emit `UPTODATE` when server responds with 204, closes #6934 (#6970) fix(core): unpin all dependencies, closes #6944 (#6966) fix(bundler): Add new lang_file option in persian variant. (#6972) fix(core/ipc): access url through webview native object, closes #6889 (#6976) fix(core): remove trailing slash in http scope url, closes #5208 (#6974) fix(core): remove trailing slash in http scope url, closes #5208 fix(cli): find correct binary when `--profile` is used, closes #6954 (#6979) fix(cli): find correct binary when `--profile` is used, closes #6954 closes #6955 (#6987) closes #6955 closes #6158 (#6969) closes #6158 fix(cli): improve vs build tools detection (#6982) fix: updated appimage script to follow symlinks for /usr/lib* (fix: #6992) (#6996) fix(cli): correctly remove Cargo features (#7013) Fix typo (#7012) fix(cli): revert metadata.json field rename from #6795 (#7029) closes #6732 (#6736) fix: add missing file properties on Windows, closes #6676 (#6693) fix(cli.js): detect node-20 binary (#6667) fix version-or-publish workflow (#7031) fix(cli/devserver): inject autoreload into HTML only, closes #6997 (#7032) fix(bundler/nsis): write installer templates UTF16LE encoded, closes #7036 (#7040) fix(bundler/nsis): write installer templates UTF16LE encoded, closes #7036 fix(core): rewrite `asset` protocol streaming, closes #6375 (#6390) closes #5939 (#5960) fix(core): use `safe_block_on` (#7047) closes #6859 (#6933) closes #6955 (#6998) fix(core): populate webview_attrs from config, closes #6794 (#6797) closes #5176 (#5180) fix: sound for notifications on windows (fix #6652) (#6680) close native window's buttons, closes #2353 (#6665) fix(bundler/nsis): calculate accurate app size, closes #7056 (#7057) fix(tests): only download update when it is available (#7061) closes #6706 (#6712) fix(doc): correct the doc of `content_protected()` (#7065) closes #6472 (#6530) fix(macros): use full path to Result to avoid issues with type aliases (#7071)
2023-05-30 03:29:24 +03:00
test:
2022-08-28 22:26:32 +03:00
runs-on: ${{ matrix.platform.os }}
strategy:
fail-fast: false
matrix:
2022-08-28 22:26:32 +03:00
platform:
- {
target: x86_64-pc-windows-msvc,
os: windows-latest,
2023-10-17 17:08:15 +03:00
toolchain: '1.70.0',
2022-08-29 05:02:32 +03:00
cross: false,
command: 'test'
2022-08-28 22:26:32 +03:00
}
- {
target: x86_64-unknown-linux-gnu,
os: ubuntu-latest,
2023-10-17 17:08:15 +03:00
toolchain: '1.70.0',
2022-08-29 05:02:32 +03:00
cross: false,
command: 'test'
2022-08-28 22:26:32 +03:00
}
- {
target: aarch64-apple-darwin,
os: macos-14,
2023-10-17 17:08:15 +03:00
toolchain: '1.70.0',
2022-08-29 05:02:32 +03:00
cross: false,
command: 'test'
}
- {
target: aarch64-apple-ios,
os: macos-latest,
2023-10-17 17:08:15 +03:00
toolchain: '1.70.0',
2022-08-29 05:02:32 +03:00
cross: false,
command: 'build'
2022-08-29 05:02:32 +03:00
}
- {
target: aarch64-linux-android,
os: ubuntu-latest,
2023-10-17 17:08:15 +03:00
toolchain: '1.70.0',
2022-08-29 05:02:32 +03:00
cross: true,
command: 'build'
2022-08-28 22:26:32 +03:00
}
features:
- { args: --no-default-features, key: no-default }
- { args: --all-features, key: all }
steps:
- uses: actions/checkout@v4
- name: install Rust
uses: dtolnay/rust-toolchain@master
with:
2022-08-28 22:26:32 +03:00
toolchain: ${{ matrix.platform.toolchain }}
targets: ${{ matrix.platform.target }}
2022-11-05 19:14:56 +03:00
- name: install Linux dependencies
2022-08-28 22:26:32 +03:00
if: contains(matrix.platform.target, 'unknown-linux')
run: |
sudo apt-get update
sudo apt-get install -y webkit2gtk-4.1 libxdo-dev libayatana-appindicator3-dev
2021-04-22 23:34:46 +03:00
- uses: Swatinem/rust-cache@v2
2021-04-22 23:34:46 +03:00
with:
2023-10-17 17:08:15 +03:00
prefix-key: v2
workspaces: core -> ../target
save-if: ${{ matrix.features.key == 'all' }}
2021-04-22 23:34:46 +03:00
2023-10-17 17:08:15 +03:00
- name: test (using cross)
if: ${{ matrix.platform.cross }}
# update or remove the rev once we update the MSRV from 1.70.0
run: |
cargo install cross --git https://github.com/cross-rs/cross --rev 20c73df79c9aaf78a2ad2e9fe8ae981668a729dc --locked
2023-10-17 17:08:15 +03:00
cross ${{ matrix.platform.command }} --target ${{ matrix.platform.target }} ${{ matrix.features.args }}
2023-10-17 17:08:15 +03:00
- name: test (using cargo)
if: ${{ !matrix.platform.cross }}
run: cargo ${{ matrix.platform.command }} --target ${{ matrix.platform.target }} ${{ matrix.features.args }}