8.3.0
Core
Bases
Fixes a bug where snaps using bases core22-desktop
and core24-desktop
could not be built (#4818).
Core22
Warns when multiple snaps are going to be built in destructive mode because it may cause unexpected behavior (#4685, #4356).
Stage packages
Improves logging shows which package is being fetched.
Sources
Adds support for parts to source 7z
archives.
Improves error messages when sources can not be fetched.
Plugins
Flutter
Adds curl
as a build-package for flutter
parts (#4804).
ROS 2 Jazzy
Adds 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
Adds various improvements to the NPM plugin for core22 and core24:
- The
npm-node-version
option now accepts an NVM-style version identifier - Verify SHA256 checksums after node.js download (canonical/craft-parts#717)
- Use new-style npm-install commands if the npm version is newer than
8.x
- Set
NODE_ENV
toproduction
by default
List plugins
Fixes a bug where snapcraft list-plugins
would fail to run in a core24 project directory (#4830).
Updates snapcraft list-plugins
to show a list of core24
plugins instead of core22
plugins when not in a project directory (#4830).
Extensions
Gnome
The gnome
extension is now stable for core24
and integrates with the gpu-2404
SDK (#4744). See here for more information.
Fixes GI_TYPELIB_PATH
and XDG_DATA_DIRS
paths in the Gnome extension's build environment (#4798).
KDE Neon 6
Fixes paths to QtWebEngineProcess
in the desktop launcher (#4745).
Expand extensions
Fixes a bug where snapcraft expand-extensions
could not parse a snapcraft.yaml
file containing the platforms
keyword.
Components
Component metadata now includes the provenance
keyword from a snapcraft.yaml
file (#4827).
Metadata
Adds support for adopting more metadata fields from a project's appstream file:
- license
- contact
- source-code
- issues
- websites
- donations
Metrics
Adds support for snapcraft metrics
to retrieve the metrics installed_base_by_architecture
and weekly_installed_base_by_architecture
(#4735).
Names
Adds output formatting to snapcraft names
with --format
. Supported formats are table
and json
(#4778).
Init
Updates snapcraft init
create a core24
project instead of a core22
project (#4830).
Documentation
Updates Snapcraft's documentation to use the canonical-sphinx
theme.
Adds reference documentation for more plugins (#4811):
- dotnet
- ant
- autotools
- cmake
- go
- make
- meson
- nil
- npm
- qmake
- scons
Updates reference documentation for lifecycle commands to be based on core24
lifecycle commands instead of core22
lifecycle commands (#4830).
Implicit slot and plug assignment
Improves the warning for implicit slot and plug assignment from top-level slot and plug definitions now includes a link to new documentation (#4765).
What's Changed
- feat(lint): migrate lint command by @syu-w in #4732
- chore(merge): '8.2.1' into 'main' by @mr-cal in #4760
- tests: remove core24 snap workarounds (#4761) by @mr-cal in #4763
- Activate installed_base_by_architecture metrics by @DanielDewberry in #4735
- Sgmoore/fix qtwebengineprocess by @ScarlettGatelyMoore in #4745
- chore: update link for top level plug and slots warning by @mr-cal in #4765
- feat: support refresh-mode: ignore-running by @mr-cal in #4749
- docs: use canonical-sphinx by @tigarmo in #4766
- chore(merge): '8.2.2' into 'main' by @mr-cal in #4777
- chore: merge hotfix 8.2 into main by @sergiusens in #4786
- chore(deps): update dependency jinja2 to v3.1.4 [security] by @renovate in #4789
- chore: merge 8.2 hotfix branch by @cmatsuoka in #4792
- build(deps): bump setuptools from 59.6.0 to 65.5.1 in /docs by @dependabot in #4775
- build(deps): bump pip from 22.0.2 to 23.3 in /docs by @dependabot in #4776
- chore: add issue for using
ld
from the base snap by @mr-cal in #4752 - tests: fix remote-build tests by @mr-cal in #4767
- chore(merge): '8.2.7' into 'main' by @mr-cal in #4803
- chore(deps): update documentation dependencies by @renovate in #4728
- extension: fix issues and depreciated vars in gnome extension by @soumyaDghosh in #4798
- flutter: add missing
curl
build-package by @Saviq in #4804 - chore: merge 8.2.8 into main by @sergiusens in #4819
- linter updates by @lengau in #4815
- build(deps): bump craft-parts to 1.31.0 by @tigarmo in #4811
- chore: merge 8.2.9 hotfixes by @sergiusens in #4824
- feat: adopt more fields from the appstream metadata file(part 2) by @soumyaDghosh in #4652
- extension: add ROS 2 Jazzy (core24) by @artivis in #4791
- tests: drop
grade: devel
from core24 spread tests by @mr-cal in #4750 - fix(tox): use requirements-devel for linters by @lengau in #4820
- feat(names) add --format option by @DanielDewberry in #4778
- chore(merge): '8.2.10' into 'main' by @mr-cal in #4838
- refactor: migrate commands to craft-application by @mr-cal in #4830
- fix(schema): add ROS 2 core22 extensions for remote-build by @Guillaumebeuzeboc in #4756
- feat: warn when multiple snaps will be built in the same environment by @mr-cal in #4839
- Add ROS 2 Jazzy content-sharing support by @artivis in #4828
- style: remove pylint by @lengau in #4817
- chore(deps): update dependency pytz to v2023.4 by @renovate in #4833
- style: remove pylint comments by @mr-cal in #4848
- refactor: change PackCommand parent by @mr-cal in #4797
- chore(deps): update dependency tornado to v6.4.1 [security] by @renovate in #4847
- fix: allow coreXX-desktop bases by @lengau in #4850
- gnome: add gpu-2404 integration by @Saviq in #4744
- feat: write provenance to component metadata by @mr-cal in #4849
- chore(merge): '8.2.11' into 'main' by @mr-cal in #4852
- ci: enable TiCS integration by @sergiusens in #4855
- chore: move gnome-extension to stable by @jssotomdz in #4799
- chore(merge): '8.2.12' into 'main' by @mr-cal in #4872
New Contributors
- @DanielDewberry made their first contribution in #4735
- @jssotomdz made their first contribution in #4799
Full Changelog: 8.2.12...8.3.0