]> granicus.if.org Git - python/log
python
6 years agobpo-33234 Improve list() pre-sizing for inputs with known lengths (GH-9846)
Pablo Galindo [Sun, 28 Oct 2018 20:16:26 +0000 (20:16 +0000)]
bpo-33234 Improve list() pre-sizing for inputs with known lengths (GH-9846)

The list() constructor isn't taking full advantage of known input
lengths or length hints. This commit makes the constructor
pre-size and not over-allocate when the input size is known (the
input collection implements __len__). One on the main advantages is
that this provides 12% difference in memory savings due to the difference
between overallocating and allocating exactly the input size.

For efficiency purposes and to avoid a performance regression for small
generators and collections, the size of the input object is calculated using
__len__ and not __length_hint__, as the later is considerably slower.

6 years agoFix yet one error in checking Tcl version. (GH-10189)
Serhiy Storchaka [Sun, 28 Oct 2018 18:58:04 +0000 (20:58 +0200)]
Fix yet one error in checking Tcl version. (GH-10189)

6 years agobpo-34160: Preserve user specified order of Element attributes (GH-10163)
Raymond Hettinger [Sun, 28 Oct 2018 18:18:22 +0000 (11:18 -0700)]
bpo-34160: Preserve user specified order of Element attributes (GH-10163)

6 years agoFix checking for bugfix Tcl version. (GH-10185)
Serhiy Storchaka [Sun, 28 Oct 2018 17:48:36 +0000 (19:48 +0200)]
Fix checking for bugfix Tcl version. (GH-10185)

6 years agobpo-35090: Fix potential division by zero in allocator wrappers (GH-10174)
Alexey Izbyshev [Sun, 28 Oct 2018 16:45:50 +0000 (19:45 +0300)]
bpo-35090: Fix potential division by zero in allocator wrappers (GH-10174)

* Fix potential division by zero in BZ2_Malloc()
* Avoid division by zero in PyLzma_Malloc()
* Avoid division by zero and integer overflow in PyZlib_Malloc()

Reported by Svace static analyzer.

