From: <mi...@us...> - 2025-06-16 09:58:06
|
Revision: 10168 http://sourceforge.net/p/docutils/code/10168 Author: milde Date: 2025-06-16 09:58:04 +0000 (Mon, 16 Jun 2025) Log Message: ----------- Drop the (faulty) "name" option of the "target-notes" directive. Remove "name" from `TargetNotes.option_spec`. The "target-notes" directive generates one footnote element per external target, so it is unclear where a "name" attribute should go. Up to now, the name was dropped by the "TargetNodes" transform and led to an AssertionError in documents without external references Modified Paths: -------------- trunk/docutils/HISTORY.rst trunk/docutils/RELEASE-NOTES.rst trunk/docutils/docs/ref/rst/directives.rst trunk/docutils/docutils/parsers/rst/directives/references.py trunk/docutils/test/test_parsers/test_rst/test_directives/test_target_notes.py trunk/docutils/test/test_parsers/test_rst/test_targets.py Modified: trunk/docutils/HISTORY.rst =================================================================== --- trunk/docutils/HISTORY.rst 2025-06-16 09:46:32 UTC (rev 10167) +++ trunk/docutils/HISTORY.rst 2025-06-16 09:58:04 UTC (rev 10168) @@ -17,8 +17,13 @@ Release 0.22rc4 (unpublished) ============================= -Nothing yet. +* docutils/parsers/rst/directives/references.py + Remove "name" from `TargetNotes.option_spec`. + The "target-notes" directive generates one footnote element per + external target but "name" must be unique across the document. + So far, the name was silently dropped. + Release 0.22rc3 (2025-06-10) ============================ Modified: trunk/docutils/RELEASE-NOTES.rst =================================================================== --- trunk/docutils/RELEASE-NOTES.rst 2025-06-16 09:46:32 UTC (rev 10167) +++ trunk/docutils/RELEASE-NOTES.rst 2025-06-16 09:58:04 UTC (rev 10168) @@ -247,9 +247,11 @@ Release 0.22rc4 (unpublished) ============================= -Nothing yet. +Drop the "name" option of the "target-notes" directive. +(Report an error instead of silently ignoring the value.) + Release 0.22rc3 (2025-06-10) ============================ Modified: trunk/docutils/docs/ref/rst/directives.rst =================================================================== --- trunk/docutils/docs/ref/rst/directives.rst 2025-06-16 09:46:32 UTC (rev 10167) +++ trunk/docutils/docs/ref/rst/directives.rst 2025-06-16 09:58:04 UTC (rev 10168) @@ -1314,7 +1314,7 @@ :Directive Type: "target-notes" :Doctree Elements: `\<pending>`_, `\<footnote>`_, `\<footnote_reference>`_ :Directive Arguments: none -:Directive Options: `class <class option_>`_, name_ +:Directive Options: `class <class option_>`_ :Directive Content: none The "target-notes" directive generates a list of referenced URIs. Modified: trunk/docutils/docutils/parsers/rst/directives/references.py =================================================================== --- trunk/docutils/docutils/parsers/rst/directives/references.py 2025-06-16 09:46:32 UTC (rev 10167) +++ trunk/docutils/docutils/parsers/rst/directives/references.py 2025-06-16 09:58:04 UTC (rev 10168) @@ -18,8 +18,7 @@ """Target footnote generation.""" - option_spec = {'class': directives.class_option, - 'name': directives.unchanged} + option_spec = {'class': directives.class_option} def run(self): pending = nodes.pending(references.TargetNotes) Modified: trunk/docutils/test/test_parsers/test_rst/test_directives/test_target_notes.py =================================================================== --- trunk/docutils/test/test_parsers/test_rst/test_directives/test_target_notes.py 2025-06-16 09:46:32 UTC (rev 10167) +++ trunk/docutils/test/test_parsers/test_rst/test_directives/test_target_notes.py 2025-06-16 09:58:04 UTC (rev 10168) @@ -67,11 +67,14 @@ """, """\ <document source="test data"> - <pending ids="targets" names="targets"> - .. internal attributes: - .transform: docutils.transforms.references.TargetNotes - .details: - class: ['custom'] + <system_message level="3" line="1" source="test data" type="ERROR"> + <paragraph> + Error in "target-notes" directive: + unknown option: "name". + <literal_block xml:space="preserve"> + .. target-notes:: + :class: custom + :name: targets """], ["""\ .. target-notes:: Modified: trunk/docutils/test/test_parsers/test_rst/test_targets.py =================================================================== --- trunk/docutils/test/test_parsers/test_rst/test_targets.py 2025-06-16 09:46:32 UTC (rev 10167) +++ trunk/docutils/test/test_parsers/test_rst/test_targets.py 2025-06-16 09:58:04 UTC (rev 10168) @@ -282,7 +282,7 @@ Title ===== -.. target-notes:: +.. note:: remember remember :name: title """, """\ @@ -292,13 +292,12 @@ <section dupnames="title" ids="title"> <title> Title - <pending ids="title-1" names="title"> + <note ids="title-1" names="title"> <system_message backrefs="title-1" level="1" line="7" source="test data" type="INFO"> <paragraph> Target name overrides implicit target name "title". - .. internal attributes: - .transform: docutils.transforms.references.TargetNotes - .details: + <paragraph> + remember remember """], ["""\ Duplicate explicit targets. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |