Repository navigation
Misc\NEWS in the Windows installer #213
Description
Activity
- changed the title
[-]`Misc/NEWS` in the Windows installer[/-][+]``Misc\NEWS`` in the Windows installer[/+]on Feb 3, 2025 My first guess would be that the NEWS file has not been created or moved to
Doc\build\NEWSat the time that Sphinx is invoked.Seems that way (but I'm not too familiar with the Windows build process!). Looking at a recent-ish build: https://dev.azure.com/Python/cpython/_build/results?buildId=157746&view=results
Docs are built and uploaded as an artifact in the first "Build bianries" stage:
"Merge NEWS file" happens later, in "Build MSI installer", after the readymade docs artifact has been downloaded and moved:
My first guess would be that the NEWS file has not been created or moved to
Doc\build\NEWSat the time that Sphinx is invoked.Seems that way (but I'm not too familiar with the Windows build process!).
...
Docs are built and uploaded as an artifact in the first "Build bianries" stage:
Aha, Line 127 of "Build HTML docs" has "Merging Misc/NEWS with py -3.12 -m blurb", which is echoed by
make.bat.This copies the file to
"%PY_MISC_NEWS_DIR%\NEWS". The build process (as far as I can tell) does not definePY_MISC_NEWS_DIR, so this line is executed:if not defined PY_MISC_NEWS_DIR set PY_MISC_NEWS_DIR=%BUILDDIR%\%1
%1is the output format,html, and builddir is presumablybuild, where the cwd isDoc\. This means thatPY_MISC_NEWS_DIRexpands toDoc\build\html, and the NEWS file is copied here.I think therefore that this first point was accidentally solved in python/cpython#129577, as
make.batnow copies tobuild\NEWSexplicitly. I'm not sure how we'd test this though, is there a way to do dry-runs of the Windows release steps?A
To second point, the released tarballs include the merged NEWS file as
Misc\NEWS, but I can't find such a file in my local Python installations, and it is unclear if/where inmsi-steps.ymlthatMisc\Newsgets used. Steve is probably best placed to comment here.I think therefore that this first point was accidentally solved in python/cpython#129577,
Does this change need to be backported then?
I'll get a run going so we can see the result.
Does this change need to be backported then?
It's been backported to 3.12 & 3.13 but not security branches.
Reacted by Steve DowerThe changelog.html from the build is about 6MB - does that seem right? You should be able to download the doc artifact from https://dev.azure.com/Python/cpython/_build/results?buildId=158873&view=artifacts&pathAsName=false&type=publishedArtifacts to check it yourself.
Yep, that's about right -- it's a decade of blurbs since 3.5! (see python/docs-community#98)
I downloaded the artifact and changelog.html matches my local.
Reacted by Adam Turner and Steve DowerGuess there's nothing more to fix then!
Do we need to keep
blurb mergeinmsi-steps.yml?release-tools/windows-release/msi-steps.yml
Lines 41 to 45 in 6922a3c
- script: | %PYTHON% -m pip install blurb %PYTHON% -m blurb merge -f Misc\NEWS displayName: 'Merge NEWS file' May as well. No change is easier than making a change, and I'm hoping to deprecate these steps soon (see PEP 773).
Reacted by Adam Turner and Hugo van KemenadeOk, it seems indeed there is nothing to do!
As discovered in python/blurb#44 (python/blurb#44 (comment)), the Windows installer ships the merged
NEWSfile inDoc\html\, but has a 'broken'Doc\html\whatsnew\changelog.htmlfile, reading "The NEWS file is not available".Can we fix the
changelog.htmlcreation? My first guess would be that the NEWS file has not been created or moved toDoc\build\NEWSat the time that Sphinx is invoked.Do we need to provide the NEWS file to users? It is a ~2MB ~50,000 line text file with fairly poor usability and little discoverability (it is in the html directory but not linked from anywhere).
A