github canonical/snapcraft 3.8
Snapcraft 3.8

latest releases: 8.4.1, 8.3.4, 8.4.0...
5 years ago

Core

Windows installer

Support for a Windows installer has been fully fleshed out and ready to be delivered, this means that Snapcraft will soon be able to run natively from Windows.

Improved build-base support

Support has been added to be able to use the build-bases keyword together with the following snap types:

  • kernel
  • snapd

Extensions

GNOME 3.28

An extension supporting GNOME 3.28 is part of this release, for discovery run

snapcraft list-extensions

Read about what it does by running

snapcraft extension gnome-3-28

Add it to an existing snapcraft.yaml by adding gnome-3-28 to the apps entry that requires it
and to see how it extends the snapcraft.yaml, at the root of the project, run

snapcraft expand-extensions

Plugins

colcon

New syntax is available to ignore packages:

- colcon-packages-ignore:
  (list of strings)
  List of colcon packages to ignore. If not specified or set to an empty
  list ([]), no packages will be ignored.

And a fix to enforce parallel building hints from snapcraft is now in place.

catkin

In contrast with colcon, a fix to enforce parallel building hints from snapcraft is also now in place.

rust

Support for properly building on s390x (natively) has been added.

--
The full list of features and issues worked on are listed below

Chris Patterson

  - elf: handle invalid elf files
  - cli: handle exception when cleaning a part with a fresh project
  - spread: fix unbound variable error
  - docs: quick init for lxd in HACKING.md
  - windows: drop cx_Freeze support in setup.py
  - cli: use absolute import paths instead of relative imports
  - requirements: update to python 3.7 for PyYaml wheel
  - requirements: uprev all OS to pexpect 4.7.0
  - requirements: add pyinstaller 3.5 for win32
  - windows: add snapcraft.ico icon
  - windows: add pyinstaller spec file to generate frozen snapcraft.exe
  - dirs: find Windows data directory for currently-known scenarios
  - lxd: conditionally import pylxd based on OS
  - windows: add inno-installer script
  - windows: add powershell script to generate self-signed certificate
  - tests: fix snapcraft command for win32 virtual env
  - appveyor: build Windows inno-installer
  - windows: add MSIX/AppX installer
  - dirs: raise SnapcraftDataDirectoryMissingError() if paths not set
  - multipass: update ProverNotFound url to https://multipass.run
  - indicators: windows fix for is_dumb_terminal
  - multipass: add installation support for windows
  - travis: use apt addon to prevent apt update issues in CLA-check
  - multipass: fix setup exception when multipass is not found in PATH
  - dirs: check for existence of required data directories

Sergio Schvezov

  - test: autopkgtest beta
  - debian: minimal deb package for autopkgtest
  - extensions: new gnome extension (#2655)
  - deltas: code cleanup
  - tests: move meta testing to its own package
  - yaml utils: move OctInt from meta
  - spread tests: minor performance improvements
  - meta: move _errors to errors with related error classes
  - meta: decouple DesktopFile logic
  - schema: schema: build-base support for the snapd type
  - rust plugin: support for s390x
  - schema: build-base support for the kernel type
  - spread tests: update gnome extension tests
  - extensions: rename extension classes to known names
  - extensions: create the gnome-platform directory
  - extensions: improve docsting (used in the cli)
  - spread tests: fine tune arch support for autopkgtests

Anatoli Babenia

  - lifecycle: add support for building inside podman containers (#2659)
  - docker: remove snapcraft-wrapper

Jeremie Deray

  - catkin plugin: forward parallel build count (#2669)
  - colcon plugin: forward parallel build count (#2670)

Kyle Fazzari

  - spread tests: install package marker into ament index
  - colcon plugin: add ability to ignore packages (#2687)

Stefano Rivera

  - repo: properly handle install query for unknown apt packages (#2692)

Don't miss a new snapcraft release

NewReleases is sending notifications on new releases.