Commit Graph

19665 Commits

Author SHA1 Message Date
Eric Wieser
fa6d42597f URI-escape image filenames (#10268)
Without this change, local images with `#` in their name result in incorrect URLs

There is already a similar call to `urllib.parse.quote` for file downloads, suggesting this is a sensible approach.

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Takeshi KOMIYA <i.tkomiya@gmail.com>
2022-10-13 17:37:07 +01:00
Martin Liška
e008e16200 Revert "Fix detection for out of date files (#9360)" (#10908)
This reverts commit b1390c4191.

The change is reverted because some builders don't have
fine-grained support for outdated docs:
https://github.com/sphinx-doc/sphinx/issues/10903#issuecomment-1273199352
2022-10-13 13:16:17 +01:00
Adam Turner
cef1a030cd Update image for LaTeX job (#10916) 2022-10-12 23:01:55 +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
3deb5275be Update CHANGES for PR #10759 2022-10-12 17:27:20 +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
Julien Schueller
c51a88da8b Fix performance regression for `imgmath` embedding (#10888)
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2022-10-09 15:55:02 +01:00
Anthony Sottile
6ed4bbba39 Don't display 'replaceable hardcoded link' when link has a slash (#10137) 2022-10-05 14:47:16 +01:00
Martin Liška
b1390c4191 Fix detection for out of date files (#9360)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2022-10-05 14:44:41 +01:00
Martin Liška
3d25662550 Update CHANGES for :option: reference format changes (#10892) 2022-10-05 13:40:56 +01:00
Adam Turner
26fe10f0b7 Fix disabling cross-references in pre-v3 C domain (#10890) 2022-10-05 13:37:47 +01:00
Julien Schueller
ad5e17beb3 Fix cleanup_tempdir in imgmath (#10895) 2022-10-05 13:36:24 +01: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
7765940f14 Ensure non-builtin extensions use the proper version 2022-09-30 19:10:48 +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
cbb19d6947 Bump to 5.2.3 final v5.2.3 2022-09-30 16:08:16 +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
Julien Schueller
7514e5c6d4 CI: Move LaTeX job to GitHub Actions (#10884)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2022-09-30 00:03:51 +01:00
danieleades
bf36a7905a shrink 'any-generics' whitelist for the 'deprecation' module (#10849) 2022-09-29 23:47:58 +01:00
danieleades
6e113d4e90 Use a module level constant as best practice (#10876) 2022-09-29 19:07:29 +01:00
danieleades
3c73efadab shrink 'Any generics' mypy whitelist for builders module (#10846) 2022-09-29 17:26:53 +01:00
danieleades
8267dc4fde shrink 'any-generics' whitelist for the 'locale' module (#10866) 2022-09-29 17:16:36 +01:00
Julien Schueller
66276185ef imgmath: Fix embed mode (#10878) 2022-09-29 15:37:24 +01:00
Adam Turner
5ed06f5324 Restore annotations in sphinx.locale to objects 2022-09-28 11:04:42 +01:00
Adam Turner
0466fa88eb Refactor sphinx.locale
- Skip typing imports
- Simplify `translators`
2022-09-28 09:19:09 +01:00
Adam Turner
363cdc0906 Refactor locale._TranslationProxy 2022-09-28 09:17:11 +01:00
danieleades
6dbb618834 Shrink 'any-generics' whitelist for the pycode module (#10868) 2022-09-28 09:13:48 +01:00
Adam Turner
b437f094a7 Add default arguments to locale.init_console() 2022-09-27 19:06:25 +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
danieleades
05683f794c Shrink 'any-generics' whitelist for the cmd module (#10847) 2022-09-27 17:56:35 +01:00
King Phyte
061c8ad528 fix typo in extrapackages example (#10835)
Co-authored-by: Jean-François B <2589111+jfbu@users.noreply.github.com>
2022-09-27 18:01:34 +02:00
Adam Turner
7d67371f38 Update .readthedocs.yml configuration (#10874) 2022-09-27 16:00:57 +01:00
Adam Turner
8accc34966 Merge branch '5.2.x' into 5.x
# Conflicts:
#	CHANGES
#	sphinx/__init__.py
2022-09-27 15:58:00 +01:00
Adam Turner
a651e6bf4a Bump to 5.2.2 final v5.2.2 2022-09-27 15:54:01 +01:00
Adam Turner
335f335a58 Restore anchor links to top of module docstring 2022-09-27 15:53:38 +01:00
Adam Turner
19c278313b Correct error in release date for Sphinx 5.2.1 2022-09-27 15:51:46 +01:00
Adam Turner
635540c180 Restore anchor links to top of module docstring 2022-09-27 15:48:54 +01:00
Adam Turner
89b4f14b44 Fix mypy violations for v0.981 (#10875) 2022-09-27 15:18:20 +01:00
Hugo van Kemenade
d5b28997f2 Declare support for Python 3.11 (#10871) 2022-09-27 14:21:55 +01:00
Jean-François B
92a508a10f Merge pull request #10783 from sphinx-doc/bot/pull-translations
Update message catalogs
2022-09-26 21:43:29 +02:00
Stephen Finucane
49eeb0e846 Validate filenames in builder
This moves the logic for checking filenames closer to where it's
actually used.

Signed-off-by: Stephen Finucane <stephen@that.guru>
2022-09-26 17:50:57 +01:00
Stephen Finucane
9ab21ce51a Combine 'compile_xxx' and 'build_xxx' functions
These are only called from the one location and we already use 'build'
to do both building and writing. Given that we intend to simplify the
handling of the 'filenames' argument, this makes our lives there much
easier.

Signed-off-by: Stephen Finucane <stephen@that.guru>
2022-09-26 17:50:57 +01:00
Stephen Finucane
6adbb006f9 Use path2doc rather than reinventing the wheel
We already have a helper function that allows us to convert a filename
to a "docname". Don't reinvent the wheel and simply use this when
building specific files with Sphinx. Note that this does change behavior
slightly, insofar as filenames that don't resolve to valid docnames will
now be ignored rather than being passed with their suffix and silently
ignored later, but that seems sane.

Signed-off-by: Stephen Finucane <stephen@that.guru>
2022-09-26 17:50:57 +01:00
Adam Turner
eb5b3aa25d Merge branch '5.2.x' into 5.x
# Conflicts:
#	CHANGES
#	sphinx/__init__.py
2022-09-25 21:33:04 +01:00
Adam Turner
e0dbbc510a Bump to 5.2.1 final v5.2.1 2022-09-25 20:39:57 +01:00
Adam Turner
15c1cba28e Fix error in changelog for Sphinx 5.2.0 2022-09-25 20:39:57 +01:00
Adam Turner
77cee67f11 Define extra indent as a class attribute 2022-09-25 20:23:53 +01:00
tk0miya
819ad1bfe0 Update message catalogs 2022-09-25 00:23:49 +00:00
Adam Turner
9ced736316 Fix highlighting lexers
- Ensure `pycon3` is always normalised to `pycon`
2022-09-25 00:10:59 +01:00