canonical/snapcraft (canonical/snapcraft)
### [`v8.2.2`](https://togithub.com/canonical/snapcraft/releases/tag/8.2.2)
[Compare Source](https://togithub.com/canonical/snapcraft/compare/8.2.1...8.2.2)
#### Core
##### core24
Snapcraft 8.2.2 fixes two regressions with advanced grammar in core24 snaps:
- Advanced grammar could not be used in root-level part keywords `build-packages` and `build-snaps` ([LP#2061603](https://bugs.launchpad.net/snapcraft/+bug/2061603))
- Advanced grammar could not be combined with other data ([https://github.com/canonical/snapcraft/issues/4764](https://togithub.com/canonical/snapcraft/issues/4764))
#### Known issues
- Project variables `CRAFT_PROJECT_NAME` and `CRAFT_PROJECT_VERSION` are not evaluated in core24 ([https://github.com/canonical/craft-application/issues/320](https://togithub.com/canonical/craft-application/issues/320)).
- `snapcraft list-plugins` does not work in core24 project directories ([https://github.com/canonical/snapcraft/issues/4742](https://togithub.com/canonical/snapcraft/issues/4742))
- Snapcraft does not evaluate project variables added by extensions in core24 ([https://github.com/canonical/snapcraft/issues/4771](https://togithub.com/canonical/snapcraft/issues/4771))
- `CRAFT_ARCH_BUILD_FOR` and `CRAFT_ARCH_TRIPLET_BUILD_FOR` use the build on architecture ([https://github.com/canonical/snapcraft/issues/4770](https://togithub.com/canonical/snapcraft/issues/4770))
#### What's Changed
- tests: remove core24 snap workarounds by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4761](https://togithub.com/canonical/snapcraft/pull/4761)
- tests(spread): regression test for grammar and non-grammar lists by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4768](https://togithub.com/canonical/snapcraft/pull/4768)
**Full Changelog**: https://github.com/canonical/snapcraft/compare/8.2.1...8.2.2
### [`v8.2.1`](https://togithub.com/canonical/snapcraft/releases/tag/8.2.1)
[Compare Source](https://togithub.com/canonical/snapcraft/compare/8.2.0...8.2.1)
#### Core
The release of `8.2.1` fixes some regressions with `core24` snaps and some improvements to the remote-builder.
##### core24
- [Project variables](https://snapcraft.io/docs/parts-environment-variables) are now evaluated in a `snapcraft.yaml` and available as environment variables in the build environment.
- Root-level part keywords `build-packages` and `build-snaps` support [advanced grammar.](https://snapcraft.io/docs/snapcraft-advanced-grammar)
- Local key assets in `snap/keys` are used when installing [package repositories](https://snapcraft.io/docs/package-repositories).
#### Remote build
- `gpg` and `dirmngr` are installed at runtime for projects with package repositories. This allows remote builds of core24 snaps with package repositories.
#### Known issues
- Project variables `CRAFT_PROJECT_NAME` and `CRAFT_PROJECT_VERSION` are not evaluated ([https://github.com/canonical/craft-application/issues/320](https://togithub.com/canonical/craft-application/issues/320)).
- `snapcraft list-plugins` does not work in core24 project directories ([https://github.com/canonical/snapcraft/issues/4742](https://togithub.com/canonical/snapcraft/issues/4742))
- Advanced grammar cannot be used alongside other data types ([https://github.com/canonical/snapcraft/issues/4764](https://togithub.com/canonical/snapcraft/issues/4764))
- Snapcraft does not evaluate project variables added by extensions in core24 ([https://github.com/canonical/snapcraft/issues/4771](https://togithub.com/canonical/snapcraft/issues/4771))
- `CRAFT_ARCH_BUILD_FOR` and `CRAFT_ARCH_TRIPLET_BUILD_FOR` use the build on architecture ([https://github.com/canonical/snapcraft/issues/4770](https://togithub.com/canonical/snapcraft/issues/4770))
#### What's Changed
- tests: fix devel base snap test by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4755](https://togithub.com/canonical/snapcraft/pull/4755)
- fix: install gpg and dirmngr in core24 builds by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4754](https://togithub.com/canonical/snapcraft/pull/4754)
- fix: set project variables for core24 by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4757](https://togithub.com/canonical/snapcraft/pull/4757)
- tests: add tests for advanced grammar in root keywords by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4753](https://togithub.com/canonical/snapcraft/pull/4753)
- fix: use local keys for package-repos in core24 by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4758](https://togithub.com/canonical/snapcraft/pull/4758)
**Full Changelog**: https://github.com/canonical/snapcraft/compare/8.2.0...8.2.1
### [`v8.2.0`](https://togithub.com/canonical/snapcraft/releases/tag/8.2.0)
[Compare Source](https://togithub.com/canonical/snapcraft/compare/8.1.0...8.2.0)
#### Core
##### `core24`
`build-base: devel` is no longer required for `core24` snaps.
[Advanced grammar](https://snapcraft.io/docs/snapcraft-advanced-grammar) has been extended and can be used for all part keywords except plugin-specific keywords.
##### `core24` known issues
- Root level part keywords do not support grammar [LP#2061603](https://bugs.launchpad.net/snapcraft/+bug/2061603)
- Project variables (such as `$CRAFT_ARCH_BUILD_FOR`) are not evaluated in a snapcraft.yaml ([https://github.com/canonical/snapcraft/issues/4704](https://togithub.com/canonical/snapcraft/issues/4704))
- Snaps using the `gnome-extension` can only be built in environments where the `core24` snap is already installed because the `core24` snap is still in beta.
- Remote builds of snaps with PPAs may fail to build ([https://github.com/canonical/snapcraft/issues/4740](https://togithub.com/canonical/snapcraft/issues/4740))
#### Remote build
The new remote-builder introduced in snapcraft 8.0 has been upstreamed to [craft-application](https://togithub.com/canonical/craft-application) and improved.
##### Remote build changes
- Only one remote build is allowed per project. Previously, multiple builds could run for a project.
- `snapcraft remote-build --recover` does not accept a build-id
- `snapcraft remote-build` does not accept the deprecated `--build-on` parameter. Use `--build-for` instead.
- Launchpad credentials have moved from `$XDG_DATA_DIR/snapcraft/provider/launchpad/credentials` to `$XDG_DATA_DIR/snapcraft/launchpad-credentials`.
- Instead of falling back to the legacy remote-builder, snapcraft will fail if a project is not in the top level of a git repository or is shallowly clone.
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 [documentation](https://snapcraft.io/docs/remote-build).
#### What's Changed
- chore(deps): update dependency idna to v3.7 \[security] by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4726](https://togithub.com/canonical/snapcraft/pull/4726)
- feat(remote)!: use craft-application remote build for core22 by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4724](https://togithub.com/canonical/snapcraft/pull/4724)
- chore(deps): update dependency pytest-cov to v5 by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4730](https://togithub.com/canonical/snapcraft/pull/4730)
- chore(deps): update dependency craft-grammar to v1.2.0 by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4731](https://togithub.com/canonical/snapcraft/pull/4731)
- fix(providers): do not install snapd from edge by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4733](https://togithub.com/canonical/snapcraft/pull/4733)
- feat: drop `build-base: devel` requirement for core24 by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4734](https://togithub.com/canonical/snapcraft/pull/4734)
- tests: expand regex for `hello` package by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4739](https://togithub.com/canonical/snapcraft/pull/4739)
- chore(deps): update dependency craft-application to v2.5.0 by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4738](https://togithub.com/canonical/snapcraft/pull/4738)
- chore: mark gnome-extension experimental for core24 by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4736](https://togithub.com/canonical/snapcraft/pull/4736)
**Full Changelog**: https://github.com/canonical/snapcraft/compare/8.1.0...8.2.0
### [`v8.1.0`](https://togithub.com/canonical/snapcraft/releases/tag/8.1.0)
[Compare Source](https://togithub.com/canonical/snapcraft/compare/8.0.5...8.1.0)
#### New features
##### Core
##### Finalized support for core24
Snapcraft builds `core24` snaps via [craft-application](https://togithub.com/canonical/craft-application/). The integration of craft-application into Snapcraft is complete, which means the build behavior for `core24` snaps is finalized. See more details on deprications and changes in the [`core24` migration guide](https://forum.snapcraft.io/t/micro-howto-migrate-to-core24/39393).
##### Snap Components
Components are parts of a snap that can be built and uploaded in conjunction with a snap and later optionally installed beside it. Components are defined with a top-level `components` keyword in a `snapcraft.yaml`.
Snapcraft allows building and uploading components. Documentation and ecosystem-wide support (i.e. snapd and the Snap Store) are still in progress, so components are not ready for production use.
##### Remote build
The remote-builder supports user-defined Launchpad projects (including private projects) for `core24` snaps. This is configured via `snapcraft remote-build --project `. Support for other bases will be available in an upcoming release.
##### Plugins
##### Matter SDK
The Matter SDK plugin allows for creating [Matter](https://csa-iot.org/all-solutions/matter/) applications for `core22` snaps. See the [Matter on Ubuntu](https://canonical-matter.readthedocs-hosted.com/en/latest/) docs for information on Matter.
##### Maven
The [Maven](https://snapcraft.io/docs/maven-plugin) plugin can be used for `core22` snaps.
##### QMake
The [QMake](https://snapcraft.io/docs/qmake-plugin) plugin can be used for `core22` snaps.
##### Colcon
If a build-type is not provided (i.e. `colcon_cmake_args: ["-DCMAKE_BUILD_TYPE=Debug"]`), then the default build type will be `RELEASE`.
##### Extensions
##### KDE Neon 6
The `kde-neon-6` extension can be used for `core22` snaps that use Qt6 or the KDE Neon 6 framework.
Thanks to [@ScarlettGatelyMoore](https://togithub.com/ScarlettGatelyMoore) for KDE Neon and QMake support.
#### What's Changed
- build(deps): update dependencies by [@lengau](https://togithub.com/lengau) in [https://github.com/canonical/snapcraft/pull/4504](https://togithub.com/canonical/snapcraft/pull/4504)
- Colcon plugin: use release build by default by [@MirkoFerrati](https://togithub.com/MirkoFerrati) in [https://github.com/canonical/snapcraft/pull/4502](https://togithub.com/canonical/snapcraft/pull/4502)
- ci: pin pyright to 1.1.344 by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4512](https://togithub.com/canonical/snapcraft/pull/4512)
- chore(deps): bump version of Chisel by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4522](https://togithub.com/canonical/snapcraft/pull/4522)
- ci: update PR template to use tox commands by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4507](https://togithub.com/canonical/snapcraft/pull/4507)
- chore(deps): update github actions (major) by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4500](https://togithub.com/canonical/snapcraft/pull/4500)
- build(deps): bump jinja2 from 3.1.2 to 3.1.3 in /docs/.sphinx by [@dependabot](https://togithub.com/dependabot) in [https://github.com/canonical/snapcraft/pull/4518](https://togithub.com/canonical/snapcraft/pull/4518)
- build(deps): bump craft-providers to 1.21.0 by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4530](https://togithub.com/canonical/snapcraft/pull/4530)
- chore(deps): update dependency packaging to v23 by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4531](https://togithub.com/canonical/snapcraft/pull/4531)
- chore: 8.0.2 hotfixes by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4535](https://togithub.com/canonical/snapcraft/pull/4535)
- fix(lifecycle): return correct base when using devel for build-base by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4523](https://togithub.com/canonical/snapcraft/pull/4523)
- chore(deps): update black and pyright by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4550](https://togithub.com/canonical/snapcraft/pull/4550)
- build(deps): bump craft-providers to 1.22.0 by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4552](https://togithub.com/canonical/snapcraft/pull/4552)
- chore(deps): update dependency platformdirs to v3.11.0 by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4509](https://togithub.com/canonical/snapcraft/pull/4509)
- feat(craft-application): initial support by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4560](https://togithub.com/canonical/snapcraft/pull/4560)
- feat!: fail if we know the project is core24 by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4557](https://togithub.com/canonical/snapcraft/pull/4557)
- feat: implement core24 "pack" command by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4565](https://togithub.com/canonical/snapcraft/pull/4565)
- chore: merge 8.0.3 hotfix into main by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4574](https://togithub.com/canonical/snapcraft/pull/4574)
- ci: use GH/JIRA integration bot by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4577](https://togithub.com/canonical/snapcraft/pull/4577)
- feat(providers): use core24 buildd daily image for devel by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4532](https://togithub.com/canonical/snapcraft/pull/4532)
- test: fix spread multipass backend by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4571](https://togithub.com/canonical/snapcraft/pull/4571)
- extensions/desktop: don't preload bindtextdomain for wine snaps by [@mmtrt](https://togithub.com/mmtrt) in [https://github.com/canonical/snapcraft/pull/4501](https://togithub.com/canonical/snapcraft/pull/4501)
- build(deps): use craft-application from main branch by [@lengau](https://togithub.com/lengau) in [https://github.com/canonical/snapcraft/pull/4573](https://togithub.com/canonical/snapcraft/pull/4573)
- fix: do not propagate build-base to snap.yaml by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4580](https://togithub.com/canonical/snapcraft/pull/4580)
- fix(tests): upload a larger snap by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4583](https://togithub.com/canonical/snapcraft/pull/4583)
- chore: merge main into feature/craft-application by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4585](https://togithub.com/canonical/snapcraft/pull/4585)
- lifecycle commands by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4584](https://togithub.com/canonical/snapcraft/pull/4584)
- refactor: move core22 commands for versioned implementation by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4586](https://togithub.com/canonical/snapcraft/pull/4586)
- fix(application): attrs & tests for build planner by [@lengau](https://togithub.com/lengau) in [https://github.com/canonical/snapcraft/pull/4588](https://togithub.com/canonical/snapcraft/pull/4588)
- chore(deps): update dependency cryptography to v42 \[security] by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4564](https://togithub.com/canonical/snapcraft/pull/4564)
- chore(spread): add more 22.04 workers for the google backend by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4593](https://togithub.com/canonical/snapcraft/pull/4593)
- tests(spread): remove core24 ros2 extension linter tests by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4595](https://togithub.com/canonical/snapcraft/pull/4595)
- fix(lifecycle): install 'core24' snap by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4594](https://togithub.com/canonical/snapcraft/pull/4594)
- fix(tests): expect the proper libpng version in core24 linter test by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4597](https://togithub.com/canonical/snapcraft/pull/4597)
- KDE: new content pack update. by [@ScarlettGatelyMoore](https://togithub.com/ScarlettGatelyMoore) in [https://github.com/canonical/snapcraft/pull/4403](https://togithub.com/canonical/snapcraft/pull/4403)
- chore(deps): update dependency cryptography to v42.0.4 \[security] by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4598](https://togithub.com/canonical/snapcraft/pull/4598)
- fix(tests): core24 classic linter test expectations by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4600](https://togithub.com/canonical/snapcraft/pull/4600)
- build(lint): use ruff from snap by [@lengau](https://togithub.com/lengau) in [https://github.com/canonical/snapcraft/pull/4602](https://togithub.com/canonical/snapcraft/pull/4602)
- feat(lifecycle): add deprecated snap command by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4589](https://togithub.com/canonical/snapcraft/pull/4589)
- feat(app): support extensions in core24 by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4606](https://togithub.com/canonical/snapcraft/pull/4606)
- fix(application): support snap/craft environment variables by [@mattculler](https://togithub.com/mattculler) in [https://github.com/canonical/snapcraft/pull/4607](https://togithub.com/canonical/snapcraft/pull/4607)
- feat: use craft-application project variables by [@cmatsuoka](https://togithub.com/cmatsuoka) in [https://github.com/canonical/snapcraft/pull/4601](https://togithub.com/canonical/snapcraft/pull/4601)
- fix(package): use correct target-arch on snap by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4596](https://togithub.com/canonical/snapcraft/pull/4596)
- feat(craft-application): migrate version command by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4614](https://togithub.com/canonical/snapcraft/pull/4614)
- fix: alias project-type to type by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4620](https://togithub.com/canonical/snapcraft/pull/4620)
- feat(craft-application): support root packages for core24 by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4617](https://togithub.com/canonical/snapcraft/pull/4617)
- chore(spread): enable pkg-repo tests for core24 by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4621](https://togithub.com/canonical/snapcraft/pull/4621)
- build(deps): bump craft-providers to 1.23.0 by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4623](https://togithub.com/canonical/snapcraft/pull/4623)
- build(deps): bump craft-providers to 1.23.0 by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4625](https://togithub.com/canonical/snapcraft/pull/4625)
- fix: use VersionStr in model and add write test by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4626](https://togithub.com/canonical/snapcraft/pull/4626)
- feat: allow for overriding project asset handling by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4628](https://togithub.com/canonical/snapcraft/pull/4628)
- chore: merge 8.0.4 changes into main by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4631](https://togithub.com/canonical/snapcraft/pull/4631)
- chore: merge main into feature/craft-application by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4633](https://togithub.com/canonical/snapcraft/pull/4633)
- feat!: deprecate enable-manifest and manifest-image-information by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4618](https://togithub.com/canonical/snapcraft/pull/4618)
- feat(lifecycle): generate snap manifest by [@cmatsuoka](https://togithub.com/cmatsuoka) in [https://github.com/canonical/snapcraft/pull/4611](https://togithub.com/canonical/snapcraft/pull/4611)
- chore: spread cleanup by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4634](https://togithub.com/canonical/snapcraft/pull/4634)
- Spread restore no abort by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4637](https://togithub.com/canonical/snapcraft/pull/4637)
- tests: replace mock methods removed in Py3.12 by [@lengau](https://togithub.com/lengau) in [https://github.com/canonical/snapcraft/pull/4640](https://togithub.com/canonical/snapcraft/pull/4640)
- fix(application): use SNAPCRAFT_MANAGED_MODE everywhere by [@mattculler](https://togithub.com/mattculler) in [https://github.com/canonical/snapcraft/pull/4638](https://togithub.com/canonical/snapcraft/pull/4638)
- feat: enable patchelf for core24 by [@lengau](https://togithub.com/lengau) in [https://github.com/canonical/snapcraft/pull/4639](https://togithub.com/canonical/snapcraft/pull/4639)
- tests: make parametrized unit test order determinable by [@lengau](https://togithub.com/lengau) in [https://github.com/canonical/snapcraft/pull/4641](https://togithub.com/canonical/snapcraft/pull/4641)
- feat: setup_assets for core24 metadata by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4622](https://togithub.com/canonical/snapcraft/pull/4622)
- feat: adopt more fields from the appstream metadata file by [@soumyaDghosh](https://togithub.com/soumyaDghosh) in [https://github.com/canonical/snapcraft/pull/4613](https://togithub.com/canonical/snapcraft/pull/4613)
- feat(docs): pull in content from craft-parts by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4635](https://togithub.com/canonical/snapcraft/pull/4635)
- fix(application): fallback earlier for managed core20 by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4642](https://togithub.com/canonical/snapcraft/pull/4642)
- feat: add platforms and drop architectures for core24 by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4630](https://togithub.com/canonical/snapcraft/pull/4630)
- Plugins: Enable qmake for core22 by [@ScarlettGatelyMoore](https://togithub.com/ScarlettGatelyMoore) in [https://github.com/canonical/snapcraft/pull/4162](https://togithub.com/canonical/snapcraft/pull/4162)
- fix: update to craft-application latest by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4659](https://togithub.com/canonical/snapcraft/pull/4659)
- refactor(test): versioned remote-build tests by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4660](https://togithub.com/canonical/snapcraft/pull/4660)
- fix: use "devel" bases on build plan by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4663](https://togithub.com/canonical/snapcraft/pull/4663)
- feat(app): support parse-info by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4655](https://togithub.com/canonical/snapcraft/pull/4655)
- fix(test): use prime dir in some tests by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4661](https://togithub.com/canonical/snapcraft/pull/4661)
- fix(test): do not create 2 snapcraft.yaml and confuse location by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4662](https://togithub.com/canonical/snapcraft/pull/4662)
- fix(core24): use correct libc6 path by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4669](https://togithub.com/canonical/snapcraft/pull/4669)
- chore(spread): core22 provider setup cleanup by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4668](https://togithub.com/canonical/snapcraft/pull/4668)
- build(deps): bump craft-providers to 1.23.1 ([#4673](https://togithub.com/canonical/snapcraft/issues/4673)) by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4676](https://togithub.com/canonical/snapcraft/pull/4676)
- chore(spread): miscellaneous spread fixes for core24 by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4674](https://togithub.com/canonical/snapcraft/pull/4674)
- Enable Snapcraft plugins in craft-application codepath by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4672](https://togithub.com/canonical/snapcraft/pull/4672)
- chore: merge feature/components into feature/craft-application by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4654](https://togithub.com/canonical/snapcraft/pull/4654)
- feat(plugins): support core24 in the Python plugin by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4666](https://togithub.com/canonical/snapcraft/pull/4666)
- refactor(docs): use more docs from craft-parts by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4679](https://togithub.com/canonical/snapcraft/pull/4679)
- chore(deps): update dependency black to v24.3.0 \[security] by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4686](https://togithub.com/canonical/snapcraft/pull/4686)
- chore(spread): remove remove hook test for core24 by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4689](https://togithub.com/canonical/snapcraft/pull/4689)
- feat(core22): maven plugin by [@cmatsuoka](https://togithub.com/cmatsuoka) in [https://github.com/canonical/snapcraft/pull/4657](https://togithub.com/canonical/snapcraft/pull/4657)
- refactor(app): use more code from craft-app by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4682](https://togithub.com/canonical/snapcraft/pull/4682)
- feat(craft-application): support remote build by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4664](https://togithub.com/canonical/snapcraft/pull/4664)
- build(deps): update craft-application to 2.1.0 by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4691](https://togithub.com/canonical/snapcraft/pull/4691)
- feat(extensions): support core24 in the gnome extensions by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4690](https://togithub.com/canonical/snapcraft/pull/4690)
- feat: core24 using Craft Application and core22 components by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4693](https://togithub.com/canonical/snapcraft/pull/4693)
- chore(deps): update dependency pytest-mock to v3.14.0 by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4694](https://togithub.com/canonical/snapcraft/pull/4694)
- fix(log): map SNAPCRAFT_VERBOSITY_LEVEL to CRAFT by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4699](https://togithub.com/canonical/snapcraft/pull/4699)
- chore(deps): update bugfixes by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4695](https://togithub.com/canonical/snapcraft/pull/4695)
- docs(extensions): improve docstrings and comments by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4705](https://togithub.com/canonical/snapcraft/pull/4705)
- feat: partitions for core24 by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4700](https://togithub.com/canonical/snapcraft/pull/4700)
- refactor: migrate core22 store commands by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4707](https://togithub.com/canonical/snapcraft/pull/4707)
- feat: upload snaps with components by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4701](https://togithub.com/canonical/snapcraft/pull/4701)
- Multiple fixes by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4709](https://togithub.com/canonical/snapcraft/pull/4709)
- ci: adjust tags for spread runs by [@lengau](https://togithub.com/lengau) in [https://github.com/canonical/snapcraft/pull/4715](https://togithub.com/canonical/snapcraft/pull/4715)
- feat: add component metadata for hooks by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4703](https://togithub.com/canonical/snapcraft/pull/4703)
- feat(remote): get a user-provided Launchpad project by [@lengau](https://togithub.com/lengau) in [https://github.com/canonical/snapcraft/pull/4708](https://togithub.com/canonical/snapcraft/pull/4708)
- feat: package component hooks for core24 by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4717](https://togithub.com/canonical/snapcraft/pull/4717)
- chore(core24): update package for linter spread test by [@sergiusens](https://togithub.com/sergiusens) in [https://github.com/canonical/snapcraft/pull/4720](https://togithub.com/canonical/snapcraft/pull/4720)
- feat(plugins): add Matter plugin support by [@MonicaisHer](https://togithub.com/MonicaisHer) in [https://github.com/canonical/snapcraft/pull/4491](https://togithub.com/canonical/snapcraft/pull/4491)
- chore(deps): update development dependencies (non-major) by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4696](https://togithub.com/canonical/snapcraft/pull/4696)
- New kde-neon extension for Qt6 / KF6 by [@ScarlettGatelyMoore](https://togithub.com/ScarlettGatelyMoore) in [https://github.com/canonical/snapcraft/pull/4698](https://togithub.com/canonical/snapcraft/pull/4698)
- feat: package component hooks for core22 by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4722](https://togithub.com/canonical/snapcraft/pull/4722)
#### New Contributors
- [@MirkoFerrati](https://togithub.com/MirkoFerrati) made their first contribution in [https://github.com/canonical/snapcraft/pull/4502](https://togithub.com/canonical/snapcraft/pull/4502)
- [@mattculler](https://togithub.com/mattculler) made their first contribution in [https://github.com/canonical/snapcraft/pull/4607](https://togithub.com/canonical/snapcraft/pull/4607)
- [@MonicaisHer](https://togithub.com/MonicaisHer) made their first contribution in [https://github.com/canonical/snapcraft/pull/4491](https://togithub.com/canonical/snapcraft/pull/4491)
**Full Changelog**: https://github.com/canonical/snapcraft/compare/8.0.5...8.1.0
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
8.0.5
->8.2.2
Release Notes
canonical/snapcraft (canonical/snapcraft)
### [`v8.2.2`](https://togithub.com/canonical/snapcraft/releases/tag/8.2.2) [Compare Source](https://togithub.com/canonical/snapcraft/compare/8.2.1...8.2.2) #### Core ##### core24 Snapcraft 8.2.2 fixes two regressions with advanced grammar in core24 snaps: - Advanced grammar could not be used in root-level part keywords `build-packages` and `build-snaps` ([LP#2061603](https://bugs.launchpad.net/snapcraft/+bug/2061603)) - Advanced grammar could not be combined with other data ([https://github.com/canonical/snapcraft/issues/4764](https://togithub.com/canonical/snapcraft/issues/4764)) #### Known issues - Project variables `CRAFT_PROJECT_NAME` and `CRAFT_PROJECT_VERSION` are not evaluated in core24 ([https://github.com/canonical/craft-application/issues/320](https://togithub.com/canonical/craft-application/issues/320)). - `snapcraft list-plugins` does not work in core24 project directories ([https://github.com/canonical/snapcraft/issues/4742](https://togithub.com/canonical/snapcraft/issues/4742)) - Snapcraft does not evaluate project variables added by extensions in core24 ([https://github.com/canonical/snapcraft/issues/4771](https://togithub.com/canonical/snapcraft/issues/4771)) - `CRAFT_ARCH_BUILD_FOR` and `CRAFT_ARCH_TRIPLET_BUILD_FOR` use the build on architecture ([https://github.com/canonical/snapcraft/issues/4770](https://togithub.com/canonical/snapcraft/issues/4770)) #### What's Changed - tests: remove core24 snap workarounds by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4761](https://togithub.com/canonical/snapcraft/pull/4761) - tests(spread): regression test for grammar and non-grammar lists by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4768](https://togithub.com/canonical/snapcraft/pull/4768) **Full Changelog**: https://github.com/canonical/snapcraft/compare/8.2.1...8.2.2 ### [`v8.2.1`](https://togithub.com/canonical/snapcraft/releases/tag/8.2.1) [Compare Source](https://togithub.com/canonical/snapcraft/compare/8.2.0...8.2.1) #### Core The release of `8.2.1` fixes some regressions with `core24` snaps and some improvements to the remote-builder. ##### core24 - [Project variables](https://snapcraft.io/docs/parts-environment-variables) are now evaluated in a `snapcraft.yaml` and available as environment variables in the build environment. - Root-level part keywords `build-packages` and `build-snaps` support [advanced grammar.](https://snapcraft.io/docs/snapcraft-advanced-grammar) - Local key assets in `snap/keys` are used when installing [package repositories](https://snapcraft.io/docs/package-repositories). #### Remote build - `gpg` and `dirmngr` are installed at runtime for projects with package repositories. This allows remote builds of core24 snaps with package repositories. #### Known issues - Project variables `CRAFT_PROJECT_NAME` and `CRAFT_PROJECT_VERSION` are not evaluated ([https://github.com/canonical/craft-application/issues/320](https://togithub.com/canonical/craft-application/issues/320)). - `snapcraft list-plugins` does not work in core24 project directories ([https://github.com/canonical/snapcraft/issues/4742](https://togithub.com/canonical/snapcraft/issues/4742)) - Advanced grammar cannot be used alongside other data types ([https://github.com/canonical/snapcraft/issues/4764](https://togithub.com/canonical/snapcraft/issues/4764)) - Snapcraft does not evaluate project variables added by extensions in core24 ([https://github.com/canonical/snapcraft/issues/4771](https://togithub.com/canonical/snapcraft/issues/4771)) - `CRAFT_ARCH_BUILD_FOR` and `CRAFT_ARCH_TRIPLET_BUILD_FOR` use the build on architecture ([https://github.com/canonical/snapcraft/issues/4770](https://togithub.com/canonical/snapcraft/issues/4770)) #### What's Changed - tests: fix devel base snap test by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4755](https://togithub.com/canonical/snapcraft/pull/4755) - fix: install gpg and dirmngr in core24 builds by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4754](https://togithub.com/canonical/snapcraft/pull/4754) - fix: set project variables for core24 by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4757](https://togithub.com/canonical/snapcraft/pull/4757) - tests: add tests for advanced grammar in root keywords by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4753](https://togithub.com/canonical/snapcraft/pull/4753) - fix: use local keys for package-repos in core24 by [@tigarmo](https://togithub.com/tigarmo) in [https://github.com/canonical/snapcraft/pull/4758](https://togithub.com/canonical/snapcraft/pull/4758) **Full Changelog**: https://github.com/canonical/snapcraft/compare/8.2.0...8.2.1 ### [`v8.2.0`](https://togithub.com/canonical/snapcraft/releases/tag/8.2.0) [Compare Source](https://togithub.com/canonical/snapcraft/compare/8.1.0...8.2.0) #### Core ##### `core24` `build-base: devel` is no longer required for `core24` snaps. [Advanced grammar](https://snapcraft.io/docs/snapcraft-advanced-grammar) has been extended and can be used for all part keywords except plugin-specific keywords. ##### `core24` known issues - Root level part keywords do not support grammar [LP#2061603](https://bugs.launchpad.net/snapcraft/+bug/2061603) - Project variables (such as `$CRAFT_ARCH_BUILD_FOR`) are not evaluated in a snapcraft.yaml ([https://github.com/canonical/snapcraft/issues/4704](https://togithub.com/canonical/snapcraft/issues/4704)) - Snaps using the `gnome-extension` can only be built in environments where the `core24` snap is already installed because the `core24` snap is still in beta. - Remote builds of snaps with PPAs may fail to build ([https://github.com/canonical/snapcraft/issues/4740](https://togithub.com/canonical/snapcraft/issues/4740)) #### Remote build The new remote-builder introduced in snapcraft 8.0 has been upstreamed to [craft-application](https://togithub.com/canonical/craft-application) and improved. ##### Remote build changes - Only one remote build is allowed per project. Previously, multiple builds could run for a project. - `snapcraft remote-build --recover` does not accept a build-id - `snapcraft remote-build` does not accept the deprecated `--build-on` parameter. Use `--build-for` instead. - Launchpad credentials have moved from `$XDG_DATA_DIR/snapcraft/provider/launchpad/credentials` to `$XDG_DATA_DIR/snapcraft/launchpad-credentials`. - Instead of falling back to the legacy remote-builder, snapcraft will fail if a project is not in the top level of a git repository or is shallowly clone. 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 [documentation](https://snapcraft.io/docs/remote-build). #### What's Changed - chore(deps): update dependency idna to v3.7 \[security] by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4726](https://togithub.com/canonical/snapcraft/pull/4726) - feat(remote)!: use craft-application remote build for core22 by [@syu-w](https://togithub.com/syu-w) in [https://github.com/canonical/snapcraft/pull/4724](https://togithub.com/canonical/snapcraft/pull/4724) - chore(deps): update dependency pytest-cov to v5 by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4730](https://togithub.com/canonical/snapcraft/pull/4730) - chore(deps): update dependency craft-grammar to v1.2.0 by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4731](https://togithub.com/canonical/snapcraft/pull/4731) - fix(providers): do not install snapd from edge by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4733](https://togithub.com/canonical/snapcraft/pull/4733) - feat: drop `build-base: devel` requirement for core24 by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4734](https://togithub.com/canonical/snapcraft/pull/4734) - tests: expand regex for `hello` package by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4739](https://togithub.com/canonical/snapcraft/pull/4739) - chore(deps): update dependency craft-application to v2.5.0 by [@renovate](https://togithub.com/renovate) in [https://github.com/canonical/snapcraft/pull/4738](https://togithub.com/canonical/snapcraft/pull/4738) - chore: mark gnome-extension experimental for core24 by [@mr-cal](https://togithub.com/mr-cal) in [https://github.com/canonical/snapcraft/pull/4736](https://togithub.com/canonical/snapcraft/pull/4736) **Full Changelog**: https://github.com/canonical/snapcraft/compare/8.1.0...8.2.0 ### [`v8.1.0`](https://togithub.com/canonical/snapcraft/releases/tag/8.1.0) [Compare Source](https://togithub.com/canonical/snapcraft/compare/8.0.5...8.1.0) #### New features ##### Core ##### Finalized support for core24 Snapcraft builds `core24` snaps via [craft-application](https://togithub.com/canonical/craft-application/). The integration of craft-application into Snapcraft is complete, which means the build behavior for `core24` snaps is finalized. See more details on deprications and changes in the [`core24` migration guide](https://forum.snapcraft.io/t/micro-howto-migrate-to-core24/39393). ##### Snap Components Components are parts of a snap that can be built and uploaded in conjunction with a snap and later optionally installed beside it. Components are defined with a top-level `components` keyword in a `snapcraft.yaml`. Snapcraft allows building and uploading components. Documentation and ecosystem-wide support (i.e. snapd and the Snap Store) are still in progress, so components are not ready for production use. ##### Remote build The remote-builder supports user-defined Launchpad projects (including private projects) for `core24` snaps. This is configured via `snapcraft remote-build --projectConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.