Skip to content

Commit

Permalink
docs(release-notes): add 8.7.0 release notes
Browse files Browse the repository at this point in the history
Signed-off-by: Callahan Kovacs <[email protected]>
  • Loading branch information
mr-cal committed Feb 14, 2025
1 parent d8b1da1 commit 48ae4d8
Show file tree
Hide file tree
Showing 4 changed files with 178 additions and 29 deletions.
1 change: 1 addition & 0 deletions docs/howto/set-up-snapcraft.rst
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,7 @@ See `How to install LXD
<https://documentation.ubuntu.com/lxd/en/latest/installing/#installing>`_ in
the LXD documentation for further installation options and troubleshooting.

.. _multiple-installs:

Install multiple instances of Snapcraft
---------------------------------------
Expand Down
1 change: 1 addition & 0 deletions docs/release-notes/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -361,6 +361,7 @@ core24

For a complete list of commits, check out the `8.4.4`_ release on GitHub.

.. _changelog-7-5-8:

7.5.8 (2024-Oct-24)
-------------------
Expand Down
59 changes: 30 additions & 29 deletions docs/release-notes/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,53 +3,51 @@
Release notes
=============

This page lists the notes for past releases of Starcraft, which summarise new features,
This page lists the notes for past releases of Snapcraft, which summarise new features,
bug fixes and backwards-incompatible changes in each version. It also contains the
release and support policies for Starcraft.
release and support policies for Snapcraft.


Current releases
----------------

Snapcraft 8
~~~~~~~~~~~

<latest release>
~~~~~~~~~~~~~~~~
- :ref:`Snapcraft 8.7 <release-8.7>`

- <link to latest release, update, such as 8.2.0>
- <link to latest release, update, such as 8.1.0>
- <link to latest release, initial, such as 8.0.0>

Snapcraft 7
~~~~~~~~~~~

<parallel release>
~~~~~~~~~~~~~~~~~~
Snapcraft 7 is available for building ``core18`` snaps. When building for newer bases,
use Snapcraft 8. See
:ref:`How to install multiple instances of Snapcraft <multiple-installs>` for
more information.

<If necessary, add guidance and caveats about these older releases, such as
"Snapcraft 7 is available for building core18 snaps. When building for a newer
base, use Snapcraft 8.">

- <link to parallel release, update, such as 7.2.0>
- <link to parallel release, update, such as 7.1.0>
- <link to parallel release, initial, such as 7.0.0>
- :ref:`Snapcraft 7.5.8 <changelog-7-5-8>`


Past releases
-------------

For a list of the latest major version of Snapcraft that supports a particular
base, see the :ref:`Base snaps reference <base-snap-reference>`.

Snapcraft 6
~~~~~~~~~~~

<past release>
~~~~~~~~~~~~~~
Snapcraft 6 is available for building ``core`` snaps.

- <link to past release, update, such as 6.2.0>
- <link to past release, update, such as 6.1.0>
- <link to past release, initial, such as 6.0.0>
- `Snapcraft 6.1 <https://github.com/canonical/snapcraft/releases/tag/6.1>`_


.. _release-versioning:

Release versioning
------------------

Starcraft version naming follows the Semantic Versioning 2.0.0 scheme with
Snapcraft version naming follows the `Semantic Versioning 2.0.0`_ scheme with
numbers for major, minor, and patch versions.

.. list-table::
Expand All @@ -60,10 +58,7 @@ numbers for major, minor, and patch versions.
- Significance
* - Major
- **3**.1.2
- <Apps: "A change that drops support for an earlier software base.">

<Libraries: "A change that breaks compatibility with the previous
version.">
- A change that drops support for an earlier software base.
* - Minor
- 3.\ **1**\ .2
- A new feature within the major version.
Expand All @@ -75,19 +70,25 @@ numbers for major, minor, and patch versions.
Long-term support
-----------------

Starcraft doesn't have long-term support (LTS) releases. However, we typically
Snapcraft doesn't have long-term support (LTS) releases. However, we typically
deliver a compatibility release shortly after Ubuntu LTS releases to ensure
continuity.

<Apps: Starcraft software bases are derived from Ubuntu LTS releases, and their
development keeps pace with the OS's new releases and support lifecycle.>
Snapcraft software bases are derived from Ubuntu LTS releases, and their
development keeps pace with the OS's new releases and support lifecycle.

.. toctree::
:maxdepth: 1
:hidden:

Snapcraft 8.7 <snapcraft-8-7>
changelog


.. _`Semantic Versioning 2.0.0`: https://semver.org/spec/v2.0.0.html



.. release note template:
Starcraft 2.0 release notes
Expand Down
146 changes: 146 additions & 0 deletions docs/release-notes/snapcraft-8-7.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@
.. _release-8.7:

Snapcraft 8.7 release notes
=============================

03 March 2025

