Changelog¶
Starting with Snapcraft 8.7.0, information about releases can be found in the release notes.
8.6.3 (2025-Feb-20)¶
Core¶
Plugins¶
Flutter¶
- Fix a bug where the Flutter plugin would fail to install Flutter for - core22and- core24snaps.
For a complete list of commits, check out the 8.6.3 release on GitHub.
8.6.2 (2025-Feb-14)¶
Core¶
- Fix a bug where LXD instances would fail during setup due to a race condition where the setup began before the instance had started. 
- Require Multipass - 1.14.1or higher when using Multipass to build- core22or- core24snaps.
For a complete list of commits, check out the 8.6.2 release on GitHub.
8.6.1 (2025-Feb-10)¶
Core¶
Plugins¶
uv¶
- Fix a bug where a classic snap using the uv plugin would fail to find the Python interpreter included in the snap itself. 
Remote build¶
- Fix a bug where the source code, build recipes, and build logs for remote builds of private Launchpad projects would be publicly available on Launchpad while the build was in progress. 
For a complete list of commits, check out the 8.6.1 release on GitHub.
8.6.0 (2025-Feb-05)¶
Core¶
Note
Unless stated otherwise, the changes in this section apply to snaps using
core22 or core24 bases.
- Add - chiselas a- build-snapif any part has slices and- chiselisn’t already listed as a- build-snap.
Plugins¶
Ant¶
- Set - JAVA_HOMEenvironment variable to allow the Ant plugin to detect the latest available JDK.
Go Use¶
- Add the new Go Use plugin for setting up a workspace for Go modules. 
Maven¶
- Set - JAVA_HOMEenvironment variable to allow the Maven plugin to detect the latest available JDK.
Rust¶
- Fix dependency validation for the - rustplugin when a- rust-depspart exists (canonical/craft-parts#890).
Poetry¶
- Add new - poetry-export-extra-argsand- poetry-pip-extra-argskeys (canonical/craft-parts#932).
- Fix an issue where the Poetry plugin would try to install Poetry from the package repositories when - poetry-depswas declared as a dependency (canonical/charmcraft#1996).
uv¶
Extensions¶
KDE Neon 6¶
- Add support for - core24snaps.
- Fix a bug where themes defined in - $SNAP_REAL_HOME/.config/kdeglobalswouldn’t be loaded.
ROS 2 Jazzy¶
- Remove the experimental flag from the ROS 2 Jazzy extension. 
Command line¶
- Show error details in all verbosity modes except - quiet.
- Improve error presentation when the snap fails to pack. 
- Improve error presentation when a step or an override script fails by splitting stderr and stdout. 
Store¶
Documentation¶
- Add a Snapcraft quickstart guide. 
- Add a how-to guide for selecting a build provider. 
- Add how-to guides for crafting snaps for common languages, frameworks, and meta build systems. 
- Update the component documentation to include component types. 
- Add the following reference documentation: 
For a complete list of commits, check out the 8.6.0 release on GitHub.
8.5.1 (2024-Dec-17)¶
Core¶
- Improve validation of - appcommands in a- snapcraft.yamlfile. This includes- command,- stop-command,- post-stop-command,- reload-command, and- bus-name(#4999).
Command line¶
- Fix crash in command line help when positional arguments exist with no associated help (#5169). 
For a complete list of commits, check out the 8.5.1 release on GitHub.
8.5.0 (2024-Nov-19)¶
Core¶
- Remove the Snapcraft Dockerfile in favour of the snapcraft-rocks registry. For more information, see the - docker/README.mdfile.
Bases¶
core24¶
- Add a - --platform <platform>argument to the- cleancommand to filter which build environments to clean (canonical/craft-application#425).
Plugins¶
Poetry¶
- Add a new plugin for projects using Poetry. For more information, see Poetry plugin reference. 
Extensions¶
Env-injector¶
- Add a new experimental extension called env-injector. It simplifies passing environment variables to snaps at runtime using - snap configor a- .envfile. For more information, see the env-injector extension
Command line¶
- Order lifecycle commands in the sequence they run rather than alphabetically in help messages. 
- Show positional arguments in help messages. 
- Hide the terminal cursor when Snapcraft is running. 
- Fix a bug where the version and path to the log file were logged multiple times. 
- Fix a bug where deprecated commands were suggested when an invalid command was entered (canonical/craft-cli#297). 
Init¶
- Add a - <project-dir>argument to initialise the project in a particular directory.
- Add a - --name <name>argument to set the- namekey in the initialised- snapcraft.yaml. If- --nameisn’t provided, the name of the project directory or current working directory is used.
- Add a - --profile <profile>argument to initialise a project for a specific purpose. Currently, only the- simpleprofile is supported.
Store¶
- Add support for - registrieswith new commands- list-registriesand- edit-registries.
- Add support for specifying components in a validation set when using the - edit-validation-setscommand.
Documentation¶
- Add reference for linters. 
- Update the - HACKINGdoc with instructions for how to use- tox.
- Hide subheadings in the changelog’s table of contents. 
- Add reference for the Poetry plugin. 
- Fix an issue where the auto-generated command reference wasn’t rendered correctly. 
For a complete list of commits, check out the 8.5.0 release on GitHub.
8.4.4 (2024-Oct-24)¶
Core¶
Bases¶
core24¶
- Fix a bug where - CRAFT_PARALLEL_BUILD_COUNTwas not evaluated in- snapcraft.yamlfiles (#4785).
- Fix a bug where - package-repositoriesdeclarations could conflict with default sources present in Noble (LP#2083013).
For a complete list of commits, check out the 8.4.4 release on GitHub.
7.5.8 (2024-Oct-24)¶
Core¶
- Fix a regression where Snapcraft would fail to run on some architectures due to a - cryptographydependency that attempted to load legacy algorithms (#5077).
For a complete list of commits, check out the 7.5.8 release on GitHub.
8.4.3 (2024-Oct-10)¶
Core¶
Components¶
- Add support for component types - kernel-modulesand- standard(#5089).
For a complete list of commits, check out the 8.4.3 release on GitHub.
8.4.2 (2024-Oct-07)¶
Core¶
- Fix a regression where Snapcraft would fail to run on some architectures due to a - cryptographydependency that attempted to load legacy algorithms (#5077).
- Fix a regression where Snapcraft would fail to run in a container if it was not running as a snap (#5079). 
- Fix a bug where parallel installations of Snapcraft would not work if the Snapcraft snap was installed from the store (#4683, #4927). 
Plugins¶
Python¶
- Fix an issue where the - pythonplugin would fail to build if the part had no Python scripts.
Remote build¶
- Fix a bug where the remote builder would ignore the user’s response when a build is interrupted and always clean the launchpad project (#4929). 
Documentation¶
- Update Rust plugin doc with recent changes to the Rust toolchain. 
For a complete list of commits, check out the 8.4.2 release on GitHub.
7.5.7 (2024-Oct-03)¶
Core¶
- Fix a bug where parallel installations of Snapcraft would not work if the Snapcraft snap was installed from the store (#4683, #4927). 
For a complete list of commits, check out the 7.5.7 release on GitHub.
8.4.1 (2024-Sep-20)¶
Core¶
- Fix a regression where numeric entries in - snapcraft.yamlcouldn’t be parsed.
Bases¶
core24¶
- Fix a regression where - build-forcouldn’t be omitted in a- platformsentry in a- snapcraft.yamlfile.
- Fix a regression where - --shelland- --shell-afterweren’t supported for the- packcommand (#4963).
- Fix a regression where - --debugwouldn’t open a shell into the build environment if the packing step fails (#4959).
Plugins¶
NPM¶
- Fix a bug where NPM parts fail to build if the - pulland- buildsteps didn’t occur in the same instance of Snapcraft.
Command line¶
Remote build¶
Store¶
- Fix a regression where Ubuntu One macaroons couldn’t be refreshed (#5048). 
For a complete list of changes, check out the 8.4.1 release on GitHub.
8.3.4 (2024-Sep-13)¶
Core¶
Plugins¶
NPM¶
- Fix a bug where NPM parts fail to build if the - pulland- buildsteps did not occur in the same execution of Snapcraft.
For a complete list of commits, check out the 8.3.4 release on GitHub.
8.4.0 (2024-Sep-10)¶
Note
8.4.0 includes changes from the 7.5.6 release.
Core¶
- Fix a bug where Snapcraft would fail to inject itself into the build environment when not running as a snap (canonical/charmcraft#406). If an app isn’t running from snap, the installed app will now install the snap in the build environment using the channel in the - CRAFT_SNAP_CHANNELenvironment variable, defaulting to- latest/stableif none is set.
- Fix a regression where icons wouldn’t be configured and installed for snaps with no - appsdefined in their- snapcraft.yaml.
Bases¶
core24¶
- Raise an error if the build plan is empty and no snaps will be built (canonical/craft-application#225). 
- Fix a regression where - https_proxy,- https_proxy, and- no_proxywere not forwarded into the build environment.
Plugins¶
- Fix a bug where - snapcraft list-plugins --base core20would fail in a- core24project directory (#5008).
Components¶
- Allow numbers and hyphens in component names (LP#2069783). 
- Fix a bug where - stage-packagescan’t be used when components are defined (canonical/craft-parts#804).
Command line¶
- Improve error messages when parsing a - snapcraft.yamlfile (#4941).
- Improve error messages when using an ESM base. 
- Improve error messages for missing files (canonical/craft-parts#802). 
- Improve error messages when a build fails because it matches multiple platforms (canonical/craft-application#382). 
- Fix a bug where multi-line error messages would overwrite the previous line (canonical/craft-cli#270). 
Remote build¶
- Add “Pending” status for queued remote builds. 
- Add documentation links to remote-build errors. 
- Improve error messages when multiple snaps can be built on a single - build-onarchitecture (#4995).
- Improve error messages when using the wrong remote builder. 
- Fix a regression where - --platformor- --build-forcould be used when- platformsor- architectureswere defined in the- snapcraft.yamlfile (#4881).
- Fix a regression where - --platformcould be used for- core22snaps (#4881).
- Fix a bug where - SNAPCRAFT_REMOTE_BUILD_STRATEGYwould be validated when running commands other than- remote-build.
- Fix a bug where - SNAPCRAFT_REMOTE_BUILD_STRATEGYwas ignored for- core24snaps.
Documentation¶
- Add changelog notes for all Snapcraft 8.x releases 
- Add reference, explanation, and how-to guide for components. 
- Add reference, explanation, and how-to guide for bases. 
For a complete list of commits, check out the 8.4.0 release on GitHub.
8.3.3 (2024-Aug-28)¶
Core¶
- Improve detection and error messages when LXD is not installed or not properly enabled. 
Bases¶
core24¶
- Require Multipass >= - 1.14.1when using Multipass to build- core24snaps.
For a complete list of commits, check out the 8.3.3 release on GitHub.
7.5.6 (2024-Aug-15)¶
Core¶
Bases¶
core22¶
- Fix a regression where icons would not be configured and installed for snaps with no - appsdefined in their- snapcraft.yaml.
For a complete list of commits, check out the 7.5.6 release on GitHub.
8.3.2 (2024-Aug-05)¶
Core¶
Bases¶
core24¶
- Fix a bug where classic snaps with a Python virtual environment would attempt to use the system’s Python interpreter (#4942). 
Plugins¶
Kernel¶
- Fix a bug where removing a missing symlink would cause the kernel plugin to fail. 
Store¶
- Fix a bug where - edit-validation-setswould fail when editing a validation sets with snap revisions (#4909).
For a complete list of commits, check out the 8.3.2 release on GitHub.
8.3.1 (2024-Jul-08)¶
Core¶
Bases¶
core24¶
- Support - allas a target with- build-for: [all](#4854).
- Ensure Craft Providers provider (LXD or Multipass) is available before launching a build environment. 
- Improve presentation of - snapcraft.yamlmodel errors.
Metadata¶
- Validate that - update_contact,- donation,- vcs-browser,- bugtracker, and- homepagefields adopted from an appstream metadata file are valid URLs or email addresses.
- Ensure that - contact,- donation,- source-code,- issues, and- websitefields in a snapcraft.yaml take priority over appstream metadata (#4890).
Remote build¶
- Require - core20snaps to use the legacy remote builder (#4886).
- Allow building - core22snaps with- build-for: [all].
- Support reading Launchpad credentials from the previous location (#4889). If launchpad credentials do not exist in the new location ( - $XDG_DATA_DIR/snapcraft/launchpad-credentials) introduced in- 8.2.0, then load credentials from the previous location (- $XDG_DATA_DIR/snapcraft/provider/launchpad/credentials) and emit a deprecation notice.
Note
This behavior applies to the new and legacy remote builders.
Documentation¶
- Add an explanation for the remote builders (#4842). 
- Update reference, how-to guide, and explanation for platforms and architectures. 
For a complete list of commits, check out the 8.3.1 release on GitHub.
8.3.0 (2024-Jun-27)¶
Core¶
- Improve logging to show which package is being fetched. 
- Add support for parts to source - 7zarchives.
- Improve error messages when sources cannot be fetched. 
Bases¶
core24¶
- Add support for - core24-desktopsnaps (#4818).
core22¶
Plugins¶
Flutter¶
- Add - curlas a- build-packagefor- flutterparts (#4804).
ROS 2 Jazzy¶
- Add support for the new ROS 2 Jazzy extension which lets you snap ROS 2 applications on - core24(#4791).
- Similar to ROS 2 Humble for - core22, content-sharing is supported (#4828).
For more information, see https://snapcraft.io/docs/ros2-jazzy-extension and https://snapcraft.io/docs/ros2-jazzy-content-extension.
NPM¶
Various improvements for the core22 and core24 NPM plugins:
- Accept NVM-style version identifiers for - npm-node-version.
- Verify SHA256 checksums after node.js download (canonical/craft-parts#717). 
- Use new-style - npm-installcommands if the npm version is newer than- 8.x.
- Set - NODE_ENVto- productionby default.
List plugins¶
Extensions¶
Gnome¶
- Make gnome extension stable for - core24.
- Fix - GI_TYPELIB_PATHand- XDG_DATA_DIRSpaths in the build environment (#4798).
- Integrate with the - gpu-2404SDK (#4744).
For more information, see the gpu 2404 interface docs.
KDE Neon 6¶
- Fix paths to - QtWebEngineProcessin the desktop launcher (#4745).
Expand extensions¶
- Fix a bug where - snapcraft expand-extensionscould not parse a- snapcraft.yamlfile containing the- platformskeyword.
Components¶
- Include the - provenancekeyword in a component’s metadata from a- snapcraft.yamlfile (#4827).
Metadata¶
Add support for adopting more metadata fields from a project’s appstream file:
- license
- contact
- source-code
- issues
- websites
- donations
Metrics¶
- Add support for - snapcraft metricsto retrieve the metrics- installed_base_by_architectureand- weekly_installed_base_by_architecture(#4735).
Names¶
- Add output formatting to - snapcraft nameswith- --format. Supported formats are- tableand- json(#4778).
Init¶
- Update - snapcraft initto create a- core24project instead of a- core22project (#4830)
Documentation¶
- Update Snapcraft’s documentation to use the canonical-sphinx theme. 
Add reference documentation for more plugins (#4811):
- ant
- autotools
- cmake
- dotnet
- go
- make
- meson
- nil
- npm
- qmake
- scons
For a complete list of commits, check out the 8.3.0 release on GitHub.
8.2.12 (2024-Jun-12)¶
Core¶
Bases¶
core24¶
- Fix a bug where snaps would stage Python packages already included in the - core24base snap (#4865).
Store¶
- Fix a bug where store-related error messages would be presented as an internal Snapcraft error. 
- Add a resolution and link to documentation for keyring errors. 
Documentation¶
- Fix Snapcraft’s version in the readthedocs documentation. 
For a complete list of commits, check out the 8.2.12 release on GitHub.
8.2.11 (2024-Jun-12)¶
Core¶
Plugins¶
Dotnet¶
- Fix a regression where the - dotnetplugin could not be used for- core22snaps (#4825).
For a complete list of commits, check out the 8.2.11 release on GitHub.
8.2.10 (2024-Jun-03)¶
Remote builder¶
- Fix a bug where comma-separated architectures in - --build-forcould not be parsed (#4780).
- Fix a bug where - core22snaps with a top level- architectureskeyword could not be parsed (#4780).
- Fix a bug where remote build log files were incorrectly named (#4781). 
- Retry more API calls to Launchpad (canonical/craft-application#355). 
- Add an exponential backoff to API retries with a maximum total delay of 62 seconds (canonical/craft-application#355). 
- Fix a bug where the remote builder would not fail if no artifacts were created (#4783). 
For a complete list of commits, check out the 8.2.10 release on GitHub.
8.2.9 (2024-May-28)¶
Core¶
Extensions¶
KDE Neon 6¶
- Fix multiple issues to allow web processes to work correctly (#4823). 
- Expose the - libplasand- liblapackprovided by the- kf6-core22{-sdk}snaps (#4823).
For a complete list of commits, check out the 8.2.9 release on GitHub.
8.2.8 (2024-May-17)¶
Core¶
Bases¶
core24¶
- Fix a behavior where shared libraries from the host were loaded for classically confined snaps. 
Note
This is implemented with patchelf --no-default-lib when
enable-patchelf is defined.
Plugins¶
Dotnet¶
- Disable the - dotnetplugin for- core24snaps due to a pending rewrite.
For a complete list of commits, check out the 8.2.8 release on GitHub.
8.2.7 (2024-May-09)¶
Core¶
- Add support for - ignore-runningin- apps.<app-name>.refresh-modein a- snapcraft.yamlfile (#4747).
Remote build¶
- Fix a regression where remote build would fail to parse some - architecturesdefinitions (#4780).
For a complete list of commits, check out the 8.2.7 release on GitHub.
8.2.6 (2024-May-09)¶
Core¶
- Fix a regression where a directory could not be packaged as a snap (#4769). 
For a complete list of commits, check out the 8.2.6 release on GitHub.
8.2.5 (2024-May-07)¶
Store¶
- Fix the same - cryptographyregression addressed in- 8.2.4but for store-related operations.
For a complete list of commits, check out the 8.2.5 release on GitHub.
8.2.4 (2024-May-05)¶
- Fix a regression where Snapcraft would fail to run on some architectures due to a - cryptographydependency that attempted to load legacy algorithms (LP#2064639).
For a complete list of commits, check out the 8.2.4 release on GitHub.
8.2.3 (2024-May-01)¶
Core¶
Bases¶
core24¶
- Fix a bug where project variables were evaluated before extensions were applied (#4771). 
- Fix a bug where - build-forproject variables were evaluated based on the host architecture (#4770).
For a complete list of commits, check out the 8.2.3 release on GitHub.
8.2.2 (2024-Apr-30)¶
Core¶
Bases¶
core24¶
- Fix a bug where advanced grammar could not be combined with other data (#4764, LP#2061603). 
For a complete list of commits, check out the 8.2.2 release on GitHub.
8.2.1 (2024-Apr-25)¶
Core¶
Bases¶
core24¶
- Fix a bug where project variables were not evaluated inside a - snapcraft.yamlfile and were not available as environment variables in the build environment.
- Fix a bug where advanced grammar was not evaluated in root-level part keywords - build-packagesand- build-snaps.
- Fix a bug where local key assets in - snap/keys/were not used when installing package repositories.
Remote build¶
- Fix a bug where - core24snaps could not use package repositories because- gpgand- dirmngrwere not installed in the remote build environment.
For a complete list of commits, check out the 8.2.1 release on GitHub.
8.2.0 (2024-Apr-17)¶
Core¶
Bases¶
core24¶
- Drop requirement for - build-base: develfor- core24snaps.
core22¶
- Extend advanced grammar for all part keywords except plugin-specific keywords. 
Remote build¶
- Migrate to the upstream remote builder in Craft Application. 
- Allow only one remote build is allowed per project. 
- Remove support for - build-idwith- snapcraft remote-build --recover.
- Remove support for deprecated - --build-onargument in favor of- --build-for.
- Move Launchpad credentials file from - $XDG_DATA_DIR/snapcraft/provider/launchpad/credentialsto- $XDG_DATA_DIR/snapcraft/launchpad-credentials.
- Fail if snapcraft is in a shallowly-cloned git repository instead of falling back to the legacy remote builder. 
Note
Reminder: Legacy remote-build behavior can be used for bases core22 and older
with the environment variable
SNAPCRAFT_REMOTE_BUILD_STRATEGY="force-fallback". See more information in
the remote build documentation.
For a complete list of commits, check out the 8.2.0 release on GitHub.
8.1.0 (2024-Apr-10)¶
Core¶
Bases¶
core24¶
- Finalize internal refactor to use Craft Application to build - core24snaps.
For more information on deprecations and changes, see the core24 migration guide.
Plugins¶
Matter SDK¶
- Add new Matter SDK plugin for - core22.
For more information, see the Matter website and the Matter on Ubuntu docs.
Maven¶
- Add support for the Maven plugin for - core22snaps.
For more information, see Maven plugin.
QMake¶
- Add support for the QMake plugin for - core22snaps.
For more information, see https://snapcraft.io/docs/qmake-plugin.
Colcon¶
- Set build type to - RELEASEif it is not defined by- colcon_cmake_args: ["-DCMAKE_BUILD_TYPE=<build type>"]).
Extensions¶
KDE Neon 6¶
- Add new - kde-neon-6extension for- core22snaps that use Qt6 or the KDE Neon 6 framework.
Components¶
- Add support for creating components. 
- Components are parts of a snap that can be built and uploaded in conjunction with a snap and later optionally installed beside it. 
For more information, see the reference, explanation, and how-to guide documentation pages.
Remote build¶
- Add support for user-defined Launchpad projects projects, including private projects. 
- This is configured via - snapcraft remote-build --project <project-name>.
For a complete list of commits, check out the 8.1.0 release on GitHub.
8.0.5 (2024-Mar-18)¶
Core¶
- Fix a bug where LXD versions with an “LTS” suffix could not be parsed. 
For a complete list of commits, check out the 8.0.5 release on GitHub.
8.0.4 (2024-Mar-04)¶
Core¶
Bases¶
- Fix a bug where - develbases may not be fully validated.
- Bump the LXD compatibility tag to - v7.
core24¶
- Use - buildddaily images instead of- ubuntuimages for- core24bases and- build-base: devel.
- Fix a bug where creating - core24base images would fail because- aptwould install packages interactively.
For a complete list of commits, check out the 8.0.4 release on GitHub.
8.0.3 (2024-Feb-09)¶
Core¶
- Add a warning that when a part uses - override-primeit cannot use- enable-patchelf(#4547).
Bases¶
- Bump the LXD compatibility tag to - v6.
- Stop updating - aptsource config files when- build-base: develis defined.
core24¶
- Use the - core24alias instead of the- develalias when retrieving LXD images.
Plugins¶
Ant¶
- Use the proxy environment variables - http_proxyand- https_proxy.
Remote build¶
- Fix a bug where - --build-forand- --build-onwere not mutually exclusive options.
- Improve error messages and provide links to documentation when remote builds fail (#4517). 
- Fix a regression where comma-separated architectures in - --build-onand- --build-forwere not accepted (#4516).
For a complete list of commits, check out the 8.0.3 release on GitHub.
8.0.2 (2024-Jan-23)¶
Core¶
- Fix a bug where Snapcraft fails to run on platforms where - SSL_CERT_DIRis not set (#4510, #4520).
- Fix a decoding bug when logging malformed output from other processes, typically during the - buildstep (#4515).
For a complete list of commits, check out the 8.0.2 release on GitHub.
8.0.1 (2024-Jan-03)¶
Remote build¶
- Fix a bug where Snapcraft would not fail if the Launchpad build itself failed for new and legacy remote builders (#4142). 
- Fix a bug where large repos could not be pushed with the new remote builder (#4478). 
- Fallback to the legacy remote builder if the project is shallowly cloned (#4479). 
For a complete list of commits, check out the 8.0.1 release on GitHub.
8.0.0 (2023-Dec-04)¶
Core¶
Bases¶
core22¶
Add new environment variables for build-on and build-for architectures:
- CRAFT_ARCH_TRIPLET_BUILD_FOR, supersedes- CRAFT_ARCH_TRIPLET
- CRAFT_ARCH_TRIPLET_BUILD_ON
- CRAFT_ARCH_BUILD_FOR, supersedes- CRAFT_TARGET_ARCH
- CRAFT_ARCH_BUILD_ON
For more information, see Architectures.
core20¶
Add new environment variables for build-on and build-for architectures:
- SNAPCRAFT_ARCH_TRIPLET_BUILD_FOR, supersedes- SNAPCRAFT_ARCH_TRIPLET
- SNAPCRAFT_ARCH_TRIPLET_BUILD_ON
- SNAPCRAFT_ARCH_BUILD_FOR, supersedes- SNAPCRAFT_TARGET_ARCH
- SNAPCRAFT_ARCH_BUILD_ON
For more information, see Architectures.
core18¶
- Deprecate building snaps using the - core18base.
For more information on how to continue building snaps with the core18
base, see this page.
Stage packages¶
- Support chiseled - stage-packages. This is useful for reducing the size of the snap when creating base snaps or using a bare base.
For more information about chisel, see https://github.com/canonical/chisel
Plugins¶
Rust¶
- Use default rust toolchain with - rustup.
- Add option - rust-ignore-toolchain-file.
- Add option - rust-inherit-ldflags.
- Add list - rust-cargo-parameters.
For more information about the new options, see Rust plugin.
Kernel¶
- Generate kernel configs for Ubuntu 22.04 (Jammy). 
Python¶
- Add support for Python projects driven by a - pyproject.toml.
For more information, see the PEP 518 spec.
ROS 2¶
- Add support for content sharing for core20 & core22 bases (ROS Noetic, Foxy, Humble) and the - colcon,- catkin, and- catkin-toolsplugins
For more information on ROS architecture, see the ROS architectures with snaps.
More information on content-sharing, see:
Command line¶
- Stream messages in the default - briefmode
- Improve presentation of build step prefixes 
Linter¶
- Suggest packages to add to - stage-packagesto satisfy a potential missing library.
Remote build¶
Introduce a new remote-builder for core24 snaps:
- Does not modify the project’s - snapcraft.yaml
- Does not fetch and tarball remote sources before sending the project to Launchpad 
- Require projects to be in the top-level of a fully-cloned (non-shallow) git repository 
- Allow switching between the new and legacy remote builders with the environment variable - SNAPCRAFT_REMOTE_BUILD_STRATEGY.
For more information on the new remote-builder, how to switch between the new and legacy remote builders, see Remote build.
Store¶
- Add a fallback to a file-based keyring when the system keyring cannot be initialized, is not fully configured, or is otherwise not available. 
For more information on the file-based keyring, see https://snapcraft.io/docs/snapcraft-authentication.
For a complete list of commits, check out the 8.0.0 release on GitHub.
