Generate page of docs by version #2813
Merged
+173
−0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
The current "Python documentation by version" page at https://www.python.org/doc/versions/ has a static list of Python docs stored in the CMS.
During each release, the release manager is meant to edit the page and add the new one, but it's often forgotten. The list also sometimes gets out of order, and "February" can be hard to spell (now fixed).
The CMS also has information about each release, so I propose we generate this page instead.
cc @ned-deily, we've talked about something like this.
It mostly follows the same design as the original, but I also grouped the releases by Python feature version. We can keep the current big list if preferred.
Now (left) and new (right):
There are a few discrepancies between the old static list and the new one generated from the CMS.
Some 2.x releases don't have docs. Skip them.
Some docs don't have releases in the CMS. Hardcode them here, and re-add.
Some of the "documentation release dates" are not the same as regular release dates from the CMS, especially for older releases. The test CMS data when serving locally only has releases up to 3.10.7/Sept 2022 (178 releases in total), but comparing the generated page with https://www.python.org/doc/versions/ (227 releases), there are 38 with different dates.
Details
17 days difference:
2.4.3: local=15 April 2006, prod=29 March 2006
15 days difference:
3.4.4: local=21 December 2015, prod=06 December 2015
3.4.7: local=09 August 2017, prod=25 July 2017
3.8.6: local=08 September 2020, prod=23 September 2020
14 days difference:
3.5.4: local=08 August 2017, prod=25 July 2017
3.8.3: local=29 April 2020, prod=13 May 2020
13 days difference:
3.8.4: local=30 June 2020, prod=13 July 2020
9 days difference:
3.4.2: local=13 October 2014, prod=04 October 2014
6 days difference:
3.10.6: local=02 August 2022, prod=08 August 2022
3.4.9: local=02 August 2018, prod=08 August 2018
3.5.6: local=02 August 2018, prod=08 August 2018
3 days difference:
2.7.5: local=12 May 2013, prod=15 May 2013
2 days difference:
2.7.16: local=04 March 2019, prod=02 March 2019
1 day difference:
2.4.2: local=27 September 2005, prod=28 September 2005
2.5.1: local=19 April 2007, prod=18 April 2007
2.6: local=02 October 2008, prod=01 October 2008
2.6.4: local=26 October 2009, prod=25 October 2009
2.6.5: local=18 March 2010, prod=19 March 2010
2.7: local=03 July 2010, prod=04 July 2010
2.7.12: local=25 June 2016, prod=26 June 2016
2.7.15: local=01 May 2018, prod=30 April 2018
2.7.7: local=01 June 2014, prod=31 May 2014
2.7.8: local=02 July 2014, prod=01 July 2014
3.1: local=26 June 2009, prod=27 June 2009
3.1.2: local=20 March 2010, prod=21 March 2010
3.2.1: local=09 July 2011, prod=10 July 2011
3.2.2: local=03 September 2011, prod=04 September 2011
3.2.4: local=06 April 2013, prod=07 April 2013
3.2.6: local=12 October 2014, prod=11 October 2014
3.3.1: local=06 April 2013, prod=07 April 2013
3.4.0: local=17 March 2014, prod=16 March 2014
3.4.1: local=19 May 2014, prod=18 May 2014
3.4.5: local=27 June 2016, prod=26 June 2016
3.4.8: local=05 February 2018, prod=04 February 2018
3.5.5: local=05 February 2018, prod=04 February 2018
3.5.9: local=02 November 2019, prod=01 November 2019
3.9.1: local=07 December 2020, prod=08 December 2020
3.9.12: local=23 March 2022, prod=24 March 2022
How to handle these? Options: