-
-
Notifications
You must be signed in to change notification settings - Fork 32.7k
Fixed #36535 -- Ensured compatibility with docutils 0.19 through 0.22. #19693
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
14271f0
to
8cf2c0a
Compare
I believe we should backport this change to 5.2.x, 5.1.x, and 4.2.x. None of those branches pin docutils beyond requiring a minimum version of 0.19 (and 4.2.x does not even require any minimum). Once Sphinx releases with support for docutils 0.22, test runs on those stable branches will start failing due to incompatibility with the admindocs code using This also affects production usage when projects install dependencies from scratch or update them periodically. Since docutils 0.22 lists support for Python 3.9 and above, it is a valid candidate for Django 4.2.x environments (Python 3.8 is already EoL and thus longer listed as supported). |
Hey @carltongibson, @felixxm! Sarah and I would need some input from you as former Fellows about whether there is a established policy or expectation around the following: A recent I'm in favor of backporting because:
Sarah would be against backporting because:
We'd appreciate your guidance on what's expected here: whether we should treat support for newer versions of dependencies as something we actively maintain across all supported branches, or whether that's out of scope unless there's a pressing reason. Thanks! |
I'd not be so generous (at it's probably against our backport policy) 🤔 . In the past we backported such changes only to releases in the mainstream support (not in extended support) for other releases I'd pin versions. For example ticket-31751: |
Yes, same here. There's no ground for a backport to the extended support branches. Backporting a pin and a docs change would be OK, if we think that has value. (If I'm still on Django 4.2, say, now I'm going to test and spot a break in a dependency update and pin that myself.) |
8cf2c0a
to
62904cb
Compare
Thank you both! I've pushed the removal of 4.2.24 and 5.1.12 release notes. |
Doc tweaks for 5.1.x: #19694 |
Regression in 5aefd00.
Trac ticket number
ticket-36535
Branch description
This change ensures compatibility with both older and newer versions of Docutils, including recent version 0.22.
Docutils 0.22 includes this change, which allows the writer parameter to be either a string or an instance. However, older versions only accept the writer name as a string passed via the writer_name argument (which was removed in 0.22). The good news is that older version already accepted an writer param which should be given a writer instance.
To support versions from 0.19 through 0.22 and beyond, this change updates the logic to create a writer instance explicitly, avoiding version-specific behavior.
Checklist
main
branch.