6 years agobpo-1529353: Explain Shell text squeezing in the IDLE doc. (#10169)
Terry Jan Reedy [Sun, 28 Oct 2018 16:44:44 +0000 (12:44 -0400)]
bpo-1529353: Explain Shell text squeezing in the IDLE doc. (#10169)

6 years agobpo-35089: Don't mention typing.io and typing.re (GH-10173)
Sebastian Rittau [Sun, 28 Oct 2018 16:03:29 +0000 (17:03 +0100)]
bpo-35089: Don't mention typing.io and typing.re (GH-10173)

https://bugs.python.org/issue35089

6 years agobpo-34672: fix a compiler warning in timemodule.c (GH-10176)
Xiang Zhang [Sun, 28 Oct 2018 15:58:42 +0000 (23:58 +0800)]
bpo-34672: fix a compiler warning in timemodule.c (GH-10176)

6 years agobpo-35064 prefix smelly symbols that appear with COUNT_ALLOCS with _Py_ (GH-10152)
Pablo Galindo [Sun, 28 Oct 2018 15:02:17 +0000 (15:02 +0000)]
bpo-35064 prefix smelly symbols that appear with COUNT_ALLOCS with _Py_ (GH-10152)

Configuring python with ./configure --with-pydebug CFLAGS="-D COUNT_ALLOCS -O0"
makes "make smelly" fail as some symbols were being exported without the "Py_" or
"_Py" prefixes.

6 years agobpo-32892: Support subclasses of base types in isinstance checks for AST constants...
Serhiy Storchaka [Sun, 28 Oct 2018 11:43:03 +0000 (13:43 +0200)]
bpo-32892: Support subclasses of base types in isinstance checks for AST constants. (GH-9934)

Some projects (e.g. Chameleon) create ast.Str containing an instance
of the str subclass.

6 years agobpo-35054: Add yet more index entries for symbols. (GH-10121)
Serhiy Storchaka [Sun, 28 Oct 2018 11:41:26 +0000 (13:41 +0200)]
bpo-35054: Add yet more index entries for symbols. (GH-10121)

6 years agoFix mistakes on function coroutines related definitions (GH-9871)
Andrés Delfino [Sun, 28 Oct 2018 10:41:57 +0000 (07:41 -0300)]
Fix mistakes on function coroutines related definitions (GH-9871)

Fix a bug I introduced in #9864 by which coroutines are treated as synonymous of function coroutines.

Also, fix the same mistake (coroutines == function coroutines) already present in other parts of the reference.

I'm very sorry for the hassle.

6 years agobpo-35088: Update idlelib.help.copy_string docstring (#10164)
Terry Jan Reedy [Sun, 28 Oct 2018 05:29:00 +0000 (01:29 -0400)]
bpo-35088: Update idlelib.help.copy_string docstring (#10164)

We now use git and backporting instead of hg and forward merging.

6 years agobpo-35087: Update idlelib help files for the current doc build. (GH-10162)
Terry Jan Reedy [Sun, 28 Oct 2018 05:21:36 +0000 (01:21 -0400)]
bpo-35087: Update idlelib help files for the current doc build. (GH-10162)

There is only one trivial change to idle.rst. Nearly all the changes to help.html are the elimination of chapter and section numbers on headers due to changes in the build system. help.py no longer requires header numbering.

6 years agobpo-34751: improved hash function for tuples (GH-9471)
jdemeyer [Sun, 28 Oct 2018 00:06:38 +0000 (02:06 +0200)]
bpo-34751: improved hash function for tuples (GH-9471)

6 years agobpo-35067: Remove _distutils_findvs and use vswhere.exe instead. (GH-10095)
Steve Dower [Sat, 27 Oct 2018 20:48:33 +0000 (16:48 -0400)]
bpo-35067: Remove _distutils_findvs and use vswhere.exe instead. (GH-10095)

6 years agounittest documentation: Spell pytest without the dot (GH-9820)
Andreas Pelme [Sat, 27 Oct 2018 18:09:12 +0000 (20:09 +0200)]
unittest documentation: Spell pytest without the dot (GH-9820)

Referring to ``pytest`` as ``py.test`` is deprecated.

6 years agoFix typo in zipfile documentation. (GH-10151)
nsrip [Sat, 27 Oct 2018 14:42:56 +0000 (10:42 -0400)]
Fix typo in zipfile documentation. (GH-10151)

6 years agobpo-33710: Deprecate l*gettext() and related functions in the gettext module. (GH...
Serhiy Storchaka [Sat, 27 Oct 2018 05:00:41 +0000 (08:00 +0300)]
bpo-33710: Deprecate l*gettext() and related functions in the gettext module. (GH-10139)

They return encoded bytes and are Python 2 artifacts.

6 years ago bpo-35079: Revise difflib.SequenceManager.get_matching_blocks doc (GH-10144)
Terry Jan Reedy [Sat, 27 Oct 2018 03:03:08 +0000 (23:03 -0400)]
 bpo-35079: Revise difflib.SequenceManager.get_matching_blocks doc (GH-10144)

Specify that blocks are non-overlapping. Change '!=' to '<'.

6 years agobpo-35042: Use the :pep: role where a PEP is specified (#10036)
Stéphane Wirtel [Fri, 26 Oct 2018 22:58:26 +0000 (00:58 +0200)]
bpo-35042: Use the :pep: role where a PEP is specified (#10036)

6 years agobpo-35024: Remove redundant and possibly incorrect verbose message after writing...
Quentin Agren [Fri, 26 Oct 2018 18:36:30 +0000 (20:36 +0200)]
bpo-35024: Remove redundant and possibly incorrect verbose message after writing '.pyc' (GH-9998)

Since `SourceFileLoader.set_data()` catches exceptions raised by `_write_atomic()` and logs an informative message consequently, always logging successful outcome in 'SourceLoader.get_code()' seems redundant.

https://bugs.python.org/issue35024

6 years agoFix a typo in asyncio-dev.rst. (GH-10133)
Benjamin Peterson [Fri, 26 Oct 2018 17:14:04 +0000 (10:14 -0700)]
Fix a typo in asyncio-dev.rst. (GH-10133)

"threadsafe"

6 years agobpo-9263: _PyXXX_CheckConsistency() use _PyObject_ASSERT() (GH-10108)
Victor Stinner [Fri, 26 Oct 2018 16:47:15 +0000 (18:47 +0200)]
bpo-9263: _PyXXX_CheckConsistency() use _PyObject_ASSERT() (GH-10108)

Use _PyObject_ASSERT() in:

* _PyDict_CheckConsistency()
* _PyType_CheckConsistency()
* _PyUnicode_CheckConsistency()

_PyObject_ASSERT() dumps the faulty object if the assertion fails
to help debugging.

6 years agobpo-9263: Use _PyObject_ASSERT() in typeobject.c (GH-10111)
Victor Stinner [Fri, 26 Oct 2018 16:39:11 +0000 (18:39 +0200)]
bpo-9263: Use _PyObject_ASSERT() in typeobject.c (GH-10111)

Replace assert() with _PyObject_ASSERT() in Objects/typeobject.c
to dump the faulty object on assertion failure to ease debugging.

6 years agobpo-9263: Use _PyObject_ASSERT() in gcmodule.c (GH-10112)
Victor Stinner [Fri, 26 Oct 2018 16:00:13 +0000 (18:00 +0200)]
bpo-9263: Use _PyObject_ASSERT() in gcmodule.c (GH-10112)

Replace assert() with _PyObject_ASSERT() in Modules/gcmodule.c
to dump the faulty object on assertion failure to ease debugging.

Fix also indentation of a large comment.

Initial patch written by David Malcolm.

Co-Authored-By: David Malcolm <dmalcolm@redhat.com>
6 years agobpo-9263: Use _PyObject_ASSERT() in object.c (GH-10110)
Victor Stinner [Fri, 26 Oct 2018 15:16:37 +0000 (17:16 +0200)]
bpo-9263: Use _PyObject_ASSERT() in object.c (GH-10110)

Replace assert() with _PyObject_ASSERT() in Objects/object.c to dump
the faulty object on assertion failure to ease debugging.

6 years agobpo-35059, libmpdec: Add missing EXTINLINE in mpdecimal.h (GH-10128)
Victor Stinner [Fri, 26 Oct 2018 15:06:57 +0000 (17:06 +0200)]
bpo-35059, libmpdec: Add missing EXTINLINE in mpdecimal.h (GH-10128)

Declare functions with EXTINLINE:

* mpd_del()
* mpd_uint_zero()
* mpd_qresize()
* mpd_qresize_zero()
* mpd_minalloc()

These functions are implemented with "inline" or "ALWAYS_INLINE", but
declared without inline which cause linker error on Visual Studio in
Debug mode when using /Ob1.

6 years agobpo-34789: make xml.sax.make_parser accept iterables of all types (GH-9576)
Andrés Delfino [Fri, 26 Oct 2018 14:56:57 +0000 (11:56 -0300)]
bpo-34789: make xml.sax.make_parser accept iterables of all types (GH-9576)

6 years agobpo-35017, socketserver: don't accept request after shutdown (GH-9952)
Denis Ledoux [Fri, 26 Oct 2018 13:46:17 +0000 (15:46 +0200)]
bpo-35017, socketserver: don't accept request after shutdown (GH-9952)

Prior to this revision, after the shutdown of a `BaseServer`,
the server accepted a last single request
if it was sent between the server socket polling
and the polling timeout.

This can be problematic for instance for a server restart
for which you do not want to interrupt the service,
by not closing the listening socket during the restart.
One request failed because of this behavior.

Note that only one request failed,
following requests were not accepted, as expected.

6 years agoSimplify the warning for http.server. (#10116)
Senthil Kumaran [Fri, 26 Oct 2018 13:43:37 +0000 (06:43 -0700)]
Simplify the warning for http.server. (#10116)

6 years agobpo-35059, PCbuild: Expand inline funcs in Debug (GH-10094)
Victor Stinner [Fri, 26 Oct 2018 13:10:29 +0000 (15:10 +0200)]
bpo-35059, PCbuild: Expand inline funcs in Debug (GH-10094)

Visual Studio solution: Set InlineFunctionExpansion to
OnlyExplicitInline ("/Ob1" option) on all projects (in
pyproject.props) in Debug mode on Win32 and x64 platforms to expand
functions marked as inline.

This change should make Python compiled in Debug mode a little bit
faster on Windows. On Unix, GCC uses -Og optimization level for
./configure --with-pydebug.

6 years agobpo-35059: Convert PyObject_INIT() to function (GH-10077)
Victor Stinner [Fri, 26 Oct 2018 12:35:00 +0000 (14:35 +0200)]
bpo-35059: Convert PyObject_INIT() to function (GH-10077)

* Convert PyObject_INIT() and PyObject_INIT_VAR() macros to static
  inline functions.
* Fix usage of these functions: cast to PyObject* or PyVarObject*.

6 years agobpo-34890: Make iscoroutinefunction, isgeneratorfunction and isasyncgenfunction work...
Pablo Galindo [Fri, 26 Oct 2018 11:19:14 +0000 (12:19 +0100)]
bpo-34890: Make iscoroutinefunction, isgeneratorfunction and isasyncgenfunction work with functools.partial (GH-9903)

inspect.isfunction() processes both inspect.isfunction(func) and
inspect.isfunction(partial(func, arg)) correctly but some other functions in the
inspect module (iscoroutinefunction, isgeneratorfunction and isasyncgenfunction)
lack this functionality. This commits adds a new check in the mentioned functions
in the inspect module so they can work correctly with arbitrarily nested partial
functions.

6 years agobpo-35044, doc: Use the :exc: role for the exceptions (GH-10037)
Stéphane Wirtel [Fri, 26 Oct 2018 10:52:11 +0000 (12:52 +0200)]
bpo-35044, doc: Use the :exc: role for the exceptions (GH-10037)

6 years agobpo-35054: Add more index entries for symbols. (GH-10064)
Serhiy Storchaka [Fri, 26 Oct 2018 06:00:49 +0000 (09:00 +0300)]
bpo-35054: Add more index entries for symbols. (GH-10064)

6 years agobpo-9263: _Py_NegativeRefcount() use _PyObject_AssertFailed() (GH-10109)
Victor Stinner [Fri, 26 Oct 2018 00:12:34 +0000 (02:12 +0200)]
bpo-9263: _Py_NegativeRefcount() use _PyObject_AssertFailed() (GH-10109)

_Py_NegativeRefcount() now uses _PyObject_AssertFailed() to dump the
object to help debugging.

6 years agobpo-35053: Define _PyTraceMalloc_NewReference in object.h (GH-10107)
Victor Stinner [Thu, 25 Oct 2018 22:01:56 +0000 (00:01 +0200)]
bpo-35053: Define _PyTraceMalloc_NewReference in object.h (GH-10107)

_PyTraceMalloc_NewReference() is now called by _Py_NewReference(), so
move its definition to object.h. Moreover, define it even if
Py_LIMITED_API is defined, since _Py_NewReference() is also exposed
even if Py_LIMITED_API is defined.

6 years agobpo-35022: unittest.mock.MagicMock now also supports __fspath__ (GH-9960)
Max Bélanger [Thu, 25 Oct 2018 21:48:58 +0000 (14:48 -0700)]
bpo-35022: unittest.mock.MagicMock now also supports __fspath__ (GH-9960)

The MagicMock class supports many magic methods, but not __fspath__. To ease
testing with modules such as os.path, this function is now supported by default.

6 years agobpo-35038: AttributeError: 'frame' object has no attribute 'f_restricted'. (GH-10098)
Stéphane Wirtel [Thu, 25 Oct 2018 21:13:45 +0000 (23:13 +0200)]
bpo-35038: AttributeError: 'frame' object has no attribute 'f_restricted'. (GH-10098)

https://bugs.python.org/issue35038

6 years agoFix grammar in using/unix build instruction docs (GH-10009)
Stéphane Wirtel [Thu, 25 Oct 2018 15:32:30 +0000 (17:32 +0200)]
Fix grammar in using/unix build instruction docs (GH-10009)

6 years agobpo-9263: Dump Python object on GC assertion failure (GH-10062)
Victor Stinner [Thu, 25 Oct 2018 15:31:10 +0000 (17:31 +0200)]
bpo-9263: Dump Python object on GC assertion failure (GH-10062)

Changes:

* Add _PyObject_AssertFailed() function.
* Add _PyObject_ASSERT() and _PyObject_ASSERT_WITH_MSG() macros.
* gc_decref(): replace assert() with _PyObject_ASSERT_WITH_MSG() to
  dump the faulty object if the assertion fails.

_PyObject_AssertFailed() calls:

* _PyMem_DumpTraceback(): try to log the traceback where the object
  memory has been allocated if tracemalloc is enabled.
* _PyObject_Dump(): log repr(obj).
* Py_FatalError(): log the current Python traceback.

_PyObject_AssertFailed() uses _PyObject_IsFreed() heuristic to check
if the object memory has been freed by a debug hook on Python memory
allocators.

Initial patch written by David Malcolm.

Co-Authored-By: David Malcolm <dmalcolm@redhat.com>
6 years agobpo-35059: Add Py_STATIC_INLINE() macro (GH-10093)
Victor Stinner [Thu, 25 Oct 2018 15:28:11 +0000 (17:28 +0200)]
bpo-35059: Add Py_STATIC_INLINE() macro (GH-10093)

* Add Py_STATIC_INLINE() macro to declare a "static inline" function.
  If the compiler supports it, try to always inline the function even if no
  optimization level was specified.
* Modify pydtrace.h to use Py_STATIC_INLINE() when WITH_DTRACE is
  not defined.
* Add an unit test on Py_DECREF() to make sure that
  _Py_NegativeRefcount() reports the correct filename.

6 years agobpo-31047: Fix ntpath.abspath to trim ending separator (GH-10082)
Tim Graham [Thu, 25 Oct 2018 15:26:38 +0000 (11:26 -0400)]
bpo-31047: Fix ntpath.abspath to trim ending separator (GH-10082)

Regression in b0bf51b32240369ccb736dc32ff82bb96f375402.

6 years agobpo-32321: Add pure Python fallback for functools.reduce (GH-8548)
madman-bob [Thu, 25 Oct 2018 14:02:10 +0000 (15:02 +0100)]
bpo-32321: Add pure Python fallback for functools.reduce (GH-8548)

6 years agobpo-35053: Add Include/tracemalloc.h (GH-10091)
Victor Stinner [Thu, 25 Oct 2018 13:54:13 +0000 (15:54 +0200)]
bpo-35053: Add Include/tracemalloc.h (GH-10091)

* Modify object.h to ensure that pymem.h is included,
  to get _Py_tracemalloc_config variable.
* Move _PyTraceMalloc_XXX() functions to tracemalloc.h,
  they need PyObject type. Break circular dependency between pymem.h
  and object.h.

6 years agobpo-35053: Enhance tracemalloc to trace free lists (GH-10063)
Victor Stinner [Thu, 25 Oct 2018 11:31:16 +0000 (13:31 +0200)]
bpo-35053: Enhance tracemalloc to trace free lists (GH-10063)

tracemalloc now tries to update the traceback when an object is
reused from a "free list" (optimization for faster object creation,
used by the builtin list type for example).

Changes:

* Add _PyTraceMalloc_NewReference() function which tries to update
  the Python traceback of a Python object.
* _Py_NewReference() now calls _PyTraceMalloc_NewReference().
* Add an unit test.

6 years agoimportlib: Fix typo in SourceLoader.path_stats docstring (GH-10052)
Quentin [Thu, 25 Oct 2018 11:04:28 +0000 (13:04 +0200)]
importlib: Fix typo in SourceLoader.path_stats docstring (GH-10052)

6 years agobpo-28015: Support LTO build with clang (GH-9908)
serge-sans-paille [Wed, 24 Oct 2018 23:54:22 +0000 (01:54 +0200)]
bpo-28015: Support LTO build with clang (GH-9908)

.o generated by clang in LTO mode actually are LLVM bitcode files, which
leads to a few errors during configure/build step:

- add lto flags to the BASECFLAGS instead of CFLAGS, as CFLAGS are used
  to build autoconf test case, and some are not compatible with clang LTO
  (they assume binary in the .o, not bitcode)
- force llvm-ar instead of ar, as ar is not aware of .o files generated
  by clang -flto

6 years agoconfigparser doc: Properly label ConfigParser attributes (GH-9930)
Ned Batchelder [Wed, 24 Oct 2018 23:47:01 +0000 (19:47 -0400)]
configparser doc: Properly label ConfigParser attributes (GH-9930)

6 years agoimportlib doc: Fix approximated import_module() code (GH-9945)
orlnub123 [Wed, 24 Oct 2018 23:32:26 +0000 (02:32 +0300)]
importlib doc: Fix approximated import_module() code (GH-9945)

The spec gets stored on modules with the __spec__ attribute, not spec.

6 years agobpo-35027, distutils doc: Correct note on setup.py change in Python 3.7 (GH-10032)
TilmanK [Wed, 24 Oct 2018 22:50:25 +0000 (00:50 +0200)]
bpo-35027, distutils doc: Correct note on setup.py change in Python 3.7 (GH-10032)

6 years agoturtledemo/penrose.py: remove unused clock() calls (GH-10033)
Srinivas Thatiparthy (శ్రీనివాస్ తాటిపర్తి) [Wed, 24 Oct 2018 22:43:39 +0000 (04:13 +0530)]
turtledemo/penrose.py: remove unused clock() calls (GH-10033)

Actually time calculations were remove in commit 891a1f8.

6 years agoUse f-strings in asyncio-task code examples (GH-10035)
Mariatta [Wed, 24 Oct 2018 22:37:12 +0000 (15:37 -0700)]
Use f-strings in asyncio-task code examples (GH-10035)

Replace str.format with f-strings in the code examples of asyncio-task documentation.

6 years agobpo-32797: improve documentation of linecache.getline (GH-9540)
jdemeyer [Wed, 24 Oct 2018 12:44:41 +0000 (14:44 +0200)]
bpo-32797: improve documentation of linecache.getline (GH-9540)

6 years agobpo-33899: Mention tokenize behavior change in What's New (GH-10073)
Tal Einat [Wed, 24 Oct 2018 07:20:05 +0000 (10:20 +0300)]
bpo-33899: Mention tokenize behavior change in What's New (GH-10073)

6 years agobpo-30863: Rewrite PyUnicode_AsWideChar() and PyUnicode_AsWideCharString(). (GH-2599)
Serhiy Storchaka [Tue, 23 Oct 2018 19:58:24 +0000 (22:58 +0300)]
bpo-30863: Rewrite PyUnicode_AsWideChar() and PyUnicode_AsWideCharString(). (GH-2599)

They no longer cache the wchar_t* representation of string objects.

6 years agobpo-34794: Fix a leak in Tkinter. (GH-10025)
Serhiy Storchaka [Tue, 23 Oct 2018 19:40:54 +0000 (22:40 +0300)]
bpo-34794: Fix a leak in Tkinter. (GH-10025)

Based on the investigation by Xiang Zhang.

6 years agoFix error handling bugs in _elementtree.c. (GH-10060)
Zackery Spytz [Tue, 23 Oct 2018 19:28:06 +0000 (13:28 -0600)]
Fix error handling bugs in _elementtree.c. (GH-10060)

References could leak, NULL could be dereferenced, and the Expat parser could
be double freed when some errors raised.

6 years agobpo-9263: _PyObject_Dump() detects freed memory (GH-10061)
Victor Stinner [Tue, 23 Oct 2018 15:39:40 +0000 (17:39 +0200)]
bpo-9263: _PyObject_Dump() detects freed memory (GH-10061)

_PyObject_Dump() now uses an heuristic to check if the object memory
has been freed: log "<freed object>" in that case.

The heuristic rely on the debug hooks on Python memory allocators
which fills the memory with DEADBYTE (0xDB) when memory is
deallocated. Use PYTHONMALLOC=debug to always enable these debug
hooks.

6 years agoAdd macos-team as a code owner (GH-10045)
Ned Deily [Tue, 23 Oct 2018 13:37:02 +0000 (09:37 -0400)]
Add macos-team as a code owner (GH-10045)

6 years agobpo-34980: P/Invoke QueryFullProcessImageName to get process names (GH-9901)
Jeremy Kloth [Tue, 23 Oct 2018 11:41:48 +0000 (05:41 -0600)]
bpo-34980: P/Invoke QueryFullProcessImageName to get process names (GH-9901)

6 years agobpo-34260, shutil: fix copy2 and copystat documentation (GH-8523)
Zsolt Cserna [Tue, 23 Oct 2018 10:09:50 +0000 (12:09 +0200)]
bpo-34260, shutil: fix copy2 and copystat documentation (GH-8523)

Fix the documentation of copy2, as it does not copy file ownership (user and
group), only mode, mtime, atime and flags.

The original text was confusing to developers as it suggested that this
command is the same as 'cp -p', but according to cp(1), '-p' copies file
ownership as well.

Clarify which metadata is copied by shutil.copystat in its docstring.

6 years agobpo-35028: cgi: Fix max_num_fields off by one error (GH-9973)
matthewbelisle-wf [Tue, 23 Oct 2018 08:14:35 +0000 (03:14 -0500)]
bpo-35028: cgi: Fix max_num_fields off by one error (GH-9973)

https://bugs.python.org/issue35028

6 years agobpo-35046: do only one system call per line (logging.StreamHandler) (GH-10042)
Josh Snyder [Tue, 23 Oct 2018 06:48:38 +0000 (23:48 -0700)]
bpo-35046: do only one system call per line (logging.StreamHandler) (GH-10042)

6 years agobpo-34482: test datetime classes' handling of non-UTF-8-encodable strings (GH-8878)
Alexey Izbyshev [Tue, 23 Oct 2018 06:36:08 +0000 (09:36 +0300)]
bpo-34482: test datetime classes' handling of non-UTF-8-encodable strings (GH-8878)

6 years agobpo-34748: link to :ref:`partial-objects` in functools.partial doc. (GH-9809)
Andrei Petre [Tue, 23 Oct 2018 06:11:20 +0000 (23:11 -0700)]
bpo-34748: link to :ref:`partial-objects` in functools.partial doc. (GH-9809)

6 years agobpo-34454: Clean up datetime.fromisoformat surrogate handling (GH-8959)
Paul Ganssle [Mon, 22 Oct 2018 16:32:52 +0000 (12:32 -0400)]
bpo-34454: Clean up datetime.fromisoformat surrogate handling (GH-8959)

* Use _PyUnicode_Copy in sanitize_isoformat_str

* Use repr in fromisoformat error message

This reverses commit 67b74a98b2 per Serhiy Storchaka's suggestion:

     I suggested to use %R in the error message because including the raw
     string can be confusing in the case of empty string, or string
     containing trailing whitespaces, invisible or unprintable characters.

We agree that it is better to change both the C and pure Python versions
to use repr.

* Retain non-sanitized dtstr for error printing

This does not create an extra string, it just holds on to a reference to
the original input string for purposes of creating the error message.

* PEP 7 fixes to from_isoformat

* Separate handling of Unicode and other errors

In the initial implementation, errors other than encoding errors would
both raise an error indicating an invalid format, which would not be
true for errors like MemoryError.

* Drop needs_decref from _sanitize_isoformat_str

Instead _sanitize_isoformat_str returns a new reference, even to the
original string.

6 years agoFix issue 34551 - remove redundant store (#9009)
Eric Lippert [Mon, 22 Oct 2018 15:52:46 +0000 (08:52 -0700)]
Fix issue 34551 - remove redundant store (#9009)

The assignment of i/2 to nk is redundant because on this code path, nk is already the size of the dictionary, and i is already twice the size of the dictionary. I've replaced the store with an assertion that i/2 is nk.

6 years agobpo-29843: raise AttributeError if given negative _length_ (GH-10029)
Tal Einat [Mon, 22 Oct 2018 15:33:10 +0000 (18:33 +0300)]
bpo-29843: raise AttributeError if given negative _length_ (GH-10029)

Raise ValueError OverflowError in case of a negative
_length_ in a ctypes.Array subclass.  Also raise TypeError
instead of AttributeError for non-integer _length_.

Co-authored-by: Oren Milman <orenmn@gmail.com>
6 years agobpo-34081: Fix wrong example link that was linking to distutils (GH-8248)
Xtreak [Sun, 21 Oct 2018 14:54:52 +0000 (20:24 +0530)]
bpo-34081: Fix wrong example link that was linking to distutils (GH-8248)

6 years agobpo-35036: Remove empty log line in the suspicious.py tool (GH-10024)
Xtreak [Sun, 21 Oct 2018 12:57:32 +0000 (18:27 +0530)]
bpo-35036: Remove empty log line in the suspicious.py tool (GH-10024)

Previous to commit ee171a2 the logline was working because of self.info() (now
deprecated) defaults to an empty message.

6 years agobpo-34984: Improve error messages for bytes and bytearray constructors. (GH-9874)
Serhiy Storchaka [Sun, 21 Oct 2018 12:29:12 +0000 (15:29 +0300)]
bpo-34984: Improve error messages for bytes and bytearray constructors. (GH-9874)

6 years agobpo-34973: Fix crash in bytes constructor. (GH-9841)
Serhiy Storchaka [Sun, 21 Oct 2018 12:25:53 +0000 (15:25 +0300)]
bpo-34973: Fix crash in bytes constructor. (GH-9841)

Constructing bytes from mutating list could cause a crash.

6 years agobpo-8525: help() on a type now shows builtin subclasses (GH-5066)
Sanyam Khurana [Sun, 21 Oct 2018 07:22:02 +0000 (00:22 -0700)]
bpo-8525: help() on a type now shows builtin subclasses (GH-5066)

For builtin types with builtin subclasses, help() on the type now shows up
to 4 of the subclasses. This partially replaces the exception hierarchy
information previously displayed in Python 2.7.

6 years agobpo-35029: Replace the SyntaxWarning exception with a SyntaxError. (GH-9999)
Serhiy Storchaka [Sun, 21 Oct 2018 07:09:39 +0000 (10:09 +0300)]
bpo-35029: Replace the SyntaxWarning exception with a SyntaxError. (GH-9999)

If SyntaxWarning was raised as an exception, it will be replaced
with a SyntaxError for better error reporting.

6 years agoUpdate codeowners to match experts list change (#10022)
Nick Coghlan [Sun, 21 Oct 2018 04:22:15 +0000 (14:22 +1000)]
Update codeowners to match experts list change (#10022)

6 years agocloses bpo-35025: Properly guard the `CLOCK_GETTIME` et al macros in timemodule.c...
Max Bélanger [Sun, 21 Oct 2018 00:07:54 +0000 (17:07 -0700)]
closes bpo-35025: Properly guard the `CLOCK_GETTIME` et al macros in timemodule.c. (GH-9961)

Guard the `CLOCK_GETTIME` et al macros in `timemodule` based on the availability of the parent functions

6 years agoRemove ">>>" from testsetup. (GH-10017)
Benjamin Peterson [Sat, 20 Oct 2018 23:51:05 +0000 (16:51 -0700)]
Remove ">>>" from testsetup. (GH-10017)

Fixes doc build breakage from 890a4b92933be8e7c554222d99ef829c88fa8637.

6 years agobpo-35020: Link to sorting examples from list.sort() (GH-9931)
Xtreak [Sat, 20 Oct 2018 21:39:03 +0000 (03:09 +0530)]
bpo-35020: Link to sorting examples from list.sort() (GH-9931)

6 years agobpo-34576 - Fix the formatting for security considerations in http.server.rst (#10005)
Senthil Kumaran [Sat, 20 Oct 2018 18:32:07 +0000 (11:32 -0700)]
bpo-34576 - Fix the formatting for security considerations in http.server.rst (#10005)

* bpo-34576 - Fix the formatting for security considerations in http.server.rst

* Address review comment.

6 years agoEncrypt Zulip webhook address (GH-10010)
Zachary Ware [Sat, 20 Oct 2018 16:35:21 +0000 (11:35 -0500)]
Encrypt Zulip webhook address (GH-10010)

This should reduce false failure reports to the Zulip 'core/test runs'
stream from Travis failures on private forks.

6 years agobpo-35032: Remove inaccessible videos from faq/Windows (GH-10004)
Stéphane Wirtel [Sat, 20 Oct 2018 15:27:03 +0000 (17:27 +0200)]
bpo-35032: Remove inaccessible videos from faq/Windows (GH-10004)

https://bugs.python.org/issue35032

6 years agobpo-34839: Add a 'before 3.6' in the section 'warnings' of doctest (GH-9736)
Stéphane Wirtel [Sat, 20 Oct 2018 08:43:32 +0000 (10:43 +0200)]
bpo-34839: Add a 'before 3.6' in the section 'warnings' of doctest (GH-9736)

6 years agobpo-34574: Prevent OrderedDict iterators from exhaustion during pickling. (GH-9051)
Sergey Fedoseev [Sat, 20 Oct 2018 05:20:39 +0000 (10:20 +0500)]
bpo-34574: Prevent OrderedDict iterators from exhaustion during pickling. (GH-9051)

6 years agobpo-34909: NEWS entry (GH-9995)
Ned Deily [Sat, 20 Oct 2018 04:44:21 +0000 (00:44 -0400)]
bpo-34909: NEWS entry (GH-9995)

6 years agobpo-32256: Make patchcheck.py work for out-of-tree builds (GH-4760)
Alexey Izbyshev [Sat, 20 Oct 2018 00:49:41 +0000 (03:49 +0300)]
bpo-32256: Make patchcheck.py work for out-of-tree builds (GH-4760)

Set SRCDIR as the current directory for git.

6 years agobpo-34983: Expose symtable.Symbol.is_nonlocal() in the symtable module (GH-9872)
Pablo Galindo [Sat, 20 Oct 2018 00:46:00 +0000 (01:46 +0100)]
bpo-34983: Expose symtable.Symbol.is_nonlocal() in the symtable module (GH-9872)

The symbol table was not exposing functionality to query the nonlocal symbols
in a function or to check if a particular symbol is nonlocal.

6 years agobpo-34573: Simplify __reduce__() of set and dict iterators. (GH-9050)
Sergey Fedoseev [Sat, 20 Oct 2018 00:43:33 +0000 (05:43 +0500)]
bpo-34573: Simplify __reduce__() of set and dict iterators. (GH-9050)

Simplify the pickling of set and dictionary objects iterators by consuming
the iterator into a list with PySequence_List.

6 years agobpo-32798: Add restriction on the offset parameter for mmap.flush in the docs (#5621)
Pablo Galindo [Sat, 20 Oct 2018 00:37:55 +0000 (01:37 +0100)]
bpo-32798: Add restriction on the offset parameter for mmap.flush in the docs (#5621)

Add restriction on the offset parameter for mmap.flush.

Explain that ALLOCATIONGRANULARITY is the same as PAGESIZE in Unix.

6 years agobpo-21196: Clarify name mangling rules in tutorial (GH-5667)
Berker Peksag [Sat, 20 Oct 2018 00:33:48 +0000 (03:33 +0300)]
bpo-21196: Clarify name mangling rules in tutorial (GH-5667)

Initial patch by Chandan Kumar.

6 years agobpo-32890, os: Use errno instead of GetLastError() in execve() and truncate() (GH...
Alexey Izbyshev [Sat, 20 Oct 2018 00:28:22 +0000 (03:28 +0300)]
bpo-32890, os: Use errno instead of GetLastError() in execve() and truncate() (GH-5784)

path_error() uses GetLastError() on Windows, but some os functions
are implemented via CRT APIs which report errors via errno.
This may result in raising OSError with invalid error code (such
as zero).

Introduce posix_path_error() function and use it where appropriate.

6 years agobpo-32236: open() emits RuntimeWarning if buffering=1 for binary mode (GH-4842)
Alexey Izbyshev [Sat, 20 Oct 2018 00:22:31 +0000 (03:22 +0300)]
bpo-32236: open() emits RuntimeWarning if buffering=1 for binary mode (GH-4842)

If buffering=1 is specified for open() in binary mode, it is silently
treated as buffering=-1 (i.e., the default buffer size).
Coupled with the fact that line buffering is always supported in Python 2,
such behavior caused several issues (e.g., bpo-10344, bpo-21332).

Warn that line buffering is not supported if open() is called with
binary mode and buffering=1.

6 years agobpo-34536: Cleanup test_enum imports (GH-9979)
Victor Stinner [Fri, 19 Oct 2018 23:57:19 +0000 (01:57 +0200)]
bpo-34536: Cleanup test_enum imports (GH-9979)

sys and threading were imported twice.

6 years agobpo-33594: Add deprecation info in inspect.py module (GH-7036)
Matthias Bussonnier [Fri, 19 Oct 2018 23:40:45 +0000 (16:40 -0700)]
bpo-33594: Add deprecation info in inspect.py module (GH-7036)

6 years agobpo-33726, doc: Add short descriptions to PEP references in seealso (GH-7294)
Andrés Delfino [Fri, 19 Oct 2018 23:31:15 +0000 (20:31 -0300)]
bpo-33726, doc: Add short descriptions to PEP references in seealso (GH-7294)

6 years agobpo-33712: OrderedDict only creates od_fast_nodes cache if needed (GH-7349)
Serhiy Storchaka [Fri, 19 Oct 2018 23:27:45 +0000 (02:27 +0300)]
bpo-33712: OrderedDict only creates od_fast_nodes cache if needed (GH-7349)

6 years agoElaborate datetime.timedelta docstring (GH-7458)
Chris Barker [Fri, 19 Oct 2018 22:43:24 +0000 (15:43 -0700)]
Elaborate datetime.timedelta docstring (GH-7458)

6 years agobpo-34070: open() only checks for isatty if buffering < 0 (GH-8187)
David Herberth [Fri, 19 Oct 2018 22:32:04 +0000 (00:32 +0200)]
bpo-34070: open() only checks for isatty if buffering < 0 (GH-8187)

6 years agoqueue doc: Clarify that the simple FIFO queue is SimpleQueue (GH-8372)
Julien Palard [Fri, 19 Oct 2018 22:27:49 +0000 (00:27 +0200)]
queue doc: Clarify that the simple FIFO queue is SimpleQueue (GH-8372)