Learn about the new features, changes, and fixes introduced in Snapcraft 8.7.


Requirements and compatibility
------------------------------

See :ref:`System requirements<system-requirements>` for information on the minimum
hardware and installed software.


What's new
----------

Snapcraft 8.7 brings the following features, integrations, and improvements.


Bash completion
~~~~~~~~~~~~~~~

Previously, the completion file for Snapcraft was outdated or incorrect because
it had to be manually updated.

We've updated the completion file to be generated dynamically, which means it will
always autocomplete the latest commands and options in Bash-compatible shells.
Try it out in by typing ``snapcraft`` and pressing :kbd:`Tab` in your terminal.


Improved remote builder
~~~~~~~~~~~~~~~~~~~~~~~

Remote builds can now use the ``--build-for`` option to filter entries in an
``architectures`` or ``platforms`` key in a project file.


Support for confdbs
~~~~~~~~~~~~~~~~~~~

Snapcraft now supports listing and editing ``confdbs`` with the commands
``list-confdbs`` and ``edit-confdbs``. These new commands replace the previous
``list-registries`` and ``edit-registries`` commands, respectively.


Support for relocatable pkgconfig files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Snapcraft now checks if `pkg-config`_ (``.pc``) files are relocatable. If the file is
relocatable, Snapcraft will no longer modify its ``prefix`` field.


Documentation improvements
~~~~~~~~~~~~~~~~~~~~~~~~~~

The following how-to guides have been integrated:

* :ref:`Use an extension <use-an-extension>`
* :ref:`List extensions <list-extensions>`
* :ref:`Enable experimental extensions <enable-experimental-extensions>`
* :ref:`Use the env-injector extension <use-the-env-injector-extension>`
* :ref:`Use the GNOME extension <use-the-gnome-extension>`


The following references have been integrated:

* :ref:`env-injector extension <env-injector-extension>`
* :ref:`GNOME extension <gnome-extension>`
* :ref:`KDE neon extensions <kde-neon-extensions>`
* :ref:`Flutter extension <flutter-extension>`
* :ref:`ROS 1 extension <ros-1-extension>`
* :ref:`ROS 1 content extensions <ros-1-content-extensions>`
* :ref:`ROS 2 extensions <ros-2-foxy-extension>`
* :ref:`ROS 2 content extensions <ros-2-content-extensions>`


Backwards-incompatible changes
------------------------------

Removed platform option for remote builds
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The ``--platform`` option has been removed from the ``remote-build`` command.

This option was dropped because it doesn't provide predictable results for remote
builds, due to Launchpad's handling of the ``platforms`` key in project files.

``--build-for`` is the recommended alternative until Launchpad has comprehensive
support for platforms.

Known issues
------------

The following issues were reported and are scheduled to be fixed in upcoming
patch releases.

See individual issue links for any mitigations.

- `#4996`_ Remote build gives an unfriendly error when attempting to cross-compile.
- `#5258`_ The Flutter plugin fails to install Flutter for ``core22`` and ``core24``
snaps.


Fixed bugs and issues
---------------------

The following issues have been resolved in Snapcraft 8.7:

- `#5250`_ Resources path for ``QtWebEngineProcess`` wasn't exported for snaps
using the KDE Neon 6 extension.
- `craft-parts#978`_ The ``source-subdir`` field was ignored for the
:ref:`Go Use plugin<craft_parts_go_use_plugin>`.
- `craft-application#600`_ The same build environment may be re-used for platforms with
the same ``build-on`` and ``build-for`` architectures.
- `craft-application#618`_ The remote builder would clean up projects after
they timed out.
- `craft-application#619`_ The remote builder suggested using a nonextistent
``--build-id`` option if the build timed out.
- `craft-application#620`_ The remote builder help suggested using a nonextistent
``--status`` option.


Contributors
------------

We would like to express a big thank you to all the people who contributed to
this release.

:literalref:`@bepri<https://github.com/bepri>`,
:literalref:`@medubelko<https://github.com/medubelko>`,
:literalref:`@mr-cal<https://github.com/mr-cal>`,
and :literalref:`@sergio-costas<https://github.com/sergio-costas>`

.. _#4996: https://github.com/canonical/snapcraft/issues/4996
.. _#5250: https://github.com/canonical/snapcraft/pull/5250
.. _#5258: https://github.com/canonical/snapcraft/pull/5258
.. _craft-application#600: https://github.com/canonical/craft-application/issues/600
.. _craft-application#618: https://github.com/canonical/craft-application/issues/618
.. _craft-application#619: https://github.com/canonical/craft-application/issues/619
.. _craft-application#620: https://github.com/canonical/craft-application/issues/620
.. _craft-parts#978: https://github.com/canonical/craft-parts/issues/978
.. _pkg-config: https://www.freedesktop.org/wiki/Software/pkg-config/

0 comments on commit 48ae4d8

Please sign in to comment.