summaryrefslogtreecommitdiffstats
path: root/Modules/timemodule.c
Commit message (Collapse)AuthorAgeFilesLines
* Issue #23646: Fix test_threading on WindowsVictor Stinner2015-03-201-1/+1
|
* Issue #23646: Enhance precision of time.sleep() and socket timeout whenVictor Stinner2015-03-201-2/+2
| | | | | | | | interrupted by a signal Add a new _PyTime_AddDouble() function and remove _PyTime_ADD_SECONDS() macro. The _PyTime_ADD_SECONDS only supported an integer number of seconds, the _PyTime_AddDouble() has subsecond resolution.
* Issue #23646: If time.sleep() is interrupted by a signal, the sleep is nowVictor Stinner2015-03-191-51/+56
| | | | | | | retried with the recomputed delay, except if the signal handler raises an exception (PEP 475). Modify also test_signal to use a monotonic clock instead of the system clock.
* Revert changeset d927047b1d8eb87738676980a24930d053ba2150Victor Stinner2015-03-171-69/+49
| | | | Sorry, it was a mistake, the patch is still under review: issue #23646.
* testVictor Stinner2015-03-121-49/+69
|
* Issue #22919: Windows build updated to support VC 14.0 (Visual Studio 2015), ↵Steve Dower2014-11-221-13/+0
| | | | which will be used for the official 3.5 release.
* Issue #22592: Drop support of the Borland C compiler to build PythonVictor Stinner2014-10-221-9/+2
| | | | The distutils module still supports it to build extensions.
* Issue #22043: time.monotonic() is now always availableVictor Stinner2014-09-021-135/+6
| | | | | threading.Lock.acquire(), threading.RLock.acquire() and socket operations now use a monotonic clock, instead of the system clock, when a timeout is used.
* Issue #22043: Oops, fix perf_counter() on UNIX if no monotonic clock isVictor Stinner2014-08-291-2/+1
| | | | available (unlikely)
* Issue #22043: Simplify time.perf_counter() on WindowsVictor Stinner2014-08-291-30/+16
| | | | | | QueryPerformanceFrequency() cannot fail on Windows XP and later according to its documentation: raise an exception on error and drop the fallback to the system clock.
* Issue #22043: _PyTime_Init() now checks if the system clock works.Victor Stinner2014-08-291-1/+4
| | | | | | | | | Other changes: * The whole _PyTime API is private (not defined if Py_LIMITED_API is set) * _PyTime_gettimeofday_info() also returns -1 on error * Simplify PyTime_gettimeofday(): only use clock_gettime(CLOCK_REALTIME) or gettimeofday() on UNIX. Don't fallback to ftime() or time() anymore.
* Issue #22287: On UNIX, _PyTime_gettimeofday() now usesVictor Stinner2014-08-291-22/+0
| | | | | | clock_gettime(CLOCK_REALTIME) if available. As a side effect, Python now depends on the librt library on Solaris and on Linux (only with glibc older than 2.17).
* timemodule.c: Replace PyExc_IOError with PyExc_OSErrorVictor Stinner2014-07-311-5/+5
|
* Issue #19748: On AIX, time.mktime() now raises an OverflowError for yearVictor Stinner2014-02-211-0/+11
| | | | outsize range [1902; 2037].
* Issue #20320: select.select() and select.kqueue.control() now round the timeoutVictor Stinner2014-02-161-2/+2
| | | | | | aways from zero, instead of rounding towards zero. It should make test_asyncio more reliable, especially test_timeout_rounding() test.
* Issue #19634: time.strftime("%y") now raises a ValueError on Solaris when givenVictor Stinner2013-11-231-1/+1
| | | | a year before 1900.
* Issue #19634: Fix time_strftime() on AIX, format is a wchar_t* not a PyObject*Victor Stinner2013-11-181-2/+1
|
* Issue #19634: time.strftime("%y") now raises a ValueError on AIX when given aVictor Stinner2013-11-171-0/+14
| | | | year before 1900.
* Issue13674 Correct crash with strftime %y format under WindowsTim Golden2013-11-121-0/+7
|\
| * Issue13674 Correct crash with strftime %y format under WindowsTim Golden2013-11-121-0/+7
| |
* | Issue #18520: Add a new PyStructSequence_InitType2() function, same thanVictor Stinner2013-07-221-2/+3
| | | | | | | | | | | | | | | | PyStructSequence_InitType() except that it has a return value (0 on success, -1 on error). * PyStructSequence_InitType2() now raises MemoryError on memory allocation failure * Fix also some calls to PyDict_SetItemString(): handle error
* | Issue #18408: Fix time.tzset(), detect exception when calling PyInit_timezone()Victor Stinner2013-07-171-0/+2
| |
* | Fix time.mktime() and datetime.datetime.timestamp() on AIXVictor Stinner2013-06-251-1/+10
| | | | | | | | | | | | On AIX, the C function mktime() alwaysd sets tm_wday, even on error. So tm_wday cannot be used as a sentinel to detect an error, we can only check if the result is (time_t)-1.
* | (Merge 3.3) Fix time.strftime("%Y") on AIX: raise a ValueError for year > 9999Victor Stinner2013-06-251-1/+1
|\ \ | |/ | | | | time.strtime("%Y") returned "2345" when formatting year 12345.
| * Fix time.strftime("%Y") on AIX: raise a ValueError for year > 9999Victor Stinner2013-06-251-1/+1
| | | | | | | | time.strtime("%Y") returned "2345" when formatting year 12345.
* | Merge.Richard Oudkerk2013-04-171-1/+5
|\ \ | |/
| * - Issue #17782: Fix undefined behaviour on platforms where ``struct ↵Antoine Pitrou2013-04-171-1/+5
| | | | | | | | timespec``'s "tv_nsec" member is not a C long.
* | Replace WaitForSingleObject with WaitForSingleObjectEx,Martin v. Löwis2013-01-251-1/+1
| | | | | | | | for better WinRT compatibility.
* | #16135: Removal of OS/2 support (Modules/*)Jesus Cea2012-10-051-27/+0
| |
* | Issue #9650: List commonly used format codes in time.strftime and ↵Alexander Belopolsky2012-10-021-3/+25
|/ | | | time.strptime docsttings.
* Issue #1667546: On platforms supporting tm_zone and tm_gmtoff fieldsAlexander Belopolsky2012-06-141-2/+34
| | | | | | in struct tm, time.struct_time objects returned by time.gmtime(), time.localtime() and time.strptime() functions now have tm_zone and tm_gmtoff attributes. Original patch by Paul Boddie.
* PEP 418: Rename adjusted attribute to adjustable in time.get_clock_info() resultVictor Stinner2012-06-121-21/+15
| | | | | | | | Fix also its value on Windows and Linux according to its documentation: "adjustable" indicates if the clock *can be* adjusted, not if it is or was adjusted. In most cases, it is not possible to indicate if a clock is or was adjusted.
* time.get_clock_info() uses a namespace instead of structseqVictor Stinner2012-06-121-37/+20
|
* Fixed a typo in time_localtime()Alexander Belopolsky2012-06-121-1/+1
|
* strip is_ prefixes on clock_info fieldsBenjamin Peterson2012-05-011-31/+31
|
* Issue #14428, #14397: Implement the PEP 418Victor Stinner2012-04-291-89/+460
| | | | | | | | | * Rename time.steady() to time.monotonic() * On Windows, time.monotonic() uses GetTickCount/GetTickCount64() instead of QueryPerformanceCounter() * time.monotonic() uses CLOCK_HIGHRES if available * Add time.get_clock_info(), time.perf_counter() and time.process_time() functions
* Fix clock_gettime/getres/settime: PyArg_ParseTuple() expects an intVictor Stinner2012-04-131-10/+4
| | | | Only use a single #ifdef for the 3 functions.
* Expose clock_settime() as time.clock_settime()Victor Stinner2012-04-021-0/+30
|
* Add time.CLOCK_HIGHRES constant, needed on SolarisVictor Stinner2012-04-021-0/+3
|
* time.time() now uses clock_gettime(CLOCK_REALTIME) if availableVictor Stinner2012-03-281-0/+11
| | | | | | clock_gettime(CLOCK_REALTIME) has a better resolution than gettimeofday(). time.time() falls back on gettimeofday() (and then on other functions) on error.
* Document the fact that mach_timebase_info() cannot failVictor Stinner2012-03-281-4/+8
| | | | And call mach_absolute_time() after mach_timebase_info().
* Fix time.steady(strict=True): don't use CLOCK_REALTIMEVictor Stinner2012-03-261-7/+28
|
* Issue #14368: _PyTime_gettimeofday() cannot failVictor Stinner2012-03-261-7/+1
| | | | floattime() must not raise an error if the current time is 1970.1.1 at 00:00.
* Issue #10278: Add an optional strict argument to time.steady(), False by defaultVictor Stinner2012-03-151-17/+41
|
* Issue #10278: Drop time.monotonic() function, rename time.wallclock() to ↵Victor Stinner2012-03-141-67/+15
| | | | | | | | | time.steady() * On Mac OS X, time.steady() now uses mach_absolute_time(), a monotonic clock * Optimistic change: bet that CLOCK_MONOTONIC and CLOCK_REALTIME are available when clock_gettime() is available * Rewrite time.steady() documentation
* Close #14180: Factorize code to convert a number of seconds to time_t, ↵Victor Stinner2012-03-131-6/+1
| | | | | | | | | | | | | timeval or timespec time.ctime(), gmtime(), time.localtime(), datetime.date.fromtimestamp(), datetime.datetime.fromtimestamp() and datetime.datetime.utcfromtimestamp() now raises an OverflowError, instead of a ValueError, if the timestamp does not fit in time_t. datetime.datetime.fromtimestamp() and datetime.datetime.utcfromtimestamp() now round microseconds towards zero instead of rounding to nearest with ties going away from zero.
* Issue #14104: Implement time.monotonic() on Mac OS X,Victor Stinner2012-03-121-1/+17
| | | | patch written by Nicholas Riley.
* Issue #14125: Fix refleak in timemodule.c on Windows. Thanks sbt for pointingStefan Krah2012-02-271-2/+3
| | | | | out the location of the problem. MS_WINDOWS currently implies !HAVE_WCSFTIME, so the addition of !defined(HAVE_WCSFTIME) is for readability.
* Backout f8409b3d6449: the PEP 410 is not accepted yetVictor Stinner2012-02-081-167/+74
|
* PEP 410Victor Stinner2012-02-081-74/+167
|