Skip to content

chore(deps): bump sphinx-needs from 7.0.0 to 8.0.0#279

Merged
code-steadfast merged 1 commit intodevelopfrom
dependabot/pip/sphinx-needs-8.0.0
Apr 3, 2026
Merged

chore(deps): bump sphinx-needs from 7.0.0 to 8.0.0#279
code-steadfast merged 1 commit intodevelopfrom
dependabot/pip/sphinx-needs-8.0.0

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github Mar 23, 2026

Bumps sphinx-needs from 7.0.0 to 8.0.0.

Release notes

Sourced from sphinx-needs's releases.

8.0.0

See https://sphinx-needs.readthedocs.io/en/stable/changelog.html

What's Changed

New Contributors

Full Changelog: useblocks/sphinx-needs@7.0.0...8.0.0

Changelog

Sourced from sphinx-needs's changelog.

8.0.0

:Released: Unreleased :Full Changelog: v7.0.0...v8.0.0 <https://github.com/useblocks/sphinx-needs/compare/7.0.0...5b223fd71eeb7402d5b60c1a5832434d8fd05e31>__

This release introduces conditional link assessment — the ability to attach :ref:filter_string conditions to links that are checked against the target need at build time. It also overhauls the internal link representation and fixes links_from_content to use the parsed doctree instead of fragile regex matching.

Conditional link assessment ...........................

A major motivation for requirements-management tooling is ensuring traceability — not just that two needs are linked, but that the link is valid in context. For example, a specification should only link to requirements that are in an "open" or "approved" state, or a test should only reference an implementation at a compatible version.

Sphinx-Needs now supports this via inline conditions on link references (see :ref:need_conditional_links). Append a :ref:filter_string in square brackets after the target ID:

.. code-block:: rst

.. spec:: My Specification :links: REQ_001[status=="open"], REQ_002[version>=3]

Each condition is evaluated against the target need's fields. If a condition evaluates to False, a needs.link_condition_failed warning is emitted; if the condition syntax is invalid, a needs.link_condition_invalid warning is emitted. Links without conditions continue to work exactly as before.

The condition is a standard :ref:filter_string expression, so you can use any Python-style comparison operators (==, !=, >, <, >=, <=), membership checks (in, not in), boolean connectives (and, or, not), and built-in helpers like search().

This means conditions already work with numeric fields such as integer or number (decimal) types. For example, if you define a version field:

.. code-block:: toml

[needs.fields.version] schema.type = "integer" nullable = false

You can then enforce version constraints on links:

... (truncated)

Commits
  • 06e477a 🚀 Release v8.0.0 (#1688)
  • 5b223fd 🧪 Add some more tests for links_from_content (#1686)
  • 0411af3 ♻️ Fix links_from_content to use parsed doctree nodes instead of regex (#1685)
  • d898e41 👌 Add parse_conditions configuration for link types (#1684)
  • 36d4b70 🔧 Bump ENV_DATA_VERSION to 4 for NeedLink storage format change (#1683)
  • bccacde ♻️ Store NeedLink on NeedRef node at parse time instead of re-parsing later (...
  • 4473aef 👌 Add needs_json_include_link_conditions config option (#1681)
  • e22e31d 👌 Parse link conditions from imported and external needs (#1680)
  • 8ad874b 🔧 Store NeedPartData.backlinks as NeedLink instead of str (#1679)
  • dce9f99 🔧 Use get_links(as_str=False) in needextend to avoid round-trip serializati...
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Mar 23, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Mar 23, 2026

Test Results

191 tests  +191   191 ✅ +191   3m 47s ⏱️ + 3m 47s
  1 suites +  1     0 💤 ±  0 
  1 files   +  1     0 ❌ ±  0 

Results for commit b24b729. ± Comparison against base commit 2df3741.

♻️ This comment has been updated with latest results.

Bumps [sphinx-needs](https://github.com/useblocks/sphinx-needs) from 7.0.0 to 8.0.0.
- [Release notes](https://github.com/useblocks/sphinx-needs/releases)
- [Changelog](https://github.com/useblocks/sphinx-needs/blob/master/docs/changelog.rst)
- [Commits](useblocks/sphinx-needs@7.0.0...8.0.0)

---
updated-dependencies:
- dependency-name: sphinx-needs
  dependency-version: 8.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot force-pushed the dependabot/pip/sphinx-needs-8.0.0 branch from c791268 to b24b729 Compare April 3, 2026 11:24
@code-steadfast code-steadfast merged commit 09ca5ba into develop Apr 3, 2026
5 checks passed
@code-steadfast code-steadfast deleted the dependabot/pip/sphinx-needs-8.0.0 branch April 3, 2026 11:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant