Opened 2 years ago

Closed 2 years ago

Last modified 2 years ago

#33247 closed Bug (fixed)

PDF documentation build broken

Reported by: AndrewN Owned by: AndrewN
Component: Documentation Version: 3.2
Severity: Normal Keywords:
Cc: Triage Stage: Accepted
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

https://readthedocs.org/projects/django/builds/ shows that PDF builds of the docs are failing.

The error message in a log from a recent build:

  File "/home/docs/checkouts/readthedocs.org/user_builds/django/checkouts/latest/django/__init__.py", line 1, in <module>
    from django.utils.version import get_version
  File "/home/docs/checkouts/readthedocs.org/user_builds/django/checkouts/latest/django/utils/version.py", line 73, in <module>
    @functools.lru_cache
  File "/home/docs/checkouts/readthedocs.org/user_builds/django/envs/latest/lib/python3.7/functools.py", line 490, in lru_cache
    raise TypeError('Expected maxsize to be an integer or None')
TypeError: Expected maxsize to be an integer or None

The last generated PDF has a date of September 27 and on that date in 5bac1719a2fcb “Refs #32355 -- Used @functools.lru_cache as a straight decorator”, lru_cache() was changed to lru_cache on that line.

I believe the issue is that readthedocs is currently using a too-old version of python for the documentation build.

Change History (13)

comment:2 by Carlton Gibson, 2 years ago

Owner: changed from nobody to AndrewN
Status: newassigned
Triage Stage: UnreviewedAccepted

comment:3 by Mariusz Felisiak, 2 years ago

Is seems that "Read The Docs" uses quite old Sphinx 1.8.5 by default, we should install at least 3.1.0 to get support for Python 3.8. See logs.

comment:4 by GitHub <noreply@…>, 2 years ago

In 447b6c86:

Refs #33247 -- Corrected configuration for Read The Docs.

This pins Sphinx version, because the default Sphinx version used by
RTD is not compatible with Python 3.8+.

This also, sets Python 3.8 for RTD builds which is compatible with all
current versions of Django.

Thanks to Mariusz Felisiak for the suggestion.

comment:5 by Mariusz Felisiak, 2 years ago

Resolution: fixed
Status: assignedclosed

In 0da7a2e9dab81b622a2000536c6a96de7f46e237

Fixed #33247 -- Added configuration for Read The Docs.

comment:6 by Mariusz Felisiak <felisiak.mariusz@…>, 2 years ago

In df452a22:

[4.0.x] Fixed #33247 -- Added configuration for Read The Docs.

Co-authored-by: Andrew Neitsch <andrew@…>

Backport of 0da7a2e9dab81b622a2000536c6a96de7f46e237 from main

comment:7 by Mariusz Felisiak <felisiak.mariusz@…>, 2 years ago

In 2877d264:

[4.0.x] Refs #33247 -- Corrected configuration for Read The Docs.

This pins Sphinx version, because the default Sphinx version used by
RTD is not compatible with Python 3.8+.

This also, sets Python 3.8 for RTD builds which is compatible with all
current versions of Django.

Thanks to Mariusz Felisiak for the suggestion.
Backport of 447b6c866f0741bb68c92dc925a65fb15bfe7995 from main

comment:8 by Mariusz Felisiak <felisiak.mariusz@…>, 2 years ago

In 327dac6e:

[3.2.x] Fixed #33247 -- Added configuration for Read The Docs.

Co-authored-by: Andrew Neitsch <andrew@…>

Backport of 0da7a2e9dab81b622a2000536c6a96de7f46e237 from main

comment:9 by Mariusz Felisiak <felisiak.mariusz@…>, 2 years ago

In 9d171643:

[3.2.x] Refs #33247 -- Corrected configuration for Read The Docs.

This pins Sphinx version, because the default Sphinx version used by
RTD is not compatible with Python 3.8+.

This also, sets Python 3.8 for RTD builds which is compatible with all
current versions of Django.

Thanks to Mariusz Felisiak for the suggestion.

Backport of 447b6c866f0741bb68c92dc925a65fb15bfe7995 from main.

comment:10 by Mariusz Felisiak <felisiak.mariusz@…>, 2 years ago

In 029c830b:

[2.2.x] Fixed #33247 -- Added configuration for Read The Docs.

Co-authored-by: Andrew Neitsch <andrew@…>

Backport of 0da7a2e9dab81b622a2000536c6a96de7f46e237 from main

comment:11 by Mariusz Felisiak <felisiak.mariusz@…>, 2 years ago

In 9a4a2b20:

[2.2.x] Refs #33247 -- Corrected configuration for Read The Docs.

This pins Sphinx version, because the default Sphinx version used by
RTD is not compatible with Python 3.8+.

This also, sets Python 3.8 for RTD builds which is compatible with all
current versions of Django.

Thanks to Mariusz Felisiak for the suggestion.

Backport of 447b6c866f0741bb68c92dc925a65fb15bfe7995 from main.

comment:12 by Mariusz Felisiak <felisiak.mariusz@…>, 2 years ago

In 95a4db3:

Refs #33247 -- Fixed rendering of Unicode chars and emojis in PDF docs build.

comment:13 by GitHub <noreply@…>, 2 years ago

In adb4100e:

Refs #33247 -- Used XeLaTeX for PDF docs build.

Note: See TracTickets for help on using tickets.
Back to Top