From 1bc77f72abe0421f008a9d97bac3b8d63994be02 Mon Sep 17 00:00:00 2001 From: Tiago Nobrega Date: Wed, 16 Oct 2024 14:15:44 -0300 Subject: [PATCH] docs: add changelog with notes for 1.6.0 (#734) Fixes #724 --------- Co-authored-by: Michael DuBelko Co-authored-by: Alex Lowe Co-authored-by: Matt Culler --- docs/.wordlist.txt | 3 + docs/conf.py | 3 + docs/reference/changelog.rst | 160 ++++++++++++++++++++++++++++++++++ docs/reference/index.rst | 1 + docs/reuse/tutorial/setup.rst | 2 +- docs/tutorial/django.rst | 2 +- docs/tutorial/fastapi.rst | 2 +- docs/tutorial/flask.rst | 2 +- 8 files changed, 171 insertions(+), 4 deletions(-) create mode 100644 docs/reference/changelog.rst diff --git a/docs/.wordlist.txt b/docs/.wordlist.txt index 85ae3b9cf..ccb13a656 100644 --- a/docs/.wordlist.txt +++ b/docs/.wordlist.txt @@ -1,4 +1,6 @@ ACR +AMD +amd ARGS ASGI Autotools @@ -94,6 +96,7 @@ Podman ppa pre pyfiglet +PPAs PyPI reStructuredText rock's diff --git a/docs/conf.py b/docs/conf.py index e66322ec7..1696d2792 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -97,6 +97,9 @@ "https://github.com/canonical/pebble#layer-specification", "https://juju.is/cloud-native-kubernetes-usage-report-2021#selection-criteria-for-container-images", "https://matrix.to/#/#rocks:ubuntu.com", + # Ignore changelog links to Rockcraft releases, because the changelog entries + # are written before the actual release is tagged. + "https://github.com/canonical/rockcraft/releases/tag/.*", ] rst_epilog = """ diff --git a/docs/reference/changelog.rst b/docs/reference/changelog.rst new file mode 100644 index 000000000..48b1838cd --- /dev/null +++ b/docs/reference/changelog.rst @@ -0,0 +1,160 @@ +:tocdepth: 2 + +.. Check out the bottom of the page for the release template + +Changelog +********* + +1.6.0 (2024-Oct-17) +------------------- + +Core +==== + +- Rockcraft 1.6.0 updates Pydantic, the internal library + used to process ``rockcraft.yaml`` files, to a new major version. This change + should not have any user-visible consequences, but please report any issues on + `GitHub `_. +- Managed (non-destructive) runs now fail as expected if the build plan is + empty. For example, trying to build a project with only ``amd64`` in its + ``platforms`` will now fail when building on a non-amd64 + machine. +- ``package-repositories`` entries now support ``series`` and ``pocket`` for + ``apt`` repositories, and ``key-id`` for PPAs. + +Bases +##### + +``bare`` +"""""""" + +- ``bare``-based rocks now have a default ``PATH`` value set on the image, + following the behaviour of ``Pebble`` services. + +Plugins +####### + +``poetry`` +"""""""""" + +- Add a new plugin for Python projects that use the `Poetry`_ build system. + +Extensions +########## + +fastapi-framework +""""""""""""""""" + +- Add a new ``fastapi-framework`` extension for `FastAPI`_-based projects. + +flask-framework +""""""""""""""" + +- On ``bare``-based rocks, the extension now uses Chisel slices for the Python + interpreter. +- Add support for the ``ubuntu@24.04`` base. + +django-framework +"""""""""""""""" + +- The ``django-framework`` extension is now stable and no longer requires the + ``ROCKCRAFT_ENABLE_EXPERIMENTAL_EXTENSIONS`` environment variable. +- Add support for the ``ubuntu@24.04`` base. + +go-framework +"""""""""""" + +- Add a new ``go-framework`` extension for Go-based projects. + +Command line +============ + +- Improve reporting of builds that fail because they match multiple platforms. +- Improve error messages for invalid ``rockcraft.yaml`` files. +- The ``pack`` command now supports ``--shell`` and ``--shell-after``, and + correctly handles cases where the packing itself fails and the ``--debug`` + argument is passed. +- The ``clean`` command now supports the ``--platform`` argument to filter which + build environments to clean. +- Positional arguments are now correctly displayed on the ``help`` output of + commands. +- The terminal cursor is now hidden during execution. + +Init +==== + +- Add new ``--profile`` argument options for ``go-framework`` and + ``fastapi-framework``. + +Documentation +============= + +- Add :ref:`reference documentation ` for the new + ``poetry`` plugin. +- Add a :ref:`how-to guide ` on adding internal + users to rocks. +- Improve the ``flask-framework`` + :ref:`tutorial ` based on user feedback. +- Add a :ref:`tutorial ` for the + ``django-framework`` extension. +- Add a :ref:`tutorial ` for the + ``fastapi-framework`` extension. + +For a complete list of commits, check out the `1.6.0`_ release on GitHub. + + +.. _FastAPI: https://fastapi.tiangolo.com +.. _Poetry: https://python-poetry.org + +.. _1.6.0: https://github.com/canonical/rockcraft/releases/tag/1.6.0 + +.. + release template: + + X.Y.Z (YYYY-MMM-DD) + ------------------- + + Core + ==== + + # for everything related to the lifecycle of packing a rock + + Bases + ##### + + + """""""""""""" + (order from newest base to oldest base) + + Plugins + ####### + + + """""""" + + Extensions + ########## + + + """"""""""" + + Metadata + ######## + + Sources + ####### + + + Command line + ============ + + # for command line and UX changes + + Init + ==== + + + Documentation + ============= + + For a complete list of commits, check out the `X.Y.Z`_ release on GitHub. diff --git a/docs/reference/index.rst b/docs/reference/index.rst index 3d22c37a1..460e4f0d6 100644 --- a/docs/reference/index.rst +++ b/docs/reference/index.rst @@ -15,3 +15,4 @@ Rockcraft's components, commands and keywords. Extensions plugins parts_steps + changelog diff --git a/docs/reuse/tutorial/setup.rst b/docs/reuse/tutorial/setup.rst index b37126d82..4442e2ce2 100644 --- a/docs/reuse/tutorial/setup.rst +++ b/docs/reuse/tutorial/setup.rst @@ -80,4 +80,4 @@ choice or simply use one of the already existing editors in your Ubuntu environment (like ``vi``). .. _`lxd-docker-connectivity-issue`: https://documentation.ubuntu.com/lxd/en/latest/howto/network_bridge_firewalld/#prevent-connectivity-issues-with-lxd-and-docker -.. _`install-multipass`: https://multipass.run/docs/how-to-install-multipass +.. _`install-multipass`: https://multipass.run/docs/install-multipass diff --git a/docs/tutorial/django.rst b/docs/tutorial/django.rst index 4436b2784..d74eabf57 100644 --- a/docs/tutorial/django.rst +++ b/docs/tutorial/django.rst @@ -429,4 +429,4 @@ your changes are not taking effect (e.g. the ``/time/`` ``rockcraft pack``. .. _`lxd-docker-connectivity-issue`: https://documentation.ubuntu.com/lxd/en/latest/howto/network_bridge_firewalld/#prevent-connectivity-issues-with-lxd-and-docker -.. _`install-multipass`: https://multipass.run/docs/how-to-install-multipass +.. _`install-multipass`: https://multipass.run/docs/install-multipass diff --git a/docs/tutorial/fastapi.rst b/docs/tutorial/fastapi.rst index bc305c267..96df0c034 100644 --- a/docs/tutorial/fastapi.rst +++ b/docs/tutorial/fastapi.rst @@ -418,4 +418,4 @@ your changes are not taking effect (e.g. the ``/time`` ``rockcraft pack``. .. _`lxd-docker-connectivity-issue`: https://documentation.ubuntu.com/lxd/en/latest/howto/network_bridge_firewalld/#prevent-connectivity-issues-with-lxd-and-docker -.. _`install-multipass`: https://multipass.run/docs/how-to-install-multipass +.. _`install-multipass`: https://multipass.run/docs/install-multipass diff --git a/docs/tutorial/flask.rst b/docs/tutorial/flask.rst index 33d2491dc..928308216 100644 --- a/docs/tutorial/flask.rst +++ b/docs/tutorial/flask.rst @@ -415,4 +415,4 @@ your changes are not taking effect (e.g. the ``/time`` ``rockcraft pack``. .. _`lxd-docker-connectivity-issue`: https://documentation.ubuntu.com/lxd/en/latest/howto/network_bridge_firewalld/#prevent-connectivity-issues-with-lxd-and-docker -.. _`install-multipass`: https://multipass.run/docs/how-to-install-multipass +.. _`install-multipass`: https://multipass.run/docs/install-multipass