v0.10.0
shuttle: v0.10.0 update
We're excited to release shuttle v0.10.0! 🚀
Here are the highlights in this update.
Local secrets
We now support setting secrets for the local development environment, meaning for cargo shuttle run
. To use local secrets, simply create a Secrets.dev.toml
file, and this will only be used for local runs. If you want to use some of the same secrets in prod and dev, you'll need to have them in both files. Thanks a lot @joshua-mo-143! #610
Binstall support
For 0.9.0
we published our first pre-built releases, but there was a compatibility issue with cargo-binstall. That has been resolved, and binstall is now supported! We have also added the x86_64-unknown-linux-gnu
target. #608
The following targets are supported as of 0.10
:
- x86_64-unknown-linux-musl
- x86_64-unknown-linux-gnu
- aarch64-unknown-linux-musl
- x86_64-pc-windows-msvc
- x86_64-apple-darwin
And more
- To improve project creation stability, we have added three new project states that ensure containers that fail to start will automatically retry, and that containers that become unhealthy will attempt to restart. #620
- Renamed
cargo shuttle delete
tocargo shuttle stop
, to more accurately reflect its purpose, and also fixed the foreign key error it would return. Thanks @jdrouet! #619 - Added a
cargo shuttle logout
command that clears the shuttle API-key from your environment, thanks @joshua-mo-143: #595 - Added a flag to
cargo shuttle run
that allows running locally in the release profile:cargo shuttle run --release
. Thanks @gautamprikshit1! #611 - Local runs now respect the
$PORT
environment variable, thanks @canac! #571
Misc
- Migrated our uses of the
tempdir
crate totempfile
, thanks @gautamprikshit! #603
How to upgrade
If you had a project on shuttle, then you will need to manually update the version to 0.10.0
in your Cargo.toml
. You may also need to update the versions of your shuttle resources to 0.10.0
.
To upgrade your project container:
# this will not delete any databases, and you will keep your project name
cargo shuttle project rm # to remove your project
cargo shuttle project new # to recreate your project
cargo shuttle deploy # redeploy your service
To upgrade your shuttle CLI, simply run cargo install cargo-shuttle
, or if you’re using [cargo-binstall](https://github.com/cargo-bins/cargo-binstall), cargo binstall cargo-shuttle
.
New Contributors
Contributions for this release
- Fix: bin builds tag persistence by @oddgrd in #605
- fix: add repo url to cargo-shuttle for binstall by @oddgrd in #608
- feat: add logout function by @joshua-mo-143 in #595
- Release flag by @gautamprikshit1 in #611
- Tempdir by @gautamprikshit1 in #603
- Respect $PORT environment variable by @canac in #571
- feat: rename delete to stop by @jdrouet in #619
- feat: retry on bollard errors by @chesedo in #620
- bug: make Stopped a sink state by @chesedo in #624
- feat: add dev/prod secrets functionality by @joshua-mo-143 in #610
- feat: show progress bar on stopping service by @oddgrd in #628
- chore: update examples submodule by @oddgrd in #626
- Chore: v0.10.0 by @oddgrd in #625
Full Changelog: v0.9.0...v0.10.0