Skip to content

Snapcraft 2.33 is here

Compare
Choose a tag to compare
@sergiusens sergiusens released this 07 Aug 23:20
· 3545 commits to main since this release
2.33

Hello snapcrafters!

We are pleased to announce the release of snapcraft 2.33:

  • Available on all supported Ubuntu releases (xenial, zesty) and the development release (zesty).
  • brew installabled on OS X by running brew install snapcraft (store interaction and cleanbuild are supported).
  • pip installable from PyPI (with caveats when setting up apt bindings) by running pip install snapcraft.
  • View the full list of merged PRs.
  • Specific bug fixes can be seen on the Launchpad milestone.

Contributions

This release saw some excellent contributions from outside the snapcraft core team, and we want to give a shout out to those folks. A team thank you to:

New in this release

Core

Containers

The experience of using persistent build containers has become much more pleasant with this release as snapcraft now takes care of:

  • containers that have no use any more such as when a project is cleaned.
  • file handling an exposing to and fro the container does not leak container specific assets onto the host.
  • use of --debug and cleanbuild now properly enters into a shell inside the container for inspection.
  • the clean command now properly handles corner case scenarios that weren't handled before.
  • id mappings for the namespace are now correctly set depending on the uid of the user calling snapcraft

Yaml Merge tags

Yaml merge tags are now supported in snapcraft.yaml, allowing for advanced use of yaml in snapcraft.yaml if needed.

Bash completion

Support for bash completion in snapcraft has arrived, it is just a matter of defining completer for your app entry under apps with a script which would deal with such completions. As an illustrative example:

apps:
    my-application:
        command: runme
        completer: completion.sh

Where completion.sh would be found under the root of prime.
For all this to work a recent version of snapd is required like 2.27.

reload-command for daemons

App entries under apps in snapcraft.yaml now support reload-command as an entry which defines how to deal with configuration reloads for daemons.

Plugins

kernel

Handling of default make targets depending on the architecture is now supported for all architectures.

nodejs

Support has been added for newer releases for nodejs/npm for special cases where in tree builds are done and npm generates a symlink farm. This should now just work with no hassle.

Cross compilation

Cross compilation support is now enabled for:

  • autotools
  • waf

Final notes

To get the source for this release, check it out on github.

A great place to collaborate and discuss features, bugs and ideas on snapcraft are the forums and the snapcraft channel on Rocket Chat. Please also feel free to file a bug.

Happy snapcrafting!
-- Sergio and the team