Releases: shuttle-hq/shuttle
cargo-shuttle v0.25.1
cargo-shuttle: v0.25.1 update
Bug fixes
- Fixed a bug where
cargo-shuttle
failed to install on Windows, due to a missing feature flag.
All commits
- fix: cargo-shuttle missing feature by @oddgrd in #1178
- ci: fix invalid resource-class for deploy job by @oddgrd in #1180
- chore: cargo-shuttle v0.25.1 by @oddgrd in #1182
Full Changelog: v0.25.0...v0.25.1
v0.25.0
Shuttle: v0.25.0 update
We're excited to release shuttle v0.25.0! 🚀
- Bumped our Rust version to 1.72.0. MSRV for compiling
cargo-shuttle
is still 1.70.0. - New resource: shuttle-metadata can be used to fetch your current service name at runtime. In the future, we aim to extend this resource with more information about your service, like the public URL. Thanks @sd2k for the initiative!
- Developing Shuttle locally is now easier! We moved the relevant instructions to DEVELOPING.md, and improved the Docker build caching, resulting in up to 5x faster
make images
. shuttle-aws-rds
now has feature flags for usingrustls
. (Enables corresponding feature in sqlx)cargo shuttle project start
now warns you if the idle minutes flag is not 0.
Contributions
- @sentinel1909 added
list
,remove
,clear
, andsize
operations toshuttle-persist
in #1066. - @sd2k added a new resource that allows you to get the name of your Shuttle service in #1129.
- @ledoyen added secrets input to the Shuttle deploy GitHub action in shuttle-hq/deploy-action#14
- @beyarkay improved the error message for when a project is not ready to receive commands in #1169.
New Contributors
Upgrading
To upgrade your shuttle CLI, run: cargo install cargo-shuttle
, or if you’re using cargo-binstall, cargo binstall cargo-shuttle
.
It is also recommended to upgrade your project’s shuttle-*
dependencies in Cargo.toml
:
shuttle-runtime = "0.25.0"
# etc
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
All commits
- fix: unused sqlx dep by @oddgrd in #1157
- [Improvement]: Add list, remove, clear, and size operations to shuttle-persist by @sentinel1909 in #1066
- chore: Update labels by @jonaro00 in #1161
- chore: improve development docs & scripts by @jonaro00 in #1156
- gateway: fix custom domains request/renew APIs by @iulianbarbu in #1158
- feat: add service-info resource to obtain Shuttle service info by @sd2k in #1129
- refactor: reduce noise in honeycomb by @chesedo in #1142
- chore(resources): rename service-info to metadata by @orhun in #1165
- Add suggestion to 'project not ready' error message by @beyarkay in #1169
- refactor: Containerfile+Makefile improvement: build crates together, then distribute the binaries by @jonaro00 in #1164
- ci: refactor and improve speed and caching. add rustls flags to aws-rds by @jonaro00 in #1167
- feat: add idle timeout warning after a deploy by @christos-h in #1116
- chore: simplify contributor list, make it easy to update by @jonaro00 in #1170
- chore: Rust 1.72.0 by @jonaro00 in #1176
- chore: v0.25.0 by @oddgrd in #1175
Full Changelog: v0.24.0...v0.25.0
chore: v0.24.0 (#1153)
Shuttle: v0.24.0 update
We're excited to release shuttle v0.24.0! 🚀
Bug fixes
- Fixed a bug where the shuttle-secrets did not update on project deployment: #1150
- Fixed a bug where the shuttle-static-folder did not update on project deployment: #1151
- Fixed a bug where the API response for project information is missing the creation timestamp information, which should be visible in the
shuttle-console
: #1141
Contributions
- @AlphaKeks added support to inject a custom tracing layer to Shuttle services. This was showcased in the
shuttle-examples/tracing
: #1027 - @Luna2141 fixed the redirect from the old login page to the console login page when a user login is done through
cargo-shuttle
: #1069
Considerations
- The bug fix shipped for
shuttle-secrets
takes effect after upgrading your project dependency onshuttle-runtime
to0.24.0
. - The bug fix for
shuttle-static-folder
takes effect if you upgrade yourshuttle-static-folder
dependency to0.24.0
.
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
v0.23.0
Shuttle: v0.23.0 update
We're excited to release shuttle v0.23.0! 🚀
Bug fixes
- Fixed a bug where the shuttle-next runtime binary was not being installed in the project container image, leading to failing deploys of shuttle-next projects.
- Fixed a bug where MongoDB shared database data was not persisted between project restarts.
Contributions
- @d4ckard added a check for if the cargo-shuttle CLI and the shuttle-runtime versions are out of sync in #1088
- @skaunov updated an example in our docs in shuttle-hq/shuttle-docs#159
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
- fix: add volume to mongo container by @oddgrd in #1126
- feat: gateway to start last deploy from idle project by @chesedo in #1121
- fix: install shuttle-next runtime in deployers by @oddgrd in #1127
- misc: add warning for api url arg by @jonaro00 in #1128
- ci: separate jobs for faster ci verdict by @jonaro00 in #1130
- docs: update readme, separate contributing and development docs by @jonaro00 in #1124
- feat(runtime): add alpha runtime version check by @d4ckard in #1088
- deployer: sync resource-recorder with persistence by @iulianbarbu in #1101
- chore: v0.23.0 by @oddgrd in #1133
New Contributors
Full Changelog: v0.22.0...v0.23.0
v0.22.0
shuttle: v0.22.0 update
We're excited to release shuttle v0.22.0! 🚀
Updated sqlx version in Shuttle databases
We have upgraded the version of sqlx
in shuttle_shared_db
and shuttle_aws_rds
to 0.7.1
. This means if you upgrade your version of these resources, you will have to also upgrade the version of sqlx
in your application.
Improved the shuttle deploy GitHub action
The https://github.com/shuttle-hq/deploy-action has been greatly improved, with the installation step reduced from minutes to ~4 seconds in shuttle-hq/deploy-action#11, and with some new input options being added that can also reduce deploy times.
Bug fixes
- Fixed a bug where the deployer was not receiving logs from the runtime.
- Shuttle service functions (the function annotated with
[shuttle_runtime::main]
) can now be namedmain
. - Fixed a bug where windows was not always shutting down runtimes correctly for local runs that were interrupted by e.g.
CTRL + C
(thanks @Shubham8287!).
Contributions
- @robjtede made their first contribution to Shuttle by correcting Actix Web typos in our docs in #1093 and shuttle-hq/shuttle-docs#148
- @saikatdas0790 fixed an error and made one of our examples more concise in shuttle-hq/shuttle-docs#157 and shuttle-hq/shuttle-docs#156
- @Shubham8287 made their first contribution to Shuttle by adding proper handling of signals to windows local runs in #1077, claiming a bounty for their efforts!
Upgrading
To upgrade your shuttle CLI, run: cargo install cargo-shuttle
, or if you’re using 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: resource recorder by @chesedo in #1084
- feat: add a project_id to gateway by @chesedo in #1091
- Added the missing support for creating custom resources by @iulianbarbu in #1082
- resource-recorder: update the docker compose file by @iulianbarbu in #1092
- feat: honeycomb for local runs by @chesedo in #1100
- gateway: add LD_LIBRARY_PATH in docker-compose by @iulianbarbu in #1105
- deployer: fixed runtime logs receiving by @iulianbarbu in #1108
- circleci: set HONEYCOMB env variable by @iulianbarbu in #1109
- feat: add deployer tier to auth by @chesedo in #1111
- feat: expand gateways args to receive the key for the machine user by @chesedo in #1114
- feat: add a route to deployer to start a past deployment by @chesedo in #1115
- fix: Update information in README by @jonaro00 in #1087
- chore: fix Actix Web typos by @robjtede in #1093
- chore: bump sqlx in resources by @oddgrd in #1117
- Chore/bump sqlx by @oddgrd in #1118
- fix(codegen): allow
main
function name, prevent clippy warning by @jonaro00 in #1098 - feat: Handling regular signals sent to cargo-shuttle on Windows by @Shubham8287 in #1077
- Chore/v0.22.0 by @oddgrd in #1119
New Contributors
- @robjtede made their first contribution in #1093
- @Shubham8287 made their first contribution in #1077
Full Changelog: v0.21.0...v0.22.0
v0.21.0
shuttle: v0.21.0 update
We're excited to release shuttle v0.21.0! 🚀
Bug fixes
- Fixed a bug where deploying a project with an RDS database was reporting deployment failure in the CLI when the deployment was waiting for the RDS instance to be ready in #1068
- Fixed a bug where trailing slashes were normalized away from the paths of requests to the gateway proxy in #1074
Contributions
- @ShouvikGhosh2048 added a check for source-code archive size in the client to warn users from trying to deploy a project that is larger than the 50MB size limit in #1070
- @beyarkay eased the getting started experience by including
--allow-dirty
in the suggestion for how to deploy followingcargo shuttle init
in #1076 - @RobWalt updated the path to the examples submodule to match the updated repo name in #1049
Upgrading
After this update if your restart your project (restarting will automatically update your container) you will also need to upgrade your shuttle dependencies to 0.21.0 before you can deploy again.
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
- fix: bash bug in containerfile by @oddgrd in #1060
- ci: add turso to publish job by @oddgrd in #1059
- fix: remove md that is incompatible with docs by @oddgrd in #1063
- chore: make git submodule path absolute to make life easier for forks by @RobWalt in #1049
- ci: incorrect path to turso resource by @oddgrd in #1062
- Explain 413 error when a user tries to create a project larger than the limit by @ShouvikGhosh2048 in #1070
- fix: rds deploy crash by @oddgrd in #1068
- chore: bump tower-sanitize-path by @oddgrd in #1074
- fix: broken gateway pagination and status check tests by @oddgrd in #1075
- Add --allow-dirty to command hint at end of init by @beyarkay in #1076
- chore: v0.21.0 by @oddgrd in #1078
New Contributors
- @RobWalt made their first contribution in #1049
- @ShouvikGhosh2048 made their first contribution in #1070
Full Changelog: v0.20.0...v0.21.0
v0.20.0
shuttle: v0.20.0 update
We're excited to release shuttle v0.20.0! 🚀
Turso integration
Turso is a new sqlite-based edge database and we’re excited to announce a Shuttle resource integration for it. This is the first iteration of this integration, so it comes with some caveats. The first one is that it is not yet possible for us to provision a Turso database for you, so you need to refer to their docs and do that yourself for now. It should also be noted that you can host a Turso database anywhere, but currently your Shuttle service can only be hosted in London.
Thanks to @Kazy from the Shuttle batch for this integration!
Deployment archive size limits
We have added a 50MB size limit to deployments, meaning the archive of your source code (which includes static folder) can not be larger than 50MB or deploy will fail with a 413 error. This measure is intended to defend against large request body DoS attacks, so if you have a normal project and encounter the 413 error please let us know and we will consider increasing the limit.
Git metadata for deployments
The cargo shuttle deployment --list
command will now include git metadata like the commit message of the current commit at the time of deploy, as well as branch name etc. Thanks to @Fuzzicles for a great first contribution to Shuttle!
Bug fixes
- Fixed a bug where many users were hitting the request body limit in deploy due to
.git
repositories being included in archive in #1036 - Fixed a bug where users with a global target directory got a “file not found” error - #1039
- Fixed a bug where windows users got a “file not found” error - #1039
- Fixed a bug where timezones were incorrectly displayed in logs output - #1032
The eighth and final week of Shuttle Batch 2023
The Shuttle batch has reached its conclusion. We had a lot of great contributions in this last week, and we also have several larger pull requests from the batch in the pipeline. We’d like to express our appreciation to all the participants of this event, thank you all for being a part of this!
- @jonaro00 fixed two bugs in #1039, one affecting users with a global target directory, and one affecting windows users.
- @jonaro00 excluded the .git repository of projects from the deployment archive to avoid sending these large files that aren’t used, and that caused users with normal projects to encounter the 413 error in deployer in #1036
- @jonaro00 made some improvements to the shuttle runtime in #1012
- @jonaro00 cleaned up the shuttle-service dependencies and did some general clean up of code in #1013
- @jonaro00 cleaned up our CI config and dockerfile in #989
- @Kazy fixed some sporadically failing tests in the deployer in #980
- @jonaro00 fixed some issues with windows local runs in #1054
Other contributions
- @timonv made their first contribution to Shuttle by fixing a bug with the timezones in the Shuttle logs output in #1032, and they also added a missing piece to our .nix file in #1040
- @Fuzzicles made their first contribution to Shuttle by bringing deployment git metadata to the client in #987
- @robertohuertasm updated our docs with some work-arounds for common issues when working with static folders or workspaces in shuttle-hq/shuttle-docs#135
- @sentinel1909 made some improvements to the shuttle-persist docs in shuttle-hq/shuttle-docs#136
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
- fix: remove vendored-openssl from CI and broken axum test by @oddgrd in #1021
- fix: cargo-generate needs openssl by @oddgrd in #1023
- fix: increase body size limit for deploy by @oddgrd in #1031
- fix: Don't deploy .git folder to save space by @jonaro00 in #1036
- chore: cargo-shuttle v0.19.1 by @oddgrd in #1037
- Fix(common): format logs in correct local timezone by @timonv in #1032
- fix: Target directory from config, Windows .exe suffix by @jonaro00 in #1039
- feat: add new deployment metadata to table by @Fuzzicles in #987
- build(shell.nix): add openssl package to the build dependencies by @timonv in #1040
- fix(runtime): Remove 2s startup sleep by @jonaro00 in #1012
- chore: move codegen::main from service to runtime by @jonaro00 in #1013
- fix: dockerfile and ci improvements by @jonaro00 in #989
- fix: windows local run + log clarifications by @jonaro00 in #1054
- Attempt at fixing sporadic failures of
shuttle-deployer
by @Kazy in #980 - gateway: status check includes info about auth & provisioner by @iulianbarbu in #1056
- feat(resources): add support for turso client w/o provisioning by @Kazy in #996
- Chore/v0.20.0 by @oddgrd in #1057
Full Changelog: v0.19.0...v0.20.0
v0.19.0
shuttle: v0.19.0 update
We're excited to release shuttle v0.19.0! 🚀
Upgraded to Rust 1.70
Our deployers (the containers in which your service will be built and ran) have a pinned version of Rust. This has now been upgraded to 1.70, thanks @iamwacko from the Shuttle batch!
Init from any template
Our cargo shuttle init
command has been refactored to now clone templates from github repositories. To get a hello world example from our repository, you can simply run:
cargo shuttle init -t axum
.
You can also initialize a project from any template by passing in the url of any repository and the sub-folder you want to clone. Below is an example of how you would init an axum project from our websocket example.
cargo shuttle init --from https://github.com/shuttle-hq/shuttle-examples.git --subfolder axum/websocket
Thanks to @paulotten and @jonaro00 from the Shuttle batch for this great new functionality!
The sixth and seventh weeks of Shuttle Batch 2023
The Shuttle batch is nearing the end, but their contributions are still forming the majority of this release. We also have several large batch contributions implementing new features like DynamoDB, Turso and Sqlite in the pipeline.
- @iamwacko updated our pinned version of Rust to 1.70 and fixed some new clippy lints in #967
- @iamwacko removed the cargo dependency of the builder #922
- @jonaro00 fixed a bug where the
cargo shuttle logs --latest
was returning the oldest deployment’s logs due to the order being flipped in the recent pagination PR in #982 - @hseeberger and @jonaro00 added some relevant git data to the metadata of deployments, in #943. This will be very useful in our upcoming console!
- @iamwacko refactored the Shuttle codebase to use
rustls
rather thannative-tls
withopenssl
in #879 - @paulotten refactored our
init
code to rather clone examples from our repository using thecargo-generate
crate under the hood in #888 - @jonaro00 implemented IntoIter for our secretstore in #1006
Other contributions
- @laundmo documented the format of
Secrets.toml
in our docs in shuttle-hq/shuttle-docs#114 - @beyarkay expanded the
shuttle_aws_rds
documentation in our docs in shuttle-hq/shuttle-docs#115, added a cookbook to our CLI docs in shuttle-hq/shuttle-docs#126 - @beyarkay added a link to our docs in the CLI help output in #985
- @lecoqjacob improved the error message in the event that a user runs
cargo run
rather thancargo shuttle run
in #993
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 in this release
- feat(service): get rid of
cargo
dependency by @iamwacko in #922 - ci: bump pinned Rust to 1.70 by @iamwacko in #967
- fix: logs --latest flipped order by @jonaro00 in #982
- feat(deployer): add more deployment metadata by @hseeberger in #943
- feat: switch from native-tls to rustls by @iamwacko in #879
- feat: use
cargo generate
instead of hardcoding examples source code by @paulotten in #888 - fix: re-add
--version
flag by @paulotten in #998 - fix: remove auth login endpoint by @oddgrd in #1007
- Add commands cookbook to cargo-shuttle --help by @beyarkay in #985
- docs: add sections on PR and reviews by @oddgrd in #1016
- feat(secrets): Implement into_iter for SecretStore by @jonaro00 in #1006
- fix: mysql provisioning bug by @oddgrd in #1001
- provide better error message by @lecoqjacob in #993
- feat: shuttle init --from by @jonaro00 in #984
- chore: v0.19.0 by @oddgrd in #1019
New Contributors
- @lecoqjacob made their first contribution in #993
Full Changelog: v0.18.0...v0.19.0
v0.18.0
shuttle: v0.18.0 update
We're excited to release shuttle v0.18.0! 🚀
Removal of protoc
requirement
With the last of our upstream crates upgraded to no longer need protoc
available at compile-time, installingprotoc
will no longer be required to install or use Shuttle! 🥳
Pagination of list commands
Two of our list commands can now be paginated, namely project list
and deployment list
. These commands will now by default fetch the 10 latest deployments, a --page 2
flag can then be passed to fetch the next 10 deployments, and so on. The limit of how many to fetch per page can also be configured with the --limit
flag.
Thanks to @AlphaKeks and @Kazy from the Shuttle batch for this feature! PR: #862
Sanitizing paths in our proxy layer
@chesedo developed and published a new crate, [tower-sanitize-path](https://crates.io/crates/tower-sanitize-path), for sanitizing paths with tower, and implemented it in our proxy layer to protect users against path traversals in #946
The fourth and fifth weeks of Shuttle Batch 2023
The Shuttle batch continues with a lot of great contributions! We’ve also seen tremendous progress on larger tickets, so keep your eyes peeled for some larger new features in the next releases! Here are the batch contributions for the last two weeks:
- @morlinbrot added support for axum state #924, as well as an example for using it in shuttle-hq/shuttle-examples#52 (review)
- @jonaro00 updated some docs in the main repo in https://github.com/shuttle-hq/shuttle/pull/948/files.
- @jonaro00 updated and improved our github issue and PR templates in #945
- @AlphaKeks and @Kazy implemented pagination for the project/deployment list endpoints, also flags for this to our CLI in #862
- @jonaro00 added some common C build tools to our deployers, allowing Shuttle projects to use crates that depend on them in #960
- @jonaro00 fixed an issue where we were recording too much log output by default, since this was causing issues for certain projects, particularly serenity bots, in #958
- @paulotten updated our
CONTRIBUTING.md
document to no longer call for usingcargo-sort
, since it doesn’t work with workspace inheritance in #966
Other contributions
- @orhun updated our lockfile in #942
- @beyarkay improved the panic message in the event where the shuttle-runtime port is already taken in #950
- @imor fixed an issue where cargo-shuttle commands that were passed
--name
could not be ran outside a cargo project in #929 - @imor added a
tracing::debug!
call tocargo-shuttle
to output which files are archived for deployment in #931
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(shuttle-axum) Make AxumService generic to be able to use state by @morlinbrot in #924
- docs: Update links and commands by @jonaro00 in #948
- misc: Update GitHub templates by @jonaro00 in #945
- Update Cargo.lock by @orhun in #942
- Add helpful error if port cannot be used by @beyarkay in #950
- fix: --name was ignored when not running from cargo folder by @imor in #929
- chore: bump otel crates and remove protoc dep by @oddgrd in #956
- fix: log files packed in archive by @imor in #931
- refactor: sanitize all path on the user's proxy by @chesedo in #946
- feat(gateway, cargo-shuttle): implement pagination for project list by @AlphaKeks in #862
- fix: crossterm/comfytable conflict by @oddgrd in #959
- feat: pre-installed build environment in deployer by @jonaro00 in #960
- refactor: un-tangle crossterm/comfytable by @oddgrd in #961
- fix: Ignore span logs below WARN by @jonaro00 in #958
- fix: remove cargo-sort from CONTRIBUTING.md by @paulotten in #966
- fix/release(prod): unstable AWS creds clashed with prod by @iulianbarbu in #970
- chore: v0.18.0 by @oddgrd in #972
New Contributors
Full Changelog: v0.17.0...v0.18.0
v0.17.0
shuttle: v0.17.0 update
We're excited to release shuttle v0.17.0! 🚀
Second and third week of Shuttle Batch 2023
We are extremely excited to see how the batch participants progress on the small and medium-sized projects. We had all round contributions and enjoyed seeing the participants taking the lead and clarifying their projects with the maintainer team, seeking the biggest impact. We are very happy to see the help they offer to each other, the encouraging words, and the team spirit that makes them push through. Thanks to everyone and we’re looking forward to seeing more of this!
As for the contributions, here is the list:
- @iamwacko added an optional flag to allow not running our local development environment in detached mode in #878
- @XaviFP fixed a broken link in our codegen errors in #885
- @utterstep added a feature-flag to
shuttle-shared-db
to allow users to userustls
rather thannative-tls
if they want to in #870 - @SyedFasiuddin upgraded our codegen to syn 2.0 in #880
- @paulotten upgraded our aws sdk crates in #897
- @piewhat removed the
cargo
dependency from deployer, and also refactored the test run on deploys to show the output of failed tests in #907 - @jonaro00 and @hseeberge1r implemented a new feature that allows users to reset their api-keys, which is useful if you leaked your key, in #857
- @SyedFasiuddin contributed to adding next logical suggestions for various cargo-shuttle commands: #915.
Other contributions
- @arturaz improved the performance of our JwtAuthentication layer by manually implementing Future for it in #868
- @kierendavies removed the
clap
dependency fromshuttle-runtime
, replacing it with a declarative macro, ensuring we don’t leak theclap
dependency to users projects in #822 - @figsoda added
hyper-reverse-proxy
as a workspace dependency ****used by both the deployer and gateway in #921 - @merlinbrot added an awesome
request-scheduler
example showcasing how to do cron-like schedules for accessing a URL in shuttle-hq/shuttle-examples#47 - @joshua-mo-143 added a SaaS full-stack application powered by Next.js and Shuttle: shuttle-hq/shuttle-examples#50.
cargo-shuttle is now packaged for Arch Linux
@orhun has packaged cargo-shuttle
for Arch Linux, and he has graciously volunteered to keep the package updated. He added installation instructions to our readme in #902 Thanks!
You can now install cargo-shuttle on Arch Linux with pacman:
pacman -S cargo-shuttle
Shuttle Salvo integration version bump
shuttle-salvo has been upgraded to v0.41, this means that to use version 0.17.0 of shuttle-salvo
you’ll also need to update your project to use the new version.
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