doc: Remove sphinxcontrib-seqdiag Python package from RTD builds#66787
Conversation
This is a proactive PR to avoid breaking docs builds when Setuptools 81 starts to be used in the RTD builds process. The sphnixcontrib-seqdiag Python package is not compatible with Setuptools 81 or later due to use of pkg_resources: https://setuptools.pypa.io/en/latest/pkg_resources.html Setuptools 81 release should be imminent, with the Python deprecation warning stating pkg_resources "removal as early as 2025-11-30". Seqdiag seems to be unmaintained with the latest update at Pypi in the year 2021 and also no updates to the seqdiag git repo. There are no seqdiag directives left in the docs after last seqdiags were removed in PR ceph#52308. Two other options would exist for fixing the situation (see PR for discussion) but this seems to be the suitable one. Signed-off-by: Ville Ojamo <14869000+bluikko@users.noreply.github.com>
e4b950c to
15481e5
Compare
|
The RTD build succeeds without any additional warnings/errors/etc. and the warning about
This PR is ready for review. |
|
Makes sense to me, great job giving context to support the removal. Might I request a followup PR to:
Yes, generating these from DSL is more elegant, but as this PR shows, that comes with baggage. I'm kind of astounded that Ditaa still works, but that's a rabbithole for another day. |
This is a proactive PR to avoid breaking docs builds when Setuptools 81 starts to be used in the RTD builds process.
The
sphnixcontrib-seqdiagPython package is not compatible with Setuptools 81 or later due to use ofpkg_resources: https://setuptools.pypa.io/en/latest/pkg_resources.html. Warning in RTD build due to use of deprecatedpkg_resources:/home/docs/checkouts/readthedocs.org/user_builds/ceph/envs/66783/lib/python3.9/site-packages/sphinxcontrib/seqdiag.py:19: UserWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html. The pkg_resources package is slated for removal as early as 2025-11-30. Refrain from using this package or pin to Setuptools<81.Setuptools 81 release should be imminent, with the Python deprecation warning stating
pkg_resources"removal as early as 2025-11-30".Seqdiag seems to be unmaintained with the latest update at Pypi in the year 2021 and also no updates since in the git repo.
There are no seqdiag directives left in the docs after last seqdiags were removed in PR #52308.
Two other options would exist for fixing the situation but this seems to be the suitable one:
setuptools<81: this could have adverse effects later if we'd be stuck forever in an old Setuptools version.seqdiagcode: this does not seem to be worthwhile when the functionality of the package is not even used.This PR also removes following Python packages that were dependencies of only
sphinxcontrib-seqdiag:blockdiagfunctionality was never configured in Sphinx; only theseqdiag(which seems to be a part of the "blockdiag suite") was configured.Contribution Guidelines
To sign and title your commits, please refer to Submitting Patches to Ceph.
If you are submitting a fix for a stable branch (e.g. "quincy"), please refer to Submitting Patches to Ceph - Backports for the proper workflow.
When filling out the below checklist, you may click boxes directly in the GitHub web UI. When entering or editing the entire PR message in the GitHub web UI editor, you may also select a checklist item by adding an
xbetween the brackets:[x]. Spaces and capitalization matter when checking off items this way.Checklist
Show available Jenkins commands
jenkins test classic perfJenkins Job | Jenkins Job Definitionjenkins test crimson perfJenkins Job | Jenkins Job Definitionjenkins test signedJenkins Job | Jenkins Job Definitionjenkins test make checkJenkins Job | Jenkins Job Definitionjenkins test make check arm64Jenkins Job | Jenkins Job Definitionjenkins test submodulesJenkins Job | Jenkins Job Definitionjenkins test dashboardJenkins Job | Jenkins Job Definitionjenkins test dashboard cephadmJenkins Job | Jenkins Job Definitionjenkins test apiJenkins Job | Jenkins Job Definitionjenkins test docsReadTheDocs | Github Workflow Definitionjenkins test ceph-volume allJenkins Jobs | Jenkins Jobs Definitionjenkins test windowsJenkins Job | Jenkins Job Definitionjenkins test rook e2eJenkins Job | Jenkins Job DefinitionYou must only issue one Jenkins command per-comment. Jenkins does not understand
comments with more than one command.