sqlalchemyorg / zzzeeksphinx

zzzeek's sphinx layout (used by SQLAlchemy, Mako templaets)
Other
4 stars 4 forks source link

RFE: please provide update for sphinx 6.x #18

Closed kloczek closed 1 year ago

kloczek commented 1 year ago

https://github.com/sqlalchemyorg/zzzeeksphinx/blob/c82613b1c491846bf642e178c34bbccc27740134/setup.py#L38

sphinx 5.3.x is no longer maintained.

zzzeek commented 1 year ago

sphinx 5.3.0 was released just last october just seven months ago. demanding this change right now is unreasonable

kloczek commented 1 year ago

Maybe below numbers will convince you that it is already time to start move towards sphinx 6.x ..

[tkloczko@pers-jacek SPECS]$ ls -1 python-* |wc -l; grep %sphinx_build_man python-* | wc -l; grep -l %sphinx_build_man python-* | xargs grep "%bcond_with       doc" | wc -l
1121
553
21

Those numbers means:

Really sorry .. I'm only messanger.

kloczek commented 1 year ago

Probably at the moment more of those python modules would be not possible to build documentation becaue older and no longer maintained python 5.x incompatibilities.

zzzeek commented 1 year ago

Maybe below numbers will convince you that it is already time to start move towards sphinx 6.x ..

wow. Sorry, 7 months old package is not old

[tkloczko@pers-jacek SPECS]$ ls -1 python-* |wc -l; grep %sphinx_build_man python-* | wc -l; grep -l %sphinx_build_man python-* | xargs grep "%bcond_with       doc" | wc -l
1121
553
21

Those numbers means:

* I have 1121 rpm spec files wich are describing packaging procesess of some python modules to produce rpm packages

* 553 out of those 1121 have possibility to generate documentation usimg sphinx (I'm rendering and packaging that documentation as man pages because this is most common documentationm format used on every Unix platform)

* Amongst those 553 only 21 (less than 4%) have currently disabled building documentation because (usually) some latest sphinx incompatibilities.

I dont see why any of that is important.

if you are trying to build all your rpms using one big environment, you're doing it wrong.

Really sorry .. I'm only messanger.

OK..if you are only letting us know, then we know there is a newer sphinx version. it seems to use 2x the RAM of the older one. I assume there is no other issue to be resolved so closing this.

kloczek commented 1 year ago

I dont see why any of that is important.

As I wrote already on generate more modules doccumentation using sphinx 5.x such process will fail than on use sphinx 6.x. All because in many sphinx extensions sphinx 5.x support have been already removed and/or is no longer working. In some cases it would be not possible to build such documentation becuae it would require mixing very old and new extensions which have been designed with sphinx 6.x in mind (for example all sphinx-toolbox stack). In other words use sphinx 6.x is only solution and/or with failing ATM ~20 modules package documentation packaging alternative older moduels would be pure waste of time 😞 (because number of such problematic modules still is going down)

if you are trying to build all your rpms using one big environment, you're doing it wrong.

Hmm .. what you mean wrong? 🤔 I'm building all packages in build env in which are installed ONLY packages used during build .. and nothing else. Many packages build processes behaves wrongly if in build env there are installed more than absolute minimum.

For example part of the build process is test suite execution.

[tkloczko@pers-jacek SPECS]$ grep %pytest python-* |wc -l
1103

so testing those modules in almost 99% cases is possible to use pytest (pytest can hadle unittest, nox test suites as well). Many modules have issues with dependencies beteeen units and on use pytest with installed xdist or pytest-randomly extensions such testing would fail.

zzzeek commented 1 year ago

I dont see why any of that is important.

As I wrote already on generate more modules doccumentation using sphinx 5.x such process will fail than on use sphinx 6.x. All because in many sphinx extensions sphinx 5.x support have been already removed and/or is no longer working. In some cases it would be not possible to build such documentation becuae it would require mixing very old and new extensions which have been designed with sphinx 6.x in mind (for example all sphinx-toolbox stack). In other words use sphinx 6.x is only solution and/or with failing ATM ~20 modules package documentation packaging alternative older moduels would be pure waste of time disappointed (because number of such problematic modules still is going down)

the extensions we use all work, so that's not a problem.

if you are trying to build all your rpms using one big environment, you're doing it wrong.

Hmm .. what you mean wrong? thinking I'm building all packages in build env in which are installed ONLY packages used during build .. and nothing else. Many packages build processes behaves wrongly if in build env there are installed more than absolute minimum.

if you are asking us to upgrade because you require that all packages use the same sphinx version, that's wrong. we are not changing for such a reason.

so testing those modules in almost 99% cases is possible to use pytest (pytest can hadle unittest, nox test suites as well). Many modules have issues with dependencies beteeen units and on use pytest with installed xdist or pytest-randomly extensions such testing would fail.

i have no idea what pytest has to do with sphinx, sorry (don't need to know either)

kloczek commented 1 year ago

the extensions we use all work, so that's not a problem.

Just checked and and looks like zzzeeksphinx documemtation is using only pure sphinx and its own code sphinx extension.

if you are asking us to upgrade because you require that all packages use the same sphinx version, that's wrong. we are not changing for such a reason.

Please .. You wrote that it is not enough time since sphinx 6.x release. I've presented facts which are in kind of contradiction with such claim 😄

I'm not asking for anything. I don't want to argue with anyone .. as I wtote I'm only a (b*dy) messanger. Please do not beat that messanger 😋

Please condider have a look on your sphinx ext code to at leasrt assess how much it would require to be able use it with sphinx 6.x. Maybe it will be not-so-complicated .. 🤔

zzzeek commented 1 year ago

sphinx 6.1 does not build our docs on any environment other than local workstation as it is using 2x the RAM and OOMs on our hosts. https://github.com/sphinx-doc/sphinx/issues/11352

so we arent changing this anytime soon.

You wrote that it is not enough time since sphinx 6.x release. I've presented facts which are in kind of contradiction with such claim

i have no idea what you're referring towards, 7 months is not long enough for EOL. all the "XYZ have upgraded" doesnt really have anything to do with that.

I dont really have time for these discussions so locking this.