Skip to content

Releases: canonical/snapcraft

8.2.2

30 Apr 16:34
8.2.2
Compare
Choose a tag to compare

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)
  • Advanced grammar could not be combined with other data (#4764)

Known issues

  • Project variables CRAFT_PROJECT_NAME and CRAFT_PROJECT_VERSION are not evaluated in core24 (canonical/craft-application#320).
  • snapcraft list-plugins does not work in core24 project directories (#4742)
  • Snapcraft does not evaluate project variables added by extensions in core24 (#4771)
  • CRAFT_ARCH_BUILD_FOR and CRAFT_ARCH_TRIPLET_BUILD_FOR use the build on architecture (#4770)

What's Changed

  • tests: remove core24 snap workarounds by @mr-cal in #4761
  • tests(spread): regression test for grammar and non-grammar lists by @mr-cal in #4768

Full Changelog: 8.2.1...8.2.2

8.2.1

25 Apr 13:28
8.2.1
Compare
Choose a tag to compare

Core

The release of 8.2.1 fixes some regressions with core24 snaps and some improvements to the remote-builder.

core24

  • Project 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.
  • Local key assets in snap/keys are used when installing 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 (canonical/craft-application#320).
  • snapcraft list-plugins does not work in core24 project directories (#4742)
  • Advanced grammar cannot be used alongside other data types (#4764)
  • Snapcraft does not evaluate project variables added by extensions in core24 (#4771)
  • CRAFT_ARCH_BUILD_FOR and CRAFT_ARCH_TRIPLET_BUILD_FOR use the build on architecture (#4770)

What's Changed

  • tests: fix devel base snap test by @mr-cal in #4755
  • fix: install gpg and dirmngr in core24 builds by @tigarmo in #4754
  • fix: set project variables for core24 by @mr-cal in #4757
  • tests: add tests for advanced grammar in root keywords by @mr-cal in #4753
  • fix: use local keys for package-repos in core24 by @tigarmo in #4758

Full Changelog: 8.2.0...8.2.1

8.2.0

17 Apr 12:11
8.2.0
9ba9615
Compare
Choose a tag to compare

Core

core24

build-base: devel is no longer required for core24 snaps.

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
  • Project variables (such as $CRAFT_ARCH_BUILD_FOR) are not evaluated in a snapcraft.yaml (#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 (#4740)

Remote build

The new remote-builder introduced in snapcraft 8.0 has been upstreamed to 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.

What's Changed

  • chore(deps): update dependency idna to v3.7 [security] by @renovate in #4726
  • feat(remote)!: use craft-application remote build for core22 by @syu-w in #4724
  • chore(deps): update dependency pytest-cov to v5 by @renovate in #4730
  • chore(deps): update dependency craft-grammar to v1.2.0 by @renovate in #4731
  • fix(providers): do not install snapd from edge by @mr-cal in #4733
  • feat: drop build-base: devel requirement for core24 by @mr-cal in #4734
  • tests: expand regex for hello package by @mr-cal in #4739
  • chore(deps): update dependency craft-application to v2.5.0 by @renovate in #4738
  • chore: mark gnome-extension experimental for core24 by @mr-cal in #4736

Full Changelog: 8.1.0...8.2.0

8.1.0

11 Apr 00:18
8.1.0
9a5dbfa
Compare
Choose a tag to compare

New features

Core

Finalized support for core24

Snapcraft builds core24 snaps via 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.

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 <project-name>. Support for other bases will be available in an upcoming release.

Plugins

Matter SDK

The Matter SDK plugin allows for creating Matter applications for core22 snaps. See the Matter on Ubuntu docs for information on Matter.

Maven

The Maven plugin can be used for core22 snaps.

QMake

The QMake 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 for KDE Neon and QMake support.

What's Changed

Read more

8.0.5

18 Mar 16:17
8.0.5
39a9c04
Compare
Choose a tag to compare

What's Changed

Full Changelog: 8.0.4...8.0.5

7.5.5

18 Mar 16:16
7.5.5
8c2c801
Compare
Choose a tag to compare

What's Changed

Full Changelog: 8.0.4...7.5.5

8.0.4

04 Mar 15:21
8.0.4
8ce8e2e
Compare
Choose a tag to compare

What's Changed

  • fix(project): fix core24/devel validation by @tigarmo in #4608
  • build(deps): bump craft-providers to 1.23.0 by @mr-cal in #4624
  • fix(extensions): use more specific naming for ROS plugs by @artivis in #4619

Full Changelog: 8.0.3...8.0.4

8.0.3

09 Feb 15:08
8.0.3
d57afcd
Compare
Choose a tag to compare

What's Changed

  • style(remote): reword git error messages by @mr-cal in #4536
  • fix: warning unsafe override-prime by @syu-w in #4553
  • chore(deps): bump craft-parts to 1.26.2 by @cmatsuoka in #4572
  • build(deps): bump craft-providers to 1.22.0 by @mr-cal in #4551
  • fix(lifecycle): return correct base when using devel for build-base by @syu-w in #4523
  • fix(remote): parse comma-separated architectures by @mr-cal in #4543
  • fix: warn for override-prime and patchelf by @syu-w in #4553

Full Changelog: 8.0.2...8.0.3

8.0.2

23 Jan 12:56
8.0.2
ef10848
Compare
Choose a tag to compare

What's Changed

Full Changelog: 8.0.1...8.0.2

8.0.1

03 Jan 11:17
8.0.1
1e28514
Compare
Choose a tag to compare

What's Changed

Fixes

  • fix(remote): return error when remote build failed by @syu-w in #4480
  • fix(remote): use git for push to remote system by @syu-w in #4482
  • fix(remote): fallback to legacy snapcraft if under shallow git clone by @syu-w in #4498

Chore

New Contributors

Full Changelog: 8.0.0...8.0.1