Releases: fermyon/spin
Spin v1.0.0
Spin v1.0.0
We are excited to announce the release of Spin 1.0! 🎉 This release marks a major milestone in the development of Spin introducing the first stable release.
To all of our contributors, thank you for the instrumental work you do and have done in helping Spin reach maturity. ❤️
Verifying the Release Signature
After downloading the v1.0.0 release of Spin, either via the artifact attached to this release corresponding to your OS/architecture combination or via the install script, you are ready to verify the release signature.
First, install cosign. This is the tool we'll use to perform signature verification. Then run the following command:
cosign verify-blob \
--signature spin.sig --certificate crt.pem \
--certificate-identity https://github.com/fermyon/spin/.github/workflows/release.yml@refs/tags/v1.0.0 \
--certificate-oidc-issuer https://token.actions.githubusercontent.com \
--certificate-github-workflow-sha df99be238267b498451993d47b7e42e17da95c09 \
--certificate-github-workflow-repository fermyon/spin \
spin
If the verification passed, you should see:
Verified OK
What's Changed
- Bumped version to 0.11.0-pre0 by @tpmccallum in #1222
- fix code coverage by @rajatjindal in #1223
- Add key/value end to end test by @kate-goldenring in #1219
- fix cargo clippy by @rajatjindal in #1224
- feat(templates): update sdk to v0.10.0 by @github-actions in #1225
- add e2e tests for php, swift, oci, longevity by @rajatjindal in #1215
- Fix registry login error if directory does not exist by @itowlson in #1231
- chore: Refactor
spin up
OCI support by @lann in #1230 - use token to login by @rajatjindal in #1201
- config: Change EnvProvider prefix from SPIN_APP_ to SPIN_CONFIG_ by @lann in #1234
- Validate allowed key-value stores by @itowlson in #1235
- Refactor UpCommand by @lann in #1236
- Change base path for key value example app by @kate-goldenring in #1239
- chore: update examples and templates to spin_manifest_version by @fibonacci1729 in #1238
- bump Wasmtime version to 5.0.1 by @dicej in #1243
- feat(templates): update sdk to v0.10.1 by @github-actions in #1244
- Upgrade cargo-vet and add imports by @bholley in #1240
- Point simple rust testcase to local SDK by @kate-goldenring in #1248
- update version to v1.0.0-rc.1 by @michelleN in #1247
- feat(templates): update sdk to v1.0.0-rc.1 by @github-actions in #1250
- return 405 instead of panicking on unsupported method by @dicej in #1249
- update version to next anticipated release by @michelleN in #1251
- ci: Run build workflow on v* branches by @lann in #1252
- Backport CI update to
v1.0
branch by @lann in #1255 - Fix direct mounts backport by @lann in #1271
- [Backport v1.0] ci(release.yml): sign binaries with cosign by @vdice in #1284
- [Backport v1.0] chore: clean up some command help text by @vdice in #1293
- [Backport v1.0] Print digest on registry push by @vdice in #1289
- [Backport v1.0] introduce add_key_value_pair to cloud::Client by @vdice in #1291
- [Backport v1.0] In
spin plugin list
, do not print prerelease warnings ahead of list by @vdice in #1294 - [Backport v1.0] Update runtime config system and add
spin up --state-dir
flag by @lann in #1288 - [Backport v1.0] feat(deploy): Add deploy flags to seed key/values by @vdice in #1290
- [Backport v1.0] Unbindle the
up
command and app manifest by @vdice in #1299 - [Backport v1.0] fix(cli): Rename --key-values to --key-value on deploy command by @vdice in #1300
- [Backport v1.0] chore(cli): rm bindle commands by @michelleN in #1301
- Updating version 1.0.0-rc.2 by @melissaklein24 in #1303
- [Backport v1.0] feat(templates): update sdk to v1.0.0-rc.2 by @vdice in #1305
- [Backport v1.0] fix typo in error message /cannnot/cannot/ by @michelleN in #1311
- chore(spin): bump versions for v1.0.0 release by @fibonacci1729 in #1314
New Contributors
- @bholley made their first contribution in #1240
- @melissaklein24 made their first contribution in #1303
Full Changelog: v0.10.0...v1.0.0
v1.0.0-rc.2
Spin v1.0.0-rc.2
The Spin v1.0.0-rc.2 is the second release candidate for the Spin 1.0 release! We would love your help in testing this release. If you notice any issues, please feel free to open an issue or pull request. We would love to thank you for your efforts in helping us test with a Spin t-shirt. Once you've opened an issue or pull request, we will reach out for more info on where to send your Spin swag!
Verifying the Release Signature
We have added support for verifying the signature on the download artifacts using cosign. After downloading the v1.0.0-rc.2 release of Spin, either via the artifact attached to this release corresponding to your OS/architecture combination or via the install script, you are ready to verify the release signature.
First, install cosign. This is the tool we'll use to perform signature verification. Then run the following command:
cosign verify-blob \
--signature spin.sig --certificate crt.pem \
--certificate-identity https://github.com/fermyon/spin/.github/workflows/release.yml@refs/tags/v1.0.0-rc.2 \
--certificate-oidc-issuer https://token.actions.githubusercontent.com/ \
--certificate-github-workflow-sha 5dfe30330234d3fb22512ad5ebd70d584436a4e1 \
spin
If the verification passed, you should see:
Verified OK
As always, thanks to contributors old and new for helping improve Spin on a daily basis! 🎉
What's Changed
- return 405 instead of panicking on unsupported method by @dicej in #1249
- update version to next anticipated release by @michelleN in #1251
- ci: Run build workflow on v* branches by @lann in #1252
- Backport CI update to
v1.0
branch by @lann in #1255 - Fix direct mounts backport by @lann in #1271
- [Backport v1.0] ci(release.yml): sign binaries with cosign by @vdice in #1284
- [Backport v1.0] chore: clean up some command help text by @vdice in #1293
- [Backport v1.0] Print digest on registry push by @vdice in #1289
- [Backport v1.0] introduce add_key_value_pair to cloud::Client by @vdice in #1291
- [Backport v1.0] In
spin plugin list
, do not print prerelease warnings ahead of list by @vdice in #1294 - [Backport v1.0] Update runtime config system and add
spin up --state-dir
flag by @lann in #1288 - [Backport v1.0] feat(deploy): Add deploy flags to seed key/values by @vdice in #1290
- [Backport v1.0] Unbindle the
up
command and app manifest by @vdice in #1299 - [Backport v1.0] fix(cli): Rename --key-values to --key-value on deploy command by @vdice in #1300
- [Backport v1.0] chore(cli): rm bindle commands by @michelleN in #1301
- Updating version 1.0.0-rc.2 by @melissaklein24 in #1303
New Contributors
- @melissaklein24 made their first contribution in #1303
Full Changelog: v1.0.0-rc.1...v1.0.0-rc.2
v1.0.0-rc.1
Spin v1.0.0-rc.1
The Spin v1.0.0-rc.1 is the first release candidate for the Spin 1.0 release! We would love your help in testing this release. If you notice any issues, please feel free to open an issue or pull request. We would love to thank you for your efforts in helping us test with a Spin t-shirt. Once you've opened an issue or pull request, we will reach out for more info on where to send your Spin swag!
As always, thanks to contributors old and new for helping improve Spin on a daily basis! 🎉
What's Changed
- Bumped version to 0.11.0-pre0 by @tpmccallum in #1222
- fix code coverage by @rajatjindal in #1223
- Add key/value end to end test by @kate-goldenring in #1219
- fix cargo clippy by @rajatjindal in #1224
- feat(templates): update sdk to v0.10.0 by @github-actions in #1225
- add e2e tests for php, swift, oci, longevity by @rajatjindal in #1215
- Fix registry login error if directory does not exist by @itowlson in #1231
- chore: Refactor
spin up
OCI support by @lann in #1230 - use token to login by @rajatjindal in #1201
- config: Change EnvProvider prefix from SPIN_APP_ to SPIN_CONFIG_ by @lann in #1234
- Validate allowed key-value stores by @itowlson in #1235
- Refactor UpCommand by @lann in #1236
- Change base path for key value example app by @kate-goldenring in #1239
- chore: update examples and templates to spin_manifest_version by @fibonacci1729 in #1238
- bump Wasmtime version to 5.0.1 by @dicej in #1243
- feat(templates): update sdk to v0.10.1 by @github-actions in #1244
- Upgrade cargo-vet and add imports by @bholley in #1240
- Point simple rust testcase to local SDK by @kate-goldenring in #1248
- update version to v1.0.0-rc.1 by @michelleN in #1247
New Contributors
Full Changelog: v0.10.0...v1.0.0-rc.1
v0.10.1
This updates Spin to Wasmtime 5.0.1, fixing a critical security vulnerability. Additional detail will be provided in CVE-2023-26489. All users are encouraged to update.
v0.10.0
Spin v0.10.0
The following outlines some updates from the Spin v0.10.0 release.
Some highlights in v0.10.0 at a glance:
- We've made it easier for you to find application logs by default. As of v0.10.0 onwards, a user running an app locally will see that logs are now stored in the same directory as the
spin.toml
file. Whereas, a user running an app from a registry will see that logs are no longer stored (by default) but instead streamed to stdout (which you can override this using the --quiet and --follow flags). For both local and remote apps, you can save logs to a specific location using the--log-dir
. See thespin up
CLI for more information. - A Bindle related deprecation message has been added to commands and options that currently interact with Bindle i.e.
spin bindle push
,spin bindle run
,spin up -b
(--bindle
,--bindle-password
,--bindle-server
,--bindle-username
). - The outbound HTTP feature now traces both successful and failed requests to improve feedback to the calling code.
- The updated
-f
option (and additional equivalent--from
option) combines the old-f
/--file
and--from-registry
. After v0.10.0, the-f
/--from
can infer aspin.toml
file, a directory containing aspin.toml
file, or a remote registry reference. If-f
/--from
is omitted, it defaults tospin.toml
. Also, please note, if Spin interprets the source incorrectly, please either use the--from-file
or--from-registry
options to clarify.
As always, thanks to contributors old and new for helping improve Spin on a daily basis! 🎉
What's Changed
- feat(templates): update sdk to v0.9.0 by @github-actions in #1172
- fix(cli.rs): fix typo by @vdice in #1171
- ci(build.yml): rm e2e-tests concurrency config by @vdice in #1167
- Split spin-publish into spin-bindle and spin-oci by @lann in #1166
- outbound-http: Enable gzip compression by @lann in #1177
- fix dependencies for code coverage build by @rajatjindal in #1180
- Remove deprecated --follow-all option by @itowlson in #1185
- Show top level login and deploy commands in help by @itowlson in #1184
- Rename
spin_version
tospin_manifest_version
in Spin.toml by @kate-goldenring in #1169 - Simpler error when command neither recognised nor plugin by @itowlson in #1189
- ref(Dockerfiles): go/tinygo bumps per latest 0.9.0 go templates/SDK by @vdice in #1153
- Fix duplicate package warnings by @itowlson in #1192
- allow running e2e tests with aarch64 by @rajatjindal in #1174
- add e2e tests for redis trigger by @rajatjindal in #1162
- Mostly flagless app source by @itowlson in #1179
- add SIP 011 - Component versioning by @dicej in #1048
- add
CachingStoreManager
to KV component and use it by default by @dicej in #1195 - remove
Clone
derive forStore
in the Rust SDK by @dicej in #1200 - make go kv example same as rust by @rajatjindal in #1197
- chore: Use clap group for spin up source flags by @lann in #1203
- Trace outbound request by @radu-matei in #1199
- support explicit capacity limits for KV by @dicej in #1204
- add some more documentation for e2e-tests by @rajatjindal in #1194
- Reorganize spin-loader cache code by @lann in #1212
- Print deprecation message on Bindle features by @itowlson in #1208
- cleanup of integration tests and more e2e tests by @rajatjindal in #1202
- export SDK version and language functions per SIP 011 by @dicej in #1209
- More OCI refactoring by @lann in #1213
- Add a log statement to tell the user to look at the logs if readiness is not achieved by @calebschoepp in #1216
- ref(up): update default log dir by @adamreese in #1196
- Update to version 0.10.0 release by @tpmccallum in #1220
Full Changelog: v0.9.0...v0.10.0
v0.9.0
Hot on the heels of 0.8.0, we're pleased to announce Spin 0.9.0, which brings new features, improvements and bug fixes.
This release includes, built-in key-value storage, more flexible Redis support, UX improvements, and more.
Some highlights in 0.9.0 at a glance:
- Built-in key-value storage, designed to anticipate the corresponding WASI proposal
- A new, general-purpose
execute
function for running arbitrary Redis commands spin up
now supports running apps from OCI registries- Apps now log to stdout by default, addressing a common source of confusion for new developers
- Various template UX improvements: #1152, #1147, #1135, #1119, and #1085
- More intuitive HTTP route matching
- Updated and improved Go SDK support: #1165 and #1114. You'll want to use TinyGo 0.27 or later and Go 1.20 or later for the best experience.
What's Changed
- Start tracking the workspace
Cargo.lock
by @calebschoepp in #1093 - feat(templates): update sdk to v0.8.0 by @github-actions in #1094
- Record where templates were installed from by @itowlson in #1085
- Upgrade templates without git incantation by @itowlson in #1095
- e2e tests for spin by @rajatjindal in #1065
- Use term application rather than project in
spin new
andspin add
by @calebschoepp in #1096 - ci(*): add website deployment logic by @vdice in #1103
- [e2e-tests] enhancements to e2e tests by @rajatjindal in #1108
- fix: update HTTP routing to longest matching prefix wins by @fibonacci1729 in #1109
- fix(tinygo): Regenerate canoncial_abi_* methods by @lann in #1114
- Warn if HTTP app contains duplicate routes by @itowlson in #1099
- remove assets test by @rajatjindal in #1112
- ci(perf): Improve job parallelization and disable incremental Rust builds by @tschneidereit in #1110
- Chore: update to Wasmtime 5.0 by @tschneidereit in #1100
- Do not deploy web site from forks by @itowlson in #1121
- chore(docs/spin.toml): update contributing redirect by @vdice in #1123
- Rename
spin oci
tospin registry
by @radu-matei in #1104 - chore(docs): update http route comment by @fibonacci1729 in #1125
- chore(supply-chain): update audits/exemptions by @vdice in #1106
- ref(build): updates build to allow interactive commands by @michelleN in #1130
- add SIP 010 - Key-Value Storage by @dicej in #1045
- feat: implement basic template tags by @fibonacci1729 in #1119
- add outbound-kv host component, based on SQLite by @dicej in #1035
- ref(*): make log output to stdout by default by @michelleN in #1115
- Work around unused import on Windows by @itowlson in #1137
- gitignore .spin directory in newly created apps by @itowlson in #1138
- Better guidance when unable to upgrade templates by @itowlson in #1135
- Add initial cache for Spin URL component sources by @radu-matei in #1088
- key-value-sqlite: Temporarily downgrade rusqlite by @lann in #1143
- add general-purpose
execute
function tooutbound-redis
by @dicej in #1134 - Warn when some templates can't be upgraded by @itowlson in #1147
- fail fast on ci when lint job fails by @rajatjindal in #1148
- refactor key-value host component for per-component configuration by @dicej in #1144
- feat: spin up from oci registry by @fibonacci1729 in #1146
- move
deploy
andlogin
tospin cloud
by @bacongobbler in #1139 - fix: handling up for local apps was breaking CI by @fibonacci1729 in #1154
- use composite action to avoid configuring versions/downloads multiple times by @rajatjindal in #1083
- remove e2e-tests dependency on windows/mac builds by @rajatjindal in #1158
- lazily create and reuse store manager for each app by @dicej in #1160
- Make template upgrade kinder to old installs of common repos by @itowlson in #1152
- Implement
spin registry login
by @radu-matei in #1150 - grand Go SDK update by @dicej in #1165
- chore(*): v0.9.0 version bumps by @dicej in #1170
New Contributors
- @tschneidereit made their first contribution in #1110
Full Changelog: v0.8.0...v0.9.0
v0.8.0
This is the v0.8.0 release of Spin and it brings a number of features, improvements and bug fixes.
This release also contains groundwork for some larger initiatives, such as OCI support and supply chain security. If curious about the vision for these and other efforts, check out the SIP (Spin Improvement Proposal) directory. Perhaps it will spark an idea for a SIP of your own!
Some highlights in v0.8.0 at a glance:
- TLS support has been added for Redis, PostgreSQL and MySQL.
- Spin now ships with an initial prototype for OCI registry support. The
spin oci
command provides an early preview of functionality, including pushing, pulling and running Spin apps in the form of OCI artifacts. - Initial support for Trigger Plugins has now been added. See the updated spin-timer example for a sample of how they can be used.
- We're starting to tackle supply chain security in Spin, starting with automated auditing of third-party dependencies.
- Rust Docs for Spin are now being auto-published.
- Code coverage reports are now being uploaded for Spin’s
main
branch.
As always, thanks to contributors old and new for helping improve Spin on a daily basis! 🎉
What's Changed
- feat: add aliases for plugin and templates subcommands for plurality by @raymundovr in #994
- feat(templates): update sdk to v0.7.1 by @github-actions in #996
- ci: add codecov by @FrankYang0529 in #866
- Enable TLS for outbound Redis by @radu-matei in #999
- Add empty
allowed_http_hosts
to code templates by @itowlson in #1007 - ci(build.yml): only upload to codecov if fermyon org by @vdice in #1008
- chore: Fix some rustdoc lints by @lann in #1015
- ci: Trigger rust-docs update on release or main merge by @lann in #1018
- Support new static-fileserver apps by @itowlson in #1019
- feat: Add TLS connection support for outbound PG by @etehtsea in #1003
- integration: Fix running on systems with sparse /bin by @endocrimes in #1029
- chore(docs): remove static dir and npm by @vdice in #1027
- ref(tests): update headers-env-routes-test to use the SDK by @vdice in #1034
- Add SIP for distributing Spin applications using OCI registries by @radu-matei in #1033
- build(deps): bump tokio from 1.21.2 to 1.23.1 by @dependabot in #1028
- Add cargo vet for auditing dependencies and SIP by @radu-matei in #1023
- Simplify presentation of "application exceeds max size" error by @itowlson in #821
- fix(audits.yml): add missing 'jobs:' entry by @vdice in #1041
- build(deps): bump bumpalo from 3.11.0 to 3.12.0 by @dependabot in #1039
- build(deps): bump libgit2-sys from 0.13.4+1.4.2 to 0.13.5+1.4.5 by @dependabot in #1040
- Change
spin plugin
command tospin plugins
retaining singular as an alias by @kate-goldenring in #1043 - Trigger plugins by @itowlson in #1036
- ci(audits.yml): only run for the fermyon origin repo by @vdice in #1058
- Update toml dependency to 0.6 by @cardoso in #1052
- Fix reserved name causing new Rust app to not build by @itowlson in #1060
- go: Fix SDK HTTP response malloc by @lann in #1047
- Run code coverage only on a schedule by @itowlson in #1066
- Skip flake when running under code coverage by @itowlson in #1063
- Pin Rust version in GitHub actions by @itowlson in #1068
- Fix WASI target install for pinned Rust by @itowlson in #1070
spin templates list
: if empty, offer to install by @itowlson in #1062- fix(#1076): improve handling of missing plugin directory by @fibonacci1729 in #1077
- Provide MSRV in Rust SDK by @itowlson in #1071
- update Github actions dependencies by @rajatjindal in #1080
- Show common trigger options on
spin up --help
by @itowlson in #1081 - Support SSL/TLS in
outbound-mysql
by @calebschoepp in #1079 - Add prototype for distributing Spin applications using OCI by @radu-matei in #1014
- chore(*): v0.8.0 version bumps by @vdice in #1092
New Contributors
Full Changelog: v0.7.1...v0.8.0
v0.7.1
This is the v0.7.1 patch release of Spin, as tracked by the following milestone.
The changes in this release are primarily centered around a couple of bug fixes, notably:
- A fix to remove a trailing
/
character on the app URL returned viaspin deploy
(#989) - A fix relating to runtime configuration when using Vault in combination with the environment provider and default values (#984)
See below for the full list of changes.
What's Changed
- feat(templates): update sdk to v0.7.0 by @github-actions in #985
- chore: Update rust examples by @etehtsea in #987
- fix: Don't use Url::join for available routes display by @lann in #989
- chore: Clean up some 'allow' attrs by @lann in #991
- If config key isn't in Vault, try other providers or default by @itowlson in #984
- Initial add of http-php template by @technosophos in #992
- chore(*): v0.7.1 version bumps by @vdice in #995
Full Changelog: v0.7.0...v0.7.1
v0.7.0
Spice up your holiday with the latest Spin release! Spin v0.7.0 brings many exciting updates including:
- Hashicorp Vault integration by @FrankYang0529 in #798 - This feature lets you retrieve sensitive data from HashiCorp Vault and use it your Spin application.
- Experimental support for connecting to MySQL databases by @etehtsea in #864
- The
spin add
command which adds a component to an existing application by @itowlson in #889 - Support for outbound Redis set operations by @dicej in #915
- Support for fetching Wasm modules from Web URLs by @itowlson in #890
- Support for running Spin on Linux ARM64 by @jpflueger in #926
- Experimental support for JavaScript and Typescript applications in Spin with a new SDK and set of templates by @karthik2804 https://github.com/fermyon/spin-js-sdk
- In addition to new features, there has been a heavy focus on testing, refactoring and hardening of the project.
Additional Notes:
- Please note that from this release, Spin no longer supports Ubuntu 18.04.
- Templates may need to be updated locally as well
spin templates install --git https://github.com/fermyon/spin --update
. We are tracking a better experience for updating templates in #990
Special shoutout to our new contributors: @jpflueger @morristai @rajatjindal and a big thank you to the folks who continue to contribute, impact and shape the project: @etehtsea @FrankYang0529 !
What's Changed
- feat(templates): update sdk to v0.6.0 by @github-actions in #851
- Fix downloads redirect for install.sh by @mikkelhegn in #857
- fix(deploy): Prevent swallowing the error by @etehtsea in #855
- feat(outbound-redis): Add DEL command by @etehtsea in #828
- chore(examples): Update Rust example locks by @etehtsea in #856
- Update information about monthly developer meeting on README.md by @mikkelhegn in #853
- Bump terser from 5.12.1 to 5.15.1 in /docs by @dependabot in #860
- chore(go-sdk): Disable integration test caching by @etehtsea in #833
- rename example and test crates to avoid cargo warnings by @dicej in #862
- ci: update release workflow ubuntu version by @FrankYang0529 in #871
- feat(config): add vault provider by @FrankYang0529 in #798
- Revert "ci: update release workflow ubuntu version" by @lann in #876
- Resolve a bunch of clippy needless_borrow lints by @lann in #879
- Remove
.cargo/config.toml
from Rust Spin templates to easily enable unit tests by @kate-goldenring in #868 - chore(login): update response error message by @FrankYang0529 in #865
- Use dialoguer crate to prompt for Spin plugin installs by @kate-goldenring in #867
- Print detail for non-validation deployment errors by @itowlson in #883
- Option to output template list as JSON by @itowlson in #885
- Get rid of BindleConnectionInfo duplication by @etehtsea in #888
- chore: Use workspace inheritence by @lann in #894
- chore: Reuse sha256 digest from spin_loader by @etehtsea in #893
- Get Wasm modules from Web URLs by @itowlson in #890
- Introduce spin_publish::prepare_bindle by @etehtsea in #887
- Introduce spin_loader::local::{absolutize, parent_dir} by @etehtsea in #896
- Add Store::set_deadline by @lann in #899
- Revert flaky integration test change by @itowlson in #906
- Improve error message when app needs to be built by @etehtsea in #884
- chore(GitHub): Refactor build/test workflow by @endocrimes in #904
- chore: Upgrade wasmtime to 2.0.2 by @lann in #902
- feat(spin_sdk::pg): Extract type conversions into sdk by @etehtsea in #813
- Restore sloth warning around module build/load by @itowlson in #911
- chore: Fix spin-timer example by @etehtsea in #912
spin new
: add component to existing application by @itowlson in #889- Templates for static fileserver and redirect by @itowlson in #898
- chore: Cleanup unused deps by @etehtsea in #914
- Munge Spin app name to legal bindle name by @itowlson in #920
- Skip validating unused manifest fields in spin build by @itowlson in #913
- Templates tidying by @itowlson in #918
- Bump wasmtime to 3.0.0 by @etehtsea in #917
- Fail if template references unknown filter by @itowlson in #908
- add support for outbound Redis set operations by @dicej in #915
- make
spin_publish::expander::expand_manifest
public again by @dicej in #923 - make
ParcelSources::source
public by @dicej in #924 - make
spin_publish::bindle_writer::write
public again by @dicej in #927 - Build is not async by @itowlson in #925
- Fix
spin up --help
omitting many options if app is not ready to lock by @itowlson in #934 - wagi: Bail early if nothing is written to stdout by @lann in #929
- Enable aarch64 in release workflow by @jpflueger in #926
- Fix redeploy readiness by @lann in #870
- chore: Update examples by @etehtsea in #921
- chore: Add deployment-auth sip to the index by @etehtsea in #954
- Don't return error status if plugin is already installed by @itowlson in #952
- Error if user follows a non-existent component by @itowlson in #951
- fix: Get rid of log/env_logger leftovers by @etehtsea in #938
- chore: Replace atty with is-terminal by @etehtsea in #956
- chore: update contributing link in README.md by @morristai in #961
- Print confirmation message on plugins update by @itowlson in #960
- Provide more context on missing import error by @itowlson in #959
- Better error if git not installed by @itowlson in #958
- Add/enhance MySQL support by @etehtsea in #864
- add
--direct-mounts
option tospin up
by @dicej in #967 - Handle paginated responses when looking for revision and channel IDs by @itowlson in #973
- use current version during first time deployment by @rajatjindal in #970
- chore(*): fix clippy errors by @fibonacci1729 in #979
- Implement
spin plugin list
by @itowlson in #972 - chore(example): Fix clippy warning by @etehtsea in #980
- They said Stonehenge would stand forever by @itowlson in #982
- chore(*): update versions to v0.7.0 by @michelleN in #977
New Contributors
- @jpflueger made their first contribution in #926
- @morristai made their first contribution in #961
- @rajatjindal made their first contribution in #970
Full Changelog: v0.6.0...v0.7.0
v0.6.0
Spin v0.6.0 brings a host of improvements, refactorings, and new features! Among the most notable:
- Deploy to the Cloud by @bacongobbler in #794 (based on SIP in #795) — this feature lets you deploy a Spin application to Fermyon Cloud, in addition to deploying to a self-hosted instance of the Fermyon Platform
- feat: Add support for Spin plugins by @kate-goldenring and @karthik2804 in #735 (based on SIP in https://github.com/fermyon/spin/blob/main/docs/content/sips/006-spin-plugins.md) - this change allows anyone to create a Spin plugin to extend the Spin CLI
- Add
spin-conformance
crate (#724) by @dicej in #764 — a crate that runs conformance tests to ensure a new Spin SDK implementation is correct - Spin core refactor by @lann in #763 — this is a refactoring of Spin's internals to make it significantly easier to embed Spin into your own project
Thank you to all contributors for your amazing work, and welcome to the contributors list to: @sealmove @coderoflagos @etehtsea @tpmccallum @nealmcb @endocrimes @raymundovr @elimisteve @ipedrazas
What's Changed
- chore(*): update templates and examples to use the v0.5.0 sdk by @vdice in #737
- Update Go documentation by @sealmove in #717
- Validate name when instantiating template by @itowlson in #740
- Rename wasi-outbound-http crate to outbound-http by @lann in #747
- Enable wasmtime async support by @lann in #748
- minor corrections by @coderoflagos in #743
- Simplify spin-config implementation by @lann in #750
- Use tracing TestWriter in tests by @lann in #751
- Remove double slash from file URIs by @lann in #753
- ci(release.yml): create PR for template SDK updates by @vdice in #749
- added the [component.build] section in the sample. by @coderoflagos in #755
- Rename
spin-http-engine
tospin-http
by @lann in #759 - Clean up some unused dependencies by @lann in #760
- Install script for Spin by @mikkelhegn in #729
- fix: Don't
block_on
in outbound-http by @lann in #770 - Fix misspelled http-rust-outbound-http directory by @lann in #772
- Chore: bump rust-cache in build action by @karthik2804 in #767
- feat: Add support for Spin plugins by @kate-goldenring in #735
- fix: Use
block_in_place
in outbound-pg by @lann in #771 - Add
spin-conformance
crate (#724) by @dicej in #764 - feat: Include manifest file name into error output by @etehtsea in #778
- Add option to use --follow-all when running Redis Trigger (to see messages interactively, as apposed to via logs) by @tpmccallum in #781
- use
tokio-postgres
inoutbound-pg
by @dicej in #779 - For errors, gently suggest rustup check by @nealmcb in #784
- build: rely on bash from 'PATH' by @endocrimes in #788
- Fix links to WIT documentation by @raymundovr in #790
- Update Go SDK: typo fix by @elimisteve in #792
- Swap wget for curl to be consistent with docs by @ipedrazas in #785
- feat(outbound-pg): Reuse connection during request lifecycle by @etehtsea in #791
- Spin core refactor by @lann in #763
- Teach outbound-http to use connection pool by @lann in #796
- Allow templates to define custom Liquid filters by @itowlson in #761
- outbound-redis: Don't keep connections alive between requests by @lann in #797
- Fix redis/http triggers by @etehtsea in #800
- Update example
Cargo.lock
s by @lann in #803 - Deduplicate some spin-testing code by @lann in #802
- feat: add support to override Spin compatibility checks for plugins by @kate-goldenring in #780
- Add spin-trigger TriggerHooks by @lann in #808
- More flexibility and guidance in the
spin new
experience by @itowlson in #807 - Wait for deployment to be healthy by @itowlson in #805
- tests: Send SIGTERM to spin child process on *nix by @lann in #809
- feat: make http_trigger::loader public by @Mossaka in #810
- Deployment auth SIP by @itowlson in #795
- fix(loader): make new method public by @Mossaka in #816
- Add #[source] to some thiserror::Error variants by @lann in #817
- deploy to the Cloud by @bacongobbler in #794
- Break login into smaller functions by @itowlson in #818
- Have logins to multiple platforms at the same time by @itowlson in #819
- trim trailing slash on --url by @bacongobbler in #823
- dependencies: bump bindle to 0.8.2 by @endocrimes in #825
- command(login): validate that the provided hippo URL is valid by @endocrimes in #826
- Improve deployment experience by @itowlson in #824
- Teach
spin up --listen
to parse hostnames by @lann in #827 - Add some spacing to login flow by @fibonacci1729 in #829
- command(deploy): Parse connection URL for bindle path construction by @endocrimes in #830
- Do not wait for /healthz when using GitHub auth by @itowlson in #832
- Add
/.well-known/spin/health
alias for/healthz
by @lann in #836 - do not deploy redis triggers on cloud by @bacongobbler in #835
- move hashtables to end of toml-serializable structs by @dicej in #837
- Tweak
spin deploy
output by @lann in #839 - Use random buildinfo in cloud_deploy by @lann in #840
- Update default Cloud URL by @radu-matei in #841
- Add link to FAQ by @fibonacci1729 in #842
- Add new logos for Spin by @radu-matei in #843
- Add redirects to developer site by @technosophos in #834
- Improve error message on missing manifest content path by @lann in #844
- Remove workflow and make recipes for docs by @fibonacci1729 in #846
- Simplify
spin deploy
output by @lann in #847 - Add back release doc by @fibonacci1729 in #849
- Bump version to 0.6.0 by @fibonacci1729 in #845
New Contributors
- @sealmove made their first contribution in #717
- @coderoflagos made their first contribution in #743
- @etehtsea made their first contribution in #778
- @tpmccallum made their first contribution in #781
- @nealmcb made their first contribution in #784
- @endocrimes made their first contribution in #788
- @raymundovr made their first contribution in #790
- @elimisteve made their first contribution in #792
- @ipedrazas made their first contribution in #785
Full Changelog: v0.5.0...v0.6.0