+5813
-3670
lines changedFilter options
+5813
-3670
lines changed Original file line number Diff line number Diff line change
@@ -473,6 +473,14 @@ C-API
473
473
Library
474
474
-------
475
475
476
+
- Issue #7989: Added pure python implementation of the `datetime`
477
+
module. The C module is renamed to `_datetime` and if available,
478
+
overrides all classes defined in datetime with fast C impementation.
479
+
Python implementation is based on the original python prototype for
480
+
the datetime module by Tim Peters with minor modifications by the
481
+
PyPy project. The test suite now tests `datetime` module with and
482
+
without `_datetime` acceleration using the same test cases.
483
+
476
484
- Issue #7895: platform.mac_ver() no longer crashes after calling os.fork()
477
485
478
486
- Issue #9323: Fixed a bug in trace.py that resulted in loosing the
Original file line number Diff line number Diff line change
@@ -170,7 +170,7 @@ _symtable symtablemodule.c
170
170
#atexit atexitmodule.c # Register functions to be run at interpreter-shutdown
171
171
#_elementtree -I$(srcdir)/Modules/expat -DHAVE_EXPAT_CONFIG_H -DUSE_PYEXPAT_CAPI _elementtree.c # elementtree accelerator
172
172
#_pickle _pickle.c # pickle accelerator
173
-
#datetime datetimemodule.c # date/time type
173
+
#_datetime _datetimemodule.c # datetime accelerator
174
174
#_bisect _bisectmodule.c # Bisection algorithms
175
175
#_heapq _heapqmodule.c # Heap queue algorithm
176
176
Original file line number Diff line number Diff line change
@@ -25,7 +25,7 @@
25
25
* final result fits in a C int (this can be an issue on 64-bit boxes).
26
26
*/
27
27
#if SIZEOF_INT < 4
28
-
# error "datetime.c requires that C int have at least 32 bits"
28
+
# error "_datetime.c requires that C int have at least 32 bits"
29
29
#endif
30
30
31
31
#define MINYEAR 1
@@ -5086,7 +5086,7 @@ static PyDateTime_CAPI CAPI = {
5086
5086
5087
5087
static struct PyModuleDef datetimemodule = {
5088
5088
PyModuleDef_HEAD_INIT,
5089
-
"datetime",
5089
+
"_datetime",
5090
5090
"Fast implementation of the datetime type.",
5091
5091
-1,
5092
5092
module_methods,
@@ -5097,7 +5097,7 @@ static struct PyModuleDef datetimemodule = {
5097
5097
};
5098
5098
5099
5099
PyMODINIT_FUNC
5100
-
PyInit_datetime(void)
5100
+
PyInit__datetime(void)
5101
5101
{
5102
5102
PyObject *m; /* a module object */
5103
5103
PyObject *d; /* its dict */
Original file line number Diff line number Diff line change
@@ -43,7 +43,7 @@ extern PyObject* PyInit__sre(void);
43
43
extern PyObject* PyInit_parser(void);
44
44
extern PyObject* PyInit_winreg(void);
45
45
extern PyObject* PyInit__struct(void);
46
-
extern PyObject* PyInit_datetime(void);
46
+
extern PyObject* PyInit__datetime(void);
47
47
extern PyObject* PyInit__functools(void);
48
48
extern PyObject* PyInit__json(void);
49
49
extern PyObject* PyInit_zlib(void);
@@ -116,7 +116,7 @@ struct _inittab _PyImport_Inittab[] = {
116
116
{"parser", PyInit_parser},
117
117
{"winreg", PyInit_winreg},
118
118
{"_struct", PyInit__struct},
119
-
{"datetime", PyInit_datetime},
119
+
{"_datetime", PyInit__datetime},
120
120
{"_functools", PyInit__functools},
121
121
{"_json", PyInit__json},
122
122
Original file line number Diff line number Diff line change
@@ -1068,7 +1068,7 @@
1068
1068
>
1069
1069
</File>
1070
1070
<File
1071
-
RelativePath="..\Modules\datetimemodule.c"
1071
+
RelativePath="..\Modules\_datetimemodule.c"
1072
1072
>
1073
1073
</File>
1074
1074
<File
Original file line number Diff line number Diff line change
@@ -452,7 +452,7 @@ def detect_modules(self):
452
452
# time operations and variables
453
453
exts.append( Extension('time', ['timemodule.c', '_time.c'],
454
454
libraries=math_libs) )
455
-
exts.append( Extension('datetime', ['datetimemodule.c', '_time.c'],
455
+
exts.append( Extension('_datetime', ['_datetimemodule.c', '_time.c'],
456
456
libraries=math_libs) )
457
457
# fast iterator tools implemented in C
458
458
exts.append( Extension("itertools", ["itertoolsmodule.c"]) )
You can’t perform that action at this time.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4