A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/python/cpython/commit/cf86e368ebd17e10f68306ebad314eea31daaa1e below:

Added pure python implementation of the datetime module. · python/cpython@cf86e36 · GitHub

File tree Expand file treeCollapse file tree 9 files changed

+5813

-3670

lines changed

Filter options

Expand file treeCollapse file tree 9 files changed

+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