Releases: useblocks/sphinx-needs
Release list
v6.0.1
What's Changed
- π Add release labels to changelog by @ubmarco in #1523
- π§ Improve error for variant options by @ubmarco in #1524
- π§ Fix schema json missing exc message by @ubmarco in #1526
- π Add schema to add_extra_option by @ubmarco in #1527
- π Fix name error schema_path_contains by @ubmarco in #1530
- π Inject build_tags to variant filter strings by @ubmarco in #1531
- π Release v6.0.1 by @ubmarco in #1532
Full Changelog: 6.0.0...6.0.1
v6.0.0
What's Changed
- π Re-allow dynamic functions for
layoutfield by @chrisjsewell in #1423 - π§ Centralise allowed variant core need fields by @chrisjsewell in #1424
- π Warn on dynamic function with surrounding text by @chrisjsewell in #1426
- π§ Allow pre/post template
global_optionsby @chrisjsewell in #1428 - β¨ Add
is_importneed field by @chrisjsewell in #1429 - π update tox version to py39 by @ubmarco in #1438
- π§ Use ubuntu-latest in CI by @ubmarco in #1439
- π§ Added yamlfmt pre-commit by @ubmarco in #1446
- π Fix cyclic imports by @ubmarco in #1443
- π§ benchmark group non win32 by @ubmarco in #1450
- β¬οΈ Drop Sphinx<7.4, test against Python 3.13 by @ubmarco in #1447
- π§ Allow template global_options by @chrisjsewell in #1454
- Allow
collapseandhideinneeds_global_optionsby @chrisjsewell in #1456 - π Reset directive option specs at start of build by @ubmarco in #1448
- β¬οΈ Drop Python 3.9 by @ubmarco in #1468
- π Improve need part processing by @chrisjsewell in #1469
- π Fix escape sequences by @ubmarco in #1470
- π Format configuration.rst by @chrisjsewell in #1473
- β¨ Schema validation v2 by @ubmarco in #1467
- π Clarify c.this_doc() for needextend by @ubmarco in #1475
βΌοΈ Disallowadd_extra_optionoverriding an internal field by @chrisjsewell in #1477βΌοΈ Improve needs default field application (via needs_global_options) by @chrisjsewell in #1478- β»οΈ Lazily assess directive options by @chrisjsewell in #1482
- π§ Split import item filtering to separate function by @chrisjsewell in #1484
- β»οΈ Store needs as
NeedItem/NeedPartItem, rather than standarddictby @chrisjsewell in #1485 - β»οΈ Set some core need fields to nullable by @chrisjsewell in #1488
- π Fix: disallow need variants for list type fields by @chrisjsewell in #1489
- β»οΈ split
NeedIteminternal data into core, extras, links and backlinks by @chrisjsewell in #1490 - β»οΈ split off
sourcefields inNeedIteminternal data by @chrisjsewell in #1491 - β»οΈ Auto-compute certain need fields by @chrisjsewell in #1496
- π Fix needs_extra_links name by @HolgerPeters in #1501
- π Capture more information about modifications on
NeedItemby @chrisjsewell in #1502 - π§ Improve storage of constraint results on
NeedItemby @chrisjsewell in #1504 - β»οΈ Exclude
is_need/is_partfromneeds.jsonoutput by @chrisjsewell in #1505 - π§ Improve storage of content generation on
NeedItemby @chrisjsewell in #1506 - π§ͺ Improve test for need parts by @chrisjsewell in #1507
- β»οΈ Improve storage of part data on NeedItem by @chrisjsewell in #1509
- π Write schema violations into a JSON file by @iSOLveIT in #1503
- Always generate schema violations.json report file by @iSOLveIT in #1511
- π Avoid leaking auth credentials for ext. need warnings by @cedossan in #1512
- π§ Add
DynamicFunctionParseddataclass by @chrisjsewell in #1514 - π§ Add
VariantFunctionParseddataclass by @chrisjsewell in #1515 βΌοΈ remove parsing of deprecatedneeds_global_optionsformat by @chrisjsewell in #1517- π§ͺ Move to snapshot testing for test_schema by @chrisjsewell in #1519
- β»οΈ Allow for typed
needs_extra_optionsfields by @chrisjsewell in #1516 - β»οΈ Warn for missing needimport files by @PhilipPartsch in #1510
- π§ Improve plantuml check + add tests by @ubmarco in #1521
- π Release v6.0.0 by @ubmarco in #1522
New Contributors
- @HolgerPeters made their first contribution in #1501
- @cedossan made their first contribution in #1512
Full Changelog: 5.1.0...6.0.0
v5.1.0
What's Changed
- β»οΈ Improve validation and docs for
needs_global_optionsby @chrisjsewell in #1410 - β»οΈ Change
needs_global_optionsformat by @chrisjsewell in #1413
Full Changelog: 5.0.0...5.1.0
v5.0.0
What's Changed
-
β¨ Add
c.this_doc()check forneedextendfilters by @chrisjsewell in #1393 -
β¨ Extend
c.this_doc()to all directives withfilteroption by @chrisjsewell in #1405 -
β»οΈ Remove back link manipulation from
needextendby @chrisjsewell in #1386 -
π§ Synchronize list splitting behaviour in need and needextend directives by @chrisjsewell in #1385
-
π Add type warnings of extra options in external/import reads by @chrisjsewell in #1389
-
π§ Centralise extendable core need fields by @chrisjsewell in #1388
-
β»οΈ Don't process dynamic functions on internal need fields by @chrisjsewell in #1387
-
β»οΈ Make
needextendargument declarative by @chrisjsewell in #1391 -
π§ Remove
constraints_passed/constraints_resultsdirective options by @chrisjsewell in #1396 -
β»οΈ Remove
deletefrom internal needs andneeds.jsonby @chrisjsewell in #1347 -
β»οΈ Remove
full_titleneed field and only trim generated titles by @chrisjsewell in #1407 -
π§ Deprecate use of dynamic functions in need type fields by @chrisjsewell in #1406
-
π Fix CSS for need table colors by @chrisjsewell in #1403
-
π clarify
needimportargument format by @chrisjsewell in #1384
Full Changelog: 4.2.0...5.0.0
4.2.0
What's Changed
- π§ Add
linenoto default output ofneeds.jsonby @chrisjsewell in #1346 - π§ Replace poetry with flit/uv by @chrisjsewell in #1355
- π§ Release needs data mutation lock at end of process by @chrisjsewell in #1359
- Allow filter-func in need-pie to have multiple dots in the import path. by @Aymen-Soussi-01 in #1373
- Fix typo in layout_styles.rst by @interifter in #1374
- π Fix: make external paths relative to
confdir, notsrcdirby @chrisjsewell in #1378 - β¨ Add
needs_import_keysconfiguration by @chrisjsewell in #1379
New Contributors
- @Aymen-Soussi-01 made their first contribution in #1373
- @interifter made their first contribution in #1374
Full Changelog: 4.1.0...4.2.0
v4.1.0
What's Changed
- β¨ Add
needs_from_tomlconfiguration by @chrisjsewell in #1337 - β¨ Allow configuring description of extra option by @chrisjsewell in #1338
- π FIX needflow graphviz links by @chrisjsewell in #1339
- π Fix plantuml top-level import by @chrisjsewell in #1328
- β»οΈ Improve access to dynamic configs: extra_options, functions, warnings by @chrisjsewell in #1332
- π§ Merge defaults into config earlier by @chrisjsewell in #1341
- π§ Remove some internal fields from needs layout by @chrisjsewell in #1330
- π Docs: Fix API package by @ubmarco in #1327
Full Changelog: 4.0.0...4.1.0
v4.0.0
See https://sphinx-needs.readthedocs.io/en/latest/changelog.html
New Contributors
- @christopheseyler made their first contribution in #1296
Full Changelog: 3.0.0...4.0.0
v3.0.0
What's Changed
See https://sphinx-needs.readthedocs.io/en/latest/changelog.html
New Contributors
- @pre-commit-ci made their first contribution in #1179
- @AlexanderLanin made their first contribution in #1239
Full Changelog: 2.1.0...3.0.0
v2.1.0
What's Changed
Improvements
- π Default to warning for missing
needextendID by @chrisjsewell in #1066 - π Make
needtabletitles more permissive by @chrisjsewell in #1102 - π Add
filter_warningdirective option, to replace default warning text by @kreuzberger in #1093 - π Improve and test github
needservicedirective by @chrisjsewell in #1113 - π Improve warnings for invalid filters (add source location and subtype) by @chrisjsewell in #1128
- π Exclude external needs from
needs_id_regexcheck by @David-Le-Nir in #1108 - π Fail and emit warning on filters that do not return a boolean result by @big1hc in #964
- π Improve
Neednode creation and content parsing by @chrisjsewell in #1168 - π Add loading message to
permalink.htmlby @csIcaK in #1081 - π Remove hard-coding of
completionanddurationneed fields by @chrisjsewell in #1127
Bug fixes
- π Image layout function by @danwos in #1135
- π Centralise splitting of need ID by @chrisjsewell in #1101
- π Centralise need missing link reporting by @chrisjsewell in #1104
Internal improvements
-
π§ Use future annotations in all modules by @chrisjsewell in #1111
-
π§ Replace black/isort/pyupgrade/flake8 with ruff by @chrisjsewell in #1080
-
π§ Add better typing for
extra_linksconfig variable by @chrisjsewell in #1131 -
π§ Centralise need parts creation and strongly type needs by @chrisjsewell in #1129
-
π§ Fix typing of need docname/lineno by @chrisjsewell in #1134
-
π§ Type
ExternalSourceconfig dict by @chrisjsewell in #1115 -
π§ Enforce type checking in
needuml.pyby @chrisjsewell in #1116 -
π§ Enforce type checking in
api/need.pyby @chrisjsewell in #1117 -
π§ Add better typing for
global_optionsconfig variable by @chrisjsewell in #1120 -
π§ Move dead link need fields to internals by @chrisjsewell in #1119
-
π§ Remove usage of
hide_statusandhide_tagsby @chrisjsewell in #1130 -
π§ Remove
hiddenfield fromextra_optionsby @chrisjsewell in #1124 -
π§ Remove
constraintsfromextra_optionsby @chrisjsewell in #1123 -
π§ Remove use of deprecated
needs_extra_optionsasdictby @chrisjsewell in #1126
New Contributors
Full Changelog: 2.0.0...2.1.0
v2.0.0
See: https://sphinx-needs.readthedocs.io/en/latest/changelog.html
This release is focussed on improving the internal code-base and its build time performance, as well as improved build warnings and other functionality improvements / fixes.
What's Changed
- π Performance: Memoize Inline parser for
build_needby @chrisjsewell in #968 - Easier Sphinx-Needs docs builds by @danwos in #972
- β»οΈ Change
NeedsBuilderformat toneedsby @chrisjsewell in #978 - π Improve sphinx warnings by @chrisjsewell in #975
- π DOCS: Always use headless plantuml by @chrisjsewell in #983
- π Fix gantt chart rendering by @chrisjsewell in #984
- π Improve plantuml warnings by @chrisjsewell in #982
- π§ Replace
DirectivewithSphinxDirectiveby @chrisjsewell in #986 - π§ͺ Add headless java to test builds by @chrisjsewell in #988
- π§ͺ Remove all make files in test build folders by @chrisjsewell in #989
- π DOCS: Add intersphinx by @chrisjsewell in #991
- π§ͺ Remove boilerplate from test build
conf.pyfiles by @chrisjsewell in #990 - π Fix execute_func by @chrisjsewell in #994
- π Improve logging for static file copies by @chrisjsewell in #992
- π§ Centralise access to sphinx-needs config by @chrisjsewell in #998
- π§ Centralise sphinx
envdata access (and add schemas) by @chrisjsewell in #987 - π§ Add strict typing for
sphinx_needs.builderby @chrisjsewell in #1000 - π§ Make
NEEDS_CONFIGtype safe by @chrisjsewell in #1001 - π§ Make mypy pre-commit hook isolated by @chrisjsewell in #1003
- ππ§ MERGE: Add strict typing for most
sphinx_needsmodules by @chrisjsewell in #1002 - Bump cypress-io/github-action from 5 to 6 by @dependabot in #981
- π Fix adding sections to hidden needs by @chrisjsewell in #995
- π FIX:
NeedImportlogic by @chrisjsewell in #1006 - π Fix creation of need title nodes by @chrisjsewell in #1008
- Namnn/need per id json by @nhatnamnguyengtvthcm in #960
- π DOCS: Add outline of extension logic by @chrisjsewell in #1012
- π Improve removal of hidden need nodes by @chrisjsewell in #1013
- π Improve
process_constraintsby @chrisjsewell in #1015 - Fixed extra links example by @piotr-zyskowski-rai in #1016
- π§ Remove
unwrapfunction by @chrisjsewell in #1017 - π§ͺ Add snapshot testing for needs data by @chrisjsewell in #1019
- Bump docker/build-push-action from 2 to 5 by @dependabot in #1024
- Bump docker/setup-buildx-action from 2 to 3 by @dependabot in #1023
- Bump docker/metadata-action from 4 to 5 by @dependabot in #1022
- Bump docker/login-action from 1 to 3 by @dependabot in #1021
- Bump actions/checkout from 3 to 4 by @dependabot in #1009
- π§ͺ Add snapshot testing for cached doctrees by @chrisjsewell in #1020
- π Optimize needextend filter_needs usage by @danwos in #1030
- π From string fix by @danwos in #1031
- π Improve logic for
process_needextendby @chrisjsewell in #1037 - π Removing deepcopy by @danwos in #1033
- π§ͺ CI: Make documentation builds fail on warnings by @chrisjsewell in #1005
- β¨ Add error messages for constraint failures by @chrisjsewell in #1036
- π§ Consolidate needs data post-processing by @chrisjsewell in #1039
- β»οΈ Refactor needs post-processing function signatures by @chrisjsewell in #1040
- π§ Add strict typing for
sphinx_needs.functions.functionsby @chrisjsewell in #1042 - Fix usage of reST syntax in prefix parameter of meta by @sleiner in #1046
- π Allow
needextendto use dynamic functions by @chrisjsewell in #1052 - π Remove some unnecessary keys from
needs.jsonby @chrisjsewell in #1053 - π Improve performance of needs builders by @chrisjsewell in #1054
- π§ͺ Testing of JS scripts using Cypress integrated into PyTest by @iSOLveIT in #1051
- Add
checkCI job by @chrisjsewell in #1058 - Remove node install from core tests CI by @chrisjsewell in #1057
- π§ͺ Remove plantuml config from test builds conf.py by @chrisjsewell in #1059
- β¬οΈ Update to Sphinx 7 by @chrisjsewell in #1056
- π§ Fix benchmark.yaml CI regression by @chrisjsewell in #1062
- π§ Add
remove_node_from_treeutility function by @chrisjsewell in #1063 - β¨ NEW:
needs_reproducible_jsonconfig option by @chrisjsewell in #1065 - β»οΈ Make matplotlib dependency optional by @chrisjsewell in #1061
- π§ͺ Add code coverage to CI testing by @chrisjsewell in #1067
- π§ Bump actions/setup-node from 3 to 4 by @dependabot in #1050
- π Release v2.0.0 by @chrisjsewell in #1068
- π§ͺ Test README builds in pre-commit by @chrisjsewell in #1069
- π Pin pydantic version by @chrisjsewell in #1071
- π§ Fix Docker deployment by @chrisjsewell in #1070
New Contributors
- @nhatnamnguyengtvthcm made their first contribution in #960
- @piotr-zyskowski-rai made their first contribution in #1016
- @sleiner made their first contribution in #1046
Full Changelog: 1.3.0...2.0.0