Some checks failed
Lint / Check that code is lint clean using precious (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:false can-execute:true cross-version:19be834 expect-cross:--expect-cross expect-cross-version:19be834 expect-file-re:aarch64 expect-stripped: platform_name:Linux-aarch64 with cross 19be834 runs-on:ubuntu-22.04 target… (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:false can-execute:true cross-version:v0.2.3 expect-cross:--expect-cross expect-cross-version:0.2.3 expect-file-re:aarch64 expect-stripped: platform_name:Linux-aarch64 with cross v0.2.3 (no cache) runs-on:ubuntu-22.04… (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:false can-execute:true expect-cross:--expect-cross expect-file-re:aarch64 expect-stripped: platform_name:Linux-aarch64 (no cache) runs-on:ubuntu-22.04 target:aarch64-unknown-linux-musl]) (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:false expect-cross:--expect-cross expect-file-re:x86-64.+FreeBSD expect-stripped: platform_name:FreeBSD-x86_64 runs-on:ubuntu-22.04 target:x86_64-unknown-freebsd]) (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:false expect-cross:--expect-cross expect-file-re:x86-64.+NetBSD expect-stripped: platform_name:NetBSD-x86_64 runs-on:ubuntu-22.04 target:x86_64-unknown-netbsd]) (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:true cross-version:19be834 expect-cross:--expect-cross expect-cross-version:19be834 expect-file-re:aarch64 expect-stripped: platform_name:Linux-aarch64 with cross 19be834 runs-on:ubuntu-22.04 target:… (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:true cross-version:v0.2.3 expect-cross:--expect-cross expect-cross-version:0.2.3 expect-file-re:aarch64 expect-stripped: platform_name:Linux-aarch64 with cross v0.2.3 runs-on:ubuntu-22.04 target:aarc… (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:true expect-cross: expect-file-re:ELF.+x86-64 expect-stripped:--expect-stripped platform_name:Linux-x86_64 runs-on:ubuntu-22.04 target:x86_64-unknown-linux-musl]) (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:true expect-cross:--expect-cross expect-file-re:32.+ARM expect-stripped: platform_name:Linux-arm runs-on:ubuntu-22.04 target:arm-unknown-linux-musleabi]) (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:true expect-cross:--expect-cross expect-file-re:32.+PowerPC expect-stripped: platform_name:Linux-powerpc runs-on:ubuntu-22.04 target:powerpc-unknown-linux-gnu]) (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:true expect-cross:--expect-cross expect-file-re:64.+PowerPC expect-stripped: platform_name:Linux-powerpc64 runs-on:ubuntu-22.04 target:powerpc64-unknown-linux-gnu]) (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:true expect-cross:--expect-cross expect-file-re:64.+PowerPC expect-stripped: platform_name:Linux-powerpc64le runs-on:ubuntu-22.04 target:powerpc64le-unknown-linux-gnu]) (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:true expect-cross:--expect-cross expect-file-re:64.+RISC-V expect-stripped: platform_name:Linux-riscv64 runs-on:ubuntu-22.04 target:riscv64gc-unknown-linux-gnu]) (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:true expect-cross:--expect-cross expect-file-re:64.+S/390 expect-stripped: platform_name:Linux-s390x runs-on:ubuntu-22.04 target:s390x-unknown-linux-gnu]) (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:true expect-cross:--expect-cross expect-file-re:ELF.+80386 expect-stripped: platform_name:Linux-i586 runs-on:ubuntu-22.04 target:i586-unknown-linux-musl]) (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:true expect-cross:--expect-cross expect-file-re:ELF.+80386 expect-stripped: platform_name:Linux-i686 runs-on:ubuntu-22.04 target:i686-unknown-linux-musl]) (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:true expect-cross:--expect-cross expect-file-re:aarch64 expect-stripped: platform_name:Linux-aarch64 runs-on:ubuntu-22.04 target:aarch64-unknown-linux-musl]) (push) Failing after 0s
Self-test / Test validate-inputs (push) Failing after 0s
Self-test / Test action (map[cache-cross-binary:true can-execute:false expect-cross: expect-file-re:Aarch64.+Windows expect-stripped: platform_name:Windows-aarch64 runs-on:windows-latest target:aarch64-pc-windows-msvc]) (push) Has been cancelled
Self-test / Test action (map[cache-cross-binary:true can-execute:false expect-cross: expect-file-re:Mach-O.+arm64 expect-stripped:--expect-stripped platform_name:macOS-aarch64 runs-on:macOS-latest target:aarch64-apple-darwin]) (push) Has been cancelled
Self-test / Test action (map[cache-cross-binary:true can-execute:true expect-cross: expect-file-re:80386.+Windows expect-stripped:--expect-stripped platform_name:Windows-i686 runs-on:windows-latest target:i686-pc-windows-msvc]) (push) Has been cancelled
Self-test / Test action (map[cache-cross-binary:true can-execute:true expect-cross: expect-file-re:Mach-O.+x86_64 expect-stripped:--expect-stripped platform_name:macOS-x86_64 runs-on:macOS-latest target:x86_64-apple-darwin]) (push) Has been cancelled
Self-test / Test action (map[cache-cross-binary:true can-execute:true expect-file-re:x86-64.+Windows expect-stripped:--expect-stripped platform_name:Windows-x86_64 runs-on:windows-latest target:x86_64-pc-windows-msvc]) (push) Has been cancelled
130 lines
5.5 KiB
Markdown
130 lines
5.5 KiB
Markdown
## 1.0.1 - 2025-01-20
|
|
|
|
- Fixed a bug where this action would attempt to use `cross` when compiling for an ARM Linux target
|
|
on an ARM Linux host.
|
|
|
|
## 1.0.0 - 2025-01-11
|
|
|
|
The addition of caching is a significant behavior change for this action, so the version has been
|
|
bumped to v1.0.0 because of this change.
|
|
|
|
- This action will now configure and use `Swatinem/rust-cache` by default for you. It will include
|
|
the `target` parameter as part of the cache key automatically, as well as the OS version when
|
|
using `cargo` on Linux. Suggested by @jennydaman (Jennings Zhang). GH #23.
|
|
- This action now validates its input and will exit early if they are not valid. GH #35.
|
|
- When compiling for `musl` targets, this action will not try to reinstall the `musl-tools` package
|
|
if it's already installed.
|
|
|
|
The following changes were made since the 1.0.0-beta1 release:
|
|
|
|
- The cache key includes information that causes the cache to not be re-used when the system running
|
|
`cargo` or `cross` changes. When using `cargo` on Linux, this is the OS version, like "Ubuntu
|
|
22.04". When using `cross`, this is the hash of the `cross` binary itself. This is needed because
|
|
the Docker images that `cross` uses can change when the binary is updated. This can include
|
|
changing the underlying Docker image base OS, in which case it's quite likely the old cache
|
|
contents would be incompatible with the the new image.
|
|
|
|
## 1.0.0-beta1 - 2024-12-21
|
|
|
|
The addition of caching is a significant behavior change for this action, so the version has been
|
|
bumped to v1.0.0 because of this change.
|
|
|
|
- This action will now configure and use `Swatinem/rust-cache` by default for you. It will include
|
|
the `target` parameter as part of the cache key automatically. Suggested by @jennydaman (Jennings
|
|
Zhang). GH #23.
|
|
- This action now validates its input and will exit early if they are not valid. GH #35.
|
|
|
|
## 0.0.17 - 2024-11-23
|
|
|
|
- Added support for running `cargo bench` or `cross bench`. Implemented by @RaulTrombin (Raul Victor
|
|
Trombin). GH #32.
|
|
|
|
## 0.0.16 - 2024-11-17
|
|
|
|
- Arguments passed in the `args` parameter are now always last when executing `cargo`. This lets you
|
|
pass arguments to test binaries like `-- --something`. First reported by @mateocabanal (Mateo
|
|
Cabanal) as GH #12 and fully fixed by @donatello (Aditya Manthramurthy) in GH #30.
|
|
|
|
## 0.0.15 - 2024-09-21
|
|
|
|
- The `musl` packages are only installed when not cross-compiling.
|
|
|
|
## 0.0.14 - 2024-08-25
|
|
|
|
- When the given `target` includes the string `musl`, this action will install the `musl-tools`
|
|
package. This allows crates with C or C++ code to compile properly. Fixes #20. Reported by Matteo
|
|
Pietro Dazzi (@ilteoood).
|
|
|
|
## 0.0.13 - 2024-05-18
|
|
|
|
- It's now possible to set `cross-version` to a git ref like a commit hash or `HEAD`. This will
|
|
install `cross` from its git repo.
|
|
|
|
## 0.0.12 - 2024-02-25
|
|
|
|
- Bumped the version of `actions/cache` used in this action to v4. The v3 version uses Node 16,
|
|
which causes warnings when run. Implemented by @hms5232. GH #13.
|
|
|
|
## 0.0.11 - 2023-12-17
|
|
|
|
- Use `cross` when compiling for 32-bit Linux targets. While in theory this should work without
|
|
`cross`, compiling `openssl` with the `vendored` feature fails when we run
|
|
`cargo build --target i686-unknown-linux-musl`.
|
|
|
|
## 0.0.10 - 2023-12-10
|
|
|
|
- Fixed handling of crates with multiple binaries. Attempting to strip binaries for such a crate
|
|
caused the build to fail. Reported by Tomaž Hribernik. GH #8
|
|
- Added a new `cross-version` parameter. This can be specified to make this action use a specific
|
|
version of `cross`. If this is not specified, the latest version will be used.
|
|
|
|
## 0.0.9 - 2023-09-10
|
|
|
|
- Added a `working-directory` parameter. By default this is the current directory (`.`) but you can
|
|
set it to something else to compile a single crate or workspace in a subdirectory of the repo.
|
|
This allows you to use this action with monorepos with multiple crates. Based on GH #7 by
|
|
@aaronvg.
|
|
|
|
## 0.0.8 - 2023-07-22
|
|
|
|
- For builds that need the `cross` binary, this binary is now cached. A cache hit saves about 20
|
|
seconds in my tests. Suggested by @timon-schelling. GH #4.
|
|
|
|
## 0.0.7 - 2023-04-21
|
|
|
|
- The toolchain argument was (probably) not being respected with cross builds, though it's hard to
|
|
be sure since none of the output from past CI runs I've looked at it includes the toolchain
|
|
version in the output. But now the toolchain version is explicitly passed to all `cargo` and
|
|
`cross` commands.
|
|
|
|
## 0.0.6 - 2023-04-21
|
|
|
|
- When the `strip` parameter was true, stripping binaries could fail if there were both
|
|
`target/*/debug` and `target/*/release` directories present and the `debug` directory didn't have
|
|
a binary. Now it will strip all binaries it finds under `target`.
|
|
|
|
## 0.0.5 - 2023-03-19
|
|
|
|
- Fix use of `dtolnay/rust-toolchain` action to allow passing a `toolchain` input.
|
|
|
|
## 0.0.4 - 2023-03-19
|
|
|
|
- Added a new `toolchain` parameter to allow selecting a Rust toolchain other than stable. This
|
|
supports picking on of "stable", "beta", or "nightly".
|
|
- Fixed binary stripping to work in more situations. Previously it depended on a very specific setup
|
|
plus expected to be run in the context of the matrix I use for my own projects.
|
|
- Fixed a reference to a matrix variable that should have referenced an input variable.
|
|
|
|
## 0.0.3 - 2023-03-17
|
|
|
|
- This action now supports running the `build` and `test` commands, or both, with a new input
|
|
parameter, `command`. The default is `build`.
|
|
|
|
## 0.0.2 - 2023-03-05
|
|
|
|
- Fixed some typos in the `README.md` documentation.
|
|
|
|
## 0.0.1 - 2023-03-05
|
|
|
|
- First release upon an unsuspecting world.
|