Commit Graph

939 Commits

Author SHA1 Message Date
Rafael Fontenelle
da076d1854
DOCS: Improve Internationalization guide (#12377)
Documentation needs to mention the new Transifex CLI tool instead of the deprecated transifex-client

Co-authored-by: Chris Sewell <chrisj_sewell@hotmail.com>
2024-06-07 12:30:01 +02:00
Ed Cormany
98f953e158
DOCS: improve :tocdepth: note (#12356) 2024-05-07 04:49:08 +02:00
Françoise Conil
5fc2d515fd
Fix debug option in autosectionlabel documentation (#12324)
Co-authored-by: Françoise Conil <francoise.conil@insa-lyon.fr>
2024-04-24 18:59:30 +01:00
Adam Turner
af271881e2 Add `config.cache` to the list of warning types 2024-04-17 21:23:01 +01:00
James Addison
532ad0306e
linkcheck: Make the new 'timeout' status opt-in (#12023)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2024-04-12 23:18:22 +01:00
Adam Turner
8976fa4498 Support `theme.toml` 2024-04-11 19:01:17 +01:00
Nok Lam Chan
17a84a6443
[doc] clarify units for `linkcheck_rate_limit_timeout` (#12225)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>

This normalizes the description of the configuration value so that its default value's unit is the same as the internal one (i.e., seconds).
2024-04-05 11:51:02 +02:00
Bénédikt Tran
f44ff30673
[doc] cleanup references and update external URLs (#12182) 2024-03-25 11:39:05 +01:00
Chris Sewell
3bedde26a9
🔧 Ruff format python files within docs folder (#12139)
Remove `docs` files from the `exclude` list, and also add the `preview = false` format config, which is shown to reduce diffs to the current code base
2024-03-19 15:23:57 +01:00
Chris Sewell
565d4104d5
👌 Handle external references pointing to object types (#12133)
This commit fixes the issue of `objects.inv` denoting object names, whilst the `external` role only allows for role names. 

As an example, take the `objects.inv` for the sphinx documentation, which contains:

```
py:function
    compile                  : usage/domains/python.html#compile
```

A user might understandably expect that they could reference this using `` :external:py:function:`compile` ``, but actually this would previously error with:

```
WARNING: role for external cross-reference not found: py:function
```

this is because, `function` is the object type, yet `external` expects the related role name `func`.

It should not be necessary for the user to know about this distinction,
so in this commit, we add logic, to first look if the name relates to a role name (as previous, to not be back-breaking) but, if not, then also look if the name relates to an object that has a known role and, if so, use that.

Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2024-03-19 13:42:50 +01:00
Chris Sewell
b0f096f440
Add show_warning_types configuration variable (#12131)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2024-03-19 10:22:28 +01:00
Bénédikt Tran
b2069fb64f
[lint] update Makefile and lint doc (#12117) 2024-03-17 14:45:56 +01:00
Alexandre Franke
1281b158b4
Fix typos in usage/configuration.rst (#12024) 2024-03-07 20:50:46 +01:00
Demetrios Koziris
faa33a53a3
[docs] Clarify how to escape curly braces in `samp` text (#11987)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2024-02-22 09:48:12 +01:00
Harrissou Sant-anna
f4eea669e0
Fix wording for the number of default substitutions (#11985) 2024-02-19 10:14:07 +01:00
Hugo van Kemenade
95b2cce9a0
Add a `versionremoved` directive (#11905)
Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2024-01-21 20:12:52 +00:00
pcgaustad
2ccc9d315e
Give a more plausible example for a combination of tags (#11899) 2024-01-20 19:10:23 +00:00
Nicolas Peugnet
59cf4d4c35
Allow custom targets in the manpage role (#11825)
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2024-01-17 01:09:18 +00:00
Adam Turner
587e01177d Provide example interface for ``Scorer` 2024-01-14 04:47:44 +00:00
Adam Turner
23cef9b59a Use `https://` where possible 2024-01-14 04:18:57 +00:00
James Addison
2b47fd4b4b
Update linkcheck_timeout value and documentation (#11875) 2024-01-13 17:41:28 +00:00
Alex Szatmary
bcb1825679
State that `exclude_patterns` has priority (#11872) 2024-01-12 04:28:47 +00:00
James Addison
5211c01646
Enable reporting HTTP 401 hyperlinks as broken in linkcheck (#11684)
Co-authored-by: picnixz <10796600+picnixz@users.noreply.github.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2024-01-09 12:33:40 +00:00
Dimitri Papadopoulos Orfanos
460a63010f
Fix various spelling errors (#11735) 2024-01-04 02:37:44 +00:00
Adam Turner
3d8b00827e Promote underline levels 2023-10-03 19:39:36 +01:00
Adam Turner
81a8870eee Note that cross-referencing syntax has moved to a new location 2023-10-03 19:39:36 +01:00
Adam Turner
6a56592b30 Move cross-referencing to a new page 2023-10-03 19:32:37 +01:00
Adam Turner
5d58624227 Reformat the domains lists 2023-10-02 13:10:26 +01:00
Adam Turner
f7f41e6828 Fix and standardise markup 2023-10-02 13:10:26 +01:00
Adam Turner
3dd10e47d0 Add versionadded directives 2023-10-02 13:10:26 +01:00
Adam Turner
e15fc04e53 Promote underline levels 2023-10-02 13:10:26 +01:00
Adam Turner
385a9193a7 Remove redundant labels 2023-10-02 13:10:26 +01:00
Adam Turner
607aadc660 Split out the Maths domain 2023-10-02 13:10:26 +01:00
Adam Turner
c6dd47d2c8 Split out the reStructuredText domain 2023-10-02 13:10:26 +01:00
Adam Turner
f6bafc7dad Split out the JavaScript domain 2023-10-02 13:10:25 +01:00
Adam Turner
c8b2191059 Split out the Standard domain 2023-10-02 13:10:12 +01:00
Adam Turner
de3266ab25 Split out the C++ domain 2023-10-02 13:10:12 +01:00
Adam Turner
db6cc67f1a Split out the C domain 2023-10-02 13:10:12 +01:00
Adam Turner
d491d3e04c Split out the Python domain 2023-10-02 13:10:12 +01:00
Adam Turner
05682f12a6 Restore `usage/restructuredtext/domains` 2023-10-02 13:10:11 +01:00
Adam Turner
c0e17eca40 Move the domains reference up one level 2023-10-02 13:09:38 +01:00
Adam Turner
b935915c57
Improve make-mode documentation (#11692) 2023-09-21 09:39:39 +01:00
Nikita Sobolev
1bd261c3a0
Fix a typo in the `:final:` option for methods (#11670) 2023-09-14 09:50:49 +01:00
Hugo van Kemenade
359edc34fc
Use the Python 3 `print()` function in the documentation (#11683) 2023-09-14 09:45:20 +01:00
Adam Turner
7e9a2066c2 Be more ephemeral (in anchor link title text) 2023-08-12 05:30:38 +01:00
blaisep
b0fe730146 Fix #11407 adjust the spelling in the example. 2023-07-30 15:08:49 +02:00
Adam Turner
1cfb68d8be
Consistently name the object description options (#11533)
*  The directive option ``:noindex:`` was renamed to ``:no-index:``.
*  The directive option ``:noindexentry:`` was renamed to ``:no-index-entry:``.
*  The directive option ``:nocontentsentry:`` was renamed to ``:no-contents-entry:``.

The previous names are retained as aliases, but will be deprecated
and removed in a future version of Sphinx (9.0 or later).
2023-07-28 22:30:26 +01:00
Adam Turner
ff20efcd7e
Tweaks to `doctest_show_successes` (#11535) 2023-07-28 22:29:04 +01:00
latosha-maltba
97d2c5da2f
Add the `:no-typesetting:` option for only creating targets (#10478)
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2023-07-28 19:43:27 +01:00
benkrikler
762ed8540a
Add line numbers in `sphinx.ext.viewdoc` (#6319)
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2023-07-28 05:52:48 +01:00
Jorge Leitao
99f9209924
Add summary statistics to the coverage report (#5474)
The current implementation of ``sphinx.ext.coverage`` outputs which
methods,classes, and functions are documented.
This commit adds a short summary of this report in terms of
``documented objects / total number of objects``,
both per module and total.

The purpose of this is to support
a currently not mainstream but relevant use-case:
a coverage report on the number of objects that are documented.

By having the statistics on the report or on the stdout,
a regex expression can capture the coverage percentage
(e.g. ``re.search(r'TOTAL.*?([0-9.]{4,6}\%)', d).group(1)``)
and use it e.g. in another report, a status badge, etc.

Two options were added to the configuration to allow a table
to be printed in the report and/or to stdout.

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2023-07-28 02:33:42 +01:00
Adam Turner
ad61e41157
Drop support for Python 3.8 (#11511) 2023-07-25 02:07:23 +01:00
Adam Turner
066e0fabc6
Add translation progress information (#11509)
Co-authored-by: Manuel Kaufmann <humitos@gmail.com>
2023-07-24 20:19:31 +01:00
picnixz
82bc15aec3
Enable skipping anchor verification on a per-URL basis (#11489)
Add a new ``linkcheck_anchors_ignore_for_url`` configuration variable.

Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2023-07-24 12:15:42 +01:00
picnixz
480630c649
Support PEP 695 and PEP 696 syntax in the Python domain (#11444)
* Generic classes can be documented with ``.. py:class::`` using PEP 695 syntax:

  .. code:: rst

     .. py:class:: Sequence[T]

* Generic functions can be documented with ``.. py:function::`` using PEP 695 syntax:

  .. code:: rst

     .. py:function:: foo[T](x: T)

* Default values for type bounds are supported.

Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2023-07-23 23:22:40 +01:00
Adam Turner
de3aa8a318 Replace non-functional Bitbucket URLs
- ``sphinx-contrib`` has moved to GitHub
- Replace personal project links with links to the Bitbucket archive
2023-07-14 06:52:25 +01:00
Stefanie Molin
e09d02e440
Allow `copyright` to contain multiple entries (#10983)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2023-05-11 22:43:48 +01:00
TLouf
86b07d4a97
Allow multi-line object description signatures (#11011)
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
Co-authored-by: Jean-François B <2589111+jfbu@users.noreply.github.com>
Co-authored-by: TLouf <loufthomas@gmail.com>
2023-05-11 14:28:57 +01:00
Adam Turner
706f5f9cc8
Warn on deprecated Python-specific index types (#11412) 2023-05-09 22:57:39 +01:00
Adam Turner
2a9e805206
Remove the deprecated Setuptools integration (#11363) 2023-04-27 01:22:04 +01:00
Maciej Olko
5a6b2b16b6
Add link to Weblate's Sphinx docs in intl documentation (#11332)
Add link to Weblate in intl documentation
2023-04-16 21:21:57 +02:00
Adam Turner
7ecf037280 Enable 'nit-picky mode' for Sphinx's documentation
Fix several reference errors throughout the documentation and set
``nitpick_ignore`` in ``doc/conf.py``.
2023-04-06 23:11:39 +01:00
Adam Turner
4a3febb69a
Add an option for displaying short `Literal` types (#11109)
The new ``python_display_short_literal_types`` configuration option
for the ``py`` domain controls display of PEP 586 ``Literal`` types.
The 'short' format is inspired by PEP 604, using the bitwise OR operator
to distinguish the possible legal values for the argument.
2023-04-05 13:07:25 +01:00
Jean-François B
e1b15a5c11 Update doc and CHANGES for PR #11281 2023-04-03 11:12:41 +02:00
Hugo van Kemenade
318914fff2
Fix syntax in `:manpage:` role example (#11249) 2023-03-24 01:36:58 +00:00
Adam Turner
f5c957597d Normalise spelling of Sphinx versions 2023-03-24 00:44:33 +00:00
Benjamin Balder Bach
eda388a506
Docs: Add a link to sphinx-extensions (#11260) 2023-03-23 08:33:16 +01:00
Adam Turner
2902c6c55b
Deprecate legacy `intersphinx_mapping` format (#11247)
This format was made obsolete in Sphinx 1.0, but never formally deprecated.
2023-03-17 16:41:22 +00:00
Hugo van Kemenade
ba4c67b1dc
Display examples of roles in the documentation (#11226)
Show examples of roles in the docs so we can see how they look. 
Seeing how roles are displayed helps us decide whether to use them.
2023-03-17 15:05:09 +00:00
Mike Taves
23bf041ce4
Remove unicode prefix (`u`) from strings (#11158) 2023-02-15 04:37:33 +00:00
Hugo van Kemenade
7f62f539be
Correct the Python Developer Guide markup style advice link (#11189) 2023-02-11 13:19:51 +00:00
Jean-François B
ddf4daf2c6
Doc of html_file_suffix (closes #11141) (#11144) 2023-01-22 19:32:12 +01:00
Adam Turner
670bcb743b
Documentation reshuffle (#11112) 2023-01-08 13:52:36 +00:00
Tim Hoffmann
ec26c2f874
Document autosummary template variable "objtype" (#11044) 2023-01-02 18:38:17 +00:00
Harrissou Sant-anna
da6a20d50b
Fix typos in usage/configuration.rst (#10834) 2023-01-02 04:48:53 +00:00
Hugo van Kemenade
dc29bf9abe
Docs: Update devguide link (#11017)
Update devguide link
2022-12-16 16:42:11 +01:00
Jérémie Tarot
d8977d3e57
docs: intl.rst: small fixes while translating (#11020) 2022-12-07 13:53:44 +01:00
Jean-François B
b1ca6b3e12
Fix #10984 [DOC] document latex_additional_files behavior with .tex (#10993) 2022-11-30 18:52:48 +01:00
Adam Turner
920828fe35 Run the `pyupgrade` tool 2022-10-17 22:39:09 +01:00
Jean-François B
49c48f5aee
LaTeX: switch to some nicer defaults for tables and code-blocks (#10924) 2022-10-17 11:19:25 +02:00
Jean-François B
78cf903bc1
Update documentation of latex builder (#10925) 2022-10-17 10:54:31 +02:00
Adam Turner
592b46c431
Revert `html_codeblock_linenos_style` removal (#10922) 2022-10-16 16:50:53 +01:00
Adam Turner
e70a0fac6d Merge branch '5.x'
# Conflicts:
#	.github/workflows/main.yml
#	CHANGES
#	sphinx/__init__.py
#	sphinx/domains/c.py
2022-10-16 11:24:18 +01:00
Jean-François B
b5ba1ede2a s/5.2.0/5.3.0 in various code comments as #10759 got merged in 5.3.0 2022-10-12 17:41:39 +02:00
Jean-François B
e7c0881992
LaTeX: support for booktabs-style and zebra-striped tables (#10759)
This is a combination of 2 + 28 + 7 + and some more commits...

* Cherry-pick: Add support for booktabs-style tables to LaTeX builder

* Cherry-pick: Add support for zebra-striped tables to LaTeX builder

Co-authored-by: Stefan Wiehler <stefan.wiehler@missinglinkelectronics.com>

Above work originally initiated by @sephalon (thanks!)

Development refactored and continued by @jfbu

* latex_table_style configuration, support booktabs, colorrows, borderless

Some details:

- Simplify a bit a conditional in the longtable template

  This also puts the target for a longtable with a label but no caption
  above the toprule for better hyperlinking (testing shows hyperlink
  target can not end up alone at bottom of previous page).

- Extend allowed syntax for colour assignments via 'sphinxsetup'

- latex_table_style new configuration value and coloured rows

  For the user interface I tried to look for inspiration in
  https://docutils.sourceforge.io/docs/user/config.html#table-style
  which mentions booktabs and borderless.  They also mention
  captionbelow which we can implement later, now that architecture
  is here.  They don't mention coloured rows.

- Test on our own document... looks fine!

- Work-around an incompatibility of \cline with row colours

- Reverse priority of classes to allow overruling booktabs by standard
  after parsing source but before letting LaTeX writer act

- Closes #8220

  Commit
  bb859c6696
  already improved a bit, this finishes it (as :rst:dir:`rst-class` was
  actually not linking to anywhere).

- Let booktabs style defaults to *not* using \cmidrule.  They actually
  don't make much sense there, as all \hline's are removed.

- Add \sphinxnorowcolor which allows construct such as this one in
  a tabularcolumns directive:

    >{\columncolor{blue}\sphinxnorowcolor}

  else LaTeX always overrides column colour by row colour

- Add TableMergeColorHeader, TableMergeColorOdd, TableMergeColorEven
  so single-row merged cells can be styled especially

- Extend row colours to all header rows not only the first one
  (all header rows will share same colour settings)

- Auto-adjust to a no '|'-colspec for optimal handling of merged cell

- Add \sphinxcolorblend

- Workaround LaTeX's \cline features and other grid tables matters

- Add \sphinxbuildwarning for important warnings

- Fix some white gaps in merged cells of tables with vlines and
  colorrows

- Work around LaTeX's \cline serious deficiencies for complex grid
  tables

  This commit corrects \cline badly impacting vertical spacing and
  making tables look even more cramped as they usually are in LaTeX
  (although one sees it clearly only with \arrarrulewidth a bit more
  than the LaTeX default of 0.4pt).

  Most importantly this commit solves the problem that \cline's got
  masked by colour panels from the row below.

- Update CHANGES for PR #10759

- Improve documentation of new latex_table_style regarding colours
2022-10-12 17:15:40 +02:00
Martin Patz
3e29abf8de
Add debug logging to autosectionlabel (#10881)
Co-authored-by: Martin Patz <martin@recogni.com>
2022-10-04 15:25:06 +01:00
Martin Liška
0a91adb64d
Extend cross referencing options with values (#10883)
This change means that text following `=`, `[=`, or ` ` is ignored when
searching for a corresponding option directive to an option cross reference
role. These are commonly used options, for example `--profile=path`, 
`--profile[=path]` or `--profile path`.

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2022-10-02 15:50:53 +01:00
Adam Turner
63dea6172a Merge branch '5.x'
# Conflicts:
#	sphinx/locale/__init__.py
2022-09-30 16:15:24 +01:00
Adam Turner
2906071198 Merge branch '5.2.x' into 5.x
# Conflicts:
#	CHANGES
#	sphinx/__init__.py
2022-09-30 16:13:11 +01:00
Adam Turner
650f63b9f7
Finer grained control over domain ToC entries (#10886)
- Implement `:nocontentsentry:` flag
- Use `:nocontentsentry:` in docs
- Add domain object table of contents configuration option
2022-09-30 10:31:58 +01:00
Martin Liska
29e6adab12 extend option directive syntax
One can cross-reference an option value: :option:`--module=foobar`.
2022-09-27 19:02:45 +01:00
Adam Turner
4660b62de0 Drop Python 3.7 2022-09-27 18:31:47 +01:00
Adam Turner
56aa3412ef Merge branch '5.x'
# Conflicts:
#	setup.py
#	sphinx/__init__.py
2022-09-23 17:27:00 +01:00
Julien Schueller
ef01c5b6bd
imgmath: Allow embedding images in HTML as base64 (#10816)
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2022-09-23 17:11:21 +01:00
Adam Turner
f57177de89
Add contents entries for domain objects (#10807)
- Add entries in the table of contents for domain objects (e.g. 
  `py:function`, `rst:role`, etc). Supported domains are Javascript,
  Python, and reStructuredText.
- Support content in `py:module` and `js:module` directives.
- Add the `noindexentry` and `noindex` flags to more domains.
- Add `toc_object_entries_show_parents` configuration setting
- Update documentation and tests
2022-09-13 20:20:02 +01:00
Adam Turner
ee005caf22 Do not apply epigraph style to all block quotes
Correct indentation where appropriate for stanzas that should not be
rendered as `<blockquote>` HTML elements.

Closes GH-10686
2022-09-12 19:54:36 +01:00
Jean-François B
5c82449eca Merge branch '5.x' 2022-08-06 18:31:14 +02:00
Abdur-Rahmaan Janhangeer
59056aa781
Remove extra line (#10749)
Co-authored-by: Jean-François B. <2589111+jfbu@users.noreply.github.com>
2022-08-04 18:42:55 +02:00
Adam Turner
19b54dce6a Merge branch '5.x'
# Conflicts:
#	CHANGES
#	sphinx/__init__.py
2022-07-24 14:15:26 +01:00
Adam Turner
e3337c78c6
Update include_patterns implementation (#10680) 2022-07-23 21:19:35 +01:00