Spin - 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: https://github.com/fermyon/spin/pull/1152, https://github.com/fermyon/spin/pull/1147, https://github.com/fermyon/spin/pull/1135, https://github.com/fermyon/spin/pull/1119, and https://github.com/fermyon/spin/pull/1085
- More intuitive HTTP route matching
- Updated and improved Go SDK support: https://github.com/fermyon/spin/pull/1165 and https://github.com/fermyon/spin/pull/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 https://github.com/fermyon/spin/pull/1093 - feat(templates): update sdk to v0.8.0 by @github-actions in https://github.com/fermyon/spin/pull/1094
- Record where templates were installed from by @itowlson in https://github.com/fermyon/spin/pull/1085
- Upgrade templates without git incantation by @itowlson in https://github.com/fermyon/spin/pull/1095
- e2e tests for spin by @rajatjindal in https://github.com/fermyon/spin/pull/1065
- Use term application rather than project in
spin new
andspin add
by @calebschoepp in https://github.com/fermyon/spin/pull/1096 - ci(*): add website deployment logic by @vdice in https://github.com/fermyon/spin/pull/1103
- [e2e-tests] enhancements to e2e tests by @rajatjindal in https://github.com/fermyon/spin/pull/1108
- fix: update HTTP routing to longest matching prefix wins by @fibonacci1729 in https://github.com/fermyon/spin/pull/1109
- fix(tinygo): Regenerate canoncial_abi_* methods by @lann in https://github.com/fermyon/spin/pull/1114
- Warn if HTTP app contains duplicate routes by @itowlson in https://github.com/fermyon/spin/pull/1099
- remove assets test by @rajatjindal in https://github.com/fermyon/spin/pull/1112
- ci(perf): Improve job parallelization and disable incremental Rust builds by @tschneidereit in https://github.com/fermyon/spin/pull/1110
- Chore: update to Wasmtime 5.0 by @tschneidereit in https://github.com/fermyon/spin/pull/1100
- Do not deploy web site from forks by @itowlson in https://github.com/fermyon/spin/pull/1121
- chore(docs/spin.toml): update contributing redirect by @vdice in https://github.com/fermyon/spin/pull/1123
- Rename
spin oci
tospin registry
by @radu-matei in https://github.com/fermyon/spin/pull/1104 - chore(docs): update http route comment by @fibonacci1729 in https://github.com/fermyon/spin/pull/1125
- chore(supply-chain): update audits/exemptions by @vdice in https://github.com/fermyon/spin/pull/1106
- ref(build): updates build to allow interactive commands by @michelleN in https://github.com/fermyon/spin/pull/1130
- add SIP 010 - Key-Value Storage by @dicej in https://github.com/fermyon/spin/pull/1045
- feat: implement basic template tags by @fibonacci1729 in https://github.com/fermyon/spin/pull/1119
- add outbound-kv host component, based on SQLite by @dicej in https://github.com/fermyon/spin/pull/1035
- ref(*): make log output to stdout by default by @michelleN in https://github.com/fermyon/spin/pull/1115
- Work around unused import on Windows by @itowlson in https://github.com/fermyon/spin/pull/1137
- gitignore .spin directory in newly created apps by @itowlson in https://github.com/fermyon/spin/pull/1138
- Better guidance when unable to upgrade templates by @itowlson in https://github.com/fermyon/spin/pull/1135
- Add initial cache for Spin URL component sources by @radu-matei in https://github.com/fermyon/spin/pull/1088
- key-value-sqlite: Temporarily downgrade rusqlite by @lann in https://github.com/fermyon/spin/pull/1143
- add general-purpose
execute
function tooutbound-redis
by @dicej in https://github.com/fermyon/spin/pull/1134 - Warn when some templates can't be upgraded by @itowlson in https://github.com/fermyon/spin/pull/1147
- fail fast on ci when lint job fails by @rajatjindal in https://github.com/fermyon/spin/pull/1148
- refactor key-value host component for per-component configuration by @dicej in https://github.com/fermyon/spin/pull/1144
- feat: spin up from oci registry by @fibonacci1729 in https://github.com/fermyon/spin/pull/1146
- move
deploy
andlogin
tospin cloud
by @bacongobbler in https://github.com/fermyon/spin/pull/1139 - fix: handling up for local apps was breaking CI by @fibonacci1729 in https://github.com/fermyon/spin/pull/1154
- use composite action to avoid configuring versions/downloads multiple times by @rajatjindal in https://github.com/fermyon/spin/pull/1083
- remove e2e-tests dependency on windows/mac builds by @rajatjindal in https://github.com/fermyon/spin/pull/1158
- lazily create and reuse store manager for each app by @dicej in https://github.com/fermyon/spin/pull/1160
- Make template upgrade kinder to old installs of common repos by @itowlson in https://github.com/fermyon/spin/pull/1152
- Implement
spin registry login
by @radu-matei in https://github.com/fermyon/spin/pull/1150 - grand Go SDK update by @dicej in https://github.com/fermyon/spin/pull/1165
- chore(*): v0.9.0 version bumps by @dicej in https://github.com/fermyon/spin/pull/1170
New Contributors
- @tschneidereit made their first contribution in https://github.com/fermyon/spin/pull/1110
Full Changelog: https://github.com/fermyon/spin/compare/v0.8.0...v0.9.0
Details
- 🔍View and search all Spin releases.
- 🛠️Create and share lists to track your tools.
- 🚨Setup notifications for major, security, feature or patch updates.
- 🚀Much more coming soon!