v0.15.0
shuttle: v0.15.0 update
We're excited to release shuttle v0.15.0! 🚀
Improving our pre-release QA
To prevent regressions we need to do thorough QA of the changes we make for new releases. To prevent this from slowing down releases and development, for this release we have started implementing automated QA in our CI. For this first iteration we will do an end-to-end test of installing cargo-shuttle
, doing a local run and a deploy on macOS and Linux (a workflow for windows should be ready for the next release).
Updated CLI command and first bounty 💎
For this release we had our first approved bounty contribution, congratulations to @jonaro00!
To claim the bounty they submitted an implementation of a new flag for the logs command in the CLI:
cargo shuttle logs —latest
This command is a convenient way to get the logs of the last deployment, so you will not need to do a deployment list
, get the ID and then a cargo shuttle logs <id>
to get the latest one. All the existing functionality of the command remains the same.
Error message improvements
For this release we have addressed some poor or missing error messages:
- Updated the error messages on commands that 404 when a deployment and/or service is missing with more information and a tip to resolve it.
- Validate the input in the interactive login from
cargo shuttle login
, to ensure incorrectly pasted keys will prompt the user to re-submit.
Bug fixes
- Fixed a bug where cancelling a local run or a local run crashing would not free the port bound by the service, leading to crashes on subsequent runs #805
- Fixed a bug where we were inadvertently logging secrets in the deployer #814
Contributions
- @jonaro00 added the
logs --latest
flag, and also ensured the list of deployments is correctly sorted in #799 - @sentinel1909 expanded our docs FAQ in shuttle-hq/shuttle-docs#70
- @jhawkesworth added an example of how to use rocket dynamic templates with shuttle in shuttle-hq/shuttle-examples#38
Upgrading
To upgrade your shuttle CLI, run: cargo install cargo-shuttle
, or if you’re using [cargo-binstall](https://github.com/cargo-bins/cargo-binstall), cargo binstall cargo-shuttle
.
If you’d like to upgrade your project container, run the restart
project command. This will not delete any databases, and you will keep your project name:
cargo shuttle project restart
Finally, redeploy your shuttle service:
cargo shuttle deploy
Commits for this release
- feat: add algora shields to readme by @oddgrd in #793
- ci: linux QA by @chesedo in #800
- feat: Add
cargo shuttle logs --latest
by @jonaro00 in #799 - feat: improve deployer 404 messages by @oddgrd in #796
- deployer & gateway: added OpenAPI docs by @iulianbarbu in #794
- docs: clarify shuttle_static_folder will not be adjacent to executable by @jhawkesworth in #803
- fix: minor development bug fixes by @oddgrd in #806
- ci: add mac qa by @chesedo in #801
- chore: bump otel crates to remove protoc requirement by @oddgrd in #802
- feat: ensure interactive login API key is valid format by @oddgrd in #797
- fix: stop logging the full loadresponse by @oddgrd in #814
- fix(common): feature flagged utoipa dependency by @iulianbarbu in #817
- fix: apply admin layer to admin routes only by @oddgrd in #818
- cargo-shuttle: fix address in use error when service panicked in a previous run by @iulianbarbu in #805
- cargo-shuttle: separate local runs per target family by @iulianbarbu in #823
- docs: add note about init bug to readme by @oddgrd in #824
- ci: fix windows binary build by @oddgrd in #825
- chore: v0.15.0 by @oddgrd in #820
- revert: protoc removal by @oddgrd in #826
Full Changelog: v0.14.0...v0.15.0