release-tools icon indicating copy to clipboard operation
release-tools copied to clipboard

run_release.py broken for 3.12 and earlier because of bytecode magic number check

Open Yhg1s opened this issue 1 year ago • 2 comments

During the release of 3.12.5:

💥  Checking the magic number is up-to-date
Traceback (most recent call last):
  File "./run_release.py", line 1283, in <module>
    main()
  File "./run_release.py", line 1279, in main
    automata.run()
  File "./run_release.py", line 244, in run
    raise e from None
  File "./run_release.py", line 241, in run
    self.current_task(self.db)
  File "release.py", line 126, in __call__
    return getattr(self, "function")(db)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "./run_release.py", line 402, in check_magic_number
    magic_actual = get_magic(magic_actual_file, magic_actual_re)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "./run_release.py", line 391, in get_magic
    if m := regex.search(source.read_text()):
                         ^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/pathlib.py", line 1059, in read_text
    with self.open(mode='r', encoding=encoding, errors=errors) as f:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/pathlib.py", line 1045, in open
    return io.open(self, mode, buffering, encoding, errors, newline)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: 'cpython/Include/internal/pycore_magic_number.h'

Yhg1s avatar Aug 06 '24 19:08 Yhg1s

Actually, it's also broken for 3.13 because pycore_magic_number.h doesn't exist there, either.

Yhg1s avatar Sep 06 '24 21:09 Yhg1s

FYI: PR that added this feature: https://github.com/python/release-tools/pull/153

Yhg1s avatar Apr 08 '25 12:04 Yhg1s