Sphinx does not work with docutils 0.21.1 #12263
Replies: 2 comments 4 replies
-
Hi @rikardn - thanks for the suggestion; from my perspective I tend to think that Sphinx is following a reasonably good practice here. I do agree that there are sometimes good reasons not to range-limit dependency versions, but the choice of whether to do so (either for In the case of Sphinx, a fairly well-deployed project that wants to cautiously upgrade the core reStructuredText-processing Even so: I do believe that early testing of dependencies is useful, especially from users who are familiar with projects. So I would encourage you to upgrade, but I would not encourage Sphinx to upgrade everyone's defaults until the project itself is comfortable to do so. (security upgrades can be something of an exception to this rule, although even then I think there can be reasons to be careful, and sometimes to backport changes to prior versions) To achieve your upgrade, I'd note that removing the My understanding from reading a relevant Those kinds of overheads tend to apply ecosystem-wide - during learning about systems, during packaging and release, during maintenance, during development, bugreporting, testing, investigations, auditing, continuous integration, and so on - so even apparently-small improvements that seem to address a reasonable-sounding use-case can in fact cause problems that drag on an entire community. That's a frustration that I frequently find when trying to get small changes for things I care about introduced in other systems, and it can be annoying, but simplicity is extremely beneficial in software engineering. Dependency versioning and compatibility for code is, I think, a fairly intrinsically hard problem - perhaps the API-versioning side of it is mostly-tractable given strongly-enough typed languages, but runtime behaviour is also a consideration, and, to my knowledge, that's difficult to express or constrain using version numbers. On a theoretical-possibilities note, I'd also theorize that if a future So: please do upgrade if you're ready, but I'm fairly skeptical about whether Sphinx should remove the version range. |
Beta Was this translation helpful? Give feedback.
-
Docutils 0.21 is now supported. |
Beta Was this translation helpful? Give feedback.
-
Describe the bug
When trying to use the latest version of docutils together with Sphinx 7.2.6 I get the following error:
This is a repetition of #11414
The sdist on PyPI for
docutils
0.21 was incomplete so the 0.21.1 is an important fix.Perhaps again you could consider not capping the
docutils
version since it hinders downstream users to handle dependency issues like this. This stance is further explained in the following blog post (linking to the TL;DR): https://iscinumpy.dev/post/bound-version-constraints/#tldrHow to Reproduce
In requirements.txt:
Environment Information
Sphinx extensions
No response
Additional context
No response
Beta Was this translation helpful? Give feedback.
All reactions