Call for testing: snapcraft 2.43.1

Hello Snapcrafters! The Snapcraft team is pleased to announce that version 2.43.1 is out.

This is a minor point release to fix some outstanding issues.

Availability

The installation methods below are available for testing, please move back to your regular track/offering when testing is done.

snap

The snap is available in the candidate channel:

$ sudo snap install --candidate --classic snapcraft

Of, if you already have it installed:

$ sudo snap refresh --candidate snapcraft

deb

The deb is in the proposed pocket of xenial and bionic, tracked by the SRU bug LP: #1789766. More information on testing the SRU is available at https://wiki.ubuntu.com/Testing/EnableProposed.

If you find any issues on this front, a comment on the mentioned bug would be the mostly appreciated.

docker

All risk levels of the snap are available as tagged Docker images, so check out the candidate tag:

$ docker pull snapcore/snapcraft:candidate

If however you rely on the docker image built from the deb, following the latest tag, then:

$ docker pull snapcore/snapcraft:latest-proposed

homebrew

If you are a Mac OS X user and happen to use homebrew you can try out cleanbuild and store operaions using snapcraft by installing from the tap:

$ brew tap sergiusens/snapcraft
$ brew install sergiusens/snapcraft/snapcraft

If you had snapcraft previously installed from homebrew core, you might need to remove it first.

New in this release

The final release notes can be found by going to https://github.com/snapcore/snapcraft/releases/tag/2.43.1

Core

Extensions

What was previously known as templates is now called extensions and the architecture on which this builds on is now pure python code to allow for future growth and decision making.

The rename takes place to convey that this functionality only extends an existing snapcraft.yaml and does not take part in modifying things that are only in place.

Containers

Build environments will soon be provided by multipass, guaranteeing more consistent results when builds are run from different machines. LXD containers (snapcraft cleanbuild today) will still be supported for existing projects.

In this release we catch up with snapd changes to continue offering a working snapcraft cleanbuild command.

Given the opportunity of modifying this code base, the logic to wait for cloud init has been improved.

Full list of changes

The issues and features worked on for 2.43.1 can be seen on the 2.43.1 launchpad milestone which are reflected in the following change list:

  • lxd: support new style snap injection (#2222)
  • snap: prepare override scripts to allow rebuilding (#2223)
  • lxd: wait for cloud-init (#2227)
  • storeapi: handle releasing to a curly braced branch (#2228)
  • snap: use set-version and set-grade (#2230)
  • lxd: proper filename set when using architectures (#2232)
  • tests: cover manifest generation with review-tools (#2235)
  • reporting: record the released version for errors (#2238)
  • file_utils: find tool when using docker and deb (#2240)
  • elf: better messaging on glibc ABI incompatibilities (#2241)
  • spread: stop running catkin tests on 18.10 (#2221)
  • snapcraftctl: run in isolation mode (#2224)
  • templates: reimplement templates as python classes (#2226)
  • templates: rename to extensions (#2233)
  • cli: add list-extensions command (#2237)
  • extensions: fix install path (#2236)
  • reporting: improve messaging on errors (#2242)
1 Like

Tested this with our snaps, and they all still build fine with it.

1 Like

Seems to work fine for multipass, mir-kiosk and subsurface (base: core18).

1 Like

I tested this with some random GNOME desktop snaps, seems fine.

1 Like

Updates:

  • The stable channel for snapcraft now has 2.43.1 (this will ubblock anyone relying on cleanbuild)
  • The docker images snapcore/snapcraft:stable and snapcore/snapcraft:latest now have 2.43.1 (unblocking anyone using docker).
  • brew install of 2.43.1 should be possible as soon as upstream accepts the swap.
  • the deb in -proposed will be held and changes will only show up on 2.44 when using debs (preventing the cache issue seen).
1 Like