From c9976499b0e02306b7ebc5c9dffce02963a100d4 Mon Sep 17 00:00:00 2001 From: Chris Sewell Date: Wed, 28 Aug 2024 14:33:59 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=80=20Release=20v3.0.0=20(#1252)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/docker.yaml | 2 +- docs/changelog.rst | 81 ++++++++++++++++++++++++++++++++--- docs/index.rst | 3 +- docs/license.rst | 6 +++ pyproject.toml | 2 +- sphinx_needs/needs.py | 2 +- 6 files changed, 86 insertions(+), 10 deletions(-) create mode 100644 docs/license.rst diff --git a/.github/workflows/docker.yaml b/.github/workflows/docker.yaml index 42faf2298..336637f15 100644 --- a/.github/workflows/docker.yaml +++ b/.github/workflows/docker.yaml @@ -16,7 +16,7 @@ on: paths: ['docker/**'] env: - NEEDS_VERSION: 2.0.0 + NEEDS_VERSION: 3.0.0 DEPLOY_IMAGE: ${{ github.event_name != 'pull_request' }} jobs: diff --git a/docs/changelog.rst b/docs/changelog.rst index 4807de620..5ac4513b0 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -1,18 +1,87 @@ .. _changelog: -Changelog & License -=================== +Changelog +========= -License -------- +3.0.0 +----- + +:Released: 28.08.2024 +:Full Changelog: `v2.1.0...v3.0.0 `__ + +This release includes a number of new features and improvements, as well as some bug fixes. + +Updated dependencies +.................... + +- sphinx: ``>=5.0,<8`` to ``>=6.0,<9`` +- requests: ``^2.25.1`` to ``^2.32`` +- requests-file: ``^1.5.1`` to ``^2.1`` +- sphinx-data-viewer: ``^0.1.1`` to ``^0.1.5`` + +Documentation and CSS styling +.............................. + +The documentation theme has been completely updated, and a tutorial added. + +To improve ``sphinx-needs`` compatibility across different Sphinx HTML themes, +the CSS for needs etc has been modified substantially, and so, +if you have custom CSS for your needs, you may need to update it. + +See :ref:`install_theme` for more information on how to setup CSS for different themes, +and :pr:`1178`, :pr:`1181`, :pr:`1182` and :pr:`1184` for the changes. + +``needflow`` improvements +.......................... + +The use of `Graphviz `__ as the underlying engine for `needflow` diagrams, in addition to the default `PlantUML `__, +is now allowed via the global :ref:`needs_flow_engine` configuration option, or the per-diagram :ref:`engine ` option. + +The intention being to simplify and improve performance of graph builds, since ``plantuml`` has issues with JVM initialisation times and reliance on a third-party sphinx extension. + +See :ref:`needflow` for more information, +and :pr:`1235` for the changes. + +additional improvements: + +- ✨ Allow setting an ``alt`` text for ``needflow`` images +- ✨ Allow creating a ``needflow`` from a ``root_id`` in :pr:`1186` +- ✨ Add ``border_color`` option for ``needflow`` in :pr:`1194` + +``needs.json`` improvements +............................ + +A ``needs_schema`` is now included in the ``needs.json`` file (per version), which is a JSON schema for the data structure of a single need. + +This includes defaults for each field, and can be used in combination with the :ref:`needs_json_remove_defaults` configuration option to remove these defaults from each individual need. + +Together with the new automatic minifying of the ``needs.json`` file, this can reduce the file size by down to 1/8th of its previous size. + +The :ref:`needs_json_exclude_fields` configuration option can also be used to modify the excluded need fields from the ``needs.json`` file, +and backlinks are now included in the ``needs.json`` file by default. + +See :ref:`needs_builder_format` for more information, +and :pr:`1230`, :pr:`1232`, :pr:`1233` for the changes. + +Additionally, the ``content_node``, ``content_id`` fields are removed from the internal need data structure (see :pr:`1241` and :pr:`1242`). + +Additional improvements +....................... + +- 👌 Capture filter processing times when using ``needs_debug_measurement=True`` in :pr:`1240` +- 👌 Allow ``style`` and ``color`` fields to be omitted for ``needs_types`` items and a default used in :pr:`1185` +- 👌 Allow ``collapse`` / ``delete`` / ``jinja_content`` directive options to be flags in :pr:`1188` +- 👌 Improve ``need-extend``; allow dynamic functions in lists in :pr:`1076` +- 👌 Add collapse button to ``clean_xxx`` layouts in :pr:`1187` -.. include:: ../LICENSE +- 🐛 fix warnings for duplicate needs in parallel builds in :pr:`1223` +- 🐛 Fix rendering of ``needextract`` needs and use warnings instead of exceptions in :pr:`1243` and :pr:`1249` 2.1.0 ----- :Released: 08.05.2024 -:Full Changelog: `v2.0.0...v2.1.0 `__ +:Full Changelog: `v2.0.0...v2.1.0 `__ Improvements ............ diff --git a/docs/index.rst b/docs/index.rst index ca67d972d..e71c75452 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -214,6 +214,7 @@ Contents :caption: Development :maxdepth: 1 + changelog support contributing - changelog + license diff --git a/docs/license.rst b/docs/license.rst new file mode 100644 index 000000000..d4fdb7a2e --- /dev/null +++ b/docs/license.rst @@ -0,0 +1,6 @@ +.. _license: + +License +======= + +.. include:: ../LICENSE diff --git a/pyproject.toml b/pyproject.toml index fa00cfb1e..53a44bd42 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,7 +2,7 @@ name = "sphinx-needs" # !! Don't miss updates in sphinx_needs.__version__, changelog.rst, and .github/workflows/docker !!! -version = "2.1.0" +version = "3.0.0" description = "Sphinx needs extension for managing needs/requirements and specifications" authors = ["team useblocks "] diff --git a/sphinx_needs/needs.py b/sphinx_needs/needs.py index 056ed6295..4e4a0bdad 100644 --- a/sphinx_needs/needs.py +++ b/sphinx_needs/needs.py @@ -110,7 +110,7 @@ from sphinx_needs.utils import NEEDS_FUNCTIONS, node_match from sphinx_needs.warnings import process_warnings -__version__ = VERSION = "2.1.0" +__version__ = VERSION = "3.0.0" NEEDS_FUNCTIONS.clear() _NODE_TYPES_T = Dict[