summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Ganssle <git@m.ganssle.io>2023-03-23 14:36:47 (GMT)
committerT. Wouters <thomas@python.org>2023-05-03 09:09:45 (GMT)
commit65c4a2b326086875ecbedf032204d1ff24ba74d7 (patch)
tree795e51769463ee73421daefc1602bc0a4e0b7f1f
parent8d34031068ece75667260f6526d3165efe34e054 (diff)
downloadcpython-65c4a2b326086875ecbedf032204d1ff24ba74d7.zip
cpython-65c4a2b326086875ecbedf032204d1ff24ba74d7.tar.gz
cpython-65c4a2b326086875ecbedf032204d1ff24ba74d7.tar.bz2
GH-84976: Move Lib/datetime.py to Lib/_pydatetime
This breaks the tests, but we are keeping it as a separate commit so that the move operation and editing of the moved files are separate, for a cleaner history.
-rw-r--r--Lib/_pydatetime.py (renamed from Lib/datetime.py)0
-rw-r--r--Lib/test/datetimetester.py6
-rw-r--r--Lib/test/test_datetime.py12
-rw-r--r--Python/stdlib_module_names.h1
4 files changed, 14 insertions, 5 deletions
diff --git a/Lib/datetime.py b/Lib/_pydatetime.py
index b0eb1c2..b0eb1c2 100644
--- a/Lib/datetime.py
+++ b/Lib/_pydatetime.py
diff --git a/Lib/test/datetimetester.py b/Lib/test/datetimetester.py
index c5eb6e7..fb07d2a 100644
--- a/Lib/test/datetimetester.py
+++ b/Lib/test/datetimetester.py
@@ -39,6 +39,10 @@ except ImportError:
# Needed by test_datetime
import _strptime
+try:
+ import _pydatetime
+except ImportError:
+ pass
#
pickle_loads = {pickle.loads, pickle._loads}
@@ -92,7 +96,7 @@ class TestModule(unittest.TestCase):
if '_Fast' in self.__class__.__name__:
self.skipTest('Only run for Pure Python implementation')
- dar = datetime_module._divide_and_round
+ dar = _pydatetime._divide_and_round
self.assertEqual(dar(-10, -3), 3)
self.assertEqual(dar(5, -2), -2)
diff --git a/Lib/test/test_datetime.py b/Lib/test/test_datetime.py
index 7f9094f..3859733 100644
--- a/Lib/test/test_datetime.py
+++ b/Lib/test/test_datetime.py
@@ -8,10 +8,12 @@ TESTS = 'test.datetimetester'
def load_tests(loader, tests, pattern):
try:
- pure_tests = import_fresh_module(TESTS, fresh=['datetime', '_strptime'],
- blocked=['_datetime'])
- fast_tests = import_fresh_module(TESTS, fresh=['datetime',
- '_datetime', '_strptime'])
+ pure_tests = import_fresh_module(TESTS,
+ fresh=['datetime', '_pydatetime', '_strptime'],
+ blocked=['_datetime'])
+ fast_tests = import_fresh_module(TESTS,
+ fresh=['datetime', '_strptime'],
+ blocked=['_pydatetime'])
finally:
# XXX: import_fresh_module() is supposed to leave sys.module cache untouched,
# XXX: but it does not, so we have to cleanup ourselves.
@@ -42,6 +44,8 @@ def load_tests(loader, tests, pattern):
cls_._save_sys_modules = sys.modules.copy()
sys.modules[TESTS] = module
sys.modules['datetime'] = module.datetime_module
+ if hasattr(module, '_pydatetime'):
+ sys.modules['_pydatetime'] = module._pydatetime
sys.modules['_strptime'] = module._strptime
@classmethod
def tearDownClass(cls_):
diff --git a/Python/stdlib_module_names.h b/Python/stdlib_module_names.h
index 27f42e5..ed4a0ac 100644
--- a/Python/stdlib_module_names.h
+++ b/Python/stdlib_module_names.h
@@ -56,6 +56,7 @@ static const char* _Py_stdlib_module_names[] = {
"_posixshmem",
"_posixsubprocess",
"_py_abc",
+"_pydatetime",
"_pydecimal",
"_pyio",
"_pylong",