-
-
Notifications
You must be signed in to change notification settings - Fork 33.2k
Description
I'm seeing something fishy with the git branch for 3.13
and wondering whether something went wrong and/or if the commits there represent what was actually released (afaict nothing looks malicious -- just want to check my understanding)
I noticed this as deadsnakes generates nightly builds and uses cpython as a sort of "submodule" as it progresses
the previous deadsnakes nightly release occurred at 2150684 and is failing to update (fast forward!) to v3.13.9~0
(~0
is "peeling" the annotated tag) -- that sha is 8183fa5
(the release machinery uses the git branches to update to nightly so I'm pretty sure the 215... commit is from 3.13 -- here's a double check)
$ git branch -r --contains 215068442cc23ad155253838ee150dbf1aedfad7
origin/3.13
to reproduce what I'm seeing:
git checkout 215068442cc23ad155253838ee150dbf1aedfad7
git merge --ff-only 8183fa5e3f78ca6ab862de7fb8b14f3d929421e0
which results in:
$ git merge --ff-only 8183fa5e3f78ca6ab862de7fb8b14f3d929421e0
hint: Diverging branches can't be fast-forwarded, you need to either:
hint:
hint: git merge --no-ff
hint:
hint: or:
hint:
hint: git rebase
hint:
hint: Disable this message with "git config advice.diverging false"
fatal: Not possible to fast-forward, aborting.
if I remove --ff-only
it attempts to generate a merge commit and results in a merge conflict:
$ git merge 8183fa5e3f78ca6ab862de7fb8b14f3d929421e0
Auto-merging Include/patchlevel.h
CONFLICT (content): Merge conflict in Include/patchlevel.h
Automatic merge failed; fix conflicts and then commit the result.
the conflict being:
/* Version as a string */
<<<<<<< HEAD
#define PY_VERSION "3.13.8+"
=======
#define PY_VERSION "3.13.9"
>>>>>>> 8183fa5e3f78ca6ab862de7fb8b14f3d929421e0
/*--end constants--*/
looking at the github history for that directory also shows two "3.13.9" commits which is maybe what's getting this mixed? https://github.com/python/cpython/commits/3.13/Include
though the commits on the file itself only shows one: https://github.com/python/cpython/commits/3.13/Include/patchlevel.h
the two commits in question seem very similar but maybe based on different things?
here's the same log but in graph form:
$ git log --graph --oneline --decorate origin/3.13 -- Include | head -9
* 115ee7ba5c1 Post 3.13.9
* e40f1619ec7 Python 3.13.9
|\
| * 8183fa5e3f7 (tag: v3.13.9) Python 3.13.9
* | 92f7965cf6f [3.13] gh-139640: Fix swallowing syntax warnings in different modules (GH-139755) (GH-140119)
* | 16d2e97cf32 [3.13] gh-137400: Fix thread-safety issues when profiling all threads (gh-137518) (gh-137733)
* | 527623e8276 Post 3.13.8
|/
* a15ae614deb (tag: v3.13.8) Python 3.13.8
looking at a more full log it looks like the 3.13.9 release is based on the 3.13.8 release directly (leaving behind the last week or so of changes except for bc2c8d7)
$ git log --graph --oneline --decorate origin/3.13 | head -100
* 77976761ba3 (origin/3.13, 3.13) [3.13] gh-138993: Dedent `credits` text (GH-138994) (#140087)
* 115ee7ba5c1 Post 3.13.9
* e40f1619ec7 Python 3.13.9
|\
| * 8183fa5e3f7 (tag: v3.13.9) Python 3.13.9
| * bc2c8d748cf [3.13] gh-139783: Fix inspect.getsourcelines() for the case when a decorator is followed by a comment or an empty line (GH-139836) (GH-139890)
* | 92f7965cf6f [3.13] gh-139640: Fix swallowing syntax warnings in different modules (GH-139755) (GH-140119)
* | c5ec267311f [3.13] gh-101828: Fix `jisx0213` codecs removing null characters (gh-139340) (gh-140112)
* | 2f27098b422 [3.13] gh-106318: Add examples for str.istitle() (GH-140046) (#140114)
* | bc3f2885f45 [3.13] gh-114827: clarify `threading.Event.wait` timeout behavior (GH-114834) (#140099)
* | bfb9639352c [3.13] gh-102431: Clarify constraints on operands of Decimal logical operations (GH-102836) (#140106)
* | 7992a295123 [3.13] GH-140058: Clear key and value if `PyTuple_New` fails in `dictiter_iternextitem` (GH-140059) (#140108)
* | 7e40d947259 [3.13] gh-70765: Remove unnecessary extra backtick from Changelog entry (GH-140071) (#140101)
* | 215068442cc (HEAD) [3.13] gh-82575: Adjust `time.get_clock_info` *adjustable* attribute doc (GH-135920) (#140098)
* | 08c9a147a65 [3.13] gh-137871: Clarify cmath.nan documentation by linking to math module (GH-137876) (#140096)
* | 63ba8018a17 [3.13] gh-97914: Reword misleading sentence on conditional expressions (GH-139064) (#140094)
* | eec807a5bbd [3.13] gh-138072: Fix typos and grammatical errors and improve clarity in asyncio howto document (GH-138895) (#140092)
* | 5bead87f836 [3.13] gh-102247: Improve documentation of http.HTTPStatus members update (GH-133190) (#140090)
* | 13562e18664 [3.13] gh-101100: Fix sphinx warnings in `library/smtplib.rst` (GH-139991) (#140085)
* | cbcee9a0f01 [3.13] gh-140000: Traverse `name` attribute for `TypeVar`, `TypeVarTuple`, `TypeAliasType`, `ParamSpec` (GH-140016) (#140073)
* | 0e7893207bf [3.13] gh-138772: Fix and improve documentation for turtle color functions (GH-139325) (GH-140048)
* | 278384150a2 [3.13] gh-107073: fix relevant typo in `PyObject_ClearManagedDict` (GH-140032) (#140034)
* | 08a2b2de794 [3.13] gh-139155: Remove "dictionaries are sorted by key" note in `pprint` docs (GH-139159) (GH-140004)
* | 591946d2fee [3.13] gh-101100: Fix Sphinx warnings in `Doc/library/signal.rst` (GH-139930) (GH-139967)
* | cbb415e992d [3.13] gh-139905: Provide suggestion in error message if `Generic.__init_subclass__` was not called (GH-139943) (#139956)
* | 6a9908ee946 [3.13] gh-96491: Deduplicate version in IDLE shell title (GH-139841) (#139932)
* | aee27d9d19b [3.13] gh-139783: Fix inspect.getsourcelines() for the case when a decorator is followed by a comment or an empty line (GH-139836) (GH-139890)
* | 38bedb342d3 [3.13] gh-138843: Removing "Unpacking" section from Download page (GH-139920)
* | 5424dab1fd6 [3.13] gh-101100: Document zlib public constants to fix reference warnings (GH-139835) (#139912)
* | 70ae4c8ef64 [3.13] gh-139843: Document signals (SIGSTOP, SIGVTALRM, SIGPROF) to fix sphinx references (GH-139896) (GH-139909)
* | b1bc743d366 [3.13] gh-139065: Fix trailing space before long word in textwrap (GH-139070) (GH-139903)
* | b367d104edf [3.13] gh-139843: Document `signal.SIGQUIT` to fix Sphinx references (GH-139844) (#139886)
* | 72c231abf60 [3.13] gh-139842: Clarify `__module__` description in typing.rst (GH-139863) (#139870)
* | 94ff4d4eb48 [3.13] gh-139391: properly handle `signal.signal()` in `UnixConsole` when called from a non-main thread (GH-139392) (#139861)
* | fa49c2af916 [3.13] gh-139672: Remove references to `passlib` (GH-139673) (#139868)
* | 54f9613a375 [3.13] gh-139845: do not print twice in default asyncio REPL (GH-139846) (#139860)
* | 16d2e97cf32 [3.13] gh-137400: Fix thread-safety issues when profiling all threads (gh-137518) (gh-137733)
* | f6186a3709f [3.13] gh-133400: Fixed Ctrl+D (^D) behavior in :mod:`_pyrepl` module (GH-133883) (GH-139851)
* | d12bd1ba1ab [3.13] gh-101100: Fix reference warnings in `c-api/init.rst` document… (#139833)
* | abe6f529ff1 [3.13] gh-75989: TarFile.extractall and TarFile.extract now overwrite symlinks when extracting hardlinks (GH-137316) (GH-139771)
* | 69a34938f8e [3.13] gh-139743: Avoid import-time print in test_sqlite3 (GH-139746) (GH-139829)
* | 7b49ec784a3 [3.13] gh-139748: Fix socket.if_nametoindex() Argument Clinic (#139815)
* | 8234841e5b2 [3.13] gh-139805: Bump `test_repl_eio` timeout for slow builtbots (GH-139807) (#139813)
* | 2072386e05a [3.13] Remove Cirrus macOS runners from CI (GH-139799) (#139803)
* | dac827cb989 [3.13] gh-139748: fix leaks in AC error paths when using unicode FS-b… (#139792)
* | d8971c21e80 [3.13] gh-138843: Clean up downloads page (GH-138844) (#139797)
* | fb89b305b00 [3.13] gh-137638: Use macos-15-intel in GitHub Actions (GH-139154) (#139790)
* | b6c14bc1874 gh-139769: Update `PCBuild/find_python.bat` to allow discovery of Python 3.14 (GH-139770)
* | 5a98f85c9ac [3.13] GH-139590: Run `ruff format` on pre-commit for Tools/wasm (GH-139591) (#139745)
* | de84a03099c [3.13] gh-139308: Skip test_special_chars_csh on NetBSD due to csh variable expansion issue (GH-139341) (#139560)
* | 12ada79fe94 [3.13] gh-83424: Allow empty name if handle is non-null when create ctypes.CDLL on Windows (GH-136878) (#138547)
* | 15a2cd6a1d0 [3.13] `Doc/library/zoneinfo.rst`: Fix typo (GH-139190) (#139230)
* | 08a03a49f61 [3.13] gh-101100: Fix some Sphinx reference warnings in ``whatsnew/2.6.rst`` (GH-139236) (#139569)
* | a6885577200 [3.13] gh-137589: Zipfile tests: close file objects (GH-138080) (#139767)
* | 0c91d6848a6 [3.13] gh-70765: avoid waiting for HTTP headers when parsing HTTP/0.9 requests (GH-139514) (#139602)
* | b7bc9776e89 [3.13] gh-139516: Fix lambda colon start format spec in f-string in t… (#139726)
* | 5074feb3943 [3.13] Update the availability info in the resource docs (GH-137939) (GH-139720)
* | 0404ca72016 [3.13] gh-137920: Fix semantically relevant typo in `curses.window.attron` (GH-137940) (GH-138507)
* | 94b26f015ec [3.13] gh-139646: fix typo in `pickletools` error message (GH-139647) (GH-139650)
* | ccf2f377fc8 [3.13] gh-139436: Remove ``dist-pdf`` from the docs archives rebuild target (GH-139437) (#139693)
* | 060eef27c39 [3.13] gh-136234: Fix `SelectorSocketTransport.writelines` to be robust to connection loss (GH-136743) (GH-138702) (#139710)
* | 333d4a6f496 [3.13] gh-139700: Check consistency of the zip64 end of central directory record (GH-139702) (GH-139708)
* | 527623e8276 Post 3.13.8
|/
* a15ae614deb (tag: v3.13.8) Python 3.13.8
...
cc @Yhg1s (release manager!)