mirror of https://github.com/python/cpython
gh-122188: Remove _imp.pyc_magic_number (GH-122503)
_imp.pyc_magic_number_token should be enough.
This commit is contained in:
parent
d57f8a9f76
commit
03b88522f5
|
@ -221,7 +221,7 @@ def _write_atomic(path, data, mode=0o666):
|
|||
|
||||
_code_type = type(_write_atomic.__code__)
|
||||
|
||||
MAGIC_NUMBER = (_imp.pyc_magic_number).to_bytes(2, 'little') + b'\r\n'
|
||||
MAGIC_NUMBER = _imp.pyc_magic_number_token.to_bytes(4, 'little')
|
||||
|
||||
_PYCACHE = '__pycache__'
|
||||
_OPT = 'opt-'
|
||||
|
|
|
@ -3116,10 +3116,12 @@ class CAPITests(unittest.TestCase):
|
|||
@cpython_only
|
||||
class TestMagicNumber(unittest.TestCase):
|
||||
def test_magic_number_endianness(self):
|
||||
magic_number = (_imp.pyc_magic_number).to_bytes(2, 'little') + b'\r\n'
|
||||
raw_magic_number = int.from_bytes(magic_number, 'little')
|
||||
|
||||
self.assertEqual(raw_magic_number, _imp.pyc_magic_number_token)
|
||||
magic_number_bytes = _imp.pyc_magic_number_token.to_bytes(4, 'little')
|
||||
self.assertEqual(magic_number_bytes[2:], b'\r\n')
|
||||
# Starting with Python 3.11, Python 3.n starts with magic number 2900+50n.
|
||||
magic_number = int.from_bytes(magic_number_bytes[:2], 'little')
|
||||
start = 2900 + sys.version_info.minor * 50
|
||||
self.assertIn(magic_number, range(start, start + 50))
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
#include "pycore_import.h" // _PyImport_BootstrapImp()
|
||||
#include "pycore_initconfig.h" // _PyStatus_OK()
|
||||
#include "pycore_interp.h" // struct _import_runtime_state
|
||||
#include "pycore_magic_number.h" // PYC_MAGIC_NUMBER
|
||||
#include "pycore_magic_number.h" // PYC_MAGIC_NUMBER_TOKEN
|
||||
#include "pycore_namespace.h" // _PyNamespace_Type
|
||||
#include "pycore_object.h" // _Py_SetImmortal()
|
||||
#include "pycore_pyerrors.h" // _PyErr_SetString()
|
||||
|
@ -4810,10 +4810,6 @@ imp_module_exec(PyObject *module)
|
|||
return -1;
|
||||
}
|
||||
|
||||
if (PyModule_AddIntConstant(module, "pyc_magic_number", PYC_MAGIC_NUMBER) < 0) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (PyModule_AddIntConstant(
|
||||
module, "pyc_magic_number_token", PYC_MAGIC_NUMBER_TOKEN) < 0)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue