Prettier version of the release notes can be found on 
https://github.com/snapcore/snapcraft/releases/tag/2.28

--

Hello snapcrafters!

We are pleased to announce the release snapcraft `2.28`:
https://launchpad.net/snapcraft/+milestone/2.28

# 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:
- Colin Watson
- Jonathan Cave
- Michael Hudson-Doyle
- Olivier Tilloy
- Paolo Pisati
- pachulo

# New in this release

## Core

### snapcraft snap

snapcraft can now properly build as a snap and does the right thing. Starting 
2.28 snapcraft should eventually be able to be installed from the store, 
currently in the `edge` channel.

### repo

The repo module in snapcraft, which deals with `stage-packages` entries and 
host distro specific packaging has been moved to a more modular python packge 
inside snapcraft allowing contributors to add support for other mechanisms such 
as support for rpm.

### cleanbuild

The logic for cleanbuild has been reworked to properly detect when lxd (the lxc 
client actually) is installed as a snap or manually compiled. This change also 
comes into play for cross distro snapcraft support.

### classic confinement

With this release it should be now possible to use launchpad builders to build 
for other architectures than `amd64` as the detection logic for the dynamic 
linker in core has been fixed.

### sources

Sources, thanks to an external contributor, can now make use of a new entry, 
`source-checksum` which can be added to sources that can be hashed, the format 
is the following: `source-checksum: <algorithm>/<digest>`. These are the 
supported algorithms:

- `md5`
- `sha1`
- `sha224`
- `sha256`
- `sha384`
- `sha3_256`
- `sha3_384` (recommended)
- `sha3_512`

## Plugins

### python

Projects that use `pbr`, mostly openstack, now correctly setup their 
`console_scripts` defined in `entry_points` when using `setup.cfg`.
When building with python provided as a part, headers are now correctly setup 
to do the right thing for python packages that need to build code requiring 
these headers.

### kernel

The `kernel` and `kbuild` plugins have received some needed attention for this 
release providing for better out of the box kernel builds.

The demos have been setup to now build proper bootable kernels with todays 
Ubuntu Core module dependency.

The plugin itself:

- The plugin itself has added better support to the logic that adds and traces 
module dependencies when needing them added to initrd.
- For the case of architectures that use dtbs, if no dtb is specified, all dtbs 
are installed to make sure the system could boot by default.
- The kernel target, if not provided is now decided by the plugin depending on 
the build architecture.
- When building, custom `MAKEFLAGS` no longer affect the build.

And to add to that, there is now a test plan for the kernel plugin that tracks 
the supported kernels.

### catkin

The plugin has been expanded to support underlays, the benefit here is that it 
is now easy to build ROS projects that make use of the `content` interface. 
Check out the [demo 
code](https://github.com/snapcore/snapcraft/tree/master/demos/shared-ros).

## Store integration

Delta uploads are now enabled for every `snapcraft push` done, a welcome 
bandwith saving addition.

Every store request now sends a proper User Agent string so the store can 
behave accordingly to the version of snapcraft in use and properly determine 
when deprecated APIs can go out the door.

The `history` command has been deprecated in favor of `list-revisions` with an 
alias of `revisions`. An explanation of the reasoning can be read on the 
deprecation notice [DN4](http://snapcraft.io/docs/deprecation-notices/dn4)

The `status`, `close` and `list-revisions` commands have been updated to show 
track information when used.
## Others

For the full list of things available on 2.28 feel free to check 
https://launchpad.net/snapcraft/+milestone/2.28

# Final Notes

To get the source for this release check it out at 
https://github.com/snapcore/snapcraft/releases/tag/2.28

A great place to collaborate and discuss features, bugs and ideas on snapcraft 
is snapcraft@lists.snapcraft.io 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


-- 
Sent using Dekko from my Ubuntu device

-- 
Snapcraft mailing list
Snapcraft@lists.snapcraft.io
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/snapcraft

Reply via email to