Hello snapcrafters! We are pleased to announce the release of version `2.26` of snapcraft has been released: https://launchpad.net/snapcraft/+milestone/2.26
This release is now available on xenial-updates, yakkety-updates and zesty. What follows are the full release notes (the prettier version can be read at https://github.com/snapcore/ <https://github.com/snapcore/snapcraft/releases/tag/2.25> snapcraft/releases/tag/2.26 <https://github.com/snapcore/snapcraft/releases/tag/2.26>) # Contributions This release has seen some contributions from outside of the snapcraft core team, so we want to give a shout out to these folks, here's a team thank you for: - Björn Tillenius - Marco Trevisan - Matthew Aguirre - Olivier Tilloy - Shawn Wang # New in this release ## Snap directory now in place All the snapcraft specific asset handling has been moved to the `snap` directory as the preferred location for the following: - `snapcraft.yaml` - `setup/gui` - `parts/plugins` This adds up to the already existing location for `hooks` introduced in 2.25. On `snapcraft init`, snapcraft will now create a `snap/snapcraft.yaml` file. Keep in mind that the existing `snapcraft.yaml` and `.snapcraft.yaml` are still valid and *not* deprecated. However, use of `parts/plugins` will print a deprecation message with a link to https://snapcraft.io/docs/deprecation-notices/dn2 and use of `setup/gui` will behave in a similar way but linking to https://snapcraft.io/docs/deprecation-notices/dn3. ## stage packages The experience for using multi-architecture package entries in `stage-packages` has been refined. This should provide a better experience for when someone wants to; to illustrate image that on an `arm64` you would want to include an `armhf` package, e.g.; ```yaml parts: packages: plugin: nil stage-packages: - libfoo:armhf ``` ## Desktop file support enhancements Snapcraft 2.25 introduced support for `desktop` file entries in as part of an app entry in `apps`. There have been improvements to this functionality for when the app entry in `apps` matches the snap `name` as well as polishing in the assembly of the resutling snap. ## godeps plugin The `godeps` plugin until this release fetched all the dependencies defined in `dependencies.tsv` or that defined in the part by the `godeps-file` entry and proceeded to build all `package main` sources found in the tree. This can now be limited to only build certain packages by use of the `go-packages` entry. As an example let's use `juju`. It currently as at the time of this writing: - `github.com/juju/juju/cmd/juju` - `github.com/juju/juju/cmd/jujud` - `github.com/juju/juju/cmd/plugins/juju-metadata` - `github.com/juju/juju/cmd/plugins/juju-upgrade-mongo` Without the `go-packages` entry you would end up with 4 binaries in your snap `juju`. `jujud`. `juju-metadata` and `juju-upgrade-mongo`. If for example you wanted to only build `juju` something like this would do the trick: ```yaml parts: juju: https://github.com/juju/juju go-importpath: github.com/juju/juju go-packages: - github.com/juju/juju/cmd/juju ``` ## catkin plugin The `catkin` plugin has been optimized under the hood to work better with the compiler meant to be used with the chosen ROS release. ## gradle plugin The `gradle` plugin has been enhanced to also work with `gradle` transparently when `gradlew` is not provided with the `sources` of that part. ## python plugin The `python` plugin will now do the right thing when setting up a `requirements` entry and having an `install_requires` entry in `setup.py`. ## General polishing Some nice polishing that is part of ongoing work is showing up in this release: - schema errors related to text length limits now display an error a human can parse. - incorrect spacing issues have been fixed in some prompts. - some projects that are part of the tour had missing `build-packages added to them. - colors have been fixed for failed logins to the store. ## Others For the full list of things available on 2.26 feel free to check https://launchpad.net/snapcraft/+milestone/2.26 # Final Notes To get the source for this release check it out at https://github.com/snapcore/snapcraft/releases/tag/2.26 A great place to collaborate and discuss features, bugs and ideas on snapcraft is [email protected] mailing list or on the snapcraft channel on Rocket Chat https://rocket.ubuntu.com/channel/snapcraft To file bugs, please go to https://bugs.launchpad.net/snapcraft/+filebug. Happy snapcrafting! -- Sergio and the team
-- Snapcraft mailing list [email protected] Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/snapcraft
