cpython/Modules
Victor Stinner cb29f0177c Issue #22117: Add a new Python timestamp format _PyTime_t to pytime.h
In practice, _PyTime_t is a number of nanoseconds. Its C type is a 64-bit
signed number. It's integer value is in the range [-2^63; 2^63-1]. In seconds,
the range is around [-292 years; +292 years]. In term of Epoch timestamp
(1970-01-01), it can store a date between 1677-09-21 and 2262-04-11.

The API has a resolution of 1 nanosecond and use integer number. With a
resolution on 1 nanosecond, 64-bit IEEE 754 floating point numbers loose
precision after 194 days. It's not the case with this API. The drawback is
overflow for values outside [-2^63; 2^63-1], but these values are unlikely for
most Python modules, except of the datetime module.

New functions:

- _PyTime_GetMonotonicClock()
- _PyTime_FromObject()
- _PyTime_AsMilliseconds()
- _PyTime_AsTimeval()

This change uses these new functions in time.sleep() to avoid rounding issues.

The new API will be extended step by step, and the old API will be removed step
by step. Currently, some code is duplicated just to be able to move
incrementally, instead of pushing a large change at once.
2015-03-27 13:31:18 +01:00
..
_ctypes Issue #23765: Remove IsBadStringPtr calls in ctypes 2015-03-24 23:28:54 -07:00
_decimal Issue #23641: Cleaned out legacy dunder names from tests and docs. 2015-03-12 22:01:30 +02:00
_io Issue #21802: The reader in BufferedRWPair now is closed even when closing 2015-03-24 23:23:28 +02:00
_multiprocessing Issue #21704: Fix build error for _multiprocessing when semaphores 2014-07-28 23:01:02 +01:00
_sqlite Removed unintentional trailing spaces in non-external and non-generated C files. 2015-03-18 21:53:15 +02:00
cjkcodecs Issue #23685: Fix usage of PyMODINIT_FUNC in _json, _scproxy, nis, pyexpat 2015-03-17 17:48:27 +01:00
clinic Issue #22832: Tweaked parameter names for fcntl module to better match 2015-03-20 20:04:21 +02:00
expat merge 3.3 (#19186) 2014-02-04 10:12:18 -05:00
zlib Issue #18527: Upgrade internal copy of zlib to 1.2.8 2013-10-21 12:03:09 +02:00
_bisectmodule.c Issue #19514: Deduplicate some _Py_IDENTIFIER declarations. 2013-11-07 18:46:53 +01:00
_bz2module.c Removed unintentional trailing spaces in non-external and non-generated C files. 2015-03-18 21:53:15 +02:00
_codecsmodule.c Issue #23001: Few functions in modules mmap, ossaudiodev, socket, ssl, and 2015-03-20 09:00:36 +02:00
_collectionsmodule.c Fix typo 2015-03-24 21:12:57 -07:00
_cryptmodule.c Issue #20530: Argument Clinic's signature format has been revised again. 2014-02-08 22:15:29 -08:00
_csv.c Issue #22156: Fix some "comparison between signed and unsigned integers" 2014-08-16 01:03:39 +02:00
_curses_panel.c Issue #18408: Fix PyInit__curses_panel(), handle import_curses() failure 2013-07-18 02:31:21 +02:00
_cursesmodule.c Removed redundant casts to char *. 2014-09-28 11:27:24 +03:00
_datetimemodule.c Closes issue #22791: Improved datetime from timestamp methods documentation. 2015-03-01 14:52:07 -05:00
_dbmmodule.c Issue #20530: Argument Clinic's signature format has been revised again. 2014-02-08 22:15:29 -08:00
_elementtree.c Issue #23450: Fixed possible integer overflows. 2015-02-16 20:52:17 +02:00
_functoolsmodule.c Issue #7830: Flatten nested functools.partial. 2015-03-01 15:08:17 -05:00
_gdbmmodule.c Close #19282: Native context management in dbm 2013-11-17 15:59:51 +10:00
_hashopenssl.c Issue #23143: Remove compatibility with OpenSSLs older than 0.9.8. 2015-01-03 23:21:21 +01:00
_heapqmodule.c Factor common code into internal functions. 2014-06-14 16:43:35 -07:00
_json.c Issue #23685: Fix usage of PyMODINIT_FUNC in _json, _scproxy, nis, pyexpat 2015-03-17 17:48:27 +01:00
_localemodule.c Issue #23446: Use PyMem_New instead of PyMem_Malloc to avoid possible integer 2015-02-16 13:28:22 +02:00
_lsprof.c Issue #21863: cProfile now displays the module name of C extension functions, in addition to their own name. 2014-06-27 23:49:29 -04:00
_lzmamodule.c Removed unintentional trailing spaces in non-external and non-generated C files. 2015-03-18 21:53:15 +02:00
_math.c Fix typo. 2014-10-28 22:24:46 +01:00
_math.h Issue #15477: Add workaround for log1p(-0.0) on platforms where it's broken. 2012-08-18 12:24:30 +01:00
_opcode.c Issue #20530: Argument Clinic's signature format has been revised again. 2014-02-08 22:15:29 -08:00
_operator.c #16518: Bring error messages in harmony with docs ("bytes-like object") 2014-10-05 11:47:01 -04:00
_pickle.c Issue #23096: Pickle representation of floats with protocol 0 now is the same 2015-02-15 14:18:32 +02:00
_posixsubprocess.c Issue #23694: Enhance _Py_open(), it now raises exceptions 2015-03-18 00:22:14 +01:00
_randommodule.c Improve struct cache locality by bring commonly accessed fields close together. 2015-02-20 00:50:04 -08:00
_scproxy.c Issue #23685: Fix usage of PyMODINIT_FUNC in _json, _scproxy, nis, pyexpat 2015-03-17 17:48:27 +01:00
_sre.c Issue #22364: Improved some re error messages using regex for hints. 2015-03-25 21:03:47 +02:00
_ssl.c Issue #23001: Few functions in modules mmap, ossaudiodev, socket, ssl, and 2015-03-20 09:00:36 +02:00
_ssl_data.h Issue #23248: Update ssl error codes from latest OpenSSL git master. 2015-01-18 17:39:32 +01:00
_stat.c Issue #21741: Add st_file_attributes to os.stat_result on Windows. 2014-06-19 09:46:37 -05:00
_struct.c Issue #22896: Avoid to use PyObject_AsCharBuffer(), PyObject_AsReadBuffer() 2015-02-03 01:25:42 +02:00
_testbuffer.c Removed unintentional trailing spaces in non-external and non-generated C files. 2015-03-18 21:53:15 +02:00
_testcapimodule.c Issue #23571: _Py_CheckFunctionResult() now gives the name of the function 2015-03-21 15:04:43 +01:00
_testimportmultiple.c Remove compile warnings for _testimportmodule 2012-12-15 18:16:47 +02:00
_threadmodule.c Issue #22043: time.monotonic() is now always available 2014-09-02 23:18:25 +02:00
_tkinter.c Issue #21526: Tkinter now supports new boolean type in Tcl 8.5. 2015-03-23 00:47:45 +02:00
_tracemalloc.c Merge 3.4 (tracemalloc typo) 2015-03-18 16:05:32 +01:00
_weakref.c Issue #20530: Argument Clinic's signature format has been revised again. 2014-02-08 22:15:29 -08:00
_winapi.c Issue #23451: Update pyconfig.h for Windows to require Vista headers and remove unnecessary version checks. 2015-03-02 08:01:10 -08:00
addrinfo.h Recorded merge of revisions 81032 via svnmerge from 2010-05-09 16:14:21 +00:00
ar_beos
arraymodule.c Issue #14203: Remove obsolete support for view==NULL in bytesiobuf_getbuffer() 2015-02-03 21:43:23 +01:00
atexitmodule.c Removed unintentional trailing spaces in non-external and non-generated C files. 2015-03-18 21:53:15 +02:00
audioop.c Issue #20326: Argument Clinic now uses a simple, unique signature to 2014-01-28 05:00:08 -08:00
binascii.c Issue #13637: Improve exception message of a2b_* functions. 2015-02-15 00:31:00 +02:00
cmathmodule.c Regenerated Argument Clinic checksums. 2015-02-20 12:46:11 +02:00
config.c.in Issue #14605: Stop having implicit entries for sys.meta_path. 2012-04-27 14:01:58 -04:00
errnomodule.c Fix #13210. Port the Windows build from VS2008 to VS2010. 2012-05-13 11:19:23 -05:00
faulthandler.c Merge 3.4 (faulthandler ICC) 2015-03-23 21:21:00 +01:00
fcntlmodule.c Issue #22832: Tweaked parameter names for fcntl module to better match 2015-03-20 20:04:21 +02:00
fpectlmodule.c Issue #16136: Remove VMS support and VMS-related code 2013-12-21 16:19:10 +01:00
fpetestmodule.c Recorded merge of revisions 81032 via svnmerge from 2010-05-09 16:14:21 +00:00
gc_weakref.txt Issue #13575: there is only one class type. 2011-12-12 18:54:29 +01:00
gcmodule.c Issue #22043: time.monotonic() is now always available 2014-09-02 23:18:25 +02:00
getaddrinfo.c Issue #15538: Fix compilation of the getnameinfo() / getaddrinfo() emulation code. 2012-08-02 20:37:12 +02:00
getbuildinfo.c merge 3.2 2011-03-28 17:26:04 -05:00
getnameinfo.c Issue #15538: Fix compilation of the getnameinfo() / getaddrinfo() emulation code. 2012-08-02 20:37:12 +02:00
getpath.c Issue #23753: Move _Py_wstat() from Python/fileutils.c to Modules/getpath.c 2015-03-24 12:16:28 +01:00
grpmodule.c merge with 3.4 2014-10-02 08:35:31 +02:00
hashlib.h Closes #18627: merge from 3.3 2013-08-01 22:13:30 -07:00
hashtable.c Closes #21892, #21893: Use PY_FORMAT_SIZE_T instead of %zi or %zu to format C 2014-07-01 08:57:10 +02:00
hashtable.h Issue #21036: Fix typo in macro name 2014-03-24 22:34:34 +01:00
itertoolsmodule.c Issue #22883: Got rid of outdated references to PyInt and PyString in comments. 2015-02-17 10:14:30 +02:00
ld_so_aix.in #941346: Fix broken shared library build on AIX. Patch by Sebastien Sable, review by Antoine Pitrou. 2011-02-15 15:44:51 +00:00
ld_so_beos
main.c Back-out wcstok deprecation suppression and updates calls to use wcstok_s. 2015-02-25 20:48:01 -08:00
makesetup Issue #17095: Fix Modules/Setup *shared* support. 2014-06-02 01:05:29 -07:00
makexp_aix
mathmodule.c Issue #23641: Cleaned out legacy dunder names from tests and docs. 2015-03-12 22:01:30 +02:00
md5module.c Issue #20173: Convert sha1, sha256, sha512 and md5 to ArgumentClinic. 2014-07-27 14:20:23 +02:00
mmapmodule.c Issue #23753: Python doesn't support anymore platforms without stat() or 2015-03-24 10:27:50 +01:00
nismodule.c Issue #23685: Fix usage of PyMODINIT_FUNC in _json, _scproxy, nis, pyexpat 2015-03-17 17:48:27 +01:00
ossaudiodev.c Issue #23709, #23001: ossaudiodev now uses Py_ssize_t for sizes instead of int 2015-03-20 10:37:34 +01:00
overlapped.c asyncio, _overlapped.ConnectPipe(): release the GIL 2015-01-26 22:43:39 +01:00
parsermodule.c Removed unintentional trailing spaces in non-external and non-generated C files. 2015-03-18 21:53:15 +02:00
posixmodule.c Closes #9445: Removes detection of GetFinalPathNameByHandle 2015-03-20 21:49:12 -07:00
posixmodule.h Issue #4591: Uid and gid values larger than 2**31 are supported now. 2013-02-12 09:24:16 +02:00
pwdmodule.c Issue #20152: Port the pwd module to Argument Clinic. 2014-08-22 14:03:51 -04:00
pyexpat.c Issue #23685: Fix usage of PyMODINIT_FUNC in _json, _scproxy, nis, pyexpat 2015-03-17 17:48:27 +01:00
readline.c Issue 22940: fixes to editline support 2014-11-26 13:02:33 -08:00
README Issue #18093: Factor out the programs that embed the runtime 2014-07-25 21:52:14 +10:00
resource.c Issue #19343: Expose FreeBSD-specific APIs in resource module. Original patch by Koobs. 2013-12-08 14:35:55 +01:00
rotatingtree.c Recorded merge of revisions 81032 via svnmerge from 2010-05-09 16:14:21 +00:00
rotatingtree.h
selectmodule.c Issue #23708: select.devpoll now retries its internal write() when interrupted 2015-03-19 23:33:09 +01:00
Setup.config.in Issue #21076: the C signal module has been renamed to _signal 2014-04-04 16:30:04 +02:00
Setup.dist Issue #5309: distutils' build and build_ext commands now accept a `-j` 2014-09-26 23:31:59 +02:00
sha1module.c Issue #20173: Convert sha1, sha256, sha512 and md5 to ArgumentClinic. 2014-07-27 14:20:23 +02:00
sha256module.c Issue #20173: Convert sha1, sha256, sha512 and md5 to ArgumentClinic. 2014-07-27 14:20:23 +02:00
sha512module.c Issue #20173: Convert sha1, sha256, sha512 and md5 to ArgumentClinic. 2014-07-27 14:20:23 +02:00
signalmodule.c Issue #23715: signal.sigwaitinfo() and signal.sigtimedwait() are now retried 2015-03-20 12:54:28 +01:00
socketmodule.c Fix compiler warnings: comparison between signed and unsigned numbers 2015-03-20 11:32:24 +01:00
socketmodule.h Issue #23451: Update pyconfig.h for Windows to require Vista headers and remove unnecessary version checks. 2015-03-02 08:01:10 -08:00
spwdmodule.c Fix a missing #include. 2014-08-22 14:01:56 -04:00
sre.h Issue #17381: Fixed handling of case-insensitive ranges in regular expressions. 2014-10-31 12:36:56 +02:00
sre_constants.h Issue #17381: Fixed handling of case-insensitive ranges in regular expressions. 2014-10-31 12:36:56 +02:00
sre_lib.h Issue #17381: Fixed handling of case-insensitive ranges in regular expressions. 2014-10-31 12:36:56 +02:00
symtablemodule.c merge 3.3 (#19393) 2013-10-26 13:22:08 -04:00
syslogmodule.c Issue #20437: Fixed 22 potential bugs when deleting objects references. 2014-02-09 13:46:20 +02:00
termios.c Issue #11495: OSF support is eliminated. It was deprecated in Python 3.2 2011-03-14 17:36:54 +01:00
testcapi_long.h Issue #9530: Fix undefined behaviour due to signed overflow in testcapi_long.h. 2011-11-19 17:58:15 +00:00
timemodule.c Issue #22117: Add a new Python timestamp format _PyTime_t to pytime.h 2015-03-27 13:31:18 +01:00
tkappinit.c Issue #4350: Removed a number of out-of-dated and non-working for a long time 2014-07-23 22:33:50 +03:00
tkinter.h
unicodedata.c merge 3.3 (#23367) 2015-03-02 11:18:40 -05:00
unicodedata_db.h upgrade to unicode 7.0.0 2014-07-06 13:04:20 -07:00
unicodename_db.h upgrade to unicode 7.0.0 2014-07-06 13:04:20 -07:00
winreparse.h Issue18314 Allow unlink to remove junctions. Includes support for creating junctions. Patch by Kim Gräsman 2014-05-05 19:46:17 +01:00
xxlimited.c Removed unintentional trailing spaces in non-external and non-generated C files. 2015-03-18 21:53:15 +02:00
xxmodule.c Make indentation consistent 2013-01-01 07:41:51 -08:00
xxsubtype.c Recorded merge of revisions 81032 via svnmerge from 2010-05-09 16:14:21 +00:00
zipimport.c Issue #23696: Chain ZipImportError to the OSError 2015-03-20 10:52:25 +01:00
zlibmodule.c Issue #8677: make the zlib module "ssize_t clean" for parsing parameters 2014-07-01 16:48:12 +02:00

Source files for standard library extension modules,
and former extension modules that are now builtin modules.