Commit Graph

4659 Commits

Author SHA1 Message Date
Chris Sewell
41b363dbff [rst] Add level option to rubric directive (#12506)
This commit adds a `level` option to the `rubric` directive, which propagates a `level` attribute to the `rubric` node,
and allows renderers to select a specific heading level.

Logic for this attribute has been added to the HTML5 and LaTeX builder.
2024-07-14 05:52:58 +02:00
James Addison
35e7bfc347 linkcheck: Ignore URLs that respond with non-Unicode content (#12197) 2024-07-14 03:48:38 +01:00
Lingyu Hu
f0d8e2ef5e Provide a better error message if the master document is not included in the project documents (#12011) 2024-07-14 03:22:39 +01:00
Jakob Lykke Andersen
e08f12f848 toctree: Use document nesting instead of domain nesting when adding domain objects (#12367)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2024-07-14 01:16:26 +01:00
David Stansby
159c26715b Display `typing.Annotated` metadata in the Python domain (#11785)
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2024-07-14 00:52:55 +01:00
Adam Turner
469a809ead Increase minimum required dependency versions (#12556) 2024-07-13 08:59:24 +01:00
Trevor Bekolay
2c0943784c Disallow module cycles in autosummary (#6792)
Consider the following piece of reST::

  .. automodule:: sphinx.ext.autosummary
     :members:

     .. autosummary::

        sphinx.ext.autosummary.Autosummary

This inserts an autosummary after the module docstring, but before
the members of the module. Without the change in this commit, this
would fail because `import_by_name` would attempt to import::

    sphinx.ext.autosummary.sphinx.ext.autosummary.Autosumary

because the prefix (from the parent) is `sphinx.ext.autosummary`,
and the name is `sphinx.ext.autosummary.Autosummary`, which is able
to be imported from `sphinx.ext.autosummary`, but is not the way
that anyone would want to refer to it.

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2024-07-13 06:37:50 +01:00
James Addison
a6c2bdd371 Rename template files in Sphinx to use the `.jinja` extension (#12364) 2024-07-11 12:31:35 +01:00
Ashley Whetter
e38a60d3f2 Add `py:type` directive and role for documenting type aliases (#11989)
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2024-07-11 12:15:54 +01:00
James Addison
91c5cd3abd Improve relevance scoring in HTML search results (#12441)
Co-authored-by: Will Lachance <wlach@protonmail.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2024-07-11 11:55:40 +01:00
Stephen Finucane
6b37a6b2a2 Allow explicitly specifying modules in the coverage builder (#11592)
Currently there is no mechanism to identify totally undocumented modules
in the coverage builder, unlike with partially documented modules.
Resolve this by introducing a new ``coverage_modules`` config option.
This is a list of modules that should be documented somewhere
within the documentation tree. 
Any modules that are specified in the configuration value but 
are not documented anywhere will result in a warning. 
Likewise, any modules that are not in the config option but 
are documented somewhere will result in a warning.

Signed-off-by: Stephen Finucane <stephen@that.guru>
2024-07-11 07:36:36 +01:00
Thomas Fanning
6cc1177d10 Allow configuring the separator used in numbering equations (#12523)
Co-authored-by: Thomas Fanning <tom@ferb.ne.anl.gov>
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2024-07-10 22:23:38 +01:00
Adam Turner
82edc3d385 Rewrite `usage/configuration.rst` (#12537)
- Remove now-removed configuration values
- Use obvious 'unset' defaults for ``project`` and ``author``
- Prefer 'e.g.' to 'ex.'
- Allow non-list sequence types in various configuration values
- Add types and defaults to every confval directive
2024-07-10 21:43:14 +01:00
tuncbkose
bdd9140842 Remove custom SVG processing in the HTML builder (#12425)
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2024-07-10 18:31:01 +00:00
James Addison
84c11b2f66 Improve JavaScript test fixture generation (#12531)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2024-07-10 19:00:34 +01:00
M Bussonnier
6e3a191185 Bump Ruff to 0.5.1 (#12530) 2024-07-10 14:13:10 +01:00
Tim Hoffmann
a95d716f7f Add a class option to the toctree directive (#12524)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2024-07-10 11:07:49 +01:00
James Addison
c67ef51df9 Update MyPy for types-docutils 0.21.0.20240708 (#12522) 2024-07-09 20:59:49 +01:00
James Addison
7eb77f2372 HTML Search: omit anchor reference from document titles in the search index. (#12047) 2024-07-08 13:34:11 +02:00
James Addison
e63e2f3ccb Update MyPy for types-docutils 0.21.0.20240704 (#12511)
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2024-07-06 19:29:18 +01:00
Nicolas Peugnet
b23ac4f16e Fix invalid genindex.html file produced with translated docs (#12495) 2024-07-04 03:00:28 +02:00
Bénédikt Tran
3209275a4a Support `typing_extensions.Unpack` (#12258)
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2024-07-03 03:03:41 +01:00
James Addison
778013f91a Regression: restore extraction of data-URI images from source for builders whose output formats do not support them natively (#12344) 2024-07-03 02:16:43 +01:00
Adam Turner
24a0385997 Add `allow_section_headings` to SphinxDirective parsing methods (#12503) 2024-07-02 23:53:58 +01:00
Adam Turner
86c51f3bfa Bump Ruff to 0.5.0 2024-07-02 22:50:35 +01:00
Adam Turner
1887df0b5c Add reStructuredText parsing functions to `SphinxDirective` (#12492) 2024-07-02 22:14:19 +01:00
James Addison
6b237d9a70 [linkcheck] Allow integer for linkcheck_rate_limit_timeout (#12470)
Eliminate type-related warnings when users configure a valid integer value for the `linkcheck_rate_limit_timeout` config setting.

Co-authored-by: Chris Sewell <chrisj_sewell@hotmail.com>
2024-06-24 17:26:24 +00:00
Chris Sewell
bc1a5c5c88 [autogen] Add --remove-old option (#12456)
A common "gotcha" of re-running `sphinx-autogen`, is that if there are changes it will not remove old files, leading to build errors for files not in a `toctree`

This commit introduces a `--remove-old` option to remove these files.

Note, a key detail here is that we don't want to simply clear the directory before running `sphinx-autogen`,
since this would lead to all files having a new `mtime`,
and then `sphinx-build` would rebuild all of them even if they have not changed.
So we must first collect the list of all correct files, then remove any not in the list.
2024-06-21 19:29:46 +02:00
Chris Sewell
d7e1bfeb4b [apidoc] Add --remove-old option (#12448)
A common "gotcha" of re-running `sphinx-apidoc`, is that if the modules API changes it will not remove old files, leading to build errors for files not in a `toctree`

This commit introduces a `--remove-old` option to remove these files.

Note, a key detail here is that we don't want to simply clear the directory before running `sphinx-apidoc`,
since this would lead to all files having a new `mtime`,
and then `sphinx-build` would rebuild all of them even if they have not changed.
So we must first collect the list of all correct files, then remove any not in the list.

The commit also improves some typing of the code and replace `os.path` by `pathlib.Path` in most instances
2024-06-20 13:12:37 +02:00
Thomas Weißschuh
6471027d19 [themes]: Include project name in logo_alt by default (#12421)
The "alt" attribute of an `<img>` is required to convey all information.
Make it clear which logo is shown.
Also make it possible for users to override the logo_alt with a custom value.
2024-06-18 01:47:14 +02:00
Bénédikt Tran
581bcdd140 [config] correctly synchronize `root_doc and master_doc` (#12417) 2024-06-17 18:04:33 +02:00
Thomas Weißschuh
d5bdabdd80 themes: Don't duplicate "navigation" in aria-label (#12422)
The word "navigation" is not supposed to be included as part of the aria-label attribute:
https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/navigation_role
2024-06-17 12:50:34 +02:00
James Addison
799ae16a01 Intersphinx: log warnings for ambiguous target resolutions. (#12329)
This commit adds detection of ambiguous ``std:label`` and ``std:term`` references (due to case-insensitivity)
during loading and resolution of Intersphinx targets,
and emits a warning if found.

Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
Co-authored-by: Chris Sewell <chrisj_sewell@hotmail.com>
2024-06-17 12:42:22 +02:00
James Addison
568e26c797 [tests] JavaScript: refactor test fixtures (#12102)
This PR allows to serve JavaScript test fixtures using a fixture-based logic as for Python tests.

Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2024-06-13 13:07:46 +02:00
Nicolas Peugnet
ac3f74a3e0 [tests] Add intl regression test for term not found warning (#12388)
Add test for term not found warning in test_intl to prevent future regressions
2024-05-19 12:14:13 +02:00
Chris Sewell
3496de62b7 🧪 Fix python 3.13 tests (#12373) 2024-05-15 06:28:40 +02:00
Hugo van Kemenade
c06f246124 sphinx.ext.extlinks: Add extlink-{name} CSS class to links (#12319) 2024-05-15 04:21:11 +02:00
James Addison
9467bf7849 [typehints] tests: enable mypy for linkcheck builder tests. (#12160) 2024-05-15 04:13:57 +02:00
Adam Turner
0d74c85e8c Extract inner check functions in `test_domain_cpp` (#12336) 2024-04-29 02:07:56 +01:00
Adam Turner
938d3732f8 Collapse unions of `Literal types in stringify_annotation` (#12325) 2024-04-25 16:07:10 +01:00
Chris Sewell
49726c28f4 Split `sphinx.ext.intersphinx._load`
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2024-04-25 15:30:55 +01:00
Adam Turner
3b907a1caa Import INVENTORY_FILENAME from canonical location 2024-04-25 13:35:06 +01:00
Benjamin Cabé
a66546895e Properly support WebP in the image converter (#12224)
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2024-04-25 03:43:45 +01:00
Adam Turner
50895827ba Mark `test_restify_Annotated` as an expected failure 2024-04-25 03:07:48 +01:00
Adam Turner
6b70620993 Add a test for `restify(Annotated[...])` 2024-04-24 23:16:22 +01:00
Adam Turner
173b5912e5 linkcheck: Fix test to use dynamic port numbers 2024-04-24 19:36:36 +01:00
Will Lachance
208f4bcb66 HTML Search: Fix removal of unwanted anchor content from search results (#12321) 2024-04-24 19:09:14 +01:00
James Addison
2008aa8c78 linkcheck: Store the original (unquoted) anchor (#12206) 2024-04-24 18:07:31 +00:00
James Addison
9ebc46a74f Remove test result sharing between 'test_html5_output' and 'test_html5_download' (#12119) 2024-04-24 07:45:36 +01:00
James Addison
0806a00f05 Support `.jinja` for theme static templates (#11916)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2024-04-23 10:40:24 +01:00