summaryrefslogtreecommitdiffstats
path: root/Include
Commit message (Collapse)AuthorAgeFilesLines
* Post-release fixes for 3.5.0b1.Larry Hastings2015-05-241-1/+1
|
* Version bump for 3.5.0b1.v3.5.0b1Larry Hastings2015-05-241-3/+3
|
* Issue #24268: Adds PyModuleDef_Init and PyModuleDef_Type to python3.def ↵Steve Dower2015-05-231-1/+1
| | | | (stable ABI)
* PEP 489: Multi-phase extension module initializationNick Coghlan2015-05-232-24/+54
| | | | | | | | | | | | | | | | | | | | | | | Known limitations of the current implementation: - documentation changes are incomplete - there's a reference leak I haven't tracked down yet The leak is most visible by running: ./python -m test -R3:3 test_importlib However, you can also see it by running: ./python -X showrefcount Importing the array or _testmultiphase modules, and then deleting them from both sys.modules and the local namespace shows significant increases in the total number of active references each cycle. By contrast, with _testcapi (which continues to use single-phase initialisation) the global refcounts stabilise after a couple of cycles.
* Issue #24221: Small optimizations for heapq.Raymond Hettinger2015-05-221-0/+1
| | | | | | | Replaces the PyList_GET_ITEM and PyList_SET_ITEM macros with normal array accesses. Replace the siftup unpredicatable branch with arithmetic. Replace the rc == -1 tests with rc < 0. Gives nicer looking assembly with both Clang and GCC-4.9. Also gives a small performance both for both.
* Issue #22486: Added the math.gcd() function. The fractions.gcd() function ↵Serhiy Storchaka2015-05-121-0/+3
| | | | | | now is deprecated. Based on patch by Mark Dickinson.
* Fix warnings for PyEval_GetCoroutineWrapperYury Selivanov2015-05-121-1/+1
|
* PEP 0492 -- Coroutines with async and await syntax. Issue #24017.Yury Selivanov2015-05-1211-152/+229
|
* PEP 479: Change StopIteration handling inside generators.Yury Selivanov2015-05-093-1/+4
| | | | Closes issue #22906.
* PEP 448: additional unpacking generalizations (closes #2292)Benjamin Peterson2015-05-063-12/+15
| | | | Patch by Neil Girdhar.
* remove the concept of an unoptimized function scope from the compiler, since ↵Benjamin Peterson2015-04-281-5/+0
| | | | it can't happen anymore
* Add the files missing from c9f1630cf2b1 for issue9951.Gregory P. Smith2015-04-261-0/+17
| | | | hg status should be my friend more often...
* Merge Python 3.5.0a4 release engineering commits.Larry Hastings2015-04-201-6/+0
|\
| * Issue #23908: os functions now reject paths with embedded null characterSerhiy Storchaka2015-04-201-6/+0
| |\ | | | | | | | | | | | | | | | on Windows instead of silently truncate them. Removed no longer used _PyUnicode_HasNULChars().
* | | Post-release updates for Python 3.5.0a4.Larry Hastings2015-04-201-1/+1
| | |
* | | Version number bump for Python 3.5.0a4.v3.5.0a4Larry Hastings2015-04-191-2/+2
|/ /
* | Issue #23943: Fix typos. Patch by Piotr Kasprzyk.Berker Peksag2015-04-142-2/+2
|\ \ | |/
| * Issue #23943: Fix typos. Patch by Piotr Kasprzyk.Berker Peksag2015-04-142-2/+2
| |
| * Merge 3.4.3 release engineering changes back into 3.4.Larry Hastings2015-02-261-1/+1
| |\
| * | Post-release changes for 3.4.3.Larry Hastings2015-02-261-1/+1
| | |
| * | Release bump for 3.4.3 final.Larry Hastings2015-02-231-3/+3
| | |
* | | Issue #23524: Replace _PyVerify_fd function with calls to ↵Steve Dower2015-04-122-1/+21
| | | | | | | | | | | | _set_thread_local_invalid_parameter_handler.
* | | Issue #23834: Fix the default socket timeoutVictor Stinner2015-04-091-1/+6
| | | | | | | | | | | | Use -1 second by default, not -1 nanosecond.
* | | Removed trailing whitespaces in miscalenous files.Serhiy Storchaka2015-04-031-2/+2
| | |
* | | Issue #22117: Add a new _PyTime_FromSeconds() functionVictor Stinner2015-04-031-1/+4
| | | | | | | | | | | | | | | Fix also _Py_InitializeEx_Private(): initialize time before initializing import, import_init() uses the _PyTime API (for thread locks).
* | | Issue #23836: Add _Py_write_noraise() functionVictor Stinner2015-04-011-0/+5
| | | | | | | | | | | | | | | Helper to write() which retries write() if it is interrupted by a signal (fails with EINTR).
* | | Issue #23485: Add _PyTime_FromMillisecondsObject() functionVictor Stinner2015-03-301-1/+7
| | |
* | | Fix PY_VERSION in Include/patchlevel.h to reflect our post-3.5.0a3 state.Larry Hastings2015-03-301-1/+1
| | |
* | | Merge 3.5.0a3 release engineering changes back into trunk.Larry Hastings2015-03-302-56/+56
|\ \ \
| * | | Issue #23752: _Py_fstat() is now responsible to raise the Python exceptionVictor Stinner2015-03-301-2/+6
| | | | | | | | | | | | | | | | Add _Py_fstat_noraise() function when a Python exception is not welcome.
| * | | Issue #22117: Remove _PyTime_ROUND_DOWN and _PyTime_ROUND_UP rounding methodsVictor Stinner2015-03-301-6/+1
| | | | | | | | | | | | | | | | Use _PyTime_ROUND_FLOOR and _PyTime_ROUND_CEILING instead.
| * | | Issue #22117: Add _PyTime_ROUND_CEILING rounding method for timestampsVictor Stinner2015-03-301-1/+4
| | | | | | | | | | | | | | | | Add also more tests for ROUNd_FLOOR.
| * | | Issue #22117: Fix usage of _PyTime_AsTimeval()Victor Stinner2015-03-301-1/+7
| | | | | | | | | | | | | | | | | | | | Add _PyTime_AsTimeval_noraise() function. Call it when it's not possible (or not useful) to raise a Python exception on overflow.
| * | | Issue #22117: Cleanup pytime.c/.hVictor Stinner2015-03-291-37/+37
| | | |
| * | | Issue #22117: Use the _PyTime_t API in _datetime.datetime() constructorVictor Stinner2015-03-291-14/+6
| | | | | | | | | | | | | | | | | | | | * Remove _PyTime_gettimeofday() * Add _PyTime_GetSystemClock()
* | | | Release bump for Python 3.5.0a3.v3.5.0a3Larry Hastings2015-03-291-2/+2
|/ / /
* | | Issue #22117: Add the new _PyTime_ROUND_FLOOR rounding method for the datetimeVictor Stinner2015-03-281-2/+9
| | | | | | | | | | | | | | | module. time.clock_settime() now uses this rounding method instead of _PyTime_ROUND_DOWN to handle correctly dates before 1970.
* | | Issue #22117: Use the _PyTime_t API for time.clock_settime()Victor Stinner2015-03-281-5/+0
| | | | | | | | | | | | Remove also the now unused _PyTime_AddDouble() function.
* | | Issue #22117: Use the new _PyTime_t API in the select moduleVictor Stinner2015-03-281-1/+1
| | |
* | | Issue #22117: The thread module uses the new _PyTime_t timestamp APIVictor Stinner2015-03-281-18/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add also a new _PyTime_AsMicroseconds() function. threading.TIMEOUT_MAX is now be smaller: only 292 years instead of 292,271 years on 64-bit system for example. Sorry, your threads will hang a *little bit* shorter. Call me if you want to ensure that your locks wait longer, I can share some tricks with you.
* | | Issue #22117: remove _PyTime_INTERVAL() macroVictor Stinner2015-03-281-10/+0
| | |
* | | Issue #22117: Write unit tests for _PyTime_AsTimeval()Victor Stinner2015-03-281-1/+3
| | | | | | | | | | | | | | | | | | | | | * _PyTime_AsTimeval() now ensures that tv_usec is always positive * _PyTime_AsTimespec() now ensures that tv_nsec is always positive * _PyTime_AsTimeval() now returns an integer on overflow instead of raising an exception
* | | Issue #22117: The signal modules uses the new _PyTime_t APIVictor Stinner2015-03-271-0/+6
| | | | | | | | | | | | | | | * Add _PyTime_AsTimespec() * Add unit tests for _PyTime_AsTimespec()
* | | Issue #22117: time.time() now uses the new _PyTime_t APIVictor Stinner2015-03-271-0/+8
| | | | | | | | | | | | * Add _PyTime_GetSystemClockWithInfo()
* | | Issue #22117: time.monotonic() now uses the new _PyTime_t APIVictor Stinner2015-03-271-1/+20
| | | | | | | | | | | | | | | | | | * Add _PyTime_FromNanoseconds() * Add _PyTime_AsSecondsDouble() * Add unit tests for _PyTime_AsSecondsDouble()
* | | Issue #22117: Fix rounding in _PyTime_FromSecondsObject()Victor Stinner2015-03-271-3/+6
| | | | | | | | | | | | | | | | | | * Rename _PyTime_FromObject() to _PyTime_FromSecondsObject() * Add _PyTime_AsNanosecondsObject() and _testcapi.pytime_fromsecondsobject() * Add unit tests
* | | Issue #22117: Add a new Python timestamp format _PyTime_t to pytime.hVictor Stinner2015-03-271-0/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | Issue #23753: Move _Py_wstat() from Python/fileutils.c to Modules/getpath.cVictor Stinner2015-03-241-4/+0
| | | | | | | | | | | | | | | | | | | | | I expected more users of _Py_wstat(), but in practice it's only used by Modules/getpath.c. Move the function because it's not needed on Windows. Windows uses PC/getpathp.c which uses the Win32 API (ex: GetFileAttributesW()) not the POSIX API.
* | | Issue #23753: Python doesn't support anymore platforms without stat() orVictor Stinner2015-03-242-28/+0
| | | | | | | | | | | | | | | | | | | | | fstat(), these functions are always required. Remove HAVE_STAT and HAVE_FSTAT defines, and stop supporting DONT_HAVE_STAT and DONT_HAVE_FSTAT.
* | | Issue #23571: _Py_CheckFunctionResult() now gives the name of the functionVictor Stinner2015-03-211-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | which returned an invalid result (result+error or no result without error) in the exception message. Add also unit test to check that the exception contains the name of the function. Special case: the final _PyEval_EvalFrameEx() check doesn't mention the function since it didn't execute a single function but a whole frame.