summaryrefslogtreecommitdiffstats
path: root/Misc
Commit message (Collapse)AuthorAgeFilesLines
* bpo-30346: An iterator produced by the itertools.groupby() iterator (#1569)Serhiy Storchaka2017-09-241-0/+2
| | | now becames exhausted after advancing the groupby iterator.
* bpo-31505: Fix an assertion failure in json, in case _json.make_encoder() ↵Oren Milman2017-09-241-0/+2
| | | | received a bad encoder() argument. (#3643)
* bpo-31459: Rename IDLE's module browser from Class Browser to Module ↵Cheryl Sabella2017-09-231-0/+7
| | | | | | | | | | | Browser. (#3704) The original module-level class and method browser became a module browser, with the addition of module-level functions, years ago. Nested classes and functions were added yesterday. For back- compatibility, the virtual event <<open-class-browser>>, which appears on the Keys tab of the Settings dialog, is not changed. Patch by Cheryl Sabella.
* bpo-31559: Remove test order dependence in idle_test.test_browser. (#3708)Terry Jan Reedy2017-09-231-0/+1
| | | | | Order dependence caused leak-test buildbots to fail when running test_idle repeatedly.
* bpo-1612262: IDLE: Class Browser shows nested functions, classes (#2573)Cheryl Sabella2017-09-221-0/+3
| | | | Original patches for code and tests by Guilherme Polo and Cheryl Sabella, respectively.
* bpo-17852: Maintain a list of BufferedWriter objects. Flush them on exit. ↵Neil Schemenauer2017-09-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#3372) * Maintain a list of BufferedWriter objects. Flush them on exit. In Python 3, the buffer and the underlying file object are separate and so the order in which objects are finalized matters. This is unlike Python 2 where the file and buffer were a single object and finalization was done for both at the same time. In Python 3, if the file is finalized and closed before the buffer then the data in the buffer is lost. This change adds a doubly linked list of open file buffers. An atexit hook ensures they are flushed before proceeding with interpreter shutdown. This is addition does not remove the need to properly close files as there are other reasons why buffered data could get lost during finalization. Initial patch by Armin Rigo. * Use weakref.WeakSet instead of WeakKeyDictionary. * Simplify buffered double-linked list types. * In _flush_all_writers(), suppress errors from flush(). * Remove NEWS entry, use blurb. * Take more care when flushing file buffers from atexit. The previous implementation was not careful enough to avoid causing issues in multi-threaded cases. Check for buf->ok and buf->finalizing before actually doing the flush. Also, increase the refcnt to ensure the object does not disappear.
* bpo-31389 Add an optional `header` argument to pdb.set_trace() (#3438)Barry Warsaw2017-09-221-0/+2
| | | | | | | | | | * Give pdb.set_trace() an optional `header` argument * What's new. * Give pdb.set_trace() an optional `header` argument * What's new.
* bpo-31410: Optimized calling wrapper and classmethod descriptors. (#3481)Serhiy Storchaka2017-09-211-0/+1
|
* bpo-27541: Reprs of subclasses of some classes now contain actual type name. ↵Serhiy Storchaka2017-09-211-0/+4
| | | | | (#3631) Affected classes are bytearray, array, deque, defaultdict, count and repeat.
* bpo-31351: Set return code in ensurepip when pip fails (GH-3626)Igor Filatov2017-09-211-0/+2
| | | | Previously ensurepip would always report success, even if the pip installation failed.
* bpo-31500: IDLE: Scale default fonts on HiDPI displays. (#3639)Serhiy Storchaka2017-09-211-0/+1
|
* bpo-31532: Fix memory corruption due to allocator mix (#3679)nurelin2017-09-211-0/+2
| | | | | | | | | | | | Fix a memory corruption in getpath.c due to mixed memory allocators between Py_GetPath() and Py_SetPath(). The fix use the Raw allocator to mimic the windows version. This patch should be used from python3.6 to the current version for more details, see the bug report and https://github.com/pyinstaller/pyinstaller/issues/2812
* bpo-31536: Avoid wholesale rebuild after `make regen-all` (#3678)Antoine Pitrou2017-09-201-0/+1
| | | | | | * bpo-31536: Avoid wholesale rebuild after `make regen-all` * Add NEWS
* bpo-26510: make argparse subparsers required by default (#3027)Anthony Sottile2017-09-201-0/+3
| | | | | | This fixes a regression from Python 2. To get optional subparsers, use the new parameter ``add_subparsers(required=False)``. Patch by Anthony Sottile.
* closes bpo-31525: require sqlite3_prepare_v2 (#3666)Benjamin Peterson2017-09-201-0/+1
| | | | | This is based on https://github.com/ghaering/pysqlite/commit/40b349cadbd87c42f70fc92e5e1aee6d02564c6d#diff-0489411409cd2934730e88bf7767790, though we can be a bit more aggressive about deleting code.
* bpo-31506: Improve the error message logic for object.__new__ and ↵Serhiy Storchaka2017-09-201-0/+1
| | | | object.__init__. (GH-3650)
* bpo-31293: Fix crashes in truediv and mul of a timedelta by a float with a ↵Oren Milman2017-09-191-0/+2
| | | | bad as_integer_ratio() method. (#3227)
* bpo-31315: Fix an assertion failure in imp.create_dynamic(), when spec.name ↵Oren Milman2017-09-191-0/+2
| | | | is not a string. (#3257)
* bpo-31492: Fix assertion failures in case of a module with a bad __name__ ↵Oren Milman2017-09-191-0/+3
| | | | attribute. (#3620)
* Update PyDoc topics and NEWS blurbs for 3.7.0a1Ned Deily2017-09-19642-1327/+6456
|
* bpo-31499, xml.etree: Fix xmlparser_gc_clear() crash (#3641)Victor Stinner2017-09-181-0/+1
| | | | | | | | | | * bpo-31499, xml.etree: Fix xmlparser_gc_clear() crash xml.etree: xmlparser_gc_clear() now sets self.parser to NULL to prevent a crash in xmlparser_dealloc() if xmlparser_gc_clear() was called previously by the garbage collector, because the parser was part of a reference cycle. Co-Authored-By: Serhiy Storchaka <storchaka@gmail.com>
* bpo-31482: Missing bytes support for random.seed() version 1 (#3614)Raymond Hettinger2017-09-171-0/+1
| | | bpo-31482: Missing bytes support for random.seed() version 1 #3614
* bpo-31490: Fix an assertion failure in ctypes in case an _anonymous_ attr is ↵Oren Milman2017-09-171-0/+3
| | | | defined only outside _fields_. (#3615)
* bpo-31493: Fix code context update and font update timers. (#3622)Terry Jan Reedy2017-09-171-0/+3
| | | | Canceling timers prevents a warning message when test_idle completes. (This is the minimum fix needed before upcoming releases.)
* bpo-31488: IDLE - update former extensions when options change. (#3612)Terry Jan Reedy2017-09-161-0/+4
| | | | | When apply changes, call .reload on each class with non-key options. Change ParenMatch so that updates affect current instances.
* bpo-28411: Support other mappings in PyInterpreterState.modules. (#3593)Eric Snow2017-09-151-0/+4
| | | | | The concrete PyDict_* API is used to interact with PyInterpreterState.modules in a number of places. This isn't compatible with all dict subclasses, nor with other Mapping implementations. This patch switches the concrete API usage to the corresponding abstract API calls. We also add a PyImport_GetModule() function (and some other helpers) to reduce a bunch of code duplication.
* bpo-31431: SSLContext.check_hostname auto-sets CERT_REQUIRED (#3531)Christian Heimes2017-09-151-0/+2
| | | Signed-off-by: Christian Heimes <christian@python.org>
* bpo-31346: Use PROTOCOL_TLS_CLIENT/SERVER (#3058)Christian Heimes2017-09-151-0/+1
| | | | | | Replaces PROTOCOL_TLSv* and PROTOCOL_SSLv23 with PROTOCOL_TLS_CLIENT and PROTOCOL_TLS_SERVER. Signed-off-by: Christian Heimes <christian@python.org>
* bpo-31386: Custom wrap_bio and wrap_socket type (#3426)Christian Heimes2017-09-151-0/+2
| | | | | | | | | SSLSocket.wrap_bio() and SSLSocket.wrap_socket() hard-code SSLObject and SSLSocket as return types. In the light of future deprecation of ssl.wrap_socket() module function and direct instantiation of SSLSocket, it is desirable to make the return type of SSLSocket.wrap_bio() and SSLSocket.wrap_socket() customizable. Signed-off-by: Christian Heimes <christian@python.org>
* bpo-314777: IDLE - improve rstrip entry in doc (#3602)Terry Jan Reedy2017-09-151-0/+2
| | | | | | | 'Strip trailing whitespace' is not limited to spaces. Wording caters to beginners who do know know the meaning of 'whitespace'. Multiline string literals are not skipped. * News blurb.
* bpo-31338 (#3374)Barry Warsaw2017-09-151-0/+3
| | | | | | | * Add Py_UNREACHABLE() as an alias to abort(). * Use Py_UNREACHABLE() instead of assert(0) * Convert more unreachable code to use Py_UNREACHABLE() * Document Py_UNREACHABLE() and a few other macros.
* bpo-31480: IDLE - fix tests to pass with zzdummy extension disabled. (#3590)Terry Jan Reedy2017-09-141-0/+1
| | | Enabled by default was a temporary expedient. The fix is to add a user override to enable.
* bpo-31128: Allow pydoc to bind to arbitrary hostnames (#3011)Feanil Patel2017-09-142-0/+2
| | | | New -n flag allow overriding localhost with custom value, for example to run from containers.
* bpo-31455: Fix an assertion failure in ElementTree.XMLParser(). (#3545)scoder2017-09-141-0/+2
| | | | | | * Avoid calling "PyObject_GetAttrString()" (and potentially executing user code) with a live exception set. * Ignore only AttributeError on attribute lookups in ElementTree.XMLParser() and propagate all other exceptions.
* bpo-31471: Fix assertion failure in subprocess.Popen() on Windows, in case ↵Oren Milman2017-09-141-0/+2
| | | | env has a bad keys() method. (#3580)
* bpo-28556: typing.get_type_hints: better globalns for classes and modules ↵Łukasz Langa2017-09-141-0/+2
| | | | | | | | | | | | | | | (#3582) This makes the default behavior (without specifying `globalns` manually) more predictable for users, finds the right globalns automatically. Implementation for classes assumes has a `__module__` attribute and that module is present in `sys.modules`. It does this recursively for all bases in the MRO. For modules, the implementation just uses their `__dict__` directly. This is backwards compatible, will just raise fewer exceptions in naive user code. Originally implemented and reviewed at https://github.com/python/typing/pull/470.
* bpo-28411: Isolate PyInterpreterState.modules (#3575)Eric Snow2017-09-141-0/+3
| | | | | A bunch of code currently uses PyInterpreterState.modules directly instead of PyImport_GetModuleDict(). This complicates efforts to make changes relative to sys.modules. This patch switches to using PyImport_GetModuleDict() uniformly. Also, a number of related uses of sys.modules are updated for uniformity for the same reason. Note that this code was already reviewed and merged as part of #1638. I reverted that and am now splitting it up into more focused parts.
* bpo-31457: Allow for nested LoggerAdapter objects (#3551)Łukasz Langa2017-09-141-0/+1
| | | | | | Some of the proxied methods use internal Logger state which isn't proxied, causing failures if an adapter is applied to another adapter. This commit fixes the issue, adds a new test for the use case.
* bpo-31404: Revert "remove modules from Py_InterpreterState (#1638)" (#3565)Eric Snow2017-09-141-4/+0
| | | PR #1638, for bpo-28411, causes problems in some (very) edge cases. Until that gets sorted out, we're reverting the merge. PR #3506, a fix on top of #1638, is also getting reverted.
* bpo-28556: Minor updates to typing module (#3550)Ivan Levkivskyi2017-09-131-0/+2
| | | | * Copy changes to typing from upstream repo * Add NEWS entry
* bpo-31418: Fix an assertion failure in PyErr_WriteUnraisable() in case of an ↵Oren Milman2017-09-131-0/+2
| | | | exception with a bad __module__ attribute. (#3539)
* bpo-31234, socket.create_connection(): Fix ref cycle (#3546)Victor Stinner2017-09-131-0/+2
|
* bpo-31233: socketserver.ThreadingMixIn.server_close() (#3523)Victor Stinner2017-09-131-0/+2
| | | | | | | | | socketserver.ThreadingMixIn now keeps a list of non-daemonic threads to wait until all these threads complete in server_close(). Reenable test_logging skipped tests. Fix SocketHandlerTest.tearDown(): close the socket handler before stopping the server, so the server can join threads.
* bpo-31421: Document how IDLE runs tkinter programs. (#3513)Terry Jan Reedy2017-09-121-0/+4
| | | | IDLE calls tcl/tk update in the background in order to make live interaction and experimentatin with tkinter applications much easier.
* bpo-31416: Fix assertion failures in case of a bad warnings.filters or ↵Oren Milman2017-09-111-0/+2
| | | | | warnings.defaultaction. (#3496) Patch by Oren Milman.
* bpo-31414: IDLE -- fix tk entry box tests by deleting first. (#3501)Terry Jan Reedy2017-09-111-0/+2
| | | | | Adding to an int entry is not the same as deleting and inserting because int('') will fail.
* bpo-31411: Prevent raising a SystemError in case warnings.onceregistry is ↵Oren Milman2017-09-111-0/+2
| | | | not a dictionary. (#3485)
* bpo-27099: IDLE - Convert built-in extensions to regular features (#2494)wohlganger2017-09-101-0/+20
| | | | | | | | | | | | | | | | | | | | | About 10 IDLE features were implemented as supposedly optional extensions. Their different behavior could be confusing or worse for users and not good for maintenance. Hence the conversion. The main difference for users is that user configurable key bindings for builtin features are now handled uniformly. Now, editing a binding in a keyset only affects its value in the keyset. All bindings are defined together in the system-specific default keysets in config- extensions.def. All custom keysets are saved as a whole in config- extension.cfg. All take effect as soon as one clicks Apply or Ok. The affected events are '<<force-open-completions>>', '<<expand-word>>', '<<force-open-calltip>>', '<<flash-paren>>', '<<format-paragraph>>', '<<run-module>>', '<<check-module>>', and '<<zoom-height>>'. Any (global) customizations made before 3.6.3 will not affect their keyset- specific customization after 3.6.3. and vice versa. Inital patch by Charles Wohlganger, revised by Terry Jan Reedy.
* bpo-28638: Optimize namedtuple() creation time by minimizing use of exec() ↵Raymond Hettinger2017-09-101-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#3454) * Working draft without _source * Re-use itemgetter() instances * Speed-up calls to __new__() with a pre-bound tuple.__new__() * Add note regarding string interning * Remove unnecessary create function wrappers * Minor sync-ups with PR-2736. Mostly formatting and f-strings * Bring-in qualname/__module fix-ups from PR-2736 * Formally remove the verbose flag and _source attribute * Restore a test of potentially problematic field names * Restore kwonly_args test but without the verbose option * Adopt Inada's idea to reuse the docstrings for the itemgetters * Neaten-up a bit * Add news blurb * Serhiy pointed-out the need for interning * Jelle noticed as missing f on an f-string * Add whatsnew entry for feature removal * Accede to request for dict literals instead keyword arguments * Leave the method.__module__ attribute pointing the actual location of the code * Improve variable names and add a micro-optimization for an non-public helper function * Simplify by in-lining reuse_itemgetter() * Arrange steps in more logical order * Save docstring in local cache instead of interning
* bpo-31392: Update SSL build for 1.1.0 (#3448)Steve Dower2017-09-091-0/+1
|