6.7 KiB
6.7 KiB
1.0.4 - 2025-04-12
- Removed validation for the
toolchaininput. The dtolnay/rust-toolchain accepts a lot of different options that this action wasn't allowing. It's simpler and more flexible to just let that action handle validation. Requested by @axos88 (Akos Vandra-Meyer). GH #42. - Removed validation for the
commandinput. This allows you to use this action with anycargoextension command, likecargo-deb. Settingcommandtobothis still supported and will run thebuildandtestcommands. Requested by @bvaisvil (Benjamin Vaisvil). GH #43.
1.0.3 - 2025-02-17
- Fixed a bug when running with a Linux ARM host where the action would use a cached
crossdownload for x86-64 Linux (or vice versa). Now the cache key for thecrossbinary includes both the runner's architecture in addition to its OS. - This release partially support running on Linxu ARM, but see the
README.mdfile for details on this.
1.0.2 - 2025-02-16
- Added a new
force-use-crossinput, which does what it says. It will force the use ofcrosseven when it is not required for given platform/target combination. Note that this only works on Linux hosts.
1.0.1 - 2025-01-20
- Fixed a bug where this action would attempt to use
crosswhen 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-cacheby default for you. It will include thetargetparameter as part of the cache key automatically, as well as the OS version when usingcargoon 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
musltargets, this action will not try to reinstall themusl-toolspackage 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
cargoorcrosschanges. When usingcargoon Linux, this is the OS version, like "Ubuntu 22.04". When usingcross, this is the hash of thecrossbinary itself. This is needed because the Docker images thatcrossuses 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-cacheby default for you. It will include thetargetparameter as part of the cache key automatically. Suggested by @jennydaman (Jennings Zhang). GH #23. - This action now validates its inputs and will exit early if they are not valid. GH #35.
0.0.17 - 2024-11-23
- Added support for running
cargo benchorcross bench. Implemented by @RaulTrombin (Raul Victor Trombin). GH #32.
0.0.16 - 2024-11-17
- Arguments passed in the
argsparameter are now always last when executingcargo. 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
muslpackages are only installed when not cross-compiling.
0.0.14 - 2024-08-25
- When the given
targetincludes the stringmusl, this action will install themusl-toolspackage. 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-versionto a git ref like a commit hash orHEAD. This will installcrossfrom its git repo.
0.0.12 - 2024-02-25
- Bumped the version of
actions/cacheused 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
crosswhen compiling for 32-bit Linux targets. While in theory this should work withoutcross, compilingopensslwith thevendoredfeature fails when we runcargo 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-versionparameter. This can be specified to make this action use a specific version ofcross. If this is not specified, the latest version will be used.
0.0.9 - 2023-09-10
- Added a
working-directoryparameter. 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
crossbinary, 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
cargoandcrosscommands.
0.0.6 - 2023-04-21
- When the
stripparameter was true, stripping binaries could fail if there were bothtarget/*/debugandtarget/*/releasedirectories present and thedebugdirectory didn't have a binary. Now it will strip all binaries it finds undertarget.
0.0.5 - 2023-03-19
- Fix use of
dtolnay/rust-toolchainaction to allow passing atoolchaininput.
0.0.4 - 2023-03-19
- Added a new
toolchainparameter 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
buildandtestcommands, or both, with a new input parameter,command. The default isbuild.
0.0.2 - 2023-03-05
- Fixed some typos in the
README.mddocumentation.
0.0.1 - 2023-03-05
- First release upon an unsuspecting world.