diff --git a/docs/howto/set-up-snapcraft.rst b/docs/howto/set-up-snapcraft.rst index 0608341c2f..644a72f8db 100644 --- a/docs/howto/set-up-snapcraft.rst +++ b/docs/howto/set-up-snapcraft.rst @@ -149,6 +149,7 @@ See `How to install LXD `_ in the LXD documentation for further installation options and troubleshooting. +.. _multiple-installs: Install multiple instances of Snapcraft --------------------------------------- diff --git a/docs/release-notes/changelog.rst b/docs/release-notes/changelog.rst index be2184f76d..7f440c9742 100644 --- a/docs/release-notes/changelog.rst +++ b/docs/release-notes/changelog.rst @@ -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) ------------------- diff --git a/docs/release-notes/index.rst b/docs/release-notes/index.rst index 5aac9bc900..877f8eb9e5 100644 --- a/docs/release-notes/index.rst +++ b/docs/release-notes/index.rst @@ -3,45 +3,43 @@ 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 +~~~~~~~~~~~ - -~~~~~~~~~~~~~~~~ +- :ref:`Snapcraft 8.7 ` -- -- -- +Snapcraft 7 +~~~~~~~~~~~ - -~~~~~~~~~~~~~~~~~~ +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 ` for +more information. - - -- -- -- +- :ref:`Snapcraft 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 `. + +Snapcraft 6 +~~~~~~~~~~~ - -~~~~~~~~~~~~~~ +Snapcraft 6 is available for building ``core`` snaps. -- -- -- +- `Snapcraft 6.1 `_ .. _release-versioning: @@ -49,7 +47,7 @@ Past releases 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:: @@ -60,10 +58,7 @@ numbers for major, minor, and patch versions. - Significance * - Major - **3**.1.2 - - - - + - A change that drops support for an earlier software base. * - Minor - 3.\ **1**\ .2 - A new feature within the major version. @@ -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. - +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 changelog +.. _`Semantic Versioning 2.0.0`: https://semver.org/spec/v2.0.0.html + + + .. release note template: Starcraft 2.0 release notes diff --git a/docs/release-notes/snapcraft-8-7.rst b/docs/release-notes/snapcraft-8-7.rst new file mode 100644 index 0000000000..8a8c8fa118 --- /dev/null +++ b/docs/release-notes/snapcraft-8-7.rst @@ -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` 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 ` +* :ref:`List extensions ` +* :ref:`Enable experimental extensions ` +* :ref:`Use the env-injector extension ` +* :ref:`Use the GNOME extension ` + + +The following references have been integrated: + +* :ref:`env-injector extension ` +* :ref:`GNOME extension ` +* :ref:`KDE neon extensions ` +* :ref:`Flutter extension ` +* :ref:`ROS 1 extension ` +* :ref:`ROS 1 content extensions ` +* :ref:`ROS 2 extensions ` +* :ref:`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-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`, +:literalref:`@medubelko`, +:literalref:`@mr-cal`, +and :literalref:`@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/