Snapcraft 4.6
Special thanks to the contributors that made this release happen: @MarcusTomlinson, @cjp256, @cmatsuoka, @mvo5, @sergiusens and @ycheng
This is a feature packed release, from new extensions, core20 supported extensions and plugins, and a new login mechanism.
Support for candid
A new option, --experimental-login can now be used when using
snapcraft login or snapcraft export-login and when signing assertions.
Using this option will trigger a web based authentication flow. To go
back to the previous login method you must first snapcraft logout.
Conda plugin
The conda plugin has been ported to core20. These are the available
plugin options:
- conda-packages
(list of strings, default [])
List of conda packages to install. - conda-python-version
string
Python version major and minor version (e.g. 3.8). - conda-miniconda-version
string, default latest
The version of miniconda to initialize.
Package Repositories
The road to making this feature stable is closer, a breaking change
lands with 4.6 for this experimental feature. Keys are now using the
suffix and not prefix of the key id.
Metadata
Snapcraft is now aware of the existence of kernel.yaml for snaps of
type kernel.
The install-mode option for applications is now supported with this release.
Extensions
GNOME 3.38
With this release, the GNOME 3.38 extension, which was previously
marked as unstable and documented at
https://snapcraft.io/docs/gnome-3-38-extension is now marked as
stable.
KDE Neon
The KDE Neon extension now supports core20 as an experimental
extension, the documentation on
https://snapcraft.io/docs/kde-neon-extension has been updated to
reflect this.
Flutter
New flutter variants of the extension for stable and beta are now
available. The same documentation applies as for the master and dev
variant https://snapcraft.io/docs/flutter-extension.
Full list of changes
- package-repositories: use last 8 characters of key id for .asc @cjp256 (#3486)
- build(deps): bump lxml from 4.6.2 to 4.6.3 @dependabot (#3485)
- Support install-mode option for apps @cmatsuoka (#3482)
- requirements: use PyNaCl 1.3.0 and ensure is compiled on linux @sergiusens (#3483)
- tests: crystal 1.0.0 requires shard.lock @sergiusens (#3484)
- porting conda plugin from v1 to v2 so we can use it in core20 @ycheng (#3457)
- project loader: ensure all key assets are utilized @cjp256 (#3364)
- Candid bakery @sergiusens (#3473)
- extensions: add core20 support to kde-neon @sergiusens (#3462)
- ci: add requirements for snapcraft legacy in spread @sergiusens (#3478)
- ci: reduce amount of artifacts to upload for spread @sergiusens (#3476)
- godeps: set default channel to 1.15/stable @cjp256 (#3475)
- spread tests: pin go for v1 plugin snaps @cjp256 (#3477)
- Add flutter-stable and -beta extension variants @MarcusTomlinson (#3471)
- storeapi: move http client and auth to http_clients package @sergiusens (#3472)
- store: do not unnecessarily catch/rewrite exceptions @cjp256 (#3466)
- ci: run spread store tests when secret is available @sergiusens (#3470)
- gitignore: sort list @cjp256 (#3467)
- repo: introduce DebPackage class to standardize package name parsing @cjp256 (#3460)
- store: set auth headers when using login --with @sergiusens (#3468)
- meta: add support for
kernel.yamlfor kernel snaps @mvo5 (#3464) - extensions: make GNOME 3.38 stable @sergiusens (#3427)
- requirements: pip freeze @sergiusens (#3458)
- storeapi: decouple auth and API @sergiusens (#3452)