From webhook-mailer at python.org Fri Feb 1 01:13:48 2019 From: webhook-mailer at python.org (Raymond Hettinger) Date: Fri, 01 Feb 2019 06:13:48 -0000 Subject: [Python-checkins] Speed-up argument parsing for common cases in deque.__init__()(GH-11717) Message-ID: https://github.com/python/cpython/commit/05f1b93f5876ac970485ae008dd9ab3e8404f934 commit: 05f1b93f5876ac970485ae008dd9ab3e8404f934 branch: master author: Raymond Hettinger committer: GitHub date: 2019-01-31T22:13:43-08:00 summary: Speed-up argument parsing for common cases in deque.__init__()(GH-11717) files: M Modules/_collectionsmodule.c diff --git a/Modules/_collectionsmodule.c b/Modules/_collectionsmodule.c index a2b683e16663..280b15d73b1f 100644 --- a/Modules/_collectionsmodule.c +++ b/Modules/_collectionsmodule.c @@ -1463,9 +1463,13 @@ deque_init(dequeobject *deque, PyObject *args, PyObject *kwdargs) Py_ssize_t maxlen = -1; char *kwlist[] = {"iterable", "maxlen", 0}; - if (kwdargs == NULL) { - if (!PyArg_UnpackTuple(args, "deque()", 0, 2, &iterable, &maxlenobj)) - return -1; + if (kwdargs == NULL && PyTuple_GET_SIZE(args) <= 2) { + if (PyTuple_GET_SIZE(args) > 0) { + iterable = PyTuple_GET_ITEM(args, 0); + } + if (PyTuple_GET_SIZE(args) > 1) { + maxlenobj = PyTuple_GET_ITEM(args, 1); + } } else { if (!PyArg_ParseTupleAndKeywords(args, kwdargs, "|OO:deque", kwlist, &iterable, &maxlenobj)) From solipsis at pitrou.net Fri Feb 1 04:12:36 2019 From: solipsis at pitrou.net (solipsis at pitrou.net) Date: Fri, 01 Feb 2019 09:12:36 +0000 Subject: [Python-checkins] Daily reference leaks (4243df51fe43): sum=-3 Message-ID: <20190201091236.1.88E321FDD40EB3FE@psf.io> results for 4243df51fe43 on branch "default" -------------------------------------------- test_collections leaked [-7, 1, 0] memory blocks, sum=-6 test_functools leaked [0, 3, 1] memory blocks, sum=4 test_multiprocessing_fork leaked [1, 0, -2] memory blocks, sum=-1 Command line was: ['./python', '-m', 'test.regrtest', '-uall', '-R', '3:3:/home/psf-users/antoine/refleaks/reflogshwApT', '--timeout', '7200'] From webhook-mailer at python.org Fri Feb 1 05:05:35 2019 From: webhook-mailer at python.org (Victor Stinner) Date: Fri, 01 Feb 2019 10:05:35 -0000 Subject: [Python-checkins] bpo-35537: Add setsid parameter to os.posix_spawn() and os.posix_spawnp() (GH-11608) Message-ID: https://github.com/python/cpython/commit/80c5dfe74b4402d0a220c9227f262ec6fde1d7fc commit: 80c5dfe74b4402d0a220c9227f262ec6fde1d7fc branch: master author: Joannah Nanjekye <33177550+nanjekyejoannah at users.noreply.github.com> committer: Victor Stinner date: 2019-02-01T11:05:22+01:00 summary: bpo-35537: Add setsid parameter to os.posix_spawn() and os.posix_spawnp() (GH-11608) files: A Misc/NEWS.d/next/Library/2019-01-18-13-44-13.bpo-35537.R1lbTl.rst M Doc/library/os.rst M Lib/test/test_posix.py M Modules/clinic/posixmodule.c.h M Modules/posixmodule.c diff --git a/Doc/library/os.rst b/Doc/library/os.rst index 2aa51f875d9e..aa1316b1f24a 100644 --- a/Doc/library/os.rst +++ b/Doc/library/os.rst @@ -3386,7 +3386,7 @@ written in Python, such as a mail server's external command delivery program. .. function:: posix_spawn(path, argv, env, *, file_actions=None, \ - setpgroup=None, resetids=False, setsigmask=(), \ + setpgroup=None, resetids=False, setsid=False, setsigmask=(), \ setsigdef=(), scheduler=None) Wraps the :c:func:`posix_spawn` C library API for use from Python. @@ -3444,6 +3444,11 @@ written in Python, such as a mail server's external command delivery program. setting of the effective UID and GID. This argument corresponds to the C library :c:data:`POSIX_SPAWN_RESETIDS` flag. + If the *setsid* argument is ``True``, it will create a new session ID + for `posix_spawn`. *setsid* requires :c:data:`POSIX_SPAWN_SETSID` + or :c:data:`POSIX_SPAWN_SETSID_NP` flag. Otherwise, :exc:`NotImplementedError` + is raised. + The *setsigmask* argument will set the signal mask to the signal set specified. If the parameter is not used, then the child inherits the parent's signal mask. This argument corresponds to the C library @@ -3462,9 +3467,10 @@ written in Python, such as a mail server's external command delivery program. .. versionadded:: 3.7 + .. availability:: Unix. .. function:: posix_spawnp(path, argv, env, *, file_actions=None, \ - setpgroup=None, resetids=False, setsigmask=(), \ + setpgroup=None, resetids=False, setsid=False, setsigmask=(), \ setsigdef=(), scheduler=None) Wraps the :c:func:`posix_spawnp` C library API for use from Python. @@ -3475,6 +3481,8 @@ written in Python, such as a mail server's external command delivery program. .. versionadded:: 3.8 + .. availability:: See :func:`posix_spawn` documentation. + .. function:: register_at_fork(*, before=None, after_in_parent=None, \ after_in_child=None) diff --git a/Lib/test/test_posix.py b/Lib/test/test_posix.py index 165b83713408..bc7a2d6fb3dc 100644 --- a/Lib/test/test_posix.py +++ b/Lib/test/test_posix.py @@ -1624,6 +1624,22 @@ def test_setsigmask_wrong_type(self): os.environ, setsigmask=[signal.NSIG, signal.NSIG+1]) + def test_start_new_session(self): + # For code coverage of calling setsid(). We don't care if we get an + # EPERM error from it depending on the test execution environment, that + # still indicates that it was called. + code = "import os; print(os.getpgid(os.getpid()))" + try: + self.spawn_func(sys.executable, + [sys.executable, "-c", code], + os.environ, setsid=True) + except NotImplementedError as exc: + self.skipTest("setsid is not supported: %s" % exc) + else: + parent_pgid = os.getpgid(os.getpid()) + child_pgid = int(output) + self.assertNotEqual(parent_pgid, child_pgid) + @unittest.skipUnless(hasattr(signal, 'pthread_sigmask'), 'need signal.pthread_sigmask()') def test_setsigdef(self): diff --git a/Misc/NEWS.d/next/Library/2019-01-18-13-44-13.bpo-35537.R1lbTl.rst b/Misc/NEWS.d/next/Library/2019-01-18-13-44-13.bpo-35537.R1lbTl.rst new file mode 100644 index 000000000000..56f23a179a4b --- /dev/null +++ b/Misc/NEWS.d/next/Library/2019-01-18-13-44-13.bpo-35537.R1lbTl.rst @@ -0,0 +1 @@ +:func:`os.posix_spawn` and :func:`os.posix_spawnp` now have a *setsid* parameter. \ No newline at end of file diff --git a/Modules/clinic/posixmodule.c.h b/Modules/clinic/posixmodule.c.h index ce17709c38ba..d47618ce25c0 100644 --- a/Modules/clinic/posixmodule.c.h +++ b/Modules/clinic/posixmodule.c.h @@ -1726,8 +1726,8 @@ os_execve(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *k PyDoc_STRVAR(os_posix_spawn__doc__, "posix_spawn($module, path, argv, env, /, *, file_actions=(),\n" -" setpgroup=None, resetids=False, setsigmask=(),\n" -" setsigdef=(), scheduler=None)\n" +" setpgroup=None, resetids=False, setsid=False,\n" +" setsigmask=(), setsigdef=(), scheduler=None)\n" "--\n" "\n" "Execute the program specified by path in a new process.\n" @@ -1743,7 +1743,9 @@ PyDoc_STRVAR(os_posix_spawn__doc__, " setpgroup\n" " The pgroup to use with the POSIX_SPAWN_SETPGROUP flag.\n" " resetids\n" -" If the value is `True` the POSIX_SPAWN_RESETIDS will be activated.\n" +" If the value is `true` the POSIX_SPAWN_RESETIDS will be activated.\n" +" setsid\n" +" If the value is `true` the POSIX_SPAWN_SETSID or POSIX_SPAWN_SETSID_NP will be activated.\n" " setsigmask\n" " The sigmask to use with the POSIX_SPAWN_SETSIGMASK flag.\n" " setsigdef\n" @@ -1757,30 +1759,32 @@ PyDoc_STRVAR(os_posix_spawn__doc__, static PyObject * os_posix_spawn_impl(PyObject *module, path_t *path, PyObject *argv, PyObject *env, PyObject *file_actions, - PyObject *setpgroup, int resetids, PyObject *setsigmask, - PyObject *setsigdef, PyObject *scheduler); + PyObject *setpgroup, int resetids, int setsid, + PyObject *setsigmask, PyObject *setsigdef, + PyObject *scheduler); static PyObject * os_posix_spawn(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) { PyObject *return_value = NULL; - static const char * const _keywords[] = {"", "", "", "file_actions", "setpgroup", "resetids", "setsigmask", "setsigdef", "scheduler", NULL}; - static _PyArg_Parser _parser = {"O&OO|$OOiOOO:posix_spawn", _keywords, 0}; + static const char * const _keywords[] = {"", "", "", "file_actions", "setpgroup", "resetids", "setsid", "setsigmask", "setsigdef", "scheduler", NULL}; + static _PyArg_Parser _parser = {"O&OO|$OOiiOOO:posix_spawn", _keywords, 0}; path_t path = PATH_T_INITIALIZE("posix_spawn", "path", 0, 0); PyObject *argv; PyObject *env; PyObject *file_actions = NULL; PyObject *setpgroup = NULL; int resetids = 0; + int setsid = 0; PyObject *setsigmask = NULL; PyObject *setsigdef = NULL; PyObject *scheduler = NULL; if (!_PyArg_ParseStackAndKeywords(args, nargs, kwnames, &_parser, - path_converter, &path, &argv, &env, &file_actions, &setpgroup, &resetids, &setsigmask, &setsigdef, &scheduler)) { + path_converter, &path, &argv, &env, &file_actions, &setpgroup, &resetids, &setsid, &setsigmask, &setsigdef, &scheduler)) { goto exit; } - return_value = os_posix_spawn_impl(module, &path, argv, env, file_actions, setpgroup, resetids, setsigmask, setsigdef, scheduler); + return_value = os_posix_spawn_impl(module, &path, argv, env, file_actions, setpgroup, resetids, setsid, setsigmask, setsigdef, scheduler); exit: /* Cleanup for path */ @@ -1795,8 +1799,8 @@ os_posix_spawn(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObje PyDoc_STRVAR(os_posix_spawnp__doc__, "posix_spawnp($module, path, argv, env, /, *, file_actions=(),\n" -" setpgroup=None, resetids=False, setsigmask=(),\n" -" setsigdef=(), scheduler=None)\n" +" setpgroup=None, resetids=False, setsid=False,\n" +" setsigmask=(), setsigdef=(), scheduler=None)\n" "--\n" "\n" "Execute the program specified by path in a new process.\n" @@ -1813,6 +1817,8 @@ PyDoc_STRVAR(os_posix_spawnp__doc__, " The pgroup to use with the POSIX_SPAWN_SETPGROUP flag.\n" " resetids\n" " If the value is `True` the POSIX_SPAWN_RESETIDS will be activated.\n" +" setsid\n" +" If the value is `True` the POSIX_SPAWN_SETSID or POSIX_SPAWN_SETSID_NP will be activated.\n" " setsigmask\n" " The sigmask to use with the POSIX_SPAWN_SETSIGMASK flag.\n" " setsigdef\n" @@ -1826,30 +1832,32 @@ PyDoc_STRVAR(os_posix_spawnp__doc__, static PyObject * os_posix_spawnp_impl(PyObject *module, path_t *path, PyObject *argv, PyObject *env, PyObject *file_actions, - PyObject *setpgroup, int resetids, PyObject *setsigmask, - PyObject *setsigdef, PyObject *scheduler); + PyObject *setpgroup, int resetids, int setsid, + PyObject *setsigmask, PyObject *setsigdef, + PyObject *scheduler); static PyObject * os_posix_spawnp(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) { PyObject *return_value = NULL; - static const char * const _keywords[] = {"", "", "", "file_actions", "setpgroup", "resetids", "setsigmask", "setsigdef", "scheduler", NULL}; - static _PyArg_Parser _parser = {"O&OO|$OOiOOO:posix_spawnp", _keywords, 0}; + static const char * const _keywords[] = {"", "", "", "file_actions", "setpgroup", "resetids", "setsid", "setsigmask", "setsigdef", "scheduler", NULL}; + static _PyArg_Parser _parser = {"O&OO|$OOiiOOO:posix_spawnp", _keywords, 0}; path_t path = PATH_T_INITIALIZE("posix_spawnp", "path", 0, 0); PyObject *argv; PyObject *env; PyObject *file_actions = NULL; PyObject *setpgroup = NULL; int resetids = 0; + int setsid = 0; PyObject *setsigmask = NULL; PyObject *setsigdef = NULL; PyObject *scheduler = NULL; if (!_PyArg_ParseStackAndKeywords(args, nargs, kwnames, &_parser, - path_converter, &path, &argv, &env, &file_actions, &setpgroup, &resetids, &setsigmask, &setsigdef, &scheduler)) { + path_converter, &path, &argv, &env, &file_actions, &setpgroup, &resetids, &setsid, &setsigmask, &setsigdef, &scheduler)) { goto exit; } - return_value = os_posix_spawnp_impl(module, &path, argv, env, file_actions, setpgroup, resetids, setsigmask, setsigdef, scheduler); + return_value = os_posix_spawnp_impl(module, &path, argv, env, file_actions, setpgroup, resetids, setsid, setsigmask, setsigdef, scheduler); exit: /* Cleanup for path */ @@ -7331,4 +7339,4 @@ os_getrandom(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject #ifndef OS_GETRANDOM_METHODDEF #define OS_GETRANDOM_METHODDEF #endif /* !defined(OS_GETRANDOM_METHODDEF) */ -/*[clinic end generated code: output=dabd0fa27bf87044 input=a9049054013a1b77]*/ +/*[clinic end generated code: output=d50ff73e5b5198b9 input=a9049054013a1b77]*/ diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index b25b5220cdb3..e516b5bed33a 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -5166,10 +5166,11 @@ convert_sched_param(PyObject *param, struct sched_param *res); #endif static int -parse_posix_spawn_flags(PyObject *setpgroup, int resetids, PyObject *setsigmask, +parse_posix_spawn_flags(PyObject *setpgroup, int resetids, int setsid, PyObject *setsigmask, PyObject *setsigdef, PyObject *scheduler, posix_spawnattr_t *attrp) { + const char *func_name = "posix_spawnp"; long all_flags = 0; errno = posix_spawnattr_init(attrp); @@ -5195,6 +5196,17 @@ parse_posix_spawn_flags(PyObject *setpgroup, int resetids, PyObject *setsigmask, all_flags |= POSIX_SPAWN_RESETIDS; } + if (setsid) { +#ifdef POSIX_SPAWN_SETSID + all_flags |= POSIX_SPAWN_SETSID; +#elif defined(POSIX_SPAWN_SETSID_NP) + all_flags |= POSIX_SPAWN_SETSID_NP; +#else + argument_unavailable_error(func_name, "setsid"); + return -1; +#endif + } + if (setsigmask) { sigset_t set; if (!_Py_Sigset_Converter(setsigmask, &set)) { @@ -5385,7 +5397,7 @@ parse_file_actions(PyObject *file_actions, static PyObject * py_posix_spawn(int use_posix_spawnp, PyObject *module, path_t *path, PyObject *argv, PyObject *env, PyObject *file_actions, - PyObject *setpgroup, int resetids, PyObject *setsigmask, + PyObject *setpgroup, int resetids, int setsid, PyObject *setsigmask, PyObject *setsigdef, PyObject *scheduler) { EXECV_CHAR **argvlist = NULL; @@ -5400,7 +5412,7 @@ py_posix_spawn(int use_posix_spawnp, PyObject *module, path_t *path, PyObject *a pid_t pid; int err_code; - /* posix_spawn has three arguments: (path, argv, env), where + /* posix_spawn and posix_spawnp have three arguments: (path, argv, env), where argv is a list or tuple of strings and env is a dictionary like posix.environ. */ @@ -5455,7 +5467,7 @@ py_posix_spawn(int use_posix_spawnp, PyObject *module, path_t *path, PyObject *a file_actionsp = &file_actions_buf; } - if (parse_posix_spawn_flags(setpgroup, resetids, setsigmask, + if (parse_posix_spawn_flags(setpgroup, resetids, setsid, setsigmask, setsigdef, scheduler, &attr)) { goto exit; } @@ -5519,7 +5531,9 @@ os.posix_spawn setpgroup: object = NULL The pgroup to use with the POSIX_SPAWN_SETPGROUP flag. resetids: bool(accept={int}) = False - If the value is `True` the POSIX_SPAWN_RESETIDS will be activated. + If the value is `true` the POSIX_SPAWN_RESETIDS will be activated. + setsid: bool(accept={int}) = False + If the value is `true` the POSIX_SPAWN_SETSID or POSIX_SPAWN_SETSID_NP will be activated. setsigmask: object(c_default='NULL') = () The sigmask to use with the POSIX_SPAWN_SETSIGMASK flag. setsigdef: object(c_default='NULL') = () @@ -5533,12 +5547,13 @@ Execute the program specified by path in a new process. static PyObject * os_posix_spawn_impl(PyObject *module, path_t *path, PyObject *argv, PyObject *env, PyObject *file_actions, - PyObject *setpgroup, int resetids, PyObject *setsigmask, - PyObject *setsigdef, PyObject *scheduler) -/*[clinic end generated code: output=45dfa4c515d09f2c input=2891c2f1d457e39b]*/ + PyObject *setpgroup, int resetids, int setsid, + PyObject *setsigmask, PyObject *setsigdef, + PyObject *scheduler) +/*[clinic end generated code: output=14a1098c566bc675 input=8c6305619a00ad04]*/ { return py_posix_spawn(0, module, path, argv, env, file_actions, - setpgroup, resetids, setsigmask, setsigdef, + setpgroup, resetids, setsid, setsigmask, setsigdef, scheduler); } #endif /* HAVE_POSIX_SPAWN */ @@ -5563,6 +5578,8 @@ os.posix_spawnp The pgroup to use with the POSIX_SPAWN_SETPGROUP flag. resetids: bool(accept={int}) = False If the value is `True` the POSIX_SPAWN_RESETIDS will be activated. + setsid: bool(accept={int}) = False + If the value is `True` the POSIX_SPAWN_SETSID or POSIX_SPAWN_SETSID_NP will be activated. setsigmask: object(c_default='NULL') = () The sigmask to use with the POSIX_SPAWN_SETSIGMASK flag. setsigdef: object(c_default='NULL') = () @@ -5576,12 +5593,13 @@ Execute the program specified by path in a new process. static PyObject * os_posix_spawnp_impl(PyObject *module, path_t *path, PyObject *argv, PyObject *env, PyObject *file_actions, - PyObject *setpgroup, int resetids, PyObject *setsigmask, - PyObject *setsigdef, PyObject *scheduler) -/*[clinic end generated code: output=7955dc0edc82b8c3 input=b7576eb25b1ed9eb]*/ + PyObject *setpgroup, int resetids, int setsid, + PyObject *setsigmask, PyObject *setsigdef, + PyObject *scheduler) +/*[clinic end generated code: output=7b9aaefe3031238d input=c1911043a22028da]*/ { return py_posix_spawn(1, module, path, argv, env, file_actions, - setpgroup, resetids, setsigmask, setsigdef, + setpgroup, resetids, setsid, setsigmask, setsigdef, scheduler); } #endif /* HAVE_POSIX_SPAWNP */ From webhook-mailer at python.org Fri Feb 1 05:40:30 2019 From: webhook-mailer at python.org (Victor Stinner) Date: Fri, 01 Feb 2019 10:40:30 -0000 Subject: [Python-checkins] bpo-35537: Skip test_start_new_session() of posix_spawn (GH-11718) Message-ID: https://github.com/python/cpython/commit/1e39b83f24ffade3e0ca1a8004b461354f64ae08 commit: 1e39b83f24ffade3e0ca1a8004b461354f64ae08 branch: master author: Victor Stinner committer: GitHub date: 2019-02-01T11:40:26+01:00 summary: bpo-35537: Skip test_start_new_session() of posix_spawn (GH-11718) The test fails. Skip the test until a fix can be found. files: M Lib/test/test_posix.py diff --git a/Lib/test/test_posix.py b/Lib/test/test_posix.py index bc7a2d6fb3dc..e980dd014cd8 100644 --- a/Lib/test/test_posix.py +++ b/Lib/test/test_posix.py @@ -1624,6 +1624,8 @@ def test_setsigmask_wrong_type(self): os.environ, setsigmask=[signal.NSIG, signal.NSIG+1]) + @unittest.skipIf(True, + "FIXME: bpo-35537: test fails is setsid is supported") def test_start_new_session(self): # For code coverage of calling setsid(). We don't care if we get an # EPERM error from it depending on the test execution environment, that From webhook-mailer at python.org Fri Feb 1 09:47:30 2019 From: webhook-mailer at python.org (Victor Stinner) Date: Fri, 01 Feb 2019 14:47:30 -0000 Subject: [Python-checkins] bpo-35537: Fix function name in os.posix_spawnp() errors (GH-11719) Message-ID: https://github.com/python/cpython/commit/325e4bac5ab49f47ec60242d3242647605193a2e commit: 325e4bac5ab49f47ec60242d3242647605193a2e branch: master author: Victor Stinner committer: GitHub date: 2019-02-01T15:47:24+01:00 summary: bpo-35537: Fix function name in os.posix_spawnp() errors (GH-11719) files: M Modules/posixmodule.c diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index e516b5bed33a..0f6bd1490434 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -5166,11 +5166,11 @@ convert_sched_param(PyObject *param, struct sched_param *res); #endif static int -parse_posix_spawn_flags(PyObject *setpgroup, int resetids, int setsid, PyObject *setsigmask, +parse_posix_spawn_flags(const char *func_name, PyObject *setpgroup, + int resetids, int setsid, PyObject *setsigmask, PyObject *setsigdef, PyObject *scheduler, posix_spawnattr_t *attrp) { - const char *func_name = "posix_spawnp"; long all_flags = 0; errno = posix_spawnattr_init(attrp); @@ -5400,6 +5400,7 @@ py_posix_spawn(int use_posix_spawnp, PyObject *module, path_t *path, PyObject *a PyObject *setpgroup, int resetids, int setsid, PyObject *setsigmask, PyObject *setsigdef, PyObject *scheduler) { + const char *func_name = use_posix_spawnp ? "posix_spawnp" : "posix_spawn"; EXECV_CHAR **argvlist = NULL; EXECV_CHAR **envlist = NULL; posix_spawn_file_actions_t file_actions_buf; @@ -5417,19 +5418,20 @@ py_posix_spawn(int use_posix_spawnp, PyObject *module, path_t *path, PyObject *a like posix.environ. */ if (!PyList_Check(argv) && !PyTuple_Check(argv)) { - PyErr_SetString(PyExc_TypeError, - "posix_spawn: argv must be a tuple or list"); + PyErr_Format(PyExc_TypeError, + "%s: argv must be a tuple or list", func_name); goto exit; } argc = PySequence_Size(argv); if (argc < 1) { - PyErr_SetString(PyExc_ValueError, "posix_spawn: argv must not be empty"); + PyErr_Format(PyExc_ValueError, + "%s: argv must not be empty", func_name); return NULL; } if (!PyMapping_Check(env)) { - PyErr_SetString(PyExc_TypeError, - "posix_spawn: environment must be a mapping object"); + PyErr_Format(PyExc_TypeError, + "%s: environment must be a mapping object", func_name); goto exit; } @@ -5438,8 +5440,8 @@ py_posix_spawn(int use_posix_spawnp, PyObject *module, path_t *path, PyObject *a goto exit; } if (!argvlist[0][0]) { - PyErr_SetString(PyExc_ValueError, - "posix_spawn: argv first element cannot be empty"); + PyErr_Format(PyExc_ValueError, + "%s: argv first element cannot be empty", func_name); goto exit; } @@ -5467,8 +5469,8 @@ py_posix_spawn(int use_posix_spawnp, PyObject *module, path_t *path, PyObject *a file_actionsp = &file_actions_buf; } - if (parse_posix_spawn_flags(setpgroup, resetids, setsid, setsigmask, - setsigdef, scheduler, &attr)) { + if (parse_posix_spawn_flags(func_name, setpgroup, resetids, setsid, + setsigmask, setsigdef, scheduler, &attr)) { goto exit; } attrp = &attr; From webhook-mailer at python.org Fri Feb 1 14:37:49 2019 From: webhook-mailer at python.org (Guido van Rossum) Date: Fri, 01 Feb 2019 19:37:49 -0000 Subject: [Python-checkins] bpo-35766 follow-up: Kill half-support for FunctionType in PyAST_obj2mod (#11714) Message-ID: https://github.com/python/cpython/commit/3a32e3bf880f0842ac73d18285f5a1caa902a2ca commit: 3a32e3bf880f0842ac73d18285f5a1caa902a2ca branch: master author: Guido van Rossum committer: GitHub date: 2019-02-01T11:37:34-08:00 summary: bpo-35766 follow-up: Kill half-support for FunctionType in PyAST_obj2mod (#11714) See https://github.com/python/cpython/pull/11645/files/229874c612df868e7ae3e997e159915f49d16542#r252631862 https://bugs.python.org/issue35766 files: M Parser/asdl_c.py M Python/Python-ast.c diff --git a/Parser/asdl_c.py b/Parser/asdl_c.py index a51a5db73904..1526995e3f8b 100644 --- a/Parser/asdl_c.py +++ b/Parser/asdl_c.py @@ -1187,19 +1187,18 @@ class PartingShots(StaticVisitor): } /* mode is 0 for "exec", 1 for "eval" and 2 for "single" input */ -/* and 3 for "func_type" */ mod_ty PyAST_obj2mod(PyObject* ast, PyArena* arena, int mode) { mod_ty res; PyObject *req_type[3]; - char *req_name[] = {"Module", "Expression", "Interactive", "FunctionType"}; + char *req_name[] = {"Module", "Expression", "Interactive"}; int isinstance; req_type[0] = (PyObject*)Module_type; req_type[1] = (PyObject*)Expression_type; req_type[2] = (PyObject*)Interactive_type; - assert(0 <= mode && mode <= 3); + assert(0 <= mode && mode <= 2); if (!init_types()) return NULL; diff --git a/Python/Python-ast.c b/Python/Python-ast.c index 1a56e90bca09..5467d192ee69 100644 --- a/Python/Python-ast.c +++ b/Python/Python-ast.c @@ -8917,19 +8917,18 @@ PyObject* PyAST_mod2obj(mod_ty t) } /* mode is 0 for "exec", 1 for "eval" and 2 for "single" input */ -/* and 3 for "func_type" */ mod_ty PyAST_obj2mod(PyObject* ast, PyArena* arena, int mode) { mod_ty res; PyObject *req_type[3]; - char *req_name[] = {"Module", "Expression", "Interactive", "FunctionType"}; + char *req_name[] = {"Module", "Expression", "Interactive"}; int isinstance; req_type[0] = (PyObject*)Module_type; req_type[1] = (PyObject*)Expression_type; req_type[2] = (PyObject*)Interactive_type; - assert(0 <= mode && mode <= 3); + assert(0 <= mode && mode <= 2); if (!init_types()) return NULL; From webhook-mailer at python.org Fri Feb 1 14:58:48 2019 From: webhook-mailer at python.org (Emily Morehouse) Date: Fri, 01 Feb 2019 19:58:48 -0000 Subject: [Python-checkins] bpo-35861: Fix SyntaxWarning in test_named_expressions.py (GH-11722) Message-ID: https://github.com/python/cpython/commit/075de6cf6cb0f5f4d3711fc07f023a9a7a0a816b commit: 075de6cf6cb0f5f4d3711fc07f023a9a7a0a816b branch: master author: Joannah Nanjekye <33177550+nanjekyejoannah at users.noreply.github.com> committer: Emily Morehouse date: 2019-02-01T12:58:43-07:00 summary: bpo-35861: Fix SyntaxWarning in test_named_expressions.py (GH-11722) files: M Lib/test/test_named_expressions.py diff --git a/Lib/test/test_named_expressions.py b/Lib/test/test_named_expressions.py index e49fd7de20de..ff426f4cea29 100644 --- a/Lib/test/test_named_expressions.py +++ b/Lib/test/test_named_expressions.py @@ -165,7 +165,7 @@ def test_named_expression_assignment_09(self): else: self.fail("variable was not assigned using named expression") def test_named_expression_assignment_10(self): - if (match := 10) is 10: + if (match := 10) == 10: pass else: self.fail("variable was not assigned using named expression") From webhook-mailer at python.org Fri Feb 1 15:39:01 2019 From: webhook-mailer at python.org (Raymond Hettinger) Date: Fri, 01 Feb 2019 20:39:01 -0000 Subject: [Python-checkins] bpo-35864: fix namedtuple._asdict() docstring (GH-11720) Message-ID: https://github.com/python/cpython/commit/85d83ec7c99727476c79feb5c34c65264a99144e commit: 85d83ec7c99727476c79feb5c34c65264a99144e branch: master author: Amador Pahim committer: Raymond Hettinger date: 2019-02-01T12:38:57-08:00 summary: bpo-35864: fix namedtuple._asdict() docstring (GH-11720) files: M Lib/collections/__init__.py diff --git a/Lib/collections/__init__.py b/Lib/collections/__init__.py index 835cc363d10a..aee79b931602 100644 --- a/Lib/collections/__init__.py +++ b/Lib/collections/__init__.py @@ -429,7 +429,7 @@ def __repr__(self): _dict, _zip = dict, zip def _asdict(self): - 'Return a new OrderedDict which maps field names to their values.' + 'Return a new dict which maps field names to their values.' return _dict(_zip(self._fields, self)) def __getnewargs__(self): From webhook-mailer at python.org Fri Feb 1 16:40:27 2019 From: webhook-mailer at python.org (Emily Morehouse) Date: Fri, 01 Feb 2019 21:40:27 -0000 Subject: [Python-checkins] bpo-35877: Make parenthesis optional for named expression in while statement (GH-11724) Message-ID: https://github.com/python/cpython/commit/d4fceaafb8e3f8700d9ec6ab37a51e903392f74f commit: d4fceaafb8e3f8700d9ec6ab37a51e903392f74f branch: master author: Xtreak committer: Emily Morehouse date: 2019-02-01T14:40:16-07:00 summary: bpo-35877: Make parenthesis optional for named expression in while statement (GH-11724) * Add parenthesis optional in named expressions for while statement * Add NEWS entry files: A Misc/NEWS.d/next/Core and Builtins/2019-02-01-22-38-11.bpo-35877.Jrse8f.rst M Grammar/Grammar M Lib/test/test_parser.py M Python/graminit.c diff --git a/Grammar/Grammar b/Grammar/Grammar index e65a688e4cd8..a42597805979 100644 --- a/Grammar/Grammar +++ b/Grammar/Grammar @@ -72,7 +72,7 @@ assert_stmt: 'assert' test [',' test] compound_stmt: if_stmt | while_stmt | for_stmt | try_stmt | with_stmt | funcdef | classdef | decorated | async_stmt async_stmt: 'async' (funcdef | with_stmt | for_stmt) if_stmt: 'if' namedexpr_test ':' suite ('elif' namedexpr_test ':' suite)* ['else' ':' suite] -while_stmt: 'while' test ':' suite ['else' ':' suite] +while_stmt: 'while' namedexpr_test ':' suite ['else' ':' suite] for_stmt: 'for' exprlist 'in' testlist ':' [TYPE_COMMENT] suite ['else' ':' suite] try_stmt: ('try' ':' suite ((except_clause ':' suite)+ diff --git a/Lib/test/test_parser.py b/Lib/test/test_parser.py index 19f178203642..0afeb322e9b5 100644 --- a/Lib/test/test_parser.py +++ b/Lib/test/test_parser.py @@ -426,6 +426,7 @@ def test_named_expressions(self): self.check_suite("(a := 1)") self.check_suite("(a := a)") self.check_suite("if (match := pattern.search(data)) is None: pass") + self.check_suite("while match := pattern.search(f.read()): pass") self.check_suite("[y := f(x), y**2, y**3]") self.check_suite("filtered_data = [y for x in data if (y := f(x)) is None]") self.check_suite("(y := f(x))") diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-02-01-22-38-11.bpo-35877.Jrse8f.rst b/Misc/NEWS.d/next/Core and Builtins/2019-02-01-22-38-11.bpo-35877.Jrse8f.rst new file mode 100644 index 000000000000..1fb173fe463d --- /dev/null +++ b/Misc/NEWS.d/next/Core and Builtins/2019-02-01-22-38-11.bpo-35877.Jrse8f.rst @@ -0,0 +1,2 @@ +Make parenthesis optional for named expressions in while statement. Patch by +Karthikeyan Singaravelan. diff --git a/Python/graminit.c b/Python/graminit.c index 6e0f19891baa..5cdde2789c72 100644 --- a/Python/graminit.c +++ b/Python/graminit.c @@ -971,7 +971,7 @@ static arc arcs_42_0[1] = { {103, 1}, }; static arc arcs_42_1[1] = { - {26, 2}, + {99, 2}, }; static arc arcs_42_2[1] = { {27, 3}, From webhook-mailer at python.org Fri Feb 1 17:27:46 2019 From: webhook-mailer at python.org (Emily Morehouse) Date: Fri, 01 Feb 2019 22:27:46 -0000 Subject: [Python-checkins] bpo-35877: Add test for while loop named expression without parentheses (GH-11726) Message-ID: https://github.com/python/cpython/commit/ac19081c26eaa7de3e6aabeb789ddc2e7cdd5b24 commit: ac19081c26eaa7de3e6aabeb789ddc2e7cdd5b24 branch: master author: Emily Morehouse committer: GitHub date: 2019-02-01T15:27:38-07:00 summary: bpo-35877: Add test for while loop named expression without parentheses (GH-11726) files: M Lib/test/test_named_expressions.py diff --git a/Lib/test/test_named_expressions.py b/Lib/test/test_named_expressions.py index ff426f4cea29..e15111cf3839 100644 --- a/Lib/test/test_named_expressions.py +++ b/Lib/test/test_named_expressions.py @@ -195,7 +195,7 @@ def test_named_expression_assignment_14(self): Where all variables are positive integers, and a is at least as large as the n'th root of x, this algorithm returns the floor of the n'th root of x (and roughly doubling the number of accurate bits per - iteration):: + iteration): """ a = 9 n = 2 @@ -206,6 +206,12 @@ def test_named_expression_assignment_14(self): self.assertEqual(a, 1) + def test_named_expression_assignment_15(self): + while a := False: + pass # This will not run + + self.assertEqual(a, False) + class NamedExpressionScopeTest(unittest.TestCase): From webhook-mailer at python.org Fri Feb 1 18:28:23 2019 From: webhook-mailer at python.org (Guido van Rossum) Date: Fri, 01 Feb 2019 23:28:23 -0000 Subject: [Python-checkins] bpo-35879: Fix type comment leaks (GH-11728) Message-ID: https://github.com/python/cpython/commit/d2b4c19d53f5f021fb1c7c32d48033a92ac4fe49 commit: d2b4c19d53f5f021fb1c7c32d48033a92ac4fe49 branch: master author: Guido van Rossum committer: GitHub date: 2019-02-01T15:28:13-08:00 summary: bpo-35879: Fix type comment leaks (GH-11728) * Fix leak for # type: ignore * Fix the type comment leak files: M Parser/parsetok.c M Python/ast.c diff --git a/Parser/parsetok.c b/Parser/parsetok.c index 7fddc5a0e897..1fa4a1286b77 100644 --- a/Parser/parsetok.c +++ b/Parser/parsetok.c @@ -330,6 +330,7 @@ parsetok(struct tok_state *tok, grammar *g, int start, perrdetail *err_ret, } if (type == TYPE_IGNORE) { + PyObject_FREE(str); if (!growable_int_array_add(&type_ignores, tok->lineno)) { err_ret->error = E_NOMEM; break; diff --git a/Python/ast.c b/Python/ast.c index c422e9651ced..45578a850f77 100644 --- a/Python/ast.c +++ b/Python/ast.c @@ -699,11 +699,16 @@ ast_error(struct compiling *c, const node *n, const char *errmsg, ...) */ static string -new_type_comment(const char *s) +new_type_comment(const char *s, struct compiling *c) { - return PyUnicode_DecodeUTF8(s, strlen(s), NULL); + PyObject *res = PyUnicode_DecodeUTF8(s, strlen(s), NULL); + if (PyArena_AddPyObject(c->c_arena, res) < 0) { + Py_DECREF(res); + return NULL; + } + return res; } -#define NEW_TYPE_COMMENT(n) new_type_comment(STR(n)) +#define NEW_TYPE_COMMENT(n) new_type_comment(STR(n), c) static int num_stmts(const node *n) From webhook-mailer at python.org Fri Feb 1 23:52:27 2019 From: webhook-mailer at python.org (Davin Potts) Date: Sat, 02 Feb 2019 04:52:27 -0000 Subject: [Python-checkins] bpo-35813: Added shared_memory submodule of multiprocessing. (#11664) Message-ID: https://github.com/python/cpython/commit/e5ef45b8f519a9be9965590e1a0a587ff584c180 commit: e5ef45b8f519a9be9965590e1a0a587ff584c180 branch: master author: Davin Potts committer: GitHub date: 2019-02-01T22:52:23-06:00 summary: bpo-35813: Added shared_memory submodule of multiprocessing. (#11664) Added shared_memory submodule to multiprocessing in time for first alpha with cross-platform tests soon to follow. files: A Lib/multiprocessing/shared_memory.py A Misc/NEWS.d/next/Library/2019-01-23-22-44-37.bpo-35813.Yobj-Y.rst A Modules/_multiprocessing/posixshmem.c M setup.py diff --git a/Lib/multiprocessing/shared_memory.py b/Lib/multiprocessing/shared_memory.py new file mode 100644 index 000000000000..11eac4bf0e39 --- /dev/null +++ b/Lib/multiprocessing/shared_memory.py @@ -0,0 +1,573 @@ +"Provides shared memory for direct access across processes." + + +__all__ = [ 'SharedMemory', 'PosixSharedMemory', 'WindowsNamedSharedMemory', + 'ShareableList', 'shareable_wrap', + 'SharedMemoryServer', 'SharedMemoryManager', 'SharedMemoryTracker' ] + + +from functools import reduce +import mmap +from .managers import DictProxy, SyncManager, Server +from . import util +import os +import random +import struct +import sys +try: + from _posixshmem import _PosixSharedMemory, Error, ExistentialError, O_CREX +except ImportError as ie: + if os.name != "nt": + # On Windows, posixshmem is not required to be available. + raise ie + else: + _PosixSharedMemory = object + class ExistentialError(BaseException): pass + class Error(BaseException): pass + O_CREX = -1 + + +class WindowsNamedSharedMemory: + + def __init__(self, name, flags=None, mode=None, size=None, read_only=False): + if name is None: + name = f'wnsm_{os.getpid()}_{random.randrange(100000)}' + + self._mmap = mmap.mmap(-1, size, tagname=name) + self.buf = memoryview(self._mmap) + self.name = name + self.size = size + + def __repr__(self): + return f'{self.__class__.__name__}({self.name!r}, size={self.size})' + + def close(self): + self.buf.release() + self._mmap.close() + + def unlink(self): + """Windows ensures that destruction of the last reference to this + named shared memory block will result in the release of this memory.""" + pass + + +class PosixSharedMemory(_PosixSharedMemory): + + def __init__(self, name, flags=None, mode=None, size=None, read_only=False): + if name and (flags is None): + _PosixSharedMemory.__init__(self, name) + else: + if name is None: + name = f'psm_{os.getpid()}_{random.randrange(100000)}' + _PosixSharedMemory.__init__(self, name, flags=O_CREX, size=size) + + self._mmap = mmap.mmap(self.fd, self.size) + self.buf = memoryview(self._mmap) + + def __repr__(self): + return f'{self.__class__.__name__}({self.name!r}, size={self.size})' + + def close(self): + self.buf.release() + self._mmap.close() + self.close_fd() + + +class SharedMemory: + + def __new__(cls, *args, **kwargs): + if os.name == 'nt': + cls = WindowsNamedSharedMemory + else: + cls = PosixSharedMemory + return cls(*args, **kwargs) + + +def shareable_wrap( + existing_obj=None, + shmem_name=None, + cls=None, + shape=(0,), + strides=None, + dtype=None, + format=None, + **kwargs +): + augmented_kwargs = dict(kwargs) + extras = dict(shape=shape, strides=strides, dtype=dtype, format=format) + for key, value in extras.items(): + if value is not None: + augmented_kwargs[key] = value + + if existing_obj is not None: + existing_type = getattr( + existing_obj, + "_proxied_type", + type(existing_obj) + ) + + #agg = existing_obj.itemsize + #size = [ agg := i * agg for i in existing_obj.shape ][-1] + # TODO: replace use of reduce below with above 2 lines once available + size = reduce( + lambda x, y: x * y, + existing_obj.shape, + existing_obj.itemsize + ) + + else: + assert shmem_name is not None + existing_type = cls + size = 1 + + shm = SharedMemory(shmem_name, size=size) + + class CustomShareableProxy(existing_type): + + def __init__(self, *args, buffer=None, **kwargs): + # If copy method called, prevent recursion from replacing _shm. + if not hasattr(self, "_shm"): + self._shm = shm + self._proxied_type = existing_type + else: + # _proxied_type only used in pickling. + assert hasattr(self, "_proxied_type") + try: + existing_type.__init__(self, *args, **kwargs) + except: + pass + + def __repr__(self): + if not hasattr(self, "_shm"): + return existing_type.__repr__(self) + formatted_pairs = ( + "%s=%r" % kv for kv in self._build_state(self).items() + ) + return f"{self.__class__.__name__}({', '.join(formatted_pairs)})" + + #def __getstate__(self): + # if not hasattr(self, "_shm"): + # return existing_type.__getstate__(self) + # state = self._build_state(self) + # return state + + #def __setstate__(self, state): + # self.__init__(**state) + + def __reduce__(self): + return ( + shareable_wrap, + ( + None, + self._shm.name, + self._proxied_type, + self.shape, + self.strides, + self.dtype.str if hasattr(self, "dtype") else None, + getattr(self, "format", None), + ), + ) + + def copy(self): + dupe = existing_type.copy(self) + if not hasattr(dupe, "_shm"): + dupe = shareable_wrap(dupe) + return dupe + + @staticmethod + def _build_state(existing_obj, generics_only=False): + state = { + "shape": existing_obj.shape, + "strides": existing_obj.strides, + } + try: + state["dtype"] = existing_obj.dtype + except AttributeError: + try: + state["format"] = existing_obj.format + except AttributeError: + pass + if not generics_only: + try: + state["shmem_name"] = existing_obj._shm.name + state["cls"] = existing_type + except AttributeError: + pass + return state + + proxy_type = type( + f"{existing_type.__name__}Shareable", + CustomShareableProxy.__bases__, + dict(CustomShareableProxy.__dict__), + ) + + if existing_obj is not None: + try: + proxy_obj = proxy_type( + buffer=shm.buf, + **proxy_type._build_state(existing_obj) + ) + except Exception: + proxy_obj = proxy_type( + buffer=shm.buf, + **proxy_type._build_state(existing_obj, True) + ) + + mveo = memoryview(existing_obj) + proxy_obj._shm.buf[:mveo.nbytes] = mveo.tobytes() + + else: + proxy_obj = proxy_type(buffer=shm.buf, **augmented_kwargs) + + return proxy_obj + + +encoding = "utf8" + +class ShareableList: + """Pattern for a mutable list-like object shareable via a shared + memory block. It differs from the built-in list type in that these + lists can not change their overall length (i.e. no append, insert, + etc.) + + Because values are packed into a memoryview as bytes, the struct + packing format for any storable value must require no more than 8 + characters to describe its format.""" + + # TODO: Adjust for discovered word size of machine. + types_mapping = { + int: "q", + float: "d", + bool: "xxxxxxx?", + str: "%ds", + bytes: "%ds", + None.__class__: "xxxxxx?x", + } + alignment = 8 + back_transform_codes = { + 0: lambda value: value, # int, float, bool + 1: lambda value: value.rstrip(b'\x00').decode(encoding), # str + 2: lambda value: value.rstrip(b'\x00'), # bytes + 3: lambda _value: None, # None + } + + @staticmethod + def _extract_recreation_code(value): + """Used in concert with back_transform_codes to convert values + into the appropriate Python objects when retrieving them from + the list as well as when storing them.""" + if not isinstance(value, (str, bytes, None.__class__)): + return 0 + elif isinstance(value, str): + return 1 + elif isinstance(value, bytes): + return 2 + else: + return 3 # NoneType + + def __init__(self, iterable=None, name=None): + if iterable is not None: + _formats = [ + self.types_mapping[type(item)] + if not isinstance(item, (str, bytes)) + else self.types_mapping[type(item)] % ( + self.alignment * (len(item) // self.alignment + 1), + ) + for item in iterable + ] + self._list_len = len(_formats) + assert sum(len(fmt) <= 8 for fmt in _formats) == self._list_len + self._allocated_bytes = tuple( + self.alignment if fmt[-1] != "s" else int(fmt[:-1]) + for fmt in _formats + ) + _back_transform_codes = [ + self._extract_recreation_code(item) for item in iterable + ] + requested_size = struct.calcsize( + "q" + self._format_size_metainfo + "".join(_formats) + ) + + else: + requested_size = 1 # Some platforms require > 0. + + self.shm = SharedMemory(name, size=requested_size) + + if iterable is not None: + _enc = encoding + struct.pack_into( + "q" + self._format_size_metainfo, + self.shm.buf, + 0, + self._list_len, + *(self._allocated_bytes) + ) + struct.pack_into( + "".join(_formats), + self.shm.buf, + self._offset_data_start, + *(v.encode(_enc) if isinstance(v, str) else v for v in iterable) + ) + struct.pack_into( + self._format_packing_metainfo, + self.shm.buf, + self._offset_packing_formats, + *(v.encode(_enc) for v in _formats) + ) + struct.pack_into( + self._format_back_transform_codes, + self.shm.buf, + self._offset_back_transform_codes, + *(_back_transform_codes) + ) + + else: + self._list_len = len(self) # Obtains size from offset 0 in buffer. + self._allocated_bytes = struct.unpack_from( + self._format_size_metainfo, + self.shm.buf, + 1 * 8 + ) + + def _get_packing_format(self, position): + "Gets the packing format for a single value stored in the list." + position = position if position >= 0 else position + self._list_len + if (position >= self._list_len) or (self._list_len < 0): + raise IndexError("Requested position out of range.") + + v = struct.unpack_from( + "8s", + self.shm.buf, + self._offset_packing_formats + position * 8 + )[0] + fmt = v.rstrip(b'\x00') + fmt_as_str = fmt.decode(encoding) + + return fmt_as_str + + def _get_back_transform(self, position): + "Gets the back transformation function for a single value." + + position = position if position >= 0 else position + self._list_len + if (position >= self._list_len) or (self._list_len < 0): + raise IndexError("Requested position out of range.") + + transform_code = struct.unpack_from( + "b", + self.shm.buf, + self._offset_back_transform_codes + position + )[0] + transform_function = self.back_transform_codes[transform_code] + + return transform_function + + def _set_packing_format_and_transform(self, position, fmt_as_str, value): + """Sets the packing format and back transformation code for a + single value in the list at the specified position.""" + + position = position if position >= 0 else position + self._list_len + if (position >= self._list_len) or (self._list_len < 0): + raise IndexError("Requested position out of range.") + + struct.pack_into( + "8s", + self.shm.buf, + self._offset_packing_formats + position * 8, + fmt_as_str.encode(encoding) + ) + + transform_code = self._extract_recreation_code(value) + struct.pack_into( + "b", + self.shm.buf, + self._offset_back_transform_codes + position, + transform_code + ) + + def __getitem__(self, position): + try: + offset = self._offset_data_start \ + + sum(self._allocated_bytes[:position]) + (v,) = struct.unpack_from( + self._get_packing_format(position), + self.shm.buf, + offset + ) + except IndexError: + raise IndexError("index out of range") + + back_transform = self._get_back_transform(position) + v = back_transform(v) + + return v + + def __setitem__(self, position, value): + try: + offset = self._offset_data_start \ + + sum(self._allocated_bytes[:position]) + current_format = self._get_packing_format(position) + except IndexError: + raise IndexError("assignment index out of range") + + if not isinstance(value, (str, bytes)): + new_format = self.types_mapping[type(value)] + else: + if len(value) > self._allocated_bytes[position]: + raise ValueError("exceeds available storage for existing str") + if current_format[-1] == "s": + new_format = current_format + else: + new_format = self.types_mapping[str] % ( + self._allocated_bytes[position], + ) + + self._set_packing_format_and_transform( + position, + new_format, + value + ) + value = value.encode(encoding) if isinstance(value, str) else value + struct.pack_into(new_format, self.shm.buf, offset, value) + + def __len__(self): + return struct.unpack_from("q", self.shm.buf, 0)[0] + + @property + def format(self): + "The struct packing format used by all currently stored values." + return "".join(self._get_packing_format(i) for i in range(self._list_len)) + + @property + def _format_size_metainfo(self): + "The struct packing format used for metainfo on storage sizes." + return f"{self._list_len}q" + + @property + def _format_packing_metainfo(self): + "The struct packing format used for the values' packing formats." + return "8s" * self._list_len + + @property + def _format_back_transform_codes(self): + "The struct packing format used for the values' back transforms." + return "b" * self._list_len + + @property + def _offset_data_start(self): + return (self._list_len + 1) * 8 # 8 bytes per "q" + + @property + def _offset_packing_formats(self): + return self._offset_data_start + sum(self._allocated_bytes) + + @property + def _offset_back_transform_codes(self): + return self._offset_packing_formats + self._list_len * 8 + + @classmethod + def copy(cls, self): + "L.copy() -> ShareableList -- a shallow copy of L." + + return cls(self) + + def count(self, value): + "L.count(value) -> integer -- return number of occurrences of value." + + return sum(value == entry for entry in self) + + def index(self, value): + """L.index(value) -> integer -- return first index of value. + Raises ValueError if the value is not present.""" + + for position, entry in enumerate(self): + if value == entry: + return position + else: + raise ValueError(f"{value!r} not in this container") + + +class SharedMemoryTracker: + "Manages one or more shared memory segments." + + def __init__(self, name, segment_names=[]): + self.shared_memory_context_name = name + self.segment_names = segment_names + + def register_segment(self, segment): + util.debug(f"Registering segment {segment.name!r} in pid {os.getpid()}") + self.segment_names.append(segment.name) + + def destroy_segment(self, segment_name): + util.debug(f"Destroying segment {segment_name!r} in pid {os.getpid()}") + self.segment_names.remove(segment_name) + segment = SharedMemory(segment_name, size=1) + segment.close() + segment.unlink() + + def unlink(self): + for segment_name in self.segment_names[:]: + self.destroy_segment(segment_name) + + def __del__(self): + util.debug(f"Called {self.__class__.__name__}.__del__ in {os.getpid()}") + self.unlink() + + def __getstate__(self): + return (self.shared_memory_context_name, self.segment_names) + + def __setstate__(self, state): + self.__init__(*state) + + def wrap(self, obj_exposing_buffer_protocol): + wrapped_obj = shareable_wrap(obj_exposing_buffer_protocol) + self.register_segment(wrapped_obj._shm) + return wrapped_obj + + +class SharedMemoryServer(Server): + def __init__(self, *args, **kwargs): + Server.__init__(self, *args, **kwargs) + self.shared_memory_context = \ + SharedMemoryTracker(f"shmm_{self.address}_{os.getpid()}") + util.debug(f"SharedMemoryServer started by pid {os.getpid()}") + + def create(self, c, typeid, *args, **kwargs): + # Unless set up as a shared proxy, don't make shared_memory_context + # a standard part of kwargs. This makes things easier for supplying + # simple functions. + if hasattr(self.registry[typeid][-1], "_shared_memory_proxy"): + kwargs['shared_memory_context'] = self.shared_memory_context + return Server.create(self, c, typeid, *args, **kwargs) + + def shutdown(self, c): + self.shared_memory_context.unlink() + return Server.shutdown(self, c) + + +class SharedMemoryManager(SyncManager): + """Like SyncManager but uses SharedMemoryServer instead of Server. + + TODO: Consider relocate/merge into managers submodule.""" + + _Server = SharedMemoryServer + + def __init__(self, *args, **kwargs): + SyncManager.__init__(self, *args, **kwargs) + util.debug(f"{self.__class__.__name__} created by pid {os.getpid()}") + + def __del__(self): + util.debug(f"{self.__class__.__name__} told die by pid {os.getpid()}") + pass + + def get_server(self): + 'Better than monkeypatching for now; merge into Server ultimately' + if self._state.value != State.INITIAL: + if self._state.value == State.STARTED: + raise ProcessError("Already started server") + elif self._state.value == State.SHUTDOWN: + raise ProcessError("Manager has shut down") + else: + raise ProcessError( + "Unknown state {!r}".format(self._state.value)) + return _Server(self._registry, self._address, + self._authkey, self._serializer) diff --git a/Misc/NEWS.d/next/Library/2019-01-23-22-44-37.bpo-35813.Yobj-Y.rst b/Misc/NEWS.d/next/Library/2019-01-23-22-44-37.bpo-35813.Yobj-Y.rst new file mode 100644 index 000000000000..714a24c66963 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2019-01-23-22-44-37.bpo-35813.Yobj-Y.rst @@ -0,0 +1,2 @@ +Shared memory submodule added to multiprocessing to avoid need for +serialization between processes diff --git a/Modules/_multiprocessing/posixshmem.c b/Modules/_multiprocessing/posixshmem.c new file mode 100644 index 000000000000..7dd29f405e41 --- /dev/null +++ b/Modules/_multiprocessing/posixshmem.c @@ -0,0 +1,724 @@ +/* +posixshmem - A Python module for accessing POSIX 1003.1b-1993 shared memory. + +Copyright (c) 2012, Philip Semanchuk +Copyright (c) 2018, 2019, Davin Potts +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of posixshmem nor the names of its contributors may + be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY ITS CONTRIBUTORS ''AS IS'' AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL Philip Semanchuk BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#define PY_SSIZE_T_CLEAN + +#include +#include "structmember.h" + +#include +#include +#include +#include +#include + +// For shared memory stuff +#include +#include + +/* SEM_FAILED is defined as an int in Apple's headers, and this makes the +compiler complain when I compare it to a pointer. Python faced the same +problem (issue 9586) and I copied their solution here. +ref: http://bugs.python.org/issue9586 + +Note that in /Developer/SDKs/MacOSX10.4u.sdk/usr/include/sys/semaphore.h, +SEM_FAILED is #defined as -1 and that's apparently the definition used by +Python when building. In /usr/include/sys/semaphore.h, it's defined +as ((sem_t *)-1). +*/ +#ifdef __APPLE__ + #undef SEM_FAILED + #define SEM_FAILED ((sem_t *)-1) +#endif + +/* POSIX says that a mode_t "shall be an integer type". To avoid the need +for a specific get_mode function for each type, I'll just stuff the mode into +a long and mention it in the Xxx_members list for each type. +ref: http://www.opengroup.org/onlinepubs/000095399/basedefs/sys/types.h.html +*/ + +typedef struct { + PyObject_HEAD + char *name; + long mode; + int fd; +} SharedMemory; + + +// FreeBSD (and perhaps other BSDs) limit names to 14 characters. In the +// code below, strings of this length are allocated on the stack, so +// increase this gently or change that code to use malloc(). +#define MAX_SAFE_NAME_LENGTH 14 + + +/* Struct to contain an IPC object name which can be None */ +typedef struct { + int is_none; + char *name; +} NoneableName; + + +/* + Exceptions for this module +*/ + +static PyObject *pBaseException; +static PyObject *pPermissionsException; +static PyObject *pExistentialException; + + +#ifdef POSIX_IPC_DEBUG +#define DPRINTF(fmt, args...) fprintf(stderr, "+++ " fmt, ## args) +#else +#define DPRINTF(fmt, args...) +#endif + +static char * +bytes_to_c_string(PyObject* o, int lock) { +/* Convert a bytes object to a char *. Optionally lock the buffer if it is a + bytes array. + This code swiped directly from Python 3.1's posixmodule.c by Philip S. + The name there is bytes2str(). +*/ + if (PyBytes_Check(o)) + return PyBytes_AsString(o); + else if (PyByteArray_Check(o)) { + if (lock && PyObject_GetBuffer(o, NULL, 0) < 0) + /* On a bytearray, this should not fail. */ + PyErr_BadInternalCall(); + return PyByteArray_AsString(o); + } else { + /* The FS converter should have verified that this + is either bytes or bytearray. */ + Py_FatalError("bad object passed to bytes2str"); + /* not reached. */ + return ""; + } +} + +static void +release_bytes(PyObject* o) + /* Release the lock, decref the object. + This code swiped directly from Python 3.1's posixmodule.c by Philip S. + */ +{ + if (PyByteArray_Check(o)) + o->ob_type->tp_as_buffer->bf_releasebuffer(NULL, 0); + Py_DECREF(o); +} + + +static int +random_in_range(int min, int max) { + // returns a random int N such that min <= N <= max + int diff = (max - min) + 1; + + // ref: http://www.c-faq.com/lib/randrange.html + return ((int)((double)rand() / ((double)RAND_MAX + 1) * diff)) + min; +} + + +static +int create_random_name(char *name) { + // The random name is always lowercase so that this code will work + // on case-insensitive file systems. It always starts with a forward + // slash. + int length; + char *alphabet = "abcdefghijklmnopqrstuvwxyz"; + int i; + + // Generate a random length for the name. I subtract 1 from the + // MAX_SAFE_NAME_LENGTH in order to allow for the name's leading "/". + length = random_in_range(6, MAX_SAFE_NAME_LENGTH - 1); + + name[0] = '/'; + name[length] = '\0'; + i = length; + while (--i) + name[i] = alphabet[random_in_range(0, 25)]; + + return length; +} + + +static int +convert_name_param(PyObject *py_name_param, void *checked_name) { + /* Verifies that the py_name_param is either None or a string. + If it's a string, checked_name->name points to a PyMalloc-ed buffer + holding a NULL-terminated C version of the string when this function + concludes. The caller is responsible for releasing the buffer. + */ + int rc = 0; + NoneableName *p_name = (NoneableName *)checked_name; + PyObject *py_name_as_bytes = NULL; + char *p_name_as_c_string = NULL; + + DPRINTF("inside convert_name_param\n"); + DPRINTF("PyBytes_Check() = %d \n", PyBytes_Check(py_name_param)); + DPRINTF("PyString_Check() = %d \n", PyString_Check(py_name_param)); + DPRINTF("PyUnicode_Check() = %d \n", PyUnicode_Check(py_name_param)); + + p_name->is_none = 0; + + // The name can be None or a Python string + if (py_name_param == Py_None) { + DPRINTF("name is None\n"); + rc = 1; + p_name->is_none = 1; + } + else if (PyUnicode_Check(py_name_param) || PyBytes_Check(py_name_param)) { + DPRINTF("name is Unicode or bytes\n"); + // The caller passed me a Unicode string or a byte array; I need a + // char *. Getting from one to the other takes a couple steps. + + if (PyUnicode_Check(py_name_param)) { + DPRINTF("name is Unicode\n"); + // PyUnicode_FSConverter() converts the Unicode object into a + // bytes or a bytearray object. (Why can't it be one or the other?) + PyUnicode_FSConverter(py_name_param, &py_name_as_bytes); + } + else { + DPRINTF("name is bytes\n"); + // Make a copy of the name param. + py_name_as_bytes = PyBytes_FromObject(py_name_param); + } + + // bytes_to_c_string() returns a pointer to the buffer. + p_name_as_c_string = bytes_to_c_string(py_name_as_bytes, 0); + + // PyMalloc memory and copy the user-supplied name to it. + p_name->name = (char *)PyMem_Malloc(strlen(p_name_as_c_string) + 1); + if (p_name->name) { + rc = 1; + strcpy(p_name->name, p_name_as_c_string); + } + else + PyErr_SetString(PyExc_MemoryError, "Out of memory"); + + // The bytes version of the name isn't useful to me, and per the + // documentation for PyUnicode_FSConverter(), I am responsible for + // releasing it when I'm done. + release_bytes(py_name_as_bytes); + } + else + PyErr_SetString(PyExc_TypeError, "Name must be None or a string"); + + return rc; +} + + + +/* ===== Begin Shared Memory implementation functions ===== */ + +static PyObject * +shm_str(SharedMemory *self) { + return PyUnicode_FromString(self->name ? self->name : "(no name)"); +} + +static PyObject * +shm_repr(SharedMemory *self) { + char mode[32]; + + sprintf(mode, "0%o", (int)(self->mode)); + + return PyUnicode_FromFormat("_posixshmem.SharedMemory(\"%s\", mode=%s)", + self->name, mode); +} + +static PyObject * +my_shm_unlink(const char *name) { + DPRINTF("unlinking shm name %s\n", name); + if (-1 == shm_unlink(name)) { + switch (errno) { + case EACCES: + PyErr_SetString(pPermissionsException, "Permission denied"); + break; + + case ENOENT: + PyErr_SetString(pExistentialException, + "No shared memory exists with the specified name"); + break; + + case ENAMETOOLONG: + PyErr_SetString(PyExc_ValueError, "The name is too long"); + break; + + default: + PyErr_SetFromErrno(PyExc_OSError); + break; + } + + goto error_return; + } + + Py_RETURN_NONE; + + error_return: + return NULL; +} + + +static PyObject * +SharedMemory_new(PyTypeObject *type, PyObject *args, PyObject *kwlist) { + SharedMemory *self; + + self = (SharedMemory *)type->tp_alloc(type, 0); + + return (PyObject *)self; +} + + +static int +SharedMemory_init(SharedMemory *self, PyObject *args, PyObject *keywords) { + NoneableName name; + char temp_name[MAX_SAFE_NAME_LENGTH + 1]; + unsigned int flags = 0; + unsigned long size = 0; + int read_only = 0; + static char *keyword_list[ ] = {"name", "flags", "mode", "size", "read_only", NULL}; + + // First things first -- initialize the self struct. + self->name = NULL; + self->fd = 0; + self->mode = 0600; + + if (!PyArg_ParseTupleAndKeywords(args, keywords, "O&|Iiki", keyword_list, + &convert_name_param, &name, &flags, + &(self->mode), &size, &read_only)) + goto error_return; + + if ( !(flags & O_CREAT) && (flags & O_EXCL) ) { + PyErr_SetString(PyExc_ValueError, + "O_EXCL must be combined with O_CREAT"); + goto error_return; + } + + if (name.is_none && ((flags & O_EXCL) != O_EXCL)) { + PyErr_SetString(PyExc_ValueError, + "Name can only be None if O_EXCL is set"); + goto error_return; + } + + flags |= (read_only ? O_RDONLY : O_RDWR); + + if (name.is_none) { + // (name == None) ==> generate a name for the caller + do { + errno = 0; + create_random_name(temp_name); + + DPRINTF("calling shm_open, name=%s, flags=0x%x, mode=0%o\n", + temp_name, flags, (int)self->mode); + self->fd = shm_open(temp_name, flags, (mode_t)self->mode); + + } while ( (-1 == self->fd) && (EEXIST == errno) ); + + // PyMalloc memory and copy the randomly-generated name to it. + self->name = (char *)PyMem_Malloc(strlen(temp_name) + 1); + if (self->name) + strcpy(self->name, temp_name); + else { + PyErr_SetString(PyExc_MemoryError, "Out of memory"); + goto error_return; + } + } + else { + // (name != None) ==> use name supplied by the caller. It was + // already converted to C by convert_name_param(). + self->name = name.name; + + DPRINTF("calling shm_open, name=%s, flags=0x%x, mode=0%o\n", + self->name, flags, (int)self->mode); + self->fd = shm_open(self->name, flags, (mode_t)self->mode); + } + + DPRINTF("shm fd = %d\n", self->fd); + + if (-1 == self->fd) { + self->fd = 0; + switch (errno) { + case EACCES: + PyErr_Format(pPermissionsException, + "No permission to %s this segment", + (flags & O_TRUNC) ? "truncate" : "access" + ); + break; + + case EEXIST: + PyErr_SetString(pExistentialException, + "Shared memory with the specified name already exists"); + break; + + case ENOENT: + PyErr_SetString(pExistentialException, + "No shared memory exists with the specified name"); + break; + + case EINVAL: + PyErr_SetString(PyExc_ValueError, "Invalid parameter(s)"); + break; + + case EMFILE: + PyErr_SetString(PyExc_OSError, + "This process already has the maximum number of files open"); + break; + + case ENFILE: + PyErr_SetString(PyExc_OSError, + "The system limit on the total number of open files has been reached"); + break; + + case ENAMETOOLONG: + PyErr_SetString(PyExc_ValueError, + "The name is too long"); + break; + + default: + PyErr_SetFromErrno(PyExc_OSError); + break; + } + + goto error_return; + } + else { + if (size) { + DPRINTF("calling ftruncate, fd = %d, size = %ld\n", self->fd, size); + if (-1 == ftruncate(self->fd, (off_t)size)) { + // The code below will raise a Python error. Since that error + // is raised during __init__(), it will look to the caller + // as if object creation failed entirely. Here I clean up + // the system object I just created. + close(self->fd); + shm_unlink(self->name); + + // ftruncate can return a ton of different errors, but most + // are not relevant or are extremely unlikely. + switch (errno) { + case EINVAL: + PyErr_SetString(PyExc_ValueError, + "The size is invalid or the memory is read-only"); + break; + + case EFBIG: + PyErr_SetString(PyExc_ValueError, + "The size is too large"); + break; + + case EROFS: + case EACCES: + PyErr_SetString(pPermissionsException, + "The memory is read-only"); + break; + + default: + PyErr_SetFromErrno(PyExc_OSError); + break; + } + + goto error_return; + } + } + } + + return 0; + + error_return: + return -1; +} + + +static void SharedMemory_dealloc(SharedMemory *self) { + DPRINTF("dealloc\n"); + PyMem_Free(self->name); + self->name = NULL; + + Py_TYPE(self)->tp_free((PyObject*)self); +} + + +PyObject * +SharedMemory_getsize(SharedMemory *self, void *closure) { + struct stat fileinfo; + off_t size = -1; + + if (0 == fstat(self->fd, &fileinfo)) + size = fileinfo.st_size; + else { + switch (errno) { + case EBADF: + case EINVAL: + PyErr_SetString(pExistentialException, + "The segment does not exist"); + break; + + default: + PyErr_SetFromErrno(PyExc_OSError); + break; + } + + goto error_return; + } + + return Py_BuildValue("k", (unsigned long)size); + + error_return: + return NULL; +} + + +PyObject * +SharedMemory_close_fd(SharedMemory *self) { + if (self->fd) { + if (-1 == close(self->fd)) { + switch (errno) { + case EBADF: + PyErr_SetString(PyExc_ValueError, + "The file descriptor is invalid"); + break; + + default: + PyErr_SetFromErrno(PyExc_OSError); + break; + } + + goto error_return; + } + } + + Py_RETURN_NONE; + + error_return: + return NULL; +} + + +PyObject * +SharedMemory_unlink(SharedMemory *self) { + return my_shm_unlink(self->name); +} + + +/* ===== End Shared Memory functions ===== */ + + +/* + * + * Shared memory meta stuff for describing myself to Python + * + */ + + +static PyMemberDef SharedMemory_members[] = { + { "name", + T_STRING, + offsetof(SharedMemory, name), + READONLY, + "The name specified in the constructor" + }, + { "fd", + T_INT, + offsetof(SharedMemory, fd), + READONLY, + "Shared memory segment file descriptor" + }, + { "mode", + T_LONG, + offsetof(SharedMemory, mode), + READONLY, + "The mode specified in the constructor" + }, + {NULL} /* Sentinel */ +}; + + +static PyMethodDef SharedMemory_methods[] = { + { "close_fd", + (PyCFunction)SharedMemory_close_fd, + METH_NOARGS, + "Closes the file descriptor associated with the shared memory." + }, + { "unlink", + (PyCFunction)SharedMemory_unlink, + METH_NOARGS, + "Unlink (remove) the shared memory." + }, + {NULL, NULL, 0, NULL} /* Sentinel */ +}; + + +static PyGetSetDef SharedMemory_getseters[] = { + // size is read-only + { "size", + (getter)SharedMemory_getsize, + (setter)NULL, + "size", + NULL + }, + {NULL} /* Sentinel */ +}; + + +static PyTypeObject SharedMemoryType = { + PyVarObject_HEAD_INIT(NULL, 0) + "_posixshmem._PosixSharedMemory", // tp_name + sizeof(SharedMemory), // tp_basicsize + 0, // tp_itemsize + (destructor) SharedMemory_dealloc, // tp_dealloc + 0, // tp_print + 0, // tp_getattr + 0, // tp_setattr + 0, // tp_compare + (reprfunc) shm_repr, // tp_repr + 0, // tp_as_number + 0, // tp_as_sequence + 0, // tp_as_mapping + 0, // tp_hash + 0, // tp_call + (reprfunc) shm_str, // tp_str + 0, // tp_getattro + 0, // tp_setattro + 0, // tp_as_buffer + Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, + // tp_flags + "POSIX shared memory object", // tp_doc + 0, // tp_traverse + 0, // tp_clear + 0, // tp_richcompare + 0, // tp_weaklistoffset + 0, // tp_iter + 0, // tp_iternext + SharedMemory_methods, // tp_methods + SharedMemory_members, // tp_members + SharedMemory_getseters, // tp_getset + 0, // tp_base + 0, // tp_dict + 0, // tp_descr_get + 0, // tp_descr_set + 0, // tp_dictoffset + (initproc) SharedMemory_init, // tp_init + 0, // tp_alloc + (newfunc) SharedMemory_new, // tp_new + 0, // tp_free + 0, // tp_is_gc + 0 // tp_bases +}; + + +/* + * + * Module-level functions & meta stuff + * + */ + +static PyObject * +posixshmem_unlink_shared_memory(PyObject *self, PyObject *args) { + const char *name; + + if (!PyArg_ParseTuple(args, "s", &name)) + return NULL; + else + return my_shm_unlink(name); +} + + +static PyMethodDef module_methods[ ] = { + { "unlink_shared_memory", + (PyCFunction)posixshmem_unlink_shared_memory, + METH_VARARGS, + "Unlink shared memory" + }, + {NULL} /* Sentinel */ +}; + + +static struct PyModuleDef this_module = { + PyModuleDef_HEAD_INIT, // m_base + "_posixshmem", // m_name + "POSIX shared memory module", // m_doc + -1, // m_size (space allocated for module globals) + module_methods, // m_methods + NULL, // m_reload + NULL, // m_traverse + NULL, // m_clear + NULL // m_free +}; + +/* Module init function */ +PyMODINIT_FUNC +PyInit__posixshmem(void) { + PyObject *module; + PyObject *module_dict; + + // I call this in case I'm asked to create any random names. + srand((unsigned int)time(NULL)); + + module = PyModule_Create(&this_module); + + if (!module) + goto error_return; + + if (PyType_Ready(&SharedMemoryType) < 0) + goto error_return; + + Py_INCREF(&SharedMemoryType); + PyModule_AddObject(module, "_PosixSharedMemory", (PyObject *)&SharedMemoryType); + + + PyModule_AddStringConstant(module, "__copyright__", "Copyright 2012 Philip Semanchuk, 2018-2019 Davin Potts"); + + PyModule_AddIntConstant(module, "O_CREAT", O_CREAT); + PyModule_AddIntConstant(module, "O_EXCL", O_EXCL); + PyModule_AddIntConstant(module, "O_CREX", O_CREAT | O_EXCL); + PyModule_AddIntConstant(module, "O_TRUNC", O_TRUNC); + + if (!(module_dict = PyModule_GetDict(module))) + goto error_return; + + // Exceptions + if (!(pBaseException = PyErr_NewException("_posixshmem.Error", NULL, NULL))) + goto error_return; + else + PyDict_SetItemString(module_dict, "Error", pBaseException); + + if (!(pPermissionsException = PyErr_NewException("_posixshmem.PermissionsError", pBaseException, NULL))) + goto error_return; + else + PyDict_SetItemString(module_dict, "PermissionsError", pPermissionsException); + + if (!(pExistentialException = PyErr_NewException("_posixshmem.ExistentialError", pBaseException, NULL))) + goto error_return; + else + PyDict_SetItemString(module_dict, "ExistentialError", pExistentialException); + + return module; + + error_return: + return NULL; +} diff --git a/setup.py b/setup.py index 44a563bce459..d54bbe0f43ed 100644 --- a/setup.py +++ b/setup.py @@ -1592,6 +1592,17 @@ class db_found(Exception): pass if (sysconfig.get_config_var('HAVE_SEM_OPEN') and not sysconfig.get_config_var('POSIX_SEMAPHORES_NOT_ENABLED')): multiprocessing_srcs.append('_multiprocessing/semaphore.c') + if (self.compiler.find_library_file(lib_dirs, 'rt') or + host_platform != 'cygwin'): + posixshmem_srcs = [ '_multiprocessing/posixshmem.c', + ] + libs = [] + if self.compiler.find_library_file(lib_dirs, 'rt'): + libs.append('rt') + exts.append( Extension('_posixshmem', posixshmem_srcs, + define_macros={}, + libraries=libs, + include_dirs=["Modules/_multiprocessing"])) exts.append ( Extension('_multiprocessing', multiprocessing_srcs, define_macros=list(macros.items()), From solipsis at pitrou.net Sat Feb 2 04:10:40 2019 From: solipsis at pitrou.net (solipsis at pitrou.net) Date: Sat, 02 Feb 2019 09:10:40 +0000 Subject: [Python-checkins] Daily reference leaks (4243df51fe43): sum=3 Message-ID: <20190202091040.1.6AFF2AA0F258769B@psf.io> results for 4243df51fe43 on branch "default" -------------------------------------------- test_collections leaked [-7, 1, 7] memory blocks, sum=1 test_functools leaked [0, 3, 1] memory blocks, sum=4 test_multiprocessing_forkserver leaked [-1, 1, -2] memory blocks, sum=-2 Command line was: ['./python', '-m', 'test.regrtest', '-uall', '-R', '3:3:/home/psf-users/antoine/refleaks/reflog8qLYYU', '--timeout', '7200'] From webhook-mailer at python.org Sat Feb 2 05:16:15 2019 From: webhook-mailer at python.org (Antoine Pitrou) Date: Sat, 02 Feb 2019 10:16:15 -0000 Subject: [Python-checkins] bpo-25592: Improve documentation of distutils data_files (GH-9767) (GH-11734) Message-ID: https://github.com/python/cpython/commit/40a101df8c64a1e55cca2780248d7a92bdcccd57 commit: 40a101df8c64a1e55cca2780248d7a92bdcccd57 branch: 2.7 author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> committer: Antoine Pitrou date: 2019-02-02T11:16:09+01:00 summary: bpo-25592: Improve documentation of distutils data_files (GH-9767) (GH-11734) (cherry picked from commit 598e15d4feaee3849a91d92c9ca51f17baafe19c) Co-authored-by: jdemeyer files: M Doc/distutils/setupscript.rst diff --git a/Doc/distutils/setupscript.rst b/Doc/distutils/setupscript.rst index 92ab5732d2b5..8407206a08b5 100644 --- a/Doc/distutils/setupscript.rst +++ b/Doc/distutils/setupscript.rst @@ -520,20 +520,23 @@ following way:: setup(..., data_files=[('bitmaps', ['bm/b1.gif', 'bm/b2.gif']), ('config', ['cfg/data.cfg']), - ('/etc/init.d', ['init-script'])] ) -Note that you can specify the directory names where the data files will be -installed, but you cannot rename the data files themselves. - Each (*directory*, *files*) pair in the sequence specifies the installation -directory and the files to install there. If *directory* is a relative path, it -is interpreted relative to the installation prefix (Python's ``sys.prefix`` for -pure-Python packages, ``sys.exec_prefix`` for packages that contain extension -modules). Each file name in *files* is interpreted relative to the -:file:`setup.py` script at the top of the package source distribution. No -directory information from *files* is used to determine the final location of -the installed file; only the name of the file is used. +directory and the files to install there. + +Each file name in *files* is interpreted relative to the :file:`setup.py` +script at the top of the package source distribution. Note that you can +specify the directory where the data files will be installed, but you cannot +rename the data files themselves. + +The *directory* should be a relative path. It is interpreted relative to the +installation prefix (Python's ``sys.prefix`` for system installations; +``site.USER_BASE`` for user installations). Distutils allows *directory* to be +an absolute installation path, but this is discouraged since it is +incompatible with the wheel packaging format. No directory information from +*files* is used to determine the final location of the installed file; only +the name of the file is used. You can specify the ``data_files`` options as a simple sequence of files without specifying a target directory, but this is not recommended, and the From webhook-mailer at python.org Sat Feb 2 09:37:43 2019 From: webhook-mailer at python.org (Stefan Krah) Date: Sat, 02 Feb 2019 14:37:43 -0000 Subject: [Python-checkins] bpo-26256: Document algorithm speed for the Decimal module. (#4808) Message-ID: https://github.com/python/cpython/commit/00e9c55d27aff3e445ab4c8629cf4d59f46ff945 commit: 00e9c55d27aff3e445ab4c8629cf4d59f46ff945 branch: master author: Cheryl Sabella committer: Stefan Krah date: 2019-02-02T15:37:39+01:00 summary: bpo-26256: Document algorithm speed for the Decimal module. (#4808) files: M Doc/library/decimal.rst diff --git a/Doc/library/decimal.rst b/Doc/library/decimal.rst index f2a677e69363..bcae55eb8217 100644 --- a/Doc/library/decimal.rst +++ b/Doc/library/decimal.rst @@ -2115,3 +2115,23 @@ Alternatively, inputs can be rounded upon creation using the >>> Context(prec=5, rounding=ROUND_DOWN).create_decimal('1.2345678') Decimal('1.2345') + +Q. Is the CPython implementation fast for large numbers? + +A. Yes. In the CPython and PyPy3 implementations, the C/CFFI versions of +the decimal module integrate the high speed `libmpdec +`_ library for +arbitrary precision correctly-rounded decimal floating point arithmetic. +``libmpdec`` uses `Karatsuba multiplication +`_ +for medium-sized numbers and the `Number Theoretic Transform +`_ +for very large numbers. However, to realize this performance gain, the +context needs to be set for unrounded calculations. + + >>> c = getcontext() + >>> c.prec = MAX_PREC + >>> c.Emax = MAX_EMAX + >>> c.Emin = MIN_EMIN + +.. versionadded:: 3.3 \ No newline at end of file From webhook-mailer at python.org Sat Feb 2 09:46:12 2019 From: webhook-mailer at python.org (Stefan Krah) Date: Sat, 02 Feb 2019 14:46:12 -0000 Subject: [Python-checkins] bpo-26256: Document algorithm speed for the Decimal module. (GH-4808) (#11736) Message-ID: https://github.com/python/cpython/commit/a2f4c4023314f69333d2e8cee68e316619f3d68e commit: a2f4c4023314f69333d2e8cee68e316619f3d68e branch: 3.7 author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> committer: Stefan Krah date: 2019-02-02T15:46:09+01:00 summary: bpo-26256: Document algorithm speed for the Decimal module. (GH-4808) (#11736) (cherry picked from commit 00e9c55d27aff3e445ab4c8629cf4d59f46ff945) Co-authored-by: Cheryl Sabella files: M Doc/library/decimal.rst diff --git a/Doc/library/decimal.rst b/Doc/library/decimal.rst index f2a677e69363..bcae55eb8217 100644 --- a/Doc/library/decimal.rst +++ b/Doc/library/decimal.rst @@ -2115,3 +2115,23 @@ Alternatively, inputs can be rounded upon creation using the >>> Context(prec=5, rounding=ROUND_DOWN).create_decimal('1.2345678') Decimal('1.2345') + +Q. Is the CPython implementation fast for large numbers? + +A. Yes. In the CPython and PyPy3 implementations, the C/CFFI versions of +the decimal module integrate the high speed `libmpdec +`_ library for +arbitrary precision correctly-rounded decimal floating point arithmetic. +``libmpdec`` uses `Karatsuba multiplication +`_ +for medium-sized numbers and the `Number Theoretic Transform +`_ +for very large numbers. However, to realize this performance gain, the +context needs to be set for unrounded calculations. + + >>> c = getcontext() + >>> c.prec = MAX_PREC + >>> c.Emax = MAX_EMAX + >>> c.Emin = MIN_EMIN + +.. versionadded:: 3.3 \ No newline at end of file From webhook-mailer at python.org Sat Feb 2 11:22:58 2019 From: webhook-mailer at python.org (Steve Dower) Date: Sat, 02 Feb 2019 16:22:58 -0000 Subject: [Python-checkins] bpo-33316: PyThread_release_lock always fails (GH-6541) Message-ID: https://github.com/python/cpython/commit/05e922136a3286893bd489a8f2ecfa0dba4da368 commit: 05e922136a3286893bd489a8f2ecfa0dba4da368 branch: master author: native-api committer: Steve Dower date: 2019-02-02T08:22:55-08:00 summary: bpo-33316: PyThread_release_lock always fails (GH-6541) Use correct interpretation of return value from APIs. files: A Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst M Python/thread_nt.h diff --git a/Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst b/Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst new file mode 100644 index 000000000000..55176791a901 --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst @@ -0,0 +1 @@ +PyThread_release_lock always fails diff --git a/Python/thread_nt.h b/Python/thread_nt.h index 21ef5556a6bc..fdb192b7d77a 100644 --- a/Python/thread_nt.h +++ b/Python/thread_nt.h @@ -104,8 +104,9 @@ LeaveNonRecursiveMutex(PNRMUTEX mutex) if (PyMUTEX_LOCK(&mutex->cs)) return FALSE; mutex->locked = 0; - result = PyCOND_SIGNAL(&mutex->cv); - result &= PyMUTEX_UNLOCK(&mutex->cs); + /* condvar APIs return 0 on success. We need to return TRUE on success. */ + result = !PyCOND_SIGNAL(&mutex->cv); + PyMUTEX_UNLOCK(&mutex->cs); return result; } From webhook-mailer at python.org Sat Feb 2 11:45:54 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Sat, 02 Feb 2019 16:45:54 -0000 Subject: [Python-checkins] bpo-33316: PyThread_release_lock always fails (GH-6541) Message-ID: https://github.com/python/cpython/commit/c851dfc99b28c7335d42abd8250bb77c11ce23c0 commit: c851dfc99b28c7335d42abd8250bb77c11ce23c0 branch: 3.7 author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> committer: GitHub date: 2019-02-02T08:45:50-08:00 summary: bpo-33316: PyThread_release_lock always fails (GH-6541) Use correct interpretation of return value from APIs. (cherry picked from commit 05e922136a3286893bd489a8f2ecfa0dba4da368) Co-authored-by: native-api files: A Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst M Python/thread_nt.h diff --git a/Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst b/Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst new file mode 100644 index 000000000000..55176791a901 --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst @@ -0,0 +1 @@ +PyThread_release_lock always fails diff --git a/Python/thread_nt.h b/Python/thread_nt.h index 61fa8619bc17..56295d0e8c0f 100644 --- a/Python/thread_nt.h +++ b/Python/thread_nt.h @@ -104,8 +104,9 @@ LeaveNonRecursiveMutex(PNRMUTEX mutex) if (PyMUTEX_LOCK(&mutex->cs)) return FALSE; mutex->locked = 0; - result = PyCOND_SIGNAL(&mutex->cv); - result &= PyMUTEX_UNLOCK(&mutex->cs); + /* condvar APIs return 0 on success. We need to return TRUE on success. */ + result = !PyCOND_SIGNAL(&mutex->cv); + PyMUTEX_UNLOCK(&mutex->cs); return result; } From webhook-mailer at python.org Sat Feb 2 12:13:26 2019 From: webhook-mailer at python.org (Steve Dower) Date: Sat, 02 Feb 2019 17:13:26 -0000 Subject: [Python-checkins] bpo-1104: msilib.SummaryInfo.GetProperty() truncates the string by one character (GH-4517) Message-ID: https://github.com/python/cpython/commit/2de576e16d42ce43698d384d0dd46ba6cf165424 commit: 2de576e16d42ce43698d384d0dd46ba6cf165424 branch: master author: Tzu-ping Chung committer: Steve Dower date: 2019-02-02T09:13:23-08:00 summary: bpo-1104: msilib.SummaryInfo.GetProperty() truncates the string by one character (GH-4517) Add one char to MsiSummaryInfoGetProperty() output Based on the patch in bpo-1104 by Anthony Tuininga (atuining) and Mark McMahon (markm). files: A Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst M Lib/test/test_msilib.py M PC/_msi.c diff --git a/Lib/test/test_msilib.py b/Lib/test/test_msilib.py index 6d89ca4b7732..4aa4753fc2a6 100644 --- a/Lib/test/test_msilib.py +++ b/Lib/test/test_msilib.py @@ -1,5 +1,5 @@ """ Test suite for the code in msilib """ -import os.path +import os import unittest from test.support import TESTFN, import_module, unlink msilib = import_module('msilib') @@ -42,6 +42,29 @@ def test_view_fetch_returns_none(self): ) self.addCleanup(unlink, db_path) + def test_summaryinfo_getproperty_issue1104(self): + db, db_path = init_database() + try: + sum_info = db.GetSummaryInformation(99) + title = sum_info.GetProperty(msilib.PID_TITLE) + self.assertEqual(title, b"Installation Database") + + sum_info.SetProperty(msilib.PID_TITLE, "a" * 999) + title = sum_info.GetProperty(msilib.PID_TITLE) + self.assertEqual(title, b"a" * 999) + + sum_info.SetProperty(msilib.PID_TITLE, "a" * 1000) + title = sum_info.GetProperty(msilib.PID_TITLE) + self.assertEqual(title, b"a" * 1000) + + sum_info.SetProperty(msilib.PID_TITLE, "a" * 1001) + title = sum_info.GetProperty(msilib.PID_TITLE) + self.assertEqual(title, b"a" * 1001) + finally: + db = None + sum_info = None + os.unlink(db_path) + def test_database_open_failed(self): with self.assertRaises(msilib.MSIError) as cm: msilib.OpenDatabase('non-existent.msi', msilib.MSIDBOPEN_READONLY) @@ -92,7 +115,7 @@ def test_invalid_first_char(self): def test_invalid_any_char(self): self.assertEqual( msilib.make_id(".s\x82ort"), "_.s_ort") - self.assertEqual ( + self.assertEqual( msilib.make_id(".s\x82o?*+rt"), "_.s_o___rt") diff --git a/Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst b/Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst new file mode 100644 index 000000000000..a4043496bc24 --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst @@ -0,0 +1,2 @@ +Correctly handle string length in ``msilib.SummaryInfo.GetProperty()`` to +prevent it from truncating the last character. diff --git a/PC/_msi.c b/PC/_msi.c index 024b2d3c9fd3..99aef52e422b 100644 --- a/PC/_msi.c +++ b/PC/_msi.c @@ -555,7 +555,7 @@ summary_getproperty(msiobj* si, PyObject *args) FILETIME fval; char sbuf[1000]; char *sval = sbuf; - DWORD ssize = sizeof(sval); + DWORD ssize = sizeof(sbuf); if (!PyArg_ParseTuple(args, "i:GetProperty", &field)) return NULL; @@ -563,6 +563,7 @@ summary_getproperty(msiobj* si, PyObject *args) status = MsiSummaryInfoGetProperty(si->h, field, &type, &ival, &fval, sval, &ssize); if (status == ERROR_MORE_DATA) { + ssize++; sval = malloc(ssize); if (sval == NULL) { return PyErr_NoMemory(); @@ -572,21 +573,29 @@ summary_getproperty(msiobj* si, PyObject *args) } switch(type) { - case VT_I2: case VT_I4: - return PyLong_FromLong(ival); + case VT_I2: + case VT_I4: + result = PyLong_FromLong(ival); + break; case VT_FILETIME: PyErr_SetString(PyExc_NotImplementedError, "FILETIME result"); - return NULL; + result = NULL; + break; case VT_LPSTR: result = PyBytes_FromStringAndSize(sval, ssize); - if (sval != sbuf) - free(sval); - return result; + break; case VT_EMPTY: - Py_RETURN_NONE; + Py_INCREF(Py_None); + result = Py_None; + break; + default: + PyErr_Format(PyExc_NotImplementedError, "result of type %d", type); + result = NULL; + break; } - PyErr_Format(PyExc_NotImplementedError, "result of type %d", type); - return NULL; + if (sval != sbuf) + free(sval); + return result; } static PyObject* From webhook-mailer at python.org Sat Feb 2 12:16:46 2019 From: webhook-mailer at python.org (Steve Dower) Date: Sat, 02 Feb 2019 17:16:46 -0000 Subject: [Python-checkins] bpo-33895: Relase GIL while calling functions that acquire Windows loader lock (GH-7789) Message-ID: https://github.com/python/cpython/commit/4860f01ac0f07cdc8fc0cc27c33f5a64e5cfec9f commit: 4860f01ac0f07cdc8fc0cc27c33f5a64e5cfec9f branch: master author: Tony Roberts committer: Steve Dower date: 2019-02-02T09:16:42-08:00 summary: bpo-33895: Relase GIL while calling functions that acquire Windows loader lock (GH-7789) LoadLibrary, GetProcAddress, FreeLibrary and GetModuleHandle acquire the system loader lock. Calling these while holding the GIL will cause a deadlock on the rare occasion that another thread is detaching and needs to destroy its thread state at the same time. files: A Misc/NEWS.d/next/Windows/2018-06-19-11-57-50.bpo-33895.zpblTy.rst M Modules/_ctypes/_ctypes.c M Modules/_ctypes/callproc.c M Modules/overlapped.c M Modules/posixmodule.c M PC/winreg.c M Python/dynload_win.c M Python/sysmodule.c diff --git a/Misc/NEWS.d/next/Windows/2018-06-19-11-57-50.bpo-33895.zpblTy.rst b/Misc/NEWS.d/next/Windows/2018-06-19-11-57-50.bpo-33895.zpblTy.rst new file mode 100644 index 000000000000..a12b8196c36b --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2018-06-19-11-57-50.bpo-33895.zpblTy.rst @@ -0,0 +1 @@ +GIL is released while calling functions that acquire Windows loader lock. diff --git a/Modules/_ctypes/_ctypes.c b/Modules/_ctypes/_ctypes.c index cc4aab7389b1..0d95d2b6f76e 100644 --- a/Modules/_ctypes/_ctypes.c +++ b/Modules/_ctypes/_ctypes.c @@ -678,7 +678,9 @@ CDataType_in_dll(PyObject *type, PyObject *args) } #ifdef MS_WIN32 + Py_BEGIN_ALLOW_THREADS address = (void *)GetProcAddress(handle, name); + Py_END_ALLOW_THREADS if (!address) { PyErr_Format(PyExc_ValueError, "symbol '%s' not found", @@ -3243,18 +3245,23 @@ static PyGetSetDef PyCFuncPtr_getsets[] = { #ifdef MS_WIN32 static PPROC FindAddress(void *handle, const char *name, PyObject *type) { + PPROC address; #ifdef MS_WIN64 /* win64 has no stdcall calling conv, so it should also not have the name mangling of it. */ - return (PPROC)GetProcAddress(handle, name); + Py_BEGIN_ALLOW_THREADS + address = (PPROC)GetProcAddress(handle, name); + Py_END_ALLOW_THREADS + return address; #else - PPROC address; char *mangled_name; int i; StgDictObject *dict; + Py_BEGIN_ALLOW_THREADS address = (PPROC)GetProcAddress(handle, name); + Py_END_ALLOW_THREADS if (address) return address; if (((size_t)name & ~0xFFFF) == 0) { @@ -3275,7 +3282,9 @@ static PPROC FindAddress(void *handle, const char *name, PyObject *type) return NULL; for (i = 0; i < 32; ++i) { sprintf(mangled_name, "_%s@%d", name, i*4); + Py_BEGIN_ALLOW_THREADS address = (PPROC)GetProcAddress(handle, mangled_name); + Py_END_ALLOW_THREADS if (address) return address; } diff --git a/Modules/_ctypes/callproc.c b/Modules/_ctypes/callproc.c index bed536402023..9bcc9557ec00 100644 --- a/Modules/_ctypes/callproc.c +++ b/Modules/_ctypes/callproc.c @@ -1286,7 +1286,10 @@ static PyObject *load_library(PyObject *self, PyObject *args) if (!name) return NULL; + Py_BEGIN_ALLOW_THREADS hMod = LoadLibraryW(name); + Py_END_ALLOW_THREADS + if (!hMod) return PyErr_SetFromWindowsErr(GetLastError()); #ifdef _WIN64 @@ -1303,9 +1306,15 @@ Free the handle of an executable previously loaded by LoadLibrary.\n"; static PyObject *free_library(PyObject *self, PyObject *args) { void *hMod; + BOOL result; if (!PyArg_ParseTuple(args, "O&:FreeLibrary", &_parse_voidp, &hMod)) return NULL; - if (!FreeLibrary((HMODULE)hMod)) + + Py_BEGIN_ALLOW_THREADS + result = FreeLibrary((HMODULE)hMod); + Py_END_ALLOW_THREADS + + if (!result) return PyErr_SetFromWindowsErr(GetLastError()); Py_RETURN_NONE; } diff --git a/Modules/overlapped.c b/Modules/overlapped.c index ef4390b82548..e5a209bf7582 100644 --- a/Modules/overlapped.c +++ b/Modules/overlapped.c @@ -127,8 +127,10 @@ initialize_function_pointers(void) closesocket(s); /* On WinXP we will have Py_CancelIoEx == NULL */ + Py_BEGIN_ALLOW_THREADS hKernel32 = GetModuleHandle("KERNEL32"); *(FARPROC *)&Py_CancelIoEx = GetProcAddress(hKernel32, "CancelIoEx"); + Py_END_ALLOW_THREADS return 0; } diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index 0f6bd1490434..931c0d3f3ae1 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -7749,9 +7749,13 @@ check_CreateSymbolicLink(void) /* only recheck */ if (Py_CreateSymbolicLinkW) return 1; + + Py_BEGIN_ALLOW_THREADS hKernel32 = GetModuleHandleW(L"KERNEL32"); *(FARPROC*)&Py_CreateSymbolicLinkW = GetProcAddress(hKernel32, "CreateSymbolicLinkW"); + Py_END_ALLOW_THREADS + return Py_CreateSymbolicLinkW != NULL; } @@ -11288,7 +11292,6 @@ check_ShellExecute() the system SHELL32.DLL, even if there is another SHELL32.DLL in the DLL search path. */ hShell32 = LoadLibraryW(L"SHELL32"); - Py_END_ALLOW_THREADS if (hShell32) { *(FARPROC*)&Py_ShellExecuteW = GetProcAddress(hShell32, "ShellExecuteW"); @@ -11296,6 +11299,7 @@ check_ShellExecute() } else { has_ShellExecute = 0; } + Py_END_ALLOW_THREADS } return has_ShellExecute; } @@ -11909,11 +11913,12 @@ os_cpu_count_impl(PyObject *module) /* Vista is supported and the GetMaximumProcessorCount API is Win7+ Need to fallback to Vista behavior if this call isn't present */ HINSTANCE hKernel32; - hKernel32 = GetModuleHandleW(L"KERNEL32"); - static DWORD(CALLBACK *_GetMaximumProcessorCount)(WORD) = NULL; + Py_BEGIN_ALLOW_THREADS + hKernel32 = GetModuleHandleW(L"KERNEL32"); *(FARPROC*)&_GetMaximumProcessorCount = GetProcAddress(hKernel32, "GetMaximumProcessorCount"); + Py_END_ALLOW_THREADS if (_GetMaximumProcessorCount != NULL) { ncpu = _GetMaximumProcessorCount(ALL_PROCESSOR_GROUPS); } diff --git a/PC/winreg.c b/PC/winreg.c index 8ed6be48f15b..3a6ea3689fd1 100644 --- a/PC/winreg.c +++ b/PC/winreg.c @@ -984,10 +984,12 @@ winreg_DeleteKeyEx_impl(PyObject *module, HKEY key, /* Only available on 64bit platforms, so we must load it dynamically. */ + Py_BEGIN_ALLOW_THREADS hMod = GetModuleHandleW(L"advapi32.dll"); if (hMod) pfn = (RDKEFunc)GetProcAddress(hMod, "RegDeleteKeyExW"); + Py_END_ALLOW_THREADS if (!pfn) { PyErr_SetString(PyExc_NotImplementedError, "not implemented on this platform"); @@ -1714,10 +1716,12 @@ winreg_DisableReflectionKey_impl(PyObject *module, HKEY key) /* Only available on 64bit platforms, so we must load it dynamically.*/ + Py_BEGIN_ALLOW_THREADS hMod = GetModuleHandleW(L"advapi32.dll"); if (hMod) pfn = (RDRKFunc)GetProcAddress(hMod, "RegDisableReflectionKey"); + Py_END_ALLOW_THREADS if (!pfn) { PyErr_SetString(PyExc_NotImplementedError, "not implemented on this platform"); @@ -1757,10 +1761,12 @@ winreg_EnableReflectionKey_impl(PyObject *module, HKEY key) /* Only available on 64bit platforms, so we must load it dynamically.*/ + Py_BEGIN_ALLOW_THREADS hMod = GetModuleHandleW(L"advapi32.dll"); if (hMod) pfn = (RERKFunc)GetProcAddress(hMod, "RegEnableReflectionKey"); + Py_END_ALLOW_THREADS if (!pfn) { PyErr_SetString(PyExc_NotImplementedError, "not implemented on this platform"); @@ -1799,10 +1805,12 @@ winreg_QueryReflectionKey_impl(PyObject *module, HKEY key) /* Only available on 64bit platforms, so we must load it dynamically.*/ + Py_BEGIN_ALLOW_THREADS hMod = GetModuleHandleW(L"advapi32.dll"); if (hMod) pfn = (RQRKFunc)GetProcAddress(hMod, "RegQueryReflectionKey"); + Py_END_ALLOW_THREADS if (!pfn) { PyErr_SetString(PyExc_NotImplementedError, "not implemented on this platform"); diff --git a/Python/dynload_win.c b/Python/dynload_win.c index 0fdf77f55280..129e04d1b21d 100644 --- a/Python/dynload_win.c +++ b/Python/dynload_win.c @@ -218,8 +218,10 @@ dl_funcptr _PyImport_FindSharedFuncptrWindows(const char *prefix, /* We use LoadLibraryEx so Windows looks for dependent DLLs in directory of pathname first. */ /* XXX This call doesn't exist in Windows CE */ + Py_BEGIN_ALLOW_THREADS hDLL = LoadLibraryExW(wpathname, NULL, LOAD_WITH_ALTERED_SEARCH_PATH); + Py_END_ALLOW_THREADS #if HAVE_SXS _Py_DeactivateActCtx(cookie); #endif @@ -298,11 +300,15 @@ dl_funcptr _PyImport_FindSharedFuncptrWindows(const char *prefix, "Module use of %.150s conflicts " "with this version of Python.", import_python); + Py_BEGIN_ALLOW_THREADS FreeLibrary(hDLL); + Py_END_ALLOW_THREADS return NULL; } } + Py_BEGIN_ALLOW_THREADS p = GetProcAddress(hDLL, funcname); + Py_END_ALLOW_THREADS } return p; diff --git a/Python/sysmodule.c b/Python/sysmodule.c index f1cd74ebeccf..c7e68aa36414 100644 --- a/Python/sysmodule.c +++ b/Python/sysmodule.c @@ -1159,7 +1159,9 @@ sys_getwindowsversion_impl(PyObject *module) // We need to read the version info from a system file resource // to accurately identify the OS version. If we fail for any reason, // just return whatever GetVersion said. + Py_BEGIN_ALLOW_THREADS hKernel32 = GetModuleHandleW(L"kernel32.dll"); + Py_END_ALLOW_THREADS if (hKernel32 && GetModuleFileNameW(hKernel32, kernel32_path, MAX_PATH) && (verblock_size = GetFileVersionInfoSizeW(kernel32_path, NULL)) && (verblock = PyMem_RawMalloc(verblock_size))) { From webhook-mailer at python.org Sat Feb 2 12:36:53 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Sat, 02 Feb 2019 17:36:53 -0000 Subject: [Python-checkins] bpo-1104: msilib.SummaryInfo.GetProperty() truncates the string by one character (GH-4517) Message-ID: https://github.com/python/cpython/commit/56f84117a766d21045349f0217ce740831aef0dc commit: 56f84117a766d21045349f0217ce740831aef0dc branch: 3.7 author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> committer: GitHub date: 2019-02-02T09:36:48-08:00 summary: bpo-1104: msilib.SummaryInfo.GetProperty() truncates the string by one character (GH-4517) Add one char to MsiSummaryInfoGetProperty() output Based on the patch in bpo-1104 by Anthony Tuininga (atuining) and Mark McMahon (markm). (cherry picked from commit 2de576e16d42ce43698d384d0dd46ba6cf165424) Co-authored-by: Tzu-ping Chung files: A Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst M Lib/test/test_msilib.py M PC/_msi.c diff --git a/Lib/test/test_msilib.py b/Lib/test/test_msilib.py index 6d89ca4b7732..4aa4753fc2a6 100644 --- a/Lib/test/test_msilib.py +++ b/Lib/test/test_msilib.py @@ -1,5 +1,5 @@ """ Test suite for the code in msilib """ -import os.path +import os import unittest from test.support import TESTFN, import_module, unlink msilib = import_module('msilib') @@ -42,6 +42,29 @@ def test_view_fetch_returns_none(self): ) self.addCleanup(unlink, db_path) + def test_summaryinfo_getproperty_issue1104(self): + db, db_path = init_database() + try: + sum_info = db.GetSummaryInformation(99) + title = sum_info.GetProperty(msilib.PID_TITLE) + self.assertEqual(title, b"Installation Database") + + sum_info.SetProperty(msilib.PID_TITLE, "a" * 999) + title = sum_info.GetProperty(msilib.PID_TITLE) + self.assertEqual(title, b"a" * 999) + + sum_info.SetProperty(msilib.PID_TITLE, "a" * 1000) + title = sum_info.GetProperty(msilib.PID_TITLE) + self.assertEqual(title, b"a" * 1000) + + sum_info.SetProperty(msilib.PID_TITLE, "a" * 1001) + title = sum_info.GetProperty(msilib.PID_TITLE) + self.assertEqual(title, b"a" * 1001) + finally: + db = None + sum_info = None + os.unlink(db_path) + def test_database_open_failed(self): with self.assertRaises(msilib.MSIError) as cm: msilib.OpenDatabase('non-existent.msi', msilib.MSIDBOPEN_READONLY) @@ -92,7 +115,7 @@ def test_invalid_first_char(self): def test_invalid_any_char(self): self.assertEqual( msilib.make_id(".s\x82ort"), "_.s_ort") - self.assertEqual ( + self.assertEqual( msilib.make_id(".s\x82o?*+rt"), "_.s_o___rt") diff --git a/Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst b/Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst new file mode 100644 index 000000000000..a4043496bc24 --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst @@ -0,0 +1,2 @@ +Correctly handle string length in ``msilib.SummaryInfo.GetProperty()`` to +prevent it from truncating the last character. diff --git a/PC/_msi.c b/PC/_msi.c index 024b2d3c9fd3..99aef52e422b 100644 --- a/PC/_msi.c +++ b/PC/_msi.c @@ -555,7 +555,7 @@ summary_getproperty(msiobj* si, PyObject *args) FILETIME fval; char sbuf[1000]; char *sval = sbuf; - DWORD ssize = sizeof(sval); + DWORD ssize = sizeof(sbuf); if (!PyArg_ParseTuple(args, "i:GetProperty", &field)) return NULL; @@ -563,6 +563,7 @@ summary_getproperty(msiobj* si, PyObject *args) status = MsiSummaryInfoGetProperty(si->h, field, &type, &ival, &fval, sval, &ssize); if (status == ERROR_MORE_DATA) { + ssize++; sval = malloc(ssize); if (sval == NULL) { return PyErr_NoMemory(); @@ -572,21 +573,29 @@ summary_getproperty(msiobj* si, PyObject *args) } switch(type) { - case VT_I2: case VT_I4: - return PyLong_FromLong(ival); + case VT_I2: + case VT_I4: + result = PyLong_FromLong(ival); + break; case VT_FILETIME: PyErr_SetString(PyExc_NotImplementedError, "FILETIME result"); - return NULL; + result = NULL; + break; case VT_LPSTR: result = PyBytes_FromStringAndSize(sval, ssize); - if (sval != sbuf) - free(sval); - return result; + break; case VT_EMPTY: - Py_RETURN_NONE; + Py_INCREF(Py_None); + result = Py_None; + break; + default: + PyErr_Format(PyExc_NotImplementedError, "result of type %d", type); + result = NULL; + break; } - PyErr_Format(PyExc_NotImplementedError, "result of type %d", type); - return NULL; + if (sval != sbuf) + free(sval); + return result; } static PyObject* From webhook-mailer at python.org Sat Feb 2 12:57:44 2019 From: webhook-mailer at python.org (Stefan Krah) Date: Sat, 02 Feb 2019 17:57:44 -0000 Subject: [Python-checkins] bpo-35845: Add order={'C', 'F', 'A'} parameter to memoryview.tobytes(). (#11730) Message-ID: https://github.com/python/cpython/commit/d08ea70464cb8a1f86134dcb4a5c2eac1a02bf1a commit: d08ea70464cb8a1f86134dcb4a5c2eac1a02bf1a branch: master author: Stefan Krah committer: GitHub date: 2019-02-02T18:57:41+01:00 summary: bpo-35845: Add order={'C', 'F', 'A'} parameter to memoryview.tobytes(). (#11730) files: A Misc/NEWS.d/next/Library/2019-02-02-00-04-01.bpo-35845.1jx2wk.rst M Doc/library/stdtypes.rst M Lib/test/test_buffer.py M Objects/memoryobject.c diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst index 887497852216..d1b1b8c636e9 100644 --- a/Doc/library/stdtypes.rst +++ b/Doc/library/stdtypes.rst @@ -3600,7 +3600,7 @@ copying. Previous versions compared the raw memory disregarding the item format and the logical array structure. - .. method:: tobytes() + .. method:: tobytes(order=None) Return the data in the buffer as a bytestring. This is equivalent to calling the :class:`bytes` constructor on the memoryview. :: @@ -3616,6 +3616,13 @@ copying. supports all format strings, including those that are not in :mod:`struct` module syntax. + .. versionadded:: 3.8 + *Order* can be {'C', 'F', 'A'}. When *order* is 'C' or 'F', the data + of the original array is converted to C or Fortran order. For contiguous + views, 'A' returns an exact copy of the physical memory. In particular, + in-memory Fortran order is preserved. For non-contiguous views, the + data is converted to C first. *order=None* is the same as *order='C'*. + .. method:: hex() Return a string object containing two hexadecimal digits for each diff --git a/Lib/test/test_buffer.py b/Lib/test/test_buffer.py index 761ed0a9a9bf..47413c03d663 100644 --- a/Lib/test/test_buffer.py +++ b/Lib/test/test_buffer.py @@ -893,6 +893,15 @@ def verify(self, result, *, obj, y = ndarray(initlst, shape=shape, flags=ro, format=fmt) self.assertEqual(memoryview(y), memoryview(result)) + contig_bytes = memoryview(result).tobytes() + self.assertEqual(contig_bytes, contig) + + contig_bytes = memoryview(result).tobytes(order=None) + self.assertEqual(contig_bytes, contig) + + contig_bytes = memoryview(result).tobytes(order='C') + self.assertEqual(contig_bytes, contig) + # To 'F' contig = py_buffer_to_contiguous(result, 'F', PyBUF_FULL_RO) self.assertEqual(len(contig), nmemb * itemsize) @@ -905,6 +914,9 @@ def verify(self, result, *, obj, format=fmt) self.assertEqual(memoryview(y), memoryview(result)) + contig_bytes = memoryview(result).tobytes(order='F') + self.assertEqual(contig_bytes, contig) + # To 'A' contig = py_buffer_to_contiguous(result, 'A', PyBUF_FULL_RO) self.assertEqual(len(contig), nmemb * itemsize) @@ -917,6 +929,9 @@ def verify(self, result, *, obj, y = ndarray(initlst, shape=shape, flags=f|ro, format=fmt) self.assertEqual(memoryview(y), memoryview(result)) + contig_bytes = memoryview(result).tobytes(order='A') + self.assertEqual(contig_bytes, contig) + if is_memoryview_format(fmt): try: m = memoryview(result) diff --git a/Misc/NEWS.d/next/Library/2019-02-02-00-04-01.bpo-35845.1jx2wk.rst b/Misc/NEWS.d/next/Library/2019-02-02-00-04-01.bpo-35845.1jx2wk.rst new file mode 100644 index 000000000000..755baf7b6154 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2019-02-02-00-04-01.bpo-35845.1jx2wk.rst @@ -0,0 +1 @@ +Add 'order' parameter to memoryview.tobytes(). diff --git a/Objects/memoryobject.c b/Objects/memoryobject.c index 40e6308c87ae..d835704bdaae 100644 --- a/Objects/memoryobject.c +++ b/Objects/memoryobject.c @@ -2120,22 +2120,39 @@ memory_tolist(PyMemoryViewObject *mv, PyObject *noargs) } static PyObject * -memory_tobytes(PyMemoryViewObject *self, PyObject *dummy) +memory_tobytes(PyMemoryViewObject *self, PyObject *args, PyObject *kwds) { + static char *kwlist[] = {"order", NULL}; Py_buffer *src = VIEW_ADDR(self); - PyObject *bytes = NULL; + char *order = NULL; + char ord = 'C'; + PyObject *bytes; CHECK_RELEASED(self); - if (MV_C_CONTIGUOUS(self->flags)) { - return PyBytes_FromStringAndSize(src->buf, src->len); + if (!PyArg_ParseTupleAndKeywords(args, kwds, "|z", kwlist, &order)) { + return NULL; + } + + if (order) { + if (strcmp(order, "F") == 0) { + ord = 'F'; + } + else if (strcmp(order, "A") == 0) { + ord = 'A'; + } + else if (strcmp(order, "C") != 0) { + PyErr_SetString(PyExc_ValueError, + "order must be 'C', 'F' or 'A'"); + return NULL; + } } bytes = PyBytes_FromStringAndSize(NULL, src->len); if (bytes == NULL) return NULL; - if (buffer_to_contiguous(PyBytes_AS_STRING(bytes), src, 'C') < 0) { + if (PyBuffer_ToContiguous(PyBytes_AS_STRING(bytes), src, src->len, ord) < 0) { Py_DECREF(bytes); return NULL; } @@ -2156,10 +2173,15 @@ memory_hex(PyMemoryViewObject *self, PyObject *dummy) return _Py_strhex(src->buf, src->len); } - bytes = memory_tobytes(self, dummy); + bytes = PyBytes_FromStringAndSize(NULL, src->len); if (bytes == NULL) return NULL; + if (PyBuffer_ToContiguous(PyBytes_AS_STRING(bytes), src, src->len, 'C') < 0) { + Py_DECREF(bytes); + return NULL; + } + ret = _Py_strhex(PyBytes_AS_STRING(bytes), PyBytes_GET_SIZE(bytes)); Py_DECREF(bytes); @@ -3061,9 +3083,13 @@ PyDoc_STRVAR(memory_release_doc, \n\ Release the underlying buffer exposed by the memoryview object."); PyDoc_STRVAR(memory_tobytes_doc, -"tobytes($self, /)\n--\n\ +"tobytes($self, /, order=None)\n--\n\ \n\ -Return the data in the buffer as a byte string."); +Return the data in the buffer as a byte string. Order can be {'C', 'F', 'A'}.\n\ +When order is 'C' or 'F', the data of the original array is converted to C or\n\ +Fortran order. For contiguous views, 'A' returns an exact copy of the physical\n\ +memory. In particular, in-memory Fortran order is preserved. For non-contiguous\n\ +views, the data is converted to C first. order=None is the same as order='C'."); PyDoc_STRVAR(memory_hex_doc, "hex($self, /)\n--\n\ \n\ @@ -3083,7 +3109,7 @@ Return a readonly version of the memoryview."); static PyMethodDef memory_methods[] = { {"release", (PyCFunction)memory_release, METH_NOARGS, memory_release_doc}, - {"tobytes", (PyCFunction)memory_tobytes, METH_NOARGS, memory_tobytes_doc}, + {"tobytes", (PyCFunction)memory_tobytes, METH_VARARGS|METH_KEYWORDS, memory_tobytes_doc}, {"hex", (PyCFunction)memory_hex, METH_NOARGS, memory_hex_doc}, {"tolist", (PyCFunction)memory_tolist, METH_NOARGS, memory_tolist_doc}, {"cast", (PyCFunction)(void(*)(void))memory_cast, METH_VARARGS|METH_KEYWORDS, memory_cast_doc}, From webhook-mailer at python.org Sat Feb 2 14:21:10 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Sat, 02 Feb 2019 19:21:10 -0000 Subject: [Python-checkins] bpo-32560: inherit the py launcher's STARTUPINFO (GH-9000) Message-ID: https://github.com/python/cpython/commit/cb0904762681031edc50f9d7d7ef48cffcf96d9a commit: cb0904762681031edc50f9d7d7ef48cffcf96d9a branch: master author: Shiva Saxena committer: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> date: 2019-02-02T11:21:04-08:00 summary: bpo-32560: inherit the py launcher's STARTUPINFO (GH-9000) https://bugs.python.org/issue32560 files: A Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst M PC/launcher.c diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst b/Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst new file mode 100644 index 000000000000..bf2bf113e24c --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst @@ -0,0 +1,2 @@ +The ``py`` launcher now forwards its ``STARTUPINFO`` structure to child +processes. diff --git a/PC/launcher.c b/PC/launcher.c index a78620a8924f..a4e678115f34 100644 --- a/PC/launcher.c +++ b/PC/launcher.c @@ -666,7 +666,7 @@ run_child(wchar_t * cmdline) if (!ok) error(RC_CREATE_PROCESS, L"Job information setting failed"); memset(&si, 0, sizeof(si)); - si.cb = sizeof(si); + GetStartupInfoW(&si); ok = safe_duplicate_handle(GetStdHandle(STD_INPUT_HANDLE), &si.hStdInput); if (!ok) error(RC_NO_STD_HANDLES, L"stdin duplication failed"); From webhook-mailer at python.org Sat Feb 2 14:38:19 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Sat, 02 Feb 2019 19:38:19 -0000 Subject: [Python-checkins] bpo-32560: inherit the py launcher's STARTUPINFO (GH-9000) Message-ID: https://github.com/python/cpython/commit/04b2a5eedac7ac0fecdafce1bda1028ee55e2aac commit: 04b2a5eedac7ac0fecdafce1bda1028ee55e2aac branch: 3.7 author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> committer: GitHub date: 2019-02-02T11:38:16-08:00 summary: bpo-32560: inherit the py launcher's STARTUPINFO (GH-9000) https://bugs.python.org/issue32560 (cherry picked from commit cb0904762681031edc50f9d7d7ef48cffcf96d9a) Co-authored-by: Shiva Saxena files: A Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst M PC/launcher.c diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst b/Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst new file mode 100644 index 000000000000..bf2bf113e24c --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst @@ -0,0 +1,2 @@ +The ``py`` launcher now forwards its ``STARTUPINFO`` structure to child +processes. diff --git a/PC/launcher.c b/PC/launcher.c index a78620a8924f..a4e678115f34 100644 --- a/PC/launcher.c +++ b/PC/launcher.c @@ -666,7 +666,7 @@ run_child(wchar_t * cmdline) if (!ok) error(RC_CREATE_PROCESS, L"Job information setting failed"); memset(&si, 0, sizeof(si)); - si.cb = sizeof(si); + GetStartupInfoW(&si); ok = safe_duplicate_handle(GetStdHandle(STD_INPUT_HANDLE), &si.hStdInput); if (!ok) error(RC_NO_STD_HANDLES, L"stdin duplication failed"); From webhook-mailer at python.org Sat Feb 2 16:08:26 2019 From: webhook-mailer at python.org (Steve Dower) Date: Sat, 02 Feb 2019 21:08:26 -0000 Subject: [Python-checkins] bpo-29734: nt._getfinalpathname handle leak (GH-740) Message-ID: https://github.com/python/cpython/commit/b82bfac4369c0429e562a834b3752e66c4821eab commit: b82bfac4369c0429e562a834b3752e66c4821eab branch: master author: Mark Becwar committer: Steve Dower date: 2019-02-02T13:08:23-08:00 summary: bpo-29734: nt._getfinalpathname handle leak (GH-740) Make sure that failure paths call CloseHandle outside of the function that failed files: A Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst M Lib/test/test_os.py M Modules/posixmodule.c diff --git a/Lib/test/test_os.py b/Lib/test/test_os.py index aca445f91620..9e0bef573cb3 100644 --- a/Lib/test/test_os.py +++ b/Lib/test/test_os.py @@ -2325,6 +2325,62 @@ def test_unlink_removes_junction(self): os.unlink(self.junction) self.assertFalse(os.path.exists(self.junction)) + at unittest.skipUnless(sys.platform == "win32", "Win32 specific tests") +class Win32NtTests(unittest.TestCase): + def setUp(self): + from test import support + self.nt = support.import_module('nt') + pass + + def tearDown(self): + pass + + def test_getfinalpathname_handles(self): + try: + import ctypes, ctypes.wintypes + except ImportError: + raise unittest.SkipTest('ctypes module is required for this test') + + kernel = ctypes.WinDLL('Kernel32.dll', use_last_error=True) + kernel.GetCurrentProcess.restype = ctypes.wintypes.HANDLE + + kernel.GetProcessHandleCount.restype = ctypes.wintypes.BOOL + kernel.GetProcessHandleCount.argtypes = (ctypes.wintypes.HANDLE, + ctypes.wintypes.LPDWORD) + + # This is a pseudo-handle that doesn't need to be closed + hproc = kernel.GetCurrentProcess() + + handle_count = ctypes.wintypes.DWORD() + ok = kernel.GetProcessHandleCount(hproc, ctypes.byref(handle_count)) + self.assertEqual(1, ok) + + before_count = handle_count.value + + # The first two test the error path, __file__ tests the success path + filenames = [ r'\\?\C:', + r'\\?\NUL', + r'\\?\CONIN', + __file__ ] + + for i in range(10): + for name in filenames: + try: + tmp = self.nt._getfinalpathname(name) + except: + # Failure is expected + pass + try: + tmp = os.stat(name) + except: + pass + + ok = kernel.GetProcessHandleCount(hproc, ctypes.byref(handle_count)) + self.assertEqual(1, ok) + + handle_delta = handle_count.value - before_count + + self.assertEqual(0, handle_delta) @support.skip_unless_symlink class NonLocalSymlinkTests(unittest.TestCase): diff --git a/Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst b/Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst new file mode 100644 index 000000000000..c89a509a0e8f --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst @@ -0,0 +1 @@ +Fix handle leaks in os.stat on Windows. \ No newline at end of file diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index 931c0d3f3ae1..80add7da5fca 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -1640,11 +1640,6 @@ get_target_path(HANDLE hdl, wchar_t **target_path) return FALSE; } - if(!CloseHandle(hdl)) { - PyMem_RawFree(buf); - return FALSE; - } - buf[result_length] = 0; *target_path = buf; @@ -1702,9 +1697,10 @@ win32_xstat_impl(const wchar_t *path, struct _Py_stat_struct *result, return -1; } if (info.dwFileAttributes & FILE_ATTRIBUTE_REPARSE_POINT) { - if (!win32_get_reparse_tag(hFile, &reparse_tag)) + if (!win32_get_reparse_tag(hFile, &reparse_tag)) { + CloseHandle(hFile); return -1; - + } /* Close the outer open file handle now that we're about to reopen it with different flags. */ if (!CloseHandle(hFile)) @@ -1721,8 +1717,14 @@ win32_xstat_impl(const wchar_t *path, struct _Py_stat_struct *result, if (hFile2 == INVALID_HANDLE_VALUE) return -1; - if (!get_target_path(hFile2, &target_path)) + if (!get_target_path(hFile2, &target_path)) { + CloseHandle(hFile2); return -1; + } + + if (!CloseHandle(hFile2)) { + return -1; + } code = win32_xstat_impl(target_path, result, FALSE); PyMem_RawFree(target_path); From webhook-mailer at python.org Sat Feb 2 16:29:10 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Sat, 02 Feb 2019 21:29:10 -0000 Subject: [Python-checkins] bpo-29734: nt._getfinalpathname handle leak (GH-740) Message-ID: https://github.com/python/cpython/commit/63a69ef4a2390cea3e102498ac7eeeb5546e82b6 commit: 63a69ef4a2390cea3e102498ac7eeeb5546e82b6 branch: 3.7 author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> committer: GitHub date: 2019-02-02T13:29:07-08:00 summary: bpo-29734: nt._getfinalpathname handle leak (GH-740) Make sure that failure paths call CloseHandle outside of the function that failed (cherry picked from commit b82bfac4369c0429e562a834b3752e66c4821eab) Co-authored-by: Mark Becwar files: A Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst M Lib/test/test_os.py M Modules/posixmodule.c diff --git a/Lib/test/test_os.py b/Lib/test/test_os.py index fe7261dd76e9..a50eb7e296e6 100644 --- a/Lib/test/test_os.py +++ b/Lib/test/test_os.py @@ -2278,6 +2278,62 @@ def test_unlink_removes_junction(self): os.unlink(self.junction) self.assertFalse(os.path.exists(self.junction)) + at unittest.skipUnless(sys.platform == "win32", "Win32 specific tests") +class Win32NtTests(unittest.TestCase): + def setUp(self): + from test import support + self.nt = support.import_module('nt') + pass + + def tearDown(self): + pass + + def test_getfinalpathname_handles(self): + try: + import ctypes, ctypes.wintypes + except ImportError: + raise unittest.SkipTest('ctypes module is required for this test') + + kernel = ctypes.WinDLL('Kernel32.dll', use_last_error=True) + kernel.GetCurrentProcess.restype = ctypes.wintypes.HANDLE + + kernel.GetProcessHandleCount.restype = ctypes.wintypes.BOOL + kernel.GetProcessHandleCount.argtypes = (ctypes.wintypes.HANDLE, + ctypes.wintypes.LPDWORD) + + # This is a pseudo-handle that doesn't need to be closed + hproc = kernel.GetCurrentProcess() + + handle_count = ctypes.wintypes.DWORD() + ok = kernel.GetProcessHandleCount(hproc, ctypes.byref(handle_count)) + self.assertEqual(1, ok) + + before_count = handle_count.value + + # The first two test the error path, __file__ tests the success path + filenames = [ r'\\?\C:', + r'\\?\NUL', + r'\\?\CONIN', + __file__ ] + + for i in range(10): + for name in filenames: + try: + tmp = self.nt._getfinalpathname(name) + except: + # Failure is expected + pass + try: + tmp = os.stat(name) + except: + pass + + ok = kernel.GetProcessHandleCount(hproc, ctypes.byref(handle_count)) + self.assertEqual(1, ok) + + handle_delta = handle_count.value - before_count + + self.assertEqual(0, handle_delta) @support.skip_unless_symlink class NonLocalSymlinkTests(unittest.TestCase): diff --git a/Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst b/Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst new file mode 100644 index 000000000000..c89a509a0e8f --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst @@ -0,0 +1 @@ +Fix handle leaks in os.stat on Windows. \ No newline at end of file diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index f58572b2ceb4..f76bd57fe41b 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -1616,11 +1616,6 @@ get_target_path(HANDLE hdl, wchar_t **target_path) return FALSE; } - if(!CloseHandle(hdl)) { - PyMem_RawFree(buf); - return FALSE; - } - buf[result_length] = 0; *target_path = buf; @@ -1678,9 +1673,10 @@ win32_xstat_impl(const wchar_t *path, struct _Py_stat_struct *result, return -1; } if (info.dwFileAttributes & FILE_ATTRIBUTE_REPARSE_POINT) { - if (!win32_get_reparse_tag(hFile, &reparse_tag)) + if (!win32_get_reparse_tag(hFile, &reparse_tag)) { + CloseHandle(hFile); return -1; - + } /* Close the outer open file handle now that we're about to reopen it with different flags. */ if (!CloseHandle(hFile)) @@ -1697,8 +1693,14 @@ win32_xstat_impl(const wchar_t *path, struct _Py_stat_struct *result, if (hFile2 == INVALID_HANDLE_VALUE) return -1; - if (!get_target_path(hFile2, &target_path)) + if (!get_target_path(hFile2, &target_path)) { + CloseHandle(hFile2); return -1; + } + + if (!CloseHandle(hFile2)) { + return -1; + } code = win32_xstat_impl(target_path, result, FALSE); PyMem_RawFree(target_path); From webhook-mailer at python.org Sat Feb 2 17:36:28 2019 From: webhook-mailer at python.org (Steve Dower) Date: Sat, 02 Feb 2019 22:36:28 -0000 Subject: [Python-checkins] bpo-34691: Compile _contextvars module into main Python library (GH-11741) Message-ID: https://github.com/python/cpython/commit/4c70d9f79c9b371990c8e054ccde53f7ff15946b commit: 4c70d9f79c9b371990c8e054ccde53f7ff15946b branch: master author: Steve Dower committer: GitHub date: 2019-02-02T14:36:23-08:00 summary: bpo-34691: Compile _contextvars module into main Python library (GH-11741) files: A Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst D PCbuild/_contextvars.vcxproj D PCbuild/_contextvars.vcxproj.filters M PC/config.c M PCbuild/pcbuild.proj M Tools/msi/lib/lib_files.wxs diff --git a/Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst b/Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst new file mode 100644 index 000000000000..3b5aca75103b --- /dev/null +++ b/Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst @@ -0,0 +1,2 @@ +The _contextvars module is now built into the core Python library on +Windows. diff --git a/PC/config.c b/PC/config.c index 43347dddeba3..6f34962bd72d 100644 --- a/PC/config.c +++ b/PC/config.c @@ -72,6 +72,8 @@ extern PyObject* PyInit__string(void); extern PyObject* PyInit__stat(void); extern PyObject* PyInit__opcode(void); +extern PyObject* PyInit__contextvars(void); + /* tools/freeze/makeconfig.py marker for additional "extern" */ /* -- ADDMODULE MARKER 1 -- */ @@ -164,6 +166,8 @@ struct _inittab _PyImport_Inittab[] = { {"_stat", PyInit__stat}, {"_opcode", PyInit__opcode}, + {"_contextvars", PyInit__contextvars}, + /* Sentinel */ {0, 0} }; diff --git a/PCbuild/_contextvars.vcxproj b/PCbuild/_contextvars.vcxproj deleted file mode 100644 index 7418e86570ac..000000000000 --- a/PCbuild/_contextvars.vcxproj +++ /dev/null @@ -1,77 +0,0 @@ -? - - - - Debug - Win32 - - - Debug - x64 - - - PGInstrument - Win32 - - - PGInstrument - x64 - - - PGUpdate - Win32 - - - PGUpdate - x64 - - - Release - Win32 - - - Release - x64 - - - - {B8BF1D81-09DC-42D4-B406-4F868B33A89E} - _contextvars - Win32Proj - - - - - DynamicLibrary - NotSet - - - - .pyd - - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - - - - - - - - - - {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} - false - - - - - - diff --git a/PCbuild/_contextvars.vcxproj.filters b/PCbuild/_contextvars.vcxproj.filters deleted file mode 100644 index b3002b7ff677..000000000000 --- a/PCbuild/_contextvars.vcxproj.filters +++ /dev/null @@ -1,16 +0,0 @@ -? - - - - - - - {7CBD8910-233D-4E9A-9164-9BA66C1F0E6D} - - - - - Source Files - - - diff --git a/PCbuild/pcbuild.proj b/PCbuild/pcbuild.proj index befaa1fed76b..dbe30dd6a8a8 100644 --- a/PCbuild/pcbuild.proj +++ b/PCbuild/pcbuild.proj @@ -50,7 +50,7 @@ - + diff --git a/Tools/msi/lib/lib_files.wxs b/Tools/msi/lib/lib_files.wxs index 4bd0c57e3229..a9952bdac4db 100644 --- a/Tools/msi/lib/lib_files.wxs +++ b/Tools/msi/lib/lib_files.wxs @@ -1,6 +1,6 @@ ? - + From webhook-mailer at python.org Sat Feb 2 17:54:45 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Sat, 02 Feb 2019 22:54:45 -0000 Subject: [Python-checkins] bpo-34691: Compile _contextvars module into main Python library (GH-11741) Message-ID: https://github.com/python/cpython/commit/81eda28382168bfea48bb1a352954ea90aadd4ca commit: 81eda28382168bfea48bb1a352954ea90aadd4ca branch: 3.7 author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> committer: GitHub date: 2019-02-02T14:54:42-08:00 summary: bpo-34691: Compile _contextvars module into main Python library (GH-11741) (cherry picked from commit 4c70d9f79c9b371990c8e054ccde53f7ff15946b) Co-authored-by: Steve Dower files: A Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst D PCbuild/_contextvars.vcxproj D PCbuild/_contextvars.vcxproj.filters M PC/config.c M PCbuild/pcbuild.proj M Tools/msi/lib/lib_files.wxs diff --git a/Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst b/Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst new file mode 100644 index 000000000000..3b5aca75103b --- /dev/null +++ b/Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst @@ -0,0 +1,2 @@ +The _contextvars module is now built into the core Python library on +Windows. diff --git a/PC/config.c b/PC/config.c index 2037b3db64ba..c4922ccd623f 100644 --- a/PC/config.c +++ b/PC/config.c @@ -72,6 +72,8 @@ extern PyObject* PyInit__string(void); extern PyObject* PyInit__stat(void); extern PyObject* PyInit__opcode(void); +extern PyObject* PyInit__contextvars(void); + /* tools/freeze/makeconfig.py marker for additional "extern" */ /* -- ADDMODULE MARKER 1 -- */ @@ -164,6 +166,8 @@ struct _inittab _PyImport_Inittab[] = { {"_stat", PyInit__stat}, {"_opcode", PyInit__opcode}, + {"_contextvars", PyInit__contextvars}, + /* Sentinel */ {0, 0} }; diff --git a/PCbuild/_contextvars.vcxproj b/PCbuild/_contextvars.vcxproj deleted file mode 100644 index 7418e86570ac..000000000000 --- a/PCbuild/_contextvars.vcxproj +++ /dev/null @@ -1,77 +0,0 @@ -? - - - - Debug - Win32 - - - Debug - x64 - - - PGInstrument - Win32 - - - PGInstrument - x64 - - - PGUpdate - Win32 - - - PGUpdate - x64 - - - Release - Win32 - - - Release - x64 - - - - {B8BF1D81-09DC-42D4-B406-4F868B33A89E} - _contextvars - Win32Proj - - - - - DynamicLibrary - NotSet - - - - .pyd - - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - - - - - - - - - - {cf7ac3d1-e2df-41d2-bea6-1e2556cdea26} - false - - - - - - diff --git a/PCbuild/_contextvars.vcxproj.filters b/PCbuild/_contextvars.vcxproj.filters deleted file mode 100644 index b3002b7ff677..000000000000 --- a/PCbuild/_contextvars.vcxproj.filters +++ /dev/null @@ -1,16 +0,0 @@ -? - - - - - - - {7CBD8910-233D-4E9A-9164-9BA66C1F0E6D} - - - - - Source Files - - - diff --git a/PCbuild/pcbuild.proj b/PCbuild/pcbuild.proj index befaa1fed76b..dbe30dd6a8a8 100644 --- a/PCbuild/pcbuild.proj +++ b/PCbuild/pcbuild.proj @@ -50,7 +50,7 @@ - + diff --git a/Tools/msi/lib/lib_files.wxs b/Tools/msi/lib/lib_files.wxs index 4bd0c57e3229..a9952bdac4db 100644 --- a/Tools/msi/lib/lib_files.wxs +++ b/Tools/msi/lib/lib_files.wxs @@ -1,6 +1,6 @@ ? - + From webhook-mailer at python.org Sat Feb 2 19:46:15 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Sun, 03 Feb 2019 00:46:15 -0000 Subject: [Python-checkins] bpo-35642: Remove asynciomodule.c from pythoncore.vcxproj (GH-11410) Message-ID: https://github.com/python/cpython/commit/cba16b748c286261b5bc45e6ff3c26aea2373f43 commit: cba16b748c286261b5bc45e6ff3c26aea2373f43 branch: 3.7 author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> committer: GitHub date: 2019-02-02T16:46:12-08:00 summary: bpo-35642: Remove asynciomodule.c from pythoncore.vcxproj (GH-11410) This module is built by _asyncio.vcxproj and does not need to be included in pythoncore. (cherry picked from commit fbf50683b3a2301097d5cd48bc68b530c1e1720f) Co-authored-by: Gregory Szorc files: A Misc/NEWS.d/next/Build/2019-01-02-11-23-33.bpo-35642.pjkhJe.rst M PCbuild/pythoncore.vcxproj M PCbuild/pythoncore.vcxproj.filters diff --git a/Misc/NEWS.d/next/Build/2019-01-02-11-23-33.bpo-35642.pjkhJe.rst b/Misc/NEWS.d/next/Build/2019-01-02-11-23-33.bpo-35642.pjkhJe.rst new file mode 100644 index 000000000000..9f6da315e2d5 --- /dev/null +++ b/Misc/NEWS.d/next/Build/2019-01-02-11-23-33.bpo-35642.pjkhJe.rst @@ -0,0 +1 @@ +Remove asynciomodule.c from pythoncore.vcxproj diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj index 2ee88225b62c..a56fb7a9cc46 100644 --- a/PCbuild/pythoncore.vcxproj +++ b/PCbuild/pythoncore.vcxproj @@ -229,7 +229,6 @@ - diff --git a/PCbuild/pythoncore.vcxproj.filters b/PCbuild/pythoncore.vcxproj.filters index b51fd54f8b4d..a86408be9f71 100644 --- a/PCbuild/pythoncore.vcxproj.filters +++ b/PCbuild/pythoncore.vcxproj.filters @@ -1016,9 +1016,6 @@ PC - - Modules - Modules From webhook-mailer at python.org Sat Feb 2 23:26:58 2019 From: webhook-mailer at python.org (Steve Dower) Date: Sun, 03 Feb 2019 04:26:58 -0000 Subject: [Python-checkins] bpo-35890 : Fix some API calling consistency (GH-11742) Message-ID: https://github.com/python/cpython/commit/8ebc6451f36fa213130c316199dbec5ad8a02163 commit: 8ebc6451f36fa213130c316199dbec5ad8a02163 branch: master author: Minmin Gong committer: Steve Dower date: 2019-02-02T20:26:55-08:00 summary: bpo-35890 : Fix some API calling consistency (GH-11742) Unicode version of Windows APIs are used in places, but not for GetVersionEx in Python/sysmodule.c The wcstok_s is called on Windows in Modules/main.c and PC/launcher.c, but not in Python/pathconfig.c files: A Misc/NEWS.d/next/Windows/2019-02-02-22-12-23.bpo-35890.ccIjHH.rst M Python/pathconfig.c M Python/sysmodule.c diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-22-12-23.bpo-35890.ccIjHH.rst b/Misc/NEWS.d/next/Windows/2019-02-02-22-12-23.bpo-35890.ccIjHH.rst new file mode 100644 index 000000000000..6bf6084ecc5e --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2019-02-02-22-12-23.bpo-35890.ccIjHH.rst @@ -0,0 +1 @@ +Fix API calling consistency of GetVersionEx and wcstok. \ No newline at end of file diff --git a/Python/pathconfig.c b/Python/pathconfig.c index 342a9448f795..c9bddcf6c674 100644 --- a/Python/pathconfig.c +++ b/Python/pathconfig.c @@ -675,6 +675,12 @@ _PyPathConfig_ComputeArgv0(int argc, wchar_t **argv) } +#ifdef MS_WINDOWS +#define WCSTOK wcstok_s +#else +#define WCSTOK wcstok +#endif + /* Search for a prefix value in an environment file (pyvenv.cfg). If found, copy it into the provided buffer. */ int @@ -705,11 +711,11 @@ _Py_FindEnvConfigValue(FILE *env_file, const wchar_t *key, wchar_t *tmpbuffer = _Py_DecodeUTF8_surrogateescape(buffer, n); if (tmpbuffer) { wchar_t * state; - wchar_t * tok = wcstok(tmpbuffer, L" \t\r\n", &state); + wchar_t * tok = WCSTOK(tmpbuffer, L" \t\r\n", &state); if ((tok != NULL) && !wcscmp(tok, key)) { - tok = wcstok(NULL, L" \t", &state); + tok = WCSTOK(NULL, L" \t", &state); if ((tok != NULL) && !wcscmp(tok, L"=")) { - tok = wcstok(NULL, L"\r\n", &state); + tok = WCSTOK(NULL, L"\r\n", &state); if (tok != NULL) { wcsncpy(value, tok, MAXPATHLEN); result = 1; diff --git a/Python/sysmodule.c b/Python/sysmodule.c index c7e68aa36414..dd39305f39af 100644 --- a/Python/sysmodule.c +++ b/Python/sysmodule.c @@ -1126,7 +1126,7 @@ sys_getwindowsversion_impl(PyObject *module) { PyObject *version; int pos = 0; - OSVERSIONINFOEX ver; + OSVERSIONINFOEXW ver; DWORD realMajor, realMinor, realBuild; HANDLE hKernel32; wchar_t kernel32_path[MAX_PATH]; @@ -1134,7 +1134,7 @@ sys_getwindowsversion_impl(PyObject *module) DWORD verblock_size; ver.dwOSVersionInfoSize = sizeof(ver); - if (!GetVersionEx((OSVERSIONINFO*) &ver)) + if (!GetVersionExW((OSVERSIONINFOW*) &ver)) return PyErr_SetFromWindowsErr(0); version = PyStructSequence_New(&WindowsVersionType); @@ -1145,7 +1145,7 @@ sys_getwindowsversion_impl(PyObject *module) PyStructSequence_SET_ITEM(version, pos++, PyLong_FromLong(ver.dwMinorVersion)); PyStructSequence_SET_ITEM(version, pos++, PyLong_FromLong(ver.dwBuildNumber)); PyStructSequence_SET_ITEM(version, pos++, PyLong_FromLong(ver.dwPlatformId)); - PyStructSequence_SET_ITEM(version, pos++, PyUnicode_FromString(ver.szCSDVersion)); + PyStructSequence_SET_ITEM(version, pos++, PyUnicode_FromWideChar(ver.szCSDVersion, -1)); PyStructSequence_SET_ITEM(version, pos++, PyLong_FromLong(ver.wServicePackMajor)); PyStructSequence_SET_ITEM(version, pos++, PyLong_FromLong(ver.wServicePackMinor)); PyStructSequence_SET_ITEM(version, pos++, PyLong_FromLong(ver.wSuiteMask)); From webhook-mailer at python.org Sun Feb 3 00:41:24 2019 From: webhook-mailer at python.org (Ned Deily) Date: Sun, 03 Feb 2019 05:41:24 -0000 Subject: [Python-checkins] Update macOS installer Welcome and ReadMe for 3.8 (GH-11748) Message-ID: https://github.com/python/cpython/commit/2c2ba05a6be0b7fafa0e2a833a65876e41d4733d commit: 2c2ba05a6be0b7fafa0e2a833a65876e41d4733d branch: master author: Ned Deily committer: GitHub date: 2019-02-03T00:41:20-05:00 summary: Update macOS installer Welcome and ReadMe for 3.8 (GH-11748) files: M Mac/BuildScript/resources/ReadMe.rtf M Mac/BuildScript/resources/Welcome.rtf diff --git a/Mac/BuildScript/resources/ReadMe.rtf b/Mac/BuildScript/resources/ReadMe.rtf index 6677a6ae0ad6..ab7aeff5376c 100644 --- a/Mac/BuildScript/resources/ReadMe.rtf +++ b/Mac/BuildScript/resources/ReadMe.rtf @@ -1,5 +1,6 @@ -{\rtf1\ansi\ansicpg1252\cocoartf1561\cocoasubrtf400 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fmodern\fcharset0 CourierNewPSMT;} +{\rtf1\ansi\ansicpg1252\cocoartf1671\cocoasubrtf200 +{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fswiss\fcharset0 Helvetica-Bold;\f2\fswiss\fcharset0 Helvetica-Oblique; +\f3\fmodern\fcharset0 CourierNewPSMT;} {\colortbl;\red255\green255\blue255;} {\*\expandedcolortbl;;} \margl1440\margr1440\vieww13380\viewh14600\viewkind0 @@ -9,86 +10,70 @@ \ \pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural\partightenfactor0 -\b \cf0 \ul \ulc0 Which installer variant should I use? -\b0 \ulnone \ -\ -For Python.3.7, python.org currently provides two installer variants for download: one that installs a -\i 64-bit-only -\i0 Python capable of running on -\i macOS 10.9 (Mavericks) -\i0 or later; and one that installs a -\i 64-bit/32-bit Intel -\i0 Python capable of running on -\i macOS 10.6 (Snow Leopard) -\i0 or later. (This ReadMe was installed with the -\i $MACOSX_DEPLOYMENT_TARGET -\i0 variant.) If you are running on macOS 10.9 or later and if you have no need for compatibility with older systems, use the 10.9 variant. Use the 10.6 variant if you are running on macOS 10.6 through 10.8 or if you want to produce standalone applications that can run on systems from 10.6. The Pythons installed by these installers are built with private copies of some third-party libraries not included with or newer than those in macOS itself. The list of these libraries varies by installer variant and is included at the end of the License.rtf file. -\b \ul \ -\ -Certificate verification and OpenSSL\ +\f1\b \cf0 \ul \ulc0 Certificate verification and OpenSSL\ -\b0 \ulnone \ -This variant of Python 3.7 includes its own private copy of OpenSSL 1.1.0. The deprecated Apple-supplied OpenSSL libraries are no longer used. This means that the trust certificates in system and user keychains managed by the -\i Keychain Access -\i0 application and the -\i security -\i0 command line utility are no longer used as defaults by the Python -\f1 ssl +\f0\b0 \ulnone \ +This package includes its own private copy of OpenSSL 1.1.0. The trust certificates in system and user keychains managed by the +\f2\i Keychain Access +\f0\i0 application and the +\f2\i security +\f0\i0 command line utility are not used as defaults by the Python +\f3 ssl \f0 module. A sample command script is included in -\f1 /Applications/Python 3.7 +\f3 /Applications/Python 3.8 \f0 to install a curated bundle of default root certificates from the third-party -\f1 certifi +\f3 certifi \f0 package ({\field{\*\fldinst{HYPERLINK "https://pypi.org/project/certifi/"}}{\fldrslt https://pypi.org/project/certifi/}}). If you choose to use -\f1 certifi +\f3 certifi \f0 , you should consider subscribing to the{\field{\*\fldinst{HYPERLINK "https://certifi.io/en/latest/"}}{\fldrslt project's email update service}} to be notified when the certificate bundle is updated.\ \ The bundled -\f1 pip +\f3 pip \f0 included with this installer has its own default certificate store for verifying download connections.\ \ -\b \ul Using IDLE or other Tk applications -\b0 \ulnone \ +\f1\b \ul Using IDLE or other Tk applications +\f0\b0 \ulnone \ \ -Both installer variants now come with their own private version of Tcl/Tk 8.6. They no longer use system-supplied or third-party supplied versions of Tcl/Tk as in previous releases.\ +This package includes its own private version of Tcl/Tk 8.6. It does not use any system-supplied or third-party supplied versions of Tcl/Tk.\ -\b \ul \ +\f1\b \ul \ Other changes\ -\b0 \ulnone \ +\f0\b0 \ulnone \ For other changes in this release, see the -\i What's new -\i0 section in the {\field{\*\fldinst{HYPERLINK "https://www.python.org/doc/"}}{\fldrslt Documentation Set}} for this release and its -\i Release Notes -\i0 link at {\field{\*\fldinst{HYPERLINK "https://www.python.org/downloads/"}}{\fldrslt https://www.python.org/downloads/}}.\ +\f2\i What's new +\f0\i0 section in the {\field{\*\fldinst{HYPERLINK "https://www.python.org/doc/"}}{\fldrslt Documentation Set}} for this release and its +\f2\i Release Notes +\f0\i0 link at {\field{\*\fldinst{HYPERLINK "https://www.python.org/downloads/"}}{\fldrslt https://www.python.org/downloads/}}.\ -\b \ul \ +\f1\b \ul \ Python 3 and Python 2 Co-existence\ -\b0 \ulnone \ +\f0\b0 \ulnone \ Python.org Python $VERSION and 2.7.x versions can both be installed on your system and will not conflict. Command names for Python 3 contain a 3 in them, -\f1 python3 +\f3 python3 \f0 (or -\f1 python$VERSION +\f3 python$VERSION \f0 ), -\f1 idle3 +\f3 idle3 \f0 (or i -\f1 dle$VERSION +\f3 dle$VERSION \f0 ), -\f1 pip3 +\f3 pip3 \f0 (or -\f1 pip$VERSION +\f3 pip$VERSION \f0 ), etc. Python 2.7 command names contain a 2 or no digit: -\f1 python2 +\f3 python2 \f0 (or -\f1 python2.7 +\f3 python2.7 \f0 or -\f1 python +\f3 python \f0 ), -\f1 idle2 +\f3 idle2 \f0 (or -\f1 idle2.7 +\f3 idle2.7 \f0 or -\f1 idle +\f3 idle \f0 ), etc.\ } \ No newline at end of file diff --git a/Mac/BuildScript/resources/Welcome.rtf b/Mac/BuildScript/resources/Welcome.rtf index 8e1847ef7354..df5d20da9ebb 100644 --- a/Mac/BuildScript/resources/Welcome.rtf +++ b/Mac/BuildScript/resources/Welcome.rtf @@ -1,23 +1,23 @@ -{\rtf1\ansi\ansicpg1252\cocoartf1561\cocoasubrtf400 -\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;} +{\rtf1\ansi\ansicpg1252\cocoartf1671\cocoasubrtf200 +\cocoascreenfonts1{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fswiss\fcharset0 Helvetica-Bold;} {\colortbl;\red255\green255\blue255;} {\*\expandedcolortbl;;} \paperw11905\paperh16837\margl1440\margr1440\vieww12200\viewh10880\viewkind0 \pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\partightenfactor0 \f0\fs24 \cf0 This package will install -\b Python $FULL_VERSION -\b0 for -\b macOS $MACOSX_DEPLOYMENT_TARGET -\b0 .\ +\f1\b Python $FULL_VERSION +\f0\b0 for +\f1\b macOS $MACOSX_DEPLOYMENT_TARGET +\f0\b0 .\ \ -\b Python for macOS -\b0 consists of the Python programming language interpreter, plus a set of programs to allow easy access to it for macOS users including an integrated development environment -\b IDLE -\b0 .\ +\f1\b Python for macOS +\f0\b0 consists of the Python programming language interpreter, plus a set of programs to allow easy access to it for macOS users including an integrated development environment +\f1\b IDLE +\f0\b0 .\ \ -\b NEW in 3.7.0: -\b0 two installer variants (10.9+ 64-bit-only, 10.6+ 64-/32-bit), built-in Tcl/Tk 8.6 support (no additional third-party downloads!), OpenSSL 1.1.0, and more!\ +\f1\b NOTE: +\f0\b0 This is an alpha test preview of Python 3.8.0, the next feature release of Python 3.8. It is not intended for production use.\ } \ No newline at end of file From webhook-mailer at python.org Sun Feb 3 01:54:59 2019 From: webhook-mailer at python.org (Raymond Hettinger) Date: Sun, 03 Feb 2019 06:54:59 -0000 Subject: [Python-checkins] bpo-35884: Add variable access benchmarking script (GH-11725) Message-ID: https://github.com/python/cpython/commit/f75d59e1a896115bd52f543a417c665d6edc331f commit: f75d59e1a896115bd52f543a417c665d6edc331f branch: master author: Raymond Hettinger committer: GitHub date: 2019-02-02T22:54:56-08:00 summary: bpo-35884: Add variable access benchmarking script (GH-11725) files: A Misc/NEWS.d/next/Tools-Demos/2019-02-01-12-22-37.bpo-35884.hJkMRD.rst A Tools/scripts/var_access_benchmark.py M Doc/whatsnew/3.8.rst diff --git a/Doc/whatsnew/3.8.rst b/Doc/whatsnew/3.8.rst index 09c43b1f30a5..a3982b0dfe09 100644 --- a/Doc/whatsnew/3.8.rst +++ b/Doc/whatsnew/3.8.rst @@ -551,3 +551,11 @@ CPython bytecode changes * Added new opcode :opcode:`END_ASYNC_FOR` for handling exceptions raised when awaiting a next item in an :keyword:`async for` loop. (Contributed by Serhiy Storchaka in :issue:`33041`.) + + +Demos and Tools +--------------- + +* Added a benchmark script for timing various ways to access variables: + ``Tools/scripts/var_access_benchmark.py``. + (Contributed by Raymond Hettinger in :issue:`35884`.) diff --git a/Misc/NEWS.d/next/Tools-Demos/2019-02-01-12-22-37.bpo-35884.hJkMRD.rst b/Misc/NEWS.d/next/Tools-Demos/2019-02-01-12-22-37.bpo-35884.hJkMRD.rst new file mode 100644 index 000000000000..416eeac1d935 --- /dev/null +++ b/Misc/NEWS.d/next/Tools-Demos/2019-02-01-12-22-37.bpo-35884.hJkMRD.rst @@ -0,0 +1,2 @@ +Add a benchmark script for timing various ways to access variables: +``Tools/scripts/var_access_benchmark.py``. diff --git a/Tools/scripts/var_access_benchmark.py b/Tools/scripts/var_access_benchmark.py new file mode 100644 index 000000000000..b4f3b9727056 --- /dev/null +++ b/Tools/scripts/var_access_benchmark.py @@ -0,0 +1,272 @@ +'Show relative speeds of local, nonlocal, global, and built-in access.' + +# Please leave this code so that it runs under older versions of +# Python 3 (no f-strings). That will allow benchmarking for +# cross-version comparisons. To run the benchmark on Python 2, +# comment-out the nonlocal reads and writes. + +from collections import deque, namedtuple + +trials = [None] * 500 +steps_per_trial = 25 + +class A(object): + def m(self): + pass + +class B(object): + __slots__ = 'x' + def __init__(self, x): + self.x = x + +class C(object): + def __init__(self, x): + self.x = x + +def read_local(trials=trials): + v_local = 1 + for t in trials: + v_local; v_local; v_local; v_local; v_local + v_local; v_local; v_local; v_local; v_local + v_local; v_local; v_local; v_local; v_local + v_local; v_local; v_local; v_local; v_local + v_local; v_local; v_local; v_local; v_local + +def make_nonlocal_reader(): + v_nonlocal = 1 + def inner(trials=trials): + for t in trials: + v_nonlocal; v_nonlocal; v_nonlocal; v_nonlocal; v_nonlocal + v_nonlocal; v_nonlocal; v_nonlocal; v_nonlocal; v_nonlocal + v_nonlocal; v_nonlocal; v_nonlocal; v_nonlocal; v_nonlocal + v_nonlocal; v_nonlocal; v_nonlocal; v_nonlocal; v_nonlocal + v_nonlocal; v_nonlocal; v_nonlocal; v_nonlocal; v_nonlocal + inner.__name__ = 'read_nonlocal' + return inner + +read_nonlocal = make_nonlocal_reader() + +v_global = 1 +def read_global(trials=trials): + for t in trials: + v_global; v_global; v_global; v_global; v_global + v_global; v_global; v_global; v_global; v_global + v_global; v_global; v_global; v_global; v_global + v_global; v_global; v_global; v_global; v_global + v_global; v_global; v_global; v_global; v_global + +def read_builtin(trials=trials): + for t in trials: + oct; oct; oct; oct; oct + oct; oct; oct; oct; oct + oct; oct; oct; oct; oct + oct; oct; oct; oct; oct + oct; oct; oct; oct; oct + +def read_classvar_from_class(trials=trials, A=A): + A.x = 1 + for t in trials: + A.x; A.x; A.x; A.x; A.x + A.x; A.x; A.x; A.x; A.x + A.x; A.x; A.x; A.x; A.x + A.x; A.x; A.x; A.x; A.x + A.x; A.x; A.x; A.x; A.x + +def read_classvar_from_instance(trials=trials, A=A): + A.x = 1 + a = A() + for t in trials: + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + +def read_instancevar(trials=trials, a=C(1)): + for t in trials: + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + +def read_instancevar_slots(trials=trials, a=B(1)): + for t in trials: + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + +def read_namedtuple(trials=trials, D=namedtuple('D', ['x'])): + a = D(1) + for t in trials: + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + a.x; a.x; a.x; a.x; a.x + +def read_boundmethod(trials=trials, a=A()): + for t in trials: + a.m; a.m; a.m; a.m; a.m + a.m; a.m; a.m; a.m; a.m + a.m; a.m; a.m; a.m; a.m + a.m; a.m; a.m; a.m; a.m + a.m; a.m; a.m; a.m; a.m + +def write_local(trials=trials): + v_local = 1 + for t in trials: + v_local = 1; v_local = 1; v_local = 1; v_local = 1; v_local = 1 + v_local = 1; v_local = 1; v_local = 1; v_local = 1; v_local = 1 + v_local = 1; v_local = 1; v_local = 1; v_local = 1; v_local = 1 + v_local = 1; v_local = 1; v_local = 1; v_local = 1; v_local = 1 + v_local = 1; v_local = 1; v_local = 1; v_local = 1; v_local = 1 + +def make_nonlocal_writer(): + v_nonlocal = 1 + def inner(trials=trials): + nonlocal v_nonlocal + for t in trials: + v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1 + v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1 + v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1 + v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1 + v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1; v_nonlocal = 1 + inner.__name__ = 'write_nonlocal' + return inner + +write_nonlocal = make_nonlocal_writer() + +def write_global(trials=trials): + global v_global + for t in trials: + v_global = 1; v_global = 1; v_global = 1; v_global = 1; v_global = 1 + v_global = 1; v_global = 1; v_global = 1; v_global = 1; v_global = 1 + v_global = 1; v_global = 1; v_global = 1; v_global = 1; v_global = 1 + v_global = 1; v_global = 1; v_global = 1; v_global = 1; v_global = 1 + v_global = 1; v_global = 1; v_global = 1; v_global = 1; v_global = 1 + +def write_classvar(trials=trials, A=A): + for t in trials: + A.x = 1; A.x = 1; A.x = 1; A.x = 1; A.x = 1 + A.x = 1; A.x = 1; A.x = 1; A.x = 1; A.x = 1 + A.x = 1; A.x = 1; A.x = 1; A.x = 1; A.x = 1 + A.x = 1; A.x = 1; A.x = 1; A.x = 1; A.x = 1 + A.x = 1; A.x = 1; A.x = 1; A.x = 1; A.x = 1 + +def write_instancevar(trials=trials, a=C(1)): + for t in trials: + a.x = 1; a.x = 1; a.x = 1; a.x = 1; a.x = 1 + a.x = 1; a.x = 1; a.x = 1; a.x = 1; a.x = 1 + a.x = 1; a.x = 1; a.x = 1; a.x = 1; a.x = 1 + a.x = 1; a.x = 1; a.x = 1; a.x = 1; a.x = 1 + a.x = 1; a.x = 1; a.x = 1; a.x = 1; a.x = 1 + +def write_instancevar_slots(trials=trials, a=B(1)): + for t in trials: + a.x = 1; a.x = 1; a.x = 1; a.x = 1; a.x = 1 + a.x = 1; a.x = 1; a.x = 1; a.x = 1; a.x = 1 + a.x = 1; a.x = 1; a.x = 1; a.x = 1; a.x = 1 + a.x = 1; a.x = 1; a.x = 1; a.x = 1; a.x = 1 + a.x = 1; a.x = 1; a.x = 1; a.x = 1; a.x = 1 + +def read_list(trials=trials, a=[1]): + for t in trials: + a[0]; a[0]; a[0]; a[0]; a[0] + a[0]; a[0]; a[0]; a[0]; a[0] + a[0]; a[0]; a[0]; a[0]; a[0] + a[0]; a[0]; a[0]; a[0]; a[0] + a[0]; a[0]; a[0]; a[0]; a[0] + +def read_deque(trials=trials, a=deque([1])): + for t in trials: + a[0]; a[0]; a[0]; a[0]; a[0] + a[0]; a[0]; a[0]; a[0]; a[0] + a[0]; a[0]; a[0]; a[0]; a[0] + a[0]; a[0]; a[0]; a[0]; a[0] + a[0]; a[0]; a[0]; a[0]; a[0] + +def read_dict(trials=trials, a={0: 1}): + for t in trials: + a[0]; a[0]; a[0]; a[0]; a[0] + a[0]; a[0]; a[0]; a[0]; a[0] + a[0]; a[0]; a[0]; a[0]; a[0] + a[0]; a[0]; a[0]; a[0]; a[0] + a[0]; a[0]; a[0]; a[0]; a[0] + +def list_append_pop(trials=trials, a=[1]): + ap, pop = a.append, a.pop + for t in trials: + ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); + ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); + ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); + ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); + ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); + +def deque_append_pop(trials=trials, a=deque([1])): + ap, pop = a.append, a.pop + for t in trials: + ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); + ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); + ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); + ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); + ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); ap(1); pop(); + +def write_list(trials=trials, a=[1]): + for t in trials: + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + +def write_deque(trials=trials, a=deque([1])): + for t in trials: + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + +def write_dict(trials=trials, a={0: 1}): + for t in trials: + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + a[0]=1; a[0]=1; a[0]=1; a[0]=1; a[0]=1 + +def loop_overhead(trials=trials): + for t in trials: + pass + + +if __name__=='__main__': + + from timeit import Timer + + for f in [ + 'Variable and attribute read access:', + read_local, read_nonlocal, read_global, read_builtin, + read_classvar_from_class, read_classvar_from_instance, + read_instancevar, read_instancevar_slots, + read_namedtuple, read_boundmethod, + '\nVariable and attribute write access:', + write_local, write_nonlocal, write_global, + write_classvar, write_instancevar, write_instancevar_slots, + '\nData structure read access:', + read_list, read_deque, read_dict, + '\nData structure write access:', + write_list, write_deque, write_dict, + '\nStack (or queue) operations:', + list_append_pop, deque_append_pop, + '\nTiming loop overhead:', + loop_overhead]: + if isinstance(f, str): + print(f) + continue + timing = min(Timer(f).repeat(7, 1000)) + timing *= 1000000 / (len(trials) * steps_per_trial) + print(u'{:6.1f} \N{greek small letter mu}s\t{}'.format(timing, f.__name__)) From solipsis at pitrou.net Sun Feb 3 04:09:02 2019 From: solipsis at pitrou.net (solipsis at pitrou.net) Date: Sun, 03 Feb 2019 09:09:02 +0000 Subject: [Python-checkins] Daily reference leaks (4243df51fe43): sum=9 Message-ID: <20190203090902.1.FABF83B5FDD9BC6A@psf.io> results for 4243df51fe43 on branch "default" -------------------------------------------- test_asyncio leaked [0, 3, 0] memory blocks, sum=3 test_functools leaked [0, 3, 1] memory blocks, sum=4 test_multiprocessing_forkserver leaked [2, -1, 1] memory blocks, sum=2 Command line was: ['./python', '-m', 'test.regrtest', '-uall', '-R', '3:3:/home/psf-users/antoine/refleaks/reflogUbkKiE', '--timeout', '7200'] From webhook-mailer at python.org Sun Feb 3 18:22:57 2019 From: webhook-mailer at python.org (Ned Deily) Date: Sun, 03 Feb 2019 23:22:57 -0000 Subject: [Python-checkins] [3.6] bpo-35605: Fix documentation build for sphinx<1.6 (GH-11368) Message-ID: https://github.com/python/cpython/commit/9bacdce451618a5f0bf62cb1b6f966ebde0492c6 commit: 9bacdce451618a5f0bf62cb1b6f966ebde0492c6 branch: 3.6 author: Anthony Sottile committer: Ned Deily date: 2019-02-03T18:22:52-05:00 summary: [3.6] bpo-35605: Fix documentation build for sphinx<1.6 (GH-11368) files: A Misc/NEWS.d/next/Documentation/2018-12-30-09-56-13.bpo-35605.gAWt32.rst M Doc/tools/extensions/escape4chm.py M Doc/tools/extensions/pyspecific.py diff --git a/Doc/tools/extensions/escape4chm.py b/Doc/tools/extensions/escape4chm.py index e99997162517..68d4e77a3716 100644 --- a/Doc/tools/extensions/escape4chm.py +++ b/Doc/tools/extensions/escape4chm.py @@ -8,7 +8,10 @@ import re from html.entities import codepoint2name -from sphinx.util.logging import getLogger +try: # sphinx>=1.6 + from sphinx.util.logging import getLogger +except ImportError: # sphinx<1.6 + from logging import getLogger # escape the characters which codepoint > 0x7F def _process(string): diff --git a/Doc/tools/extensions/pyspecific.py b/Doc/tools/extensions/pyspecific.py index dec7f0c779ab..70bdd1754240 100644 --- a/Doc/tools/extensions/pyspecific.py +++ b/Doc/tools/extensions/pyspecific.py @@ -23,7 +23,6 @@ from sphinx import addnodes from sphinx.builders import Builder from sphinx.locale import translators -from sphinx.util import status_iterator from sphinx.util.nodes import split_explicit_title from sphinx.writers.html import HTMLTranslator from sphinx.writers.text import TextWriter, TextTranslator @@ -314,6 +313,11 @@ def get_target_uri(self, docname, typ=None): return '' # no URIs def write(self, *ignored): + try: # sphinx>=1.6 + from sphinx.util import status_iterator + except ImportError: # sphinx<1.6 + status_iterator = self.status_iterator + writer = TextWriter(self) for label in status_iterator(pydoc_topic_labels, 'building topics... ', diff --git a/Misc/NEWS.d/next/Documentation/2018-12-30-09-56-13.bpo-35605.gAWt32.rst b/Misc/NEWS.d/next/Documentation/2018-12-30-09-56-13.bpo-35605.gAWt32.rst new file mode 100644 index 000000000000..cbc0f1e07f31 --- /dev/null +++ b/Misc/NEWS.d/next/Documentation/2018-12-30-09-56-13.bpo-35605.gAWt32.rst @@ -0,0 +1 @@ +Fix documentation build for sphinx<1.6. Patch by Anthony Sottile. From webhook-mailer at python.org Mon Feb 4 02:08:24 2019 From: webhook-mailer at python.org (Steve Dower) Date: Mon, 04 Feb 2019 07:08:24 -0000 Subject: [Python-checkins] bpo-35692: pathlib no longer raises when checking file and directory existence on drives that are not ready (GH-11746) Message-ID: https://github.com/python/cpython/commit/2f6fae6e510dba653391cb510a2aca8322eec03b commit: 2f6fae6e510dba653391cb510a2aca8322eec03b branch: master author: Steve Dower committer: GitHub date: 2019-02-03T23:08:18-08:00 summary: bpo-35692: pathlib no longer raises when checking file and directory existence on drives that are not ready (GH-11746) files: A Misc/NEWS.d/next/Windows/2019-02-02-16-23-57.bpo-35692.cIiiE9.rst M Lib/pathlib.py diff --git a/Lib/pathlib.py b/Lib/pathlib.py index 89dffa5561a7..da32f90a80b6 100644 --- a/Lib/pathlib.py +++ b/Lib/pathlib.py @@ -37,6 +37,15 @@ # EBADF - guard agains macOS `stat` throwing EBADF _IGNORED_ERROS = (ENOENT, ENOTDIR, EBADF) +_IGNORED_WINERRORS = ( + 21, # ERROR_NOT_READY - drive exists but is not accessible +) + +def _ignore_error(exception): + return (getattr(exception, 'errno', None) in _IGNORED_ERROS or + getattr(exception, 'winerror', None) in _IGNORED_WINERRORS) + + def _is_wildcard_pattern(pat): # Whether this pattern needs actual matching using fnmatch, or can # be looked up directly as a file. @@ -535,7 +544,7 @@ def _iterate_directories(self, parent_path, is_dir, scandir): try: entry_is_dir = entry.is_dir() except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise if entry_is_dir and not entry.is_symlink(): path = parent_path._make_child_relpath(entry.name) @@ -1328,7 +1337,7 @@ def exists(self): try: self.stat() except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise return False except ValueError: @@ -1343,7 +1352,7 @@ def is_dir(self): try: return S_ISDIR(self.stat().st_mode) except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise # Path doesn't exist or is a broken symlink # (see https://bitbucket.org/pitrou/pathlib/issue/12/) @@ -1360,7 +1369,7 @@ def is_file(self): try: return S_ISREG(self.stat().st_mode) except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise # Path doesn't exist or is a broken symlink # (see https://bitbucket.org/pitrou/pathlib/issue/12/) @@ -1397,7 +1406,7 @@ def is_symlink(self): try: return S_ISLNK(self.lstat().st_mode) except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise # Path doesn't exist return False @@ -1412,7 +1421,7 @@ def is_block_device(self): try: return S_ISBLK(self.stat().st_mode) except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise # Path doesn't exist or is a broken symlink # (see https://bitbucket.org/pitrou/pathlib/issue/12/) @@ -1428,7 +1437,7 @@ def is_char_device(self): try: return S_ISCHR(self.stat().st_mode) except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise # Path doesn't exist or is a broken symlink # (see https://bitbucket.org/pitrou/pathlib/issue/12/) @@ -1444,7 +1453,7 @@ def is_fifo(self): try: return S_ISFIFO(self.stat().st_mode) except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise # Path doesn't exist or is a broken symlink # (see https://bitbucket.org/pitrou/pathlib/issue/12/) @@ -1460,7 +1469,7 @@ def is_socket(self): try: return S_ISSOCK(self.stat().st_mode) except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise # Path doesn't exist or is a broken symlink # (see https://bitbucket.org/pitrou/pathlib/issue/12/) diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-16-23-57.bpo-35692.cIiiE9.rst b/Misc/NEWS.d/next/Windows/2019-02-02-16-23-57.bpo-35692.cIiiE9.rst new file mode 100644 index 000000000000..f3715739d4df --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2019-02-02-16-23-57.bpo-35692.cIiiE9.rst @@ -0,0 +1,2 @@ +``pathlib`` no longer raises when checking file and directory existence on +drives that are not ready From webhook-mailer at python.org Mon Feb 4 02:19:42 2019 From: webhook-mailer at python.org (Steve Dower) Date: Mon, 04 Feb 2019 07:19:42 -0000 Subject: [Python-checkins] bpo-35872 and bpo-35873: Clears __PYVENV_LAUNCHER__ variable (GH-11745) Message-ID: https://github.com/python/cpython/commit/a8474d025cab794257d2fd0bea67840779b9351f commit: a8474d025cab794257d2fd0bea67840779b9351f branch: master author: Steve Dower committer: GitHub date: 2019-02-03T23:19:38-08:00 summary: bpo-35872 and bpo-35873: Clears __PYVENV_LAUNCHER__ variable (GH-11745) After reading __PYVENV_LAUNCHER__ we now set sys._base_executable value for later use. Make the same changes for macOS to avoid extra platform checks. files: A Misc/NEWS.d/next/Windows/2019-02-02-15-56-50.bpo-35873.UW-qS9.rst A Misc/NEWS.d/next/Windows/2019-02-02-15-57-19.bpo-35872.Bba2n7.rst M Lib/multiprocessing/popen_spawn_win32.py M Lib/multiprocessing/spawn.py M Lib/site.py M Lib/test/test_venv.py M Lib/venv/__init__.py diff --git a/Lib/multiprocessing/popen_spawn_win32.py b/Lib/multiprocessing/popen_spawn_win32.py index 3b92c8a2b4ae..de4c5ecf1fa0 100644 --- a/Lib/multiprocessing/popen_spawn_win32.py +++ b/Lib/multiprocessing/popen_spawn_win32.py @@ -19,6 +19,13 @@ WINSERVICE = sys.executable.lower().endswith("pythonservice.exe") +def _path_eq(p1, p2): + return p1 == p2 or os.path.normcase(p1) == os.path.normcase(p2) + +WINENV = (hasattr(sys, '_base_executable') and + not _path_eq(sys.executable, sys._base_executable)) + + def _close_handles(*handles): for handle in handles: _winapi.CloseHandle(handle) @@ -50,12 +57,23 @@ def __init__(self, process_obj): pipe_handle=rhandle) cmd = ' '.join('"%s"' % x for x in cmd) + python_exe = spawn.get_executable() + + # bpo-35797: When running in a venv, we bypass the redirect + # executor and launch our base Python. + if WINENV and _path_eq(python_exe, sys.executable): + python_exe = sys._base_executable + env = os.environ.copy() + env["__PYVENV_LAUNCHER__"] = sys.executable + else: + env = None + with open(wfd, 'wb', closefd=True) as to_child: # start process try: hp, ht, pid, tid = _winapi.CreateProcess( - spawn.get_executable(), cmd, - None, None, False, 0, None, None, None) + python_exe, cmd, + env, None, False, 0, None, None, None) _winapi.CloseHandle(ht) except: _winapi.CloseHandle(rhandle) diff --git a/Lib/multiprocessing/spawn.py b/Lib/multiprocessing/spawn.py index 860fa4ceb5ce..6759351f13ab 100644 --- a/Lib/multiprocessing/spawn.py +++ b/Lib/multiprocessing/spawn.py @@ -29,19 +29,12 @@ if sys.platform != 'win32': WINEXE = False WINSERVICE = False - _WINENV = False else: WINEXE = getattr(sys, 'frozen', False) WINSERVICE = sys.executable.lower().endswith("pythonservice.exe") - _WINENV = '__PYVENV_LAUNCHER__' in os.environ if WINSERVICE: _python_exe = os.path.join(sys.exec_prefix, 'python.exe') -elif _WINENV: - # bpo-35797: When running in a venv, we need to bypass the redirect - # executor and launch our base Python. - import _winapi - _python_exe = _winapi.GetModuleFileName(0) else: _python_exe = sys.executable diff --git a/Lib/site.py b/Lib/site.py index ffd132b389e1..ad1146332b0a 100644 --- a/Lib/site.py +++ b/Lib/site.py @@ -457,7 +457,14 @@ def venv(known_paths): env = os.environ if sys.platform == 'darwin' and '__PYVENV_LAUNCHER__' in env: - executable = os.environ['__PYVENV_LAUNCHER__'] + executable = sys._base_executable = os.environ['__PYVENV_LAUNCHER__'] + elif sys.platform == 'win32' and '__PYVENV_LAUNCHER__' in env: + executable = sys.executable + import _winapi + sys._base_executable = _winapi.GetModuleFileName(0) + # bpo-35873: Clear the environment variable to avoid it being + # inherited by child processes. + del os.environ['__PYVENV_LAUNCHER__'] else: executable = sys.executable exe_dir, _ = os.path.split(os.path.abspath(executable)) diff --git a/Lib/test/test_venv.py b/Lib/test/test_venv.py index 6096b9df45bf..347544a67722 100644 --- a/Lib/test/test_venv.py +++ b/Lib/test/test_venv.py @@ -52,10 +52,7 @@ def setUp(self): self.bindir = 'bin' self.lib = ('lib', 'python%d.%d' % sys.version_info[:2]) self.include = 'include' - if sys.platform == 'darwin' and '__PYVENV_LAUNCHER__' in os.environ: - executable = os.environ['__PYVENV_LAUNCHER__'] - else: - executable = sys.executable + executable = getattr(sys, '_base_executable', sys.executable) self.exe = os.path.split(executable)[-1] def tearDown(self): @@ -100,11 +97,7 @@ def test_defaults(self): else: self.assertFalse(os.path.exists(p)) data = self.get_text_file_contents('pyvenv.cfg') - if sys.platform == 'darwin' and ('__PYVENV_LAUNCHER__' - in os.environ): - executable = os.environ['__PYVENV_LAUNCHER__'] - else: - executable = sys.executable + executable = getattr(sys, '_base_executable', sys.executable) path = os.path.dirname(executable) self.assertIn('home = %s' % path, data) fn = self.get_env_file(self.bindir, self.exe) diff --git a/Lib/venv/__init__.py b/Lib/venv/__init__.py index 8f9e3138474a..d5ab38958bb2 100644 --- a/Lib/venv/__init__.py +++ b/Lib/venv/__init__.py @@ -106,10 +106,7 @@ def create_if_needed(d): context.prompt = '(%s) ' % prompt create_if_needed(env_dir) env = os.environ - if sys.platform == 'darwin' and '__PYVENV_LAUNCHER__' in env: - executable = os.environ['__PYVENV_LAUNCHER__'] - else: - executable = sys.executable + executable = getattr(sys, '_base_executable', sys.executable) dirname, exename = os.path.split(os.path.abspath(executable)) context.executable = executable context.python_dir = dirname diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-15-56-50.bpo-35873.UW-qS9.rst b/Misc/NEWS.d/next/Windows/2019-02-02-15-56-50.bpo-35873.UW-qS9.rst new file mode 100644 index 000000000000..a9ce777a4bd3 --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2019-02-02-15-56-50.bpo-35873.UW-qS9.rst @@ -0,0 +1 @@ +Prevents venv paths being inherited by child processes diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-15-57-19.bpo-35872.Bba2n7.rst b/Misc/NEWS.d/next/Windows/2019-02-02-15-57-19.bpo-35872.Bba2n7.rst new file mode 100644 index 000000000000..be293c5b5255 --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2019-02-02-15-57-19.bpo-35872.Bba2n7.rst @@ -0,0 +1 @@ +Uses the base Python executable when invoking venv in a virtual environment From webhook-mailer at python.org Mon Feb 4 02:27:40 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Mon, 04 Feb 2019 07:27:40 -0000 Subject: [Python-checkins] bpo-35692: pathlib no longer raises when checking file and directory existence on drives that are not ready (GH-11746) Message-ID: https://github.com/python/cpython/commit/69af4395a25481e9de4009c816b6d1f032a2d8eb commit: 69af4395a25481e9de4009c816b6d1f032a2d8eb branch: 3.7 author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> committer: GitHub date: 2019-02-03T23:27:37-08:00 summary: bpo-35692: pathlib no longer raises when checking file and directory existence on drives that are not ready (GH-11746) (cherry picked from commit 2f6fae6e510dba653391cb510a2aca8322eec03b) Co-authored-by: Steve Dower files: A Misc/NEWS.d/next/Windows/2019-02-02-16-23-57.bpo-35692.cIiiE9.rst M Lib/pathlib.py diff --git a/Lib/pathlib.py b/Lib/pathlib.py index c2986bd022d0..067edf1221e9 100644 --- a/Lib/pathlib.py +++ b/Lib/pathlib.py @@ -37,6 +37,15 @@ # EBADF - guard agains macOS `stat` throwing EBADF _IGNORED_ERROS = (ENOENT, ENOTDIR, EBADF) +_IGNORED_WINERRORS = ( + 21, # ERROR_NOT_READY - drive exists but is not accessible +) + +def _ignore_error(exception): + return (getattr(exception, 'errno', None) in _IGNORED_ERROS or + getattr(exception, 'winerror', None) in _IGNORED_WINERRORS) + + def _is_wildcard_pattern(pat): # Whether this pattern needs actual matching using fnmatch, or can # be looked up directly as a file. @@ -535,7 +544,7 @@ def _iterate_directories(self, parent_path, is_dir, scandir): try: entry_is_dir = entry.is_dir() except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise if entry_is_dir and not entry.is_symlink(): path = parent_path._make_child_relpath(entry.name) @@ -1328,7 +1337,7 @@ def exists(self): try: self.stat() except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise return False return True @@ -1340,7 +1349,7 @@ def is_dir(self): try: return S_ISDIR(self.stat().st_mode) except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise # Path doesn't exist or is a broken symlink # (see https://bitbucket.org/pitrou/pathlib/issue/12/) @@ -1354,7 +1363,7 @@ def is_file(self): try: return S_ISREG(self.stat().st_mode) except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise # Path doesn't exist or is a broken symlink # (see https://bitbucket.org/pitrou/pathlib/issue/12/) @@ -1388,7 +1397,7 @@ def is_symlink(self): try: return S_ISLNK(self.lstat().st_mode) except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise # Path doesn't exist return False @@ -1400,7 +1409,7 @@ def is_block_device(self): try: return S_ISBLK(self.stat().st_mode) except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise # Path doesn't exist or is a broken symlink # (see https://bitbucket.org/pitrou/pathlib/issue/12/) @@ -1413,7 +1422,7 @@ def is_char_device(self): try: return S_ISCHR(self.stat().st_mode) except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise # Path doesn't exist or is a broken symlink # (see https://bitbucket.org/pitrou/pathlib/issue/12/) @@ -1426,7 +1435,7 @@ def is_fifo(self): try: return S_ISFIFO(self.stat().st_mode) except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise # Path doesn't exist or is a broken symlink # (see https://bitbucket.org/pitrou/pathlib/issue/12/) @@ -1439,7 +1448,7 @@ def is_socket(self): try: return S_ISSOCK(self.stat().st_mode) except OSError as e: - if e.errno not in _IGNORED_ERROS: + if not _ignore_error(e): raise # Path doesn't exist or is a broken symlink # (see https://bitbucket.org/pitrou/pathlib/issue/12/) diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-16-23-57.bpo-35692.cIiiE9.rst b/Misc/NEWS.d/next/Windows/2019-02-02-16-23-57.bpo-35692.cIiiE9.rst new file mode 100644 index 000000000000..f3715739d4df --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2019-02-02-16-23-57.bpo-35692.cIiiE9.rst @@ -0,0 +1,2 @@ +``pathlib`` no longer raises when checking file and directory existence on +drives that are not ready From webhook-mailer at python.org Mon Feb 4 03:02:04 2019 From: webhook-mailer at python.org (=?utf-8?q?=C5=81ukasz?= Langa) Date: Mon, 04 Feb 2019 08:02:04 -0000 Subject: [Python-checkins] [blurb] v3.8.0a1 Message-ID: https://github.com/python/cpython/commit/8efa3b69f669fcca8ebe0d046ae078e64d073bd2 commit: 8efa3b69f669fcca8ebe0d046ae078e64d073bd2 branch: master author: ?ukasz Langa committer: ?ukasz Langa date: 2019-02-03T14:02:52+01:00 summary: [blurb] v3.8.0a1 files: A Misc/NEWS.d/3.8.0a1.rst D Misc/NEWS.d/next/Build/2017-09-26-23-08-27.bpo-29442.fD8YTi.rst D Misc/NEWS.d/next/Build/2018-02-21-12-46-00.bpo-32898.M15bZh.rst D Misc/NEWS.d/next/Build/2018-03-08-20-25-29.bpo-33012.k9Fe1q.rst D Misc/NEWS.d/next/Build/2018-03-28-04-15-03.bpo-33163.hfpWuU.rst D Misc/NEWS.d/next/Build/2018-03-30-14-55-48.bpo-33182.CePczb.rst D Misc/NEWS.d/next/Build/2018-04-17-00-38-19.bpo-32232.o7G_UO.rst D Misc/NEWS.d/next/Build/2018-04-30-16-53-00.bpo-33377.QBh6vP.rst D Misc/NEWS.d/next/Build/2018-04-30-17-19-37.bpo-33393.HkVCqI.rst D Misc/NEWS.d/next/Build/2018-04-30-17-36-46.bpo-33394._Vdi4t.rst D Misc/NEWS.d/next/Build/2018-05-13-17-21-54.bpo-33483.WOs-en.rst D Misc/NEWS.d/next/Build/2018-05-15-02-07-49.bpo-33512.X4Fy1Q.rst D Misc/NEWS.d/next/Build/2018-05-15-12-44-50.bpo-33522.mJoNcA.rst D Misc/NEWS.d/next/Build/2018-05-25-13-05-51.bpo-33648.bJ4JZH.rst D Misc/NEWS.d/next/Build/2018-05-28-11-40-22.bpo-33614.28e0sE.rst D Misc/NEWS.d/next/Build/2018-06-04-21-34-34.bpo-5755.65GmCj.rst D Misc/NEWS.d/next/Build/2018-06-15-18-18-16.bpo-30345.j-xRE1.rst D Misc/NEWS.d/next/Build/2018-07-10-21-33-25.bpo-32430.UN3Nk8.rst D Misc/NEWS.d/next/Build/2018-07-15-16-49-06.bpo-34121.74G_lo.rst D Misc/NEWS.d/next/Build/2018-07-27-09-52-48.bpo-34245.bBV0NI.rst D Misc/NEWS.d/next/Build/2018-08-24-09-48-25.bpo-33015.s21y74.rst D Misc/NEWS.d/next/Build/2018-08-31-19-41-09.bpo-34555.dfQcnm.rst D Misc/NEWS.d/next/Build/2018-09-06-07-15-20.bpo-34081.cuSTnH.rst D Misc/NEWS.d/next/Build/2018-09-14-09-53-21.bpo-34582.j3omgk.rst D Misc/NEWS.d/next/Build/2018-09-17-13-56-12.bpo-34710.ARqIAK.rst D Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst D Misc/NEWS.d/next/Build/2018-09-26-17-29-10.bpo-34765.AvxdVj.rst D Misc/NEWS.d/next/Build/2018-10-16-12-22-36.bpo-28015.ylSgFh.rst D Misc/NEWS.d/next/Build/2018-10-17-17-38-57.bpo-35011.GgoPIC.rst D Misc/NEWS.d/next/Build/2018-10-26-14-49-19.bpo-35059.PKsBxP.rst D Misc/NEWS.d/next/Build/2018-11-01-15-01-23.bpo-35139.XZTttb.rst D Misc/NEWS.d/next/Build/2018-12-04-15-33-28.bpo-35351.ZhhBfT.rst D Misc/NEWS.d/next/Build/2018-12-05-22-28-40.bpo-35257.dmcd_s.rst D Misc/NEWS.d/next/Build/2018-12-14-19-36-05.bpo-35499.9yAldM.rst D Misc/NEWS.d/next/Build/2018-12-29-10-19-43.bpo-35550.BTuu8e.rst D Misc/NEWS.d/next/Build/2019-01-02-11-23-33.bpo-35642.pjkhJe.rst D Misc/NEWS.d/next/Build/2019-01-10-11-37-18.bpo-35683.pf5Oos.rst D Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst D Misc/NEWS.d/next/C API/2017-10-12-23-24-27.bpo-30863.xrED19.rst D Misc/NEWS.d/next/C API/2018-01-09-17-03-54.bpo-32374.SwwLoz.rst D Misc/NEWS.d/next/C API/2018-03-20-21-43-09.bpo-33042.FPFp64.rst D Misc/NEWS.d/next/C API/2018-06-10-09-42-31.bpo-33818.50nlf3.rst D Misc/NEWS.d/next/C API/2018-06-21-17-19-31.bpo-32500.WGCNad.rst D Misc/NEWS.d/next/C API/2018-07-02-10-58-11.bpo-34008.COewz-.rst D Misc/NEWS.d/next/C API/2018-07-08-12-06-18.bpo-32455.KVHlkz.rst D Misc/NEWS.d/next/C API/2018-07-09-11-39-54.bpo-23927.pDFkxb.rst D Misc/NEWS.d/next/C API/2018-07-22-14-58-06.bpo-34127.qkfnHO.rst D Misc/NEWS.d/next/C API/2018-07-24-11-57-35.bpo-34193.M6ch1Q.rst D Misc/NEWS.d/next/C API/2018-08-29-18-48-47.bpo-34523.lLQ8rh.rst D Misc/NEWS.d/next/C API/2018-10-05-17-06-49.bpo-34910.tSFrls.rst D Misc/NEWS.d/next/C API/2018-10-13-16-30-54.bpo-34725.j52rIS.rst D Misc/NEWS.d/next/C API/2018-11-01-13-58-37.bpo-35134.SbZo0o.rst D Misc/NEWS.d/next/C API/2018-11-13-12-13-04.bpo-35081.gFd85N.rst D Misc/NEWS.d/next/C API/2018-11-22-13-52-36.bpo-35259.p07c61.rst D Misc/NEWS.d/next/C API/2018-11-22-18-15-46.bpo-35081.FdK9mV.rst D Misc/NEWS.d/next/C API/2018-11-22-18-34-23.bpo-35296.nxrIQt.rst D Misc/NEWS.d/next/C API/2018-11-23-11-52-34.bpo-35059.BLSp6y.rst D Misc/NEWS.d/next/C API/2018-11-28-03-20-36.bpo-35322.Qcqsag.rst D Misc/NEWS.d/next/C API/2019-01-11-11-16-16.bpo-33817.nJ4yIj.rst D Misc/NEWS.d/next/C API/2019-01-22-17-04-10.bpo-35713.fmehdG.rst D Misc/NEWS.d/next/Core and Builtins/2017-09-12-08-11-01.bpo-29832.Kuf2M7.rst D Misc/NEWS.d/next/Core and Builtins/2017-09-25-20-36-24.bpo-31577.jgYsSA.rst D Misc/NEWS.d/next/Core and Builtins/2017-10-02-21-02-14.bpo-21983.UoC319.rst D Misc/NEWS.d/next/Core and Builtins/2017-10-07-10-13-15.bpo-25862.FPYBA5.rst D Misc/NEWS.d/next/Core and Builtins/2017-10-30-12-44-50.bpo-31902.a07fa57.rst D Misc/NEWS.d/next/Core and Builtins/2017-11-22-15-43-14.bpo-32117.-vloh8.rst D Misc/NEWS.d/next/Core and Builtins/2017-11-26-00-59-22.bpo-10544.fHOM3V.rst D Misc/NEWS.d/next/Core and Builtins/2017-12-12-13-43-13.bpo-32285.LzKSwz.rst D Misc/NEWS.d/next/Core and Builtins/2017-12-24-19-48-59.bpo-17611.P85kWL.rst D Misc/NEWS.d/next/Core and Builtins/2018-01-03-23-12-43.bpo-32489.SDEPHB.rst D Misc/NEWS.d/next/Core and Builtins/2018-01-26-21-20-21.bpo-32583.Fh3fau.rst D Misc/NEWS.d/next/Core and Builtins/2018-01-29-14-36-37.bpo-32711.8hQFJP.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-16-28.bpo-32303.VsvhSl.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-56-41.bpo-32305.dkU9Qa.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-02-08-50-46.bpo-31356.MNwUOQ.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-14-12-35-47.bpo-32836.bThJnx.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-20-21-53-48.bpo-32889.J6eWy5.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-24-00-07-05.bpo-32925.e-7Ufh.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-24-21-51-42.bpo-32932.2cz31L.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-25-10-52-40.bpo-32946.Lo09rG.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-27-13-36-21.bpo-17288.Gdj24S.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-27-20-57-00.bpo-32911.cmKfco.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-06-12-19-19.bpo-33005.LP-V2U.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-08-09-48-38.bpo-33026.QZA3Ba.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-10-15-16-40.bpo-33041.-ak5Fk.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-14-21-42-17.bpo-25750.lxgkQz.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-18-13-56-14.bpo-33041.XwPhI2.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-19-00-59-20.bpo-33083.Htztjl.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-22-23-09-06.bpo-33018.0ncEJV.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-25-14.bpo-33138.aSqudH.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-49-06.bpo-33053.V3xlsH.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-02-09-32-40.bpo-33199.TPnxQu.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-30-25.bpo-29922.CdLuMl.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-58-41.bpo-33205.lk2F3r.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-05-22-20-44.bpo-33231.3Jmo0q.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-13-22-31-09.bpo-33176.PB9com.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-14-11-02-57.bpo-30455.ANRwjo.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-14-13-12-50.bpo-33270.UmVV6i.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-17-01-24-51.bpo-33234.l9IDtp.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-18-12-23-30.bpo-33306.tSM3cp.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-18-14-17-44.bpo-33305.9z3dDH.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-19-08-30-07.bpo-33312.mDe2iL.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-22-13-41-59.bpo-33331.s_DxdL.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-24-22-31-04.bpo-33128.g2yLuf.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-25-20-44-42.bpo-28055.f49kfC.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-26-22-48-28.bpo-33363.8RCnN2.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-02-08-36-03.bpo-33391.z4a7rb.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-05-23-26-58.bpo-20104.tDBciE.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-13-01-26-18.bpo-33475.rI0y1U.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-14-11-00-00.bpo-31849.EmHaH4.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-14-17-31-02.bpo-33509.pIUfTd.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-14-18-54-03.bpo-25711.9xfq-v.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-15-10-48-47.bpo-33499.uBEc06.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-17-13-06-36.bpo-23722.xisqZk.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-23-17-18-02.bpo-33462.gurbpbrhe.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-23-20-46-14.bpo-33622.xPucO9.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-28-12-28-53.bpo-30654.9fDJye.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-28-21-17-31.bpo-33597.r0ToM4.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-31-14-50-04.bpo-33706.ztlH04.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-05-15-49-02.bpo-30167.e956hA.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-06-23-24-40.bpo-33786.lBvT8z.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-07-18-34-19.bpo-33738.ODZS7a.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-07-20-18-38.bpo-33803.n-Nq6_.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-15-19-39-06.bpo-33824.DfWHT3.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-21-21-42-15.bpo-1617161.tSo2yM.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-23-15-32-02.bpo-33451.sWN-1l.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-25-16-54-05.bpo-24596.Rkwova.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-25-20-42-44.bpo-33956.1qoTwD.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-27-18-56-41.bpo-33985.ILJ3Af.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-03-19-00-10.bpo-33418.cfGm3n.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-05-15-51-29.bpo-34042.Gr9XUH.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-07-20-15-34.bpo-34066.y9vs6s.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-10-11-24-16.bpo-34080.8t7PtO.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-13-22-09-55.bpo-34087.I1Bxfc.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-14-08-58-46.bpo-34068.9xfM55.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-14-14-01-37.bpo-24618.iTKjD_.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-16-20-55-29.bpo-34126.mBVmgc.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-18-08-36-58.bpo-34141.Fo7Q5r.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-23-16-34-03.bpo-34125.jCl2Q2.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-23-21-49-05.bpo-34149.WSV-_g.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-24-12-54-57.bpo-33237.O95mps.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-25-19-23-33.bpo-34170.v1h_H2.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-25-20-26-02.bpo-34151.Q2pK9Q.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-27-20-04-52.bpo-34100.ypJQX1.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-28-10-34-00.bpo-34113.eZ5FWV.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-02-22-34-59.bpo-34320.hNshAA.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-09-18-42-49.bpo-34353.GIOm_8.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-10-15-05-00.bpo-34377.EJMMY4.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-12-16-03-58.bpo-33073.XWu1Jh.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-14-03-52-43.bpo-34400.AJD0bz.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-14-22-35-19.bpo-34408.aomWYW.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-15-20-46-49.bpo-12458.ApHbx5.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-28-01-45-01.bpo-34523.aUUkc3.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-28-10-49-55.bpo-34403.4Q3LzP.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-52-13.bpo-34527.sh5MQJ.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-53-39.bpo-34527.aBEX9b.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-28-17-48-40.bpo-34485.aFwck2.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-28-23-01-14.bpo-34485.dq1Kqk.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-29-09-27-47.bpo-34485.5aJCmw.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-29-11-04-19.bpo-34485.c2AFdp.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-05-22-56-52.bpo-34588.UIuPmL.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-11-15-19-37.bpo-1621.7o19yG.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-11-17-25-44.bpo-34637.HSLqY4.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-12-33.bpo-34641.gFBCc9.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-50-40.bpo-32236.3RupnN.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-06-09.bpo-34653.z8NE-i.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-21-08.bpo-34651.v-bUeV.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-15-19-32-34.bpo-34683.msCiQE.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-19-06-57-34.bpo-34735.-3mrSJ.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-20-15-41-58.bpo-34751.Yiv0pV.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-21-11-06-56.bpo-34762.1nN53m.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-24-17-51-15.bpo-30156.pH0j5j.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-27-11-10-02.bpo-34824.VLlCaU.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-30-11-19-55.bpo-34850.CbgDwb.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-30-19-27-13.bpo-34854.6TKTcB.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-01-10-41-53.bpo-32912.JeIOdM.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-02-09-10-47.bpo-34784.07hdgD.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-02-22-55-11.bpo-34879.7VNH2a.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-06-14-02-51.bpo-34876.oBKBA4.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-13-16-42-03.bpo-34973.B5M-3g.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-13-17-40-15.bpo-34939.0gpxlJ.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-13-22-24-19.bpo-34974.7LgTc2.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-14-17-26-41.bpo-34983.l8XaZd.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-20-10-26-15.bpo-35029.t4tZcQ.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-20-18-05-58.bpo-16806.zr3A9N.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-21-17-43-48.bpo-29743.aeCcKR.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-23-15-03-53.bpo-35050.49wraS.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-25-20-53-32.bpo-29341.jH-AMF.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-03-10-37-29.bpo-28401.RprDIg.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-04-18-13-40.bpo-34022.U3btVj.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-05-21-19-05.bpo-35169._FyPI2.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-08-15-00-58.bpo-35193.HzPS6R.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-12-11-38-06.bpo-35214.PCHKbX.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-13-00-40-35.bpo-35214.OQBjph.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-13-01-03-10.bpo-32492.voIdcp.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-13-14-26-54.bpo-35224.F0B6UQ.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-17-10-18-29.bpo-35269.gjm1LO.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-20-22-33-38.bpo-33954.RzSngM.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-21-14-05-51.bpo-31241.Kin10-.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-29-23-59-52.bpo-35336.8LOz4F.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-01-19-20-53.bpo-35372.RwVJjZ.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-03-21-20-24.bpo-35357.rhhoiC.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-05-16-24-05.bpo-35423.UIie_O.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-07-02-38-01.bpo-35436.0VW7p9.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-09-13-09-39.bpo-35444.9kYn4V.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-14-18-02-34.bpo-35494.IWOPtb.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-15-00-47-41.bpo-35504.9gVuen.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-15-14-01-45.bpo-35504.JtKczP.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-21-13-29-30.bpo-35552.1DzQQc.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-22-22-19-51.bpo-35560.9vMWSP.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-30-15-36-23.bpo-35214.GWDQcv.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-31-02-37-20.bpo-35623.24AQhY.rst D Misc/NEWS.d/next/Core and Builtins/2019-01-05-18-39-49.bpo-35634.nVP_gs.rst D Misc/NEWS.d/next/Core and Builtins/2019-01-12-23-33-04.bpo-35720.LELKQx.rst D Misc/NEWS.d/next/Core and Builtins/2019-01-19-19-41-53.bpo-33416.VDeOU5.rst D Misc/NEWS.d/next/Core and Builtins/2019-01-22-18-50-21.bpo-35713.bTeUsa.rst D Misc/NEWS.d/next/Core and Builtins/2019-01-22-19-17-27.bpo-35766.gh1tHZ.rst D Misc/NEWS.d/next/Core and Builtins/2019-01-24-13-25-21.bpo-35814.r_MjA6.rst D Misc/NEWS.d/next/Core and Builtins/2019-02-01-22-38-11.bpo-35877.Jrse8f.rst D Misc/NEWS.d/next/Documentation/2017-09-13-07-14-59.bpo-31432.yAY4Z3.rst D Misc/NEWS.d/next/Documentation/2017-10-23-13-41-12.bpo-25041.iAo2gW.rst D Misc/NEWS.d/next/Documentation/2017-12-22-17-29-37.bpo-32337.eZe-ID.rst D Misc/NEWS.d/next/Documentation/2018-01-13-20-30-53.bpo-8243.s98r28.rst D Misc/NEWS.d/next/Documentation/2018-01-25-13-58-49.bpo-30607.4dXxiq.rst D Misc/NEWS.d/next/Documentation/2018-01-25-14-23-12.bpo-31972.w1m_8r.rst D Misc/NEWS.d/next/Documentation/2018-01-30-11-28-27.bpo-32722.frdp6A.rst D Misc/NEWS.d/next/Documentation/2018-02-01-10-57-24.bpo-20709.1flcnc.rst D Misc/NEWS.d/next/Documentation/2018-02-02-07-41-57.bpo-32614.LSqzGw.rst D Misc/NEWS.d/next/Documentation/2018-02-03-06-11-37.bpo-8722.MPyVyj.rst D Misc/NEWS.d/next/Documentation/2018-02-05-15-05-53.bpo-32613.TDjgM1.rst D Misc/NEWS.d/next/Documentation/2018-02-10-12-48-38.bpo-11015.-gUf34.rst D Misc/NEWS.d/next/Documentation/2018-02-10-15-16-04.bpo-32800.FyrqCk.rst D Misc/NEWS.d/next/Documentation/2018-02-14-11-10-41.bpo-32436.TTJ2jb.rst D Misc/NEWS.d/next/Documentation/2018-02-23-12-48-03.bpo-17232.tmuTKL.rst D Misc/NEWS.d/next/Documentation/2018-02-25-16-33-35.bpo-28124._uzkgq.rst D Misc/NEWS.d/next/Documentation/2018-03-11-00-16-56.bpo-27428.B7A8FT.rst D Misc/NEWS.d/next/Documentation/2018-03-11-18-53-47.bpo-18802.JhAqH3.rst D Misc/NEWS.d/next/Documentation/2018-03-20-20-11-05.bpo-28247.-V-WS-.rst D Misc/NEWS.d/next/Documentation/2018-03-22-19-23-04.bpo-27212.wrE5KR.rst D Misc/NEWS.d/next/Documentation/2018-03-28-17-03-17.bpo-33126.5UGkNv.rst D Misc/NEWS.d/next/Documentation/2018-04-01-14-30-36.bpo-33195.dRS-XX.rst D Misc/NEWS.d/next/Documentation/2018-04-01-21-03-41.bpo-33201.aa8Lkl.rst D Misc/NEWS.d/next/Documentation/2018-04-20-14-09-36.bpo-33276.rA1z_3.rst D Misc/NEWS.d/next/Documentation/2018-04-29-04-02-18.bpo-33378.-anAHN.rst D Misc/NEWS.d/next/Documentation/2018-05-13-14-44-30.bpo-33487.iLDzFb.rst D Misc/NEWS.d/next/Documentation/2018-05-14-15-15-41.bpo-33421.3GU_QO.rst D Misc/NEWS.d/next/Documentation/2018-05-14-20-08-58.bpo-33503.Wvt0qg.rst D Misc/NEWS.d/next/Documentation/2018-05-21-14-36-12.bpo-33594.-HRcyX.rst D Misc/NEWS.d/next/Documentation/2018-05-22-11-47-14.bpo-33604.5YHTpz.rst D Misc/NEWS.d/next/Documentation/2018-05-23-11-59-51.bpo-32436.S1LGPa.rst D Misc/NEWS.d/next/Documentation/2018-05-29-16-02-31.bpo-23859.E5gba1.rst D Misc/NEWS.d/next/Documentation/2018-06-01-12-27-40.bpo-33736.JVegIu.rst D Misc/NEWS.d/next/Documentation/2018-06-07-08-33-45.bpo-17045.ZNx6KU.rst D Misc/NEWS.d/next/Documentation/2018-06-08-23-37-14.bpo-33197.OERTKf.rst D Misc/NEWS.d/next/Documentation/2018-06-08-23-46-01.bpo-33409.r4z9MM.rst D Misc/NEWS.d/next/Documentation/2018-06-15-14-58-45.bpo-33847.IIDp6t.rst D Misc/NEWS.d/next/Documentation/2018-06-22-08-38-29.bpo-33460.kHt4D0.rst D Misc/NEWS.d/next/Documentation/2018-07-07-20-38-41.bpo-34065.1snofM.rst D Misc/NEWS.d/next/Documentation/2018-07-28-17-17-42.bpo-20177.cOZJWp.rst D Misc/NEWS.d/next/Documentation/2018-09-06-22-39-47.bpo-28617.MjnJLz.rst D Misc/NEWS.d/next/Documentation/2018-09-12-10-18-04.bpo-34552.p9PoYv.rst D Misc/NEWS.d/next/Documentation/2018-09-24-12-47-08.bpo-34790.G2KXIH.rst D Misc/NEWS.d/next/Documentation/2018-10-03-20-39-25.bpo-11233.BX6Gen.rst D Misc/NEWS.d/next/Documentation/2018-10-08-19-15-28.bpo-32174.YO9CYm.rst D Misc/NEWS.d/next/Documentation/2018-10-10-00-34-08.bpo-34913.kVd1Fv.rst D Misc/NEWS.d/next/Documentation/2018-10-13-07-39-57.bpo-34967.E40tFP.rst D Misc/NEWS.d/next/Documentation/2018-10-21-02-20-36.bpo-35035.4zBObK.rst D Misc/NEWS.d/next/Documentation/2018-10-22-14-09-58.bpo-35044.qjvNtI.rst D Misc/NEWS.d/next/Documentation/2018-10-22-14-17-57.bpo-35042.1UGv1a.rst D Misc/NEWS.d/next/Documentation/2018-10-25-17-45-09.bpo-35038.2eVOYS.rst D Misc/NEWS.d/next/Documentation/2018-10-28-16-51-31.bpo-35089._stCpS.rst D Misc/NEWS.d/next/Documentation/2018-11-04-22-03-56.bpo-10536.a0IsfE.rst D Misc/NEWS.d/next/Documentation/2018-12-16-16-14-44.bpo-35511.iVcyav.rst D Misc/NEWS.d/next/Documentation/2018-12-22-22-52-05.bpo-35564.TuEU_D.rst D Misc/NEWS.d/next/Documentation/2018-12-23-23-52-31.bpo-34764.DwOGeT.rst D Misc/NEWS.d/next/Documentation/2019-01-15-21-45-27.bpo-21257.U9LKkx.rst D Misc/NEWS.d/next/IDLE/2018-02-04-17-52-54.bpo-32765.qm0eCu.rst D Misc/NEWS.d/next/IDLE/2018-02-12-08-08-45.bpo-32831.srDRvU.rst D Misc/NEWS.d/next/IDLE/2018-02-12-11-05-22.bpo-32826.IxNZrk.rst D Misc/NEWS.d/next/IDLE/2018-02-12-17-22-48.bpo-32837.-33QPl.rst D Misc/NEWS.d/next/IDLE/2018-02-19-10-56-41.bpo-32874.6pZ9Gv.rst D Misc/NEWS.d/next/IDLE/2018-02-22-00-09-27.bpo-32905.VlXj0x.rst D Misc/NEWS.d/next/IDLE/2018-02-23-07-32-36.bpo-32916.4MsQ5F.rst D Misc/NEWS.d/next/IDLE/2018-02-24-18-20-50.bpo-32940.ZaJ1Rf.rst D Misc/NEWS.d/next/IDLE/2018-03-05-01-29-05.bpo-32984.NGjgT4.rst D Misc/NEWS.d/next/IDLE/2018-04-02-00-28-13.bpo-33204.NBsuIv.rst D Misc/NEWS.d/next/IDLE/2018-04-29-16-13-02.bpo-21474.bglg-F.rst D Misc/NEWS.d/next/IDLE/2018-05-17-19-41-12.bpo-33564.XzHZJe.rst D Misc/NEWS.d/next/IDLE/2018-05-23-19-51-07.bpo-33628.sLlFLO.rst D Misc/NEWS.d/next/IDLE/2018-05-24-20-42-44.bpo-33642.J0VQbS.rst D Misc/NEWS.d/next/IDLE/2018-05-29-07-14-37.bpo-33679.MgX_Ui.rst D Misc/NEWS.d/next/IDLE/2018-06-03-09-13-28.bpo-33664.PZzQyL.rst D Misc/NEWS.d/next/IDLE/2018-06-03-20-12-57.bpo-33763.URiFlE.rst D Misc/NEWS.d/next/IDLE/2018-06-04-19-23-11.bpo-33768.I_2qpV.rst D Misc/NEWS.d/next/IDLE/2018-06-10-17-59-36.bpo-33656.60ZqJS.rst D Misc/NEWS.d/next/IDLE/2018-06-14-11-35-50.bpo-33855.XL230W.rst D Misc/NEWS.d/next/IDLE/2018-06-14-13-23-55.bpo-33839.ZlJzHa.rst D Misc/NEWS.d/next/IDLE/2018-06-16-21-54-45.bpo-33856.TH8WHU.rst D Misc/NEWS.d/next/IDLE/2018-06-19-22-21-27.bpo-33907.z-_B3N.rst D Misc/NEWS.d/next/IDLE/2018-06-20-12-40-54.bpo-33904.qm0eCu.rst D Misc/NEWS.d/next/IDLE/2018-06-20-16-27-48.bpo-33917.ZXHs8x.rst D Misc/NEWS.d/next/IDLE/2018-06-20-19-16-24.bpo-33906.a1lXq0.rst D Misc/NEWS.d/next/IDLE/2018-06-20-22-14-07.bpo-33924.6Rz1wt.rst D Misc/NEWS.d/next/IDLE/2018-06-21-20-35-33.bpo-33905.W2mhiY.rst D Misc/NEWS.d/next/IDLE/2018-06-26-22-53-14.bpo-33975.Ow7alv.rst D Misc/NEWS.d/next/IDLE/2018-08-01-23-25-38.bpo-34120.HgsIz-.rst D Misc/NEWS.d/next/IDLE/2018-08-02-22-16-42.bpo-34275.Iu0d7t.rst D Misc/NEWS.d/next/IDLE/2018-08-05-15-49-55.bpo-34047.LGKsIm.rst D Misc/NEWS.d/next/IDLE/2018-08-13-16-31-24.bpo-1529353.wXfQJk.rst D Misc/NEWS.d/next/IDLE/2018-09-22-20-25-07.bpo-34548.7pBzjg.rst D Misc/NEWS.d/next/IDLE/2018-10-28-00-08-42.bpo-35087.G7gx2-.rst D Misc/NEWS.d/next/IDLE/2018-10-28-00-54-32.bpo-35088.r1lJZd.rst D Misc/NEWS.d/next/IDLE/2018-10-28-15-53-51.bpo-35093.cH-tli.rst D Misc/NEWS.d/next/IDLE/2018-10-28-20-17-14.bpo-35097.07tm66.rst D Misc/NEWS.d/next/IDLE/2018-11-05-20-43-08.bpo-35099.SVOZXC.rst D Misc/NEWS.d/next/IDLE/2018-11-05-23-23-00.bpo-23220.H3SAWE.rst D Misc/NEWS.d/next/IDLE/2018-11-06-23-10-54.bpo-33000.pQasCt.rst D Misc/NEWS.d/next/IDLE/2018-11-10-09-10-54.bpo-35202.TeJJrt.rst D Misc/NEWS.d/next/IDLE/2018-11-10-21-27-25.bpo-34864.Ci-G2q.rst D Misc/NEWS.d/next/IDLE/2018-11-11-17-13-50.bpo-34864.cw0PvO.rst D Misc/NEWS.d/next/IDLE/2018-11-12-00-20-01.bpo-35213.cqNgzT.rst D Misc/NEWS.d/next/IDLE/2018-12-18-13-56-31.bpo-22703.UlsjKQ.rst D Misc/NEWS.d/next/IDLE/2018-12-20-00-14-15.bpo-35521.x32BRn.rst D Misc/NEWS.d/next/IDLE/2018-12-23-17-42-11.bpo-35208.J5NOg7.rst D Misc/NEWS.d/next/IDLE/2018-12-26-13-53-34.bpo-28097.95I9NT.rst D Misc/NEWS.d/next/IDLE/2018-12-27-15-29-11.bpo-35598.FWOOm8.rst D Misc/NEWS.d/next/IDLE/2018-12-27-17-46-42.bpo-35196.9E-xUh.rst D Misc/NEWS.d/next/IDLE/2018-12-28-01-19-20.bpo-35591.SFpDj2.rst D Misc/NEWS.d/next/IDLE/2018-12-28-17-16-33.bpo-34055.TmmpzR.rst D Misc/NEWS.d/next/IDLE/2018-12-31-17-04-18.bpo-33987.fD92up.rst D Misc/NEWS.d/next/IDLE/2019-01-02-22-15-01.bpo-35641.QEaANl.rst D Misc/NEWS.d/next/IDLE/2019-01-04-19-14-29.bpo-35660.hMxI7N.rst D Misc/NEWS.d/next/IDLE/2019-01-18-01-24-23.bpo-35769.GqsB34.rst D Misc/NEWS.d/next/IDLE/2019-01-18-13-04-30.bpo-35770.2LxJGu.rst D Misc/NEWS.d/next/Library/2017-08-24-17-55-39.bpo-29456.XaB3MP.rst D Misc/NEWS.d/next/Library/2017-09-19-12-38-31.bpo-31508.pDsFJl.rst D Misc/NEWS.d/next/Library/2017-09-29-16-40-38.bpo-16865.l-f6I_.rst D Misc/NEWS.d/next/Library/2017-10-05-20-41-48.bpo-27645.1Y_Wag.rst D Misc/NEWS.d/next/Library/2017-10-12-22-39-55.bpo-22005.lGP-sc.rst D Misc/NEWS.d/next/Library/2017-10-24-10-18-35.bpo-31425.1lgw47.rst D Misc/NEWS.d/next/Library/2017-10-29-10-37-55.bpo-31608.wkp8Nw.rst D Misc/NEWS.d/next/Library/2017-10-31.bpo-31908.g4xh8x.rst D Misc/NEWS.d/next/Library/2017-11-01-15-44-48.bpo-31680.yO6oSC.rst D Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ7.rst D Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ8.rst D Misc/NEWS.d/next/Library/2017-11-28-10-23-13.bpo-32147.PI2k1Y.rst D Misc/NEWS.d/next/Library/2017-12-06-10-10-10.bpo-32221.ideco_.rst D Misc/NEWS.d/next/Library/2017-12-16-11-40-52.bpo-29877.SfWhmz.rst D Misc/NEWS.d/next/Library/2017-12-27-21-55-19.bpo-31639.l3avDJ.rst D Misc/NEWS.d/next/Library/2018-01-01-00-16-59.bpo-8525.Dq8s63.rst D Misc/NEWS.d/next/Library/2018-01-07-17-43-10.bpo-32512.flC-dE.rst D Misc/NEWS.d/next/Library/2018-01-18-13-09-00.bpo-32585.qpeijr.rst D Misc/NEWS.d/next/Library/2018-01-18-23-34-17.bpo-31848.M2cldy.rst D Misc/NEWS.d/next/Library/2018-01-20-23-17-25.bpo-24334.GZuQLv.rst D Misc/NEWS.d/next/Library/2018-01-21-15-01-50.bpo-31453.cZiZBe.rst D Misc/NEWS.d/next/Library/2018-01-30-17-46-18.bpo-32727.aHVsRC.rst D Misc/NEWS.d/next/Library/2018-02-01-01-34-47.bpo-32734.gCV9AD.rst D Misc/NEWS.d/next/Library/2018-02-01-15-53-35.bpo-32691.VLWVTq.rst D Misc/NEWS.d/next/Library/2018-02-01-17-54-08.bpo-32741.KUvOPL.rst D Misc/NEWS.d/next/Library/2018-02-02-17-21-24.bpo-32749.u5scIn.rst D Misc/NEWS.d/next/Library/2018-02-05-13-31-42.bpo-32647.ktmfR_.rst D Misc/NEWS.d/next/Library/2018-02-05-21-28-28.bpo-32777.C-wIXF.rst D Misc/NEWS.d/next/Library/2018-02-06-17-58-15.bpo-32622.AE0Jz7.rst D Misc/NEWS.d/next/Library/2018-02-07-19-12-10.bpo-32775.-T77_c.rst D Misc/NEWS.d/next/Library/2018-02-08-00-47-07.bpo-32792.NtyDb4.rst D Misc/NEWS.d/next/Library/2018-02-08-18-59-11.bpo-30688.zBh4TH.rst D Misc/NEWS.d/next/Library/2018-02-09-14-44-43.bpo-30157.lEiiAK.rst D Misc/NEWS.d/next/Library/2018-02-09-21-41-56.bpo-31787.owSZ2t.rst D Misc/NEWS.d/next/Library/2018-02-10-13-51-56.bpo-32394.dFM9SI.rst D Misc/NEWS.d/next/Library/2018-02-10-23-41-05.bpo-19675.-dj35-.rst D Misc/NEWS.d/next/Library/2018-02-11-15-54-41.bpo-32819.ZTRX2Q.rst D Misc/NEWS.d/next/Library/2018-02-14-00-21-24.bpo-32841.bvHDOc.rst D Misc/NEWS.d/next/Library/2018-02-15-08-18-52.bpo-31333.4fF-gM.rst D Misc/NEWS.d/next/Library/2018-02-15-12-04-29.bpo-32852.HDqIxM.rst D Misc/NEWS.d/next/Library/2018-02-16-14-37-14.bpo-32857.-XljAx.rst D Misc/NEWS.d/next/Library/2018-02-17-19-20-19.bpo-21060.S1Z-x6.rst D Misc/NEWS.d/next/Library/2018-02-19-14-27-51.bpo-32556.CsRsgr.rst D Misc/NEWS.d/next/Library/2018-02-19-17-46-31.bpo-32859.kAT-Xp.rst D Misc/NEWS.d/next/Library/2018-02-23-12-21-41.bpo-32759.M-y9GA.rst D Misc/NEWS.d/next/Library/2018-02-23-19-12-04.bpo-32922.u-xe0B.rst D Misc/NEWS.d/next/Library/2018-02-24-21-40-42.bpo-30622.dQjxSe.rst D Misc/NEWS.d/next/Library/2018-02-25-10-17-23.bpo-32146.xOzUFW.rst D Misc/NEWS.d/next/Library/2018-02-25-13-06-21.bpo-32947.mqStVW.rst D Misc/NEWS.d/next/Library/2018-02-25-13-47-48.bpo-32929.X2gTDH.rst D Misc/NEWS.d/next/Library/2018-02-25-18-22-01.bpo-32951.gHrCXq.rst D Misc/NEWS.d/next/Library/2018-02-26-09-08-07.bpo-32257.6ElnUt.rst D Misc/NEWS.d/next/Library/2018-02-26-13-16-36.bpo-32713.55yegW.rst D Misc/NEWS.d/next/Library/2018-02-26-20-04-40.bpo-32960.48r0Ml.rst D Misc/NEWS.d/next/Library/2018-02-28-13-08-00.bpo-32844.u8tnAe.rst D Misc/NEWS.d/next/Library/2018-02-28-18-39-48.bpo-32970.IPWtbS.rst D Misc/NEWS.d/next/Library/2018-03-01-17-49-56.bpo-32056.IlpfgE.rst D Misc/NEWS.d/next/Library/2018-03-06-00-19-41.bpo-32969.rGTKa0.rst D Misc/NEWS.d/next/Library/2018-03-06-11-54-59.bpo-33009.-Ekysb.rst D Misc/NEWS.d/next/Library/2018-03-06-20-30-20.bpo-32999.lgFXWl.rst D Misc/NEWS.d/next/Library/2018-03-07-19-37-00.bpo-22674.2sIMmM.rst D Misc/NEWS.d/next/Library/2018-03-07-22-28-17.bpo-27683.572Rv4.rst D Misc/NEWS.d/next/Library/2018-03-09-23-07-07.bpo-33037.nAJ3at.rst D Misc/NEWS.d/next/Library/2018-03-11-00-20-26.bpo-30249.KSkgLB.rst D Misc/NEWS.d/next/Library/2018-03-11-08-44-12.bpo-33034.bpb23d.rst D Misc/NEWS.d/next/Library/2018-03-11-19-03-52.bpo-31804.i8KUMp.rst D Misc/NEWS.d/next/Library/2018-03-12-00-27-56.bpo-33021.m19B9T.rst D Misc/NEWS.d/next/Library/2018-03-12-16-40-00.bpo-33056.lNN9Eh.rst D Misc/NEWS.d/next/Library/2018-03-12-19-58-25.bpo-33064.LO2KIY.rst D Misc/NEWS.d/next/Library/2018-03-15-07-38-00.bpo-33078.RmjUF5.rst D Misc/NEWS.d/next/Library/2018-03-16-16-07-33.bpo-33061.TRTTek.rst D Misc/NEWS.d/next/Library/2018-03-18-15-57-32.bpo-32968.E4G7BO.rst D Misc/NEWS.d/next/Library/2018-03-18-16-48-23.bpo-33097.Yl4gI2.rst D Misc/NEWS.d/next/Library/2018-03-18-17-38-48.bpo-32953.t8WAWN.rst D Misc/NEWS.d/next/Library/2018-03-19-20-47-00.bpo-33100.chyIO4.rst D Misc/NEWS.d/next/Library/2018-03-20-20-53-21.bpo-32896.ewW3Ln.rst D Misc/NEWS.d/next/Library/2018-03-21-16-52-26.bpo-33116.Tvzerj.rst D Misc/NEWS.d/next/Library/2018-03-21-17-59-39.bpo-33078.PQOniT.rst D Misc/NEWS.d/next/Library/2018-03-22-16-05-56.bpo-32505.YK1N8v.rst D Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst D Misc/NEWS.d/next/Library/2018-03-24-19-34-26.bpo-33134.hbVeIX.rst D Misc/NEWS.d/next/Library/2018-03-24-19-54-48.bpo-32873.cHyoAm.rst D Misc/NEWS.d/next/Library/2018-03-25-13-18-16.bpo-33096.ofdbe7.rst D Misc/NEWS.d/next/Library/2018-03-26-12-33-13.bpo-33141.23wlxf.rst D Misc/NEWS.d/next/Library/2018-03-29-03-09-22.bpo-32380.NhuGig.rst D Misc/NEWS.d/next/Library/2018-03-29-04-32-25.bpo-33175._zs1yM.rst D Misc/NEWS.d/next/Library/2018-03-30-01-20-35.bpo-33106.zncfvW.rst D Misc/NEWS.d/next/Library/2018-04-01-19-21-04.bpo-20104.-AKcGa.rst D Misc/NEWS.d/next/Library/2018-04-02-16-10-12.bpo-23403.KG7ADV.rst D Misc/NEWS.d/next/Library/2018-04-02-20-44-54.bpo-32861.HeBjzN.rst D Misc/NEWS.d/next/Library/2018-04-03-10-37-13.bpo-33209.9sGWE_.rst D Misc/NEWS.d/next/Library/2018-04-04-23-41-30.bpo-33224.pyR0jB.rst D Misc/NEWS.d/next/Library/2018-04-05-11-09-45.bpo-33203.Hje9Py.rst D Misc/NEWS.d/next/Library/2018-04-06-14-56-26.bpo-33169.ByhDqb.rst D Misc/NEWS.d/next/Library/2018-04-07-13-49-39.bpo-29613.r6FDnB.rst D Misc/NEWS.d/next/Library/2018-04-08-22-54-07.bpo-33185.Id-Ba9.rst D Misc/NEWS.d/next/Library/2018-04-10-14-50-30.bpo-33144.iZr4et.rst D Misc/NEWS.d/next/Library/2018-04-10-20-57-14.bpo-33256.ndHkqu.rst D Misc/NEWS.d/next/Library/2018-04-11-20-29-19.bpo-33263.B56Hc1.rst D Misc/NEWS.d/next/Library/2018-04-13-08-12-50.bpo-33265.KPQRk0.rst D Misc/NEWS.d/next/Library/2018-04-13-15-14-47.bpo-33254.DS4KFK.rst D Misc/NEWS.d/next/Library/2018-04-16-08-42-03.bpo-11594.QLo4vv.rst D Misc/NEWS.d/next/Library/2018-04-16-15-59-21.bpo-33266.w2PAm-.rst D Misc/NEWS.d/next/Library/2018-04-16-16-21-09.bpo-23403.rxR1Q_.rst D Misc/NEWS.d/next/Library/2018-04-18-19-12-25.bpo-33308.fW75xi.rst D Misc/NEWS.d/next/Library/2018-04-20-10-43-17.bpo-33131.L2E977.rst D Misc/NEWS.d/next/Library/2018-04-21-00-24-08.bpo-991266.h93TP_.rst D Misc/NEWS.d/next/Library/2018-04-22-20-13-21.bpo-33334.19UMOC.rst D Misc/NEWS.d/next/Library/2018-04-23-13-21-39.bpo-33329.lQ-Eod.rst D Misc/NEWS.d/next/Library/2018-04-23-18-25-36.bpo-33251.C_K-J9.rst D Misc/NEWS.d/next/Library/2018-04-23-21-41-30.bpo-33332.Y6OZ8Z.rst D Misc/NEWS.d/next/Library/2018-04-25-14-05-21.bpo-27485.nclVSU.rst D Misc/NEWS.d/next/Library/2018-04-26-13-31-10.bpo-32455.KPWg3K.rst D Misc/NEWS.d/next/Library/2018-04-27-22-18-38.bpo-33336.T8rxn0.rst D Misc/NEWS.d/next/Library/2018-04-28-08-11-35.bpo-33375.Dbq1fz.rst D Misc/NEWS.d/next/Library/2018-04-29-11-15-38.bpo-33383.g32YWn.rst D Misc/NEWS.d/next/Library/2018-04-29-23-56-20.bpo-33197.dgRLqr.rst D Misc/NEWS.d/next/Library/2018-04-30-13-29-47.bpo-33217.TENDzd.rst D Misc/NEWS.d/next/Library/2018-04-30-22-43-31.bpo-32933.M3iI_y.rst D Misc/NEWS.d/next/Library/2018-05-01-02-24-44.bpo-27300.LdIXvK.rst D Misc/NEWS.d/next/Library/2018-05-01-22-33-14.bpo-33311.8YPB-k.rst D Misc/NEWS.d/next/Library/2018-05-01-22-35-50.bpo-33281.d4jOt4.rst D Misc/NEWS.d/next/Library/2018-05-02-07-26-29.bpo-28167.7FwDfN.rst D Misc/NEWS.d/next/Library/2018-05-05-09-53-05.bpo-33422.4FtQ0q.rst D Misc/NEWS.d/next/Library/2018-05-05-18-02-24.bpo-20087.lJrvXL.rst D Misc/NEWS.d/next/Library/2018-05-08-15-01-10.bpo-33365.SicsAd.rst D Misc/NEWS.d/next/Library/2018-05-08-16-43-42.bpo-28556._xr5mp.rst D Misc/NEWS.d/next/Library/2018-05-12-06-01-02.bpo-33453.Fj-jMD.rst D Misc/NEWS.d/next/Library/2018-05-12-13-06-41.bpo-29209.h5RxYy.rst D Misc/NEWS.d/next/Library/2018-05-14-09-07-14.bpo-26103._zU8E2.rst D Misc/NEWS.d/next/Library/2018-05-14-10-29-03.bpo-33495.TeGTQJ.rst D Misc/NEWS.d/next/Library/2018-05-14-15-01-55.bpo-29235.47Fzwt.rst D Misc/NEWS.d/next/Library/2018-05-14-17-49-34.bpo-33497.wWT6XM.rst D Misc/NEWS.d/next/Library/2018-05-14-18-05-35.bpo-33505.L8pAyt.rst D Misc/NEWS.d/next/Library/2018-05-15-12-11-13.bpo-33504.czsHFg.rst D Misc/NEWS.d/next/Library/2018-05-15-13-49-13.bpo-28167.p4RdQt.rst D Misc/NEWS.d/next/Library/2018-05-15-15-03-48.bpo-28612.E9dz39.rst D Misc/NEWS.d/next/Library/2018-05-15-17-06-42.bpo-33516.ZzARe4.rst D Misc/NEWS.d/next/Library/2018-05-15-18-02-03.bpo-0.pj2Mbb.rst D Misc/NEWS.d/next/Library/2018-05-16-05-24-43.bpo-26819.taxbVT.rst D Misc/NEWS.d/next/Library/2018-05-16-09-30-27.bpo-33542.idNAcs.rst D Misc/NEWS.d/next/Library/2018-05-16-10-07-40.bpo-33536._s0TE8.rst D Misc/NEWS.d/next/Library/2018-05-16-12-32-48.bpo-33541.kQORPE.rst D Misc/NEWS.d/next/Library/2018-05-16-14-57-58.bpo-33109.nPLL_S.rst D Misc/NEWS.d/next/Library/2018-05-16-17-05-48.bpo-33548.xWslmx.rst D Misc/NEWS.d/next/Library/2018-05-16-18-10-38.bpo-33540.wy9LRV.rst D Misc/NEWS.d/next/Library/2018-05-17-22-14-58.bpo-12486.HBeh62.rst D Misc/NEWS.d/next/Library/2018-05-17-22-53-08.bpo-28556.C6Hnd1.rst D Misc/NEWS.d/next/Library/2018-05-18-21-50-47.bpo-33570.7CZy4t.rst D Misc/NEWS.d/next/Library/2018-05-18-22-52-34.bpo-21145.AiQMDx.rst D Misc/NEWS.d/next/Library/2018-05-19-15-58-14.bpo-33582.qBZPmF.rst D Misc/NEWS.d/next/Library/2018-05-22-11-55-33.bpo-33604.6V4JcO.rst D Misc/NEWS.d/next/Library/2018-05-22-13-05-12.bpo-30877.JZEGjI.rst D Misc/NEWS.d/next/Library/2018-05-23-00-26-27.bpo-11874.glK5iP.rst D Misc/NEWS.d/next/Library/2018-05-23-14-58-05.bpo-33623.wAw1cF.rst D Misc/NEWS.d/next/Library/2018-05-23-17-07-54.bpo-33625.nzQgD8.rst D Misc/NEWS.d/next/Library/2018-05-23-20-14-34.bpo-33618.xU39lr.rst D Misc/NEWS.d/next/Library/2018-05-24-09-15-52.bpo-33238.ooDfoo.rst D Misc/NEWS.d/next/Library/2018-05-24-17-41-36.bpo-32493.5tAoAu.rst D Misc/NEWS.d/next/Library/2018-05-26-10-13-59.bpo-33652.humFJ1.rst D Misc/NEWS.d/next/Library/2018-05-26-13-09-34.bpo-33654.IbYWxA.rst D Misc/NEWS.d/next/Library/2018-05-28-12-29-54.bpo-33672.GM_Xm_.rst D Misc/NEWS.d/next/Library/2018-05-28-15-55-12.bpo-33469.hmXBpY.rst D Misc/NEWS.d/next/Library/2018-05-28-16-19-35.bpo-32410.Z1DZaF.rst D Misc/NEWS.d/next/Library/2018-05-28-16-40-32.bpo-32610.KvUAsL.rst D Misc/NEWS.d/next/Library/2018-05-28-18-40-26.bpo-31647.s4Fad3.rst D Misc/NEWS.d/next/Library/2018-05-28-22-49-59.bpo-33674.6LFFj7.rst D Misc/NEWS.d/next/Library/2018-05-28-23-25-17.bpo-33671.GIdKKi.rst D Misc/NEWS.d/next/Library/2018-05-29-00-37-56.bpo-33674.2IkGhL.rst D Misc/NEWS.d/next/Library/2018-05-29-01-13-39.bpo-33654.sa81Si.rst D Misc/NEWS.d/next/Library/2018-05-29-12-51-18.bpo-32684.ZEIism.rst D Misc/NEWS.d/next/Library/2018-05-29-15-32-18.bpo-32751.oBTqr7.rst D Misc/NEWS.d/next/Library/2018-05-30-00-26-05.bpo-33197.XkE2kL.rst D Misc/NEWS.d/next/Library/2018-05-30-16-00-06.bpo-2504.BynUvU.rst D Misc/NEWS.d/next/Library/2018-05-31-06-48-55.bpo-31014.SNY681.rst D Misc/NEWS.d/next/Library/2018-06-01-10-55-48.bpo-33734.x1W9x0.rst D Misc/NEWS.d/next/Library/2018-06-03-22-41-59.bpo-33767.2e82g3.rst D Misc/NEWS.d/next/Library/2018-06-04-13-46-39.bpo-33769.D_pxYz.rst D Misc/NEWS.d/next/Library/2018-06-05-11-29-26.bpo-33770.oBhxxw.rst D Misc/NEWS.d/next/Library/2018-06-05-12-43-25.bpo-33165.9TIsVf.rst D Misc/NEWS.d/next/Library/2018-06-05-20-22-30.bpo-33778._tSAS6.rst D Misc/NEWS.d/next/Library/2018-06-06-22-01-33.bpo-33274.teYqv8.rst D Misc/NEWS.d/next/Library/2018-06-07-12-38-12.bpo-33792.3aKG7u.rst D Misc/NEWS.d/next/Library/2018-06-07-18-55-35.bpo-32493.1Bte62.rst D Misc/NEWS.d/next/Library/2018-06-07-23-51-00.bpo-33694.F1zIR1.rst D Misc/NEWS.d/next/Library/2018-06-08-00-29-40.bpo-33476.R0Bhlj.rst D Misc/NEWS.d/next/Library/2018-06-08-17-34-16.bpo-30805.3qCWa0.rst D Misc/NEWS.d/next/Library/2018-06-08-23-55-34.bpo-33578.7oSsjG.rst D Misc/NEWS.d/next/Library/2018-06-10-09-43-54.bpo-27397.0_fFQR.rst D Misc/NEWS.d/next/Library/2018-06-10-12-15-26.bpo-32108.iEkvh0.rst D Misc/NEWS.d/next/Library/2018-06-10-13-26-02.bpo-33812.frGAOr.rst D Misc/NEWS.d/next/Library/2018-06-10-14-08-52.bpo-33687.1zZdnA.rst D Misc/NEWS.d/next/Library/2018-06-10-15-14-17.bpo-33805.5LAz5a.rst D Misc/NEWS.d/next/Library/2018-06-10-19-29-17.bpo-30167.G5EgC5.rst D Misc/NEWS.d/next/Library/2018-06-12-18-34-54.bpo-33842.RZXSGu.rst D Misc/NEWS.d/next/Library/2018-06-12-18-59-16.bpo-33843.qVAK8g.rst D Misc/NEWS.d/next/Library/2018-06-13-20-33-29.bpo-26544.hQ1oMt.rst D Misc/NEWS.d/next/Library/2018-06-14-17-53-30.bpo-33721.8i9_9A.rst D Misc/NEWS.d/next/Library/2018-06-17-10-48-03.bpo-33663.sUuGmq.rst D Misc/NEWS.d/next/Library/2018-06-17-11-46-20.bpo-33833.RnEqvM.rst D Misc/NEWS.d/next/Library/2018-06-21-09-33-02.bpo-32568.f_meGY.rst D Misc/NEWS.d/next/Library/2018-06-21-11-35-47.bpo-33916.cZgPCD.rst D Misc/NEWS.d/next/Library/2018-06-23-12-47-37.bpo-33695.seRTxh.rst D Misc/NEWS.d/next/Library/2018-06-23-18-09-28.bpo-33897.Hu0yvt.rst D Misc/NEWS.d/next/Library/2018-06-24-01-57-14.bpo-33899.IaOcAr.rst D Misc/NEWS.d/next/Library/2018-06-26-02-09-18.bpo-33929.OcCLah.rst D Misc/NEWS.d/next/Library/2018-06-26-16-55-59.bpo-25007.6LQWOF.rst D Misc/NEWS.d/next/Library/2018-06-26-19-03-56.bpo-33871.XhlrGU.rst D Misc/NEWS.d/next/Library/2018-06-27-00-31-30.bpo-24567.FuePyY.rst D Misc/NEWS.d/next/Library/2018-06-28-13-00-12.bpo-27500._s1gZ5.rst D Misc/NEWS.d/next/Library/2018-06-28-14-56-44.bpo-33974.SA8nNP.rst D Misc/NEWS.d/next/Library/2018-06-29-00-31-36.bpo-14117.3nvDuR.rst D Misc/NEWS.d/next/Library/2018-06-29-12-23-34.bpo-33978.y4csIw.rst D Misc/NEWS.d/next/Library/2018-06-29-13-05-01.bpo-34003.Iu831h.rst D Misc/NEWS.d/next/Library/2018-07-02-05-59-11.bpo-34019.ZXJIife.rst D Misc/NEWS.d/next/Library/2018-07-04-07-36-53.bpo-34010.VNDkde.rst D Misc/NEWS.d/next/Library/2018-07-04-17-14-26.bpo-34044.KWAu4y.rst D Misc/NEWS.d/next/Library/2018-07-04-21-14-35.bpo-34043.0YJNq9.rst D Misc/NEWS.d/next/Library/2018-07-05-18-37-05.bpo-34054.nWRS6M.rst D Misc/NEWS.d/next/Library/2018-07-05-22-45-46.bpo-34056.86isrU.rst D Misc/NEWS.d/next/Library/2018-07-06-15-06-32.bpo-34041.0zrKLh.rst D Misc/NEWS.d/next/Library/2018-07-08-18-49-41.bpo-33967.lhaAez.rst D Misc/NEWS.d/next/Library/2018-07-11-10-03-21.bpo-27494.04OWkW.rst D Misc/NEWS.d/next/Library/2018-07-11-20-51-20.bpo-34070.WpmFAu.rst D Misc/NEWS.d/next/Library/2018-07-13-08-44-52.bpo-34108.RjobUC.rst D Misc/NEWS.d/next/Library/2018-07-13-13-42-10.bpo-34097.F5Dk5o.rst D Misc/NEWS.d/next/Library/2018-07-20-09-11-05.bpo-33729.sO6iTb.rst D Misc/NEWS.d/next/Library/2018-07-20-18-06-00.bpo-34164.fNfT-q.rst D Misc/NEWS.d/next/Library/2018-07-22-07-59-32.bpo-940286.NZTzyc.rst D Misc/NEWS.d/next/Library/2018-07-22-09-05-01.bpo-21446.w6g7tn.rst D Misc/NEWS.d/next/Library/2018-07-23-12-20-02.bpo-32788.R2jSiK.rst D Misc/NEWS.d/next/Library/2018-07-23-14-12-28.bpo-34197.7yFSP5.rst D Misc/NEWS.d/next/Library/2018-07-24-16-37-40.bpo-34052.VbbFAE.rst D Misc/NEWS.d/next/Library/2018-07-25-00-40-14.bpo-34213.O15MgP.rst D Misc/NEWS.d/next/Library/2018-07-25-12-08-48.bpo-13041.lNmgDz.rst D Misc/NEWS.d/next/Library/2018-07-25-19-02-39.bpo-34228.0Ibztw.rst D Misc/NEWS.d/next/Library/2018-07-25-22-38-54.bpo-33089.C3CB7e.rst D Misc/NEWS.d/next/Library/2018-07-26-08-45-49.bpo-19891.Y-3IiB.rst D Misc/NEWS.d/next/Library/2018-07-28-11-47-10.bpo-34251.q3elQ6.rst D Misc/NEWS.d/next/Library/2018-07-28-11-49-21.bpo-34075.9u1bO-.rst D Misc/NEWS.d/next/Library/2018-07-28-12-08-53.bpo-32215.EU68SY.rst D Misc/NEWS.d/next/Library/2018-07-28-15-00-31.bpo-34035.75nW0H.rst D Misc/NEWS.d/next/Library/2018-07-28-17-00-36.bpo-34263.zUfRsu.rst D Misc/NEWS.d/next/Library/2018-07-29-11-32-56.bpo-34270.aL6P-3.rst D Misc/NEWS.d/next/Library/2018-07-29-13-50-32.bpo-32321.hDoNKC.rst D Misc/NEWS.d/next/Library/2018-07-29-14-12-23.bpo-31047.FSarLs.rst D Misc/NEWS.d/next/Library/2018-07-29-15-25-15.bpo-34246.xiKq-Q.rst D Misc/NEWS.d/next/Library/2018-07-29-21-53-15.bpo-33089.hxbp3g.rst D Misc/NEWS.d/next/Library/2018-07-31-23-00-09.bpo-34248.5U6wwc.rst D Misc/NEWS.d/next/Library/2018-07-31-23-33-06.bpo-33613.Cdnt0i.rst D Misc/NEWS.d/next/Library/2018-08-01-21-26-17.bpo-9372.V8Ou3K.rst D Misc/NEWS.d/next/Library/2018-08-02-14-43-42.bpo-34318.GneiXs.rst D Misc/NEWS.d/next/Library/2018-08-02-20-39-32.bpo-26502.eGXr_k.rst D Misc/NEWS.d/next/Library/2018-08-02-21-28-38.bpo-18540.AryoYY.rst D Misc/NEWS.d/next/Library/2018-08-04-00-06-28.bpo-34333.5NHG93.rst D Misc/NEWS.d/next/Library/2018-08-06-11-01-18.bpo-34341.E0b9p2.rst D Misc/NEWS.d/next/Library/2018-08-06-21-47-03.bpo-2122.GWdmrm.rst D Misc/NEWS.d/next/Library/2018-08-12-00-14-54.bpo-22602.ybG9K8.rst D Misc/NEWS.d/next/Library/2018-08-12-08-43-21.bpo-34384.yjofCv.rst D Misc/NEWS.d/next/Library/2018-08-15-16-22-30.bpo-31715.Iw8jS8.rst D Misc/NEWS.d/next/Library/2018-08-16-16-47-15.bpo-20849.YWJECC.rst D Misc/NEWS.d/next/Library/2018-08-16-19-07-05.bpo-34412.NF5Jm2.rst D Misc/NEWS.d/next/Library/2018-08-20-13-53-10.bpo-34427.tMRQjl.rst D Misc/NEWS.d/next/Library/2018-08-20-16-48-32.bpo-34441._zx9lU.rst D Misc/NEWS.d/next/Library/2018-08-21-00-29-01.bpo-34171.6LkWav.rst D Misc/NEWS.d/next/Library/2018-08-22-17-43-52.bpo-6700.hp7C4B.rst D Misc/NEWS.d/next/Library/2018-08-22-21-59-08.bpo-34454.z7uG4b.rst D Misc/NEWS.d/next/Library/2018-08-23-09-25-08.bpo-34472.cGyYrO.rst D Misc/NEWS.d/next/Library/2018-08-24-17-31-27.bpo-13312.6hA5La.rst D Misc/NEWS.d/next/Library/2018-08-27-16-01-22.bpo-34515.S0Irst.rst D Misc/NEWS.d/next/Library/2018-08-30-14-44-11.bpo-22872.NhIaZ9.rst D Misc/NEWS.d/next/Library/2018-08-31-06-28-03.bpo-34282.ztyXH8.rst D Misc/NEWS.d/next/Library/2018-08-31-19-26-55.bpo-34558.MHv582.rst D Misc/NEWS.d/next/Library/2018-09-01-20-43-10.bpo-34563.7NQK7B.rst D Misc/NEWS.d/next/Library/2018-09-03-23-23-32.bpo-34530.h_Xsu7.rst D Misc/NEWS.d/next/Library/2018-09-03-23-54-35.bpo-8110.FExWI_.rst D Misc/NEWS.d/next/Library/2018-09-04-09-32-54.bpo-34574.X4RwYI.rst D Misc/NEWS.d/next/Library/2018-09-06-10-07-46.bpo-30977.bP661V.rst D Misc/NEWS.d/next/Library/2018-09-07-10-16-34.bpo-34604.xL7-kG.rst D Misc/NEWS.d/next/Library/2018-09-07-10-57-00.bpo-34421.AKJISD.rst D Misc/NEWS.d/next/Library/2018-09-08-12-57-07.bpo-34610.wmoP5j.rst D Misc/NEWS.d/next/Library/2018-09-10-13-04-40.bpo-34622.tpv_rN.rst D Misc/NEWS.d/next/Library/2018-09-10-14-15-53.bpo-32270.wSJjuD.rst D Misc/NEWS.d/next/Library/2018-09-10-17-46-51.bpo-34625.D2YfDz.rst D Misc/NEWS.d/next/Library/2018-09-10-21-09-34.bpo-34363.YuSb0T.rst D Misc/NEWS.d/next/Library/2018-09-11-01-25-35.bpo-32490.ROIDO1.rst D Misc/NEWS.d/next/Library/2018-09-11-10-00-53.bpo-34630.YbqUS6.rst D Misc/NEWS.d/next/Library/2018-09-11-10-51-16.bpo-24412.i-F_E5.rst D Misc/NEWS.d/next/Library/2018-09-11-15-04-05.bpo-34636.capCmt.rst D Misc/NEWS.d/next/Library/2018-09-11-15-49-09.bpo-34536.3IPIH5.rst D Misc/NEWS.d/next/Library/2018-09-12-10-33-44.bpo-34638.xaeZX5.rst D Misc/NEWS.d/next/Library/2018-09-12-14-46-51.bpo-34652.Rt1m1b.rst D Misc/NEWS.d/next/Library/2018-09-13-03-59-43.bpo-34658.ykZ-ia.rst D Misc/NEWS.d/next/Library/2018-09-13-10-09-19.bpo-6721.ZUL_F3.rst D Misc/NEWS.d/next/Library/2018-09-13-11-49-52.bpo-34666.3uLtWv.rst D Misc/NEWS.d/next/Library/2018-09-13-21-04-23.bpo-34672.BYuKKS.rst D Misc/NEWS.d/next/Library/2018-09-14-10-38-18.bpo-31177.Sv91TN.rst D Misc/NEWS.d/next/Library/2018-09-14-12-38-49.bpo-32718.ICYQbt.rst D Misc/NEWS.d/next/Library/2018-09-14-14-29-45.bpo-34670.17XwGB.rst D Misc/NEWS.d/next/Library/2018-09-14-20-00-47.bpo-29577.RzwKFD.rst D Misc/NEWS.d/next/Library/2018-09-16-17-04-16.bpo-34659.CWemzH.rst D Misc/NEWS.d/next/Library/2018-09-19-16-51-04.bpo-34738.Pr3-iG.rst D Misc/NEWS.d/next/Library/2018-09-20-16-55-43.bpo-34728.CUE8LU.rst D Misc/NEWS.d/next/Library/2018-09-20-17-35-05.bpo-32892.TOUBdg.rst D Misc/NEWS.d/next/Library/2018-09-24-14-21-58.bpo-5950.xH0ekQ.rst D Misc/NEWS.d/next/Library/2018-09-24-17-14-57.bpo-34687.Fku_8S.rst D Misc/NEWS.d/next/Library/2018-09-25-08-42-34.bpo-34334.rSPBW9.rst D Misc/NEWS.d/next/Library/2018-09-25-15-48-50.bpo-34789.rPOEj5.rst D Misc/NEWS.d/next/Library/2018-09-26-14-09-34.bpo-34758.bRBfAi.rst D Misc/NEWS.d/next/Library/2018-09-27-09-45-00.bpo-34819.9ZaFyO.rst D Misc/NEWS.d/next/Library/2018-09-27-13-14-15.bpo-34022.E2cl0r.rst D Misc/NEWS.d/next/Library/2018-09-30-08-08-14.bpo-34849.NXK9Ff.rst D Misc/NEWS.d/next/Library/2018-10-02-19-36-34.bpo-34872.yWZRhI.rst D Misc/NEWS.d/next/Library/2018-10-03-09-25-02.bpo-34711.HeOmKR.rst D Misc/NEWS.d/next/Library/2018-10-03-11-07-28.bpo-34866.ML6KpJ.rst D Misc/NEWS.d/next/Library/2018-10-04-15-53-14.bpo-28441.2sQENe.rst D Misc/NEWS.d/next/Library/2018-10-04-17-23-43.bpo-34898.Wo2PoJ.rst D Misc/NEWS.d/next/Library/2018-10-04-18-46-54.bpo-34871.t3X-dB.rst D Misc/NEWS.d/next/Library/2018-10-04-20-25-35.bpo-34897.rNE2Cy.rst D Misc/NEWS.d/next/Library/2018-10-04-20-44-45.bpo-34844.Hnuxav.rst D Misc/NEWS.d/next/Library/2018-10-05-05-55-53.bpo-34900.8RNiFu.rst D Misc/NEWS.d/next/Library/2018-10-07-20-37-02.bpo-34925.KlkZ-Y.rst D Misc/NEWS.d/next/Library/2018-10-07-21-18-52.bpo-34922.37IdsA.rst D Misc/NEWS.d/next/Library/2018-10-08-15-22-02.bpo-34911.hCy0Fv.rst D Misc/NEWS.d/next/Library/2018-10-08-16-04-36.bpo-34829.B7v7D0.rst D Misc/NEWS.d/next/Library/2018-10-08-21-05-11.bpo-34936.3tRqdq.rst D Misc/NEWS.d/next/Library/2018-10-09-11-01-16.bpo-34769.cSkkZt.rst D Misc/NEWS.d/next/Library/2018-10-09-14-25-36.bpo-32680.z2FbOp.rst D Misc/NEWS.d/next/Library/2018-10-09-14-42-16.bpo-34941.1Q5QKv.rst D Misc/NEWS.d/next/Library/2018-10-09-15-44-04.bpo-23831.2CL7lL.rst D Misc/NEWS.d/next/Library/2018-10-10-00-22-57.bpo-34926.CA0rqd.rst D Misc/NEWS.d/next/Library/2018-10-12-18-57-52.bpo-34966.WZeBHO.rst D Misc/NEWS.d/next/Library/2018-10-12-20-30-42.bpo-16965.xo5LAr.rst D Misc/NEWS.d/next/Library/2018-10-13-07-46-50.bpo-34969.Mfnhjb.rst D Misc/NEWS.d/next/Library/2018-10-13-11-14-13.bpo-34970.SrJTY7.rst D Misc/NEWS.d/next/Library/2018-10-13-18-16-20.bpo-31522.rWBb43.rst D Misc/NEWS.d/next/Library/2018-10-13-19-15-23.bpo-34521.YPaiTK.rst D Misc/NEWS.d/next/Library/2018-10-15-23-10-41.bpo-34890.77E770.rst D Misc/NEWS.d/next/Library/2018-10-17-02-15-23.bpo-33947.SRuq3T.rst D Misc/NEWS.d/next/Library/2018-10-17-11-00-00.bpo-23420.Lq74Uu.rst D Misc/NEWS.d/next/Library/2018-10-17-11-54-04.bpo-35008.dotef_.rst D Misc/NEWS.d/next/Library/2018-10-18-17-57-28.bpo-35022.KeEF4T.rst D Misc/NEWS.d/next/Library/2018-10-20-00-29-43.bpo-34909.Ew_8DC.rst D Misc/NEWS.d/next/Library/2018-10-21-14-53-19.bpo-34794.yt3R4-.rst D Misc/NEWS.d/next/Library/2018-10-23-14-46-47.bpo-31553.JxRkAW.rst D Misc/NEWS.d/next/Library/2018-10-23-18-58-12.bpo-35053.G82qwh.rst D Misc/NEWS.d/next/Library/2018-10-25-09-37-03.bpo-31047.kBbX8r.rst D Misc/NEWS.d/next/Library/2018-10-25-09-59-00.bpo-35047.abbaa.rst D Misc/NEWS.d/next/Library/2018-10-25-15-43-32.bpo-35024.ltSrtr.rst D Misc/NEWS.d/next/Library/2018-10-26-00-11-21.bpo-35017.6Ez4Cv.rst D Misc/NEWS.d/next/Library/2018-10-26-21-12-55.bpo-33710.Q5oXc6.rst D Misc/NEWS.d/next/Library/2018-10-26-22-53-16.bpo-35079.Tm5jvF.rst D Misc/NEWS.d/next/Library/2018-10-27-21-11-42.bpo-34160.UzyPZf.rst D Misc/NEWS.d/next/Library/2018-10-29-10-18-31.bpo-35065.CulMN8.rst D Misc/NEWS.d/next/Library/2018-10-29-23-09-24.bpo-35062.dQS1ng.rst D Misc/NEWS.d/next/Library/2018-11-03-10-12-04.bpo-35152.xpqskp.rst D Misc/NEWS.d/next/Library/2018-11-08-14-22-29.bpo-35186.5m22Mj.rst D Misc/NEWS.d/next/Library/2018-11-09-01-18-51.bpo-30064.IF5mH6.rst D Misc/NEWS.d/next/Library/2018-11-09-13-35-36.bpo-35189.gog-sl.rst D Misc/NEWS.d/next/Library/2018-11-12-17-40-04.bpo-29564.SFNBT5.rst D Misc/NEWS.d/next/Library/2018-11-15-07-14-32.bpo-35226.wJPEEe.rst D Misc/NEWS.d/next/Library/2018-11-18-18-44-40.bpo-24209.p3YWOf.rst D Misc/NEWS.d/next/Library/2018-11-19-07-22-04.bpo-35277.dsD-2E.rst D Misc/NEWS.d/next/Library/2018-11-20-13-34-01.bpo-28604.iiih5h.rst D Misc/NEWS.d/next/Library/2018-11-22-15-22-56.bpo-24746.eSLKBE.rst D Misc/NEWS.d/next/Library/2018-11-24-10-33-42.bpo-35308.9--2iy.rst D Misc/NEWS.d/next/Library/2018-11-25-20-05-33.bpo-35312.wbw0zO.rst D Misc/NEWS.d/next/Library/2018-11-29-00-23-25.bpo-35344.4QOPJQ.rst D Misc/NEWS.d/next/Library/2018-11-29-00-55-33.bpo-35345.vepCSJ.rst D Misc/NEWS.d/next/Library/2018-11-29-09-38-40.bpo-35066.Nwej2s.rst D Misc/NEWS.d/next/Library/2018-11-29-12-42-13.bpo-35346.OmTY5c.rst D Misc/NEWS.d/next/Library/2018-12-01-13-44-12.bpo-35371.fTAwlX.rst D Misc/NEWS.d/next/Library/2018-12-02-13-50-52.bpo-35341.32E8T_.rst D Misc/NEWS.d/next/Library/2018-12-03-14-41-11.bpo-35380.SdRF9l.rst D Misc/NEWS.d/next/Library/2018-12-03-19-45-00.bpo-35310.9k28gR.rst D Misc/NEWS.d/next/Library/2018-12-04-12-17-08.bpo-35394.fuTVDk.rst D Misc/NEWS.d/next/Library/2018-12-04-12-46-05.bpo-35389.CTZ9iA.rst D Misc/NEWS.d/next/Library/2018-12-05-13-37-39.bpo-10496.VH-1Lp.rst D Misc/NEWS.d/next/Library/2018-12-05-17-42-49.bpo-10496.laV_IE.rst D Misc/NEWS.d/next/Library/2018-12-05-22-52-21.bpo-35346.Okm9-S.rst D Misc/NEWS.d/next/Library/2018-12-06-00-43-13.bpo-35330.abB4BN.rst D Misc/NEWS.d/next/Library/2018-12-06-02-02-28.bpo-35424.gXxOJU.rst D Misc/NEWS.d/next/Library/2018-12-06-14-44-21.bpo-35415.-HoK3d.rst D Misc/NEWS.d/next/Library/2018-12-09-14-35-49.bpo-35445.LjvtsC.rst D Misc/NEWS.d/next/Library/2018-12-09-17-04-15.bpo-17185.SfSCJF.rst D Misc/NEWS.d/next/Library/2018-12-09-21-35-49.bpo-20239.V4mWBL.rst D Misc/NEWS.d/next/Library/2018-12-10-09-48-27.bpo-35052.xE1ymg.rst D Misc/NEWS.d/next/Library/2018-12-12-16-24-55.bpo-23057.OB4Z1Y.rst D Misc/NEWS.d/next/Library/2018-12-12-16-25-21.bpo-35471.SK8jFC.rst D Misc/NEWS.d/next/Library/2018-12-12-22-52-34.bpo-31446.l--Fjz.rst D Misc/NEWS.d/next/Library/2018-12-13-00-10-51.bpo-35477.hHyy06.rst D Misc/NEWS.d/next/Library/2018-12-14-12-12-15.bpo-35491.jHsNOU.rst D Misc/NEWS.d/next/Library/2018-12-14-13-27-45.bpo-35348.u3Y2an.rst D Misc/NEWS.d/next/Library/2018-12-14-23-56-48.bpo-35502.gLHuFS.rst D Misc/NEWS.d/next/Library/2018-12-16-23-28-49.bpo-35513.pn-Zh3.rst D Misc/NEWS.d/next/Library/2018-12-17-11-43-11.bpo-31784.W0gDjC.rst D Misc/NEWS.d/next/Library/2018-12-18-13-52-13.bpo-35523.SkoMno.rst D Misc/NEWS.d/next/Library/2018-12-18-21-12-25.bpo-35526.fYvo6H.rst D Misc/NEWS.d/next/Library/2018-12-20-16-24-51.bpo-35537.z4E7aA.rst D Misc/NEWS.d/next/Library/2018-12-23-22-27-59.bpo-30561.PSRQ2w.rst D Misc/NEWS.d/next/Library/2018-12-26-02-28-00.bpo-35585.Lkzd3Z.rst D Misc/NEWS.d/next/Library/2018-12-26-10-55-59.bpo-35588.PSR6Ez.rst D Misc/NEWS.d/next/Library/2018-12-27-19-23-00.bpo-35568.PutiOC.rst D Misc/NEWS.d/next/Library/2018-12-30-01-10-50.bpo-35614.cnkM4f.rst D Misc/NEWS.d/next/Library/2018-12-30-14-56-33.bpo-28503.V4kNN3.rst D Misc/NEWS.d/next/Library/2018-12-30-19-50-36.bpo-35619.ZRXdhy.rst D Misc/NEWS.d/next/Library/2019-01-02-20-04-49.bpo-35643.DaMiaV.rst D Misc/NEWS.d/next/Library/2019-01-04-22-18-25.bpo-35664.Z-Gyyj.rst D Misc/NEWS.d/next/Library/2019-01-07-17-17-16.bpo-35283.WClosC.rst D Misc/NEWS.d/next/Library/2019-01-08-01-54-02.bpo-35682.KDM9lk.rst D Misc/NEWS.d/next/Library/2019-01-08-14-00-52.bpo-32710.Sn5Ujj.rst D Misc/NEWS.d/next/Library/2019-01-10-14-03-12.bpo-35702._ct_0H.rst D Misc/NEWS.d/next/Library/2019-01-10-15-55-10.bpo-32710.KwECPu.rst D Misc/NEWS.d/next/Library/2019-01-11-07-09-25.bpo-35699.VDiENF.rst D Misc/NEWS.d/next/Library/2019-01-11-17-56-15.bpo-35717.6TDTB_.rst D Misc/NEWS.d/next/Library/2019-01-11-20-21-59.bpo-35719.qyRcpE.rst D Misc/NEWS.d/next/Library/2019-01-13-01-33-00.bpo-35726.dasdas.rst D Misc/NEWS.d/next/Library/2019-01-13-18-42-41.bpo-35733.eFfLiv.rst D Misc/NEWS.d/next/Library/2019-01-14-14-13-08.bpo-35674.kamWqz.rst D Misc/NEWS.d/next/Library/2019-01-14-17-34-36.bpo-34323.CRErrt.rst D Misc/NEWS.d/next/Library/2019-01-15-13-31-30.bpo-23846.LT_qL8.rst D Misc/NEWS.d/next/Library/2019-01-18-13-44-13.bpo-35537.R1lbTl.rst D Misc/NEWS.d/next/Library/2019-01-19-17-01-43.bpo-35780.CLf7fT.rst D Misc/NEWS.d/next/Library/2019-01-23-22-44-37.bpo-35813.Yobj-Y.rst D Misc/NEWS.d/next/Library/2019-01-29-09-11-09.bpo-35847.eiSi4t.rst D Misc/NEWS.d/next/Library/2019-01-29-17-24-52.bpo-35537.Q0ktFC.rst D Misc/NEWS.d/next/Library/2019-01-30-20-22-36.bpo-35864.ig9KnG.rst D Misc/NEWS.d/next/Library/2019-02-02-00-04-01.bpo-35845.1jx2wk.rst D Misc/NEWS.d/next/Security/2017-08-06-14-43-45.bpo-28414.mzZ6vD.rst D Misc/NEWS.d/next/Security/2018-03-02-10-24-52.bpo-32981.O_qDyj.rst D Misc/NEWS.d/next/Security/2018-03-05-10-09-51.bpo-33001.elj4Aa.rst D Misc/NEWS.d/next/Security/2018-03-25-12-05-43.bpo-33136.TzSN4x.rst D Misc/NEWS.d/next/Security/2018-05-28-08-55-30.bpo-32533.IzwkBI.rst D Misc/NEWS.d/next/Security/2018-06-26-19-35-33.bpo-33871.S4HR9n.rst D Misc/NEWS.d/next/Security/2018-08-15-12-12-47.bpo-34405.qbHTH_.rst D Misc/NEWS.d/next/Security/2018-09-10-16-05-39.bpo-34623.Ua9jMv.rst D Misc/NEWS.d/next/Security/2018-09-11-18-30-55.bpo-17239.kOpwK2.rst D Misc/NEWS.d/next/Security/2018-09-24-18-49-25.bpo-34791.78GmIG.rst D Misc/NEWS.d/next/Security/2018-11-23-15-00-23.bpo-34812.84VQnb.rst D Misc/NEWS.d/next/Security/2019-01-15-18-16-05.bpo-35746.nMSd0j.rst D Misc/NEWS.d/next/Tests/2017-10-18-18-07-45.bpo-31809.KlQrkE.rst D Misc/NEWS.d/next/Tests/2018-01-08-13-33-47.bpo-19417.2asoXy.rst D Misc/NEWS.d/next/Tests/2018-01-12-09-05-19.bpo-27643._6z49y.rst D Misc/NEWS.d/next/Tests/2018-01-25-18-10-47.bpo-32663.IKDsqu.rst D Misc/NEWS.d/next/Tests/2018-03-09-07-05-12.bpo-32517.ugc1iW.rst D Misc/NEWS.d/next/Tests/2018-03-28-01-35-02.bpo-32872.J5NDUj.rst D Misc/NEWS.d/next/Tests/2018-04-27-11-46-35.bpo-33358._OcR59.rst D Misc/NEWS.d/next/Tests/2018-05-10-16-59-15.bpo-32962.S-rcIN.rst D Misc/NEWS.d/next/Tests/2018-05-26-16-01-40.bpo-33655.Frb4LA.rst D Misc/NEWS.d/next/Tests/2018-06-01-14-25-31.bpo-33562.GutEHf.rst D Misc/NEWS.d/next/Tests/2018-06-16-01-37-31.bpo-33873.d86vab.rst D Misc/NEWS.d/next/Tests/2018-06-19-14-04-21.bpo-33901.OFW1Sr.rst D Misc/NEWS.d/next/Tests/2018-06-19-17-55-46.bpo-33746.Sz7avn.rst D Misc/NEWS.d/next/Tests/2018-07-10-18-53-46.bpo-0.UBQJBc.rst D Misc/NEWS.d/next/Tests/2018-08-08-22-41-30.bpo-11191.eq9tSH.rst D Misc/NEWS.d/next/Tests/2018-08-10-16-17-51.bpo-34373.SKdb1k.rst D Misc/NEWS.d/next/Tests/2018-08-14-10-47-44.bpo-34399.D_jd1G.rst D Misc/NEWS.d/next/Tests/2018-08-14-20-50-07.bpo-11192.g7TwYm.rst D Misc/NEWS.d/next/Tests/2018-08-16-18-48-47.bpo-34391.ouNfxC.rst D Misc/NEWS.d/next/Tests/2018-08-24-20-23-15.bpo-34490.vb2cx4.rst D Misc/NEWS.d/next/Tests/2018-08-25-13-28-18.bpo-34347.IsRDPB.rst D Misc/NEWS.d/next/Tests/2018-08-26-13-12-34.bpo-11193.H8fCGa.rst D Misc/NEWS.d/next/Tests/2018-08-29-16-30-52.bpo-34542.9stVAW.rst D Misc/NEWS.d/next/Tests/2018-09-04-15-16-42.bpo-34579.bp4HdM.rst D Misc/NEWS.d/next/Tests/2018-09-05-23-50-21.bpo-34594.tqL-GS.rst D Misc/NEWS.d/next/Tests/2018-09-09-14-36-59.bpo-34569.okj1Xh.rst D Misc/NEWS.d/next/Tests/2018-09-12-17-00-34.bpo-34200.dfxYQK.rst D Misc/NEWS.d/next/Tests/2018-09-13-09-53-15.bpo-34661.bdTamP.rst D Misc/NEWS.d/next/Tests/2018-09-13-20-58-07.bpo-34587.rCcxp3.rst D Misc/NEWS.d/next/Tests/2018-09-21-17-33-41.bpo-34537.GImYtZ.rst D Misc/NEWS.d/next/Tests/2018-10-09-23-51-07.bpo-23596.rdnert.rst D Misc/NEWS.d/next/Tests/2018-10-11-22-34-27.bpo-34962.0PLBi8.rst D Misc/NEWS.d/next/Tests/2018-10-27-13-41-55.bpo-34279.v0Xqxe.rst D Misc/NEWS.d/next/Tests/2018-11-04-20-17-09.bpo-21263.T3qo9r.rst D Misc/NEWS.d/next/Tests/2018-11-26-16-54-21.bpo-35317.jByGP2.rst D Misc/NEWS.d/next/Tests/2018-11-30-17-18-56.bpo-35352.8bD7GC.rst D Misc/NEWS.d/next/Tests/2018-12-09-01-27-29.bpo-33725.TaGayj.rst D Misc/NEWS.d/next/Tests/2018-12-10-13-18-37.bpo-26704.DBAN4c.rst D Misc/NEWS.d/next/Tests/2018-12-12-18-07-58.bpo-35412.kbuJor.rst D Misc/NEWS.d/next/Tests/2018-12-12-18-20-18.bpo-34279.DhKcuP.rst D Misc/NEWS.d/next/Tests/2018-12-16-23-36-47.bpo-35513.k4WHlA.rst D Misc/NEWS.d/next/Tests/2018-12-17-16-41-45.bpo-35519.RR3L_w.rst D Misc/NEWS.d/next/Tests/2018-12-18-22-36-53.bpo-35424.1Pz4IS.rst D Misc/NEWS.d/next/Tests/2018-12-18-23-20-39.bpo-31731.tcv85C.rst D Misc/NEWS.d/next/Tests/2019-01-04-21-34-53.bpo-35488.U7JJzP.rst D Misc/NEWS.d/next/Tests/2019-01-07-23-22-44.bpo-33717.GhHXv8.rst D Misc/NEWS.d/next/Tests/2019-01-07-23-34-41.bpo-32710.Hzo1b8.rst D Misc/NEWS.d/next/Tests/2019-01-10-18-35-42.bpo-35045.qdd6d9.rst D Misc/NEWS.d/next/Tests/2019-01-18-12-19-19.bpo-35772.sGBbsn.rst D Misc/NEWS.d/next/Tools-Demos/2017-09-26-10-11-21.bpo-31583.TM90_H.rst D Misc/NEWS.d/next/Tools-Demos/2017-12-07-20-51-20.bpo-32222.hPBcGT.rst D Misc/NEWS.d/next/Tools-Demos/2018-02-20-12-16-47.bpo-32885.dL5x7C.rst D Misc/NEWS.d/next/Tools-Demos/2018-03-02-16-23-31.bpo-25427.1mgMOG.rst D Misc/NEWS.d/next/Tools-Demos/2018-03-16-17-25-05.bpo-29673.m8QtaW.rst D Misc/NEWS.d/next/Tools-Demos/2018-03-26-18-54-24.bpo-31920.u_WKsT.rst D Misc/NEWS.d/next/Tools-Demos/2018-04-03-18-10-00.bpo-33189.QrXR00.rst D Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-16-53.bpo-32962.2YfdwI.rst D Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-23-07.bpo-32962.Q3Dwns.rst D Misc/NEWS.d/next/Tools-Demos/2018-07-24-00-11-44.bpo-20260.klmmqI.rst D Misc/NEWS.d/next/Tools-Demos/2018-10-15-13-22-28.bpo-34989.hU4fra.rst D Misc/NEWS.d/next/Tools-Demos/2019-02-01-12-22-37.bpo-35884.hJkMRD.rst D Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst D Misc/NEWS.d/next/Windows/2018-02-07-17-50-48.bpo-29248.Xzwj-6.rst D Misc/NEWS.d/next/Windows/2018-02-10-15-38-19.bpo-32370.kcKuct.rst D Misc/NEWS.d/next/Windows/2018-02-19-08-54-06.bpo-32457.vVP0Iz.rst D Misc/NEWS.d/next/Windows/2018-02-19-10-00-57.bpo-32409.nocuDg.rst D Misc/NEWS.d/next/Windows/2018-02-19-13-54-42.bpo-31966._Q3HPb.rst D Misc/NEWS.d/next/Windows/2018-02-23-00-47-13.bpo-32901.mGKz5_.rst D Misc/NEWS.d/next/Windows/2018-02-28-11-03-24.bpo-32903.1SXY4t.rst D Misc/NEWS.d/next/Windows/2018-03-07-01-33-33.bpo-33016.Z_Med0.rst D Misc/NEWS.d/next/Windows/2018-03-08-20-02-38.bpo-32890.3jzFzY.rst D Misc/NEWS.d/next/Windows/2018-04-13-11-28-55.bpo-33184.7YhqQE.rst D Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst D Misc/NEWS.d/next/Windows/2018-05-16-11-31-17.bpo-29097.9mqEuI.rst D Misc/NEWS.d/next/Windows/2018-06-04-09-20-53.bpo-33720.VKDXHK.rst D Misc/NEWS.d/next/Windows/2018-06-19-11-57-50.bpo-33895.zpblTy.rst D Misc/NEWS.d/next/Windows/2018-06-25-09-33-48.bpo-30237.EybiZA.rst D Misc/NEWS.d/next/Windows/2018-06-27-23-33-54.bpo-31546.zJlap-.rst D Misc/NEWS.d/next/Windows/2018-07-02-14-19-32.bpo-34006.7SgBT_.rst D Misc/NEWS.d/next/Windows/2018-07-11-15-58-06.bpo-34011.Ho_d5T.rst D Misc/NEWS.d/next/Windows/2018-07-25-16-13-12.bpo-34225.ngemNL.rst D Misc/NEWS.d/next/Windows/2018-08-21-19-28-23.bpo-34062.3gxsA3.rst D Misc/NEWS.d/next/Windows/2018-09-03-01-23-52.bpo-34532.N1HEbE.rst D Misc/NEWS.d/next/Windows/2018-09-04-23-13-19.bpo-34581.lnbC0k.rst D Misc/NEWS.d/next/Windows/2018-09-13-08-29-04.bpo-34603.2AB7sc.rst D Misc/NEWS.d/next/Windows/2018-09-22-11-02-35.bpo-34770.4lEUOd.rst D Misc/NEWS.d/next/Windows/2018-09-25-10-39-27.bpo-32557.Rs1bf9.rst D Misc/NEWS.d/next/Windows/2018-10-25-11-29-22.bpo-35067.RHWi7W.rst D Misc/NEWS.d/next/Windows/2018-10-30-13-39-17.bpo-34977.0l7_QV.rst D Misc/NEWS.d/next/Windows/2018-12-07-10-00-38.bpo-34977.agQJbD.rst D Misc/NEWS.d/next/Windows/2018-12-10-15-01-13.bpo-35401.9L1onG.rst D Misc/NEWS.d/next/Windows/2018-12-13-13-30-04.bpo-35402.n_mXb2.rst D Misc/NEWS.d/next/Windows/2018-12-28-07-25-47.bpo-35596.P9CEY2.rst D Misc/NEWS.d/next/Windows/2019-01-08-13-56-01.bpo-35596.oFvhcm.rst D Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst D Misc/NEWS.d/next/Windows/2019-01-21-05-18-14.bpo-35758.8LsY3l.rst D Misc/NEWS.d/next/Windows/2019-01-25-12-29-14.bpo-35797.MzyOK9.rst D Misc/NEWS.d/next/Windows/2019-01-25-12-46-36.bpo-35811.2hU-mm.rst D Misc/NEWS.d/next/Windows/2019-01-29-15-44-46.bpo-35854.Ww3z19.rst D Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst D Misc/NEWS.d/next/Windows/2019-02-02-22-12-23.bpo-35890.ccIjHH.rst D Misc/NEWS.d/next/macOS/2017-11-01-16-53-12.bpo-31903.K6jCVG.rst D Misc/NEWS.d/next/macOS/2018-02-27-17-33-15.bpo-32901.hQu0w3.rst D Misc/NEWS.d/next/macOS/2018-03-29-06-56-12.bpo-32726.urS9uX.rst D Misc/NEWS.d/next/macOS/2018-04-07-00-51-34.bpo-33184.3j208P.rst D Misc/NEWS.d/next/macOS/2018-05-16-13-25-58.bpo-13631.UIjDyY.rst D Misc/NEWS.d/next/macOS/2018-07-31-09-51-01.bpo-33635.KiscE-.rst D Misc/NEWS.d/next/macOS/2018-09-11-08-30-55.bpo-34405.UzIi0n.rst D Misc/NEWS.d/next/macOS/2018-10-17-14-36-08.bpo-24658.Naddgx.rst D Misc/NEWS.d/next/macOS/2018-10-18-23-54-55.bpo-35025.X4LFJg.rst D Misc/NEWS.d/next/macOS/2018-12-09-13-56-49.bpo-35401.n8B7X1.rst D Misc/NEWS.d/next/macOS/2018-12-21-18-44-30.bpo-35555.M58_K3.rst diff --git a/Misc/NEWS.d/3.8.0a1.rst b/Misc/NEWS.d/3.8.0a1.rst new file mode 100644 index 000000000000..d8c8f9fe4002 --- /dev/null +++ b/Misc/NEWS.d/3.8.0a1.rst @@ -0,0 +1,8977 @@ +.. bpo: 35746 +.. date: 2019-01-15-18-16-05 +.. nonce: nMSd0j +.. release date: 2019-02-03 +.. section: Security + +[CVE-2019-5010] Fix a NULL pointer deref in ssl module. The cert parser did +not handle CRL distribution points with empty DP or URI correctly. A +malicious or buggy certificate can result into segfault. + +.. + +.. bpo: 34812 +.. date: 2018-11-23-15-00-23 +.. nonce: 84VQnb +.. section: Security + +The :option:`-I` command line option (run Python in isolated mode) is now +also copied by the :mod:`multiprocessing` and :mod:`distutils` modules when +spawning child processes. Previously, only :option:`-E` and :option:`-s` +options (enabled by :option:`-I`) were copied. + +.. + +.. bpo: 34791 +.. date: 2018-09-24-18-49-25 +.. nonce: 78GmIG +.. section: Security + +The xml.sax and xml.dom.domreg no longer use environment variables to +override parser implementations when sys.flags.ignore_environment is set by +-E or -I arguments. + +.. + +.. bpo: 17239 +.. date: 2018-09-11-18-30-55 +.. nonce: kOpwK2 +.. section: Security + +The xml.sax and xml.dom.minidom parsers no longer processes external +entities by default. External DTD and ENTITY declarations no longer load +files or create network connections. + +.. + +.. bpo: 34623 +.. date: 2018-09-10-16-05-39 +.. nonce: Ua9jMv +.. section: Security + +CVE-2018-14647: The C accelerated _elementtree module now initializes hash +randomization salt from _Py_HashSecret instead of libexpat's default CSPRNG. + +.. + +.. bpo: 34405 +.. date: 2018-08-15-12-12-47 +.. nonce: qbHTH_ +.. section: Security + +Updated to OpenSSL 1.1.0i for Windows builds. + +.. + +.. bpo: 33871 +.. date: 2018-06-26-19-35-33 +.. nonce: S4HR9n +.. section: Security + +Fixed sending the part of the file in :func:`os.sendfile` on macOS. Using +the *trailers* argument could cause sending more bytes from the input file +than was specified. + +.. + +.. bpo: 32533 +.. date: 2018-05-28-08-55-30 +.. nonce: IzwkBI +.. section: Security + +Fixed thread-safety of error handling in _ssl. + +.. + +.. bpo: 33136 +.. date: 2018-03-25-12-05-43 +.. nonce: TzSN4x +.. section: Security + +Harden ssl module against LibreSSL CVE-2018-8970. +X509_VERIFY_PARAM_set1_host() is called with an explicit namelen. A new test +ensures that NULL bytes are not allowed. + +.. + +.. bpo: 33001 +.. date: 2018-03-05-10-09-51 +.. nonce: elj4Aa +.. section: Security + +Minimal fix to prevent buffer overrun in os.symlink on Windows + +.. + +.. bpo: 32981 +.. date: 2018-03-02-10-24-52 +.. nonce: O_qDyj +.. section: Security + +Regexes in difflib and poplib were vulnerable to catastrophic backtracking. +These regexes formed potential DOS vectors (REDOS). They have been +refactored. This resolves CVE-2018-1060 and CVE-2018-1061. Patch by Jamie +Davis. + +.. + +.. bpo: 28414 +.. date: 2017-08-06-14-43-45 +.. nonce: mzZ6vD +.. section: Security + +The ssl module now allows users to perform their own IDN en/decoding when +using SNI. + +.. + +.. bpo: 35877 +.. date: 2019-02-01-22-38-11 +.. nonce: Jrse8f +.. section: Core and Builtins + +Make parenthesis optional for named expressions in while statement. Patch by +Karthikeyan Singaravelan. + +.. + +.. bpo: 35814 +.. date: 2019-01-24-13-25-21 +.. nonce: r_MjA6 +.. section: Core and Builtins + +Allow same right hand side expressions in annotated assignments as in normal +ones. In particular, ``x: Tuple[int, int] = 1, 2`` (without parentheses on +the right) is now allowed. + +.. + +.. bpo: 35766 +.. date: 2019-01-22-19-17-27 +.. nonce: gh1tHZ +.. section: Core and Builtins + +Add the option to parse PEP 484 type comments in the ast module. (Off by +default.) This is merging the key functionality of the third party fork +thereof, [typed_ast](https://github.com/python/typed_ast). + +.. + +.. bpo: 35713 +.. date: 2019-01-22-18-50-21 +.. nonce: bTeUsa +.. section: Core and Builtins + +Reorganize Python initialization to get working exceptions and sys.stderr +earlier. + +.. + +.. bpo: 33416 +.. date: 2019-01-19-19-41-53 +.. nonce: VDeOU5 +.. section: Core and Builtins + +Add end line and end column position information to the Python AST nodes. +This is a C-level backwards incompatible change. + +.. + +.. bpo: 35720 +.. date: 2019-01-12-23-33-04 +.. nonce: LELKQx +.. section: Core and Builtins + +Fixed a minor memory leak in pymain_parse_cmdline_impl function in +Modules/main.c + +.. + +.. bpo: 35634 +.. date: 2019-01-05-18-39-49 +.. nonce: nVP_gs +.. section: Core and Builtins + +``func(**kwargs)`` will now raise an error when ``kwargs`` is a mapping +containing multiple entries with the same key. An error was already raised +when other keyword arguments are passed before ``**kwargs`` since Python +3.6. + +.. + +.. bpo: 35623 +.. date: 2018-12-31-02-37-20 +.. nonce: 24AQhY +.. section: Core and Builtins + +Fix a crash when sorting very long lists. Patch by Stephan Hohe. + +.. + +.. bpo: 35214 +.. date: 2018-12-30-15-36-23 +.. nonce: GWDQcv +.. section: Core and Builtins + +clang Memory Sanitizer build instrumentation was added to work around false +positives from posix, socket, time, test_io, and test_faulthandler. + +.. + +.. bpo: 35560 +.. date: 2018-12-22-22-19-51 +.. nonce: 9vMWSP +.. section: Core and Builtins + +Fix an assertion error in :func:`format` in debug build for floating point +formatting with "n" format, zero padding and small width. Release build is +not impacted. Patch by Karthikeyan Singaravelan. + +.. + +.. bpo: 35552 +.. date: 2018-12-21-13-29-30 +.. nonce: 1DzQQc +.. section: Core and Builtins + +Format characters ``%s`` and ``%V`` in :c:func:`PyUnicode_FromFormat` and +``%s`` in :c:func:`PyBytes_FromFormat` no longer read memory past the limit +if *precision* is specified. + +.. + +.. bpo: 35504 +.. date: 2018-12-15-14-01-45 +.. nonce: JtKczP +.. section: Core and Builtins + +Fix segfaults and :exc:`SystemError`\ s when deleting certain attributes. +Patch by Zackery Spytz. + +.. + +.. bpo: 35504 +.. date: 2018-12-15-00-47-41 +.. nonce: 9gVuen +.. section: Core and Builtins + +Fixed a SystemError when delete the characters_written attribute of an +OSError. + +.. + +.. bpo: 35494 +.. date: 2018-12-14-18-02-34 +.. nonce: IWOPtb +.. section: Core and Builtins + +Improved syntax error messages for unbalanced parentheses in f-string. + +.. + +.. bpo: 35444 +.. date: 2018-12-09-13-09-39 +.. nonce: 9kYn4V +.. section: Core and Builtins + +Fixed error handling in pickling methods when fail to look up builtin +"getattr". Sped up pickling iterators. + +.. + +.. bpo: 35436 +.. date: 2018-12-07-02-38-01 +.. nonce: 0VW7p9 +.. section: Core and Builtins + +Fix various issues with memory allocation error handling. Patch by Zackery +Spytz. + +.. + +.. bpo: 35423 +.. date: 2018-12-05-16-24-05 +.. nonce: UIie_O +.. section: Core and Builtins + +Separate the signal handling trigger in the eval loop from the "pending +calls" machinery. There is no semantic change and the difference in +performance is insignificant. + +.. + +.. bpo: 35357 +.. date: 2018-12-03-21-20-24 +.. nonce: rhhoiC +.. section: Core and Builtins + +Internal attributes' names of unittest.mock._Call and +unittest.mock.MagicProxy (name, parent & from_kall) are now prefixed with +_mock_ in order to prevent clashes with widely used object attributes. Fixed +minor typo in test function name. + +.. + +.. bpo: 35372 +.. date: 2018-12-01-19-20-53 +.. nonce: RwVJjZ +.. section: Core and Builtins + +Fixed the code page decoder for input longer than 2 GiB containing +undecodable bytes. + +.. + +.. bpo: 35336 +.. date: 2018-11-29-23-59-52 +.. nonce: 8LOz4F +.. section: Core and Builtins + +Fix PYTHONCOERCECLOCALE=1 environment variable: only coerce the C locale if +the LC_CTYPE locale is "C". + +.. + +.. bpo: 31241 +.. date: 2018-11-21-14-05-51 +.. nonce: Kin10- +.. section: Core and Builtins + +The *lineno* and *col_offset* attributes of AST nodes for list +comprehensions, generator expressions and tuples are now point to the +opening parenthesis or square brace. For tuples without parenthesis they +point to the position of the first item. + +.. + +.. bpo: 33954 +.. date: 2018-11-20-22-33-38 +.. nonce: RzSngM +.. section: Core and Builtins + +For :meth:`str.format`, :meth:`float.__format__` and +:meth:`complex.__format__` methods for non-ASCII decimal point when using +the "n" formatter. + +.. + +.. bpo: 35269 +.. date: 2018-11-17-10-18-29 +.. nonce: gjm1LO +.. section: Core and Builtins + +Fix a possible segfault involving a newly-created coroutine. Patch by +Zackery Spytz. + +.. + +.. bpo: 35224 +.. date: 2018-11-13-14-26-54 +.. nonce: F0B6UQ +.. section: Core and Builtins + +Implement :pep:`572` (assignment expressions). Patch by Emily Morehouse. + +.. + +.. bpo: 32492 +.. date: 2018-11-13-01-03-10 +.. nonce: voIdcp +.. section: Core and Builtins + +Speed up :class:`namedtuple` attribute access by 1.6x using a C fast-path +for the name descriptors. Patch by Pablo Galindo. + +.. + +.. bpo: 35214 +.. date: 2018-11-13-00-40-35 +.. nonce: OQBjph +.. section: Core and Builtins + +Fixed an out of bounds memory access when parsing a truncated unicode escape +sequence at the end of a string such as ``'\N'``. It would read one byte +beyond the end of the memory allocation. + +.. + +.. bpo: 35214 +.. date: 2018-11-12-11-38-06 +.. nonce: PCHKbX +.. section: Core and Builtins + +The interpreter and extension modules have had annotations added so that +they work properly under clang's Memory Sanitizer. A new configure flag +--with-memory-sanitizer has been added to make test builds of this nature +easier to perform. + +.. + +.. bpo: 35193 +.. date: 2018-11-08-15-00-58 +.. nonce: HzPS6R +.. section: Core and Builtins + +Fix an off by one error in the bytecode peephole optimizer where it could +read bytes beyond the end of bounds of an array when removing unreachable +code. This bug was present in every release of Python 3.6 and 3.7 until now. + +.. + +.. bpo: 35169 +.. date: 2018-11-05-21-19-05 +.. nonce: _FyPI2 +.. section: Core and Builtins + +Improved error messages for forbidden assignments. + +.. + +.. bpo: 34022 +.. date: 2018-11-04-18-13-40 +.. nonce: U3btVj +.. section: Core and Builtins + +Fix handling of hash-based bytecode files in :mod:`zipimport`. Patch by +Elvis Pranskevichus. + +.. + +.. bpo: 28401 +.. date: 2018-11-03-10-37-29 +.. nonce: RprDIg +.. section: Core and Builtins + +Debug builds will no longer to attempt to import extension modules built for +the ABI as they were never compatible to begin with. Patch by Stefano +Rivera. + +.. + +.. bpo: 29341 +.. date: 2018-10-25-20-53-32 +.. nonce: jH-AMF +.. section: Core and Builtins + +Clarify in the docstrings of :mod:`os` methods that path-like objects are +also accepted as input parameters. + +.. + +.. bpo: 35050 +.. date: 2018-10-23-15-03-53 +.. nonce: 49wraS +.. section: Core and Builtins + +:mod:`socket`: Fix off-by-one bug in length check for ``AF_ALG`` name and +type. + +.. + +.. bpo: 29743 +.. date: 2018-10-21-17-43-48 +.. nonce: aeCcKR +.. section: Core and Builtins + +Raise :exc:`ValueError` instead of :exc:`OverflowError` in case of a +negative ``_length_`` in a :class:`ctypes.Array` subclass. Also raise +:exc:`TypeError` instead of :exc:`AttributeError` for non-integer +``_length_``. Original patch by Oren Milman. + +.. + +.. bpo: 16806 +.. date: 2018-10-20-18-05-58 +.. nonce: zr3A9N +.. section: Core and Builtins + +Fix ``lineno`` and ``col_offset`` for multi-line string tokens. + +.. + +.. bpo: 35029 +.. date: 2018-10-20-10-26-15 +.. nonce: t4tZcQ +.. section: Core and Builtins + +:exc:`SyntaxWarning` raised as an exception at code generation time will be +now replaced with a :exc:`SyntaxError` for better error reporting. + +.. + +.. bpo: 34983 +.. date: 2018-10-14-17-26-41 +.. nonce: l8XaZd +.. section: Core and Builtins + +Expose :meth:`symtable.Symbol.is_nonlocal` in the symtable module. Patch by +Pablo Galindo. + +.. + +.. bpo: 34974 +.. date: 2018-10-13-22-24-19 +.. nonce: 7LgTc2 +.. section: Core and Builtins + +:class:`bytes` and :class:`bytearray` constructors no longer convert +unexpected exceptions (e.g. :exc:`MemoryError` and :exc:`KeyboardInterrupt`) +to :exc:`TypeError`. + +.. + +.. bpo: 34939 +.. date: 2018-10-13-17-40-15 +.. nonce: 0gpxlJ +.. section: Core and Builtins + +Allow annotated names in module namespace that are declared global before +the annotation happens. Patch by Pablo Galindo. + +.. + +.. bpo: 34973 +.. date: 2018-10-13-16-42-03 +.. nonce: B5M-3g +.. section: Core and Builtins + +Fixed crash in :func:`bytes` when the :class:`list` argument is mutated +while it is iterated. + +.. + +.. bpo: 34876 +.. date: 2018-10-06-14-02-51 +.. nonce: oBKBA4 +.. section: Core and Builtins + +The *lineno* and *col_offset* attributes of the AST for decorated function +and class refer now to the position of the corresponding ``def``, ``async +def`` and ``class`` instead of the position of the first decorator. This +leads to more correct line reporting in tracing. This is the only case when +the position of child AST nodes can preceed the position of the parent AST +node. + +.. + +.. bpo: 34879 +.. date: 2018-10-02-22-55-11 +.. nonce: 7VNH2a +.. section: Core and Builtins + +Fix a possible null pointer dereference in bytesobject.c. Patch by Zackery +Spytz. + +.. + +.. bpo: 34784 +.. date: 2018-10-02-09-10-47 +.. nonce: 07hdgD +.. section: Core and Builtins + +Fix the implementation of PyStructSequence_NewType in order to create heap +allocated StructSequences. + +.. + +.. bpo: 32912 +.. date: 2018-10-01-10-41-53 +.. nonce: JeIOdM +.. section: Core and Builtins + +A :exc:`SyntaxWarning` is now emitted instead of a :exc:`DeprecationWarning` +for invalid escape sequences in string and bytes literals. + +.. + +.. bpo: 34854 +.. date: 2018-09-30-19-27-13 +.. nonce: 6TKTcB +.. section: Core and Builtins + +Fixed a crash in compiling string annotations containing a lambda with a +keyword-only argument that doesn't have a default value. + +.. + +.. bpo: 34850 +.. date: 2018-09-30-11-19-55 +.. nonce: CbgDwb +.. section: Core and Builtins + +The compiler now produces a :exc:`SyntaxWarning` when identity checks +(``is`` and ``is not``) are used with certain types of literals (e.g. +strings, ints). These can often work by accident in CPython, but are not +guaranteed by the language spec. The warning advises users to use equality +tests (``==`` and ``!=``) instead. + +.. + +.. bpo: 34824 +.. date: 2018-09-27-11-10-02 +.. nonce: VLlCaU +.. section: Core and Builtins + +Fix a possible null pointer dereference in Modules/_ssl.c. Patch by Zackery +Spytz. + +.. + +.. bpo: 30156 +.. date: 2018-09-24-17-51-15 +.. nonce: pH0j5j +.. section: Core and Builtins + +The C function ``property_descr_get()`` uses a "cached" tuple to optimize +function calls. But this tuple can be discovered in debug mode with +:func:`sys.getobjects()`. Remove the optimization, it's not really worth it +and it causes 3 different crashes last years. + +.. + +.. bpo: 34762 +.. date: 2018-09-21-11-06-56 +.. nonce: 1nN53m +.. section: Core and Builtins + +Fix contextvars C API to use PyObject* pointer types. + +.. + +.. bpo: 34751 +.. date: 2018-09-20-15-41-58 +.. nonce: Yiv0pV +.. section: Core and Builtins + +The hash function for tuples is now based on xxHash which gives better +collision results on (formerly) pathological cases. Additionally, on 64-bit +systems it improves tuple hashes in general. Patch by Jeroen Demeyer with +substantial contributions by Tim Peters. + +.. + +.. bpo: 34735 +.. date: 2018-09-19-06-57-34 +.. nonce: -3mrSJ +.. section: Core and Builtins + +Fix a memory leak in Modules/timemodule.c. Patch by Zackery Spytz. + +.. + +.. bpo: 34683 +.. date: 2018-09-15-19-32-34 +.. nonce: msCiQE +.. section: Core and Builtins + +Fixed a bug where some SyntaxError error pointed to locations that were +off-by-one. + +.. + +.. bpo: 34651 +.. date: 2018-09-13-12-21-08 +.. nonce: v-bUeV +.. section: Core and Builtins + +Only allow the main interpreter to fork. The avoids the possibility of +affecting the main interpreter, which is critical to operation of the +runtime. + +.. + +.. bpo: 34653 +.. date: 2018-09-13-12-06-09 +.. nonce: z8NE-i +.. section: Core and Builtins + +Remove unused function PyParser_SimpleParseStringFilename. + +.. + +.. bpo: 32236 +.. date: 2018-09-11-23-50-40 +.. nonce: 3RupnN +.. section: Core and Builtins + +Warn that line buffering is not supported if :func:`open` is called with +binary mode and ``buffering=1``. + +.. + +.. bpo: 34641 +.. date: 2018-09-11-23-12-33 +.. nonce: gFBCc9 +.. section: Core and Builtins + +Further restrict the syntax of the left-hand side of keyword arguments in +function calls. In particular, ``f((keyword)=arg)`` is now disallowed. + +.. + +.. bpo: 34637 +.. date: 2018-09-11-17-25-44 +.. nonce: HSLqY4 +.. section: Core and Builtins + +Make the *start* argument to *sum()* visible as a keyword argument. + +.. + +.. bpo: 1621 +.. date: 2018-09-11-15-19-37 +.. nonce: 7o19yG +.. section: Core and Builtins + +Do not assume signed integer overflow behavior (C undefined behavior) when +performing set hash table resizing. + +.. + +.. bpo: 34588 +.. date: 2018-09-05-22-56-52 +.. nonce: UIuPmL +.. section: Core and Builtins + +Fix an off-by-one in the recursive call pruning feature of traceback +formatting. + +.. + +.. bpo: 34485 +.. date: 2018-08-29-11-04-19 +.. nonce: c2AFdp +.. section: Core and Builtins + +On Windows, the LC_CTYPE is now set to the user preferred locale at startup. +Previously, the LC_CTYPE locale was "C" at startup, but changed when calling +setlocale(LC_CTYPE, "") or setlocale(LC_ALL, ""). + +.. + +.. bpo: 34485 +.. date: 2018-08-29-09-27-47 +.. nonce: 5aJCmw +.. section: Core and Builtins + +Standard streams like sys.stdout now use the "surrogateescape" error +handler, instead of "strict", on the POSIX locale (when the C locale is not +coerced and the UTF-8 Mode is disabled). + +.. + +.. bpo: 34485 +.. date: 2018-08-28-23-01-14 +.. nonce: dq1Kqk +.. section: Core and Builtins + +Fix the error handler of standard streams like sys.stdout: +PYTHONIOENCODING=":" is now ignored instead of setting the error handler to +"strict". + +.. + +.. bpo: 34485 +.. date: 2018-08-28-17-48-40 +.. nonce: aFwck2 +.. section: Core and Builtins + +Python now gets the locale encoding with C code to initialize the encoding +of standard streams like sys.stdout. Moreover, the encoding is now +initialized to the Python codec name to get a normalized encoding name and +to ensure that the codec is loaded. The change avoids importing _bootlocale +and _locale modules at startup by default. + +.. + +.. bpo: 34527 +.. date: 2018-08-28-11-53-39 +.. nonce: aBEX9b +.. section: Core and Builtins + +On FreeBSD, Py_DecodeLocale() and Py_EncodeLocale() now also forces the +ASCII encoding if the LC_CTYPE locale is "POSIX", not only if the LC_CTYPE +locale is "C". + +.. + +.. bpo: 34527 +.. date: 2018-08-28-11-52-13 +.. nonce: sh5MQJ +.. section: Core and Builtins + +The UTF-8 Mode is now also enabled by the "POSIX" locale, not only by the +"C" locale. + +.. + +.. bpo: 34403 +.. date: 2018-08-28-10-49-55 +.. nonce: 4Q3LzP +.. section: Core and Builtins + +On HP-UX with C or POSIX locale, sys.getfilesystemencoding() now returns +"ascii" instead of "roman8" (when the UTF-8 Mode is disabled and the C +locale is not coerced). + +.. + +.. bpo: 34523 +.. date: 2018-08-28-01-45-01 +.. nonce: aUUkc3 +.. section: Core and Builtins + +The Python filesystem encoding is now read earlier during the Python +initialization. + +.. + +.. bpo: 12458 +.. date: 2018-08-15-20-46-49 +.. nonce: ApHbx5 +.. section: Core and Builtins + +Tracebacks show now correct line number for subexpressions in multiline +expressions. Tracebacks show now the line number of the first line for +multiline expressions instead of the line number of the last subexpression. + +.. + +.. bpo: 34408 +.. date: 2018-08-14-22-35-19 +.. nonce: aomWYW +.. section: Core and Builtins + +Prevent a null pointer dereference and resource leakage in +``PyInterpreterState_New()``. + +.. + +.. bpo: 34400 +.. date: 2018-08-14-03-52-43 +.. nonce: AJD0bz +.. section: Core and Builtins + +Fix undefined behavior in parsetok.c. Patch by Zackery Spytz. + +.. + +.. bpo: 33073 +.. date: 2018-08-12-16-03-58 +.. nonce: XWu1Jh +.. section: Core and Builtins + +Added as_integer_ratio to ints to make them more interoperable with floats. + +.. + +.. bpo: 34377 +.. date: 2018-08-10-15-05-00 +.. nonce: EJMMY4 +.. section: Core and Builtins + +Update valgrind suppression list to use +``_PyObject_Free``/``_PyObject_Realloc`` instead of +``PyObject_Free``/``PyObject_Realloc``. + +.. + +.. bpo: 34353 +.. date: 2018-08-09-18-42-49 +.. nonce: GIOm_8 +.. section: Core and Builtins + +Added the "socket" option in the `stat.filemode()` Python implementation to +match the C implementation. + +.. + +.. bpo: 34320 +.. date: 2018-08-02-22-34-59 +.. nonce: hNshAA +.. section: Core and Builtins + +Fix ``dict(od)`` didn't copy iteration order of OrderedDict. + +.. + +.. bpo: 34113 +.. date: 2018-07-28-10-34-00 +.. nonce: eZ5FWV +.. section: Core and Builtins + +Fixed crash on debug builds when opcode stack was adjusted with negative +numbers. Patch by Constantin Petrisor. + +.. + +.. bpo: 34100 +.. date: 2018-07-27-20-04-52 +.. nonce: ypJQX1 +.. section: Core and Builtins + +Compiler now merges constants in tuples and frozensets recursively. Code +attributes like ``co_names`` are merged too. + +.. + +.. bpo: 34151 +.. date: 2018-07-25-20-26-02 +.. nonce: Q2pK9Q +.. section: Core and Builtins + +Performance of list concatenation, repetition and slicing operations is +slightly improved. Patch by Sergey Fedoseev. + +.. + +.. bpo: 34170 +.. date: 2018-07-25-19-23-33 +.. nonce: v1h_H2 +.. section: Core and Builtins + +-X dev: it is now possible to override the memory allocator using +PYTHONMALLOC even if the developer mode is enabled. + +.. + +.. bpo: 33237 +.. date: 2018-07-24-12-54-57 +.. nonce: O95mps +.. section: Core and Builtins + +Improved :exc:`AttributeError` message for partially initialized module. + +.. + +.. bpo: 34149 +.. date: 2018-07-23-21-49-05 +.. nonce: WSV-_g +.. section: Core and Builtins + +Fix min and max functions to get default behavior when key is None. + +.. + +.. bpo: 34125 +.. date: 2018-07-23-16-34-03 +.. nonce: jCl2Q2 +.. section: Core and Builtins + +Profiling of unbound built-in methods now works when ``**kwargs`` is given. + +.. + +.. bpo: 34141 +.. date: 2018-07-18-08-36-58 +.. nonce: Fo7Q5r +.. section: Core and Builtins + +Optimized pickling atomic types (None, bool, int, float, bytes, str). + +.. + +.. bpo: 34126 +.. date: 2018-07-16-20-55-29 +.. nonce: mBVmgc +.. section: Core and Builtins + +Fix crashes when profiling certain invalid calls of unbound methods. Patch +by Jeroen Demeyer. + +.. + +.. bpo: 24618 +.. date: 2018-07-14-14-01-37 +.. nonce: iTKjD_ +.. section: Core and Builtins + +Fixed reading invalid memory when create the code object with too small +varnames tuple or too large argument counts. + +.. + +.. bpo: 34068 +.. date: 2018-07-14-08-58-46 +.. nonce: 9xfM55 +.. section: Core and Builtins + +In :meth:`io.IOBase.close`, ensure that the :attr:`~io.IOBase.closed` +attribute is not set with a live exception. Patch by Zackery Spytz and +Serhiy Storchaka. + +.. + +.. bpo: 34087 +.. date: 2018-07-13-22-09-55 +.. nonce: I1Bxfc +.. section: Core and Builtins + +Fix buffer overflow while converting unicode to numeric values. + +.. + +.. bpo: 34080 +.. date: 2018-07-10-11-24-16 +.. nonce: 8t7PtO +.. section: Core and Builtins + +Fixed a memory leak in the compiler when it raised some uncommon errors +during tokenizing. + +.. + +.. bpo: 34066 +.. date: 2018-07-07-20-15-34 +.. nonce: y9vs6s +.. section: Core and Builtins + +Disabled interruption by Ctrl-C between calling ``open()`` and entering a +**with** block in ``with open()``. + +.. + +.. bpo: 34042 +.. date: 2018-07-05-15-51-29 +.. nonce: Gr9XUH +.. section: Core and Builtins + +Fix dict.copy() to maintain correct total refcount (as reported by +sys.gettotalrefcount()). + +.. + +.. bpo: 33418 +.. date: 2018-07-03-19-00-10 +.. nonce: cfGm3n +.. section: Core and Builtins + +Fix potential memory leak in function object when it creates reference +cycle. + +.. + +.. bpo: 33985 +.. date: 2018-06-27-18-56-41 +.. nonce: ILJ3Af +.. section: Core and Builtins + +Implement contextvars.ContextVar.name attribute. + +.. + +.. bpo: 33956 +.. date: 2018-06-25-20-42-44 +.. nonce: 1qoTwD +.. section: Core and Builtins + +Update vendored Expat library copy to version 2.2.5. + +.. + +.. bpo: 24596 +.. date: 2018-06-25-16-54-05 +.. nonce: Rkwova +.. section: Core and Builtins + +Decref the module object in :c:func:`PyRun_SimpleFileExFlags` before calling +:c:func:`PyErr_Print()`. Patch by Zackery Spytz. + +.. + +.. bpo: 33451 +.. date: 2018-06-23-15-32-02 +.. nonce: sWN-1l +.. section: Core and Builtins + +Close directly executed pyc files before calling ``PyEval_EvalCode()``. + +.. + +.. bpo: 1617161 +.. date: 2018-06-21-21-42-15 +.. nonce: tSo2yM +.. section: Core and Builtins + +The hash of :class:`BuiltinMethodType` instances (methods of built-in +classes) now depends on the hash of the identity of *__self__* instead of +its value. The hash and equality of :class:`ModuleType` and +:class:`MethodWrapperType` instances (methods of user-defined classes and +some methods of built-in classes like ``str.__add__``) now depend on the +hash and equality of the identity of *__self__* instead of its value. +:class:`MethodWrapperType` instances no longer support ordering. + +.. + +.. bpo: 33824 +.. date: 2018-06-15-19-39-06 +.. nonce: DfWHT3 +.. section: Core and Builtins + +Fix "LC_ALL=C python3.7 -V": reset properly the command line parser when the +encoding changes after reading the Python configuration. + +.. + +.. bpo: 33803 +.. date: 2018-06-07-20-18-38 +.. nonce: n-Nq6_ +.. section: Core and Builtins + +Fix a crash in hamt.c caused by enabling GC tracking for an object that +hadn't all of its fields set to NULL. + +.. + +.. bpo: 33738 +.. date: 2018-06-07-18-34-19 +.. nonce: ODZS7a +.. section: Core and Builtins + +Seven macro incompatibilities with the Limited API were fixed, and the +macros :c:func:`PyIter_Check`, :c:func:`PyIndex_Check` and +:c:func:`PyExceptionClass_Name` were added as functions. A script for +automatic macro checks was added. + +.. + +.. bpo: 33786 +.. date: 2018-06-06-23-24-40 +.. nonce: lBvT8z +.. section: Core and Builtins + +Fix asynchronous generators to handle GeneratorExit in athrow() correctly + +.. + +.. bpo: 30167 +.. date: 2018-06-05-15-49-02 +.. nonce: e956hA +.. section: Core and Builtins + +``PyRun_SimpleFileExFlags`` removes ``__cached__`` from module in addition +to ``__file__``. + +.. + +.. bpo: 33706 +.. date: 2018-05-31-14-50-04 +.. nonce: ztlH04 +.. section: Core and Builtins + +Fix a crash in Python initialization when parsing the command line options. +Thanks Christoph Gohlke for the bug report and the fix! + +.. + +.. bpo: 33597 +.. date: 2018-05-28-21-17-31 +.. nonce: r0ToM4 +.. section: Core and Builtins + +Reduce ``PyGC_Head`` size from 3 words to 2 words. + +.. + +.. bpo: 30654 +.. date: 2018-05-28-12-28-53 +.. nonce: 9fDJye +.. section: Core and Builtins + +Fixed reset of the SIGINT handler to SIG_DFL on interpreter shutdown even +when there was a custom handler set previously. Patch by Philipp Kerling. + +.. + +.. bpo: 33622 +.. date: 2018-05-23-20-46-14 +.. nonce: xPucO9 +.. section: Core and Builtins + +Fixed a leak when the garbage collector fails to add an object with the +``__del__`` method or referenced by it into the :data:`gc.garbage` list. +:c:func:`PyGC_Collect` can now be called when an exception is set and +preserves it. + +.. + +.. bpo: 33462 +.. date: 2018-05-23-17-18-02 +.. nonce: gurbpbrhe +.. section: Core and Builtins + +Make dict and dict views reversible. Patch by R?mi Lapeyre. + +.. + +.. bpo: 23722 +.. date: 2018-05-17-13-06-36 +.. nonce: xisqZk +.. section: Core and Builtins + +A :exc:`RuntimeError` is now raised when the custom metaclass doesn't +provide the ``__classcell__`` entry in the namespace passed to +``type.__new__``. A :exc:`DeprecationWarning` was emitted in Python +3.6--3.7. + +.. + +.. bpo: 33499 +.. date: 2018-05-15-10-48-47 +.. nonce: uBEc06 +.. section: Core and Builtins + +Add :envvar:`PYTHONPYCACHEPREFIX` environment variable and :option:`-X` +``pycache_prefix`` command-line option to set an alternate root directory +for writing module bytecode cache files. + +.. + +.. bpo: 25711 +.. date: 2018-05-14-18-54-03 +.. nonce: 9xfq-v +.. section: Core and Builtins + +The :mod:`zipimport` module has been rewritten in pure Python. + +.. + +.. bpo: 33509 +.. date: 2018-05-14-17-31-02 +.. nonce: pIUfTd +.. section: Core and Builtins + +Fix module_globals parameter of warnings.warn_explicit(): don't crash if +module_globals is not a dict. + +.. + +.. bpo: 31849 +.. date: 2018-05-14-11-00-00 +.. nonce: EmHaH4 +.. section: Core and Builtins + +Fix signed/unsigned comparison warning in pyhash.c. + +.. + +.. bpo: 33475 +.. date: 2018-05-13-01-26-18 +.. nonce: rI0y1U +.. section: Core and Builtins + +Fixed miscellaneous bugs in converting annotations to strings and optimized +parentheses in the string representation. + +.. + +.. bpo: 20104 +.. date: 2018-05-05-23-26-58 +.. nonce: tDBciE +.. section: Core and Builtins + +Added support for the `setpgroup`, `resetids`, `setsigmask`, `setsigdef` and +`scheduler` parameters of `posix_spawn`. Patch by Pablo Galindo. + +.. + +.. bpo: 33391 +.. date: 2018-05-02-08-36-03 +.. nonce: z4a7rb +.. section: Core and Builtins + +Fix a leak in set_symmetric_difference(). + +.. + +.. bpo: 33363 +.. date: 2018-04-26-22-48-28 +.. nonce: 8RCnN2 +.. section: Core and Builtins + +Raise a SyntaxError for ``async with`` and ``async for`` statements outside +of async functions. + +.. + +.. bpo: 28055 +.. date: 2018-04-25-20-44-42 +.. nonce: f49kfC +.. section: Core and Builtins + +Fix unaligned accesses in siphash24(). Patch by Rolf Eike Beer. + +.. + +.. bpo: 33128 +.. date: 2018-04-24-22-31-04 +.. nonce: g2yLuf +.. section: Core and Builtins + +Fix a bug that causes PathFinder to appear twice on sys.meta_path. Patch by +Pablo Galindo Salgado. + +.. + +.. bpo: 33331 +.. date: 2018-04-22-13-41-59 +.. nonce: s_DxdL +.. section: Core and Builtins + +Modules imported last are now cleared first at interpreter shutdown. + +.. + +.. bpo: 33312 +.. date: 2018-04-19-08-30-07 +.. nonce: mDe2iL +.. section: Core and Builtins + +Fixed clang ubsan (undefined behavior sanitizer) warnings in dictobject.c by +adjusting how the internal struct _dictkeysobject shared keys structure is +declared. + +.. + +.. bpo: 33305 +.. date: 2018-04-18-14-17-44 +.. nonce: 9z3dDH +.. section: Core and Builtins + +Improved syntax error messages for invalid numerical literals. + +.. + +.. bpo: 33306 +.. date: 2018-04-18-12-23-30 +.. nonce: tSM3cp +.. section: Core and Builtins + +Improved syntax error messages for unbalanced parentheses. + +.. + +.. bpo: 33234 +.. date: 2018-04-17-01-24-51 +.. nonce: l9IDtp +.. section: Core and Builtins + +The list constructor will pre-size and not over-allocate when the input +lenght is known. + +.. + +.. bpo: 33270 +.. date: 2018-04-14-13-12-50 +.. nonce: UmVV6i +.. section: Core and Builtins + +Intern the names for all anonymous code objects. Patch by Zackery Spytz. + +.. + +.. bpo: 30455 +.. date: 2018-04-14-11-02-57 +.. nonce: ANRwjo +.. section: Core and Builtins + +The C and Python code and the documentation related to tokens are now +generated from a single source file :file:`Grammar/Tokens`. + +.. + +.. bpo: 33176 +.. date: 2018-04-13-22-31-09 +.. nonce: PB9com +.. section: Core and Builtins + +Add a ``toreadonly()`` method to memoryviews. + +.. + +.. bpo: 33231 +.. date: 2018-04-05-22-20-44 +.. nonce: 3Jmo0q +.. section: Core and Builtins + +Fix potential memory leak in ``normalizestring()``. + +.. + +.. bpo: 33205 +.. date: 2018-04-03-00-58-41 +.. nonce: lk2F3r +.. section: Core and Builtins + +Change dict growth function from +``round_up_to_power_2(used*2+hashtable_size/2)`` to +``round_up_to_power_2(used*3)``. Previously, dict is shrinked only when +``used == 0``. Now dict has more chance to be shrinked. + +.. + +.. bpo: 29922 +.. date: 2018-04-03-00-30-25 +.. nonce: CdLuMl +.. section: Core and Builtins + +Improved error messages in 'async with' when ``__aenter__()`` or +``__aexit__()`` return non-awaitable object. + +.. + +.. bpo: 33199 +.. date: 2018-04-02-09-32-40 +.. nonce: TPnxQu +.. section: Core and Builtins + +Fix ``ma_version_tag`` in dict implementation is uninitialized when copying +from key-sharing dict. + +.. + +.. bpo: 33053 +.. date: 2018-03-25-19-49-06 +.. nonce: V3xlsH +.. section: Core and Builtins + +When using the -m switch, sys.path[0] is now explicitly expanded as the +*starting* working directory, rather than being left as the empty path +(which allows imports from the current working directory at the time of the +import) + +.. + +.. bpo: 33138 +.. date: 2018-03-25-19-25-14 +.. nonce: aSqudH +.. section: Core and Builtins + +Changed standard error message for non-pickleable and non-copyable types. It +now says "cannot pickle" instead of "can't pickle" or "cannot serialize". + +.. + +.. bpo: 33018 +.. date: 2018-03-22-23-09-06 +.. nonce: 0ncEJV +.. section: Core and Builtins + +Improve consistency of errors raised by ``issubclass()`` when called with a +non-class and an abstract base class as the first and second arguments, +respectively. Patch by Josh Bronson. + +.. + +.. bpo: 33083 +.. date: 2018-03-19-00-59-20 +.. nonce: Htztjl +.. section: Core and Builtins + +``math.factorial`` no longer accepts arguments that are not int-like. Patch +by Pablo Galindo. + +.. + +.. bpo: 33041 +.. date: 2018-03-18-13-56-14 +.. nonce: XwPhI2 +.. section: Core and Builtins + +Added new opcode :opcode:`END_ASYNC_FOR` and fixes the following issues: + +* Setting global :exc:`StopAsyncIteration` no longer breaks ``async for`` + loops. +* Jumping into an ``async for`` loop is now disabled. +* Jumping out of an ``async for`` loop no longer corrupts the stack. + +.. + +.. bpo: 25750 +.. date: 2018-03-14-21-42-17 +.. nonce: lxgkQz +.. section: Core and Builtins + +Fix rare Python crash due to bad refcounting in ``type_getattro()`` if a +descriptor deletes itself from the class. Patch by Jeroen Demeyer. + +.. + +.. bpo: 33041 +.. date: 2018-03-10-15-16-40 +.. nonce: -ak5Fk +.. section: Core and Builtins + +Fixed bytecode generation for "async for" with a complex target. A +StopAsyncIteration raised on assigning or unpacking will be now propagated +instead of stopping the iteration. + +.. + +.. bpo: 33026 +.. date: 2018-03-08-09-48-38 +.. nonce: QZA3Ba +.. section: Core and Builtins + +Fixed jumping out of "with" block by setting f_lineno. + +.. + +.. bpo: 33005 +.. date: 2018-03-06-12-19-19 +.. nonce: LP-V2U +.. section: Core and Builtins + +Fix a crash on fork when using a custom memory allocator (ex: using +PYTHONMALLOC env var). _PyGILState_Reinit() and _PyInterpreterState_Enable() +now use the default RAW memory allocator to allocate a new interpreters +mutex on fork. + +.. + +.. bpo: 32911 +.. date: 2018-02-27-20-57-00 +.. nonce: cmKfco +.. section: Core and Builtins + +Due to unexpected compatibility issues discovered during downstream beta +testing, reverted :issue:`29463`. ``docstring`` field is removed from +Module, ClassDef, FunctionDef, and AsyncFunctionDef ast nodes which was +added in 3.7a1. Docstring expression is restored as a first statement in +their body. Based on patch by Inada Naoki. + +.. + +.. bpo: 17288 +.. date: 2018-02-27-13-36-21 +.. nonce: Gdj24S +.. section: Core and Builtins + +Prevent jumps from 'return' and 'exception' trace events. + +.. + +.. bpo: 32946 +.. date: 2018-02-25-10-52-40 +.. nonce: Lo09rG +.. section: Core and Builtins + +Importing names from already imported module with "from ... import ..." is +now 30% faster if the module is not a package. + +.. + +.. bpo: 32932 +.. date: 2018-02-24-21-51-42 +.. nonce: 2cz31L +.. section: Core and Builtins + +Make error message more revealing when there are non-str objects in +``__all__``. + +.. + +.. bpo: 32925 +.. date: 2018-02-24-00-07-05 +.. nonce: e-7Ufh +.. section: Core and Builtins + +Optimized iterating and containing test for literal lists consisting of +non-constants: ``x in [a, b]`` and ``for x in [a, b]``. The case of all +constant elements already was optimized. + +.. + +.. bpo: 32889 +.. date: 2018-02-20-21-53-48 +.. nonce: J6eWy5 +.. section: Core and Builtins + +Update Valgrind suppression list to account for the rename of +``Py_ADDRESS_IN_RANG`` to ``address_in_range``. + +.. + +.. bpo: 32836 +.. date: 2018-02-14-12-35-47 +.. nonce: bThJnx +.. section: Core and Builtins + +Don't use temporary variables in cases of list/dict/set comprehensions + +.. + +.. bpo: 31356 +.. date: 2018-02-02-08-50-46 +.. nonce: MNwUOQ +.. section: Core and Builtins + +Remove the new API added in bpo-31356 (gc.ensure_disabled() context +manager). + +.. + +.. bpo: 32305 +.. date: 2018-02-01-10-56-41 +.. nonce: dkU9Qa +.. section: Core and Builtins + +For namespace packages, ensure that both ``__file__`` and +``__spec__.origin`` are set to None. + +.. + +.. bpo: 32303 +.. date: 2018-02-01-10-16-28 +.. nonce: VsvhSl +.. section: Core and Builtins + +Make sure ``__spec__.loader`` matches ``__loader__`` for namespace packages. + +.. + +.. bpo: 32711 +.. date: 2018-01-29-14-36-37 +.. nonce: 8hQFJP +.. section: Core and Builtins + +Fix the warning messages for Python/ast_unparse.c. Patch by St?phane Wirtel + +.. + +.. bpo: 32583 +.. date: 2018-01-26-21-20-21 +.. nonce: Fh3fau +.. section: Core and Builtins + +Fix possible crashing in builtin Unicode decoders caused by write +out-of-bound errors when using customized decode error handlers. + +.. + +.. bpo: 32489 +.. date: 2018-01-03-23-12-43 +.. nonce: SDEPHB +.. section: Core and Builtins + +A :keyword:`continue` statement is now allowed in the :keyword:`finally` +clause. + +.. + +.. bpo: 17611 +.. date: 2017-12-24-19-48-59 +.. nonce: P85kWL +.. section: Core and Builtins + +Simplified the interpreter loop by moving the logic of unrolling the stack +of blocks into the compiler. The compiler emits now explicit instructions +for adjusting the stack of values and calling the cleaning up code for +:keyword:`break`, :keyword:`continue` and :keyword:`return`. + +Removed opcodes :opcode:`BREAK_LOOP`, :opcode:`CONTINUE_LOOP`, +:opcode:`SETUP_LOOP` and :opcode:`SETUP_EXCEPT`. Added new opcodes +:opcode:`ROT_FOUR`, :opcode:`BEGIN_FINALLY` and :opcode:`CALL_FINALLY` and +:opcode:`POP_FINALLY`. Changed the behavior of :opcode:`END_FINALLY` and +:opcode:`WITH_CLEANUP_START`. + +.. + +.. bpo: 32285 +.. date: 2017-12-12-13-43-13 +.. nonce: LzKSwz +.. section: Core and Builtins + +New function unicodedata.is_normalized, which can check whether a string is +in a specific normal form. + +.. + +.. bpo: 10544 +.. date: 2017-11-26-00-59-22 +.. nonce: fHOM3V +.. section: Core and Builtins + +Yield expressions are now disallowed in comprehensions and generator +expressions except the expression for the outermost iterable. + +.. + +.. bpo: 32117 +.. date: 2017-11-22-15-43-14 +.. nonce: -vloh8 +.. section: Core and Builtins + +Iterable unpacking is now allowed without parentheses in yield and return +statements, e.g. ``yield 1, 2, 3, *rest``. Thanks to David Cuthbert for the +change and Jordan Chapman for added tests. + +.. + +.. bpo: 31902 +.. date: 2017-10-30-12-44-50 +.. nonce: a07fa57 +.. section: Core and Builtins + +Fix the ``col_offset`` attribute for ast nodes ``ast.AsyncFor``, +``ast.AsyncFunctionDef``, and ``ast.AsyncWith``. Previously, ``col_offset`` +pointed to the keyword after ``async``. + +.. + +.. bpo: 25862 +.. date: 2017-10-07-10-13-15 +.. nonce: FPYBA5 +.. section: Core and Builtins + +Fix assertion failures in the ``tell()`` method of ``io.TextIOWrapper``. +Patch by Zackery Spytz. + +.. + +.. bpo: 21983 +.. date: 2017-10-02-21-02-14 +.. nonce: UoC319 +.. section: Core and Builtins + +Fix a crash in `ctypes.cast()` in case the type argument is a ctypes +structured data type. Patch by Eryk Sun and Oren Milman. + +.. + +.. bpo: 31577 +.. date: 2017-09-25-20-36-24 +.. nonce: jgYsSA +.. section: Core and Builtins + +Fix a crash in `os.utime()` in case of a bad ns argument. Patch by Oren +Milman. + +.. + +.. bpo: 29832 +.. date: 2017-09-12-08-11-01 +.. nonce: Kuf2M7 +.. section: Core and Builtins + +Remove references to 'getsockaddrarg' from various socket error messages. +Patch by Oren Milman. + +.. + +.. bpo: 35845 +.. date: 2019-02-02-00-04-01 +.. nonce: 1jx2wk +.. section: Library + +Add 'order' parameter to memoryview.tobytes(). + +.. + +.. bpo: 35864 +.. date: 2019-01-30-20-22-36 +.. nonce: ig9KnG +.. section: Library + +The _asdict() method for collections.namedtuple now returns a regular dict +instead of an OrderedDict. + +.. + +.. bpo: 35537 +.. date: 2019-01-29-17-24-52 +.. nonce: Q0ktFC +.. section: Library + +An ExitStack is now used internally within subprocess.POpen to clean up pipe +file handles. No behavior change in normal operation. But if closing one +handle were ever to cause an exception, the others will now be closed +instead of leaked. (patch by Giampaolo Rodola) + +.. + +.. bpo: 35847 +.. date: 2019-01-29-09-11-09 +.. nonce: eiSi4t +.. section: Library + +RISC-V needed the CTYPES_PASS_BY_REF_HACK. Fixes ctypes Structure +test_pass_by_value. + +.. + +.. bpo: 35813 +.. date: 2019-01-23-22-44-37 +.. nonce: Yobj-Y +.. section: Library + +Shared memory submodule added to multiprocessing to avoid need for +serialization between processes + +.. + +.. bpo: 35780 +.. date: 2019-01-19-17-01-43 +.. nonce: CLf7fT +.. section: Library + +Fix lru_cache() errors arising in recursive, reentrant, or multi-threaded +code. These errors could result in orphan links and in the cache being +trapped in a state with fewer than the specified maximum number of links. +Fix handling of negative maxsize which should have been treated as zero. Fix +errors in toggling the "full" status flag. Fix misordering of links when +errors are encountered. Sync-up the C code and pure Python code for the +space saving path in functions with a single positional argument. In this +common case, the space overhead of an lru cache entry is reduced by almost +half. Fix counting of cache misses. In error cases, the miss count was out +of sync with the actual number of times the underlying user function was +called. + +.. + +.. bpo: 35537 +.. date: 2019-01-18-13-44-13 +.. nonce: R1lbTl +.. section: Library + +:func:`os.posix_spawn` and :func:`os.posix_spawnp` now have a *setsid* +parameter. + +.. + +.. bpo: 23846 +.. date: 2019-01-15-13-31-30 +.. nonce: LT_qL8 +.. section: Library + +:class:`asyncio.ProactorEventLoop` now catchs and logs send errors when the +self-pipe is full. + +.. + +.. bpo: 34323 +.. date: 2019-01-14-17-34-36 +.. nonce: CRErrt +.. section: Library + +:mod:`asyncio`: Enhance ``IocpProactor.close()`` log: wait 1 second before +the first log, then log every second. Log also the number of seconds since +``close()`` was called. + +.. + +.. bpo: 35674 +.. date: 2019-01-14-14-13-08 +.. nonce: kamWqz +.. section: Library + +Add a new :func:`os.posix_spawnp` function. Patch by Joannah Nanjekye. + +.. + +.. bpo: 35733 +.. date: 2019-01-13-18-42-41 +.. nonce: eFfLiv +.. section: Library + +``ast.Constant(boolean)`` no longer an instance of :class:`ast.Num`. Patch +by Anthony Sottile. + +.. + +.. bpo: 35726 +.. date: 2019-01-13-01-33-00 +.. nonce: dasdas +.. section: Library + +QueueHandler.prepare() now makes a copy of the record before modifying and +enqueueing it, to avoid affecting other handlers in the chain. + +.. + +.. bpo: 35719 +.. date: 2019-01-11-20-21-59 +.. nonce: qyRcpE +.. section: Library + +Sped up multi-argument :mod:`math` functions atan2(), copysign(), +remainder() and hypot() by 1.3--2.5 times. + +.. + +.. bpo: 35717 +.. date: 2019-01-11-17-56-15 +.. nonce: 6TDTB_ +.. section: Library + +Fix KeyError exception raised when using enums and compile. Patch +contributed by R?mi Lapeyre. + +.. + +.. bpo: 35699 +.. date: 2019-01-11-07-09-25 +.. nonce: VDiENF +.. section: Library + +Fixed detection of Visual Studio Build Tools 2017 in distutils + +.. + +.. bpo: 32710 +.. date: 2019-01-10-15-55-10 +.. nonce: KwECPu +.. section: Library + +Fix memory leaks in asyncio ProactorEventLoop on overlapped operation +failure. + +.. + +.. bpo: 35702 +.. date: 2019-01-10-14-03-12 +.. nonce: _ct_0H +.. section: Library + +The :data:`time.CLOCK_UPTIME_RAW` constant is now available for macOS 10.12. + +.. + +.. bpo: 32710 +.. date: 2019-01-08-14-00-52 +.. nonce: Sn5Ujj +.. section: Library + +Fix a memory leak in asyncio in the ProactorEventLoop when ``ReadFile()`` or +``WSASend()`` overlapped operation fail immediately: release the internal +buffer. + +.. + +.. bpo: 35682 +.. date: 2019-01-08-01-54-02 +.. nonce: KDM9lk +.. section: Library + +Fix ``asyncio.ProactorEventLoop.sendfile()``: don't attempt to set the +result of an internal future if it's already done. + +.. + +.. bpo: 35283 +.. date: 2019-01-07-17-17-16 +.. nonce: WClosC +.. section: Library + +Add a deprecated warning for the :meth:`threading.Thread.isAlive` method. +Patch by Dong-hee Na. + +.. + +.. bpo: 35664 +.. date: 2019-01-04-22-18-25 +.. nonce: Z-Gyyj +.. section: Library + +Improve operator.itemgetter() performance by 33% with optimized argument +handling and with adding a fast path for the common case of a single +non-negative integer index into a tuple (which is the typical use case in +the standard library). + +.. + +.. bpo: 35643 +.. date: 2019-01-02-20-04-49 +.. nonce: DaMiaV +.. section: Library + +Fixed a SyntaxWarning: invalid escape sequence in Modules/_sha3/cleanup.py. +Patch by Micka?l Schoentgen. + +.. + +.. bpo: 35619 +.. date: 2018-12-30-19-50-36 +.. nonce: ZRXdhy +.. section: Library + +Improved support of custom data descriptors in :func:`help` and +:mod:`pydoc`. + +.. + +.. bpo: 28503 +.. date: 2018-12-30-14-56-33 +.. nonce: V4kNN3 +.. section: Library + +The `crypt` module now internally uses the `crypt_r()` library function +instead of `crypt()` when available. + +.. + +.. bpo: 35614 +.. date: 2018-12-30-01-10-50 +.. nonce: cnkM4f +.. section: Library + +Fixed help() on metaclasses. Patch by Sanyam Khurana. + +.. + +.. bpo: 35568 +.. date: 2018-12-27-19-23-00 +.. nonce: PutiOC +.. section: Library + +Expose ``raise(signum)`` as `raise_signal` + +.. + +.. bpo: 35588 +.. date: 2018-12-26-10-55-59 +.. nonce: PSR6Ez +.. section: Library + +The floor division and modulo operations and the :func:`divmod` function on +:class:`fractions.Fraction` types are 2--4x faster. Patch by Stefan Behnel. + +.. + +.. bpo: 35585 +.. date: 2018-12-26-02-28-00 +.. nonce: Lkzd3Z +.. section: Library + +Speed-up building enums by value, e.g. http.HTTPStatus(200). + +.. + +.. bpo: 30561 +.. date: 2018-12-23-22-27-59 +.. nonce: PSRQ2w +.. section: Library + +random.gammavariate(1.0, beta) now computes the same result as +random.expovariate(1.0 / beta). This synchonizes the two algorithms and +eliminates some idiosyncrasies in the old implementation. It does however +produce a difference stream of random variables than it used to. + +.. + +.. bpo: 35537 +.. date: 2018-12-20-16-24-51 +.. nonce: z4E7aA +.. section: Library + +The :mod:`subprocess` module can now use the :func:`os.posix_spawn` function +in some cases for better performance. + +.. + +.. bpo: 35526 +.. date: 2018-12-18-21-12-25 +.. nonce: fYvo6H +.. section: Library + +Delaying the 'joke' of barry_as_FLUFL.mandatory to Python version 4.0 + +.. + +.. bpo: 35523 +.. date: 2018-12-18-13-52-13 +.. nonce: SkoMno +.. section: Library + +Remove :mod:`ctypes` callback workaround: no longer create a callback at +startup. Avoid SELinux alert on ``import ctypes`` and ``import uuid``. + +.. + +.. bpo: 31784 +.. date: 2018-12-17-11-43-11 +.. nonce: W0gDjC +.. section: Library + +:func:`uuid.uuid1` now calls :func:`time.time_ns` rather than +``int(time.time() * 1e9)``. + +.. + +.. bpo: 35513 +.. date: 2018-12-16-23-28-49 +.. nonce: pn-Zh3 +.. section: Library + +:class:`~unittest.runner.TextTestRunner` of :mod:`unittest.runner` now uses +:func:`time.perf_counter` rather than :func:`time.time` to measure the +execution time of a test: :func:`time.time` can go backwards, whereas +:func:`time.perf_counter` is monotonic. + +.. + +.. bpo: 35502 +.. date: 2018-12-14-23-56-48 +.. nonce: gLHuFS +.. section: Library + +Fixed reference leaks in :class:`xml.etree.ElementTree.TreeBuilder` in case +of unfinished building of the tree (in particular when an error was raised +during parsing XML). + +.. + +.. bpo: 35348 +.. date: 2018-12-14-13-27-45 +.. nonce: u3Y2an +.. section: Library + +Make :func:`platform.architecture` parsing of ``file`` command output more +reliable: add the ``-b`` option to the ``file`` command to omit the +filename, force the usage of the C locale, and search also the "shared +object" pattern. + +.. + +.. bpo: 35491 +.. date: 2018-12-14-12-12-15 +.. nonce: jHsNOU +.. section: Library + +:mod:`multiprocessing`: Add ``Pool.__repr__()`` and enhance +``BaseProcess.__repr__()`` (add pid and parent pid) to ease debugging. Pool +state constant values are now strings instead of integers, for example +``RUN`` value becomes ``'RUN'`` instead of ``0``. + +.. + +.. bpo: 35477 +.. date: 2018-12-13-00-10-51 +.. nonce: hHyy06 +.. section: Library + +:meth:`multiprocessing.Pool.__enter__` now fails if the pool is not running: +``with pool:`` fails if used more than once. + +.. + +.. bpo: 31446 +.. date: 2018-12-12-22-52-34 +.. nonce: l--Fjz +.. section: Library + +Copy command line that was passed to CreateProcessW since this function can +change the content of the input buffer. + +.. + +.. bpo: 35471 +.. date: 2018-12-12-16-25-21 +.. nonce: SK8jFC +.. section: Library + +Python 2.4 dropped MacOS 9 support. The macpath module was deprecated in +Python 3.7. The module is now removed. + +.. + +.. bpo: 23057 +.. date: 2018-12-12-16-24-55 +.. nonce: OB4Z1Y +.. section: Library + +Unblock Proactor event loop when keyboard interrupt is received on Windows + +.. + +.. bpo: 35052 +.. date: 2018-12-10-09-48-27 +.. nonce: xE1ymg +.. section: Library + +Fix xml.dom.minidom cloneNode() on a document with an entity: pass the +correct arguments to the user data handler of an entity. + +.. + +.. bpo: 20239 +.. date: 2018-12-09-21-35-49 +.. nonce: V4mWBL +.. section: Library + +Allow repeated assignment deletion of :class:`unittest.mock.Mock` +attributes. Patch by Pablo Galindo. + +.. + +.. bpo: 17185 +.. date: 2018-12-09-17-04-15 +.. nonce: SfSCJF +.. section: Library + +Set ``__signature__`` on mock for :mod:`inspect` to get signature. Patch by +Karthikeyan Singaravelan. + +.. + +.. bpo: 35445 +.. date: 2018-12-09-14-35-49 +.. nonce: LjvtsC +.. section: Library + +Memory errors during creating posix.environ no longer ignored. + +.. + +.. bpo: 35415 +.. date: 2018-12-06-14-44-21 +.. nonce: -HoK3d +.. section: Library + +Validate fileno= argument to socket.socket(). + +.. + +.. bpo: 35424 +.. date: 2018-12-06-02-02-28 +.. nonce: gXxOJU +.. section: Library + +:class:`multiprocessing.Pool` destructor now emits :exc:`ResourceWarning` if +the pool is still running. + +.. + +.. bpo: 35330 +.. date: 2018-12-06-00-43-13 +.. nonce: abB4BN +.. section: Library + +When a :class:`Mock` instance was used to wrap an object, if `side_effect` +is used in one of the mocks of it methods, don't call the original +implementation and return the result of using the side effect the same way +that it is done with return_value. + +.. + +.. bpo: 35346 +.. date: 2018-12-05-22-52-21 +.. nonce: Okm9-S +.. section: Library + +Drop Mac OS 9 and Rhapsody support from the :mod:`platform` module. Rhapsody +last release was in 2000. Mac OS 9 last release was in 2001. + +.. + +.. bpo: 10496 +.. date: 2018-12-05-17-42-49 +.. nonce: laV_IE +.. section: Library + +:func:`~distutils.utils.check_environ` of :mod:`distutils.utils` now catchs +:exc:`KeyError` on calling :func:`pwd.getpwuid`: don't create the ``HOME`` +environment variable in this case. + +.. + +.. bpo: 10496 +.. date: 2018-12-05-13-37-39 +.. nonce: VH-1Lp +.. section: Library + +:func:`posixpath.expanduser` now returns the input *path* unchanged if the +``HOME`` environment variable is not set and the current user has no home +directory (if the current user identifier doesn't exist in the password +database). This change fix the :mod:`site` module if the current user +doesn't exist in the password database (if the user has no home directory). + +.. + +.. bpo: 35389 +.. date: 2018-12-04-12-46-05 +.. nonce: CTZ9iA +.. section: Library + +:func:`platform.libc_ver` now uses ``os.confstr('CS_GNU_LIBC_VERSION')`` if +available and the *executable* parameter is not set. + +.. + +.. bpo: 35394 +.. date: 2018-12-04-12-17-08 +.. nonce: fuTVDk +.. section: Library + +Add empty slots to asyncio abstract protocols. + +.. + +.. bpo: 35310 +.. date: 2018-12-03-19-45-00 +.. nonce: 9k28gR +.. section: Library + +Fix a bug in :func:`select.select` where, in some cases, the file descriptor +sequences were returned unmodified after a signal interruption, even though +the file descriptors might not be ready yet. :func:`select.select` will now +always return empty lists if a timeout has occurred. Patch by Oran Avraham. + +.. + +.. bpo: 35380 +.. date: 2018-12-03-14-41-11 +.. nonce: SdRF9l +.. section: Library + +Enable TCP_NODELAY on Windows for proactor asyncio event loop. + +.. + +.. bpo: 35341 +.. date: 2018-12-02-13-50-52 +.. nonce: 32E8T_ +.. section: Library + +Add generic version of ``collections.OrderedDict`` to the ``typing`` module. +Patch by Ismo Toijala. + +.. + +.. bpo: 35371 +.. date: 2018-12-01-13-44-12 +.. nonce: fTAwlX +.. section: Library + +Fixed possible crash in ``os.utime()`` on Windows when pass incorrect +arguments. + +.. + +.. bpo: 35346 +.. date: 2018-11-29-12-42-13 +.. nonce: OmTY5c +.. section: Library + +:func:`platform.uname` now redirects ``stderr`` to :data:`os.devnull` when +running external programs like ``cmd /c ver``. + +.. + +.. bpo: 35066 +.. date: 2018-11-29-09-38-40 +.. nonce: Nwej2s +.. section: Library + +Previously, calling the strftime() method on a datetime object with a +trailing '%' in the format string would result in an exception. However, +this only occured when the datetime C module was being used; the python +implementation did not match this behavior. Datetime is now PEP-399 +compliant, and will not throw an exception on a trailing '%'. + +.. + +.. bpo: 35345 +.. date: 2018-11-29-00-55-33 +.. nonce: vepCSJ +.. section: Library + +The function `platform.popen` has been removed, it was deprecated since +Python 3.3: use :func:`os.popen` instead. + +.. + +.. bpo: 35344 +.. date: 2018-11-29-00-23-25 +.. nonce: 4QOPJQ +.. section: Library + +On macOS, :func:`platform.platform` now uses :func:`platform.mac_ver`, if it +returns a non-empty release string, to get the macOS version rather than the +darwin version. + +.. + +.. bpo: 35312 +.. date: 2018-11-25-20-05-33 +.. nonce: wbw0zO +.. section: Library + +Make ``lib2to3.pgen2.parse.ParseError`` round-trip pickle-able. Patch by +Anthony Sottile. + +.. + +.. bpo: 35308 +.. date: 2018-11-24-10-33-42 +.. nonce: 9--2iy +.. section: Library + +Fix regression in ``webbrowser`` where default browsers may be preferred +over browsers in the ``BROWSER`` environment variable. + +.. + +.. bpo: 24746 +.. date: 2018-11-22-15-22-56 +.. nonce: eSLKBE +.. section: Library + +Avoid stripping trailing whitespace in doctest fancy diff. Orignial patch by +R. David Murray & Jairo Trad. Enhanced by Sanyam Khurana. + +.. + +.. bpo: 28604 +.. date: 2018-11-20-13-34-01 +.. nonce: iiih5h +.. section: Library + +:func:`locale.localeconv` now sets temporarily the ``LC_CTYPE`` locale to +the ``LC_MONETARY`` locale if the two locales are different and monetary +strings are non-ASCII. This temporary change affects other threads. + +.. + +.. bpo: 35277 +.. date: 2018-11-19-07-22-04 +.. nonce: dsD-2E +.. section: Library + +Update ensurepip to install pip 18.1 and setuptools 40.6.2. + +.. + +.. bpo: 24209 +.. date: 2018-11-18-18-44-40 +.. nonce: p3YWOf +.. section: Library + +Adds IPv6 support when invoking http.server directly. + +.. + +.. bpo: 35226 +.. date: 2018-11-15-07-14-32 +.. nonce: wJPEEe +.. section: Library + +Recursively check arguments when testing for equality of +:class:`unittest.mock.call` objects and add note that tracking of parameters +used to create ancestors of mocks in ``mock_calls`` is not possible. + +.. + +.. bpo: 29564 +.. date: 2018-11-12-17-40-04 +.. nonce: SFNBT5 +.. section: Library + +The warnings module now suggests to enable tracemalloc if the source is +specified, the tracemalloc module is available, but tracemalloc is not +tracing memory allocations. + +.. + +.. bpo: 35189 +.. date: 2018-11-09-13-35-36 +.. nonce: gog-sl +.. section: Library + +Modify the following fnctl function to retry if interrupted by a signal +(EINTR): flock, lockf, fnctl + +.. + +.. bpo: 30064 +.. date: 2018-11-09-01-18-51 +.. nonce: IF5mH6 +.. section: Library + +Use add_done_callback() in sock_* asyncio API to unsubscribe reader/writer +early on calcellation. + +.. + +.. bpo: 35186 +.. date: 2018-11-08-14-22-29 +.. nonce: 5m22Mj +.. section: Library + +Removed the "built with" comment added when ``setup.py upload`` is used with +either ``bdist_rpm`` or ``bdist_dumb``. + +.. + +.. bpo: 35152 +.. date: 2018-11-03-10-12-04 +.. nonce: xpqskp +.. section: Library + +Allow sending more than 2 GB at once on a multiprocessing connection on +non-Windows systems. + +.. + +.. bpo: 35062 +.. date: 2018-10-29-23-09-24 +.. nonce: dQS1ng +.. section: Library + +Fix incorrect parsing of :class:`_io.IncrementalNewlineDecoder`'s +*translate* argument. + +.. + +.. bpo: 35065 +.. date: 2018-10-29-10-18-31 +.. nonce: CulMN8 +.. section: Library + +Remove `StreamReaderProtocol._untrack_reader`. The call to `_untrack_reader` +is currently performed too soon, causing the protocol to forget about the +reader before `connection_lost` can run and feed the EOF to the reader. + +.. + +.. bpo: 34160 +.. date: 2018-10-27-21-11-42 +.. nonce: UzyPZf +.. section: Library + +ElementTree and minidom now preserve the attribute order specified by the +user. + +.. + +.. bpo: 35079 +.. date: 2018-10-26-22-53-16 +.. nonce: Tm5jvF +.. section: Library + +Improve difflib.SequenceManager.get_matching_blocks doc by adding +'non-overlapping' and changing '!=' to '<'. + +.. + +.. bpo: 33710 +.. date: 2018-10-26-21-12-55 +.. nonce: Q5oXc6 +.. section: Library + +Deprecated ``l*gettext()`` functions and methods in the :mod:`gettext` +module. They return encoded bytes instead of Unicode strings and are +artifacts from Python 2 times. Also deprecated functions and methods related +to setting the charset for ``l*gettext()`` functions and methods. + +.. + +.. bpo: 35017 +.. date: 2018-10-26-00-11-21 +.. nonce: 6Ez4Cv +.. section: Library + +:meth:`socketserver.BaseServer.serve_forever` now exits immediately if it's +:meth:`~socketserver.BaseServer.shutdown` method is called while it is +polling for new events. + +.. + +.. bpo: 35024 +.. date: 2018-10-25-15-43-32 +.. nonce: ltSrtr +.. section: Library + +`importlib` no longer logs `wrote ` redundantly after +`(created|could not create) ` is already logged. Patch by +Quentin Agren. + +.. + +.. bpo: 35047 +.. date: 2018-10-25-09-59-00 +.. nonce: abbaa +.. section: Library + +``unittest.mock`` now includes mock calls in exception messages if +``assert_not_called``, ``assert_called_once``, or +``assert_called_once_with`` fails. Patch by Petter Strandmark. + +.. + +.. bpo: 31047 +.. date: 2018-10-25-09-37-03 +.. nonce: kBbX8r +.. section: Library + +Fix ``ntpath.abspath`` regression where it didn't remove a trailing +separator on Windows. Patch by Tim Graham. + +.. + +.. bpo: 35053 +.. date: 2018-10-23-18-58-12 +.. nonce: G82qwh +.. section: Library + +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). + +.. + +.. bpo: 31553 +.. date: 2018-10-23-14-46-47 +.. nonce: JxRkAW +.. section: Library + +Add the --json-lines option to json.tool. Patch by hongweipeng. + +.. + +.. bpo: 34794 +.. date: 2018-10-21-14-53-19 +.. nonce: yt3R4- +.. section: Library + +Fixed a leak in Tkinter when pass the Python wrapper around Tcl_Obj back to +Tcl/Tk. + +.. + +.. bpo: 34909 +.. date: 2018-10-20-00-29-43 +.. nonce: Ew_8DC +.. section: Library + +Enum: fix grandchildren subclassing when parent mixed with concrete data +types. + +.. + +.. bpo: 35022 +.. date: 2018-10-18-17-57-28 +.. nonce: KeEF4T +.. section: Library + +:class:`unittest.mock.MagicMock` now supports the ``__fspath__`` method +(from :class:`os.PathLike`). + +.. + +.. bpo: 35008 +.. date: 2018-10-17-11-54-04 +.. nonce: dotef_ +.. section: Library + +Fixed references leaks when call the ``__setstate__()`` method of +:class:`xml.etree.ElementTree.Element` in the C implementation for already +initialized element. + +.. + +.. bpo: 23420 +.. date: 2018-10-17-11-00-00 +.. nonce: Lq74Uu +.. section: Library + +Verify the value for the parameter '-s' of the cProfile CLI. Patch by Robert +Kuska + +.. + +.. bpo: 33947 +.. date: 2018-10-17-02-15-23 +.. nonce: SRuq3T +.. section: Library + +dataclasses now handle recursive reprs without raising RecursionError. + +.. + +.. bpo: 34890 +.. date: 2018-10-15-23-10-41 +.. nonce: 77E770 +.. section: Library + +Make :func:`inspect.iscoroutinefunction`, +:func:`inspect.isgeneratorfunction` and :func:`inspect.isasyncgenfunction` +work with :func:`functools.partial`. Patch by Pablo Galindo. + +.. + +.. bpo: 34521 +.. date: 2018-10-13-19-15-23 +.. nonce: YPaiTK +.. section: Library + +Use :func:`socket.CMSG_SPACE` to calculate ancillary data size instead of +:func:`socket.CMSG_LEN` in :func:`multiprocessing.reduction.recvfds` as +:rfc:`3542` requires the use of the former for portable applications. + +.. + +.. bpo: 31522 +.. date: 2018-10-13-18-16-20 +.. nonce: rWBb43 +.. section: Library + +The `mailbox.mbox.get_string` function *from_* parameter can now +successfully be set to a non-default value. + +.. + +.. bpo: 34970 +.. date: 2018-10-13-11-14-13 +.. nonce: SrJTY7 +.. section: Library + +Protect tasks weak set manipulation in ``asyncio.all_tasks()`` + +.. + +.. bpo: 34969 +.. date: 2018-10-13-07-46-50 +.. nonce: Mfnhjb +.. section: Library + +gzip: Add --fast, --best on the gzip CLI, these parameters will be used for +the fast compression method (quick) or the best method compress (slower, but +smaller file). Also, change the default compression level to 6 (tradeoff). + +.. + +.. bpo: 16965 +.. date: 2018-10-12-20-30-42 +.. nonce: xo5LAr +.. section: Library + +The :term:`2to3` :2to3fixer:`execfile` fixer now opens the file with mode +``'rb'``. Patch by Zackery Spytz. + +.. + +.. bpo: 34966 +.. date: 2018-10-12-18-57-52 +.. nonce: WZeBHO +.. section: Library + +:mod:`pydoc` now supports aliases not only to methods defined in the end +class, but also to inherited methods. The docstring is not duplicated for +aliases. + +.. + +.. bpo: 34926 +.. date: 2018-10-10-00-22-57 +.. nonce: CA0rqd +.. section: Library + +:meth:`mimetypes.MimeTypes.guess_type` now accepts :term:`path-like object` +in addition to url strings. Patch by Mayank Asthana. + +.. + +.. bpo: 23831 +.. date: 2018-10-09-15-44-04 +.. nonce: 2CL7lL +.. section: Library + +Add ``moveto()`` method to the ``tkinter.Canvas`` widget. Patch by Juliette +Monsel. + +.. + +.. bpo: 34941 +.. date: 2018-10-09-14-42-16 +.. nonce: 1Q5QKv +.. section: Library + +Methods ``find()``, ``findtext()`` and ``findall()`` of the ``Element`` +class in the :mod:`xml.etree.ElementTree` module are now able to find +children which are instances of ``Element`` subclasses. + +.. + +.. bpo: 32680 +.. date: 2018-10-09-14-25-36 +.. nonce: z2FbOp +.. section: Library + +:class:`smtplib.SMTP` objects now always have a `sock` attribute present + +.. + +.. bpo: 34769 +.. date: 2018-10-09-11-01-16 +.. nonce: cSkkZt +.. section: Library + +Fix for async generators not finalizing when event loop is in debug mode and +garbage collector runs in another thread. + +.. + +.. bpo: 34936 +.. date: 2018-10-08-21-05-11 +.. nonce: 3tRqdq +.. section: Library + +Fix ``TclError`` in ``tkinter.Spinbox.selection_element()``. Patch by +Juliette Monsel. + +.. + +.. bpo: 34829 +.. date: 2018-10-08-16-04-36 +.. nonce: B7v7D0 +.. section: Library + +Add methods ``selection_from``, ``selection_range``, ``selection_present`` +and ``selection_to`` to the ``tkinter.Spinbox`` for consistency with the +``tkinter.Entry`` widget. Patch by Juliette Monsel. + +.. + +.. bpo: 34911 +.. date: 2018-10-08-15-22-02 +.. nonce: hCy0Fv +.. section: Library + +Added *secure_protocols* argument to *http.cookiejar.DefaultCookiePolicy* to +allow for tweaking of protocols and also to add support by default for +*wss*, the secure websocket protocol. + +.. + +.. bpo: 34922 +.. date: 2018-10-07-21-18-52 +.. nonce: 37IdsA +.. section: Library + +Fixed integer overflow in the :meth:`~hashlib.shake.digest()` and +:meth:`~hashlib.shake.hexdigest()` methods for the SHAKE algorithm in the +:mod:`hashlib` module. + +.. + +.. bpo: 34925 +.. date: 2018-10-07-20-37-02 +.. nonce: KlkZ-Y +.. section: Library + +25% speedup in argument parsing for the functions in the bisect module. + +.. + +.. bpo: 34900 +.. date: 2018-10-05-05-55-53 +.. nonce: 8RNiFu +.. section: Library + +Fixed :meth:`unittest.TestCase.debug` when used to call test methods with +subtests. Patch by Bruno Oliveira. + +.. + +.. bpo: 34844 +.. date: 2018-10-04-20-44-45 +.. nonce: Hnuxav +.. section: Library + +logging.Formatter enhancement - Ensure styles and fmt matches in +logging.Formatter - Added validate method in each format style class: +StrFormatStyle, PercentStyle, StringTemplateStyle. - This method is called +in the constructor of logging.Formatter class - Also re-raise the KeyError +in the format method of each style class, so it would a bit clear that it's +an error with the invalid format fields. + +.. + +.. bpo: 34897 +.. date: 2018-10-04-20-25-35 +.. nonce: rNE2Cy +.. section: Library + +Adjust test.support.missing_compiler_executable check so that a nominal +command name of "" is ignored. Patch by Michael Felt. + +.. + +.. bpo: 34871 +.. date: 2018-10-04-18-46-54 +.. nonce: t3X-dB +.. section: Library + +Fix inspect module polluted ``sys.modules`` when parsing +``__text_signature__`` of callable. + +.. + +.. bpo: 34898 +.. date: 2018-10-04-17-23-43 +.. nonce: Wo2PoJ +.. section: Library + +Add `mtime` argument to `gzip.compress` for reproducible output. Patch by +Guo Ci Teo. + +.. + +.. bpo: 28441 +.. date: 2018-10-04-15-53-14 +.. nonce: 2sQENe +.. section: Library + +On Cygwin and MinGW, ensure that ``sys.executable`` always includes the full +filename in the path, including the ``.exe`` suffix (unless it is a symbolic +link). + +.. + +.. bpo: 34866 +.. date: 2018-10-03-11-07-28 +.. nonce: ML6KpJ +.. section: Library + +Adding ``max_num_fields`` to ``cgi.FieldStorage`` to make DOS attacks harder +by limiting the number of ``MiniFieldStorage`` objects created by +``FieldStorage``. + +.. + +.. bpo: 34711 +.. date: 2018-10-03-09-25-02 +.. nonce: HeOmKR +.. section: Library + +http.server ensures it reports HTTPStatus.NOT_FOUND when the local path ends +with "/" and is not a directory, even if the underlying OS (e.g. AIX) +accepts such paths as a valid file reference. Patch by Michael Felt. + +.. + +.. bpo: 34872 +.. date: 2018-10-02-19-36-34 +.. nonce: yWZRhI +.. section: Library + +Fix self-cancellation in C implementation of asyncio.Task + +.. + +.. bpo: 34849 +.. date: 2018-09-30-08-08-14 +.. nonce: NXK9Ff +.. section: Library + +Don't log waiting for ``selector.select`` in asyncio loop iteration. The +waiting is pretty normal for any asyncio program, logging its time just adds +a noise to logs without any useful information provided. + +.. + +.. bpo: 34022 +.. date: 2018-09-27-13-14-15 +.. nonce: E2cl0r +.. section: Library + +The :envvar:`SOURCE_DATE_EPOCH` environment variable no longer overrides the +value of the *invalidation_mode* argument to :func:`py_compile.compile`, and +determines its default value instead. + +.. + +.. bpo: 34819 +.. date: 2018-09-27-09-45-00 +.. nonce: 9ZaFyO +.. section: Library + +Use a monotonic clock to compute timeouts in :meth:`Executor.map` and +:func:`as_completed`, in order to prevent timeouts from deviating when the +system clock is adjusted. + +.. + +.. bpo: 34758 +.. date: 2018-09-26-14-09-34 +.. nonce: bRBfAi +.. section: Library + +Add .wasm -> application/wasm to list of recognized file types and content +type headers + +.. + +.. bpo: 34789 +.. date: 2018-09-25-15-48-50 +.. nonce: rPOEj5 +.. section: Library + +:func:`xml.sax.make_parser` now accepts any iterable as its *parser_list* +argument. Patch by Andr?s Delfino. + +.. + +.. bpo: 34334 +.. date: 2018-09-25-08-42-34 +.. nonce: rSPBW9 +.. section: Library + +In :class:`QueueHandler`, clear `exc_text` from :class:`LogRecord` to +prevent traceback from being written twice. + +.. + +.. bpo: 34687 +.. date: 2018-09-24-17-14-57 +.. nonce: Fku_8S +.. section: Library + +On Windows, asyncio now uses ProactorEventLoop, instead of +SelectorEventLoop, by default. + +.. + +.. bpo: 5950 +.. date: 2018-09-24-14-21-58 +.. nonce: xH0ekQ +.. section: Library + +Support reading zip files with archive comments in :mod:`zipimport`. + +.. + +.. bpo: 32892 +.. date: 2018-09-20-17-35-05 +.. nonce: TOUBdg +.. section: Library + +The parser now represents all constants as :class:`ast.Constant` instead of +using specific constant AST types (``Num``, ``Str``, ``Bytes``, +``NameConstant`` and ``Ellipsis``). These classes are considered deprecated +and will be removed in future Python versions. + +.. + +.. bpo: 34728 +.. date: 2018-09-20-16-55-43 +.. nonce: CUE8LU +.. section: Library + +Add deprecation warning when `loop` is used in methods: `asyncio.sleep`, +`asyncio.wait` and `asyncio.wait_for`. + +.. + +.. bpo: 34738 +.. date: 2018-09-19-16-51-04 +.. nonce: Pr3-iG +.. section: Library + +ZIP files created by :mod:`distutils` will now include entries for +directories. + +.. + +.. bpo: 34659 +.. date: 2018-09-16-17-04-16 +.. nonce: CWemzH +.. section: Library + +Add an optional *initial* argument to itertools.accumulate(). + +.. + +.. bpo: 29577 +.. date: 2018-09-14-20-00-47 +.. nonce: RzwKFD +.. section: Library + +Support multiple mixin classes when creating Enums. + +.. + +.. bpo: 34670 +.. date: 2018-09-14-14-29-45 +.. nonce: 17XwGB +.. section: Library + +Add SSLContext.post_handshake_auth and +SSLSocket.verify_client_post_handshake for TLS 1.3's post handshake +authentication feature. + +.. + +.. bpo: 32718 +.. date: 2018-09-14-12-38-49 +.. nonce: ICYQbt +.. section: Library + +The Activate.ps1 script from venv works with PowerShell Core 6.1 and is now +available under all operating systems. + +.. + +.. bpo: 31177 +.. date: 2018-09-14-10-38-18 +.. nonce: Sv91TN +.. section: Library + +Fix bug that prevented using :meth:`reset_mock +` on mock instances with deleted attributes + +.. + +.. bpo: 34672 +.. date: 2018-09-13-21-04-23 +.. nonce: BYuKKS +.. section: Library + +Add a workaround, so the ``'Z'`` :func:`time.strftime` specifier on the musl +C library can work in some cases. + +.. + +.. bpo: 34666 +.. date: 2018-09-13-11-49-52 +.. nonce: 3uLtWv +.. section: Library + +Implement ``asyncio.StreamWriter.awrite`` and +``asyncio.StreamWriter.aclose()`` coroutines. Methods are needed for +providing a consistent stream API with control flow switched on by default. + +.. + +.. bpo: 6721 +.. date: 2018-09-13-10-09-19 +.. nonce: ZUL_F3 +.. section: Library + +Acquire the logging module's commonly used internal locks while fork()ing to +avoid deadlocks in the child process. + +.. + +.. bpo: 34658 +.. date: 2018-09-13-03-59-43 +.. nonce: ykZ-ia +.. section: Library + +Fix a rare interpreter unhandled exception state SystemError only seen when +using subprocess with a preexec_fn while an after_parent handler has been +registered with os.register_at_fork and the fork system call fails. + +.. + +.. bpo: 34652 +.. date: 2018-09-12-14-46-51 +.. nonce: Rt1m1b +.. section: Library + +Ensure :func:`os.lchmod` is never defined on Linux. + +.. + +.. bpo: 34638 +.. date: 2018-09-12-10-33-44 +.. nonce: xaeZX5 +.. section: Library + +Store a weak reference to stream reader to break strong references loop +between reader and protocol. It allows to detect and close the socket if +the stream is deleted (garbage collected) without ``close()`` call. + +.. + +.. bpo: 34536 +.. date: 2018-09-11-15-49-09 +.. nonce: 3IPIH5 +.. section: Library + +`Enum._missing_`: raise `ValueError` if None returned and `TypeError` if +non-member is returned. + +.. + +.. bpo: 34636 +.. date: 2018-09-11-15-04-05 +.. nonce: capCmt +.. section: Library + +Speed up re scanning of many non-matching characters for \s \w and \d within +bytes objects. (microoptimization) + +.. + +.. bpo: 24412 +.. date: 2018-09-11-10-51-16 +.. nonce: i-F_E5 +.. section: Library + +Add :func:`~unittest.addModuleCleanup()` and +:meth:`~unittest.TestCase.addClassCleanup()` to unittest to support cleanups +for :func:`~unittest.setUpModule()` and +:meth:`~unittest.TestCase.setUpClass()`. Patch by Lisa Roach. + +.. + +.. bpo: 34630 +.. date: 2018-09-11-10-00-53 +.. nonce: YbqUS6 +.. section: Library + +Don't log SSL certificate errors in asyncio code (connection error logging +is skipped already). + +.. + +.. bpo: 32490 +.. date: 2018-09-11-01-25-35 +.. nonce: ROIDO1 +.. section: Library + +Prevent filename duplication in :mod:`subprocess` exception messages. Patch +by Zackery Spytz. + +.. + +.. bpo: 34363 +.. date: 2018-09-10-21-09-34 +.. nonce: YuSb0T +.. section: Library + +dataclasses.asdict() and .astuple() now handle namedtuples correctly. + +.. + +.. bpo: 34625 +.. date: 2018-09-10-17-46-51 +.. nonce: D2YfDz +.. section: Library + +Update vendorized expat library version to 2.2.6. + +.. + +.. bpo: 32270 +.. date: 2018-09-10-14-15-53 +.. nonce: wSJjuD +.. section: Library + +The subprocess module no longer mistakenly closes redirected fds even when +they were in pass_fds when outside of the default {0, 1, 2} set. + +.. + +.. bpo: 34622 +.. date: 2018-09-10-13-04-40 +.. nonce: tpv_rN +.. section: Library + +Create a dedicated ``asyncio.CancelledError``, ``asyncio.InvalidStateError`` +and ``asyncio.TimeoutError`` exception classes. Inherit them from +corresponding exceptions from ``concurrent.futures`` package. Extract +``asyncio`` exceptions into a separate file. + +.. + +.. bpo: 34610 +.. date: 2018-09-08-12-57-07 +.. nonce: wmoP5j +.. section: Library + +Fixed iterator of :class:`multiprocessing.managers.DictProxy`. + +.. + +.. bpo: 34421 +.. date: 2018-09-07-10-57-00 +.. nonce: AKJISD +.. section: Library + +Fix distutils logging for non-ASCII strings. This caused installation +issues on Windows. + +.. + +.. bpo: 34604 +.. date: 2018-09-07-10-16-34 +.. nonce: xL7-kG +.. section: Library + +Fix possible mojibake in the error message of `pwd.getpwnam` and +`grp.getgrnam` using string representation because of invisible characters +or trailing whitespaces. Patch by William Grzybowski. + +.. + +.. bpo: 30977 +.. date: 2018-09-06-10-07-46 +.. nonce: bP661V +.. section: Library + +Make uuid.UUID use ``__slots__`` to reduce its memory footprint. Based on +original patch by Wouter Bolsterlee. + +.. + +.. bpo: 34574 +.. date: 2018-09-04-09-32-54 +.. nonce: X4RwYI +.. section: Library + +OrderedDict iterators are not exhausted during pickling anymore. Patch by +Sergey Fedoseev. + +.. + +.. bpo: 8110 +.. date: 2018-09-03-23-54-35 +.. nonce: FExWI_ +.. section: Library + +Refactored :mod:`subprocess` to check for Windows-specific modules rather +than ``sys.platform == 'win32'``. + +.. + +.. bpo: 34530 +.. date: 2018-09-03-23-23-32 +.. nonce: h_Xsu7 +.. section: Library + +``distutils.spawn.find_executable()`` now falls back on :data:`os.defpath` +if the ``PATH`` environment variable is not set. + +.. + +.. bpo: 34563 +.. date: 2018-09-01-20-43-10 +.. nonce: 7NQK7B +.. section: Library + +On Windows, fix multiprocessing.Connection for very large read: fix +_winapi.PeekNamedPipe() and _winapi.ReadFile() for read larger than INT_MAX +(usually 2^31-1). + +.. + +.. bpo: 34558 +.. date: 2018-08-31-19-26-55 +.. nonce: MHv582 +.. section: Library + +Correct typo in Lib/ctypes/_aix.py + +.. + +.. bpo: 34282 +.. date: 2018-08-31-06-28-03 +.. nonce: ztyXH8 +.. section: Library + +Move ``Enum._convert`` to ``EnumMeta._convert_`` and fix enum members +getting shadowed by parent attributes. + +.. + +.. bpo: 22872 +.. date: 2018-08-30-14-44-11 +.. nonce: NhIaZ9 +.. section: Library + +When the queue is closed, :exc:`ValueError` is now raised by +:meth:`multiprocessing.Queue.put` and :meth:`multiprocessing.Queue.get` +instead of :exc:`AssertionError` and :exc:`OSError`, respectively. Patch by +Zackery Spytz. + +.. + +.. bpo: 34515 +.. date: 2018-08-27-16-01-22 +.. nonce: S0Irst +.. section: Library + +Fix parsing non-ASCII identifiers in :mod:`lib2to3.pgen2.tokenize` (PEP +3131). + +.. + +.. bpo: 13312 +.. date: 2018-08-24-17-31-27 +.. nonce: 6hA5La +.. section: Library + +Avoids a possible integer underflow (undefined behavior) in the time +module's year handling code when passed a very low negative year value. + +.. + +.. bpo: 34472 +.. date: 2018-08-23-09-25-08 +.. nonce: cGyYrO +.. section: Library + +Improved compatibility for streamed files in :mod:`zipfile`. Previously an +optional signature was not being written and certain ZIP applications were +not supported. Patch by Silas Sewell. + +.. + +.. bpo: 34454 +.. date: 2018-08-22-21-59-08 +.. nonce: z7uG4b +.. section: Library + +Fix the .fromisoformat() methods of datetime types crashing when given +unicode with non-UTF-8-encodable code points. Specifically, +datetime.fromisoformat() now accepts surrogate unicode code points used as +the separator. Report and tests by Alexey Izbyshev, patch by Paul Ganssle. + +.. + +.. bpo: 6700 +.. date: 2018-08-22-17-43-52 +.. nonce: hp7C4B +.. section: Library + +Fix inspect.getsourcelines for module level frames/tracebacks. Patch by +Vladimir Matveev. + +.. + +.. bpo: 34171 +.. date: 2018-08-21-00-29-01 +.. nonce: 6LkWav +.. section: Library + +Running the :mod:`trace` module no longer creates the ``trace.cover`` file. + +.. + +.. bpo: 34441 +.. date: 2018-08-20-16-48-32 +.. nonce: _zx9lU +.. section: Library + +Fix crash when an ``ABC``-derived class with invalid ``__subclasses__`` is +passed as the second argument to :func:`issubclass()`. Patch by Alexey +Izbyshev. + +.. + +.. bpo: 34427 +.. date: 2018-08-20-13-53-10 +.. nonce: tMRQjl +.. section: Library + +Fix infinite loop in ``a.extend(a)`` for ``MutableSequence`` subclasses. + +.. + +.. bpo: 34412 +.. date: 2018-08-16-19-07-05 +.. nonce: NF5Jm2 +.. section: Library + +Make :func:`signal.strsignal` work on HP-UX. Patch by Michael Osipov. + +.. + +.. bpo: 20849 +.. date: 2018-08-16-16-47-15 +.. nonce: YWJECC +.. section: Library + +shutil.copytree now accepts a new ``dirs_exist_ok`` keyword argument. Patch +by Josh Bronson. + +.. + +.. bpo: 31715 +.. date: 2018-08-15-16-22-30 +.. nonce: Iw8jS8 +.. section: Library + +Associate ``.mjs`` file extension with ``application/javascript`` MIME Type. + +.. + +.. bpo: 34384 +.. date: 2018-08-12-08-43-21 +.. nonce: yjofCv +.. section: Library + +:func:`os.readlink` now accepts :term:`path-like ` and +:class:`bytes` objects on Windows. + +.. + +.. bpo: 22602 +.. date: 2018-08-12-00-14-54 +.. nonce: ybG9K8 +.. section: Library + +The UTF-7 decoder now raises :exc:`UnicodeDecodeError` for ill-formed +sequences starting with "+" (as specified in RFC 2152). Patch by Zackery +Spytz. + +.. + +.. bpo: 2122 +.. date: 2018-08-06-21-47-03 +.. nonce: GWdmrm +.. section: Library + +The :meth:`mmap.flush() ` method now returns ``None`` on +success, raises an exception on error under all platforms. + +.. + +.. bpo: 34341 +.. date: 2018-08-06-11-01-18 +.. nonce: E0b9p2 +.. section: Library + +Appending to the ZIP archive with the ZIP64 extension no longer grows the +size of extra fields of existing entries. + +.. + +.. bpo: 34333 +.. date: 2018-08-04-00-06-28 +.. nonce: 5NHG93 +.. section: Library + +Fix %-formatting in :meth:`pathlib.PurePath.with_suffix` when formatting an +error message. + +.. + +.. bpo: 18540 +.. date: 2018-08-02-21-28-38 +.. nonce: AryoYY +.. section: Library + +The :class:`imaplib.IMAP4` and :class:`imaplib.IMAP4_SSL` classes now +resolve to the local host IP correctly when the default value of *host* +parameter (``''``) is used. + +.. + +.. bpo: 26502 +.. date: 2018-08-02-20-39-32 +.. nonce: eGXr_k +.. section: Library + +Implement ``traceback.FrameSummary.__len__()`` method to preserve +compatibility with the old tuple API. + +.. + +.. bpo: 34318 +.. date: 2018-08-02-14-43-42 +.. nonce: GneiXs +.. section: Library + +:func:`~unittest.TestCase.assertRaises`, +:func:`~unittest.TestCase.assertRaisesRegex`, +:func:`~unittest.TestCase.assertWarns` and +:func:`~unittest.TestCase.assertWarnsRegex` no longer success if the passed +callable is None. They no longer ignore unknown keyword arguments in the +context manager mode. A DeprecationWarning was raised in these cases since +Python 3.5. + +.. + +.. bpo: 9372 +.. date: 2018-08-01-21-26-17 +.. nonce: V8Ou3K +.. section: Library + +Deprecate :meth:`__getitem__` methods of +:class:`xml.dom.pulldom.DOMEventStream`, :class:`wsgiref.util.FileWrapper` +and :class:`fileinput.FileInput`. + +.. + +.. bpo: 33613 +.. date: 2018-07-31-23-33-06 +.. nonce: Cdnt0i +.. section: Library + +Fix a race condition in ``multiprocessing.semaphore_tracker`` when the +tracker receives SIGINT before it can register signal handlers for ignoring +it. + +.. + +.. bpo: 34248 +.. date: 2018-07-31-23-00-09 +.. nonce: 5U6wwc +.. section: Library + +Report filename in the exception raised when the database file cannot be +opened by :func:`dbm.gnu.open` and :func:`dbm.ndbm.open` due to OS-related +error. Patch by Zsolt Cserna. + +.. + +.. bpo: 33089 +.. date: 2018-07-29-21-53-15 +.. nonce: hxbp3g +.. section: Library + +Add math.dist() to compute the Euclidean distance between two points. + +.. + +.. bpo: 34246 +.. date: 2018-07-29-15-25-15 +.. nonce: xiKq-Q +.. section: Library + +:meth:`smtplib.SMTP.send_message` no longer modifies the content of the +*mail_options* argument. Patch by Pablo S. Blum de Aguiar. + +.. + +.. bpo: 31047 +.. date: 2018-07-29-14-12-23 +.. nonce: FSarLs +.. section: Library + +Fix ``ntpath.abspath`` for invalid paths on windows. Patch by Franz +Woellert. + +.. + +.. bpo: 32321 +.. date: 2018-07-29-13-50-32 +.. nonce: hDoNKC +.. section: Library + +Add pure Python fallback for functools.reduce. Patch by Robert Wright. + +.. + +.. bpo: 34270 +.. date: 2018-07-29-11-32-56 +.. nonce: aL6P-3 +.. section: Library + +The default asyncio task class now always has a name which can be get or set +using two new methods (:meth:`~asyncio.Task.get_name()` and +:meth:`~asyncio.Task.set_name`) and is visible in the :func:`repr` output. +An initial name can also be set using the new ``name`` keyword argument to +:func:`asyncio.create_task` or the +:meth:`~asyncio.AbstractEventLoop.create_task` method of the event loop. If +no initial name is set, the default Task implementation generates a name +like ``Task-1`` using a monotonic counter. + +.. + +.. bpo: 34263 +.. date: 2018-07-28-17-00-36 +.. nonce: zUfRsu +.. section: Library + +asyncio's event loop will not pass timeouts longer than one day to +epoll/select etc. + +.. + +.. bpo: 34035 +.. date: 2018-07-28-15-00-31 +.. nonce: 75nW0H +.. section: Library + +Fix several AttributeError in zipfile seek() methods. Patch by Micka?l +Schoentgen. + +.. + +.. bpo: 32215 +.. date: 2018-07-28-12-08-53 +.. nonce: EU68SY +.. section: Library + +Fix performance regression in :mod:`sqlite3` when a DML statement appeared +in a different line than the rest of the SQL query. + +.. + +.. bpo: 34075 +.. date: 2018-07-28-11-49-21 +.. nonce: 9u1bO- +.. section: Library + +Deprecate passing non-ThreadPoolExecutor instances to +:meth:`AbstractEventLoop.set_default_executor`. + +.. + +.. bpo: 34251 +.. date: 2018-07-28-11-47-10 +.. nonce: q3elQ6 +.. section: Library + +Restore ``msilib.Win64`` to preserve backwards compatibility since it's +already used by :mod:`distutils`' ``bdist_msi`` command. + +.. + +.. bpo: 19891 +.. date: 2018-07-26-08-45-49 +.. nonce: Y-3IiB +.. section: Library + +Ignore errors caused by missing / non-writable homedir while writing history +during exit of an interactive session. Patch by Anthony Sottile. + +.. + +.. bpo: 33089 +.. date: 2018-07-25-22-38-54 +.. nonce: C3CB7e +.. section: Library + +Enhanced math.hypot() to support more than two dimensions. + +.. + +.. bpo: 34228 +.. date: 2018-07-25-19-02-39 +.. nonce: 0Ibztw +.. section: Library + +tracemalloc: PYTHONTRACEMALLOC=0 environment variable and -X tracemalloc=0 +command line option are now allowed to disable explicitly tracemalloc at +startup. + +.. + +.. bpo: 13041 +.. date: 2018-07-25-12-08-48 +.. nonce: lNmgDz +.. section: Library + +Use :func:`shutil.get_terminal_size` to calculate the terminal width +correctly in the ``argparse.HelpFormatter`` class. Initial patch by Zbyszek +J?drzejewski-Szmek. + +.. + +.. bpo: 34213 +.. date: 2018-07-25-00-40-14 +.. nonce: O15MgP +.. section: Library + +Allow frozen dataclasses to have a field named "object". Previously this +conflicted with an internal use of "object". + +.. + +.. bpo: 34052 +.. date: 2018-07-24-16-37-40 +.. nonce: VbbFAE +.. section: Library + +:meth:`sqlite3.Connection.create_aggregate`, +:meth:`sqlite3.Connection.create_function`, +:meth:`sqlite3.Connection.set_authorizer`, +:meth:`sqlite3.Connection.set_progress_handler` methods raises TypeError +when unhashable objects are passed as callable. These methods now don't pass +such objects to SQLite API. Previous behavior could lead to segfaults. Patch +by Sergey Fedoseev. + +.. + +.. bpo: 34197 +.. date: 2018-07-23-14-12-28 +.. nonce: 7yFSP5 +.. section: Library + +Attributes *skipinitialspace*, *doublequote* and *strict* of the *dialect* +attribute of the :mod:`csv` reader are now :class:`bool` instances instead +of integers 0 or 1. + +.. + +.. bpo: 32788 +.. date: 2018-07-23-12-20-02 +.. nonce: R2jSiK +.. section: Library + +Errors other than :exc:`TypeError` raised in methods ``__adapt__()`` and +``__conform__()`` in the :mod:`sqlite3` module are now propagated to the +user. + +.. + +.. bpo: 21446 +.. date: 2018-07-22-09-05-01 +.. nonce: w6g7tn +.. section: Library + +The :2to3fixer:`reload` fixer now uses :func:`importlib.reload` instead of +deprecated :func:`imp.reload`. + +.. + +.. bpo: 940286 +.. date: 2018-07-22-07-59-32 +.. nonce: NZTzyc +.. section: Library + +pydoc's ``Helper.showtopic()`` method now prints the cross references of a +topic correctly. + +.. + +.. bpo: 34164 +.. date: 2018-07-20-18-06-00 +.. nonce: fNfT-q +.. section: Library + +:func:`base64.b32decode` could raise UnboundLocalError or OverflowError for +incorrect padding. Now it always raises :exc:`base64.Error` in these cases. + +.. + +.. bpo: 33729 +.. date: 2018-07-20-09-11-05 +.. nonce: sO6iTb +.. section: Library + +Fixed issues with arguments parsing in :mod:`hashlib`. + +.. + +.. bpo: 34097 +.. date: 2018-07-13-13-42-10 +.. nonce: F5Dk5o +.. section: Library + +ZipFile can zip files older than 1980-01-01 and newer than 2107-12-31 using +a new ``strict_timestamps`` parameter at the cost of setting the timestamp +to the limit. + +.. + +.. bpo: 34108 +.. date: 2018-07-13-08-44-52 +.. nonce: RjobUC +.. section: Library + +Remove extraneous CR in 2to3 refactor. + +.. + +.. bpo: 34070 +.. date: 2018-07-11-20-51-20 +.. nonce: WpmFAu +.. section: Library + +Make sure to only check if the handle is a tty, when opening a file with +``buffering=-1``. + +.. + +.. bpo: 27494 +.. date: 2018-07-11-10-03-21 +.. nonce: 04OWkW +.. section: Library + +Reverted :issue:`27494`. 2to3 rejects now a trailing comma in generator +expressions. + +.. + +.. bpo: 33967 +.. date: 2018-07-08-18-49-41 +.. nonce: lhaAez +.. section: Library + +functools.singledispatch now raises TypeError instead of IndexError when no +positional arguments are passed. + +.. + +.. bpo: 34041 +.. date: 2018-07-06-15-06-32 +.. nonce: 0zrKLh +.. section: Library + +Add the parameter *deterministic* to the +:meth:`sqlite3.Connection.create_function` method. Patch by Sergey Fedoseev. + +.. + +.. bpo: 34056 +.. date: 2018-07-05-22-45-46 +.. nonce: 86isrU +.. section: Library + +Ensure the loader shim created by ``imp.load_module`` always returns bytes +from its ``get_data()`` function. This fixes using ``imp.load_module`` with +:pep:`552` hash-based pycs. + +.. + +.. bpo: 34054 +.. date: 2018-07-05-18-37-05 +.. nonce: nWRS6M +.. section: Library + +The multiprocessing module now uses the monotonic clock +:func:`time.monotonic` instead of the system clock :func:`time.time` to +implement timeout. + +.. + +.. bpo: 34043 +.. date: 2018-07-04-21-14-35 +.. nonce: 0YJNq9 +.. section: Library + +Optimize tarfile uncompress performance about 15% when gzip is used. + +.. + +.. bpo: 34044 +.. date: 2018-07-04-17-14-26 +.. nonce: KWAu4y +.. section: Library + +``subprocess.Popen`` now copies the *startupinfo* argument to leave it +unchanged: it will modify the copy, so that the same ``STARTUPINFO`` object +can be used multiple times. + +.. + +.. bpo: 34010 +.. date: 2018-07-04-07-36-53 +.. nonce: VNDkde +.. section: Library + +Fixed a performance regression for reading streams with tarfile. The +buffered read should use a list, instead of appending to a bytes object. + +.. + +.. bpo: 34019 +.. date: 2018-07-02-05-59-11 +.. nonce: ZXJIife +.. section: Library + +webbrowser: Correct the arguments passed to Opera Browser when opening a new +URL using the ``webbrowser`` module. Patch by Bumsik Kim. + +.. + +.. bpo: 34003 +.. date: 2018-06-29-13-05-01 +.. nonce: Iu831h +.. section: Library + +csv.DictReader now creates dicts instead of OrderedDicts. Patch by Michael +Selik. + +.. + +.. bpo: 33978 +.. date: 2018-06-29-12-23-34 +.. nonce: y4csIw +.. section: Library + +Closed existing logging handlers before reconfiguration via fileConfig and +dictConfig. Patch by Karthikeyan Singaravelan. + +.. + +.. bpo: 14117 +.. date: 2018-06-29-00-31-36 +.. nonce: 3nvDuR +.. section: Library + +Make minor tweaks to turtledemo. The 'wikipedia' example is now 'rosette', +describing what it draws. The 'penrose' print output is reduced. The'1024' +output of 'tree' is eliminated. + +.. + +.. bpo: 33974 +.. date: 2018-06-28-14-56-44 +.. nonce: SA8nNP +.. section: Library + +Fixed passing lists and tuples of strings containing special characters +``"``, ``\``, ``{``, ``}`` and ``\n`` as options to :mod:`~tkinter.ttk` +widgets. + +.. + +.. bpo: 27500 +.. date: 2018-06-28-13-00-12 +.. nonce: _s1gZ5 +.. section: Library + +Fix getaddrinfo to resolve IPv6 addresses correctly. + +.. + +.. bpo: 24567 +.. date: 2018-06-27-00-31-30 +.. nonce: FuePyY +.. section: Library + +Improve random.choices() to handle subnormal input weights that could +occasionally trigger an IndexError. + +.. + +.. bpo: 33871 +.. date: 2018-06-26-19-03-56 +.. nonce: XhlrGU +.. section: Library + +Fixed integer overflow in :func:`os.readv`, :func:`os.writev`, +:func:`os.preadv` and :func:`os.pwritev` and in :func:`os.sendfile` with +*headers* or *trailers* arguments (on BSD-based OSes and macOS). + +.. + +.. bpo: 25007 +.. date: 2018-06-26-16-55-59 +.. nonce: 6LQWOF +.. section: Library + +Add :func:`copy.copy` and :func:`copy.deepcopy` support to zlib compressors +and decompressors. Patch by Zackery Spytz. + +.. + +.. bpo: 33929 +.. date: 2018-06-26-02-09-18 +.. nonce: OcCLah +.. section: Library + +multiprocessing: Fix a race condition in Popen of +multiprocessing.popen_spawn_win32. The child process now duplicates the read +end of pipe instead of "stealing" it. Previously, the read end of pipe was +"stolen" by the child process, but it leaked a handle if the child process +had been terminated before it could steal the handle from the parent +process. + +.. + +.. bpo: 33899 +.. date: 2018-06-24-01-57-14 +.. nonce: IaOcAr +.. section: Library + +Tokenize module now implicitly emits a NEWLINE when provided with input that +does not have a trailing new line. This behavior now matches what the C +tokenizer does internally. Contributed by Ammar Askar. + +.. + +.. bpo: 33897 +.. date: 2018-06-23-18-09-28 +.. nonce: Hu0yvt +.. section: Library + +Added a 'force' keyword argument to logging.basicConfig(). + +.. + +.. bpo: 33695 +.. date: 2018-06-23-12-47-37 +.. nonce: seRTxh +.. section: Library + +:func:`shutil.copytree` uses :func:`os.scandir` function and all copy +functions depending from it use cached :func:`os.stat` values. The speedup +for copying a directory with 8000 files is around +9% on Linux, +20% on +Windows and + 30% on a Windows SMB share. Also the number of :func:`os.stat` +syscalls is reduced by 38% making :func:`shutil.copytree` especially faster +on network filesystems. (Contributed by Giampaolo Rodola' in +:issue:`33695`.) + +.. + +.. bpo: 33916 +.. date: 2018-06-21-11-35-47 +.. nonce: cZgPCD +.. section: Library + +bz2 and lzma: When Decompressor.__init__() is called twice, free the old +lock to not leak memory. + +.. + +.. bpo: 32568 +.. date: 2018-06-21-09-33-02 +.. nonce: f_meGY +.. section: Library + +Make select.epoll() and its documentation consistent regarding *sizehint* +and *flags*. + +.. + +.. bpo: 33833 +.. date: 2018-06-17-11-46-20 +.. nonce: RnEqvM +.. section: Library + +Fixed bug in asyncio where ProactorSocketTransport logs AssertionError if +force closed during write. + +.. + +.. bpo: 33663 +.. date: 2018-06-17-10-48-03 +.. nonce: sUuGmq +.. section: Library + +Convert content length to string before putting to header. + +.. + +.. bpo: 33721 +.. date: 2018-06-14-17-53-30 +.. nonce: 8i9_9A +.. section: Library + +:mod:`os.path` functions that return a boolean result like +:func:`~os.path.exists`, :func:`~os.path.lexists`, :func:`~os.path.isdir`, +:func:`~os.path.isfile`, :func:`~os.path.islink`, and +:func:`~os.path.ismount`, and :mod:`pathlib.Path` methods that return a +boolean result like :meth:`~pathlib.Path.exists()`, +:meth:`~pathlib.Path.is_dir()`, :meth:`~pathlib.Path.is_file()`, +:meth:`~pathlib.Path.is_mount()`, :meth:`~pathlib.Path.is_symlink()`, +:meth:`~pathlib.Path.is_block_device()`, +:meth:`~pathlib.Path.is_char_device()`, :meth:`~pathlib.Path.is_fifo()`, +:meth:`~pathlib.Path.is_socket()` now return ``False`` instead of raising +:exc:`ValueError` or its subclasses :exc:`UnicodeEncodeError` and +:exc:`UnicodeDecodeError` for paths that contain characters or bytes +unrepresentable at the OS level. + +.. + +.. bpo: 26544 +.. date: 2018-06-13-20-33-29 +.. nonce: hQ1oMt +.. section: Library + +Fixed implementation of :func:`platform.libc_ver`. It almost always returned +version '2.9' for glibc. + +.. + +.. bpo: 33843 +.. date: 2018-06-12-18-59-16 +.. nonce: qVAK8g +.. section: Library + +Remove deprecated ``cgi.escape``, ``cgi.parse_qs`` and ``cgi.parse_qsl``. + +.. + +.. bpo: 33842 +.. date: 2018-06-12-18-34-54 +.. nonce: RZXSGu +.. section: Library + +Remove ``tarfile.filemode`` which is deprecated since Python 3.3. + +.. + +.. bpo: 30167 +.. date: 2018-06-10-19-29-17 +.. nonce: G5EgC5 +.. section: Library + +Prevent site.main() exception if PYTHONSTARTUP is set. Patch by Steve Weber. + +.. + +.. bpo: 33805 +.. date: 2018-06-10-15-14-17 +.. nonce: 5LAz5a +.. section: Library + +Improve error message of dataclasses.replace() when an InitVar is not +specified + +.. + +.. bpo: 33687 +.. date: 2018-06-10-14-08-52 +.. nonce: 1zZdnA +.. section: Library + +Fix the call to ``os.chmod()`` for ``uu.decode()`` if a mode is given or +decoded. Patch by Timo Furrer. + +.. + +.. bpo: 33812 +.. date: 2018-06-10-13-26-02 +.. nonce: frGAOr +.. section: Library + +Datetime instance d with non-None tzinfo, but with d.tzinfo.utcoffset(d) +returning None is now treated as naive by the astimezone() method. + +.. + +.. bpo: 32108 +.. date: 2018-06-10-12-15-26 +.. nonce: iEkvh0 +.. section: Library + +In configparser, don't clear section when it is assigned to itself. + +.. + +.. bpo: 27397 +.. date: 2018-06-10-09-43-54 +.. nonce: 0_fFQR +.. section: Library + +Make email module properly handle invalid-length base64 strings. + +.. + +.. bpo: 33578 +.. date: 2018-06-08-23-55-34 +.. nonce: 7oSsjG +.. section: Library + +Implement multibyte encoder/decoder state methods + +.. + +.. bpo: 30805 +.. date: 2018-06-08-17-34-16 +.. nonce: 3qCWa0 +.. section: Library + +Avoid race condition with debug logging + +.. + +.. bpo: 33476 +.. date: 2018-06-08-00-29-40 +.. nonce: R0Bhlj +.. section: Library + +Fix _header_value_parser.py when address group is missing final ';'. +Contributed by Enrique Perez-Terron + +.. + +.. bpo: 33694 +.. date: 2018-06-07-23-51-00 +.. nonce: F1zIR1 +.. section: Library + +asyncio: Fix a race condition causing data loss on +pause_reading()/resume_reading() when using the ProactorEventLoop. + +.. + +.. bpo: 32493 +.. date: 2018-06-07-18-55-35 +.. nonce: 1Bte62 +.. section: Library + +Correct test for ``uuid_enc_be`` availability in ``configure.ac``. Patch by +Michael Felt. + +.. + +.. bpo: 33792 +.. date: 2018-06-07-12-38-12 +.. nonce: 3aKG7u +.. section: Library + +Add asyncio.WindowsSelectorEventLoopPolicy and +asyncio.WindowsProactorEventLoopPolicy. + +.. + +.. bpo: 33274 +.. date: 2018-06-06-22-01-33 +.. nonce: teYqv8 +.. section: Library + +W3C DOM Level 1 specifies return value of Element.removeAttributeNode() as +"The Attr node that was removed." xml.dom.minidom now complies with this +requirement. + +.. + +.. bpo: 33778 +.. date: 2018-06-05-20-22-30 +.. nonce: _tSAS6 +.. section: Library + +Update ``unicodedata``'s database to Unicode version 11.0.0. + +.. + +.. bpo: 33165 +.. date: 2018-06-05-12-43-25 +.. nonce: 9TIsVf +.. section: Library + +Added a stacklevel parameter to logging calls to allow use of wrapper/helper +functions for logging APIs. + +.. + +.. bpo: 33770 +.. date: 2018-06-05-11-29-26 +.. nonce: oBhxxw +.. section: Library + +improve base64 exception message for encoded inputs of invalid length + +.. + +.. bpo: 33769 +.. date: 2018-06-04-13-46-39 +.. nonce: D_pxYz +.. section: Library + +asyncio/start_tls: Fix error message; cancel callbacks in case of an +unhandled error; mark SSLTransport as closed if it is aborted. + +.. + +.. bpo: 33767 +.. date: 2018-06-03-22-41-59 +.. nonce: 2e82g3 +.. section: Library + +The concatenation (``+``) and repetition (``*``) sequence operations now +raise :exc:`TypeError` instead of :exc:`SystemError` when performed on +:class:`mmap.mmap` objects. Patch by Zackery Spytz. + +.. + +.. bpo: 33734 +.. date: 2018-06-01-10-55-48 +.. nonce: x1W9x0 +.. section: Library + +asyncio/ssl: Fix AttributeError, increase default handshake timeout + +.. + +.. bpo: 31014 +.. date: 2018-05-31-06-48-55 +.. nonce: SNY681 +.. section: Library + +Fixed creating a controller for :mod:`webbrowser` when a user specifies a +path to an entry in the BROWSER environment variable. Based on patch by +John Still. + +.. + +.. bpo: 2504 +.. date: 2018-05-30-16-00-06 +.. nonce: BynUvU +.. section: Library + +Add gettext.pgettext() and variants. + +.. + +.. bpo: 33197 +.. date: 2018-05-30-00-26-05 +.. nonce: XkE2kL +.. section: Library + +Add description property for _ParameterKind + +.. + +.. bpo: 32751 +.. date: 2018-05-29-15-32-18 +.. nonce: oBTqr7 +.. section: Library + +When cancelling the task due to a timeout, :meth:`asyncio.wait_for` will now +wait until the cancellation is complete. + +.. + +.. bpo: 32684 +.. date: 2018-05-29-12-51-18 +.. nonce: ZEIism +.. section: Library + +Fix gather to propagate cancellation of itself even with return_exceptions. + +.. + +.. bpo: 33654 +.. date: 2018-05-29-01-13-39 +.. nonce: sa81Si +.. section: Library + +Support protocol type switching in SSLTransport.set_protocol(). + +.. + +.. bpo: 33674 +.. date: 2018-05-29-00-37-56 +.. nonce: 2IkGhL +.. section: Library + +Pause the transport as early as possible to further reduce the risk of +data_received() being called before connection_made(). + +.. + +.. bpo: 33671 +.. date: 2018-05-28-23-25-17 +.. nonce: GIdKKi +.. section: Library + +:func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`, +:func:`shutil.copytree` and :func:`shutil.move` use platform-specific +fast-copy syscalls on Linux, Solaris and macOS in order to copy the file +more efficiently. On Windows :func:`shutil.copyfile` uses a bigger default +buffer size (1 MiB instead of 16 KiB) and a :func:`memoryview`-based variant +of :func:`shutil.copyfileobj` is used. The speedup for copying a 512MiB file +is about +26% on Linux, +50% on macOS and +40% on Windows. Also, much less +CPU cycles are consumed. (Contributed by Giampaolo Rodola' in +:issue:`25427`.) + +.. + +.. bpo: 33674 +.. date: 2018-05-28-22-49-59 +.. nonce: 6LFFj7 +.. section: Library + +Fix a race condition in SSLProtocol.connection_made() of asyncio.sslproto: +start immediately the handshake instead of using call_soon(). Previously, +data_received() could be called before the handshake started, causing the +handshake to hang or fail. + +.. + +.. bpo: 31647 +.. date: 2018-05-28-18-40-26 +.. nonce: s4Fad3 +.. section: Library + +Fixed bug where calling write_eof() on a _SelectorSocketTransport after it's +already closed raises AttributeError. + +.. + +.. bpo: 32610 +.. date: 2018-05-28-16-40-32 +.. nonce: KvUAsL +.. section: Library + +Make asyncio.all_tasks() return only pending tasks. + +.. + +.. bpo: 32410 +.. date: 2018-05-28-16-19-35 +.. nonce: Z1DZaF +.. section: Library + +Avoid blocking on file IO in sendfile fallback code + +.. + +.. bpo: 33469 +.. date: 2018-05-28-15-55-12 +.. nonce: hmXBpY +.. section: Library + +Fix RuntimeError after closing loop that used run_in_executor + +.. + +.. bpo: 33672 +.. date: 2018-05-28-12-29-54 +.. nonce: GM_Xm_ +.. section: Library + +Fix Task.__repr__ crash with Cython's bogus coroutines + +.. + +.. bpo: 33654 +.. date: 2018-05-26-13-09-34 +.. nonce: IbYWxA +.. section: Library + +Fix transport.set_protocol() to support switching between asyncio.Protocol +and asyncio.BufferedProtocol. Fix loop.start_tls() to work with +asyncio.BufferedProtocols. + +.. + +.. bpo: 33652 +.. date: 2018-05-26-10-13-59 +.. nonce: humFJ1 +.. section: Library + +Pickles of type variables and subscripted generics are now future-proof and +compatible with older Python versions. + +.. + +.. bpo: 32493 +.. date: 2018-05-24-17-41-36 +.. nonce: 5tAoAu +.. section: Library + +Fixed :func:`uuid.uuid1` on FreeBSD. + +.. + +.. bpo: 33238 +.. date: 2018-05-24-09-15-52 +.. nonce: ooDfoo +.. section: Library + +Add ``InvalidStateError`` to :mod:`concurrent.futures`. +``Future.set_result`` and ``Future.set_exception`` now raise +``InvalidStateError`` if the futures are not pending or running. Patch by +Jason Haydaman. + +.. + +.. bpo: 33618 +.. date: 2018-05-23-20-14-34 +.. nonce: xU39lr +.. section: Library + +Finalize and document preliminary and experimental TLS 1.3 support with +OpenSSL 1.1.1 + +.. + +.. bpo: 33625 +.. date: 2018-05-23-17-07-54 +.. nonce: nzQgD8 +.. section: Library + +Release GIL on `grp.getgrnam`, `grp.getgrgid`, `pwd.getpwnam` and +`pwd.getpwuid` if reentrant variants of these functions are available. Patch +by William Grzybowski. + +.. + +.. bpo: 33623 +.. date: 2018-05-23-14-58-05 +.. nonce: wAw1cF +.. section: Library + +Fix possible SIGSGV when asyncio.Future is created in __del__ + +.. + +.. bpo: 11874 +.. date: 2018-05-23-00-26-27 +.. nonce: glK5iP +.. section: Library + +Use a better regex when breaking usage into wrappable parts. Avoids bogus +assertion errors from custom metavar strings. + +.. + +.. bpo: 30877 +.. date: 2018-05-22-13-05-12 +.. nonce: JZEGjI +.. section: Library + +Fixed a bug in the Python implementation of the JSON decoder that prevented +the cache of parsed strings from clearing after finishing the decoding. +Based on patch by c-fos. + +.. + +.. bpo: 33604 +.. date: 2018-05-22-11-55-33 +.. nonce: 6V4JcO +.. section: Library + +Remove HMAC default to md5 marked for removal in 3.8 (removal originally +planned in 3.6, bump to 3.8 in gh-7062). + +.. + +.. bpo: 33582 +.. date: 2018-05-19-15-58-14 +.. nonce: qBZPmF +.. section: Library + +Emit a deprecation warning for inspect.formatargspec + +.. + +.. bpo: 21145 +.. date: 2018-05-18-22-52-34 +.. nonce: AiQMDx +.. section: Library + +Add ``functools.cached_property`` decorator, for computed properties cached +for the life of the instance. + +.. + +.. bpo: 33570 +.. date: 2018-05-18-21-50-47 +.. nonce: 7CZy4t +.. section: Library + +Change TLS 1.3 cipher suite settings for compatibility with OpenSSL +1.1.1-pre6 and newer. OpenSSL 1.1.1 will have TLS 1.3 ciphers enabled by +default. + +.. + +.. bpo: 28556 +.. date: 2018-05-17-22-53-08 +.. nonce: C6Hnd1 +.. section: Library + +Do not simplify arguments to `typing.Union`. Now `Union[Manager, Employee]` +is not simplified to `Employee` at runtime. Such simplification previously +caused several bugs and limited possibilities for introspection. + +.. + +.. bpo: 12486 +.. date: 2018-05-17-22-14-58 +.. nonce: HBeh62 +.. section: Library + +:func:`tokenize.generate_tokens` is now documented as a public API to +tokenize unicode strings. It was previously present but undocumented. + +.. + +.. bpo: 33540 +.. date: 2018-05-16-18-10-38 +.. nonce: wy9LRV +.. section: Library + +Add a new ``block_on_close`` class attribute to ``ForkingMixIn`` and +``ThreadingMixIn`` classes of :mod:`socketserver`. + +.. + +.. bpo: 33548 +.. date: 2018-05-16-17-05-48 +.. nonce: xWslmx +.. section: Library + +tempfile._candidate_tempdir_list should consider common TEMP locations + +.. + +.. bpo: 33109 +.. date: 2018-05-16-14-57-58 +.. nonce: nPLL_S +.. section: Library + +argparse subparsers are once again not required by default, reverting the +change in behavior introduced by bpo-26510 in 3.7.0a2. + +.. + +.. bpo: 33541 +.. date: 2018-05-16-12-32-48 +.. nonce: kQORPE +.. section: Library + +Remove unused private method ``_strptime.LocaleTime.__pad`` (a.k.a. +``_LocaleTime__pad``). + +.. + +.. bpo: 33536 +.. date: 2018-05-16-10-07-40 +.. nonce: _s0TE8 +.. section: Library + +dataclasses.make_dataclass now checks for invalid field names and duplicate +fields. Also, added a check for invalid field specifications. + +.. + +.. bpo: 33542 +.. date: 2018-05-16-09-30-27 +.. nonce: idNAcs +.. section: Library + +Prevent ``uuid.get_node`` from using a DUID instead of a MAC on Windows. +Patch by Zvi Effron + +.. + +.. bpo: 26819 +.. date: 2018-05-16-05-24-43 +.. nonce: taxbVT +.. section: Library + +Fix race condition with `ReadTransport.resume_reading` in Windows proactor +event loop. + +.. + +.. bpo: 0 +.. date: 2018-05-15-18-02-03 +.. nonce: pj2Mbb +.. section: Library + +Fix failure in `typing.get_type_hints()` when ClassVar was provided as a +string forward reference. + +.. + +.. bpo: 33516 +.. date: 2018-05-15-17-06-42 +.. nonce: ZzARe4 +.. section: Library + +:class:`unittest.mock.MagicMock` now supports the ``__round__`` magic +method. + +.. + +.. bpo: 28612 +.. date: 2018-05-15-15-03-48 +.. nonce: E9dz39 +.. section: Library + +Added support for Site Maps to urllib's ``RobotFileParser`` as +:meth:`RobotFileParser.site_maps() +`. Patch by Lady Red, based on +patch by Peter Wirtz. + +.. + +.. bpo: 28167 +.. date: 2018-05-15-13-49-13 +.. nonce: p4RdQt +.. section: Library + +Remove platform.linux_distribution, which was deprecated since 3.5. + +.. + +.. bpo: 33504 +.. date: 2018-05-15-12-11-13 +.. nonce: czsHFg +.. section: Library + +Switch the default dictionary implementation for :mod:`configparser` from +:class:`collections.OrderedDict` to the standard :class:`dict` type. + +.. + +.. bpo: 33505 +.. date: 2018-05-14-18-05-35 +.. nonce: L8pAyt +.. section: Library + +Optimize asyncio.ensure_future() by reordering if checks: 1.17x faster. + +.. + +.. bpo: 33497 +.. date: 2018-05-14-17-49-34 +.. nonce: wWT6XM +.. section: Library + +Add errors param to cgi.parse_multipart and make an encoding in FieldStorage +use the given errors (needed for Twisted). Patch by Amber Brown. + +.. + +.. bpo: 29235 +.. date: 2018-05-14-15-01-55 +.. nonce: 47Fzwt +.. section: Library + +The :class:`cProfile.Profile` class can now be used as a context manager. +Patch by Scott Sanderson. + +.. + +.. bpo: 33495 +.. date: 2018-05-14-10-29-03 +.. nonce: TeGTQJ +.. section: Library + +Change dataclasses.Fields repr to use the repr of each of its members, +instead of str. This makes it more clear what each field actually +represents. This is especially true for the 'type' member. + +.. + +.. bpo: 26103 +.. date: 2018-05-14-09-07-14 +.. nonce: _zU8E2 +.. section: Library + +Correct ``inspect.isdatadescriptor`` to look for ``__set__`` or +``__delete__``. Patch by Aaron Hall. + +.. + +.. bpo: 29209 +.. date: 2018-05-12-13-06-41 +.. nonce: h5RxYy +.. section: Library + +Removed the ``doctype()`` method and the *html* parameter of the constructor +of :class:`~xml.etree.ElementTree.XMLParser`. The ``doctype()`` method +defined in a subclass will no longer be called. Deprecated methods +``getchildren()`` and ``getiterator()`` in the :mod:`~xml.etree.ElementTree` +module emit now a :exc:`DeprecationWarning` instead of +:exc:`PendingDeprecationWarning`. + +.. + +.. bpo: 33453 +.. date: 2018-05-12-06-01-02 +.. nonce: Fj-jMD +.. section: Library + +Fix dataclasses to work if using literal string type annotations or if using +PEP 563 "Postponed Evaluation of Annotations". Only specific string +prefixes are detected for both ClassVar ("ClassVar" and "typing.ClassVar") +and InitVar ("InitVar" and "dataclasses.InitVar"). + +.. + +.. bpo: 28556 +.. date: 2018-05-08-16-43-42 +.. nonce: _xr5mp +.. section: Library + +Minor fixes in typing module: add annotations to ``NamedTuple.__new__``, +pass ``*args`` and ``**kwds`` in ``Generic.__new__``. Original PRs by +Paulius ?arka and Chad Dombrova. + +.. + +.. bpo: 33365 +.. date: 2018-05-08-15-01-10 +.. nonce: SicsAd +.. section: Library + +Print the header values besides the header keys instead just the header keys +if *debuglevel* is set to >0 in :mod:`http.client`. Patch by Marco Strigl. + +.. + +.. bpo: 20087 +.. date: 2018-05-05-18-02-24 +.. nonce: lJrvXL +.. section: Library + +Updated alias mapping with glibc 2.27 supported locales. + +.. + +.. bpo: 33422 +.. date: 2018-05-05-09-53-05 +.. nonce: 4FtQ0q +.. section: Library + +Fix trailing quotation marks getting deleted when looking up byte/string +literals on pydoc. Patch by Andr?s Delfino. + +.. + +.. bpo: 28167 +.. date: 2018-05-02-07-26-29 +.. nonce: 7FwDfN +.. section: Library + +The function ``platform.linux_distribution`` and ``platform.dist`` now +trigger a ``DeprecationWarning`` and have been marked for removal in Python +3.8 + +.. + +.. bpo: 33281 +.. date: 2018-05-01-22-35-50 +.. nonce: d4jOt4 +.. section: Library + +Fix ctypes.util.find_library regression on macOS. + +.. + +.. bpo: 33311 +.. date: 2018-05-01-22-33-14 +.. nonce: 8YPB-k +.. section: Library + +Text and html output generated by cgitb does not display parentheses if the +current call is done directly in the module. Patch by St?phane Blondon. + +.. + +.. bpo: 27300 +.. date: 2018-05-01-02-24-44 +.. nonce: LdIXvK +.. section: Library + +The file classes in *tempfile* now accept an *errors* parameter that +complements the already existing *encoding*. Patch by Stephan Hohe. + +.. + +.. bpo: 32933 +.. date: 2018-04-30-22-43-31 +.. nonce: M3iI_y +.. section: Library + +:func:`unittest.mock.mock_open` now supports iteration over the file +contents. Patch by Tony Flury. + +.. + +.. bpo: 33217 +.. date: 2018-04-30-13-29-47 +.. nonce: TENDzd +.. section: Library + +Raise :exc:`TypeError` when looking up non-Enum objects in Enum classes and +Enum members. + +.. + +.. bpo: 33197 +.. date: 2018-04-29-23-56-20 +.. nonce: dgRLqr +.. section: Library + +Update error message when constructing invalid inspect.Parameters Patch by +Dong-hee Na. + +.. + +.. bpo: 33383 +.. date: 2018-04-29-11-15-38 +.. nonce: g32YWn +.. section: Library + +Fixed crash in the get() method of the :mod:`dbm.ndbm` database object when +it is called with a single argument. + +.. + +.. bpo: 33375 +.. date: 2018-04-28-08-11-35 +.. nonce: Dbq1fz +.. section: Library + +The warnings module now finds the Python file associated with a warning from +the code object, rather than the frame's global namespace. This is +consistent with how tracebacks and pdb find filenames, and should work +better for dynamically executed code. + +.. + +.. bpo: 33336 +.. date: 2018-04-27-22-18-38 +.. nonce: T8rxn0 +.. section: Library + +``imaplib`` now allows ``MOVE`` command in ``IMAP4.uid()`` (RFC 6851: IMAP +MOVE Extension) and potentially as a name of supported method of ``IMAP4`` +object. + +.. + +.. bpo: 32455 +.. date: 2018-04-26-13-31-10 +.. nonce: KPWg3K +.. section: Library + +Added *jump* parameter to :func:`dis.stack_effect`. + +.. + +.. bpo: 27485 +.. date: 2018-04-25-14-05-21 +.. nonce: nclVSU +.. section: Library + +Rename and deprecate undocumented functions in :func:`urllib.parse`. + +.. + +.. bpo: 33332 +.. date: 2018-04-23-21-41-30 +.. nonce: Y6OZ8Z +.. section: Library + +Add ``signal.valid_signals()`` to expose the POSIX sigfillset() +functionality. + +.. + +.. bpo: 33251 +.. date: 2018-04-23-18-25-36 +.. nonce: C_K-J9 +.. section: Library + +`ConfigParser.items()` was fixed so that key-value pairs passed in via +`vars` are not included in the resulting output. + +.. + +.. bpo: 33329 +.. date: 2018-04-23-13-21-39 +.. nonce: lQ-Eod +.. section: Library + +Fix multiprocessing regression on newer glibcs + +.. + +.. bpo: 33334 +.. date: 2018-04-22-20-13-21 +.. nonce: 19UMOC +.. section: Library + +:func:`dis.stack_effect` now supports all defined opcodes including NOP and +EXTENDED_ARG. + +.. + +.. bpo: 991266 +.. date: 2018-04-21-00-24-08 +.. nonce: h93TP_ +.. section: Library + +Fix quoting of the ``Comment`` attribute of +:class:`http.cookies.SimpleCookie`. + +.. + +.. bpo: 33131 +.. date: 2018-04-20-10-43-17 +.. nonce: L2E977 +.. section: Library + +Upgrade bundled version of pip to 10.0.1. + +.. + +.. bpo: 33308 +.. date: 2018-04-18-19-12-25 +.. nonce: fW75xi +.. section: Library + +Fixed a crash in the :mod:`parser` module when converting an ST object to a +tree of tuples or lists with ``line_info=False`` and ``col_info=True``. + +.. + +.. bpo: 23403 +.. date: 2018-04-16-16-21-09 +.. nonce: rxR1Q_ +.. section: Library + +lib2to3 now uses pickle protocol 4 for pre-computed grammars. + +.. + +.. bpo: 33266 +.. date: 2018-04-16-15-59-21 +.. nonce: w2PAm- +.. section: Library + +lib2to3 now recognizes ``rf'...'`` strings. + +.. + +.. bpo: 11594 +.. date: 2018-04-16-08-42-03 +.. nonce: QLo4vv +.. section: Library + +Ensure line-endings are respected when using lib2to3. + +.. + +.. bpo: 33254 +.. date: 2018-04-13-15-14-47 +.. nonce: DS4KFK +.. section: Library + +Have :func:`importlib.resources.contents` and +:meth:`importlib.abc.ResourceReader.contents` return an :term:`iterable` +instead of an :term:`iterator`. + +.. + +.. bpo: 33265 +.. date: 2018-04-13-08-12-50 +.. nonce: KPQRk0 +.. section: Library + +``contextlib.ExitStack`` and ``contextlib.AsyncExitStack`` now use a method +instead of a wrapper function for exit callbacks. + +.. + +.. bpo: 33263 +.. date: 2018-04-11-20-29-19 +.. nonce: B56Hc1 +.. section: Library + +Fix FD leak in `_SelectorSocketTransport` Patch by Vlad Starostin. + +.. + +.. bpo: 33256 +.. date: 2018-04-10-20-57-14 +.. nonce: ndHkqu +.. section: Library + +Fix display of ```` call in the html produced by ``cgitb.html()``. +Patch by St?phane Blondon. + +.. + +.. bpo: 33144 +.. date: 2018-04-10-14-50-30 +.. nonce: iZr4et +.. section: Library + +``random.Random()`` and its subclassing mechanism got optimized to check +only once at class/subclass instantiation time whether its ``getrandbits()`` +method can be relied on by other methods, including ``randrange()``, for the +generation of arbitrarily large random integers. Patch by Wolfgang Maier. + +.. + +.. bpo: 33185 +.. date: 2018-04-08-22-54-07 +.. nonce: Id-Ba9 +.. section: Library + +Fixed regression when running pydoc with the :option:`-m` switch. (The +regression was introduced in 3.7.0b3 by the resolution of :issue:`33053`) + +This fix also changed pydoc to add ``os.getcwd()`` to :data:`sys.path` when +necessary, rather than adding ``"."``. + +.. + +.. bpo: 29613 +.. date: 2018-04-07-13-49-39 +.. nonce: r6FDnB +.. section: Library + +Added support for the ``SameSite`` cookie flag to the ``http.cookies`` +module. + +.. + +.. bpo: 33169 +.. date: 2018-04-06-14-56-26 +.. nonce: ByhDqb +.. section: Library + +Delete entries of ``None`` in :data:`sys.path_importer_cache` when +:meth:`importlib.machinery.invalidate_caches` is called. + +.. + +.. bpo: 33203 +.. date: 2018-04-05-11-09-45 +.. nonce: Hje9Py +.. section: Library + +``random.Random.choice()`` now raises ``IndexError`` for empty sequences +consistently even when called from subclasses without a ``getrandbits()`` +implementation. + +.. + +.. bpo: 33224 +.. date: 2018-04-04-23-41-30 +.. nonce: pyR0jB +.. section: Library + +Update difflib.mdiff() for :pep:`479`. Convert an uncaught StopIteration in +a generator into a return-statement. + +.. + +.. bpo: 33209 +.. date: 2018-04-03-10-37-13 +.. nonce: 9sGWE_ +.. section: Library + +End framing at the end of C implementation of :func:`pickle.Pickler.dump`. + +.. + +.. bpo: 32861 +.. date: 2018-04-02-20-44-54 +.. nonce: HeBjzN +.. section: Library + +The urllib.robotparser's ``__str__`` representation now includes wildcard +entries and the "Crawl-delay" and "Request-rate" fields. Also removes extra +newlines that were being appended to the end of the string. Patch by Michael +Lazar. + +.. + +.. bpo: 23403 +.. date: 2018-04-02-16-10-12 +.. nonce: KG7ADV +.. section: Library + +``DEFAULT_PROTOCOL`` in :mod:`pickle` was bumped to 4. Protocol 4 is +described in :pep:`3154` and available since Python 3.4. It offers better +performance and smaller size compared to protocol 3 introduced in Python +3.0. + +.. + +.. bpo: 20104 +.. date: 2018-04-01-19-21-04 +.. nonce: -AKcGa +.. section: Library + +Improved error handling and fixed a reference leak in +:func:`os.posix_spawn()`. + +.. + +.. bpo: 33106 +.. date: 2018-03-30-01-20-35 +.. nonce: zncfvW +.. section: Library + +Deleting a key from a read-only dbm database raises module specfic error +instead of KeyError. + +.. + +.. bpo: 33175 +.. date: 2018-03-29-04-32-25 +.. nonce: _zs1yM +.. section: Library + +In dataclasses, Field.__set_name__ now looks up the __set_name__ special +method on the class, not the instance, of the default value. + +.. + +.. bpo: 32380 +.. date: 2018-03-29-03-09-22 +.. nonce: NhuGig +.. section: Library + +Create functools.singledispatchmethod to support generic single dispatch on +descriptors and methods. + +.. + +.. bpo: 33141 +.. date: 2018-03-26-12-33-13 +.. nonce: 23wlxf +.. section: Library + +Have Field objects pass through __set_name__ to their default values, if +they have their own __set_name__. + +.. + +.. bpo: 33096 +.. date: 2018-03-25-13-18-16 +.. nonce: ofdbe7 +.. section: Library + +Allow ttk.Treeview.insert to insert iid that has a false boolean value. Note +iid=0 and iid=False would be same. Patch by Garvit Khatri. + +.. + +.. bpo: 32873 +.. date: 2018-03-24-19-54-48 +.. nonce: cHyoAm +.. section: Library + +Treat type variables and special typing forms as immutable by copy and +pickle. This fixes several minor issues and inconsistencies, and improves +backwards compatibility with Python 3.6. + +.. + +.. bpo: 33134 +.. date: 2018-03-24-19-34-26 +.. nonce: hbVeIX +.. section: Library + +When computing dataclass's __hash__, use the lookup table to contain the +function which returns the __hash__ value. This is an improvement over +looking up a string, and then testing that string to see what to do. + +.. + +.. bpo: 33127 +.. date: 2018-03-24-15-08-24 +.. nonce: olJmHv +.. section: Library + +The ssl module now compiles with LibreSSL 2.7.1. + +.. + +.. bpo: 32505 +.. date: 2018-03-22-16-05-56 +.. nonce: YK1N8v +.. section: Library + +Raise TypeError if a member variable of a dataclass is of type Field, but +doesn't have a type annotation. + +.. + +.. bpo: 33078 +.. date: 2018-03-21-17-59-39 +.. nonce: PQOniT +.. section: Library + +Fix the failure on OSX caused by the tests relying on sem_getvalue + +.. + +.. bpo: 33116 +.. date: 2018-03-21-16-52-26 +.. nonce: Tvzerj +.. section: Library + +Add 'Field' to dataclasses.__all__. + +.. + +.. bpo: 32896 +.. date: 2018-03-20-20-53-21 +.. nonce: ewW3Ln +.. section: Library + +Fix an error where subclassing a dataclass with a field that uses a +default_factory would generate an incorrect class. + +.. + +.. bpo: 33100 +.. date: 2018-03-19-20-47-00 +.. nonce: chyIO4 +.. section: Library + +Dataclasses: If a field has a default value that's a MemberDescriptorType, +then it's from that field being in __slots__, not an actual default value. + +.. + +.. bpo: 32953 +.. date: 2018-03-18-17-38-48 +.. nonce: t8WAWN +.. section: Library + +If a non-dataclass inherits from a frozen dataclass, allow attributes to be +added to the derived class. Only attributes from the frozen dataclass +cannot be assigned to. Require all dataclasses in a hierarchy to be either +all frozen or all non-frozen. + +.. + +.. bpo: 33097 +.. date: 2018-03-18-16-48-23 +.. nonce: Yl4gI2 +.. section: Library + +Raise RuntimeError when ``executor.submit`` is called during interpreter +shutdown. + +.. + +.. bpo: 32968 +.. date: 2018-03-18-15-57-32 +.. nonce: E4G7BO +.. section: Library + +Modulo and floor division involving Fraction and float should return float. + +.. + +.. bpo: 33061 +.. date: 2018-03-16-16-07-33 +.. nonce: TRTTek +.. section: Library + +Add missing ``NoReturn`` to ``__all__`` in typing.py + +.. + +.. bpo: 33078 +.. date: 2018-03-15-07-38-00 +.. nonce: RmjUF5 +.. section: Library + +Fix the size handling in multiprocessing.Queue when a pickling error occurs. + +.. + +.. bpo: 33064 +.. date: 2018-03-12-19-58-25 +.. nonce: LO2KIY +.. section: Library + +lib2to3 now properly supports trailing commas after ``*args`` and +``**kwargs`` in function signatures. + +.. + +.. bpo: 33056 +.. date: 2018-03-12-16-40-00 +.. nonce: lNN9Eh +.. section: Library + +FIX properly close leaking fds in concurrent.futures.ProcessPoolExecutor. + +.. + +.. bpo: 33021 +.. date: 2018-03-12-00-27-56 +.. nonce: m19B9T +.. section: Library + +Release the GIL during fstat() calls, avoiding hang of all threads when +calling mmap.mmap(), os.urandom(), and random.seed(). Patch by Nir Soffer. + +.. + +.. bpo: 31804 +.. date: 2018-03-11-19-03-52 +.. nonce: i8KUMp +.. section: Library + +Avoid failing in multiprocessing.Process if the standard streams are closed +or None at exit. + +.. + +.. bpo: 33034 +.. date: 2018-03-11-08-44-12 +.. nonce: bpb23d +.. section: Library + +Providing an explicit error message when casting the port property to +anything that is not an integer value using ``urlparse()`` and +``urlsplit()``. Patch by Matt Eaton. + +.. + +.. bpo: 30249 +.. date: 2018-03-11-00-20-26 +.. nonce: KSkgLB +.. section: Library + +Improve struct.unpack_from() exception messages for problems with the buffer +size and offset. + +.. + +.. bpo: 33037 +.. date: 2018-03-09-23-07-07 +.. nonce: nAJ3at +.. section: Library + +Skip sending/receiving data after SSL transport closing. + +.. + +.. bpo: 27683 +.. date: 2018-03-07-22-28-17 +.. nonce: 572Rv4 +.. section: Library + +Fix a regression in :mod:`ipaddress` that result of :meth:`hosts` is empty +when the network is constructed by a tuple containing an integer mask and +only 1 bit left for addresses. + +.. + +.. bpo: 22674 +.. date: 2018-03-07-19-37-00 +.. nonce: 2sIMmM +.. section: Library + +Add the strsignal() function in the signal module that returns the system +description of the given signal, as returned by strsignal(3). + +.. + +.. bpo: 32999 +.. date: 2018-03-06-20-30-20 +.. nonce: lgFXWl +.. section: Library + +Fix C implementation of ``ABC.__subclasscheck__(cls, subclass)`` crashed +when ``subclass`` is not a type object. + +.. + +.. bpo: 33009 +.. date: 2018-03-06-11-54-59 +.. nonce: -Ekysb +.. section: Library + +Fix inspect.signature() for single-parameter partialmethods. + +.. + +.. bpo: 32969 +.. date: 2018-03-06-00-19-41 +.. nonce: rGTKa0 +.. section: Library + +Expose several missing constants in zlib and fix corresponding +documentation. + +.. + +.. bpo: 32056 +.. date: 2018-03-01-17-49-56 +.. nonce: IlpfgE +.. section: Library + +Improved exceptions raised for invalid number of channels and sample width +when read an audio file in modules :mod:`aifc`, :mod:`wave` and +:mod:`sunau`. + +.. + +.. bpo: 32970 +.. date: 2018-02-28-18-39-48 +.. nonce: IPWtbS +.. section: Library + +Improved disassembly of the MAKE_FUNCTION instruction. + +.. + +.. bpo: 32844 +.. date: 2018-02-28-13-08-00 +.. nonce: u8tnAe +.. section: Library + +Fix wrong redirection of a low descriptor (0 or 1) to stderr in subprocess +if another low descriptor is closed. + +.. + +.. bpo: 32960 +.. date: 2018-02-26-20-04-40 +.. nonce: 48r0Ml +.. section: Library + +For dataclasses, disallow inheriting frozen from non-frozen classes, and +also disallow inheriting non-frozen from frozen classes. This restriction +will be relaxed at a future date. + +.. + +.. bpo: 32713 +.. date: 2018-02-26-13-16-36 +.. nonce: 55yegW +.. section: Library + +Fixed tarfile.itn handling of out-of-bounds float values. Patch by Joffrey +Fuhrer. + +.. + +.. bpo: 32257 +.. date: 2018-02-26-09-08-07 +.. nonce: 6ElnUt +.. section: Library + +The ssl module now contains OP_NO_RENEGOTIATION constant, available with +OpenSSL 1.1.0h or 1.1.1. + +.. + +.. bpo: 32951 +.. date: 2018-02-25-18-22-01 +.. nonce: gHrCXq +.. section: Library + +Direct instantiation of SSLSocket and SSLObject objects is now prohibited. +The constructors were never documented, tested, or designed as public +constructors. Users were suppose to use ssl.wrap_socket() or SSLContext. + +.. + +.. bpo: 32929 +.. date: 2018-02-25-13-47-48 +.. nonce: X2gTDH +.. section: Library + +Remove the tri-state parameter "hash", and add the boolean "unsafe_hash". If +unsafe_hash is True, add a __hash__ function, but if a __hash__ exists, +raise TypeError. If unsafe_hash is False, add a __hash__ based on the +values of eq= and frozen=. The unsafe_hash=False behavior is the same as +the old hash=None behavior. unsafe_hash=False is the default, just as +hash=None used to be. + +.. + +.. bpo: 32947 +.. date: 2018-02-25-13-06-21 +.. nonce: mqStVW +.. section: Library + +Add OP_ENABLE_MIDDLEBOX_COMPAT and test workaround for TLSv1.3 for future +compatibility with OpenSSL 1.1.1. + +.. + +.. bpo: 32146 +.. date: 2018-02-25-10-17-23 +.. nonce: xOzUFW +.. section: Library + +Document the interaction between frozen executables and the spawn and +forkserver start methods in multiprocessing. + +.. + +.. bpo: 30622 +.. date: 2018-02-24-21-40-42 +.. nonce: dQjxSe +.. section: Library + +The ssl module now detects missing NPN support in LibreSSL. + +.. + +.. bpo: 32922 +.. date: 2018-02-23-19-12-04 +.. nonce: u-xe0B +.. section: Library + +dbm.open() now encodes filename with the filesystem encoding rather than +default encoding. + +.. + +.. bpo: 32759 +.. date: 2018-02-23-12-21-41 +.. nonce: M-y9GA +.. section: Library + +Free unused arenas in multiprocessing.heap. + +.. + +.. bpo: 32859 +.. date: 2018-02-19-17-46-31 +.. nonce: kAT-Xp +.. section: Library + +In ``os.dup2``, don't check every call whether the ``dup3`` syscall exists +or not. + +.. + +.. bpo: 32556 +.. date: 2018-02-19-14-27-51 +.. nonce: CsRsgr +.. section: Library + +nt._getfinalpathname, nt._getvolumepathname and nt._getdiskusage now +correctly convert from bytes. + +.. + +.. bpo: 21060 +.. date: 2018-02-17-19-20-19 +.. nonce: S1Z-x6 +.. section: Library + +Rewrite confusing message from setup.py upload from "No dist file created in +earlier command" to the more helpful "Must create and upload files in one +command". + +.. + +.. bpo: 32857 +.. date: 2018-02-16-14-37-14 +.. nonce: -XljAx +.. section: Library + +In :mod:`tkinter`, ``after_cancel(None)`` now raises a :exc:`ValueError` +instead of canceling the first scheduled function. Patch by Cheryl Sabella. + +.. + +.. bpo: 32852 +.. date: 2018-02-15-12-04-29 +.. nonce: HDqIxM +.. section: Library + +Make sure sys.argv remains as a list when running trace. + +.. + +.. bpo: 31333 +.. date: 2018-02-15-08-18-52 +.. nonce: 4fF-gM +.. section: Library + +``_abc`` module is added. It is a speedup module with C implementations for +various functions and methods in ``abc``. Creating an ABC subclass and +calling ``isinstance`` or ``issubclass`` with an ABC subclass are up to 1.5x +faster. In addition, this makes Python start-up up to 10% faster. + +Note that the new implementation hides internal registry and caches, +previously accessible via private attributes ``_abc_registry``, +``_abc_cache``, and ``_abc_negative_cache``. There are three debugging +helper methods that can be used instead ``_dump_registry``, +``_abc_registry_clear``, and ``_abc_caches_clear``. + +.. + +.. bpo: 32841 +.. date: 2018-02-14-00-21-24 +.. nonce: bvHDOc +.. section: Library + +Fixed `asyncio.Condition` issue which silently ignored cancellation after +notifying and cancelling a conditional lock. Patch by Bar Harel. + +.. + +.. bpo: 32819 +.. date: 2018-02-11-15-54-41 +.. nonce: ZTRX2Q +.. section: Library + +ssl.match_hostname() has been simplified and no longer depends on re and +ipaddress module for wildcard and IP addresses. Error reporting for invalid +wildcards has been improved. + +.. + +.. bpo: 19675 +.. date: 2018-02-10-23-41-05 +.. nonce: -dj35- +.. section: Library + +``multiprocessing.Pool`` no longer leaks processes if its initialization +fails. + +.. + +.. bpo: 32394 +.. date: 2018-02-10-13-51-56 +.. nonce: dFM9SI +.. section: Library + +socket: Remove TCP_FASTOPEN,TCP_KEEPCNT,TCP_KEEPIDLE,TCP_KEEPINTVL flags on +older version Windows during run-time. + +.. + +.. bpo: 31787 +.. date: 2018-02-09-21-41-56 +.. nonce: owSZ2t +.. section: Library + +Fixed refleaks of ``__init__()`` methods in various modules. (Contributed by +Oren Milman) + +.. + +.. bpo: 30157 +.. date: 2018-02-09-14-44-43 +.. nonce: lEiiAK +.. section: Library + +Fixed guessing quote and delimiter in csv.Sniffer.sniff() when only the last +field is quoted. Patch by Jake Davis. + +.. + +.. bpo: 30688 +.. date: 2018-02-08-18-59-11 +.. nonce: zBh4TH +.. section: Library + +Added support of ``\N{name}`` escapes in regular expressions. Based on +patch by Jonathan Eunice. + +.. + +.. bpo: 32792 +.. date: 2018-02-08-00-47-07 +.. nonce: NtyDb4 +.. section: Library + +collections.ChainMap() preserves the order of the underlying mappings. + +.. + +.. bpo: 32775 +.. date: 2018-02-07-19-12-10 +.. nonce: -T77_c +.. section: Library + +:func:`fnmatch.translate()` no longer produces patterns which contain set +operations. Sets starting with '[' or containing '--', '&&', '~~' or '||' +will be interpreted differently in regular expressions in future versions. +Currently they emit warnings. fnmatch.translate() now avoids producing +patterns containing such sets by accident. + +.. + +.. bpo: 32622 +.. date: 2018-02-06-17-58-15 +.. nonce: AE0Jz7 +.. section: Library + +Implement native fast sendfile for Windows proactor event loop. + +.. + +.. bpo: 32777 +.. date: 2018-02-05-21-28-28 +.. nonce: C-wIXF +.. section: Library + +Fix a rare but potential pre-exec child process deadlock in subprocess on +POSIX systems when marking file descriptors inheritable on exec in the child +process. This bug appears to have been introduced in 3.4. + +.. + +.. bpo: 32647 +.. date: 2018-02-05-13-31-42 +.. nonce: ktmfR_ +.. section: Library + +The ctypes module used to depend on indirect linking for dlopen. The shared +extension is now explicitly linked against libdl on platforms with dl. + +.. + +.. bpo: 32749 +.. date: 2018-02-02-17-21-24 +.. nonce: u5scIn +.. section: Library + +A :mod:`dbm.dumb` database opened with flags 'r' is now read-only. +:func:`dbm.dumb.open` with flags 'r' and 'w' no longer creates a database if +it does not exist. + +.. + +.. bpo: 32741 +.. date: 2018-02-01-17-54-08 +.. nonce: KUvOPL +.. section: Library + +Implement ``asyncio.TimerHandle.when()`` method. + +.. + +.. bpo: 32691 +.. date: 2018-02-01-15-53-35 +.. nonce: VLWVTq +.. section: Library + +Use mod_spec.parent when running modules with pdb + +.. + +.. bpo: 32734 +.. date: 2018-02-01-01-34-47 +.. nonce: gCV9AD +.. section: Library + +Fixed ``asyncio.Lock()`` safety issue which allowed acquiring and locking +the same lock multiple times, without it being free. Patch by Bar Harel. + +.. + +.. bpo: 32727 +.. date: 2018-01-30-17-46-18 +.. nonce: aHVsRC +.. section: Library + +Do not include name field in SMTP envelope from address. Patch by St?phane +Wirtel + +.. + +.. bpo: 31453 +.. date: 2018-01-21-15-01-50 +.. nonce: cZiZBe +.. section: Library + +Add TLSVersion constants and SSLContext.maximum_version / minimum_version +attributes. The new API wraps OpenSSL 1.1 +https://www.openssl.org/docs/man1.1.0/ssl/SSL_CTX_set_min_proto_version.html +feature. + +.. + +.. bpo: 24334 +.. date: 2018-01-20-23-17-25 +.. nonce: GZuQLv +.. section: Library + +Internal implementation details of ssl module were cleaned up. The SSLSocket +has one less layer of indirection. Owner and session information are now +handled by the SSLSocket and SSLObject constructor. Channel binding +implementation has been simplified. + +.. + +.. bpo: 31848 +.. date: 2018-01-18-23-34-17 +.. nonce: M2cldy +.. section: Library + +Fix the error handling in Aifc_read.initfp() when the SSND chunk is not +found. Patch by Zackery Spytz. + +.. + +.. bpo: 32585 +.. date: 2018-01-18-13-09-00 +.. nonce: qpeijr +.. section: Library + +Add Ttk spinbox widget to :mod:`tkinter.ttk`. Patch by Alan D Moore. + +.. + +.. bpo: 32512 +.. date: 2018-01-07-17-43-10 +.. nonce: flC-dE +.. section: Library + +:mod:`profile` CLI accepts `-m module_name` as an alternative to script +path. + +.. + +.. bpo: 8525 +.. date: 2018-01-01-00-16-59 +.. nonce: Dq8s63 +.. section: Library + +help() on a type now displays builtin subclasses. This is intended primarily +to help with notification of more specific exception subclasses. + +Patch by Sanyam Khurana. + +.. + +.. bpo: 31639 +.. date: 2017-12-27-21-55-19 +.. nonce: l3avDJ +.. section: Library + +http.server now exposes a ThreadingHTTPServer class and uses it when the +module is run with ``-m`` to cope with web browsers pre-opening sockets. + +.. + +.. bpo: 29877 +.. date: 2017-12-16-11-40-52 +.. nonce: SfWhmz +.. section: Library + +compileall: import ProcessPoolExecutor only when needed, preventing hangs on +low resource platforms + +.. + +.. bpo: 32221 +.. date: 2017-12-06-10-10-10 +.. nonce: ideco_ +.. section: Library + +Various functions returning tuple containing IPv6 addresses now omit +``%scope`` part since the same information is already encoded in *scopeid* +tuple item. Especially this speeds up :func:`socket.recvfrom` when it +receives multicast packet since useless resolving of network interface name +is omitted. + +.. + +.. bpo: 32147 +.. date: 2017-11-28-10-23-13 +.. nonce: PI2k1Y +.. section: Library + +:func:`binascii.unhexlify` is now up to 2 times faster. Patch by Sergey +Fedoseev. + +.. + +.. bpo: 30693 +.. date: 2017-11-27-15-09-49 +.. nonce: yC4mJ8 +.. section: Library + +The TarFile class now recurses directories in a reproducible way. + +.. + +.. bpo: 30693 +.. date: 2017-11-27-15-09-49 +.. nonce: yC4mJ7 +.. section: Library + +The ZipFile class now recurses directories in a reproducible way. + +.. + +.. bpo: 31680 +.. date: 2017-11-01-15-44-48 +.. nonce: yO6oSC +.. section: Library + +Added :data:`curses.ncurses_version`. + +.. + +.. bpo: 31908 +.. date: 2017-10-31 +.. nonce: g4xh8x +.. section: Library + +Fix output of cover files for ``trace`` module command-line tool. Previously +emitted cover files only when ``--missing`` option was used. Patch by +Michael Selik. + +.. + +.. bpo: 31608 +.. date: 2017-10-29-10-37-55 +.. nonce: wkp8Nw +.. section: Library + +Raise a ``TypeError`` instead of crashing if a ``collections.deque`` +subclass returns a non-deque from ``__new__``. Patch by Oren Milman. + +.. + +.. bpo: 31425 +.. date: 2017-10-24-10-18-35 +.. nonce: 1lgw47 +.. section: Library + +Add support for sockets of the AF_QIPCRTR address family, supported by the +Linux kernel. This is used to communicate with services, such as GPS or +radio, running on Qualcomm devices. Patch by Bjorn Andersson. + +.. + +.. bpo: 22005 +.. date: 2017-10-12-22-39-55 +.. nonce: lGP-sc +.. section: Library + +Implemented unpickling instances of :class:`~datetime.datetime`, +:class:`~datetime.date` and :class:`~datetime.time` pickled by Python 2. +``encoding='latin1'`` should be used for successful decoding. + +.. + +.. bpo: 27645 +.. date: 2017-10-05-20-41-48 +.. nonce: 1Y_Wag +.. section: Library + +:class:`sqlite3.Connection` now exposes a +:class:`~sqlite3.Connection.backup` method, if the underlying SQLite library +is at version 3.6.11 or higher. Patch by Lele Gaifax. + +.. + +.. bpo: 16865 +.. date: 2017-09-29-16-40-38 +.. nonce: l-f6I_ +.. section: Library + +Support arrays >=2GiB in :mod:`ctypes`. Patch by Segev Finer. + +.. + +.. bpo: 31508 +.. date: 2017-09-19-12-38-31 +.. nonce: pDsFJl +.. section: Library + +Removed support of arguments in `tkinter.ttk.Treeview.selection`. It was +deprecated in 3.6. Use specialized methods like `selection_set` for +changing the selection. + +.. + +.. bpo: 29456 +.. date: 2017-08-24-17-55-39 +.. nonce: XaB3MP +.. section: Library + +Fix bugs in hangul normalization: u1176, u11a7 and u11c3 + +.. + +.. bpo: 21257 +.. date: 2019-01-15-21-45-27 +.. nonce: U9LKkx +.. section: Documentation + +Document :func:`http.client.parse_headers`. + +.. + +.. bpo: 34764 +.. date: 2018-12-23-23-52-31 +.. nonce: DwOGeT +.. section: Documentation + +Improve example of iter() with 2nd sentinel argument. + +.. + +.. bpo: 35564 +.. date: 2018-12-22-22-52-05 +.. nonce: TuEU_D +.. section: Documentation + +Explicitly set master_doc variable in conf.py for compliance with Sphinx 2.0 + +.. + +.. bpo: 35511 +.. date: 2018-12-16-16-14-44 +.. nonce: iVcyav +.. section: Documentation + +Specified that profile.Profile class doesn't not support enable or disable +methods. Also, elaborated that Profile object as a context manager is only +supported in cProfile module. + +.. + +.. bpo: 10536 +.. date: 2018-11-04-22-03-56 +.. nonce: a0IsfE +.. section: Documentation + +Enhance the gettext docs. Patch by ?ric Araujo + +.. + +.. bpo: 35089 +.. date: 2018-10-28-16-51-31 +.. nonce: _stCpS +.. section: Documentation + +Remove mention of ``typing.io`` and ``typing.re``. Their types should be +imported from ``typing`` directly. + +.. + +.. bpo: 35038 +.. date: 2018-10-25-17-45-09 +.. nonce: 2eVOYS +.. section: Documentation + +Fix the documentation about an unexisting `f_restricted` attribute in the +frame object. Patch by St?phane Wirtel + +.. + +.. bpo: 35042 +.. date: 2018-10-22-14-17-57 +.. nonce: 1UGv1a +.. section: Documentation + +Replace PEP XYZ by the pep role and allow to use the direct links to the +PEPs. + +.. + +.. bpo: 35044 +.. date: 2018-10-22-14-09-58 +.. nonce: qjvNtI +.. section: Documentation + +Fix the documentation with the role ``exc`` for the appropriated exception. +Patch by St?phane Wirtel + +.. + +.. bpo: 35035 +.. date: 2018-10-21-02-20-36 +.. nonce: 4zBObK +.. section: Documentation + +Rename documentation for :mod:`email.utils` to ``email.utils.rst``. + +.. + +.. bpo: 34967 +.. date: 2018-10-13-07-39-57 +.. nonce: E40tFP +.. section: Documentation + +Use app.add_object_type() instead of the deprecated Sphinx function +app.description_unit() + +.. + +.. bpo: 34913 +.. date: 2018-10-10-00-34-08 +.. nonce: kVd1Fv +.. section: Documentation + +Add documentation about the new command line interface of the gzip module. + +.. + +.. bpo: 32174 +.. date: 2018-10-08-19-15-28 +.. nonce: YO9CYm +.. section: Documentation + +chm document displays non-ASCII charaters properly on some MBCS Windows +systems. + +.. + +.. bpo: 11233 +.. date: 2018-10-03-20-39-25 +.. nonce: BX6Gen +.. section: Documentation + +Create availability directive for documentation. Original patch by Georg +Brandl. + +.. + +.. bpo: 34790 +.. date: 2018-09-24-12-47-08 +.. nonce: G2KXIH +.. section: Documentation + +Document how passing coroutines to asyncio.wait() can be confusing. + +.. + +.. bpo: 34552 +.. date: 2018-09-12-10-18-04 +.. nonce: p9PoYv +.. section: Documentation + +Make clear that ``==`` operator sometimes is equivalent to `is`. The ``<``, +``<=``, ``>`` and ``>=`` operators are only defined where they make sense. + +.. + +.. bpo: 28617 +.. date: 2018-09-06-22-39-47 +.. nonce: MjnJLz +.. section: Documentation + +Fixed info in the stdtypes docs concerning the types that support membership +tests. + +.. + +.. bpo: 20177 +.. date: 2018-07-28-17-17-42 +.. nonce: cOZJWp +.. section: Documentation + +Migrate datetime.date.fromtimestamp to Argument Clinic. Patch by Tim +Hoffmann. + +.. + +.. bpo: 34065 +.. date: 2018-07-07-20-38-41 +.. nonce: 1snofM +.. section: Documentation + +Fix wrongly written basicConfig documentation markup syntax + +.. + +.. bpo: 33460 +.. date: 2018-06-22-08-38-29 +.. nonce: kHt4D0 +.. section: Documentation + +replaced ellipsis with correct error codes in tutorial chapter 3. + +.. + +.. bpo: 33847 +.. date: 2018-06-15-14-58-45 +.. nonce: IIDp6t +.. section: Documentation + +Add '@' operator entry to index. + +.. + +.. bpo: 33409 +.. date: 2018-06-08-23-46-01 +.. nonce: r4z9MM +.. section: Documentation + +Clarified the relationship between :pep:`538`'s PYTHONCOERCECLOCALE and PEP +540's PYTHONUTF8 mode. + +.. + +.. bpo: 33197 +.. date: 2018-06-08-23-37-14 +.. nonce: OERTKf +.. section: Documentation + +Add versionadded tag to the documentation of ParameterKind.description + +.. + +.. bpo: 17045 +.. date: 2018-06-07-08-33-45 +.. nonce: ZNx6KU +.. section: Documentation + +Improve the C-API doc for PyTypeObject. This includes adding several +quick-reference tables and a lot of missing slot/typedef entries. The +existing entries were also cleaned up with a slightly more consistent +format. + +.. + +.. bpo: 33736 +.. date: 2018-06-01-12-27-40 +.. nonce: JVegIu +.. section: Documentation + +Improve the documentation of :func:`asyncio.open_connection`, +:func:`asyncio.start_server` and their UNIX socket counterparts. + +.. + +.. bpo: 23859 +.. date: 2018-05-29-16-02-31 +.. nonce: E5gba1 +.. section: Documentation + +Document that `asyncio.wait()` does not cancel its futures on timeout. + +.. + +.. bpo: 32436 +.. date: 2018-05-23-11-59-51 +.. nonce: S1LGPa +.. section: Documentation + +Document :pep:`567` changes to asyncio. + +.. + +.. bpo: 33604 +.. date: 2018-05-22-11-47-14 +.. nonce: 5YHTpz +.. section: Documentation + +Update HMAC md5 default to a DeprecationWarning, bump removal to 3.8. + +.. + +.. bpo: 33594 +.. date: 2018-05-21-14-36-12 +.. nonce: -HRcyX +.. section: Documentation + +Document ``getargspec``, ``from_function`` and ``from_builtin`` as +deprecated in their respective docstring, and include version since +deprecation in DeprecationWarning message. + +.. + +.. bpo: 33503 +.. date: 2018-05-14-20-08-58 +.. nonce: Wvt0qg +.. section: Documentation + +Fix broken pypi link + +.. + +.. bpo: 33421 +.. date: 2018-05-14-15-15-41 +.. nonce: 3GU_QO +.. section: Documentation + +Add missing documentation for ``typing.AsyncContextManager``. + +.. + +.. bpo: 33487 +.. date: 2018-05-13-14-44-30 +.. nonce: iLDzFb +.. section: Documentation + +BZ2file now emit a DeprecationWarning when buffering=None is passed, the +deprecation message and documentation also now explicitly state it is +deprecated since 3.0. + +.. + +.. bpo: 33378 +.. date: 2018-04-29-04-02-18 +.. nonce: -anAHN +.. section: Documentation + +Add Korean language switcher for https://docs.python.org/3/ + +.. + +.. bpo: 33276 +.. date: 2018-04-20-14-09-36 +.. nonce: rA1z_3 +.. section: Documentation + +Clarify that the ``__path__`` attribute on modules cannot be just any value. + +.. + +.. bpo: 33201 +.. date: 2018-04-01-21-03-41 +.. nonce: aa8Lkl +.. section: Documentation + +Modernize documentation for writing C extension types. + +.. + +.. bpo: 33195 +.. date: 2018-04-01-14-30-36 +.. nonce: dRS-XX +.. section: Documentation + +Deprecate ``Py_UNICODE`` usage in ``c-api/arg`` document. ``Py_UNICODE`` +related APIs are deprecated since Python 3.3, but it is missed in the +document. + +.. + +.. bpo: 33126 +.. date: 2018-03-28-17-03-17 +.. nonce: 5UGkNv +.. section: Documentation + +Document PyBuffer_ToContiguous(). + +.. + +.. bpo: 27212 +.. date: 2018-03-22-19-23-04 +.. nonce: wrE5KR +.. section: Documentation + +Modify documentation for the :func:`islice` recipe to consume initial values +up to the start index. + +.. + +.. bpo: 28247 +.. date: 2018-03-20-20-11-05 +.. nonce: -V-WS- +.. section: Documentation + +Update :mod:`zipapp` documentation to describe how to make standalone +applications. + +.. + +.. bpo: 18802 +.. date: 2018-03-11-18-53-47 +.. nonce: JhAqH3 +.. section: Documentation + +Documentation changes for ipaddress. Patch by Jon Foster and Berker Peksag. + +.. + +.. bpo: 27428 +.. date: 2018-03-11-00-16-56 +.. nonce: B7A8FT +.. section: Documentation + +Update documentation to clarify that ``WindowsRegistryFinder`` implements +``MetaPathFinder``. (Patch by Himanshu Lakhara) + +.. + +.. bpo: 28124 +.. date: 2018-02-25-16-33-35 +.. nonce: _uzkgq +.. section: Documentation + +The ssl module function ssl.wrap_socket() has been de-emphasized and +deprecated in favor of the more secure and efficient +SSLContext.wrap_socket() method. + +.. + +.. bpo: 17232 +.. date: 2018-02-23-12-48-03 +.. nonce: tmuTKL +.. section: Documentation + +Clarify docs for -O and -OO. Patch by Terry Reedy. + +.. + +.. bpo: 32436 +.. date: 2018-02-14-11-10-41 +.. nonce: TTJ2jb +.. section: Documentation + +Add documentation for the contextvars module (PEP 567). + +.. + +.. bpo: 32800 +.. date: 2018-02-10-15-16-04 +.. nonce: FyrqCk +.. section: Documentation + +Update link to w3c doc for xml default namespaces. + +.. + +.. bpo: 11015 +.. date: 2018-02-10-12-48-38 +.. nonce: -gUf34 +.. section: Documentation + +Update :mod:`test.support` documentation. + +.. + +.. bpo: 32613 +.. date: 2018-02-05-15-05-53 +.. nonce: TDjgM1 +.. section: Documentation + +Update the faq/windows.html to use the py command from PEP 397 instead of +python. + +.. + +.. bpo: 8722 +.. date: 2018-02-03-06-11-37 +.. nonce: MPyVyj +.. section: Documentation + +Document :meth:`__getattr__` behavior when property :meth:`get` method +raises :exc:`AttributeError`. + +.. + +.. bpo: 32614 +.. date: 2018-02-02-07-41-57 +.. nonce: LSqzGw +.. section: Documentation + +Modify RE examples in documentation to use raw strings to prevent +:exc:`DeprecationWarning` and add text to REGEX HOWTO to highlight the +deprecation. + +.. + +.. bpo: 20709 +.. date: 2018-02-01-10-57-24 +.. nonce: 1flcnc +.. section: Documentation + +Remove the paragraph where we explain that os.utime() does not support a +directory as path under Windows. Patch by Jan-Philip Gehrcke + +.. + +.. bpo: 32722 +.. date: 2018-01-30-11-28-27 +.. nonce: frdp6A +.. section: Documentation + +Remove the bad example in the tutorial of the Generator Expression. Patch by +St?phane Wirtel + +.. + +.. bpo: 31972 +.. date: 2018-01-25-14-23-12 +.. nonce: w1m_8r +.. section: Documentation + +Improve docstrings for `pathlib.PurePath` subclasses. + +.. + +.. bpo: 30607 +.. date: 2018-01-25-13-58-49 +.. nonce: 4dXxiq +.. section: Documentation + +Use the externalized ``python-docs-theme`` package when building the +documentation. + +.. + +.. bpo: 8243 +.. date: 2018-01-13-20-30-53 +.. nonce: s98r28 +.. section: Documentation + +Add a note about curses.addch and curses.addstr exception behavior when +writing outside a window, or pad. + +.. + +.. bpo: 32337 +.. date: 2017-12-22-17-29-37 +.. nonce: eZe-ID +.. section: Documentation + +Update documentation related with ``dict`` order. + +.. + +.. bpo: 25041 +.. date: 2017-10-23-13-41-12 +.. nonce: iAo2gW +.. section: Documentation + +Document ``AF_PACKET`` in the :mod:`socket` module. + +.. + +.. bpo: 31432 +.. date: 2017-09-13-07-14-59 +.. nonce: yAY4Z3 +.. section: Documentation + +Clarify meaning of CERT_NONE, CERT_OPTIONAL, and CERT_REQUIRED flags for +ssl.SSLContext.verify_mode. + +.. + +.. bpo: 35772 +.. date: 2019-01-18-12-19-19 +.. nonce: sGBbsn +.. section: Tests + +Fix sparse file tests of test_tarfile on ppc64 with the tmpfs filesystem. +Fix the function testing if the filesystem supports sparse files: create a +file which contains data and "holes", instead of creating a file which +contains no data. tmpfs effective block size is a page size (tmpfs lives in +the page cache). RHEL uses 64 KiB pages on aarch64, ppc64, ppc64le, only +s390x and x86_64 use 4 KiB pages, whereas the test punch holes of 4 KiB. + +.. + +.. bpo: 35045 +.. date: 2019-01-10-18-35-42 +.. nonce: qdd6d9 +.. section: Tests + +Make ssl tests less strict and also accept TLSv1 as system default. The +changes unbreaks test_min_max_version on Fedora 29. + +.. + +.. bpo: 32710 +.. date: 2019-01-07-23-34-41 +.. nonce: Hzo1b8 +.. section: Tests + +``test_asyncio/test_sendfile.py`` now resets the event loop policy using +:func:`tearDownModule` as done in other tests, to prevent a warning when +running tests on Windows. + +.. + +.. bpo: 33717 +.. date: 2019-01-07-23-22-44 +.. nonce: GhHXv8 +.. section: Tests + +test.pythoninfo now logs information of all clocks, not only time.time() and +time.perf_counter(). + +.. + +.. bpo: 35488 +.. date: 2019-01-04-21-34-53 +.. nonce: U7JJzP +.. section: Tests + +Add a test to pathlib's Path.match() to verify it does not support +glob-style ** recursive pattern matching. + +.. + +.. bpo: 31731 +.. date: 2018-12-18-23-20-39 +.. nonce: tcv85C +.. section: Tests + +Fix a race condition in ``check_interrupted_write()`` of test_io: create +directly the thread with SIGALRM signal blocked, rather than blocking the +signal later from the thread. Previously, it was possible that the thread +gets the signal before the signal is blocked. + +.. + +.. bpo: 35424 +.. date: 2018-12-18-22-36-53 +.. nonce: 1Pz4IS +.. section: Tests + +Fix test_multiprocessing_main_handling: use :class:`multiprocessing.Pool` +with a context manager and then explicitly join the pool. + +.. + +.. bpo: 35519 +.. date: 2018-12-17-16-41-45 +.. nonce: RR3L_w +.. section: Tests + +Rename :mod:`test.bisect` module to :mod:`test.bisect_cmd` to avoid conflict +with :mod:`bisect` module when running directly a test like ``./python +Lib/test/test_xmlrpc.py``. + +.. + +.. bpo: 35513 +.. date: 2018-12-16-23-36-47 +.. nonce: k4WHlA +.. section: Tests + +Replace :func:`time.time` with :func:`time.monotonic` in tests to measure +time delta. + +.. + +.. bpo: 34279 +.. date: 2018-12-12-18-20-18 +.. nonce: DhKcuP +.. section: Tests + +:func:`test.support.run_unittest` no longer raise :exc:`TestDidNotRun` if +the test result contains skipped tests. The exception is now only raised if +no test have been run and no test have been skipped. + +.. + +.. bpo: 35412 +.. date: 2018-12-12-18-07-58 +.. nonce: kbuJor +.. section: Tests + +Add testcase to ``test_future4``: check unicode literal. + +.. + +.. bpo: 26704 +.. date: 2018-12-10-13-18-37 +.. nonce: DBAN4c +.. section: Tests + +Added test demonstrating double-patching of an instance method. Patch by +Anthony Sottile. + +.. + +.. bpo: 33725 +.. date: 2018-12-09-01-27-29 +.. nonce: TaGayj +.. section: Tests + +test_multiprocessing_fork may crash on recent versions of macOS. Until the +issue is resolved, skip the test on macOS. + +.. + +.. bpo: 35352 +.. date: 2018-11-30-17-18-56 +.. nonce: 8bD7GC +.. section: Tests + +Modify test_asyncio to use the certificate set from the test directory. + +.. + +.. bpo: 35317 +.. date: 2018-11-26-16-54-21 +.. nonce: jByGP2 +.. section: Tests + +Fix ``mktime()`` overflow error in ``test_email``: run +``test_localtime_daylight_true_dst_true()`` and +``test_localtime_daylight_false_dst_true()`` with a specific timezone. + +.. + +.. bpo: 21263 +.. date: 2018-11-04-20-17-09 +.. nonce: T3qo9r +.. section: Tests + +After several reports that test_gdb does not work properly on macOS and +since gdb is not shipped by default anymore, test_gdb is now skipped on +macOS when LLVM Clang has been used to compile Python. Patch by Lysandros +Nikolaou + +.. + +.. bpo: 34279 +.. date: 2018-10-27-13-41-55 +.. nonce: v0Xqxe +.. section: Tests + +regrtest issue a warning when no tests have been executed in a particular +test file. Also, a new final result state is issued if no test have been +executed across all test files. Patch by Pablo Galindo. + +.. + +.. bpo: 34962 +.. date: 2018-10-11-22-34-27 +.. nonce: 0PLBi8 +.. section: Tests + +make docstest in Doc now passes., and is enforced in CI + +.. + +.. bpo: 23596 +.. date: 2018-10-09-23-51-07 +.. nonce: rdnert +.. section: Tests + +Use argparse for the command line of the gzip module. Patch by Antony Lee + +.. + +.. bpo: 34537 +.. date: 2018-09-21-17-33-41 +.. nonce: GImYtZ +.. section: Tests + +Fix ``test_gdb.test_strings()`` when ``LC_ALL=C`` and GDB was compiled with +Python 3.6 or earlier. + +.. + +.. bpo: 34587 +.. date: 2018-09-13-20-58-07 +.. nonce: rCcxp3 +.. section: Tests + +test_socket: Remove RDSTest.testCongestion(). The test tries to fill the +receiver's socket buffer and expects an error. But the RDS protocol doesn't +require that. Moreover, the Linux implementation of RDS expects that the +producer of the messages reduces its rate, it's not the role of the receiver +to trigger an error. The test fails on Fedora 28 by design, so just remove +it. + +.. + +.. bpo: 34661 +.. date: 2018-09-13-09-53-15 +.. nonce: bdTamP +.. section: Tests + +Fix test_shutil if unzip doesn't support -t. + +.. + +.. bpo: 34200 +.. date: 2018-09-12-17-00-34 +.. nonce: dfxYQK +.. section: Tests + +Fixed non-deterministic flakiness of test_pkg by not using the scary +test.support.module_cleanup() logic to save and restore sys.modules contents +between test cases. + +.. + +.. bpo: 34569 +.. date: 2018-09-09-14-36-59 +.. nonce: okj1Xh +.. section: Tests + +The experimental PEP 554 data channels now correctly pass negative PyLong +objects between subinterpreters on 32-bit systems. Patch by Michael Felt. + +.. + +.. bpo: 34594 +.. date: 2018-09-05-23-50-21 +.. nonce: tqL-GS +.. section: Tests + +Fix usage of hardcoded ``errno`` values in the tests. + +.. + +.. bpo: 34579 +.. date: 2018-09-04-15-16-42 +.. nonce: bp4HdM +.. section: Tests + +Fix test_embed for AIX Patch by Michael Felt + +.. + +.. bpo: 34542 +.. date: 2018-08-29-16-30-52 +.. nonce: 9stVAW +.. section: Tests + +Use 3072 RSA keys and SHA-256 signature for test certs and keys. + +.. + +.. bpo: 11193 +.. date: 2018-08-26-13-12-34 +.. nonce: H8fCGa +.. section: Tests + +Remove special condition for AIX in `test_subprocess.test_undecodable_env` + +.. + +.. bpo: 34347 +.. date: 2018-08-25-13-28-18 +.. nonce: IsRDPB +.. section: Tests + +Fix `test_utf8_mode.test_cmd_line` for AIX + +.. + +.. bpo: 34490 +.. date: 2018-08-24-20-23-15 +.. nonce: vb2cx4 +.. section: Tests + +On AIX with AF_UNIX family sockets getsockname() does not provide +'sockname', so skip calls to transport.get_extra_info('sockname') + +.. + +.. bpo: 34391 +.. date: 2018-08-16-18-48-47 +.. nonce: ouNfxC +.. section: Tests + +Fix ftplib test for TLS 1.3 by reading from data socket. + +.. + +.. bpo: 11192 +.. date: 2018-08-14-20-50-07 +.. nonce: g7TwYm +.. section: Tests + +Fix `test_socket` on AIX AIX 6.1 and later IPv6 zone id supports only +supported by inet_pton6_zone() Switch to runtime-based platform.system() to +establish current platform rather than build-time based sys.platform() + +.. + +.. bpo: 34399 +.. date: 2018-08-14-10-47-44 +.. nonce: D_jd1G +.. section: Tests + +Update all RSA keys and DH params to use at least 2048 bits. + +.. + +.. bpo: 34373 +.. date: 2018-08-10-16-17-51 +.. nonce: SKdb1k +.. section: Tests + +Fix ``test_mktime`` and ``test_pthread_getcpuclickid`` tests for AIX Add +range checking for ``_PyTime_localtime`` for AIX Patch by Michael Felt + +.. + +.. bpo: 11191 +.. date: 2018-08-08-22-41-30 +.. nonce: eq9tSH +.. section: Tests + +Skip the distutils test 'test_search_cpp' when using XLC as compiler patch +by aixtools (Michael Felt) + +.. + +.. bpo: 0 +.. date: 2018-07-10-18-53-46 +.. nonce: UBQJBc +.. section: Tests + +Improved an error message when mock assert_has_calls fails. + +.. + +.. bpo: 33746 +.. date: 2018-06-19-17-55-46 +.. nonce: Sz7avn +.. section: Tests + +Fix test_unittest when run in verbose mode. + +.. + +.. bpo: 33901 +.. date: 2018-06-19-14-04-21 +.. nonce: OFW1Sr +.. section: Tests + +Fix test_dbm_gnu on macOS with gdbm 1.15: add a larger value to make sure +that the file size changes. + +.. + +.. bpo: 33873 +.. date: 2018-06-16-01-37-31 +.. nonce: d86vab +.. section: Tests + +Fix a bug in ``regrtest`` that caused an extra test to run if +--huntrleaks/-R was used. Exit with error in case that invalid parameters +are specified to --huntrleaks/-R (at least one warmup run and one repetition +must be used). + +.. + +.. bpo: 33562 +.. date: 2018-06-01-14-25-31 +.. nonce: GutEHf +.. section: Tests + +Check that a global asyncio event loop policy is not left behind by any +tests. + +.. + +.. bpo: 33655 +.. date: 2018-05-26-16-01-40 +.. nonce: Frb4LA +.. section: Tests + +Ignore test_posix_fallocate failures on BSD platforms that might be due to +running on ZFS. + +.. + +.. bpo: 32962 +.. date: 2018-05-10-16-59-15 +.. nonce: S-rcIN +.. section: Tests + +Fixed test_gdb when Python is compiled with flags -mcet -fcf-protection -O0. + +.. + +.. bpo: 33358 +.. date: 2018-04-27-11-46-35 +.. nonce: _OcR59 +.. section: Tests + +Fix ``test_embed.test_pre_initialization_sys_options()`` when the +interpreter is built with ``--enable-shared``. + +.. + +.. bpo: 32872 +.. date: 2018-03-28-01-35-02 +.. nonce: J5NDUj +.. section: Tests + +Avoid regrtest compatibility issue with namespace packages. + +.. + +.. bpo: 32517 +.. date: 2018-03-09-07-05-12 +.. nonce: ugc1iW +.. section: Tests + +Fix failing ``test_asyncio`` on macOS 10.12.2+ due to transport of +``KqueueSelector`` loop was not being closed. + +.. + +.. bpo: 32663 +.. date: 2018-01-25-18-10-47 +.. nonce: IKDsqu +.. section: Tests + +Making sure the `SMTPUTF8SimTests` class of tests gets run in +test_smtplib.py. + +.. + +.. bpo: 27643 +.. date: 2018-01-12-09-05-19 +.. nonce: _6z49y +.. section: Tests + +Test_C test case needs "signed short" bitfields, but the IBM XLC compiler +(on AIX) does not support this Skip the code and test when AIX and XLC are +used + +Applicable to Python2-2.7 and later + +.. + +.. bpo: 19417 +.. date: 2018-01-08-13-33-47 +.. nonce: 2asoXy +.. section: Tests + +Add test_bdb.py. + +.. + +.. bpo: 31809 +.. date: 2017-10-18-18-07-45 +.. nonce: KlQrkE +.. section: Tests + +Add tests to verify connection with secp ECDH curves. + +.. + +.. bpo: 34691 +.. date: 2019-02-02-13-34-05 +.. nonce: B-Lsj4 +.. section: Build + +The _contextvars module is now built into the core Python library on +Windows. + +.. + +.. bpo: 35683 +.. date: 2019-01-10-11-37-18 +.. nonce: pf5Oos +.. section: Build + +Improved Azure Pipelines build steps and now verifying layouts correctly + +.. + +.. bpo: 35642 +.. date: 2019-01-02-11-23-33 +.. nonce: pjkhJe +.. section: Build + +Remove asynciomodule.c from pythoncore.vcxproj + +.. + +.. bpo: 35550 +.. date: 2018-12-29-10-19-43 +.. nonce: BTuu8e +.. section: Build + +Fix incorrect Solaris #ifdef checks to look for __sun && __SVR4 instead of +sun when compiling. + +.. + +.. bpo: 35499 +.. date: 2018-12-14-19-36-05 +.. nonce: 9yAldM +.. section: Build + +``make profile-opt`` no longer replaces ``CFLAGS_NODIST`` with ``CFLAGS``. +It now adds profile-guided optimization (PGO) flags to ``CFLAGS_NODIST``: +existing ``CFLAGS_NODIST`` flags are kept. + +.. + +.. bpo: 35257 +.. date: 2018-12-05-22-28-40 +.. nonce: dmcd_s +.. section: Build + +Avoid leaking the linker flags from Link Time Optimizations (LTO) into +distutils when compiling C extensions. + +.. + +.. bpo: 35351 +.. date: 2018-12-04-15-33-28 +.. nonce: ZhhBfT +.. section: Build + +When building Python with clang and LTO, LTO flags are no longer passed into +CFLAGS to build third-party C extensions through distutils. + +.. + +.. bpo: 35139 +.. date: 2018-11-01-15-01-23 +.. nonce: XZTttb +.. section: Build + +Fix a compiler error when statically linking `pyexpat` in `Modules/Setup`. + +.. + +.. bpo: 35059 +.. date: 2018-10-26-14-49-19 +.. nonce: PKsBxP +.. section: Build + +PCbuild: Set InlineFunctionExpansion to OnlyExplicitInline ("/Ob1" option) +in pyproject.props in Debug mode to expand functions marked as inline. This +change should make Python compiled in Debug mode a little bit faster on +Windows. + +.. + +.. bpo: 35011 +.. date: 2018-10-17-17-38-57 +.. nonce: GgoPIC +.. section: Build + +Restores the use of pyexpatns.h to isolate our embedded copy of the expat C +library so that its symbols do not conflict at link or dynamic loading time +with an embedding application or other extension modules with their own +version of libexpat. + +.. + +.. bpo: 28015 +.. date: 2018-10-16-12-22-36 +.. nonce: ylSgFh +.. section: Build + +Have --with-lto works correctly with clang. + +.. + +.. bpo: 34765 +.. date: 2018-09-26-17-29-10 +.. nonce: AvxdVj +.. section: Build + +Update the outdated install-sh file to the latest revision from automake +v1.16.1 + +.. + +.. bpo: 34585 +.. date: 2018-09-18-16-28-31 +.. nonce: CGMu0h +.. section: Build + +Check for floating-point byte order in configure.ac using compilation tests +instead of executing code, so that these checks work in cross-compiled +builds. + +.. + +.. bpo: 34710 +.. date: 2018-09-17-13-56-12 +.. nonce: ARqIAK +.. section: Build + +Fixed SSL module build with OpenSSL & pedantic CFLAGS. + +.. + +.. bpo: 34582 +.. date: 2018-09-14-09-53-21 +.. nonce: j3omgk +.. section: Build + +Add JUnit XML output for regression tests and update Azure DevOps builds. + +.. + +.. bpo: 34081 +.. date: 2018-09-06-07-15-20 +.. nonce: cuSTnH +.. section: Build + +Make Sphinx warnings as errors in the Docs Makefile. + +.. + +.. bpo: 34555 +.. date: 2018-08-31-19-41-09 +.. nonce: dfQcnm +.. section: Build + +Fix for case where it was not possible to have both +``HAVE_LINUX_VM_SOCKETS_H`` and ``HAVE_SOCKADDR_ALG`` be undefined. + +.. + +.. bpo: 33015 +.. date: 2018-08-24-09-48-25 +.. nonce: s21y74 +.. section: Build + +Fix an undefined behaviour in the pthread implementation of +:c:func:`PyThread_start_new_thread`: add a function wrapper to always return +``NULL``. + +.. + +.. bpo: 34245 +.. date: 2018-07-27-09-52-48 +.. nonce: bBV0NI +.. section: Build + +The Python shared library is now installed with write permission (mode +0755), which is the standard way of installing such libraries. + +.. + +.. bpo: 34121 +.. date: 2018-07-15-16-49-06 +.. nonce: 74G_lo +.. section: Build + +Fix detection of C11 atomic support on clang. + +.. + +.. bpo: 32430 +.. date: 2018-07-10-21-33-25 +.. nonce: UN3Nk8 +.. section: Build + +Rename Modules/Setup.dist to Modules/Setup, and remove the necessity to copy +the former manually to the latter when updating the local source tree. + +.. + +.. bpo: 30345 +.. date: 2018-06-15-18-18-16 +.. nonce: j-xRE1 +.. section: Build + +Add -g to LDFLAGS when compiling with LTO to get debug symbols. + +.. + +.. bpo: 5755 +.. date: 2018-06-04-21-34-34 +.. nonce: 65GmCj +.. section: Build + +Move ``-Wstrict-prototypes`` option to ``CFLAGS_NODIST`` from ``OPT``. This +option emitted annoying warnings when building extension modules written in +C++. + +.. + +.. bpo: 33614 +.. date: 2018-05-28-11-40-22 +.. nonce: 28e0sE +.. section: Build + +Ensures module definition files for the stable ABI on Windows are correctly +regenerated. + +.. + +.. bpo: 33648 +.. date: 2018-05-25-13-05-51 +.. nonce: bJ4JZH +.. section: Build + +The --with-c-locale-warning configuration flag has been removed. It has had +no effect for about a year. + +.. + +.. bpo: 33522 +.. date: 2018-05-15-12-44-50 +.. nonce: mJoNcA +.. section: Build + +Enable CI builds on Visual Studio Team Services at +https://python.visualstudio.com/cpython + +.. + +.. bpo: 33512 +.. date: 2018-05-15-02-07-49 +.. nonce: X4Fy1Q +.. section: Build + +configure's check for "long double" has been simplified + +.. + +.. bpo: 33483 +.. date: 2018-05-13-17-21-54 +.. nonce: WOs-en +.. section: Build + +C compiler is now correctly detected from the standard environment +variables. --without-gcc and --with-icc options have been removed. + +.. + +.. bpo: 33394 +.. date: 2018-04-30-17-36-46 +.. nonce: _Vdi4t +.. section: Build + +Enable the verbose build for extension modules, when GNU make is passed +macros on the command line. + +.. + +.. bpo: 33393 +.. date: 2018-04-30-17-19-37 +.. nonce: HkVCqI +.. section: Build + +Update config.guess and config.sub files. + +.. + +.. bpo: 33377 +.. date: 2018-04-30-16-53-00 +.. nonce: QBh6vP +.. section: Build + +Add new triplets for mips r6 and riscv variants (used in extension +suffixes). + +.. + +.. bpo: 32232 +.. date: 2018-04-17-00-38-19 +.. nonce: o7G_UO +.. section: Build + +By default, modules configured in `Modules/Setup` are no longer built with +`-DPy_BUILD_CORE`. Instead, modules that specifically need that preprocessor +definition include it in their individual entries. + +.. + +.. bpo: 33182 +.. date: 2018-03-30-14-55-48 +.. nonce: CePczb +.. section: Build + +The embedding tests can once again be built with clang 6.0 + +.. + +.. bpo: 33163 +.. date: 2018-03-28-04-15-03 +.. nonce: hfpWuU +.. section: Build + +Upgrade pip to 9.0.3 and setuptools to v39.0.1. + +.. + +.. bpo: 33012 +.. date: 2018-03-08-20-25-29 +.. nonce: k9Fe1q +.. section: Build + +gcc 8 has added a new warning heuristic to detect invalid function casts and +a stock python build seems to hit that warning quite often. The most common +is the cast of a METH_NOARGS function (that uses just one argument) to a +PyCFunction. Fix this by adding a dummy argument to all functions that +implement METH_NOARGS. + +.. + +.. bpo: 32898 +.. date: 2018-02-21-12-46-00 +.. nonce: M15bZh +.. section: Build + +Fix the python debug build when using COUNT_ALLOCS. + +.. + +.. bpo: 29442 +.. date: 2017-09-26-23-08-27 +.. nonce: fD8YTi +.. section: Build + +Replace optparse with argparse in setup.py + +.. + +.. bpo: 35890 +.. date: 2019-02-02-22-12-23 +.. nonce: ccIjHH +.. section: Windows + +Fix API calling consistency of GetVersionEx and wcstok. + +.. + +.. bpo: 32560 +.. date: 2019-02-02-11-02-44 +.. nonce: I5WAGW +.. section: Windows + +The ``py`` launcher now forwards its ``STARTUPINFO`` structure to child +processes. + +.. + +.. bpo: 35854 +.. date: 2019-01-29-15-44-46 +.. nonce: Ww3z19 +.. section: Windows + +Fix EnvBuilder and --symlinks in venv on Windows + +.. + +.. bpo: 35811 +.. date: 2019-01-25-12-46-36 +.. nonce: 2hU-mm +.. section: Windows + +Avoid propagating venv settings when launching via py.exe + +.. + +.. bpo: 35797 +.. date: 2019-01-25-12-29-14 +.. nonce: MzyOK9 +.. section: Windows + +Fix default executable used by the multiprocessing module + +.. + +.. bpo: 35758 +.. date: 2019-01-21-05-18-14 +.. nonce: 8LsY3l +.. section: Windows + +Allow building on ARM with MSVC. + +.. + +.. bpo: 29734 +.. date: 2019-01-12-16-52-38 +.. nonce: 6_OJwI +.. section: Windows + +Fix handle leaks in os.stat on Windows. + +.. + +.. bpo: 35596 +.. date: 2019-01-08-13-56-01 +.. nonce: oFvhcm +.. section: Windows + +Use unchecked PYCs for the embeddable distro to avoid zipimport +restrictions. + +.. + +.. bpo: 35596 +.. date: 2018-12-28-07-25-47 +.. nonce: P9CEY2 +.. section: Windows + +Fix vcruntime140.dll being added to embeddable distro multiple times. + +.. + +.. bpo: 35402 +.. date: 2018-12-13-13-30-04 +.. nonce: n_mXb2 +.. section: Windows + +Update Windows build to use Tcl and Tk 8.6.9 + +.. + +.. bpo: 35401 +.. date: 2018-12-10-15-01-13 +.. nonce: 9L1onG +.. section: Windows + +Updates Windows build to OpenSSL 1.1.0j + +.. + +.. bpo: 34977 +.. date: 2018-12-07-10-00-38 +.. nonce: agQJbD +.. section: Windows + +venv on Windows will now use a python.exe redirector rather than copying the +actual binaries from the base environment. + +.. + +.. bpo: 34977 +.. date: 2018-10-30-13-39-17 +.. nonce: 0l7_QV +.. section: Windows + +Adds support for building a Windows App Store package + +.. + +.. bpo: 35067 +.. date: 2018-10-25-11-29-22 +.. nonce: RHWi7W +.. section: Windows + +Remove _distutils_findvs module and use vswhere.exe instead. + +.. + +.. bpo: 32557 +.. date: 2018-09-25-10-39-27 +.. nonce: Rs1bf9 +.. section: Windows + +Allow shutil.disk_usage to take a file path on Windows + +.. + +.. bpo: 34770 +.. date: 2018-09-22-11-02-35 +.. nonce: 4lEUOd +.. section: Windows + +Fix a possible null pointer dereference in pyshellext.cpp. + +.. + +.. bpo: 34603 +.. date: 2018-09-13-08-29-04 +.. nonce: 2AB7sc +.. section: Windows + +Fix returning structs from functions produced by MSVC + +.. + +.. bpo: 34581 +.. date: 2018-09-04-23-13-19 +.. nonce: lnbC0k +.. section: Windows + +Guard MSVC-specific code in socketmodule.c with ``#ifdef _MSC_VER``. + +.. + +.. bpo: 34532 +.. date: 2018-09-03-01-23-52 +.. nonce: N1HEbE +.. section: Windows + +Fixes exit code of list version arguments for py.exe. + +.. + +.. bpo: 34062 +.. date: 2018-08-21-19-28-23 +.. nonce: 3gxsA3 +.. section: Windows + +Fixed the '--list' and '--list-paths' arguments for the py.exe launcher + +.. + +.. bpo: 34225 +.. date: 2018-07-25-16-13-12 +.. nonce: ngemNL +.. section: Windows + +Ensure INCLUDE and LIB directories do not end with a backslash. + +.. + +.. bpo: 34011 +.. date: 2018-07-11-15-58-06 +.. nonce: Ho_d5T +.. section: Windows + +A suite of code has been changed which copied across DLLs and init.tcl from +the running Python location into a venv being created. These copies are +needed only when running from a Python source build, and the copying code is +now only run when that is the case, rather than whenever a venv is created. + +.. + +.. bpo: 34006 +.. date: 2018-07-02-14-19-32 +.. nonce: 7SgBT_ +.. section: Windows + +Revert line length limit for Windows help docs. The line-length limit is not +needed because the pages appear in a separate app rather than on a browser +tab. It can also interact badly with the DPI setting. + +.. + +.. bpo: 31546 +.. date: 2018-06-27-23-33-54 +.. nonce: zJlap- +.. section: Windows + +Restore running PyOS_InputHook while waiting for user input at the prompt. +The restores integration of interactive GUI windows (such as Matplotlib +figures) with the prompt on Windows. + +.. + +.. bpo: 30237 +.. date: 2018-06-25-09-33-48 +.. nonce: EybiZA +.. section: Windows + +Output error when ReadConsole is canceled by CancelSynchronousIo instead of +crashing. + +.. + +.. bpo: 33895 +.. date: 2018-06-19-11-57-50 +.. nonce: zpblTy +.. section: Windows + +GIL is released while calling functions that acquire Windows loader lock. + +.. + +.. bpo: 33720 +.. date: 2018-06-04-09-20-53 +.. nonce: VKDXHK +.. section: Windows + +Reduces maximum marshal recursion depth on release builds. + +.. + +.. bpo: 29097 +.. date: 2018-05-16-11-31-17 +.. nonce: 9mqEuI +.. section: Windows + +Fix bug where :meth:`datetime.fromtimestamp` erroneously throws an +:exc:`OSError` on Windows for values between 0 and 86400. Patch by Ammar +Askar. + +.. + +.. bpo: 33316 +.. date: 2018-04-20-03-24-07 +.. nonce: 9IiJ8J +.. section: Windows + +PyThread_release_lock always fails + +.. + +.. bpo: 33184 +.. date: 2018-04-13-11-28-55 +.. nonce: 7YhqQE +.. section: Windows + +Update Windows installer to use OpenSSL 1.1.0h. + +.. + +.. bpo: 32890 +.. date: 2018-03-08-20-02-38 +.. nonce: 3jzFzY +.. section: Windows + +Fix usage of GetLastError() instead of errno in os.execve() and +os.truncate(). + +.. + +.. bpo: 33016 +.. date: 2018-03-07-01-33-33 +.. nonce: Z_Med0 +.. section: Windows + +Fix potential use of uninitialized memory in nt._getfinalpathname + +.. + +.. bpo: 32903 +.. date: 2018-02-28-11-03-24 +.. nonce: 1SXY4t +.. section: Windows + +Fix a memory leak in os.chdir() on Windows if the current directory is set +to a UNC path. + +.. + +.. bpo: 32901 +.. date: 2018-02-23-00-47-13 +.. nonce: mGKz5_ +.. section: Windows + +Update Tcl and Tk versions to 8.6.8 + +.. + +.. bpo: 31966 +.. date: 2018-02-19-13-54-42 +.. nonce: _Q3HPb +.. section: Windows + +Fixed WindowsConsoleIO.write() for writing empty data. + +.. + +.. bpo: 32409 +.. date: 2018-02-19-10-00-57 +.. nonce: nocuDg +.. section: Windows + +Ensures activate.bat can handle Unicode contents. + +.. + +.. bpo: 32457 +.. date: 2018-02-19-08-54-06 +.. nonce: vVP0Iz +.. section: Windows + +Improves handling of denormalized executable path when launching Python. + +.. + +.. bpo: 32370 +.. date: 2018-02-10-15-38-19 +.. nonce: kcKuct +.. section: Windows + +Use the correct encoding for ipconfig output in the uuid module. Patch by +Segev Finer. + +.. + +.. bpo: 29248 +.. date: 2018-02-07-17-50-48 +.. nonce: Xzwj-6 +.. section: Windows + +Fix :func:`os.readlink` on Windows, which was mistakenly treating the +``PrintNameOffset`` field of the reparse data buffer as a number of +characters instead of bytes. Patch by Craig Holmquist and SSE4. + +.. + +.. bpo: 1104 +.. date: 2017-11-24-12-53-54 +.. nonce: 1CWSZp +.. section: Windows + +Correctly handle string length in ``msilib.SummaryInfo.GetProperty()`` to +prevent it from truncating the last character. + +.. + +.. bpo: 35555 +.. date: 2018-12-21-18-44-30 +.. nonce: M58_K3 +.. section: macOS + +Gray out Code Context menu entry when it's not applicable. + +.. + +.. bpo: 35401 +.. date: 2018-12-09-13-56-49 +.. nonce: n8B7X1 +.. section: macOS + +Update macOS installer to use OpenSSL 1.1.0j. + +.. + +.. bpo: 35025 +.. date: 2018-10-18-23-54-55 +.. nonce: X4LFJg +.. section: macOS + +Properly guard the use of the ``CLOCK_GETTIME`` et al. macros in +``timemodule`` on macOS. + +.. + +.. bpo: 24658 +.. date: 2018-10-17-14-36-08 +.. nonce: Naddgx +.. section: macOS + +On macOS, fix reading from and writing into a file with a size larger than 2 +GiB. + +.. + +.. bpo: 34405 +.. date: 2018-09-11-08-30-55 +.. nonce: UzIi0n +.. section: macOS + +Update to OpenSSL 1.1.0i for macOS installer builds. + +.. + +.. bpo: 33635 +.. date: 2018-07-31-09-51-01 +.. nonce: KiscE- +.. section: macOS + +In macOS stat on some file descriptors (/dev/fd/3 f.e) will result in bad +file descriptor OSError. Guard against this exception was added in is_dir, +is_file and similar methods. DirEntry.is_dir can also throw this exception +so _RecursiveWildcardSelector._iterate_directories was also extended with +the same error ignoring pattern. + +.. + +.. bpo: 13631 +.. date: 2018-05-16-13-25-58 +.. nonce: UIjDyY +.. section: macOS + +The .editrc file in user's home directory is now processed correctly during +the readline initialization through editline emulation on macOS. + +.. + +.. bpo: 33184 +.. date: 2018-04-07-00-51-34 +.. nonce: 3j208P +.. section: macOS + +Update macOS installer build to use OpenSSL 1.1.0h. + +.. + +.. bpo: 32726 +.. date: 2018-03-29-06-56-12 +.. nonce: urS9uX +.. section: macOS + +Build and link with private copy of Tcl/Tk 8.6 for the macOS 10.6+ +installer. The 10.9+ installer variant already does this. This means that +the Python 3.7 provided by the python.org macOS installers no longer need or +use any external versions of Tcl/Tk, either system-provided or +user-installed, such as ActiveTcl. + +.. + +.. bpo: 32901 +.. date: 2018-02-27-17-33-15 +.. nonce: hQu0w3 +.. section: macOS + +Update macOS 10.9+ installer to Tcl/Tk 8.6.8. + +.. + +.. bpo: 31903 +.. date: 2017-11-01-16-53-12 +.. nonce: K6jCVG +.. section: macOS + +In :mod:`_scproxy`, drop the GIL when calling into ``SystemConfiguration`` +to avoid deadlocks. + +.. + +.. bpo: 35770 +.. date: 2019-01-18-13-04-30 +.. nonce: 2LxJGu +.. section: IDLE + +IDLE macosx deletes Options => Configure IDLE. It previously deleted Window +=> Zoom Height by mistake. (Zoom Height is now on the Options menu). On +Mac, the settings dialog is accessed via Preferences on the IDLE menu. + +.. + +.. bpo: 35769 +.. date: 2019-01-18-01-24-23 +.. nonce: GqsB34 +.. section: IDLE + +Change IDLE's new file name from 'Untitled' to 'untitled' + +.. + +.. bpo: 35660 +.. date: 2019-01-04-19-14-29 +.. nonce: hMxI7N +.. section: IDLE + +Fix imports in idlelib.window. + +.. + +.. bpo: 35641 +.. date: 2019-01-02-22-15-01 +.. nonce: QEaANl +.. section: IDLE + +Proper format `calltip` when the function has no docstring. + +.. + +.. bpo: 33987 +.. date: 2018-12-31-17-04-18 +.. nonce: fD92up +.. section: IDLE + +Use ttk Frame for ttk widgets. + +.. + +.. bpo: 34055 +.. date: 2018-12-28-17-16-33 +.. nonce: TmmpzR +.. section: IDLE + +Fix erroneous 'smart' indents and newlines in IDLE Shell. + +.. + +.. bpo: 35591 +.. date: 2018-12-28-01-19-20 +.. nonce: SFpDj2 +.. section: IDLE + +Find Selection now works when selection not found. + +.. + +.. bpo: 35196 +.. date: 2018-12-27-17-46-42 +.. nonce: 9E-xUh +.. section: IDLE + +Speed up squeezer line counting. + +.. + +.. bpo: 35598 +.. date: 2018-12-27-15-29-11 +.. nonce: FWOOm8 +.. section: IDLE + +Update config_key: use PEP 8 names and ttk widgets, make some objects +global, and add tests. + +.. + +.. bpo: 28097 +.. date: 2018-12-26-13-53-34 +.. nonce: 95I9NT +.. section: IDLE + +Add Previous/Next History entries to Shell menu. + +.. + +.. bpo: 35208 +.. date: 2018-12-23-17-42-11 +.. nonce: J5NOg7 +.. section: IDLE + +Squeezer now properly counts wrapped lines before newlines. + +.. + +.. bpo: 35521 +.. date: 2018-12-20-00-14-15 +.. nonce: x32BRn +.. section: IDLE + +Document the IDLE editor code context feature. Add some internal references +within the IDLE doc. + +.. + +.. bpo: 22703 +.. date: 2018-12-18-13-56-31 +.. nonce: UlsjKQ +.. section: IDLE + +The Code Context menu label now toggles between Show/Hide Code Context. The +Zoom Height menu now toggles between Zoom/Restore Height. Zoom Height has +moved from the Window menu to the Options menu. + +.. + +.. bpo: 35213 +.. date: 2018-11-12-00-20-01 +.. nonce: cqNgzT +.. section: IDLE + +Where appropriate, use 'macOS' in idlelib. + +.. + +.. bpo: 34864 +.. date: 2018-11-11-17-13-50 +.. nonce: cw0PvO +.. section: IDLE + +On macOS, warn if the system preference "Prefer tabs when opening documents" +is set to "Always". + +.. + +.. bpo: 34864 +.. date: 2018-11-10-21-27-25 +.. nonce: Ci-G2q +.. section: IDLE + +Document two IDLE on MacOS issues. The System Preferences Dock "prefer tabs +always" setting disables some IDLE features. Menus are a bit different than +as described for Windows and Linux. + +.. + +.. bpo: 35202 +.. date: 2018-11-10-09-10-54 +.. nonce: TeJJrt +.. section: IDLE + +Remove unused imports from lib/idlelib + +.. + +.. bpo: 33000 +.. date: 2018-11-06-23-10-54 +.. nonce: pQasCt +.. section: IDLE + +Document that IDLE's shell has no line limit. A program that runs +indefinitely can overfill memory. + +.. + +.. bpo: 23220 +.. date: 2018-11-05-23-23-00 +.. nonce: H3SAWE +.. section: IDLE + +Explain how IDLE's Shell displays output. + +.. + +.. bpo: 35099 +.. date: 2018-11-05-20-43-08 +.. nonce: SVOZXC +.. section: IDLE + +Improve the doc about IDLE running user code. The section is renamed from +"IDLE -- console differences" is renamed "Running user code". It mostly +covers the implications of using custom sys.stdxxx objects. + +.. + +.. bpo: 35097 +.. date: 2018-10-28-20-17-14 +.. nonce: 07tm66 +.. section: IDLE + +Add IDLE doc subsection explaining editor windows. Topics include opening, +title and status bar, .py* extension, and running. + +.. + +.. bpo: 35093 +.. date: 2018-10-28-15-53-51 +.. nonce: cH-tli +.. section: IDLE + +Document the IDLE document viewer in the IDLE doc. Add a paragraph in "Help +and preferences", "Help sources" subsection. + +.. + +.. bpo: 35088 +.. date: 2018-10-28-00-54-32 +.. nonce: r1lJZd +.. section: IDLE + +Update idlelib.help.copy_string docstring. We now use git and backporting +instead of hg and forward merging. + +.. + +.. bpo: 35087 +.. date: 2018-10-28-00-08-42 +.. nonce: G7gx2- +.. section: IDLE + +Update idlelib help files for the current doc build. The main change is the +elimination of chapter-section numbers. + +.. + +.. bpo: 34548 +.. date: 2018-09-22-20-25-07 +.. nonce: 7pBzjg +.. section: IDLE + +Use configured color theme for read-only text views. + +.. + +.. bpo: 1529353 +.. date: 2018-08-13-16-31-24 +.. nonce: wXfQJk +.. section: IDLE + +Enable "squeezing" of long outputs in the shell, to avoid performance +degradation and to clean up the history without losing it. Squeezed outputs +may be copied, viewed in a separate window, and "unsqueezed". + +.. + +.. bpo: 34047 +.. date: 2018-08-05-15-49-55 +.. nonce: LGKsIm +.. section: IDLE + +Fixed mousewheel scrolling direction on macOS. + +.. + +.. bpo: 34275 +.. date: 2018-08-02-22-16-42 +.. nonce: Iu0d7t +.. section: IDLE + +Make IDLE calltips always visible on Mac. Some MacOS-tk combinations need +.update_idletasks(). Patch by Kevin Walzer. + +.. + +.. bpo: 34120 +.. date: 2018-08-01-23-25-38 +.. nonce: HgsIz- +.. section: IDLE + +Fix unresponsiveness after closing certain windows and dialogs. + +.. + +.. bpo: 33975 +.. date: 2018-06-26-22-53-14 +.. nonce: Ow7alv +.. section: IDLE + +Avoid small type when running htests. Since part of the purpose of +human-viewed tests is to determine that widgets look right, it is important +that they look the same for testing as when running IDLE. + +.. + +.. bpo: 33905 +.. date: 2018-06-21-20-35-33 +.. nonce: W2mhiY +.. section: IDLE + +Add test for idlelib.stackview.StackBrowser. + +.. + +.. bpo: 33924 +.. date: 2018-06-20-22-14-07 +.. nonce: 6Rz1wt +.. section: IDLE + +Change mainmenu.menudefs key 'windows' to 'window'. Every other menudef key +is lowercase version of main menu entry. + +.. + +.. bpo: 33906 +.. date: 2018-06-20-19-16-24 +.. nonce: a1lXq0 +.. section: IDLE + +Rename idlelib.windows as window Match Window on the main menu and remove +last plural module name. + +.. + +.. bpo: 33917 +.. date: 2018-06-20-16-27-48 +.. nonce: ZXHs8x +.. section: IDLE + +Fix and document idlelib/idle_test/template.py. The revised file compiles, +runs, and tests OK. idle_test/README.txt explains how to use it to create +new IDLE test files. + +.. + +.. bpo: 33904 +.. date: 2018-06-20-12-40-54 +.. nonce: qm0eCu +.. section: IDLE + +IDLE: In rstrip, rename class RstripExtension as Rstrip + +.. + +.. bpo: 33907 +.. date: 2018-06-19-22-21-27 +.. nonce: z-_B3N +.. section: IDLE + +For consistency and clarity, rename an IDLE module and classes. Module +calltips and its class CallTips are now calltip and Calltip. In module +calltip_w, class CallTip is now CalltipWindow. + +.. + +.. bpo: 33856 +.. date: 2018-06-16-21-54-45 +.. nonce: TH8WHU +.. section: IDLE + +Add "help" in the welcome message of IDLE + +.. + +.. bpo: 33839 +.. date: 2018-06-14-13-23-55 +.. nonce: ZlJzHa +.. section: IDLE + +IDLE: refactor ToolTip and CallTip and add documentation and tests + +.. + +.. bpo: 33855 +.. date: 2018-06-14-11-35-50 +.. nonce: XL230W +.. section: IDLE + +Minimally test all IDLE modules. Add missing files, import module, +instantiate classes, and check coverage. Check existing files. + +.. + +.. bpo: 33656 +.. date: 2018-06-10-17-59-36 +.. nonce: 60ZqJS +.. section: IDLE + +On Windows, add API call saying that tk scales for DPI. On Windows 8.1+ or +10, with DPI compatibility properties of the Python binary unchanged, and a +monitor resolution greater than 96 DPI, this should make text and lines +sharper. It should otherwise have no effect. + +.. + +.. bpo: 33768 +.. date: 2018-06-04-19-23-11 +.. nonce: I_2qpV +.. section: IDLE + +Clicking on a context line moves that line to the top of the editor window. + +.. + +.. bpo: 33763 +.. date: 2018-06-03-20-12-57 +.. nonce: URiFlE +.. section: IDLE + +IDLE: Use read-only text widget for code context instead of label widget. + +.. + +.. bpo: 33664 +.. date: 2018-06-03-09-13-28 +.. nonce: PZzQyL +.. section: IDLE + +Scroll IDLE editor text by lines. Previously, the mouse wheel and scrollbar +slider moved text by a fixed number of pixels, resulting in partial lines at +the top of the editor box. The change also applies to the shell and grep +output windows, but not to read-only text views. + +.. + +.. bpo: 33679 +.. date: 2018-05-29-07-14-37 +.. nonce: MgX_Ui +.. section: IDLE + +Enable theme-specific color configuration for Code Context. Use the +Highlights tab to see the setting for built-in themes or add settings to +custom themes. + +.. + +.. bpo: 33642 +.. date: 2018-05-24-20-42-44 +.. nonce: J0VQbS +.. section: IDLE + +Display up to maxlines non-blank lines for Code Context. If there is no +current context, show a single blank line. + +.. + +.. bpo: 33628 +.. date: 2018-05-23-19-51-07 +.. nonce: sLlFLO +.. section: IDLE + +IDLE: Cleanup codecontext.py and its test. + +.. + +.. bpo: 33564 +.. date: 2018-05-17-19-41-12 +.. nonce: XzHZJe +.. section: IDLE + +IDLE's code context now recognizes async as a block opener. + +.. + +.. bpo: 21474 +.. date: 2018-04-29-16-13-02 +.. nonce: bglg-F +.. section: IDLE + +Update word/identifier definition from ascii to unicode. In text and entry +boxes, this affects selection by double-click, movement left/right by +control-left/right, and deletion left/right by control-BACKSPACE/DEL. + +.. + +.. bpo: 33204 +.. date: 2018-04-02-00-28-13 +.. nonce: NBsuIv +.. section: IDLE + +IDLE: consistently color invalid string prefixes. A 'u' string prefix cannot +be paired with either 'r' or 'f'. Consistently color as much of the prefix, +starting at the right, as is valid. Revise and extend colorizer test. + +.. + +.. bpo: 32984 +.. date: 2018-03-05-01-29-05 +.. nonce: NGjgT4 +.. section: IDLE + +Set ``__file__`` while running a startup file. Like Python, IDLE optionally +runs one startup file in the Shell window before presenting the first +interactive input prompt. For IDLE, ``-s`` runs a file named in +environmental variable :envvar:`IDLESTARTUP` or :envvar:`PYTHONSTARTUP`; +``-r file`` runs ``file``. Python sets ``__file__`` to the startup file +name before running the file and unsets it before the first prompt. IDLE +now does the same when run normally, without the ``-n`` option. + +.. + +.. bpo: 32940 +.. date: 2018-02-24-18-20-50 +.. nonce: ZaJ1Rf +.. section: IDLE + +Simplify and rename StringTranslatePseudoMapping in pyparse. + +.. + +.. bpo: 32916 +.. date: 2018-02-23-07-32-36 +.. nonce: 4MsQ5F +.. section: IDLE + +Change ``str`` to ``code`` in pyparse. + +.. + +.. bpo: 32905 +.. date: 2018-02-22-00-09-27 +.. nonce: VlXj0x +.. section: IDLE + +Remove unused code in pyparse module. + +.. + +.. bpo: 32874 +.. date: 2018-02-19-10-56-41 +.. nonce: 6pZ9Gv +.. section: IDLE + +Add tests for pyparse. + +.. + +.. bpo: 32837 +.. date: 2018-02-12-17-22-48 +.. nonce: -33QPl +.. section: IDLE + +Using the system and place-dependent default encoding for open() is a bad +idea for IDLE's system and location-independent files. + +.. + +.. bpo: 32826 +.. date: 2018-02-12-11-05-22 +.. nonce: IxNZrk +.. section: IDLE + +Add "encoding=utf-8" to open() in IDLE's test_help_about. GUI test +test_file_buttons() only looks at initial ascii-only lines, but failed on +systems where open() defaults to 'ascii' because readline() internally reads +and decodes far enough ahead to encounter a non-ascii character in +CREDITS.txt. + +.. + +.. bpo: 32831 +.. date: 2018-02-12-08-08-45 +.. nonce: srDRvU +.. section: IDLE + +Add docstrings and tests for codecontext. + +.. + +.. bpo: 32765 +.. date: 2018-02-04-17-52-54 +.. nonce: qm0eCu +.. section: IDLE + +Update configdialog General tab docstring to add new widgets to the widget +list. + +.. + +.. bpo: 35884 +.. date: 2019-02-01-12-22-37 +.. nonce: hJkMRD +.. section: Tools/Demos + +Add a benchmark script for timing various ways to access variables: +``Tools/scripts/var_access_benchmark.py``. + +.. + +.. bpo: 34989 +.. date: 2018-10-15-13-22-28 +.. nonce: hU4fra +.. section: Tools/Demos + +python-gdb.py now handles errors on computing the line number of a Python +frame. + +.. + +.. bpo: 20260 +.. date: 2018-07-24-00-11-44 +.. nonce: klmmqI +.. section: Tools/Demos + +Argument Clinic now has non-bitwise unsigned int converters. + +.. + +.. bpo: 32962 +.. date: 2018-06-14-16-23-07 +.. nonce: Q3Dwns +.. section: Tools/Demos + +python-gdb now catchs ``UnicodeDecodeError`` exceptions when calling +``string()``. + +.. + +.. bpo: 32962 +.. date: 2018-06-14-16-16-53 +.. nonce: 2YfdwI +.. section: Tools/Demos + +python-gdb now catchs ValueError on read_var(): when Python has no debug +symbols for example. + +.. + +.. bpo: 33189 +.. date: 2018-04-03-18-10-00 +.. nonce: QrXR00 +.. section: Tools/Demos + +:program:`pygettext.py` now recognizes only literal strings as docstrings +and translatable strings, and rejects bytes literals and f-string +expressions. + +.. + +.. bpo: 31920 +.. date: 2018-03-26-18-54-24 +.. nonce: u_WKsT +.. section: Tools/Demos + +Fixed handling directories as arguments in the ``pygettext`` script. Based +on patch by Oleg Krasnikov. + +.. + +.. bpo: 29673 +.. date: 2018-03-16-17-25-05 +.. nonce: m8QtaW +.. section: Tools/Demos + +Fix pystackv and pystack gdbinit macros. + +.. + +.. bpo: 25427 +.. date: 2018-03-02-16-23-31 +.. nonce: 1mgMOG +.. section: Tools/Demos + +Remove the pyvenv script in favor of ``python3 -m venv`` in order to lower +confusion as to what Python interpreter a virtual environment will be +created for. + +.. + +.. bpo: 32885 +.. date: 2018-02-20-12-16-47 +.. nonce: dL5x7C +.. section: Tools/Demos + +Add an ``-n`` flag for ``Tools/scripts/pathfix.py`` to disable automatic +backup creation (files with ``~`` suffix). + +.. + +.. bpo: 32222 +.. date: 2017-12-07-20-51-20 +.. nonce: hPBcGT +.. section: Tools/Demos + +Fix pygettext not extracting docstrings for functions with type annotated +arguments. Patch by Toby Harradine. + +.. + +.. bpo: 31583 +.. date: 2017-09-26-10-11-21 +.. nonce: TM90_H +.. section: Tools/Demos + +Fix 2to3 for using with --add-suffix option but without --output-dir option +for relative path to files in current directory. + +.. + +.. bpo: 35713 +.. date: 2019-01-22-17-04-10 +.. nonce: fmehdG +.. section: C API + +The :c:func:`PyByteArray_Init` and :c:func:`PyByteArray_Fini` functions have +been removed. They did nothing since Python 2.7.4 and Python 3.2.0, were +excluded from the limited API (stable ABI), and were not documented. + +.. + +.. bpo: 33817 +.. date: 2019-01-11-11-16-16 +.. nonce: nJ4yIj +.. section: C API + +Fixed :c:func:`_PyBytes_Resize` for empty bytes objects. + +.. + +.. bpo: 35322 +.. date: 2018-11-28-03-20-36 +.. nonce: Qcqsag +.. section: C API + +Fix memory leak in :c:func:`PyUnicode_EncodeLocale` and +:c:func:`PyUnicode_EncodeFSDefault` on error handling. + +.. + +.. bpo: 35059 +.. date: 2018-11-23-11-52-34 +.. nonce: BLSp6y +.. section: C API + +The following C macros have been converted to static inline functions: +:c:func:`Py_INCREF`, :c:func:`Py_DECREF`, :c:func:`Py_XINCREF`, +:c:func:`Py_XDECREF`, :c:func:`PyObject_INIT`, :c:func:`PyObject_INIT_VAR`. + +.. + +.. bpo: 35296 +.. date: 2018-11-22-18-34-23 +.. nonce: nxrIQt +.. section: C API + +``make install`` now also installs the internal API: +``Include/internal/*.h`` header files. + +.. + +.. bpo: 35081 +.. date: 2018-11-22-18-15-46 +.. nonce: FdK9mV +.. section: C API + +Internal APIs surrounded by ``#ifdef Py_BUILD_CORE`` have been moved from +``Include/*.h`` headers to new header files ``Include/internal/pycore_*.h``. + +.. + +.. bpo: 35259 +.. date: 2018-11-22-13-52-36 +.. nonce: p07c61 +.. section: C API + +Conditionally declare :c:func:`Py_FinalizeEx()` (new in 3.6) based on +Py_LIMITED_API. Patch by Arthur Neufeld. + +.. + +.. bpo: 35081 +.. date: 2018-11-13-12-13-04 +.. nonce: gFd85N +.. section: C API + +The :c:func:`_PyObject_GC_TRACK` and :c:func:`_PyObject_GC_UNTRACK` macros +have been removed from the public C API. + +.. + +.. bpo: 35134 +.. date: 2018-11-01-13-58-37 +.. nonce: SbZo0o +.. section: C API + +Creation of a new ``Include/cpython/`` subdirectory. + +.. + +.. bpo: 34725 +.. date: 2018-10-13-16-30-54 +.. nonce: j52rIS +.. section: C API + +Adds _Py_SetProgramFullPath so embedders may override sys.executable + +.. + +.. bpo: 34910 +.. date: 2018-10-05-17-06-49 +.. nonce: tSFrls +.. section: C API + +Ensure that :c:func:`PyObject_Print` always returns ``-1`` on error. Patch +by Zackery Spytz. + +.. + +.. bpo: 34523 +.. date: 2018-08-29-18-48-47 +.. nonce: lLQ8rh +.. section: C API + +Py_DecodeLocale() and Py_EncodeLocale() now use the UTF-8 encoding on +Windows if Py_LegacyWindowsFSEncodingFlag is zero. + +.. + +.. bpo: 34193 +.. date: 2018-07-24-11-57-35 +.. nonce: M6ch1Q +.. section: C API + +Fix pluralization in TypeError messages in getargs.c and typeobject.c: '1 +argument' instead of '1 arguments' and '1 element' instead of '1 elements'. + +.. + +.. bpo: 34127 +.. date: 2018-07-22-14-58-06 +.. nonce: qkfnHO +.. section: C API + +Return grammatically correct error message based on argument count. Patch by +Karthikeyan Singaravelan. + +.. + +.. bpo: 23927 +.. date: 2018-07-09-11-39-54 +.. nonce: pDFkxb +.. section: C API + +Fixed :exc:`SystemError` in :c:func:`PyArg_ParseTupleAndKeywords` when the +``w*`` format unit is used for optional parameter. + +.. + +.. bpo: 32455 +.. date: 2018-07-08-12-06-18 +.. nonce: KVHlkz +.. section: C API + +Added :c:func:`PyCompile_OpcodeStackEffectWithJump`. + +.. + +.. bpo: 34008 +.. date: 2018-07-02-10-58-11 +.. nonce: COewz- +.. section: C API + +Py_Main() can again be called after Py_Initialize(), as in Python 3.6. + +.. + +.. bpo: 32500 +.. date: 2018-06-21-17-19-31 +.. nonce: WGCNad +.. section: C API + +Fixed error messages for :c:func:`PySequence_Size`, +:c:func:`PySequence_GetItem`, :c:func:`PySequence_SetItem` and +:c:func:`PySequence_DelItem` called with a mapping and +:c:func:`PyMapping_Size` called with a sequence. + +.. + +.. bpo: 33818 +.. date: 2018-06-10-09-42-31 +.. nonce: 50nlf3 +.. section: C API + +:c:func:`PyExceptionClass_Name` will now return ``const char *`` instead of +``char *``. + +.. + +.. bpo: 33042 +.. date: 2018-03-20-21-43-09 +.. nonce: FPFp64 +.. section: C API + +Embedding applications may once again call PySys_ResetWarnOptions, +PySys_AddWarnOption, and PySys_AddXOption prior to calling Py_Initialize. + +.. + +.. bpo: 32374 +.. date: 2018-01-09-17-03-54 +.. nonce: SwwLoz +.. section: C API + +Document that m_traverse for multi-phase initialized modules can be called +with m_state=NULL, and add a sanity check + +.. + +.. bpo: 30863 +.. date: 2017-10-12-23-24-27 +.. nonce: xrED19 +.. section: C API + +:c:func:`PyUnicode_AsWideChar` and :c:func:`PyUnicode_AsWideCharString` no +longer cache the ``wchar_t*`` representation of string objects. diff --git a/Misc/NEWS.d/next/Build/2017-09-26-23-08-27.bpo-29442.fD8YTi.rst b/Misc/NEWS.d/next/Build/2017-09-26-23-08-27.bpo-29442.fD8YTi.rst deleted file mode 100644 index 9bd12689ec18..000000000000 --- a/Misc/NEWS.d/next/Build/2017-09-26-23-08-27.bpo-29442.fD8YTi.rst +++ /dev/null @@ -1 +0,0 @@ -Replace optparse with argparse in setup.py diff --git a/Misc/NEWS.d/next/Build/2018-02-21-12-46-00.bpo-32898.M15bZh.rst b/Misc/NEWS.d/next/Build/2018-02-21-12-46-00.bpo-32898.M15bZh.rst deleted file mode 100644 index 4c75466bfd0f..000000000000 --- a/Misc/NEWS.d/next/Build/2018-02-21-12-46-00.bpo-32898.M15bZh.rst +++ /dev/null @@ -1 +0,0 @@ -Fix the python debug build when using COUNT_ALLOCS. diff --git a/Misc/NEWS.d/next/Build/2018-03-08-20-25-29.bpo-33012.k9Fe1q.rst b/Misc/NEWS.d/next/Build/2018-03-08-20-25-29.bpo-33012.k9Fe1q.rst deleted file mode 100644 index 474053348fcc..000000000000 --- a/Misc/NEWS.d/next/Build/2018-03-08-20-25-29.bpo-33012.k9Fe1q.rst +++ /dev/null @@ -1,5 +0,0 @@ -gcc 8 has added a new warning heuristic to detect invalid function casts and -a stock python build seems to hit that warning quite often. The most common -is the cast of a METH_NOARGS function (that uses just one argument) to a -PyCFunction. Fix this by adding a dummy argument to all functions that -implement METH_NOARGS. diff --git a/Misc/NEWS.d/next/Build/2018-03-28-04-15-03.bpo-33163.hfpWuU.rst b/Misc/NEWS.d/next/Build/2018-03-28-04-15-03.bpo-33163.hfpWuU.rst deleted file mode 100644 index b3f04e3f800c..000000000000 --- a/Misc/NEWS.d/next/Build/2018-03-28-04-15-03.bpo-33163.hfpWuU.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade pip to 9.0.3 and setuptools to v39.0.1. diff --git a/Misc/NEWS.d/next/Build/2018-03-30-14-55-48.bpo-33182.CePczb.rst b/Misc/NEWS.d/next/Build/2018-03-30-14-55-48.bpo-33182.CePczb.rst deleted file mode 100644 index 6310e5d5b557..000000000000 --- a/Misc/NEWS.d/next/Build/2018-03-30-14-55-48.bpo-33182.CePczb.rst +++ /dev/null @@ -1 +0,0 @@ -The embedding tests can once again be built with clang 6.0 diff --git a/Misc/NEWS.d/next/Build/2018-04-17-00-38-19.bpo-32232.o7G_UO.rst b/Misc/NEWS.d/next/Build/2018-04-17-00-38-19.bpo-32232.o7G_UO.rst deleted file mode 100644 index fea0b60fcedd..000000000000 --- a/Misc/NEWS.d/next/Build/2018-04-17-00-38-19.bpo-32232.o7G_UO.rst +++ /dev/null @@ -1,3 +0,0 @@ -By default, modules configured in `Modules/Setup` are no longer built with -`-DPy_BUILD_CORE`. Instead, modules that specifically need that preprocessor -definition include it in their individual entries. diff --git a/Misc/NEWS.d/next/Build/2018-04-30-16-53-00.bpo-33377.QBh6vP.rst b/Misc/NEWS.d/next/Build/2018-04-30-16-53-00.bpo-33377.QBh6vP.rst deleted file mode 100644 index f5dbd23c7c35..000000000000 --- a/Misc/NEWS.d/next/Build/2018-04-30-16-53-00.bpo-33377.QBh6vP.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add new triplets for mips r6 and riscv variants (used in extension -suffixes). diff --git a/Misc/NEWS.d/next/Build/2018-04-30-17-19-37.bpo-33393.HkVCqI.rst b/Misc/NEWS.d/next/Build/2018-04-30-17-19-37.bpo-33393.HkVCqI.rst deleted file mode 100644 index f3317e7e68f3..000000000000 --- a/Misc/NEWS.d/next/Build/2018-04-30-17-19-37.bpo-33393.HkVCqI.rst +++ /dev/null @@ -1 +0,0 @@ -Update config.guess and config.sub files. diff --git a/Misc/NEWS.d/next/Build/2018-04-30-17-36-46.bpo-33394._Vdi4t.rst b/Misc/NEWS.d/next/Build/2018-04-30-17-36-46.bpo-33394._Vdi4t.rst deleted file mode 100644 index b25fbb02c406..000000000000 --- a/Misc/NEWS.d/next/Build/2018-04-30-17-36-46.bpo-33394._Vdi4t.rst +++ /dev/null @@ -1,2 +0,0 @@ -Enable the verbose build for extension modules, when GNU make is passed -macros on the command line. diff --git a/Misc/NEWS.d/next/Build/2018-05-13-17-21-54.bpo-33483.WOs-en.rst b/Misc/NEWS.d/next/Build/2018-05-13-17-21-54.bpo-33483.WOs-en.rst deleted file mode 100644 index 9808711e14ea..000000000000 --- a/Misc/NEWS.d/next/Build/2018-05-13-17-21-54.bpo-33483.WOs-en.rst +++ /dev/null @@ -1,2 +0,0 @@ -C compiler is now correctly detected from the standard environment -variables. --without-gcc and --with-icc options have been removed. diff --git a/Misc/NEWS.d/next/Build/2018-05-15-02-07-49.bpo-33512.X4Fy1Q.rst b/Misc/NEWS.d/next/Build/2018-05-15-02-07-49.bpo-33512.X4Fy1Q.rst deleted file mode 100644 index 6b74551f1ba4..000000000000 --- a/Misc/NEWS.d/next/Build/2018-05-15-02-07-49.bpo-33512.X4Fy1Q.rst +++ /dev/null @@ -1 +0,0 @@ -configure's check for "long double" has been simplified diff --git a/Misc/NEWS.d/next/Build/2018-05-15-12-44-50.bpo-33522.mJoNcA.rst b/Misc/NEWS.d/next/Build/2018-05-15-12-44-50.bpo-33522.mJoNcA.rst deleted file mode 100644 index f44862f0c454..000000000000 --- a/Misc/NEWS.d/next/Build/2018-05-15-12-44-50.bpo-33522.mJoNcA.rst +++ /dev/null @@ -1,2 +0,0 @@ -Enable CI builds on Visual Studio Team Services at -https://python.visualstudio.com/cpython diff --git a/Misc/NEWS.d/next/Build/2018-05-25-13-05-51.bpo-33648.bJ4JZH.rst b/Misc/NEWS.d/next/Build/2018-05-25-13-05-51.bpo-33648.bJ4JZH.rst deleted file mode 100644 index eaac4ebf18ea..000000000000 --- a/Misc/NEWS.d/next/Build/2018-05-25-13-05-51.bpo-33648.bJ4JZH.rst +++ /dev/null @@ -1,2 +0,0 @@ -The --with-c-locale-warning configuration flag has been removed. It has had -no effect for about a year. diff --git a/Misc/NEWS.d/next/Build/2018-05-28-11-40-22.bpo-33614.28e0sE.rst b/Misc/NEWS.d/next/Build/2018-05-28-11-40-22.bpo-33614.28e0sE.rst deleted file mode 100644 index 9091c282ad0a..000000000000 --- a/Misc/NEWS.d/next/Build/2018-05-28-11-40-22.bpo-33614.28e0sE.rst +++ /dev/null @@ -1,2 +0,0 @@ -Ensures module definition files for the stable ABI on Windows are correctly -regenerated. diff --git a/Misc/NEWS.d/next/Build/2018-06-04-21-34-34.bpo-5755.65GmCj.rst b/Misc/NEWS.d/next/Build/2018-06-04-21-34-34.bpo-5755.65GmCj.rst deleted file mode 100644 index 8bcad4418baf..000000000000 --- a/Misc/NEWS.d/next/Build/2018-06-04-21-34-34.bpo-5755.65GmCj.rst +++ /dev/null @@ -1,3 +0,0 @@ -Move ``-Wstrict-prototypes`` option to ``CFLAGS_NODIST`` from ``OPT``. This -option emitted annoying warnings when building extension modules written in -C++. diff --git a/Misc/NEWS.d/next/Build/2018-06-15-18-18-16.bpo-30345.j-xRE1.rst b/Misc/NEWS.d/next/Build/2018-06-15-18-18-16.bpo-30345.j-xRE1.rst deleted file mode 100644 index f8db09bdbc66..000000000000 --- a/Misc/NEWS.d/next/Build/2018-06-15-18-18-16.bpo-30345.j-xRE1.rst +++ /dev/null @@ -1 +0,0 @@ -Add -g to LDFLAGS when compiling with LTO to get debug symbols. diff --git a/Misc/NEWS.d/next/Build/2018-07-10-21-33-25.bpo-32430.UN3Nk8.rst b/Misc/NEWS.d/next/Build/2018-07-10-21-33-25.bpo-32430.UN3Nk8.rst deleted file mode 100644 index 446c5a130d71..000000000000 --- a/Misc/NEWS.d/next/Build/2018-07-10-21-33-25.bpo-32430.UN3Nk8.rst +++ /dev/null @@ -1,2 +0,0 @@ -Rename Modules/Setup.dist to Modules/Setup, and remove the necessity to copy -the former manually to the latter when updating the local source tree. diff --git a/Misc/NEWS.d/next/Build/2018-07-15-16-49-06.bpo-34121.74G_lo.rst b/Misc/NEWS.d/next/Build/2018-07-15-16-49-06.bpo-34121.74G_lo.rst deleted file mode 100644 index 232719abf0e1..000000000000 --- a/Misc/NEWS.d/next/Build/2018-07-15-16-49-06.bpo-34121.74G_lo.rst +++ /dev/null @@ -1 +0,0 @@ -Fix detection of C11 atomic support on clang. diff --git a/Misc/NEWS.d/next/Build/2018-07-27-09-52-48.bpo-34245.bBV0NI.rst b/Misc/NEWS.d/next/Build/2018-07-27-09-52-48.bpo-34245.bBV0NI.rst deleted file mode 100644 index 3822bb0e4f08..000000000000 --- a/Misc/NEWS.d/next/Build/2018-07-27-09-52-48.bpo-34245.bBV0NI.rst +++ /dev/null @@ -1,2 +0,0 @@ -The Python shared library is now installed with write permission (mode 0755), -which is the standard way of installing such libraries. diff --git a/Misc/NEWS.d/next/Build/2018-08-24-09-48-25.bpo-33015.s21y74.rst b/Misc/NEWS.d/next/Build/2018-08-24-09-48-25.bpo-33015.s21y74.rst deleted file mode 100644 index 8c5a0c91a46b..000000000000 --- a/Misc/NEWS.d/next/Build/2018-08-24-09-48-25.bpo-33015.s21y74.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix an undefined behaviour in the pthread implementation of -:c:func:`PyThread_start_new_thread`: add a function wrapper to always return -``NULL``. diff --git a/Misc/NEWS.d/next/Build/2018-08-31-19-41-09.bpo-34555.dfQcnm.rst b/Misc/NEWS.d/next/Build/2018-08-31-19-41-09.bpo-34555.dfQcnm.rst deleted file mode 100644 index 7e61c4fb20ab..000000000000 --- a/Misc/NEWS.d/next/Build/2018-08-31-19-41-09.bpo-34555.dfQcnm.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix for case where it was not possible to have both -``HAVE_LINUX_VM_SOCKETS_H`` and ``HAVE_SOCKADDR_ALG`` be undefined. diff --git a/Misc/NEWS.d/next/Build/2018-09-06-07-15-20.bpo-34081.cuSTnH.rst b/Misc/NEWS.d/next/Build/2018-09-06-07-15-20.bpo-34081.cuSTnH.rst deleted file mode 100644 index af385bac231b..000000000000 --- a/Misc/NEWS.d/next/Build/2018-09-06-07-15-20.bpo-34081.cuSTnH.rst +++ /dev/null @@ -1 +0,0 @@ -Make Sphinx warnings as errors in the Docs Makefile. diff --git a/Misc/NEWS.d/next/Build/2018-09-14-09-53-21.bpo-34582.j3omgk.rst b/Misc/NEWS.d/next/Build/2018-09-14-09-53-21.bpo-34582.j3omgk.rst deleted file mode 100644 index 582c15f27c8c..000000000000 --- a/Misc/NEWS.d/next/Build/2018-09-14-09-53-21.bpo-34582.j3omgk.rst +++ /dev/null @@ -1 +0,0 @@ -Add JUnit XML output for regression tests and update Azure DevOps builds. diff --git a/Misc/NEWS.d/next/Build/2018-09-17-13-56-12.bpo-34710.ARqIAK.rst b/Misc/NEWS.d/next/Build/2018-09-17-13-56-12.bpo-34710.ARqIAK.rst deleted file mode 100644 index b06289d091e5..000000000000 --- a/Misc/NEWS.d/next/Build/2018-09-17-13-56-12.bpo-34710.ARqIAK.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed SSL module build with OpenSSL & pedantic CFLAGS. diff --git a/Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst b/Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst deleted file mode 100644 index 01318e6e46a3..000000000000 --- a/Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst +++ /dev/null @@ -1,3 +0,0 @@ -Check for floating-point byte order in configure.ac using compilation tests -instead of executing code, so that these checks work in cross-compiled -builds. diff --git a/Misc/NEWS.d/next/Build/2018-09-26-17-29-10.bpo-34765.AvxdVj.rst b/Misc/NEWS.d/next/Build/2018-09-26-17-29-10.bpo-34765.AvxdVj.rst deleted file mode 100644 index 12ed26de8ce0..000000000000 --- a/Misc/NEWS.d/next/Build/2018-09-26-17-29-10.bpo-34765.AvxdVj.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update the outdated install-sh file to the latest revision from automake -v1.16.1 diff --git a/Misc/NEWS.d/next/Build/2018-10-16-12-22-36.bpo-28015.ylSgFh.rst b/Misc/NEWS.d/next/Build/2018-10-16-12-22-36.bpo-28015.ylSgFh.rst deleted file mode 100644 index 5a7a43c77307..000000000000 --- a/Misc/NEWS.d/next/Build/2018-10-16-12-22-36.bpo-28015.ylSgFh.rst +++ /dev/null @@ -1 +0,0 @@ -Have --with-lto works correctly with clang. diff --git a/Misc/NEWS.d/next/Build/2018-10-17-17-38-57.bpo-35011.GgoPIC.rst b/Misc/NEWS.d/next/Build/2018-10-17-17-38-57.bpo-35011.GgoPIC.rst deleted file mode 100644 index 4411ffea45ce..000000000000 --- a/Misc/NEWS.d/next/Build/2018-10-17-17-38-57.bpo-35011.GgoPIC.rst +++ /dev/null @@ -1,4 +0,0 @@ -Restores the use of pyexpatns.h to isolate our embedded copy of the expat C -library so that its symbols do not conflict at link or dynamic loading time -with an embedding application or other extension modules with their own -version of libexpat. diff --git a/Misc/NEWS.d/next/Build/2018-10-26-14-49-19.bpo-35059.PKsBxP.rst b/Misc/NEWS.d/next/Build/2018-10-26-14-49-19.bpo-35059.PKsBxP.rst deleted file mode 100644 index 262161637b13..000000000000 --- a/Misc/NEWS.d/next/Build/2018-10-26-14-49-19.bpo-35059.PKsBxP.rst +++ /dev/null @@ -1,4 +0,0 @@ -PCbuild: Set InlineFunctionExpansion to OnlyExplicitInline ("/Ob1" option) -in pyproject.props in Debug mode to expand functions marked as inline. This -change should make Python compiled in Debug mode a little bit faster on -Windows. diff --git a/Misc/NEWS.d/next/Build/2018-11-01-15-01-23.bpo-35139.XZTttb.rst b/Misc/NEWS.d/next/Build/2018-11-01-15-01-23.bpo-35139.XZTttb.rst deleted file mode 100644 index aa65088be809..000000000000 --- a/Misc/NEWS.d/next/Build/2018-11-01-15-01-23.bpo-35139.XZTttb.rst +++ /dev/null @@ -1 +0,0 @@ -Fix a compiler error when statically linking `pyexpat` in `Modules/Setup`. diff --git a/Misc/NEWS.d/next/Build/2018-12-04-15-33-28.bpo-35351.ZhhBfT.rst b/Misc/NEWS.d/next/Build/2018-12-04-15-33-28.bpo-35351.ZhhBfT.rst deleted file mode 100644 index ee6c870b060f..000000000000 --- a/Misc/NEWS.d/next/Build/2018-12-04-15-33-28.bpo-35351.ZhhBfT.rst +++ /dev/null @@ -1,2 +0,0 @@ -When building Python with clang and LTO, LTO flags are no longer passed into -CFLAGS to build third-party C extensions through distutils. diff --git a/Misc/NEWS.d/next/Build/2018-12-05-22-28-40.bpo-35257.dmcd_s.rst b/Misc/NEWS.d/next/Build/2018-12-05-22-28-40.bpo-35257.dmcd_s.rst deleted file mode 100644 index fad252578299..000000000000 --- a/Misc/NEWS.d/next/Build/2018-12-05-22-28-40.bpo-35257.dmcd_s.rst +++ /dev/null @@ -1,2 +0,0 @@ -Avoid leaking the linker flags from Link Time Optimizations (LTO) -into distutils when compiling C extensions. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Build/2018-12-14-19-36-05.bpo-35499.9yAldM.rst b/Misc/NEWS.d/next/Build/2018-12-14-19-36-05.bpo-35499.9yAldM.rst deleted file mode 100644 index ed730b9d9b4a..000000000000 --- a/Misc/NEWS.d/next/Build/2018-12-14-19-36-05.bpo-35499.9yAldM.rst +++ /dev/null @@ -1,3 +0,0 @@ -``make profile-opt`` no longer replaces ``CFLAGS_NODIST`` with ``CFLAGS``. It -now adds profile-guided optimization (PGO) flags to ``CFLAGS_NODIST``: existing -``CFLAGS_NODIST`` flags are kept. diff --git a/Misc/NEWS.d/next/Build/2018-12-29-10-19-43.bpo-35550.BTuu8e.rst b/Misc/NEWS.d/next/Build/2018-12-29-10-19-43.bpo-35550.BTuu8e.rst deleted file mode 100644 index 8a6b90d5970e..000000000000 --- a/Misc/NEWS.d/next/Build/2018-12-29-10-19-43.bpo-35550.BTuu8e.rst +++ /dev/null @@ -1 +0,0 @@ -Fix incorrect Solaris #ifdef checks to look for __sun && __SVR4 instead of sun when compiling. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Build/2019-01-02-11-23-33.bpo-35642.pjkhJe.rst b/Misc/NEWS.d/next/Build/2019-01-02-11-23-33.bpo-35642.pjkhJe.rst deleted file mode 100644 index 9f6da315e2d5..000000000000 --- a/Misc/NEWS.d/next/Build/2019-01-02-11-23-33.bpo-35642.pjkhJe.rst +++ /dev/null @@ -1 +0,0 @@ -Remove asynciomodule.c from pythoncore.vcxproj diff --git a/Misc/NEWS.d/next/Build/2019-01-10-11-37-18.bpo-35683.pf5Oos.rst b/Misc/NEWS.d/next/Build/2019-01-10-11-37-18.bpo-35683.pf5Oos.rst deleted file mode 100644 index f39610169370..000000000000 --- a/Misc/NEWS.d/next/Build/2019-01-10-11-37-18.bpo-35683.pf5Oos.rst +++ /dev/null @@ -1 +0,0 @@ -Improved Azure Pipelines build steps and now verifying layouts correctly diff --git a/Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst b/Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst deleted file mode 100644 index 3b5aca75103b..000000000000 --- a/Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst +++ /dev/null @@ -1,2 +0,0 @@ -The _contextvars module is now built into the core Python library on -Windows. diff --git a/Misc/NEWS.d/next/C API/2017-10-12-23-24-27.bpo-30863.xrED19.rst b/Misc/NEWS.d/next/C API/2017-10-12-23-24-27.bpo-30863.xrED19.rst deleted file mode 100644 index a8ef8761a792..000000000000 --- a/Misc/NEWS.d/next/C API/2017-10-12-23-24-27.bpo-30863.xrED19.rst +++ /dev/null @@ -1,2 +0,0 @@ -:c:func:`PyUnicode_AsWideChar` and :c:func:`PyUnicode_AsWideCharString` no -longer cache the ``wchar_t*`` representation of string objects. diff --git a/Misc/NEWS.d/next/C API/2018-01-09-17-03-54.bpo-32374.SwwLoz.rst b/Misc/NEWS.d/next/C API/2018-01-09-17-03-54.bpo-32374.SwwLoz.rst deleted file mode 100644 index f9cf6d6b99ce..000000000000 --- a/Misc/NEWS.d/next/C API/2018-01-09-17-03-54.bpo-32374.SwwLoz.rst +++ /dev/null @@ -1,2 +0,0 @@ -Document that m_traverse for multi-phase initialized modules can be called -with m_state=NULL, and add a sanity check diff --git a/Misc/NEWS.d/next/C API/2018-03-20-21-43-09.bpo-33042.FPFp64.rst b/Misc/NEWS.d/next/C API/2018-03-20-21-43-09.bpo-33042.FPFp64.rst deleted file mode 100644 index f840b55869cc..000000000000 --- a/Misc/NEWS.d/next/C API/2018-03-20-21-43-09.bpo-33042.FPFp64.rst +++ /dev/null @@ -1,2 +0,0 @@ -Embedding applications may once again call PySys_ResetWarnOptions, -PySys_AddWarnOption, and PySys_AddXOption prior to calling Py_Initialize. \ No newline at end of file diff --git a/Misc/NEWS.d/next/C API/2018-06-10-09-42-31.bpo-33818.50nlf3.rst b/Misc/NEWS.d/next/C API/2018-06-10-09-42-31.bpo-33818.50nlf3.rst deleted file mode 100644 index 0f30a6e380ef..000000000000 --- a/Misc/NEWS.d/next/C API/2018-06-10-09-42-31.bpo-33818.50nlf3.rst +++ /dev/null @@ -1,2 +0,0 @@ -:c:func:`PyExceptionClass_Name` will now return ``const char *`` instead of -``char *``. diff --git a/Misc/NEWS.d/next/C API/2018-06-21-17-19-31.bpo-32500.WGCNad.rst b/Misc/NEWS.d/next/C API/2018-06-21-17-19-31.bpo-32500.WGCNad.rst deleted file mode 100644 index 71e00a005e27..000000000000 --- a/Misc/NEWS.d/next/C API/2018-06-21-17-19-31.bpo-32500.WGCNad.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fixed error messages for :c:func:`PySequence_Size`, -:c:func:`PySequence_GetItem`, :c:func:`PySequence_SetItem` and -:c:func:`PySequence_DelItem` called with a mapping and -:c:func:`PyMapping_Size` called with a sequence. diff --git a/Misc/NEWS.d/next/C API/2018-07-02-10-58-11.bpo-34008.COewz-.rst b/Misc/NEWS.d/next/C API/2018-07-02-10-58-11.bpo-34008.COewz-.rst deleted file mode 100644 index d9881b9945df..000000000000 --- a/Misc/NEWS.d/next/C API/2018-07-02-10-58-11.bpo-34008.COewz-.rst +++ /dev/null @@ -1 +0,0 @@ -Py_Main() can again be called after Py_Initialize(), as in Python 3.6. diff --git a/Misc/NEWS.d/next/C API/2018-07-08-12-06-18.bpo-32455.KVHlkz.rst b/Misc/NEWS.d/next/C API/2018-07-08-12-06-18.bpo-32455.KVHlkz.rst deleted file mode 100644 index f28be876cf39..000000000000 --- a/Misc/NEWS.d/next/C API/2018-07-08-12-06-18.bpo-32455.KVHlkz.rst +++ /dev/null @@ -1 +0,0 @@ -Added :c:func:`PyCompile_OpcodeStackEffectWithJump`. diff --git a/Misc/NEWS.d/next/C API/2018-07-09-11-39-54.bpo-23927.pDFkxb.rst b/Misc/NEWS.d/next/C API/2018-07-09-11-39-54.bpo-23927.pDFkxb.rst deleted file mode 100644 index 3e2ac6c91837..000000000000 --- a/Misc/NEWS.d/next/C API/2018-07-09-11-39-54.bpo-23927.pDFkxb.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed :exc:`SystemError` in :c:func:`PyArg_ParseTupleAndKeywords` when the -``w*`` format unit is used for optional parameter. diff --git a/Misc/NEWS.d/next/C API/2018-07-22-14-58-06.bpo-34127.qkfnHO.rst b/Misc/NEWS.d/next/C API/2018-07-22-14-58-06.bpo-34127.qkfnHO.rst deleted file mode 100644 index c5b8c0746816..000000000000 --- a/Misc/NEWS.d/next/C API/2018-07-22-14-58-06.bpo-34127.qkfnHO.rst +++ /dev/null @@ -1,2 +0,0 @@ -Return grammatically correct error message based on argument count. -Patch by Karthikeyan Singaravelan. diff --git a/Misc/NEWS.d/next/C API/2018-07-24-11-57-35.bpo-34193.M6ch1Q.rst b/Misc/NEWS.d/next/C API/2018-07-24-11-57-35.bpo-34193.M6ch1Q.rst deleted file mode 100644 index da2a6116d44e..000000000000 --- a/Misc/NEWS.d/next/C API/2018-07-24-11-57-35.bpo-34193.M6ch1Q.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix pluralization in TypeError messages in getargs.c and typeobject.c: -'1 argument' instead of '1 arguments' and '1 element' instead of '1 elements'. diff --git a/Misc/NEWS.d/next/C API/2018-08-29-18-48-47.bpo-34523.lLQ8rh.rst b/Misc/NEWS.d/next/C API/2018-08-29-18-48-47.bpo-34523.lLQ8rh.rst deleted file mode 100644 index 95368f1c6847..000000000000 --- a/Misc/NEWS.d/next/C API/2018-08-29-18-48-47.bpo-34523.lLQ8rh.rst +++ /dev/null @@ -1,2 +0,0 @@ -Py_DecodeLocale() and Py_EncodeLocale() now use the UTF-8 encoding on -Windows if Py_LegacyWindowsFSEncodingFlag is zero. diff --git a/Misc/NEWS.d/next/C API/2018-10-05-17-06-49.bpo-34910.tSFrls.rst b/Misc/NEWS.d/next/C API/2018-10-05-17-06-49.bpo-34910.tSFrls.rst deleted file mode 100644 index eff4755d8d5e..000000000000 --- a/Misc/NEWS.d/next/C API/2018-10-05-17-06-49.bpo-34910.tSFrls.rst +++ /dev/null @@ -1,2 +0,0 @@ -Ensure that :c:func:`PyObject_Print` always returns ``-1`` on error. Patch -by Zackery Spytz. diff --git a/Misc/NEWS.d/next/C API/2018-10-13-16-30-54.bpo-34725.j52rIS.rst b/Misc/NEWS.d/next/C API/2018-10-13-16-30-54.bpo-34725.j52rIS.rst deleted file mode 100644 index b5bc1bf0c723..000000000000 --- a/Misc/NEWS.d/next/C API/2018-10-13-16-30-54.bpo-34725.j52rIS.rst +++ /dev/null @@ -1 +0,0 @@ -Adds _Py_SetProgramFullPath so embedders may override sys.executable diff --git a/Misc/NEWS.d/next/C API/2018-11-01-13-58-37.bpo-35134.SbZo0o.rst b/Misc/NEWS.d/next/C API/2018-11-01-13-58-37.bpo-35134.SbZo0o.rst deleted file mode 100644 index c486a2951f9a..000000000000 --- a/Misc/NEWS.d/next/C API/2018-11-01-13-58-37.bpo-35134.SbZo0o.rst +++ /dev/null @@ -1 +0,0 @@ -Creation of a new ``Include/cpython/`` subdirectory. diff --git a/Misc/NEWS.d/next/C API/2018-11-13-12-13-04.bpo-35081.gFd85N.rst b/Misc/NEWS.d/next/C API/2018-11-13-12-13-04.bpo-35081.gFd85N.rst deleted file mode 100644 index 34aa74201285..000000000000 --- a/Misc/NEWS.d/next/C API/2018-11-13-12-13-04.bpo-35081.gFd85N.rst +++ /dev/null @@ -1,2 +0,0 @@ -The :c:func:`_PyObject_GC_TRACK` and :c:func:`_PyObject_GC_UNTRACK` macros -have been removed from the public C API. diff --git a/Misc/NEWS.d/next/C API/2018-11-22-13-52-36.bpo-35259.p07c61.rst b/Misc/NEWS.d/next/C API/2018-11-22-13-52-36.bpo-35259.p07c61.rst deleted file mode 100644 index 1f4801cbfb71..000000000000 --- a/Misc/NEWS.d/next/C API/2018-11-22-13-52-36.bpo-35259.p07c61.rst +++ /dev/null @@ -1,2 +0,0 @@ -Conditionally declare :c:func:`Py_FinalizeEx()` (new in 3.6) based on -Py_LIMITED_API. Patch by Arthur Neufeld. diff --git a/Misc/NEWS.d/next/C API/2018-11-22-18-15-46.bpo-35081.FdK9mV.rst b/Misc/NEWS.d/next/C API/2018-11-22-18-15-46.bpo-35081.FdK9mV.rst deleted file mode 100644 index d1de852b724f..000000000000 --- a/Misc/NEWS.d/next/C API/2018-11-22-18-15-46.bpo-35081.FdK9mV.rst +++ /dev/null @@ -1,2 +0,0 @@ -Internal APIs surrounded by ``#ifdef Py_BUILD_CORE`` have been moved from -``Include/*.h`` headers to new header files ``Include/internal/pycore_*.h``. diff --git a/Misc/NEWS.d/next/C API/2018-11-22-18-34-23.bpo-35296.nxrIQt.rst b/Misc/NEWS.d/next/C API/2018-11-22-18-34-23.bpo-35296.nxrIQt.rst deleted file mode 100644 index c5f877a4e323..000000000000 --- a/Misc/NEWS.d/next/C API/2018-11-22-18-34-23.bpo-35296.nxrIQt.rst +++ /dev/null @@ -1,2 +0,0 @@ -``make install`` now also installs the internal API: -``Include/internal/*.h`` header files. diff --git a/Misc/NEWS.d/next/C API/2018-11-23-11-52-34.bpo-35059.BLSp6y.rst b/Misc/NEWS.d/next/C API/2018-11-23-11-52-34.bpo-35059.BLSp6y.rst deleted file mode 100644 index 25120466f7be..000000000000 --- a/Misc/NEWS.d/next/C API/2018-11-23-11-52-34.bpo-35059.BLSp6y.rst +++ /dev/null @@ -1,3 +0,0 @@ -The following C macros have been converted to static inline functions: -:c:func:`Py_INCREF`, :c:func:`Py_DECREF`, :c:func:`Py_XINCREF`, -:c:func:`Py_XDECREF`, :c:func:`PyObject_INIT`, :c:func:`PyObject_INIT_VAR`. diff --git a/Misc/NEWS.d/next/C API/2018-11-28-03-20-36.bpo-35322.Qcqsag.rst b/Misc/NEWS.d/next/C API/2018-11-28-03-20-36.bpo-35322.Qcqsag.rst deleted file mode 100644 index f5b4796307f7..000000000000 --- a/Misc/NEWS.d/next/C API/2018-11-28-03-20-36.bpo-35322.Qcqsag.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix memory leak in :c:func:`PyUnicode_EncodeLocale` and -:c:func:`PyUnicode_EncodeFSDefault` on error handling. diff --git a/Misc/NEWS.d/next/C API/2019-01-11-11-16-16.bpo-33817.nJ4yIj.rst b/Misc/NEWS.d/next/C API/2019-01-11-11-16-16.bpo-33817.nJ4yIj.rst deleted file mode 100644 index ca4ccb26d361..000000000000 --- a/Misc/NEWS.d/next/C API/2019-01-11-11-16-16.bpo-33817.nJ4yIj.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed :c:func:`_PyBytes_Resize` for empty bytes objects. diff --git a/Misc/NEWS.d/next/C API/2019-01-22-17-04-10.bpo-35713.fmehdG.rst b/Misc/NEWS.d/next/C API/2019-01-22-17-04-10.bpo-35713.fmehdG.rst deleted file mode 100644 index f95ceca47fdf..000000000000 --- a/Misc/NEWS.d/next/C API/2019-01-22-17-04-10.bpo-35713.fmehdG.rst +++ /dev/null @@ -1,3 +0,0 @@ -The :c:func:`PyByteArray_Init` and :c:func:`PyByteArray_Fini` functions have -been removed. They did nothing since Python 2.7.4 and Python 3.2.0, were -excluded from the limited API (stable ABI), and were not documented. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-09-12-08-11-01.bpo-29832.Kuf2M7.rst b/Misc/NEWS.d/next/Core and Builtins/2017-09-12-08-11-01.bpo-29832.Kuf2M7.rst deleted file mode 100644 index 6cf6696a71f7..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-09-12-08-11-01.bpo-29832.Kuf2M7.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove references to 'getsockaddrarg' from various socket error messages. -Patch by Oren Milman. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-09-25-20-36-24.bpo-31577.jgYsSA.rst b/Misc/NEWS.d/next/Core and Builtins/2017-09-25-20-36-24.bpo-31577.jgYsSA.rst deleted file mode 100644 index 81428828af2a..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-09-25-20-36-24.bpo-31577.jgYsSA.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a crash in `os.utime()` in case of a bad ns argument. Patch by Oren -Milman. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-10-02-21-02-14.bpo-21983.UoC319.rst b/Misc/NEWS.d/next/Core and Builtins/2017-10-02-21-02-14.bpo-21983.UoC319.rst deleted file mode 100644 index 88a03685073c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-10-02-21-02-14.bpo-21983.UoC319.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a crash in `ctypes.cast()` in case the type argument is a ctypes -structured data type. Patch by Eryk Sun and Oren Milman. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-10-07-10-13-15.bpo-25862.FPYBA5.rst b/Misc/NEWS.d/next/Core and Builtins/2017-10-07-10-13-15.bpo-25862.FPYBA5.rst deleted file mode 100644 index 787163643ad8..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-10-07-10-13-15.bpo-25862.FPYBA5.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix assertion failures in the ``tell()`` method of ``io.TextIOWrapper``. -Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-10-30-12-44-50.bpo-31902.a07fa57.rst b/Misc/NEWS.d/next/Core and Builtins/2017-10-30-12-44-50.bpo-31902.a07fa57.rst deleted file mode 100644 index e2b04b3ae0f5..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-10-30-12-44-50.bpo-31902.a07fa57.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix the ``col_offset`` attribute for ast nodes ``ast.AsyncFor``, -``ast.AsyncFunctionDef``, and ``ast.AsyncWith``. Previously, ``col_offset`` -pointed to the keyword after ``async``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-11-22-15-43-14.bpo-32117.-vloh8.rst b/Misc/NEWS.d/next/Core and Builtins/2017-11-22-15-43-14.bpo-32117.-vloh8.rst deleted file mode 100644 index 8add90c5b70a..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-11-22-15-43-14.bpo-32117.-vloh8.rst +++ /dev/null @@ -1,3 +0,0 @@ -Iterable unpacking is now allowed without parentheses in yield and return -statements, e.g. ``yield 1, 2, 3, *rest``. Thanks to David Cuthbert for the -change and Jordan Chapman for added tests. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-11-26-00-59-22.bpo-10544.fHOM3V.rst b/Misc/NEWS.d/next/Core and Builtins/2017-11-26-00-59-22.bpo-10544.fHOM3V.rst deleted file mode 100644 index 404f12cbbb31..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-11-26-00-59-22.bpo-10544.fHOM3V.rst +++ /dev/null @@ -1,2 +0,0 @@ -Yield expressions are now disallowed in comprehensions and generator -expressions except the expression for the outermost iterable. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-12-12-13-43-13.bpo-32285.LzKSwz.rst b/Misc/NEWS.d/next/Core and Builtins/2017-12-12-13-43-13.bpo-32285.LzKSwz.rst deleted file mode 100644 index 87f84b02eb84..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-12-12-13-43-13.bpo-32285.LzKSwz.rst +++ /dev/null @@ -1,2 +0,0 @@ -New function unicodedata.is_normalized, which can check whether a string is -in a specific normal form. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-12-24-19-48-59.bpo-17611.P85kWL.rst b/Misc/NEWS.d/next/Core and Builtins/2017-12-24-19-48-59.bpo-17611.P85kWL.rst deleted file mode 100644 index 52949e6018af..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-12-24-19-48-59.bpo-17611.P85kWL.rst +++ /dev/null @@ -1,10 +0,0 @@ -Simplified the interpreter loop by moving the logic of unrolling the stack -of blocks into the compiler. The compiler emits now explicit instructions -for adjusting the stack of values and calling the cleaning up code for -:keyword:`break`, :keyword:`continue` and :keyword:`return`. - -Removed opcodes :opcode:`BREAK_LOOP`, :opcode:`CONTINUE_LOOP`, -:opcode:`SETUP_LOOP` and :opcode:`SETUP_EXCEPT`. Added new opcodes -:opcode:`ROT_FOUR`, :opcode:`BEGIN_FINALLY` and :opcode:`CALL_FINALLY` and -:opcode:`POP_FINALLY`. Changed the behavior of :opcode:`END_FINALLY` and -:opcode:`WITH_CLEANUP_START`. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-01-03-23-12-43.bpo-32489.SDEPHB.rst b/Misc/NEWS.d/next/Core and Builtins/2018-01-03-23-12-43.bpo-32489.SDEPHB.rst deleted file mode 100644 index 68babebdad3c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-01-03-23-12-43.bpo-32489.SDEPHB.rst +++ /dev/null @@ -1,2 +0,0 @@ -A :keyword:`continue` statement is now allowed in the :keyword:`finally` -clause. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-01-26-21-20-21.bpo-32583.Fh3fau.rst b/Misc/NEWS.d/next/Core and Builtins/2018-01-26-21-20-21.bpo-32583.Fh3fau.rst deleted file mode 100644 index 45f1d043f9d6..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-01-26-21-20-21.bpo-32583.Fh3fau.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix possible crashing in builtin Unicode decoders caused by write -out-of-bound errors when using customized decode error handlers. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-01-29-14-36-37.bpo-32711.8hQFJP.rst b/Misc/NEWS.d/next/Core and Builtins/2018-01-29-14-36-37.bpo-32711.8hQFJP.rst deleted file mode 100644 index 4d55b894ce10..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-01-29-14-36-37.bpo-32711.8hQFJP.rst +++ /dev/null @@ -1 +0,0 @@ -Fix the warning messages for Python/ast_unparse.c. Patch by St?phane Wirtel diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-16-28.bpo-32303.VsvhSl.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-16-28.bpo-32303.VsvhSl.rst deleted file mode 100644 index b84448fb25a1..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-16-28.bpo-32303.VsvhSl.rst +++ /dev/null @@ -1 +0,0 @@ -Make sure ``__spec__.loader`` matches ``__loader__`` for namespace packages. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-56-41.bpo-32305.dkU9Qa.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-56-41.bpo-32305.dkU9Qa.rst deleted file mode 100644 index 204d74a49754..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-56-41.bpo-32305.dkU9Qa.rst +++ /dev/null @@ -1,2 +0,0 @@ -For namespace packages, ensure that both ``__file__`` and -``__spec__.origin`` are set to None. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-02-08-50-46.bpo-31356.MNwUOQ.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-02-08-50-46.bpo-31356.MNwUOQ.rst deleted file mode 100644 index 5022a1370609..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-02-08-50-46.bpo-31356.MNwUOQ.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove the new API added in bpo-31356 (gc.ensure_disabled() context -manager). diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-14-12-35-47.bpo-32836.bThJnx.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-14-12-35-47.bpo-32836.bThJnx.rst deleted file mode 100644 index 4eeb9aa2e52c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-14-12-35-47.bpo-32836.bThJnx.rst +++ /dev/null @@ -1 +0,0 @@ -Don't use temporary variables in cases of list/dict/set comprehensions diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-20-21-53-48.bpo-32889.J6eWy5.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-20-21-53-48.bpo-32889.J6eWy5.rst deleted file mode 100644 index 99128ccc1826..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-20-21-53-48.bpo-32889.J6eWy5.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update Valgrind suppression list to account for the rename of -``Py_ADDRESS_IN_RANG`` to ``address_in_range``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-24-00-07-05.bpo-32925.e-7Ufh.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-24-00-07-05.bpo-32925.e-7Ufh.rst deleted file mode 100644 index e9443e69e2a2..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-24-00-07-05.bpo-32925.e-7Ufh.rst +++ /dev/null @@ -1,3 +0,0 @@ -Optimized iterating and containing test for literal lists consisting of -non-constants: ``x in [a, b]`` and ``for x in [a, b]``. The case of all -constant elements already was optimized. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-24-21-51-42.bpo-32932.2cz31L.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-24-21-51-42.bpo-32932.2cz31L.rst deleted file mode 100644 index 51e3d9b613d5..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-24-21-51-42.bpo-32932.2cz31L.rst +++ /dev/null @@ -1 +0,0 @@ -Make error message more revealing when there are non-str objects in ``__all__``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-25-10-52-40.bpo-32946.Lo09rG.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-25-10-52-40.bpo-32946.Lo09rG.rst deleted file mode 100644 index cb1d2a7fb13c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-25-10-52-40.bpo-32946.Lo09rG.rst +++ /dev/null @@ -1,2 +0,0 @@ -Importing names from already imported module with "from ... import ..." is -now 30% faster if the module is not a package. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-27-13-36-21.bpo-17288.Gdj24S.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-27-13-36-21.bpo-17288.Gdj24S.rst deleted file mode 100644 index ce9e84c40313..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-27-13-36-21.bpo-17288.Gdj24S.rst +++ /dev/null @@ -1 +0,0 @@ -Prevent jumps from 'return' and 'exception' trace events. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-27-20-57-00.bpo-32911.cmKfco.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-27-20-57-00.bpo-32911.cmKfco.rst deleted file mode 100644 index 0c2ae756b65c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-27-20-57-00.bpo-32911.cmKfco.rst +++ /dev/null @@ -1,5 +0,0 @@ -Due to unexpected compatibility issues discovered during downstream beta -testing, reverted :issue:`29463`. ``docstring`` field is removed from Module, -ClassDef, FunctionDef, and AsyncFunctionDef ast nodes which was added in -3.7a1. Docstring expression is restored as a first statement in their body. -Based on patch by Inada Naoki. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-06-12-19-19.bpo-33005.LP-V2U.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-06-12-19-19.bpo-33005.LP-V2U.rst deleted file mode 100644 index 6c8b99cbb897..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-06-12-19-19.bpo-33005.LP-V2U.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix a crash on fork when using a custom memory allocator (ex: using -PYTHONMALLOC env var). _PyGILState_Reinit() and _PyInterpreterState_Enable() -now use the default RAW memory allocator to allocate a new interpreters mutex -on fork. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-08-09-48-38.bpo-33026.QZA3Ba.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-08-09-48-38.bpo-33026.QZA3Ba.rst deleted file mode 100644 index dc166d1e5771..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-08-09-48-38.bpo-33026.QZA3Ba.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed jumping out of "with" block by setting f_lineno. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-10-15-16-40.bpo-33041.-ak5Fk.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-10-15-16-40.bpo-33041.-ak5Fk.rst deleted file mode 100644 index af9ccfd89f5d..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-10-15-16-40.bpo-33041.-ak5Fk.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed bytecode generation for "async for" with a complex target. A -StopAsyncIteration raised on assigning or unpacking will be now propagated -instead of stopping the iteration. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-14-21-42-17.bpo-25750.lxgkQz.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-14-21-42-17.bpo-25750.lxgkQz.rst deleted file mode 100644 index 09ffb368b7c6..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-14-21-42-17.bpo-25750.lxgkQz.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix rare Python crash due to bad refcounting in ``type_getattro()`` if a -descriptor deletes itself from the class. Patch by Jeroen Demeyer. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-18-13-56-14.bpo-33041.XwPhI2.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-18-13-56-14.bpo-33041.XwPhI2.rst deleted file mode 100644 index 34bf6c9b0f1c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-18-13-56-14.bpo-33041.XwPhI2.rst +++ /dev/null @@ -1,6 +0,0 @@ -Added new opcode :opcode:`END_ASYNC_FOR` and fixes the following issues: - -* Setting global :exc:`StopAsyncIteration` no longer breaks ``async for`` - loops. -* Jumping into an ``async for`` loop is now disabled. -* Jumping out of an ``async for`` loop no longer corrupts the stack. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-19-00-59-20.bpo-33083.Htztjl.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-19-00-59-20.bpo-33083.Htztjl.rst deleted file mode 100644 index 81df83989e48..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-19-00-59-20.bpo-33083.Htztjl.rst +++ /dev/null @@ -1,2 +0,0 @@ -``math.factorial`` no longer accepts arguments that are not int-like. -Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-22-23-09-06.bpo-33018.0ncEJV.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-22-23-09-06.bpo-33018.0ncEJV.rst deleted file mode 100644 index e799e9834aa1..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-22-23-09-06.bpo-33018.0ncEJV.rst +++ /dev/null @@ -1,3 +0,0 @@ -Improve consistency of errors raised by ``issubclass()`` when called with a -non-class and an abstract base class as the first and second arguments, -respectively. Patch by Josh Bronson. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-25-14.bpo-33138.aSqudH.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-25-14.bpo-33138.aSqudH.rst deleted file mode 100644 index 6f445261843f..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-25-14.bpo-33138.aSqudH.rst +++ /dev/null @@ -1,2 +0,0 @@ -Changed standard error message for non-pickleable and non-copyable types. It -now says "cannot pickle" instead of "can't pickle" or "cannot serialize". diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-49-06.bpo-33053.V3xlsH.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-49-06.bpo-33053.V3xlsH.rst deleted file mode 100644 index fd32ac150e4c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-49-06.bpo-33053.V3xlsH.rst +++ /dev/null @@ -1,4 +0,0 @@ -When using the -m switch, sys.path[0] is now explicitly expanded as the -*starting* working directory, rather than being left as the empty path -(which allows imports from the current working directory at the time of the -import) diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-02-09-32-40.bpo-33199.TPnxQu.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-02-09-32-40.bpo-33199.TPnxQu.rst deleted file mode 100644 index 22abf8d00011..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-02-09-32-40.bpo-33199.TPnxQu.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``ma_version_tag`` in dict implementation is uninitialized when copying -from key-sharing dict. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-30-25.bpo-29922.CdLuMl.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-30-25.bpo-29922.CdLuMl.rst deleted file mode 100644 index d8c144e59d6c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-30-25.bpo-29922.CdLuMl.rst +++ /dev/null @@ -1,2 +0,0 @@ -Improved error messages in 'async with' when ``__aenter__()`` or -``__aexit__()`` return non-awaitable object. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-58-41.bpo-33205.lk2F3r.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-58-41.bpo-33205.lk2F3r.rst deleted file mode 100644 index 44511865abfa..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-58-41.bpo-33205.lk2F3r.rst +++ /dev/null @@ -1,3 +0,0 @@ -Change dict growth function from ``round_up_to_power_2(used*2+hashtable_size/2)`` to -``round_up_to_power_2(used*3)``. Previously, dict is shrinked only when ``used == 0``. -Now dict has more chance to be shrinked. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-05-22-20-44.bpo-33231.3Jmo0q.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-05-22-20-44.bpo-33231.3Jmo0q.rst deleted file mode 100644 index de54fbb52671..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-05-22-20-44.bpo-33231.3Jmo0q.rst +++ /dev/null @@ -1 +0,0 @@ -Fix potential memory leak in ``normalizestring()``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-13-22-31-09.bpo-33176.PB9com.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-13-22-31-09.bpo-33176.PB9com.rst deleted file mode 100644 index 68785b3cb6a1..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-13-22-31-09.bpo-33176.PB9com.rst +++ /dev/null @@ -1 +0,0 @@ -Add a ``toreadonly()`` method to memoryviews. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-14-11-02-57.bpo-30455.ANRwjo.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-14-11-02-57.bpo-30455.ANRwjo.rst deleted file mode 100644 index 21182525a2df..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-14-11-02-57.bpo-30455.ANRwjo.rst +++ /dev/null @@ -1,2 +0,0 @@ -The C and Python code and the documentation related to tokens are now generated -from a single source file :file:`Grammar/Tokens`. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-14-13-12-50.bpo-33270.UmVV6i.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-14-13-12-50.bpo-33270.UmVV6i.rst deleted file mode 100644 index 4dbc4a3062b0..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-14-13-12-50.bpo-33270.UmVV6i.rst +++ /dev/null @@ -1 +0,0 @@ -Intern the names for all anonymous code objects. Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-17-01-24-51.bpo-33234.l9IDtp.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-17-01-24-51.bpo-33234.l9IDtp.rst deleted file mode 100644 index 2f9cd62e8e01..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-17-01-24-51.bpo-33234.l9IDtp.rst +++ /dev/null @@ -1,2 +0,0 @@ -The list constructor will pre-size and not over-allocate when -the input lenght is known. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-18-12-23-30.bpo-33306.tSM3cp.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-18-12-23-30.bpo-33306.tSM3cp.rst deleted file mode 100644 index 2d891062607c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-18-12-23-30.bpo-33306.tSM3cp.rst +++ /dev/null @@ -1 +0,0 @@ -Improved syntax error messages for unbalanced parentheses. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-18-14-17-44.bpo-33305.9z3dDH.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-18-14-17-44.bpo-33305.9z3dDH.rst deleted file mode 100644 index cae2f7f85950..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-18-14-17-44.bpo-33305.9z3dDH.rst +++ /dev/null @@ -1 +0,0 @@ -Improved syntax error messages for invalid numerical literals. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-19-08-30-07.bpo-33312.mDe2iL.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-19-08-30-07.bpo-33312.mDe2iL.rst deleted file mode 100644 index 40b51b902c9f..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-19-08-30-07.bpo-33312.mDe2iL.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed clang ubsan (undefined behavior sanitizer) warnings in dictobject.c by -adjusting how the internal struct _dictkeysobject shared keys structure is -declared. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-22-13-41-59.bpo-33331.s_DxdL.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-22-13-41-59.bpo-33331.s_DxdL.rst deleted file mode 100644 index 95311a61e058..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-22-13-41-59.bpo-33331.s_DxdL.rst +++ /dev/null @@ -1 +0,0 @@ -Modules imported last are now cleared first at interpreter shutdown. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-24-22-31-04.bpo-33128.g2yLuf.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-24-22-31-04.bpo-33128.g2yLuf.rst deleted file mode 100644 index 66b98cdf51cf..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-24-22-31-04.bpo-33128.g2yLuf.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a bug that causes PathFinder to appear twice on sys.meta_path. Patch by -Pablo Galindo Salgado. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-25-20-44-42.bpo-28055.f49kfC.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-25-20-44-42.bpo-28055.f49kfC.rst deleted file mode 100644 index c7d849906fc9..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-25-20-44-42.bpo-28055.f49kfC.rst +++ /dev/null @@ -1 +0,0 @@ -Fix unaligned accesses in siphash24(). Patch by Rolf Eike Beer. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-26-22-48-28.bpo-33363.8RCnN2.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-26-22-48-28.bpo-33363.8RCnN2.rst deleted file mode 100644 index ad8d24895343..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-26-22-48-28.bpo-33363.8RCnN2.rst +++ /dev/null @@ -1,2 +0,0 @@ -Raise a SyntaxError for ``async with`` and ``async for`` statements outside -of async functions. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-02-08-36-03.bpo-33391.z4a7rb.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-02-08-36-03.bpo-33391.z4a7rb.rst deleted file mode 100644 index ab17aa408c06..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-02-08-36-03.bpo-33391.z4a7rb.rst +++ /dev/null @@ -1 +0,0 @@ -Fix a leak in set_symmetric_difference(). diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-05-23-26-58.bpo-20104.tDBciE.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-05-23-26-58.bpo-20104.tDBciE.rst deleted file mode 100644 index 1d725ba7eb71..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-05-23-26-58.bpo-20104.tDBciE.rst +++ /dev/null @@ -1,2 +0,0 @@ -Added support for the `setpgroup`, `resetids`, `setsigmask`, `setsigdef` and -`scheduler` parameters of `posix_spawn`. Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-13-01-26-18.bpo-33475.rI0y1U.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-13-01-26-18.bpo-33475.rI0y1U.rst deleted file mode 100644 index cd714b9d1e89..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-13-01-26-18.bpo-33475.rI0y1U.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed miscellaneous bugs in converting annotations to strings and optimized -parentheses in the string representation. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-14-11-00-00.bpo-31849.EmHaH4.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-14-11-00-00.bpo-31849.EmHaH4.rst deleted file mode 100644 index 876a3cf0aa13..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-14-11-00-00.bpo-31849.EmHaH4.rst +++ /dev/null @@ -1 +0,0 @@ -Fix signed/unsigned comparison warning in pyhash.c. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-14-17-31-02.bpo-33509.pIUfTd.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-14-17-31-02.bpo-33509.pIUfTd.rst deleted file mode 100644 index 3d80a8c7f3eb..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-14-17-31-02.bpo-33509.pIUfTd.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix module_globals parameter of warnings.warn_explicit(): don't crash if -module_globals is not a dict. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-14-18-54-03.bpo-25711.9xfq-v.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-14-18-54-03.bpo-25711.9xfq-v.rst deleted file mode 100644 index 07f9e722baf5..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-14-18-54-03.bpo-25711.9xfq-v.rst +++ /dev/null @@ -1 +0,0 @@ -The :mod:`zipimport` module has been rewritten in pure Python. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-15-10-48-47.bpo-33499.uBEc06.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-15-10-48-47.bpo-33499.uBEc06.rst deleted file mode 100644 index f25a8d099aac..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-15-10-48-47.bpo-33499.uBEc06.rst +++ /dev/null @@ -1,3 +0,0 @@ -Add :envvar:`PYTHONPYCACHEPREFIX` environment variable and :option:`-X` -``pycache_prefix`` command-line option to set an alternate root directory for -writing module bytecode cache files. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-17-13-06-36.bpo-23722.xisqZk.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-17-13-06-36.bpo-23722.xisqZk.rst deleted file mode 100644 index dfd1e79786ab..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-17-13-06-36.bpo-23722.xisqZk.rst +++ /dev/null @@ -1,4 +0,0 @@ -A :exc:`RuntimeError` is now raised when the custom metaclass doesn't -provide the ``__classcell__`` entry in the namespace passed to -``type.__new__``. A :exc:`DeprecationWarning` was emitted in Python -3.6--3.7. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-23-17-18-02.bpo-33462.gurbpbrhe.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-23-17-18-02.bpo-33462.gurbpbrhe.rst deleted file mode 100644 index ed1f0342731e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-23-17-18-02.bpo-33462.gurbpbrhe.rst +++ /dev/null @@ -1 +0,0 @@ -Make dict and dict views reversible. Patch by R?mi Lapeyre. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-23-20-46-14.bpo-33622.xPucO9.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-23-20-46-14.bpo-33622.xPucO9.rst deleted file mode 100644 index e589b4503229..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-23-20-46-14.bpo-33622.xPucO9.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fixed a leak when the garbage collector fails to add an object with the -``__del__`` method or referenced by it into the :data:`gc.garbage` list. -:c:func:`PyGC_Collect` can now be called when an exception is set and -preserves it. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-28-12-28-53.bpo-30654.9fDJye.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-28-12-28-53.bpo-30654.9fDJye.rst deleted file mode 100644 index 01c27daa8f88..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-28-12-28-53.bpo-30654.9fDJye.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed reset of the SIGINT handler to SIG_DFL on interpreter shutdown even -when there was a custom handler set previously. Patch by Philipp Kerling. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-28-21-17-31.bpo-33597.r0ToM4.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-28-21-17-31.bpo-33597.r0ToM4.rst deleted file mode 100644 index b6baab2526ad..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-28-21-17-31.bpo-33597.r0ToM4.rst +++ /dev/null @@ -1 +0,0 @@ -Reduce ``PyGC_Head`` size from 3 words to 2 words. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-31-14-50-04.bpo-33706.ztlH04.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-31-14-50-04.bpo-33706.ztlH04.rst deleted file mode 100644 index d3b8477b2197..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-31-14-50-04.bpo-33706.ztlH04.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a crash in Python initialization when parsing the command line options. -Thanks Christoph Gohlke for the bug report and the fix! diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-05-15-49-02.bpo-30167.e956hA.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-05-15-49-02.bpo-30167.e956hA.rst deleted file mode 100644 index 41bdec899b75..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-05-15-49-02.bpo-30167.e956hA.rst +++ /dev/null @@ -1,2 +0,0 @@ -``PyRun_SimpleFileExFlags`` removes ``__cached__`` from module in addition -to ``__file__``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-06-23-24-40.bpo-33786.lBvT8z.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-06-23-24-40.bpo-33786.lBvT8z.rst deleted file mode 100644 index 57deefe339b5..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-06-23-24-40.bpo-33786.lBvT8z.rst +++ /dev/null @@ -1 +0,0 @@ -Fix asynchronous generators to handle GeneratorExit in athrow() correctly diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-07-18-34-19.bpo-33738.ODZS7a.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-07-18-34-19.bpo-33738.ODZS7a.rst deleted file mode 100644 index 2e0c43c62256..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-07-18-34-19.bpo-33738.ODZS7a.rst +++ /dev/null @@ -1,4 +0,0 @@ -Seven macro incompatibilities with the Limited API were fixed, and the -macros :c:func:`PyIter_Check`, :c:func:`PyIndex_Check` and -:c:func:`PyExceptionClass_Name` were added as functions. -A script for automatic macro checks was added. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-07-20-18-38.bpo-33803.n-Nq6_.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-07-20-18-38.bpo-33803.n-Nq6_.rst deleted file mode 100644 index 9cb8457ac446..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-07-20-18-38.bpo-33803.n-Nq6_.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a crash in hamt.c caused by enabling GC tracking for an object that -hadn't all of its fields set to NULL. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-15-19-39-06.bpo-33824.DfWHT3.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-15-19-39-06.bpo-33824.DfWHT3.rst deleted file mode 100644 index fda2ea7423dd..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-15-19-39-06.bpo-33824.DfWHT3.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix "LC_ALL=C python3.7 -V": reset properly the command line parser when the -encoding changes after reading the Python configuration. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-21-21-42-15.bpo-1617161.tSo2yM.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-21-21-42-15.bpo-1617161.tSo2yM.rst deleted file mode 100644 index bd19944075c1..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-21-21-42-15.bpo-1617161.tSo2yM.rst +++ /dev/null @@ -1,7 +0,0 @@ -The hash of :class:`BuiltinMethodType` instances (methods of built-in classes) -now depends on the hash of the identity of *__self__* instead of its value. -The hash and equality of :class:`ModuleType` and :class:`MethodWrapperType` -instances (methods of user-defined classes and some methods of built-in classes -like ``str.__add__``) now depend on the hash and equality of the identity -of *__self__* instead of its value. :class:`MethodWrapperType` instances no -longer support ordering. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-23-15-32-02.bpo-33451.sWN-1l.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-23-15-32-02.bpo-33451.sWN-1l.rst deleted file mode 100644 index 202fb38a370c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-23-15-32-02.bpo-33451.sWN-1l.rst +++ /dev/null @@ -1 +0,0 @@ -Close directly executed pyc files before calling ``PyEval_EvalCode()``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-25-16-54-05.bpo-24596.Rkwova.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-25-16-54-05.bpo-24596.Rkwova.rst deleted file mode 100644 index 1b33fd4a44d7..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-25-16-54-05.bpo-24596.Rkwova.rst +++ /dev/null @@ -1,2 +0,0 @@ -Decref the module object in :c:func:`PyRun_SimpleFileExFlags` before calling -:c:func:`PyErr_Print()`. Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-25-20-42-44.bpo-33956.1qoTwD.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-25-20-42-44.bpo-33956.1qoTwD.rst deleted file mode 100644 index f8140e1959ff..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-25-20-42-44.bpo-33956.1qoTwD.rst +++ /dev/null @@ -1 +0,0 @@ -Update vendored Expat library copy to version 2.2.5. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-27-18-56-41.bpo-33985.ILJ3Af.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-27-18-56-41.bpo-33985.ILJ3Af.rst deleted file mode 100644 index 07c8f9078686..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-27-18-56-41.bpo-33985.ILJ3Af.rst +++ /dev/null @@ -1 +0,0 @@ -Implement contextvars.ContextVar.name attribute. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-03-19-00-10.bpo-33418.cfGm3n.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-03-19-00-10.bpo-33418.cfGm3n.rst deleted file mode 100644 index 8f136c6a35c1..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-03-19-00-10.bpo-33418.cfGm3n.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix potential memory leak in function object when it creates reference -cycle. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-05-15-51-29.bpo-34042.Gr9XUH.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-05-15-51-29.bpo-34042.Gr9XUH.rst deleted file mode 100644 index fd1730d4308b..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-05-15-51-29.bpo-34042.Gr9XUH.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix dict.copy() to maintain correct total refcount (as reported by -sys.gettotalrefcount()). diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-07-20-15-34.bpo-34066.y9vs6s.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-07-20-15-34.bpo-34066.y9vs6s.rst deleted file mode 100644 index b12afad8da87..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-07-20-15-34.bpo-34066.y9vs6s.rst +++ /dev/null @@ -1,2 +0,0 @@ -Disabled interruption by Ctrl-C between calling ``open()`` and entering a -**with** block in ``with open()``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-10-11-24-16.bpo-34080.8t7PtO.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-10-11-24-16.bpo-34080.8t7PtO.rst deleted file mode 100644 index cfc53cca4879..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-10-11-24-16.bpo-34080.8t7PtO.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed a memory leak in the compiler when it raised some uncommon errors -during tokenizing. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-13-22-09-55.bpo-34087.I1Bxfc.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-13-22-09-55.bpo-34087.I1Bxfc.rst deleted file mode 100644 index 5147395fa217..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-13-22-09-55.bpo-34087.I1Bxfc.rst +++ /dev/null @@ -1 +0,0 @@ -Fix buffer overflow while converting unicode to numeric values. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-14-08-58-46.bpo-34068.9xfM55.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-14-08-58-46.bpo-34068.9xfM55.rst deleted file mode 100644 index 0ed8ff91925a..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-14-08-58-46.bpo-34068.9xfM55.rst +++ /dev/null @@ -1,3 +0,0 @@ -In :meth:`io.IOBase.close`, ensure that the :attr:`~io.IOBase.closed` -attribute is not set with a live exception. Patch by Zackery Spytz and Serhiy -Storchaka. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-14-14-01-37.bpo-24618.iTKjD_.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-14-14-01-37.bpo-24618.iTKjD_.rst deleted file mode 100644 index 180b56501211..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-14-14-01-37.bpo-24618.iTKjD_.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed reading invalid memory when create the code object with too small -varnames tuple or too large argument counts. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-16-20-55-29.bpo-34126.mBVmgc.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-16-20-55-29.bpo-34126.mBVmgc.rst deleted file mode 100644 index 7cfc439cf887..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-16-20-55-29.bpo-34126.mBVmgc.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix crashes when profiling certain invalid calls of unbound methods. -Patch by Jeroen Demeyer. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-18-08-36-58.bpo-34141.Fo7Q5r.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-18-08-36-58.bpo-34141.Fo7Q5r.rst deleted file mode 100644 index 328b10929be0..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-18-08-36-58.bpo-34141.Fo7Q5r.rst +++ /dev/null @@ -1 +0,0 @@ -Optimized pickling atomic types (None, bool, int, float, bytes, str). diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-23-16-34-03.bpo-34125.jCl2Q2.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-23-16-34-03.bpo-34125.jCl2Q2.rst deleted file mode 100644 index e6036b4d41e5..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-23-16-34-03.bpo-34125.jCl2Q2.rst +++ /dev/null @@ -1 +0,0 @@ -Profiling of unbound built-in methods now works when ``**kwargs`` is given. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-23-21-49-05.bpo-34149.WSV-_g.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-23-21-49-05.bpo-34149.WSV-_g.rst deleted file mode 100644 index 9672bcf8eb33..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-23-21-49-05.bpo-34149.WSV-_g.rst +++ /dev/null @@ -1 +0,0 @@ -Fix min and max functions to get default behavior when key is None. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-24-12-54-57.bpo-33237.O95mps.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-24-12-54-57.bpo-33237.O95mps.rst deleted file mode 100644 index 04bd86c3dd6a..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-24-12-54-57.bpo-33237.O95mps.rst +++ /dev/null @@ -1 +0,0 @@ -Improved :exc:`AttributeError` message for partially initialized module. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-25-19-23-33.bpo-34170.v1h_H2.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-25-19-23-33.bpo-34170.v1h_H2.rst deleted file mode 100644 index 3eae9039bdc1..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-25-19-23-33.bpo-34170.v1h_H2.rst +++ /dev/null @@ -1,2 +0,0 @@ --X dev: it is now possible to override the memory allocator using -PYTHONMALLOC even if the developer mode is enabled. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-25-20-26-02.bpo-34151.Q2pK9Q.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-25-20-26-02.bpo-34151.Q2pK9Q.rst deleted file mode 100644 index 4f6308e78845..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-25-20-26-02.bpo-34151.Q2pK9Q.rst +++ /dev/null @@ -1,2 +0,0 @@ -Performance of list concatenation, repetition and slicing operations is -slightly improved. Patch by Sergey Fedoseev. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-27-20-04-52.bpo-34100.ypJQX1.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-27-20-04-52.bpo-34100.ypJQX1.rst deleted file mode 100644 index dae318ded493..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-27-20-04-52.bpo-34100.ypJQX1.rst +++ /dev/null @@ -1,2 +0,0 @@ -Compiler now merges constants in tuples and frozensets recursively. Code -attributes like ``co_names`` are merged too. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-28-10-34-00.bpo-34113.eZ5FWV.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-28-10-34-00.bpo-34113.eZ5FWV.rst deleted file mode 100644 index f4c80f9b8a97..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-28-10-34-00.bpo-34113.eZ5FWV.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed crash on debug builds when opcode stack was adjusted with negative -numbers. Patch by Constantin Petrisor. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-02-22-34-59.bpo-34320.hNshAA.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-02-22-34-59.bpo-34320.hNshAA.rst deleted file mode 100644 index ce5b3397e65f..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-02-22-34-59.bpo-34320.hNshAA.rst +++ /dev/null @@ -1 +0,0 @@ -Fix ``dict(od)`` didn't copy iteration order of OrderedDict. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-09-18-42-49.bpo-34353.GIOm_8.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-09-18-42-49.bpo-34353.GIOm_8.rst deleted file mode 100644 index 679914120a43..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-09-18-42-49.bpo-34353.GIOm_8.rst +++ /dev/null @@ -1,2 +0,0 @@ -Added the "socket" option in the `stat.filemode()` Python implementation to -match the C implementation. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-10-15-05-00.bpo-34377.EJMMY4.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-10-15-05-00.bpo-34377.EJMMY4.rst deleted file mode 100644 index 382a799b0bda..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-10-15-05-00.bpo-34377.EJMMY4.rst +++ /dev/null @@ -1,3 +0,0 @@ -Update valgrind suppression list to use -``_PyObject_Free``/``_PyObject_Realloc`` -instead of ``PyObject_Free``/``PyObject_Realloc``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-12-16-03-58.bpo-33073.XWu1Jh.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-12-16-03-58.bpo-33073.XWu1Jh.rst deleted file mode 100644 index ce9b6129f96e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-12-16-03-58.bpo-33073.XWu1Jh.rst +++ /dev/null @@ -1 +0,0 @@ -Added as_integer_ratio to ints to make them more interoperable with floats. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-14-03-52-43.bpo-34400.AJD0bz.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-14-03-52-43.bpo-34400.AJD0bz.rst deleted file mode 100644 index 768f5a26c1a6..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-14-03-52-43.bpo-34400.AJD0bz.rst +++ /dev/null @@ -1 +0,0 @@ -Fix undefined behavior in parsetok.c. Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-14-22-35-19.bpo-34408.aomWYW.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-14-22-35-19.bpo-34408.aomWYW.rst deleted file mode 100644 index aacafd0d4c27..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-14-22-35-19.bpo-34408.aomWYW.rst +++ /dev/null @@ -1 +0,0 @@ -Prevent a null pointer dereference and resource leakage in ``PyInterpreterState_New()``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-15-20-46-49.bpo-12458.ApHbx5.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-15-20-46-49.bpo-12458.ApHbx5.rst deleted file mode 100644 index 7479654fad7a..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-15-20-46-49.bpo-12458.ApHbx5.rst +++ /dev/null @@ -1,3 +0,0 @@ -Tracebacks show now correct line number for subexpressions in multiline -expressions. Tracebacks show now the line number of the first line for -multiline expressions instead of the line number of the last subexpression. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-01-45-01.bpo-34523.aUUkc3.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-28-01-45-01.bpo-34523.aUUkc3.rst deleted file mode 100644 index 333939d821d0..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-01-45-01.bpo-34523.aUUkc3.rst +++ /dev/null @@ -1,2 +0,0 @@ -The Python filesystem encoding is now read earlier during the Python -initialization. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-10-49-55.bpo-34403.4Q3LzP.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-28-10-49-55.bpo-34403.4Q3LzP.rst deleted file mode 100644 index d70be82b0ab4..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-10-49-55.bpo-34403.4Q3LzP.rst +++ /dev/null @@ -1,3 +0,0 @@ -On HP-UX with C or POSIX locale, sys.getfilesystemencoding() now returns -"ascii" instead of "roman8" (when the UTF-8 Mode is disabled and the C locale -is not coerced). diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-52-13.bpo-34527.sh5MQJ.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-52-13.bpo-34527.sh5MQJ.rst deleted file mode 100644 index 280a8922edc3..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-52-13.bpo-34527.sh5MQJ.rst +++ /dev/null @@ -1,2 +0,0 @@ -The UTF-8 Mode is now also enabled by the "POSIX" locale, not only by the "C" -locale. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-53-39.bpo-34527.aBEX9b.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-53-39.bpo-34527.aBEX9b.rst deleted file mode 100644 index 9fce794305cc..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-53-39.bpo-34527.aBEX9b.rst +++ /dev/null @@ -1,3 +0,0 @@ -On FreeBSD, Py_DecodeLocale() and Py_EncodeLocale() now also forces the -ASCII encoding if the LC_CTYPE locale is "POSIX", not only if the LC_CTYPE -locale is "C". diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-17-48-40.bpo-34485.aFwck2.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-28-17-48-40.bpo-34485.aFwck2.rst deleted file mode 100644 index f6cd9515f2af..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-17-48-40.bpo-34485.aFwck2.rst +++ /dev/null @@ -1,5 +0,0 @@ -Python now gets the locale encoding with C code to initialize the encoding -of standard streams like sys.stdout. Moreover, the encoding is now -initialized to the Python codec name to get a normalized encoding name and -to ensure that the codec is loaded. The change avoids importing _bootlocale -and _locale modules at startup by default. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-23-01-14.bpo-34485.dq1Kqk.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-28-23-01-14.bpo-34485.dq1Kqk.rst deleted file mode 100644 index 5ca373aeab6d..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-23-01-14.bpo-34485.dq1Kqk.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix the error handler of standard streams like sys.stdout: -PYTHONIOENCODING=":" is now ignored instead of setting the error handler to -"strict". diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-29-09-27-47.bpo-34485.5aJCmw.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-29-09-27-47.bpo-34485.5aJCmw.rst deleted file mode 100644 index 893e4f573f16..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-29-09-27-47.bpo-34485.5aJCmw.rst +++ /dev/null @@ -1,3 +0,0 @@ -Standard streams like sys.stdout now use the "surrogateescape" error -handler, instead of "strict", on the POSIX locale (when the C locale is not -coerced and the UTF-8 Mode is disabled). diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-29-11-04-19.bpo-34485.c2AFdp.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-29-11-04-19.bpo-34485.c2AFdp.rst deleted file mode 100644 index f66a4f26f593..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-29-11-04-19.bpo-34485.c2AFdp.rst +++ /dev/null @@ -1,3 +0,0 @@ -On Windows, the LC_CTYPE is now set to the user preferred locale at startup. -Previously, the LC_CTYPE locale was "C" at startup, but changed when calling -setlocale(LC_CTYPE, "") or setlocale(LC_ALL, ""). diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-05-22-56-52.bpo-34588.UIuPmL.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-05-22-56-52.bpo-34588.UIuPmL.rst deleted file mode 100644 index ec7a57f23ad2..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-05-22-56-52.bpo-34588.UIuPmL.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix an off-by-one in the recursive call pruning feature of traceback -formatting. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-15-19-37.bpo-1621.7o19yG.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-11-15-19-37.bpo-1621.7o19yG.rst deleted file mode 100644 index 4047ff3bfe86..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-15-19-37.bpo-1621.7o19yG.rst +++ /dev/null @@ -1,2 +0,0 @@ -Do not assume signed integer overflow behavior (C undefined behavior) when -performing set hash table resizing. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-17-25-44.bpo-34637.HSLqY4.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-11-17-25-44.bpo-34637.HSLqY4.rst deleted file mode 100644 index c22359cc3780..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-17-25-44.bpo-34637.HSLqY4.rst +++ /dev/null @@ -1 +0,0 @@ -Make the *start* argument to *sum()* visible as a keyword argument. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-12-33.bpo-34641.gFBCc9.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-12-33.bpo-34641.gFBCc9.rst deleted file mode 100644 index 9b6eb24c138c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-12-33.bpo-34641.gFBCc9.rst +++ /dev/null @@ -1,2 +0,0 @@ -Further restrict the syntax of the left-hand side of keyword arguments in -function calls. In particular, ``f((keyword)=arg)`` is now disallowed. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-50-40.bpo-32236.3RupnN.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-50-40.bpo-32236.3RupnN.rst deleted file mode 100644 index 6fc138708c4d..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-50-40.bpo-32236.3RupnN.rst +++ /dev/null @@ -1,2 +0,0 @@ -Warn that line buffering is not supported if :func:`open` is called with -binary mode and ``buffering=1``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-06-09.bpo-34653.z8NE-i.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-06-09.bpo-34653.z8NE-i.rst deleted file mode 100644 index 30193742a320..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-06-09.bpo-34653.z8NE-i.rst +++ /dev/null @@ -1 +0,0 @@ -Remove unused function PyParser_SimpleParseStringFilename. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-21-08.bpo-34651.v-bUeV.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-21-08.bpo-34651.v-bUeV.rst deleted file mode 100644 index 6f71bc30eb6f..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-21-08.bpo-34651.v-bUeV.rst +++ /dev/null @@ -1,3 +0,0 @@ -Only allow the main interpreter to fork. The avoids the possibility of -affecting the main interpreter, which is critical to operation of the -runtime. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-15-19-32-34.bpo-34683.msCiQE.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-15-19-32-34.bpo-34683.msCiQE.rst deleted file mode 100644 index 43bf61c5b86b..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-15-19-32-34.bpo-34683.msCiQE.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed a bug where some SyntaxError error pointed to locations that were off-by-one. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-19-06-57-34.bpo-34735.-3mrSJ.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-19-06-57-34.bpo-34735.-3mrSJ.rst deleted file mode 100644 index 8de08ec38637..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-19-06-57-34.bpo-34735.-3mrSJ.rst +++ /dev/null @@ -1 +0,0 @@ -Fix a memory leak in Modules/timemodule.c. Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-20-15-41-58.bpo-34751.Yiv0pV.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-20-15-41-58.bpo-34751.Yiv0pV.rst deleted file mode 100644 index b2ba5144fe52..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-20-15-41-58.bpo-34751.Yiv0pV.rst +++ /dev/null @@ -1,4 +0,0 @@ -The hash function for tuples is now based on xxHash -which gives better collision results on (formerly) pathological cases. -Additionally, on 64-bit systems it improves tuple hashes in general. -Patch by Jeroen Demeyer with substantial contributions by Tim Peters. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-21-11-06-56.bpo-34762.1nN53m.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-21-11-06-56.bpo-34762.1nN53m.rst deleted file mode 100644 index 0cd47a40dd35..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-21-11-06-56.bpo-34762.1nN53m.rst +++ /dev/null @@ -1 +0,0 @@ -Fix contextvars C API to use PyObject* pointer types. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-24-17-51-15.bpo-30156.pH0j5j.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-24-17-51-15.bpo-30156.pH0j5j.rst deleted file mode 100644 index 7086ff4e2d99..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-24-17-51-15.bpo-30156.pH0j5j.rst +++ /dev/null @@ -1,4 +0,0 @@ -The C function ``property_descr_get()`` uses a "cached" tuple to optimize -function calls. But this tuple can be discovered in debug mode with -:func:`sys.getobjects()`. Remove the optimization, it's not really worth it -and it causes 3 different crashes last years. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-27-11-10-02.bpo-34824.VLlCaU.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-27-11-10-02.bpo-34824.VLlCaU.rst deleted file mode 100644 index fe95b8973c09..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-27-11-10-02.bpo-34824.VLlCaU.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a possible null pointer dereference in Modules/_ssl.c. Patch by Zackery -Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-30-11-19-55.bpo-34850.CbgDwb.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-30-11-19-55.bpo-34850.CbgDwb.rst deleted file mode 100644 index bc5d5d1d5808..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-30-11-19-55.bpo-34850.CbgDwb.rst +++ /dev/null @@ -1,5 +0,0 @@ -The compiler now produces a :exc:`SyntaxWarning` when identity checks -(``is`` and ``is not``) are used with certain types of literals -(e.g. strings, ints). These can often work by accident in CPython, -but are not guaranteed by the language spec. The warning advises users -to use equality tests (``==`` and ``!=``) instead. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-30-19-27-13.bpo-34854.6TKTcB.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-30-19-27-13.bpo-34854.6TKTcB.rst deleted file mode 100644 index 4e04e1f157cd..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-30-19-27-13.bpo-34854.6TKTcB.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed a crash in compiling string annotations containing a lambda with a -keyword-only argument that doesn't have a default value. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-01-10-41-53.bpo-32912.JeIOdM.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-01-10-41-53.bpo-32912.JeIOdM.rst deleted file mode 100644 index 9cb35998a2b5..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-01-10-41-53.bpo-32912.JeIOdM.rst +++ /dev/null @@ -1,2 +0,0 @@ -A :exc:`SyntaxWarning` is now emitted instead of a :exc:`DeprecationWarning` -for invalid escape sequences in string and bytes literals. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-02-09-10-47.bpo-34784.07hdgD.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-02-09-10-47.bpo-34784.07hdgD.rst deleted file mode 100644 index 296fc149339b..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-02-09-10-47.bpo-34784.07hdgD.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix the implementation of PyStructSequence_NewType in order to create heap -allocated StructSequences. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-02-22-55-11.bpo-34879.7VNH2a.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-02-22-55-11.bpo-34879.7VNH2a.rst deleted file mode 100644 index 5775a219a273..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-02-22-55-11.bpo-34879.7VNH2a.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a possible null pointer dereference in bytesobject.c. Patch by Zackery -Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-06-14-02-51.bpo-34876.oBKBA4.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-06-14-02-51.bpo-34876.oBKBA4.rst deleted file mode 100644 index 4275c029f3f4..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-06-14-02-51.bpo-34876.oBKBA4.rst +++ /dev/null @@ -1,6 +0,0 @@ -The *lineno* and *col_offset* attributes of the AST for decorated function -and class refer now to the position of the corresponding ``def``, ``async -def`` and ``class`` instead of the position of the first decorator. This -leads to more correct line reporting in tracing. This is the only case when -the position of child AST nodes can preceed the position of the parent AST -node. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-13-16-42-03.bpo-34973.B5M-3g.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-13-16-42-03.bpo-34973.B5M-3g.rst deleted file mode 100644 index 6e403cd4cec6..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-13-16-42-03.bpo-34973.B5M-3g.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed crash in :func:`bytes` when the :class:`list` argument is mutated -while it is iterated. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-13-17-40-15.bpo-34939.0gpxlJ.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-13-17-40-15.bpo-34939.0gpxlJ.rst deleted file mode 100644 index b588f72d903b..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-13-17-40-15.bpo-34939.0gpxlJ.rst +++ /dev/null @@ -1,2 +0,0 @@ -Allow annotated names in module namespace that are declared global before -the annotation happens. Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-13-22-24-19.bpo-34974.7LgTc2.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-13-22-24-19.bpo-34974.7LgTc2.rst deleted file mode 100644 index 2a7e773648ec..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-13-22-24-19.bpo-34974.7LgTc2.rst +++ /dev/null @@ -1,3 +0,0 @@ -:class:`bytes` and :class:`bytearray` constructors no longer convert -unexpected exceptions (e.g. :exc:`MemoryError` and :exc:`KeyboardInterrupt`) -to :exc:`TypeError`. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-14-17-26-41.bpo-34983.l8XaZd.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-14-17-26-41.bpo-34983.l8XaZd.rst deleted file mode 100644 index dd76b63db119..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-14-17-26-41.bpo-34983.l8XaZd.rst +++ /dev/null @@ -1,2 +0,0 @@ -Expose :meth:`symtable.Symbol.is_nonlocal` in the symtable module. Patch by -Pablo Galindo. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-20-10-26-15.bpo-35029.t4tZcQ.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-20-10-26-15.bpo-35029.t4tZcQ.rst deleted file mode 100644 index 3644c4410fba..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-20-10-26-15.bpo-35029.t4tZcQ.rst +++ /dev/null @@ -1,2 +0,0 @@ -:exc:`SyntaxWarning` raised as an exception at code generation time will be -now replaced with a :exc:`SyntaxError` for better error reporting. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-20-18-05-58.bpo-16806.zr3A9N.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-20-18-05-58.bpo-16806.zr3A9N.rst deleted file mode 100644 index 1cdddeb5c83e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-20-18-05-58.bpo-16806.zr3A9N.rst +++ /dev/null @@ -1 +0,0 @@ -Fix ``lineno`` and ``col_offset`` for multi-line string tokens. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-21-17-43-48.bpo-29743.aeCcKR.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-21-17-43-48.bpo-29743.aeCcKR.rst deleted file mode 100644 index 9e79bb388e85..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-21-17-43-48.bpo-29743.aeCcKR.rst +++ /dev/null @@ -1,4 +0,0 @@ -Raise :exc:`ValueError` instead of :exc:`OverflowError` in case of a negative -``_length_`` in a :class:`ctypes.Array` subclass. Also raise :exc:`TypeError` -instead of :exc:`AttributeError` for non-integer ``_length_``. -Original patch by Oren Milman. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-23-15-03-53.bpo-35050.49wraS.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-23-15-03-53.bpo-35050.49wraS.rst deleted file mode 100644 index 9a33416089a2..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-23-15-03-53.bpo-35050.49wraS.rst +++ /dev/null @@ -1 +0,0 @@ -:mod:`socket`: Fix off-by-one bug in length check for ``AF_ALG`` name and type. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-25-20-53-32.bpo-29341.jH-AMF.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-25-20-53-32.bpo-29341.jH-AMF.rst deleted file mode 100644 index 954ce8cbc09a..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-25-20-53-32.bpo-29341.jH-AMF.rst +++ /dev/null @@ -1,2 +0,0 @@ -Clarify in the docstrings of :mod:`os` methods that path-like objects are also accepted -as input parameters. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-03-10-37-29.bpo-28401.RprDIg.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-03-10-37-29.bpo-28401.RprDIg.rst deleted file mode 100644 index 8fbba7826df9..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-03-10-37-29.bpo-28401.RprDIg.rst +++ /dev/null @@ -1,3 +0,0 @@ -Debug builds will no longer to attempt to import extension modules built -for the ABI as they were never compatible to begin with. -Patch by Stefano Rivera. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-04-18-13-40.bpo-34022.U3btVj.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-04-18-13-40.bpo-34022.U3btVj.rst deleted file mode 100644 index 64b362dd8dad..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-04-18-13-40.bpo-34022.U3btVj.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix handling of hash-based bytecode files in :mod:`zipimport`. -Patch by Elvis Pranskevichus. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-05-21-19-05.bpo-35169._FyPI2.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-05-21-19-05.bpo-35169._FyPI2.rst deleted file mode 100644 index 63c28f423ac2..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-05-21-19-05.bpo-35169._FyPI2.rst +++ /dev/null @@ -1 +0,0 @@ -Improved error messages for forbidden assignments. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-08-15-00-58.bpo-35193.HzPS6R.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-08-15-00-58.bpo-35193.HzPS6R.rst deleted file mode 100644 index dddebe167080..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-08-15-00-58.bpo-35193.HzPS6R.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix an off by one error in the bytecode peephole optimizer where it could read -bytes beyond the end of bounds of an array when removing unreachable code. -This bug was present in every release of Python 3.6 and 3.7 until now. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-12-11-38-06.bpo-35214.PCHKbX.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-12-11-38-06.bpo-35214.PCHKbX.rst deleted file mode 100644 index c7842f331698..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-12-11-38-06.bpo-35214.PCHKbX.rst +++ /dev/null @@ -1,4 +0,0 @@ -The interpreter and extension modules have had annotations added so that -they work properly under clang's Memory Sanitizer. A new configure flag ---with-memory-sanitizer has been added to make test builds of this nature -easier to perform. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-13-00-40-35.bpo-35214.OQBjph.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-13-00-40-35.bpo-35214.OQBjph.rst deleted file mode 100644 index d462c97d8040..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-13-00-40-35.bpo-35214.OQBjph.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed an out of bounds memory access when parsing a truncated unicode -escape sequence at the end of a string such as ``'\N'``. It would read -one byte beyond the end of the memory allocation. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-13-01-03-10.bpo-32492.voIdcp.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-13-01-03-10.bpo-32492.voIdcp.rst deleted file mode 100644 index 24682b14f36d..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-13-01-03-10.bpo-32492.voIdcp.rst +++ /dev/null @@ -1,2 +0,0 @@ -Speed up :class:`namedtuple` attribute access by 1.6x using a C fast-path -for the name descriptors. Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-13-14-26-54.bpo-35224.F0B6UQ.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-13-14-26-54.bpo-35224.F0B6UQ.rst deleted file mode 100644 index fe54f362aef6..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-13-14-26-54.bpo-35224.F0B6UQ.rst +++ /dev/null @@ -1 +0,0 @@ -Implement :pep:`572` (assignment expressions). Patch by Emily Morehouse. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-17-10-18-29.bpo-35269.gjm1LO.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-17-10-18-29.bpo-35269.gjm1LO.rst deleted file mode 100644 index 0076346f4b6c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-17-10-18-29.bpo-35269.gjm1LO.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a possible segfault involving a newly-created coroutine. Patch by -Zackery Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-20-22-33-38.bpo-33954.RzSngM.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-20-22-33-38.bpo-33954.RzSngM.rst deleted file mode 100644 index 9bfbe1644e16..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-20-22-33-38.bpo-33954.RzSngM.rst +++ /dev/null @@ -1,3 +0,0 @@ -For :meth:`str.format`, :meth:`float.__format__` and -:meth:`complex.__format__` methods for non-ASCII decimal point when using -the "n" formatter. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-21-14-05-51.bpo-31241.Kin10-.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-21-14-05-51.bpo-31241.Kin10-.rst deleted file mode 100644 index a859a9b0d68e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-21-14-05-51.bpo-31241.Kin10-.rst +++ /dev/null @@ -1,4 +0,0 @@ -The *lineno* and *col_offset* attributes of AST nodes for list comprehensions, -generator expressions and tuples are now point to the opening parenthesis or -square brace. For tuples without parenthesis they point to the position of -the first item. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-29-23-59-52.bpo-35336.8LOz4F.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-29-23-59-52.bpo-35336.8LOz4F.rst deleted file mode 100644 index 28f8f9bd4db7..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-29-23-59-52.bpo-35336.8LOz4F.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix PYTHONCOERCECLOCALE=1 environment variable: only coerce the C locale -if the LC_CTYPE locale is "C". diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-01-19-20-53.bpo-35372.RwVJjZ.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-01-19-20-53.bpo-35372.RwVJjZ.rst deleted file mode 100644 index dc2de44b4f63..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-01-19-20-53.bpo-35372.RwVJjZ.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed the code page decoder for input longer than 2 GiB containing -undecodable bytes. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-03-21-20-24.bpo-35357.rhhoiC.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-03-21-20-24.bpo-35357.rhhoiC.rst deleted file mode 100644 index 1dade5baf4e0..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-03-21-20-24.bpo-35357.rhhoiC.rst +++ /dev/null @@ -1,4 +0,0 @@ -Internal attributes' names of unittest.mock._Call and -unittest.mock.MagicProxy (name, parent & from_kall) are now prefixed with -_mock_ in order to prevent clashes with widely used object attributes. -Fixed minor typo in test function name. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-05-16-24-05.bpo-35423.UIie_O.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-05-16-24-05.bpo-35423.UIie_O.rst deleted file mode 100644 index 271ec48b3475..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-05-16-24-05.bpo-35423.UIie_O.rst +++ /dev/null @@ -1,3 +0,0 @@ -Separate the signal handling trigger in the eval loop from the "pending -calls" machinery. There is no semantic change and the difference in -performance is insignificant. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-07-02-38-01.bpo-35436.0VW7p9.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-07-02-38-01.bpo-35436.0VW7p9.rst deleted file mode 100644 index 542fe93a00eb..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-07-02-38-01.bpo-35436.0VW7p9.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix various issues with memory allocation error handling. Patch by Zackery -Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-09-13-09-39.bpo-35444.9kYn4V.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-09-13-09-39.bpo-35444.9kYn4V.rst deleted file mode 100644 index 39591f9c32dd..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-09-13-09-39.bpo-35444.9kYn4V.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed error handling in pickling methods when fail to look up builtin -"getattr". Sped up pickling iterators. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-14-18-02-34.bpo-35494.IWOPtb.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-14-18-02-34.bpo-35494.IWOPtb.rst deleted file mode 100644 index 0813b35ec87d..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-14-18-02-34.bpo-35494.IWOPtb.rst +++ /dev/null @@ -1 +0,0 @@ -Improved syntax error messages for unbalanced parentheses in f-string. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-15-00-47-41.bpo-35504.9gVuen.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-15-00-47-41.bpo-35504.9gVuen.rst deleted file mode 100644 index 622b50ca62da..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-15-00-47-41.bpo-35504.9gVuen.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed a SystemError when delete the characters_written attribute of an OSError. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-15-14-01-45.bpo-35504.JtKczP.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-15-14-01-45.bpo-35504.JtKczP.rst deleted file mode 100644 index 2a4f0f694fee..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-15-14-01-45.bpo-35504.JtKczP.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix segfaults and :exc:`SystemError`\ s when deleting certain attributes. -Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-21-13-29-30.bpo-35552.1DzQQc.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-21-13-29-30.bpo-35552.1DzQQc.rst deleted file mode 100644 index dbc00bcd75e9..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-21-13-29-30.bpo-35552.1DzQQc.rst +++ /dev/null @@ -1,3 +0,0 @@ -Format characters ``%s`` and ``%V`` in :c:func:`PyUnicode_FromFormat` and -``%s`` in :c:func:`PyBytes_FromFormat` no longer read memory past the -limit if *precision* is specified. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-22-22-19-51.bpo-35560.9vMWSP.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-22-22-19-51.bpo-35560.9vMWSP.rst deleted file mode 100644 index 01458f11088e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-22-22-19-51.bpo-35560.9vMWSP.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix an assertion error in :func:`format` in debug build for floating point -formatting with "n" format, zero padding and small width. Release build is -not impacted. Patch by Karthikeyan Singaravelan. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-30-15-36-23.bpo-35214.GWDQcv.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-30-15-36-23.bpo-35214.GWDQcv.rst deleted file mode 100644 index fa61f78a9328..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-30-15-36-23.bpo-35214.GWDQcv.rst +++ /dev/null @@ -1,2 +0,0 @@ -clang Memory Sanitizer build instrumentation was added to work around false -positives from posix, socket, time, test_io, and test_faulthandler. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-31-02-37-20.bpo-35623.24AQhY.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-31-02-37-20.bpo-35623.24AQhY.rst deleted file mode 100644 index 6e3df4dc5d4e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-31-02-37-20.bpo-35623.24AQhY.rst +++ /dev/null @@ -1 +0,0 @@ -Fix a crash when sorting very long lists. Patch by Stephan Hohe. diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-01-05-18-39-49.bpo-35634.nVP_gs.rst b/Misc/NEWS.d/next/Core and Builtins/2019-01-05-18-39-49.bpo-35634.nVP_gs.rst deleted file mode 100644 index 24e578960654..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2019-01-05-18-39-49.bpo-35634.nVP_gs.rst +++ /dev/null @@ -1,3 +0,0 @@ -``func(**kwargs)`` will now raise an error when ``kwargs`` is a mapping -containing multiple entries with the same key. An error was already raised -when other keyword arguments are passed before ``**kwargs`` since Python 3.6. diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-01-12-23-33-04.bpo-35720.LELKQx.rst b/Misc/NEWS.d/next/Core and Builtins/2019-01-12-23-33-04.bpo-35720.LELKQx.rst deleted file mode 100644 index 9c57ebcb625e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2019-01-12-23-33-04.bpo-35720.LELKQx.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed a minor memory leak in pymain_parse_cmdline_impl function in Modules/main.c \ No newline at end of file diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-01-19-19-41-53.bpo-33416.VDeOU5.rst b/Misc/NEWS.d/next/Core and Builtins/2019-01-19-19-41-53.bpo-33416.VDeOU5.rst deleted file mode 100644 index 2e618e4f0e1f..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2019-01-19-19-41-53.bpo-33416.VDeOU5.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add end line and end column position information to the Python AST nodes. -This is a C-level backwards incompatible change. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-01-22-18-50-21.bpo-35713.bTeUsa.rst b/Misc/NEWS.d/next/Core and Builtins/2019-01-22-18-50-21.bpo-35713.bTeUsa.rst deleted file mode 100644 index 67e766fa075b..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2019-01-22-18-50-21.bpo-35713.bTeUsa.rst +++ /dev/null @@ -1,2 +0,0 @@ -Reorganize Python initialization to get working exceptions and sys.stderr -earlier. diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-01-22-19-17-27.bpo-35766.gh1tHZ.rst b/Misc/NEWS.d/next/Core and Builtins/2019-01-22-19-17-27.bpo-35766.gh1tHZ.rst deleted file mode 100644 index 29c5f34d6a3e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2019-01-22-19-17-27.bpo-35766.gh1tHZ.rst +++ /dev/null @@ -1 +0,0 @@ -Add the option to parse PEP 484 type comments in the ast module. (Off by default.) This is merging the key functionality of the third party fork thereof, [typed_ast](https://github.com/python/typed_ast). \ No newline at end of file diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-01-24-13-25-21.bpo-35814.r_MjA6.rst b/Misc/NEWS.d/next/Core and Builtins/2019-01-24-13-25-21.bpo-35814.r_MjA6.rst deleted file mode 100644 index 5d216b273e95..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2019-01-24-13-25-21.bpo-35814.r_MjA6.rst +++ /dev/null @@ -1,2 +0,0 @@ -Allow same right hand side expressions in annotated assignments as in normal ones. -In particular, ``x: Tuple[int, int] = 1, 2`` (without parentheses on the right) is now allowed. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-02-01-22-38-11.bpo-35877.Jrse8f.rst b/Misc/NEWS.d/next/Core and Builtins/2019-02-01-22-38-11.bpo-35877.Jrse8f.rst deleted file mode 100644 index 1fb173fe463d..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2019-02-01-22-38-11.bpo-35877.Jrse8f.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make parenthesis optional for named expressions in while statement. Patch by -Karthikeyan Singaravelan. diff --git a/Misc/NEWS.d/next/Documentation/2017-09-13-07-14-59.bpo-31432.yAY4Z3.rst b/Misc/NEWS.d/next/Documentation/2017-09-13-07-14-59.bpo-31432.yAY4Z3.rst deleted file mode 100644 index 18e5353b2494..000000000000 --- a/Misc/NEWS.d/next/Documentation/2017-09-13-07-14-59.bpo-31432.yAY4Z3.rst +++ /dev/null @@ -1,2 +0,0 @@ -Clarify meaning of CERT_NONE, CERT_OPTIONAL, and CERT_REQUIRED flags for -ssl.SSLContext.verify_mode. diff --git a/Misc/NEWS.d/next/Documentation/2017-10-23-13-41-12.bpo-25041.iAo2gW.rst b/Misc/NEWS.d/next/Documentation/2017-10-23-13-41-12.bpo-25041.iAo2gW.rst deleted file mode 100644 index 5bb6e25db9de..000000000000 --- a/Misc/NEWS.d/next/Documentation/2017-10-23-13-41-12.bpo-25041.iAo2gW.rst +++ /dev/null @@ -1 +0,0 @@ -Document ``AF_PACKET`` in the :mod:`socket` module. diff --git a/Misc/NEWS.d/next/Documentation/2017-12-22-17-29-37.bpo-32337.eZe-ID.rst b/Misc/NEWS.d/next/Documentation/2017-12-22-17-29-37.bpo-32337.eZe-ID.rst deleted file mode 100644 index a905467cd59f..000000000000 --- a/Misc/NEWS.d/next/Documentation/2017-12-22-17-29-37.bpo-32337.eZe-ID.rst +++ /dev/null @@ -1 +0,0 @@ -Update documentation related with ``dict`` order. diff --git a/Misc/NEWS.d/next/Documentation/2018-01-13-20-30-53.bpo-8243.s98r28.rst b/Misc/NEWS.d/next/Documentation/2018-01-13-20-30-53.bpo-8243.s98r28.rst deleted file mode 100644 index a3520d05c095..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-01-13-20-30-53.bpo-8243.s98r28.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add a note about curses.addch and curses.addstr exception behavior when -writing outside a window, or pad. diff --git a/Misc/NEWS.d/next/Documentation/2018-01-25-13-58-49.bpo-30607.4dXxiq.rst b/Misc/NEWS.d/next/Documentation/2018-01-25-13-58-49.bpo-30607.4dXxiq.rst deleted file mode 100644 index 85e6303fe443..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-01-25-13-58-49.bpo-30607.4dXxiq.rst +++ /dev/null @@ -1,2 +0,0 @@ -Use the externalized ``python-docs-theme`` package when building the -documentation. diff --git a/Misc/NEWS.d/next/Documentation/2018-01-25-14-23-12.bpo-31972.w1m_8r.rst b/Misc/NEWS.d/next/Documentation/2018-01-25-14-23-12.bpo-31972.w1m_8r.rst deleted file mode 100644 index e0361df578b3..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-01-25-14-23-12.bpo-31972.w1m_8r.rst +++ /dev/null @@ -1 +0,0 @@ -Improve docstrings for `pathlib.PurePath` subclasses. diff --git a/Misc/NEWS.d/next/Documentation/2018-01-30-11-28-27.bpo-32722.frdp6A.rst b/Misc/NEWS.d/next/Documentation/2018-01-30-11-28-27.bpo-32722.frdp6A.rst deleted file mode 100644 index c4ed27ee2780..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-01-30-11-28-27.bpo-32722.frdp6A.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove the bad example in the tutorial of the Generator Expression. Patch by -St?phane Wirtel diff --git a/Misc/NEWS.d/next/Documentation/2018-02-01-10-57-24.bpo-20709.1flcnc.rst b/Misc/NEWS.d/next/Documentation/2018-02-01-10-57-24.bpo-20709.1flcnc.rst deleted file mode 100644 index b14c0f54eb3b..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-01-10-57-24.bpo-20709.1flcnc.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove the paragraph where we explain that os.utime() does not support a -directory as path under Windows. Patch by Jan-Philip Gehrcke diff --git a/Misc/NEWS.d/next/Documentation/2018-02-02-07-41-57.bpo-32614.LSqzGw.rst b/Misc/NEWS.d/next/Documentation/2018-02-02-07-41-57.bpo-32614.LSqzGw.rst deleted file mode 100644 index 9e9f3e3a74df..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-02-07-41-57.bpo-32614.LSqzGw.rst +++ /dev/null @@ -1,3 +0,0 @@ -Modify RE examples in documentation to use raw strings to prevent -:exc:`DeprecationWarning` and add text to REGEX HOWTO to highlight the -deprecation. diff --git a/Misc/NEWS.d/next/Documentation/2018-02-03-06-11-37.bpo-8722.MPyVyj.rst b/Misc/NEWS.d/next/Documentation/2018-02-03-06-11-37.bpo-8722.MPyVyj.rst deleted file mode 100644 index 36e6ff7db3ce..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-03-06-11-37.bpo-8722.MPyVyj.rst +++ /dev/null @@ -1,2 +0,0 @@ -Document :meth:`__getattr__` behavior when property :meth:`get` method -raises :exc:`AttributeError`. diff --git a/Misc/NEWS.d/next/Documentation/2018-02-05-15-05-53.bpo-32613.TDjgM1.rst b/Misc/NEWS.d/next/Documentation/2018-02-05-15-05-53.bpo-32613.TDjgM1.rst deleted file mode 100644 index d4701c224e70..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-05-15-05-53.bpo-32613.TDjgM1.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update the faq/windows.html to use the py command from PEP 397 instead of -python. diff --git a/Misc/NEWS.d/next/Documentation/2018-02-10-12-48-38.bpo-11015.-gUf34.rst b/Misc/NEWS.d/next/Documentation/2018-02-10-12-48-38.bpo-11015.-gUf34.rst deleted file mode 100644 index 73612dab69e5..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-10-12-48-38.bpo-11015.-gUf34.rst +++ /dev/null @@ -1 +0,0 @@ -Update :mod:`test.support` documentation. diff --git a/Misc/NEWS.d/next/Documentation/2018-02-10-15-16-04.bpo-32800.FyrqCk.rst b/Misc/NEWS.d/next/Documentation/2018-02-10-15-16-04.bpo-32800.FyrqCk.rst deleted file mode 100644 index eac1107bba76..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-10-15-16-04.bpo-32800.FyrqCk.rst +++ /dev/null @@ -1 +0,0 @@ -Update link to w3c doc for xml default namespaces. diff --git a/Misc/NEWS.d/next/Documentation/2018-02-14-11-10-41.bpo-32436.TTJ2jb.rst b/Misc/NEWS.d/next/Documentation/2018-02-14-11-10-41.bpo-32436.TTJ2jb.rst deleted file mode 100644 index b764b45cd968..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-14-11-10-41.bpo-32436.TTJ2jb.rst +++ /dev/null @@ -1 +0,0 @@ -Add documentation for the contextvars module (PEP 567). diff --git a/Misc/NEWS.d/next/Documentation/2018-02-23-12-48-03.bpo-17232.tmuTKL.rst b/Misc/NEWS.d/next/Documentation/2018-02-23-12-48-03.bpo-17232.tmuTKL.rst deleted file mode 100644 index 5c14e91b3919..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-23-12-48-03.bpo-17232.tmuTKL.rst +++ /dev/null @@ -1 +0,0 @@ -Clarify docs for -O and -OO. Patch by Terry Reedy. diff --git a/Misc/NEWS.d/next/Documentation/2018-02-25-16-33-35.bpo-28124._uzkgq.rst b/Misc/NEWS.d/next/Documentation/2018-02-25-16-33-35.bpo-28124._uzkgq.rst deleted file mode 100644 index 4f4ca001981d..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-25-16-33-35.bpo-28124._uzkgq.rst +++ /dev/null @@ -1,3 +0,0 @@ -The ssl module function ssl.wrap_socket() has been de-emphasized -and deprecated in favor of the more secure and efficient -SSLContext.wrap_socket() method. diff --git a/Misc/NEWS.d/next/Documentation/2018-03-11-00-16-56.bpo-27428.B7A8FT.rst b/Misc/NEWS.d/next/Documentation/2018-03-11-00-16-56.bpo-27428.B7A8FT.rst deleted file mode 100644 index c9ac8e22df08..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-03-11-00-16-56.bpo-27428.B7A8FT.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update documentation to clarify that ``WindowsRegistryFinder`` implements -``MetaPathFinder``. (Patch by Himanshu Lakhara) diff --git a/Misc/NEWS.d/next/Documentation/2018-03-11-18-53-47.bpo-18802.JhAqH3.rst b/Misc/NEWS.d/next/Documentation/2018-03-11-18-53-47.bpo-18802.JhAqH3.rst deleted file mode 100644 index cb9cc2599aca..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-03-11-18-53-47.bpo-18802.JhAqH3.rst +++ /dev/null @@ -1 +0,0 @@ -Documentation changes for ipaddress. Patch by Jon Foster and Berker Peksag. diff --git a/Misc/NEWS.d/next/Documentation/2018-03-20-20-11-05.bpo-28247.-V-WS-.rst b/Misc/NEWS.d/next/Documentation/2018-03-20-20-11-05.bpo-28247.-V-WS-.rst deleted file mode 100644 index 28a802136fa7..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-03-20-20-11-05.bpo-28247.-V-WS-.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update :mod:`zipapp` documentation to describe how to make standalone -applications. diff --git a/Misc/NEWS.d/next/Documentation/2018-03-22-19-23-04.bpo-27212.wrE5KR.rst b/Misc/NEWS.d/next/Documentation/2018-03-22-19-23-04.bpo-27212.wrE5KR.rst deleted file mode 100644 index 5910d2c17342..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-03-22-19-23-04.bpo-27212.wrE5KR.rst +++ /dev/null @@ -1,2 +0,0 @@ -Modify documentation for the :func:`islice` recipe to consume initial values -up to the start index. diff --git a/Misc/NEWS.d/next/Documentation/2018-03-28-17-03-17.bpo-33126.5UGkNv.rst b/Misc/NEWS.d/next/Documentation/2018-03-28-17-03-17.bpo-33126.5UGkNv.rst deleted file mode 100644 index 1219790e79ec..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-03-28-17-03-17.bpo-33126.5UGkNv.rst +++ /dev/null @@ -1 +0,0 @@ -Document PyBuffer_ToContiguous(). diff --git a/Misc/NEWS.d/next/Documentation/2018-04-01-14-30-36.bpo-33195.dRS-XX.rst b/Misc/NEWS.d/next/Documentation/2018-04-01-14-30-36.bpo-33195.dRS-XX.rst deleted file mode 100644 index 6884640325b0..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-04-01-14-30-36.bpo-33195.dRS-XX.rst +++ /dev/null @@ -1,3 +0,0 @@ -Deprecate ``Py_UNICODE`` usage in ``c-api/arg`` document. ``Py_UNICODE`` -related APIs are deprecated since Python 3.3, but it is missed in the -document. diff --git a/Misc/NEWS.d/next/Documentation/2018-04-01-21-03-41.bpo-33201.aa8Lkl.rst b/Misc/NEWS.d/next/Documentation/2018-04-01-21-03-41.bpo-33201.aa8Lkl.rst deleted file mode 100644 index bdee48ba0314..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-04-01-21-03-41.bpo-33201.aa8Lkl.rst +++ /dev/null @@ -1 +0,0 @@ -Modernize documentation for writing C extension types. diff --git a/Misc/NEWS.d/next/Documentation/2018-04-20-14-09-36.bpo-33276.rA1z_3.rst b/Misc/NEWS.d/next/Documentation/2018-04-20-14-09-36.bpo-33276.rA1z_3.rst deleted file mode 100644 index 0da58a0ce4c8..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-04-20-14-09-36.bpo-33276.rA1z_3.rst +++ /dev/null @@ -1 +0,0 @@ -Clarify that the ``__path__`` attribute on modules cannot be just any value. diff --git a/Misc/NEWS.d/next/Documentation/2018-04-29-04-02-18.bpo-33378.-anAHN.rst b/Misc/NEWS.d/next/Documentation/2018-04-29-04-02-18.bpo-33378.-anAHN.rst deleted file mode 100644 index 43214d10b7c5..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-04-29-04-02-18.bpo-33378.-anAHN.rst +++ /dev/null @@ -1 +0,0 @@ -Add Korean language switcher for https://docs.python.org/3/ diff --git a/Misc/NEWS.d/next/Documentation/2018-05-13-14-44-30.bpo-33487.iLDzFb.rst b/Misc/NEWS.d/next/Documentation/2018-05-13-14-44-30.bpo-33487.iLDzFb.rst deleted file mode 100644 index 3a2ac64dded8..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-05-13-14-44-30.bpo-33487.iLDzFb.rst +++ /dev/null @@ -1,3 +0,0 @@ -BZ2file now emit a DeprecationWarning when buffering=None is passed, the -deprecation message and documentation also now explicitly state it is -deprecated since 3.0. diff --git a/Misc/NEWS.d/next/Documentation/2018-05-14-15-15-41.bpo-33421.3GU_QO.rst b/Misc/NEWS.d/next/Documentation/2018-05-14-15-15-41.bpo-33421.3GU_QO.rst deleted file mode 100644 index 75694b7be1e7..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-05-14-15-15-41.bpo-33421.3GU_QO.rst +++ /dev/null @@ -1 +0,0 @@ -Add missing documentation for ``typing.AsyncContextManager``. diff --git a/Misc/NEWS.d/next/Documentation/2018-05-14-20-08-58.bpo-33503.Wvt0qg.rst b/Misc/NEWS.d/next/Documentation/2018-05-14-20-08-58.bpo-33503.Wvt0qg.rst deleted file mode 100644 index 27025c31a036..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-05-14-20-08-58.bpo-33503.Wvt0qg.rst +++ /dev/null @@ -1 +0,0 @@ -Fix broken pypi link diff --git a/Misc/NEWS.d/next/Documentation/2018-05-21-14-36-12.bpo-33594.-HRcyX.rst b/Misc/NEWS.d/next/Documentation/2018-05-21-14-36-12.bpo-33594.-HRcyX.rst deleted file mode 100644 index a63c4a5004c6..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-05-21-14-36-12.bpo-33594.-HRcyX.rst +++ /dev/null @@ -1,3 +0,0 @@ -Document ``getargspec``, ``from_function`` and ``from_builtin`` as -deprecated in their respective docstring, and include version since -deprecation in DeprecationWarning message. diff --git a/Misc/NEWS.d/next/Documentation/2018-05-22-11-47-14.bpo-33604.5YHTpz.rst b/Misc/NEWS.d/next/Documentation/2018-05-22-11-47-14.bpo-33604.5YHTpz.rst deleted file mode 100644 index 3c2f2d0b8230..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-05-22-11-47-14.bpo-33604.5YHTpz.rst +++ /dev/null @@ -1 +0,0 @@ -Update HMAC md5 default to a DeprecationWarning, bump removal to 3.8. diff --git a/Misc/NEWS.d/next/Documentation/2018-05-23-11-59-51.bpo-32436.S1LGPa.rst b/Misc/NEWS.d/next/Documentation/2018-05-23-11-59-51.bpo-32436.S1LGPa.rst deleted file mode 100644 index a4ecc23f8925..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-05-23-11-59-51.bpo-32436.S1LGPa.rst +++ /dev/null @@ -1 +0,0 @@ -Document :pep:`567` changes to asyncio. diff --git a/Misc/NEWS.d/next/Documentation/2018-05-29-16-02-31.bpo-23859.E5gba1.rst b/Misc/NEWS.d/next/Documentation/2018-05-29-16-02-31.bpo-23859.E5gba1.rst deleted file mode 100644 index b372faa5eb97..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-05-29-16-02-31.bpo-23859.E5gba1.rst +++ /dev/null @@ -1 +0,0 @@ -Document that `asyncio.wait()` does not cancel its futures on timeout. diff --git a/Misc/NEWS.d/next/Documentation/2018-06-01-12-27-40.bpo-33736.JVegIu.rst b/Misc/NEWS.d/next/Documentation/2018-06-01-12-27-40.bpo-33736.JVegIu.rst deleted file mode 100644 index 6bd9c40d35e9..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-06-01-12-27-40.bpo-33736.JVegIu.rst +++ /dev/null @@ -1,2 +0,0 @@ -Improve the documentation of :func:`asyncio.open_connection`, -:func:`asyncio.start_server` and their UNIX socket counterparts. diff --git a/Misc/NEWS.d/next/Documentation/2018-06-07-08-33-45.bpo-17045.ZNx6KU.rst b/Misc/NEWS.d/next/Documentation/2018-06-07-08-33-45.bpo-17045.ZNx6KU.rst deleted file mode 100644 index 15f7b445b82b..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-06-07-08-33-45.bpo-17045.ZNx6KU.rst +++ /dev/null @@ -1,3 +0,0 @@ -Improve the C-API doc for PyTypeObject. This includes adding several -quick-reference tables and a lot of missing slot/typedef entries. The -existing entries were also cleaned up with a slightly more consistent format. diff --git a/Misc/NEWS.d/next/Documentation/2018-06-08-23-37-14.bpo-33197.OERTKf.rst b/Misc/NEWS.d/next/Documentation/2018-06-08-23-37-14.bpo-33197.OERTKf.rst deleted file mode 100644 index ae8df74f71ff..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-06-08-23-37-14.bpo-33197.OERTKf.rst +++ /dev/null @@ -1 +0,0 @@ -Add versionadded tag to the documentation of ParameterKind.description diff --git a/Misc/NEWS.d/next/Documentation/2018-06-08-23-46-01.bpo-33409.r4z9MM.rst b/Misc/NEWS.d/next/Documentation/2018-06-08-23-46-01.bpo-33409.r4z9MM.rst deleted file mode 100644 index f26ddd82400e..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-06-08-23-46-01.bpo-33409.r4z9MM.rst +++ /dev/null @@ -1,2 +0,0 @@ -Clarified the relationship between :pep:`538`'s PYTHONCOERCECLOCALE and PEP -540's PYTHONUTF8 mode. diff --git a/Misc/NEWS.d/next/Documentation/2018-06-15-14-58-45.bpo-33847.IIDp6t.rst b/Misc/NEWS.d/next/Documentation/2018-06-15-14-58-45.bpo-33847.IIDp6t.rst deleted file mode 100644 index 3c7e0cdb7b43..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-06-15-14-58-45.bpo-33847.IIDp6t.rst +++ /dev/null @@ -1 +0,0 @@ -Add '@' operator entry to index. diff --git a/Misc/NEWS.d/next/Documentation/2018-06-22-08-38-29.bpo-33460.kHt4D0.rst b/Misc/NEWS.d/next/Documentation/2018-06-22-08-38-29.bpo-33460.kHt4D0.rst deleted file mode 100644 index 6ee63b08f682..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-06-22-08-38-29.bpo-33460.kHt4D0.rst +++ /dev/null @@ -1 +0,0 @@ -replaced ellipsis with correct error codes in tutorial chapter 3. diff --git a/Misc/NEWS.d/next/Documentation/2018-07-07-20-38-41.bpo-34065.1snofM.rst b/Misc/NEWS.d/next/Documentation/2018-07-07-20-38-41.bpo-34065.1snofM.rst deleted file mode 100644 index a3f9fb848f62..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-07-07-20-38-41.bpo-34065.1snofM.rst +++ /dev/null @@ -1 +0,0 @@ -Fix wrongly written basicConfig documentation markup syntax diff --git a/Misc/NEWS.d/next/Documentation/2018-07-28-17-17-42.bpo-20177.cOZJWp.rst b/Misc/NEWS.d/next/Documentation/2018-07-28-17-17-42.bpo-20177.cOZJWp.rst deleted file mode 100644 index 35592a64a8da..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-07-28-17-17-42.bpo-20177.cOZJWp.rst +++ /dev/null @@ -1 +0,0 @@ -Migrate datetime.date.fromtimestamp to Argument Clinic. Patch by Tim Hoffmann. diff --git a/Misc/NEWS.d/next/Documentation/2018-09-06-22-39-47.bpo-28617.MjnJLz.rst b/Misc/NEWS.d/next/Documentation/2018-09-06-22-39-47.bpo-28617.MjnJLz.rst deleted file mode 100644 index 281afad71d27..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-09-06-22-39-47.bpo-28617.MjnJLz.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed info in the stdtypes docs concerning the types that support membership -tests. diff --git a/Misc/NEWS.d/next/Documentation/2018-09-12-10-18-04.bpo-34552.p9PoYv.rst b/Misc/NEWS.d/next/Documentation/2018-09-12-10-18-04.bpo-34552.p9PoYv.rst deleted file mode 100644 index 9e7605bc6d68..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-09-12-10-18-04.bpo-34552.p9PoYv.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make clear that ``==`` operator sometimes is equivalent to `is`. The ``<``, -``<=``, ``>`` and ``>=`` operators are only defined where they make sense. diff --git a/Misc/NEWS.d/next/Documentation/2018-09-24-12-47-08.bpo-34790.G2KXIH.rst b/Misc/NEWS.d/next/Documentation/2018-09-24-12-47-08.bpo-34790.G2KXIH.rst deleted file mode 100644 index dc3de2c7d4c8..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-09-24-12-47-08.bpo-34790.G2KXIH.rst +++ /dev/null @@ -1 +0,0 @@ -Document how passing coroutines to asyncio.wait() can be confusing. diff --git a/Misc/NEWS.d/next/Documentation/2018-10-03-20-39-25.bpo-11233.BX6Gen.rst b/Misc/NEWS.d/next/Documentation/2018-10-03-20-39-25.bpo-11233.BX6Gen.rst deleted file mode 100644 index 0637dd66e42c..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-03-20-39-25.bpo-11233.BX6Gen.rst +++ /dev/null @@ -1,2 +0,0 @@ -Create availability directive for documentation. Original patch by Georg -Brandl. diff --git a/Misc/NEWS.d/next/Documentation/2018-10-08-19-15-28.bpo-32174.YO9CYm.rst b/Misc/NEWS.d/next/Documentation/2018-10-08-19-15-28.bpo-32174.YO9CYm.rst deleted file mode 100644 index a11a4b3eb087..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-08-19-15-28.bpo-32174.YO9CYm.rst +++ /dev/null @@ -1,2 +0,0 @@ -chm document displays non-ASCII charaters properly on some MBCS Windows -systems. diff --git a/Misc/NEWS.d/next/Documentation/2018-10-10-00-34-08.bpo-34913.kVd1Fv.rst b/Misc/NEWS.d/next/Documentation/2018-10-10-00-34-08.bpo-34913.kVd1Fv.rst deleted file mode 100644 index e8a11761477c..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-10-00-34-08.bpo-34913.kVd1Fv.rst +++ /dev/null @@ -1 +0,0 @@ -Add documentation about the new command line interface of the gzip module. diff --git a/Misc/NEWS.d/next/Documentation/2018-10-13-07-39-57.bpo-34967.E40tFP.rst b/Misc/NEWS.d/next/Documentation/2018-10-13-07-39-57.bpo-34967.E40tFP.rst deleted file mode 100644 index 6341296663ae..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-13-07-39-57.bpo-34967.E40tFP.rst +++ /dev/null @@ -1,2 +0,0 @@ -Use app.add_object_type() instead of the deprecated Sphinx function -app.description_unit() diff --git a/Misc/NEWS.d/next/Documentation/2018-10-21-02-20-36.bpo-35035.4zBObK.rst b/Misc/NEWS.d/next/Documentation/2018-10-21-02-20-36.bpo-35035.4zBObK.rst deleted file mode 100644 index 46436f1b979b..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-21-02-20-36.bpo-35035.4zBObK.rst +++ /dev/null @@ -1 +0,0 @@ -Rename documentation for :mod:`email.utils` to ``email.utils.rst``. diff --git a/Misc/NEWS.d/next/Documentation/2018-10-22-14-09-58.bpo-35044.qjvNtI.rst b/Misc/NEWS.d/next/Documentation/2018-10-22-14-09-58.bpo-35044.qjvNtI.rst deleted file mode 100644 index 05e67e51a73a..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-22-14-09-58.bpo-35044.qjvNtI.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix the documentation with the role ``exc`` for the appropriated exception. Patch by -St?phane Wirtel diff --git a/Misc/NEWS.d/next/Documentation/2018-10-22-14-17-57.bpo-35042.1UGv1a.rst b/Misc/NEWS.d/next/Documentation/2018-10-22-14-17-57.bpo-35042.1UGv1a.rst deleted file mode 100644 index 3ebbd3a8005a..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-22-14-17-57.bpo-35042.1UGv1a.rst +++ /dev/null @@ -1 +0,0 @@ -Replace PEP XYZ by the pep role and allow to use the direct links to the PEPs. diff --git a/Misc/NEWS.d/next/Documentation/2018-10-25-17-45-09.bpo-35038.2eVOYS.rst b/Misc/NEWS.d/next/Documentation/2018-10-25-17-45-09.bpo-35038.2eVOYS.rst deleted file mode 100644 index 3558cf47d5d5..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-25-17-45-09.bpo-35038.2eVOYS.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix the documentation about an unexisting `f_restricted` attribute in the -frame object. Patch by St?phane Wirtel diff --git a/Misc/NEWS.d/next/Documentation/2018-10-28-16-51-31.bpo-35089._stCpS.rst b/Misc/NEWS.d/next/Documentation/2018-10-28-16-51-31.bpo-35089._stCpS.rst deleted file mode 100644 index 4a469290ad73..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-28-16-51-31.bpo-35089._stCpS.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove mention of ``typing.io`` and ``typing.re``. Their types should be -imported from ``typing`` directly. diff --git a/Misc/NEWS.d/next/Documentation/2018-11-04-22-03-56.bpo-10536.a0IsfE.rst b/Misc/NEWS.d/next/Documentation/2018-11-04-22-03-56.bpo-10536.a0IsfE.rst deleted file mode 100644 index b5036481fb65..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-11-04-22-03-56.bpo-10536.a0IsfE.rst +++ /dev/null @@ -1 +0,0 @@ -Enhance the gettext docs. Patch by ?ric Araujo diff --git a/Misc/NEWS.d/next/Documentation/2018-12-16-16-14-44.bpo-35511.iVcyav.rst b/Misc/NEWS.d/next/Documentation/2018-12-16-16-14-44.bpo-35511.iVcyav.rst deleted file mode 100644 index 69c9d9fc56e6..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-12-16-16-14-44.bpo-35511.iVcyav.rst +++ /dev/null @@ -1,3 +0,0 @@ -Specified that profile.Profile class doesn't not support enable or disable -methods. Also, elaborated that Profile object as a context manager is only -supported in cProfile module. diff --git a/Misc/NEWS.d/next/Documentation/2018-12-22-22-52-05.bpo-35564.TuEU_D.rst b/Misc/NEWS.d/next/Documentation/2018-12-22-22-52-05.bpo-35564.TuEU_D.rst deleted file mode 100644 index 8ca95eed4c56..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-12-22-22-52-05.bpo-35564.TuEU_D.rst +++ /dev/null @@ -1 +0,0 @@ -Explicitly set master_doc variable in conf.py for compliance with Sphinx 2.0 diff --git a/Misc/NEWS.d/next/Documentation/2018-12-23-23-52-31.bpo-34764.DwOGeT.rst b/Misc/NEWS.d/next/Documentation/2018-12-23-23-52-31.bpo-34764.DwOGeT.rst deleted file mode 100644 index d2a7f1b52b75..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-12-23-23-52-31.bpo-34764.DwOGeT.rst +++ /dev/null @@ -1 +0,0 @@ -Improve example of iter() with 2nd sentinel argument. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Documentation/2019-01-15-21-45-27.bpo-21257.U9LKkx.rst b/Misc/NEWS.d/next/Documentation/2019-01-15-21-45-27.bpo-21257.U9LKkx.rst deleted file mode 100644 index ad035e95b51c..000000000000 --- a/Misc/NEWS.d/next/Documentation/2019-01-15-21-45-27.bpo-21257.U9LKkx.rst +++ /dev/null @@ -1 +0,0 @@ -Document :func:`http.client.parse_headers`. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-04-17-52-54.bpo-32765.qm0eCu.rst b/Misc/NEWS.d/next/IDLE/2018-02-04-17-52-54.bpo-32765.qm0eCu.rst deleted file mode 100644 index 1bd6b094ca5d..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-04-17-52-54.bpo-32765.qm0eCu.rst +++ /dev/null @@ -1 +0,0 @@ -Update configdialog General tab docstring to add new widgets to the widget list. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-12-08-08-45.bpo-32831.srDRvU.rst b/Misc/NEWS.d/next/IDLE/2018-02-12-08-08-45.bpo-32831.srDRvU.rst deleted file mode 100644 index 583e341f94f0..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-12-08-08-45.bpo-32831.srDRvU.rst +++ /dev/null @@ -1 +0,0 @@ -Add docstrings and tests for codecontext. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-12-11-05-22.bpo-32826.IxNZrk.rst b/Misc/NEWS.d/next/IDLE/2018-02-12-11-05-22.bpo-32826.IxNZrk.rst deleted file mode 100644 index 4310ed2e721a..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-12-11-05-22.bpo-32826.IxNZrk.rst +++ /dev/null @@ -1,5 +0,0 @@ -Add "encoding=utf-8" to open() in IDLE's test_help_about. -GUI test test_file_buttons() only looks at initial ascii-only lines, -but failed on systems where open() defaults to 'ascii' because -readline() internally reads and decodes far enough ahead to encounter -a non-ascii character in CREDITS.txt. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-12-17-22-48.bpo-32837.-33QPl.rst b/Misc/NEWS.d/next/IDLE/2018-02-12-17-22-48.bpo-32837.-33QPl.rst deleted file mode 100644 index 258536a1cd0c..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-12-17-22-48.bpo-32837.-33QPl.rst +++ /dev/null @@ -1,2 +0,0 @@ -Using the system and place-dependent default encoding for open() is a bad -idea for IDLE's system and location-independent files. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-19-10-56-41.bpo-32874.6pZ9Gv.rst b/Misc/NEWS.d/next/IDLE/2018-02-19-10-56-41.bpo-32874.6pZ9Gv.rst deleted file mode 100644 index 79655315fff4..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-19-10-56-41.bpo-32874.6pZ9Gv.rst +++ /dev/null @@ -1 +0,0 @@ -Add tests for pyparse. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-22-00-09-27.bpo-32905.VlXj0x.rst b/Misc/NEWS.d/next/IDLE/2018-02-22-00-09-27.bpo-32905.VlXj0x.rst deleted file mode 100644 index c9bedd98f2e0..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-22-00-09-27.bpo-32905.VlXj0x.rst +++ /dev/null @@ -1 +0,0 @@ -Remove unused code in pyparse module. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-23-07-32-36.bpo-32916.4MsQ5F.rst b/Misc/NEWS.d/next/IDLE/2018-02-23-07-32-36.bpo-32916.4MsQ5F.rst deleted file mode 100644 index 0832944f1621..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-23-07-32-36.bpo-32916.4MsQ5F.rst +++ /dev/null @@ -1 +0,0 @@ -Change ``str`` to ``code`` in pyparse. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-24-18-20-50.bpo-32940.ZaJ1Rf.rst b/Misc/NEWS.d/next/IDLE/2018-02-24-18-20-50.bpo-32940.ZaJ1Rf.rst deleted file mode 100644 index 958f9522d4f8..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-24-18-20-50.bpo-32940.ZaJ1Rf.rst +++ /dev/null @@ -1 +0,0 @@ -Simplify and rename StringTranslatePseudoMapping in pyparse. diff --git a/Misc/NEWS.d/next/IDLE/2018-03-05-01-29-05.bpo-32984.NGjgT4.rst b/Misc/NEWS.d/next/IDLE/2018-03-05-01-29-05.bpo-32984.NGjgT4.rst deleted file mode 100644 index 15d40b72caaf..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-03-05-01-29-05.bpo-32984.NGjgT4.rst +++ /dev/null @@ -1,7 +0,0 @@ -Set ``__file__`` while running a startup file. Like Python, IDLE optionally -runs one startup file in the Shell window before presenting the first interactive -input prompt. For IDLE, ``-s`` runs a file named in environmental variable - :envvar:`IDLESTARTUP` or :envvar:`PYTHONSTARTUP`; ``-r file`` runs -``file``. Python sets ``__file__`` to the startup file name before running the -file and unsets it before the first prompt. IDLE now does the same when run -normally, without the ``-n`` option. diff --git a/Misc/NEWS.d/next/IDLE/2018-04-02-00-28-13.bpo-33204.NBsuIv.rst b/Misc/NEWS.d/next/IDLE/2018-04-02-00-28-13.bpo-33204.NBsuIv.rst deleted file mode 100644 index 3ae937bab930..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-04-02-00-28-13.bpo-33204.NBsuIv.rst +++ /dev/null @@ -1,3 +0,0 @@ -IDLE: consistently color invalid string prefixes. A 'u' string prefix cannot -be paired with either 'r' or 'f'. Consistently color as much of the prefix, -starting at the right, as is valid. Revise and extend colorizer test. diff --git a/Misc/NEWS.d/next/IDLE/2018-04-29-16-13-02.bpo-21474.bglg-F.rst b/Misc/NEWS.d/next/IDLE/2018-04-29-16-13-02.bpo-21474.bglg-F.rst deleted file mode 100644 index caf640b73b29..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-04-29-16-13-02.bpo-21474.bglg-F.rst +++ /dev/null @@ -1,3 +0,0 @@ -Update word/identifier definition from ascii to unicode. In text and entry -boxes, this affects selection by double-click, movement left/right by -control-left/right, and deletion left/right by control-BACKSPACE/DEL. diff --git a/Misc/NEWS.d/next/IDLE/2018-05-17-19-41-12.bpo-33564.XzHZJe.rst b/Misc/NEWS.d/next/IDLE/2018-05-17-19-41-12.bpo-33564.XzHZJe.rst deleted file mode 100644 index df828485f69e..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-05-17-19-41-12.bpo-33564.XzHZJe.rst +++ /dev/null @@ -1 +0,0 @@ -IDLE's code context now recognizes async as a block opener. diff --git a/Misc/NEWS.d/next/IDLE/2018-05-23-19-51-07.bpo-33628.sLlFLO.rst b/Misc/NEWS.d/next/IDLE/2018-05-23-19-51-07.bpo-33628.sLlFLO.rst deleted file mode 100644 index f0b13a21c346..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-05-23-19-51-07.bpo-33628.sLlFLO.rst +++ /dev/null @@ -1,2 +0,0 @@ -IDLE: Cleanup codecontext.py and its test. - diff --git a/Misc/NEWS.d/next/IDLE/2018-05-24-20-42-44.bpo-33642.J0VQbS.rst b/Misc/NEWS.d/next/IDLE/2018-05-24-20-42-44.bpo-33642.J0VQbS.rst deleted file mode 100644 index b1d0763a8a9f..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-05-24-20-42-44.bpo-33642.J0VQbS.rst +++ /dev/null @@ -1,2 +0,0 @@ -Display up to maxlines non-blank lines for Code Context. -If there is no current context, show a single blank line. diff --git a/Misc/NEWS.d/next/IDLE/2018-05-29-07-14-37.bpo-33679.MgX_Ui.rst b/Misc/NEWS.d/next/IDLE/2018-05-29-07-14-37.bpo-33679.MgX_Ui.rst deleted file mode 100644 index 2d52fa86490d..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-05-29-07-14-37.bpo-33679.MgX_Ui.rst +++ /dev/null @@ -1,3 +0,0 @@ -Enable theme-specific color configuration for Code Context. -Use the Highlights tab to see the setting for built-in themes -or add settings to custom themes. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-03-09-13-28.bpo-33664.PZzQyL.rst b/Misc/NEWS.d/next/IDLE/2018-06-03-09-13-28.bpo-33664.PZzQyL.rst deleted file mode 100644 index 48f602f641c9..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-03-09-13-28.bpo-33664.PZzQyL.rst +++ /dev/null @@ -1,5 +0,0 @@ -Scroll IDLE editor text by lines. -Previously, the mouse wheel and scrollbar slider moved text by a fixed -number of pixels, resulting in partial lines at the top of the editor -box. The change also applies to the shell and grep output windows, -but not to read-only text views. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-03-20-12-57.bpo-33763.URiFlE.rst b/Misc/NEWS.d/next/IDLE/2018-06-03-20-12-57.bpo-33763.URiFlE.rst deleted file mode 100644 index 187ef650cb73..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-03-20-12-57.bpo-33763.URiFlE.rst +++ /dev/null @@ -1 +0,0 @@ -IDLE: Use read-only text widget for code context instead of label widget. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-04-19-23-11.bpo-33768.I_2qpV.rst b/Misc/NEWS.d/next/IDLE/2018-06-04-19-23-11.bpo-33768.I_2qpV.rst deleted file mode 100644 index 689aede15ac6..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-04-19-23-11.bpo-33768.I_2qpV.rst +++ /dev/null @@ -1 +0,0 @@ -Clicking on a context line moves that line to the top of the editor window. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-10-17-59-36.bpo-33656.60ZqJS.rst b/Misc/NEWS.d/next/IDLE/2018-06-10-17-59-36.bpo-33656.60ZqJS.rst deleted file mode 100644 index e0c51b2c0f9e..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-10-17-59-36.bpo-33656.60ZqJS.rst +++ /dev/null @@ -1,4 +0,0 @@ -On Windows, add API call saying that tk scales for DPI. On Windows -8.1+ or 10, with DPI compatibility properties of the Python binary -unchanged, and a monitor resolution greater than 96 DPI, this should -make text and lines sharper. It should otherwise have no effect. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-14-11-35-50.bpo-33855.XL230W.rst b/Misc/NEWS.d/next/IDLE/2018-06-14-11-35-50.bpo-33855.XL230W.rst deleted file mode 100644 index aaf4f8fe2b0a..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-14-11-35-50.bpo-33855.XL230W.rst +++ /dev/null @@ -1,2 +0,0 @@ -Minimally test all IDLE modules. Add missing files, import module, -instantiate classes, and check coverage. Check existing files. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-14-13-23-55.bpo-33839.ZlJzHa.rst b/Misc/NEWS.d/next/IDLE/2018-06-14-13-23-55.bpo-33839.ZlJzHa.rst deleted file mode 100644 index c0c4d9046a59..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-14-13-23-55.bpo-33839.ZlJzHa.rst +++ /dev/null @@ -1 +0,0 @@ -IDLE: refactor ToolTip and CallTip and add documentation and tests diff --git a/Misc/NEWS.d/next/IDLE/2018-06-16-21-54-45.bpo-33856.TH8WHU.rst b/Misc/NEWS.d/next/IDLE/2018-06-16-21-54-45.bpo-33856.TH8WHU.rst deleted file mode 100644 index 058f96e681c2..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-16-21-54-45.bpo-33856.TH8WHU.rst +++ /dev/null @@ -1 +0,0 @@ -Add "help" in the welcome message of IDLE diff --git a/Misc/NEWS.d/next/IDLE/2018-06-19-22-21-27.bpo-33907.z-_B3N.rst b/Misc/NEWS.d/next/IDLE/2018-06-19-22-21-27.bpo-33907.z-_B3N.rst deleted file mode 100644 index b4741060bb21..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-19-22-21-27.bpo-33907.z-_B3N.rst +++ /dev/null @@ -1,3 +0,0 @@ -For consistency and clarity, rename an IDLE module and classes. -Module calltips and its class CallTips are now calltip and Calltip. -In module calltip_w, class CallTip is now CalltipWindow. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-20-12-40-54.bpo-33904.qm0eCu.rst b/Misc/NEWS.d/next/IDLE/2018-06-20-12-40-54.bpo-33904.qm0eCu.rst deleted file mode 100644 index efed2379b4bf..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-20-12-40-54.bpo-33904.qm0eCu.rst +++ /dev/null @@ -1 +0,0 @@ -IDLE: In rstrip, rename class RstripExtension as Rstrip diff --git a/Misc/NEWS.d/next/IDLE/2018-06-20-16-27-48.bpo-33917.ZXHs8x.rst b/Misc/NEWS.d/next/IDLE/2018-06-20-16-27-48.bpo-33917.ZXHs8x.rst deleted file mode 100644 index fe62d81461cb..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-20-16-27-48.bpo-33917.ZXHs8x.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix and document idlelib/idle_test/template.py. The revised file compiles, -runs, and tests OK. idle_test/README.txt explains how to use it to create -new IDLE test files. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-20-19-16-24.bpo-33906.a1lXq0.rst b/Misc/NEWS.d/next/IDLE/2018-06-20-19-16-24.bpo-33906.a1lXq0.rst deleted file mode 100644 index 141122c3128b..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-20-19-16-24.bpo-33906.a1lXq0.rst +++ /dev/null @@ -1,2 +0,0 @@ -Rename idlelib.windows as window Match Window on the main menu and remove -last plural module name. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-20-22-14-07.bpo-33924.6Rz1wt.rst b/Misc/NEWS.d/next/IDLE/2018-06-20-22-14-07.bpo-33924.6Rz1wt.rst deleted file mode 100644 index 03f9efd43802..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-20-22-14-07.bpo-33924.6Rz1wt.rst +++ /dev/null @@ -1,2 +0,0 @@ -Change mainmenu.menudefs key 'windows' to 'window'. Every other menudef key -is lowercase version of main menu entry. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-21-20-35-33.bpo-33905.W2mhiY.rst b/Misc/NEWS.d/next/IDLE/2018-06-21-20-35-33.bpo-33905.W2mhiY.rst deleted file mode 100644 index c671e4791da4..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-21-20-35-33.bpo-33905.W2mhiY.rst +++ /dev/null @@ -1 +0,0 @@ -Add test for idlelib.stackview.StackBrowser. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-26-22-53-14.bpo-33975.Ow7alv.rst b/Misc/NEWS.d/next/IDLE/2018-06-26-22-53-14.bpo-33975.Ow7alv.rst deleted file mode 100644 index 03f6a1957650..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-26-22-53-14.bpo-33975.Ow7alv.rst +++ /dev/null @@ -1,3 +0,0 @@ -Avoid small type when running htests. Since part of the purpose of -human-viewed tests is to determine that widgets look right, it is important -that they look the same for testing as when running IDLE. diff --git a/Misc/NEWS.d/next/IDLE/2018-08-01-23-25-38.bpo-34120.HgsIz-.rst b/Misc/NEWS.d/next/IDLE/2018-08-01-23-25-38.bpo-34120.HgsIz-.rst deleted file mode 100644 index f9954f7c1af0..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-08-01-23-25-38.bpo-34120.HgsIz-.rst +++ /dev/null @@ -1 +0,0 @@ -Fix unresponsiveness after closing certain windows and dialogs. \ No newline at end of file diff --git a/Misc/NEWS.d/next/IDLE/2018-08-02-22-16-42.bpo-34275.Iu0d7t.rst b/Misc/NEWS.d/next/IDLE/2018-08-02-22-16-42.bpo-34275.Iu0d7t.rst deleted file mode 100644 index d7eba7ad3cf4..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-08-02-22-16-42.bpo-34275.Iu0d7t.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make IDLE calltips always visible on Mac. Some MacOS-tk combinations need -.update_idletasks(). Patch by Kevin Walzer. diff --git a/Misc/NEWS.d/next/IDLE/2018-08-05-15-49-55.bpo-34047.LGKsIm.rst b/Misc/NEWS.d/next/IDLE/2018-08-05-15-49-55.bpo-34047.LGKsIm.rst deleted file mode 100644 index a247908ba844..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-08-05-15-49-55.bpo-34047.LGKsIm.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed mousewheel scrolling direction on macOS. diff --git a/Misc/NEWS.d/next/IDLE/2018-08-13-16-31-24.bpo-1529353.wXfQJk.rst b/Misc/NEWS.d/next/IDLE/2018-08-13-16-31-24.bpo-1529353.wXfQJk.rst deleted file mode 100644 index cae4af8f2e23..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-08-13-16-31-24.bpo-1529353.wXfQJk.rst +++ /dev/null @@ -1,3 +0,0 @@ -Enable "squeezing" of long outputs in the shell, to avoid performance -degradation and to clean up the history without losing it. Squeezed outputs -may be copied, viewed in a separate window, and "unsqueezed". diff --git a/Misc/NEWS.d/next/IDLE/2018-09-22-20-25-07.bpo-34548.7pBzjg.rst b/Misc/NEWS.d/next/IDLE/2018-09-22-20-25-07.bpo-34548.7pBzjg.rst deleted file mode 100644 index 237c0c788c2c..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-09-22-20-25-07.bpo-34548.7pBzjg.rst +++ /dev/null @@ -1 +0,0 @@ -Use configured color theme for read-only text views. diff --git a/Misc/NEWS.d/next/IDLE/2018-10-28-00-08-42.bpo-35087.G7gx2-.rst b/Misc/NEWS.d/next/IDLE/2018-10-28-00-08-42.bpo-35087.G7gx2-.rst deleted file mode 100644 index 0fd26699a96c..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-10-28-00-08-42.bpo-35087.G7gx2-.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update idlelib help files for the current doc build. The main change is the -elimination of chapter-section numbers. diff --git a/Misc/NEWS.d/next/IDLE/2018-10-28-00-54-32.bpo-35088.r1lJZd.rst b/Misc/NEWS.d/next/IDLE/2018-10-28-00-54-32.bpo-35088.r1lJZd.rst deleted file mode 100644 index 993ff51d74e5..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-10-28-00-54-32.bpo-35088.r1lJZd.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update idlelib.help.copy_string docstring. We now use git and backporting -instead of hg and forward merging. diff --git a/Misc/NEWS.d/next/IDLE/2018-10-28-15-53-51.bpo-35093.cH-tli.rst b/Misc/NEWS.d/next/IDLE/2018-10-28-15-53-51.bpo-35093.cH-tli.rst deleted file mode 100644 index a330b990761a..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-10-28-15-53-51.bpo-35093.cH-tli.rst +++ /dev/null @@ -1,2 +0,0 @@ -Document the IDLE document viewer in the IDLE doc. Add a paragraph in "Help -and preferences", "Help sources" subsection. diff --git a/Misc/NEWS.d/next/IDLE/2018-10-28-20-17-14.bpo-35097.07tm66.rst b/Misc/NEWS.d/next/IDLE/2018-10-28-20-17-14.bpo-35097.07tm66.rst deleted file mode 100644 index a1e58ee5983c..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-10-28-20-17-14.bpo-35097.07tm66.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add IDLE doc subsection explaining editor windows. Topics include opening, -title and status bar, .py* extension, and running. diff --git a/Misc/NEWS.d/next/IDLE/2018-11-05-20-43-08.bpo-35099.SVOZXC.rst b/Misc/NEWS.d/next/IDLE/2018-11-05-20-43-08.bpo-35099.SVOZXC.rst deleted file mode 100644 index 1459f20cb78f..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-11-05-20-43-08.bpo-35099.SVOZXC.rst +++ /dev/null @@ -1,3 +0,0 @@ -Improve the doc about IDLE running user code. The section is renamed from -"IDLE -- console differences" is renamed "Running user code". -It mostly covers the implications of using custom sys.stdxxx objects. diff --git a/Misc/NEWS.d/next/IDLE/2018-11-05-23-23-00.bpo-23220.H3SAWE.rst b/Misc/NEWS.d/next/IDLE/2018-11-05-23-23-00.bpo-23220.H3SAWE.rst deleted file mode 100644 index 77c71268dddd..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-11-05-23-23-00.bpo-23220.H3SAWE.rst +++ /dev/null @@ -1 +0,0 @@ -Explain how IDLE's Shell displays output. diff --git a/Misc/NEWS.d/next/IDLE/2018-11-06-23-10-54.bpo-33000.pQasCt.rst b/Misc/NEWS.d/next/IDLE/2018-11-06-23-10-54.bpo-33000.pQasCt.rst deleted file mode 100644 index c6ba9e4669d5..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-11-06-23-10-54.bpo-33000.pQasCt.rst +++ /dev/null @@ -1,2 +0,0 @@ -Document that IDLE's shell has no line limit. A program that runs -indefinitely can overfill memory. diff --git a/Misc/NEWS.d/next/IDLE/2018-11-10-09-10-54.bpo-35202.TeJJrt.rst b/Misc/NEWS.d/next/IDLE/2018-11-10-09-10-54.bpo-35202.TeJJrt.rst deleted file mode 100644 index 1824536f3db1..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-11-10-09-10-54.bpo-35202.TeJJrt.rst +++ /dev/null @@ -1 +0,0 @@ -Remove unused imports from lib/idlelib diff --git a/Misc/NEWS.d/next/IDLE/2018-11-10-21-27-25.bpo-34864.Ci-G2q.rst b/Misc/NEWS.d/next/IDLE/2018-11-10-21-27-25.bpo-34864.Ci-G2q.rst deleted file mode 100644 index fb0083e337a5..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-11-10-21-27-25.bpo-34864.Ci-G2q.rst +++ /dev/null @@ -1,3 +0,0 @@ -Document two IDLE on MacOS issues. The System Preferences Dock "prefer tabs -always" setting disables some IDLE features. Menus are a bit different than -as described for Windows and Linux. diff --git a/Misc/NEWS.d/next/IDLE/2018-11-11-17-13-50.bpo-34864.cw0PvO.rst b/Misc/NEWS.d/next/IDLE/2018-11-11-17-13-50.bpo-34864.cw0PvO.rst deleted file mode 100644 index 8d2b61d599ff..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-11-11-17-13-50.bpo-34864.cw0PvO.rst +++ /dev/null @@ -1,2 +0,0 @@ -On macOS, warn if the system preference "Prefer tabs when opening documents" -is set to "Always". \ No newline at end of file diff --git a/Misc/NEWS.d/next/IDLE/2018-11-12-00-20-01.bpo-35213.cqNgzT.rst b/Misc/NEWS.d/next/IDLE/2018-11-12-00-20-01.bpo-35213.cqNgzT.rst deleted file mode 100644 index 9d0e4e1220bb..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-11-12-00-20-01.bpo-35213.cqNgzT.rst +++ /dev/null @@ -1 +0,0 @@ -Where appropriate, use 'macOS' in idlelib. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-18-13-56-31.bpo-22703.UlsjKQ.rst b/Misc/NEWS.d/next/IDLE/2018-12-18-13-56-31.bpo-22703.UlsjKQ.rst deleted file mode 100644 index d1129c4f155c..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-18-13-56-31.bpo-22703.UlsjKQ.rst +++ /dev/null @@ -1,3 +0,0 @@ -The Code Context menu label now toggles between Show/Hide Code Context. -The Zoom Height menu now toggles between Zoom/Restore Height. -Zoom Height has moved from the Window menu to the Options menu. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-20-00-14-15.bpo-35521.x32BRn.rst b/Misc/NEWS.d/next/IDLE/2018-12-20-00-14-15.bpo-35521.x32BRn.rst deleted file mode 100644 index 120de7f6c844..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-20-00-14-15.bpo-35521.x32BRn.rst +++ /dev/null @@ -1,2 +0,0 @@ -Document the IDLE editor code context feature. Add some internal references -within the IDLE doc. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-23-17-42-11.bpo-35208.J5NOg7.rst b/Misc/NEWS.d/next/IDLE/2018-12-23-17-42-11.bpo-35208.J5NOg7.rst deleted file mode 100644 index d47806f62f46..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-23-17-42-11.bpo-35208.J5NOg7.rst +++ /dev/null @@ -1 +0,0 @@ -Squeezer now properly counts wrapped lines before newlines. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-26-13-53-34.bpo-28097.95I9NT.rst b/Misc/NEWS.d/next/IDLE/2018-12-26-13-53-34.bpo-28097.95I9NT.rst deleted file mode 100644 index 83163cf736fe..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-26-13-53-34.bpo-28097.95I9NT.rst +++ /dev/null @@ -1 +0,0 @@ -Add Previous/Next History entries to Shell menu. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-27-15-29-11.bpo-35598.FWOOm8.rst b/Misc/NEWS.d/next/IDLE/2018-12-27-15-29-11.bpo-35598.FWOOm8.rst deleted file mode 100644 index d81cf2c44162..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-27-15-29-11.bpo-35598.FWOOm8.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update config_key: use PEP 8 names and ttk widgets, -make some objects global, and add tests. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-27-17-46-42.bpo-35196.9E-xUh.rst b/Misc/NEWS.d/next/IDLE/2018-12-27-17-46-42.bpo-35196.9E-xUh.rst deleted file mode 100644 index ee90d76010d9..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-27-17-46-42.bpo-35196.9E-xUh.rst +++ /dev/null @@ -1 +0,0 @@ -Speed up squeezer line counting. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-28-01-19-20.bpo-35591.SFpDj2.rst b/Misc/NEWS.d/next/IDLE/2018-12-28-01-19-20.bpo-35591.SFpDj2.rst deleted file mode 100644 index 33f67a4cfe6f..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-28-01-19-20.bpo-35591.SFpDj2.rst +++ /dev/null @@ -1 +0,0 @@ -Find Selection now works when selection not found. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-28-17-16-33.bpo-34055.TmmpzR.rst b/Misc/NEWS.d/next/IDLE/2018-12-28-17-16-33.bpo-34055.TmmpzR.rst deleted file mode 100644 index 7e475fbfa9f3..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-28-17-16-33.bpo-34055.TmmpzR.rst +++ /dev/null @@ -1 +0,0 @@ -Fix erroneous 'smart' indents and newlines in IDLE Shell. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-31-17-04-18.bpo-33987.fD92up.rst b/Misc/NEWS.d/next/IDLE/2018-12-31-17-04-18.bpo-33987.fD92up.rst deleted file mode 100644 index 289a65cf532c..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-31-17-04-18.bpo-33987.fD92up.rst +++ /dev/null @@ -1 +0,0 @@ -Use ttk Frame for ttk widgets. diff --git a/Misc/NEWS.d/next/IDLE/2019-01-02-22-15-01.bpo-35641.QEaANl.rst b/Misc/NEWS.d/next/IDLE/2019-01-02-22-15-01.bpo-35641.QEaANl.rst deleted file mode 100644 index 5abba690be48..000000000000 --- a/Misc/NEWS.d/next/IDLE/2019-01-02-22-15-01.bpo-35641.QEaANl.rst +++ /dev/null @@ -1 +0,0 @@ -Proper format `calltip` when the function has no docstring. diff --git a/Misc/NEWS.d/next/IDLE/2019-01-04-19-14-29.bpo-35660.hMxI7N.rst b/Misc/NEWS.d/next/IDLE/2019-01-04-19-14-29.bpo-35660.hMxI7N.rst deleted file mode 100644 index 1ad83fe29e14..000000000000 --- a/Misc/NEWS.d/next/IDLE/2019-01-04-19-14-29.bpo-35660.hMxI7N.rst +++ /dev/null @@ -1 +0,0 @@ -Fix imports in idlelib.window. diff --git a/Misc/NEWS.d/next/IDLE/2019-01-18-01-24-23.bpo-35769.GqsB34.rst b/Misc/NEWS.d/next/IDLE/2019-01-18-01-24-23.bpo-35769.GqsB34.rst deleted file mode 100644 index 79003a984a9f..000000000000 --- a/Misc/NEWS.d/next/IDLE/2019-01-18-01-24-23.bpo-35769.GqsB34.rst +++ /dev/null @@ -1 +0,0 @@ -Change IDLE's new file name from 'Untitled' to 'untitled' diff --git a/Misc/NEWS.d/next/IDLE/2019-01-18-13-04-30.bpo-35770.2LxJGu.rst b/Misc/NEWS.d/next/IDLE/2019-01-18-13-04-30.bpo-35770.2LxJGu.rst deleted file mode 100644 index 89e4bdef83ef..000000000000 --- a/Misc/NEWS.d/next/IDLE/2019-01-18-13-04-30.bpo-35770.2LxJGu.rst +++ /dev/null @@ -1,3 +0,0 @@ -IDLE macosx deletes Options => Configure IDLE. It previously deleted Window -=> Zoom Height by mistake. (Zoom Height is now on the Options menu). On -Mac, the settings dialog is accessed via Preferences on the IDLE menu. diff --git a/Misc/NEWS.d/next/Library/2017-08-24-17-55-39.bpo-29456.XaB3MP.rst b/Misc/NEWS.d/next/Library/2017-08-24-17-55-39.bpo-29456.XaB3MP.rst deleted file mode 100644 index 9b30bf654bd0..000000000000 --- a/Misc/NEWS.d/next/Library/2017-08-24-17-55-39.bpo-29456.XaB3MP.rst +++ /dev/null @@ -1 +0,0 @@ -Fix bugs in hangul normalization: u1176, u11a7 and u11c3 diff --git a/Misc/NEWS.d/next/Library/2017-09-19-12-38-31.bpo-31508.pDsFJl.rst b/Misc/NEWS.d/next/Library/2017-09-19-12-38-31.bpo-31508.pDsFJl.rst deleted file mode 100644 index b3d49ee3e9a7..000000000000 --- a/Misc/NEWS.d/next/Library/2017-09-19-12-38-31.bpo-31508.pDsFJl.rst +++ /dev/null @@ -1,3 +0,0 @@ -Removed support of arguments in `tkinter.ttk.Treeview.selection`. It was -deprecated in 3.6. Use specialized methods like `selection_set` for -changing the selection. diff --git a/Misc/NEWS.d/next/Library/2017-09-29-16-40-38.bpo-16865.l-f6I_.rst b/Misc/NEWS.d/next/Library/2017-09-29-16-40-38.bpo-16865.l-f6I_.rst deleted file mode 100644 index afaff736bf1c..000000000000 --- a/Misc/NEWS.d/next/Library/2017-09-29-16-40-38.bpo-16865.l-f6I_.rst +++ /dev/null @@ -1 +0,0 @@ -Support arrays >=2GiB in :mod:`ctypes`. Patch by Segev Finer. diff --git a/Misc/NEWS.d/next/Library/2017-10-05-20-41-48.bpo-27645.1Y_Wag.rst b/Misc/NEWS.d/next/Library/2017-10-05-20-41-48.bpo-27645.1Y_Wag.rst deleted file mode 100644 index c4b7185614a5..000000000000 --- a/Misc/NEWS.d/next/Library/2017-10-05-20-41-48.bpo-27645.1Y_Wag.rst +++ /dev/null @@ -1,3 +0,0 @@ -:class:`sqlite3.Connection` now exposes a :class:`~sqlite3.Connection.backup` -method, if the underlying SQLite library is at version 3.6.11 -or higher. Patch by Lele Gaifax. diff --git a/Misc/NEWS.d/next/Library/2017-10-12-22-39-55.bpo-22005.lGP-sc.rst b/Misc/NEWS.d/next/Library/2017-10-12-22-39-55.bpo-22005.lGP-sc.rst deleted file mode 100644 index 951098d0a7a3..000000000000 --- a/Misc/NEWS.d/next/Library/2017-10-12-22-39-55.bpo-22005.lGP-sc.rst +++ /dev/null @@ -1,3 +0,0 @@ -Implemented unpickling instances of :class:`~datetime.datetime`, -:class:`~datetime.date` and :class:`~datetime.time` pickled by Python 2. -``encoding='latin1'`` should be used for successful decoding. diff --git a/Misc/NEWS.d/next/Library/2017-10-24-10-18-35.bpo-31425.1lgw47.rst b/Misc/NEWS.d/next/Library/2017-10-24-10-18-35.bpo-31425.1lgw47.rst deleted file mode 100644 index 26294a9a4765..000000000000 --- a/Misc/NEWS.d/next/Library/2017-10-24-10-18-35.bpo-31425.1lgw47.rst +++ /dev/null @@ -1,3 +0,0 @@ -Add support for sockets of the AF_QIPCRTR address family, supported by the -Linux kernel. This is used to communicate with services, such as GPS or -radio, running on Qualcomm devices. Patch by Bjorn Andersson. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2017-10-29-10-37-55.bpo-31608.wkp8Nw.rst b/Misc/NEWS.d/next/Library/2017-10-29-10-37-55.bpo-31608.wkp8Nw.rst deleted file mode 100644 index d657a8697361..000000000000 --- a/Misc/NEWS.d/next/Library/2017-10-29-10-37-55.bpo-31608.wkp8Nw.rst +++ /dev/null @@ -1,2 +0,0 @@ -Raise a ``TypeError`` instead of crashing if a ``collections.deque`` subclass -returns a non-deque from ``__new__``. Patch by Oren Milman. diff --git a/Misc/NEWS.d/next/Library/2017-10-31.bpo-31908.g4xh8x.rst b/Misc/NEWS.d/next/Library/2017-10-31.bpo-31908.g4xh8x.rst deleted file mode 100644 index 700bc690764f..000000000000 --- a/Misc/NEWS.d/next/Library/2017-10-31.bpo-31908.g4xh8x.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix output of cover files for ``trace`` module command-line tool. -Previously emitted cover files only when ``--missing`` option was used. -Patch by Michael Selik. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2017-11-01-15-44-48.bpo-31680.yO6oSC.rst b/Misc/NEWS.d/next/Library/2017-11-01-15-44-48.bpo-31680.yO6oSC.rst deleted file mode 100644 index 3cf33ac9bd63..000000000000 --- a/Misc/NEWS.d/next/Library/2017-11-01-15-44-48.bpo-31680.yO6oSC.rst +++ /dev/null @@ -1 +0,0 @@ -Added :data:`curses.ncurses_version`. diff --git a/Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ7.rst b/Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ7.rst deleted file mode 100644 index 9c895c53de12..000000000000 --- a/Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ7.rst +++ /dev/null @@ -1 +0,0 @@ -The ZipFile class now recurses directories in a reproducible way. diff --git a/Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ8.rst b/Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ8.rst deleted file mode 100644 index a622e7ed6e5d..000000000000 --- a/Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ8.rst +++ /dev/null @@ -1 +0,0 @@ -The TarFile class now recurses directories in a reproducible way. diff --git a/Misc/NEWS.d/next/Library/2017-11-28-10-23-13.bpo-32147.PI2k1Y.rst b/Misc/NEWS.d/next/Library/2017-11-28-10-23-13.bpo-32147.PI2k1Y.rst deleted file mode 100644 index e02a97c5e9e6..000000000000 --- a/Misc/NEWS.d/next/Library/2017-11-28-10-23-13.bpo-32147.PI2k1Y.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`binascii.unhexlify` is now up to 2 times faster. -Patch by Sergey Fedoseev. diff --git a/Misc/NEWS.d/next/Library/2017-12-06-10-10-10.bpo-32221.ideco_.rst b/Misc/NEWS.d/next/Library/2017-12-06-10-10-10.bpo-32221.ideco_.rst deleted file mode 100644 index b45bb1b5417c..000000000000 --- a/Misc/NEWS.d/next/Library/2017-12-06-10-10-10.bpo-32221.ideco_.rst +++ /dev/null @@ -1,4 +0,0 @@ -Various functions returning tuple containing IPv6 addresses now omit ``%scope`` -part since the same information is already encoded in *scopeid* tuple item. -Especially this speeds up :func:`socket.recvfrom` when it receives multicast -packet since useless resolving of network interface name is omitted. diff --git a/Misc/NEWS.d/next/Library/2017-12-16-11-40-52.bpo-29877.SfWhmz.rst b/Misc/NEWS.d/next/Library/2017-12-16-11-40-52.bpo-29877.SfWhmz.rst deleted file mode 100644 index cc09533b7124..000000000000 --- a/Misc/NEWS.d/next/Library/2017-12-16-11-40-52.bpo-29877.SfWhmz.rst +++ /dev/null @@ -1,2 +0,0 @@ -compileall: import ProcessPoolExecutor only when needed, preventing hangs on -low resource platforms diff --git a/Misc/NEWS.d/next/Library/2017-12-27-21-55-19.bpo-31639.l3avDJ.rst b/Misc/NEWS.d/next/Library/2017-12-27-21-55-19.bpo-31639.l3avDJ.rst deleted file mode 100644 index 741b276a3022..000000000000 --- a/Misc/NEWS.d/next/Library/2017-12-27-21-55-19.bpo-31639.l3avDJ.rst +++ /dev/null @@ -1,2 +0,0 @@ -http.server now exposes a ThreadingHTTPServer class and uses it when the -module is run with ``-m`` to cope with web browsers pre-opening sockets. diff --git a/Misc/NEWS.d/next/Library/2018-01-01-00-16-59.bpo-8525.Dq8s63.rst b/Misc/NEWS.d/next/Library/2018-01-01-00-16-59.bpo-8525.Dq8s63.rst deleted file mode 100644 index d8af500ab63c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-01-01-00-16-59.bpo-8525.Dq8s63.rst +++ /dev/null @@ -1,4 +0,0 @@ -help() on a type now displays builtin subclasses. This is intended primarily -to help with notification of more specific exception subclasses. - -Patch by Sanyam Khurana. diff --git a/Misc/NEWS.d/next/Library/2018-01-07-17-43-10.bpo-32512.flC-dE.rst b/Misc/NEWS.d/next/Library/2018-01-07-17-43-10.bpo-32512.flC-dE.rst deleted file mode 100644 index 0a7763daffad..000000000000 --- a/Misc/NEWS.d/next/Library/2018-01-07-17-43-10.bpo-32512.flC-dE.rst +++ /dev/null @@ -1,2 +0,0 @@ -:mod:`profile` CLI accepts `-m module_name` as an alternative to -script path. diff --git a/Misc/NEWS.d/next/Library/2018-01-18-13-09-00.bpo-32585.qpeijr.rst b/Misc/NEWS.d/next/Library/2018-01-18-13-09-00.bpo-32585.qpeijr.rst deleted file mode 100644 index 0a602045bacd..000000000000 --- a/Misc/NEWS.d/next/Library/2018-01-18-13-09-00.bpo-32585.qpeijr.rst +++ /dev/null @@ -1 +0,0 @@ -Add Ttk spinbox widget to :mod:`tkinter.ttk`. Patch by Alan D Moore. diff --git a/Misc/NEWS.d/next/Library/2018-01-18-23-34-17.bpo-31848.M2cldy.rst b/Misc/NEWS.d/next/Library/2018-01-18-23-34-17.bpo-31848.M2cldy.rst deleted file mode 100644 index c8e61acb0b06..000000000000 --- a/Misc/NEWS.d/next/Library/2018-01-18-23-34-17.bpo-31848.M2cldy.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix the error handling in Aifc_read.initfp() when the SSND chunk is not found. -Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Library/2018-01-20-23-17-25.bpo-24334.GZuQLv.rst b/Misc/NEWS.d/next/Library/2018-01-20-23-17-25.bpo-24334.GZuQLv.rst deleted file mode 100644 index 2b4877fad7e1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-01-20-23-17-25.bpo-24334.GZuQLv.rst +++ /dev/null @@ -1,4 +0,0 @@ -Internal implementation details of ssl module were cleaned up. The SSLSocket -has one less layer of indirection. Owner and session information are now -handled by the SSLSocket and SSLObject constructor. Channel binding -implementation has been simplified. diff --git a/Misc/NEWS.d/next/Library/2018-01-21-15-01-50.bpo-31453.cZiZBe.rst b/Misc/NEWS.d/next/Library/2018-01-21-15-01-50.bpo-31453.cZiZBe.rst deleted file mode 100644 index 6d43dfd8207d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-01-21-15-01-50.bpo-31453.cZiZBe.rst +++ /dev/null @@ -1,4 +0,0 @@ -Add TLSVersion constants and SSLContext.maximum_version / minimum_version -attributes. The new API wraps OpenSSL 1.1 -https://www.openssl.org/docs/man1.1.0/ssl/SSL_CTX_set_min_proto_version.html -feature. diff --git a/Misc/NEWS.d/next/Library/2018-01-30-17-46-18.bpo-32727.aHVsRC.rst b/Misc/NEWS.d/next/Library/2018-01-30-17-46-18.bpo-32727.aHVsRC.rst deleted file mode 100644 index 22c219636de2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-01-30-17-46-18.bpo-32727.aHVsRC.rst +++ /dev/null @@ -1 +0,0 @@ -Do not include name field in SMTP envelope from address. Patch by St?phane Wirtel diff --git a/Misc/NEWS.d/next/Library/2018-02-01-01-34-47.bpo-32734.gCV9AD.rst b/Misc/NEWS.d/next/Library/2018-02-01-01-34-47.bpo-32734.gCV9AD.rst deleted file mode 100644 index 14d4bbdade75..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-01-01-34-47.bpo-32734.gCV9AD.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed ``asyncio.Lock()`` safety issue which allowed acquiring and locking -the same lock multiple times, without it being free. Patch by Bar Harel. diff --git a/Misc/NEWS.d/next/Library/2018-02-01-15-53-35.bpo-32691.VLWVTq.rst b/Misc/NEWS.d/next/Library/2018-02-01-15-53-35.bpo-32691.VLWVTq.rst deleted file mode 100644 index 93f898e9c689..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-01-15-53-35.bpo-32691.VLWVTq.rst +++ /dev/null @@ -1 +0,0 @@ -Use mod_spec.parent when running modules with pdb diff --git a/Misc/NEWS.d/next/Library/2018-02-01-17-54-08.bpo-32741.KUvOPL.rst b/Misc/NEWS.d/next/Library/2018-02-01-17-54-08.bpo-32741.KUvOPL.rst deleted file mode 100644 index 651e7666157a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-01-17-54-08.bpo-32741.KUvOPL.rst +++ /dev/null @@ -1 +0,0 @@ -Implement ``asyncio.TimerHandle.when()`` method. diff --git a/Misc/NEWS.d/next/Library/2018-02-02-17-21-24.bpo-32749.u5scIn.rst b/Misc/NEWS.d/next/Library/2018-02-02-17-21-24.bpo-32749.u5scIn.rst deleted file mode 100644 index 9665ff1f8ec8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-02-17-21-24.bpo-32749.u5scIn.rst +++ /dev/null @@ -1,3 +0,0 @@ -A :mod:`dbm.dumb` database opened with flags 'r' is now read-only. -:func:`dbm.dumb.open` with flags 'r' and 'w' no longer creates a database if -it does not exist. diff --git a/Misc/NEWS.d/next/Library/2018-02-05-13-31-42.bpo-32647.ktmfR_.rst b/Misc/NEWS.d/next/Library/2018-02-05-13-31-42.bpo-32647.ktmfR_.rst deleted file mode 100644 index 04fc0247bcde..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-05-13-31-42.bpo-32647.ktmfR_.rst +++ /dev/null @@ -1,2 +0,0 @@ -The ctypes module used to depend on indirect linking for dlopen. The shared -extension is now explicitly linked against libdl on platforms with dl. diff --git a/Misc/NEWS.d/next/Library/2018-02-05-21-28-28.bpo-32777.C-wIXF.rst b/Misc/NEWS.d/next/Library/2018-02-05-21-28-28.bpo-32777.C-wIXF.rst deleted file mode 100644 index d5d7d7b27dc7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-05-21-28-28.bpo-32777.C-wIXF.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a rare but potential pre-exec child process deadlock in subprocess on -POSIX systems when marking file descriptors inheritable on exec in the child -process. This bug appears to have been introduced in 3.4. diff --git a/Misc/NEWS.d/next/Library/2018-02-06-17-58-15.bpo-32622.AE0Jz7.rst b/Misc/NEWS.d/next/Library/2018-02-06-17-58-15.bpo-32622.AE0Jz7.rst deleted file mode 100644 index 456a6dc55959..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-06-17-58-15.bpo-32622.AE0Jz7.rst +++ /dev/null @@ -1 +0,0 @@ -Implement native fast sendfile for Windows proactor event loop. diff --git a/Misc/NEWS.d/next/Library/2018-02-07-19-12-10.bpo-32775.-T77_c.rst b/Misc/NEWS.d/next/Library/2018-02-07-19-12-10.bpo-32775.-T77_c.rst deleted file mode 100644 index ed563c17fdc8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-07-19-12-10.bpo-32775.-T77_c.rst +++ /dev/null @@ -1,5 +0,0 @@ -:func:`fnmatch.translate()` no longer produces patterns which contain set -operations. Sets starting with '[' or containing '--', '&&', '~~' or '||' -will be interpreted differently in regular expressions in future versions. -Currently they emit warnings. fnmatch.translate() now avoids producing -patterns containing such sets by accident. diff --git a/Misc/NEWS.d/next/Library/2018-02-08-00-47-07.bpo-32792.NtyDb4.rst b/Misc/NEWS.d/next/Library/2018-02-08-00-47-07.bpo-32792.NtyDb4.rst deleted file mode 100644 index 1f7df62cc3e1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-08-00-47-07.bpo-32792.NtyDb4.rst +++ /dev/null @@ -1 +0,0 @@ -collections.ChainMap() preserves the order of the underlying mappings. diff --git a/Misc/NEWS.d/next/Library/2018-02-08-18-59-11.bpo-30688.zBh4TH.rst b/Misc/NEWS.d/next/Library/2018-02-08-18-59-11.bpo-30688.zBh4TH.rst deleted file mode 100644 index 7d31680d651a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-08-18-59-11.bpo-30688.zBh4TH.rst +++ /dev/null @@ -1,2 +0,0 @@ -Added support of ``\N{name}`` escapes in regular expressions. Based on -patch by Jonathan Eunice. diff --git a/Misc/NEWS.d/next/Library/2018-02-09-14-44-43.bpo-30157.lEiiAK.rst b/Misc/NEWS.d/next/Library/2018-02-09-14-44-43.bpo-30157.lEiiAK.rst deleted file mode 100644 index 9f651930ac2b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-09-14-44-43.bpo-30157.lEiiAK.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed guessing quote and delimiter in csv.Sniffer.sniff() when only the last -field is quoted. Patch by Jake Davis. diff --git a/Misc/NEWS.d/next/Library/2018-02-09-21-41-56.bpo-31787.owSZ2t.rst b/Misc/NEWS.d/next/Library/2018-02-09-21-41-56.bpo-31787.owSZ2t.rst deleted file mode 100644 index f0cde59d740f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-09-21-41-56.bpo-31787.owSZ2t.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed refleaks of ``__init__()`` methods in various modules. -(Contributed by Oren Milman) diff --git a/Misc/NEWS.d/next/Library/2018-02-10-13-51-56.bpo-32394.dFM9SI.rst b/Misc/NEWS.d/next/Library/2018-02-10-13-51-56.bpo-32394.dFM9SI.rst deleted file mode 100644 index ee5807619a93..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-10-13-51-56.bpo-32394.dFM9SI.rst +++ /dev/null @@ -1,2 +0,0 @@ -socket: Remove TCP_FASTOPEN,TCP_KEEPCNT,TCP_KEEPIDLE,TCP_KEEPINTVL flags on -older version Windows during run-time. diff --git a/Misc/NEWS.d/next/Library/2018-02-10-23-41-05.bpo-19675.-dj35-.rst b/Misc/NEWS.d/next/Library/2018-02-10-23-41-05.bpo-19675.-dj35-.rst deleted file mode 100644 index 958550d3e8d7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-10-23-41-05.bpo-19675.-dj35-.rst +++ /dev/null @@ -1 +0,0 @@ -``multiprocessing.Pool`` no longer leaks processes if its initialization fails. diff --git a/Misc/NEWS.d/next/Library/2018-02-11-15-54-41.bpo-32819.ZTRX2Q.rst b/Misc/NEWS.d/next/Library/2018-02-11-15-54-41.bpo-32819.ZTRX2Q.rst deleted file mode 100644 index 7d57bf697826..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-11-15-54-41.bpo-32819.ZTRX2Q.rst +++ /dev/null @@ -1,3 +0,0 @@ -ssl.match_hostname() has been simplified and no longer depends on re and -ipaddress module for wildcard and IP addresses. Error reporting for invalid -wildcards has been improved. diff --git a/Misc/NEWS.d/next/Library/2018-02-14-00-21-24.bpo-32841.bvHDOc.rst b/Misc/NEWS.d/next/Library/2018-02-14-00-21-24.bpo-32841.bvHDOc.rst deleted file mode 100644 index a6d45669d027..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-14-00-21-24.bpo-32841.bvHDOc.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed `asyncio.Condition` issue which silently ignored cancellation after -notifying and cancelling a conditional lock. Patch by Bar Harel. diff --git a/Misc/NEWS.d/next/Library/2018-02-15-08-18-52.bpo-31333.4fF-gM.rst b/Misc/NEWS.d/next/Library/2018-02-15-08-18-52.bpo-31333.4fF-gM.rst deleted file mode 100644 index 63fc72a5c11b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-15-08-18-52.bpo-31333.4fF-gM.rst +++ /dev/null @@ -1,10 +0,0 @@ -``_abc`` module is added. It is a speedup module with C implementations for -various functions and methods in ``abc``. Creating an ABC subclass and calling -``isinstance`` or ``issubclass`` with an ABC subclass are up to 1.5x faster. -In addition, this makes Python start-up up to 10% faster. - -Note that the new implementation hides internal registry and caches, previously -accessible via private attributes ``_abc_registry``, ``_abc_cache``, and -``_abc_negative_cache``. There are three debugging helper methods that can be -used instead ``_dump_registry``, ``_abc_registry_clear``, and -``_abc_caches_clear``. diff --git a/Misc/NEWS.d/next/Library/2018-02-15-12-04-29.bpo-32852.HDqIxM.rst b/Misc/NEWS.d/next/Library/2018-02-15-12-04-29.bpo-32852.HDqIxM.rst deleted file mode 100644 index 8eabbfaea222..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-15-12-04-29.bpo-32852.HDqIxM.rst +++ /dev/null @@ -1 +0,0 @@ -Make sure sys.argv remains as a list when running trace. diff --git a/Misc/NEWS.d/next/Library/2018-02-16-14-37-14.bpo-32857.-XljAx.rst b/Misc/NEWS.d/next/Library/2018-02-16-14-37-14.bpo-32857.-XljAx.rst deleted file mode 100644 index 4ebbde4d1946..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-16-14-37-14.bpo-32857.-XljAx.rst +++ /dev/null @@ -1 +0,0 @@ -In :mod:`tkinter`, ``after_cancel(None)`` now raises a :exc:`ValueError` instead of canceling the first scheduled function. Patch by Cheryl Sabella. diff --git a/Misc/NEWS.d/next/Library/2018-02-17-19-20-19.bpo-21060.S1Z-x6.rst b/Misc/NEWS.d/next/Library/2018-02-17-19-20-19.bpo-21060.S1Z-x6.rst deleted file mode 100644 index 4e0a11362086..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-17-19-20-19.bpo-21060.S1Z-x6.rst +++ /dev/null @@ -1,3 +0,0 @@ -Rewrite confusing message from setup.py upload from -"No dist file created in earlier command" to the more helpful -"Must create and upload files in one command". diff --git a/Misc/NEWS.d/next/Library/2018-02-19-14-27-51.bpo-32556.CsRsgr.rst b/Misc/NEWS.d/next/Library/2018-02-19-14-27-51.bpo-32556.CsRsgr.rst deleted file mode 100644 index 1a475b308f5e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-19-14-27-51.bpo-32556.CsRsgr.rst +++ /dev/null @@ -1,2 +0,0 @@ -nt._getfinalpathname, nt._getvolumepathname and nt._getdiskusage now -correctly convert from bytes. diff --git a/Misc/NEWS.d/next/Library/2018-02-19-17-46-31.bpo-32859.kAT-Xp.rst b/Misc/NEWS.d/next/Library/2018-02-19-17-46-31.bpo-32859.kAT-Xp.rst deleted file mode 100644 index 755bdc118610..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-19-17-46-31.bpo-32859.kAT-Xp.rst +++ /dev/null @@ -1,2 +0,0 @@ -In ``os.dup2``, don't check every call whether the ``dup3`` syscall exists -or not. diff --git a/Misc/NEWS.d/next/Library/2018-02-23-12-21-41.bpo-32759.M-y9GA.rst b/Misc/NEWS.d/next/Library/2018-02-23-12-21-41.bpo-32759.M-y9GA.rst deleted file mode 100644 index e9bd326b4af1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-23-12-21-41.bpo-32759.M-y9GA.rst +++ /dev/null @@ -1 +0,0 @@ -Free unused arenas in multiprocessing.heap. diff --git a/Misc/NEWS.d/next/Library/2018-02-23-19-12-04.bpo-32922.u-xe0B.rst b/Misc/NEWS.d/next/Library/2018-02-23-19-12-04.bpo-32922.u-xe0B.rst deleted file mode 100644 index 412e588586c0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-23-19-12-04.bpo-32922.u-xe0B.rst +++ /dev/null @@ -1,2 +0,0 @@ -dbm.open() now encodes filename with the filesystem encoding rather than -default encoding. diff --git a/Misc/NEWS.d/next/Library/2018-02-24-21-40-42.bpo-30622.dQjxSe.rst b/Misc/NEWS.d/next/Library/2018-02-24-21-40-42.bpo-30622.dQjxSe.rst deleted file mode 100644 index bcb659b24dd3..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-24-21-40-42.bpo-30622.dQjxSe.rst +++ /dev/null @@ -1 +0,0 @@ -The ssl module now detects missing NPN support in LibreSSL. diff --git a/Misc/NEWS.d/next/Library/2018-02-25-10-17-23.bpo-32146.xOzUFW.rst b/Misc/NEWS.d/next/Library/2018-02-25-10-17-23.bpo-32146.xOzUFW.rst deleted file mode 100644 index f071c7101806..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-25-10-17-23.bpo-32146.xOzUFW.rst +++ /dev/null @@ -1,2 +0,0 @@ -Document the interaction between frozen executables and the spawn and -forkserver start methods in multiprocessing. diff --git a/Misc/NEWS.d/next/Library/2018-02-25-13-06-21.bpo-32947.mqStVW.rst b/Misc/NEWS.d/next/Library/2018-02-25-13-06-21.bpo-32947.mqStVW.rst deleted file mode 100644 index 28de360c3671..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-25-13-06-21.bpo-32947.mqStVW.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add OP_ENABLE_MIDDLEBOX_COMPAT and test workaround for TLSv1.3 for future -compatibility with OpenSSL 1.1.1. diff --git a/Misc/NEWS.d/next/Library/2018-02-25-13-47-48.bpo-32929.X2gTDH.rst b/Misc/NEWS.d/next/Library/2018-02-25-13-47-48.bpo-32929.X2gTDH.rst deleted file mode 100644 index b8a470cbf280..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-25-13-47-48.bpo-32929.X2gTDH.rst +++ /dev/null @@ -1,6 +0,0 @@ -Remove the tri-state parameter "hash", and add the boolean "unsafe_hash". If -unsafe_hash is True, add a __hash__ function, but if a __hash__ exists, -raise TypeError. If unsafe_hash is False, add a __hash__ based on the -values of eq= and frozen=. The unsafe_hash=False behavior is the same as -the old hash=None behavior. unsafe_hash=False is the default, just as -hash=None used to be. diff --git a/Misc/NEWS.d/next/Library/2018-02-25-18-22-01.bpo-32951.gHrCXq.rst b/Misc/NEWS.d/next/Library/2018-02-25-18-22-01.bpo-32951.gHrCXq.rst deleted file mode 100644 index 9c038cf25979..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-25-18-22-01.bpo-32951.gHrCXq.rst +++ /dev/null @@ -1,3 +0,0 @@ -Direct instantiation of SSLSocket and SSLObject objects is now prohibited. -The constructors were never documented, tested, or designed as public -constructors. Users were suppose to use ssl.wrap_socket() or SSLContext. diff --git a/Misc/NEWS.d/next/Library/2018-02-26-09-08-07.bpo-32257.6ElnUt.rst b/Misc/NEWS.d/next/Library/2018-02-26-09-08-07.bpo-32257.6ElnUt.rst deleted file mode 100644 index e74c39b68100..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-26-09-08-07.bpo-32257.6ElnUt.rst +++ /dev/null @@ -1,2 +0,0 @@ -The ssl module now contains OP_NO_RENEGOTIATION constant, available with -OpenSSL 1.1.0h or 1.1.1. diff --git a/Misc/NEWS.d/next/Library/2018-02-26-13-16-36.bpo-32713.55yegW.rst b/Misc/NEWS.d/next/Library/2018-02-26-13-16-36.bpo-32713.55yegW.rst deleted file mode 100644 index bb5d64a351cb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-26-13-16-36.bpo-32713.55yegW.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed tarfile.itn handling of out-of-bounds float values. Patch by Joffrey Fuhrer. diff --git a/Misc/NEWS.d/next/Library/2018-02-26-20-04-40.bpo-32960.48r0Ml.rst b/Misc/NEWS.d/next/Library/2018-02-26-20-04-40.bpo-32960.48r0Ml.rst deleted file mode 100644 index 4ad1fa17571d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-26-20-04-40.bpo-32960.48r0Ml.rst +++ /dev/null @@ -1,3 +0,0 @@ -For dataclasses, disallow inheriting frozen from non-frozen classes, and -also disallow inheriting non-frozen from frozen classes. This restriction -will be relaxed at a future date. diff --git a/Misc/NEWS.d/next/Library/2018-02-28-13-08-00.bpo-32844.u8tnAe.rst b/Misc/NEWS.d/next/Library/2018-02-28-13-08-00.bpo-32844.u8tnAe.rst deleted file mode 100644 index 67412fe5ba46..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-28-13-08-00.bpo-32844.u8tnAe.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix wrong redirection of a low descriptor (0 or 1) to stderr in subprocess -if another low descriptor is closed. diff --git a/Misc/NEWS.d/next/Library/2018-02-28-18-39-48.bpo-32970.IPWtbS.rst b/Misc/NEWS.d/next/Library/2018-02-28-18-39-48.bpo-32970.IPWtbS.rst deleted file mode 100644 index e97c16df5a0d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-28-18-39-48.bpo-32970.IPWtbS.rst +++ /dev/null @@ -1 +0,0 @@ -Improved disassembly of the MAKE_FUNCTION instruction. diff --git a/Misc/NEWS.d/next/Library/2018-03-01-17-49-56.bpo-32056.IlpfgE.rst b/Misc/NEWS.d/next/Library/2018-03-01-17-49-56.bpo-32056.IlpfgE.rst deleted file mode 100644 index 421aa3767794..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-01-17-49-56.bpo-32056.IlpfgE.rst +++ /dev/null @@ -1,3 +0,0 @@ -Improved exceptions raised for invalid number of channels and sample width -when read an audio file in modules :mod:`aifc`, :mod:`wave` and -:mod:`sunau`. diff --git a/Misc/NEWS.d/next/Library/2018-03-06-00-19-41.bpo-32969.rGTKa0.rst b/Misc/NEWS.d/next/Library/2018-03-06-00-19-41.bpo-32969.rGTKa0.rst deleted file mode 100644 index a92307e67bfa..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-06-00-19-41.bpo-32969.rGTKa0.rst +++ /dev/null @@ -1,2 +0,0 @@ -Expose several missing constants in zlib and fix corresponding -documentation. diff --git a/Misc/NEWS.d/next/Library/2018-03-06-11-54-59.bpo-33009.-Ekysb.rst b/Misc/NEWS.d/next/Library/2018-03-06-11-54-59.bpo-33009.-Ekysb.rst deleted file mode 100644 index 96bc70a8c944..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-06-11-54-59.bpo-33009.-Ekysb.rst +++ /dev/null @@ -1 +0,0 @@ -Fix inspect.signature() for single-parameter partialmethods. diff --git a/Misc/NEWS.d/next/Library/2018-03-06-20-30-20.bpo-32999.lgFXWl.rst b/Misc/NEWS.d/next/Library/2018-03-06-20-30-20.bpo-32999.lgFXWl.rst deleted file mode 100644 index e2e3dedbea84..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-06-20-30-20.bpo-32999.lgFXWl.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix C implementation of ``ABC.__subclasscheck__(cls, subclass)`` crashed when -``subclass`` is not a type object. diff --git a/Misc/NEWS.d/next/Library/2018-03-07-19-37-00.bpo-22674.2sIMmM.rst b/Misc/NEWS.d/next/Library/2018-03-07-19-37-00.bpo-22674.2sIMmM.rst deleted file mode 100644 index a9af5da46ef1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-07-19-37-00.bpo-22674.2sIMmM.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add the strsignal() function in the signal module that returns the system -description of the given signal, as returned by strsignal(3). diff --git a/Misc/NEWS.d/next/Library/2018-03-07-22-28-17.bpo-27683.572Rv4.rst b/Misc/NEWS.d/next/Library/2018-03-07-22-28-17.bpo-27683.572Rv4.rst deleted file mode 100644 index 4e6dfa8e978c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-07-22-28-17.bpo-27683.572Rv4.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a regression in :mod:`ipaddress` that result of :meth:`hosts` -is empty when the network is constructed by a tuple containing an -integer mask and only 1 bit left for addresses. diff --git a/Misc/NEWS.d/next/Library/2018-03-09-23-07-07.bpo-33037.nAJ3at.rst b/Misc/NEWS.d/next/Library/2018-03-09-23-07-07.bpo-33037.nAJ3at.rst deleted file mode 100644 index 2732eeb4534b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-09-23-07-07.bpo-33037.nAJ3at.rst +++ /dev/null @@ -1 +0,0 @@ -Skip sending/receiving data after SSL transport closing. diff --git a/Misc/NEWS.d/next/Library/2018-03-11-00-20-26.bpo-30249.KSkgLB.rst b/Misc/NEWS.d/next/Library/2018-03-11-00-20-26.bpo-30249.KSkgLB.rst deleted file mode 100644 index f30dff3124eb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-11-00-20-26.bpo-30249.KSkgLB.rst +++ /dev/null @@ -1,2 +0,0 @@ -Improve struct.unpack_from() exception messages for problems with the buffer -size and offset. diff --git a/Misc/NEWS.d/next/Library/2018-03-11-08-44-12.bpo-33034.bpb23d.rst b/Misc/NEWS.d/next/Library/2018-03-11-08-44-12.bpo-33034.bpb23d.rst deleted file mode 100644 index c81683abf592..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-11-08-44-12.bpo-33034.bpb23d.rst +++ /dev/null @@ -1,3 +0,0 @@ -Providing an explicit error message when casting the port property to anything -that is not an integer value using ``urlparse()`` and ``urlsplit()``. -Patch by Matt Eaton. diff --git a/Misc/NEWS.d/next/Library/2018-03-11-19-03-52.bpo-31804.i8KUMp.rst b/Misc/NEWS.d/next/Library/2018-03-11-19-03-52.bpo-31804.i8KUMp.rst deleted file mode 100644 index 7fcede297aca..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-11-19-03-52.bpo-31804.i8KUMp.rst +++ /dev/null @@ -1,2 +0,0 @@ -Avoid failing in multiprocessing.Process if the standard streams are closed -or None at exit. diff --git a/Misc/NEWS.d/next/Library/2018-03-12-00-27-56.bpo-33021.m19B9T.rst b/Misc/NEWS.d/next/Library/2018-03-12-00-27-56.bpo-33021.m19B9T.rst deleted file mode 100644 index 50dfafe600d8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-12-00-27-56.bpo-33021.m19B9T.rst +++ /dev/null @@ -1,2 +0,0 @@ -Release the GIL during fstat() calls, avoiding hang of all threads when -calling mmap.mmap(), os.urandom(), and random.seed(). Patch by Nir Soffer. diff --git a/Misc/NEWS.d/next/Library/2018-03-12-16-40-00.bpo-33056.lNN9Eh.rst b/Misc/NEWS.d/next/Library/2018-03-12-16-40-00.bpo-33056.lNN9Eh.rst deleted file mode 100644 index 6acc19a36dc8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-12-16-40-00.bpo-33056.lNN9Eh.rst +++ /dev/null @@ -1 +0,0 @@ -FIX properly close leaking fds in concurrent.futures.ProcessPoolExecutor. diff --git a/Misc/NEWS.d/next/Library/2018-03-12-19-58-25.bpo-33064.LO2KIY.rst b/Misc/NEWS.d/next/Library/2018-03-12-19-58-25.bpo-33064.LO2KIY.rst deleted file mode 100644 index c8e955e335cb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-12-19-58-25.bpo-33064.LO2KIY.rst +++ /dev/null @@ -1,2 +0,0 @@ -lib2to3 now properly supports trailing commas after ``*args`` and -``**kwargs`` in function signatures. diff --git a/Misc/NEWS.d/next/Library/2018-03-15-07-38-00.bpo-33078.RmjUF5.rst b/Misc/NEWS.d/next/Library/2018-03-15-07-38-00.bpo-33078.RmjUF5.rst deleted file mode 100644 index 55c2b1de8668..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-15-07-38-00.bpo-33078.RmjUF5.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix the size handling in multiprocessing.Queue when a pickling error -occurs. diff --git a/Misc/NEWS.d/next/Library/2018-03-16-16-07-33.bpo-33061.TRTTek.rst b/Misc/NEWS.d/next/Library/2018-03-16-16-07-33.bpo-33061.TRTTek.rst deleted file mode 100644 index b82ffb73a143..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-16-16-07-33.bpo-33061.TRTTek.rst +++ /dev/null @@ -1 +0,0 @@ -Add missing ``NoReturn`` to ``__all__`` in typing.py diff --git a/Misc/NEWS.d/next/Library/2018-03-18-15-57-32.bpo-32968.E4G7BO.rst b/Misc/NEWS.d/next/Library/2018-03-18-15-57-32.bpo-32968.E4G7BO.rst deleted file mode 100644 index 16bf2f342d4c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-18-15-57-32.bpo-32968.E4G7BO.rst +++ /dev/null @@ -1 +0,0 @@ -Modulo and floor division involving Fraction and float should return float. diff --git a/Misc/NEWS.d/next/Library/2018-03-18-16-48-23.bpo-33097.Yl4gI2.rst b/Misc/NEWS.d/next/Library/2018-03-18-16-48-23.bpo-33097.Yl4gI2.rst deleted file mode 100644 index d9411eb51623..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-18-16-48-23.bpo-33097.Yl4gI2.rst +++ /dev/null @@ -1,2 +0,0 @@ -Raise RuntimeError when ``executor.submit`` is called during interpreter -shutdown. diff --git a/Misc/NEWS.d/next/Library/2018-03-18-17-38-48.bpo-32953.t8WAWN.rst b/Misc/NEWS.d/next/Library/2018-03-18-17-38-48.bpo-32953.t8WAWN.rst deleted file mode 100644 index 03c1162c7833..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-18-17-38-48.bpo-32953.t8WAWN.rst +++ /dev/null @@ -1,4 +0,0 @@ -If a non-dataclass inherits from a frozen dataclass, allow attributes to be -added to the derived class. Only attributes from the frozen dataclass -cannot be assigned to. Require all dataclasses in a hierarchy to be either -all frozen or all non-frozen. diff --git a/Misc/NEWS.d/next/Library/2018-03-19-20-47-00.bpo-33100.chyIO4.rst b/Misc/NEWS.d/next/Library/2018-03-19-20-47-00.bpo-33100.chyIO4.rst deleted file mode 100644 index 080a55c0cfb7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-19-20-47-00.bpo-33100.chyIO4.rst +++ /dev/null @@ -1,2 +0,0 @@ -Dataclasses: If a field has a default value that's a MemberDescriptorType, -then it's from that field being in __slots__, not an actual default value. diff --git a/Misc/NEWS.d/next/Library/2018-03-20-20-53-21.bpo-32896.ewW3Ln.rst b/Misc/NEWS.d/next/Library/2018-03-20-20-53-21.bpo-32896.ewW3Ln.rst deleted file mode 100644 index 8363da4667a1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-20-20-53-21.bpo-32896.ewW3Ln.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix an error where subclassing a dataclass with a field that uses a -default_factory would generate an incorrect class. diff --git a/Misc/NEWS.d/next/Library/2018-03-21-16-52-26.bpo-33116.Tvzerj.rst b/Misc/NEWS.d/next/Library/2018-03-21-16-52-26.bpo-33116.Tvzerj.rst deleted file mode 100644 index 90072d8e3030..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-21-16-52-26.bpo-33116.Tvzerj.rst +++ /dev/null @@ -1 +0,0 @@ -Add 'Field' to dataclasses.__all__. diff --git a/Misc/NEWS.d/next/Library/2018-03-21-17-59-39.bpo-33078.PQOniT.rst b/Misc/NEWS.d/next/Library/2018-03-21-17-59-39.bpo-33078.PQOniT.rst deleted file mode 100644 index 8b71bb32e0ec..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-21-17-59-39.bpo-33078.PQOniT.rst +++ /dev/null @@ -1 +0,0 @@ -Fix the failure on OSX caused by the tests relying on sem_getvalue diff --git a/Misc/NEWS.d/next/Library/2018-03-22-16-05-56.bpo-32505.YK1N8v.rst b/Misc/NEWS.d/next/Library/2018-03-22-16-05-56.bpo-32505.YK1N8v.rst deleted file mode 100644 index 91e97bf53f65..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-22-16-05-56.bpo-32505.YK1N8v.rst +++ /dev/null @@ -1,2 +0,0 @@ -Raise TypeError if a member variable of a dataclass is of type Field, but -doesn't have a type annotation. diff --git a/Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst b/Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst deleted file mode 100644 index 635aabbde031..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst +++ /dev/null @@ -1 +0,0 @@ -The ssl module now compiles with LibreSSL 2.7.1. diff --git a/Misc/NEWS.d/next/Library/2018-03-24-19-34-26.bpo-33134.hbVeIX.rst b/Misc/NEWS.d/next/Library/2018-03-24-19-34-26.bpo-33134.hbVeIX.rst deleted file mode 100644 index 3f4ce84bef76..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-24-19-34-26.bpo-33134.hbVeIX.rst +++ /dev/null @@ -1,3 +0,0 @@ -When computing dataclass's __hash__, use the lookup table to contain the -function which returns the __hash__ value. This is an improvement over -looking up a string, and then testing that string to see what to do. diff --git a/Misc/NEWS.d/next/Library/2018-03-24-19-54-48.bpo-32873.cHyoAm.rst b/Misc/NEWS.d/next/Library/2018-03-24-19-54-48.bpo-32873.cHyoAm.rst deleted file mode 100644 index 99f8088cf138..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-24-19-54-48.bpo-32873.cHyoAm.rst +++ /dev/null @@ -1,3 +0,0 @@ -Treat type variables and special typing forms as immutable by copy and -pickle. This fixes several minor issues and inconsistencies, and improves -backwards compatibility with Python 3.6. diff --git a/Misc/NEWS.d/next/Library/2018-03-25-13-18-16.bpo-33096.ofdbe7.rst b/Misc/NEWS.d/next/Library/2018-03-25-13-18-16.bpo-33096.ofdbe7.rst deleted file mode 100644 index c55ea20b337d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-25-13-18-16.bpo-33096.ofdbe7.rst +++ /dev/null @@ -1,4 +0,0 @@ -Allow ttk.Treeview.insert to insert iid that has a false boolean value. -Note iid=0 and iid=False would be same. -Patch by Garvit Khatri. - diff --git a/Misc/NEWS.d/next/Library/2018-03-26-12-33-13.bpo-33141.23wlxf.rst b/Misc/NEWS.d/next/Library/2018-03-26-12-33-13.bpo-33141.23wlxf.rst deleted file mode 100644 index 1d49c08fed54..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-26-12-33-13.bpo-33141.23wlxf.rst +++ /dev/null @@ -1,2 +0,0 @@ -Have Field objects pass through __set_name__ to their default values, if -they have their own __set_name__. diff --git a/Misc/NEWS.d/next/Library/2018-03-29-03-09-22.bpo-32380.NhuGig.rst b/Misc/NEWS.d/next/Library/2018-03-29-03-09-22.bpo-32380.NhuGig.rst deleted file mode 100644 index ab852a53e92a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-29-03-09-22.bpo-32380.NhuGig.rst +++ /dev/null @@ -1,2 +0,0 @@ -Create functools.singledispatchmethod to support generic single dispatch on -descriptors and methods. diff --git a/Misc/NEWS.d/next/Library/2018-03-29-04-32-25.bpo-33175._zs1yM.rst b/Misc/NEWS.d/next/Library/2018-03-29-04-32-25.bpo-33175._zs1yM.rst deleted file mode 100644 index c872499cd679..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-29-04-32-25.bpo-33175._zs1yM.rst +++ /dev/null @@ -1,2 +0,0 @@ -In dataclasses, Field.__set_name__ now looks up the __set_name__ special -method on the class, not the instance, of the default value. diff --git a/Misc/NEWS.d/next/Library/2018-03-30-01-20-35.bpo-33106.zncfvW.rst b/Misc/NEWS.d/next/Library/2018-03-30-01-20-35.bpo-33106.zncfvW.rst deleted file mode 100644 index 859c09cd58f3..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-30-01-20-35.bpo-33106.zncfvW.rst +++ /dev/null @@ -1,2 +0,0 @@ -Deleting a key from a read-only dbm database raises module specfic error -instead of KeyError. diff --git a/Misc/NEWS.d/next/Library/2018-04-01-19-21-04.bpo-20104.-AKcGa.rst b/Misc/NEWS.d/next/Library/2018-04-01-19-21-04.bpo-20104.-AKcGa.rst deleted file mode 100644 index 150401dc7412..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-01-19-21-04.bpo-20104.-AKcGa.rst +++ /dev/null @@ -1 +0,0 @@ -Improved error handling and fixed a reference leak in :func:`os.posix_spawn()`. diff --git a/Misc/NEWS.d/next/Library/2018-04-02-16-10-12.bpo-23403.KG7ADV.rst b/Misc/NEWS.d/next/Library/2018-04-02-16-10-12.bpo-23403.KG7ADV.rst deleted file mode 100644 index d1fbbebfadc6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-02-16-10-12.bpo-23403.KG7ADV.rst +++ /dev/null @@ -1,4 +0,0 @@ -``DEFAULT_PROTOCOL`` in :mod:`pickle` was bumped to 4. Protocol 4 is -described in :pep:`3154` and available since Python 3.4. It offers -better performance and smaller size compared to protocol 3 introduced -in Python 3.0. diff --git a/Misc/NEWS.d/next/Library/2018-04-02-20-44-54.bpo-32861.HeBjzN.rst b/Misc/NEWS.d/next/Library/2018-04-02-20-44-54.bpo-32861.HeBjzN.rst deleted file mode 100644 index 2bb24d7edab5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-02-20-44-54.bpo-32861.HeBjzN.rst +++ /dev/null @@ -1,4 +0,0 @@ -The urllib.robotparser's ``__str__`` representation now includes wildcard -entries and the "Crawl-delay" and "Request-rate" fields. Also removes extra -newlines that were being appended to the end of the string. Patch by -Michael Lazar. diff --git a/Misc/NEWS.d/next/Library/2018-04-03-10-37-13.bpo-33209.9sGWE_.rst b/Misc/NEWS.d/next/Library/2018-04-03-10-37-13.bpo-33209.9sGWE_.rst deleted file mode 100644 index d98b1e174e55..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-03-10-37-13.bpo-33209.9sGWE_.rst +++ /dev/null @@ -1 +0,0 @@ -End framing at the end of C implementation of :func:`pickle.Pickler.dump`. diff --git a/Misc/NEWS.d/next/Library/2018-04-04-23-41-30.bpo-33224.pyR0jB.rst b/Misc/NEWS.d/next/Library/2018-04-04-23-41-30.bpo-33224.pyR0jB.rst deleted file mode 100644 index b0ddba9335e2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-04-23-41-30.bpo-33224.pyR0jB.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update difflib.mdiff() for :pep:`479`. Convert an uncaught StopIteration in a -generator into a return-statement. diff --git a/Misc/NEWS.d/next/Library/2018-04-05-11-09-45.bpo-33203.Hje9Py.rst b/Misc/NEWS.d/next/Library/2018-04-05-11-09-45.bpo-33203.Hje9Py.rst deleted file mode 100644 index ab6d17b5d1ba..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-05-11-09-45.bpo-33203.Hje9Py.rst +++ /dev/null @@ -1,3 +0,0 @@ -``random.Random.choice()`` now raises ``IndexError`` for empty sequences -consistently even when called from subclasses without a ``getrandbits()`` -implementation. diff --git a/Misc/NEWS.d/next/Library/2018-04-06-14-56-26.bpo-33169.ByhDqb.rst b/Misc/NEWS.d/next/Library/2018-04-06-14-56-26.bpo-33169.ByhDqb.rst deleted file mode 100644 index b5bacfcb5732..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-06-14-56-26.bpo-33169.ByhDqb.rst +++ /dev/null @@ -1,2 +0,0 @@ -Delete entries of ``None`` in :data:`sys.path_importer_cache` when -:meth:`importlib.machinery.invalidate_caches` is called. diff --git a/Misc/NEWS.d/next/Library/2018-04-07-13-49-39.bpo-29613.r6FDnB.rst b/Misc/NEWS.d/next/Library/2018-04-07-13-49-39.bpo-29613.r6FDnB.rst deleted file mode 100644 index a679cd91194f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-07-13-49-39.bpo-29613.r6FDnB.rst +++ /dev/null @@ -1,2 +0,0 @@ -Added support for the ``SameSite`` cookie flag to the ``http.cookies`` -module. diff --git a/Misc/NEWS.d/next/Library/2018-04-08-22-54-07.bpo-33185.Id-Ba9.rst b/Misc/NEWS.d/next/Library/2018-04-08-22-54-07.bpo-33185.Id-Ba9.rst deleted file mode 100644 index 1f51d7e5120d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-08-22-54-07.bpo-33185.Id-Ba9.rst +++ /dev/null @@ -1,5 +0,0 @@ -Fixed regression when running pydoc with the :option:`-m` switch. (The regression -was introduced in 3.7.0b3 by the resolution of :issue:`33053`) - -This fix also changed pydoc to add ``os.getcwd()`` to :data:`sys.path` when -necessary, rather than adding ``"."``. diff --git a/Misc/NEWS.d/next/Library/2018-04-10-14-50-30.bpo-33144.iZr4et.rst b/Misc/NEWS.d/next/Library/2018-04-10-14-50-30.bpo-33144.iZr4et.rst deleted file mode 100644 index eb6b9b7fe08d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-10-14-50-30.bpo-33144.iZr4et.rst +++ /dev/null @@ -1,4 +0,0 @@ -``random.Random()`` and its subclassing mechanism got optimized to check only -once at class/subclass instantiation time whether its ``getrandbits()`` method -can be relied on by other methods, including ``randrange()``, for the -generation of arbitrarily large random integers. Patch by Wolfgang Maier. diff --git a/Misc/NEWS.d/next/Library/2018-04-10-20-57-14.bpo-33256.ndHkqu.rst b/Misc/NEWS.d/next/Library/2018-04-10-20-57-14.bpo-33256.ndHkqu.rst deleted file mode 100644 index a0605c04b4de..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-10-20-57-14.bpo-33256.ndHkqu.rst +++ /dev/null @@ -1 +0,0 @@ -Fix display of ```` call in the html produced by ``cgitb.html()``. Patch by St?phane Blondon. diff --git a/Misc/NEWS.d/next/Library/2018-04-11-20-29-19.bpo-33263.B56Hc1.rst b/Misc/NEWS.d/next/Library/2018-04-11-20-29-19.bpo-33263.B56Hc1.rst deleted file mode 100644 index 77994f6a5986..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-11-20-29-19.bpo-33263.B56Hc1.rst +++ /dev/null @@ -1 +0,0 @@ -Fix FD leak in `_SelectorSocketTransport` Patch by Vlad Starostin. diff --git a/Misc/NEWS.d/next/Library/2018-04-13-08-12-50.bpo-33265.KPQRk0.rst b/Misc/NEWS.d/next/Library/2018-04-13-08-12-50.bpo-33265.KPQRk0.rst deleted file mode 100644 index 523ceb9be1d6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-13-08-12-50.bpo-33265.KPQRk0.rst +++ /dev/null @@ -1,2 +0,0 @@ -``contextlib.ExitStack`` and ``contextlib.AsyncExitStack`` now use a method -instead of a wrapper function for exit callbacks. diff --git a/Misc/NEWS.d/next/Library/2018-04-13-15-14-47.bpo-33254.DS4KFK.rst b/Misc/NEWS.d/next/Library/2018-04-13-15-14-47.bpo-33254.DS4KFK.rst deleted file mode 100644 index c77a902524b8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-13-15-14-47.bpo-33254.DS4KFK.rst +++ /dev/null @@ -1,3 +0,0 @@ -Have :func:`importlib.resources.contents` and -:meth:`importlib.abc.ResourceReader.contents` return an :term:`iterable` instead -of an :term:`iterator`. diff --git a/Misc/NEWS.d/next/Library/2018-04-16-08-42-03.bpo-11594.QLo4vv.rst b/Misc/NEWS.d/next/Library/2018-04-16-08-42-03.bpo-11594.QLo4vv.rst deleted file mode 100644 index be2abf6c34dd..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-16-08-42-03.bpo-11594.QLo4vv.rst +++ /dev/null @@ -1 +0,0 @@ -Ensure line-endings are respected when using lib2to3. diff --git a/Misc/NEWS.d/next/Library/2018-04-16-15-59-21.bpo-33266.w2PAm-.rst b/Misc/NEWS.d/next/Library/2018-04-16-15-59-21.bpo-33266.w2PAm-.rst deleted file mode 100644 index 6c93c48b8886..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-16-15-59-21.bpo-33266.w2PAm-.rst +++ /dev/null @@ -1 +0,0 @@ -lib2to3 now recognizes ``rf'...'`` strings. diff --git a/Misc/NEWS.d/next/Library/2018-04-16-16-21-09.bpo-23403.rxR1Q_.rst b/Misc/NEWS.d/next/Library/2018-04-16-16-21-09.bpo-23403.rxR1Q_.rst deleted file mode 100644 index 8116e3b9cea9..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-16-16-21-09.bpo-23403.rxR1Q_.rst +++ /dev/null @@ -1 +0,0 @@ -lib2to3 now uses pickle protocol 4 for pre-computed grammars. diff --git a/Misc/NEWS.d/next/Library/2018-04-18-19-12-25.bpo-33308.fW75xi.rst b/Misc/NEWS.d/next/Library/2018-04-18-19-12-25.bpo-33308.fW75xi.rst deleted file mode 100644 index 586004a3c6c9..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-18-19-12-25.bpo-33308.fW75xi.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed a crash in the :mod:`parser` module when converting an ST object to a -tree of tuples or lists with ``line_info=False`` and ``col_info=True``. diff --git a/Misc/NEWS.d/next/Library/2018-04-20-10-43-17.bpo-33131.L2E977.rst b/Misc/NEWS.d/next/Library/2018-04-20-10-43-17.bpo-33131.L2E977.rst deleted file mode 100644 index 875c6ac5f742..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-20-10-43-17.bpo-33131.L2E977.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade bundled version of pip to 10.0.1. diff --git a/Misc/NEWS.d/next/Library/2018-04-21-00-24-08.bpo-991266.h93TP_.rst b/Misc/NEWS.d/next/Library/2018-04-21-00-24-08.bpo-991266.h93TP_.rst deleted file mode 100644 index 3af6c27cf21d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-21-00-24-08.bpo-991266.h93TP_.rst +++ /dev/null @@ -1 +0,0 @@ -Fix quoting of the ``Comment`` attribute of :class:`http.cookies.SimpleCookie`. diff --git a/Misc/NEWS.d/next/Library/2018-04-22-20-13-21.bpo-33334.19UMOC.rst b/Misc/NEWS.d/next/Library/2018-04-22-20-13-21.bpo-33334.19UMOC.rst deleted file mode 100644 index 1df274091863..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-22-20-13-21.bpo-33334.19UMOC.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`dis.stack_effect` now supports all defined opcodes including NOP and -EXTENDED_ARG. diff --git a/Misc/NEWS.d/next/Library/2018-04-23-13-21-39.bpo-33329.lQ-Eod.rst b/Misc/NEWS.d/next/Library/2018-04-23-13-21-39.bpo-33329.lQ-Eod.rst deleted file mode 100644 index d1a4e56d04b9..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-23-13-21-39.bpo-33329.lQ-Eod.rst +++ /dev/null @@ -1 +0,0 @@ -Fix multiprocessing regression on newer glibcs diff --git a/Misc/NEWS.d/next/Library/2018-04-23-18-25-36.bpo-33251.C_K-J9.rst b/Misc/NEWS.d/next/Library/2018-04-23-18-25-36.bpo-33251.C_K-J9.rst deleted file mode 100644 index fc6861f0d368..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-23-18-25-36.bpo-33251.C_K-J9.rst +++ /dev/null @@ -1,2 +0,0 @@ -`ConfigParser.items()` was fixed so that key-value pairs passed in via `vars` -are not included in the resulting output. diff --git a/Misc/NEWS.d/next/Library/2018-04-23-21-41-30.bpo-33332.Y6OZ8Z.rst b/Misc/NEWS.d/next/Library/2018-04-23-21-41-30.bpo-33332.Y6OZ8Z.rst deleted file mode 100644 index 05dca54d5776..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-23-21-41-30.bpo-33332.Y6OZ8Z.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add ``signal.valid_signals()`` to expose the POSIX sigfillset() -functionality. diff --git a/Misc/NEWS.d/next/Library/2018-04-25-14-05-21.bpo-27485.nclVSU.rst b/Misc/NEWS.d/next/Library/2018-04-25-14-05-21.bpo-27485.nclVSU.rst deleted file mode 100644 index 8962d8229264..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-25-14-05-21.bpo-27485.nclVSU.rst +++ /dev/null @@ -1 +0,0 @@ -Rename and deprecate undocumented functions in :func:`urllib.parse`. diff --git a/Misc/NEWS.d/next/Library/2018-04-26-13-31-10.bpo-32455.KPWg3K.rst b/Misc/NEWS.d/next/Library/2018-04-26-13-31-10.bpo-32455.KPWg3K.rst deleted file mode 100644 index dd873f77bbd4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-26-13-31-10.bpo-32455.KPWg3K.rst +++ /dev/null @@ -1 +0,0 @@ -Added *jump* parameter to :func:`dis.stack_effect`. diff --git a/Misc/NEWS.d/next/Library/2018-04-27-22-18-38.bpo-33336.T8rxn0.rst b/Misc/NEWS.d/next/Library/2018-04-27-22-18-38.bpo-33336.T8rxn0.rst deleted file mode 100644 index d205c68a95af..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-27-22-18-38.bpo-33336.T8rxn0.rst +++ /dev/null @@ -1,3 +0,0 @@ -``imaplib`` now allows ``MOVE`` command in ``IMAP4.uid()`` (RFC -6851: IMAP MOVE Extension) and potentially as a name of supported -method of ``IMAP4`` object. diff --git a/Misc/NEWS.d/next/Library/2018-04-28-08-11-35.bpo-33375.Dbq1fz.rst b/Misc/NEWS.d/next/Library/2018-04-28-08-11-35.bpo-33375.Dbq1fz.rst deleted file mode 100644 index f3f9d2a50881..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-28-08-11-35.bpo-33375.Dbq1fz.rst +++ /dev/null @@ -1,4 +0,0 @@ -The warnings module now finds the Python file associated with a warning from -the code object, rather than the frame's global namespace. This is -consistent with how tracebacks and pdb find filenames, and should work -better for dynamically executed code. diff --git a/Misc/NEWS.d/next/Library/2018-04-29-11-15-38.bpo-33383.g32YWn.rst b/Misc/NEWS.d/next/Library/2018-04-29-11-15-38.bpo-33383.g32YWn.rst deleted file mode 100644 index 7b65baac97bf..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-29-11-15-38.bpo-33383.g32YWn.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed crash in the get() method of the :mod:`dbm.ndbm` database object when -it is called with a single argument. diff --git a/Misc/NEWS.d/next/Library/2018-04-29-23-56-20.bpo-33197.dgRLqr.rst b/Misc/NEWS.d/next/Library/2018-04-29-23-56-20.bpo-33197.dgRLqr.rst deleted file mode 100644 index 1bbb44b2fc39..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-29-23-56-20.bpo-33197.dgRLqr.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update error message when constructing invalid inspect.Parameters -Patch by Dong-hee Na. diff --git a/Misc/NEWS.d/next/Library/2018-04-30-13-29-47.bpo-33217.TENDzd.rst b/Misc/NEWS.d/next/Library/2018-04-30-13-29-47.bpo-33217.TENDzd.rst deleted file mode 100644 index 071f5f16bfb7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-30-13-29-47.bpo-33217.TENDzd.rst +++ /dev/null @@ -1,2 +0,0 @@ -Raise :exc:`TypeError` when looking up non-Enum objects in Enum classes and -Enum members. diff --git a/Misc/NEWS.d/next/Library/2018-04-30-22-43-31.bpo-32933.M3iI_y.rst b/Misc/NEWS.d/next/Library/2018-04-30-22-43-31.bpo-32933.M3iI_y.rst deleted file mode 100644 index 4de7a8f927d5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-30-22-43-31.bpo-32933.M3iI_y.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`unittest.mock.mock_open` now supports iteration over the file -contents. Patch by Tony Flury. diff --git a/Misc/NEWS.d/next/Library/2018-05-01-02-24-44.bpo-27300.LdIXvK.rst b/Misc/NEWS.d/next/Library/2018-05-01-02-24-44.bpo-27300.LdIXvK.rst deleted file mode 100644 index 5edbc86b9c9c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-01-02-24-44.bpo-27300.LdIXvK.rst +++ /dev/null @@ -1,2 +0,0 @@ -The file classes in *tempfile* now accept an *errors* parameter that -complements the already existing *encoding*. Patch by Stephan Hohe. diff --git a/Misc/NEWS.d/next/Library/2018-05-01-22-33-14.bpo-33311.8YPB-k.rst b/Misc/NEWS.d/next/Library/2018-05-01-22-33-14.bpo-33311.8YPB-k.rst deleted file mode 100644 index d0218de373ca..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-01-22-33-14.bpo-33311.8YPB-k.rst +++ /dev/null @@ -1,2 +0,0 @@ -Text and html output generated by cgitb does not display parentheses if the -current call is done directly in the module. Patch by St?phane Blondon. diff --git a/Misc/NEWS.d/next/Library/2018-05-01-22-35-50.bpo-33281.d4jOt4.rst b/Misc/NEWS.d/next/Library/2018-05-01-22-35-50.bpo-33281.d4jOt4.rst deleted file mode 100644 index ad08caa70b63..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-01-22-35-50.bpo-33281.d4jOt4.rst +++ /dev/null @@ -1 +0,0 @@ -Fix ctypes.util.find_library regression on macOS. diff --git a/Misc/NEWS.d/next/Library/2018-05-02-07-26-29.bpo-28167.7FwDfN.rst b/Misc/NEWS.d/next/Library/2018-05-02-07-26-29.bpo-28167.7FwDfN.rst deleted file mode 100644 index 2d7cf01961ff..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-02-07-26-29.bpo-28167.7FwDfN.rst +++ /dev/null @@ -1,3 +0,0 @@ -The function ``platform.linux_distribution`` and ``platform.dist`` now -trigger a ``DeprecationWarning`` and have been marked for removal in Python -3.8 diff --git a/Misc/NEWS.d/next/Library/2018-05-05-09-53-05.bpo-33422.4FtQ0q.rst b/Misc/NEWS.d/next/Library/2018-05-05-09-53-05.bpo-33422.4FtQ0q.rst deleted file mode 100644 index 0d284d508f10..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-05-09-53-05.bpo-33422.4FtQ0q.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix trailing quotation marks getting deleted when looking up byte/string -literals on pydoc. Patch by Andr?s Delfino. diff --git a/Misc/NEWS.d/next/Library/2018-05-05-18-02-24.bpo-20087.lJrvXL.rst b/Misc/NEWS.d/next/Library/2018-05-05-18-02-24.bpo-20087.lJrvXL.rst deleted file mode 100644 index 2342cb781926..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-05-18-02-24.bpo-20087.lJrvXL.rst +++ /dev/null @@ -1 +0,0 @@ -Updated alias mapping with glibc 2.27 supported locales. diff --git a/Misc/NEWS.d/next/Library/2018-05-08-15-01-10.bpo-33365.SicsAd.rst b/Misc/NEWS.d/next/Library/2018-05-08-15-01-10.bpo-33365.SicsAd.rst deleted file mode 100644 index 41c273f37998..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-08-15-01-10.bpo-33365.SicsAd.rst +++ /dev/null @@ -1 +0,0 @@ -Print the header values besides the header keys instead just the header keys if *debuglevel* is set to >0 in :mod:`http.client`. Patch by Marco Strigl. diff --git a/Misc/NEWS.d/next/Library/2018-05-08-16-43-42.bpo-28556._xr5mp.rst b/Misc/NEWS.d/next/Library/2018-05-08-16-43-42.bpo-28556._xr5mp.rst deleted file mode 100644 index 8ed4658211fb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-08-16-43-42.bpo-28556._xr5mp.rst +++ /dev/null @@ -1,3 +0,0 @@ -Minor fixes in typing module: add annotations to ``NamedTuple.__new__``, -pass ``*args`` and ``**kwds`` in ``Generic.__new__``. Original PRs by -Paulius ?arka and Chad Dombrova. diff --git a/Misc/NEWS.d/next/Library/2018-05-12-06-01-02.bpo-33453.Fj-jMD.rst b/Misc/NEWS.d/next/Library/2018-05-12-06-01-02.bpo-33453.Fj-jMD.rst deleted file mode 100644 index 6595b1265a4e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-12-06-01-02.bpo-33453.Fj-jMD.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix dataclasses to work if using literal string type annotations or if using -PEP 563 "Postponed Evaluation of Annotations". Only specific string -prefixes are detected for both ClassVar ("ClassVar" and "typing.ClassVar") -and InitVar ("InitVar" and "dataclasses.InitVar"). diff --git a/Misc/NEWS.d/next/Library/2018-05-12-13-06-41.bpo-29209.h5RxYy.rst b/Misc/NEWS.d/next/Library/2018-05-12-13-06-41.bpo-29209.h5RxYy.rst deleted file mode 100644 index 78d9b0c55daa..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-12-13-06-41.bpo-29209.h5RxYy.rst +++ /dev/null @@ -1,6 +0,0 @@ -Removed the ``doctype()`` method and the *html* parameter of the constructor -of :class:`~xml.etree.ElementTree.XMLParser`. The ``doctype()`` method -defined in a subclass will no longer be called. Deprecated methods -``getchildren()`` and ``getiterator()`` in the :mod:`~xml.etree.ElementTree` -module emit now a :exc:`DeprecationWarning` instead of -:exc:`PendingDeprecationWarning`. diff --git a/Misc/NEWS.d/next/Library/2018-05-14-09-07-14.bpo-26103._zU8E2.rst b/Misc/NEWS.d/next/Library/2018-05-14-09-07-14.bpo-26103._zU8E2.rst deleted file mode 100644 index cb4c41ba5db9..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-14-09-07-14.bpo-26103._zU8E2.rst +++ /dev/null @@ -1,2 +0,0 @@ -Correct ``inspect.isdatadescriptor`` to look for ``__set__`` or -``__delete__``. Patch by Aaron Hall. diff --git a/Misc/NEWS.d/next/Library/2018-05-14-10-29-03.bpo-33495.TeGTQJ.rst b/Misc/NEWS.d/next/Library/2018-05-14-10-29-03.bpo-33495.TeGTQJ.rst deleted file mode 100644 index 22cf04cd2e43..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-14-10-29-03.bpo-33495.TeGTQJ.rst +++ /dev/null @@ -1,3 +0,0 @@ -Change dataclasses.Fields repr to use the repr of each of its members, -instead of str. This makes it more clear what each field actually -represents. This is especially true for the 'type' member. diff --git a/Misc/NEWS.d/next/Library/2018-05-14-15-01-55.bpo-29235.47Fzwt.rst b/Misc/NEWS.d/next/Library/2018-05-14-15-01-55.bpo-29235.47Fzwt.rst deleted file mode 100644 index 2ce9096126ab..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-14-15-01-55.bpo-29235.47Fzwt.rst +++ /dev/null @@ -1,2 +0,0 @@ -The :class:`cProfile.Profile` class can now be used as a context manager. Patch -by Scott Sanderson. diff --git a/Misc/NEWS.d/next/Library/2018-05-14-17-49-34.bpo-33497.wWT6XM.rst b/Misc/NEWS.d/next/Library/2018-05-14-17-49-34.bpo-33497.wWT6XM.rst deleted file mode 100644 index d919dfdca75e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-14-17-49-34.bpo-33497.wWT6XM.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add errors param to cgi.parse_multipart and make an encoding in FieldStorage -use the given errors (needed for Twisted). Patch by Amber Brown. diff --git a/Misc/NEWS.d/next/Library/2018-05-14-18-05-35.bpo-33505.L8pAyt.rst b/Misc/NEWS.d/next/Library/2018-05-14-18-05-35.bpo-33505.L8pAyt.rst deleted file mode 100644 index 201b02781c18..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-14-18-05-35.bpo-33505.L8pAyt.rst +++ /dev/null @@ -1 +0,0 @@ -Optimize asyncio.ensure_future() by reordering if checks: 1.17x faster. diff --git a/Misc/NEWS.d/next/Library/2018-05-15-12-11-13.bpo-33504.czsHFg.rst b/Misc/NEWS.d/next/Library/2018-05-15-12-11-13.bpo-33504.czsHFg.rst deleted file mode 100644 index d5065d9224e7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-15-12-11-13.bpo-33504.czsHFg.rst +++ /dev/null @@ -1,2 +0,0 @@ -Switch the default dictionary implementation for :mod:`configparser` from -:class:`collections.OrderedDict` to the standard :class:`dict` type. diff --git a/Misc/NEWS.d/next/Library/2018-05-15-13-49-13.bpo-28167.p4RdQt.rst b/Misc/NEWS.d/next/Library/2018-05-15-13-49-13.bpo-28167.p4RdQt.rst deleted file mode 100644 index 0079c8a09ced..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-15-13-49-13.bpo-28167.p4RdQt.rst +++ /dev/null @@ -1 +0,0 @@ -Remove platform.linux_distribution, which was deprecated since 3.5. diff --git a/Misc/NEWS.d/next/Library/2018-05-15-15-03-48.bpo-28612.E9dz39.rst b/Misc/NEWS.d/next/Library/2018-05-15-15-03-48.bpo-28612.E9dz39.rst deleted file mode 100644 index e3e8f16eef07..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-15-15-03-48.bpo-28612.E9dz39.rst +++ /dev/null @@ -1,3 +0,0 @@ -Added support for Site Maps to urllib's ``RobotFileParser`` as -:meth:`RobotFileParser.site_maps() `. -Patch by Lady Red, based on patch by Peter Wirtz. diff --git a/Misc/NEWS.d/next/Library/2018-05-15-17-06-42.bpo-33516.ZzARe4.rst b/Misc/NEWS.d/next/Library/2018-05-15-17-06-42.bpo-33516.ZzARe4.rst deleted file mode 100644 index 77b1428f3c87..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-15-17-06-42.bpo-33516.ZzARe4.rst +++ /dev/null @@ -1 +0,0 @@ -:class:`unittest.mock.MagicMock` now supports the ``__round__`` magic method. diff --git a/Misc/NEWS.d/next/Library/2018-05-15-18-02-03.bpo-0.pj2Mbb.rst b/Misc/NEWS.d/next/Library/2018-05-15-18-02-03.bpo-0.pj2Mbb.rst deleted file mode 100644 index ba8514cdd895..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-15-18-02-03.bpo-0.pj2Mbb.rst +++ /dev/null @@ -1 +0,0 @@ -Fix failure in `typing.get_type_hints()` when ClassVar was provided as a string forward reference. diff --git a/Misc/NEWS.d/next/Library/2018-05-16-05-24-43.bpo-26819.taxbVT.rst b/Misc/NEWS.d/next/Library/2018-05-16-05-24-43.bpo-26819.taxbVT.rst deleted file mode 100644 index d407a5800318..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-16-05-24-43.bpo-26819.taxbVT.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix race condition with `ReadTransport.resume_reading` in Windows proactor -event loop. diff --git a/Misc/NEWS.d/next/Library/2018-05-16-09-30-27.bpo-33542.idNAcs.rst b/Misc/NEWS.d/next/Library/2018-05-16-09-30-27.bpo-33542.idNAcs.rst deleted file mode 100644 index 16ba799131f4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-16-09-30-27.bpo-33542.idNAcs.rst +++ /dev/null @@ -1,2 +0,0 @@ -Prevent ``uuid.get_node`` from using a DUID instead of a MAC on Windows. -Patch by Zvi Effron diff --git a/Misc/NEWS.d/next/Library/2018-05-16-10-07-40.bpo-33536._s0TE8.rst b/Misc/NEWS.d/next/Library/2018-05-16-10-07-40.bpo-33536._s0TE8.rst deleted file mode 100644 index 2c1024180d34..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-16-10-07-40.bpo-33536._s0TE8.rst +++ /dev/null @@ -1,2 +0,0 @@ -dataclasses.make_dataclass now checks for invalid field names and duplicate -fields. Also, added a check for invalid field specifications. diff --git a/Misc/NEWS.d/next/Library/2018-05-16-12-32-48.bpo-33541.kQORPE.rst b/Misc/NEWS.d/next/Library/2018-05-16-12-32-48.bpo-33541.kQORPE.rst deleted file mode 100644 index 137189849ea7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-16-12-32-48.bpo-33541.kQORPE.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove unused private method ``_strptime.LocaleTime.__pad`` (a.k.a. -``_LocaleTime__pad``). diff --git a/Misc/NEWS.d/next/Library/2018-05-16-14-57-58.bpo-33109.nPLL_S.rst b/Misc/NEWS.d/next/Library/2018-05-16-14-57-58.bpo-33109.nPLL_S.rst deleted file mode 100644 index be731f99f7f0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-16-14-57-58.bpo-33109.nPLL_S.rst +++ /dev/null @@ -1,2 +0,0 @@ -argparse subparsers are once again not required by default, reverting the -change in behavior introduced by bpo-26510 in 3.7.0a2. diff --git a/Misc/NEWS.d/next/Library/2018-05-16-17-05-48.bpo-33548.xWslmx.rst b/Misc/NEWS.d/next/Library/2018-05-16-17-05-48.bpo-33548.xWslmx.rst deleted file mode 100644 index 65585c152987..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-16-17-05-48.bpo-33548.xWslmx.rst +++ /dev/null @@ -1 +0,0 @@ -tempfile._candidate_tempdir_list should consider common TEMP locations diff --git a/Misc/NEWS.d/next/Library/2018-05-16-18-10-38.bpo-33540.wy9LRV.rst b/Misc/NEWS.d/next/Library/2018-05-16-18-10-38.bpo-33540.wy9LRV.rst deleted file mode 100644 index 9019cc14f515..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-16-18-10-38.bpo-33540.wy9LRV.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add a new ``block_on_close`` class attribute to ``ForkingMixIn`` and -``ThreadingMixIn`` classes of :mod:`socketserver`. diff --git a/Misc/NEWS.d/next/Library/2018-05-17-22-14-58.bpo-12486.HBeh62.rst b/Misc/NEWS.d/next/Library/2018-05-17-22-14-58.bpo-12486.HBeh62.rst deleted file mode 100644 index 89c88e27373b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-17-22-14-58.bpo-12486.HBeh62.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`tokenize.generate_tokens` is now documented as a public API to -tokenize unicode strings. It was previously present but undocumented. diff --git a/Misc/NEWS.d/next/Library/2018-05-17-22-53-08.bpo-28556.C6Hnd1.rst b/Misc/NEWS.d/next/Library/2018-05-17-22-53-08.bpo-28556.C6Hnd1.rst deleted file mode 100644 index 35e13bde1897..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-17-22-53-08.bpo-28556.C6Hnd1.rst +++ /dev/null @@ -1,3 +0,0 @@ -Do not simplify arguments to `typing.Union`. Now `Union[Manager, Employee]` -is not simplified to `Employee` at runtime. Such simplification previously -caused several bugs and limited possibilities for introspection. diff --git a/Misc/NEWS.d/next/Library/2018-05-18-21-50-47.bpo-33570.7CZy4t.rst b/Misc/NEWS.d/next/Library/2018-05-18-21-50-47.bpo-33570.7CZy4t.rst deleted file mode 100644 index 1c43cb3f9d9f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-18-21-50-47.bpo-33570.7CZy4t.rst +++ /dev/null @@ -1,3 +0,0 @@ -Change TLS 1.3 cipher suite settings for compatibility with OpenSSL -1.1.1-pre6 and newer. OpenSSL 1.1.1 will have TLS 1.3 ciphers enabled by -default. diff --git a/Misc/NEWS.d/next/Library/2018-05-18-22-52-34.bpo-21145.AiQMDx.rst b/Misc/NEWS.d/next/Library/2018-05-18-22-52-34.bpo-21145.AiQMDx.rst deleted file mode 100644 index a5973c33a30b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-18-22-52-34.bpo-21145.AiQMDx.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add ``functools.cached_property`` decorator, for computed properties cached -for the life of the instance. diff --git a/Misc/NEWS.d/next/Library/2018-05-19-15-58-14.bpo-33582.qBZPmF.rst b/Misc/NEWS.d/next/Library/2018-05-19-15-58-14.bpo-33582.qBZPmF.rst deleted file mode 100644 index 3471c0e7f0b8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-19-15-58-14.bpo-33582.qBZPmF.rst +++ /dev/null @@ -1 +0,0 @@ -Emit a deprecation warning for inspect.formatargspec diff --git a/Misc/NEWS.d/next/Library/2018-05-22-11-55-33.bpo-33604.6V4JcO.rst b/Misc/NEWS.d/next/Library/2018-05-22-11-55-33.bpo-33604.6V4JcO.rst deleted file mode 100644 index 200a9d5f661a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-22-11-55-33.bpo-33604.6V4JcO.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove HMAC default to md5 marked for removal in 3.8 (removal originally -planned in 3.6, bump to 3.8 in gh-7062). diff --git a/Misc/NEWS.d/next/Library/2018-05-22-13-05-12.bpo-30877.JZEGjI.rst b/Misc/NEWS.d/next/Library/2018-05-22-13-05-12.bpo-30877.JZEGjI.rst deleted file mode 100644 index 4be0fae4ecb6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-22-13-05-12.bpo-30877.JZEGjI.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed a bug in the Python implementation of the JSON decoder that prevented -the cache of parsed strings from clearing after finishing the decoding. -Based on patch by c-fos. diff --git a/Misc/NEWS.d/next/Library/2018-05-23-00-26-27.bpo-11874.glK5iP.rst b/Misc/NEWS.d/next/Library/2018-05-23-00-26-27.bpo-11874.glK5iP.rst deleted file mode 100644 index 6c75f142c4be..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-23-00-26-27.bpo-11874.glK5iP.rst +++ /dev/null @@ -1,2 +0,0 @@ -Use a better regex when breaking usage into wrappable parts. Avoids bogus -assertion errors from custom metavar strings. diff --git a/Misc/NEWS.d/next/Library/2018-05-23-14-58-05.bpo-33623.wAw1cF.rst b/Misc/NEWS.d/next/Library/2018-05-23-14-58-05.bpo-33623.wAw1cF.rst deleted file mode 100644 index 641874c3ca39..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-23-14-58-05.bpo-33623.wAw1cF.rst +++ /dev/null @@ -1 +0,0 @@ -Fix possible SIGSGV when asyncio.Future is created in __del__ diff --git a/Misc/NEWS.d/next/Library/2018-05-23-17-07-54.bpo-33625.nzQgD8.rst b/Misc/NEWS.d/next/Library/2018-05-23-17-07-54.bpo-33625.nzQgD8.rst deleted file mode 100644 index 265fab2289c2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-23-17-07-54.bpo-33625.nzQgD8.rst +++ /dev/null @@ -1,3 +0,0 @@ -Release GIL on `grp.getgrnam`, `grp.getgrgid`, `pwd.getpwnam` and -`pwd.getpwuid` if reentrant variants of these functions are available. -Patch by William Grzybowski. diff --git a/Misc/NEWS.d/next/Library/2018-05-23-20-14-34.bpo-33618.xU39lr.rst b/Misc/NEWS.d/next/Library/2018-05-23-20-14-34.bpo-33618.xU39lr.rst deleted file mode 100644 index 6cc2452b145c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-23-20-14-34.bpo-33618.xU39lr.rst +++ /dev/null @@ -1,2 +0,0 @@ -Finalize and document preliminary and experimental TLS 1.3 support with -OpenSSL 1.1.1 diff --git a/Misc/NEWS.d/next/Library/2018-05-24-09-15-52.bpo-33238.ooDfoo.rst b/Misc/NEWS.d/next/Library/2018-05-24-09-15-52.bpo-33238.ooDfoo.rst deleted file mode 100644 index b03ab1068889..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-24-09-15-52.bpo-33238.ooDfoo.rst +++ /dev/null @@ -1,4 +0,0 @@ -Add ``InvalidStateError`` to :mod:`concurrent.futures`. -``Future.set_result`` and ``Future.set_exception`` now raise -``InvalidStateError`` if the futures are not pending or running. Patch by -Jason Haydaman. diff --git a/Misc/NEWS.d/next/Library/2018-05-24-17-41-36.bpo-32493.5tAoAu.rst b/Misc/NEWS.d/next/Library/2018-05-24-17-41-36.bpo-32493.5tAoAu.rst deleted file mode 100644 index 32f88dd0388d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-24-17-41-36.bpo-32493.5tAoAu.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed :func:`uuid.uuid1` on FreeBSD. diff --git a/Misc/NEWS.d/next/Library/2018-05-26-10-13-59.bpo-33652.humFJ1.rst b/Misc/NEWS.d/next/Library/2018-05-26-10-13-59.bpo-33652.humFJ1.rst deleted file mode 100644 index f5499f1b53ce..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-26-10-13-59.bpo-33652.humFJ1.rst +++ /dev/null @@ -1,2 +0,0 @@ -Pickles of type variables and subscripted generics are now future-proof and -compatible with older Python versions. diff --git a/Misc/NEWS.d/next/Library/2018-05-26-13-09-34.bpo-33654.IbYWxA.rst b/Misc/NEWS.d/next/Library/2018-05-26-13-09-34.bpo-33654.IbYWxA.rst deleted file mode 100644 index 3ae506ddc55f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-26-13-09-34.bpo-33654.IbYWxA.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix transport.set_protocol() to support switching between asyncio.Protocol -and asyncio.BufferedProtocol. Fix loop.start_tls() to work with -asyncio.BufferedProtocols. diff --git a/Misc/NEWS.d/next/Library/2018-05-28-12-29-54.bpo-33672.GM_Xm_.rst b/Misc/NEWS.d/next/Library/2018-05-28-12-29-54.bpo-33672.GM_Xm_.rst deleted file mode 100644 index 36373c028639..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-28-12-29-54.bpo-33672.GM_Xm_.rst +++ /dev/null @@ -1 +0,0 @@ -Fix Task.__repr__ crash with Cython's bogus coroutines diff --git a/Misc/NEWS.d/next/Library/2018-05-28-15-55-12.bpo-33469.hmXBpY.rst b/Misc/NEWS.d/next/Library/2018-05-28-15-55-12.bpo-33469.hmXBpY.rst deleted file mode 100644 index cc1b2e436f2a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-28-15-55-12.bpo-33469.hmXBpY.rst +++ /dev/null @@ -1 +0,0 @@ -Fix RuntimeError after closing loop that used run_in_executor diff --git a/Misc/NEWS.d/next/Library/2018-05-28-16-19-35.bpo-32410.Z1DZaF.rst b/Misc/NEWS.d/next/Library/2018-05-28-16-19-35.bpo-32410.Z1DZaF.rst deleted file mode 100644 index 2d7bb2032ac5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-28-16-19-35.bpo-32410.Z1DZaF.rst +++ /dev/null @@ -1 +0,0 @@ -Avoid blocking on file IO in sendfile fallback code diff --git a/Misc/NEWS.d/next/Library/2018-05-28-16-40-32.bpo-32610.KvUAsL.rst b/Misc/NEWS.d/next/Library/2018-05-28-16-40-32.bpo-32610.KvUAsL.rst deleted file mode 100644 index 372908063247..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-28-16-40-32.bpo-32610.KvUAsL.rst +++ /dev/null @@ -1 +0,0 @@ -Make asyncio.all_tasks() return only pending tasks. diff --git a/Misc/NEWS.d/next/Library/2018-05-28-18-40-26.bpo-31647.s4Fad3.rst b/Misc/NEWS.d/next/Library/2018-05-28-18-40-26.bpo-31647.s4Fad3.rst deleted file mode 100644 index 61cc8baa1cd5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-28-18-40-26.bpo-31647.s4Fad3.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed bug where calling write_eof() on a _SelectorSocketTransport after it's -already closed raises AttributeError. diff --git a/Misc/NEWS.d/next/Library/2018-05-28-22-49-59.bpo-33674.6LFFj7.rst b/Misc/NEWS.d/next/Library/2018-05-28-22-49-59.bpo-33674.6LFFj7.rst deleted file mode 100644 index 1e9868073f78..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-28-22-49-59.bpo-33674.6LFFj7.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix a race condition in SSLProtocol.connection_made() of asyncio.sslproto: -start immediately the handshake instead of using call_soon(). Previously, -data_received() could be called before the handshake started, causing the -handshake to hang or fail. diff --git a/Misc/NEWS.d/next/Library/2018-05-28-23-25-17.bpo-33671.GIdKKi.rst b/Misc/NEWS.d/next/Library/2018-05-28-23-25-17.bpo-33671.GIdKKi.rst deleted file mode 100644 index b1523f235da6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-28-23-25-17.bpo-33671.GIdKKi.rst +++ /dev/null @@ -1,10 +0,0 @@ -:func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`, -:func:`shutil.copytree` and :func:`shutil.move` use platform-specific -fast-copy syscalls on Linux, Solaris and macOS in order to copy the file -more efficiently. -On Windows :func:`shutil.copyfile` uses a bigger default buffer size (1 MiB -instead of 16 KiB) and a :func:`memoryview`-based variant of -:func:`shutil.copyfileobj` is used. -The speedup for copying a 512MiB file is about +26% on Linux, +50% on macOS and -+40% on Windows. Also, much less CPU cycles are consumed. -(Contributed by Giampaolo Rodola' in :issue:`25427`.) diff --git a/Misc/NEWS.d/next/Library/2018-05-29-00-37-56.bpo-33674.2IkGhL.rst b/Misc/NEWS.d/next/Library/2018-05-29-00-37-56.bpo-33674.2IkGhL.rst deleted file mode 100644 index 66baca16d69f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-29-00-37-56.bpo-33674.2IkGhL.rst +++ /dev/null @@ -1,2 +0,0 @@ -Pause the transport as early as possible to further reduce the risk of -data_received() being called before connection_made(). diff --git a/Misc/NEWS.d/next/Library/2018-05-29-01-13-39.bpo-33654.sa81Si.rst b/Misc/NEWS.d/next/Library/2018-05-29-01-13-39.bpo-33654.sa81Si.rst deleted file mode 100644 index 39e8e615d8c4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-29-01-13-39.bpo-33654.sa81Si.rst +++ /dev/null @@ -1 +0,0 @@ -Support protocol type switching in SSLTransport.set_protocol(). diff --git a/Misc/NEWS.d/next/Library/2018-05-29-12-51-18.bpo-32684.ZEIism.rst b/Misc/NEWS.d/next/Library/2018-05-29-12-51-18.bpo-32684.ZEIism.rst deleted file mode 100644 index b360bbcf7998..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-29-12-51-18.bpo-32684.ZEIism.rst +++ /dev/null @@ -1 +0,0 @@ -Fix gather to propagate cancellation of itself even with return_exceptions. diff --git a/Misc/NEWS.d/next/Library/2018-05-29-15-32-18.bpo-32751.oBTqr7.rst b/Misc/NEWS.d/next/Library/2018-05-29-15-32-18.bpo-32751.oBTqr7.rst deleted file mode 100644 index 3e27cd461ca8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-29-15-32-18.bpo-32751.oBTqr7.rst +++ /dev/null @@ -1,2 +0,0 @@ -When cancelling the task due to a timeout, :meth:`asyncio.wait_for` will now -wait until the cancellation is complete. diff --git a/Misc/NEWS.d/next/Library/2018-05-30-00-26-05.bpo-33197.XkE2kL.rst b/Misc/NEWS.d/next/Library/2018-05-30-00-26-05.bpo-33197.XkE2kL.rst deleted file mode 100644 index e6f7ac3309b3..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-30-00-26-05.bpo-33197.XkE2kL.rst +++ /dev/null @@ -1 +0,0 @@ -Add description property for _ParameterKind diff --git a/Misc/NEWS.d/next/Library/2018-05-30-16-00-06.bpo-2504.BynUvU.rst b/Misc/NEWS.d/next/Library/2018-05-30-16-00-06.bpo-2504.BynUvU.rst deleted file mode 100644 index 72b0f7044720..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-30-16-00-06.bpo-2504.BynUvU.rst +++ /dev/null @@ -1 +0,0 @@ -Add gettext.pgettext() and variants. diff --git a/Misc/NEWS.d/next/Library/2018-05-31-06-48-55.bpo-31014.SNY681.rst b/Misc/NEWS.d/next/Library/2018-05-31-06-48-55.bpo-31014.SNY681.rst deleted file mode 100644 index bd3c8bbd0f2b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-31-06-48-55.bpo-31014.SNY681.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed creating a controller for :mod:`webbrowser` when a user specifies a -path to an entry in the BROWSER environment variable. Based on patch by -John Still. diff --git a/Misc/NEWS.d/next/Library/2018-06-01-10-55-48.bpo-33734.x1W9x0.rst b/Misc/NEWS.d/next/Library/2018-06-01-10-55-48.bpo-33734.x1W9x0.rst deleted file mode 100644 index 305d40ed8a1b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-01-10-55-48.bpo-33734.x1W9x0.rst +++ /dev/null @@ -1 +0,0 @@ -asyncio/ssl: Fix AttributeError, increase default handshake timeout diff --git a/Misc/NEWS.d/next/Library/2018-06-03-22-41-59.bpo-33767.2e82g3.rst b/Misc/NEWS.d/next/Library/2018-06-03-22-41-59.bpo-33767.2e82g3.rst deleted file mode 100644 index 348330189095..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-03-22-41-59.bpo-33767.2e82g3.rst +++ /dev/null @@ -1,3 +0,0 @@ -The concatenation (``+``) and repetition (``*``) sequence operations now -raise :exc:`TypeError` instead of :exc:`SystemError` when performed on -:class:`mmap.mmap` objects. Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Library/2018-06-04-13-46-39.bpo-33769.D_pxYz.rst b/Misc/NEWS.d/next/Library/2018-06-04-13-46-39.bpo-33769.D_pxYz.rst deleted file mode 100644 index 9a124fafc6d2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-04-13-46-39.bpo-33769.D_pxYz.rst +++ /dev/null @@ -1,2 +0,0 @@ -asyncio/start_tls: Fix error message; cancel callbacks in case of an -unhandled error; mark SSLTransport as closed if it is aborted. diff --git a/Misc/NEWS.d/next/Library/2018-06-05-11-29-26.bpo-33770.oBhxxw.rst b/Misc/NEWS.d/next/Library/2018-06-05-11-29-26.bpo-33770.oBhxxw.rst deleted file mode 100644 index a1529dda1a6d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-05-11-29-26.bpo-33770.oBhxxw.rst +++ /dev/null @@ -1 +0,0 @@ -improve base64 exception message for encoded inputs of invalid length diff --git a/Misc/NEWS.d/next/Library/2018-06-05-12-43-25.bpo-33165.9TIsVf.rst b/Misc/NEWS.d/next/Library/2018-06-05-12-43-25.bpo-33165.9TIsVf.rst deleted file mode 100644 index b3b2126479db..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-05-12-43-25.bpo-33165.9TIsVf.rst +++ /dev/null @@ -1,2 +0,0 @@ -Added a stacklevel parameter to logging calls to allow use of wrapper/helper -functions for logging APIs. diff --git a/Misc/NEWS.d/next/Library/2018-06-05-20-22-30.bpo-33778._tSAS6.rst b/Misc/NEWS.d/next/Library/2018-06-05-20-22-30.bpo-33778._tSAS6.rst deleted file mode 100644 index 7301b3641565..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-05-20-22-30.bpo-33778._tSAS6.rst +++ /dev/null @@ -1 +0,0 @@ -Update ``unicodedata``'s database to Unicode version 11.0.0. diff --git a/Misc/NEWS.d/next/Library/2018-06-06-22-01-33.bpo-33274.teYqv8.rst b/Misc/NEWS.d/next/Library/2018-06-06-22-01-33.bpo-33274.teYqv8.rst deleted file mode 100644 index 420652bddf6e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-06-22-01-33.bpo-33274.teYqv8.rst +++ /dev/null @@ -1,3 +0,0 @@ -W3C DOM Level 1 specifies return value of Element.removeAttributeNode() as -"The Attr node that was removed." xml.dom.minidom now complies with this -requirement. diff --git a/Misc/NEWS.d/next/Library/2018-06-07-12-38-12.bpo-33792.3aKG7u.rst b/Misc/NEWS.d/next/Library/2018-06-07-12-38-12.bpo-33792.3aKG7u.rst deleted file mode 100644 index 8c01764bc682..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-07-12-38-12.bpo-33792.3aKG7u.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add asyncio.WindowsSelectorEventLoopPolicy and -asyncio.WindowsProactorEventLoopPolicy. diff --git a/Misc/NEWS.d/next/Library/2018-06-07-18-55-35.bpo-32493.1Bte62.rst b/Misc/NEWS.d/next/Library/2018-06-07-18-55-35.bpo-32493.1Bte62.rst deleted file mode 100644 index 3d8bb3ed305c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-07-18-55-35.bpo-32493.1Bte62.rst +++ /dev/null @@ -1,2 +0,0 @@ -Correct test for ``uuid_enc_be`` availability in ``configure.ac``. -Patch by Michael Felt. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2018-06-07-23-51-00.bpo-33694.F1zIR1.rst b/Misc/NEWS.d/next/Library/2018-06-07-23-51-00.bpo-33694.F1zIR1.rst deleted file mode 100644 index 6b7f15cf8d43..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-07-23-51-00.bpo-33694.F1zIR1.rst +++ /dev/null @@ -1,2 +0,0 @@ -asyncio: Fix a race condition causing data loss on -pause_reading()/resume_reading() when using the ProactorEventLoop. diff --git a/Misc/NEWS.d/next/Library/2018-06-08-00-29-40.bpo-33476.R0Bhlj.rst b/Misc/NEWS.d/next/Library/2018-06-08-00-29-40.bpo-33476.R0Bhlj.rst deleted file mode 100644 index 8104753c055e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-08-00-29-40.bpo-33476.R0Bhlj.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix _header_value_parser.py when address group is missing final ';'. -Contributed by Enrique Perez-Terron diff --git a/Misc/NEWS.d/next/Library/2018-06-08-17-34-16.bpo-30805.3qCWa0.rst b/Misc/NEWS.d/next/Library/2018-06-08-17-34-16.bpo-30805.3qCWa0.rst deleted file mode 100644 index e1ba57675397..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-08-17-34-16.bpo-30805.3qCWa0.rst +++ /dev/null @@ -1 +0,0 @@ -Avoid race condition with debug logging diff --git a/Misc/NEWS.d/next/Library/2018-06-08-23-55-34.bpo-33578.7oSsjG.rst b/Misc/NEWS.d/next/Library/2018-06-08-23-55-34.bpo-33578.7oSsjG.rst deleted file mode 100644 index 4e2e4627dc54..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-08-23-55-34.bpo-33578.7oSsjG.rst +++ /dev/null @@ -1 +0,0 @@ -Implement multibyte encoder/decoder state methods diff --git a/Misc/NEWS.d/next/Library/2018-06-10-09-43-54.bpo-27397.0_fFQR.rst b/Misc/NEWS.d/next/Library/2018-06-10-09-43-54.bpo-27397.0_fFQR.rst deleted file mode 100644 index 109817267bd0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-10-09-43-54.bpo-27397.0_fFQR.rst +++ /dev/null @@ -1 +0,0 @@ -Make email module properly handle invalid-length base64 strings. diff --git a/Misc/NEWS.d/next/Library/2018-06-10-12-15-26.bpo-32108.iEkvh0.rst b/Misc/NEWS.d/next/Library/2018-06-10-12-15-26.bpo-32108.iEkvh0.rst deleted file mode 100644 index 154d88471f6a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-10-12-15-26.bpo-32108.iEkvh0.rst +++ /dev/null @@ -1 +0,0 @@ -In configparser, don't clear section when it is assigned to itself. diff --git a/Misc/NEWS.d/next/Library/2018-06-10-13-26-02.bpo-33812.frGAOr.rst b/Misc/NEWS.d/next/Library/2018-06-10-13-26-02.bpo-33812.frGAOr.rst deleted file mode 100644 index 0dc3df6a7953..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-10-13-26-02.bpo-33812.frGAOr.rst +++ /dev/null @@ -1,2 +0,0 @@ -Datetime instance d with non-None tzinfo, but with d.tzinfo.utcoffset(d) -returning None is now treated as naive by the astimezone() method. diff --git a/Misc/NEWS.d/next/Library/2018-06-10-14-08-52.bpo-33687.1zZdnA.rst b/Misc/NEWS.d/next/Library/2018-06-10-14-08-52.bpo-33687.1zZdnA.rst deleted file mode 100644 index 63c5bfcac474..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-10-14-08-52.bpo-33687.1zZdnA.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix the call to ``os.chmod()`` for ``uu.decode()`` if a mode is given or -decoded. Patch by Timo Furrer. diff --git a/Misc/NEWS.d/next/Library/2018-06-10-15-14-17.bpo-33805.5LAz5a.rst b/Misc/NEWS.d/next/Library/2018-06-10-15-14-17.bpo-33805.5LAz5a.rst deleted file mode 100644 index 74bcf6d7c8c8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-10-15-14-17.bpo-33805.5LAz5a.rst +++ /dev/null @@ -1 +0,0 @@ -Improve error message of dataclasses.replace() when an InitVar is not specified diff --git a/Misc/NEWS.d/next/Library/2018-06-10-19-29-17.bpo-30167.G5EgC5.rst b/Misc/NEWS.d/next/Library/2018-06-10-19-29-17.bpo-30167.G5EgC5.rst deleted file mode 100644 index 072a001adab8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-10-19-29-17.bpo-30167.G5EgC5.rst +++ /dev/null @@ -1 +0,0 @@ -Prevent site.main() exception if PYTHONSTARTUP is set. Patch by Steve Weber. diff --git a/Misc/NEWS.d/next/Library/2018-06-12-18-34-54.bpo-33842.RZXSGu.rst b/Misc/NEWS.d/next/Library/2018-06-12-18-34-54.bpo-33842.RZXSGu.rst deleted file mode 100644 index 4d8d7c2fb2d0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-12-18-34-54.bpo-33842.RZXSGu.rst +++ /dev/null @@ -1 +0,0 @@ -Remove ``tarfile.filemode`` which is deprecated since Python 3.3. diff --git a/Misc/NEWS.d/next/Library/2018-06-12-18-59-16.bpo-33843.qVAK8g.rst b/Misc/NEWS.d/next/Library/2018-06-12-18-59-16.bpo-33843.qVAK8g.rst deleted file mode 100644 index c79b2513095f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-12-18-59-16.bpo-33843.qVAK8g.rst +++ /dev/null @@ -1 +0,0 @@ -Remove deprecated ``cgi.escape``, ``cgi.parse_qs`` and ``cgi.parse_qsl``. diff --git a/Misc/NEWS.d/next/Library/2018-06-13-20-33-29.bpo-26544.hQ1oMt.rst b/Misc/NEWS.d/next/Library/2018-06-13-20-33-29.bpo-26544.hQ1oMt.rst deleted file mode 100644 index e2cd0bad6e2c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-13-20-33-29.bpo-26544.hQ1oMt.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed implementation of :func:`platform.libc_ver`. It almost always returned -version '2.9' for glibc. diff --git a/Misc/NEWS.d/next/Library/2018-06-14-17-53-30.bpo-33721.8i9_9A.rst b/Misc/NEWS.d/next/Library/2018-06-14-17-53-30.bpo-33721.8i9_9A.rst deleted file mode 100644 index 987bf4696d56..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-14-17-53-30.bpo-33721.8i9_9A.rst +++ /dev/null @@ -1,12 +0,0 @@ -:mod:`os.path` functions that return a boolean result like -:func:`~os.path.exists`, :func:`~os.path.lexists`, :func:`~os.path.isdir`, -:func:`~os.path.isfile`, :func:`~os.path.islink`, and :func:`~os.path.ismount`, -and :mod:`pathlib.Path` methods that return a boolean result like -:meth:`~pathlib.Path.exists()`, :meth:`~pathlib.Path.is_dir()`, -:meth:`~pathlib.Path.is_file()`, :meth:`~pathlib.Path.is_mount()`, -:meth:`~pathlib.Path.is_symlink()`, :meth:`~pathlib.Path.is_block_device()`, -:meth:`~pathlib.Path.is_char_device()`, :meth:`~pathlib.Path.is_fifo()`, -:meth:`~pathlib.Path.is_socket()` now return ``False`` instead of raising -:exc:`ValueError` or its subclasses :exc:`UnicodeEncodeError` and -:exc:`UnicodeDecodeError` for paths that contain characters or bytes -unrepresentable at the OS level. diff --git a/Misc/NEWS.d/next/Library/2018-06-17-10-48-03.bpo-33663.sUuGmq.rst b/Misc/NEWS.d/next/Library/2018-06-17-10-48-03.bpo-33663.sUuGmq.rst deleted file mode 100644 index b2a8e3cc00c6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-17-10-48-03.bpo-33663.sUuGmq.rst +++ /dev/null @@ -1 +0,0 @@ -Convert content length to string before putting to header. diff --git a/Misc/NEWS.d/next/Library/2018-06-17-11-46-20.bpo-33833.RnEqvM.rst b/Misc/NEWS.d/next/Library/2018-06-17-11-46-20.bpo-33833.RnEqvM.rst deleted file mode 100644 index 1a7672f27ce0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-17-11-46-20.bpo-33833.RnEqvM.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed bug in asyncio where ProactorSocketTransport logs AssertionError if -force closed during write. diff --git a/Misc/NEWS.d/next/Library/2018-06-21-09-33-02.bpo-32568.f_meGY.rst b/Misc/NEWS.d/next/Library/2018-06-21-09-33-02.bpo-32568.f_meGY.rst deleted file mode 100644 index 3ade8cf6f3d4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-21-09-33-02.bpo-32568.f_meGY.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make select.epoll() and its documentation consistent regarding *sizehint* and -*flags*. diff --git a/Misc/NEWS.d/next/Library/2018-06-21-11-35-47.bpo-33916.cZgPCD.rst b/Misc/NEWS.d/next/Library/2018-06-21-11-35-47.bpo-33916.cZgPCD.rst deleted file mode 100644 index 65b9d2bf89a5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-21-11-35-47.bpo-33916.cZgPCD.rst +++ /dev/null @@ -1,2 +0,0 @@ -bz2 and lzma: When Decompressor.__init__() is called twice, free the old -lock to not leak memory. diff --git a/Misc/NEWS.d/next/Library/2018-06-23-12-47-37.bpo-33695.seRTxh.rst b/Misc/NEWS.d/next/Library/2018-06-23-12-47-37.bpo-33695.seRTxh.rst deleted file mode 100644 index 21950453b0ad..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-23-12-47-37.bpo-33695.seRTxh.rst +++ /dev/null @@ -1,7 +0,0 @@ -:func:`shutil.copytree` uses :func:`os.scandir` function and all copy -functions depending from it use cached :func:`os.stat` values. The speedup -for copying a directory with 8000 files is around +9% on Linux, +20% on -Windows and + 30% on a Windows SMB share. Also the number of :func:`os.stat` -syscalls is reduced by 38% making :func:`shutil.copytree` especially faster -on network filesystems. -(Contributed by Giampaolo Rodola' in :issue:`33695`.) diff --git a/Misc/NEWS.d/next/Library/2018-06-23-18-09-28.bpo-33897.Hu0yvt.rst b/Misc/NEWS.d/next/Library/2018-06-23-18-09-28.bpo-33897.Hu0yvt.rst deleted file mode 100644 index 64ec3a166f80..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-23-18-09-28.bpo-33897.Hu0yvt.rst +++ /dev/null @@ -1 +0,0 @@ -Added a 'force' keyword argument to logging.basicConfig(). diff --git a/Misc/NEWS.d/next/Library/2018-06-24-01-57-14.bpo-33899.IaOcAr.rst b/Misc/NEWS.d/next/Library/2018-06-24-01-57-14.bpo-33899.IaOcAr.rst deleted file mode 100644 index 21c909599363..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-24-01-57-14.bpo-33899.IaOcAr.rst +++ /dev/null @@ -1,3 +0,0 @@ -Tokenize module now implicitly emits a NEWLINE when provided with input that -does not have a trailing new line. This behavior now matches what the C -tokenizer does internally. Contributed by Ammar Askar. diff --git a/Misc/NEWS.d/next/Library/2018-06-26-02-09-18.bpo-33929.OcCLah.rst b/Misc/NEWS.d/next/Library/2018-06-26-02-09-18.bpo-33929.OcCLah.rst deleted file mode 100644 index 6ddb17c81cd9..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-26-02-09-18.bpo-33929.OcCLah.rst +++ /dev/null @@ -1,5 +0,0 @@ -multiprocessing: Fix a race condition in Popen of -multiprocessing.popen_spawn_win32. The child process now duplicates the read -end of pipe instead of "stealing" it. Previously, the read end of pipe was -"stolen" by the child process, but it leaked a handle if the child process had -been terminated before it could steal the handle from the parent process. diff --git a/Misc/NEWS.d/next/Library/2018-06-26-16-55-59.bpo-25007.6LQWOF.rst b/Misc/NEWS.d/next/Library/2018-06-26-16-55-59.bpo-25007.6LQWOF.rst deleted file mode 100644 index b7d832be1ade..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-26-16-55-59.bpo-25007.6LQWOF.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add :func:`copy.copy` and :func:`copy.deepcopy` support to zlib compressors -and decompressors. Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Library/2018-06-26-19-03-56.bpo-33871.XhlrGU.rst b/Misc/NEWS.d/next/Library/2018-06-26-19-03-56.bpo-33871.XhlrGU.rst deleted file mode 100644 index 9fd15356c72d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-26-19-03-56.bpo-33871.XhlrGU.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed integer overflow in :func:`os.readv`, :func:`os.writev`, -:func:`os.preadv` and :func:`os.pwritev` and in :func:`os.sendfile` with -*headers* or *trailers* arguments (on BSD-based OSes and macOS). diff --git a/Misc/NEWS.d/next/Library/2018-06-27-00-31-30.bpo-24567.FuePyY.rst b/Misc/NEWS.d/next/Library/2018-06-27-00-31-30.bpo-24567.FuePyY.rst deleted file mode 100644 index d496f2bc411c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-27-00-31-30.bpo-24567.FuePyY.rst +++ /dev/null @@ -1,2 +0,0 @@ -Improve random.choices() to handle subnormal input weights that could -occasionally trigger an IndexError. diff --git a/Misc/NEWS.d/next/Library/2018-06-28-13-00-12.bpo-27500._s1gZ5.rst b/Misc/NEWS.d/next/Library/2018-06-28-13-00-12.bpo-27500._s1gZ5.rst deleted file mode 100644 index 4762e2795643..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-28-13-00-12.bpo-27500._s1gZ5.rst +++ /dev/null @@ -1 +0,0 @@ -Fix getaddrinfo to resolve IPv6 addresses correctly. diff --git a/Misc/NEWS.d/next/Library/2018-06-28-14-56-44.bpo-33974.SA8nNP.rst b/Misc/NEWS.d/next/Library/2018-06-28-14-56-44.bpo-33974.SA8nNP.rst deleted file mode 100644 index 8c03babd4f2e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-28-14-56-44.bpo-33974.SA8nNP.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed passing lists and tuples of strings containing special characters -``"``, ``\``, ``{``, ``}`` and ``\n`` as options to :mod:`~tkinter.ttk` -widgets. diff --git a/Misc/NEWS.d/next/Library/2018-06-29-00-31-36.bpo-14117.3nvDuR.rst b/Misc/NEWS.d/next/Library/2018-06-29-00-31-36.bpo-14117.3nvDuR.rst deleted file mode 100644 index 13cabd4a43c4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-29-00-31-36.bpo-14117.3nvDuR.rst +++ /dev/null @@ -1,3 +0,0 @@ -Make minor tweaks to turtledemo. The 'wikipedia' example is now 'rosette', -describing what it draws. The 'penrose' print output is reduced. The'1024' -output of 'tree' is eliminated. diff --git a/Misc/NEWS.d/next/Library/2018-06-29-12-23-34.bpo-33978.y4csIw.rst b/Misc/NEWS.d/next/Library/2018-06-29-12-23-34.bpo-33978.y4csIw.rst deleted file mode 100644 index 12638957ee38..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-29-12-23-34.bpo-33978.y4csIw.rst +++ /dev/null @@ -1,2 +0,0 @@ -Closed existing logging handlers before reconfiguration via fileConfig -and dictConfig. Patch by Karthikeyan Singaravelan. diff --git a/Misc/NEWS.d/next/Library/2018-06-29-13-05-01.bpo-34003.Iu831h.rst b/Misc/NEWS.d/next/Library/2018-06-29-13-05-01.bpo-34003.Iu831h.rst deleted file mode 100644 index 7bc5e1200ae8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-29-13-05-01.bpo-34003.Iu831h.rst +++ /dev/null @@ -1,2 +0,0 @@ -csv.DictReader now creates dicts instead of OrderedDicts. Patch by Michael -Selik. diff --git a/Misc/NEWS.d/next/Library/2018-07-02-05-59-11.bpo-34019.ZXJIife.rst b/Misc/NEWS.d/next/Library/2018-07-02-05-59-11.bpo-34019.ZXJIife.rst deleted file mode 100644 index 8a9fe79b80cf..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-02-05-59-11.bpo-34019.ZXJIife.rst +++ /dev/null @@ -1,2 +0,0 @@ -webbrowser: Correct the arguments passed to Opera Browser when opening a new URL -using the ``webbrowser`` module. Patch by Bumsik Kim. diff --git a/Misc/NEWS.d/next/Library/2018-07-04-07-36-53.bpo-34010.VNDkde.rst b/Misc/NEWS.d/next/Library/2018-07-04-07-36-53.bpo-34010.VNDkde.rst deleted file mode 100644 index 4cb7892ee81a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-04-07-36-53.bpo-34010.VNDkde.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed a performance regression for reading streams with tarfile. The -buffered read should use a list, instead of appending to a bytes object. diff --git a/Misc/NEWS.d/next/Library/2018-07-04-17-14-26.bpo-34044.KWAu4y.rst b/Misc/NEWS.d/next/Library/2018-07-04-17-14-26.bpo-34044.KWAu4y.rst deleted file mode 100644 index 42a6ffbf84af..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-04-17-14-26.bpo-34044.KWAu4y.rst +++ /dev/null @@ -1,3 +0,0 @@ -``subprocess.Popen`` now copies the *startupinfo* argument to leave it -unchanged: it will modify the copy, so that the same ``STARTUPINFO`` object can -be used multiple times. diff --git a/Misc/NEWS.d/next/Library/2018-07-04-21-14-35.bpo-34043.0YJNq9.rst b/Misc/NEWS.d/next/Library/2018-07-04-21-14-35.bpo-34043.0YJNq9.rst deleted file mode 100644 index c035ba7275f8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-04-21-14-35.bpo-34043.0YJNq9.rst +++ /dev/null @@ -1 +0,0 @@ -Optimize tarfile uncompress performance about 15% when gzip is used. diff --git a/Misc/NEWS.d/next/Library/2018-07-05-18-37-05.bpo-34054.nWRS6M.rst b/Misc/NEWS.d/next/Library/2018-07-05-18-37-05.bpo-34054.nWRS6M.rst deleted file mode 100644 index 9d4d1f24db49..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-05-18-37-05.bpo-34054.nWRS6M.rst +++ /dev/null @@ -1,3 +0,0 @@ -The multiprocessing module now uses the monotonic clock -:func:`time.monotonic` instead of the system clock :func:`time.time` to -implement timeout. diff --git a/Misc/NEWS.d/next/Library/2018-07-05-22-45-46.bpo-34056.86isrU.rst b/Misc/NEWS.d/next/Library/2018-07-05-22-45-46.bpo-34056.86isrU.rst deleted file mode 100644 index edc0135efc60..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-05-22-45-46.bpo-34056.86isrU.rst +++ /dev/null @@ -1,3 +0,0 @@ -Ensure the loader shim created by ``imp.load_module`` always returns bytes -from its ``get_data()`` function. This fixes using ``imp.load_module`` with -:pep:`552` hash-based pycs. diff --git a/Misc/NEWS.d/next/Library/2018-07-06-15-06-32.bpo-34041.0zrKLh.rst b/Misc/NEWS.d/next/Library/2018-07-06-15-06-32.bpo-34041.0zrKLh.rst deleted file mode 100644 index c41876bc60cb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-06-15-06-32.bpo-34041.0zrKLh.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add the parameter *deterministic* to the -:meth:`sqlite3.Connection.create_function` method. Patch by Sergey Fedoseev. diff --git a/Misc/NEWS.d/next/Library/2018-07-08-18-49-41.bpo-33967.lhaAez.rst b/Misc/NEWS.d/next/Library/2018-07-08-18-49-41.bpo-33967.lhaAez.rst deleted file mode 100644 index 1e1e745789a4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-08-18-49-41.bpo-33967.lhaAez.rst +++ /dev/null @@ -1,2 +0,0 @@ -functools.singledispatch now raises TypeError instead of IndexError when no -positional arguments are passed. diff --git a/Misc/NEWS.d/next/Library/2018-07-11-10-03-21.bpo-27494.04OWkW.rst b/Misc/NEWS.d/next/Library/2018-07-11-10-03-21.bpo-27494.04OWkW.rst deleted file mode 100644 index 9ad67c46170f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-11-10-03-21.bpo-27494.04OWkW.rst +++ /dev/null @@ -1,2 +0,0 @@ -Reverted :issue:`27494`. 2to3 rejects now a trailing comma in generator -expressions. diff --git a/Misc/NEWS.d/next/Library/2018-07-11-20-51-20.bpo-34070.WpmFAu.rst b/Misc/NEWS.d/next/Library/2018-07-11-20-51-20.bpo-34070.WpmFAu.rst deleted file mode 100644 index 0088c62c0ffb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-11-20-51-20.bpo-34070.WpmFAu.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make sure to only check if the handle is a tty, when opening -a file with ``buffering=-1``. diff --git a/Misc/NEWS.d/next/Library/2018-07-13-08-44-52.bpo-34108.RjobUC.rst b/Misc/NEWS.d/next/Library/2018-07-13-08-44-52.bpo-34108.RjobUC.rst deleted file mode 100644 index 1021f98b7f9e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-13-08-44-52.bpo-34108.RjobUC.rst +++ /dev/null @@ -1 +0,0 @@ -Remove extraneous CR in 2to3 refactor. diff --git a/Misc/NEWS.d/next/Library/2018-07-13-13-42-10.bpo-34097.F5Dk5o.rst b/Misc/NEWS.d/next/Library/2018-07-13-13-42-10.bpo-34097.F5Dk5o.rst deleted file mode 100644 index 397149559af5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-13-13-42-10.bpo-34097.F5Dk5o.rst +++ /dev/null @@ -1,3 +0,0 @@ -ZipFile can zip files older than 1980-01-01 and newer than 2107-12-31 using -a new ``strict_timestamps`` parameter at the cost of setting the timestamp -to the limit. diff --git a/Misc/NEWS.d/next/Library/2018-07-20-09-11-05.bpo-33729.sO6iTb.rst b/Misc/NEWS.d/next/Library/2018-07-20-09-11-05.bpo-33729.sO6iTb.rst deleted file mode 100644 index c4718722ad7c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-20-09-11-05.bpo-33729.sO6iTb.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed issues with arguments parsing in :mod:`hashlib`. diff --git a/Misc/NEWS.d/next/Library/2018-07-20-18-06-00.bpo-34164.fNfT-q.rst b/Misc/NEWS.d/next/Library/2018-07-20-18-06-00.bpo-34164.fNfT-q.rst deleted file mode 100644 index 99bf169308c0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-20-18-06-00.bpo-34164.fNfT-q.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`base64.b32decode` could raise UnboundLocalError or OverflowError for -incorrect padding. Now it always raises :exc:`base64.Error` in these cases. diff --git a/Misc/NEWS.d/next/Library/2018-07-22-07-59-32.bpo-940286.NZTzyc.rst b/Misc/NEWS.d/next/Library/2018-07-22-07-59-32.bpo-940286.NZTzyc.rst deleted file mode 100644 index 678ac7a12244..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-22-07-59-32.bpo-940286.NZTzyc.rst +++ /dev/null @@ -1,2 +0,0 @@ -pydoc's ``Helper.showtopic()`` method now prints the cross references of a -topic correctly. diff --git a/Misc/NEWS.d/next/Library/2018-07-22-09-05-01.bpo-21446.w6g7tn.rst b/Misc/NEWS.d/next/Library/2018-07-22-09-05-01.bpo-21446.w6g7tn.rst deleted file mode 100644 index 81da4a6b6a05..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-22-09-05-01.bpo-21446.w6g7tn.rst +++ /dev/null @@ -1,2 +0,0 @@ -The :2to3fixer:`reload` fixer now uses :func:`importlib.reload` instead of -deprecated :func:`imp.reload`. diff --git a/Misc/NEWS.d/next/Library/2018-07-23-12-20-02.bpo-32788.R2jSiK.rst b/Misc/NEWS.d/next/Library/2018-07-23-12-20-02.bpo-32788.R2jSiK.rst deleted file mode 100644 index 1f3ae88b706d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-23-12-20-02.bpo-32788.R2jSiK.rst +++ /dev/null @@ -1,3 +0,0 @@ -Errors other than :exc:`TypeError` raised in methods ``__adapt__()`` and -``__conform__()`` in the :mod:`sqlite3` module are now propagated to the -user. diff --git a/Misc/NEWS.d/next/Library/2018-07-23-14-12-28.bpo-34197.7yFSP5.rst b/Misc/NEWS.d/next/Library/2018-07-23-14-12-28.bpo-34197.7yFSP5.rst deleted file mode 100644 index 344d7280f20a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-23-14-12-28.bpo-34197.7yFSP5.rst +++ /dev/null @@ -1,3 +0,0 @@ -Attributes *skipinitialspace*, *doublequote* and *strict* of the *dialect* -attribute of the :mod:`csv` reader are now :class:`bool` instances instead -of integers 0 or 1. diff --git a/Misc/NEWS.d/next/Library/2018-07-24-16-37-40.bpo-34052.VbbFAE.rst b/Misc/NEWS.d/next/Library/2018-07-24-16-37-40.bpo-34052.VbbFAE.rst deleted file mode 100644 index 5aa3cc9a81d7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-24-16-37-40.bpo-34052.VbbFAE.rst +++ /dev/null @@ -1,7 +0,0 @@ -:meth:`sqlite3.Connection.create_aggregate`, -:meth:`sqlite3.Connection.create_function`, -:meth:`sqlite3.Connection.set_authorizer`, -:meth:`sqlite3.Connection.set_progress_handler` methods raises TypeError -when unhashable objects are passed as callable. These methods now don't pass -such objects to SQLite API. Previous behavior could lead to segfaults. Patch -by Sergey Fedoseev. diff --git a/Misc/NEWS.d/next/Library/2018-07-25-00-40-14.bpo-34213.O15MgP.rst b/Misc/NEWS.d/next/Library/2018-07-25-00-40-14.bpo-34213.O15MgP.rst deleted file mode 100644 index 28012af45728..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-25-00-40-14.bpo-34213.O15MgP.rst +++ /dev/null @@ -1 +0,0 @@ -Allow frozen dataclasses to have a field named "object". Previously this conflicted with an internal use of "object". diff --git a/Misc/NEWS.d/next/Library/2018-07-25-12-08-48.bpo-13041.lNmgDz.rst b/Misc/NEWS.d/next/Library/2018-07-25-12-08-48.bpo-13041.lNmgDz.rst deleted file mode 100644 index d0871a8ef1d6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-25-12-08-48.bpo-13041.lNmgDz.rst +++ /dev/null @@ -1,3 +0,0 @@ -Use :func:`shutil.get_terminal_size` to calculate the terminal width -correctly in the ``argparse.HelpFormatter`` class. Initial patch by Zbyszek -J?drzejewski-Szmek. diff --git a/Misc/NEWS.d/next/Library/2018-07-25-19-02-39.bpo-34228.0Ibztw.rst b/Misc/NEWS.d/next/Library/2018-07-25-19-02-39.bpo-34228.0Ibztw.rst deleted file mode 100644 index 729c0c4fa810..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-25-19-02-39.bpo-34228.0Ibztw.rst +++ /dev/null @@ -1,3 +0,0 @@ -tracemalloc: PYTHONTRACEMALLOC=0 environment variable and -X tracemalloc=0 -command line option are now allowed to disable explicitly tracemalloc at -startup. diff --git a/Misc/NEWS.d/next/Library/2018-07-25-22-38-54.bpo-33089.C3CB7e.rst b/Misc/NEWS.d/next/Library/2018-07-25-22-38-54.bpo-33089.C3CB7e.rst deleted file mode 100644 index 83152a77b20b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-25-22-38-54.bpo-33089.C3CB7e.rst +++ /dev/null @@ -1 +0,0 @@ -Enhanced math.hypot() to support more than two dimensions. diff --git a/Misc/NEWS.d/next/Library/2018-07-26-08-45-49.bpo-19891.Y-3IiB.rst b/Misc/NEWS.d/next/Library/2018-07-26-08-45-49.bpo-19891.Y-3IiB.rst deleted file mode 100644 index 18e10f5aa3d6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-26-08-45-49.bpo-19891.Y-3IiB.rst +++ /dev/null @@ -1,2 +0,0 @@ -Ignore errors caused by missing / non-writable homedir while writing history -during exit of an interactive session. Patch by Anthony Sottile. diff --git a/Misc/NEWS.d/next/Library/2018-07-28-11-47-10.bpo-34251.q3elQ6.rst b/Misc/NEWS.d/next/Library/2018-07-28-11-47-10.bpo-34251.q3elQ6.rst deleted file mode 100644 index 098f47e187c7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-28-11-47-10.bpo-34251.q3elQ6.rst +++ /dev/null @@ -1,2 +0,0 @@ -Restore ``msilib.Win64`` to preserve backwards compatibility since it's -already used by :mod:`distutils`' ``bdist_msi`` command. diff --git a/Misc/NEWS.d/next/Library/2018-07-28-11-49-21.bpo-34075.9u1bO-.rst b/Misc/NEWS.d/next/Library/2018-07-28-11-49-21.bpo-34075.9u1bO-.rst deleted file mode 100644 index 799e68ef9978..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-28-11-49-21.bpo-34075.9u1bO-.rst +++ /dev/null @@ -1,2 +0,0 @@ -Deprecate passing non-ThreadPoolExecutor instances to -:meth:`AbstractEventLoop.set_default_executor`. diff --git a/Misc/NEWS.d/next/Library/2018-07-28-12-08-53.bpo-32215.EU68SY.rst b/Misc/NEWS.d/next/Library/2018-07-28-12-08-53.bpo-32215.EU68SY.rst deleted file mode 100644 index c097cf7310df..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-28-12-08-53.bpo-32215.EU68SY.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix performance regression in :mod:`sqlite3` when a DML statement appeared -in a different line than the rest of the SQL query. diff --git a/Misc/NEWS.d/next/Library/2018-07-28-15-00-31.bpo-34035.75nW0H.rst b/Misc/NEWS.d/next/Library/2018-07-28-15-00-31.bpo-34035.75nW0H.rst deleted file mode 100644 index b66d2812179c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-28-15-00-31.bpo-34035.75nW0H.rst +++ /dev/null @@ -1 +0,0 @@ -Fix several AttributeError in zipfile seek() methods. Patch by Micka?l Schoentgen. diff --git a/Misc/NEWS.d/next/Library/2018-07-28-17-00-36.bpo-34263.zUfRsu.rst b/Misc/NEWS.d/next/Library/2018-07-28-17-00-36.bpo-34263.zUfRsu.rst deleted file mode 100644 index 799463b59163..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-28-17-00-36.bpo-34263.zUfRsu.rst +++ /dev/null @@ -1,2 +0,0 @@ -asyncio's event loop will not pass timeouts longer than one day to -epoll/select etc. diff --git a/Misc/NEWS.d/next/Library/2018-07-29-11-32-56.bpo-34270.aL6P-3.rst b/Misc/NEWS.d/next/Library/2018-07-29-11-32-56.bpo-34270.aL6P-3.rst deleted file mode 100644 index a66e110315ae..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-29-11-32-56.bpo-34270.aL6P-3.rst +++ /dev/null @@ -1,8 +0,0 @@ -The default asyncio task class now always has a name which can be get or set -using two new methods (:meth:`~asyncio.Task.get_name()` and -:meth:`~asyncio.Task.set_name`) and is visible in the :func:`repr` output. An -initial name can also be set using the new ``name`` keyword argument to -:func:`asyncio.create_task` or the -:meth:`~asyncio.AbstractEventLoop.create_task` method of the event loop. -If no initial name is set, the default Task implementation generates a name -like ``Task-1`` using a monotonic counter. diff --git a/Misc/NEWS.d/next/Library/2018-07-29-13-50-32.bpo-32321.hDoNKC.rst b/Misc/NEWS.d/next/Library/2018-07-29-13-50-32.bpo-32321.hDoNKC.rst deleted file mode 100644 index 82ee39fa76c4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-29-13-50-32.bpo-32321.hDoNKC.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add pure Python fallback for functools.reduce. -Patch by Robert Wright. diff --git a/Misc/NEWS.d/next/Library/2018-07-29-14-12-23.bpo-31047.FSarLs.rst b/Misc/NEWS.d/next/Library/2018-07-29-14-12-23.bpo-31047.FSarLs.rst deleted file mode 100644 index 6415d4a95aef..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-29-14-12-23.bpo-31047.FSarLs.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``ntpath.abspath`` for invalid paths on windows. Patch by Franz -Woellert. diff --git a/Misc/NEWS.d/next/Library/2018-07-29-15-25-15.bpo-34246.xiKq-Q.rst b/Misc/NEWS.d/next/Library/2018-07-29-15-25-15.bpo-34246.xiKq-Q.rst deleted file mode 100644 index 50c91ece07ef..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-29-15-25-15.bpo-34246.xiKq-Q.rst +++ /dev/null @@ -1,2 +0,0 @@ -:meth:`smtplib.SMTP.send_message` no longer modifies the content of the -*mail_options* argument. Patch by Pablo S. Blum de Aguiar. diff --git a/Misc/NEWS.d/next/Library/2018-07-29-21-53-15.bpo-33089.hxbp3g.rst b/Misc/NEWS.d/next/Library/2018-07-29-21-53-15.bpo-33089.hxbp3g.rst deleted file mode 100644 index 9b253d0bc7f4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-29-21-53-15.bpo-33089.hxbp3g.rst +++ /dev/null @@ -1 +0,0 @@ -Add math.dist() to compute the Euclidean distance between two points. diff --git a/Misc/NEWS.d/next/Library/2018-07-31-23-00-09.bpo-34248.5U6wwc.rst b/Misc/NEWS.d/next/Library/2018-07-31-23-00-09.bpo-34248.5U6wwc.rst deleted file mode 100644 index 55215f60550b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-31-23-00-09.bpo-34248.5U6wwc.rst +++ /dev/null @@ -1,3 +0,0 @@ -Report filename in the exception raised when the database file cannot be opened -by :func:`dbm.gnu.open` and :func:`dbm.ndbm.open` due to OS-related error. -Patch by Zsolt Cserna. diff --git a/Misc/NEWS.d/next/Library/2018-07-31-23-33-06.bpo-33613.Cdnt0i.rst b/Misc/NEWS.d/next/Library/2018-07-31-23-33-06.bpo-33613.Cdnt0i.rst deleted file mode 100644 index 9574e43fcc60..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-31-23-33-06.bpo-33613.Cdnt0i.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a race condition in ``multiprocessing.semaphore_tracker`` when the -tracker receives SIGINT before it can register signal handlers for ignoring -it. diff --git a/Misc/NEWS.d/next/Library/2018-08-01-21-26-17.bpo-9372.V8Ou3K.rst b/Misc/NEWS.d/next/Library/2018-08-01-21-26-17.bpo-9372.V8Ou3K.rst deleted file mode 100644 index 8ae5ce118f95..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-01-21-26-17.bpo-9372.V8Ou3K.rst +++ /dev/null @@ -1,3 +0,0 @@ -Deprecate :meth:`__getitem__` methods of -:class:`xml.dom.pulldom.DOMEventStream`, :class:`wsgiref.util.FileWrapper` -and :class:`fileinput.FileInput`. diff --git a/Misc/NEWS.d/next/Library/2018-08-02-14-43-42.bpo-34318.GneiXs.rst b/Misc/NEWS.d/next/Library/2018-08-02-14-43-42.bpo-34318.GneiXs.rst deleted file mode 100644 index 4df4fe30b97a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-02-14-43-42.bpo-34318.GneiXs.rst +++ /dev/null @@ -1,7 +0,0 @@ -:func:`~unittest.TestCase.assertRaises`, -:func:`~unittest.TestCase.assertRaisesRegex`, -:func:`~unittest.TestCase.assertWarns` and -:func:`~unittest.TestCase.assertWarnsRegex` no longer success if the passed -callable is None. They no longer ignore unknown keyword arguments in the -context manager mode. A DeprecationWarning was raised in these cases -since Python 3.5. diff --git a/Misc/NEWS.d/next/Library/2018-08-02-20-39-32.bpo-26502.eGXr_k.rst b/Misc/NEWS.d/next/Library/2018-08-02-20-39-32.bpo-26502.eGXr_k.rst deleted file mode 100644 index 3a3fc17e22df..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-02-20-39-32.bpo-26502.eGXr_k.rst +++ /dev/null @@ -1,2 +0,0 @@ -Implement ``traceback.FrameSummary.__len__()`` method to preserve -compatibility with the old tuple API. diff --git a/Misc/NEWS.d/next/Library/2018-08-02-21-28-38.bpo-18540.AryoYY.rst b/Misc/NEWS.d/next/Library/2018-08-02-21-28-38.bpo-18540.AryoYY.rst deleted file mode 100644 index 3ffd9f6a3754..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-02-21-28-38.bpo-18540.AryoYY.rst +++ /dev/null @@ -1,3 +0,0 @@ -The :class:`imaplib.IMAP4` and :class:`imaplib.IMAP4_SSL` classes now -resolve to the local host IP correctly when the default value of *host* -parameter (``''``) is used. diff --git a/Misc/NEWS.d/next/Library/2018-08-04-00-06-28.bpo-34333.5NHG93.rst b/Misc/NEWS.d/next/Library/2018-08-04-00-06-28.bpo-34333.5NHG93.rst deleted file mode 100644 index 000f68422556..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-04-00-06-28.bpo-34333.5NHG93.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix %-formatting in :meth:`pathlib.PurePath.with_suffix` when formatting an -error message. diff --git a/Misc/NEWS.d/next/Library/2018-08-06-11-01-18.bpo-34341.E0b9p2.rst b/Misc/NEWS.d/next/Library/2018-08-06-11-01-18.bpo-34341.E0b9p2.rst deleted file mode 100644 index 46a9cde19c40..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-06-11-01-18.bpo-34341.E0b9p2.rst +++ /dev/null @@ -1,2 +0,0 @@ -Appending to the ZIP archive with the ZIP64 extension no longer grows the -size of extra fields of existing entries. diff --git a/Misc/NEWS.d/next/Library/2018-08-06-21-47-03.bpo-2122.GWdmrm.rst b/Misc/NEWS.d/next/Library/2018-08-06-21-47-03.bpo-2122.GWdmrm.rst deleted file mode 100644 index dd31c0ec9089..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-06-21-47-03.bpo-2122.GWdmrm.rst +++ /dev/null @@ -1,2 +0,0 @@ -The :meth:`mmap.flush() ` method now returns ``None`` on -success, raises an exception on error under all platforms. diff --git a/Misc/NEWS.d/next/Library/2018-08-12-00-14-54.bpo-22602.ybG9K8.rst b/Misc/NEWS.d/next/Library/2018-08-12-00-14-54.bpo-22602.ybG9K8.rst deleted file mode 100644 index 5b113e3204c1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-12-00-14-54.bpo-22602.ybG9K8.rst +++ /dev/null @@ -1,3 +0,0 @@ -The UTF-7 decoder now raises :exc:`UnicodeDecodeError` for ill-formed -sequences starting with "+" (as specified in RFC 2152). Patch by Zackery -Spytz. diff --git a/Misc/NEWS.d/next/Library/2018-08-12-08-43-21.bpo-34384.yjofCv.rst b/Misc/NEWS.d/next/Library/2018-08-12-08-43-21.bpo-34384.yjofCv.rst deleted file mode 100644 index 117236b21b04..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-12-08-43-21.bpo-34384.yjofCv.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`os.readlink` now accepts :term:`path-like ` and -:class:`bytes` objects on Windows. diff --git a/Misc/NEWS.d/next/Library/2018-08-15-16-22-30.bpo-31715.Iw8jS8.rst b/Misc/NEWS.d/next/Library/2018-08-15-16-22-30.bpo-31715.Iw8jS8.rst deleted file mode 100644 index eacba28f9fd9..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-15-16-22-30.bpo-31715.Iw8jS8.rst +++ /dev/null @@ -1 +0,0 @@ -Associate ``.mjs`` file extension with ``application/javascript`` MIME Type. diff --git a/Misc/NEWS.d/next/Library/2018-08-16-16-47-15.bpo-20849.YWJECC.rst b/Misc/NEWS.d/next/Library/2018-08-16-16-47-15.bpo-20849.YWJECC.rst deleted file mode 100644 index 8ef544ba1e34..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-16-16-47-15.bpo-20849.YWJECC.rst +++ /dev/null @@ -1,2 +0,0 @@ -shutil.copytree now accepts a new ``dirs_exist_ok`` keyword argument. -Patch by Josh Bronson. diff --git a/Misc/NEWS.d/next/Library/2018-08-16-19-07-05.bpo-34412.NF5Jm2.rst b/Misc/NEWS.d/next/Library/2018-08-16-19-07-05.bpo-34412.NF5Jm2.rst deleted file mode 100644 index 8d7320f25e47..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-16-19-07-05.bpo-34412.NF5Jm2.rst +++ /dev/null @@ -1 +0,0 @@ -Make :func:`signal.strsignal` work on HP-UX. Patch by Michael Osipov. diff --git a/Misc/NEWS.d/next/Library/2018-08-20-13-53-10.bpo-34427.tMRQjl.rst b/Misc/NEWS.d/next/Library/2018-08-20-13-53-10.bpo-34427.tMRQjl.rst deleted file mode 100644 index f6e0e030b7fe..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-20-13-53-10.bpo-34427.tMRQjl.rst +++ /dev/null @@ -1 +0,0 @@ -Fix infinite loop in ``a.extend(a)`` for ``MutableSequence`` subclasses. diff --git a/Misc/NEWS.d/next/Library/2018-08-20-16-48-32.bpo-34441._zx9lU.rst b/Misc/NEWS.d/next/Library/2018-08-20-16-48-32.bpo-34441._zx9lU.rst deleted file mode 100644 index 6db095bdf0c6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-20-16-48-32.bpo-34441._zx9lU.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix crash when an ``ABC``-derived class with invalid ``__subclasses__`` is -passed as the second argument to :func:`issubclass()`. Patch by Alexey -Izbyshev. diff --git a/Misc/NEWS.d/next/Library/2018-08-21-00-29-01.bpo-34171.6LkWav.rst b/Misc/NEWS.d/next/Library/2018-08-21-00-29-01.bpo-34171.6LkWav.rst deleted file mode 100644 index f647b8e3fb4b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-21-00-29-01.bpo-34171.6LkWav.rst +++ /dev/null @@ -1 +0,0 @@ -Running the :mod:`trace` module no longer creates the ``trace.cover`` file. diff --git a/Misc/NEWS.d/next/Library/2018-08-22-17-43-52.bpo-6700.hp7C4B.rst b/Misc/NEWS.d/next/Library/2018-08-22-17-43-52.bpo-6700.hp7C4B.rst deleted file mode 100644 index d95c737a2860..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-22-17-43-52.bpo-6700.hp7C4B.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix inspect.getsourcelines for module level frames/tracebacks. -Patch by Vladimir Matveev. diff --git a/Misc/NEWS.d/next/Library/2018-08-22-21-59-08.bpo-34454.z7uG4b.rst b/Misc/NEWS.d/next/Library/2018-08-22-21-59-08.bpo-34454.z7uG4b.rst deleted file mode 100644 index 1d5c32708c15..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-22-21-59-08.bpo-34454.z7uG4b.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix the .fromisoformat() methods of datetime types crashing when given -unicode with non-UTF-8-encodable code points. Specifically, -datetime.fromisoformat() now accepts surrogate unicode code points used as -the separator. Report and tests by Alexey Izbyshev, patch by Paul Ganssle. diff --git a/Misc/NEWS.d/next/Library/2018-08-23-09-25-08.bpo-34472.cGyYrO.rst b/Misc/NEWS.d/next/Library/2018-08-23-09-25-08.bpo-34472.cGyYrO.rst deleted file mode 100644 index 208ec0bf7431..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-23-09-25-08.bpo-34472.cGyYrO.rst +++ /dev/null @@ -1,3 +0,0 @@ -Improved compatibility for streamed files in :mod:`zipfile`. Previously an -optional signature was not being written and certain ZIP applications were -not supported. Patch by Silas Sewell. diff --git a/Misc/NEWS.d/next/Library/2018-08-24-17-31-27.bpo-13312.6hA5La.rst b/Misc/NEWS.d/next/Library/2018-08-24-17-31-27.bpo-13312.6hA5La.rst deleted file mode 100644 index dc906696a53e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-24-17-31-27.bpo-13312.6hA5La.rst +++ /dev/null @@ -1,2 +0,0 @@ -Avoids a possible integer underflow (undefined behavior) in the time -module's year handling code when passed a very low negative year value. diff --git a/Misc/NEWS.d/next/Library/2018-08-27-16-01-22.bpo-34515.S0Irst.rst b/Misc/NEWS.d/next/Library/2018-08-27-16-01-22.bpo-34515.S0Irst.rst deleted file mode 100644 index 7ace7ba8218c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-27-16-01-22.bpo-34515.S0Irst.rst +++ /dev/null @@ -1 +0,0 @@ -Fix parsing non-ASCII identifiers in :mod:`lib2to3.pgen2.tokenize` (PEP 3131). diff --git a/Misc/NEWS.d/next/Library/2018-08-30-14-44-11.bpo-22872.NhIaZ9.rst b/Misc/NEWS.d/next/Library/2018-08-30-14-44-11.bpo-22872.NhIaZ9.rst deleted file mode 100644 index 547c7b1a31cb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-30-14-44-11.bpo-22872.NhIaZ9.rst +++ /dev/null @@ -1,4 +0,0 @@ -When the queue is closed, :exc:`ValueError` is now raised by -:meth:`multiprocessing.Queue.put` and :meth:`multiprocessing.Queue.get` -instead of :exc:`AssertionError` and :exc:`OSError`, respectively. -Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Library/2018-08-31-06-28-03.bpo-34282.ztyXH8.rst b/Misc/NEWS.d/next/Library/2018-08-31-06-28-03.bpo-34282.ztyXH8.rst deleted file mode 100644 index 79f56f124a3f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-31-06-28-03.bpo-34282.ztyXH8.rst +++ /dev/null @@ -1,2 +0,0 @@ -Move ``Enum._convert`` to ``EnumMeta._convert_`` and fix enum members getting -shadowed by parent attributes. diff --git a/Misc/NEWS.d/next/Library/2018-08-31-19-26-55.bpo-34558.MHv582.rst b/Misc/NEWS.d/next/Library/2018-08-31-19-26-55.bpo-34558.MHv582.rst deleted file mode 100644 index 267242690eef..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-31-19-26-55.bpo-34558.MHv582.rst +++ /dev/null @@ -1 +0,0 @@ -Correct typo in Lib/ctypes/_aix.py diff --git a/Misc/NEWS.d/next/Library/2018-09-01-20-43-10.bpo-34563.7NQK7B.rst b/Misc/NEWS.d/next/Library/2018-09-01-20-43-10.bpo-34563.7NQK7B.rst deleted file mode 100644 index 9127af0d1924..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-01-20-43-10.bpo-34563.7NQK7B.rst +++ /dev/null @@ -1 +0,0 @@ -On Windows, fix multiprocessing.Connection for very large read: fix _winapi.PeekNamedPipe() and _winapi.ReadFile() for read larger than INT_MAX (usually 2^31-1). \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2018-09-03-23-23-32.bpo-34530.h_Xsu7.rst b/Misc/NEWS.d/next/Library/2018-09-03-23-23-32.bpo-34530.h_Xsu7.rst deleted file mode 100644 index 064de73c0ffe..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-03-23-23-32.bpo-34530.h_Xsu7.rst +++ /dev/null @@ -1,2 +0,0 @@ -``distutils.spawn.find_executable()`` now falls back on :data:`os.defpath` -if the ``PATH`` environment variable is not set. diff --git a/Misc/NEWS.d/next/Library/2018-09-03-23-54-35.bpo-8110.FExWI_.rst b/Misc/NEWS.d/next/Library/2018-09-03-23-54-35.bpo-8110.FExWI_.rst deleted file mode 100644 index c29ace1a0fc6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-03-23-54-35.bpo-8110.FExWI_.rst +++ /dev/null @@ -1,2 +0,0 @@ -Refactored :mod:`subprocess` to check for Windows-specific modules rather -than ``sys.platform == 'win32'``. diff --git a/Misc/NEWS.d/next/Library/2018-09-04-09-32-54.bpo-34574.X4RwYI.rst b/Misc/NEWS.d/next/Library/2018-09-04-09-32-54.bpo-34574.X4RwYI.rst deleted file mode 100644 index de718ad1e6f1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-04-09-32-54.bpo-34574.X4RwYI.rst +++ /dev/null @@ -1,2 +0,0 @@ -OrderedDict iterators are not exhausted during pickling anymore. Patch by -Sergey Fedoseev. diff --git a/Misc/NEWS.d/next/Library/2018-09-06-10-07-46.bpo-30977.bP661V.rst b/Misc/NEWS.d/next/Library/2018-09-06-10-07-46.bpo-30977.bP661V.rst deleted file mode 100644 index 3d547c06beb5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-06-10-07-46.bpo-30977.bP661V.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make uuid.UUID use ``__slots__`` to reduce its memory footprint. Based on -original patch by Wouter Bolsterlee. diff --git a/Misc/NEWS.d/next/Library/2018-09-07-10-16-34.bpo-34604.xL7-kG.rst b/Misc/NEWS.d/next/Library/2018-09-07-10-16-34.bpo-34604.xL7-kG.rst deleted file mode 100644 index 958b74fd0da6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-07-10-16-34.bpo-34604.xL7-kG.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix possible mojibake in the error message of `pwd.getpwnam` and -`grp.getgrnam` using string representation because of invisible characters -or trailing whitespaces. Patch by William Grzybowski. diff --git a/Misc/NEWS.d/next/Library/2018-09-07-10-57-00.bpo-34421.AKJISD.rst b/Misc/NEWS.d/next/Library/2018-09-07-10-57-00.bpo-34421.AKJISD.rst deleted file mode 100644 index cc1db086f0c4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-07-10-57-00.bpo-34421.AKJISD.rst +++ /dev/null @@ -1 +0,0 @@ -Fix distutils logging for non-ASCII strings. This caused installation issues on Windows. diff --git a/Misc/NEWS.d/next/Library/2018-09-08-12-57-07.bpo-34610.wmoP5j.rst b/Misc/NEWS.d/next/Library/2018-09-08-12-57-07.bpo-34610.wmoP5j.rst deleted file mode 100644 index bffb355ea2ab..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-08-12-57-07.bpo-34610.wmoP5j.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed iterator of :class:`multiprocessing.managers.DictProxy`. diff --git a/Misc/NEWS.d/next/Library/2018-09-10-13-04-40.bpo-34622.tpv_rN.rst b/Misc/NEWS.d/next/Library/2018-09-10-13-04-40.bpo-34622.tpv_rN.rst deleted file mode 100644 index 493d6abd910b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-10-13-04-40.bpo-34622.tpv_rN.rst +++ /dev/null @@ -1,4 +0,0 @@ -Create a dedicated ``asyncio.CancelledError``, ``asyncio.InvalidStateError`` -and ``asyncio.TimeoutError`` exception classes. Inherit them from -corresponding exceptions from ``concurrent.futures`` package. Extract -``asyncio`` exceptions into a separate file. diff --git a/Misc/NEWS.d/next/Library/2018-09-10-14-15-53.bpo-32270.wSJjuD.rst b/Misc/NEWS.d/next/Library/2018-09-10-14-15-53.bpo-32270.wSJjuD.rst deleted file mode 100644 index 83f68624c1be..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-10-14-15-53.bpo-32270.wSJjuD.rst +++ /dev/null @@ -1,2 +0,0 @@ -The subprocess module no longer mistakenly closes redirected fds even when -they were in pass_fds when outside of the default {0, 1, 2} set. diff --git a/Misc/NEWS.d/next/Library/2018-09-10-17-46-51.bpo-34625.D2YfDz.rst b/Misc/NEWS.d/next/Library/2018-09-10-17-46-51.bpo-34625.D2YfDz.rst deleted file mode 100644 index 0747ec54470f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-10-17-46-51.bpo-34625.D2YfDz.rst +++ /dev/null @@ -1 +0,0 @@ -Update vendorized expat library version to 2.2.6. diff --git a/Misc/NEWS.d/next/Library/2018-09-10-21-09-34.bpo-34363.YuSb0T.rst b/Misc/NEWS.d/next/Library/2018-09-10-21-09-34.bpo-34363.YuSb0T.rst deleted file mode 100644 index 5691efb1e276..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-10-21-09-34.bpo-34363.YuSb0T.rst +++ /dev/null @@ -1 +0,0 @@ -dataclasses.asdict() and .astuple() now handle namedtuples correctly. diff --git a/Misc/NEWS.d/next/Library/2018-09-11-01-25-35.bpo-32490.ROIDO1.rst b/Misc/NEWS.d/next/Library/2018-09-11-01-25-35.bpo-32490.ROIDO1.rst deleted file mode 100644 index 16fe7b4d4c09..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-11-01-25-35.bpo-32490.ROIDO1.rst +++ /dev/null @@ -1,2 +0,0 @@ -Prevent filename duplication in :mod:`subprocess` exception messages. Patch -by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Library/2018-09-11-10-00-53.bpo-34630.YbqUS6.rst b/Misc/NEWS.d/next/Library/2018-09-11-10-00-53.bpo-34630.YbqUS6.rst deleted file mode 100644 index 452bcb6142a0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-11-10-00-53.bpo-34630.YbqUS6.rst +++ /dev/null @@ -1,2 +0,0 @@ -Don't log SSL certificate errors in asyncio code (connection error logging -is skipped already). diff --git a/Misc/NEWS.d/next/Library/2018-09-11-10-51-16.bpo-24412.i-F_E5.rst b/Misc/NEWS.d/next/Library/2018-09-11-10-51-16.bpo-24412.i-F_E5.rst deleted file mode 100644 index 862500dd19fb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-11-10-51-16.bpo-24412.i-F_E5.rst +++ /dev/null @@ -1,4 +0,0 @@ -Add :func:`~unittest.addModuleCleanup()` and -:meth:`~unittest.TestCase.addClassCleanup()` to unittest to support -cleanups for :func:`~unittest.setUpModule()` and -:meth:`~unittest.TestCase.setUpClass()`. Patch by Lisa Roach. diff --git a/Misc/NEWS.d/next/Library/2018-09-11-15-04-05.bpo-34636.capCmt.rst b/Misc/NEWS.d/next/Library/2018-09-11-15-04-05.bpo-34636.capCmt.rst deleted file mode 100644 index c982b0a4cda0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-11-15-04-05.bpo-34636.capCmt.rst +++ /dev/null @@ -1,2 +0,0 @@ -Speed up re scanning of many non-matching characters for \s \w and \d within -bytes objects. (microoptimization) diff --git a/Misc/NEWS.d/next/Library/2018-09-11-15-49-09.bpo-34536.3IPIH5.rst b/Misc/NEWS.d/next/Library/2018-09-11-15-49-09.bpo-34536.3IPIH5.rst deleted file mode 100644 index be45eb57cad5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-11-15-49-09.bpo-34536.3IPIH5.rst +++ /dev/null @@ -1,2 +0,0 @@ -`Enum._missing_`: raise `ValueError` if None returned and `TypeError` if -non-member is returned. diff --git a/Misc/NEWS.d/next/Library/2018-09-12-10-33-44.bpo-34638.xaeZX5.rst b/Misc/NEWS.d/next/Library/2018-09-12-10-33-44.bpo-34638.xaeZX5.rst deleted file mode 100644 index 13b3952a98eb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-12-10-33-44.bpo-34638.xaeZX5.rst +++ /dev/null @@ -1,3 +0,0 @@ -Store a weak reference to stream reader to break strong references loop -between reader and protocol. It allows to detect and close the socket if -the stream is deleted (garbage collected) without ``close()`` call. diff --git a/Misc/NEWS.d/next/Library/2018-09-12-14-46-51.bpo-34652.Rt1m1b.rst b/Misc/NEWS.d/next/Library/2018-09-12-14-46-51.bpo-34652.Rt1m1b.rst deleted file mode 100644 index cbdd7e0ec6ce..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-12-14-46-51.bpo-34652.Rt1m1b.rst +++ /dev/null @@ -1 +0,0 @@ -Ensure :func:`os.lchmod` is never defined on Linux. diff --git a/Misc/NEWS.d/next/Library/2018-09-13-03-59-43.bpo-34658.ykZ-ia.rst b/Misc/NEWS.d/next/Library/2018-09-13-03-59-43.bpo-34658.ykZ-ia.rst deleted file mode 100644 index 35375a088300..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-13-03-59-43.bpo-34658.ykZ-ia.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a rare interpreter unhandled exception state SystemError only seen when -using subprocess with a preexec_fn while an after_parent handler has been -registered with os.register_at_fork and the fork system call fails. diff --git a/Misc/NEWS.d/next/Library/2018-09-13-10-09-19.bpo-6721.ZUL_F3.rst b/Misc/NEWS.d/next/Library/2018-09-13-10-09-19.bpo-6721.ZUL_F3.rst deleted file mode 100644 index 073a441db679..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-13-10-09-19.bpo-6721.ZUL_F3.rst +++ /dev/null @@ -1,2 +0,0 @@ -Acquire the logging module's commonly used internal locks while fork()ing to -avoid deadlocks in the child process. diff --git a/Misc/NEWS.d/next/Library/2018-09-13-11-49-52.bpo-34666.3uLtWv.rst b/Misc/NEWS.d/next/Library/2018-09-13-11-49-52.bpo-34666.3uLtWv.rst deleted file mode 100644 index be82cfed7f13..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-13-11-49-52.bpo-34666.3uLtWv.rst +++ /dev/null @@ -1,3 +0,0 @@ -Implement ``asyncio.StreamWriter.awrite`` and -``asyncio.StreamWriter.aclose()`` coroutines. Methods are needed for -providing a consistent stream API with control flow switched on by default. diff --git a/Misc/NEWS.d/next/Library/2018-09-13-21-04-23.bpo-34672.BYuKKS.rst b/Misc/NEWS.d/next/Library/2018-09-13-21-04-23.bpo-34672.BYuKKS.rst deleted file mode 100644 index 59d106b60042..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-13-21-04-23.bpo-34672.BYuKKS.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add a workaround, so the ``'Z'`` :func:`time.strftime` specifier on the musl -C library can work in some cases. diff --git a/Misc/NEWS.d/next/Library/2018-09-14-10-38-18.bpo-31177.Sv91TN.rst b/Misc/NEWS.d/next/Library/2018-09-14-10-38-18.bpo-31177.Sv91TN.rst deleted file mode 100644 index f385571e99cc..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-14-10-38-18.bpo-31177.Sv91TN.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix bug that prevented using :meth:`reset_mock ` -on mock instances with deleted attributes diff --git a/Misc/NEWS.d/next/Library/2018-09-14-12-38-49.bpo-32718.ICYQbt.rst b/Misc/NEWS.d/next/Library/2018-09-14-12-38-49.bpo-32718.ICYQbt.rst deleted file mode 100644 index b60106a003d3..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-14-12-38-49.bpo-32718.ICYQbt.rst +++ /dev/null @@ -1,2 +0,0 @@ -The Activate.ps1 script from venv works with PowerShell Core 6.1 and is now -available under all operating systems. diff --git a/Misc/NEWS.d/next/Library/2018-09-14-14-29-45.bpo-34670.17XwGB.rst b/Misc/NEWS.d/next/Library/2018-09-14-14-29-45.bpo-34670.17XwGB.rst deleted file mode 100644 index c1a61293faa3..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-14-14-29-45.bpo-34670.17XwGB.rst +++ /dev/null @@ -1,3 +0,0 @@ -Add SSLContext.post_handshake_auth and -SSLSocket.verify_client_post_handshake for TLS 1.3's post -handshake authentication feature. diff --git a/Misc/NEWS.d/next/Library/2018-09-14-20-00-47.bpo-29577.RzwKFD.rst b/Misc/NEWS.d/next/Library/2018-09-14-20-00-47.bpo-29577.RzwKFD.rst deleted file mode 100644 index bd71ac496a67..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-14-20-00-47.bpo-29577.RzwKFD.rst +++ /dev/null @@ -1 +0,0 @@ -Support multiple mixin classes when creating Enums. diff --git a/Misc/NEWS.d/next/Library/2018-09-16-17-04-16.bpo-34659.CWemzH.rst b/Misc/NEWS.d/next/Library/2018-09-16-17-04-16.bpo-34659.CWemzH.rst deleted file mode 100644 index 3b7925aafd4e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-16-17-04-16.bpo-34659.CWemzH.rst +++ /dev/null @@ -1 +0,0 @@ -Add an optional *initial* argument to itertools.accumulate(). diff --git a/Misc/NEWS.d/next/Library/2018-09-19-16-51-04.bpo-34738.Pr3-iG.rst b/Misc/NEWS.d/next/Library/2018-09-19-16-51-04.bpo-34738.Pr3-iG.rst deleted file mode 100644 index c3f402d39ae0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-19-16-51-04.bpo-34738.Pr3-iG.rst +++ /dev/null @@ -1,2 +0,0 @@ -ZIP files created by :mod:`distutils` will now include entries for -directories. diff --git a/Misc/NEWS.d/next/Library/2018-09-20-16-55-43.bpo-34728.CUE8LU.rst b/Misc/NEWS.d/next/Library/2018-09-20-16-55-43.bpo-34728.CUE8LU.rst deleted file mode 100644 index e06eb0f45c9f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-20-16-55-43.bpo-34728.CUE8LU.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add deprecation warning when `loop` is used in methods: `asyncio.sleep`, -`asyncio.wait` and `asyncio.wait_for`. diff --git a/Misc/NEWS.d/next/Library/2018-09-20-17-35-05.bpo-32892.TOUBdg.rst b/Misc/NEWS.d/next/Library/2018-09-20-17-35-05.bpo-32892.TOUBdg.rst deleted file mode 100644 index 9be4bf89008d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-20-17-35-05.bpo-32892.TOUBdg.rst +++ /dev/null @@ -1,4 +0,0 @@ -The parser now represents all constants as :class:`ast.Constant` instead of -using specific constant AST types (``Num``, ``Str``, ``Bytes``, -``NameConstant`` and ``Ellipsis``). These classes are considered deprecated -and will be removed in future Python versions. diff --git a/Misc/NEWS.d/next/Library/2018-09-24-14-21-58.bpo-5950.xH0ekQ.rst b/Misc/NEWS.d/next/Library/2018-09-24-14-21-58.bpo-5950.xH0ekQ.rst deleted file mode 100644 index f0f9c0b80170..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-24-14-21-58.bpo-5950.xH0ekQ.rst +++ /dev/null @@ -1 +0,0 @@ -Support reading zip files with archive comments in :mod:`zipimport`. diff --git a/Misc/NEWS.d/next/Library/2018-09-24-17-14-57.bpo-34687.Fku_8S.rst b/Misc/NEWS.d/next/Library/2018-09-24-17-14-57.bpo-34687.Fku_8S.rst deleted file mode 100644 index 0e203c4f2786..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-24-17-14-57.bpo-34687.Fku_8S.rst +++ /dev/null @@ -1,2 +0,0 @@ -On Windows, asyncio now uses ProactorEventLoop, instead of -SelectorEventLoop, by default. diff --git a/Misc/NEWS.d/next/Library/2018-09-25-08-42-34.bpo-34334.rSPBW9.rst b/Misc/NEWS.d/next/Library/2018-09-25-08-42-34.bpo-34334.rSPBW9.rst deleted file mode 100644 index 137a4f78f420..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-25-08-42-34.bpo-34334.rSPBW9.rst +++ /dev/null @@ -1,2 +0,0 @@ -In :class:`QueueHandler`, clear `exc_text` from :class:`LogRecord` to -prevent traceback from being written twice. diff --git a/Misc/NEWS.d/next/Library/2018-09-25-15-48-50.bpo-34789.rPOEj5.rst b/Misc/NEWS.d/next/Library/2018-09-25-15-48-50.bpo-34789.rPOEj5.rst deleted file mode 100644 index 28f15c3f4122..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-25-15-48-50.bpo-34789.rPOEj5.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`xml.sax.make_parser` now accepts any iterable as its *parser_list* -argument. Patch by Andr?s Delfino. diff --git a/Misc/NEWS.d/next/Library/2018-09-26-14-09-34.bpo-34758.bRBfAi.rst b/Misc/NEWS.d/next/Library/2018-09-26-14-09-34.bpo-34758.bRBfAi.rst deleted file mode 100644 index 82e38aa6e158..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-26-14-09-34.bpo-34758.bRBfAi.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add .wasm -> application/wasm to list of recognized file types and content -type headers diff --git a/Misc/NEWS.d/next/Library/2018-09-27-09-45-00.bpo-34819.9ZaFyO.rst b/Misc/NEWS.d/next/Library/2018-09-27-09-45-00.bpo-34819.9ZaFyO.rst deleted file mode 100644 index 6bbdea235f03..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-27-09-45-00.bpo-34819.9ZaFyO.rst +++ /dev/null @@ -1 +0,0 @@ -Use a monotonic clock to compute timeouts in :meth:`Executor.map` and :func:`as_completed`, in order to prevent timeouts from deviating when the system clock is adjusted. diff --git a/Misc/NEWS.d/next/Library/2018-09-27-13-14-15.bpo-34022.E2cl0r.rst b/Misc/NEWS.d/next/Library/2018-09-27-13-14-15.bpo-34022.E2cl0r.rst deleted file mode 100644 index efebb84304bf..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-27-13-14-15.bpo-34022.E2cl0r.rst +++ /dev/null @@ -1,3 +0,0 @@ -The :envvar:`SOURCE_DATE_EPOCH` environment variable no longer overrides the -value of the *invalidation_mode* argument to :func:`py_compile.compile`, and -determines its default value instead. diff --git a/Misc/NEWS.d/next/Library/2018-09-30-08-08-14.bpo-34849.NXK9Ff.rst b/Misc/NEWS.d/next/Library/2018-09-30-08-08-14.bpo-34849.NXK9Ff.rst deleted file mode 100644 index b92e2f05749b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-30-08-08-14.bpo-34849.NXK9Ff.rst +++ /dev/null @@ -1,3 +0,0 @@ -Don't log waiting for ``selector.select`` in asyncio loop iteration. The -waiting is pretty normal for any asyncio program, logging its time just adds -a noise to logs without any useful information provided. diff --git a/Misc/NEWS.d/next/Library/2018-10-02-19-36-34.bpo-34872.yWZRhI.rst b/Misc/NEWS.d/next/Library/2018-10-02-19-36-34.bpo-34872.yWZRhI.rst deleted file mode 100644 index cd027102d012..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-02-19-36-34.bpo-34872.yWZRhI.rst +++ /dev/null @@ -1 +0,0 @@ -Fix self-cancellation in C implementation of asyncio.Task diff --git a/Misc/NEWS.d/next/Library/2018-10-03-09-25-02.bpo-34711.HeOmKR.rst b/Misc/NEWS.d/next/Library/2018-10-03-09-25-02.bpo-34711.HeOmKR.rst deleted file mode 100644 index f3522f319785..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-03-09-25-02.bpo-34711.HeOmKR.rst +++ /dev/null @@ -1,3 +0,0 @@ -http.server ensures it reports HTTPStatus.NOT_FOUND when the local path ends with "/" -and is not a directory, even if the underlying OS (e.g. AIX) accepts such paths as a -valid file reference. Patch by Michael Felt. diff --git a/Misc/NEWS.d/next/Library/2018-10-03-11-07-28.bpo-34866.ML6KpJ.rst b/Misc/NEWS.d/next/Library/2018-10-03-11-07-28.bpo-34866.ML6KpJ.rst deleted file mode 100644 index 90c146ce834e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-03-11-07-28.bpo-34866.ML6KpJ.rst +++ /dev/null @@ -1,2 +0,0 @@ -Adding ``max_num_fields`` to ``cgi.FieldStorage`` to make DOS attacks harder by -limiting the number of ``MiniFieldStorage`` objects created by ``FieldStorage``. diff --git a/Misc/NEWS.d/next/Library/2018-10-04-15-53-14.bpo-28441.2sQENe.rst b/Misc/NEWS.d/next/Library/2018-10-04-15-53-14.bpo-28441.2sQENe.rst deleted file mode 100644 index 45143c2a54ac..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-04-15-53-14.bpo-28441.2sQENe.rst +++ /dev/null @@ -1,3 +0,0 @@ -On Cygwin and MinGW, ensure that ``sys.executable`` always includes the full -filename in the path, including the ``.exe`` suffix (unless it is a symbolic -link). diff --git a/Misc/NEWS.d/next/Library/2018-10-04-17-23-43.bpo-34898.Wo2PoJ.rst b/Misc/NEWS.d/next/Library/2018-10-04-17-23-43.bpo-34898.Wo2PoJ.rst deleted file mode 100644 index 4c0a061daf9f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-04-17-23-43.bpo-34898.Wo2PoJ.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add `mtime` argument to `gzip.compress` for reproducible output. -Patch by Guo Ci Teo. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2018-10-04-18-46-54.bpo-34871.t3X-dB.rst b/Misc/NEWS.d/next/Library/2018-10-04-18-46-54.bpo-34871.t3X-dB.rst deleted file mode 100644 index 8cff15671ce5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-04-18-46-54.bpo-34871.t3X-dB.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix inspect module polluted ``sys.modules`` when parsing -``__text_signature__`` of callable. diff --git a/Misc/NEWS.d/next/Library/2018-10-04-20-25-35.bpo-34897.rNE2Cy.rst b/Misc/NEWS.d/next/Library/2018-10-04-20-25-35.bpo-34897.rNE2Cy.rst deleted file mode 100644 index f25349659ca5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-04-20-25-35.bpo-34897.rNE2Cy.rst +++ /dev/null @@ -1,2 +0,0 @@ -Adjust test.support.missing_compiler_executable check so that a nominal -command name of "" is ignored. Patch by Michael Felt. diff --git a/Misc/NEWS.d/next/Library/2018-10-04-20-44-45.bpo-34844.Hnuxav.rst b/Misc/NEWS.d/next/Library/2018-10-04-20-44-45.bpo-34844.Hnuxav.rst deleted file mode 100644 index 464dcb1e4ceb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-04-20-44-45.bpo-34844.Hnuxav.rst +++ /dev/null @@ -1,6 +0,0 @@ -logging.Formatter enhancement - Ensure styles and fmt matches in -logging.Formatter - Added validate method in each format style class: -StrFormatStyle, PercentStyle, StringTemplateStyle. - This method is called -in the constructor of logging.Formatter class - Also re-raise the KeyError -in the format method of each style class, so it would a bit clear that it's -an error with the invalid format fields. diff --git a/Misc/NEWS.d/next/Library/2018-10-05-05-55-53.bpo-34900.8RNiFu.rst b/Misc/NEWS.d/next/Library/2018-10-05-05-55-53.bpo-34900.8RNiFu.rst deleted file mode 100644 index 20e3a0e2d5a1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-05-05-55-53.bpo-34900.8RNiFu.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed :meth:`unittest.TestCase.debug` when used to call test methods with -subtests. Patch by Bruno Oliveira. diff --git a/Misc/NEWS.d/next/Library/2018-10-07-20-37-02.bpo-34925.KlkZ-Y.rst b/Misc/NEWS.d/next/Library/2018-10-07-20-37-02.bpo-34925.KlkZ-Y.rst deleted file mode 100644 index b7853684a959..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-07-20-37-02.bpo-34925.KlkZ-Y.rst +++ /dev/null @@ -1 +0,0 @@ -25% speedup in argument parsing for the functions in the bisect module. diff --git a/Misc/NEWS.d/next/Library/2018-10-07-21-18-52.bpo-34922.37IdsA.rst b/Misc/NEWS.d/next/Library/2018-10-07-21-18-52.bpo-34922.37IdsA.rst deleted file mode 100644 index 646388688399..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-07-21-18-52.bpo-34922.37IdsA.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed integer overflow in the :meth:`~hashlib.shake.digest()` and -:meth:`~hashlib.shake.hexdigest()` methods for the SHAKE algorithm -in the :mod:`hashlib` module. diff --git a/Misc/NEWS.d/next/Library/2018-10-08-15-22-02.bpo-34911.hCy0Fv.rst b/Misc/NEWS.d/next/Library/2018-10-08-15-22-02.bpo-34911.hCy0Fv.rst deleted file mode 100644 index d3509475306b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-08-15-22-02.bpo-34911.hCy0Fv.rst +++ /dev/null @@ -1,3 +0,0 @@ -Added *secure_protocols* argument to *http.cookiejar.DefaultCookiePolicy* to -allow for tweaking of protocols and also to add support by default for -*wss*, the secure websocket protocol. diff --git a/Misc/NEWS.d/next/Library/2018-10-08-16-04-36.bpo-34829.B7v7D0.rst b/Misc/NEWS.d/next/Library/2018-10-08-16-04-36.bpo-34829.B7v7D0.rst deleted file mode 100644 index e74b56b83611..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-08-16-04-36.bpo-34829.B7v7D0.rst +++ /dev/null @@ -1,3 +0,0 @@ -Add methods ``selection_from``, ``selection_range``, ``selection_present`` -and ``selection_to`` to the ``tkinter.Spinbox`` for consistency with the -``tkinter.Entry`` widget. Patch by Juliette Monsel. diff --git a/Misc/NEWS.d/next/Library/2018-10-08-21-05-11.bpo-34936.3tRqdq.rst b/Misc/NEWS.d/next/Library/2018-10-08-21-05-11.bpo-34936.3tRqdq.rst deleted file mode 100644 index 7c1f7bb59760..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-08-21-05-11.bpo-34936.3tRqdq.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``TclError`` in ``tkinter.Spinbox.selection_element()``. Patch by -Juliette Monsel. diff --git a/Misc/NEWS.d/next/Library/2018-10-09-11-01-16.bpo-34769.cSkkZt.rst b/Misc/NEWS.d/next/Library/2018-10-09-11-01-16.bpo-34769.cSkkZt.rst deleted file mode 100644 index fc034c962ea2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-09-11-01-16.bpo-34769.cSkkZt.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix for async generators not finalizing when event loop is in debug mode and -garbage collector runs in another thread. diff --git a/Misc/NEWS.d/next/Library/2018-10-09-14-25-36.bpo-32680.z2FbOp.rst b/Misc/NEWS.d/next/Library/2018-10-09-14-25-36.bpo-32680.z2FbOp.rst deleted file mode 100644 index afe16b627c8f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-09-14-25-36.bpo-32680.z2FbOp.rst +++ /dev/null @@ -1 +0,0 @@ -:class:`smtplib.SMTP` objects now always have a `sock` attribute present diff --git a/Misc/NEWS.d/next/Library/2018-10-09-14-42-16.bpo-34941.1Q5QKv.rst b/Misc/NEWS.d/next/Library/2018-10-09-14-42-16.bpo-34941.1Q5QKv.rst deleted file mode 100644 index 402372489bef..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-09-14-42-16.bpo-34941.1Q5QKv.rst +++ /dev/null @@ -1,3 +0,0 @@ -Methods ``find()``, ``findtext()`` and ``findall()`` of the ``Element`` -class in the :mod:`xml.etree.ElementTree` module are now able to find -children which are instances of ``Element`` subclasses. diff --git a/Misc/NEWS.d/next/Library/2018-10-09-15-44-04.bpo-23831.2CL7lL.rst b/Misc/NEWS.d/next/Library/2018-10-09-15-44-04.bpo-23831.2CL7lL.rst deleted file mode 100644 index de12407b4ffe..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-09-15-44-04.bpo-23831.2CL7lL.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add ``moveto()`` method to the ``tkinter.Canvas`` widget. Patch by Juliette -Monsel. diff --git a/Misc/NEWS.d/next/Library/2018-10-10-00-22-57.bpo-34926.CA0rqd.rst b/Misc/NEWS.d/next/Library/2018-10-10-00-22-57.bpo-34926.CA0rqd.rst deleted file mode 100644 index 5b009cb87747..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-10-00-22-57.bpo-34926.CA0rqd.rst +++ /dev/null @@ -1,2 +0,0 @@ -:meth:`mimetypes.MimeTypes.guess_type` now accepts :term:`path-like object` in addition to url strings. -Patch by Mayank Asthana. diff --git a/Misc/NEWS.d/next/Library/2018-10-12-18-57-52.bpo-34966.WZeBHO.rst b/Misc/NEWS.d/next/Library/2018-10-12-18-57-52.bpo-34966.WZeBHO.rst deleted file mode 100644 index b861405297f4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-12-18-57-52.bpo-34966.WZeBHO.rst +++ /dev/null @@ -1,3 +0,0 @@ -:mod:`pydoc` now supports aliases not only to methods defined in -the end class, but also to inherited methods. The docstring is not -duplicated for aliases. diff --git a/Misc/NEWS.d/next/Library/2018-10-12-20-30-42.bpo-16965.xo5LAr.rst b/Misc/NEWS.d/next/Library/2018-10-12-20-30-42.bpo-16965.xo5LAr.rst deleted file mode 100644 index 8e9d2f9482d2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-12-20-30-42.bpo-16965.xo5LAr.rst +++ /dev/null @@ -1,2 +0,0 @@ -The :term:`2to3` :2to3fixer:`execfile` fixer now opens the file with mode -``'rb'``. Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Library/2018-10-13-07-46-50.bpo-34969.Mfnhjb.rst b/Misc/NEWS.d/next/Library/2018-10-13-07-46-50.bpo-34969.Mfnhjb.rst deleted file mode 100644 index e3b713261406..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-13-07-46-50.bpo-34969.Mfnhjb.rst +++ /dev/null @@ -1,3 +0,0 @@ -gzip: Add --fast, --best on the gzip CLI, these parameters will be used for the -fast compression method (quick) or the best method compress (slower, but smaller -file). Also, change the default compression level to 6 (tradeoff). diff --git a/Misc/NEWS.d/next/Library/2018-10-13-11-14-13.bpo-34970.SrJTY7.rst b/Misc/NEWS.d/next/Library/2018-10-13-11-14-13.bpo-34970.SrJTY7.rst deleted file mode 100644 index a58b3dd35419..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-13-11-14-13.bpo-34970.SrJTY7.rst +++ /dev/null @@ -1 +0,0 @@ -Protect tasks weak set manipulation in ``asyncio.all_tasks()`` diff --git a/Misc/NEWS.d/next/Library/2018-10-13-18-16-20.bpo-31522.rWBb43.rst b/Misc/NEWS.d/next/Library/2018-10-13-18-16-20.bpo-31522.rWBb43.rst deleted file mode 100644 index 5aea7173fc6d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-13-18-16-20.bpo-31522.rWBb43.rst +++ /dev/null @@ -1 +0,0 @@ -The `mailbox.mbox.get_string` function *from_* parameter can now successfully be set to a non-default value. diff --git a/Misc/NEWS.d/next/Library/2018-10-13-19-15-23.bpo-34521.YPaiTK.rst b/Misc/NEWS.d/next/Library/2018-10-13-19-15-23.bpo-34521.YPaiTK.rst deleted file mode 100644 index 4f4a7f74864f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-13-19-15-23.bpo-34521.YPaiTK.rst +++ /dev/null @@ -1,3 +0,0 @@ -Use :func:`socket.CMSG_SPACE` to calculate ancillary data size instead of -:func:`socket.CMSG_LEN` in :func:`multiprocessing.reduction.recvfds` as -:rfc:`3542` requires the use of the former for portable applications. diff --git a/Misc/NEWS.d/next/Library/2018-10-15-23-10-41.bpo-34890.77E770.rst b/Misc/NEWS.d/next/Library/2018-10-15-23-10-41.bpo-34890.77E770.rst deleted file mode 100644 index 58745b289591..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-15-23-10-41.bpo-34890.77E770.rst +++ /dev/null @@ -1,3 +0,0 @@ -Make :func:`inspect.iscoroutinefunction`, -:func:`inspect.isgeneratorfunction` and :func:`inspect.isasyncgenfunction` -work with :func:`functools.partial`. Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Library/2018-10-17-02-15-23.bpo-33947.SRuq3T.rst b/Misc/NEWS.d/next/Library/2018-10-17-02-15-23.bpo-33947.SRuq3T.rst deleted file mode 100644 index bf08bac13cc7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-17-02-15-23.bpo-33947.SRuq3T.rst +++ /dev/null @@ -1 +0,0 @@ -dataclasses now handle recursive reprs without raising RecursionError. diff --git a/Misc/NEWS.d/next/Library/2018-10-17-11-00-00.bpo-23420.Lq74Uu.rst b/Misc/NEWS.d/next/Library/2018-10-17-11-00-00.bpo-23420.Lq74Uu.rst deleted file mode 100644 index 034e7e53970a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-17-11-00-00.bpo-23420.Lq74Uu.rst +++ /dev/null @@ -1,2 +0,0 @@ -Verify the value for the parameter '-s' of the cProfile CLI. Patch by Robert -Kuska diff --git a/Misc/NEWS.d/next/Library/2018-10-17-11-54-04.bpo-35008.dotef_.rst b/Misc/NEWS.d/next/Library/2018-10-17-11-54-04.bpo-35008.dotef_.rst deleted file mode 100644 index 3d12a918fc73..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-17-11-54-04.bpo-35008.dotef_.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed references leaks when call the ``__setstate__()`` method of -:class:`xml.etree.ElementTree.Element` in the C implementation for already -initialized element. diff --git a/Misc/NEWS.d/next/Library/2018-10-18-17-57-28.bpo-35022.KeEF4T.rst b/Misc/NEWS.d/next/Library/2018-10-18-17-57-28.bpo-35022.KeEF4T.rst deleted file mode 100644 index 426be70ceacf..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-18-17-57-28.bpo-35022.KeEF4T.rst +++ /dev/null @@ -1,2 +0,0 @@ -:class:`unittest.mock.MagicMock` now supports the ``__fspath__`` method -(from :class:`os.PathLike`). diff --git a/Misc/NEWS.d/next/Library/2018-10-20-00-29-43.bpo-34909.Ew_8DC.rst b/Misc/NEWS.d/next/Library/2018-10-20-00-29-43.bpo-34909.Ew_8DC.rst deleted file mode 100644 index b71b69ad8522..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-20-00-29-43.bpo-34909.Ew_8DC.rst +++ /dev/null @@ -1,2 +0,0 @@ -Enum: fix grandchildren subclassing when parent mixed with concrete data -types. diff --git a/Misc/NEWS.d/next/Library/2018-10-21-14-53-19.bpo-34794.yt3R4-.rst b/Misc/NEWS.d/next/Library/2018-10-21-14-53-19.bpo-34794.yt3R4-.rst deleted file mode 100644 index 770807fc7653..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-21-14-53-19.bpo-34794.yt3R4-.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed a leak in Tkinter when pass the Python wrapper around Tcl_Obj back to -Tcl/Tk. diff --git a/Misc/NEWS.d/next/Library/2018-10-23-14-46-47.bpo-31553.JxRkAW.rst b/Misc/NEWS.d/next/Library/2018-10-23-14-46-47.bpo-31553.JxRkAW.rst deleted file mode 100644 index de80e7cd7d11..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-23-14-46-47.bpo-31553.JxRkAW.rst +++ /dev/null @@ -1 +0,0 @@ -Add the --json-lines option to json.tool. Patch by hongweipeng. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2018-10-23-18-58-12.bpo-35053.G82qwh.rst b/Misc/NEWS.d/next/Library/2018-10-23-18-58-12.bpo-35053.G82qwh.rst deleted file mode 100644 index d96ac119aa82..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-23-18-58-12.bpo-35053.G82qwh.rst +++ /dev/null @@ -1,3 +0,0 @@ -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). diff --git a/Misc/NEWS.d/next/Library/2018-10-25-09-37-03.bpo-31047.kBbX8r.rst b/Misc/NEWS.d/next/Library/2018-10-25-09-37-03.bpo-31047.kBbX8r.rst deleted file mode 100644 index 1e47bf4174e7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-25-09-37-03.bpo-31047.kBbX8r.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``ntpath.abspath`` regression where it didn't remove a trailing -separator on Windows. Patch by Tim Graham. diff --git a/Misc/NEWS.d/next/Library/2018-10-25-09-59-00.bpo-35047.abbaa.rst b/Misc/NEWS.d/next/Library/2018-10-25-09-59-00.bpo-35047.abbaa.rst deleted file mode 100644 index 12eda27527d8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-25-09-59-00.bpo-35047.abbaa.rst +++ /dev/null @@ -1,3 +0,0 @@ -``unittest.mock`` now includes mock calls in exception messages if -``assert_not_called``, ``assert_called_once``, or ``assert_called_once_with`` -fails. Patch by Petter Strandmark. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2018-10-25-15-43-32.bpo-35024.ltSrtr.rst b/Misc/NEWS.d/next/Library/2018-10-25-15-43-32.bpo-35024.ltSrtr.rst deleted file mode 100644 index ef156435d3f7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-25-15-43-32.bpo-35024.ltSrtr.rst +++ /dev/null @@ -1,3 +0,0 @@ -`importlib` no longer logs `wrote ` redundantly after -`(created|could not create) ` is already logged. -Patch by Quentin Agren. diff --git a/Misc/NEWS.d/next/Library/2018-10-26-00-11-21.bpo-35017.6Ez4Cv.rst b/Misc/NEWS.d/next/Library/2018-10-26-00-11-21.bpo-35017.6Ez4Cv.rst deleted file mode 100644 index 5682717adf70..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-26-00-11-21.bpo-35017.6Ez4Cv.rst +++ /dev/null @@ -1,3 +0,0 @@ -:meth:`socketserver.BaseServer.serve_forever` now exits immediately if it's -:meth:`~socketserver.BaseServer.shutdown` method is called while it is -polling for new events. diff --git a/Misc/NEWS.d/next/Library/2018-10-26-21-12-55.bpo-33710.Q5oXc6.rst b/Misc/NEWS.d/next/Library/2018-10-26-21-12-55.bpo-33710.Q5oXc6.rst deleted file mode 100644 index 25f0f8758083..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-26-21-12-55.bpo-33710.Q5oXc6.rst +++ /dev/null @@ -1,4 +0,0 @@ -Deprecated ``l*gettext()`` functions and methods in the :mod:`gettext` -module. They return encoded bytes instead of Unicode strings and are -artifacts from Python 2 times. Also deprecated functions and methods related -to setting the charset for ``l*gettext()`` functions and methods. diff --git a/Misc/NEWS.d/next/Library/2018-10-26-22-53-16.bpo-35079.Tm5jvF.rst b/Misc/NEWS.d/next/Library/2018-10-26-22-53-16.bpo-35079.Tm5jvF.rst deleted file mode 100644 index 991bae38ec72..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-26-22-53-16.bpo-35079.Tm5jvF.rst +++ /dev/null @@ -1,2 +0,0 @@ -Improve difflib.SequenceManager.get_matching_blocks doc by adding -'non-overlapping' and changing '!=' to '<'. diff --git a/Misc/NEWS.d/next/Library/2018-10-27-21-11-42.bpo-34160.UzyPZf.rst b/Misc/NEWS.d/next/Library/2018-10-27-21-11-42.bpo-34160.UzyPZf.rst deleted file mode 100644 index 775d33aacda7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-27-21-11-42.bpo-34160.UzyPZf.rst +++ /dev/null @@ -1 +0,0 @@ -ElementTree and minidom now preserve the attribute order specified by the user. diff --git a/Misc/NEWS.d/next/Library/2018-10-29-10-18-31.bpo-35065.CulMN8.rst b/Misc/NEWS.d/next/Library/2018-10-29-10-18-31.bpo-35065.CulMN8.rst deleted file mode 100644 index 9d5d61263f8c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-29-10-18-31.bpo-35065.CulMN8.rst +++ /dev/null @@ -1,3 +0,0 @@ -Remove `StreamReaderProtocol._untrack_reader`. The call to `_untrack_reader` -is currently performed too soon, causing the protocol to forget about the -reader before `connection_lost` can run and feed the EOF to the reader. diff --git a/Misc/NEWS.d/next/Library/2018-10-29-23-09-24.bpo-35062.dQS1ng.rst b/Misc/NEWS.d/next/Library/2018-10-29-23-09-24.bpo-35062.dQS1ng.rst deleted file mode 100644 index b77ed8685bfc..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-29-23-09-24.bpo-35062.dQS1ng.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix incorrect parsing of :class:`_io.IncrementalNewlineDecoder`'s -*translate* argument. diff --git a/Misc/NEWS.d/next/Library/2018-11-03-10-12-04.bpo-35152.xpqskp.rst b/Misc/NEWS.d/next/Library/2018-11-03-10-12-04.bpo-35152.xpqskp.rst deleted file mode 100644 index 7cc9ed39007e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-03-10-12-04.bpo-35152.xpqskp.rst +++ /dev/null @@ -1 +0,0 @@ -Allow sending more than 2 GB at once on a multiprocessing connection on non-Windows systems. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2018-11-08-14-22-29.bpo-35186.5m22Mj.rst b/Misc/NEWS.d/next/Library/2018-11-08-14-22-29.bpo-35186.5m22Mj.rst deleted file mode 100644 index 2e8cff982907..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-08-14-22-29.bpo-35186.5m22Mj.rst +++ /dev/null @@ -1,2 +0,0 @@ -Removed the "built with" comment added when ``setup.py upload`` is used with -either ``bdist_rpm`` or ``bdist_dumb``. diff --git a/Misc/NEWS.d/next/Library/2018-11-09-01-18-51.bpo-30064.IF5mH6.rst b/Misc/NEWS.d/next/Library/2018-11-09-01-18-51.bpo-30064.IF5mH6.rst deleted file mode 100644 index 67dfa7b9c936..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-09-01-18-51.bpo-30064.IF5mH6.rst +++ /dev/null @@ -1,2 +0,0 @@ -Use add_done_callback() in sock_* asyncio API to unsubscribe reader/writer -early on calcellation. diff --git a/Misc/NEWS.d/next/Library/2018-11-09-13-35-36.bpo-35189.gog-sl.rst b/Misc/NEWS.d/next/Library/2018-11-09-13-35-36.bpo-35189.gog-sl.rst deleted file mode 100644 index 3408ca4eec44..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-09-13-35-36.bpo-35189.gog-sl.rst +++ /dev/null @@ -1,2 +0,0 @@ -Modify the following fnctl function to retry if interrupted by a signal -(EINTR): flock, lockf, fnctl diff --git a/Misc/NEWS.d/next/Library/2018-11-12-17-40-04.bpo-29564.SFNBT5.rst b/Misc/NEWS.d/next/Library/2018-11-12-17-40-04.bpo-29564.SFNBT5.rst deleted file mode 100644 index 7ef3adeb73b9..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-12-17-40-04.bpo-29564.SFNBT5.rst +++ /dev/null @@ -1,3 +0,0 @@ -The warnings module now suggests to enable tracemalloc if the source is -specified, the tracemalloc module is available, but tracemalloc is not -tracing memory allocations. diff --git a/Misc/NEWS.d/next/Library/2018-11-15-07-14-32.bpo-35226.wJPEEe.rst b/Misc/NEWS.d/next/Library/2018-11-15-07-14-32.bpo-35226.wJPEEe.rst deleted file mode 100644 index b95cc979573e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-15-07-14-32.bpo-35226.wJPEEe.rst +++ /dev/null @@ -1,3 +0,0 @@ -Recursively check arguments when testing for equality of -:class:`unittest.mock.call` objects and add note that tracking of parameters -used to create ancestors of mocks in ``mock_calls`` is not possible. diff --git a/Misc/NEWS.d/next/Library/2018-11-18-18-44-40.bpo-24209.p3YWOf.rst b/Misc/NEWS.d/next/Library/2018-11-18-18-44-40.bpo-24209.p3YWOf.rst deleted file mode 100644 index 88749e920c2c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-18-18-44-40.bpo-24209.p3YWOf.rst +++ /dev/null @@ -1 +0,0 @@ -Adds IPv6 support when invoking http.server directly. diff --git a/Misc/NEWS.d/next/Library/2018-11-19-07-22-04.bpo-35277.dsD-2E.rst b/Misc/NEWS.d/next/Library/2018-11-19-07-22-04.bpo-35277.dsD-2E.rst deleted file mode 100644 index ff76988e33e7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-19-07-22-04.bpo-35277.dsD-2E.rst +++ /dev/null @@ -1 +0,0 @@ -Update ensurepip to install pip 18.1 and setuptools 40.6.2. diff --git a/Misc/NEWS.d/next/Library/2018-11-20-13-34-01.bpo-28604.iiih5h.rst b/Misc/NEWS.d/next/Library/2018-11-20-13-34-01.bpo-28604.iiih5h.rst deleted file mode 100644 index 289e484c35d6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-20-13-34-01.bpo-28604.iiih5h.rst +++ /dev/null @@ -1,3 +0,0 @@ -:func:`locale.localeconv` now sets temporarily the ``LC_CTYPE`` locale to the -``LC_MONETARY`` locale if the two locales are different and monetary strings -are non-ASCII. This temporary change affects other threads. diff --git a/Misc/NEWS.d/next/Library/2018-11-22-15-22-56.bpo-24746.eSLKBE.rst b/Misc/NEWS.d/next/Library/2018-11-22-15-22-56.bpo-24746.eSLKBE.rst deleted file mode 100644 index c592516d1466..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-22-15-22-56.bpo-24746.eSLKBE.rst +++ /dev/null @@ -1,2 +0,0 @@ -Avoid stripping trailing whitespace in doctest fancy diff. Orignial patch by -R. David Murray & Jairo Trad. Enhanced by Sanyam Khurana. diff --git a/Misc/NEWS.d/next/Library/2018-11-24-10-33-42.bpo-35308.9--2iy.rst b/Misc/NEWS.d/next/Library/2018-11-24-10-33-42.bpo-35308.9--2iy.rst deleted file mode 100644 index a33fe2e4812b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-24-10-33-42.bpo-35308.9--2iy.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix regression in ``webbrowser`` where default browsers may be preferred -over browsers in the ``BROWSER`` environment variable. diff --git a/Misc/NEWS.d/next/Library/2018-11-25-20-05-33.bpo-35312.wbw0zO.rst b/Misc/NEWS.d/next/Library/2018-11-25-20-05-33.bpo-35312.wbw0zO.rst deleted file mode 100644 index c195468b9e27..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-25-20-05-33.bpo-35312.wbw0zO.rst +++ /dev/null @@ -1 +0,0 @@ -Make ``lib2to3.pgen2.parse.ParseError`` round-trip pickle-able. Patch by Anthony Sottile. diff --git a/Misc/NEWS.d/next/Library/2018-11-29-00-23-25.bpo-35344.4QOPJQ.rst b/Misc/NEWS.d/next/Library/2018-11-29-00-23-25.bpo-35344.4QOPJQ.rst deleted file mode 100644 index a999cbe2a72e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-29-00-23-25.bpo-35344.4QOPJQ.rst +++ /dev/null @@ -1,3 +0,0 @@ -On macOS, :func:`platform.platform` now uses :func:`platform.mac_ver`, if it -returns a non-empty release string, to get the macOS version rather than the -darwin version. diff --git a/Misc/NEWS.d/next/Library/2018-11-29-00-55-33.bpo-35345.vepCSJ.rst b/Misc/NEWS.d/next/Library/2018-11-29-00-55-33.bpo-35345.vepCSJ.rst deleted file mode 100644 index e4d3b52c9ef5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-29-00-55-33.bpo-35345.vepCSJ.rst +++ /dev/null @@ -1,2 +0,0 @@ -The function `platform.popen` has been removed, it was deprecated since Python -3.3: use :func:`os.popen` instead. diff --git a/Misc/NEWS.d/next/Library/2018-11-29-09-38-40.bpo-35066.Nwej2s.rst b/Misc/NEWS.d/next/Library/2018-11-29-09-38-40.bpo-35066.Nwej2s.rst deleted file mode 100644 index b0c39bd86383..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-29-09-38-40.bpo-35066.Nwej2s.rst +++ /dev/null @@ -1,5 +0,0 @@ -Previously, calling the strftime() method on a datetime object with a -trailing '%' in the format string would result in an exception. However, -this only occured when the datetime C module was being used; the python -implementation did not match this behavior. Datetime is now PEP-399 -compliant, and will not throw an exception on a trailing '%'. diff --git a/Misc/NEWS.d/next/Library/2018-11-29-12-42-13.bpo-35346.OmTY5c.rst b/Misc/NEWS.d/next/Library/2018-11-29-12-42-13.bpo-35346.OmTY5c.rst deleted file mode 100644 index f6d28feab78c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-29-12-42-13.bpo-35346.OmTY5c.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`platform.uname` now redirects ``stderr`` to :data:`os.devnull` when -running external programs like ``cmd /c ver``. diff --git a/Misc/NEWS.d/next/Library/2018-12-01-13-44-12.bpo-35371.fTAwlX.rst b/Misc/NEWS.d/next/Library/2018-12-01-13-44-12.bpo-35371.fTAwlX.rst deleted file mode 100644 index f40d13939311..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-01-13-44-12.bpo-35371.fTAwlX.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed possible crash in ``os.utime()`` on Windows when pass incorrect -arguments. diff --git a/Misc/NEWS.d/next/Library/2018-12-02-13-50-52.bpo-35341.32E8T_.rst b/Misc/NEWS.d/next/Library/2018-12-02-13-50-52.bpo-35341.32E8T_.rst deleted file mode 100644 index 43aa9956c1f7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-02-13-50-52.bpo-35341.32E8T_.rst +++ /dev/null @@ -1 +0,0 @@ -Add generic version of ``collections.OrderedDict`` to the ``typing`` module. Patch by Ismo Toijala. diff --git a/Misc/NEWS.d/next/Library/2018-12-03-14-41-11.bpo-35380.SdRF9l.rst b/Misc/NEWS.d/next/Library/2018-12-03-14-41-11.bpo-35380.SdRF9l.rst deleted file mode 100644 index 91f86e604ea8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-03-14-41-11.bpo-35380.SdRF9l.rst +++ /dev/null @@ -1 +0,0 @@ -Enable TCP_NODELAY on Windows for proactor asyncio event loop. diff --git a/Misc/NEWS.d/next/Library/2018-12-03-19-45-00.bpo-35310.9k28gR.rst b/Misc/NEWS.d/next/Library/2018-12-03-19-45-00.bpo-35310.9k28gR.rst deleted file mode 100644 index 1ab2e168c86a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-03-19-45-00.bpo-35310.9k28gR.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix a bug in :func:`select.select` where, in some cases, the file descriptor -sequences were returned unmodified after a signal interruption, even though the -file descriptors might not be ready yet. :func:`select.select` will now always -return empty lists if a timeout has occurred. Patch by Oran Avraham. diff --git a/Misc/NEWS.d/next/Library/2018-12-04-12-17-08.bpo-35394.fuTVDk.rst b/Misc/NEWS.d/next/Library/2018-12-04-12-17-08.bpo-35394.fuTVDk.rst deleted file mode 100644 index ab630c0f67fc..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-04-12-17-08.bpo-35394.fuTVDk.rst +++ /dev/null @@ -1 +0,0 @@ -Add empty slots to asyncio abstract protocols. diff --git a/Misc/NEWS.d/next/Library/2018-12-04-12-46-05.bpo-35389.CTZ9iA.rst b/Misc/NEWS.d/next/Library/2018-12-04-12-46-05.bpo-35389.CTZ9iA.rst deleted file mode 100644 index 8e2f9dd21cc0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-04-12-46-05.bpo-35389.CTZ9iA.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`platform.libc_ver` now uses ``os.confstr('CS_GNU_LIBC_VERSION')`` if -available and the *executable* parameter is not set. diff --git a/Misc/NEWS.d/next/Library/2018-12-05-13-37-39.bpo-10496.VH-1Lp.rst b/Misc/NEWS.d/next/Library/2018-12-05-13-37-39.bpo-10496.VH-1Lp.rst deleted file mode 100644 index 232fcc6503b0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-05-13-37-39.bpo-10496.VH-1Lp.rst +++ /dev/null @@ -1,5 +0,0 @@ -:func:`posixpath.expanduser` now returns the input *path* unchanged if the -``HOME`` environment variable is not set and the current user has no home -directory (if the current user identifier doesn't exist in the password -database). This change fix the :mod:`site` module if the current user doesn't -exist in the password database (if the user has no home directory). diff --git a/Misc/NEWS.d/next/Library/2018-12-05-17-42-49.bpo-10496.laV_IE.rst b/Misc/NEWS.d/next/Library/2018-12-05-17-42-49.bpo-10496.laV_IE.rst deleted file mode 100644 index cbfe5eb11668..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-05-17-42-49.bpo-10496.laV_IE.rst +++ /dev/null @@ -1,3 +0,0 @@ -:func:`~distutils.utils.check_environ` of :mod:`distutils.utils` now catchs -:exc:`KeyError` on calling :func:`pwd.getpwuid`: don't create the ``HOME`` -environment variable in this case. diff --git a/Misc/NEWS.d/next/Library/2018-12-05-22-52-21.bpo-35346.Okm9-S.rst b/Misc/NEWS.d/next/Library/2018-12-05-22-52-21.bpo-35346.Okm9-S.rst deleted file mode 100644 index 047a1c82b8f2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-05-22-52-21.bpo-35346.Okm9-S.rst +++ /dev/null @@ -1,2 +0,0 @@ -Drop Mac OS 9 and Rhapsody support from the :mod:`platform` module. Rhapsody -last release was in 2000. Mac OS 9 last release was in 2001. diff --git a/Misc/NEWS.d/next/Library/2018-12-06-00-43-13.bpo-35330.abB4BN.rst b/Misc/NEWS.d/next/Library/2018-12-06-00-43-13.bpo-35330.abB4BN.rst deleted file mode 100644 index 24d0ab84fb16..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-06-00-43-13.bpo-35330.abB4BN.rst +++ /dev/null @@ -1,4 +0,0 @@ -When a :class:`Mock` instance was used to wrap an object, if `side_effect` -is used in one of the mocks of it methods, don't call the original -implementation and return the result of using the side effect the same way -that it is done with return_value. diff --git a/Misc/NEWS.d/next/Library/2018-12-06-02-02-28.bpo-35424.gXxOJU.rst b/Misc/NEWS.d/next/Library/2018-12-06-02-02-28.bpo-35424.gXxOJU.rst deleted file mode 100644 index db4a336ee17c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-06-02-02-28.bpo-35424.gXxOJU.rst +++ /dev/null @@ -1,2 +0,0 @@ -:class:`multiprocessing.Pool` destructor now emits :exc:`ResourceWarning` -if the pool is still running. diff --git a/Misc/NEWS.d/next/Library/2018-12-06-14-44-21.bpo-35415.-HoK3d.rst b/Misc/NEWS.d/next/Library/2018-12-06-14-44-21.bpo-35415.-HoK3d.rst deleted file mode 100644 index ab053df4f74c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-06-14-44-21.bpo-35415.-HoK3d.rst +++ /dev/null @@ -1 +0,0 @@ -Validate fileno= argument to socket.socket(). diff --git a/Misc/NEWS.d/next/Library/2018-12-09-14-35-49.bpo-35445.LjvtsC.rst b/Misc/NEWS.d/next/Library/2018-12-09-14-35-49.bpo-35445.LjvtsC.rst deleted file mode 100644 index c0ba2b10e1eb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-09-14-35-49.bpo-35445.LjvtsC.rst +++ /dev/null @@ -1 +0,0 @@ -Memory errors during creating posix.environ no longer ignored. diff --git a/Misc/NEWS.d/next/Library/2018-12-09-17-04-15.bpo-17185.SfSCJF.rst b/Misc/NEWS.d/next/Library/2018-12-09-17-04-15.bpo-17185.SfSCJF.rst deleted file mode 100644 index 311c6d2b0e4e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-09-17-04-15.bpo-17185.SfSCJF.rst +++ /dev/null @@ -1,2 +0,0 @@ -Set ``__signature__`` on mock for :mod:`inspect` to get signature. -Patch by Karthikeyan Singaravelan. diff --git a/Misc/NEWS.d/next/Library/2018-12-09-21-35-49.bpo-20239.V4mWBL.rst b/Misc/NEWS.d/next/Library/2018-12-09-21-35-49.bpo-20239.V4mWBL.rst deleted file mode 100644 index fe9c69d234cf..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-09-21-35-49.bpo-20239.V4mWBL.rst +++ /dev/null @@ -1,2 +0,0 @@ -Allow repeated assignment deletion of :class:`unittest.mock.Mock` attributes. -Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Library/2018-12-10-09-48-27.bpo-35052.xE1ymg.rst b/Misc/NEWS.d/next/Library/2018-12-10-09-48-27.bpo-35052.xE1ymg.rst deleted file mode 100644 index 4877188a2944..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-10-09-48-27.bpo-35052.xE1ymg.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix xml.dom.minidom cloneNode() on a document with an entity: pass the -correct arguments to the user data handler of an entity. diff --git a/Misc/NEWS.d/next/Library/2018-12-12-16-24-55.bpo-23057.OB4Z1Y.rst b/Misc/NEWS.d/next/Library/2018-12-12-16-24-55.bpo-23057.OB4Z1Y.rst deleted file mode 100644 index 51b727db3042..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-12-16-24-55.bpo-23057.OB4Z1Y.rst +++ /dev/null @@ -1 +0,0 @@ -Unblock Proactor event loop when keyboard interrupt is received on Windows diff --git a/Misc/NEWS.d/next/Library/2018-12-12-16-25-21.bpo-35471.SK8jFC.rst b/Misc/NEWS.d/next/Library/2018-12-12-16-25-21.bpo-35471.SK8jFC.rst deleted file mode 100644 index fb4b9ff5b7d3..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-12-16-25-21.bpo-35471.SK8jFC.rst +++ /dev/null @@ -1,2 +0,0 @@ -Python 2.4 dropped MacOS 9 support. The macpath module was deprecated in -Python 3.7. The module is now removed. diff --git a/Misc/NEWS.d/next/Library/2018-12-12-22-52-34.bpo-31446.l--Fjz.rst b/Misc/NEWS.d/next/Library/2018-12-12-22-52-34.bpo-31446.l--Fjz.rst deleted file mode 100644 index 741263f16bb4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-12-22-52-34.bpo-31446.l--Fjz.rst +++ /dev/null @@ -1,2 +0,0 @@ -Copy command line that was passed to CreateProcessW since this function can -change the content of the input buffer. diff --git a/Misc/NEWS.d/next/Library/2018-12-13-00-10-51.bpo-35477.hHyy06.rst b/Misc/NEWS.d/next/Library/2018-12-13-00-10-51.bpo-35477.hHyy06.rst deleted file mode 100644 index 524df71ed951..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-13-00-10-51.bpo-35477.hHyy06.rst +++ /dev/null @@ -1,2 +0,0 @@ -:meth:`multiprocessing.Pool.__enter__` now fails if the pool is not running: -``with pool:`` fails if used more than once. diff --git a/Misc/NEWS.d/next/Library/2018-12-14-12-12-15.bpo-35491.jHsNOU.rst b/Misc/NEWS.d/next/Library/2018-12-14-12-12-15.bpo-35491.jHsNOU.rst deleted file mode 100644 index 7bb650ad7349..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-14-12-12-15.bpo-35491.jHsNOU.rst +++ /dev/null @@ -1,4 +0,0 @@ -:mod:`multiprocessing`: Add ``Pool.__repr__()`` and enhance -``BaseProcess.__repr__()`` (add pid and parent pid) to ease debugging. Pool -state constant values are now strings instead of integers, for example ``RUN`` -value becomes ``'RUN'`` instead of ``0``. diff --git a/Misc/NEWS.d/next/Library/2018-12-14-13-27-45.bpo-35348.u3Y2an.rst b/Misc/NEWS.d/next/Library/2018-12-14-13-27-45.bpo-35348.u3Y2an.rst deleted file mode 100644 index 190db31cfd68..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-14-13-27-45.bpo-35348.u3Y2an.rst +++ /dev/null @@ -1,3 +0,0 @@ -Make :func:`platform.architecture` parsing of ``file`` command output more -reliable: add the ``-b`` option to the ``file`` command to omit the filename, -force the usage of the C locale, and search also the "shared object" pattern. diff --git a/Misc/NEWS.d/next/Library/2018-12-14-23-56-48.bpo-35502.gLHuFS.rst b/Misc/NEWS.d/next/Library/2018-12-14-23-56-48.bpo-35502.gLHuFS.rst deleted file mode 100644 index 0fcea8d5a41d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-14-23-56-48.bpo-35502.gLHuFS.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed reference leaks in :class:`xml.etree.ElementTree.TreeBuilder` in case -of unfinished building of the tree (in particular when an error was raised -during parsing XML). diff --git a/Misc/NEWS.d/next/Library/2018-12-16-23-28-49.bpo-35513.pn-Zh3.rst b/Misc/NEWS.d/next/Library/2018-12-16-23-28-49.bpo-35513.pn-Zh3.rst deleted file mode 100644 index f1436a718de2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-16-23-28-49.bpo-35513.pn-Zh3.rst +++ /dev/null @@ -1,4 +0,0 @@ -:class:`~unittest.runner.TextTestRunner` of :mod:`unittest.runner` now uses -:func:`time.perf_counter` rather than :func:`time.time` to measure the -execution time of a test: :func:`time.time` can go backwards, whereas -:func:`time.perf_counter` is monotonic. diff --git a/Misc/NEWS.d/next/Library/2018-12-17-11-43-11.bpo-31784.W0gDjC.rst b/Misc/NEWS.d/next/Library/2018-12-17-11-43-11.bpo-31784.W0gDjC.rst deleted file mode 100644 index 6f0cb8ff4faf..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-17-11-43-11.bpo-31784.W0gDjC.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`uuid.uuid1` now calls :func:`time.time_ns` rather than -``int(time.time() * 1e9)``. diff --git a/Misc/NEWS.d/next/Library/2018-12-18-13-52-13.bpo-35523.SkoMno.rst b/Misc/NEWS.d/next/Library/2018-12-18-13-52-13.bpo-35523.SkoMno.rst deleted file mode 100644 index 94a9fd257383..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-18-13-52-13.bpo-35523.SkoMno.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove :mod:`ctypes` callback workaround: no longer create a callback at -startup. Avoid SELinux alert on ``import ctypes`` and ``import uuid``. diff --git a/Misc/NEWS.d/next/Library/2018-12-18-21-12-25.bpo-35526.fYvo6H.rst b/Misc/NEWS.d/next/Library/2018-12-18-21-12-25.bpo-35526.fYvo6H.rst deleted file mode 100644 index ea1096393d21..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-18-21-12-25.bpo-35526.fYvo6H.rst +++ /dev/null @@ -1 +0,0 @@ -Delaying the 'joke' of barry_as_FLUFL.mandatory to Python version 4.0 \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2018-12-20-16-24-51.bpo-35537.z4E7aA.rst b/Misc/NEWS.d/next/Library/2018-12-20-16-24-51.bpo-35537.z4E7aA.rst deleted file mode 100644 index b14d7493bc60..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-20-16-24-51.bpo-35537.z4E7aA.rst +++ /dev/null @@ -1,2 +0,0 @@ -The :mod:`subprocess` module can now use the :func:`os.posix_spawn` function in -some cases for better performance. diff --git a/Misc/NEWS.d/next/Library/2018-12-23-22-27-59.bpo-30561.PSRQ2w.rst b/Misc/NEWS.d/next/Library/2018-12-23-22-27-59.bpo-30561.PSRQ2w.rst deleted file mode 100644 index ae99b7cb0ae0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-23-22-27-59.bpo-30561.PSRQ2w.rst +++ /dev/null @@ -1,4 +0,0 @@ -random.gammavariate(1.0, beta) now computes the same result as -random.expovariate(1.0 / beta). This synchonizes the two algorithms and -eliminates some idiosyncrasies in the old implementation. It does however -produce a difference stream of random variables than it used to. diff --git a/Misc/NEWS.d/next/Library/2018-12-26-02-28-00.bpo-35585.Lkzd3Z.rst b/Misc/NEWS.d/next/Library/2018-12-26-02-28-00.bpo-35585.Lkzd3Z.rst deleted file mode 100644 index 247a4ae6800f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-26-02-28-00.bpo-35585.Lkzd3Z.rst +++ /dev/null @@ -1 +0,0 @@ -Speed-up building enums by value, e.g. http.HTTPStatus(200). diff --git a/Misc/NEWS.d/next/Library/2018-12-26-10-55-59.bpo-35588.PSR6Ez.rst b/Misc/NEWS.d/next/Library/2018-12-26-10-55-59.bpo-35588.PSR6Ez.rst deleted file mode 100644 index 270f556e76b2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-26-10-55-59.bpo-35588.PSR6Ez.rst +++ /dev/null @@ -1,2 +0,0 @@ -The floor division and modulo operations and the :func:`divmod` function on :class:`fractions.Fraction` types are 2--4x faster. -Patch by Stefan Behnel. diff --git a/Misc/NEWS.d/next/Library/2018-12-27-19-23-00.bpo-35568.PutiOC.rst b/Misc/NEWS.d/next/Library/2018-12-27-19-23-00.bpo-35568.PutiOC.rst deleted file mode 100644 index d70806404f87..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-27-19-23-00.bpo-35568.PutiOC.rst +++ /dev/null @@ -1 +0,0 @@ -Expose ``raise(signum)`` as `raise_signal` diff --git a/Misc/NEWS.d/next/Library/2018-12-30-01-10-50.bpo-35614.cnkM4f.rst b/Misc/NEWS.d/next/Library/2018-12-30-01-10-50.bpo-35614.cnkM4f.rst deleted file mode 100644 index 4d6beffa2be6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-30-01-10-50.bpo-35614.cnkM4f.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed help() on metaclasses. Patch by Sanyam Khurana. diff --git a/Misc/NEWS.d/next/Library/2018-12-30-14-56-33.bpo-28503.V4kNN3.rst b/Misc/NEWS.d/next/Library/2018-12-30-14-56-33.bpo-28503.V4kNN3.rst deleted file mode 100644 index 651fef1f0371..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-30-14-56-33.bpo-28503.V4kNN3.rst +++ /dev/null @@ -1,2 +0,0 @@ -The `crypt` module now internally uses the `crypt_r()` library function -instead of `crypt()` when available. diff --git a/Misc/NEWS.d/next/Library/2018-12-30-19-50-36.bpo-35619.ZRXdhy.rst b/Misc/NEWS.d/next/Library/2018-12-30-19-50-36.bpo-35619.ZRXdhy.rst deleted file mode 100644 index fe278e63dd86..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-30-19-50-36.bpo-35619.ZRXdhy.rst +++ /dev/null @@ -1,2 +0,0 @@ -Improved support of custom data descriptors in :func:`help` and -:mod:`pydoc`. diff --git a/Misc/NEWS.d/next/Library/2019-01-02-20-04-49.bpo-35643.DaMiaV.rst b/Misc/NEWS.d/next/Library/2019-01-02-20-04-49.bpo-35643.DaMiaV.rst deleted file mode 100644 index 0b47bb61fc05..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-02-20-04-49.bpo-35643.DaMiaV.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed a SyntaxWarning: invalid escape sequence in Modules/_sha3/cleanup.py. -Patch by Micka?l Schoentgen. diff --git a/Misc/NEWS.d/next/Library/2019-01-04-22-18-25.bpo-35664.Z-Gyyj.rst b/Misc/NEWS.d/next/Library/2019-01-04-22-18-25.bpo-35664.Z-Gyyj.rst deleted file mode 100644 index f4acc5ae57e7..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-04-22-18-25.bpo-35664.Z-Gyyj.rst +++ /dev/null @@ -1,4 +0,0 @@ -Improve operator.itemgetter() performance by 33% with optimized argument -handling and with adding a fast path for the common case of a single -non-negative integer index into a tuple (which is the typical use case in -the standard library). diff --git a/Misc/NEWS.d/next/Library/2019-01-07-17-17-16.bpo-35283.WClosC.rst b/Misc/NEWS.d/next/Library/2019-01-07-17-17-16.bpo-35283.WClosC.rst deleted file mode 100644 index 711865281b45..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-07-17-17-16.bpo-35283.WClosC.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add a deprecated warning for the :meth:`threading.Thread.isAlive` method. -Patch by Dong-hee Na. diff --git a/Misc/NEWS.d/next/Library/2019-01-08-01-54-02.bpo-35682.KDM9lk.rst b/Misc/NEWS.d/next/Library/2019-01-08-01-54-02.bpo-35682.KDM9lk.rst deleted file mode 100644 index 8152bd707ba5..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-08-01-54-02.bpo-35682.KDM9lk.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``asyncio.ProactorEventLoop.sendfile()``: don't attempt to set the result -of an internal future if it's already done. diff --git a/Misc/NEWS.d/next/Library/2019-01-08-14-00-52.bpo-32710.Sn5Ujj.rst b/Misc/NEWS.d/next/Library/2019-01-08-14-00-52.bpo-32710.Sn5Ujj.rst deleted file mode 100644 index 5c3961c33d96..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-08-14-00-52.bpo-32710.Sn5Ujj.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a memory leak in asyncio in the ProactorEventLoop when ``ReadFile()`` or -``WSASend()`` overlapped operation fail immediately: release the internal -buffer. diff --git a/Misc/NEWS.d/next/Library/2019-01-10-14-03-12.bpo-35702._ct_0H.rst b/Misc/NEWS.d/next/Library/2019-01-10-14-03-12.bpo-35702._ct_0H.rst deleted file mode 100644 index f97f3d4abb71..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-10-14-03-12.bpo-35702._ct_0H.rst +++ /dev/null @@ -1 +0,0 @@ -The :data:`time.CLOCK_UPTIME_RAW` constant is now available for macOS 10.12. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2019-01-10-15-55-10.bpo-32710.KwECPu.rst b/Misc/NEWS.d/next/Library/2019-01-10-15-55-10.bpo-32710.KwECPu.rst deleted file mode 100644 index 9f7a95a0aaff..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-10-15-55-10.bpo-32710.KwECPu.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix memory leaks in asyncio ProactorEventLoop on overlapped operation -failure. diff --git a/Misc/NEWS.d/next/Library/2019-01-11-07-09-25.bpo-35699.VDiENF.rst b/Misc/NEWS.d/next/Library/2019-01-11-07-09-25.bpo-35699.VDiENF.rst deleted file mode 100644 index e632e7bdcffe..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-11-07-09-25.bpo-35699.VDiENF.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed detection of Visual Studio Build Tools 2017 in distutils \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2019-01-11-17-56-15.bpo-35717.6TDTB_.rst b/Misc/NEWS.d/next/Library/2019-01-11-17-56-15.bpo-35717.6TDTB_.rst deleted file mode 100644 index 7cae1d1c82c7..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-11-17-56-15.bpo-35717.6TDTB_.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix KeyError exception raised when using enums and compile. Patch -contributed by R?mi Lapeyre. diff --git a/Misc/NEWS.d/next/Library/2019-01-11-20-21-59.bpo-35719.qyRcpE.rst b/Misc/NEWS.d/next/Library/2019-01-11-20-21-59.bpo-35719.qyRcpE.rst deleted file mode 100644 index e46e14296479..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-11-20-21-59.bpo-35719.qyRcpE.rst +++ /dev/null @@ -1,2 +0,0 @@ -Sped up multi-argument :mod:`math` functions atan2(), copysign(), -remainder() and hypot() by 1.3--2.5 times. diff --git a/Misc/NEWS.d/next/Library/2019-01-13-01-33-00.bpo-35726.dasdas.rst b/Misc/NEWS.d/next/Library/2019-01-13-01-33-00.bpo-35726.dasdas.rst deleted file mode 100644 index f47cdc128e85..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-13-01-33-00.bpo-35726.dasdas.rst +++ /dev/null @@ -1 +0,0 @@ -QueueHandler.prepare() now makes a copy of the record before modifying and enqueueing it, to avoid affecting other handlers in the chain. diff --git a/Misc/NEWS.d/next/Library/2019-01-13-18-42-41.bpo-35733.eFfLiv.rst b/Misc/NEWS.d/next/Library/2019-01-13-18-42-41.bpo-35733.eFfLiv.rst deleted file mode 100644 index 8e5ef9b84178..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-13-18-42-41.bpo-35733.eFfLiv.rst +++ /dev/null @@ -1,2 +0,0 @@ -``ast.Constant(boolean)`` no longer an instance of :class:`ast.Num`. Patch by Anthony -Sottile. diff --git a/Misc/NEWS.d/next/Library/2019-01-14-14-13-08.bpo-35674.kamWqz.rst b/Misc/NEWS.d/next/Library/2019-01-14-14-13-08.bpo-35674.kamWqz.rst deleted file mode 100644 index 02d170ecac6e..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-14-14-13-08.bpo-35674.kamWqz.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add a new :func:`os.posix_spawnp` function. -Patch by Joannah Nanjekye. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2019-01-14-17-34-36.bpo-34323.CRErrt.rst b/Misc/NEWS.d/next/Library/2019-01-14-17-34-36.bpo-34323.CRErrt.rst deleted file mode 100644 index 59269244cc47..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-14-17-34-36.bpo-34323.CRErrt.rst +++ /dev/null @@ -1,3 +0,0 @@ -:mod:`asyncio`: Enhance ``IocpProactor.close()`` log: wait 1 second before -the first log, then log every second. Log also the number of seconds since -``close()`` was called. diff --git a/Misc/NEWS.d/next/Library/2019-01-15-13-31-30.bpo-23846.LT_qL8.rst b/Misc/NEWS.d/next/Library/2019-01-15-13-31-30.bpo-23846.LT_qL8.rst deleted file mode 100644 index 788f092df9c1..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-15-13-31-30.bpo-23846.LT_qL8.rst +++ /dev/null @@ -1,2 +0,0 @@ -:class:`asyncio.ProactorEventLoop` now catchs and logs send errors when the -self-pipe is full. diff --git a/Misc/NEWS.d/next/Library/2019-01-18-13-44-13.bpo-35537.R1lbTl.rst b/Misc/NEWS.d/next/Library/2019-01-18-13-44-13.bpo-35537.R1lbTl.rst deleted file mode 100644 index 56f23a179a4b..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-18-13-44-13.bpo-35537.R1lbTl.rst +++ /dev/null @@ -1 +0,0 @@ -:func:`os.posix_spawn` and :func:`os.posix_spawnp` now have a *setsid* parameter. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2019-01-19-17-01-43.bpo-35780.CLf7fT.rst b/Misc/NEWS.d/next/Library/2019-01-19-17-01-43.bpo-35780.CLf7fT.rst deleted file mode 100644 index d44488272170..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-19-17-01-43.bpo-35780.CLf7fT.rst +++ /dev/null @@ -1,11 +0,0 @@ -Fix lru_cache() errors arising in recursive, reentrant, or -multi-threaded code. These errors could result in orphan links and in -the cache being trapped in a state with fewer than the specified maximum -number of links. Fix handling of negative maxsize which should have -been treated as zero. Fix errors in toggling the "full" status flag. -Fix misordering of links when errors are encountered. Sync-up the C -code and pure Python code for the space saving path in functions with a -single positional argument. In this common case, the space overhead of -an lru cache entry is reduced by almost half. Fix counting of cache -misses. In error cases, the miss count was out of sync with the actual -number of times the underlying user function was called. diff --git a/Misc/NEWS.d/next/Library/2019-01-23-22-44-37.bpo-35813.Yobj-Y.rst b/Misc/NEWS.d/next/Library/2019-01-23-22-44-37.bpo-35813.Yobj-Y.rst deleted file mode 100644 index 714a24c66963..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-23-22-44-37.bpo-35813.Yobj-Y.rst +++ /dev/null @@ -1,2 +0,0 @@ -Shared memory submodule added to multiprocessing to avoid need for -serialization between processes diff --git a/Misc/NEWS.d/next/Library/2019-01-29-09-11-09.bpo-35847.eiSi4t.rst b/Misc/NEWS.d/next/Library/2019-01-29-09-11-09.bpo-35847.eiSi4t.rst deleted file mode 100644 index e3775f96f36e..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-29-09-11-09.bpo-35847.eiSi4t.rst +++ /dev/null @@ -1 +0,0 @@ -RISC-V needed the CTYPES_PASS_BY_REF_HACK. Fixes ctypes Structure test_pass_by_value. diff --git a/Misc/NEWS.d/next/Library/2019-01-29-17-24-52.bpo-35537.Q0ktFC.rst b/Misc/NEWS.d/next/Library/2019-01-29-17-24-52.bpo-35537.Q0ktFC.rst deleted file mode 100644 index 2a9588e745f4..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-29-17-24-52.bpo-35537.Q0ktFC.rst +++ /dev/null @@ -1,4 +0,0 @@ -An ExitStack is now used internally within subprocess.POpen to clean up pipe -file handles. No behavior change in normal operation. But if closing one -handle were ever to cause an exception, the others will now be closed -instead of leaked. (patch by Giampaolo Rodola) diff --git a/Misc/NEWS.d/next/Library/2019-01-30-20-22-36.bpo-35864.ig9KnG.rst b/Misc/NEWS.d/next/Library/2019-01-30-20-22-36.bpo-35864.ig9KnG.rst deleted file mode 100644 index e3b41b700e6b..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-30-20-22-36.bpo-35864.ig9KnG.rst +++ /dev/null @@ -1,2 +0,0 @@ -The _asdict() method for collections.namedtuple now returns a regular dict -instead of an OrderedDict. diff --git a/Misc/NEWS.d/next/Library/2019-02-02-00-04-01.bpo-35845.1jx2wk.rst b/Misc/NEWS.d/next/Library/2019-02-02-00-04-01.bpo-35845.1jx2wk.rst deleted file mode 100644 index 755baf7b6154..000000000000 --- a/Misc/NEWS.d/next/Library/2019-02-02-00-04-01.bpo-35845.1jx2wk.rst +++ /dev/null @@ -1 +0,0 @@ -Add 'order' parameter to memoryview.tobytes(). diff --git a/Misc/NEWS.d/next/Security/2017-08-06-14-43-45.bpo-28414.mzZ6vD.rst b/Misc/NEWS.d/next/Security/2017-08-06-14-43-45.bpo-28414.mzZ6vD.rst deleted file mode 100644 index 06528c93ee19..000000000000 --- a/Misc/NEWS.d/next/Security/2017-08-06-14-43-45.bpo-28414.mzZ6vD.rst +++ /dev/null @@ -1 +0,0 @@ -The ssl module now allows users to perform their own IDN en/decoding when using SNI. diff --git a/Misc/NEWS.d/next/Security/2018-03-02-10-24-52.bpo-32981.O_qDyj.rst b/Misc/NEWS.d/next/Security/2018-03-02-10-24-52.bpo-32981.O_qDyj.rst deleted file mode 100644 index 9ebabb44f91e..000000000000 --- a/Misc/NEWS.d/next/Security/2018-03-02-10-24-52.bpo-32981.O_qDyj.rst +++ /dev/null @@ -1,4 +0,0 @@ -Regexes in difflib and poplib were vulnerable to catastrophic backtracking. -These regexes formed potential DOS vectors (REDOS). They have been -refactored. This resolves CVE-2018-1060 and CVE-2018-1061. -Patch by Jamie Davis. diff --git a/Misc/NEWS.d/next/Security/2018-03-05-10-09-51.bpo-33001.elj4Aa.rst b/Misc/NEWS.d/next/Security/2018-03-05-10-09-51.bpo-33001.elj4Aa.rst deleted file mode 100644 index 2acbac9e1af6..000000000000 --- a/Misc/NEWS.d/next/Security/2018-03-05-10-09-51.bpo-33001.elj4Aa.rst +++ /dev/null @@ -1 +0,0 @@ -Minimal fix to prevent buffer overrun in os.symlink on Windows diff --git a/Misc/NEWS.d/next/Security/2018-03-25-12-05-43.bpo-33136.TzSN4x.rst b/Misc/NEWS.d/next/Security/2018-03-25-12-05-43.bpo-33136.TzSN4x.rst deleted file mode 100644 index c3505167092b..000000000000 --- a/Misc/NEWS.d/next/Security/2018-03-25-12-05-43.bpo-33136.TzSN4x.rst +++ /dev/null @@ -1,3 +0,0 @@ -Harden ssl module against LibreSSL CVE-2018-8970. -X509_VERIFY_PARAM_set1_host() is called with an explicit namelen. A new test -ensures that NULL bytes are not allowed. diff --git a/Misc/NEWS.d/next/Security/2018-05-28-08-55-30.bpo-32533.IzwkBI.rst b/Misc/NEWS.d/next/Security/2018-05-28-08-55-30.bpo-32533.IzwkBI.rst deleted file mode 100644 index a3642258edaf..000000000000 --- a/Misc/NEWS.d/next/Security/2018-05-28-08-55-30.bpo-32533.IzwkBI.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed thread-safety of error handling in _ssl. diff --git a/Misc/NEWS.d/next/Security/2018-06-26-19-35-33.bpo-33871.S4HR9n.rst b/Misc/NEWS.d/next/Security/2018-06-26-19-35-33.bpo-33871.S4HR9n.rst deleted file mode 100644 index 547342c2e9dd..000000000000 --- a/Misc/NEWS.d/next/Security/2018-06-26-19-35-33.bpo-33871.S4HR9n.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed sending the part of the file in :func:`os.sendfile` on macOS. Using -the *trailers* argument could cause sending more bytes from the input file -than was specified. diff --git a/Misc/NEWS.d/next/Security/2018-08-15-12-12-47.bpo-34405.qbHTH_.rst b/Misc/NEWS.d/next/Security/2018-08-15-12-12-47.bpo-34405.qbHTH_.rst deleted file mode 100644 index a3a006fd4826..000000000000 --- a/Misc/NEWS.d/next/Security/2018-08-15-12-12-47.bpo-34405.qbHTH_.rst +++ /dev/null @@ -1 +0,0 @@ -Updated to OpenSSL 1.1.0i for Windows builds. diff --git a/Misc/NEWS.d/next/Security/2018-09-10-16-05-39.bpo-34623.Ua9jMv.rst b/Misc/NEWS.d/next/Security/2018-09-10-16-05-39.bpo-34623.Ua9jMv.rst deleted file mode 100644 index cbaa4b750644..000000000000 --- a/Misc/NEWS.d/next/Security/2018-09-10-16-05-39.bpo-34623.Ua9jMv.rst +++ /dev/null @@ -1,2 +0,0 @@ -CVE-2018-14647: The C accelerated _elementtree module now initializes hash -randomization salt from _Py_HashSecret instead of libexpat's default CSPRNG. diff --git a/Misc/NEWS.d/next/Security/2018-09-11-18-30-55.bpo-17239.kOpwK2.rst b/Misc/NEWS.d/next/Security/2018-09-11-18-30-55.bpo-17239.kOpwK2.rst deleted file mode 100644 index 8dd0fe8c1b53..000000000000 --- a/Misc/NEWS.d/next/Security/2018-09-11-18-30-55.bpo-17239.kOpwK2.rst +++ /dev/null @@ -1,3 +0,0 @@ -The xml.sax and xml.dom.minidom parsers no longer processes external -entities by default. External DTD and ENTITY declarations no longer -load files or create network connections. diff --git a/Misc/NEWS.d/next/Security/2018-09-24-18-49-25.bpo-34791.78GmIG.rst b/Misc/NEWS.d/next/Security/2018-09-24-18-49-25.bpo-34791.78GmIG.rst deleted file mode 100644 index afb59f8cb0eb..000000000000 --- a/Misc/NEWS.d/next/Security/2018-09-24-18-49-25.bpo-34791.78GmIG.rst +++ /dev/null @@ -1,3 +0,0 @@ -The xml.sax and xml.dom.domreg no longer use environment variables to -override parser implementations when sys.flags.ignore_environment is set by --E or -I arguments. diff --git a/Misc/NEWS.d/next/Security/2018-11-23-15-00-23.bpo-34812.84VQnb.rst b/Misc/NEWS.d/next/Security/2018-11-23-15-00-23.bpo-34812.84VQnb.rst deleted file mode 100644 index 860404f019d2..000000000000 --- a/Misc/NEWS.d/next/Security/2018-11-23-15-00-23.bpo-34812.84VQnb.rst +++ /dev/null @@ -1,4 +0,0 @@ -The :option:`-I` command line option (run Python in isolated mode) is now -also copied by the :mod:`multiprocessing` and :mod:`distutils` modules when -spawning child processes. Previously, only :option:`-E` and :option:`-s` options -(enabled by :option:`-I`) were copied. diff --git a/Misc/NEWS.d/next/Security/2019-01-15-18-16-05.bpo-35746.nMSd0j.rst b/Misc/NEWS.d/next/Security/2019-01-15-18-16-05.bpo-35746.nMSd0j.rst deleted file mode 100644 index dffe347eec84..000000000000 --- a/Misc/NEWS.d/next/Security/2019-01-15-18-16-05.bpo-35746.nMSd0j.rst +++ /dev/null @@ -1,3 +0,0 @@ -[CVE-2019-5010] Fix a NULL pointer deref in ssl module. The cert parser did -not handle CRL distribution points with empty DP or URI correctly. A -malicious or buggy certificate can result into segfault. diff --git a/Misc/NEWS.d/next/Tests/2017-10-18-18-07-45.bpo-31809.KlQrkE.rst b/Misc/NEWS.d/next/Tests/2017-10-18-18-07-45.bpo-31809.KlQrkE.rst deleted file mode 100644 index 8a48508b8c1f..000000000000 --- a/Misc/NEWS.d/next/Tests/2017-10-18-18-07-45.bpo-31809.KlQrkE.rst +++ /dev/null @@ -1 +0,0 @@ -Add tests to verify connection with secp ECDH curves. diff --git a/Misc/NEWS.d/next/Tests/2018-01-08-13-33-47.bpo-19417.2asoXy.rst b/Misc/NEWS.d/next/Tests/2018-01-08-13-33-47.bpo-19417.2asoXy.rst deleted file mode 100644 index 739352fcdd67..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-01-08-13-33-47.bpo-19417.2asoXy.rst +++ /dev/null @@ -1 +0,0 @@ -Add test_bdb.py. diff --git a/Misc/NEWS.d/next/Tests/2018-01-12-09-05-19.bpo-27643._6z49y.rst b/Misc/NEWS.d/next/Tests/2018-01-12-09-05-19.bpo-27643._6z49y.rst deleted file mode 100644 index 7daf748cd551..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-01-12-09-05-19.bpo-27643._6z49y.rst +++ /dev/null @@ -1,5 +0,0 @@ -Test_C test case needs "signed short" bitfields, but the -IBM XLC compiler (on AIX) does not support this -Skip the code and test when AIX and XLC are used - -Applicable to Python2-2.7 and later diff --git a/Misc/NEWS.d/next/Tests/2018-01-25-18-10-47.bpo-32663.IKDsqu.rst b/Misc/NEWS.d/next/Tests/2018-01-25-18-10-47.bpo-32663.IKDsqu.rst deleted file mode 100644 index 8357284e5734..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-01-25-18-10-47.bpo-32663.IKDsqu.rst +++ /dev/null @@ -1,2 +0,0 @@ -Making sure the `SMTPUTF8SimTests` class of tests gets run in -test_smtplib.py. diff --git a/Misc/NEWS.d/next/Tests/2018-03-09-07-05-12.bpo-32517.ugc1iW.rst b/Misc/NEWS.d/next/Tests/2018-03-09-07-05-12.bpo-32517.ugc1iW.rst deleted file mode 100644 index 43f148f06ecb..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-03-09-07-05-12.bpo-32517.ugc1iW.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix failing ``test_asyncio`` on macOS 10.12.2+ due to transport of -``KqueueSelector`` loop was not being closed. diff --git a/Misc/NEWS.d/next/Tests/2018-03-28-01-35-02.bpo-32872.J5NDUj.rst b/Misc/NEWS.d/next/Tests/2018-03-28-01-35-02.bpo-32872.J5NDUj.rst deleted file mode 100644 index 06d656bbfd64..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-03-28-01-35-02.bpo-32872.J5NDUj.rst +++ /dev/null @@ -1 +0,0 @@ -Avoid regrtest compatibility issue with namespace packages. diff --git a/Misc/NEWS.d/next/Tests/2018-04-27-11-46-35.bpo-33358._OcR59.rst b/Misc/NEWS.d/next/Tests/2018-04-27-11-46-35.bpo-33358._OcR59.rst deleted file mode 100644 index 89406e994a91..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-04-27-11-46-35.bpo-33358._OcR59.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``test_embed.test_pre_initialization_sys_options()`` when the interpreter -is built with ``--enable-shared``. diff --git a/Misc/NEWS.d/next/Tests/2018-05-10-16-59-15.bpo-32962.S-rcIN.rst b/Misc/NEWS.d/next/Tests/2018-05-10-16-59-15.bpo-32962.S-rcIN.rst deleted file mode 100644 index 97328ebafe6e..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-05-10-16-59-15.bpo-32962.S-rcIN.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed test_gdb when Python is compiled with flags -mcet -fcf-protection -O0. diff --git a/Misc/NEWS.d/next/Tests/2018-05-26-16-01-40.bpo-33655.Frb4LA.rst b/Misc/NEWS.d/next/Tests/2018-05-26-16-01-40.bpo-33655.Frb4LA.rst deleted file mode 100644 index 7ed2ea232371..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-05-26-16-01-40.bpo-33655.Frb4LA.rst +++ /dev/null @@ -1,2 +0,0 @@ -Ignore test_posix_fallocate failures on BSD platforms that might be due to -running on ZFS. diff --git a/Misc/NEWS.d/next/Tests/2018-06-01-14-25-31.bpo-33562.GutEHf.rst b/Misc/NEWS.d/next/Tests/2018-06-01-14-25-31.bpo-33562.GutEHf.rst deleted file mode 100644 index f63e2632a192..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-06-01-14-25-31.bpo-33562.GutEHf.rst +++ /dev/null @@ -1,2 +0,0 @@ -Check that a global asyncio event loop policy is not left behind by any -tests. diff --git a/Misc/NEWS.d/next/Tests/2018-06-16-01-37-31.bpo-33873.d86vab.rst b/Misc/NEWS.d/next/Tests/2018-06-16-01-37-31.bpo-33873.d86vab.rst deleted file mode 100644 index f4f425570267..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-06-16-01-37-31.bpo-33873.d86vab.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix a bug in ``regrtest`` that caused an extra test to run if ---huntrleaks/-R was used. Exit with error in case that invalid -parameters are specified to --huntrleaks/-R (at least one warmup -run and one repetition must be used). diff --git a/Misc/NEWS.d/next/Tests/2018-06-19-14-04-21.bpo-33901.OFW1Sr.rst b/Misc/NEWS.d/next/Tests/2018-06-19-14-04-21.bpo-33901.OFW1Sr.rst deleted file mode 100644 index 2a2dec3e9fa1..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-06-19-14-04-21.bpo-33901.OFW1Sr.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix test_dbm_gnu on macOS with gdbm 1.15: add a larger value to make sure that -the file size changes. diff --git a/Misc/NEWS.d/next/Tests/2018-06-19-17-55-46.bpo-33746.Sz7avn.rst b/Misc/NEWS.d/next/Tests/2018-06-19-17-55-46.bpo-33746.Sz7avn.rst deleted file mode 100644 index e79399f03be5..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-06-19-17-55-46.bpo-33746.Sz7avn.rst +++ /dev/null @@ -1 +0,0 @@ -Fix test_unittest when run in verbose mode. diff --git a/Misc/NEWS.d/next/Tests/2018-07-10-18-53-46.bpo-0.UBQJBc.rst b/Misc/NEWS.d/next/Tests/2018-07-10-18-53-46.bpo-0.UBQJBc.rst deleted file mode 100644 index 9d82677686bd..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-07-10-18-53-46.bpo-0.UBQJBc.rst +++ /dev/null @@ -1 +0,0 @@ -Improved an error message when mock assert_has_calls fails. diff --git a/Misc/NEWS.d/next/Tests/2018-08-08-22-41-30.bpo-11191.eq9tSH.rst b/Misc/NEWS.d/next/Tests/2018-08-08-22-41-30.bpo-11191.eq9tSH.rst deleted file mode 100644 index d05d52238e07..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-08-22-41-30.bpo-11191.eq9tSH.rst +++ /dev/null @@ -1,2 +0,0 @@ -Skip the distutils test 'test_search_cpp' when using XLC as compiler -patch by aixtools (Michael Felt) diff --git a/Misc/NEWS.d/next/Tests/2018-08-10-16-17-51.bpo-34373.SKdb1k.rst b/Misc/NEWS.d/next/Tests/2018-08-10-16-17-51.bpo-34373.SKdb1k.rst deleted file mode 100644 index 1df5449eced6..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-10-16-17-51.bpo-34373.SKdb1k.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix ``test_mktime`` and ``test_pthread_getcpuclickid`` tests for AIX -Add range checking for ``_PyTime_localtime`` for AIX -Patch by Michael Felt diff --git a/Misc/NEWS.d/next/Tests/2018-08-14-10-47-44.bpo-34399.D_jd1G.rst b/Misc/NEWS.d/next/Tests/2018-08-14-10-47-44.bpo-34399.D_jd1G.rst deleted file mode 100644 index 8c5458f490f2..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-14-10-47-44.bpo-34399.D_jd1G.rst +++ /dev/null @@ -1 +0,0 @@ -Update all RSA keys and DH params to use at least 2048 bits. diff --git a/Misc/NEWS.d/next/Tests/2018-08-14-20-50-07.bpo-11192.g7TwYm.rst b/Misc/NEWS.d/next/Tests/2018-08-14-20-50-07.bpo-11192.g7TwYm.rst deleted file mode 100644 index 2428cad79ca7..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-14-20-50-07.bpo-11192.g7TwYm.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix `test_socket` on AIX -AIX 6.1 and later IPv6 zone id supports only supported by inet_pton6_zone() -Switch to runtime-based platform.system() to establish current platform - rather than build-time based sys.platform() diff --git a/Misc/NEWS.d/next/Tests/2018-08-16-18-48-47.bpo-34391.ouNfxC.rst b/Misc/NEWS.d/next/Tests/2018-08-16-18-48-47.bpo-34391.ouNfxC.rst deleted file mode 100644 index 18702cbac312..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-16-18-48-47.bpo-34391.ouNfxC.rst +++ /dev/null @@ -1 +0,0 @@ -Fix ftplib test for TLS 1.3 by reading from data socket. diff --git a/Misc/NEWS.d/next/Tests/2018-08-24-20-23-15.bpo-34490.vb2cx4.rst b/Misc/NEWS.d/next/Tests/2018-08-24-20-23-15.bpo-34490.vb2cx4.rst deleted file mode 100644 index c778f94b5e8d..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-24-20-23-15.bpo-34490.vb2cx4.rst +++ /dev/null @@ -1,2 +0,0 @@ -On AIX with AF_UNIX family sockets getsockname() does not provide 'sockname', -so skip calls to transport.get_extra_info('sockname') diff --git a/Misc/NEWS.d/next/Tests/2018-08-25-13-28-18.bpo-34347.IsRDPB.rst b/Misc/NEWS.d/next/Tests/2018-08-25-13-28-18.bpo-34347.IsRDPB.rst deleted file mode 100644 index 0959476b9310..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-25-13-28-18.bpo-34347.IsRDPB.rst +++ /dev/null @@ -1 +0,0 @@ -Fix `test_utf8_mode.test_cmd_line` for AIX diff --git a/Misc/NEWS.d/next/Tests/2018-08-26-13-12-34.bpo-11193.H8fCGa.rst b/Misc/NEWS.d/next/Tests/2018-08-26-13-12-34.bpo-11193.H8fCGa.rst deleted file mode 100644 index b31caa649520..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-26-13-12-34.bpo-11193.H8fCGa.rst +++ /dev/null @@ -1 +0,0 @@ -Remove special condition for AIX in `test_subprocess.test_undecodable_env` diff --git a/Misc/NEWS.d/next/Tests/2018-08-29-16-30-52.bpo-34542.9stVAW.rst b/Misc/NEWS.d/next/Tests/2018-08-29-16-30-52.bpo-34542.9stVAW.rst deleted file mode 100644 index 1ca3c7d7996c..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-29-16-30-52.bpo-34542.9stVAW.rst +++ /dev/null @@ -1 +0,0 @@ -Use 3072 RSA keys and SHA-256 signature for test certs and keys. diff --git a/Misc/NEWS.d/next/Tests/2018-09-04-15-16-42.bpo-34579.bp4HdM.rst b/Misc/NEWS.d/next/Tests/2018-09-04-15-16-42.bpo-34579.bp4HdM.rst deleted file mode 100644 index 9e01cc9cb232..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-09-04-15-16-42.bpo-34579.bp4HdM.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix test_embed for AIX -Patch by Michael Felt diff --git a/Misc/NEWS.d/next/Tests/2018-09-05-23-50-21.bpo-34594.tqL-GS.rst b/Misc/NEWS.d/next/Tests/2018-09-05-23-50-21.bpo-34594.tqL-GS.rst deleted file mode 100644 index 7a7b1f055561..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-09-05-23-50-21.bpo-34594.tqL-GS.rst +++ /dev/null @@ -1 +0,0 @@ -Fix usage of hardcoded ``errno`` values in the tests. diff --git a/Misc/NEWS.d/next/Tests/2018-09-09-14-36-59.bpo-34569.okj1Xh.rst b/Misc/NEWS.d/next/Tests/2018-09-09-14-36-59.bpo-34569.okj1Xh.rst deleted file mode 100644 index bd433adfc357..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-09-09-14-36-59.bpo-34569.okj1Xh.rst +++ /dev/null @@ -1,2 +0,0 @@ -The experimental PEP 554 data channels now correctly pass negative PyLong -objects between subinterpreters on 32-bit systems. Patch by Michael Felt. diff --git a/Misc/NEWS.d/next/Tests/2018-09-12-17-00-34.bpo-34200.dfxYQK.rst b/Misc/NEWS.d/next/Tests/2018-09-12-17-00-34.bpo-34200.dfxYQK.rst deleted file mode 100644 index b53339c5856c..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-09-12-17-00-34.bpo-34200.dfxYQK.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed non-deterministic flakiness of test_pkg by not using the scary -test.support.module_cleanup() logic to save and restore sys.modules contents -between test cases. diff --git a/Misc/NEWS.d/next/Tests/2018-09-13-09-53-15.bpo-34661.bdTamP.rst b/Misc/NEWS.d/next/Tests/2018-09-13-09-53-15.bpo-34661.bdTamP.rst deleted file mode 100644 index fc2b8e90ead5..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-09-13-09-53-15.bpo-34661.bdTamP.rst +++ /dev/null @@ -1 +0,0 @@ -Fix test_shutil if unzip doesn't support -t. diff --git a/Misc/NEWS.d/next/Tests/2018-09-13-20-58-07.bpo-34587.rCcxp3.rst b/Misc/NEWS.d/next/Tests/2018-09-13-20-58-07.bpo-34587.rCcxp3.rst deleted file mode 100644 index 8d45418aeab4..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-09-13-20-58-07.bpo-34587.rCcxp3.rst +++ /dev/null @@ -1,5 +0,0 @@ -test_socket: Remove RDSTest.testCongestion(). The test tries to fill the -receiver's socket buffer and expects an error. But the RDS protocol doesn't -require that. Moreover, the Linux implementation of RDS expects that the -producer of the messages reduces its rate, it's not the role of the receiver to -trigger an error. The test fails on Fedora 28 by design, so just remove it. diff --git a/Misc/NEWS.d/next/Tests/2018-09-21-17-33-41.bpo-34537.GImYtZ.rst b/Misc/NEWS.d/next/Tests/2018-09-21-17-33-41.bpo-34537.GImYtZ.rst deleted file mode 100644 index b64a6a762cdb..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-09-21-17-33-41.bpo-34537.GImYtZ.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``test_gdb.test_strings()`` when ``LC_ALL=C`` and GDB was compiled with -Python 3.6 or earlier. diff --git a/Misc/NEWS.d/next/Tests/2018-10-09-23-51-07.bpo-23596.rdnert.rst b/Misc/NEWS.d/next/Tests/2018-10-09-23-51-07.bpo-23596.rdnert.rst deleted file mode 100644 index ef71720c56fb..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-10-09-23-51-07.bpo-23596.rdnert.rst +++ /dev/null @@ -1 +0,0 @@ -Use argparse for the command line of the gzip module. Patch by Antony Lee diff --git a/Misc/NEWS.d/next/Tests/2018-10-11-22-34-27.bpo-34962.0PLBi8.rst b/Misc/NEWS.d/next/Tests/2018-10-11-22-34-27.bpo-34962.0PLBi8.rst deleted file mode 100644 index 0d0f6a1ff77e..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-10-11-22-34-27.bpo-34962.0PLBi8.rst +++ /dev/null @@ -1 +0,0 @@ -make docstest in Doc now passes., and is enforced in CI diff --git a/Misc/NEWS.d/next/Tests/2018-10-27-13-41-55.bpo-34279.v0Xqxe.rst b/Misc/NEWS.d/next/Tests/2018-10-27-13-41-55.bpo-34279.v0Xqxe.rst deleted file mode 100644 index a82fa6b304ac..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-10-27-13-41-55.bpo-34279.v0Xqxe.rst +++ /dev/null @@ -1,3 +0,0 @@ -regrtest issue a warning when no tests have been executed in a particular -test file. Also, a new final result state is issued if no test have been -executed across all test files. Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Tests/2018-11-04-20-17-09.bpo-21263.T3qo9r.rst b/Misc/NEWS.d/next/Tests/2018-11-04-20-17-09.bpo-21263.T3qo9r.rst deleted file mode 100644 index 9c6b4ef90706..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-11-04-20-17-09.bpo-21263.T3qo9r.rst +++ /dev/null @@ -1,4 +0,0 @@ -After several reports that test_gdb does not work properly on macOS and -since gdb is not shipped by default anymore, test_gdb is now skipped on -macOS when LLVM Clang has been used to compile Python. Patch by -Lysandros Nikolaou diff --git a/Misc/NEWS.d/next/Tests/2018-11-26-16-54-21.bpo-35317.jByGP2.rst b/Misc/NEWS.d/next/Tests/2018-11-26-16-54-21.bpo-35317.jByGP2.rst deleted file mode 100644 index 73a30f71927f..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-11-26-16-54-21.bpo-35317.jByGP2.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix ``mktime()`` overflow error in ``test_email``: run -``test_localtime_daylight_true_dst_true()`` and -``test_localtime_daylight_false_dst_true()`` with a specific timezone. diff --git a/Misc/NEWS.d/next/Tests/2018-11-30-17-18-56.bpo-35352.8bD7GC.rst b/Misc/NEWS.d/next/Tests/2018-11-30-17-18-56.bpo-35352.8bD7GC.rst deleted file mode 100644 index e479e9612e72..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-11-30-17-18-56.bpo-35352.8bD7GC.rst +++ /dev/null @@ -1 +0,0 @@ -Modify test_asyncio to use the certificate set from the test directory. diff --git a/Misc/NEWS.d/next/Tests/2018-12-09-01-27-29.bpo-33725.TaGayj.rst b/Misc/NEWS.d/next/Tests/2018-12-09-01-27-29.bpo-33725.TaGayj.rst deleted file mode 100644 index 425048cb37cf..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-09-01-27-29.bpo-33725.TaGayj.rst +++ /dev/null @@ -1,2 +0,0 @@ -test_multiprocessing_fork may crash on recent versions of macOS. Until the -issue is resolved, skip the test on macOS. diff --git a/Misc/NEWS.d/next/Tests/2018-12-10-13-18-37.bpo-26704.DBAN4c.rst b/Misc/NEWS.d/next/Tests/2018-12-10-13-18-37.bpo-26704.DBAN4c.rst deleted file mode 100644 index 458f495be483..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-10-13-18-37.bpo-26704.DBAN4c.rst +++ /dev/null @@ -1,2 +0,0 @@ -Added test demonstrating double-patching of an instance method. Patch by -Anthony Sottile. diff --git a/Misc/NEWS.d/next/Tests/2018-12-12-18-07-58.bpo-35412.kbuJor.rst b/Misc/NEWS.d/next/Tests/2018-12-12-18-07-58.bpo-35412.kbuJor.rst deleted file mode 100644 index d696074fb734..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-12-18-07-58.bpo-35412.kbuJor.rst +++ /dev/null @@ -1 +0,0 @@ -Add testcase to ``test_future4``: check unicode literal. diff --git a/Misc/NEWS.d/next/Tests/2018-12-12-18-20-18.bpo-34279.DhKcuP.rst b/Misc/NEWS.d/next/Tests/2018-12-12-18-20-18.bpo-34279.DhKcuP.rst deleted file mode 100644 index 5a70cc5308ef..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-12-18-20-18.bpo-34279.DhKcuP.rst +++ /dev/null @@ -1,3 +0,0 @@ -:func:`test.support.run_unittest` no longer raise :exc:`TestDidNotRun` if -the test result contains skipped tests. The exception is now only raised if -no test have been run and no test have been skipped. diff --git a/Misc/NEWS.d/next/Tests/2018-12-16-23-36-47.bpo-35513.k4WHlA.rst b/Misc/NEWS.d/next/Tests/2018-12-16-23-36-47.bpo-35513.k4WHlA.rst deleted file mode 100644 index 33ca3a8846e2..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-16-23-36-47.bpo-35513.k4WHlA.rst +++ /dev/null @@ -1,2 +0,0 @@ -Replace :func:`time.time` with :func:`time.monotonic` in tests to measure -time delta. diff --git a/Misc/NEWS.d/next/Tests/2018-12-17-16-41-45.bpo-35519.RR3L_w.rst b/Misc/NEWS.d/next/Tests/2018-12-17-16-41-45.bpo-35519.RR3L_w.rst deleted file mode 100644 index e108dd877e1b..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-17-16-41-45.bpo-35519.RR3L_w.rst +++ /dev/null @@ -1,3 +0,0 @@ -Rename :mod:`test.bisect` module to :mod:`test.bisect_cmd` to avoid conflict -with :mod:`bisect` module when running directly a test like -``./python Lib/test/test_xmlrpc.py``. diff --git a/Misc/NEWS.d/next/Tests/2018-12-18-22-36-53.bpo-35424.1Pz4IS.rst b/Misc/NEWS.d/next/Tests/2018-12-18-22-36-53.bpo-35424.1Pz4IS.rst deleted file mode 100644 index 461f636981b1..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-18-22-36-53.bpo-35424.1Pz4IS.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix test_multiprocessing_main_handling: use :class:`multiprocessing.Pool` with -a context manager and then explicitly join the pool. diff --git a/Misc/NEWS.d/next/Tests/2018-12-18-23-20-39.bpo-31731.tcv85C.rst b/Misc/NEWS.d/next/Tests/2018-12-18-23-20-39.bpo-31731.tcv85C.rst deleted file mode 100644 index 530977c6e87e..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-18-23-20-39.bpo-31731.tcv85C.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix a race condition in ``check_interrupted_write()`` of test_io: create -directly the thread with SIGALRM signal blocked, rather than blocking the -signal later from the thread. Previously, it was possible that the thread gets -the signal before the signal is blocked. diff --git a/Misc/NEWS.d/next/Tests/2019-01-04-21-34-53.bpo-35488.U7JJzP.rst b/Misc/NEWS.d/next/Tests/2019-01-04-21-34-53.bpo-35488.U7JJzP.rst deleted file mode 100644 index 815754ef561f..000000000000 --- a/Misc/NEWS.d/next/Tests/2019-01-04-21-34-53.bpo-35488.U7JJzP.rst +++ /dev/null @@ -1 +0,0 @@ -Add a test to pathlib's Path.match() to verify it does not support glob-style ** recursive pattern matching. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Tests/2019-01-07-23-22-44.bpo-33717.GhHXv8.rst b/Misc/NEWS.d/next/Tests/2019-01-07-23-22-44.bpo-33717.GhHXv8.rst deleted file mode 100644 index 05338a329ef8..000000000000 --- a/Misc/NEWS.d/next/Tests/2019-01-07-23-22-44.bpo-33717.GhHXv8.rst +++ /dev/null @@ -1,2 +0,0 @@ -test.pythoninfo now logs information of all clocks, not only time.time() and -time.perf_counter(). diff --git a/Misc/NEWS.d/next/Tests/2019-01-07-23-34-41.bpo-32710.Hzo1b8.rst b/Misc/NEWS.d/next/Tests/2019-01-07-23-34-41.bpo-32710.Hzo1b8.rst deleted file mode 100644 index dd602a94c349..000000000000 --- a/Misc/NEWS.d/next/Tests/2019-01-07-23-34-41.bpo-32710.Hzo1b8.rst +++ /dev/null @@ -1,3 +0,0 @@ -``test_asyncio/test_sendfile.py`` now resets the event loop policy using -:func:`tearDownModule` as done in other tests, to prevent a warning when -running tests on Windows. diff --git a/Misc/NEWS.d/next/Tests/2019-01-10-18-35-42.bpo-35045.qdd6d9.rst b/Misc/NEWS.d/next/Tests/2019-01-10-18-35-42.bpo-35045.qdd6d9.rst deleted file mode 100644 index 630a22d77868..000000000000 --- a/Misc/NEWS.d/next/Tests/2019-01-10-18-35-42.bpo-35045.qdd6d9.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make ssl tests less strict and also accept TLSv1 as system default. The -changes unbreaks test_min_max_version on Fedora 29. diff --git a/Misc/NEWS.d/next/Tests/2019-01-18-12-19-19.bpo-35772.sGBbsn.rst b/Misc/NEWS.d/next/Tests/2019-01-18-12-19-19.bpo-35772.sGBbsn.rst deleted file mode 100644 index cfd282f1d090..000000000000 --- a/Misc/NEWS.d/next/Tests/2019-01-18-12-19-19.bpo-35772.sGBbsn.rst +++ /dev/null @@ -1,6 +0,0 @@ -Fix sparse file tests of test_tarfile on ppc64 with the tmpfs filesystem. Fix -the function testing if the filesystem supports sparse files: create a file -which contains data and "holes", instead of creating a file which contains no -data. tmpfs effective block size is a page size (tmpfs lives in the page cache). -RHEL uses 64 KiB pages on aarch64, ppc64, ppc64le, only s390x and x86_64 use 4 -KiB pages, whereas the test punch holes of 4 KiB. diff --git a/Misc/NEWS.d/next/Tools-Demos/2017-09-26-10-11-21.bpo-31583.TM90_H.rst b/Misc/NEWS.d/next/Tools-Demos/2017-09-26-10-11-21.bpo-31583.TM90_H.rst deleted file mode 100644 index 472f61c5129e..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2017-09-26-10-11-21.bpo-31583.TM90_H.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix 2to3 for using with --add-suffix option but without --output-dir -option for relative path to files in current directory. diff --git a/Misc/NEWS.d/next/Tools-Demos/2017-12-07-20-51-20.bpo-32222.hPBcGT.rst b/Misc/NEWS.d/next/Tools-Demos/2017-12-07-20-51-20.bpo-32222.hPBcGT.rst deleted file mode 100644 index b0b4c5e9357c..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2017-12-07-20-51-20.bpo-32222.hPBcGT.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix pygettext not extracting docstrings for functions with type annotated -arguments. -Patch by Toby Harradine. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-02-20-12-16-47.bpo-32885.dL5x7C.rst b/Misc/NEWS.d/next/Tools-Demos/2018-02-20-12-16-47.bpo-32885.dL5x7C.rst deleted file mode 100644 index ef069fcbb4e8..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-02-20-12-16-47.bpo-32885.dL5x7C.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add an ``-n`` flag for ``Tools/scripts/pathfix.py`` to disable automatic -backup creation (files with ``~`` suffix). diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-03-02-16-23-31.bpo-25427.1mgMOG.rst b/Misc/NEWS.d/next/Tools-Demos/2018-03-02-16-23-31.bpo-25427.1mgMOG.rst deleted file mode 100644 index fe4495e8b574..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-03-02-16-23-31.bpo-25427.1mgMOG.rst +++ /dev/null @@ -1,3 +0,0 @@ -Remove the pyvenv script in favor of ``python3 -m venv`` in order to lower -confusion as to what Python interpreter a virtual environment will be -created for. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-03-16-17-25-05.bpo-29673.m8QtaW.rst b/Misc/NEWS.d/next/Tools-Demos/2018-03-16-17-25-05.bpo-29673.m8QtaW.rst deleted file mode 100644 index 3d515b3ee4db..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-03-16-17-25-05.bpo-29673.m8QtaW.rst +++ /dev/null @@ -1 +0,0 @@ -Fix pystackv and pystack gdbinit macros. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-03-26-18-54-24.bpo-31920.u_WKsT.rst b/Misc/NEWS.d/next/Tools-Demos/2018-03-26-18-54-24.bpo-31920.u_WKsT.rst deleted file mode 100644 index 39c694b0728d..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-03-26-18-54-24.bpo-31920.u_WKsT.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed handling directories as arguments in the ``pygettext`` script. Based -on patch by Oleg Krasnikov. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-04-03-18-10-00.bpo-33189.QrXR00.rst b/Misc/NEWS.d/next/Tools-Demos/2018-04-03-18-10-00.bpo-33189.QrXR00.rst deleted file mode 100644 index 4d4137240e61..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-04-03-18-10-00.bpo-33189.QrXR00.rst +++ /dev/null @@ -1,2 +0,0 @@ -:program:`pygettext.py` now recognizes only literal strings as docstrings -and translatable strings, and rejects bytes literals and f-string expressions. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-16-53.bpo-32962.2YfdwI.rst b/Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-16-53.bpo-32962.2YfdwI.rst deleted file mode 100644 index de40070795e9..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-16-53.bpo-32962.2YfdwI.rst +++ /dev/null @@ -1,2 +0,0 @@ -python-gdb now catchs ValueError on read_var(): when Python has no debug -symbols for example. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-23-07.bpo-32962.Q3Dwns.rst b/Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-23-07.bpo-32962.Q3Dwns.rst deleted file mode 100644 index fc14261019a0..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-23-07.bpo-32962.Q3Dwns.rst +++ /dev/null @@ -1,2 +0,0 @@ -python-gdb now catchs ``UnicodeDecodeError`` exceptions when calling -``string()``. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-07-24-00-11-44.bpo-20260.klmmqI.rst b/Misc/NEWS.d/next/Tools-Demos/2018-07-24-00-11-44.bpo-20260.klmmqI.rst deleted file mode 100644 index f8d0df0ca585..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-07-24-00-11-44.bpo-20260.klmmqI.rst +++ /dev/null @@ -1 +0,0 @@ -Argument Clinic now has non-bitwise unsigned int converters. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-10-15-13-22-28.bpo-34989.hU4fra.rst b/Misc/NEWS.d/next/Tools-Demos/2018-10-15-13-22-28.bpo-34989.hU4fra.rst deleted file mode 100644 index 53bb425ea7b4..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-10-15-13-22-28.bpo-34989.hU4fra.rst +++ /dev/null @@ -1,2 +0,0 @@ -python-gdb.py now handles errors on computing the line number of a Python -frame. diff --git a/Misc/NEWS.d/next/Tools-Demos/2019-02-01-12-22-37.bpo-35884.hJkMRD.rst b/Misc/NEWS.d/next/Tools-Demos/2019-02-01-12-22-37.bpo-35884.hJkMRD.rst deleted file mode 100644 index 416eeac1d935..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2019-02-01-12-22-37.bpo-35884.hJkMRD.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add a benchmark script for timing various ways to access variables: -``Tools/scripts/var_access_benchmark.py``. diff --git a/Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst b/Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst deleted file mode 100644 index a4043496bc24..000000000000 --- a/Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst +++ /dev/null @@ -1,2 +0,0 @@ -Correctly handle string length in ``msilib.SummaryInfo.GetProperty()`` to -prevent it from truncating the last character. diff --git a/Misc/NEWS.d/next/Windows/2018-02-07-17-50-48.bpo-29248.Xzwj-6.rst b/Misc/NEWS.d/next/Windows/2018-02-07-17-50-48.bpo-29248.Xzwj-6.rst deleted file mode 100644 index 3030ef6958de..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-02-07-17-50-48.bpo-29248.Xzwj-6.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix :func:`os.readlink` on Windows, which was mistakenly treating the -``PrintNameOffset`` field of the reparse data buffer as a number of -characters instead of bytes. Patch by Craig Holmquist and SSE4. diff --git a/Misc/NEWS.d/next/Windows/2018-02-10-15-38-19.bpo-32370.kcKuct.rst b/Misc/NEWS.d/next/Windows/2018-02-10-15-38-19.bpo-32370.kcKuct.rst deleted file mode 100644 index 7f076d45bef9..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-02-10-15-38-19.bpo-32370.kcKuct.rst +++ /dev/null @@ -1,2 +0,0 @@ -Use the correct encoding for ipconfig output in the uuid module. -Patch by Segev Finer. diff --git a/Misc/NEWS.d/next/Windows/2018-02-19-08-54-06.bpo-32457.vVP0Iz.rst b/Misc/NEWS.d/next/Windows/2018-02-19-08-54-06.bpo-32457.vVP0Iz.rst deleted file mode 100644 index b55ec821e622..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-02-19-08-54-06.bpo-32457.vVP0Iz.rst +++ /dev/null @@ -1 +0,0 @@ -Improves handling of denormalized executable path when launching Python. diff --git a/Misc/NEWS.d/next/Windows/2018-02-19-10-00-57.bpo-32409.nocuDg.rst b/Misc/NEWS.d/next/Windows/2018-02-19-10-00-57.bpo-32409.nocuDg.rst deleted file mode 100644 index 36251b0b4783..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-02-19-10-00-57.bpo-32409.nocuDg.rst +++ /dev/null @@ -1 +0,0 @@ -Ensures activate.bat can handle Unicode contents. diff --git a/Misc/NEWS.d/next/Windows/2018-02-19-13-54-42.bpo-31966._Q3HPb.rst b/Misc/NEWS.d/next/Windows/2018-02-19-13-54-42.bpo-31966._Q3HPb.rst deleted file mode 100644 index 042a4d835abf..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-02-19-13-54-42.bpo-31966._Q3HPb.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed WindowsConsoleIO.write() for writing empty data. diff --git a/Misc/NEWS.d/next/Windows/2018-02-23-00-47-13.bpo-32901.mGKz5_.rst b/Misc/NEWS.d/next/Windows/2018-02-23-00-47-13.bpo-32901.mGKz5_.rst deleted file mode 100644 index af0ca65e3c82..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-02-23-00-47-13.bpo-32901.mGKz5_.rst +++ /dev/null @@ -1 +0,0 @@ -Update Tcl and Tk versions to 8.6.8 diff --git a/Misc/NEWS.d/next/Windows/2018-02-28-11-03-24.bpo-32903.1SXY4t.rst b/Misc/NEWS.d/next/Windows/2018-02-28-11-03-24.bpo-32903.1SXY4t.rst deleted file mode 100644 index a20a414790f8..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-02-28-11-03-24.bpo-32903.1SXY4t.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a memory leak in os.chdir() on Windows if the current directory is set -to a UNC path. diff --git a/Misc/NEWS.d/next/Windows/2018-03-07-01-33-33.bpo-33016.Z_Med0.rst b/Misc/NEWS.d/next/Windows/2018-03-07-01-33-33.bpo-33016.Z_Med0.rst deleted file mode 100644 index f4f78d489bf1..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-03-07-01-33-33.bpo-33016.Z_Med0.rst +++ /dev/null @@ -1 +0,0 @@ -Fix potential use of uninitialized memory in nt._getfinalpathname diff --git a/Misc/NEWS.d/next/Windows/2018-03-08-20-02-38.bpo-32890.3jzFzY.rst b/Misc/NEWS.d/next/Windows/2018-03-08-20-02-38.bpo-32890.3jzFzY.rst deleted file mode 100644 index e8a63b334192..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-03-08-20-02-38.bpo-32890.3jzFzY.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix usage of GetLastError() instead of errno in os.execve() and -os.truncate(). diff --git a/Misc/NEWS.d/next/Windows/2018-04-13-11-28-55.bpo-33184.7YhqQE.rst b/Misc/NEWS.d/next/Windows/2018-04-13-11-28-55.bpo-33184.7YhqQE.rst deleted file mode 100644 index ca47a9811088..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-04-13-11-28-55.bpo-33184.7YhqQE.rst +++ /dev/null @@ -1 +0,0 @@ -Update Windows installer to use OpenSSL 1.1.0h. diff --git a/Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst b/Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst deleted file mode 100644 index 55176791a901..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst +++ /dev/null @@ -1 +0,0 @@ -PyThread_release_lock always fails diff --git a/Misc/NEWS.d/next/Windows/2018-05-16-11-31-17.bpo-29097.9mqEuI.rst b/Misc/NEWS.d/next/Windows/2018-05-16-11-31-17.bpo-29097.9mqEuI.rst deleted file mode 100644 index a35251a149bb..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-05-16-11-31-17.bpo-29097.9mqEuI.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix bug where :meth:`datetime.fromtimestamp` erroneously throws an -:exc:`OSError` on Windows for values between 0 and 86400. -Patch by Ammar Askar. diff --git a/Misc/NEWS.d/next/Windows/2018-06-04-09-20-53.bpo-33720.VKDXHK.rst b/Misc/NEWS.d/next/Windows/2018-06-04-09-20-53.bpo-33720.VKDXHK.rst deleted file mode 100644 index f7e2f9d1eae4..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-06-04-09-20-53.bpo-33720.VKDXHK.rst +++ /dev/null @@ -1 +0,0 @@ -Reduces maximum marshal recursion depth on release builds. diff --git a/Misc/NEWS.d/next/Windows/2018-06-19-11-57-50.bpo-33895.zpblTy.rst b/Misc/NEWS.d/next/Windows/2018-06-19-11-57-50.bpo-33895.zpblTy.rst deleted file mode 100644 index a12b8196c36b..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-06-19-11-57-50.bpo-33895.zpblTy.rst +++ /dev/null @@ -1 +0,0 @@ -GIL is released while calling functions that acquire Windows loader lock. diff --git a/Misc/NEWS.d/next/Windows/2018-06-25-09-33-48.bpo-30237.EybiZA.rst b/Misc/NEWS.d/next/Windows/2018-06-25-09-33-48.bpo-30237.EybiZA.rst deleted file mode 100644 index 18aac756cb58..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-06-25-09-33-48.bpo-30237.EybiZA.rst +++ /dev/null @@ -1,2 +0,0 @@ -Output error when ReadConsole is canceled by CancelSynchronousIo instead of -crashing. diff --git a/Misc/NEWS.d/next/Windows/2018-06-27-23-33-54.bpo-31546.zJlap-.rst b/Misc/NEWS.d/next/Windows/2018-06-27-23-33-54.bpo-31546.zJlap-.rst deleted file mode 100644 index 8f487632ce05..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-06-27-23-33-54.bpo-31546.zJlap-.rst +++ /dev/null @@ -1,3 +0,0 @@ -Restore running PyOS_InputHook while waiting for user input at the prompt. -The restores integration of interactive GUI windows (such as Matplotlib -figures) with the prompt on Windows. diff --git a/Misc/NEWS.d/next/Windows/2018-07-02-14-19-32.bpo-34006.7SgBT_.rst b/Misc/NEWS.d/next/Windows/2018-07-02-14-19-32.bpo-34006.7SgBT_.rst deleted file mode 100644 index f21e51646f1a..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-07-02-14-19-32.bpo-34006.7SgBT_.rst +++ /dev/null @@ -1,3 +0,0 @@ -Revert line length limit for Windows help docs. The line-length limit is not -needed because the pages appear in a separate app rather than on a browser -tab. It can also interact badly with the DPI setting. diff --git a/Misc/NEWS.d/next/Windows/2018-07-11-15-58-06.bpo-34011.Ho_d5T.rst b/Misc/NEWS.d/next/Windows/2018-07-11-15-58-06.bpo-34011.Ho_d5T.rst deleted file mode 100644 index 8fcf8b51081b..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-07-11-15-58-06.bpo-34011.Ho_d5T.rst +++ /dev/null @@ -1,4 +0,0 @@ -A suite of code has been changed which copied across DLLs and init.tcl from -the running Python location into a venv being created. These copies are needed -only when running from a Python source build, and the copying code is now only -run when that is the case, rather than whenever a venv is created. diff --git a/Misc/NEWS.d/next/Windows/2018-07-25-16-13-12.bpo-34225.ngemNL.rst b/Misc/NEWS.d/next/Windows/2018-07-25-16-13-12.bpo-34225.ngemNL.rst deleted file mode 100644 index d29c8696307d..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-07-25-16-13-12.bpo-34225.ngemNL.rst +++ /dev/null @@ -1 +0,0 @@ -Ensure INCLUDE and LIB directories do not end with a backslash. diff --git a/Misc/NEWS.d/next/Windows/2018-08-21-19-28-23.bpo-34062.3gxsA3.rst b/Misc/NEWS.d/next/Windows/2018-08-21-19-28-23.bpo-34062.3gxsA3.rst deleted file mode 100644 index ca71945d8797..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-08-21-19-28-23.bpo-34062.3gxsA3.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed the '--list' and '--list-paths' arguments for the py.exe launcher diff --git a/Misc/NEWS.d/next/Windows/2018-09-03-01-23-52.bpo-34532.N1HEbE.rst b/Misc/NEWS.d/next/Windows/2018-09-03-01-23-52.bpo-34532.N1HEbE.rst deleted file mode 100644 index 812b47497c2d..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-09-03-01-23-52.bpo-34532.N1HEbE.rst +++ /dev/null @@ -1 +0,0 @@ -Fixes exit code of list version arguments for py.exe. diff --git a/Misc/NEWS.d/next/Windows/2018-09-04-23-13-19.bpo-34581.lnbC0k.rst b/Misc/NEWS.d/next/Windows/2018-09-04-23-13-19.bpo-34581.lnbC0k.rst deleted file mode 100644 index 2dfa1aec9b86..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-09-04-23-13-19.bpo-34581.lnbC0k.rst +++ /dev/null @@ -1 +0,0 @@ -Guard MSVC-specific code in socketmodule.c with ``#ifdef _MSC_VER``. diff --git a/Misc/NEWS.d/next/Windows/2018-09-13-08-29-04.bpo-34603.2AB7sc.rst b/Misc/NEWS.d/next/Windows/2018-09-13-08-29-04.bpo-34603.2AB7sc.rst deleted file mode 100644 index 86ae1cd06171..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-09-13-08-29-04.bpo-34603.2AB7sc.rst +++ /dev/null @@ -1 +0,0 @@ -Fix returning structs from functions produced by MSVC diff --git a/Misc/NEWS.d/next/Windows/2018-09-22-11-02-35.bpo-34770.4lEUOd.rst b/Misc/NEWS.d/next/Windows/2018-09-22-11-02-35.bpo-34770.4lEUOd.rst deleted file mode 100644 index 5e4ba8868e84..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-09-22-11-02-35.bpo-34770.4lEUOd.rst +++ /dev/null @@ -1 +0,0 @@ -Fix a possible null pointer dereference in pyshellext.cpp. diff --git a/Misc/NEWS.d/next/Windows/2018-09-25-10-39-27.bpo-32557.Rs1bf9.rst b/Misc/NEWS.d/next/Windows/2018-09-25-10-39-27.bpo-32557.Rs1bf9.rst deleted file mode 100644 index d93c55ac62fe..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-09-25-10-39-27.bpo-32557.Rs1bf9.rst +++ /dev/null @@ -1 +0,0 @@ -Allow shutil.disk_usage to take a file path on Windows diff --git a/Misc/NEWS.d/next/Windows/2018-10-25-11-29-22.bpo-35067.RHWi7W.rst b/Misc/NEWS.d/next/Windows/2018-10-25-11-29-22.bpo-35067.RHWi7W.rst deleted file mode 100644 index 2b8153b6ceea..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-10-25-11-29-22.bpo-35067.RHWi7W.rst +++ /dev/null @@ -1 +0,0 @@ -Remove _distutils_findvs module and use vswhere.exe instead. diff --git a/Misc/NEWS.d/next/Windows/2018-10-30-13-39-17.bpo-34977.0l7_QV.rst b/Misc/NEWS.d/next/Windows/2018-10-30-13-39-17.bpo-34977.0l7_QV.rst deleted file mode 100644 index 8e1a4ba84880..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-10-30-13-39-17.bpo-34977.0l7_QV.rst +++ /dev/null @@ -1 +0,0 @@ -Adds support for building a Windows App Store package diff --git a/Misc/NEWS.d/next/Windows/2018-12-07-10-00-38.bpo-34977.agQJbD.rst b/Misc/NEWS.d/next/Windows/2018-12-07-10-00-38.bpo-34977.agQJbD.rst deleted file mode 100644 index 12d8db2ab46a..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-12-07-10-00-38.bpo-34977.agQJbD.rst +++ /dev/null @@ -1,2 +0,0 @@ -venv on Windows will now use a python.exe redirector rather than copying the -actual binaries from the base environment. diff --git a/Misc/NEWS.d/next/Windows/2018-12-10-15-01-13.bpo-35401.9L1onG.rst b/Misc/NEWS.d/next/Windows/2018-12-10-15-01-13.bpo-35401.9L1onG.rst deleted file mode 100644 index 5854388d067d..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-12-10-15-01-13.bpo-35401.9L1onG.rst +++ /dev/null @@ -1 +0,0 @@ -Updates Windows build to OpenSSL 1.1.0j diff --git a/Misc/NEWS.d/next/Windows/2018-12-13-13-30-04.bpo-35402.n_mXb2.rst b/Misc/NEWS.d/next/Windows/2018-12-13-13-30-04.bpo-35402.n_mXb2.rst deleted file mode 100644 index 56cf17c09dcf..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-12-13-13-30-04.bpo-35402.n_mXb2.rst +++ /dev/null @@ -1 +0,0 @@ -Update Windows build to use Tcl and Tk 8.6.9 diff --git a/Misc/NEWS.d/next/Windows/2018-12-28-07-25-47.bpo-35596.P9CEY2.rst b/Misc/NEWS.d/next/Windows/2018-12-28-07-25-47.bpo-35596.P9CEY2.rst deleted file mode 100644 index 3ce90f6065c9..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-12-28-07-25-47.bpo-35596.P9CEY2.rst +++ /dev/null @@ -1 +0,0 @@ -Fix vcruntime140.dll being added to embeddable distro multiple times. diff --git a/Misc/NEWS.d/next/Windows/2019-01-08-13-56-01.bpo-35596.oFvhcm.rst b/Misc/NEWS.d/next/Windows/2019-01-08-13-56-01.bpo-35596.oFvhcm.rst deleted file mode 100644 index db4d8fa420d6..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-01-08-13-56-01.bpo-35596.oFvhcm.rst +++ /dev/null @@ -1,2 +0,0 @@ -Use unchecked PYCs for the embeddable distro to avoid zipimport -restrictions. diff --git a/Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst b/Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst deleted file mode 100644 index c89a509a0e8f..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst +++ /dev/null @@ -1 +0,0 @@ -Fix handle leaks in os.stat on Windows. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Windows/2019-01-21-05-18-14.bpo-35758.8LsY3l.rst b/Misc/NEWS.d/next/Windows/2019-01-21-05-18-14.bpo-35758.8LsY3l.rst deleted file mode 100644 index c1e19d465b3c..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-01-21-05-18-14.bpo-35758.8LsY3l.rst +++ /dev/null @@ -1 +0,0 @@ -Allow building on ARM with MSVC. diff --git a/Misc/NEWS.d/next/Windows/2019-01-25-12-29-14.bpo-35797.MzyOK9.rst b/Misc/NEWS.d/next/Windows/2019-01-25-12-29-14.bpo-35797.MzyOK9.rst deleted file mode 100644 index a0745f500b13..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-01-25-12-29-14.bpo-35797.MzyOK9.rst +++ /dev/null @@ -1 +0,0 @@ -Fix default executable used by the multiprocessing module diff --git a/Misc/NEWS.d/next/Windows/2019-01-25-12-46-36.bpo-35811.2hU-mm.rst b/Misc/NEWS.d/next/Windows/2019-01-25-12-46-36.bpo-35811.2hU-mm.rst deleted file mode 100644 index 3207c955bff4..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-01-25-12-46-36.bpo-35811.2hU-mm.rst +++ /dev/null @@ -1 +0,0 @@ -Avoid propagating venv settings when launching via py.exe diff --git a/Misc/NEWS.d/next/Windows/2019-01-29-15-44-46.bpo-35854.Ww3z19.rst b/Misc/NEWS.d/next/Windows/2019-01-29-15-44-46.bpo-35854.Ww3z19.rst deleted file mode 100644 index a1c761458d35..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-01-29-15-44-46.bpo-35854.Ww3z19.rst +++ /dev/null @@ -1 +0,0 @@ -Fix EnvBuilder and --symlinks in venv on Windows diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst b/Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst deleted file mode 100644 index bf2bf113e24c..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst +++ /dev/null @@ -1,2 +0,0 @@ -The ``py`` launcher now forwards its ``STARTUPINFO`` structure to child -processes. diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-22-12-23.bpo-35890.ccIjHH.rst b/Misc/NEWS.d/next/Windows/2019-02-02-22-12-23.bpo-35890.ccIjHH.rst deleted file mode 100644 index 6bf6084ecc5e..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-02-02-22-12-23.bpo-35890.ccIjHH.rst +++ /dev/null @@ -1 +0,0 @@ -Fix API calling consistency of GetVersionEx and wcstok. \ No newline at end of file diff --git a/Misc/NEWS.d/next/macOS/2017-11-01-16-53-12.bpo-31903.K6jCVG.rst b/Misc/NEWS.d/next/macOS/2017-11-01-16-53-12.bpo-31903.K6jCVG.rst deleted file mode 100644 index 3788112cd730..000000000000 --- a/Misc/NEWS.d/next/macOS/2017-11-01-16-53-12.bpo-31903.K6jCVG.rst +++ /dev/null @@ -1,2 +0,0 @@ -In :mod:`_scproxy`, drop the GIL when calling into ``SystemConfiguration`` to avoid -deadlocks. diff --git a/Misc/NEWS.d/next/macOS/2018-02-27-17-33-15.bpo-32901.hQu0w3.rst b/Misc/NEWS.d/next/macOS/2018-02-27-17-33-15.bpo-32901.hQu0w3.rst deleted file mode 100644 index 73e69a9b7119..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-02-27-17-33-15.bpo-32901.hQu0w3.rst +++ /dev/null @@ -1 +0,0 @@ -Update macOS 10.9+ installer to Tcl/Tk 8.6.8. diff --git a/Misc/NEWS.d/next/macOS/2018-03-29-06-56-12.bpo-32726.urS9uX.rst b/Misc/NEWS.d/next/macOS/2018-03-29-06-56-12.bpo-32726.urS9uX.rst deleted file mode 100644 index 9b769a831e58..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-03-29-06-56-12.bpo-32726.urS9uX.rst +++ /dev/null @@ -1,5 +0,0 @@ -Build and link with private copy of Tcl/Tk 8.6 for the macOS 10.6+ -installer. The 10.9+ installer variant already does this. This means that -the Python 3.7 provided by the python.org macOS installers no longer need or -use any external versions of Tcl/Tk, either system-provided or -user-installed, such as ActiveTcl. diff --git a/Misc/NEWS.d/next/macOS/2018-04-07-00-51-34.bpo-33184.3j208P.rst b/Misc/NEWS.d/next/macOS/2018-04-07-00-51-34.bpo-33184.3j208P.rst deleted file mode 100644 index 03308ed6a72b..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-04-07-00-51-34.bpo-33184.3j208P.rst +++ /dev/null @@ -1 +0,0 @@ -Update macOS installer build to use OpenSSL 1.1.0h. diff --git a/Misc/NEWS.d/next/macOS/2018-05-16-13-25-58.bpo-13631.UIjDyY.rst b/Misc/NEWS.d/next/macOS/2018-05-16-13-25-58.bpo-13631.UIjDyY.rst deleted file mode 100644 index d9d505e937a8..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-05-16-13-25-58.bpo-13631.UIjDyY.rst +++ /dev/null @@ -1,2 +0,0 @@ -The .editrc file in user's home directory is now processed correctly during -the readline initialization through editline emulation on macOS. diff --git a/Misc/NEWS.d/next/macOS/2018-07-31-09-51-01.bpo-33635.KiscE-.rst b/Misc/NEWS.d/next/macOS/2018-07-31-09-51-01.bpo-33635.KiscE-.rst deleted file mode 100644 index 90d9ab6d4202..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-07-31-09-51-01.bpo-33635.KiscE-.rst +++ /dev/null @@ -1,5 +0,0 @@ -In macOS stat on some file descriptors (/dev/fd/3 f.e) will result in bad -file descriptor OSError. Guard against this exception was added in is_dir, -is_file and similar methods. DirEntry.is_dir can also throw this exception -so _RecursiveWildcardSelector._iterate_directories was also extended with -the same error ignoring pattern. diff --git a/Misc/NEWS.d/next/macOS/2018-09-11-08-30-55.bpo-34405.UzIi0n.rst b/Misc/NEWS.d/next/macOS/2018-09-11-08-30-55.bpo-34405.UzIi0n.rst deleted file mode 100644 index 3bc9c4c2a037..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-09-11-08-30-55.bpo-34405.UzIi0n.rst +++ /dev/null @@ -1 +0,0 @@ -Update to OpenSSL 1.1.0i for macOS installer builds. diff --git a/Misc/NEWS.d/next/macOS/2018-10-17-14-36-08.bpo-24658.Naddgx.rst b/Misc/NEWS.d/next/macOS/2018-10-17-14-36-08.bpo-24658.Naddgx.rst deleted file mode 100644 index ff660a125c64..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-10-17-14-36-08.bpo-24658.Naddgx.rst +++ /dev/null @@ -1 +0,0 @@ -On macOS, fix reading from and writing into a file with a size larger than 2 GiB. \ No newline at end of file diff --git a/Misc/NEWS.d/next/macOS/2018-10-18-23-54-55.bpo-35025.X4LFJg.rst b/Misc/NEWS.d/next/macOS/2018-10-18-23-54-55.bpo-35025.X4LFJg.rst deleted file mode 100644 index aebd1af9351c..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-10-18-23-54-55.bpo-35025.X4LFJg.rst +++ /dev/null @@ -1,2 +0,0 @@ -Properly guard the use of the ``CLOCK_GETTIME`` et al. macros in ``timemodule`` -on macOS. diff --git a/Misc/NEWS.d/next/macOS/2018-12-09-13-56-49.bpo-35401.n8B7X1.rst b/Misc/NEWS.d/next/macOS/2018-12-09-13-56-49.bpo-35401.n8B7X1.rst deleted file mode 100644 index bfe41bd67ff6..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-12-09-13-56-49.bpo-35401.n8B7X1.rst +++ /dev/null @@ -1 +0,0 @@ -Update macOS installer to use OpenSSL 1.1.0j. diff --git a/Misc/NEWS.d/next/macOS/2018-12-21-18-44-30.bpo-35555.M58_K3.rst b/Misc/NEWS.d/next/macOS/2018-12-21-18-44-30.bpo-35555.M58_K3.rst deleted file mode 100644 index 0939195cadd3..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-12-21-18-44-30.bpo-35555.M58_K3.rst +++ /dev/null @@ -1 +0,0 @@ -Gray out Code Context menu entry when it's not applicable. From webhook-mailer at python.org Mon Feb 4 03:31:23 2019 From: webhook-mailer at python.org (=?utf-8?q?=C5=81ukasz?= Langa) Date: Mon, 04 Feb 2019 08:31:23 -0000 Subject: [Python-checkins] Merge tag 'v3.8.0a1' Message-ID: https://github.com/python/cpython/commit/e7afe1ab25e102418a7fcf5938d9eea497206e91 commit: e7afe1ab25e102418a7fcf5938d9eea497206e91 branch: master author: ?ukasz Langa committer: ?ukasz Langa date: 2019-02-04T09:30:59+01:00 summary: Merge tag 'v3.8.0a1' Python 3.8.0a1 files: A Misc/NEWS.d/3.8.0a1.rst D Misc/NEWS.d/next/Build/2017-09-26-23-08-27.bpo-29442.fD8YTi.rst D Misc/NEWS.d/next/Build/2018-02-21-12-46-00.bpo-32898.M15bZh.rst D Misc/NEWS.d/next/Build/2018-03-08-20-25-29.bpo-33012.k9Fe1q.rst D Misc/NEWS.d/next/Build/2018-03-28-04-15-03.bpo-33163.hfpWuU.rst D Misc/NEWS.d/next/Build/2018-03-30-14-55-48.bpo-33182.CePczb.rst D Misc/NEWS.d/next/Build/2018-04-17-00-38-19.bpo-32232.o7G_UO.rst D Misc/NEWS.d/next/Build/2018-04-30-16-53-00.bpo-33377.QBh6vP.rst D Misc/NEWS.d/next/Build/2018-04-30-17-19-37.bpo-33393.HkVCqI.rst D Misc/NEWS.d/next/Build/2018-04-30-17-36-46.bpo-33394._Vdi4t.rst D Misc/NEWS.d/next/Build/2018-05-13-17-21-54.bpo-33483.WOs-en.rst D Misc/NEWS.d/next/Build/2018-05-15-02-07-49.bpo-33512.X4Fy1Q.rst D Misc/NEWS.d/next/Build/2018-05-15-12-44-50.bpo-33522.mJoNcA.rst D Misc/NEWS.d/next/Build/2018-05-25-13-05-51.bpo-33648.bJ4JZH.rst D Misc/NEWS.d/next/Build/2018-05-28-11-40-22.bpo-33614.28e0sE.rst D Misc/NEWS.d/next/Build/2018-06-04-21-34-34.bpo-5755.65GmCj.rst D Misc/NEWS.d/next/Build/2018-06-15-18-18-16.bpo-30345.j-xRE1.rst D Misc/NEWS.d/next/Build/2018-07-10-21-33-25.bpo-32430.UN3Nk8.rst D Misc/NEWS.d/next/Build/2018-07-15-16-49-06.bpo-34121.74G_lo.rst D Misc/NEWS.d/next/Build/2018-07-27-09-52-48.bpo-34245.bBV0NI.rst D Misc/NEWS.d/next/Build/2018-08-24-09-48-25.bpo-33015.s21y74.rst D Misc/NEWS.d/next/Build/2018-08-31-19-41-09.bpo-34555.dfQcnm.rst D Misc/NEWS.d/next/Build/2018-09-06-07-15-20.bpo-34081.cuSTnH.rst D Misc/NEWS.d/next/Build/2018-09-14-09-53-21.bpo-34582.j3omgk.rst D Misc/NEWS.d/next/Build/2018-09-17-13-56-12.bpo-34710.ARqIAK.rst D Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst D Misc/NEWS.d/next/Build/2018-09-26-17-29-10.bpo-34765.AvxdVj.rst D Misc/NEWS.d/next/Build/2018-10-16-12-22-36.bpo-28015.ylSgFh.rst D Misc/NEWS.d/next/Build/2018-10-17-17-38-57.bpo-35011.GgoPIC.rst D Misc/NEWS.d/next/Build/2018-10-26-14-49-19.bpo-35059.PKsBxP.rst D Misc/NEWS.d/next/Build/2018-11-01-15-01-23.bpo-35139.XZTttb.rst D Misc/NEWS.d/next/Build/2018-12-04-15-33-28.bpo-35351.ZhhBfT.rst D Misc/NEWS.d/next/Build/2018-12-05-22-28-40.bpo-35257.dmcd_s.rst D Misc/NEWS.d/next/Build/2018-12-14-19-36-05.bpo-35499.9yAldM.rst D Misc/NEWS.d/next/Build/2018-12-29-10-19-43.bpo-35550.BTuu8e.rst D Misc/NEWS.d/next/Build/2019-01-02-11-23-33.bpo-35642.pjkhJe.rst D Misc/NEWS.d/next/Build/2019-01-10-11-37-18.bpo-35683.pf5Oos.rst D Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst D Misc/NEWS.d/next/C API/2017-10-12-23-24-27.bpo-30863.xrED19.rst D Misc/NEWS.d/next/C API/2018-01-09-17-03-54.bpo-32374.SwwLoz.rst D Misc/NEWS.d/next/C API/2018-03-20-21-43-09.bpo-33042.FPFp64.rst D Misc/NEWS.d/next/C API/2018-06-10-09-42-31.bpo-33818.50nlf3.rst D Misc/NEWS.d/next/C API/2018-06-21-17-19-31.bpo-32500.WGCNad.rst D Misc/NEWS.d/next/C API/2018-07-02-10-58-11.bpo-34008.COewz-.rst D Misc/NEWS.d/next/C API/2018-07-08-12-06-18.bpo-32455.KVHlkz.rst D Misc/NEWS.d/next/C API/2018-07-09-11-39-54.bpo-23927.pDFkxb.rst D Misc/NEWS.d/next/C API/2018-07-22-14-58-06.bpo-34127.qkfnHO.rst D Misc/NEWS.d/next/C API/2018-07-24-11-57-35.bpo-34193.M6ch1Q.rst D Misc/NEWS.d/next/C API/2018-08-29-18-48-47.bpo-34523.lLQ8rh.rst D Misc/NEWS.d/next/C API/2018-10-05-17-06-49.bpo-34910.tSFrls.rst D Misc/NEWS.d/next/C API/2018-10-13-16-30-54.bpo-34725.j52rIS.rst D Misc/NEWS.d/next/C API/2018-11-01-13-58-37.bpo-35134.SbZo0o.rst D Misc/NEWS.d/next/C API/2018-11-13-12-13-04.bpo-35081.gFd85N.rst D Misc/NEWS.d/next/C API/2018-11-22-13-52-36.bpo-35259.p07c61.rst D Misc/NEWS.d/next/C API/2018-11-22-18-15-46.bpo-35081.FdK9mV.rst D Misc/NEWS.d/next/C API/2018-11-22-18-34-23.bpo-35296.nxrIQt.rst D Misc/NEWS.d/next/C API/2018-11-23-11-52-34.bpo-35059.BLSp6y.rst D Misc/NEWS.d/next/C API/2018-11-28-03-20-36.bpo-35322.Qcqsag.rst D Misc/NEWS.d/next/C API/2019-01-11-11-16-16.bpo-33817.nJ4yIj.rst D Misc/NEWS.d/next/C API/2019-01-22-17-04-10.bpo-35713.fmehdG.rst D Misc/NEWS.d/next/Core and Builtins/2017-09-12-08-11-01.bpo-29832.Kuf2M7.rst D Misc/NEWS.d/next/Core and Builtins/2017-09-25-20-36-24.bpo-31577.jgYsSA.rst D Misc/NEWS.d/next/Core and Builtins/2017-10-02-21-02-14.bpo-21983.UoC319.rst D Misc/NEWS.d/next/Core and Builtins/2017-10-07-10-13-15.bpo-25862.FPYBA5.rst D Misc/NEWS.d/next/Core and Builtins/2017-10-30-12-44-50.bpo-31902.a07fa57.rst D Misc/NEWS.d/next/Core and Builtins/2017-11-22-15-43-14.bpo-32117.-vloh8.rst D Misc/NEWS.d/next/Core and Builtins/2017-11-26-00-59-22.bpo-10544.fHOM3V.rst D Misc/NEWS.d/next/Core and Builtins/2017-12-12-13-43-13.bpo-32285.LzKSwz.rst D Misc/NEWS.d/next/Core and Builtins/2017-12-24-19-48-59.bpo-17611.P85kWL.rst D Misc/NEWS.d/next/Core and Builtins/2018-01-03-23-12-43.bpo-32489.SDEPHB.rst D Misc/NEWS.d/next/Core and Builtins/2018-01-26-21-20-21.bpo-32583.Fh3fau.rst D Misc/NEWS.d/next/Core and Builtins/2018-01-29-14-36-37.bpo-32711.8hQFJP.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-16-28.bpo-32303.VsvhSl.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-56-41.bpo-32305.dkU9Qa.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-02-08-50-46.bpo-31356.MNwUOQ.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-14-12-35-47.bpo-32836.bThJnx.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-20-21-53-48.bpo-32889.J6eWy5.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-24-00-07-05.bpo-32925.e-7Ufh.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-24-21-51-42.bpo-32932.2cz31L.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-25-10-52-40.bpo-32946.Lo09rG.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-27-13-36-21.bpo-17288.Gdj24S.rst D Misc/NEWS.d/next/Core and Builtins/2018-02-27-20-57-00.bpo-32911.cmKfco.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-06-12-19-19.bpo-33005.LP-V2U.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-08-09-48-38.bpo-33026.QZA3Ba.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-10-15-16-40.bpo-33041.-ak5Fk.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-14-21-42-17.bpo-25750.lxgkQz.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-18-13-56-14.bpo-33041.XwPhI2.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-19-00-59-20.bpo-33083.Htztjl.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-22-23-09-06.bpo-33018.0ncEJV.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-25-14.bpo-33138.aSqudH.rst D Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-49-06.bpo-33053.V3xlsH.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-02-09-32-40.bpo-33199.TPnxQu.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-30-25.bpo-29922.CdLuMl.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-58-41.bpo-33205.lk2F3r.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-05-22-20-44.bpo-33231.3Jmo0q.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-13-22-31-09.bpo-33176.PB9com.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-14-11-02-57.bpo-30455.ANRwjo.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-14-13-12-50.bpo-33270.UmVV6i.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-17-01-24-51.bpo-33234.l9IDtp.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-18-12-23-30.bpo-33306.tSM3cp.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-18-14-17-44.bpo-33305.9z3dDH.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-19-08-30-07.bpo-33312.mDe2iL.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-22-13-41-59.bpo-33331.s_DxdL.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-24-22-31-04.bpo-33128.g2yLuf.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-25-20-44-42.bpo-28055.f49kfC.rst D Misc/NEWS.d/next/Core and Builtins/2018-04-26-22-48-28.bpo-33363.8RCnN2.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-02-08-36-03.bpo-33391.z4a7rb.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-05-23-26-58.bpo-20104.tDBciE.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-13-01-26-18.bpo-33475.rI0y1U.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-14-11-00-00.bpo-31849.EmHaH4.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-14-17-31-02.bpo-33509.pIUfTd.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-14-18-54-03.bpo-25711.9xfq-v.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-15-10-48-47.bpo-33499.uBEc06.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-17-13-06-36.bpo-23722.xisqZk.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-23-17-18-02.bpo-33462.gurbpbrhe.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-23-20-46-14.bpo-33622.xPucO9.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-28-12-28-53.bpo-30654.9fDJye.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-28-21-17-31.bpo-33597.r0ToM4.rst D Misc/NEWS.d/next/Core and Builtins/2018-05-31-14-50-04.bpo-33706.ztlH04.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-05-15-49-02.bpo-30167.e956hA.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-06-23-24-40.bpo-33786.lBvT8z.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-07-18-34-19.bpo-33738.ODZS7a.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-07-20-18-38.bpo-33803.n-Nq6_.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-15-19-39-06.bpo-33824.DfWHT3.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-21-21-42-15.bpo-1617161.tSo2yM.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-23-15-32-02.bpo-33451.sWN-1l.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-25-16-54-05.bpo-24596.Rkwova.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-25-20-42-44.bpo-33956.1qoTwD.rst D Misc/NEWS.d/next/Core and Builtins/2018-06-27-18-56-41.bpo-33985.ILJ3Af.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-03-19-00-10.bpo-33418.cfGm3n.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-05-15-51-29.bpo-34042.Gr9XUH.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-07-20-15-34.bpo-34066.y9vs6s.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-10-11-24-16.bpo-34080.8t7PtO.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-13-22-09-55.bpo-34087.I1Bxfc.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-14-08-58-46.bpo-34068.9xfM55.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-14-14-01-37.bpo-24618.iTKjD_.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-16-20-55-29.bpo-34126.mBVmgc.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-18-08-36-58.bpo-34141.Fo7Q5r.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-23-16-34-03.bpo-34125.jCl2Q2.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-23-21-49-05.bpo-34149.WSV-_g.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-24-12-54-57.bpo-33237.O95mps.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-25-19-23-33.bpo-34170.v1h_H2.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-25-20-26-02.bpo-34151.Q2pK9Q.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-27-20-04-52.bpo-34100.ypJQX1.rst D Misc/NEWS.d/next/Core and Builtins/2018-07-28-10-34-00.bpo-34113.eZ5FWV.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-02-22-34-59.bpo-34320.hNshAA.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-09-18-42-49.bpo-34353.GIOm_8.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-10-15-05-00.bpo-34377.EJMMY4.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-12-16-03-58.bpo-33073.XWu1Jh.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-14-03-52-43.bpo-34400.AJD0bz.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-14-22-35-19.bpo-34408.aomWYW.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-15-20-46-49.bpo-12458.ApHbx5.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-28-01-45-01.bpo-34523.aUUkc3.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-28-10-49-55.bpo-34403.4Q3LzP.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-52-13.bpo-34527.sh5MQJ.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-53-39.bpo-34527.aBEX9b.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-28-17-48-40.bpo-34485.aFwck2.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-28-23-01-14.bpo-34485.dq1Kqk.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-29-09-27-47.bpo-34485.5aJCmw.rst D Misc/NEWS.d/next/Core and Builtins/2018-08-29-11-04-19.bpo-34485.c2AFdp.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-05-22-56-52.bpo-34588.UIuPmL.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-11-15-19-37.bpo-1621.7o19yG.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-11-17-25-44.bpo-34637.HSLqY4.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-12-33.bpo-34641.gFBCc9.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-50-40.bpo-32236.3RupnN.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-06-09.bpo-34653.z8NE-i.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-21-08.bpo-34651.v-bUeV.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-15-19-32-34.bpo-34683.msCiQE.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-19-06-57-34.bpo-34735.-3mrSJ.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-20-15-41-58.bpo-34751.Yiv0pV.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-21-11-06-56.bpo-34762.1nN53m.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-24-17-51-15.bpo-30156.pH0j5j.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-27-11-10-02.bpo-34824.VLlCaU.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-30-11-19-55.bpo-34850.CbgDwb.rst D Misc/NEWS.d/next/Core and Builtins/2018-09-30-19-27-13.bpo-34854.6TKTcB.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-01-10-41-53.bpo-32912.JeIOdM.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-02-09-10-47.bpo-34784.07hdgD.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-02-22-55-11.bpo-34879.7VNH2a.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-06-14-02-51.bpo-34876.oBKBA4.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-13-16-42-03.bpo-34973.B5M-3g.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-13-17-40-15.bpo-34939.0gpxlJ.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-13-22-24-19.bpo-34974.7LgTc2.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-14-17-26-41.bpo-34983.l8XaZd.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-20-10-26-15.bpo-35029.t4tZcQ.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-20-18-05-58.bpo-16806.zr3A9N.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-21-17-43-48.bpo-29743.aeCcKR.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-23-15-03-53.bpo-35050.49wraS.rst D Misc/NEWS.d/next/Core and Builtins/2018-10-25-20-53-32.bpo-29341.jH-AMF.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-03-10-37-29.bpo-28401.RprDIg.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-04-18-13-40.bpo-34022.U3btVj.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-05-21-19-05.bpo-35169._FyPI2.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-08-15-00-58.bpo-35193.HzPS6R.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-12-11-38-06.bpo-35214.PCHKbX.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-13-00-40-35.bpo-35214.OQBjph.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-13-01-03-10.bpo-32492.voIdcp.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-13-14-26-54.bpo-35224.F0B6UQ.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-17-10-18-29.bpo-35269.gjm1LO.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-20-22-33-38.bpo-33954.RzSngM.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-21-14-05-51.bpo-31241.Kin10-.rst D Misc/NEWS.d/next/Core and Builtins/2018-11-29-23-59-52.bpo-35336.8LOz4F.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-01-19-20-53.bpo-35372.RwVJjZ.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-03-21-20-24.bpo-35357.rhhoiC.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-05-16-24-05.bpo-35423.UIie_O.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-07-02-38-01.bpo-35436.0VW7p9.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-09-13-09-39.bpo-35444.9kYn4V.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-14-18-02-34.bpo-35494.IWOPtb.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-15-00-47-41.bpo-35504.9gVuen.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-15-14-01-45.bpo-35504.JtKczP.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-21-13-29-30.bpo-35552.1DzQQc.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-22-22-19-51.bpo-35560.9vMWSP.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-30-15-36-23.bpo-35214.GWDQcv.rst D Misc/NEWS.d/next/Core and Builtins/2018-12-31-02-37-20.bpo-35623.24AQhY.rst D Misc/NEWS.d/next/Core and Builtins/2019-01-05-18-39-49.bpo-35634.nVP_gs.rst D Misc/NEWS.d/next/Core and Builtins/2019-01-12-23-33-04.bpo-35720.LELKQx.rst D Misc/NEWS.d/next/Core and Builtins/2019-01-19-19-41-53.bpo-33416.VDeOU5.rst D Misc/NEWS.d/next/Core and Builtins/2019-01-22-18-50-21.bpo-35713.bTeUsa.rst D Misc/NEWS.d/next/Core and Builtins/2019-01-22-19-17-27.bpo-35766.gh1tHZ.rst D Misc/NEWS.d/next/Core and Builtins/2019-01-24-13-25-21.bpo-35814.r_MjA6.rst D Misc/NEWS.d/next/Core and Builtins/2019-02-01-22-38-11.bpo-35877.Jrse8f.rst D Misc/NEWS.d/next/Documentation/2017-09-13-07-14-59.bpo-31432.yAY4Z3.rst D Misc/NEWS.d/next/Documentation/2017-10-23-13-41-12.bpo-25041.iAo2gW.rst D Misc/NEWS.d/next/Documentation/2017-12-22-17-29-37.bpo-32337.eZe-ID.rst D Misc/NEWS.d/next/Documentation/2018-01-13-20-30-53.bpo-8243.s98r28.rst D Misc/NEWS.d/next/Documentation/2018-01-25-13-58-49.bpo-30607.4dXxiq.rst D Misc/NEWS.d/next/Documentation/2018-01-25-14-23-12.bpo-31972.w1m_8r.rst D Misc/NEWS.d/next/Documentation/2018-01-30-11-28-27.bpo-32722.frdp6A.rst D Misc/NEWS.d/next/Documentation/2018-02-01-10-57-24.bpo-20709.1flcnc.rst D Misc/NEWS.d/next/Documentation/2018-02-02-07-41-57.bpo-32614.LSqzGw.rst D Misc/NEWS.d/next/Documentation/2018-02-03-06-11-37.bpo-8722.MPyVyj.rst D Misc/NEWS.d/next/Documentation/2018-02-05-15-05-53.bpo-32613.TDjgM1.rst D Misc/NEWS.d/next/Documentation/2018-02-10-12-48-38.bpo-11015.-gUf34.rst D Misc/NEWS.d/next/Documentation/2018-02-10-15-16-04.bpo-32800.FyrqCk.rst D Misc/NEWS.d/next/Documentation/2018-02-14-11-10-41.bpo-32436.TTJ2jb.rst D Misc/NEWS.d/next/Documentation/2018-02-23-12-48-03.bpo-17232.tmuTKL.rst D Misc/NEWS.d/next/Documentation/2018-02-25-16-33-35.bpo-28124._uzkgq.rst D Misc/NEWS.d/next/Documentation/2018-03-11-00-16-56.bpo-27428.B7A8FT.rst D Misc/NEWS.d/next/Documentation/2018-03-11-18-53-47.bpo-18802.JhAqH3.rst D Misc/NEWS.d/next/Documentation/2018-03-20-20-11-05.bpo-28247.-V-WS-.rst D Misc/NEWS.d/next/Documentation/2018-03-22-19-23-04.bpo-27212.wrE5KR.rst D Misc/NEWS.d/next/Documentation/2018-03-28-17-03-17.bpo-33126.5UGkNv.rst D Misc/NEWS.d/next/Documentation/2018-04-01-14-30-36.bpo-33195.dRS-XX.rst D Misc/NEWS.d/next/Documentation/2018-04-01-21-03-41.bpo-33201.aa8Lkl.rst D Misc/NEWS.d/next/Documentation/2018-04-20-14-09-36.bpo-33276.rA1z_3.rst D Misc/NEWS.d/next/Documentation/2018-04-29-04-02-18.bpo-33378.-anAHN.rst D Misc/NEWS.d/next/Documentation/2018-05-13-14-44-30.bpo-33487.iLDzFb.rst D Misc/NEWS.d/next/Documentation/2018-05-14-15-15-41.bpo-33421.3GU_QO.rst D Misc/NEWS.d/next/Documentation/2018-05-14-20-08-58.bpo-33503.Wvt0qg.rst D Misc/NEWS.d/next/Documentation/2018-05-21-14-36-12.bpo-33594.-HRcyX.rst D Misc/NEWS.d/next/Documentation/2018-05-22-11-47-14.bpo-33604.5YHTpz.rst D Misc/NEWS.d/next/Documentation/2018-05-23-11-59-51.bpo-32436.S1LGPa.rst D Misc/NEWS.d/next/Documentation/2018-05-29-16-02-31.bpo-23859.E5gba1.rst D Misc/NEWS.d/next/Documentation/2018-06-01-12-27-40.bpo-33736.JVegIu.rst D Misc/NEWS.d/next/Documentation/2018-06-07-08-33-45.bpo-17045.ZNx6KU.rst D Misc/NEWS.d/next/Documentation/2018-06-08-23-37-14.bpo-33197.OERTKf.rst D Misc/NEWS.d/next/Documentation/2018-06-08-23-46-01.bpo-33409.r4z9MM.rst D Misc/NEWS.d/next/Documentation/2018-06-15-14-58-45.bpo-33847.IIDp6t.rst D Misc/NEWS.d/next/Documentation/2018-06-22-08-38-29.bpo-33460.kHt4D0.rst D Misc/NEWS.d/next/Documentation/2018-07-07-20-38-41.bpo-34065.1snofM.rst D Misc/NEWS.d/next/Documentation/2018-07-28-17-17-42.bpo-20177.cOZJWp.rst D Misc/NEWS.d/next/Documentation/2018-09-06-22-39-47.bpo-28617.MjnJLz.rst D Misc/NEWS.d/next/Documentation/2018-09-12-10-18-04.bpo-34552.p9PoYv.rst D Misc/NEWS.d/next/Documentation/2018-09-24-12-47-08.bpo-34790.G2KXIH.rst D Misc/NEWS.d/next/Documentation/2018-10-03-20-39-25.bpo-11233.BX6Gen.rst D Misc/NEWS.d/next/Documentation/2018-10-08-19-15-28.bpo-32174.YO9CYm.rst D Misc/NEWS.d/next/Documentation/2018-10-10-00-34-08.bpo-34913.kVd1Fv.rst D Misc/NEWS.d/next/Documentation/2018-10-13-07-39-57.bpo-34967.E40tFP.rst D Misc/NEWS.d/next/Documentation/2018-10-21-02-20-36.bpo-35035.4zBObK.rst D Misc/NEWS.d/next/Documentation/2018-10-22-14-09-58.bpo-35044.qjvNtI.rst D Misc/NEWS.d/next/Documentation/2018-10-22-14-17-57.bpo-35042.1UGv1a.rst D Misc/NEWS.d/next/Documentation/2018-10-25-17-45-09.bpo-35038.2eVOYS.rst D Misc/NEWS.d/next/Documentation/2018-10-28-16-51-31.bpo-35089._stCpS.rst D Misc/NEWS.d/next/Documentation/2018-11-04-22-03-56.bpo-10536.a0IsfE.rst D Misc/NEWS.d/next/Documentation/2018-12-16-16-14-44.bpo-35511.iVcyav.rst D Misc/NEWS.d/next/Documentation/2018-12-22-22-52-05.bpo-35564.TuEU_D.rst D Misc/NEWS.d/next/Documentation/2018-12-23-23-52-31.bpo-34764.DwOGeT.rst D Misc/NEWS.d/next/Documentation/2019-01-15-21-45-27.bpo-21257.U9LKkx.rst D Misc/NEWS.d/next/IDLE/2018-02-04-17-52-54.bpo-32765.qm0eCu.rst D Misc/NEWS.d/next/IDLE/2018-02-12-08-08-45.bpo-32831.srDRvU.rst D Misc/NEWS.d/next/IDLE/2018-02-12-11-05-22.bpo-32826.IxNZrk.rst D Misc/NEWS.d/next/IDLE/2018-02-12-17-22-48.bpo-32837.-33QPl.rst D Misc/NEWS.d/next/IDLE/2018-02-19-10-56-41.bpo-32874.6pZ9Gv.rst D Misc/NEWS.d/next/IDLE/2018-02-22-00-09-27.bpo-32905.VlXj0x.rst D Misc/NEWS.d/next/IDLE/2018-02-23-07-32-36.bpo-32916.4MsQ5F.rst D Misc/NEWS.d/next/IDLE/2018-02-24-18-20-50.bpo-32940.ZaJ1Rf.rst D Misc/NEWS.d/next/IDLE/2018-03-05-01-29-05.bpo-32984.NGjgT4.rst D Misc/NEWS.d/next/IDLE/2018-04-02-00-28-13.bpo-33204.NBsuIv.rst D Misc/NEWS.d/next/IDLE/2018-04-29-16-13-02.bpo-21474.bglg-F.rst D Misc/NEWS.d/next/IDLE/2018-05-17-19-41-12.bpo-33564.XzHZJe.rst D Misc/NEWS.d/next/IDLE/2018-05-23-19-51-07.bpo-33628.sLlFLO.rst D Misc/NEWS.d/next/IDLE/2018-05-24-20-42-44.bpo-33642.J0VQbS.rst D Misc/NEWS.d/next/IDLE/2018-05-29-07-14-37.bpo-33679.MgX_Ui.rst D Misc/NEWS.d/next/IDLE/2018-06-03-09-13-28.bpo-33664.PZzQyL.rst D Misc/NEWS.d/next/IDLE/2018-06-03-20-12-57.bpo-33763.URiFlE.rst D Misc/NEWS.d/next/IDLE/2018-06-04-19-23-11.bpo-33768.I_2qpV.rst D Misc/NEWS.d/next/IDLE/2018-06-10-17-59-36.bpo-33656.60ZqJS.rst D Misc/NEWS.d/next/IDLE/2018-06-14-11-35-50.bpo-33855.XL230W.rst D Misc/NEWS.d/next/IDLE/2018-06-14-13-23-55.bpo-33839.ZlJzHa.rst D Misc/NEWS.d/next/IDLE/2018-06-16-21-54-45.bpo-33856.TH8WHU.rst D Misc/NEWS.d/next/IDLE/2018-06-19-22-21-27.bpo-33907.z-_B3N.rst D Misc/NEWS.d/next/IDLE/2018-06-20-12-40-54.bpo-33904.qm0eCu.rst D Misc/NEWS.d/next/IDLE/2018-06-20-16-27-48.bpo-33917.ZXHs8x.rst D Misc/NEWS.d/next/IDLE/2018-06-20-19-16-24.bpo-33906.a1lXq0.rst D Misc/NEWS.d/next/IDLE/2018-06-20-22-14-07.bpo-33924.6Rz1wt.rst D Misc/NEWS.d/next/IDLE/2018-06-21-20-35-33.bpo-33905.W2mhiY.rst D Misc/NEWS.d/next/IDLE/2018-06-26-22-53-14.bpo-33975.Ow7alv.rst D Misc/NEWS.d/next/IDLE/2018-08-01-23-25-38.bpo-34120.HgsIz-.rst D Misc/NEWS.d/next/IDLE/2018-08-02-22-16-42.bpo-34275.Iu0d7t.rst D Misc/NEWS.d/next/IDLE/2018-08-05-15-49-55.bpo-34047.LGKsIm.rst D Misc/NEWS.d/next/IDLE/2018-08-13-16-31-24.bpo-1529353.wXfQJk.rst D Misc/NEWS.d/next/IDLE/2018-09-22-20-25-07.bpo-34548.7pBzjg.rst D Misc/NEWS.d/next/IDLE/2018-10-28-00-08-42.bpo-35087.G7gx2-.rst D Misc/NEWS.d/next/IDLE/2018-10-28-00-54-32.bpo-35088.r1lJZd.rst D Misc/NEWS.d/next/IDLE/2018-10-28-15-53-51.bpo-35093.cH-tli.rst D Misc/NEWS.d/next/IDLE/2018-10-28-20-17-14.bpo-35097.07tm66.rst D Misc/NEWS.d/next/IDLE/2018-11-05-20-43-08.bpo-35099.SVOZXC.rst D Misc/NEWS.d/next/IDLE/2018-11-05-23-23-00.bpo-23220.H3SAWE.rst D Misc/NEWS.d/next/IDLE/2018-11-06-23-10-54.bpo-33000.pQasCt.rst D Misc/NEWS.d/next/IDLE/2018-11-10-09-10-54.bpo-35202.TeJJrt.rst D Misc/NEWS.d/next/IDLE/2018-11-10-21-27-25.bpo-34864.Ci-G2q.rst D Misc/NEWS.d/next/IDLE/2018-11-11-17-13-50.bpo-34864.cw0PvO.rst D Misc/NEWS.d/next/IDLE/2018-11-12-00-20-01.bpo-35213.cqNgzT.rst D Misc/NEWS.d/next/IDLE/2018-12-18-13-56-31.bpo-22703.UlsjKQ.rst D Misc/NEWS.d/next/IDLE/2018-12-20-00-14-15.bpo-35521.x32BRn.rst D Misc/NEWS.d/next/IDLE/2018-12-23-17-42-11.bpo-35208.J5NOg7.rst D Misc/NEWS.d/next/IDLE/2018-12-26-13-53-34.bpo-28097.95I9NT.rst D Misc/NEWS.d/next/IDLE/2018-12-27-15-29-11.bpo-35598.FWOOm8.rst D Misc/NEWS.d/next/IDLE/2018-12-27-17-46-42.bpo-35196.9E-xUh.rst D Misc/NEWS.d/next/IDLE/2018-12-28-01-19-20.bpo-35591.SFpDj2.rst D Misc/NEWS.d/next/IDLE/2018-12-28-17-16-33.bpo-34055.TmmpzR.rst D Misc/NEWS.d/next/IDLE/2018-12-31-17-04-18.bpo-33987.fD92up.rst D Misc/NEWS.d/next/IDLE/2019-01-02-22-15-01.bpo-35641.QEaANl.rst D Misc/NEWS.d/next/IDLE/2019-01-04-19-14-29.bpo-35660.hMxI7N.rst D Misc/NEWS.d/next/IDLE/2019-01-18-01-24-23.bpo-35769.GqsB34.rst D Misc/NEWS.d/next/IDLE/2019-01-18-13-04-30.bpo-35770.2LxJGu.rst D Misc/NEWS.d/next/Library/2017-08-24-17-55-39.bpo-29456.XaB3MP.rst D Misc/NEWS.d/next/Library/2017-09-19-12-38-31.bpo-31508.pDsFJl.rst D Misc/NEWS.d/next/Library/2017-09-29-16-40-38.bpo-16865.l-f6I_.rst D Misc/NEWS.d/next/Library/2017-10-05-20-41-48.bpo-27645.1Y_Wag.rst D Misc/NEWS.d/next/Library/2017-10-12-22-39-55.bpo-22005.lGP-sc.rst D Misc/NEWS.d/next/Library/2017-10-24-10-18-35.bpo-31425.1lgw47.rst D Misc/NEWS.d/next/Library/2017-10-29-10-37-55.bpo-31608.wkp8Nw.rst D Misc/NEWS.d/next/Library/2017-10-31.bpo-31908.g4xh8x.rst D Misc/NEWS.d/next/Library/2017-11-01-15-44-48.bpo-31680.yO6oSC.rst D Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ7.rst D Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ8.rst D Misc/NEWS.d/next/Library/2017-11-28-10-23-13.bpo-32147.PI2k1Y.rst D Misc/NEWS.d/next/Library/2017-12-06-10-10-10.bpo-32221.ideco_.rst D Misc/NEWS.d/next/Library/2017-12-16-11-40-52.bpo-29877.SfWhmz.rst D Misc/NEWS.d/next/Library/2017-12-27-21-55-19.bpo-31639.l3avDJ.rst D Misc/NEWS.d/next/Library/2018-01-01-00-16-59.bpo-8525.Dq8s63.rst D Misc/NEWS.d/next/Library/2018-01-07-17-43-10.bpo-32512.flC-dE.rst D Misc/NEWS.d/next/Library/2018-01-18-13-09-00.bpo-32585.qpeijr.rst D Misc/NEWS.d/next/Library/2018-01-18-23-34-17.bpo-31848.M2cldy.rst D Misc/NEWS.d/next/Library/2018-01-20-23-17-25.bpo-24334.GZuQLv.rst D Misc/NEWS.d/next/Library/2018-01-21-15-01-50.bpo-31453.cZiZBe.rst D Misc/NEWS.d/next/Library/2018-01-30-17-46-18.bpo-32727.aHVsRC.rst D Misc/NEWS.d/next/Library/2018-02-01-01-34-47.bpo-32734.gCV9AD.rst D Misc/NEWS.d/next/Library/2018-02-01-15-53-35.bpo-32691.VLWVTq.rst D Misc/NEWS.d/next/Library/2018-02-01-17-54-08.bpo-32741.KUvOPL.rst D Misc/NEWS.d/next/Library/2018-02-02-17-21-24.bpo-32749.u5scIn.rst D Misc/NEWS.d/next/Library/2018-02-05-13-31-42.bpo-32647.ktmfR_.rst D Misc/NEWS.d/next/Library/2018-02-05-21-28-28.bpo-32777.C-wIXF.rst D Misc/NEWS.d/next/Library/2018-02-06-17-58-15.bpo-32622.AE0Jz7.rst D Misc/NEWS.d/next/Library/2018-02-07-19-12-10.bpo-32775.-T77_c.rst D Misc/NEWS.d/next/Library/2018-02-08-00-47-07.bpo-32792.NtyDb4.rst D Misc/NEWS.d/next/Library/2018-02-08-18-59-11.bpo-30688.zBh4TH.rst D Misc/NEWS.d/next/Library/2018-02-09-14-44-43.bpo-30157.lEiiAK.rst D Misc/NEWS.d/next/Library/2018-02-09-21-41-56.bpo-31787.owSZ2t.rst D Misc/NEWS.d/next/Library/2018-02-10-13-51-56.bpo-32394.dFM9SI.rst D Misc/NEWS.d/next/Library/2018-02-10-23-41-05.bpo-19675.-dj35-.rst D Misc/NEWS.d/next/Library/2018-02-11-15-54-41.bpo-32819.ZTRX2Q.rst D Misc/NEWS.d/next/Library/2018-02-14-00-21-24.bpo-32841.bvHDOc.rst D Misc/NEWS.d/next/Library/2018-02-15-08-18-52.bpo-31333.4fF-gM.rst D Misc/NEWS.d/next/Library/2018-02-15-12-04-29.bpo-32852.HDqIxM.rst D Misc/NEWS.d/next/Library/2018-02-16-14-37-14.bpo-32857.-XljAx.rst D Misc/NEWS.d/next/Library/2018-02-17-19-20-19.bpo-21060.S1Z-x6.rst D Misc/NEWS.d/next/Library/2018-02-19-14-27-51.bpo-32556.CsRsgr.rst D Misc/NEWS.d/next/Library/2018-02-19-17-46-31.bpo-32859.kAT-Xp.rst D Misc/NEWS.d/next/Library/2018-02-23-12-21-41.bpo-32759.M-y9GA.rst D Misc/NEWS.d/next/Library/2018-02-23-19-12-04.bpo-32922.u-xe0B.rst D Misc/NEWS.d/next/Library/2018-02-24-21-40-42.bpo-30622.dQjxSe.rst D Misc/NEWS.d/next/Library/2018-02-25-10-17-23.bpo-32146.xOzUFW.rst D Misc/NEWS.d/next/Library/2018-02-25-13-06-21.bpo-32947.mqStVW.rst D Misc/NEWS.d/next/Library/2018-02-25-13-47-48.bpo-32929.X2gTDH.rst D Misc/NEWS.d/next/Library/2018-02-25-18-22-01.bpo-32951.gHrCXq.rst D Misc/NEWS.d/next/Library/2018-02-26-09-08-07.bpo-32257.6ElnUt.rst D Misc/NEWS.d/next/Library/2018-02-26-13-16-36.bpo-32713.55yegW.rst D Misc/NEWS.d/next/Library/2018-02-26-20-04-40.bpo-32960.48r0Ml.rst D Misc/NEWS.d/next/Library/2018-02-28-13-08-00.bpo-32844.u8tnAe.rst D Misc/NEWS.d/next/Library/2018-02-28-18-39-48.bpo-32970.IPWtbS.rst D Misc/NEWS.d/next/Library/2018-03-01-17-49-56.bpo-32056.IlpfgE.rst D Misc/NEWS.d/next/Library/2018-03-06-00-19-41.bpo-32969.rGTKa0.rst D Misc/NEWS.d/next/Library/2018-03-06-11-54-59.bpo-33009.-Ekysb.rst D Misc/NEWS.d/next/Library/2018-03-06-20-30-20.bpo-32999.lgFXWl.rst D Misc/NEWS.d/next/Library/2018-03-07-19-37-00.bpo-22674.2sIMmM.rst D Misc/NEWS.d/next/Library/2018-03-07-22-28-17.bpo-27683.572Rv4.rst D Misc/NEWS.d/next/Library/2018-03-09-23-07-07.bpo-33037.nAJ3at.rst D Misc/NEWS.d/next/Library/2018-03-11-00-20-26.bpo-30249.KSkgLB.rst D Misc/NEWS.d/next/Library/2018-03-11-08-44-12.bpo-33034.bpb23d.rst D Misc/NEWS.d/next/Library/2018-03-11-19-03-52.bpo-31804.i8KUMp.rst D Misc/NEWS.d/next/Library/2018-03-12-00-27-56.bpo-33021.m19B9T.rst D Misc/NEWS.d/next/Library/2018-03-12-16-40-00.bpo-33056.lNN9Eh.rst D Misc/NEWS.d/next/Library/2018-03-12-19-58-25.bpo-33064.LO2KIY.rst D Misc/NEWS.d/next/Library/2018-03-15-07-38-00.bpo-33078.RmjUF5.rst D Misc/NEWS.d/next/Library/2018-03-16-16-07-33.bpo-33061.TRTTek.rst D Misc/NEWS.d/next/Library/2018-03-18-15-57-32.bpo-32968.E4G7BO.rst D Misc/NEWS.d/next/Library/2018-03-18-16-48-23.bpo-33097.Yl4gI2.rst D Misc/NEWS.d/next/Library/2018-03-18-17-38-48.bpo-32953.t8WAWN.rst D Misc/NEWS.d/next/Library/2018-03-19-20-47-00.bpo-33100.chyIO4.rst D Misc/NEWS.d/next/Library/2018-03-20-20-53-21.bpo-32896.ewW3Ln.rst D Misc/NEWS.d/next/Library/2018-03-21-16-52-26.bpo-33116.Tvzerj.rst D Misc/NEWS.d/next/Library/2018-03-21-17-59-39.bpo-33078.PQOniT.rst D Misc/NEWS.d/next/Library/2018-03-22-16-05-56.bpo-32505.YK1N8v.rst D Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst D Misc/NEWS.d/next/Library/2018-03-24-19-34-26.bpo-33134.hbVeIX.rst D Misc/NEWS.d/next/Library/2018-03-24-19-54-48.bpo-32873.cHyoAm.rst D Misc/NEWS.d/next/Library/2018-03-25-13-18-16.bpo-33096.ofdbe7.rst D Misc/NEWS.d/next/Library/2018-03-26-12-33-13.bpo-33141.23wlxf.rst D Misc/NEWS.d/next/Library/2018-03-29-03-09-22.bpo-32380.NhuGig.rst D Misc/NEWS.d/next/Library/2018-03-29-04-32-25.bpo-33175._zs1yM.rst D Misc/NEWS.d/next/Library/2018-03-30-01-20-35.bpo-33106.zncfvW.rst D Misc/NEWS.d/next/Library/2018-04-01-19-21-04.bpo-20104.-AKcGa.rst D Misc/NEWS.d/next/Library/2018-04-02-16-10-12.bpo-23403.KG7ADV.rst D Misc/NEWS.d/next/Library/2018-04-02-20-44-54.bpo-32861.HeBjzN.rst D Misc/NEWS.d/next/Library/2018-04-03-10-37-13.bpo-33209.9sGWE_.rst D Misc/NEWS.d/next/Library/2018-04-04-23-41-30.bpo-33224.pyR0jB.rst D Misc/NEWS.d/next/Library/2018-04-05-11-09-45.bpo-33203.Hje9Py.rst D Misc/NEWS.d/next/Library/2018-04-06-14-56-26.bpo-33169.ByhDqb.rst D Misc/NEWS.d/next/Library/2018-04-07-13-49-39.bpo-29613.r6FDnB.rst D Misc/NEWS.d/next/Library/2018-04-08-22-54-07.bpo-33185.Id-Ba9.rst D Misc/NEWS.d/next/Library/2018-04-10-14-50-30.bpo-33144.iZr4et.rst D Misc/NEWS.d/next/Library/2018-04-10-20-57-14.bpo-33256.ndHkqu.rst D Misc/NEWS.d/next/Library/2018-04-11-20-29-19.bpo-33263.B56Hc1.rst D Misc/NEWS.d/next/Library/2018-04-13-08-12-50.bpo-33265.KPQRk0.rst D Misc/NEWS.d/next/Library/2018-04-13-15-14-47.bpo-33254.DS4KFK.rst D Misc/NEWS.d/next/Library/2018-04-16-08-42-03.bpo-11594.QLo4vv.rst D Misc/NEWS.d/next/Library/2018-04-16-15-59-21.bpo-33266.w2PAm-.rst D Misc/NEWS.d/next/Library/2018-04-16-16-21-09.bpo-23403.rxR1Q_.rst D Misc/NEWS.d/next/Library/2018-04-18-19-12-25.bpo-33308.fW75xi.rst D Misc/NEWS.d/next/Library/2018-04-20-10-43-17.bpo-33131.L2E977.rst D Misc/NEWS.d/next/Library/2018-04-21-00-24-08.bpo-991266.h93TP_.rst D Misc/NEWS.d/next/Library/2018-04-22-20-13-21.bpo-33334.19UMOC.rst D Misc/NEWS.d/next/Library/2018-04-23-13-21-39.bpo-33329.lQ-Eod.rst D Misc/NEWS.d/next/Library/2018-04-23-18-25-36.bpo-33251.C_K-J9.rst D Misc/NEWS.d/next/Library/2018-04-23-21-41-30.bpo-33332.Y6OZ8Z.rst D Misc/NEWS.d/next/Library/2018-04-25-14-05-21.bpo-27485.nclVSU.rst D Misc/NEWS.d/next/Library/2018-04-26-13-31-10.bpo-32455.KPWg3K.rst D Misc/NEWS.d/next/Library/2018-04-27-22-18-38.bpo-33336.T8rxn0.rst D Misc/NEWS.d/next/Library/2018-04-28-08-11-35.bpo-33375.Dbq1fz.rst D Misc/NEWS.d/next/Library/2018-04-29-11-15-38.bpo-33383.g32YWn.rst D Misc/NEWS.d/next/Library/2018-04-29-23-56-20.bpo-33197.dgRLqr.rst D Misc/NEWS.d/next/Library/2018-04-30-13-29-47.bpo-33217.TENDzd.rst D Misc/NEWS.d/next/Library/2018-04-30-22-43-31.bpo-32933.M3iI_y.rst D Misc/NEWS.d/next/Library/2018-05-01-02-24-44.bpo-27300.LdIXvK.rst D Misc/NEWS.d/next/Library/2018-05-01-22-33-14.bpo-33311.8YPB-k.rst D Misc/NEWS.d/next/Library/2018-05-01-22-35-50.bpo-33281.d4jOt4.rst D Misc/NEWS.d/next/Library/2018-05-02-07-26-29.bpo-28167.7FwDfN.rst D Misc/NEWS.d/next/Library/2018-05-05-09-53-05.bpo-33422.4FtQ0q.rst D Misc/NEWS.d/next/Library/2018-05-05-18-02-24.bpo-20087.lJrvXL.rst D Misc/NEWS.d/next/Library/2018-05-08-15-01-10.bpo-33365.SicsAd.rst D Misc/NEWS.d/next/Library/2018-05-08-16-43-42.bpo-28556._xr5mp.rst D Misc/NEWS.d/next/Library/2018-05-12-06-01-02.bpo-33453.Fj-jMD.rst D Misc/NEWS.d/next/Library/2018-05-12-13-06-41.bpo-29209.h5RxYy.rst D Misc/NEWS.d/next/Library/2018-05-14-09-07-14.bpo-26103._zU8E2.rst D Misc/NEWS.d/next/Library/2018-05-14-10-29-03.bpo-33495.TeGTQJ.rst D Misc/NEWS.d/next/Library/2018-05-14-15-01-55.bpo-29235.47Fzwt.rst D Misc/NEWS.d/next/Library/2018-05-14-17-49-34.bpo-33497.wWT6XM.rst D Misc/NEWS.d/next/Library/2018-05-14-18-05-35.bpo-33505.L8pAyt.rst D Misc/NEWS.d/next/Library/2018-05-15-12-11-13.bpo-33504.czsHFg.rst D Misc/NEWS.d/next/Library/2018-05-15-13-49-13.bpo-28167.p4RdQt.rst D Misc/NEWS.d/next/Library/2018-05-15-15-03-48.bpo-28612.E9dz39.rst D Misc/NEWS.d/next/Library/2018-05-15-17-06-42.bpo-33516.ZzARe4.rst D Misc/NEWS.d/next/Library/2018-05-15-18-02-03.bpo-0.pj2Mbb.rst D Misc/NEWS.d/next/Library/2018-05-16-05-24-43.bpo-26819.taxbVT.rst D Misc/NEWS.d/next/Library/2018-05-16-09-30-27.bpo-33542.idNAcs.rst D Misc/NEWS.d/next/Library/2018-05-16-10-07-40.bpo-33536._s0TE8.rst D Misc/NEWS.d/next/Library/2018-05-16-12-32-48.bpo-33541.kQORPE.rst D Misc/NEWS.d/next/Library/2018-05-16-14-57-58.bpo-33109.nPLL_S.rst D Misc/NEWS.d/next/Library/2018-05-16-17-05-48.bpo-33548.xWslmx.rst D Misc/NEWS.d/next/Library/2018-05-16-18-10-38.bpo-33540.wy9LRV.rst D Misc/NEWS.d/next/Library/2018-05-17-22-14-58.bpo-12486.HBeh62.rst D Misc/NEWS.d/next/Library/2018-05-17-22-53-08.bpo-28556.C6Hnd1.rst D Misc/NEWS.d/next/Library/2018-05-18-21-50-47.bpo-33570.7CZy4t.rst D Misc/NEWS.d/next/Library/2018-05-18-22-52-34.bpo-21145.AiQMDx.rst D Misc/NEWS.d/next/Library/2018-05-19-15-58-14.bpo-33582.qBZPmF.rst D Misc/NEWS.d/next/Library/2018-05-22-11-55-33.bpo-33604.6V4JcO.rst D Misc/NEWS.d/next/Library/2018-05-22-13-05-12.bpo-30877.JZEGjI.rst D Misc/NEWS.d/next/Library/2018-05-23-00-26-27.bpo-11874.glK5iP.rst D Misc/NEWS.d/next/Library/2018-05-23-14-58-05.bpo-33623.wAw1cF.rst D Misc/NEWS.d/next/Library/2018-05-23-17-07-54.bpo-33625.nzQgD8.rst D Misc/NEWS.d/next/Library/2018-05-23-20-14-34.bpo-33618.xU39lr.rst D Misc/NEWS.d/next/Library/2018-05-24-09-15-52.bpo-33238.ooDfoo.rst D Misc/NEWS.d/next/Library/2018-05-24-17-41-36.bpo-32493.5tAoAu.rst D Misc/NEWS.d/next/Library/2018-05-26-10-13-59.bpo-33652.humFJ1.rst D Misc/NEWS.d/next/Library/2018-05-26-13-09-34.bpo-33654.IbYWxA.rst D Misc/NEWS.d/next/Library/2018-05-28-12-29-54.bpo-33672.GM_Xm_.rst D Misc/NEWS.d/next/Library/2018-05-28-15-55-12.bpo-33469.hmXBpY.rst D Misc/NEWS.d/next/Library/2018-05-28-16-19-35.bpo-32410.Z1DZaF.rst D Misc/NEWS.d/next/Library/2018-05-28-16-40-32.bpo-32610.KvUAsL.rst D Misc/NEWS.d/next/Library/2018-05-28-18-40-26.bpo-31647.s4Fad3.rst D Misc/NEWS.d/next/Library/2018-05-28-22-49-59.bpo-33674.6LFFj7.rst D Misc/NEWS.d/next/Library/2018-05-28-23-25-17.bpo-33671.GIdKKi.rst D Misc/NEWS.d/next/Library/2018-05-29-00-37-56.bpo-33674.2IkGhL.rst D Misc/NEWS.d/next/Library/2018-05-29-01-13-39.bpo-33654.sa81Si.rst D Misc/NEWS.d/next/Library/2018-05-29-12-51-18.bpo-32684.ZEIism.rst D Misc/NEWS.d/next/Library/2018-05-29-15-32-18.bpo-32751.oBTqr7.rst D Misc/NEWS.d/next/Library/2018-05-30-00-26-05.bpo-33197.XkE2kL.rst D Misc/NEWS.d/next/Library/2018-05-30-16-00-06.bpo-2504.BynUvU.rst D Misc/NEWS.d/next/Library/2018-05-31-06-48-55.bpo-31014.SNY681.rst D Misc/NEWS.d/next/Library/2018-06-01-10-55-48.bpo-33734.x1W9x0.rst D Misc/NEWS.d/next/Library/2018-06-03-22-41-59.bpo-33767.2e82g3.rst D Misc/NEWS.d/next/Library/2018-06-04-13-46-39.bpo-33769.D_pxYz.rst D Misc/NEWS.d/next/Library/2018-06-05-11-29-26.bpo-33770.oBhxxw.rst D Misc/NEWS.d/next/Library/2018-06-05-12-43-25.bpo-33165.9TIsVf.rst D Misc/NEWS.d/next/Library/2018-06-05-20-22-30.bpo-33778._tSAS6.rst D Misc/NEWS.d/next/Library/2018-06-06-22-01-33.bpo-33274.teYqv8.rst D Misc/NEWS.d/next/Library/2018-06-07-12-38-12.bpo-33792.3aKG7u.rst D Misc/NEWS.d/next/Library/2018-06-07-18-55-35.bpo-32493.1Bte62.rst D Misc/NEWS.d/next/Library/2018-06-07-23-51-00.bpo-33694.F1zIR1.rst D Misc/NEWS.d/next/Library/2018-06-08-00-29-40.bpo-33476.R0Bhlj.rst D Misc/NEWS.d/next/Library/2018-06-08-17-34-16.bpo-30805.3qCWa0.rst D Misc/NEWS.d/next/Library/2018-06-08-23-55-34.bpo-33578.7oSsjG.rst D Misc/NEWS.d/next/Library/2018-06-10-09-43-54.bpo-27397.0_fFQR.rst D Misc/NEWS.d/next/Library/2018-06-10-12-15-26.bpo-32108.iEkvh0.rst D Misc/NEWS.d/next/Library/2018-06-10-13-26-02.bpo-33812.frGAOr.rst D Misc/NEWS.d/next/Library/2018-06-10-14-08-52.bpo-33687.1zZdnA.rst D Misc/NEWS.d/next/Library/2018-06-10-15-14-17.bpo-33805.5LAz5a.rst D Misc/NEWS.d/next/Library/2018-06-10-19-29-17.bpo-30167.G5EgC5.rst D Misc/NEWS.d/next/Library/2018-06-12-18-34-54.bpo-33842.RZXSGu.rst D Misc/NEWS.d/next/Library/2018-06-12-18-59-16.bpo-33843.qVAK8g.rst D Misc/NEWS.d/next/Library/2018-06-13-20-33-29.bpo-26544.hQ1oMt.rst D Misc/NEWS.d/next/Library/2018-06-14-17-53-30.bpo-33721.8i9_9A.rst D Misc/NEWS.d/next/Library/2018-06-17-10-48-03.bpo-33663.sUuGmq.rst D Misc/NEWS.d/next/Library/2018-06-17-11-46-20.bpo-33833.RnEqvM.rst D Misc/NEWS.d/next/Library/2018-06-21-09-33-02.bpo-32568.f_meGY.rst D Misc/NEWS.d/next/Library/2018-06-21-11-35-47.bpo-33916.cZgPCD.rst D Misc/NEWS.d/next/Library/2018-06-23-12-47-37.bpo-33695.seRTxh.rst D Misc/NEWS.d/next/Library/2018-06-23-18-09-28.bpo-33897.Hu0yvt.rst D Misc/NEWS.d/next/Library/2018-06-24-01-57-14.bpo-33899.IaOcAr.rst D Misc/NEWS.d/next/Library/2018-06-26-02-09-18.bpo-33929.OcCLah.rst D Misc/NEWS.d/next/Library/2018-06-26-16-55-59.bpo-25007.6LQWOF.rst D Misc/NEWS.d/next/Library/2018-06-26-19-03-56.bpo-33871.XhlrGU.rst D Misc/NEWS.d/next/Library/2018-06-27-00-31-30.bpo-24567.FuePyY.rst D Misc/NEWS.d/next/Library/2018-06-28-13-00-12.bpo-27500._s1gZ5.rst D Misc/NEWS.d/next/Library/2018-06-28-14-56-44.bpo-33974.SA8nNP.rst D Misc/NEWS.d/next/Library/2018-06-29-00-31-36.bpo-14117.3nvDuR.rst D Misc/NEWS.d/next/Library/2018-06-29-12-23-34.bpo-33978.y4csIw.rst D Misc/NEWS.d/next/Library/2018-06-29-13-05-01.bpo-34003.Iu831h.rst D Misc/NEWS.d/next/Library/2018-07-02-05-59-11.bpo-34019.ZXJIife.rst D Misc/NEWS.d/next/Library/2018-07-04-07-36-53.bpo-34010.VNDkde.rst D Misc/NEWS.d/next/Library/2018-07-04-17-14-26.bpo-34044.KWAu4y.rst D Misc/NEWS.d/next/Library/2018-07-04-21-14-35.bpo-34043.0YJNq9.rst D Misc/NEWS.d/next/Library/2018-07-05-18-37-05.bpo-34054.nWRS6M.rst D Misc/NEWS.d/next/Library/2018-07-05-22-45-46.bpo-34056.86isrU.rst D Misc/NEWS.d/next/Library/2018-07-06-15-06-32.bpo-34041.0zrKLh.rst D Misc/NEWS.d/next/Library/2018-07-08-18-49-41.bpo-33967.lhaAez.rst D Misc/NEWS.d/next/Library/2018-07-11-10-03-21.bpo-27494.04OWkW.rst D Misc/NEWS.d/next/Library/2018-07-11-20-51-20.bpo-34070.WpmFAu.rst D Misc/NEWS.d/next/Library/2018-07-13-08-44-52.bpo-34108.RjobUC.rst D Misc/NEWS.d/next/Library/2018-07-13-13-42-10.bpo-34097.F5Dk5o.rst D Misc/NEWS.d/next/Library/2018-07-20-09-11-05.bpo-33729.sO6iTb.rst D Misc/NEWS.d/next/Library/2018-07-20-18-06-00.bpo-34164.fNfT-q.rst D Misc/NEWS.d/next/Library/2018-07-22-07-59-32.bpo-940286.NZTzyc.rst D Misc/NEWS.d/next/Library/2018-07-22-09-05-01.bpo-21446.w6g7tn.rst D Misc/NEWS.d/next/Library/2018-07-23-12-20-02.bpo-32788.R2jSiK.rst D Misc/NEWS.d/next/Library/2018-07-23-14-12-28.bpo-34197.7yFSP5.rst D Misc/NEWS.d/next/Library/2018-07-24-16-37-40.bpo-34052.VbbFAE.rst D Misc/NEWS.d/next/Library/2018-07-25-00-40-14.bpo-34213.O15MgP.rst D Misc/NEWS.d/next/Library/2018-07-25-12-08-48.bpo-13041.lNmgDz.rst D Misc/NEWS.d/next/Library/2018-07-25-19-02-39.bpo-34228.0Ibztw.rst D Misc/NEWS.d/next/Library/2018-07-25-22-38-54.bpo-33089.C3CB7e.rst D Misc/NEWS.d/next/Library/2018-07-26-08-45-49.bpo-19891.Y-3IiB.rst D Misc/NEWS.d/next/Library/2018-07-28-11-47-10.bpo-34251.q3elQ6.rst D Misc/NEWS.d/next/Library/2018-07-28-11-49-21.bpo-34075.9u1bO-.rst D Misc/NEWS.d/next/Library/2018-07-28-12-08-53.bpo-32215.EU68SY.rst D Misc/NEWS.d/next/Library/2018-07-28-15-00-31.bpo-34035.75nW0H.rst D Misc/NEWS.d/next/Library/2018-07-28-17-00-36.bpo-34263.zUfRsu.rst D Misc/NEWS.d/next/Library/2018-07-29-11-32-56.bpo-34270.aL6P-3.rst D Misc/NEWS.d/next/Library/2018-07-29-13-50-32.bpo-32321.hDoNKC.rst D Misc/NEWS.d/next/Library/2018-07-29-14-12-23.bpo-31047.FSarLs.rst D Misc/NEWS.d/next/Library/2018-07-29-15-25-15.bpo-34246.xiKq-Q.rst D Misc/NEWS.d/next/Library/2018-07-29-21-53-15.bpo-33089.hxbp3g.rst D Misc/NEWS.d/next/Library/2018-07-31-23-00-09.bpo-34248.5U6wwc.rst D Misc/NEWS.d/next/Library/2018-07-31-23-33-06.bpo-33613.Cdnt0i.rst D Misc/NEWS.d/next/Library/2018-08-01-21-26-17.bpo-9372.V8Ou3K.rst D Misc/NEWS.d/next/Library/2018-08-02-14-43-42.bpo-34318.GneiXs.rst D Misc/NEWS.d/next/Library/2018-08-02-20-39-32.bpo-26502.eGXr_k.rst D Misc/NEWS.d/next/Library/2018-08-02-21-28-38.bpo-18540.AryoYY.rst D Misc/NEWS.d/next/Library/2018-08-04-00-06-28.bpo-34333.5NHG93.rst D Misc/NEWS.d/next/Library/2018-08-06-11-01-18.bpo-34341.E0b9p2.rst D Misc/NEWS.d/next/Library/2018-08-06-21-47-03.bpo-2122.GWdmrm.rst D Misc/NEWS.d/next/Library/2018-08-12-00-14-54.bpo-22602.ybG9K8.rst D Misc/NEWS.d/next/Library/2018-08-12-08-43-21.bpo-34384.yjofCv.rst D Misc/NEWS.d/next/Library/2018-08-15-16-22-30.bpo-31715.Iw8jS8.rst D Misc/NEWS.d/next/Library/2018-08-16-16-47-15.bpo-20849.YWJECC.rst D Misc/NEWS.d/next/Library/2018-08-16-19-07-05.bpo-34412.NF5Jm2.rst D Misc/NEWS.d/next/Library/2018-08-20-13-53-10.bpo-34427.tMRQjl.rst D Misc/NEWS.d/next/Library/2018-08-20-16-48-32.bpo-34441._zx9lU.rst D Misc/NEWS.d/next/Library/2018-08-21-00-29-01.bpo-34171.6LkWav.rst D Misc/NEWS.d/next/Library/2018-08-22-17-43-52.bpo-6700.hp7C4B.rst D Misc/NEWS.d/next/Library/2018-08-22-21-59-08.bpo-34454.z7uG4b.rst D Misc/NEWS.d/next/Library/2018-08-23-09-25-08.bpo-34472.cGyYrO.rst D Misc/NEWS.d/next/Library/2018-08-24-17-31-27.bpo-13312.6hA5La.rst D Misc/NEWS.d/next/Library/2018-08-27-16-01-22.bpo-34515.S0Irst.rst D Misc/NEWS.d/next/Library/2018-08-30-14-44-11.bpo-22872.NhIaZ9.rst D Misc/NEWS.d/next/Library/2018-08-31-06-28-03.bpo-34282.ztyXH8.rst D Misc/NEWS.d/next/Library/2018-08-31-19-26-55.bpo-34558.MHv582.rst D Misc/NEWS.d/next/Library/2018-09-01-20-43-10.bpo-34563.7NQK7B.rst D Misc/NEWS.d/next/Library/2018-09-03-23-23-32.bpo-34530.h_Xsu7.rst D Misc/NEWS.d/next/Library/2018-09-03-23-54-35.bpo-8110.FExWI_.rst D Misc/NEWS.d/next/Library/2018-09-04-09-32-54.bpo-34574.X4RwYI.rst D Misc/NEWS.d/next/Library/2018-09-06-10-07-46.bpo-30977.bP661V.rst D Misc/NEWS.d/next/Library/2018-09-07-10-16-34.bpo-34604.xL7-kG.rst D Misc/NEWS.d/next/Library/2018-09-07-10-57-00.bpo-34421.AKJISD.rst D Misc/NEWS.d/next/Library/2018-09-08-12-57-07.bpo-34610.wmoP5j.rst D Misc/NEWS.d/next/Library/2018-09-10-13-04-40.bpo-34622.tpv_rN.rst D Misc/NEWS.d/next/Library/2018-09-10-14-15-53.bpo-32270.wSJjuD.rst D Misc/NEWS.d/next/Library/2018-09-10-17-46-51.bpo-34625.D2YfDz.rst D Misc/NEWS.d/next/Library/2018-09-10-21-09-34.bpo-34363.YuSb0T.rst D Misc/NEWS.d/next/Library/2018-09-11-01-25-35.bpo-32490.ROIDO1.rst D Misc/NEWS.d/next/Library/2018-09-11-10-00-53.bpo-34630.YbqUS6.rst D Misc/NEWS.d/next/Library/2018-09-11-10-51-16.bpo-24412.i-F_E5.rst D Misc/NEWS.d/next/Library/2018-09-11-15-04-05.bpo-34636.capCmt.rst D Misc/NEWS.d/next/Library/2018-09-11-15-49-09.bpo-34536.3IPIH5.rst D Misc/NEWS.d/next/Library/2018-09-12-10-33-44.bpo-34638.xaeZX5.rst D Misc/NEWS.d/next/Library/2018-09-12-14-46-51.bpo-34652.Rt1m1b.rst D Misc/NEWS.d/next/Library/2018-09-13-03-59-43.bpo-34658.ykZ-ia.rst D Misc/NEWS.d/next/Library/2018-09-13-10-09-19.bpo-6721.ZUL_F3.rst D Misc/NEWS.d/next/Library/2018-09-13-11-49-52.bpo-34666.3uLtWv.rst D Misc/NEWS.d/next/Library/2018-09-13-21-04-23.bpo-34672.BYuKKS.rst D Misc/NEWS.d/next/Library/2018-09-14-10-38-18.bpo-31177.Sv91TN.rst D Misc/NEWS.d/next/Library/2018-09-14-12-38-49.bpo-32718.ICYQbt.rst D Misc/NEWS.d/next/Library/2018-09-14-14-29-45.bpo-34670.17XwGB.rst D Misc/NEWS.d/next/Library/2018-09-14-20-00-47.bpo-29577.RzwKFD.rst D Misc/NEWS.d/next/Library/2018-09-16-17-04-16.bpo-34659.CWemzH.rst D Misc/NEWS.d/next/Library/2018-09-19-16-51-04.bpo-34738.Pr3-iG.rst D Misc/NEWS.d/next/Library/2018-09-20-16-55-43.bpo-34728.CUE8LU.rst D Misc/NEWS.d/next/Library/2018-09-20-17-35-05.bpo-32892.TOUBdg.rst D Misc/NEWS.d/next/Library/2018-09-24-14-21-58.bpo-5950.xH0ekQ.rst D Misc/NEWS.d/next/Library/2018-09-24-17-14-57.bpo-34687.Fku_8S.rst D Misc/NEWS.d/next/Library/2018-09-25-08-42-34.bpo-34334.rSPBW9.rst D Misc/NEWS.d/next/Library/2018-09-25-15-48-50.bpo-34789.rPOEj5.rst D Misc/NEWS.d/next/Library/2018-09-26-14-09-34.bpo-34758.bRBfAi.rst D Misc/NEWS.d/next/Library/2018-09-27-09-45-00.bpo-34819.9ZaFyO.rst D Misc/NEWS.d/next/Library/2018-09-27-13-14-15.bpo-34022.E2cl0r.rst D Misc/NEWS.d/next/Library/2018-09-30-08-08-14.bpo-34849.NXK9Ff.rst D Misc/NEWS.d/next/Library/2018-10-02-19-36-34.bpo-34872.yWZRhI.rst D Misc/NEWS.d/next/Library/2018-10-03-09-25-02.bpo-34711.HeOmKR.rst D Misc/NEWS.d/next/Library/2018-10-03-11-07-28.bpo-34866.ML6KpJ.rst D Misc/NEWS.d/next/Library/2018-10-04-15-53-14.bpo-28441.2sQENe.rst D Misc/NEWS.d/next/Library/2018-10-04-17-23-43.bpo-34898.Wo2PoJ.rst D Misc/NEWS.d/next/Library/2018-10-04-18-46-54.bpo-34871.t3X-dB.rst D Misc/NEWS.d/next/Library/2018-10-04-20-25-35.bpo-34897.rNE2Cy.rst D Misc/NEWS.d/next/Library/2018-10-04-20-44-45.bpo-34844.Hnuxav.rst D Misc/NEWS.d/next/Library/2018-10-05-05-55-53.bpo-34900.8RNiFu.rst D Misc/NEWS.d/next/Library/2018-10-07-20-37-02.bpo-34925.KlkZ-Y.rst D Misc/NEWS.d/next/Library/2018-10-07-21-18-52.bpo-34922.37IdsA.rst D Misc/NEWS.d/next/Library/2018-10-08-15-22-02.bpo-34911.hCy0Fv.rst D Misc/NEWS.d/next/Library/2018-10-08-16-04-36.bpo-34829.B7v7D0.rst D Misc/NEWS.d/next/Library/2018-10-08-21-05-11.bpo-34936.3tRqdq.rst D Misc/NEWS.d/next/Library/2018-10-09-11-01-16.bpo-34769.cSkkZt.rst D Misc/NEWS.d/next/Library/2018-10-09-14-25-36.bpo-32680.z2FbOp.rst D Misc/NEWS.d/next/Library/2018-10-09-14-42-16.bpo-34941.1Q5QKv.rst D Misc/NEWS.d/next/Library/2018-10-09-15-44-04.bpo-23831.2CL7lL.rst D Misc/NEWS.d/next/Library/2018-10-10-00-22-57.bpo-34926.CA0rqd.rst D Misc/NEWS.d/next/Library/2018-10-12-18-57-52.bpo-34966.WZeBHO.rst D Misc/NEWS.d/next/Library/2018-10-12-20-30-42.bpo-16965.xo5LAr.rst D Misc/NEWS.d/next/Library/2018-10-13-07-46-50.bpo-34969.Mfnhjb.rst D Misc/NEWS.d/next/Library/2018-10-13-11-14-13.bpo-34970.SrJTY7.rst D Misc/NEWS.d/next/Library/2018-10-13-18-16-20.bpo-31522.rWBb43.rst D Misc/NEWS.d/next/Library/2018-10-13-19-15-23.bpo-34521.YPaiTK.rst D Misc/NEWS.d/next/Library/2018-10-15-23-10-41.bpo-34890.77E770.rst D Misc/NEWS.d/next/Library/2018-10-17-02-15-23.bpo-33947.SRuq3T.rst D Misc/NEWS.d/next/Library/2018-10-17-11-00-00.bpo-23420.Lq74Uu.rst D Misc/NEWS.d/next/Library/2018-10-17-11-54-04.bpo-35008.dotef_.rst D Misc/NEWS.d/next/Library/2018-10-18-17-57-28.bpo-35022.KeEF4T.rst D Misc/NEWS.d/next/Library/2018-10-20-00-29-43.bpo-34909.Ew_8DC.rst D Misc/NEWS.d/next/Library/2018-10-21-14-53-19.bpo-34794.yt3R4-.rst D Misc/NEWS.d/next/Library/2018-10-23-14-46-47.bpo-31553.JxRkAW.rst D Misc/NEWS.d/next/Library/2018-10-23-18-58-12.bpo-35053.G82qwh.rst D Misc/NEWS.d/next/Library/2018-10-25-09-37-03.bpo-31047.kBbX8r.rst D Misc/NEWS.d/next/Library/2018-10-25-09-59-00.bpo-35047.abbaa.rst D Misc/NEWS.d/next/Library/2018-10-25-15-43-32.bpo-35024.ltSrtr.rst D Misc/NEWS.d/next/Library/2018-10-26-00-11-21.bpo-35017.6Ez4Cv.rst D Misc/NEWS.d/next/Library/2018-10-26-21-12-55.bpo-33710.Q5oXc6.rst D Misc/NEWS.d/next/Library/2018-10-26-22-53-16.bpo-35079.Tm5jvF.rst D Misc/NEWS.d/next/Library/2018-10-27-21-11-42.bpo-34160.UzyPZf.rst D Misc/NEWS.d/next/Library/2018-10-29-10-18-31.bpo-35065.CulMN8.rst D Misc/NEWS.d/next/Library/2018-10-29-23-09-24.bpo-35062.dQS1ng.rst D Misc/NEWS.d/next/Library/2018-11-03-10-12-04.bpo-35152.xpqskp.rst D Misc/NEWS.d/next/Library/2018-11-08-14-22-29.bpo-35186.5m22Mj.rst D Misc/NEWS.d/next/Library/2018-11-09-01-18-51.bpo-30064.IF5mH6.rst D Misc/NEWS.d/next/Library/2018-11-09-13-35-36.bpo-35189.gog-sl.rst D Misc/NEWS.d/next/Library/2018-11-12-17-40-04.bpo-29564.SFNBT5.rst D Misc/NEWS.d/next/Library/2018-11-15-07-14-32.bpo-35226.wJPEEe.rst D Misc/NEWS.d/next/Library/2018-11-18-18-44-40.bpo-24209.p3YWOf.rst D Misc/NEWS.d/next/Library/2018-11-19-07-22-04.bpo-35277.dsD-2E.rst D Misc/NEWS.d/next/Library/2018-11-20-13-34-01.bpo-28604.iiih5h.rst D Misc/NEWS.d/next/Library/2018-11-22-15-22-56.bpo-24746.eSLKBE.rst D Misc/NEWS.d/next/Library/2018-11-24-10-33-42.bpo-35308.9--2iy.rst D Misc/NEWS.d/next/Library/2018-11-25-20-05-33.bpo-35312.wbw0zO.rst D Misc/NEWS.d/next/Library/2018-11-29-00-23-25.bpo-35344.4QOPJQ.rst D Misc/NEWS.d/next/Library/2018-11-29-00-55-33.bpo-35345.vepCSJ.rst D Misc/NEWS.d/next/Library/2018-11-29-09-38-40.bpo-35066.Nwej2s.rst D Misc/NEWS.d/next/Library/2018-11-29-12-42-13.bpo-35346.OmTY5c.rst D Misc/NEWS.d/next/Library/2018-12-01-13-44-12.bpo-35371.fTAwlX.rst D Misc/NEWS.d/next/Library/2018-12-02-13-50-52.bpo-35341.32E8T_.rst D Misc/NEWS.d/next/Library/2018-12-03-14-41-11.bpo-35380.SdRF9l.rst D Misc/NEWS.d/next/Library/2018-12-03-19-45-00.bpo-35310.9k28gR.rst D Misc/NEWS.d/next/Library/2018-12-04-12-17-08.bpo-35394.fuTVDk.rst D Misc/NEWS.d/next/Library/2018-12-04-12-46-05.bpo-35389.CTZ9iA.rst D Misc/NEWS.d/next/Library/2018-12-05-13-37-39.bpo-10496.VH-1Lp.rst D Misc/NEWS.d/next/Library/2018-12-05-17-42-49.bpo-10496.laV_IE.rst D Misc/NEWS.d/next/Library/2018-12-05-22-52-21.bpo-35346.Okm9-S.rst D Misc/NEWS.d/next/Library/2018-12-06-00-43-13.bpo-35330.abB4BN.rst D Misc/NEWS.d/next/Library/2018-12-06-02-02-28.bpo-35424.gXxOJU.rst D Misc/NEWS.d/next/Library/2018-12-06-14-44-21.bpo-35415.-HoK3d.rst D Misc/NEWS.d/next/Library/2018-12-09-14-35-49.bpo-35445.LjvtsC.rst D Misc/NEWS.d/next/Library/2018-12-09-17-04-15.bpo-17185.SfSCJF.rst D Misc/NEWS.d/next/Library/2018-12-09-21-35-49.bpo-20239.V4mWBL.rst D Misc/NEWS.d/next/Library/2018-12-10-09-48-27.bpo-35052.xE1ymg.rst D Misc/NEWS.d/next/Library/2018-12-12-16-24-55.bpo-23057.OB4Z1Y.rst D Misc/NEWS.d/next/Library/2018-12-12-16-25-21.bpo-35471.SK8jFC.rst D Misc/NEWS.d/next/Library/2018-12-12-22-52-34.bpo-31446.l--Fjz.rst D Misc/NEWS.d/next/Library/2018-12-13-00-10-51.bpo-35477.hHyy06.rst D Misc/NEWS.d/next/Library/2018-12-14-12-12-15.bpo-35491.jHsNOU.rst D Misc/NEWS.d/next/Library/2018-12-14-13-27-45.bpo-35348.u3Y2an.rst D Misc/NEWS.d/next/Library/2018-12-14-23-56-48.bpo-35502.gLHuFS.rst D Misc/NEWS.d/next/Library/2018-12-16-23-28-49.bpo-35513.pn-Zh3.rst D Misc/NEWS.d/next/Library/2018-12-17-11-43-11.bpo-31784.W0gDjC.rst D Misc/NEWS.d/next/Library/2018-12-18-13-52-13.bpo-35523.SkoMno.rst D Misc/NEWS.d/next/Library/2018-12-18-21-12-25.bpo-35526.fYvo6H.rst D Misc/NEWS.d/next/Library/2018-12-20-16-24-51.bpo-35537.z4E7aA.rst D Misc/NEWS.d/next/Library/2018-12-23-22-27-59.bpo-30561.PSRQ2w.rst D Misc/NEWS.d/next/Library/2018-12-26-02-28-00.bpo-35585.Lkzd3Z.rst D Misc/NEWS.d/next/Library/2018-12-26-10-55-59.bpo-35588.PSR6Ez.rst D Misc/NEWS.d/next/Library/2018-12-27-19-23-00.bpo-35568.PutiOC.rst D Misc/NEWS.d/next/Library/2018-12-30-01-10-50.bpo-35614.cnkM4f.rst D Misc/NEWS.d/next/Library/2018-12-30-14-56-33.bpo-28503.V4kNN3.rst D Misc/NEWS.d/next/Library/2018-12-30-19-50-36.bpo-35619.ZRXdhy.rst D Misc/NEWS.d/next/Library/2019-01-02-20-04-49.bpo-35643.DaMiaV.rst D Misc/NEWS.d/next/Library/2019-01-04-22-18-25.bpo-35664.Z-Gyyj.rst D Misc/NEWS.d/next/Library/2019-01-07-17-17-16.bpo-35283.WClosC.rst D Misc/NEWS.d/next/Library/2019-01-08-01-54-02.bpo-35682.KDM9lk.rst D Misc/NEWS.d/next/Library/2019-01-08-14-00-52.bpo-32710.Sn5Ujj.rst D Misc/NEWS.d/next/Library/2019-01-10-14-03-12.bpo-35702._ct_0H.rst D Misc/NEWS.d/next/Library/2019-01-10-15-55-10.bpo-32710.KwECPu.rst D Misc/NEWS.d/next/Library/2019-01-11-07-09-25.bpo-35699.VDiENF.rst D Misc/NEWS.d/next/Library/2019-01-11-17-56-15.bpo-35717.6TDTB_.rst D Misc/NEWS.d/next/Library/2019-01-11-20-21-59.bpo-35719.qyRcpE.rst D Misc/NEWS.d/next/Library/2019-01-13-01-33-00.bpo-35726.dasdas.rst D Misc/NEWS.d/next/Library/2019-01-13-18-42-41.bpo-35733.eFfLiv.rst D Misc/NEWS.d/next/Library/2019-01-14-14-13-08.bpo-35674.kamWqz.rst D Misc/NEWS.d/next/Library/2019-01-14-17-34-36.bpo-34323.CRErrt.rst D Misc/NEWS.d/next/Library/2019-01-15-13-31-30.bpo-23846.LT_qL8.rst D Misc/NEWS.d/next/Library/2019-01-18-13-44-13.bpo-35537.R1lbTl.rst D Misc/NEWS.d/next/Library/2019-01-19-17-01-43.bpo-35780.CLf7fT.rst D Misc/NEWS.d/next/Library/2019-01-23-22-44-37.bpo-35813.Yobj-Y.rst D Misc/NEWS.d/next/Library/2019-01-29-09-11-09.bpo-35847.eiSi4t.rst D Misc/NEWS.d/next/Library/2019-01-29-17-24-52.bpo-35537.Q0ktFC.rst D Misc/NEWS.d/next/Library/2019-01-30-20-22-36.bpo-35864.ig9KnG.rst D Misc/NEWS.d/next/Library/2019-02-02-00-04-01.bpo-35845.1jx2wk.rst D Misc/NEWS.d/next/Security/2017-08-06-14-43-45.bpo-28414.mzZ6vD.rst D Misc/NEWS.d/next/Security/2018-03-02-10-24-52.bpo-32981.O_qDyj.rst D Misc/NEWS.d/next/Security/2018-03-05-10-09-51.bpo-33001.elj4Aa.rst D Misc/NEWS.d/next/Security/2018-03-25-12-05-43.bpo-33136.TzSN4x.rst D Misc/NEWS.d/next/Security/2018-05-28-08-55-30.bpo-32533.IzwkBI.rst D Misc/NEWS.d/next/Security/2018-06-26-19-35-33.bpo-33871.S4HR9n.rst D Misc/NEWS.d/next/Security/2018-08-15-12-12-47.bpo-34405.qbHTH_.rst D Misc/NEWS.d/next/Security/2018-09-10-16-05-39.bpo-34623.Ua9jMv.rst D Misc/NEWS.d/next/Security/2018-09-11-18-30-55.bpo-17239.kOpwK2.rst D Misc/NEWS.d/next/Security/2018-09-24-18-49-25.bpo-34791.78GmIG.rst D Misc/NEWS.d/next/Security/2018-11-23-15-00-23.bpo-34812.84VQnb.rst D Misc/NEWS.d/next/Security/2019-01-15-18-16-05.bpo-35746.nMSd0j.rst D Misc/NEWS.d/next/Tests/2017-10-18-18-07-45.bpo-31809.KlQrkE.rst D Misc/NEWS.d/next/Tests/2018-01-08-13-33-47.bpo-19417.2asoXy.rst D Misc/NEWS.d/next/Tests/2018-01-12-09-05-19.bpo-27643._6z49y.rst D Misc/NEWS.d/next/Tests/2018-01-25-18-10-47.bpo-32663.IKDsqu.rst D Misc/NEWS.d/next/Tests/2018-03-09-07-05-12.bpo-32517.ugc1iW.rst D Misc/NEWS.d/next/Tests/2018-03-28-01-35-02.bpo-32872.J5NDUj.rst D Misc/NEWS.d/next/Tests/2018-04-27-11-46-35.bpo-33358._OcR59.rst D Misc/NEWS.d/next/Tests/2018-05-10-16-59-15.bpo-32962.S-rcIN.rst D Misc/NEWS.d/next/Tests/2018-05-26-16-01-40.bpo-33655.Frb4LA.rst D Misc/NEWS.d/next/Tests/2018-06-01-14-25-31.bpo-33562.GutEHf.rst D Misc/NEWS.d/next/Tests/2018-06-16-01-37-31.bpo-33873.d86vab.rst D Misc/NEWS.d/next/Tests/2018-06-19-14-04-21.bpo-33901.OFW1Sr.rst D Misc/NEWS.d/next/Tests/2018-06-19-17-55-46.bpo-33746.Sz7avn.rst D Misc/NEWS.d/next/Tests/2018-07-10-18-53-46.bpo-0.UBQJBc.rst D Misc/NEWS.d/next/Tests/2018-08-08-22-41-30.bpo-11191.eq9tSH.rst D Misc/NEWS.d/next/Tests/2018-08-10-16-17-51.bpo-34373.SKdb1k.rst D Misc/NEWS.d/next/Tests/2018-08-14-10-47-44.bpo-34399.D_jd1G.rst D Misc/NEWS.d/next/Tests/2018-08-14-20-50-07.bpo-11192.g7TwYm.rst D Misc/NEWS.d/next/Tests/2018-08-16-18-48-47.bpo-34391.ouNfxC.rst D Misc/NEWS.d/next/Tests/2018-08-24-20-23-15.bpo-34490.vb2cx4.rst D Misc/NEWS.d/next/Tests/2018-08-25-13-28-18.bpo-34347.IsRDPB.rst D Misc/NEWS.d/next/Tests/2018-08-26-13-12-34.bpo-11193.H8fCGa.rst D Misc/NEWS.d/next/Tests/2018-08-29-16-30-52.bpo-34542.9stVAW.rst D Misc/NEWS.d/next/Tests/2018-09-04-15-16-42.bpo-34579.bp4HdM.rst D Misc/NEWS.d/next/Tests/2018-09-05-23-50-21.bpo-34594.tqL-GS.rst D Misc/NEWS.d/next/Tests/2018-09-09-14-36-59.bpo-34569.okj1Xh.rst D Misc/NEWS.d/next/Tests/2018-09-12-17-00-34.bpo-34200.dfxYQK.rst D Misc/NEWS.d/next/Tests/2018-09-13-09-53-15.bpo-34661.bdTamP.rst D Misc/NEWS.d/next/Tests/2018-09-13-20-58-07.bpo-34587.rCcxp3.rst D Misc/NEWS.d/next/Tests/2018-09-21-17-33-41.bpo-34537.GImYtZ.rst D Misc/NEWS.d/next/Tests/2018-10-09-23-51-07.bpo-23596.rdnert.rst D Misc/NEWS.d/next/Tests/2018-10-11-22-34-27.bpo-34962.0PLBi8.rst D Misc/NEWS.d/next/Tests/2018-10-27-13-41-55.bpo-34279.v0Xqxe.rst D Misc/NEWS.d/next/Tests/2018-11-04-20-17-09.bpo-21263.T3qo9r.rst D Misc/NEWS.d/next/Tests/2018-11-26-16-54-21.bpo-35317.jByGP2.rst D Misc/NEWS.d/next/Tests/2018-11-30-17-18-56.bpo-35352.8bD7GC.rst D Misc/NEWS.d/next/Tests/2018-12-09-01-27-29.bpo-33725.TaGayj.rst D Misc/NEWS.d/next/Tests/2018-12-10-13-18-37.bpo-26704.DBAN4c.rst D Misc/NEWS.d/next/Tests/2018-12-12-18-07-58.bpo-35412.kbuJor.rst D Misc/NEWS.d/next/Tests/2018-12-12-18-20-18.bpo-34279.DhKcuP.rst D Misc/NEWS.d/next/Tests/2018-12-16-23-36-47.bpo-35513.k4WHlA.rst D Misc/NEWS.d/next/Tests/2018-12-17-16-41-45.bpo-35519.RR3L_w.rst D Misc/NEWS.d/next/Tests/2018-12-18-22-36-53.bpo-35424.1Pz4IS.rst D Misc/NEWS.d/next/Tests/2018-12-18-23-20-39.bpo-31731.tcv85C.rst D Misc/NEWS.d/next/Tests/2019-01-04-21-34-53.bpo-35488.U7JJzP.rst D Misc/NEWS.d/next/Tests/2019-01-07-23-22-44.bpo-33717.GhHXv8.rst D Misc/NEWS.d/next/Tests/2019-01-07-23-34-41.bpo-32710.Hzo1b8.rst D Misc/NEWS.d/next/Tests/2019-01-10-18-35-42.bpo-35045.qdd6d9.rst D Misc/NEWS.d/next/Tests/2019-01-18-12-19-19.bpo-35772.sGBbsn.rst D Misc/NEWS.d/next/Tools-Demos/2017-09-26-10-11-21.bpo-31583.TM90_H.rst D Misc/NEWS.d/next/Tools-Demos/2017-12-07-20-51-20.bpo-32222.hPBcGT.rst D Misc/NEWS.d/next/Tools-Demos/2018-02-20-12-16-47.bpo-32885.dL5x7C.rst D Misc/NEWS.d/next/Tools-Demos/2018-03-02-16-23-31.bpo-25427.1mgMOG.rst D Misc/NEWS.d/next/Tools-Demos/2018-03-16-17-25-05.bpo-29673.m8QtaW.rst D Misc/NEWS.d/next/Tools-Demos/2018-03-26-18-54-24.bpo-31920.u_WKsT.rst D Misc/NEWS.d/next/Tools-Demos/2018-04-03-18-10-00.bpo-33189.QrXR00.rst D Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-16-53.bpo-32962.2YfdwI.rst D Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-23-07.bpo-32962.Q3Dwns.rst D Misc/NEWS.d/next/Tools-Demos/2018-07-24-00-11-44.bpo-20260.klmmqI.rst D Misc/NEWS.d/next/Tools-Demos/2018-10-15-13-22-28.bpo-34989.hU4fra.rst D Misc/NEWS.d/next/Tools-Demos/2019-02-01-12-22-37.bpo-35884.hJkMRD.rst D Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst D Misc/NEWS.d/next/Windows/2018-02-07-17-50-48.bpo-29248.Xzwj-6.rst D Misc/NEWS.d/next/Windows/2018-02-10-15-38-19.bpo-32370.kcKuct.rst D Misc/NEWS.d/next/Windows/2018-02-19-08-54-06.bpo-32457.vVP0Iz.rst D Misc/NEWS.d/next/Windows/2018-02-19-10-00-57.bpo-32409.nocuDg.rst D Misc/NEWS.d/next/Windows/2018-02-19-13-54-42.bpo-31966._Q3HPb.rst D Misc/NEWS.d/next/Windows/2018-02-23-00-47-13.bpo-32901.mGKz5_.rst D Misc/NEWS.d/next/Windows/2018-02-28-11-03-24.bpo-32903.1SXY4t.rst D Misc/NEWS.d/next/Windows/2018-03-07-01-33-33.bpo-33016.Z_Med0.rst D Misc/NEWS.d/next/Windows/2018-03-08-20-02-38.bpo-32890.3jzFzY.rst D Misc/NEWS.d/next/Windows/2018-04-13-11-28-55.bpo-33184.7YhqQE.rst D Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst D Misc/NEWS.d/next/Windows/2018-05-16-11-31-17.bpo-29097.9mqEuI.rst D Misc/NEWS.d/next/Windows/2018-06-04-09-20-53.bpo-33720.VKDXHK.rst D Misc/NEWS.d/next/Windows/2018-06-19-11-57-50.bpo-33895.zpblTy.rst D Misc/NEWS.d/next/Windows/2018-06-25-09-33-48.bpo-30237.EybiZA.rst D Misc/NEWS.d/next/Windows/2018-06-27-23-33-54.bpo-31546.zJlap-.rst D Misc/NEWS.d/next/Windows/2018-07-02-14-19-32.bpo-34006.7SgBT_.rst D Misc/NEWS.d/next/Windows/2018-07-11-15-58-06.bpo-34011.Ho_d5T.rst D Misc/NEWS.d/next/Windows/2018-07-25-16-13-12.bpo-34225.ngemNL.rst D Misc/NEWS.d/next/Windows/2018-08-21-19-28-23.bpo-34062.3gxsA3.rst D Misc/NEWS.d/next/Windows/2018-09-03-01-23-52.bpo-34532.N1HEbE.rst D Misc/NEWS.d/next/Windows/2018-09-04-23-13-19.bpo-34581.lnbC0k.rst D Misc/NEWS.d/next/Windows/2018-09-13-08-29-04.bpo-34603.2AB7sc.rst D Misc/NEWS.d/next/Windows/2018-09-22-11-02-35.bpo-34770.4lEUOd.rst D Misc/NEWS.d/next/Windows/2018-09-25-10-39-27.bpo-32557.Rs1bf9.rst D Misc/NEWS.d/next/Windows/2018-10-25-11-29-22.bpo-35067.RHWi7W.rst D Misc/NEWS.d/next/Windows/2018-10-30-13-39-17.bpo-34977.0l7_QV.rst D Misc/NEWS.d/next/Windows/2018-12-07-10-00-38.bpo-34977.agQJbD.rst D Misc/NEWS.d/next/Windows/2018-12-10-15-01-13.bpo-35401.9L1onG.rst D Misc/NEWS.d/next/Windows/2018-12-13-13-30-04.bpo-35402.n_mXb2.rst D Misc/NEWS.d/next/Windows/2018-12-28-07-25-47.bpo-35596.P9CEY2.rst D Misc/NEWS.d/next/Windows/2019-01-08-13-56-01.bpo-35596.oFvhcm.rst D Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst D Misc/NEWS.d/next/Windows/2019-01-21-05-18-14.bpo-35758.8LsY3l.rst D Misc/NEWS.d/next/Windows/2019-01-25-12-29-14.bpo-35797.MzyOK9.rst D Misc/NEWS.d/next/Windows/2019-01-25-12-46-36.bpo-35811.2hU-mm.rst D Misc/NEWS.d/next/Windows/2019-01-29-15-44-46.bpo-35854.Ww3z19.rst D Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst D Misc/NEWS.d/next/Windows/2019-02-02-22-12-23.bpo-35890.ccIjHH.rst D Misc/NEWS.d/next/macOS/2017-11-01-16-53-12.bpo-31903.K6jCVG.rst D Misc/NEWS.d/next/macOS/2018-02-27-17-33-15.bpo-32901.hQu0w3.rst D Misc/NEWS.d/next/macOS/2018-03-29-06-56-12.bpo-32726.urS9uX.rst D Misc/NEWS.d/next/macOS/2018-04-07-00-51-34.bpo-33184.3j208P.rst D Misc/NEWS.d/next/macOS/2018-05-16-13-25-58.bpo-13631.UIjDyY.rst D Misc/NEWS.d/next/macOS/2018-07-31-09-51-01.bpo-33635.KiscE-.rst D Misc/NEWS.d/next/macOS/2018-09-11-08-30-55.bpo-34405.UzIi0n.rst D Misc/NEWS.d/next/macOS/2018-10-17-14-36-08.bpo-24658.Naddgx.rst D Misc/NEWS.d/next/macOS/2018-10-18-23-54-55.bpo-35025.X4LFJg.rst D Misc/NEWS.d/next/macOS/2018-12-09-13-56-49.bpo-35401.n8B7X1.rst D Misc/NEWS.d/next/macOS/2018-12-21-18-44-30.bpo-35555.M58_K3.rst M Include/patchlevel.h M Lib/pydoc_data/topics.py M README.rst diff --git a/Include/patchlevel.h b/Include/patchlevel.h index 68c29f58ab41..611dea8af4aa 100644 --- a/Include/patchlevel.h +++ b/Include/patchlevel.h @@ -20,10 +20,10 @@ #define PY_MINOR_VERSION 8 #define PY_MICRO_VERSION 0 #define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_ALPHA -#define PY_RELEASE_SERIAL 0 +#define PY_RELEASE_SERIAL 1 /* Version as a string */ -#define PY_VERSION "3.8.0a0" +#define PY_VERSION "3.8.0a1" /*--end constants--*/ /* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2. diff --git a/Lib/pydoc_data/topics.py b/Lib/pydoc_data/topics.py index a979931e266c..4310ca5ba668 100644 --- a/Lib/pydoc_data/topics.py +++ b/Lib/pydoc_data/topics.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Autogenerated by Sphinx on Tue Jan 30 18:36:07 2018 +# Autogenerated by Sphinx on Sun Feb 3 14:00:19 2019 topics = {'assert': 'The "assert" statement\n' '**********************\n' '\n' @@ -26,7 +26,8 @@ 'implementation, the built-in variable "__debug__" is "True" under\n' 'normal circumstances, "False" when optimization is requested ' '(command\n' - 'line option -O). The current code generator emits no code for an\n' + 'line option "-O"). The current code generator emits no code for ' + 'an\n' 'assert statement when optimization is requested at compile time. ' 'Note\n' 'that it is unnecessary to include the source code for the ' @@ -87,26 +88,19 @@ 'parentheses or square brackets, is recursively defined as ' 'follows.\n' '\n' - '* If the target list is empty: The object must also be an ' - 'empty\n' - ' iterable.\n' - '\n' - '* If the target list is a single target in parentheses: The ' - 'object\n' - ' is assigned to that target.\n' + '* If the target list is a single target with no trailing ' + 'comma,\n' + ' optionally in parentheses, the object is assigned to that ' + 'target.\n' '\n' - '* If the target list is a comma-separated list of targets, or ' - 'a\n' - ' single target in square brackets: The object must be an ' - 'iterable\n' - ' with the same number of items as there are targets in the ' - 'target\n' - ' list, and the items are assigned, from left to right, to ' - 'the\n' - ' corresponding targets.\n' + '* Else: The object must be an iterable with the same number of ' + 'items\n' + ' as there are targets in the target list, and the items are ' + 'assigned,\n' + ' from left to right, to the corresponding targets.\n' '\n' ' * If the target list contains one target prefixed with an\n' - ' asterisk, called a "starred" target: The object must be ' + ' asterisk, called a ?starred? target: The object must be ' 'an\n' ' iterable with at least as many items as there are targets ' 'in the\n' @@ -203,10 +197,10 @@ ' If the primary is a mutable sequence object (such as a ' 'list), the\n' ' subscript must yield an integer. If it is negative, the ' - "sequence's\n" + 'sequence?s\n' ' length is added to it. The resulting value must be a ' 'nonnegative\n' - " integer less than the sequence's length, and the sequence is " + ' integer less than the sequence?s length, and the sequence is ' 'asked\n' ' to assign the assigned object to its item with that index. ' 'If the\n' @@ -216,7 +210,7 @@ '\n' ' If the primary is a mapping object (such as a dictionary), ' 'the\n' - " subscript must have a type compatible with the mapping's key " + ' subscript must have a type compatible with the mapping?s key ' 'type,\n' ' and the mapping is then asked to create a key/datum pair ' 'which maps\n' @@ -239,12 +233,12 @@ 'expressions are\n' ' evaluated, insofar they are present; defaults are zero and ' 'the\n' - " sequence's length. The bounds should evaluate to integers. " + ' sequence?s length. The bounds should evaluate to integers. ' 'If\n' - " either bound is negative, the sequence's length is added to " + ' either bound is negative, the sequence?s length is added to ' 'it. The\n' ' resulting bounds are clipped to lie between zero and the ' - "sequence's\n" + 'sequence?s\n' ' length, inclusive. Finally, the sequence object is asked to ' 'replace\n' ' the slice with the items of the assigned sequence. The ' @@ -265,7 +259,7 @@ '\n' 'Although the definition of assignment implies that overlaps ' 'between\n' - "the left-hand side and the right-hand side are 'simultaneous' " + 'the left-hand side and the right-hand side are ?simultaneous? ' '(for\n' 'example "a, b = b, a" swaps two variables), overlaps *within* ' 'the\n' @@ -357,9 +351,9 @@ 'Annotated assignment statements\n' '===============================\n' '\n' - 'Annotation assignment is the combination, in a single ' - 'statement, of a\n' - 'variable or attribute annotation and an optional assignment ' + '*Annotation* assignment is the combination, in a single ' + 'statement, of\n' + 'a variable or attribute annotation and an optional assignment\n' 'statement:\n' '\n' ' annotated_assignment_stmt ::= augtarget ":" expression ["=" ' @@ -400,9 +394,153 @@ 'the last\n' '"__setitem__()" or "__setattr__()" call.\n' '\n' - 'See also: **PEP 526** - Variable and attribute annotation ' - 'syntax\n' - ' **PEP 484** - Type hints\n', + 'See also:\n' + '\n' + ' **PEP 526** - Syntax for Variable Annotations\n' + ' The proposal that added syntax for annotating the types ' + 'of\n' + ' variables (including class variables and instance ' + 'variables),\n' + ' instead of expressing them through comments.\n' + '\n' + ' **PEP 484** - Type hints\n' + ' The proposal that added the "typing" module to provide a ' + 'standard\n' + ' syntax for type annotations that can be used in static ' + 'analysis\n' + ' tools and IDEs.\n', + 'async': 'Coroutines\n' + '**********\n' + '\n' + 'New in version 3.5.\n' + '\n' + '\n' + 'Coroutine function definition\n' + '=============================\n' + '\n' + ' async_funcdef ::= [decorators] "async" "def" funcname "(" ' + '[parameter_list] ")"\n' + ' ["->" expression] ":" suite\n' + '\n' + 'Execution of Python coroutines can be suspended and resumed at ' + 'many\n' + 'points (see *coroutine*). Inside the body of a coroutine ' + 'function,\n' + '"await" and "async" identifiers become reserved keywords; "await"\n' + 'expressions, "async for" and "async with" can only be used in\n' + 'coroutine function bodies.\n' + '\n' + 'Functions defined with "async def" syntax are always coroutine\n' + 'functions, even if they do not contain "await" or "async" ' + 'keywords.\n' + '\n' + 'It is a "SyntaxError" to use a "yield from" expression inside the ' + 'body\n' + 'of a coroutine function.\n' + '\n' + 'An example of a coroutine function:\n' + '\n' + ' async def func(param1, param2):\n' + ' do_stuff()\n' + ' await some_coroutine()\n' + '\n' + '\n' + 'The "async for" statement\n' + '=========================\n' + '\n' + ' async_for_stmt ::= "async" for_stmt\n' + '\n' + 'An *asynchronous iterable* is able to call asynchronous code in ' + 'its\n' + '*iter* implementation, and *asynchronous iterator* can call\n' + 'asynchronous code in its *next* method.\n' + '\n' + 'The "async for" statement allows convenient iteration over\n' + 'asynchronous iterators.\n' + '\n' + 'The following code:\n' + '\n' + ' async for TARGET in ITER:\n' + ' BLOCK\n' + ' else:\n' + ' BLOCK2\n' + '\n' + 'Is semantically equivalent to:\n' + '\n' + ' iter = (ITER)\n' + ' iter = type(iter).__aiter__(iter)\n' + ' running = True\n' + ' while running:\n' + ' try:\n' + ' TARGET = await type(iter).__anext__(iter)\n' + ' except StopAsyncIteration:\n' + ' running = False\n' + ' else:\n' + ' BLOCK\n' + ' else:\n' + ' BLOCK2\n' + '\n' + 'See also "__aiter__()" and "__anext__()" for details.\n' + '\n' + 'It is a "SyntaxError" to use an "async for" statement outside the ' + 'body\n' + 'of a coroutine function.\n' + '\n' + '\n' + 'The "async with" statement\n' + '==========================\n' + '\n' + ' async_with_stmt ::= "async" with_stmt\n' + '\n' + 'An *asynchronous context manager* is a *context manager* that is ' + 'able\n' + 'to suspend execution in its *enter* and *exit* methods.\n' + '\n' + 'The following code:\n' + '\n' + ' async with EXPR as VAR:\n' + ' BLOCK\n' + '\n' + 'Is semantically equivalent to:\n' + '\n' + ' mgr = (EXPR)\n' + ' aexit = type(mgr).__aexit__\n' + ' aenter = type(mgr).__aenter__(mgr)\n' + '\n' + ' VAR = await aenter\n' + ' try:\n' + ' BLOCK\n' + ' except:\n' + ' if not await aexit(mgr, *sys.exc_info()):\n' + ' raise\n' + ' else:\n' + ' await aexit(mgr, None, None, None)\n' + '\n' + 'See also "__aenter__()" and "__aexit__()" for details.\n' + '\n' + 'It is a "SyntaxError" to use an "async with" statement outside the\n' + 'body of a coroutine function.\n' + '\n' + 'See also:\n' + '\n' + ' **PEP 492** - Coroutines with async and await syntax\n' + ' The proposal that made coroutines a proper standalone concept ' + 'in\n' + ' Python, and added supporting syntax.\n' + '\n' + '-[ Footnotes ]-\n' + '\n' + '[1] The exception is propagated to the invocation stack unless\n' + ' there is a "finally" clause which happens to raise another\n' + ' exception. That new exception causes the old one to be lost.\n' + '\n' + '[2] A string literal appearing as the first statement in the\n' + ' function body is transformed into the function?s "__doc__"\n' + ' attribute and therefore the function?s *docstring*.\n' + '\n' + '[3] A string literal appearing as the first statement in the class\n' + ' body is transformed into the namespace?s "__doc__" item and\n' + ' therefore the class?s *docstring*.\n', 'atom-identifiers': 'Identifiers (Names)\n' '*******************\n' '\n' @@ -464,7 +602,7 @@ '\n' 'All literals correspond to immutable data types, and hence ' 'the\n' - "object's identity is less important than its value. " + 'object?s identity is less important than its value. ' 'Multiple\n' 'evaluations of literals with the same value (either the ' 'same\n' @@ -483,15 +621,19 @@ '\n' 'object.__getattr__(self, name)\n' '\n' - ' Called when an attribute lookup has not found the ' - 'attribute in the\n' - ' usual places (i.e. it is not an instance attribute ' - 'nor is it found\n' - ' in the class tree for "self"). "name" is the ' - 'attribute name. This\n' - ' method should return the (computed) attribute value ' - 'or raise an\n' - ' "AttributeError" exception.\n' + ' Called when the default attribute access fails with ' + 'an\n' + ' "AttributeError" (either "__getattribute__()" raises ' + 'an\n' + ' "AttributeError" because *name* is not an instance ' + 'attribute or an\n' + ' attribute in the class tree for "self"; or ' + '"__get__()" of a *name*\n' + ' property raises "AttributeError"). This method ' + 'should either\n' + ' return the (computed) attribute value or raise an ' + '"AttributeError"\n' + ' exception.\n' '\n' ' Note that if the attribute is found through the ' 'normal mechanism,\n' @@ -615,17 +757,17 @@ '\n' ' def __setattr__(self, attr, value):\n' " print(f'Setting {attr}...')\n" - ' setattr(self, attr, value)\n' + ' super().__setattr__(attr, value)\n' '\n' ' sys.modules[__name__].__class__ = VerboseModule\n' '\n' 'Note: Defining module "__getattr__" and setting module ' '"__class__"\n' ' only affect lookups made using the attribute access ' - 'syntax --\n' + 'syntax ?\n' ' directly accessing the module globals (whether by code ' 'within the\n' - " module, or via a reference to the module's globals " + ' module, or via a reference to the module?s globals ' 'dictionary) is\n' ' unaffected.\n' '\n' @@ -650,13 +792,12 @@ 'containing the method (a so-called *descriptor* class) ' 'appears in an\n' '*owner* class (the descriptor must be in either the ' - "owner's class\n" + 'owner?s class\n' 'dictionary or in the class dictionary for one of its ' 'parents). In the\n' - 'examples below, "the attribute" refers to the attribute ' + 'examples below, ?the attribute? refers to the attribute ' 'whose name is\n' - "the key of the property in the owner class' " - '"__dict__".\n' + 'the key of the property in the owner class? "__dict__".\n' '\n' 'object.__get__(self, instance, owner)\n' '\n' @@ -713,8 +854,8 @@ '====================\n' '\n' 'In general, a descriptor is an object attribute with ' - '"binding\n' - 'behavior", one whose attribute access has been ' + '?binding\n' + 'behavior?, one whose attribute access has been ' 'overridden by methods\n' 'in the descriptor protocol: "__get__()", "__set__()", ' 'and\n' @@ -724,7 +865,7 @@ '\n' 'The default behavior for attribute access is to get, ' 'set, or delete\n' - "the attribute from an object's dictionary. For instance, " + 'the attribute from an object?s dictionary. For instance, ' '"a.x" has a\n' 'lookup chain starting with "a.__dict__[\'x\']", then\n' '"type(a).__dict__[\'x\']", and continuing through the ' @@ -779,7 +920,7 @@ 'does not define "__get__()", then accessing the ' 'attribute will return\n' 'the descriptor object itself unless there is a value in ' - "the object's\n" + 'the object?s\n' 'instance dictionary. If the descriptor defines ' '"__set__()" and/or\n' '"__delete__()", it is a data descriptor; if it defines ' @@ -900,7 +1041,7 @@ '\n' '* Nonempty *__slots__* does not work for classes derived ' 'from\n' - ' "variable-length" built-in types such as "int", ' + ' ?variable-length? built-in types such as "int", ' '"bytes" and "tuple".\n' '\n' '* Any non-string iterable may be assigned to ' @@ -1027,7 +1168,7 @@ 'operators:\n' '\n' ' m_expr ::= u_expr | m_expr "*" u_expr | m_expr "@" m_expr |\n' - ' m_expr "//" u_expr| m_expr "/" u_expr |\n' + ' m_expr "//" u_expr | m_expr "/" u_expr |\n' ' m_expr "%" u_expr\n' ' a_expr ::= m_expr | a_expr "+" m_expr | a_expr "-" m_expr\n' '\n' @@ -1052,7 +1193,7 @@ 'while\n' 'floor division of integers results in an integer; the result is ' 'that\n' - "of mathematical division with the 'floor' function applied to the\n" + 'of mathematical division with the ?floor? function applied to the\n' 'result. Division by zero raises the "ZeroDivisionError" ' 'exception.\n' '\n' @@ -1128,10 +1269,10 @@ '************\n' '\n' 'Code objects are used by the implementation to ' - 'represent "pseudo-\n' - 'compiled" executable Python code such as a function ' + 'represent ?pseudo-\n' + 'compiled? executable Python code such as a function ' 'body. They differ\n' - "from function objects because they don't contain a " + 'from function objects because they don?t contain a ' 'reference to their\n' 'global execution environment. Code objects are ' 'returned by the built-\n' @@ -1162,7 +1303,7 @@ 'bltin-null-object': 'The Null Object\n' '***************\n' '\n' - "This object is returned by functions that don't " + 'This object is returned by functions that don?t ' 'explicitly return a\n' 'value. It supports no special operations. There is ' 'exactly one null\n' @@ -1175,7 +1316,7 @@ '************\n' '\n' 'Type objects represent the various object types. An ' - "object's type is\n" + 'object?s type is\n' 'accessed by the built-in function "type()". There are ' 'no special\n' 'operations on types. The standard module "types" ' @@ -1218,7 +1359,7 @@ 'is\n' 'returned.\n' '\n' - '(Note that neither "and" nor "or" restrict the value and type ' + 'Note that neither "and" nor "or" restrict the value and type ' 'they\n' 'return to "False" and "True", but rather return the last ' 'evaluated\n' @@ -1258,7 +1399,7 @@ '\n' 'object.__call__(self[, args...])\n' '\n' - ' Called when the instance is "called" as a function; if ' + ' Called when the instance is ?called? as a function; if ' 'this method\n' ' is defined, "x(arg1, arg2, ...)" is a shorthand for\n' ' "x.__call__(arg1, arg2, ...)".\n', @@ -1318,7 +1459,7 @@ 'values are calculated, once, when the function is defined; thus, a\n' 'mutable object such as a list or dictionary used as default value ' 'will\n' - "be shared by all calls that don't specify an argument value for " + 'be shared by all calls that don?t specify an argument value for ' 'the\n' 'corresponding slot; this should usually be avoided.) If there are ' 'any\n' @@ -1331,7 +1472,7 @@ '**CPython implementation detail:** An implementation may provide\n' 'built-in functions whose positional parameters do not have names, ' 'even\n' - "if they are 'named' for the purpose of documentation, and which\n" + 'if they are ?named? for the purpose of documentation, and which\n' 'therefore cannot be supplied by keyword. In CPython, this is the ' 'case\n' 'for functions implemented in C that use "PyArg_ParseTuple()" to ' @@ -1363,16 +1504,17 @@ 'must evaluate to an *iterable*. Elements from these iterables are\n' 'treated as if they were additional positional arguments. For the ' 'call\n' - '"f(x1, x2, *y, x3, x4)", if *y* evaluates to a sequence *y1*, ...,\n' - '*yM*, this is equivalent to a call with M+4 positional arguments ' - '*x1*,\n' - '*x2*, *y1*, ..., *yM*, *x3*, *x4*.\n' + '"f(x1, x2, *y, x3, x4)", if *y* evaluates to a sequence *y1*, ?, ' + '*yM*,\n' + 'this is equivalent to a call with M+4 positional arguments *x1*, ' + '*x2*,\n' + '*y1*, ?, *yM*, *x3*, *x4*.\n' '\n' 'A consequence of this is that although the "*expression" syntax ' 'may\n' 'appear *after* explicit keyword arguments, it is processed ' '*before*\n' - 'the keyword arguments (and any "**expression" arguments -- see ' + 'the keyword arguments (and any "**expression" arguments ? see ' 'below).\n' 'So:\n' '\n' @@ -1419,7 +1561,7 @@ 'exception. How this value is computed depends on the type of the\n' 'callable object.\n' '\n' - 'If it is---\n' + 'If it is?\n' '\n' 'a user-defined function:\n' ' The code block for the function is executed, passing it the\n' @@ -1478,12 +1620,12 @@ ' class Foo(object):\n' ' pass\n' '\n' - "The class's suite is then executed in a new execution frame (see\n" + 'The class?s suite is then executed in a new execution frame (see\n' 'Naming and binding), using a newly created local namespace and the\n' 'original global namespace. (Usually, the suite contains mostly\n' - "function definitions.) When the class's suite finishes execution, " + 'function definitions.) When the class?s suite finishes execution, ' 'its\n' - 'execution frame is discarded but its local namespace is saved. [4] ' + 'execution frame is discarded but its local namespace is saved. [3] ' 'A\n' 'class object is then created using the inheritance list for the ' 'base\n' @@ -1493,7 +1635,7 @@ 'namespace.\n' '\n' 'The order in which attributes are defined in the class body is\n' - 'preserved in the new class\'s "__dict__". Note that this is ' + 'preserved in the new class?s "__dict__". Note that this is ' 'reliable\n' 'only right after the class is created and only for classes that ' 'were\n' @@ -1517,13 +1659,13 @@ 'for\n' 'function decorators. The result is then bound to the class name.\n' '\n' - "**Programmer's note:** Variables defined in the class definition " + '**Programmer?s note:** Variables defined in the class definition ' 'are\n' 'class attributes; they are shared by instances. Instance ' 'attributes\n' 'can be set in a method with "self.name = value". Both class and\n' 'instance attributes are accessible through the notation ' - '""self.name"",\n' + '?"self.name"?,\n' 'and an instance attribute hides a class attribute with the same ' 'name\n' 'when accessed in this way. Class attributes can be used as ' @@ -1533,8 +1675,18 @@ 'unexpected results. Descriptors can be used to create instance\n' 'variables with different implementation details.\n' '\n' - 'See also: **PEP 3115** - Metaclasses in Python 3 **PEP 3129** -\n' - ' Class Decorators\n', + 'See also:\n' + '\n' + ' **PEP 3115** - Metaclasses in Python 3000\n' + ' The proposal that changed the declaration of metaclasses to ' + 'the\n' + ' current syntax, and the semantics for how classes with\n' + ' metaclasses are constructed.\n' + '\n' + ' **PEP 3129** - Class Decorators\n' + ' The proposal that added class decorators. Function and ' + 'method\n' + ' decorators were introduced in **PEP 318**.\n', 'comparisons': 'Comparisons\n' '***********\n' '\n' @@ -1546,7 +1698,7 @@ 'the\n' 'interpretation that is conventional in mathematics:\n' '\n' - ' comparison ::= or_expr ( comp_operator or_expr )*\n' + ' comparison ::= or_expr (comp_operator or_expr)*\n' ' comp_operator ::= "<" | ">" | "==" | ">=" | "<=" | "!="\n' ' | "is" ["not"] | ["not"] "in"\n' '\n' @@ -1560,15 +1712,15 @@ 'y" is\n' 'found to be false).\n' '\n' - 'Formally, if *a*, *b*, *c*, ..., *y*, *z* are expressions and ' + 'Formally, if *a*, *b*, *c*, ?, *y*, *z* are expressions and ' '*op1*,\n' - '*op2*, ..., *opN* are comparison operators, then "a op1 b op2 ' - 'c ... y\n' + '*op2*, ?, *opN* are comparison operators, then "a op1 b op2 c ' + '... y\n' 'opN z" is equivalent to "a op1 b and b op2 c and ... y opN ' 'z", except\n' 'that each expression is evaluated at most once.\n' '\n' - 'Note that "a op1 b op2 c" doesn\'t imply any kind of ' + 'Note that "a op1 b op2 c" doesn?t imply any kind of ' 'comparison between\n' '*a* and *c*, so that, e.g., "x < y > z" is perfectly legal ' '(though\n' @@ -1589,7 +1741,7 @@ 'rather\n' 'abstract notion in Python: For example, there is no canonical ' 'access\n' - "method for an object's value. Also, there is no requirement " + 'method for an object?s value. Also, there is no requirement ' 'that the\n' 'value of an object should be constructed in a particular way, ' 'e.g.\n' @@ -1643,7 +1795,7 @@ 'most\n' 'important built-in types.\n' '\n' - '* Numbers of built-in numeric types (Numeric Types --- int, ' + '* Numbers of built-in numeric types (Numeric Types ? int, ' 'float,\n' ' complex) and of the standard library types ' '"fractions.Fraction" and\n' @@ -1657,16 +1809,15 @@ 'precision.\n' '\n' ' The not-a-number values "float(\'NaN\')" and ' - '"Decimal(\'NaN\')" are\n' - ' special. They are identical to themselves ("x is x" is ' - 'true) but\n' - ' are not equal to themselves ("x == x" is false). ' - 'Additionally,\n' - ' comparing any number to a not-a-number value will return ' - '"False".\n' - ' For example, both "3 < float(\'NaN\')" and "float(\'NaN\') ' - '< 3" will\n' - ' return "False".\n' + '"decimal.Decimal(\'NaN\')"\n' + ' are special. Any ordered comparison of a number to a ' + 'not-a-number\n' + ' value is false. A counter-intuitive implication is that ' + 'not-a-number\n' + ' values are not equal to themselves. For example, if "x =\n' + ' float(\'NaN\')", "3 < x", "x < 3", "x == x", "x != x" are ' + 'all false.\n' + ' This behavior is compliant with IEEE 754.\n' '\n' '* Binary sequences (instances of "bytes" or "bytearray") can ' 'be\n' @@ -1930,9 +2081,9 @@ 'compound\n' 'statements.\n' '\n' - "A compound statement consists of one or more 'clauses.' A " + 'A compound statement consists of one or more ?clauses.? A ' 'clause\n' - "consists of a header and a 'suite.' The clause headers of a\n" + 'consists of a header and a ?suite.? The clause headers of a\n' 'particular compound statement are all at the same indentation ' 'level.\n' 'Each clause header begins with a uniquely identifying keyword ' @@ -1940,12 +2091,12 @@ 'with a colon. A suite is a group of statements controlled by a\n' 'clause. A suite can be one or more semicolon-separated simple\n' 'statements on the same line as the header, following the ' - "header's\n" + 'header?s\n' 'colon, or it can be one or more indented statements on ' 'subsequent\n' 'lines. Only the latter form of a suite can contain nested ' 'compound\n' - "statements; the following is illegal, mostly because it wouldn't " + 'statements; the following is illegal, mostly because it wouldn?t ' 'be\n' 'clear to which "if" clause a following "else" clause would ' 'belong:\n' @@ -1982,7 +2133,7 @@ '"DEDENT". Also note that optional continuation clauses always ' 'begin\n' 'with a keyword that cannot start a statement, thus there are no\n' - 'ambiguities (the \'dangling "else"\' problem is solved in Python ' + 'ambiguities (the ?dangling "else"? problem is solved in Python ' 'by\n' 'requiring nested "if" statements to be indented).\n' '\n' @@ -1997,7 +2148,7 @@ 'The "if" statement is used for conditional execution:\n' '\n' ' if_stmt ::= "if" expression ":" suite\n' - ' ( "elif" expression ":" suite )*\n' + ' ("elif" expression ":" suite)*\n' ' ["else" ":" suite]\n' '\n' 'It selects exactly one of the suites by evaluating the ' @@ -2033,7 +2184,7 @@ '\n' 'A "break" statement executed in the first suite terminates the ' 'loop\n' - 'without executing the "else" clause\'s suite. A "continue" ' + 'without executing the "else" clause?s suite. A "continue" ' 'statement\n' 'executed in the first suite skips the rest of the suite and goes ' 'back\n' @@ -2072,7 +2223,7 @@ '\n' 'A "break" statement executed in the first suite terminates the ' 'loop\n' - 'without executing the "else" clause\'s suite. A "continue" ' + 'without executing the "else" clause?s suite. A "continue" ' 'statement\n' 'executed in the first suite skips the rest of the suite and ' 'continues\n' @@ -2080,7 +2231,7 @@ 'next\n' 'item.\n' '\n' - 'The for-loop makes assignments to the variables(s) in the target ' + 'The for-loop makes assignments to the variables in the target ' 'list.\n' 'This overwrites all previous assignments to those variables ' 'including\n' @@ -2099,14 +2250,14 @@ 'to at\n' 'all by the loop. Hint: the built-in function "range()" returns ' 'an\n' - "iterator of integers suitable to emulate the effect of Pascal's " + 'iterator of integers suitable to emulate the effect of Pascal?s ' '"for i\n' ':= a to b do"; e.g., "list(range(3))" returns the list "[0, 1, ' '2]".\n' '\n' 'Note: There is a subtlety when the sequence is being modified by ' 'the\n' - ' loop (this can only occur for mutable sequences, i.e. lists). ' + ' loop (this can only occur for mutable sequences, e.g. lists). ' 'An\n' ' internal counter is used to keep track of which item is used ' 'next,\n' @@ -2161,7 +2312,7 @@ 'expression\n' 'is evaluated, and the clause matches the exception if the ' 'resulting\n' - 'object is "compatible" with the exception. An object is ' + 'object is ?compatible? with the exception. An object is ' 'compatible\n' 'with an exception if it is the class or a base class of the ' 'exception\n' @@ -2188,7 +2339,7 @@ 'assigned to\n' 'the target specified after the "as" keyword in that except ' 'clause, if\n' - "present, and the except clause's suite is executed. All except\n" + 'present, and the except clause?s suite is executed. All except\n' 'clauses must have an executable block. When the end of this ' 'block is\n' 'reached, execution continues normally after the entire try ' @@ -2224,7 +2375,7 @@ 'alive\n' 'until the next garbage collection occurs.\n' '\n' - "Before an except clause's suite is executed, details about the\n" + 'Before an except clause?s suite is executed, details about the\n' 'exception are stored in the "sys" module and can be accessed ' 'via\n' '"sys.exc_info()". "sys.exc_info()" returns a 3-tuple consisting ' @@ -2239,14 +2390,16 @@ 'returning\n' 'from a function that handled an exception.\n' '\n' - 'The optional "else" clause is executed if and when control flows ' - 'off\n' - 'the end of the "try" clause. [2] Exceptions in the "else" clause ' + 'The optional "else" clause is executed if the control flow ' + 'leaves the\n' + '"try" suite, no exception was raised, and no "return", ' + '"continue", or\n' + '"break" statement was executed. Exceptions in the "else" clause ' 'are\n' 'not handled by the preceding "except" clauses.\n' '\n' - 'If "finally" is present, it specifies a \'cleanup\' handler. ' - 'The "try"\n' + 'If "finally" is present, it specifies a ?cleanup? handler. The ' + '"try"\n' 'clause is executed, including any "except" and "else" clauses. ' 'If an\n' 'exception occurs in any of the clauses and is not handled, the\n' @@ -2258,9 +2411,9 @@ 'saved\n' 'exception is set as the context of the new exception. If the ' '"finally"\n' - 'clause executes a "return" or "break" statement, the saved ' - 'exception\n' - 'is discarded:\n' + 'clause executes a "return", "break" or "continue" statement, the ' + 'saved\n' + 'exception is discarded:\n' '\n' ' >>> def f():\n' ' ... try:\n' @@ -2277,13 +2430,9 @@ '\n' 'When a "return", "break" or "continue" statement is executed in ' 'the\n' - '"try" suite of a "try"..."finally" statement, the "finally" ' - 'clause is\n' - 'also executed \'on the way out.\' A "continue" statement is ' - 'illegal in\n' - 'the "finally" clause. (The reason is a problem with the current\n' - 'implementation --- this restriction may be lifted in the ' - 'future).\n' + '"try" suite of a "try"?"finally" statement, the "finally" clause ' + 'is\n' + 'also executed ?on the way out.?\n' '\n' 'The return value of a function is determined by the last ' '"return"\n' @@ -2307,6 +2456,11 @@ 'generate\n' 'exceptions may be found in section The raise statement.\n' '\n' + 'Changed in version 3.8: Prior to Python 3.8, a "continue" ' + 'statement\n' + 'was illegal in the "finally" clause due to a problem with the\n' + 'implementation.\n' + '\n' '\n' 'The "with" statement\n' '====================\n' @@ -2315,14 +2469,14 @@ 'with\n' 'methods defined by a context manager (see section With ' 'Statement\n' - 'Context Managers). This allows common ' - '"try"..."except"..."finally"\n' - 'usage patterns to be encapsulated for convenient reuse.\n' + 'Context Managers). This allows common "try"?"except"?"finally" ' + 'usage\n' + 'patterns to be encapsulated for convenient reuse.\n' '\n' ' with_stmt ::= "with" with_item ("," with_item)* ":" suite\n' ' with_item ::= expression ["as" target]\n' '\n' - 'The execution of the "with" statement with one "item" proceeds ' + 'The execution of the "with" statement with one ?item? proceeds ' 'as\n' 'follows:\n' '\n' @@ -2330,9 +2484,9 @@ '"with_item")\n' ' is evaluated to obtain a context manager.\n' '\n' - '2. The context manager\'s "__exit__()" is loaded for later use.\n' + '2. The context manager?s "__exit__()" is loaded for later use.\n' '\n' - '3. The context manager\'s "__enter__()" method is invoked.\n' + '3. The context manager?s "__enter__()" method is invoked.\n' '\n' '4. If a target was included in the "with" statement, the return\n' ' value from "__enter__()" is assigned to it.\n' @@ -2349,8 +2503,7 @@ '\n' '5. The suite is executed.\n' '\n' - '6. The context manager\'s "__exit__()" method is invoked. If ' - 'an\n' + '6. The context manager?s "__exit__()" method is invoked. If an\n' ' exception caused the suite to be exited, its type, value, ' 'and\n' ' traceback are passed as arguments to "__exit__()". Otherwise, ' @@ -2390,7 +2543,7 @@ '\n' 'See also:\n' '\n' - ' **PEP 343** - The "with" statement\n' + ' **PEP 343** - The ?with? statement\n' ' The specification, background, and examples for the Python ' '"with"\n' ' statement.\n' @@ -2404,7 +2557,8 @@ 'section The standard type hierarchy):\n' '\n' ' funcdef ::= [decorators] "def" funcname "(" ' - '[parameter_list] ")" ["->" expression] ":" suite\n' + '[parameter_list] ")"\n' + ' ["->" expression] ":" suite\n' ' decorators ::= decorator+\n' ' decorator ::= "@" dotted_name ["(" ' '[argument_list [","]] ")"] NEWLINE\n' @@ -2430,7 +2584,7 @@ '\n' 'The function definition does not execute the function body; this ' 'gets\n' - 'executed only when the function is called. [3]\n' + 'executed only when the function is called. [2]\n' '\n' 'A function definition may be wrapped by one or more *decorator*\n' 'expressions. Decorator expressions are evaluated when the ' @@ -2459,25 +2613,24 @@ '"func".\n' '\n' 'When one or more *parameters* have the form *parameter* "="\n' - '*expression*, the function is said to have "default parameter ' - 'values."\n' + '*expression*, the function is said to have ?default parameter ' + 'values.?\n' 'For a parameter with a default value, the corresponding ' '*argument* may\n' - "be omitted from a call, in which case the parameter's default " + 'be omitted from a call, in which case the parameter?s default ' 'value is\n' 'substituted. If a parameter has a default value, all following\n' - 'parameters up until the ""*"" must also have a default value --- ' - 'this\n' - 'is a syntactic restriction that is not expressed by the ' - 'grammar.\n' + 'parameters up until the ?"*"? must also have a default value ? ' + 'this is\n' + 'a syntactic restriction that is not expressed by the grammar.\n' '\n' '**Default parameter values are evaluated from left to right when ' 'the\n' 'function definition is executed.** This means that the ' 'expression is\n' 'evaluated once, when the function is defined, and that the same ' - '"pre-\n' - 'computed" value is used for each call. This is especially ' + '?pre-\n' + 'computed? value is used for each call. This is especially ' 'important\n' 'to understand when a default parameter is a mutable object, such ' 'as a\n' @@ -2503,44 +2656,44 @@ 'mentioned in\n' 'the parameter list, either from position arguments, from ' 'keyword\n' - 'arguments, or from default values. If the form ""*identifier"" ' + 'arguments, or from default values. If the form ?"*identifier"? ' 'is\n' 'present, it is initialized to a tuple receiving any excess ' 'positional\n' 'parameters, defaulting to the empty tuple. If the form\n' - '""**identifier"" is present, it is initialized to a new ordered\n' + '?"**identifier"? is present, it is initialized to a new ordered\n' 'mapping receiving any excess keyword arguments, defaulting to a ' 'new\n' - 'empty mapping of the same type. Parameters after ""*"" or\n' - '""*identifier"" are keyword-only parameters and may only be ' + 'empty mapping of the same type. Parameters after ?"*"? or\n' + '?"*identifier"? are keyword-only parameters and may only be ' 'passed\n' 'used keyword arguments.\n' '\n' - 'Parameters may have annotations of the form "": expression"" ' - 'following\n' - 'the parameter name. Any parameter may have an annotation even ' - 'those\n' - 'of the form "*identifier" or "**identifier". Functions may ' - 'have\n' - '"return" annotation of the form ""-> expression"" after the ' - 'parameter\n' - 'list. These annotations can be any valid Python expression. ' - 'The\n' - 'presence of annotations does not change the semantics of a ' - 'function.\n' - 'The annotation values are available as values of a dictionary ' - 'keyed by\n' - 'the parameters\' names in the "__annotations__" attribute of ' + 'Parameters may have an *annotation* of the form ?": ' + 'expression"?\n' + 'following the parameter name. Any parameter may have an ' + 'annotation,\n' + 'even those of the form "*identifier" or "**identifier". ' + 'Functions may\n' + 'have ?return? annotation of the form ?"-> expression"? after ' 'the\n' - 'function object. If the "annotations" import from "__future__" ' - 'is\n' - 'used, annotations are preserved as strings at runtime which ' - 'enables\n' - 'postponed evaluation. Otherwise, they are evaluated when the ' - 'function\n' - 'definition is executed. In this case annotations may be ' - 'evaluated in\n' - 'a different order than they appear in the source code.\n' + 'parameter list. These annotations can be any valid Python ' + 'expression.\n' + 'The presence of annotations does not change the semantics of a\n' + 'function. The annotation values are available as values of a\n' + 'dictionary keyed by the parameters? names in the ' + '"__annotations__"\n' + 'attribute of the function object. If the "annotations" import ' + 'from\n' + '"__future__" is used, annotations are preserved as strings at ' + 'runtime\n' + 'which enables postponed evaluation. Otherwise, they are ' + 'evaluated\n' + 'when the function definition is executed. In this case ' + 'annotations\n' + 'may be evaluated in a different order than they appear in the ' + 'source\n' + 'code.\n' '\n' 'It is also possible to create anonymous functions (functions not ' 'bound\n' @@ -2549,16 +2702,16 @@ 'lambda\n' 'expression is merely a shorthand for a simplified function ' 'definition;\n' - 'a function defined in a ""def"" statement can be passed around ' + 'a function defined in a ?"def"? statement can be passed around ' 'or\n' 'assigned to another name just like a function defined by a ' 'lambda\n' - 'expression. The ""def"" form is actually more powerful since ' + 'expression. The ?"def"? form is actually more powerful since ' 'it\n' 'allows the execution of multiple statements and annotations.\n' '\n' - "**Programmer's note:** Functions are first-class objects. A " - '""def""\n' + '**Programmer?s note:** Functions are first-class objects. A ' + '?"def"?\n' 'statement executed inside a function definition defines a local\n' 'function that can be returned or passed around. Free variables ' 'used\n' @@ -2617,15 +2770,15 @@ ' class Foo(object):\n' ' pass\n' '\n' - "The class's suite is then executed in a new execution frame " + 'The class?s suite is then executed in a new execution frame ' '(see\n' 'Naming and binding), using a newly created local namespace and ' 'the\n' 'original global namespace. (Usually, the suite contains mostly\n' - "function definitions.) When the class's suite finishes " + 'function definitions.) When the class?s suite finishes ' 'execution, its\n' 'execution frame is discarded but its local namespace is saved. ' - '[4] A\n' + '[3] A\n' 'class object is then created using the inheritance list for the ' 'base\n' 'classes and the saved local namespace for the attribute ' @@ -2635,7 +2788,7 @@ 'namespace.\n' '\n' 'The order in which attributes are defined in the class body is\n' - 'preserved in the new class\'s "__dict__". Note that this is ' + 'preserved in the new class?s "__dict__". Note that this is ' 'reliable\n' 'only right after the class is created and only for classes that ' 'were\n' @@ -2660,14 +2813,14 @@ 'function decorators. The result is then bound to the class ' 'name.\n' '\n' - "**Programmer's note:** Variables defined in the class definition " + '**Programmer?s note:** Variables defined in the class definition ' 'are\n' 'class attributes; they are shared by instances. Instance ' 'attributes\n' 'can be set in a method with "self.name = value". Both class ' 'and\n' 'instance attributes are accessible through the notation ' - '""self.name"",\n' + '?"self.name"?,\n' 'and an instance attribute hides a class attribute with the same ' 'name\n' 'when accessed in this way. Class attributes can be used as ' @@ -2677,8 +2830,18 @@ 'unexpected results. Descriptors can be used to create instance\n' 'variables with different implementation details.\n' '\n' - 'See also: **PEP 3115** - Metaclasses in Python 3 **PEP 3129** -\n' - ' Class Decorators\n' + 'See also:\n' + '\n' + ' **PEP 3115** - Metaclasses in Python 3000\n' + ' The proposal that changed the declaration of metaclasses to ' + 'the\n' + ' current syntax, and the semantics for how classes with\n' + ' metaclasses are constructed.\n' + '\n' + ' **PEP 3129** - Class Decorators\n' + ' The proposal that added class decorators. Function and ' + 'method\n' + ' decorators were introduced in **PEP 318**.\n' '\n' '\n' 'Coroutines\n' @@ -2691,24 +2854,25 @@ '-----------------------------\n' '\n' ' async_funcdef ::= [decorators] "async" "def" funcname "(" ' - '[parameter_list] ")" ["->" expression] ":" suite\n' + '[parameter_list] ")"\n' + ' ["->" expression] ":" suite\n' '\n' 'Execution of Python coroutines can be suspended and resumed at ' 'many\n' - 'points (see *coroutine*). In the body of a coroutine, any ' - '"await" and\n' - '"async" identifiers become reserved keywords; "await" ' - 'expressions,\n' - '"async for" and "async with" can only be used in coroutine ' - 'bodies.\n' + 'points (see *coroutine*). Inside the body of a coroutine ' + 'function,\n' + '"await" and "async" identifiers become reserved keywords; ' + '"await"\n' + 'expressions, "async for" and "async with" can only be used in\n' + 'coroutine function bodies.\n' '\n' 'Functions defined with "async def" syntax are always coroutine\n' 'functions, even if they do not contain "await" or "async" ' 'keywords.\n' '\n' - 'It is a "SyntaxError" to use "yield from" expressions in "async ' - 'def"\n' - 'coroutines.\n' + 'It is a "SyntaxError" to use a "yield from" expression inside ' + 'the body\n' + 'of a coroutine function.\n' '\n' 'An example of a coroutine function:\n' '\n' @@ -2754,9 +2918,9 @@ '\n' 'See also "__aiter__()" and "__anext__()" for details.\n' '\n' - 'It is a "SyntaxError" to use "async for" statement outside of ' - 'an\n' - '"async def" function.\n' + 'It is a "SyntaxError" to use an "async for" statement outside ' + 'the body\n' + 'of a coroutine function.\n' '\n' '\n' 'The "async with" statement\n' @@ -2790,11 +2954,16 @@ '\n' 'See also "__aenter__()" and "__aexit__()" for details.\n' '\n' - 'It is a "SyntaxError" to use "async with" statement outside of ' - 'an\n' - '"async def" function.\n' + 'It is a "SyntaxError" to use an "async with" statement outside ' + 'the\n' + 'body of a coroutine function.\n' '\n' - 'See also: **PEP 492** - Coroutines with async and await syntax\n' + 'See also:\n' + '\n' + ' **PEP 492** - Coroutines with async and await syntax\n' + ' The proposal that made coroutines a proper standalone ' + 'concept in\n' + ' Python, and added supporting syntax.\n' '\n' '-[ Footnotes ]-\n' '\n' @@ -2803,20 +2972,14 @@ ' exception. That new exception causes the old one to be ' 'lost.\n' '\n' - '[2] Currently, control "flows off the end" except in the case ' - 'of\n' - ' an exception or the execution of a "return", "continue", or\n' - ' "break" statement.\n' - '\n' - '[3] A string literal appearing as the first statement in the\n' - ' function body is transformed into the function\'s "__doc__"\n' - " attribute and therefore the function's *docstring*.\n" + '[2] A string literal appearing as the first statement in the\n' + ' function body is transformed into the function?s "__doc__"\n' + ' attribute and therefore the function?s *docstring*.\n' '\n' - '[4] A string literal appearing as the first statement in the ' + '[3] A string literal appearing as the first statement in the ' 'class\n' - ' body is transformed into the namespace\'s "__doc__" item ' - 'and\n' - " therefore the class's *docstring*.\n", + ' body is transformed into the namespace?s "__doc__" item and\n' + ' therefore the class?s *docstring*.\n', 'context-managers': 'With Statement Context Managers\n' '*******************************\n' '\n' @@ -2846,7 +3009,7 @@ '\n' ' Enter the runtime context related to this object. The ' '"with"\n' - " statement will bind this method's return value to the " + ' statement will bind this method?s return value to the ' 'target(s)\n' ' specified in the "as" clause of the statement, if ' 'any.\n' @@ -2871,11 +3034,11 @@ '\n' ' Note that "__exit__()" methods should not reraise the ' 'passed-in\n' - " exception; this is the caller's responsibility.\n" + ' exception; this is the caller?s responsibility.\n' '\n' 'See also:\n' '\n' - ' **PEP 343** - The "with" statement\n' + ' **PEP 343** - The ?with? statement\n' ' The specification, background, and examples for the ' 'Python "with"\n' ' statement.\n', @@ -2886,11 +3049,10 @@ '\n' '"continue" may only occur syntactically nested in a "for" or ' '"while"\n' - 'loop, but not nested in a function or class definition or ' - '"finally"\n' - 'clause within that loop. It continues with the next cycle of ' - 'the\n' - 'nearest enclosing loop.\n' + 'loop, but not nested in a function or class definition within ' + 'that\n' + 'loop. It continues with the next cycle of the nearest enclosing ' + 'loop.\n' '\n' 'When "continue" passes control out of a "try" statement with a\n' '"finally" clause, that "finally" clause is executed before ' @@ -2901,7 +3063,7 @@ '\n' 'When a description of an arithmetic operator below uses the ' 'phrase\n' - '"the numeric arguments are converted to a common type," this ' + '?the numeric arguments are converted to a common type,? this ' 'means\n' 'that the operator implementation for built-in types works as ' 'follows:\n' @@ -2919,7 +3081,7 @@ '\n' 'Some additional rules apply for certain operators (e.g., a ' 'string as a\n' - "left argument to the '%' operator). Extensions must define " + 'left argument to the ?%? operator). Extensions must define ' 'their own\n' 'conversion behavior.\n', 'customization': 'Basic customization\n' @@ -2943,7 +3105,7 @@ '\n' ' Typical implementations create a new instance of the ' 'class by\n' - ' invoking the superclass\'s "__new__()" method using\n' + ' invoking the superclass?s "__new__()" method using\n' ' "super().__new__(cls[, ...])" with appropriate arguments ' 'and then\n' ' modifying the newly-created instance as necessary before ' @@ -2952,7 +3114,7 @@ '\n' ' If "__new__()" returns an instance of *cls*, then the ' 'new\n' - ' instance\'s "__init__()" method will be invoked like\n' + ' instance?s "__init__()" method will be invoked like\n' ' "__init__(self[, ...])", where *self* is the new ' 'instance and the\n' ' remaining arguments are the same as were passed to ' @@ -2960,7 +3122,7 @@ '\n' ' If "__new__()" does not return an instance of *cls*, ' 'then the new\n' - ' instance\'s "__init__()" method will not be invoked.\n' + ' instance?s "__init__()" method will not be invoked.\n' '\n' ' "__new__()" is intended mainly to allow subclasses of ' 'immutable\n' @@ -2978,7 +3140,7 @@ 'those\n' ' passed to the class constructor expression. If a base ' 'class has an\n' - ' "__init__()" method, the derived class\'s "__init__()" ' + ' "__init__()" method, the derived class?s "__init__()" ' 'method, if\n' ' any, must explicitly call it to ensure proper ' 'initialization of the\n' @@ -2999,7 +3161,7 @@ 'is also\n' ' called a finalizer or (improperly) a destructor. If a ' 'base class\n' - ' has a "__del__()" method, the derived class\'s ' + ' has a "__del__()" method, the derived class?s ' '"__del__()" method,\n' ' if any, must explicitly call it to ensure proper ' 'deletion of the\n' @@ -3020,11 +3182,11 @@ 'for\n' ' objects that still exist when the interpreter exits.\n' '\n' - ' Note: "del x" doesn\'t directly call "x.__del__()" --- ' - 'the former\n' + ' Note: "del x" doesn?t directly call "x.__del__()" ? the ' + 'former\n' ' decrements the reference count for "x" by one, and the ' 'latter is\n' - ' only called when "x"\'s reference count reaches zero.\n' + ' only called when "x"?s reference count reaches zero.\n' '\n' ' **CPython implementation detail:** It is possible for a ' 'reference\n' @@ -3036,7 +3198,7 @@ 'reference\n' ' cycles is when an exception has been caught in a local ' 'variable.\n' - " The frame's locals then reference the exception, which " + ' The frame?s locals then reference the exception, which ' 'references\n' ' its own traceback, which references the locals of all ' 'frames caught\n' @@ -3083,7 +3245,7 @@ 'object.__repr__(self)\n' '\n' ' Called by the "repr()" built-in function to compute the ' - '"official"\n' + '?official?\n' ' string representation of an object. If at all possible, ' 'this\n' ' should look like a valid Python expression that could be ' @@ -3097,7 +3259,7 @@ ' value must be a string object. If a class defines ' '"__repr__()" but\n' ' not "__str__()", then "__repr__()" is also used when an ' - '"informal"\n' + '?informal?\n' ' string representation of instances of that class is ' 'required.\n' '\n' @@ -3109,7 +3271,7 @@ '\n' ' Called by "str(object)" and the built-in functions ' '"format()" and\n' - ' "print()" to compute the "informal" or nicely printable ' + ' "print()" to compute the ?informal? or nicely printable ' 'string\n' ' representation of an object. The return value must be a ' 'string\n' @@ -3137,7 +3299,7 @@ 'extension,\n' ' evaluation of formatted string literals and the ' '"str.format()"\n' - ' method, to produce a "formatted" string representation ' + ' method, to produce a ?formatted? string representation ' 'of an\n' ' object. The "format_spec" argument is a string that ' 'contains a\n' @@ -3173,7 +3335,7 @@ 'object.__gt__(self, other)\n' 'object.__ge__(self, other)\n' '\n' - ' These are the so-called "rich comparison" methods. The\n' + ' These are the so-called ?rich comparison? methods. The\n' ' correspondence between operator symbols and method names ' 'is as\n' ' follows: "x>> import pdb\n' @@ -3423,11 +3585,11 @@ 'post-\n' 'mortem debugging (or after normal exit of the program), pdb ' 'will\n' - "restart the program. Automatic restarting preserves pdb's state " + 'restart the program. Automatic restarting preserves pdb?s state ' '(such\n' 'as breakpoints) and in most cases is more useful than quitting ' 'the\n' - "debugger upon program's exit.\n" + 'debugger upon program?s exit.\n' '\n' 'New in version 3.2: "pdb.py" now accepts a "-c" option that ' 'executes\n' @@ -3452,6 +3614,10 @@ 'running\n' 'without the debugger using the "continue" command.\n' '\n' + 'New in version 3.7: The built-in "breakpoint()", when called ' + 'with\n' + 'defaults, can be used instead of "import pdb; pdb.set_trace()".\n' + '\n' 'The typical usage to inspect a crashed program is:\n' '\n' ' >>> import pdb\n' @@ -3617,7 +3783,7 @@ 'the last command was a "list" command, the next 11 lines are ' 'listed.\n' '\n' - "Commands that the debugger doesn't recognize are assumed to be " + 'Commands that the debugger doesn?t recognize are assumed to be ' 'Python\n' 'statements and are executed in the context of the program being\n' 'debugged. Python statements can also be prefixed with an ' @@ -3628,7 +3794,7 @@ 'function.\n' 'When an exception occurs in such a statement, the exception name ' 'is\n' - "printed but the debugger's state is not changed.\n" + 'printed but the debugger?s state is not changed.\n' '\n' 'The debugger supports aliases. Aliases can have parameters ' 'which\n' @@ -3645,7 +3811,7 @@ 'first\n' '";;" pair, even if it is in the middle of a quoted string.\n' '\n' - 'If a file ".pdbrc" exists in the user\'s home directory or in ' + 'If a file ".pdbrc" exists in the user?s home directory or in ' 'the\n' 'current directory, it is read in and executed as if it had been ' 'typed\n' @@ -3701,7 +3867,7 @@ 'prefixed\n' ' with a filename and a colon, to specify a breakpoint in ' 'another\n' - " file (probably one that hasn't been loaded yet). The file " + ' file (probably one that hasn?t been loaded yet). The file ' 'is\n' ' searched on "sys.path". Note that each breakpoint is ' 'assigned a\n' @@ -3798,7 +3964,7 @@ '"continue",\n' ' "step", "next", "return", "jump", "quit" and their ' 'abbreviations)\n' - ' terminates the command "list" (as if that command was ' + ' terminates the command list (as if that command was ' 'immediately\n' ' followed by end). This is because any time you resume ' 'execution\n' @@ -3806,7 +3972,7 @@ ' breakpoint?which could have its own command list, leading to\n' ' ambiguities about which list to execute.\n' '\n' - " If you use the 'silent' command in the command list, the " + ' If you use the ?silent? command in the command list, the ' 'usual\n' ' message about stopping at a breakpoint is not printed. This ' 'may be\n' @@ -3865,13 +4031,13 @@ 'the\n' ' bottom-most frame. This lets you jump back and execute code ' 'again,\n' - " or jump forward to skip code that you don't want to run.\n" + ' or jump forward to skip code that you don?t want to run.\n' '\n' - ' It should be noted that not all jumps are allowed -- for ' - 'instance\n' - ' it is not possible to jump into the middle of a "for" loop or ' - 'out\n' - ' of a "finally" clause.\n' + ' It should be noted that not all jumps are allowed ? for ' + 'instance it\n' + ' is not possible to jump into the middle of a "for" loop or ' + 'out of a\n' + ' "finally" clause.\n' '\n' 'l(ist) [first[, last]]\n' '\n' @@ -3914,8 +4080,8 @@ ' value.\n' '\n' ' Note: "print()" can also be used, but is not a debugger ' - 'command\n' - ' --- this executes the Python "print()" function.\n' + 'command ?\n' + ' this executes the Python "print()" function.\n' '\n' 'pp expression\n' '\n' @@ -4085,7 +4251,7 @@ 'dictionary:\n' 'each key object is used as a key into the dictionary to store the\n' 'corresponding datum. This means that you can specify the same key\n' - "multiple times in the key/datum list, and the final dictionary's " + 'multiple times in the key/datum list, and the final dictionary?s ' 'value\n' 'for that key will be the last one given.\n' '\n' @@ -4099,7 +4265,7 @@ '\n' 'A dict comprehension, in contrast to list and set comprehensions,\n' 'needs two expressions separated with a colon followed by the usual\n' - '"for" and "if" clauses. When the comprehension is run, the ' + '?for? and ?if? clauses. When the comprehension is run, the ' 'resulting\n' 'key and value elements are inserted in the new dictionary in the ' 'order\n' @@ -4142,7 +4308,7 @@ 'The "if" statement is used for conditional execution:\n' '\n' ' if_stmt ::= "if" expression ":" suite\n' - ' ( "elif" expression ":" suite )*\n' + ' ("elif" expression ":" suite)*\n' ' ["else" ":" suite]\n' '\n' 'It selects exactly one of the suites by evaluating the expressions ' @@ -4173,7 +4339,7 @@ 'error (such as division by zero). A Python program can also\n' 'explicitly raise an exception with the "raise" statement. ' 'Exception\n' - 'handlers are specified with the "try" ... "except" statement. ' + 'handlers are specified with the "try" ? "except" statement. ' 'The\n' '"finally" clause of such a statement can be used to specify ' 'cleanup\n' @@ -4181,7 +4347,7 @@ 'whether an\n' 'exception occurred or not in the preceding code.\n' '\n' - 'Python uses the "termination" model of error handling: an ' + 'Python uses the ?termination? model of error handling: an ' 'exception\n' 'handler can find out what happened and continue execution at ' 'an outer\n' @@ -4249,7 +4415,7 @@ 'argument to the interpreter) is a code block. A script command ' '(a\n' 'command specified on the interpreter command line with the ' - "'**-c**'\n" + '"-c"\n' 'option) is a code block. The string argument passed to the ' 'built-in\n' 'functions "eval()" and "exec()" is a code block.\n' @@ -4258,7 +4424,7 @@ 'contains\n' 'some administrative information (used for debugging) and ' 'determines\n' - "where and how execution continues after the code block's " + 'where and how execution continues after the code block?s ' 'execution has\n' 'completed.\n' '\n' @@ -4333,7 +4499,7 @@ 'nearest\n' 'enclosing scope. The set of all such scopes visible to a code ' 'block\n' - "is called the block's *environment*.\n" + 'is called the block?s *environment*.\n' '\n' 'When a name is not found at all, a "NameError" exception is ' 'raised. If\n' @@ -4411,7 +4577,7 @@ 'the class. The scope of names defined in a class block is ' 'limited to\n' 'the class block; it does not extend to the code blocks of ' - 'methods --\n' + 'methods ?\n' 'this includes comprehensions and generator expressions since ' 'they are\n' 'implemented using a function scope. This means that the ' @@ -4439,7 +4605,7 @@ 'global\n' 'namespace; this should be a dictionary or a module (in the ' 'latter case\n' - "the module's dictionary is used). By default, when in the " + 'the module?s dictionary is used). By default, when in the ' '"__main__"\n' 'module, "__builtins__" is the built-in module "builtins"; when ' 'in any\n' @@ -4494,7 +4660,7 @@ 'error (such as division by zero). A Python program can also\n' 'explicitly raise an exception with the "raise" statement. ' 'Exception\n' - 'handlers are specified with the "try" ... "except" statement. ' + 'handlers are specified with the "try" ? "except" statement. ' 'The\n' '"finally" clause of such a statement can be used to specify ' 'cleanup\n' @@ -4502,7 +4668,7 @@ 'whether an\n' 'exception occurred or not in the preceding code.\n' '\n' - 'Python uses the "termination" model of error handling: an ' + 'Python uses the ?termination? model of error handling: an ' 'exception\n' 'handler can find out what happened and continue execution at an ' 'outer\n' @@ -4553,10 +4719,10 @@ 'exprlists': 'Expression lists\n' '****************\n' '\n' - ' expression_list ::= expression ( "," expression )* [","]\n' - ' starred_list ::= starred_item ( "," starred_item )* ' + ' expression_list ::= expression ("," expression)* [","]\n' + ' starred_list ::= starred_item ("," starred_item)* ' '[","]\n' - ' starred_expression ::= expression | ( starred_item "," )* ' + ' starred_expression ::= expression | (starred_item ",")* ' '[starred_item]\n' ' starred_item ::= expression | "*" or_expr\n' '\n' @@ -4582,7 +4748,7 @@ '(a.k.a. a\n' '*singleton*); it is optional in all other cases. A single ' 'expression\n' - "without a trailing comma doesn't create a tuple, but rather " + 'without a trailing comma doesn?t create a tuple, but rather ' 'yields the\n' 'value of that expression. (To create an empty tuple, use an ' 'empty pair\n' @@ -4643,15 +4809,13 @@ 'terminates.\n' '\n' 'A "break" statement executed in the first suite terminates the loop\n' - 'without executing the "else" clause\'s suite. A "continue" ' - 'statement\n' + 'without executing the "else" clause?s suite. A "continue" statement\n' 'executed in the first suite skips the rest of the suite and ' 'continues\n' 'with the next item, or with the "else" clause if there is no next\n' 'item.\n' '\n' - 'The for-loop makes assignments to the variables(s) in the target ' - 'list.\n' + 'The for-loop makes assignments to the variables in the target list.\n' 'This overwrites all previous assignments to those variables ' 'including\n' 'those made in the suite of the for-loop:\n' @@ -4666,12 +4830,12 @@ 'Names in the target list are not deleted when the loop is finished,\n' 'but if the sequence is empty, they will not have been assigned to at\n' 'all by the loop. Hint: the built-in function "range()" returns an\n' - 'iterator of integers suitable to emulate the effect of Pascal\'s "for ' + 'iterator of integers suitable to emulate the effect of Pascal?s "for ' 'i\n' ':= a to b do"; e.g., "list(range(3))" returns the list "[0, 1, 2]".\n' '\n' 'Note: There is a subtlety when the sequence is being modified by the\n' - ' loop (this can only occur for mutable sequences, i.e. lists). An\n' + ' loop (this can only occur for mutable sequences, e.g. lists). An\n' ' internal counter is used to keep track of which item is used next,\n' ' and this is incremented on each iteration. When this counter has\n' ' reached the length of the sequence the loop terminates. This ' @@ -4702,7 +4866,7 @@ 'are\n' 'differences.\n' '\n' - 'Format strings contain "replacement fields" surrounded by ' + 'Format strings contain ?replacement fields? surrounded by ' 'curly braces\n' '"{}". Anything that is not contained in braces is ' 'considered literal\n' @@ -4718,9 +4882,9 @@ 'conversion] [":" format_spec] "}"\n' ' field_name ::= arg_name ("." attribute_name | ' '"[" element_index "]")*\n' - ' arg_name ::= [identifier | integer]\n' + ' arg_name ::= [identifier | digit+]\n' ' attribute_name ::= identifier\n' - ' element_index ::= integer | index_string\n' + ' element_index ::= digit+ | index_string\n' ' index_string ::= +\n' ' conversion ::= "r" | "s" | "a"\n' @@ -4745,33 +4909,37 @@ '\n' 'The *field_name* itself begins with an *arg_name* that is ' 'either a\n' - "number or a keyword. If it's a number, it refers to a " + 'number or a keyword. If it?s a number, it refers to a ' 'positional\n' - "argument, and if it's a keyword, it refers to a named " + 'argument, and if it?s a keyword, it refers to a named ' 'keyword\n' 'argument. If the numerical arg_names in a format string ' 'are 0, 1, 2,\n' - '... in sequence, they can all be omitted (not just some) ' - 'and the\n' - 'numbers 0, 1, 2, ... will be automatically inserted in that ' - 'order.\n' - 'Because *arg_name* is not quote-delimited, it is not ' - 'possible to\n' - 'specify arbitrary dictionary keys (e.g., the strings ' - '"\'10\'" or\n' - '"\':-]\'") within a format string. The *arg_name* can be ' - 'followed by any\n' - 'number of index or attribute expressions. An expression of ' - 'the form\n' - '"\'.name\'" selects the named attribute using "getattr()", ' - 'while an\n' - 'expression of the form "\'[index]\'" does an index lookup ' - 'using\n' - '"__getitem__()".\n' + '? in sequence, they can all be omitted (not just some) and ' + 'the numbers\n' + '0, 1, 2, ? will be automatically inserted in that order. ' + 'Because\n' + '*arg_name* is not quote-delimited, it is not possible to ' + 'specify\n' + 'arbitrary dictionary keys (e.g., the strings "\'10\'" or ' + '"\':-]\'") within\n' + 'a format string. The *arg_name* can be followed by any ' + 'number of index\n' + 'or attribute expressions. An expression of the form ' + '"\'.name\'" selects\n' + 'the named attribute using "getattr()", while an expression ' + 'of the form\n' + '"\'[index]\'" does an index lookup using "__getitem__()".\n' '\n' 'Changed in version 3.1: The positional argument specifiers ' 'can be\n' - 'omitted, so "\'{} {}\'" is equivalent to "\'{0} {1}\'".\n' + 'omitted for "str.format()", so "\'{} {}\'.format(a, b)" is ' + 'equivalent to\n' + '"\'{0} {1}\'.format(a, b)".\n' + '\n' + 'Changed in version 3.4: The positional argument specifiers ' + 'can be\n' + 'omitted for "Formatter".\n' '\n' 'Some simple format string examples:\n' '\n' @@ -4822,7 +4990,7 @@ 'alignment,\n' 'padding, decimal precision and so on. Each value type can ' 'define its\n' - 'own "formatting mini-language" or interpretation of the ' + 'own ?formatting mini-language? or interpretation of the ' '*format_spec*.\n' '\n' 'Most built-in types support a common formatting ' @@ -4848,7 +5016,7 @@ 'Format Specification Mini-Language\n' '==================================\n' '\n' - '"Format specifications" are used within replacement fields ' + '?Format specifications? are used within replacement fields ' 'contained\n' 'within a format string to define how individual values are ' 'presented\n' @@ -4879,9 +5047,9 @@ ' fill ::= \n' ' align ::= "<" | ">" | "=" | "^"\n' ' sign ::= "+" | "-" | " "\n' - ' width ::= integer\n' + ' width ::= digit+\n' ' grouping_option ::= "_" | ","\n' - ' precision ::= integer\n' + ' precision ::= digit+\n' ' type ::= "b" | "c" | "d" | "e" | "E" | "f" | ' '"F" | "g" | "G" | "n" | "o" | "s" | "x" | "X" | "%"\n' '\n' @@ -4890,13 +5058,13 @@ 'character that can be any character and defaults to a space ' 'if\n' 'omitted. It is not possible to use a literal curly brace ' - '(""{"" or\n' - '""}"") as the *fill* character in a formatted string ' + '(?"{"? or\n' + '?"}"?) as the *fill* character in a formatted string ' 'literal or when\n' 'using the "str.format()" method. However, it is possible ' 'to insert a\n' 'curly brace with a nested replacement field. This ' - "limitation doesn't\n" + 'limitation doesn?t\n' 'affect the "format()" function.\n' '\n' 'The meaning of the various alignment options is as ' @@ -4925,10 +5093,10 @@ 'the sign (if any) |\n' ' | | but before the digits. This is used for ' 'printing fields |\n' - " | | in the form '+000000120'. This alignment " + ' | | in the form ?+000000120?. This alignment ' 'option is only |\n' ' | | valid for numeric types. It becomes the ' - "default when '0' |\n" + 'default when ?0? |\n' ' | | immediately precedes the field ' 'width. |\n' ' ' @@ -4977,7 +5145,7 @@ ' ' '+-----------+------------------------------------------------------------+\n' '\n' - 'The "\'#\'" option causes the "alternate form" to be used ' + 'The "\'#\'" option causes the ?alternate form? to be used ' 'for the\n' 'conversion. The alternate form is defined differently for ' 'different\n' @@ -5146,7 +5314,7 @@ '+===========+============================================================+\n' ' | "\'e\'" | Exponent notation. Prints the number in ' 'scientific |\n' - " | | notation using the letter 'e' to indicate " + ' | | notation using the letter ?e? to indicate ' 'the exponent. |\n' ' | | The default precision is ' '"6". |\n' @@ -5154,20 +5322,20 @@ '+-----------+------------------------------------------------------------+\n' ' | "\'E\'" | Exponent notation. Same as "\'e\'" ' 'except it uses an upper |\n' - " | | case 'E' as the separator " + ' | | case ?E? as the separator ' 'character. |\n' ' ' '+-----------+------------------------------------------------------------+\n' - ' | "\'f\'" | Fixed point. Displays the number as a ' - 'fixed-point number. |\n' - ' | | The default precision is ' - '"6". |\n' + ' | "\'f\'" | Fixed-point notation. Displays the ' + 'number as a fixed-point |\n' + ' | | number. The default precision is ' + '"6". |\n' ' ' '+-----------+------------------------------------------------------------+\n' - ' | "\'F\'" | Fixed point. Same as "\'f\'", but ' - 'converts "nan" to "NAN" |\n' - ' | | and "inf" to ' - '"INF". |\n' + ' | "\'F\'" | Fixed-point notation. Same as "\'f\'", ' + 'but converts "nan" to |\n' + ' | | "NAN" and "inf" to ' + '"INF". |\n' ' ' '+-----------+------------------------------------------------------------+\n' ' | "\'g\'" | General format. For a given precision ' @@ -5262,7 +5430,7 @@ '\n' 'The new format syntax also supports new and different ' 'options, shown\n' - 'in the follow examples.\n' + 'in the following examples.\n' '\n' 'Accessing arguments by position:\n' '\n' @@ -5291,7 +5459,7 @@ "{longitude}'.format(**coord)\n" " 'Coordinates: 37.24N, -115.81W'\n" '\n' - "Accessing arguments' attributes:\n" + 'Accessing arguments? attributes:\n' '\n' ' >>> c = 3-5j\n' " >>> ('The complex number {0} is formed from the real " @@ -5309,7 +5477,7 @@ ' >>> str(Point(4, 2))\n' " 'Point(4, 2)'\n" '\n' - "Accessing arguments' items:\n" + 'Accessing arguments? items:\n' '\n' ' >>> coord = (3, 5)\n' " >>> 'X: {0[0]}; Y: {0[1]}'.format(coord)\n" @@ -5394,8 +5562,7 @@ ' 3232235521\n' ' >>>\n' ' >>> width = 5\n' - ' >>> for num in range(5,12): #doctest: ' - '+NORMALIZE_WHITESPACE\n' + ' >>> for num in range(5,12): \n' " ... for base in 'dXob':\n" " ... print('{0:{width}{base}}'.format(num, " "base=base, width=width), end=' ')\n" @@ -5416,7 +5583,8 @@ 'section The standard type hierarchy):\n' '\n' ' funcdef ::= [decorators] "def" funcname "(" ' - '[parameter_list] ")" ["->" expression] ":" suite\n' + '[parameter_list] ")"\n' + ' ["->" expression] ":" suite\n' ' decorators ::= decorator+\n' ' decorator ::= "@" dotted_name ["(" ' '[argument_list [","]] ")"] NEWLINE\n' @@ -5442,7 +5610,7 @@ '\n' 'The function definition does not execute the function body; this ' 'gets\n' - 'executed only when the function is called. [3]\n' + 'executed only when the function is called. [2]\n' '\n' 'A function definition may be wrapped by one or more *decorator*\n' 'expressions. Decorator expressions are evaluated when the ' @@ -5471,25 +5639,24 @@ '"func".\n' '\n' 'When one or more *parameters* have the form *parameter* "="\n' - '*expression*, the function is said to have "default parameter ' - 'values."\n' + '*expression*, the function is said to have ?default parameter ' + 'values.?\n' 'For a parameter with a default value, the corresponding ' '*argument* may\n' - "be omitted from a call, in which case the parameter's default " + 'be omitted from a call, in which case the parameter?s default ' 'value is\n' 'substituted. If a parameter has a default value, all following\n' - 'parameters up until the ""*"" must also have a default value --- ' - 'this\n' - 'is a syntactic restriction that is not expressed by the ' - 'grammar.\n' + 'parameters up until the ?"*"? must also have a default value ? ' + 'this is\n' + 'a syntactic restriction that is not expressed by the grammar.\n' '\n' '**Default parameter values are evaluated from left to right when ' 'the\n' 'function definition is executed.** This means that the ' 'expression is\n' 'evaluated once, when the function is defined, and that the same ' - '"pre-\n' - 'computed" value is used for each call. This is especially ' + '?pre-\n' + 'computed? value is used for each call. This is especially ' 'important\n' 'to understand when a default parameter is a mutable object, such ' 'as a\n' @@ -5515,44 +5682,44 @@ 'mentioned in\n' 'the parameter list, either from position arguments, from ' 'keyword\n' - 'arguments, or from default values. If the form ""*identifier"" ' + 'arguments, or from default values. If the form ?"*identifier"? ' 'is\n' 'present, it is initialized to a tuple receiving any excess ' 'positional\n' 'parameters, defaulting to the empty tuple. If the form\n' - '""**identifier"" is present, it is initialized to a new ordered\n' + '?"**identifier"? is present, it is initialized to a new ordered\n' 'mapping receiving any excess keyword arguments, defaulting to a ' 'new\n' - 'empty mapping of the same type. Parameters after ""*"" or\n' - '""*identifier"" are keyword-only parameters and may only be ' + 'empty mapping of the same type. Parameters after ?"*"? or\n' + '?"*identifier"? are keyword-only parameters and may only be ' 'passed\n' 'used keyword arguments.\n' '\n' - 'Parameters may have annotations of the form "": expression"" ' - 'following\n' - 'the parameter name. Any parameter may have an annotation even ' - 'those\n' - 'of the form "*identifier" or "**identifier". Functions may ' - 'have\n' - '"return" annotation of the form ""-> expression"" after the ' - 'parameter\n' - 'list. These annotations can be any valid Python expression. ' - 'The\n' - 'presence of annotations does not change the semantics of a ' - 'function.\n' - 'The annotation values are available as values of a dictionary ' - 'keyed by\n' - 'the parameters\' names in the "__annotations__" attribute of ' + 'Parameters may have an *annotation* of the form ?": ' + 'expression"?\n' + 'following the parameter name. Any parameter may have an ' + 'annotation,\n' + 'even those of the form "*identifier" or "**identifier". ' + 'Functions may\n' + 'have ?return? annotation of the form ?"-> expression"? after ' 'the\n' - 'function object. If the "annotations" import from "__future__" ' - 'is\n' - 'used, annotations are preserved as strings at runtime which ' - 'enables\n' - 'postponed evaluation. Otherwise, they are evaluated when the ' - 'function\n' - 'definition is executed. In this case annotations may be ' - 'evaluated in\n' - 'a different order than they appear in the source code.\n' + 'parameter list. These annotations can be any valid Python ' + 'expression.\n' + 'The presence of annotations does not change the semantics of a\n' + 'function. The annotation values are available as values of a\n' + 'dictionary keyed by the parameters? names in the ' + '"__annotations__"\n' + 'attribute of the function object. If the "annotations" import ' + 'from\n' + '"__future__" is used, annotations are preserved as strings at ' + 'runtime\n' + 'which enables postponed evaluation. Otherwise, they are ' + 'evaluated\n' + 'when the function definition is executed. In this case ' + 'annotations\n' + 'may be evaluated in a different order than they appear in the ' + 'source\n' + 'code.\n' '\n' 'It is also possible to create anonymous functions (functions not ' 'bound\n' @@ -5561,16 +5728,16 @@ 'lambda\n' 'expression is merely a shorthand for a simplified function ' 'definition;\n' - 'a function defined in a ""def"" statement can be passed around ' + 'a function defined in a ?"def"? statement can be passed around ' 'or\n' 'assigned to another name just like a function defined by a ' 'lambda\n' - 'expression. The ""def"" form is actually more powerful since ' + 'expression. The ?"def"? form is actually more powerful since ' 'it\n' 'allows the execution of multiple statements and annotations.\n' '\n' - "**Programmer's note:** Functions are first-class objects. A " - '""def""\n' + '**Programmer?s note:** Functions are first-class objects. A ' + '?"def"?\n' 'statement executed inside a function definition defines a local\n' 'function that can be returned or passed around. Free variables ' 'used\n' @@ -5629,8 +5796,7 @@ 'change\n' 'the meaning of the program.\n' '\n' - '**Programmer\'s note:** "global" is a directive to the parser. ' - 'It\n' + '**Programmer?s note:** "global" is a directive to the parser. It\n' 'applies only to code parsed at the same time as the "global"\n' 'statement. In particular, a "global" statement contained in a ' 'string\n' @@ -5687,7 +5853,7 @@ 'within the\n' ' context of a class definition, are re-written to use a ' 'mangled form\n' - ' to help avoid name clashes between "private" attributes of ' + ' to help avoid name clashes between ?private? attributes of ' 'base and\n' ' derived classes. See section Identifiers (Names).\n', 'identifiers': 'Identifiers and keywords\n' @@ -5835,7 +6001,7 @@ 'within the\n' ' context of a class definition, are re-written to use a ' 'mangled form\n' - ' to help avoid name clashes between "private" attributes of ' + ' to help avoid name clashes between ?private? attributes of ' 'base and\n' ' derived classes. See section Identifiers (Names).\n', 'if': 'The "if" statement\n' @@ -5844,7 +6010,7 @@ 'The "if" statement is used for conditional execution:\n' '\n' ' if_stmt ::= "if" expression ":" suite\n' - ' ( "elif" expression ":" suite )*\n' + ' ("elif" expression ":" suite)*\n' ' ["else" ":" suite]\n' '\n' 'It selects exactly one of the suites by evaluating the expressions ' @@ -5877,18 +6043,17 @@ 'import': 'The "import" statement\n' '**********************\n' '\n' - ' import_stmt ::= "import" module ["as" name] ( "," module ' - '["as" name] )*\n' + ' import_stmt ::= "import" module ["as" identifier] ("," ' + 'module ["as" identifier])*\n' ' | "from" relative_module "import" identifier ' - '["as" name]\n' - ' ( "," identifier ["as" name] )*\n' + '["as" identifier]\n' + ' ("," identifier ["as" identifier])*\n' ' | "from" relative_module "import" "(" ' - 'identifier ["as" name]\n' - ' ( "," identifier ["as" name] )* [","] ")"\n' + 'identifier ["as" identifier]\n' + ' ("," identifier ["as" identifier])* [","] ")"\n' ' | "from" module "import" "*"\n' ' module ::= (identifier ".")* identifier\n' ' relative_module ::= "."* module | "."+\n' - ' name ::= identifier\n' '\n' 'The basic import statement (no "from" clause) is executed in two\n' 'steps:\n' @@ -5916,7 +6081,7 @@ 'either\n' 'that the module could not be located, *or* that an error occurred\n' 'while initializing the module, which includes execution of the\n' - "module's code.\n" + 'module?s code.\n' '\n' 'If the requested module is retrieved successfully, it will be ' 'made\n' @@ -5927,7 +6092,7 @@ '\n' '* If no other name is specified, and the module being imported is ' 'a\n' - " top level module, the module's name is bound in the local " + ' top level module, the module?s name is bound in the local ' 'namespace\n' ' as a reference to the imported module\n' '\n' @@ -5980,7 +6145,7 @@ '\n' 'The *public names* defined by a module are determined by checking ' 'the\n' - 'module\'s namespace for a variable named "__all__"; if defined, it ' + 'module?s namespace for a variable named "__all__"; if defined, it ' 'must\n' 'be a sequence of strings which are names defined or imported by ' 'that\n' @@ -5988,7 +6153,7 @@ 'and\n' 'are required to exist. If "__all__" is not defined, the set of ' 'public\n' - "names includes all names found in the module's namespace which do " + 'names includes all names found in the module?s namespace which do ' 'not\n' 'begin with an underscore character ("\'_\'"). "__all__" should ' 'contain\n' @@ -5998,8 +6163,7 @@ 'were\n' 'imported and used within the module).\n' '\n' - 'The wild card form of import --- "from module import *" --- is ' - 'only\n' + 'The wild card form of import ? "from module import *" ? is only\n' 'allowed at the module level. Attempting to use it in class or\n' 'function definitions will raise a "SyntaxError".\n' '\n' @@ -6049,14 +6213,13 @@ 'allows use of the new features on a per-module basis before the\n' 'release in which the feature becomes standard.\n' '\n' - ' future_statement ::= "from" "__future__" "import" feature ["as" ' - 'name]\n' - ' ("," feature ["as" name])*\n' - ' | "from" "__future__" "import" "(" feature ' - '["as" name]\n' - ' ("," feature ["as" name])* [","] ")"\n' - ' feature ::= identifier\n' - ' name ::= identifier\n' + ' future_stmt ::= "from" "__future__" "import" feature ["as" ' + 'identifier]\n' + ' ("," feature ["as" identifier])*\n' + ' | "from" "__future__" "import" "(" feature ' + '["as" identifier]\n' + ' ("," feature ["as" identifier])* [","] ")"\n' + ' feature ::= identifier\n' '\n' 'A future statement must appear near the top of the module. The ' 'only\n' @@ -6112,7 +6275,7 @@ '\n' ' import __future__ [as name]\n' '\n' - "That is not a future statement; it's an ordinary import statement " + 'That is not a future statement; it?s an ordinary import statement ' 'with\n' 'no special semantics or syntax restrictions.\n' '\n' @@ -6123,8 +6286,7 @@ 'the\n' 'future statement. This can be controlled by optional arguments ' 'to\n' - '"compile()" --- see the documentation of that function for ' - 'details.\n' + '"compile()" ? see the documentation of that function for details.\n' '\n' 'A future statement typed at an interactive interpreter prompt ' 'will\n' @@ -6225,19 +6387,20 @@ 'lambda': 'Lambdas\n' '*******\n' '\n' - ' lambda_expr ::= "lambda" [parameter_list]: expression\n' - ' lambda_expr_nocond ::= "lambda" [parameter_list]: ' + ' lambda_expr ::= "lambda" [parameter_list] ":" ' + 'expression\n' + ' lambda_expr_nocond ::= "lambda" [parameter_list] ":" ' 'expression_nocond\n' '\n' 'Lambda expressions (sometimes called lambda forms) are used to ' 'create\n' - 'anonymous functions. The expression "lambda arguments: ' + 'anonymous functions. The expression "lambda parameters: ' 'expression"\n' 'yields a function object. The unnamed object behaves like a ' 'function\n' 'object defined with:\n' '\n' - ' def (arguments):\n' + ' def (parameters):\n' ' return expression\n' '\n' 'See section Function definitions for the syntax of parameter ' @@ -6330,7 +6493,7 @@ 'nearest\n' 'enclosing scope. The set of all such scopes visible to a code ' 'block\n' - "is called the block's *environment*.\n" + 'is called the block?s *environment*.\n' '\n' 'When a name is not found at all, a "NameError" exception is ' 'raised. If\n' @@ -6404,7 +6567,7 @@ 'the class. The scope of names defined in a class block is limited ' 'to\n' 'the class block; it does not extend to the code blocks of methods ' - '--\n' + '?\n' 'this includes comprehensions and generator expressions since they ' 'are\n' 'implemented using a function scope. This means that the ' @@ -6431,7 +6594,7 @@ 'global\n' 'namespace; this should be a dictionary or a module (in the latter ' 'case\n' - "the module's dictionary is used). By default, when in the " + 'the module?s dictionary is used). By default, when in the ' '"__main__"\n' 'module, "__builtins__" is the built-in module "builtins"; when in ' 'any\n' @@ -6507,7 +6670,7 @@ '\n' 'Note that numeric literals do not include a sign; a phrase like ' '"-1"\n' - 'is actually an expression composed of the unary operator \'"-"\' ' + 'is actually an expression composed of the unary operator ?"-"? ' 'and the\n' 'literal "1".\n', 'numeric-types': 'Emulating numeric types\n' @@ -6597,15 +6760,15 @@ '"__rpow__()" (the\n' ' coercion rules would become too complicated).\n' '\n' - " Note: If the right operand's type is a subclass of the " + ' Note: If the right operand?s type is a subclass of the ' 'left\n' - " operand's type and that subclass provides the " + ' operand?s type and that subclass provides the ' 'reflected method\n' ' for the operation, this method will be called before ' 'the left\n' - " operand's non-reflected method. This behavior allows " + ' operand?s non-reflected method. This behavior allows ' 'subclasses\n' - " to override their ancestors' operations.\n" + ' to override their ancestors? operations.\n' '\n' 'object.__iadd__(self, other)\n' 'object.__isub__(self, other)\n' @@ -6643,7 +6806,7 @@ 'certain\n' ' situations, augmented assignment can result in ' 'unexpected errors\n' - " (see Why does a_tuple[i] += ['item'] raise an exception " + ' (see Why does a_tuple[i] += [?item?] raise an exception ' 'when the\n' ' addition works?), but this behavior is in fact part of ' 'the data\n' @@ -6661,13 +6824,11 @@ 'object.__complex__(self)\n' 'object.__int__(self)\n' 'object.__float__(self)\n' - 'object.__round__(self[, n])\n' '\n' ' Called to implement the built-in functions "complex()", ' - '"int()",\n' - ' "float()" and "round()". Should return a value of the ' - 'appropriate\n' - ' type.\n' + '"int()" and\n' + ' "float()". Should return a value of the appropriate ' + 'type.\n' '\n' 'object.__index__(self)\n' '\n' @@ -6685,22 +6846,40 @@ 'when\n' ' "__index__()" is defined "__int__()" should also be ' 'defined, and\n' - ' both should return the same value.\n', + ' both should return the same value.\n' + '\n' + 'object.__round__(self[, ndigits])\n' + 'object.__trunc__(self)\n' + 'object.__floor__(self)\n' + 'object.__ceil__(self)\n' + '\n' + ' Called to implement the built-in function "round()" and ' + '"math"\n' + ' functions "trunc()", "floor()" and "ceil()". Unless ' + '*ndigits* is\n' + ' passed to "__round__()" all these methods should return ' + 'the value\n' + ' of the object truncated to an "Integral" (typically an ' + '"int").\n' + '\n' + ' If "__int__()" is not defined then the built-in function ' + '"int()"\n' + ' falls back to "__trunc__()".\n', 'objects': 'Objects, values and types\n' '*************************\n' '\n' - "*Objects* are Python's abstraction for data. All data in a " + '*Objects* are Python?s abstraction for data. All data in a ' 'Python\n' 'program is represented by objects or by relations between ' 'objects. (In\n' - 'a sense, and in conformance to Von Neumann\'s model of a "stored\n' - 'program computer," code is also represented by objects.)\n' + 'a sense, and in conformance to Von Neumann?s model of a ?stored\n' + 'program computer,? code is also represented by objects.)\n' '\n' - "Every object has an identity, a type and a value. An object's\n" + 'Every object has an identity, a type and a value. An object?s\n' '*identity* never changes once it has been created; you may think ' 'of it\n' - 'as the object\'s address in memory. The \'"is"\' operator ' - 'compares the\n' + 'as the object?s address in memory. The ?"is"? operator compares ' + 'the\n' 'identity of two objects; the "id()" function returns an integer\n' 'representing its identity.\n' '\n' @@ -6708,14 +6887,14 @@ 'memory\n' 'address where "x" is stored.\n' '\n' - "An object's type determines the operations that the object " + 'An object?s type determines the operations that the object ' 'supports\n' - '(e.g., "does it have a length?") and also defines the possible ' + '(e.g., ?does it have a length??) and also defines the possible ' 'values\n' 'for objects of that type. The "type()" function returns an ' - "object's\n" + 'object?s\n' 'type (which is an object itself). Like its identity, an ' - "object's\n" + 'object?s\n' '*type* is also unchangeable. [1]\n' '\n' 'The *value* of some objects can change. Objects whose value can\n' @@ -6724,14 +6903,14 @@ 'once they are created are called *immutable*. (The value of an\n' 'immutable container object that contains a reference to a ' 'mutable\n' - "object can change when the latter's value is changed; however " + 'object can change when the latter?s value is changed; however ' 'the\n' 'container is still considered immutable, because the collection ' 'of\n' 'objects it contains cannot be changed. So, immutability is not\n' 'strictly the same as having an unchangeable value, it is more ' 'subtle.)\n' - "An object's mutability is determined by its type; for instance,\n" + 'An object?s mutability is determined by its type; for instance,\n' 'numbers, strings and tuples are immutable, while dictionaries ' 'and\n' 'lists are mutable.\n' @@ -6739,9 +6918,9 @@ 'Objects are never explicitly destroyed; however, when they ' 'become\n' 'unreachable they may be garbage-collected. An implementation is\n' - 'allowed to postpone garbage collection or omit it altogether --- ' - 'it is\n' - 'a matter of implementation quality how garbage collection is\n' + 'allowed to postpone garbage collection or omit it altogether ? it ' + 'is a\n' + 'matter of implementation quality how garbage collection is\n' 'implemented, as long as no objects are collected that are still\n' 'reachable.\n' '\n' @@ -6761,13 +6940,14 @@ '(so\n' 'you should always close files explicitly).\n' '\n' - "Note that the use of the implementation's tracing or debugging\n" + 'Note that the use of the implementation?s tracing or debugging\n' 'facilities may keep objects alive that would normally be ' 'collectable.\n' - 'Also note that catching an exception with a \'"try"..."except"\'\n' - 'statement may keep objects alive.\n' + 'Also note that catching an exception with a ?"try"?"except"? ' + 'statement\n' + 'may keep objects alive.\n' '\n' - 'Some objects contain references to "external" resources such as ' + 'Some objects contain references to ?external? resources such as ' 'open\n' 'files or windows. It is understood that these resources are ' 'freed\n' @@ -6778,14 +6958,13 @@ 'release the external resource, usually a "close()" method. ' 'Programs\n' 'are strongly recommended to explicitly close such objects. The\n' - '\'"try"..."finally"\' statement and the \'"with"\' statement ' - 'provide\n' + '?"try"?"finally"? statement and the ?"with"? statement provide\n' 'convenient ways to do this.\n' '\n' 'Some objects contain references to other objects; these are ' 'called\n' '*containers*. Examples of containers are tuples, lists and\n' - "dictionaries. The references are part of a container's value. " + 'dictionaries. The references are part of a container?s value. ' 'In\n' 'most cases, when we talk about the value of a container, we imply ' 'the\n' @@ -6842,7 +7021,7 @@ '| "lambda" | ' 'Lambda expression |\n' '+-------------------------------------------------+---------------------------------------+\n' - '| "if" -- "else" | ' + '| "if" ? "else" | ' 'Conditional expression |\n' '+-------------------------------------------------+---------------------------------------+\n' '| "or" | ' @@ -6925,7 +7104,7 @@ 'application.\n' '\n' '[2] If x is very close to an exact integer multiple of ' - "y, it's\n" + 'y, it?s\n' ' possible for "x//y" to be one larger than ' '"(x-x%y)//y" due to\n' ' rounding. In such cases, Python returns the latter ' @@ -6936,8 +7115,8 @@ '\n' '[3] The Unicode standard distinguishes between *code ' 'points* (e.g.\n' - ' U+0041) and *abstract characters* (e.g. "LATIN ' - 'CAPITAL LETTER A").\n' + ' U+0041) and *abstract characters* (e.g. ?LATIN ' + 'CAPITAL LETTER A?).\n' ' While most abstract characters in Unicode are only ' 'represented\n' ' using one code point, there is a number of abstract ' @@ -6945,8 +7124,8 @@ ' that can in addition be represented using a sequence ' 'of more than\n' ' one code point. For example, the abstract character ' - '"LATIN\n' - ' CAPITAL LETTER C WITH CEDILLA" can be represented as ' + '?LATIN\n' + ' CAPITAL LETTER C WITH CEDILLA? can be represented as ' 'a single\n' ' *precomposed character* at code position U+00C7, or ' 'as a sequence\n' @@ -6962,9 +7141,9 @@ 'to humans. For\n' ' example, ""\\u00C7" == "\\u0043\\u0327"" is "False", ' 'even though both\n' - ' strings represent the same abstract character "LATIN ' + ' strings represent the same abstract character ?LATIN ' 'CAPITAL\n' - ' LETTER C WITH CEDILLA".\n' + ' LETTER C WITH CEDILLA?.\n' '\n' ' To compare strings at the level of abstract ' 'characters (that is,\n' @@ -6994,10 +7173,11 @@ '\n' ' pass_stmt ::= "pass"\n' '\n' - '"pass" is a null operation --- when it is executed, nothing ' - 'happens.\n' - 'It is useful as a placeholder when a statement is required\n' - 'syntactically, but no code needs to be executed, for example:\n' + '"pass" is a null operation ? when it is executed, nothing happens. ' + 'It\n' + 'is useful as a placeholder when a statement is required ' + 'syntactically,\n' + 'but no code needs to be executed, for example:\n' '\n' ' def f(arg): pass # a function that does nothing (yet)\n' '\n' @@ -7010,7 +7190,7 @@ 'The\n' 'syntax is:\n' '\n' - ' power ::= ( await_expr | primary ) ["**" u_expr]\n' + ' power ::= (await_expr | primary) ["**" u_expr]\n' '\n' 'Thus, in an unparenthesized sequence of power and unary operators, ' 'the\n' @@ -7053,7 +7233,7 @@ '"BaseException". If it is a class, the exception instance will be\n' 'obtained when needed by instantiating the class with no arguments.\n' '\n' - "The *type* of the exception is the exception instance's class, the\n" + 'The *type* of the exception is the exception instance?s class, the\n' '*value* is the instance itself.\n' '\n' 'A traceback object is normally created automatically when an ' @@ -7099,7 +7279,7 @@ 'inside\n' 'an exception handler or a "finally" clause: the previous exception ' 'is\n' - 'then attached as the new exception\'s "__context__" attribute:\n' + 'then attached as the new exception?s "__context__" attribute:\n' '\n' ' >>> try:\n' ' ... print(1 / 0)\n' @@ -7199,7 +7379,7 @@ '"clear()",\n' '"setdefault()", "pop()", "popitem()", "copy()", and ' '"update()"\n' - "behaving similar to those for Python's standard dictionary " + 'behaving similar to those for Python?s standard dictionary ' 'objects.\n' 'The "collections.abc" module provides a "MutableMapping" ' 'abstract base\n' @@ -7225,7 +7405,7 @@ 'the\n' '"__contains__()" method to allow efficient use of the "in" ' 'operator;\n' - 'for mappings, "in" should search the mapping\'s keys; for ' + 'for mappings, "in" should search the mapping?s keys; for ' 'sequences, it\n' 'should search through the values. It is further ' 'recommended that both\n' @@ -7243,7 +7423,7 @@ 'Should return\n' ' the length of the object, an integer ">=" 0. Also, an ' 'object that\n' - ' doesn\'t define a "__bool__()" method and whose ' + ' doesn?t define a "__bool__()" method and whose ' '"__len__()" method\n' ' returns zero is considered to be false in a Boolean ' 'context.\n' @@ -7311,12 +7491,6 @@ 'of the\n' ' sequence.\n' '\n' - 'object.__missing__(self, key)\n' - '\n' - ' Called by "dict"."__getitem__()" to implement ' - '"self[key]" for dict\n' - ' subclasses when key is not in the dictionary.\n' - '\n' 'object.__setitem__(self, key, value)\n' '\n' ' Called to implement assignment to "self[key]". Same ' @@ -7344,6 +7518,12 @@ ' raised for improper *key* values as for the ' '"__getitem__()" method.\n' '\n' + 'object.__missing__(self, key)\n' + '\n' + ' Called by "dict"."__getitem__()" to implement ' + '"self[key]" for dict\n' + ' subclasses when key is not in the dictionary.\n' + '\n' 'object.__iter__(self)\n' '\n' ' This method is called when an iterator is required for ' @@ -7400,7 +7580,7 @@ 'values or\n' ' the key-item pairs.\n' '\n' - ' For objects that don\'t define "__contains__()", the ' + ' For objects that don?t define "__contains__()", the ' 'membership test\n' ' first tries iteration via "__iter__()", then the old ' 'sequence\n' @@ -7413,7 +7593,7 @@ 'The shifting operations have lower priority than the arithmetic\n' 'operations:\n' '\n' - ' shift_expr ::= a_expr | shift_expr ( "<<" | ">>" ) a_expr\n' + ' shift_expr ::= a_expr | shift_expr ("<<" | ">>") a_expr\n' '\n' 'These operators accept integers as arguments. They shift the ' 'first\n' @@ -7488,7 +7668,7 @@ 'object.__dict__\n' '\n' ' A dictionary or other mapping object used to store an ' - "object's\n" + 'object?s\n' ' (writable) attributes.\n' '\n' 'instance.__class__\n' @@ -7548,15 +7728,15 @@ 'to\n' ' "[1.0, 2.0]", and similarly for tuples.\n' '\n' - "[3] They must have since the parser can't tell the type of " + '[3] They must have since the parser can?t tell the type of ' 'the\n' ' operands.\n' '\n' '[4] Cased characters are those with general category ' 'property\n' - ' being one of "Lu" (Letter, uppercase), "Ll" (Letter, ' + ' being one of ?Lu? (Letter, uppercase), ?Ll? (Letter, ' 'lowercase),\n' - ' or "Lt" (Letter, titlecase).\n' + ' or ?Lt? (Letter, titlecase).\n' '\n' '[5] To format only a tuple you should therefore provide a\n' ' singleton tuple whose only element is the tuple to be ' @@ -7568,7 +7748,7 @@ 'special\n' 'syntax (such as arithmetic operations or subscripting and ' 'slicing) by\n' - "defining methods with special names. This is Python's " + 'defining methods with special names. This is Python?s ' 'approach to\n' '*operator overloading*, allowing classes to define their own ' 'behavior\n' @@ -7602,7 +7782,7 @@ 'elements, but\n' 'extracting a slice may not make sense. (One example of this ' 'is the\n' - '"NodeList" interface in the W3C\'s Document Object Model.)\n' + '"NodeList" interface in the W3C?s Document Object Model.)\n' '\n' '\n' 'Basic customization\n' @@ -7626,7 +7806,7 @@ '\n' ' Typical implementations create a new instance of the ' 'class by\n' - ' invoking the superclass\'s "__new__()" method using\n' + ' invoking the superclass?s "__new__()" method using\n' ' "super().__new__(cls[, ...])" with appropriate arguments ' 'and then\n' ' modifying the newly-created instance as necessary before ' @@ -7635,7 +7815,7 @@ '\n' ' If "__new__()" returns an instance of *cls*, then the ' 'new\n' - ' instance\'s "__init__()" method will be invoked like\n' + ' instance?s "__init__()" method will be invoked like\n' ' "__init__(self[, ...])", where *self* is the new instance ' 'and the\n' ' remaining arguments are the same as were passed to ' @@ -7643,7 +7823,7 @@ '\n' ' If "__new__()" does not return an instance of *cls*, then ' 'the new\n' - ' instance\'s "__init__()" method will not be invoked.\n' + ' instance?s "__init__()" method will not be invoked.\n' '\n' ' "__new__()" is intended mainly to allow subclasses of ' 'immutable\n' @@ -7661,7 +7841,7 @@ 'those\n' ' passed to the class constructor expression. If a base ' 'class has an\n' - ' "__init__()" method, the derived class\'s "__init__()" ' + ' "__init__()" method, the derived class?s "__init__()" ' 'method, if\n' ' any, must explicitly call it to ensure proper ' 'initialization of the\n' @@ -7682,8 +7862,8 @@ 'is also\n' ' called a finalizer or (improperly) a destructor. If a ' 'base class\n' - ' has a "__del__()" method, the derived class\'s ' - '"__del__()" method,\n' + ' has a "__del__()" method, the derived class?s "__del__()" ' + 'method,\n' ' if any, must explicitly call it to ensure proper deletion ' 'of the\n' ' base class part of the instance.\n' @@ -7703,11 +7883,11 @@ 'for\n' ' objects that still exist when the interpreter exits.\n' '\n' - ' Note: "del x" doesn\'t directly call "x.__del__()" --- ' - 'the former\n' + ' Note: "del x" doesn?t directly call "x.__del__()" ? the ' + 'former\n' ' decrements the reference count for "x" by one, and the ' 'latter is\n' - ' only called when "x"\'s reference count reaches zero.\n' + ' only called when "x"?s reference count reaches zero.\n' '\n' ' **CPython implementation detail:** It is possible for a ' 'reference\n' @@ -7719,7 +7899,7 @@ 'reference\n' ' cycles is when an exception has been caught in a local ' 'variable.\n' - " The frame's locals then reference the exception, which " + ' The frame?s locals then reference the exception, which ' 'references\n' ' its own traceback, which references the locals of all ' 'frames caught\n' @@ -7765,7 +7945,7 @@ 'object.__repr__(self)\n' '\n' ' Called by the "repr()" built-in function to compute the ' - '"official"\n' + '?official?\n' ' string representation of an object. If at all possible, ' 'this\n' ' should look like a valid Python expression that could be ' @@ -7779,7 +7959,7 @@ ' value must be a string object. If a class defines ' '"__repr__()" but\n' ' not "__str__()", then "__repr__()" is also used when an ' - '"informal"\n' + '?informal?\n' ' string representation of instances of that class is ' 'required.\n' '\n' @@ -7791,7 +7971,7 @@ '\n' ' Called by "str(object)" and the built-in functions ' '"format()" and\n' - ' "print()" to compute the "informal" or nicely printable ' + ' "print()" to compute the ?informal? or nicely printable ' 'string\n' ' representation of an object. The return value must be a ' 'string\n' @@ -7819,7 +7999,7 @@ 'extension,\n' ' evaluation of formatted string literals and the ' '"str.format()"\n' - ' method, to produce a "formatted" string representation of ' + ' method, to produce a ?formatted? string representation of ' 'an\n' ' object. The "format_spec" argument is a string that ' 'contains a\n' @@ -7855,7 +8035,7 @@ 'object.__gt__(self, other)\n' 'object.__ge__(self, other)\n' '\n' - ' These are the so-called "rich comparison" methods. The\n' + ' These are the so-called ?rich comparison? methods. The\n' ' correspondence between operator symbols and method names ' 'is as\n' ' follows: "x>> A.members\n' - " ('__module__', 'one', 'two', 'three', 'four')\n" - '\n' - 'When the class definition for *A* gets executed, the process ' - 'begins\n' - 'with calling the metaclass\'s "__prepare__()" method which ' - 'returns an\n' - 'empty "collections.OrderedDict". That mapping records the ' - 'methods and\n' - 'attributes of *A* as they are defined within the body of the ' - 'class\n' - 'statement. Once those definitions are executed, the ordered ' - 'dictionary\n' - 'is fully populated and the metaclass\'s "__new__()" method ' - 'gets\n' - 'invoked. That method builds the new type and it saves the ' - 'ordered\n' - 'dictionary keys in an attribute called "members".\n' - '\n' '\n' 'Customizing instance and subclass checks\n' '========================================\n' @@ -8819,7 +8979,7 @@ 'methods in\n' 'order to allow the addition of Abstract Base Classes (ABCs) ' 'as\n' - '"virtual base classes" to any class or type (including ' + '?virtual base classes? to any class or type (including ' 'built-in\n' 'types), including other ABCs.\n' '\n' @@ -8862,12 +9022,38 @@ ' module) to the language.\n' '\n' '\n' + 'Emulating generic types\n' + '=======================\n' + '\n' + 'One can implement the generic class syntax as specified by ' + '**PEP 484**\n' + '(for example "List[int]") by defining a special method\n' + '\n' + 'classmethod object.__class_getitem__(cls, key)\n' + '\n' + ' Return an object representing the specialization of a ' + 'generic class\n' + ' by type arguments found in *key*.\n' + '\n' + 'This method is looked up on the class object itself, and ' + 'when defined\n' + 'in the class body, this method is implicitly a class ' + 'method. Note,\n' + 'this mechanism is primarily reserved for use with static ' + 'type hints,\n' + 'other usage is discouraged.\n' + '\n' + 'See also: **PEP 560** - Core support for typing module and ' + 'generic\n' + ' types\n' + '\n' + '\n' 'Emulating callable objects\n' '==========================\n' '\n' 'object.__call__(self[, args...])\n' '\n' - ' Called when the instance is "called" as a function; if ' + ' Called when the instance is ?called? as a function; if ' 'this method\n' ' is defined, "x(arg1, arg2, ...)" is a shorthand for\n' ' "x.__call__(arg1, arg2, ...)".\n' @@ -8896,7 +9082,7 @@ '"clear()",\n' '"setdefault()", "pop()", "popitem()", "copy()", and ' '"update()"\n' - "behaving similar to those for Python's standard dictionary " + 'behaving similar to those for Python?s standard dictionary ' 'objects.\n' 'The "collections.abc" module provides a "MutableMapping" ' 'abstract base\n' @@ -8921,7 +9107,7 @@ 'recommended that both mappings and sequences implement the\n' '"__contains__()" method to allow efficient use of the "in" ' 'operator;\n' - 'for mappings, "in" should search the mapping\'s keys; for ' + 'for mappings, "in" should search the mapping?s keys; for ' 'sequences, it\n' 'should search through the values. It is further recommended ' 'that both\n' @@ -8939,7 +9125,7 @@ 'Should return\n' ' the length of the object, an integer ">=" 0. Also, an ' 'object that\n' - ' doesn\'t define a "__bool__()" method and whose ' + ' doesn?t define a "__bool__()" method and whose ' '"__len__()" method\n' ' returns zero is considered to be false in a Boolean ' 'context.\n' @@ -9006,12 +9192,6 @@ 'the\n' ' sequence.\n' '\n' - 'object.__missing__(self, key)\n' - '\n' - ' Called by "dict"."__getitem__()" to implement "self[key]" ' - 'for dict\n' - ' subclasses when key is not in the dictionary.\n' - '\n' 'object.__setitem__(self, key, value)\n' '\n' ' Called to implement assignment to "self[key]". Same note ' @@ -9039,6 +9219,12 @@ ' raised for improper *key* values as for the ' '"__getitem__()" method.\n' '\n' + 'object.__missing__(self, key)\n' + '\n' + ' Called by "dict"."__getitem__()" to implement "self[key]" ' + 'for dict\n' + ' subclasses when key is not in the dictionary.\n' + '\n' 'object.__iter__(self)\n' '\n' ' This method is called when an iterator is required for a ' @@ -9095,7 +9281,7 @@ 'values or\n' ' the key-item pairs.\n' '\n' - ' For objects that don\'t define "__contains__()", the ' + ' For objects that don?t define "__contains__()", the ' 'membership test\n' ' first tries iteration via "__iter__()", then the old ' 'sequence\n' @@ -9191,15 +9377,15 @@ '"__rpow__()" (the\n' ' coercion rules would become too complicated).\n' '\n' - " Note: If the right operand's type is a subclass of the " + ' Note: If the right operand?s type is a subclass of the ' 'left\n' - " operand's type and that subclass provides the reflected " + ' operand?s type and that subclass provides the reflected ' 'method\n' ' for the operation, this method will be called before ' 'the left\n' - " operand's non-reflected method. This behavior allows " + ' operand?s non-reflected method. This behavior allows ' 'subclasses\n' - " to override their ancestors' operations.\n" + ' to override their ancestors? operations.\n' '\n' 'object.__iadd__(self, other)\n' 'object.__isub__(self, other)\n' @@ -9237,7 +9423,7 @@ 'certain\n' ' situations, augmented assignment can result in unexpected ' 'errors\n' - " (see Why does a_tuple[i] += ['item'] raise an exception " + ' (see Why does a_tuple[i] += [?item?] raise an exception ' 'when the\n' ' addition works?), but this behavior is in fact part of ' 'the data\n' @@ -9255,13 +9441,11 @@ 'object.__complex__(self)\n' 'object.__int__(self)\n' 'object.__float__(self)\n' - 'object.__round__(self[, n])\n' '\n' ' Called to implement the built-in functions "complex()", ' - '"int()",\n' - ' "float()" and "round()". Should return a value of the ' - 'appropriate\n' - ' type.\n' + '"int()" and\n' + ' "float()". Should return a value of the appropriate ' + 'type.\n' '\n' 'object.__index__(self)\n' '\n' @@ -9281,6 +9465,24 @@ 'defined, and\n' ' both should return the same value.\n' '\n' + 'object.__round__(self[, ndigits])\n' + 'object.__trunc__(self)\n' + 'object.__floor__(self)\n' + 'object.__ceil__(self)\n' + '\n' + ' Called to implement the built-in function "round()" and ' + '"math"\n' + ' functions "trunc()", "floor()" and "ceil()". Unless ' + '*ndigits* is\n' + ' passed to "__round__()" all these methods should return ' + 'the value\n' + ' of the object truncated to an "Integral" (typically an ' + '"int").\n' + '\n' + ' If "__int__()" is not defined then the built-in function ' + '"int()"\n' + ' falls back to "__trunc__()".\n' + '\n' '\n' 'With Statement Context Managers\n' '===============================\n' @@ -9311,7 +9513,7 @@ '\n' ' Enter the runtime context related to this object. The ' '"with"\n' - " statement will bind this method's return value to the " + ' statement will bind this method?s return value to the ' 'target(s)\n' ' specified in the "as" clause of the statement, if any.\n' '\n' @@ -9335,11 +9537,11 @@ '\n' ' Note that "__exit__()" methods should not reraise the ' 'passed-in\n' - " exception; this is the caller's responsibility.\n" + ' exception; this is the caller?s responsibility.\n' '\n' 'See also:\n' '\n' - ' **PEP 343** - The "with" statement\n' + ' **PEP 343** - The ?with? statement\n' ' The specification, background, and examples for the ' 'Python "with"\n' ' statement.\n' @@ -9350,9 +9552,9 @@ '\n' 'For custom classes, implicit invocations of special methods ' 'are only\n' - "guaranteed to work correctly if defined on an object's type, " + 'guaranteed to work correctly if defined on an object?s type, ' 'not in\n' - "the object's instance dictionary. That behaviour is the " + 'the object?s instance dictionary. That behaviour is the ' 'reason why\n' 'the following code raises an exception:\n' '\n' @@ -9386,7 +9588,7 @@ '\n' 'Incorrectly attempting to invoke an unbound method of a ' 'class in this\n' - "way is sometimes referred to as 'metaclass confusion', and " + 'way is sometimes referred to as ?metaclass confusion?, and ' 'is avoided\n' 'by bypassing the instance when looking up special methods:\n' '\n' @@ -9399,7 +9601,7 @@ 'interest of\n' 'correctness, implicit special method lookup generally also ' 'bypasses\n' - 'the "__getattribute__()" method even of the object\'s ' + 'the "__getattribute__()" method even of the object?s ' 'metaclass:\n' '\n' ' >>> class Meta(type):\n' @@ -9615,20 +9817,21 @@ ' formatting options that can be specified in format ' 'strings.\n' '\n' - ' Note: When formatting a number ("int", "float", "float" ' - 'and\n' - ' subclasses) with the "n" type (ex: ' - '"\'{:n}\'.format(1234)"), the\n' - ' function sets temporarily the "LC_CTYPE" locale to ' - 'the\n' - ' "LC_NUMERIC" locale to decode "decimal_point" and ' - '"thousands_sep"\n' - ' fields of "localeconv()" if they are non-ASCII or ' - 'longer than 1\n' - ' byte, and the "LC_NUMERIC" locale is different than ' - 'the\n' - ' "LC_CTYPE" locale. This temporary change affects ' - 'other threads.\n' + ' Note: When formatting a number ("int", "float", ' + '"complex",\n' + ' "decimal.Decimal" and subclasses) with the "n" type ' + '(ex:\n' + ' "\'{:n}\'.format(1234)"), the function temporarily ' + 'sets the\n' + ' "LC_CTYPE" locale to the "LC_NUMERIC" locale to ' + 'decode\n' + ' "decimal_point" and "thousands_sep" fields of ' + '"localeconv()" if\n' + ' they are non-ASCII or longer than 1 byte, and the ' + '"LC_NUMERIC"\n' + ' locale is different than the "LC_CTYPE" locale. This ' + 'temporary\n' + ' change affects other threads.\n' '\n' ' Changed in version 3.7: When formatting a number with ' 'the "n" type,\n' @@ -9679,11 +9882,11 @@ 'Alphabetic\n' ' characters are those characters defined in the Unicode ' 'character\n' - ' database as "Letter", i.e., those with general category ' + ' database as ?Letter?, i.e., those with general category ' 'property\n' - ' being one of "Lm", "Lt", "Lu", "Ll", or "Lo". Note ' + ' being one of ?Lm?, ?Lt?, ?Lu?, ?Ll?, or ?Lo?. Note ' 'that this is\n' - ' different from the "Alphabetic" property defined in the ' + ' different from the ?Alphabetic? property defined in the ' 'Unicode\n' ' Standard.\n' '\n' @@ -9707,7 +9910,7 @@ 'in base 10,\n' ' e.g. U+0660, ARABIC-INDIC DIGIT ZERO. Formally a ' 'decimal character\n' - ' is a character in the Unicode General Category "Nd".\n' + ' is a character in the Unicode General Category ?Nd?.\n' '\n' 'str.isdigit()\n' '\n' @@ -9731,9 +9934,18 @@ 'according to the\n' ' language definition, section Identifiers and keywords.\n' '\n' - ' Use "keyword.iskeyword()" to test for reserved ' - 'identifiers such as\n' - ' "def" and "class".\n' + ' Call "keyword.iskeyword()" to test whether string "s" ' + 'is a reserved\n' + ' identifier, such as "def" and "class".\n' + '\n' + ' Example:\n' + '\n' + ' >>> from keyword import iskeyword\n' + '\n' + " >>> 'hello'.isidentifier(), iskeyword('hello')\n" + ' True, False\n' + " >>> 'def'.isidentifier(), iskeyword('def')\n" + ' True, True\n' '\n' 'str.islower()\n' '\n' @@ -9766,7 +9978,7 @@ 'characters are\n' ' those characters defined in the Unicode character ' 'database as\n' - ' "Other" or "Separator", excepting the ASCII space ' + ' ?Other? or ?Separator?, excepting the ASCII space ' '(0x20) which is\n' ' considered printable. (Note that printable characters ' 'in this\n' @@ -9784,9 +9996,9 @@ 'Whitespace\n' ' characters are those characters defined in the Unicode ' 'character\n' - ' database as "Other" or "Separator" and those with ' + ' database as ?Other? or ?Separator? and those with ' 'bidirectional\n' - ' property being one of "WS", "B", or "S".\n' + ' property being one of ?WS?, ?B?, or ?S?.\n' '\n' 'str.istitle()\n' '\n' @@ -10241,12 +10453,12 @@ ' Return a copy of the string with all the cased ' 'characters [4]\n' ' converted to uppercase. Note that ' - '"str.upper().isupper()" might be\n' + '"s.upper().isupper()" might be\n' ' "False" if "s" contains uncased characters or if the ' 'Unicode\n' - ' category of the resulting character(s) is not "Lu" ' + ' category of the resulting character(s) is not ?Lu? ' '(Letter,\n' - ' uppercase), but e.g. "Lt" (Letter, titlecase).\n' + ' uppercase), but e.g. ?Lt? (Letter, titlecase).\n' '\n' ' The uppercasing algorithm used is described in section ' '3.13 of the\n' @@ -10341,9 +10553,9 @@ 'literals,\n' '"\'\\U\'" and "\'\\u\'" escapes in raw strings are not treated ' 'specially.\n' - "Given that Python 2.x's raw unicode literals behave differently " + 'Given that Python 2.x?s raw unicode literals behave differently ' 'than\n' - 'Python 3.x\'s the "\'ur\'" syntax is not supported.\n' + 'Python 3.x?s the "\'ur\'" syntax is not supported.\n' '\n' 'New in version 3.3: The "\'rb\'" prefix of raw bytes literals has ' 'been\n' @@ -10367,7 +10579,7 @@ 'In triple-quoted literals, unescaped newlines and quotes are ' 'allowed\n' '(and are retained), except that three unescaped quotes in a row\n' - 'terminate the literal. (A "quote" is the character used to open ' + 'terminate the literal. (A ?quote? is the character used to open ' 'the\n' 'literal, i.e. either "\'" or """.)\n' '\n' @@ -10477,9 +10689,13 @@ '\n' ' Changed in version 3.6: Unrecognized escape sequences produce ' 'a\n' - ' DeprecationWarning. In some future version of Python they ' - 'will be\n' - ' a SyntaxError.\n' + ' "DeprecationWarning".\n' + '\n' + ' Changed in version 3.8: Unrecognized escape sequences produce ' + 'a\n' + ' "SyntaxWarning". In some future version of Python they will ' + 'be a\n' + ' "SyntaxError".\n' '\n' 'Even in a raw literal, quotes can be escaped with a backslash, ' 'but the\n' @@ -10527,9 +10743,9 @@ 'exactly one\n' 'item.)\n' '\n' - 'If the primary is a sequence, the expression (list) must ' - 'evaluate to\n' - 'an integer or a slice (as discussed in the following ' + 'If the primary is a sequence, the expression list must ' + 'evaluate to an\n' + 'integer or a slice (as discussed in the following ' 'section).\n' '\n' 'The formal syntax makes no special provision for negative ' @@ -10546,13 +10762,13 @@ 'item whose\n' 'index is that value (counting from zero). Since the support ' 'for\n' - "negative indices and slicing occurs in the object's " + 'negative indices and slicing occurs in the object?s ' '"__getitem__()"\n' 'method, subclasses overriding this method will need to ' 'explicitly add\n' 'that support.\n' '\n' - "A string's items are characters. A character is not a " + 'A string?s items are characters. A character is not a ' 'separate data\n' 'type but a string of exactly one character.\n', 'truth': 'Truth Value Testing\n' @@ -10609,7 +10825,7 @@ 'less except clause, if present, must be last; it matches any\n' 'exception. For an except clause with an expression, that expression\n' 'is evaluated, and the clause matches the exception if the resulting\n' - 'object is "compatible" with the exception. An object is compatible\n' + 'object is ?compatible? with the exception. An object is compatible\n' 'with an exception if it is the class or a base class of the ' 'exception\n' 'object or a tuple containing an item compatible with the exception.\n' @@ -10631,7 +10847,7 @@ 'When a matching except clause is found, the exception is assigned to\n' 'the target specified after the "as" keyword in that except clause, ' 'if\n' - "present, and the except clause's suite is executed. All except\n" + 'present, and the except clause?s suite is executed. All except\n' 'clauses must have an executable block. When the end of this block ' 'is\n' 'reached, execution continues normally after the entire try ' @@ -10661,7 +10877,7 @@ 'cycle with the stack frame, keeping all locals in that frame alive\n' 'until the next garbage collection occurs.\n' '\n' - "Before an except clause's suite is executed, details about the\n" + 'Before an except clause?s suite is executed, details about the\n' 'exception are stored in the "sys" module and can be accessed via\n' '"sys.exc_info()". "sys.exc_info()" returns a 3-tuple consisting of ' 'the\n' @@ -10671,11 +10887,14 @@ 'restored to their previous values (before the call) when returning\n' 'from a function that handled an exception.\n' '\n' - 'The optional "else" clause is executed if and when control flows off\n' - 'the end of the "try" clause. [2] Exceptions in the "else" clause are\n' + 'The optional "else" clause is executed if the control flow leaves ' + 'the\n' + '"try" suite, no exception was raised, and no "return", "continue", ' + 'or\n' + '"break" statement was executed. Exceptions in the "else" clause are\n' 'not handled by the preceding "except" clauses.\n' '\n' - 'If "finally" is present, it specifies a \'cleanup\' handler. The ' + 'If "finally" is present, it specifies a ?cleanup? handler. The ' '"try"\n' 'clause is executed, including any "except" and "else" clauses. If ' 'an\n' @@ -10687,8 +10906,9 @@ 'clause. If the "finally" clause raises another exception, the saved\n' 'exception is set as the context of the new exception. If the ' '"finally"\n' - 'clause executes a "return" or "break" statement, the saved exception\n' - 'is discarded:\n' + 'clause executes a "return", "break" or "continue" statement, the ' + 'saved\n' + 'exception is discarded:\n' '\n' ' >>> def f():\n' ' ... try:\n' @@ -10703,12 +10923,8 @@ 'execution of the "finally" clause.\n' '\n' 'When a "return", "break" or "continue" statement is executed in the\n' - '"try" suite of a "try"..."finally" statement, the "finally" clause ' - 'is\n' - 'also executed \'on the way out.\' A "continue" statement is illegal ' - 'in\n' - 'the "finally" clause. (The reason is a problem with the current\n' - 'implementation --- this restriction may be lifted in the future).\n' + '"try" suite of a "try"?"finally" statement, the "finally" clause is\n' + 'also executed ?on the way out.?\n' '\n' 'The return value of a function is determined by the last "return"\n' 'statement executed. Since the "finally" clause always executes, a\n' @@ -10728,7 +10944,11 @@ 'Additional information on exceptions can be found in section\n' 'Exceptions, and information on using the "raise" statement to ' 'generate\n' - 'exceptions may be found in section The raise statement.\n', + 'exceptions may be found in section The raise statement.\n' + '\n' + 'Changed in version 3.8: Prior to Python 3.8, a "continue" statement\n' + 'was illegal in the "finally" clause due to a problem with the\n' + 'implementation.\n', 'types': 'The standard type hierarchy\n' '***************************\n' '\n' @@ -10743,7 +10963,7 @@ 'will often be provided via the standard library instead.\n' '\n' 'Some of the type descriptions below contain a paragraph listing\n' - "'special attributes.' These are attributes that provide access to " + '?special attributes.? These are attributes that provide access to ' 'the\n' 'implementation and are not intended for general use. Their ' 'definition\n' @@ -10756,7 +10976,7 @@ 'It\n' ' is used to signify the absence of a value in many situations, ' 'e.g.,\n' - " it is returned from functions that don't explicitly return\n" + ' it is returned from functions that don?t explicitly return\n' ' anything. Its truth value is false.\n' '\n' 'NotImplemented\n' @@ -10807,7 +11027,7 @@ 'shift\n' ' and mask operations, a binary representation is assumed, ' 'and\n' - " negative numbers are represented in a variant of 2's\n" + ' negative numbers are represented in a variant of 2?s\n' ' complement which gives the illusion of an infinite string ' 'of\n' ' sign bits extending to the left.\n' @@ -10861,7 +11081,7 @@ 'items\n' ' of a sequence. When the length of a sequence is *n*, the index ' 'set\n' - ' contains the numbers 0, 1, ..., *n*-1. Item *i* of sequence *a* ' + ' contains the numbers 0, 1, ?, *n*-1. Item *i* of sequence *a* ' 'is\n' ' selected by "a[i]".\n' '\n' @@ -10871,8 +11091,8 @@ 'implies\n' ' that the index set is renumbered so that it starts at 0.\n' '\n' - ' Some sequences also support "extended slicing" with a third ' - '"step"\n' + ' Some sequences also support ?extended slicing? with a third ' + '?step?\n' ' parameter: "a[i:j:k]" selects all items of *a* with index *x* ' 'where\n' ' "x = i + n*k", *n* ">=" "0" and *i* "<=" *x* "<" *j*.\n' @@ -10897,7 +11117,7 @@ 'code\n' ' points. All the code points in the range "U+0000 - ' 'U+10FFFF"\n' - " can be represented in a string. Python doesn't have a " + ' can be represented in a string. Python doesn?t have a ' '"char"\n' ' type; instead, every code point in the string is ' 'represented\n' @@ -10916,7 +11136,7 @@ ' The items of a tuple are arbitrary Python objects. Tuples ' 'of\n' ' two or more items are formed by comma-separated lists of\n' - " expressions. A tuple of one item (a 'singleton') can be\n" + ' expressions. A tuple of one item (a ?singleton?) can be\n' ' formed by affixing a comma to an expression (an expression ' 'by\n' ' itself does not create a tuple, since parentheses must be\n' @@ -11022,7 +11242,7 @@ 'object\n' ' identity, the reason being that the efficient implementation ' 'of\n' - " dictionaries requires a key's hash value to remain constant.\n" + ' dictionaries requires a key?s hash value to remain constant.\n' ' Numeric types used for keys obey the normal rules for ' 'numeric\n' ' comparison: if two numbers compare equal (e.g., "1" and ' @@ -11047,7 +11267,7 @@ ' definition (see section Function definitions). It should be\n' ' called with an argument list containing the same number of ' 'items\n' - " as the function's formal parameter list.\n" + ' as the function?s formal parameter list.\n' '\n' ' Special attributes:\n' '\n' @@ -11057,8 +11277,8 @@ '| |\n' ' ' '+===========================+=================================+=============+\n' - ' | "__doc__" | The function\'s ' - 'documentation | Writable |\n' + ' | "__doc__" | The function?s documentation ' + '| Writable |\n' ' | | string, or "None" if ' '| |\n' ' | | unavailable; not inherited by ' @@ -11067,12 +11287,12 @@ '| |\n' ' ' '+---------------------------+---------------------------------+-------------+\n' - ' | "__name__" | The function\'s ' - 'name | Writable |\n' + ' | "__name__" | The function?s name ' + '| Writable |\n' ' ' '+---------------------------+---------------------------------+-------------+\n' - ' | "__qualname__" | The function\'s *qualified ' - 'name* | Writable |\n' + ' | "__qualname__" | The function?s *qualified name* ' + '| Writable |\n' ' | | New in version 3.3. ' '| |\n' ' ' @@ -11105,9 +11325,9 @@ '+---------------------------+---------------------------------+-------------+\n' ' | "__globals__" | A reference to the dictionary ' '| Read-only |\n' - " | | that holds the function's " + ' | | that holds the function?s ' '| |\n' - ' | | global variables --- the global ' + ' | | global variables ? the global ' '| |\n' ' | | namespace of the module in ' '| |\n' @@ -11125,7 +11345,7 @@ '| Read-only |\n' ' | | contain bindings for the ' '| |\n' - " | | function's free variables. See " + ' | | function?s free variables. See ' '| |\n' ' | | below for information on the ' '| |\n' @@ -11152,7 +11372,7 @@ ' ' '+---------------------------+---------------------------------+-------------+\n' '\n' - ' Most of the attributes labelled "Writable" check the type of ' + ' Most of the attributes labelled ?Writable? check the type of ' 'the\n' ' assigned value.\n' '\n' @@ -11171,7 +11391,7 @@ ' A cell object has the attribute "cell_contents". This can be\n' ' used to get the value of the cell, as well as set the value.\n' '\n' - " Additional information about a function's definition can be\n" + ' Additional information about a function?s definition can be\n' ' retrieved from its code object; see the description of ' 'internal\n' ' types below.\n' @@ -11184,7 +11404,7 @@ ' Special read-only attributes: "__self__" is the class ' 'instance\n' ' object, "__func__" is the function object; "__doc__" is the\n' - ' method\'s documentation (same as "__func__.__doc__"); ' + ' method?s documentation (same as "__func__.__doc__"); ' '"__name__"\n' ' is the method name (same as "__func__.__name__"); ' '"__module__"\n' @@ -11208,7 +11428,7 @@ 'instances,\n' ' its "__self__" attribute is the instance, and the method ' 'object\n' - ' is said to be bound. The new method\'s "__func__" attribute ' + ' is said to be bound. The new method?s "__func__" attribute ' 'is\n' ' the original function object.\n' '\n' @@ -11241,7 +11461,7 @@ '\n' ' When an instance method object is derived from a class ' 'method\n' - ' object, the "class instance" stored in "__self__" will ' + ' object, the ?class instance? stored in "__self__" will ' 'actually\n' ' be the class itself, so that calling either "x.f(1)" or ' '"C.f(1)"\n' @@ -11274,7 +11494,7 @@ 'object\n' ' which can be used to execute the body of the function: ' 'calling\n' - ' the iterator\'s "iterator.__next__()" method will cause the\n' + ' the iterator?s "iterator.__next__()" method will cause the\n' ' function to execute until it provides a value using the ' '"yield"\n' ' statement. When the function executes a "return" statement ' @@ -11303,7 +11523,7 @@ 'for"\n' ' statement to execute the body of the function.\n' '\n' - ' Calling the asynchronous iterator\'s "aiterator.__anext__()"\n' + ' Calling the asynchronous iterator?s "aiterator.__anext__()"\n' ' method will return an *awaitable* which when awaited will\n' ' execute until it provides a value using the "yield" ' 'expression.\n' @@ -11322,9 +11542,9 @@ 'of\n' ' the arguments are determined by the C function. Special ' 'read-\n' - ' only attributes: "__doc__" is the function\'s documentation\n' + ' only attributes: "__doc__" is the function?s documentation\n' ' string, or "None" if unavailable; "__name__" is the ' - "function's\n" + 'function?s\n' ' name; "__self__" is set to "None" (but see the next item);\n' ' "__module__" is the name of the module the function was ' 'defined\n' @@ -11357,7 +11577,7 @@ 'Modules\n' ' Modules are a basic organizational unit of Python code, and are\n' ' created by the import system as invoked either by the "import"\n' - ' statement (see "import"), or by calling functions such as\n' + ' statement, or by calling functions such as\n' ' "importlib.import_module()" and built-in "__import__()". A ' 'module\n' ' object has a namespace implemented by a dictionary object (this ' @@ -11367,16 +11587,16 @@ ' translated to lookups in this dictionary, e.g., "m.x" is ' 'equivalent\n' ' to "m.__dict__["x"]". A module object does not contain the code\n' - " object used to initialize the module (since it isn't needed " + ' object used to initialize the module (since it isn?t needed ' 'once\n' ' the initialization is done).\n' '\n' - " Attribute assignment updates the module's namespace dictionary,\n" + ' Attribute assignment updates the module?s namespace dictionary,\n' ' e.g., "m.x = 1" is equivalent to "m.__dict__["x"] = 1".\n' '\n' - ' Predefined (writable) attributes: "__name__" is the module\'s ' + ' Predefined (writable) attributes: "__name__" is the module?s ' 'name;\n' - ' "__doc__" is the module\'s documentation string, or "None" if\n' + ' "__doc__" is the module?s documentation string, or "None" if\n' ' unavailable; "__annotations__" (optional) is a dictionary\n' ' containing *variable annotations* collected during module body\n' ' execution; "__file__" is the pathname of the file from which ' @@ -11389,7 +11609,7 @@ 'is\n' ' the pathname of the shared library file.\n' '\n' - ' Special read-only attribute: "__dict__" is the module\'s ' + ' Special read-only attribute: "__dict__" is the module?s ' 'namespace\n' ' as a dictionary object.\n' '\n' @@ -11418,7 +11638,7 @@ ' classes. This search of the base classes uses the C3 method\n' ' resolution order which behaves correctly even in the presence ' 'of\n' - " 'diamond' inheritance structures where there are multiple\n" + ' ?diamond? inheritance structures where there are multiple\n' ' inheritance paths leading back to a common ancestor. Additional\n' ' details on the C3 MRO used by Python can be found in the\n' ' documentation accompanying the 2.3 release at\n' @@ -11427,7 +11647,7 @@ ' When a class attribute reference (for class "C", say) would ' 'yield a\n' ' class method object, it is transformed into an instance method\n' - ' object whose "__self__" attributes is "C". When it would yield ' + ' object whose "__self__" attribute is "C". When it would yield ' 'a\n' ' static method object, it is transformed into the object wrapped ' 'by\n' @@ -11437,7 +11657,7 @@ 'differ\n' ' from those actually contained in its "__dict__".\n' '\n' - " Class attribute assignments update the class's dictionary, " + ' Class attribute assignments update the class?s dictionary, ' 'never\n' ' the dictionary of a base class.\n' '\n' @@ -11449,11 +11669,11 @@ 'is\n' ' the module name in which the class was defined; "__dict__" is ' 'the\n' - ' dictionary containing the class\'s namespace; "__bases__" is a ' + ' dictionary containing the class?s namespace; "__bases__" is a ' 'tuple\n' ' containing the base classes, in the order of their occurrence ' 'in\n' - ' the base class list; "__doc__" is the class\'s documentation ' + ' the base class list; "__doc__" is the class?s documentation ' 'string,\n' ' or "None" if undefined; "__annotations__" (optional) is a\n' ' dictionary containing *variable annotations* collected during ' @@ -11466,7 +11686,7 @@ ' A class instance has a namespace implemented as a dictionary ' 'which\n' ' is the first place in which attribute references are searched.\n' - " When an attribute is not found there, and the instance's class " + ' When an attribute is not found there, and the instance?s class ' 'has\n' ' an attribute by that name, the search continues with the class\n' ' attributes. If a class attribute is found that is a ' @@ -11475,17 +11695,17 @@ 'object\n' ' whose "__self__" attribute is the instance. Static method and\n' ' class method objects are also transformed; see above under\n' - ' "Classes". See section Implementing Descriptors for another way ' + ' ?Classes?. See section Implementing Descriptors for another way ' 'in\n' ' which attributes of a class retrieved via its instances may ' 'differ\n' - ' from the objects actually stored in the class\'s "__dict__". If ' + ' from the objects actually stored in the class?s "__dict__". If ' 'no\n' - " class attribute is found, and the object's class has a\n" + ' class attribute is found, and the object?s class has a\n' ' "__getattr__()" method, that is called to satisfy the lookup.\n' '\n' - " Attribute assignments and deletions update the instance's\n" - " dictionary, never a class's dictionary. If the class has a\n" + ' Attribute assignments and deletions update the instance?s\n' + ' dictionary, never a class?s dictionary. If the class has a\n' ' "__setattr__()" or "__delattr__()" method, this is called ' 'instead\n' ' of updating the instance dictionary directly.\n' @@ -11496,7 +11716,7 @@ ' Special method names.\n' '\n' ' Special attributes: "__dict__" is the attribute dictionary;\n' - ' "__class__" is the instance\'s class.\n' + ' "__class__" is the instance?s class.\n' '\n' 'I/O objects (also known as file objects)\n' ' A *file object* represents an open file. Various shortcuts are\n' @@ -11508,7 +11728,7 @@ ' provided by extension modules).\n' '\n' ' The objects "sys.stdin", "sys.stdout" and "sys.stderr" are\n' - " initialized to file objects corresponding to the interpreter's\n" + ' initialized to file objects corresponding to the interpreter?s\n' ' standard input, output and error streams; they are all open in ' 'text\n' ' mode and therefore follow the interface defined by the\n' @@ -11526,7 +11746,7 @@ ' or *bytecode*. The difference between a code object and a\n' ' function object is that the function object contains an ' 'explicit\n' - " reference to the function's globals (the module in which it " + ' reference to the function?s globals (the module in which it ' 'was\n' ' defined), while a code object contains no context; also the\n' ' default argument values are stored in the function object, ' @@ -11599,7 +11819,9 @@ '\n' ' Frame objects\n' ' Frame objects represent execution frames. They may occur in\n' - ' traceback objects (see below).\n' + ' traceback objects (see below), and are also passed to ' + 'registered\n' + ' trace functions.\n' '\n' ' Special read-only attributes: "f_back" is to the previous ' 'stack\n' @@ -11627,13 +11849,12 @@ ' undefined interpreter behaviour if exceptions raised by the\n' ' trace function escape to the function being traced.\n' '\n' - ' "f_lineno" is the current line number of the frame --- ' - 'writing\n' - ' to this from within a trace function jumps to the given line\n' - ' (only for the bottom-most frame). A debugger can implement ' - 'a\n' - ' Jump command (aka Set Next Statement) by writing to ' - 'f_lineno.\n' + ' "f_lineno" is the current line number of the frame ? writing ' + 'to\n' + ' this from within a trace function jumps to the given line ' + '(only\n' + ' for the bottom-most frame). A debugger can implement a Jump\n' + ' command (aka Set Next Statement) by writing to f_lineno.\n' '\n' ' Frame objects support one method:\n' '\n' @@ -11656,42 +11877,58 @@ ' Traceback objects\n' ' Traceback objects represent a stack trace of an exception. ' 'A\n' - ' traceback object is created when an exception occurs. When ' + ' traceback object is implicitly created when an exception ' + 'occurs,\n' + ' and may also be explicitly created by calling\n' + ' "types.TracebackType".\n' + '\n' + ' For implicitly created tracebacks, when the search for an\n' + ' exception handler unwinds the execution stack, at each ' + 'unwound\n' + ' level a traceback object is inserted in front of the current\n' + ' traceback. When an exception handler is entered, the stack\n' + ' trace is made available to the program. (See section The try\n' + ' statement.) It is accessible as the third item of the tuple\n' + ' returned by "sys.exc_info()", and as the "__traceback__"\n' + ' attribute of the caught exception.\n' + '\n' + ' When the program contains no suitable handler, the stack ' + 'trace\n' + ' is written (nicely formatted) to the standard error stream; ' + 'if\n' + ' the interpreter is interactive, it is also made available to ' 'the\n' - ' search for an exception handler unwinds the execution stack, ' - 'at\n' - ' each unwound level a traceback object is inserted in front ' + ' user as "sys.last_traceback".\n' + '\n' + ' For explicitly created tracebacks, it is up to the creator ' 'of\n' - ' the current traceback. When an exception handler is ' - 'entered,\n' - ' the stack trace is made available to the program. (See ' - 'section\n' - ' The try statement.) It is accessible as the third item of ' - 'the\n' - ' tuple returned by "sys.exc_info()". When the program contains ' - 'no\n' - ' suitable handler, the stack trace is written (nicely ' - 'formatted)\n' - ' to the standard error stream; if the interpreter is ' - 'interactive,\n' - ' it is also made available to the user as ' - '"sys.last_traceback".\n' - '\n' - ' Special read-only attributes: "tb_next" is the next level in ' + ' the traceback to determine how the "tb_next" attributes ' + 'should\n' + ' be linked to form a full stack trace.\n' + '\n' + ' Special read-only attributes: "tb_frame" points to the ' + 'execution\n' + ' frame of the current level; "tb_lineno" gives the line ' + 'number\n' + ' where the exception occurred; "tb_lasti" indicates the ' + 'precise\n' + ' instruction. The line number and last instruction in the\n' + ' traceback may differ from the line number of its frame object ' + 'if\n' + ' the exception occurred in a "try" statement with no matching\n' + ' except clause or with a finally clause.\n' + '\n' + ' Special writable attribute: "tb_next" is the next level in ' 'the\n' ' stack trace (towards the frame where the exception occurred), ' 'or\n' - ' "None" if there is no next level; "tb_frame" points to the\n' - ' execution frame of the current level; "tb_lineno" gives the ' - 'line\n' - ' number where the exception occurred; "tb_lasti" indicates ' - 'the\n' - ' precise instruction. The line number and last instruction ' - 'in\n' - ' the traceback may differ from the line number of its frame\n' - ' object if the exception occurred in a "try" statement with ' - 'no\n' - ' matching except clause or with a finally clause.\n' + ' "None" if there is no next level.\n' + '\n' + ' Changed in version 3.7: Traceback objects can now be ' + 'explicitly\n' + ' instantiated from Python code, and the "tb_next" attribute ' + 'of\n' + ' existing instances can be updated.\n' '\n' ' Slice objects\n' ' Slice objects are used to represent slices for ' @@ -11744,7 +11981,7 @@ ' is retrieved from classes and class instances. The behaviour ' 'of\n' ' class method objects upon such retrieval is described above,\n' - ' under "User-defined methods". Class method objects are ' + ' under ?User-defined methods?. Class method objects are ' 'created\n' ' by the built-in "classmethod()" constructor.\n', 'typesfunctions': 'Functions\n' @@ -11764,8 +12001,8 @@ 'different object types.\n' '\n' 'See Function definitions for more information.\n', - 'typesmapping': 'Mapping Types --- "dict"\n' - '************************\n' + 'typesmapping': 'Mapping Types ? "dict"\n' + '**********************\n' '\n' 'A *mapping* object maps *hashable* values to arbitrary ' 'objects.\n' @@ -11776,7 +12013,7 @@ 'in "list", "set", and "tuple" classes, and the "collections" ' 'module.)\n' '\n' - "A dictionary's keys are *almost* arbitrary values. Values " + 'A dictionary?s keys are *almost* arbitrary values. Values ' 'that are\n' 'not *hashable*, that is, values containing lists, ' 'dictionaries or\n' @@ -11932,11 +12169,11 @@ '\n' ' Return a shallow copy of the dictionary.\n' '\n' - ' classmethod fromkeys(seq[, value])\n' + ' classmethod fromkeys(iterable[, value])\n' '\n' - ' Create a new dictionary with keys from *seq* and ' - 'values set to\n' - ' *value*.\n' + ' Create a new dictionary with keys from *iterable* and ' + 'values set\n' + ' to *value*.\n' '\n' ' "fromkeys()" is a class method that returns a new ' 'dictionary.\n' @@ -11952,13 +12189,13 @@ '\n' ' items()\n' '\n' - ' Return a new view of the dictionary\'s items ("(key, ' + ' Return a new view of the dictionary?s items ("(key, ' 'value)"\n' ' pairs). See the documentation of view objects.\n' '\n' ' keys()\n' '\n' - " Return a new view of the dictionary's keys. See the\n" + ' Return a new view of the dictionary?s keys. See the\n' ' documentation of view objects.\n' '\n' ' pop(key[, default])\n' @@ -11971,15 +12208,27 @@ '\n' ' popitem()\n' '\n' - ' Remove and return an arbitrary "(key, value)" pair ' - 'from the\n' - ' dictionary.\n' + ' Remove and return a "(key, value)" pair from the ' + 'dictionary.\n' + ' Pairs are returned in LIFO (last-in, first-out) ' + 'order.\n' '\n' ' "popitem()" is useful to destructively iterate over a\n' ' dictionary, as often used in set algorithms. If the ' 'dictionary\n' ' is empty, calling "popitem()" raises a "KeyError".\n' '\n' + ' Changed in version 3.7: LIFO order is now guaranteed. ' + 'In prior\n' + ' versions, "popitem()" would return an arbitrary ' + 'key/value pair.\n' + '\n' + ' reversed(d)\n' + '\n' + ' Return a reverse iterator over the keys of the ' + 'dictionary. This\n' + ' is a shortcut for "reversed(d.keys())".\n' + '\n' ' setdefault(key[, default])\n' '\n' ' If *key* is in the dictionary, return its value. If ' @@ -12006,16 +12255,57 @@ '\n' ' values()\n' '\n' - " Return a new view of the dictionary's values. See " + ' Return a new view of the dictionary?s values. See ' 'the\n' ' documentation of view objects.\n' '\n' ' Dictionaries compare equal if and only if they have the ' 'same "(key,\n' - ' value)" pairs. Order comparisons (\'<\', \'<=\', \'>=\', ' - "'>') raise\n" + ' value)" pairs. Order comparisons (?=?, ?>?) ' + 'raise\n' ' "TypeError".\n' '\n' + ' Dictionaries preserve insertion order. Note that ' + 'updating a key\n' + ' does not affect the order. Keys added after deletion are ' + 'inserted\n' + ' at the end.\n' + '\n' + ' >>> d = {"one": 1, "two": 2, "three": 3, "four": 4}\n' + ' >>> d\n' + " {'one': 1, 'two': 2, 'three': 3, 'four': 4}\n" + ' >>> list(d)\n' + " ['one', 'two', 'three', 'four']\n" + ' >>> list(d.values())\n' + ' [1, 2, 3, 4]\n' + ' >>> d["one"] = 42\n' + ' >>> d\n' + " {'one': 42, 'two': 2, 'three': 3, 'four': 4}\n" + ' >>> del d["two"]\n' + ' >>> d["two"] = None\n' + ' >>> d\n' + " {'one': 42, 'three': 3, 'four': 4, 'two': None}\n" + '\n' + ' Changed in version 3.7: Dictionary order is guaranteed to ' + 'be\n' + ' insertion order. This behavior was an implementation ' + 'detail of\n' + ' CPython from 3.6.\n' + '\n' + ' Dictionaries and dictionary views are reversible.\n' + '\n' + ' >>> d = {"one": 1, "two": 2, "three": 3, "four": 4}\n' + ' >>> d\n' + " {'one': 1, 'two': 2, 'three': 3, 'four': 4}\n" + ' >>> list(reversed(d))\n' + " ['four', 'three', 'two', 'one']\n" + ' >>> list(reversed(d.values()))\n' + ' [4, 3, 2, 1]\n' + ' >>> list(reversed(d.items()))\n' + " [('four', 4), ('three', 3), ('two', 2), ('one', 1)]\n" + '\n' + ' Changed in version 3.8: Dictionaries are now reversible.\n' + '\n' 'See also: "types.MappingProxyType" can be used to create a ' 'read-only\n' ' view of a "dict".\n' @@ -12027,7 +12317,7 @@ 'The objects returned by "dict.keys()", "dict.values()" and\n' '"dict.items()" are *view objects*. They provide a dynamic ' 'view on the\n' - "dictionary's entries, which means that when the dictionary " + 'dictionary?s entries, which means that when the dictionary ' 'changes,\n' 'the view reflects these changes.\n' '\n' @@ -12045,36 +12335,42 @@ '(represented as\n' ' tuples of "(key, value)") in the dictionary.\n' '\n' - ' Keys and values are iterated over in an arbitrary order ' - 'which is\n' - ' non-random, varies across Python implementations, and ' - 'depends on\n' - " the dictionary's history of insertions and deletions. If " - 'keys,\n' - ' values and items views are iterated over with no ' - 'intervening\n' - ' modifications to the dictionary, the order of items will ' - 'directly\n' - ' correspond. This allows the creation of "(value, key)" ' - 'pairs using\n' - ' "zip()": "pairs = zip(d.values(), d.keys())". Another ' - 'way to\n' - ' create the same list is "pairs = [(v, k) for (k, v) in ' - 'd.items()]".\n' + ' Keys and values are iterated over in insertion order. ' + 'This allows\n' + ' the creation of "(value, key)" pairs using "zip()": ' + '"pairs =\n' + ' zip(d.values(), d.keys())". Another way to create the ' + 'same list is\n' + ' "pairs = [(v, k) for (k, v) in d.items()]".\n' '\n' ' Iterating views while adding or deleting entries in the ' 'dictionary\n' ' may raise a "RuntimeError" or fail to iterate over all ' 'entries.\n' '\n' + ' Changed in version 3.7: Dictionary order is guaranteed to ' + 'be\n' + ' insertion order.\n' + '\n' 'x in dictview\n' '\n' - ' Return "True" if *x* is in the underlying dictionary\'s ' + ' Return "True" if *x* is in the underlying dictionary?s ' 'keys, values\n' ' or items (in the latter case, *x* should be a "(key, ' 'value)"\n' ' tuple).\n' '\n' + 'reversed(dictview)\n' + '\n' + ' Return a reverse iterator over the keys, values or items ' + 'of the\n' + ' dictionary. The view will be iterated in reverse order of ' + 'the\n' + ' insertion.\n' + '\n' + ' Changed in version 3.8: Dictionary views are now ' + 'reversible.\n' + '\n' 'Keys views are set-like since their entries are unique and ' 'hashable.\n' 'If all values are hashable, so that "(key, value)" pairs are ' @@ -12103,10 +12399,10 @@ ' >>> print(n)\n' ' 504\n' '\n' - ' >>> # keys and values are iterated over in the same ' - 'order\n' + ' >>> # keys and values are iterated over in the same order ' + '(insertion order)\n' ' >>> list(keys)\n' - " ['eggs', 'bacon', 'sausage', 'spam']\n" + " ['eggs', 'sausage', 'bacon', 'spam']\n" ' >>> list(values)\n' ' [2, 1, 1, 500]\n' '\n' @@ -12114,7 +12410,7 @@ " >>> del dishes['eggs']\n" " >>> del dishes['sausage']\n" ' >>> list(keys)\n' - " ['spam', 'bacon']\n" + " ['bacon', 'spam']\n" '\n' ' >>> # set operations\n' " >>> keys & {'eggs', 'bacon', 'salad'}\n" @@ -12184,7 +12480,7 @@ 'The only special operation on a module is attribute access: ' '"m.name",\n' 'where *m* is a module and *name* accesses a name defined in ' - "*m*'s\n" + '*m*?s\n' 'symbol table. Module attributes can be assigned to. (Note ' 'that the\n' '"import" statement is not, strictly speaking, an operation ' @@ -12197,14 +12493,14 @@ '\n' 'A special attribute of every module is "__dict__". This is ' 'the\n' - "dictionary containing the module's symbol table. Modifying " + 'dictionary containing the module?s symbol table. Modifying ' 'this\n' - "dictionary will actually change the module's symbol table, " + 'dictionary will actually change the module?s symbol table, ' 'but direct\n' 'assignment to the "__dict__" attribute is not possible (you ' 'can write\n' '"m.__dict__[\'a\'] = 1", which defines "m.a" to be "1", but ' - "you can't\n" + 'you can?t\n' 'write "m.__dict__ = {}"). Modifying "__dict__" directly is ' 'not\n' 'recommended.\n' @@ -12215,8 +12511,8 @@ 'written as\n' '"".\n', - 'typesseq': 'Sequence Types --- "list", "tuple", "range"\n' - '*******************************************\n' + 'typesseq': 'Sequence Types ? "list", "tuple", "range"\n' + '*****************************************\n' '\n' 'There are three basic sequence types: lists, tuples, and range\n' 'objects. Additional sequence types tailored for processing of ' @@ -12390,7 +12686,7 @@ '*j* are\n' ' reduced to "len(s) - 1" if they are greater. If *i* or *j* ' 'are\n' - ' omitted or "None", they become "end" values (which end ' + ' omitted or "None", they become ?end? values (which end ' 'depends on\n' ' the sign of *k*). Note, *k* cannot be zero. If *k* is ' '"None", it\n' @@ -12421,7 +12717,7 @@ 'documentation\n' '\n' '7. Some sequence types (such as "range") only support item\n' - " sequences that follow specific patterns, and hence don't " + ' sequences that follow specific patterns, and hence don?t ' 'support\n' ' sequence concatenation or repetition.\n' '\n' @@ -12515,13 +12811,13 @@ '| | "s[len(s):len(s)] = ' '[x]") | |\n' '+--------------------------------+----------------------------------+-----------------------+\n' - '| "s.clear()" | removes all items from "s" ' + '| "s.clear()" | removes all items from *s* ' '(same | (5) |\n' '| | as "del ' 's[:]") | |\n' '+--------------------------------+----------------------------------+-----------------------+\n' '| "s.copy()" | creates a shallow copy of ' - '"s" | (5) |\n' + '*s* | (5) |\n' '| | (same as ' '"s[:]") | |\n' '+--------------------------------+----------------------------------+-----------------------+\n' @@ -12578,7 +12874,7 @@ ' sequence.\n' '\n' '5. "clear()" and "copy()" are included for consistency with the\n' - " interfaces of mutable containers that don't support slicing\n" + ' interfaces of mutable containers that don?t support slicing\n' ' operations (such as "dict" and "set")\n' '\n' ' New in version 3.3: "clear()" and "copy()" methods.\n' @@ -12618,7 +12914,7 @@ '\n' ' The constructor builds a list whose items are the same and in ' 'the\n' - " same order as *iterable*'s items. *iterable* may be either " + ' same order as *iterable*?s items. *iterable* may be either ' 'a\n' ' sequence, a container that supports iteration, or an ' 'iterator\n' @@ -12685,12 +12981,16 @@ 'is\n' ' stable if it guarantees not to change the relative order ' 'of\n' - ' elements that compare equal --- this is helpful for ' - 'sorting in\n' + ' elements that compare equal ? this is helpful for sorting ' + 'in\n' ' multiple passes (for example, sort by department, then by ' 'salary\n' ' grade).\n' '\n' + ' For sorting examples and a brief sorting tutorial, see ' + 'Sorting\n' + ' HOW TO.\n' + '\n' ' **CPython implementation detail:** While a list is being ' 'sorted,\n' ' the effect of attempting to mutate, or even inspect, the ' @@ -12732,7 +13032,7 @@ '\n' ' The constructor builds a tuple whose items are the same and ' 'in the\n' - " same order as *iterable*'s items. *iterable* may be either " + ' same order as *iterable*?s items. *iterable* may be either ' 'a\n' ' sequence, a container that supports iteration, or an ' 'iterator\n' @@ -12861,7 +13161,7 @@ 'Range objects implement the "collections.abc.Sequence" ABC, and\n' 'provide features such as containment tests, element index ' 'lookup,\n' - 'slicing and support for negative indices (see Sequence Types --- ' + 'slicing and support for negative indices (see Sequence Types ? ' 'list,\n' 'tuple, range):\n' '\n' @@ -12899,7 +13199,7 @@ 'constant\n' 'time instead of iterating through all items.\n' '\n' - "Changed in version 3.3: Define '==' and '!=' to compare range " + 'Changed in version 3.3: Define ?==? and ?!=? to compare range ' 'objects\n' 'based on the sequence of values they define (instead of ' 'comparing\n' @@ -12911,7 +13211,7 @@ '\n' ' * The linspace recipe shows how to implement a lazy version ' 'of\n' - ' range that suitable for floating point applications.\n', + ' range suitable for floating point applications.\n', 'typesseq-mutable': 'Mutable Sequence Types\n' '**********************\n' '\n' @@ -12971,12 +13271,12 @@ '[x]") | |\n' '+--------------------------------+----------------------------------+-----------------------+\n' '| "s.clear()" | removes all items ' - 'from "s" (same | (5) |\n' + 'from *s* (same | (5) |\n' '| | as "del ' 's[:]") | |\n' '+--------------------------------+----------------------------------+-----------------------+\n' '| "s.copy()" | creates a shallow ' - 'copy of "s" | (5) |\n' + 'copy of *s* | (5) |\n' '| | (same as ' '"s[:]") | |\n' '+--------------------------------+----------------------------------+-----------------------+\n' @@ -13038,7 +13338,7 @@ '\n' '5. "clear()" and "copy()" are included for consistency ' 'with the\n' - " interfaces of mutable containers that don't support " + ' interfaces of mutable containers that don?t support ' 'slicing\n' ' operations (such as "dict" and "set")\n' '\n' @@ -13093,7 +13393,7 @@ '\n' 'A "break" statement executed in the first suite terminates the ' 'loop\n' - 'without executing the "else" clause\'s suite. A "continue" ' + 'without executing the "else" clause?s suite. A "continue" ' 'statement\n' 'executed in the first suite skips the rest of the suite and goes ' 'back\n' @@ -13103,21 +13403,22 @@ '\n' 'The "with" statement is used to wrap the execution of a block with\n' 'methods defined by a context manager (see section With Statement\n' - 'Context Managers). This allows common "try"..."except"..."finally"\n' - 'usage patterns to be encapsulated for convenient reuse.\n' + 'Context Managers). This allows common "try"?"except"?"finally" ' + 'usage\n' + 'patterns to be encapsulated for convenient reuse.\n' '\n' ' with_stmt ::= "with" with_item ("," with_item)* ":" suite\n' ' with_item ::= expression ["as" target]\n' '\n' - 'The execution of the "with" statement with one "item" proceeds as\n' + 'The execution of the "with" statement with one ?item? proceeds as\n' 'follows:\n' '\n' '1. The context expression (the expression given in the "with_item")\n' ' is evaluated to obtain a context manager.\n' '\n' - '2. The context manager\'s "__exit__()" is loaded for later use.\n' + '2. The context manager?s "__exit__()" is loaded for later use.\n' '\n' - '3. The context manager\'s "__enter__()" method is invoked.\n' + '3. The context manager?s "__enter__()" method is invoked.\n' '\n' '4. If a target was included in the "with" statement, the return\n' ' value from "__enter__()" is assigned to it.\n' @@ -13131,7 +13432,7 @@ '\n' '5. The suite is executed.\n' '\n' - '6. The context manager\'s "__exit__()" method is invoked. If an\n' + '6. The context manager?s "__exit__()" method is invoked. If an\n' ' exception caused the suite to be exited, its type, value, and\n' ' traceback are passed as arguments to "__exit__()". Otherwise, ' 'three\n' @@ -13167,7 +13468,7 @@ '\n' 'See also:\n' '\n' - ' **PEP 343** - The "with" statement\n' + ' **PEP 343** - The ?with? statement\n' ' The specification, background, and examples for the Python ' '"with"\n' ' statement.\n', diff --git a/Misc/NEWS.d/3.8.0a1.rst b/Misc/NEWS.d/3.8.0a1.rst new file mode 100644 index 000000000000..d8c8f9fe4002 --- /dev/null +++ b/Misc/NEWS.d/3.8.0a1.rst @@ -0,0 +1,8977 @@ +.. bpo: 35746 +.. date: 2019-01-15-18-16-05 +.. nonce: nMSd0j +.. release date: 2019-02-03 +.. section: Security + +[CVE-2019-5010] Fix a NULL pointer deref in ssl module. The cert parser did +not handle CRL distribution points with empty DP or URI correctly. A +malicious or buggy certificate can result into segfault. + +.. + +.. bpo: 34812 +.. date: 2018-11-23-15-00-23 +.. nonce: 84VQnb +.. section: Security + +The :option:`-I` command line option (run Python in isolated mode) is now +also copied by the :mod:`multiprocessing` and :mod:`distutils` modules when +spawning child processes. Previously, only :option:`-E` and :option:`-s` +options (enabled by :option:`-I`) were copied. + +.. + +.. bpo: 34791 +.. date: 2018-09-24-18-49-25 +.. nonce: 78GmIG +.. section: Security + +The xml.sax and xml.dom.domreg no longer use environment variables to +override parser implementations when sys.flags.ignore_environment is set by +-E or -I arguments. + +.. + +.. bpo: 17239 +.. date: 2018-09-11-18-30-55 +.. nonce: kOpwK2 +.. section: Security + +The xml.sax and xml.dom.minidom parsers no longer processes external +entities by default. External DTD and ENTITY declarations no longer load +files or create network connections. + +.. + +.. bpo: 34623 +.. date: 2018-09-10-16-05-39 +.. nonce: Ua9jMv +.. section: Security + +CVE-2018-14647: The C accelerated _elementtree module now initializes hash +randomization salt from _Py_HashSecret instead of libexpat's default CSPRNG. + +.. + +.. bpo: 34405 +.. date: 2018-08-15-12-12-47 +.. nonce: qbHTH_ +.. section: Security + +Updated to OpenSSL 1.1.0i for Windows builds. + +.. + +.. bpo: 33871 +.. date: 2018-06-26-19-35-33 +.. nonce: S4HR9n +.. section: Security + +Fixed sending the part of the file in :func:`os.sendfile` on macOS. Using +the *trailers* argument could cause sending more bytes from the input file +than was specified. + +.. + +.. bpo: 32533 +.. date: 2018-05-28-08-55-30 +.. nonce: IzwkBI +.. section: Security + +Fixed thread-safety of error handling in _ssl. + +.. + +.. bpo: 33136 +.. date: 2018-03-25-12-05-43 +.. nonce: TzSN4x +.. section: Security + +Harden ssl module against LibreSSL CVE-2018-8970. +X509_VERIFY_PARAM_set1_host() is called with an explicit namelen. A new test +ensures that NULL bytes are not allowed. + +.. + +.. bpo: 33001 +.. date: 2018-03-05-10-09-51 +.. nonce: elj4Aa +.. section: Security + +Minimal fix to prevent buffer overrun in os.symlink on Windows + +.. + +.. bpo: 32981 +.. date: 2018-03-02-10-24-52 +.. nonce: O_qDyj +.. section: Security + +Regexes in difflib and poplib were vulnerable to catastrophic backtracking. +These regexes formed potential DOS vectors (REDOS). They have been +refactored. This resolves CVE-2018-1060 and CVE-2018-1061. Patch by Jamie +Davis. + +.. + +.. bpo: 28414 +.. date: 2017-08-06-14-43-45 +.. nonce: mzZ6vD +.. section: Security + +The ssl module now allows users to perform their own IDN en/decoding when +using SNI. + +.. + +.. bpo: 35877 +.. date: 2019-02-01-22-38-11 +.. nonce: Jrse8f +.. section: Core and Builtins + +Make parenthesis optional for named expressions in while statement. Patch by +Karthikeyan Singaravelan. + +.. + +.. bpo: 35814 +.. date: 2019-01-24-13-25-21 +.. nonce: r_MjA6 +.. section: Core and Builtins + +Allow same right hand side expressions in annotated assignments as in normal +ones. In particular, ``x: Tuple[int, int] = 1, 2`` (without parentheses on +the right) is now allowed. + +.. + +.. bpo: 35766 +.. date: 2019-01-22-19-17-27 +.. nonce: gh1tHZ +.. section: Core and Builtins + +Add the option to parse PEP 484 type comments in the ast module. (Off by +default.) This is merging the key functionality of the third party fork +thereof, [typed_ast](https://github.com/python/typed_ast). + +.. + +.. bpo: 35713 +.. date: 2019-01-22-18-50-21 +.. nonce: bTeUsa +.. section: Core and Builtins + +Reorganize Python initialization to get working exceptions and sys.stderr +earlier. + +.. + +.. bpo: 33416 +.. date: 2019-01-19-19-41-53 +.. nonce: VDeOU5 +.. section: Core and Builtins + +Add end line and end column position information to the Python AST nodes. +This is a C-level backwards incompatible change. + +.. + +.. bpo: 35720 +.. date: 2019-01-12-23-33-04 +.. nonce: LELKQx +.. section: Core and Builtins + +Fixed a minor memory leak in pymain_parse_cmdline_impl function in +Modules/main.c + +.. + +.. bpo: 35634 +.. date: 2019-01-05-18-39-49 +.. nonce: nVP_gs +.. section: Core and Builtins + +``func(**kwargs)`` will now raise an error when ``kwargs`` is a mapping +containing multiple entries with the same key. An error was already raised +when other keyword arguments are passed before ``**kwargs`` since Python +3.6. + +.. + +.. bpo: 35623 +.. date: 2018-12-31-02-37-20 +.. nonce: 24AQhY +.. section: Core and Builtins + +Fix a crash when sorting very long lists. Patch by Stephan Hohe. + +.. + +.. bpo: 35214 +.. date: 2018-12-30-15-36-23 +.. nonce: GWDQcv +.. section: Core and Builtins + +clang Memory Sanitizer build instrumentation was added to work around false +positives from posix, socket, time, test_io, and test_faulthandler. + +.. + +.. bpo: 35560 +.. date: 2018-12-22-22-19-51 +.. nonce: 9vMWSP +.. section: Core and Builtins + +Fix an assertion error in :func:`format` in debug build for floating point +formatting with "n" format, zero padding and small width. Release build is +not impacted. Patch by Karthikeyan Singaravelan. + +.. + +.. bpo: 35552 +.. date: 2018-12-21-13-29-30 +.. nonce: 1DzQQc +.. section: Core and Builtins + +Format characters ``%s`` and ``%V`` in :c:func:`PyUnicode_FromFormat` and +``%s`` in :c:func:`PyBytes_FromFormat` no longer read memory past the limit +if *precision* is specified. + +.. + +.. bpo: 35504 +.. date: 2018-12-15-14-01-45 +.. nonce: JtKczP +.. section: Core and Builtins + +Fix segfaults and :exc:`SystemError`\ s when deleting certain attributes. +Patch by Zackery Spytz. + +.. + +.. bpo: 35504 +.. date: 2018-12-15-00-47-41 +.. nonce: 9gVuen +.. section: Core and Builtins + +Fixed a SystemError when delete the characters_written attribute of an +OSError. + +.. + +.. bpo: 35494 +.. date: 2018-12-14-18-02-34 +.. nonce: IWOPtb +.. section: Core and Builtins + +Improved syntax error messages for unbalanced parentheses in f-string. + +.. + +.. bpo: 35444 +.. date: 2018-12-09-13-09-39 +.. nonce: 9kYn4V +.. section: Core and Builtins + +Fixed error handling in pickling methods when fail to look up builtin +"getattr". Sped up pickling iterators. + +.. + +.. bpo: 35436 +.. date: 2018-12-07-02-38-01 +.. nonce: 0VW7p9 +.. section: Core and Builtins + +Fix various issues with memory allocation error handling. Patch by Zackery +Spytz. + +.. + +.. bpo: 35423 +.. date: 2018-12-05-16-24-05 +.. nonce: UIie_O +.. section: Core and Builtins + +Separate the signal handling trigger in the eval loop from the "pending +calls" machinery. There is no semantic change and the difference in +performance is insignificant. + +.. + +.. bpo: 35357 +.. date: 2018-12-03-21-20-24 +.. nonce: rhhoiC +.. section: Core and Builtins + +Internal attributes' names of unittest.mock._Call and +unittest.mock.MagicProxy (name, parent & from_kall) are now prefixed with +_mock_ in order to prevent clashes with widely used object attributes. Fixed +minor typo in test function name. + +.. + +.. bpo: 35372 +.. date: 2018-12-01-19-20-53 +.. nonce: RwVJjZ +.. section: Core and Builtins + +Fixed the code page decoder for input longer than 2 GiB containing +undecodable bytes. + +.. + +.. bpo: 35336 +.. date: 2018-11-29-23-59-52 +.. nonce: 8LOz4F +.. section: Core and Builtins + +Fix PYTHONCOERCECLOCALE=1 environment variable: only coerce the C locale if +the LC_CTYPE locale is "C". + +.. + +.. bpo: 31241 +.. date: 2018-11-21-14-05-51 +.. nonce: Kin10- +.. section: Core and Builtins + +The *lineno* and *col_offset* attributes of AST nodes for list +comprehensions, generator expressions and tuples are now point to the +opening parenthesis or square brace. For tuples without parenthesis they +point to the position of the first item. + +.. + +.. bpo: 33954 +.. date: 2018-11-20-22-33-38 +.. nonce: RzSngM +.. section: Core and Builtins + +For :meth:`str.format`, :meth:`float.__format__` and +:meth:`complex.__format__` methods for non-ASCII decimal point when using +the "n" formatter. + +.. + +.. bpo: 35269 +.. date: 2018-11-17-10-18-29 +.. nonce: gjm1LO +.. section: Core and Builtins + +Fix a possible segfault involving a newly-created coroutine. Patch by +Zackery Spytz. + +.. + +.. bpo: 35224 +.. date: 2018-11-13-14-26-54 +.. nonce: F0B6UQ +.. section: Core and Builtins + +Implement :pep:`572` (assignment expressions). Patch by Emily Morehouse. + +.. + +.. bpo: 32492 +.. date: 2018-11-13-01-03-10 +.. nonce: voIdcp +.. section: Core and Builtins + +Speed up :class:`namedtuple` attribute access by 1.6x using a C fast-path +for the name descriptors. Patch by Pablo Galindo. + +.. + +.. bpo: 35214 +.. date: 2018-11-13-00-40-35 +.. nonce: OQBjph +.. section: Core and Builtins + +Fixed an out of bounds memory access when parsing a truncated unicode escape +sequence at the end of a string such as ``'\N'``. It would read one byte +beyond the end of the memory allocation. + +.. + +.. bpo: 35214 +.. date: 2018-11-12-11-38-06 +.. nonce: PCHKbX +.. section: Core and Builtins + +The interpreter and extension modules have had annotations added so that +they work properly under clang's Memory Sanitizer. A new configure flag +--with-memory-sanitizer has been added to make test builds of this nature +easier to perform. + +.. + +.. bpo: 35193 +.. date: 2018-11-08-15-00-58 +.. nonce: HzPS6R +.. section: Core and Builtins + +Fix an off by one error in the bytecode peephole optimizer where it could +read bytes beyond the end of bounds of an array when removing unreachable +code. This bug was present in every release of Python 3.6 and 3.7 until now. + +.. + +.. bpo: 35169 +.. date: 2018-11-05-21-19-05 +.. nonce: _FyPI2 +.. section: Core and Builtins + +Improved error messages for forbidden assignments. + +.. + +.. bpo: 34022 +.. date: 2018-11-04-18-13-40 +.. nonce: U3btVj +.. section: Core and Builtins + +Fix handling of hash-based bytecode files in :mod:`zipimport`. Patch by +Elvis Pranskevichus. + +.. + +.. bpo: 28401 +.. date: 2018-11-03-10-37-29 +.. nonce: RprDIg +.. section: Core and Builtins + +Debug builds will no longer to attempt to import extension modules built for +the ABI as they were never compatible to begin with. Patch by Stefano +Rivera. + +.. + +.. bpo: 29341 +.. date: 2018-10-25-20-53-32 +.. nonce: jH-AMF +.. section: Core and Builtins + +Clarify in the docstrings of :mod:`os` methods that path-like objects are +also accepted as input parameters. + +.. + +.. bpo: 35050 +.. date: 2018-10-23-15-03-53 +.. nonce: 49wraS +.. section: Core and Builtins + +:mod:`socket`: Fix off-by-one bug in length check for ``AF_ALG`` name and +type. + +.. + +.. bpo: 29743 +.. date: 2018-10-21-17-43-48 +.. nonce: aeCcKR +.. section: Core and Builtins + +Raise :exc:`ValueError` instead of :exc:`OverflowError` in case of a +negative ``_length_`` in a :class:`ctypes.Array` subclass. Also raise +:exc:`TypeError` instead of :exc:`AttributeError` for non-integer +``_length_``. Original patch by Oren Milman. + +.. + +.. bpo: 16806 +.. date: 2018-10-20-18-05-58 +.. nonce: zr3A9N +.. section: Core and Builtins + +Fix ``lineno`` and ``col_offset`` for multi-line string tokens. + +.. + +.. bpo: 35029 +.. date: 2018-10-20-10-26-15 +.. nonce: t4tZcQ +.. section: Core and Builtins + +:exc:`SyntaxWarning` raised as an exception at code generation time will be +now replaced with a :exc:`SyntaxError` for better error reporting. + +.. + +.. bpo: 34983 +.. date: 2018-10-14-17-26-41 +.. nonce: l8XaZd +.. section: Core and Builtins + +Expose :meth:`symtable.Symbol.is_nonlocal` in the symtable module. Patch by +Pablo Galindo. + +.. + +.. bpo: 34974 +.. date: 2018-10-13-22-24-19 +.. nonce: 7LgTc2 +.. section: Core and Builtins + +:class:`bytes` and :class:`bytearray` constructors no longer convert +unexpected exceptions (e.g. :exc:`MemoryError` and :exc:`KeyboardInterrupt`) +to :exc:`TypeError`. + +.. + +.. bpo: 34939 +.. date: 2018-10-13-17-40-15 +.. nonce: 0gpxlJ +.. section: Core and Builtins + +Allow annotated names in module namespace that are declared global before +the annotation happens. Patch by Pablo Galindo. + +.. + +.. bpo: 34973 +.. date: 2018-10-13-16-42-03 +.. nonce: B5M-3g +.. section: Core and Builtins + +Fixed crash in :func:`bytes` when the :class:`list` argument is mutated +while it is iterated. + +.. + +.. bpo: 34876 +.. date: 2018-10-06-14-02-51 +.. nonce: oBKBA4 +.. section: Core and Builtins + +The *lineno* and *col_offset* attributes of the AST for decorated function +and class refer now to the position of the corresponding ``def``, ``async +def`` and ``class`` instead of the position of the first decorator. This +leads to more correct line reporting in tracing. This is the only case when +the position of child AST nodes can preceed the position of the parent AST +node. + +.. + +.. bpo: 34879 +.. date: 2018-10-02-22-55-11 +.. nonce: 7VNH2a +.. section: Core and Builtins + +Fix a possible null pointer dereference in bytesobject.c. Patch by Zackery +Spytz. + +.. + +.. bpo: 34784 +.. date: 2018-10-02-09-10-47 +.. nonce: 07hdgD +.. section: Core and Builtins + +Fix the implementation of PyStructSequence_NewType in order to create heap +allocated StructSequences. + +.. + +.. bpo: 32912 +.. date: 2018-10-01-10-41-53 +.. nonce: JeIOdM +.. section: Core and Builtins + +A :exc:`SyntaxWarning` is now emitted instead of a :exc:`DeprecationWarning` +for invalid escape sequences in string and bytes literals. + +.. + +.. bpo: 34854 +.. date: 2018-09-30-19-27-13 +.. nonce: 6TKTcB +.. section: Core and Builtins + +Fixed a crash in compiling string annotations containing a lambda with a +keyword-only argument that doesn't have a default value. + +.. + +.. bpo: 34850 +.. date: 2018-09-30-11-19-55 +.. nonce: CbgDwb +.. section: Core and Builtins + +The compiler now produces a :exc:`SyntaxWarning` when identity checks +(``is`` and ``is not``) are used with certain types of literals (e.g. +strings, ints). These can often work by accident in CPython, but are not +guaranteed by the language spec. The warning advises users to use equality +tests (``==`` and ``!=``) instead. + +.. + +.. bpo: 34824 +.. date: 2018-09-27-11-10-02 +.. nonce: VLlCaU +.. section: Core and Builtins + +Fix a possible null pointer dereference in Modules/_ssl.c. Patch by Zackery +Spytz. + +.. + +.. bpo: 30156 +.. date: 2018-09-24-17-51-15 +.. nonce: pH0j5j +.. section: Core and Builtins + +The C function ``property_descr_get()`` uses a "cached" tuple to optimize +function calls. But this tuple can be discovered in debug mode with +:func:`sys.getobjects()`. Remove the optimization, it's not really worth it +and it causes 3 different crashes last years. + +.. + +.. bpo: 34762 +.. date: 2018-09-21-11-06-56 +.. nonce: 1nN53m +.. section: Core and Builtins + +Fix contextvars C API to use PyObject* pointer types. + +.. + +.. bpo: 34751 +.. date: 2018-09-20-15-41-58 +.. nonce: Yiv0pV +.. section: Core and Builtins + +The hash function for tuples is now based on xxHash which gives better +collision results on (formerly) pathological cases. Additionally, on 64-bit +systems it improves tuple hashes in general. Patch by Jeroen Demeyer with +substantial contributions by Tim Peters. + +.. + +.. bpo: 34735 +.. date: 2018-09-19-06-57-34 +.. nonce: -3mrSJ +.. section: Core and Builtins + +Fix a memory leak in Modules/timemodule.c. Patch by Zackery Spytz. + +.. + +.. bpo: 34683 +.. date: 2018-09-15-19-32-34 +.. nonce: msCiQE +.. section: Core and Builtins + +Fixed a bug where some SyntaxError error pointed to locations that were +off-by-one. + +.. + +.. bpo: 34651 +.. date: 2018-09-13-12-21-08 +.. nonce: v-bUeV +.. section: Core and Builtins + +Only allow the main interpreter to fork. The avoids the possibility of +affecting the main interpreter, which is critical to operation of the +runtime. + +.. + +.. bpo: 34653 +.. date: 2018-09-13-12-06-09 +.. nonce: z8NE-i +.. section: Core and Builtins + +Remove unused function PyParser_SimpleParseStringFilename. + +.. + +.. bpo: 32236 +.. date: 2018-09-11-23-50-40 +.. nonce: 3RupnN +.. section: Core and Builtins + +Warn that line buffering is not supported if :func:`open` is called with +binary mode and ``buffering=1``. + +.. + +.. bpo: 34641 +.. date: 2018-09-11-23-12-33 +.. nonce: gFBCc9 +.. section: Core and Builtins + +Further restrict the syntax of the left-hand side of keyword arguments in +function calls. In particular, ``f((keyword)=arg)`` is now disallowed. + +.. + +.. bpo: 34637 +.. date: 2018-09-11-17-25-44 +.. nonce: HSLqY4 +.. section: Core and Builtins + +Make the *start* argument to *sum()* visible as a keyword argument. + +.. + +.. bpo: 1621 +.. date: 2018-09-11-15-19-37 +.. nonce: 7o19yG +.. section: Core and Builtins + +Do not assume signed integer overflow behavior (C undefined behavior) when +performing set hash table resizing. + +.. + +.. bpo: 34588 +.. date: 2018-09-05-22-56-52 +.. nonce: UIuPmL +.. section: Core and Builtins + +Fix an off-by-one in the recursive call pruning feature of traceback +formatting. + +.. + +.. bpo: 34485 +.. date: 2018-08-29-11-04-19 +.. nonce: c2AFdp +.. section: Core and Builtins + +On Windows, the LC_CTYPE is now set to the user preferred locale at startup. +Previously, the LC_CTYPE locale was "C" at startup, but changed when calling +setlocale(LC_CTYPE, "") or setlocale(LC_ALL, ""). + +.. + +.. bpo: 34485 +.. date: 2018-08-29-09-27-47 +.. nonce: 5aJCmw +.. section: Core and Builtins + +Standard streams like sys.stdout now use the "surrogateescape" error +handler, instead of "strict", on the POSIX locale (when the C locale is not +coerced and the UTF-8 Mode is disabled). + +.. + +.. bpo: 34485 +.. date: 2018-08-28-23-01-14 +.. nonce: dq1Kqk +.. section: Core and Builtins + +Fix the error handler of standard streams like sys.stdout: +PYTHONIOENCODING=":" is now ignored instead of setting the error handler to +"strict". + +.. + +.. bpo: 34485 +.. date: 2018-08-28-17-48-40 +.. nonce: aFwck2 +.. section: Core and Builtins + +Python now gets the locale encoding with C code to initialize the encoding +of standard streams like sys.stdout. Moreover, the encoding is now +initialized to the Python codec name to get a normalized encoding name and +to ensure that the codec is loaded. The change avoids importing _bootlocale +and _locale modules at startup by default. + +.. + +.. bpo: 34527 +.. date: 2018-08-28-11-53-39 +.. nonce: aBEX9b +.. section: Core and Builtins + +On FreeBSD, Py_DecodeLocale() and Py_EncodeLocale() now also forces the +ASCII encoding if the LC_CTYPE locale is "POSIX", not only if the LC_CTYPE +locale is "C". + +.. + +.. bpo: 34527 +.. date: 2018-08-28-11-52-13 +.. nonce: sh5MQJ +.. section: Core and Builtins + +The UTF-8 Mode is now also enabled by the "POSIX" locale, not only by the +"C" locale. + +.. + +.. bpo: 34403 +.. date: 2018-08-28-10-49-55 +.. nonce: 4Q3LzP +.. section: Core and Builtins + +On HP-UX with C or POSIX locale, sys.getfilesystemencoding() now returns +"ascii" instead of "roman8" (when the UTF-8 Mode is disabled and the C +locale is not coerced). + +.. + +.. bpo: 34523 +.. date: 2018-08-28-01-45-01 +.. nonce: aUUkc3 +.. section: Core and Builtins + +The Python filesystem encoding is now read earlier during the Python +initialization. + +.. + +.. bpo: 12458 +.. date: 2018-08-15-20-46-49 +.. nonce: ApHbx5 +.. section: Core and Builtins + +Tracebacks show now correct line number for subexpressions in multiline +expressions. Tracebacks show now the line number of the first line for +multiline expressions instead of the line number of the last subexpression. + +.. + +.. bpo: 34408 +.. date: 2018-08-14-22-35-19 +.. nonce: aomWYW +.. section: Core and Builtins + +Prevent a null pointer dereference and resource leakage in +``PyInterpreterState_New()``. + +.. + +.. bpo: 34400 +.. date: 2018-08-14-03-52-43 +.. nonce: AJD0bz +.. section: Core and Builtins + +Fix undefined behavior in parsetok.c. Patch by Zackery Spytz. + +.. + +.. bpo: 33073 +.. date: 2018-08-12-16-03-58 +.. nonce: XWu1Jh +.. section: Core and Builtins + +Added as_integer_ratio to ints to make them more interoperable with floats. + +.. + +.. bpo: 34377 +.. date: 2018-08-10-15-05-00 +.. nonce: EJMMY4 +.. section: Core and Builtins + +Update valgrind suppression list to use +``_PyObject_Free``/``_PyObject_Realloc`` instead of +``PyObject_Free``/``PyObject_Realloc``. + +.. + +.. bpo: 34353 +.. date: 2018-08-09-18-42-49 +.. nonce: GIOm_8 +.. section: Core and Builtins + +Added the "socket" option in the `stat.filemode()` Python implementation to +match the C implementation. + +.. + +.. bpo: 34320 +.. date: 2018-08-02-22-34-59 +.. nonce: hNshAA +.. section: Core and Builtins + +Fix ``dict(od)`` didn't copy iteration order of OrderedDict. + +.. + +.. bpo: 34113 +.. date: 2018-07-28-10-34-00 +.. nonce: eZ5FWV +.. section: Core and Builtins + +Fixed crash on debug builds when opcode stack was adjusted with negative +numbers. Patch by Constantin Petrisor. + +.. + +.. bpo: 34100 +.. date: 2018-07-27-20-04-52 +.. nonce: ypJQX1 +.. section: Core and Builtins + +Compiler now merges constants in tuples and frozensets recursively. Code +attributes like ``co_names`` are merged too. + +.. + +.. bpo: 34151 +.. date: 2018-07-25-20-26-02 +.. nonce: Q2pK9Q +.. section: Core and Builtins + +Performance of list concatenation, repetition and slicing operations is +slightly improved. Patch by Sergey Fedoseev. + +.. + +.. bpo: 34170 +.. date: 2018-07-25-19-23-33 +.. nonce: v1h_H2 +.. section: Core and Builtins + +-X dev: it is now possible to override the memory allocator using +PYTHONMALLOC even if the developer mode is enabled. + +.. + +.. bpo: 33237 +.. date: 2018-07-24-12-54-57 +.. nonce: O95mps +.. section: Core and Builtins + +Improved :exc:`AttributeError` message for partially initialized module. + +.. + +.. bpo: 34149 +.. date: 2018-07-23-21-49-05 +.. nonce: WSV-_g +.. section: Core and Builtins + +Fix min and max functions to get default behavior when key is None. + +.. + +.. bpo: 34125 +.. date: 2018-07-23-16-34-03 +.. nonce: jCl2Q2 +.. section: Core and Builtins + +Profiling of unbound built-in methods now works when ``**kwargs`` is given. + +.. + +.. bpo: 34141 +.. date: 2018-07-18-08-36-58 +.. nonce: Fo7Q5r +.. section: Core and Builtins + +Optimized pickling atomic types (None, bool, int, float, bytes, str). + +.. + +.. bpo: 34126 +.. date: 2018-07-16-20-55-29 +.. nonce: mBVmgc +.. section: Core and Builtins + +Fix crashes when profiling certain invalid calls of unbound methods. Patch +by Jeroen Demeyer. + +.. + +.. bpo: 24618 +.. date: 2018-07-14-14-01-37 +.. nonce: iTKjD_ +.. section: Core and Builtins + +Fixed reading invalid memory when create the code object with too small +varnames tuple or too large argument counts. + +.. + +.. bpo: 34068 +.. date: 2018-07-14-08-58-46 +.. nonce: 9xfM55 +.. section: Core and Builtins + +In :meth:`io.IOBase.close`, ensure that the :attr:`~io.IOBase.closed` +attribute is not set with a live exception. Patch by Zackery Spytz and +Serhiy Storchaka. + +.. + +.. bpo: 34087 +.. date: 2018-07-13-22-09-55 +.. nonce: I1Bxfc +.. section: Core and Builtins + +Fix buffer overflow while converting unicode to numeric values. + +.. + +.. bpo: 34080 +.. date: 2018-07-10-11-24-16 +.. nonce: 8t7PtO +.. section: Core and Builtins + +Fixed a memory leak in the compiler when it raised some uncommon errors +during tokenizing. + +.. + +.. bpo: 34066 +.. date: 2018-07-07-20-15-34 +.. nonce: y9vs6s +.. section: Core and Builtins + +Disabled interruption by Ctrl-C between calling ``open()`` and entering a +**with** block in ``with open()``. + +.. + +.. bpo: 34042 +.. date: 2018-07-05-15-51-29 +.. nonce: Gr9XUH +.. section: Core and Builtins + +Fix dict.copy() to maintain correct total refcount (as reported by +sys.gettotalrefcount()). + +.. + +.. bpo: 33418 +.. date: 2018-07-03-19-00-10 +.. nonce: cfGm3n +.. section: Core and Builtins + +Fix potential memory leak in function object when it creates reference +cycle. + +.. + +.. bpo: 33985 +.. date: 2018-06-27-18-56-41 +.. nonce: ILJ3Af +.. section: Core and Builtins + +Implement contextvars.ContextVar.name attribute. + +.. + +.. bpo: 33956 +.. date: 2018-06-25-20-42-44 +.. nonce: 1qoTwD +.. section: Core and Builtins + +Update vendored Expat library copy to version 2.2.5. + +.. + +.. bpo: 24596 +.. date: 2018-06-25-16-54-05 +.. nonce: Rkwova +.. section: Core and Builtins + +Decref the module object in :c:func:`PyRun_SimpleFileExFlags` before calling +:c:func:`PyErr_Print()`. Patch by Zackery Spytz. + +.. + +.. bpo: 33451 +.. date: 2018-06-23-15-32-02 +.. nonce: sWN-1l +.. section: Core and Builtins + +Close directly executed pyc files before calling ``PyEval_EvalCode()``. + +.. + +.. bpo: 1617161 +.. date: 2018-06-21-21-42-15 +.. nonce: tSo2yM +.. section: Core and Builtins + +The hash of :class:`BuiltinMethodType` instances (methods of built-in +classes) now depends on the hash of the identity of *__self__* instead of +its value. The hash and equality of :class:`ModuleType` and +:class:`MethodWrapperType` instances (methods of user-defined classes and +some methods of built-in classes like ``str.__add__``) now depend on the +hash and equality of the identity of *__self__* instead of its value. +:class:`MethodWrapperType` instances no longer support ordering. + +.. + +.. bpo: 33824 +.. date: 2018-06-15-19-39-06 +.. nonce: DfWHT3 +.. section: Core and Builtins + +Fix "LC_ALL=C python3.7 -V": reset properly the command line parser when the +encoding changes after reading the Python configuration. + +.. + +.. bpo: 33803 +.. date: 2018-06-07-20-18-38 +.. nonce: n-Nq6_ +.. section: Core and Builtins + +Fix a crash in hamt.c caused by enabling GC tracking for an object that +hadn't all of its fields set to NULL. + +.. + +.. bpo: 33738 +.. date: 2018-06-07-18-34-19 +.. nonce: ODZS7a +.. section: Core and Builtins + +Seven macro incompatibilities with the Limited API were fixed, and the +macros :c:func:`PyIter_Check`, :c:func:`PyIndex_Check` and +:c:func:`PyExceptionClass_Name` were added as functions. A script for +automatic macro checks was added. + +.. + +.. bpo: 33786 +.. date: 2018-06-06-23-24-40 +.. nonce: lBvT8z +.. section: Core and Builtins + +Fix asynchronous generators to handle GeneratorExit in athrow() correctly + +.. + +.. bpo: 30167 +.. date: 2018-06-05-15-49-02 +.. nonce: e956hA +.. section: Core and Builtins + +``PyRun_SimpleFileExFlags`` removes ``__cached__`` from module in addition +to ``__file__``. + +.. + +.. bpo: 33706 +.. date: 2018-05-31-14-50-04 +.. nonce: ztlH04 +.. section: Core and Builtins + +Fix a crash in Python initialization when parsing the command line options. +Thanks Christoph Gohlke for the bug report and the fix! + +.. + +.. bpo: 33597 +.. date: 2018-05-28-21-17-31 +.. nonce: r0ToM4 +.. section: Core and Builtins + +Reduce ``PyGC_Head`` size from 3 words to 2 words. + +.. + +.. bpo: 30654 +.. date: 2018-05-28-12-28-53 +.. nonce: 9fDJye +.. section: Core and Builtins + +Fixed reset of the SIGINT handler to SIG_DFL on interpreter shutdown even +when there was a custom handler set previously. Patch by Philipp Kerling. + +.. + +.. bpo: 33622 +.. date: 2018-05-23-20-46-14 +.. nonce: xPucO9 +.. section: Core and Builtins + +Fixed a leak when the garbage collector fails to add an object with the +``__del__`` method or referenced by it into the :data:`gc.garbage` list. +:c:func:`PyGC_Collect` can now be called when an exception is set and +preserves it. + +.. + +.. bpo: 33462 +.. date: 2018-05-23-17-18-02 +.. nonce: gurbpbrhe +.. section: Core and Builtins + +Make dict and dict views reversible. Patch by R?mi Lapeyre. + +.. + +.. bpo: 23722 +.. date: 2018-05-17-13-06-36 +.. nonce: xisqZk +.. section: Core and Builtins + +A :exc:`RuntimeError` is now raised when the custom metaclass doesn't +provide the ``__classcell__`` entry in the namespace passed to +``type.__new__``. A :exc:`DeprecationWarning` was emitted in Python +3.6--3.7. + +.. + +.. bpo: 33499 +.. date: 2018-05-15-10-48-47 +.. nonce: uBEc06 +.. section: Core and Builtins + +Add :envvar:`PYTHONPYCACHEPREFIX` environment variable and :option:`-X` +``pycache_prefix`` command-line option to set an alternate root directory +for writing module bytecode cache files. + +.. + +.. bpo: 25711 +.. date: 2018-05-14-18-54-03 +.. nonce: 9xfq-v +.. section: Core and Builtins + +The :mod:`zipimport` module has been rewritten in pure Python. + +.. + +.. bpo: 33509 +.. date: 2018-05-14-17-31-02 +.. nonce: pIUfTd +.. section: Core and Builtins + +Fix module_globals parameter of warnings.warn_explicit(): don't crash if +module_globals is not a dict. + +.. + +.. bpo: 31849 +.. date: 2018-05-14-11-00-00 +.. nonce: EmHaH4 +.. section: Core and Builtins + +Fix signed/unsigned comparison warning in pyhash.c. + +.. + +.. bpo: 33475 +.. date: 2018-05-13-01-26-18 +.. nonce: rI0y1U +.. section: Core and Builtins + +Fixed miscellaneous bugs in converting annotations to strings and optimized +parentheses in the string representation. + +.. + +.. bpo: 20104 +.. date: 2018-05-05-23-26-58 +.. nonce: tDBciE +.. section: Core and Builtins + +Added support for the `setpgroup`, `resetids`, `setsigmask`, `setsigdef` and +`scheduler` parameters of `posix_spawn`. Patch by Pablo Galindo. + +.. + +.. bpo: 33391 +.. date: 2018-05-02-08-36-03 +.. nonce: z4a7rb +.. section: Core and Builtins + +Fix a leak in set_symmetric_difference(). + +.. + +.. bpo: 33363 +.. date: 2018-04-26-22-48-28 +.. nonce: 8RCnN2 +.. section: Core and Builtins + +Raise a SyntaxError for ``async with`` and ``async for`` statements outside +of async functions. + +.. + +.. bpo: 28055 +.. date: 2018-04-25-20-44-42 +.. nonce: f49kfC +.. section: Core and Builtins + +Fix unaligned accesses in siphash24(). Patch by Rolf Eike Beer. + +.. + +.. bpo: 33128 +.. date: 2018-04-24-22-31-04 +.. nonce: g2yLuf +.. section: Core and Builtins + +Fix a bug that causes PathFinder to appear twice on sys.meta_path. Patch by +Pablo Galindo Salgado. + +.. + +.. bpo: 33331 +.. date: 2018-04-22-13-41-59 +.. nonce: s_DxdL +.. section: Core and Builtins + +Modules imported last are now cleared first at interpreter shutdown. + +.. + +.. bpo: 33312 +.. date: 2018-04-19-08-30-07 +.. nonce: mDe2iL +.. section: Core and Builtins + +Fixed clang ubsan (undefined behavior sanitizer) warnings in dictobject.c by +adjusting how the internal struct _dictkeysobject shared keys structure is +declared. + +.. + +.. bpo: 33305 +.. date: 2018-04-18-14-17-44 +.. nonce: 9z3dDH +.. section: Core and Builtins + +Improved syntax error messages for invalid numerical literals. + +.. + +.. bpo: 33306 +.. date: 2018-04-18-12-23-30 +.. nonce: tSM3cp +.. section: Core and Builtins + +Improved syntax error messages for unbalanced parentheses. + +.. + +.. bpo: 33234 +.. date: 2018-04-17-01-24-51 +.. nonce: l9IDtp +.. section: Core and Builtins + +The list constructor will pre-size and not over-allocate when the input +lenght is known. + +.. + +.. bpo: 33270 +.. date: 2018-04-14-13-12-50 +.. nonce: UmVV6i +.. section: Core and Builtins + +Intern the names for all anonymous code objects. Patch by Zackery Spytz. + +.. + +.. bpo: 30455 +.. date: 2018-04-14-11-02-57 +.. nonce: ANRwjo +.. section: Core and Builtins + +The C and Python code and the documentation related to tokens are now +generated from a single source file :file:`Grammar/Tokens`. + +.. + +.. bpo: 33176 +.. date: 2018-04-13-22-31-09 +.. nonce: PB9com +.. section: Core and Builtins + +Add a ``toreadonly()`` method to memoryviews. + +.. + +.. bpo: 33231 +.. date: 2018-04-05-22-20-44 +.. nonce: 3Jmo0q +.. section: Core and Builtins + +Fix potential memory leak in ``normalizestring()``. + +.. + +.. bpo: 33205 +.. date: 2018-04-03-00-58-41 +.. nonce: lk2F3r +.. section: Core and Builtins + +Change dict growth function from +``round_up_to_power_2(used*2+hashtable_size/2)`` to +``round_up_to_power_2(used*3)``. Previously, dict is shrinked only when +``used == 0``. Now dict has more chance to be shrinked. + +.. + +.. bpo: 29922 +.. date: 2018-04-03-00-30-25 +.. nonce: CdLuMl +.. section: Core and Builtins + +Improved error messages in 'async with' when ``__aenter__()`` or +``__aexit__()`` return non-awaitable object. + +.. + +.. bpo: 33199 +.. date: 2018-04-02-09-32-40 +.. nonce: TPnxQu +.. section: Core and Builtins + +Fix ``ma_version_tag`` in dict implementation is uninitialized when copying +from key-sharing dict. + +.. + +.. bpo: 33053 +.. date: 2018-03-25-19-49-06 +.. nonce: V3xlsH +.. section: Core and Builtins + +When using the -m switch, sys.path[0] is now explicitly expanded as the +*starting* working directory, rather than being left as the empty path +(which allows imports from the current working directory at the time of the +import) + +.. + +.. bpo: 33138 +.. date: 2018-03-25-19-25-14 +.. nonce: aSqudH +.. section: Core and Builtins + +Changed standard error message for non-pickleable and non-copyable types. It +now says "cannot pickle" instead of "can't pickle" or "cannot serialize". + +.. + +.. bpo: 33018 +.. date: 2018-03-22-23-09-06 +.. nonce: 0ncEJV +.. section: Core and Builtins + +Improve consistency of errors raised by ``issubclass()`` when called with a +non-class and an abstract base class as the first and second arguments, +respectively. Patch by Josh Bronson. + +.. + +.. bpo: 33083 +.. date: 2018-03-19-00-59-20 +.. nonce: Htztjl +.. section: Core and Builtins + +``math.factorial`` no longer accepts arguments that are not int-like. Patch +by Pablo Galindo. + +.. + +.. bpo: 33041 +.. date: 2018-03-18-13-56-14 +.. nonce: XwPhI2 +.. section: Core and Builtins + +Added new opcode :opcode:`END_ASYNC_FOR` and fixes the following issues: + +* Setting global :exc:`StopAsyncIteration` no longer breaks ``async for`` + loops. +* Jumping into an ``async for`` loop is now disabled. +* Jumping out of an ``async for`` loop no longer corrupts the stack. + +.. + +.. bpo: 25750 +.. date: 2018-03-14-21-42-17 +.. nonce: lxgkQz +.. section: Core and Builtins + +Fix rare Python crash due to bad refcounting in ``type_getattro()`` if a +descriptor deletes itself from the class. Patch by Jeroen Demeyer. + +.. + +.. bpo: 33041 +.. date: 2018-03-10-15-16-40 +.. nonce: -ak5Fk +.. section: Core and Builtins + +Fixed bytecode generation for "async for" with a complex target. A +StopAsyncIteration raised on assigning or unpacking will be now propagated +instead of stopping the iteration. + +.. + +.. bpo: 33026 +.. date: 2018-03-08-09-48-38 +.. nonce: QZA3Ba +.. section: Core and Builtins + +Fixed jumping out of "with" block by setting f_lineno. + +.. + +.. bpo: 33005 +.. date: 2018-03-06-12-19-19 +.. nonce: LP-V2U +.. section: Core and Builtins + +Fix a crash on fork when using a custom memory allocator (ex: using +PYTHONMALLOC env var). _PyGILState_Reinit() and _PyInterpreterState_Enable() +now use the default RAW memory allocator to allocate a new interpreters +mutex on fork. + +.. + +.. bpo: 32911 +.. date: 2018-02-27-20-57-00 +.. nonce: cmKfco +.. section: Core and Builtins + +Due to unexpected compatibility issues discovered during downstream beta +testing, reverted :issue:`29463`. ``docstring`` field is removed from +Module, ClassDef, FunctionDef, and AsyncFunctionDef ast nodes which was +added in 3.7a1. Docstring expression is restored as a first statement in +their body. Based on patch by Inada Naoki. + +.. + +.. bpo: 17288 +.. date: 2018-02-27-13-36-21 +.. nonce: Gdj24S +.. section: Core and Builtins + +Prevent jumps from 'return' and 'exception' trace events. + +.. + +.. bpo: 32946 +.. date: 2018-02-25-10-52-40 +.. nonce: Lo09rG +.. section: Core and Builtins + +Importing names from already imported module with "from ... import ..." is +now 30% faster if the module is not a package. + +.. + +.. bpo: 32932 +.. date: 2018-02-24-21-51-42 +.. nonce: 2cz31L +.. section: Core and Builtins + +Make error message more revealing when there are non-str objects in +``__all__``. + +.. + +.. bpo: 32925 +.. date: 2018-02-24-00-07-05 +.. nonce: e-7Ufh +.. section: Core and Builtins + +Optimized iterating and containing test for literal lists consisting of +non-constants: ``x in [a, b]`` and ``for x in [a, b]``. The case of all +constant elements already was optimized. + +.. + +.. bpo: 32889 +.. date: 2018-02-20-21-53-48 +.. nonce: J6eWy5 +.. section: Core and Builtins + +Update Valgrind suppression list to account for the rename of +``Py_ADDRESS_IN_RANG`` to ``address_in_range``. + +.. + +.. bpo: 32836 +.. date: 2018-02-14-12-35-47 +.. nonce: bThJnx +.. section: Core and Builtins + +Don't use temporary variables in cases of list/dict/set comprehensions + +.. + +.. bpo: 31356 +.. date: 2018-02-02-08-50-46 +.. nonce: MNwUOQ +.. section: Core and Builtins + +Remove the new API added in bpo-31356 (gc.ensure_disabled() context +manager). + +.. + +.. bpo: 32305 +.. date: 2018-02-01-10-56-41 +.. nonce: dkU9Qa +.. section: Core and Builtins + +For namespace packages, ensure that both ``__file__`` and +``__spec__.origin`` are set to None. + +.. + +.. bpo: 32303 +.. date: 2018-02-01-10-16-28 +.. nonce: VsvhSl +.. section: Core and Builtins + +Make sure ``__spec__.loader`` matches ``__loader__`` for namespace packages. + +.. + +.. bpo: 32711 +.. date: 2018-01-29-14-36-37 +.. nonce: 8hQFJP +.. section: Core and Builtins + +Fix the warning messages for Python/ast_unparse.c. Patch by St?phane Wirtel + +.. + +.. bpo: 32583 +.. date: 2018-01-26-21-20-21 +.. nonce: Fh3fau +.. section: Core and Builtins + +Fix possible crashing in builtin Unicode decoders caused by write +out-of-bound errors when using customized decode error handlers. + +.. + +.. bpo: 32489 +.. date: 2018-01-03-23-12-43 +.. nonce: SDEPHB +.. section: Core and Builtins + +A :keyword:`continue` statement is now allowed in the :keyword:`finally` +clause. + +.. + +.. bpo: 17611 +.. date: 2017-12-24-19-48-59 +.. nonce: P85kWL +.. section: Core and Builtins + +Simplified the interpreter loop by moving the logic of unrolling the stack +of blocks into the compiler. The compiler emits now explicit instructions +for adjusting the stack of values and calling the cleaning up code for +:keyword:`break`, :keyword:`continue` and :keyword:`return`. + +Removed opcodes :opcode:`BREAK_LOOP`, :opcode:`CONTINUE_LOOP`, +:opcode:`SETUP_LOOP` and :opcode:`SETUP_EXCEPT`. Added new opcodes +:opcode:`ROT_FOUR`, :opcode:`BEGIN_FINALLY` and :opcode:`CALL_FINALLY` and +:opcode:`POP_FINALLY`. Changed the behavior of :opcode:`END_FINALLY` and +:opcode:`WITH_CLEANUP_START`. + +.. + +.. bpo: 32285 +.. date: 2017-12-12-13-43-13 +.. nonce: LzKSwz +.. section: Core and Builtins + +New function unicodedata.is_normalized, which can check whether a string is +in a specific normal form. + +.. + +.. bpo: 10544 +.. date: 2017-11-26-00-59-22 +.. nonce: fHOM3V +.. section: Core and Builtins + +Yield expressions are now disallowed in comprehensions and generator +expressions except the expression for the outermost iterable. + +.. + +.. bpo: 32117 +.. date: 2017-11-22-15-43-14 +.. nonce: -vloh8 +.. section: Core and Builtins + +Iterable unpacking is now allowed without parentheses in yield and return +statements, e.g. ``yield 1, 2, 3, *rest``. Thanks to David Cuthbert for the +change and Jordan Chapman for added tests. + +.. + +.. bpo: 31902 +.. date: 2017-10-30-12-44-50 +.. nonce: a07fa57 +.. section: Core and Builtins + +Fix the ``col_offset`` attribute for ast nodes ``ast.AsyncFor``, +``ast.AsyncFunctionDef``, and ``ast.AsyncWith``. Previously, ``col_offset`` +pointed to the keyword after ``async``. + +.. + +.. bpo: 25862 +.. date: 2017-10-07-10-13-15 +.. nonce: FPYBA5 +.. section: Core and Builtins + +Fix assertion failures in the ``tell()`` method of ``io.TextIOWrapper``. +Patch by Zackery Spytz. + +.. + +.. bpo: 21983 +.. date: 2017-10-02-21-02-14 +.. nonce: UoC319 +.. section: Core and Builtins + +Fix a crash in `ctypes.cast()` in case the type argument is a ctypes +structured data type. Patch by Eryk Sun and Oren Milman. + +.. + +.. bpo: 31577 +.. date: 2017-09-25-20-36-24 +.. nonce: jgYsSA +.. section: Core and Builtins + +Fix a crash in `os.utime()` in case of a bad ns argument. Patch by Oren +Milman. + +.. + +.. bpo: 29832 +.. date: 2017-09-12-08-11-01 +.. nonce: Kuf2M7 +.. section: Core and Builtins + +Remove references to 'getsockaddrarg' from various socket error messages. +Patch by Oren Milman. + +.. + +.. bpo: 35845 +.. date: 2019-02-02-00-04-01 +.. nonce: 1jx2wk +.. section: Library + +Add 'order' parameter to memoryview.tobytes(). + +.. + +.. bpo: 35864 +.. date: 2019-01-30-20-22-36 +.. nonce: ig9KnG +.. section: Library + +The _asdict() method for collections.namedtuple now returns a regular dict +instead of an OrderedDict. + +.. + +.. bpo: 35537 +.. date: 2019-01-29-17-24-52 +.. nonce: Q0ktFC +.. section: Library + +An ExitStack is now used internally within subprocess.POpen to clean up pipe +file handles. No behavior change in normal operation. But if closing one +handle were ever to cause an exception, the others will now be closed +instead of leaked. (patch by Giampaolo Rodola) + +.. + +.. bpo: 35847 +.. date: 2019-01-29-09-11-09 +.. nonce: eiSi4t +.. section: Library + +RISC-V needed the CTYPES_PASS_BY_REF_HACK. Fixes ctypes Structure +test_pass_by_value. + +.. + +.. bpo: 35813 +.. date: 2019-01-23-22-44-37 +.. nonce: Yobj-Y +.. section: Library + +Shared memory submodule added to multiprocessing to avoid need for +serialization between processes + +.. + +.. bpo: 35780 +.. date: 2019-01-19-17-01-43 +.. nonce: CLf7fT +.. section: Library + +Fix lru_cache() errors arising in recursive, reentrant, or multi-threaded +code. These errors could result in orphan links and in the cache being +trapped in a state with fewer than the specified maximum number of links. +Fix handling of negative maxsize which should have been treated as zero. Fix +errors in toggling the "full" status flag. Fix misordering of links when +errors are encountered. Sync-up the C code and pure Python code for the +space saving path in functions with a single positional argument. In this +common case, the space overhead of an lru cache entry is reduced by almost +half. Fix counting of cache misses. In error cases, the miss count was out +of sync with the actual number of times the underlying user function was +called. + +.. + +.. bpo: 35537 +.. date: 2019-01-18-13-44-13 +.. nonce: R1lbTl +.. section: Library + +:func:`os.posix_spawn` and :func:`os.posix_spawnp` now have a *setsid* +parameter. + +.. + +.. bpo: 23846 +.. date: 2019-01-15-13-31-30 +.. nonce: LT_qL8 +.. section: Library + +:class:`asyncio.ProactorEventLoop` now catchs and logs send errors when the +self-pipe is full. + +.. + +.. bpo: 34323 +.. date: 2019-01-14-17-34-36 +.. nonce: CRErrt +.. section: Library + +:mod:`asyncio`: Enhance ``IocpProactor.close()`` log: wait 1 second before +the first log, then log every second. Log also the number of seconds since +``close()`` was called. + +.. + +.. bpo: 35674 +.. date: 2019-01-14-14-13-08 +.. nonce: kamWqz +.. section: Library + +Add a new :func:`os.posix_spawnp` function. Patch by Joannah Nanjekye. + +.. + +.. bpo: 35733 +.. date: 2019-01-13-18-42-41 +.. nonce: eFfLiv +.. section: Library + +``ast.Constant(boolean)`` no longer an instance of :class:`ast.Num`. Patch +by Anthony Sottile. + +.. + +.. bpo: 35726 +.. date: 2019-01-13-01-33-00 +.. nonce: dasdas +.. section: Library + +QueueHandler.prepare() now makes a copy of the record before modifying and +enqueueing it, to avoid affecting other handlers in the chain. + +.. + +.. bpo: 35719 +.. date: 2019-01-11-20-21-59 +.. nonce: qyRcpE +.. section: Library + +Sped up multi-argument :mod:`math` functions atan2(), copysign(), +remainder() and hypot() by 1.3--2.5 times. + +.. + +.. bpo: 35717 +.. date: 2019-01-11-17-56-15 +.. nonce: 6TDTB_ +.. section: Library + +Fix KeyError exception raised when using enums and compile. Patch +contributed by R?mi Lapeyre. + +.. + +.. bpo: 35699 +.. date: 2019-01-11-07-09-25 +.. nonce: VDiENF +.. section: Library + +Fixed detection of Visual Studio Build Tools 2017 in distutils + +.. + +.. bpo: 32710 +.. date: 2019-01-10-15-55-10 +.. nonce: KwECPu +.. section: Library + +Fix memory leaks in asyncio ProactorEventLoop on overlapped operation +failure. + +.. + +.. bpo: 35702 +.. date: 2019-01-10-14-03-12 +.. nonce: _ct_0H +.. section: Library + +The :data:`time.CLOCK_UPTIME_RAW` constant is now available for macOS 10.12. + +.. + +.. bpo: 32710 +.. date: 2019-01-08-14-00-52 +.. nonce: Sn5Ujj +.. section: Library + +Fix a memory leak in asyncio in the ProactorEventLoop when ``ReadFile()`` or +``WSASend()`` overlapped operation fail immediately: release the internal +buffer. + +.. + +.. bpo: 35682 +.. date: 2019-01-08-01-54-02 +.. nonce: KDM9lk +.. section: Library + +Fix ``asyncio.ProactorEventLoop.sendfile()``: don't attempt to set the +result of an internal future if it's already done. + +.. + +.. bpo: 35283 +.. date: 2019-01-07-17-17-16 +.. nonce: WClosC +.. section: Library + +Add a deprecated warning for the :meth:`threading.Thread.isAlive` method. +Patch by Dong-hee Na. + +.. + +.. bpo: 35664 +.. date: 2019-01-04-22-18-25 +.. nonce: Z-Gyyj +.. section: Library + +Improve operator.itemgetter() performance by 33% with optimized argument +handling and with adding a fast path for the common case of a single +non-negative integer index into a tuple (which is the typical use case in +the standard library). + +.. + +.. bpo: 35643 +.. date: 2019-01-02-20-04-49 +.. nonce: DaMiaV +.. section: Library + +Fixed a SyntaxWarning: invalid escape sequence in Modules/_sha3/cleanup.py. +Patch by Micka?l Schoentgen. + +.. + +.. bpo: 35619 +.. date: 2018-12-30-19-50-36 +.. nonce: ZRXdhy +.. section: Library + +Improved support of custom data descriptors in :func:`help` and +:mod:`pydoc`. + +.. + +.. bpo: 28503 +.. date: 2018-12-30-14-56-33 +.. nonce: V4kNN3 +.. section: Library + +The `crypt` module now internally uses the `crypt_r()` library function +instead of `crypt()` when available. + +.. + +.. bpo: 35614 +.. date: 2018-12-30-01-10-50 +.. nonce: cnkM4f +.. section: Library + +Fixed help() on metaclasses. Patch by Sanyam Khurana. + +.. + +.. bpo: 35568 +.. date: 2018-12-27-19-23-00 +.. nonce: PutiOC +.. section: Library + +Expose ``raise(signum)`` as `raise_signal` + +.. + +.. bpo: 35588 +.. date: 2018-12-26-10-55-59 +.. nonce: PSR6Ez +.. section: Library + +The floor division and modulo operations and the :func:`divmod` function on +:class:`fractions.Fraction` types are 2--4x faster. Patch by Stefan Behnel. + +.. + +.. bpo: 35585 +.. date: 2018-12-26-02-28-00 +.. nonce: Lkzd3Z +.. section: Library + +Speed-up building enums by value, e.g. http.HTTPStatus(200). + +.. + +.. bpo: 30561 +.. date: 2018-12-23-22-27-59 +.. nonce: PSRQ2w +.. section: Library + +random.gammavariate(1.0, beta) now computes the same result as +random.expovariate(1.0 / beta). This synchonizes the two algorithms and +eliminates some idiosyncrasies in the old implementation. It does however +produce a difference stream of random variables than it used to. + +.. + +.. bpo: 35537 +.. date: 2018-12-20-16-24-51 +.. nonce: z4E7aA +.. section: Library + +The :mod:`subprocess` module can now use the :func:`os.posix_spawn` function +in some cases for better performance. + +.. + +.. bpo: 35526 +.. date: 2018-12-18-21-12-25 +.. nonce: fYvo6H +.. section: Library + +Delaying the 'joke' of barry_as_FLUFL.mandatory to Python version 4.0 + +.. + +.. bpo: 35523 +.. date: 2018-12-18-13-52-13 +.. nonce: SkoMno +.. section: Library + +Remove :mod:`ctypes` callback workaround: no longer create a callback at +startup. Avoid SELinux alert on ``import ctypes`` and ``import uuid``. + +.. + +.. bpo: 31784 +.. date: 2018-12-17-11-43-11 +.. nonce: W0gDjC +.. section: Library + +:func:`uuid.uuid1` now calls :func:`time.time_ns` rather than +``int(time.time() * 1e9)``. + +.. + +.. bpo: 35513 +.. date: 2018-12-16-23-28-49 +.. nonce: pn-Zh3 +.. section: Library + +:class:`~unittest.runner.TextTestRunner` of :mod:`unittest.runner` now uses +:func:`time.perf_counter` rather than :func:`time.time` to measure the +execution time of a test: :func:`time.time` can go backwards, whereas +:func:`time.perf_counter` is monotonic. + +.. + +.. bpo: 35502 +.. date: 2018-12-14-23-56-48 +.. nonce: gLHuFS +.. section: Library + +Fixed reference leaks in :class:`xml.etree.ElementTree.TreeBuilder` in case +of unfinished building of the tree (in particular when an error was raised +during parsing XML). + +.. + +.. bpo: 35348 +.. date: 2018-12-14-13-27-45 +.. nonce: u3Y2an +.. section: Library + +Make :func:`platform.architecture` parsing of ``file`` command output more +reliable: add the ``-b`` option to the ``file`` command to omit the +filename, force the usage of the C locale, and search also the "shared +object" pattern. + +.. + +.. bpo: 35491 +.. date: 2018-12-14-12-12-15 +.. nonce: jHsNOU +.. section: Library + +:mod:`multiprocessing`: Add ``Pool.__repr__()`` and enhance +``BaseProcess.__repr__()`` (add pid and parent pid) to ease debugging. Pool +state constant values are now strings instead of integers, for example +``RUN`` value becomes ``'RUN'`` instead of ``0``. + +.. + +.. bpo: 35477 +.. date: 2018-12-13-00-10-51 +.. nonce: hHyy06 +.. section: Library + +:meth:`multiprocessing.Pool.__enter__` now fails if the pool is not running: +``with pool:`` fails if used more than once. + +.. + +.. bpo: 31446 +.. date: 2018-12-12-22-52-34 +.. nonce: l--Fjz +.. section: Library + +Copy command line that was passed to CreateProcessW since this function can +change the content of the input buffer. + +.. + +.. bpo: 35471 +.. date: 2018-12-12-16-25-21 +.. nonce: SK8jFC +.. section: Library + +Python 2.4 dropped MacOS 9 support. The macpath module was deprecated in +Python 3.7. The module is now removed. + +.. + +.. bpo: 23057 +.. date: 2018-12-12-16-24-55 +.. nonce: OB4Z1Y +.. section: Library + +Unblock Proactor event loop when keyboard interrupt is received on Windows + +.. + +.. bpo: 35052 +.. date: 2018-12-10-09-48-27 +.. nonce: xE1ymg +.. section: Library + +Fix xml.dom.minidom cloneNode() on a document with an entity: pass the +correct arguments to the user data handler of an entity. + +.. + +.. bpo: 20239 +.. date: 2018-12-09-21-35-49 +.. nonce: V4mWBL +.. section: Library + +Allow repeated assignment deletion of :class:`unittest.mock.Mock` +attributes. Patch by Pablo Galindo. + +.. + +.. bpo: 17185 +.. date: 2018-12-09-17-04-15 +.. nonce: SfSCJF +.. section: Library + +Set ``__signature__`` on mock for :mod:`inspect` to get signature. Patch by +Karthikeyan Singaravelan. + +.. + +.. bpo: 35445 +.. date: 2018-12-09-14-35-49 +.. nonce: LjvtsC +.. section: Library + +Memory errors during creating posix.environ no longer ignored. + +.. + +.. bpo: 35415 +.. date: 2018-12-06-14-44-21 +.. nonce: -HoK3d +.. section: Library + +Validate fileno= argument to socket.socket(). + +.. + +.. bpo: 35424 +.. date: 2018-12-06-02-02-28 +.. nonce: gXxOJU +.. section: Library + +:class:`multiprocessing.Pool` destructor now emits :exc:`ResourceWarning` if +the pool is still running. + +.. + +.. bpo: 35330 +.. date: 2018-12-06-00-43-13 +.. nonce: abB4BN +.. section: Library + +When a :class:`Mock` instance was used to wrap an object, if `side_effect` +is used in one of the mocks of it methods, don't call the original +implementation and return the result of using the side effect the same way +that it is done with return_value. + +.. + +.. bpo: 35346 +.. date: 2018-12-05-22-52-21 +.. nonce: Okm9-S +.. section: Library + +Drop Mac OS 9 and Rhapsody support from the :mod:`platform` module. Rhapsody +last release was in 2000. Mac OS 9 last release was in 2001. + +.. + +.. bpo: 10496 +.. date: 2018-12-05-17-42-49 +.. nonce: laV_IE +.. section: Library + +:func:`~distutils.utils.check_environ` of :mod:`distutils.utils` now catchs +:exc:`KeyError` on calling :func:`pwd.getpwuid`: don't create the ``HOME`` +environment variable in this case. + +.. + +.. bpo: 10496 +.. date: 2018-12-05-13-37-39 +.. nonce: VH-1Lp +.. section: Library + +:func:`posixpath.expanduser` now returns the input *path* unchanged if the +``HOME`` environment variable is not set and the current user has no home +directory (if the current user identifier doesn't exist in the password +database). This change fix the :mod:`site` module if the current user +doesn't exist in the password database (if the user has no home directory). + +.. + +.. bpo: 35389 +.. date: 2018-12-04-12-46-05 +.. nonce: CTZ9iA +.. section: Library + +:func:`platform.libc_ver` now uses ``os.confstr('CS_GNU_LIBC_VERSION')`` if +available and the *executable* parameter is not set. + +.. + +.. bpo: 35394 +.. date: 2018-12-04-12-17-08 +.. nonce: fuTVDk +.. section: Library + +Add empty slots to asyncio abstract protocols. + +.. + +.. bpo: 35310 +.. date: 2018-12-03-19-45-00 +.. nonce: 9k28gR +.. section: Library + +Fix a bug in :func:`select.select` where, in some cases, the file descriptor +sequences were returned unmodified after a signal interruption, even though +the file descriptors might not be ready yet. :func:`select.select` will now +always return empty lists if a timeout has occurred. Patch by Oran Avraham. + +.. + +.. bpo: 35380 +.. date: 2018-12-03-14-41-11 +.. nonce: SdRF9l +.. section: Library + +Enable TCP_NODELAY on Windows for proactor asyncio event loop. + +.. + +.. bpo: 35341 +.. date: 2018-12-02-13-50-52 +.. nonce: 32E8T_ +.. section: Library + +Add generic version of ``collections.OrderedDict`` to the ``typing`` module. +Patch by Ismo Toijala. + +.. + +.. bpo: 35371 +.. date: 2018-12-01-13-44-12 +.. nonce: fTAwlX +.. section: Library + +Fixed possible crash in ``os.utime()`` on Windows when pass incorrect +arguments. + +.. + +.. bpo: 35346 +.. date: 2018-11-29-12-42-13 +.. nonce: OmTY5c +.. section: Library + +:func:`platform.uname` now redirects ``stderr`` to :data:`os.devnull` when +running external programs like ``cmd /c ver``. + +.. + +.. bpo: 35066 +.. date: 2018-11-29-09-38-40 +.. nonce: Nwej2s +.. section: Library + +Previously, calling the strftime() method on a datetime object with a +trailing '%' in the format string would result in an exception. However, +this only occured when the datetime C module was being used; the python +implementation did not match this behavior. Datetime is now PEP-399 +compliant, and will not throw an exception on a trailing '%'. + +.. + +.. bpo: 35345 +.. date: 2018-11-29-00-55-33 +.. nonce: vepCSJ +.. section: Library + +The function `platform.popen` has been removed, it was deprecated since +Python 3.3: use :func:`os.popen` instead. + +.. + +.. bpo: 35344 +.. date: 2018-11-29-00-23-25 +.. nonce: 4QOPJQ +.. section: Library + +On macOS, :func:`platform.platform` now uses :func:`platform.mac_ver`, if it +returns a non-empty release string, to get the macOS version rather than the +darwin version. + +.. + +.. bpo: 35312 +.. date: 2018-11-25-20-05-33 +.. nonce: wbw0zO +.. section: Library + +Make ``lib2to3.pgen2.parse.ParseError`` round-trip pickle-able. Patch by +Anthony Sottile. + +.. + +.. bpo: 35308 +.. date: 2018-11-24-10-33-42 +.. nonce: 9--2iy +.. section: Library + +Fix regression in ``webbrowser`` where default browsers may be preferred +over browsers in the ``BROWSER`` environment variable. + +.. + +.. bpo: 24746 +.. date: 2018-11-22-15-22-56 +.. nonce: eSLKBE +.. section: Library + +Avoid stripping trailing whitespace in doctest fancy diff. Orignial patch by +R. David Murray & Jairo Trad. Enhanced by Sanyam Khurana. + +.. + +.. bpo: 28604 +.. date: 2018-11-20-13-34-01 +.. nonce: iiih5h +.. section: Library + +:func:`locale.localeconv` now sets temporarily the ``LC_CTYPE`` locale to +the ``LC_MONETARY`` locale if the two locales are different and monetary +strings are non-ASCII. This temporary change affects other threads. + +.. + +.. bpo: 35277 +.. date: 2018-11-19-07-22-04 +.. nonce: dsD-2E +.. section: Library + +Update ensurepip to install pip 18.1 and setuptools 40.6.2. + +.. + +.. bpo: 24209 +.. date: 2018-11-18-18-44-40 +.. nonce: p3YWOf +.. section: Library + +Adds IPv6 support when invoking http.server directly. + +.. + +.. bpo: 35226 +.. date: 2018-11-15-07-14-32 +.. nonce: wJPEEe +.. section: Library + +Recursively check arguments when testing for equality of +:class:`unittest.mock.call` objects and add note that tracking of parameters +used to create ancestors of mocks in ``mock_calls`` is not possible. + +.. + +.. bpo: 29564 +.. date: 2018-11-12-17-40-04 +.. nonce: SFNBT5 +.. section: Library + +The warnings module now suggests to enable tracemalloc if the source is +specified, the tracemalloc module is available, but tracemalloc is not +tracing memory allocations. + +.. + +.. bpo: 35189 +.. date: 2018-11-09-13-35-36 +.. nonce: gog-sl +.. section: Library + +Modify the following fnctl function to retry if interrupted by a signal +(EINTR): flock, lockf, fnctl + +.. + +.. bpo: 30064 +.. date: 2018-11-09-01-18-51 +.. nonce: IF5mH6 +.. section: Library + +Use add_done_callback() in sock_* asyncio API to unsubscribe reader/writer +early on calcellation. + +.. + +.. bpo: 35186 +.. date: 2018-11-08-14-22-29 +.. nonce: 5m22Mj +.. section: Library + +Removed the "built with" comment added when ``setup.py upload`` is used with +either ``bdist_rpm`` or ``bdist_dumb``. + +.. + +.. bpo: 35152 +.. date: 2018-11-03-10-12-04 +.. nonce: xpqskp +.. section: Library + +Allow sending more than 2 GB at once on a multiprocessing connection on +non-Windows systems. + +.. + +.. bpo: 35062 +.. date: 2018-10-29-23-09-24 +.. nonce: dQS1ng +.. section: Library + +Fix incorrect parsing of :class:`_io.IncrementalNewlineDecoder`'s +*translate* argument. + +.. + +.. bpo: 35065 +.. date: 2018-10-29-10-18-31 +.. nonce: CulMN8 +.. section: Library + +Remove `StreamReaderProtocol._untrack_reader`. The call to `_untrack_reader` +is currently performed too soon, causing the protocol to forget about the +reader before `connection_lost` can run and feed the EOF to the reader. + +.. + +.. bpo: 34160 +.. date: 2018-10-27-21-11-42 +.. nonce: UzyPZf +.. section: Library + +ElementTree and minidom now preserve the attribute order specified by the +user. + +.. + +.. bpo: 35079 +.. date: 2018-10-26-22-53-16 +.. nonce: Tm5jvF +.. section: Library + +Improve difflib.SequenceManager.get_matching_blocks doc by adding +'non-overlapping' and changing '!=' to '<'. + +.. + +.. bpo: 33710 +.. date: 2018-10-26-21-12-55 +.. nonce: Q5oXc6 +.. section: Library + +Deprecated ``l*gettext()`` functions and methods in the :mod:`gettext` +module. They return encoded bytes instead of Unicode strings and are +artifacts from Python 2 times. Also deprecated functions and methods related +to setting the charset for ``l*gettext()`` functions and methods. + +.. + +.. bpo: 35017 +.. date: 2018-10-26-00-11-21 +.. nonce: 6Ez4Cv +.. section: Library + +:meth:`socketserver.BaseServer.serve_forever` now exits immediately if it's +:meth:`~socketserver.BaseServer.shutdown` method is called while it is +polling for new events. + +.. + +.. bpo: 35024 +.. date: 2018-10-25-15-43-32 +.. nonce: ltSrtr +.. section: Library + +`importlib` no longer logs `wrote ` redundantly after +`(created|could not create) ` is already logged. Patch by +Quentin Agren. + +.. + +.. bpo: 35047 +.. date: 2018-10-25-09-59-00 +.. nonce: abbaa +.. section: Library + +``unittest.mock`` now includes mock calls in exception messages if +``assert_not_called``, ``assert_called_once``, or +``assert_called_once_with`` fails. Patch by Petter Strandmark. + +.. + +.. bpo: 31047 +.. date: 2018-10-25-09-37-03 +.. nonce: kBbX8r +.. section: Library + +Fix ``ntpath.abspath`` regression where it didn't remove a trailing +separator on Windows. Patch by Tim Graham. + +.. + +.. bpo: 35053 +.. date: 2018-10-23-18-58-12 +.. nonce: G82qwh +.. section: Library + +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). + +.. + +.. bpo: 31553 +.. date: 2018-10-23-14-46-47 +.. nonce: JxRkAW +.. section: Library + +Add the --json-lines option to json.tool. Patch by hongweipeng. + +.. + +.. bpo: 34794 +.. date: 2018-10-21-14-53-19 +.. nonce: yt3R4- +.. section: Library + +Fixed a leak in Tkinter when pass the Python wrapper around Tcl_Obj back to +Tcl/Tk. + +.. + +.. bpo: 34909 +.. date: 2018-10-20-00-29-43 +.. nonce: Ew_8DC +.. section: Library + +Enum: fix grandchildren subclassing when parent mixed with concrete data +types. + +.. + +.. bpo: 35022 +.. date: 2018-10-18-17-57-28 +.. nonce: KeEF4T +.. section: Library + +:class:`unittest.mock.MagicMock` now supports the ``__fspath__`` method +(from :class:`os.PathLike`). + +.. + +.. bpo: 35008 +.. date: 2018-10-17-11-54-04 +.. nonce: dotef_ +.. section: Library + +Fixed references leaks when call the ``__setstate__()`` method of +:class:`xml.etree.ElementTree.Element` in the C implementation for already +initialized element. + +.. + +.. bpo: 23420 +.. date: 2018-10-17-11-00-00 +.. nonce: Lq74Uu +.. section: Library + +Verify the value for the parameter '-s' of the cProfile CLI. Patch by Robert +Kuska + +.. + +.. bpo: 33947 +.. date: 2018-10-17-02-15-23 +.. nonce: SRuq3T +.. section: Library + +dataclasses now handle recursive reprs without raising RecursionError. + +.. + +.. bpo: 34890 +.. date: 2018-10-15-23-10-41 +.. nonce: 77E770 +.. section: Library + +Make :func:`inspect.iscoroutinefunction`, +:func:`inspect.isgeneratorfunction` and :func:`inspect.isasyncgenfunction` +work with :func:`functools.partial`. Patch by Pablo Galindo. + +.. + +.. bpo: 34521 +.. date: 2018-10-13-19-15-23 +.. nonce: YPaiTK +.. section: Library + +Use :func:`socket.CMSG_SPACE` to calculate ancillary data size instead of +:func:`socket.CMSG_LEN` in :func:`multiprocessing.reduction.recvfds` as +:rfc:`3542` requires the use of the former for portable applications. + +.. + +.. bpo: 31522 +.. date: 2018-10-13-18-16-20 +.. nonce: rWBb43 +.. section: Library + +The `mailbox.mbox.get_string` function *from_* parameter can now +successfully be set to a non-default value. + +.. + +.. bpo: 34970 +.. date: 2018-10-13-11-14-13 +.. nonce: SrJTY7 +.. section: Library + +Protect tasks weak set manipulation in ``asyncio.all_tasks()`` + +.. + +.. bpo: 34969 +.. date: 2018-10-13-07-46-50 +.. nonce: Mfnhjb +.. section: Library + +gzip: Add --fast, --best on the gzip CLI, these parameters will be used for +the fast compression method (quick) or the best method compress (slower, but +smaller file). Also, change the default compression level to 6 (tradeoff). + +.. + +.. bpo: 16965 +.. date: 2018-10-12-20-30-42 +.. nonce: xo5LAr +.. section: Library + +The :term:`2to3` :2to3fixer:`execfile` fixer now opens the file with mode +``'rb'``. Patch by Zackery Spytz. + +.. + +.. bpo: 34966 +.. date: 2018-10-12-18-57-52 +.. nonce: WZeBHO +.. section: Library + +:mod:`pydoc` now supports aliases not only to methods defined in the end +class, but also to inherited methods. The docstring is not duplicated for +aliases. + +.. + +.. bpo: 34926 +.. date: 2018-10-10-00-22-57 +.. nonce: CA0rqd +.. section: Library + +:meth:`mimetypes.MimeTypes.guess_type` now accepts :term:`path-like object` +in addition to url strings. Patch by Mayank Asthana. + +.. + +.. bpo: 23831 +.. date: 2018-10-09-15-44-04 +.. nonce: 2CL7lL +.. section: Library + +Add ``moveto()`` method to the ``tkinter.Canvas`` widget. Patch by Juliette +Monsel. + +.. + +.. bpo: 34941 +.. date: 2018-10-09-14-42-16 +.. nonce: 1Q5QKv +.. section: Library + +Methods ``find()``, ``findtext()`` and ``findall()`` of the ``Element`` +class in the :mod:`xml.etree.ElementTree` module are now able to find +children which are instances of ``Element`` subclasses. + +.. + +.. bpo: 32680 +.. date: 2018-10-09-14-25-36 +.. nonce: z2FbOp +.. section: Library + +:class:`smtplib.SMTP` objects now always have a `sock` attribute present + +.. + +.. bpo: 34769 +.. date: 2018-10-09-11-01-16 +.. nonce: cSkkZt +.. section: Library + +Fix for async generators not finalizing when event loop is in debug mode and +garbage collector runs in another thread. + +.. + +.. bpo: 34936 +.. date: 2018-10-08-21-05-11 +.. nonce: 3tRqdq +.. section: Library + +Fix ``TclError`` in ``tkinter.Spinbox.selection_element()``. Patch by +Juliette Monsel. + +.. + +.. bpo: 34829 +.. date: 2018-10-08-16-04-36 +.. nonce: B7v7D0 +.. section: Library + +Add methods ``selection_from``, ``selection_range``, ``selection_present`` +and ``selection_to`` to the ``tkinter.Spinbox`` for consistency with the +``tkinter.Entry`` widget. Patch by Juliette Monsel. + +.. + +.. bpo: 34911 +.. date: 2018-10-08-15-22-02 +.. nonce: hCy0Fv +.. section: Library + +Added *secure_protocols* argument to *http.cookiejar.DefaultCookiePolicy* to +allow for tweaking of protocols and also to add support by default for +*wss*, the secure websocket protocol. + +.. + +.. bpo: 34922 +.. date: 2018-10-07-21-18-52 +.. nonce: 37IdsA +.. section: Library + +Fixed integer overflow in the :meth:`~hashlib.shake.digest()` and +:meth:`~hashlib.shake.hexdigest()` methods for the SHAKE algorithm in the +:mod:`hashlib` module. + +.. + +.. bpo: 34925 +.. date: 2018-10-07-20-37-02 +.. nonce: KlkZ-Y +.. section: Library + +25% speedup in argument parsing for the functions in the bisect module. + +.. + +.. bpo: 34900 +.. date: 2018-10-05-05-55-53 +.. nonce: 8RNiFu +.. section: Library + +Fixed :meth:`unittest.TestCase.debug` when used to call test methods with +subtests. Patch by Bruno Oliveira. + +.. + +.. bpo: 34844 +.. date: 2018-10-04-20-44-45 +.. nonce: Hnuxav +.. section: Library + +logging.Formatter enhancement - Ensure styles and fmt matches in +logging.Formatter - Added validate method in each format style class: +StrFormatStyle, PercentStyle, StringTemplateStyle. - This method is called +in the constructor of logging.Formatter class - Also re-raise the KeyError +in the format method of each style class, so it would a bit clear that it's +an error with the invalid format fields. + +.. + +.. bpo: 34897 +.. date: 2018-10-04-20-25-35 +.. nonce: rNE2Cy +.. section: Library + +Adjust test.support.missing_compiler_executable check so that a nominal +command name of "" is ignored. Patch by Michael Felt. + +.. + +.. bpo: 34871 +.. date: 2018-10-04-18-46-54 +.. nonce: t3X-dB +.. section: Library + +Fix inspect module polluted ``sys.modules`` when parsing +``__text_signature__`` of callable. + +.. + +.. bpo: 34898 +.. date: 2018-10-04-17-23-43 +.. nonce: Wo2PoJ +.. section: Library + +Add `mtime` argument to `gzip.compress` for reproducible output. Patch by +Guo Ci Teo. + +.. + +.. bpo: 28441 +.. date: 2018-10-04-15-53-14 +.. nonce: 2sQENe +.. section: Library + +On Cygwin and MinGW, ensure that ``sys.executable`` always includes the full +filename in the path, including the ``.exe`` suffix (unless it is a symbolic +link). + +.. + +.. bpo: 34866 +.. date: 2018-10-03-11-07-28 +.. nonce: ML6KpJ +.. section: Library + +Adding ``max_num_fields`` to ``cgi.FieldStorage`` to make DOS attacks harder +by limiting the number of ``MiniFieldStorage`` objects created by +``FieldStorage``. + +.. + +.. bpo: 34711 +.. date: 2018-10-03-09-25-02 +.. nonce: HeOmKR +.. section: Library + +http.server ensures it reports HTTPStatus.NOT_FOUND when the local path ends +with "/" and is not a directory, even if the underlying OS (e.g. AIX) +accepts such paths as a valid file reference. Patch by Michael Felt. + +.. + +.. bpo: 34872 +.. date: 2018-10-02-19-36-34 +.. nonce: yWZRhI +.. section: Library + +Fix self-cancellation in C implementation of asyncio.Task + +.. + +.. bpo: 34849 +.. date: 2018-09-30-08-08-14 +.. nonce: NXK9Ff +.. section: Library + +Don't log waiting for ``selector.select`` in asyncio loop iteration. The +waiting is pretty normal for any asyncio program, logging its time just adds +a noise to logs without any useful information provided. + +.. + +.. bpo: 34022 +.. date: 2018-09-27-13-14-15 +.. nonce: E2cl0r +.. section: Library + +The :envvar:`SOURCE_DATE_EPOCH` environment variable no longer overrides the +value of the *invalidation_mode* argument to :func:`py_compile.compile`, and +determines its default value instead. + +.. + +.. bpo: 34819 +.. date: 2018-09-27-09-45-00 +.. nonce: 9ZaFyO +.. section: Library + +Use a monotonic clock to compute timeouts in :meth:`Executor.map` and +:func:`as_completed`, in order to prevent timeouts from deviating when the +system clock is adjusted. + +.. + +.. bpo: 34758 +.. date: 2018-09-26-14-09-34 +.. nonce: bRBfAi +.. section: Library + +Add .wasm -> application/wasm to list of recognized file types and content +type headers + +.. + +.. bpo: 34789 +.. date: 2018-09-25-15-48-50 +.. nonce: rPOEj5 +.. section: Library + +:func:`xml.sax.make_parser` now accepts any iterable as its *parser_list* +argument. Patch by Andr?s Delfino. + +.. + +.. bpo: 34334 +.. date: 2018-09-25-08-42-34 +.. nonce: rSPBW9 +.. section: Library + +In :class:`QueueHandler`, clear `exc_text` from :class:`LogRecord` to +prevent traceback from being written twice. + +.. + +.. bpo: 34687 +.. date: 2018-09-24-17-14-57 +.. nonce: Fku_8S +.. section: Library + +On Windows, asyncio now uses ProactorEventLoop, instead of +SelectorEventLoop, by default. + +.. + +.. bpo: 5950 +.. date: 2018-09-24-14-21-58 +.. nonce: xH0ekQ +.. section: Library + +Support reading zip files with archive comments in :mod:`zipimport`. + +.. + +.. bpo: 32892 +.. date: 2018-09-20-17-35-05 +.. nonce: TOUBdg +.. section: Library + +The parser now represents all constants as :class:`ast.Constant` instead of +using specific constant AST types (``Num``, ``Str``, ``Bytes``, +``NameConstant`` and ``Ellipsis``). These classes are considered deprecated +and will be removed in future Python versions. + +.. + +.. bpo: 34728 +.. date: 2018-09-20-16-55-43 +.. nonce: CUE8LU +.. section: Library + +Add deprecation warning when `loop` is used in methods: `asyncio.sleep`, +`asyncio.wait` and `asyncio.wait_for`. + +.. + +.. bpo: 34738 +.. date: 2018-09-19-16-51-04 +.. nonce: Pr3-iG +.. section: Library + +ZIP files created by :mod:`distutils` will now include entries for +directories. + +.. + +.. bpo: 34659 +.. date: 2018-09-16-17-04-16 +.. nonce: CWemzH +.. section: Library + +Add an optional *initial* argument to itertools.accumulate(). + +.. + +.. bpo: 29577 +.. date: 2018-09-14-20-00-47 +.. nonce: RzwKFD +.. section: Library + +Support multiple mixin classes when creating Enums. + +.. + +.. bpo: 34670 +.. date: 2018-09-14-14-29-45 +.. nonce: 17XwGB +.. section: Library + +Add SSLContext.post_handshake_auth and +SSLSocket.verify_client_post_handshake for TLS 1.3's post handshake +authentication feature. + +.. + +.. bpo: 32718 +.. date: 2018-09-14-12-38-49 +.. nonce: ICYQbt +.. section: Library + +The Activate.ps1 script from venv works with PowerShell Core 6.1 and is now +available under all operating systems. + +.. + +.. bpo: 31177 +.. date: 2018-09-14-10-38-18 +.. nonce: Sv91TN +.. section: Library + +Fix bug that prevented using :meth:`reset_mock +` on mock instances with deleted attributes + +.. + +.. bpo: 34672 +.. date: 2018-09-13-21-04-23 +.. nonce: BYuKKS +.. section: Library + +Add a workaround, so the ``'Z'`` :func:`time.strftime` specifier on the musl +C library can work in some cases. + +.. + +.. bpo: 34666 +.. date: 2018-09-13-11-49-52 +.. nonce: 3uLtWv +.. section: Library + +Implement ``asyncio.StreamWriter.awrite`` and +``asyncio.StreamWriter.aclose()`` coroutines. Methods are needed for +providing a consistent stream API with control flow switched on by default. + +.. + +.. bpo: 6721 +.. date: 2018-09-13-10-09-19 +.. nonce: ZUL_F3 +.. section: Library + +Acquire the logging module's commonly used internal locks while fork()ing to +avoid deadlocks in the child process. + +.. + +.. bpo: 34658 +.. date: 2018-09-13-03-59-43 +.. nonce: ykZ-ia +.. section: Library + +Fix a rare interpreter unhandled exception state SystemError only seen when +using subprocess with a preexec_fn while an after_parent handler has been +registered with os.register_at_fork and the fork system call fails. + +.. + +.. bpo: 34652 +.. date: 2018-09-12-14-46-51 +.. nonce: Rt1m1b +.. section: Library + +Ensure :func:`os.lchmod` is never defined on Linux. + +.. + +.. bpo: 34638 +.. date: 2018-09-12-10-33-44 +.. nonce: xaeZX5 +.. section: Library + +Store a weak reference to stream reader to break strong references loop +between reader and protocol. It allows to detect and close the socket if +the stream is deleted (garbage collected) without ``close()`` call. + +.. + +.. bpo: 34536 +.. date: 2018-09-11-15-49-09 +.. nonce: 3IPIH5 +.. section: Library + +`Enum._missing_`: raise `ValueError` if None returned and `TypeError` if +non-member is returned. + +.. + +.. bpo: 34636 +.. date: 2018-09-11-15-04-05 +.. nonce: capCmt +.. section: Library + +Speed up re scanning of many non-matching characters for \s \w and \d within +bytes objects. (microoptimization) + +.. + +.. bpo: 24412 +.. date: 2018-09-11-10-51-16 +.. nonce: i-F_E5 +.. section: Library + +Add :func:`~unittest.addModuleCleanup()` and +:meth:`~unittest.TestCase.addClassCleanup()` to unittest to support cleanups +for :func:`~unittest.setUpModule()` and +:meth:`~unittest.TestCase.setUpClass()`. Patch by Lisa Roach. + +.. + +.. bpo: 34630 +.. date: 2018-09-11-10-00-53 +.. nonce: YbqUS6 +.. section: Library + +Don't log SSL certificate errors in asyncio code (connection error logging +is skipped already). + +.. + +.. bpo: 32490 +.. date: 2018-09-11-01-25-35 +.. nonce: ROIDO1 +.. section: Library + +Prevent filename duplication in :mod:`subprocess` exception messages. Patch +by Zackery Spytz. + +.. + +.. bpo: 34363 +.. date: 2018-09-10-21-09-34 +.. nonce: YuSb0T +.. section: Library + +dataclasses.asdict() and .astuple() now handle namedtuples correctly. + +.. + +.. bpo: 34625 +.. date: 2018-09-10-17-46-51 +.. nonce: D2YfDz +.. section: Library + +Update vendorized expat library version to 2.2.6. + +.. + +.. bpo: 32270 +.. date: 2018-09-10-14-15-53 +.. nonce: wSJjuD +.. section: Library + +The subprocess module no longer mistakenly closes redirected fds even when +they were in pass_fds when outside of the default {0, 1, 2} set. + +.. + +.. bpo: 34622 +.. date: 2018-09-10-13-04-40 +.. nonce: tpv_rN +.. section: Library + +Create a dedicated ``asyncio.CancelledError``, ``asyncio.InvalidStateError`` +and ``asyncio.TimeoutError`` exception classes. Inherit them from +corresponding exceptions from ``concurrent.futures`` package. Extract +``asyncio`` exceptions into a separate file. + +.. + +.. bpo: 34610 +.. date: 2018-09-08-12-57-07 +.. nonce: wmoP5j +.. section: Library + +Fixed iterator of :class:`multiprocessing.managers.DictProxy`. + +.. + +.. bpo: 34421 +.. date: 2018-09-07-10-57-00 +.. nonce: AKJISD +.. section: Library + +Fix distutils logging for non-ASCII strings. This caused installation +issues on Windows. + +.. + +.. bpo: 34604 +.. date: 2018-09-07-10-16-34 +.. nonce: xL7-kG +.. section: Library + +Fix possible mojibake in the error message of `pwd.getpwnam` and +`grp.getgrnam` using string representation because of invisible characters +or trailing whitespaces. Patch by William Grzybowski. + +.. + +.. bpo: 30977 +.. date: 2018-09-06-10-07-46 +.. nonce: bP661V +.. section: Library + +Make uuid.UUID use ``__slots__`` to reduce its memory footprint. Based on +original patch by Wouter Bolsterlee. + +.. + +.. bpo: 34574 +.. date: 2018-09-04-09-32-54 +.. nonce: X4RwYI +.. section: Library + +OrderedDict iterators are not exhausted during pickling anymore. Patch by +Sergey Fedoseev. + +.. + +.. bpo: 8110 +.. date: 2018-09-03-23-54-35 +.. nonce: FExWI_ +.. section: Library + +Refactored :mod:`subprocess` to check for Windows-specific modules rather +than ``sys.platform == 'win32'``. + +.. + +.. bpo: 34530 +.. date: 2018-09-03-23-23-32 +.. nonce: h_Xsu7 +.. section: Library + +``distutils.spawn.find_executable()`` now falls back on :data:`os.defpath` +if the ``PATH`` environment variable is not set. + +.. + +.. bpo: 34563 +.. date: 2018-09-01-20-43-10 +.. nonce: 7NQK7B +.. section: Library + +On Windows, fix multiprocessing.Connection for very large read: fix +_winapi.PeekNamedPipe() and _winapi.ReadFile() for read larger than INT_MAX +(usually 2^31-1). + +.. + +.. bpo: 34558 +.. date: 2018-08-31-19-26-55 +.. nonce: MHv582 +.. section: Library + +Correct typo in Lib/ctypes/_aix.py + +.. + +.. bpo: 34282 +.. date: 2018-08-31-06-28-03 +.. nonce: ztyXH8 +.. section: Library + +Move ``Enum._convert`` to ``EnumMeta._convert_`` and fix enum members +getting shadowed by parent attributes. + +.. + +.. bpo: 22872 +.. date: 2018-08-30-14-44-11 +.. nonce: NhIaZ9 +.. section: Library + +When the queue is closed, :exc:`ValueError` is now raised by +:meth:`multiprocessing.Queue.put` and :meth:`multiprocessing.Queue.get` +instead of :exc:`AssertionError` and :exc:`OSError`, respectively. Patch by +Zackery Spytz. + +.. + +.. bpo: 34515 +.. date: 2018-08-27-16-01-22 +.. nonce: S0Irst +.. section: Library + +Fix parsing non-ASCII identifiers in :mod:`lib2to3.pgen2.tokenize` (PEP +3131). + +.. + +.. bpo: 13312 +.. date: 2018-08-24-17-31-27 +.. nonce: 6hA5La +.. section: Library + +Avoids a possible integer underflow (undefined behavior) in the time +module's year handling code when passed a very low negative year value. + +.. + +.. bpo: 34472 +.. date: 2018-08-23-09-25-08 +.. nonce: cGyYrO +.. section: Library + +Improved compatibility for streamed files in :mod:`zipfile`. Previously an +optional signature was not being written and certain ZIP applications were +not supported. Patch by Silas Sewell. + +.. + +.. bpo: 34454 +.. date: 2018-08-22-21-59-08 +.. nonce: z7uG4b +.. section: Library + +Fix the .fromisoformat() methods of datetime types crashing when given +unicode with non-UTF-8-encodable code points. Specifically, +datetime.fromisoformat() now accepts surrogate unicode code points used as +the separator. Report and tests by Alexey Izbyshev, patch by Paul Ganssle. + +.. + +.. bpo: 6700 +.. date: 2018-08-22-17-43-52 +.. nonce: hp7C4B +.. section: Library + +Fix inspect.getsourcelines for module level frames/tracebacks. Patch by +Vladimir Matveev. + +.. + +.. bpo: 34171 +.. date: 2018-08-21-00-29-01 +.. nonce: 6LkWav +.. section: Library + +Running the :mod:`trace` module no longer creates the ``trace.cover`` file. + +.. + +.. bpo: 34441 +.. date: 2018-08-20-16-48-32 +.. nonce: _zx9lU +.. section: Library + +Fix crash when an ``ABC``-derived class with invalid ``__subclasses__`` is +passed as the second argument to :func:`issubclass()`. Patch by Alexey +Izbyshev. + +.. + +.. bpo: 34427 +.. date: 2018-08-20-13-53-10 +.. nonce: tMRQjl +.. section: Library + +Fix infinite loop in ``a.extend(a)`` for ``MutableSequence`` subclasses. + +.. + +.. bpo: 34412 +.. date: 2018-08-16-19-07-05 +.. nonce: NF5Jm2 +.. section: Library + +Make :func:`signal.strsignal` work on HP-UX. Patch by Michael Osipov. + +.. + +.. bpo: 20849 +.. date: 2018-08-16-16-47-15 +.. nonce: YWJECC +.. section: Library + +shutil.copytree now accepts a new ``dirs_exist_ok`` keyword argument. Patch +by Josh Bronson. + +.. + +.. bpo: 31715 +.. date: 2018-08-15-16-22-30 +.. nonce: Iw8jS8 +.. section: Library + +Associate ``.mjs`` file extension with ``application/javascript`` MIME Type. + +.. + +.. bpo: 34384 +.. date: 2018-08-12-08-43-21 +.. nonce: yjofCv +.. section: Library + +:func:`os.readlink` now accepts :term:`path-like ` and +:class:`bytes` objects on Windows. + +.. + +.. bpo: 22602 +.. date: 2018-08-12-00-14-54 +.. nonce: ybG9K8 +.. section: Library + +The UTF-7 decoder now raises :exc:`UnicodeDecodeError` for ill-formed +sequences starting with "+" (as specified in RFC 2152). Patch by Zackery +Spytz. + +.. + +.. bpo: 2122 +.. date: 2018-08-06-21-47-03 +.. nonce: GWdmrm +.. section: Library + +The :meth:`mmap.flush() ` method now returns ``None`` on +success, raises an exception on error under all platforms. + +.. + +.. bpo: 34341 +.. date: 2018-08-06-11-01-18 +.. nonce: E0b9p2 +.. section: Library + +Appending to the ZIP archive with the ZIP64 extension no longer grows the +size of extra fields of existing entries. + +.. + +.. bpo: 34333 +.. date: 2018-08-04-00-06-28 +.. nonce: 5NHG93 +.. section: Library + +Fix %-formatting in :meth:`pathlib.PurePath.with_suffix` when formatting an +error message. + +.. + +.. bpo: 18540 +.. date: 2018-08-02-21-28-38 +.. nonce: AryoYY +.. section: Library + +The :class:`imaplib.IMAP4` and :class:`imaplib.IMAP4_SSL` classes now +resolve to the local host IP correctly when the default value of *host* +parameter (``''``) is used. + +.. + +.. bpo: 26502 +.. date: 2018-08-02-20-39-32 +.. nonce: eGXr_k +.. section: Library + +Implement ``traceback.FrameSummary.__len__()`` method to preserve +compatibility with the old tuple API. + +.. + +.. bpo: 34318 +.. date: 2018-08-02-14-43-42 +.. nonce: GneiXs +.. section: Library + +:func:`~unittest.TestCase.assertRaises`, +:func:`~unittest.TestCase.assertRaisesRegex`, +:func:`~unittest.TestCase.assertWarns` and +:func:`~unittest.TestCase.assertWarnsRegex` no longer success if the passed +callable is None. They no longer ignore unknown keyword arguments in the +context manager mode. A DeprecationWarning was raised in these cases since +Python 3.5. + +.. + +.. bpo: 9372 +.. date: 2018-08-01-21-26-17 +.. nonce: V8Ou3K +.. section: Library + +Deprecate :meth:`__getitem__` methods of +:class:`xml.dom.pulldom.DOMEventStream`, :class:`wsgiref.util.FileWrapper` +and :class:`fileinput.FileInput`. + +.. + +.. bpo: 33613 +.. date: 2018-07-31-23-33-06 +.. nonce: Cdnt0i +.. section: Library + +Fix a race condition in ``multiprocessing.semaphore_tracker`` when the +tracker receives SIGINT before it can register signal handlers for ignoring +it. + +.. + +.. bpo: 34248 +.. date: 2018-07-31-23-00-09 +.. nonce: 5U6wwc +.. section: Library + +Report filename in the exception raised when the database file cannot be +opened by :func:`dbm.gnu.open` and :func:`dbm.ndbm.open` due to OS-related +error. Patch by Zsolt Cserna. + +.. + +.. bpo: 33089 +.. date: 2018-07-29-21-53-15 +.. nonce: hxbp3g +.. section: Library + +Add math.dist() to compute the Euclidean distance between two points. + +.. + +.. bpo: 34246 +.. date: 2018-07-29-15-25-15 +.. nonce: xiKq-Q +.. section: Library + +:meth:`smtplib.SMTP.send_message` no longer modifies the content of the +*mail_options* argument. Patch by Pablo S. Blum de Aguiar. + +.. + +.. bpo: 31047 +.. date: 2018-07-29-14-12-23 +.. nonce: FSarLs +.. section: Library + +Fix ``ntpath.abspath`` for invalid paths on windows. Patch by Franz +Woellert. + +.. + +.. bpo: 32321 +.. date: 2018-07-29-13-50-32 +.. nonce: hDoNKC +.. section: Library + +Add pure Python fallback for functools.reduce. Patch by Robert Wright. + +.. + +.. bpo: 34270 +.. date: 2018-07-29-11-32-56 +.. nonce: aL6P-3 +.. section: Library + +The default asyncio task class now always has a name which can be get or set +using two new methods (:meth:`~asyncio.Task.get_name()` and +:meth:`~asyncio.Task.set_name`) and is visible in the :func:`repr` output. +An initial name can also be set using the new ``name`` keyword argument to +:func:`asyncio.create_task` or the +:meth:`~asyncio.AbstractEventLoop.create_task` method of the event loop. If +no initial name is set, the default Task implementation generates a name +like ``Task-1`` using a monotonic counter. + +.. + +.. bpo: 34263 +.. date: 2018-07-28-17-00-36 +.. nonce: zUfRsu +.. section: Library + +asyncio's event loop will not pass timeouts longer than one day to +epoll/select etc. + +.. + +.. bpo: 34035 +.. date: 2018-07-28-15-00-31 +.. nonce: 75nW0H +.. section: Library + +Fix several AttributeError in zipfile seek() methods. Patch by Micka?l +Schoentgen. + +.. + +.. bpo: 32215 +.. date: 2018-07-28-12-08-53 +.. nonce: EU68SY +.. section: Library + +Fix performance regression in :mod:`sqlite3` when a DML statement appeared +in a different line than the rest of the SQL query. + +.. + +.. bpo: 34075 +.. date: 2018-07-28-11-49-21 +.. nonce: 9u1bO- +.. section: Library + +Deprecate passing non-ThreadPoolExecutor instances to +:meth:`AbstractEventLoop.set_default_executor`. + +.. + +.. bpo: 34251 +.. date: 2018-07-28-11-47-10 +.. nonce: q3elQ6 +.. section: Library + +Restore ``msilib.Win64`` to preserve backwards compatibility since it's +already used by :mod:`distutils`' ``bdist_msi`` command. + +.. + +.. bpo: 19891 +.. date: 2018-07-26-08-45-49 +.. nonce: Y-3IiB +.. section: Library + +Ignore errors caused by missing / non-writable homedir while writing history +during exit of an interactive session. Patch by Anthony Sottile. + +.. + +.. bpo: 33089 +.. date: 2018-07-25-22-38-54 +.. nonce: C3CB7e +.. section: Library + +Enhanced math.hypot() to support more than two dimensions. + +.. + +.. bpo: 34228 +.. date: 2018-07-25-19-02-39 +.. nonce: 0Ibztw +.. section: Library + +tracemalloc: PYTHONTRACEMALLOC=0 environment variable and -X tracemalloc=0 +command line option are now allowed to disable explicitly tracemalloc at +startup. + +.. + +.. bpo: 13041 +.. date: 2018-07-25-12-08-48 +.. nonce: lNmgDz +.. section: Library + +Use :func:`shutil.get_terminal_size` to calculate the terminal width +correctly in the ``argparse.HelpFormatter`` class. Initial patch by Zbyszek +J?drzejewski-Szmek. + +.. + +.. bpo: 34213 +.. date: 2018-07-25-00-40-14 +.. nonce: O15MgP +.. section: Library + +Allow frozen dataclasses to have a field named "object". Previously this +conflicted with an internal use of "object". + +.. + +.. bpo: 34052 +.. date: 2018-07-24-16-37-40 +.. nonce: VbbFAE +.. section: Library + +:meth:`sqlite3.Connection.create_aggregate`, +:meth:`sqlite3.Connection.create_function`, +:meth:`sqlite3.Connection.set_authorizer`, +:meth:`sqlite3.Connection.set_progress_handler` methods raises TypeError +when unhashable objects are passed as callable. These methods now don't pass +such objects to SQLite API. Previous behavior could lead to segfaults. Patch +by Sergey Fedoseev. + +.. + +.. bpo: 34197 +.. date: 2018-07-23-14-12-28 +.. nonce: 7yFSP5 +.. section: Library + +Attributes *skipinitialspace*, *doublequote* and *strict* of the *dialect* +attribute of the :mod:`csv` reader are now :class:`bool` instances instead +of integers 0 or 1. + +.. + +.. bpo: 32788 +.. date: 2018-07-23-12-20-02 +.. nonce: R2jSiK +.. section: Library + +Errors other than :exc:`TypeError` raised in methods ``__adapt__()`` and +``__conform__()`` in the :mod:`sqlite3` module are now propagated to the +user. + +.. + +.. bpo: 21446 +.. date: 2018-07-22-09-05-01 +.. nonce: w6g7tn +.. section: Library + +The :2to3fixer:`reload` fixer now uses :func:`importlib.reload` instead of +deprecated :func:`imp.reload`. + +.. + +.. bpo: 940286 +.. date: 2018-07-22-07-59-32 +.. nonce: NZTzyc +.. section: Library + +pydoc's ``Helper.showtopic()`` method now prints the cross references of a +topic correctly. + +.. + +.. bpo: 34164 +.. date: 2018-07-20-18-06-00 +.. nonce: fNfT-q +.. section: Library + +:func:`base64.b32decode` could raise UnboundLocalError or OverflowError for +incorrect padding. Now it always raises :exc:`base64.Error` in these cases. + +.. + +.. bpo: 33729 +.. date: 2018-07-20-09-11-05 +.. nonce: sO6iTb +.. section: Library + +Fixed issues with arguments parsing in :mod:`hashlib`. + +.. + +.. bpo: 34097 +.. date: 2018-07-13-13-42-10 +.. nonce: F5Dk5o +.. section: Library + +ZipFile can zip files older than 1980-01-01 and newer than 2107-12-31 using +a new ``strict_timestamps`` parameter at the cost of setting the timestamp +to the limit. + +.. + +.. bpo: 34108 +.. date: 2018-07-13-08-44-52 +.. nonce: RjobUC +.. section: Library + +Remove extraneous CR in 2to3 refactor. + +.. + +.. bpo: 34070 +.. date: 2018-07-11-20-51-20 +.. nonce: WpmFAu +.. section: Library + +Make sure to only check if the handle is a tty, when opening a file with +``buffering=-1``. + +.. + +.. bpo: 27494 +.. date: 2018-07-11-10-03-21 +.. nonce: 04OWkW +.. section: Library + +Reverted :issue:`27494`. 2to3 rejects now a trailing comma in generator +expressions. + +.. + +.. bpo: 33967 +.. date: 2018-07-08-18-49-41 +.. nonce: lhaAez +.. section: Library + +functools.singledispatch now raises TypeError instead of IndexError when no +positional arguments are passed. + +.. + +.. bpo: 34041 +.. date: 2018-07-06-15-06-32 +.. nonce: 0zrKLh +.. section: Library + +Add the parameter *deterministic* to the +:meth:`sqlite3.Connection.create_function` method. Patch by Sergey Fedoseev. + +.. + +.. bpo: 34056 +.. date: 2018-07-05-22-45-46 +.. nonce: 86isrU +.. section: Library + +Ensure the loader shim created by ``imp.load_module`` always returns bytes +from its ``get_data()`` function. This fixes using ``imp.load_module`` with +:pep:`552` hash-based pycs. + +.. + +.. bpo: 34054 +.. date: 2018-07-05-18-37-05 +.. nonce: nWRS6M +.. section: Library + +The multiprocessing module now uses the monotonic clock +:func:`time.monotonic` instead of the system clock :func:`time.time` to +implement timeout. + +.. + +.. bpo: 34043 +.. date: 2018-07-04-21-14-35 +.. nonce: 0YJNq9 +.. section: Library + +Optimize tarfile uncompress performance about 15% when gzip is used. + +.. + +.. bpo: 34044 +.. date: 2018-07-04-17-14-26 +.. nonce: KWAu4y +.. section: Library + +``subprocess.Popen`` now copies the *startupinfo* argument to leave it +unchanged: it will modify the copy, so that the same ``STARTUPINFO`` object +can be used multiple times. + +.. + +.. bpo: 34010 +.. date: 2018-07-04-07-36-53 +.. nonce: VNDkde +.. section: Library + +Fixed a performance regression for reading streams with tarfile. The +buffered read should use a list, instead of appending to a bytes object. + +.. + +.. bpo: 34019 +.. date: 2018-07-02-05-59-11 +.. nonce: ZXJIife +.. section: Library + +webbrowser: Correct the arguments passed to Opera Browser when opening a new +URL using the ``webbrowser`` module. Patch by Bumsik Kim. + +.. + +.. bpo: 34003 +.. date: 2018-06-29-13-05-01 +.. nonce: Iu831h +.. section: Library + +csv.DictReader now creates dicts instead of OrderedDicts. Patch by Michael +Selik. + +.. + +.. bpo: 33978 +.. date: 2018-06-29-12-23-34 +.. nonce: y4csIw +.. section: Library + +Closed existing logging handlers before reconfiguration via fileConfig and +dictConfig. Patch by Karthikeyan Singaravelan. + +.. + +.. bpo: 14117 +.. date: 2018-06-29-00-31-36 +.. nonce: 3nvDuR +.. section: Library + +Make minor tweaks to turtledemo. The 'wikipedia' example is now 'rosette', +describing what it draws. The 'penrose' print output is reduced. The'1024' +output of 'tree' is eliminated. + +.. + +.. bpo: 33974 +.. date: 2018-06-28-14-56-44 +.. nonce: SA8nNP +.. section: Library + +Fixed passing lists and tuples of strings containing special characters +``"``, ``\``, ``{``, ``}`` and ``\n`` as options to :mod:`~tkinter.ttk` +widgets. + +.. + +.. bpo: 27500 +.. date: 2018-06-28-13-00-12 +.. nonce: _s1gZ5 +.. section: Library + +Fix getaddrinfo to resolve IPv6 addresses correctly. + +.. + +.. bpo: 24567 +.. date: 2018-06-27-00-31-30 +.. nonce: FuePyY +.. section: Library + +Improve random.choices() to handle subnormal input weights that could +occasionally trigger an IndexError. + +.. + +.. bpo: 33871 +.. date: 2018-06-26-19-03-56 +.. nonce: XhlrGU +.. section: Library + +Fixed integer overflow in :func:`os.readv`, :func:`os.writev`, +:func:`os.preadv` and :func:`os.pwritev` and in :func:`os.sendfile` with +*headers* or *trailers* arguments (on BSD-based OSes and macOS). + +.. + +.. bpo: 25007 +.. date: 2018-06-26-16-55-59 +.. nonce: 6LQWOF +.. section: Library + +Add :func:`copy.copy` and :func:`copy.deepcopy` support to zlib compressors +and decompressors. Patch by Zackery Spytz. + +.. + +.. bpo: 33929 +.. date: 2018-06-26-02-09-18 +.. nonce: OcCLah +.. section: Library + +multiprocessing: Fix a race condition in Popen of +multiprocessing.popen_spawn_win32. The child process now duplicates the read +end of pipe instead of "stealing" it. Previously, the read end of pipe was +"stolen" by the child process, but it leaked a handle if the child process +had been terminated before it could steal the handle from the parent +process. + +.. + +.. bpo: 33899 +.. date: 2018-06-24-01-57-14 +.. nonce: IaOcAr +.. section: Library + +Tokenize module now implicitly emits a NEWLINE when provided with input that +does not have a trailing new line. This behavior now matches what the C +tokenizer does internally. Contributed by Ammar Askar. + +.. + +.. bpo: 33897 +.. date: 2018-06-23-18-09-28 +.. nonce: Hu0yvt +.. section: Library + +Added a 'force' keyword argument to logging.basicConfig(). + +.. + +.. bpo: 33695 +.. date: 2018-06-23-12-47-37 +.. nonce: seRTxh +.. section: Library + +:func:`shutil.copytree` uses :func:`os.scandir` function and all copy +functions depending from it use cached :func:`os.stat` values. The speedup +for copying a directory with 8000 files is around +9% on Linux, +20% on +Windows and + 30% on a Windows SMB share. Also the number of :func:`os.stat` +syscalls is reduced by 38% making :func:`shutil.copytree` especially faster +on network filesystems. (Contributed by Giampaolo Rodola' in +:issue:`33695`.) + +.. + +.. bpo: 33916 +.. date: 2018-06-21-11-35-47 +.. nonce: cZgPCD +.. section: Library + +bz2 and lzma: When Decompressor.__init__() is called twice, free the old +lock to not leak memory. + +.. + +.. bpo: 32568 +.. date: 2018-06-21-09-33-02 +.. nonce: f_meGY +.. section: Library + +Make select.epoll() and its documentation consistent regarding *sizehint* +and *flags*. + +.. + +.. bpo: 33833 +.. date: 2018-06-17-11-46-20 +.. nonce: RnEqvM +.. section: Library + +Fixed bug in asyncio where ProactorSocketTransport logs AssertionError if +force closed during write. + +.. + +.. bpo: 33663 +.. date: 2018-06-17-10-48-03 +.. nonce: sUuGmq +.. section: Library + +Convert content length to string before putting to header. + +.. + +.. bpo: 33721 +.. date: 2018-06-14-17-53-30 +.. nonce: 8i9_9A +.. section: Library + +:mod:`os.path` functions that return a boolean result like +:func:`~os.path.exists`, :func:`~os.path.lexists`, :func:`~os.path.isdir`, +:func:`~os.path.isfile`, :func:`~os.path.islink`, and +:func:`~os.path.ismount`, and :mod:`pathlib.Path` methods that return a +boolean result like :meth:`~pathlib.Path.exists()`, +:meth:`~pathlib.Path.is_dir()`, :meth:`~pathlib.Path.is_file()`, +:meth:`~pathlib.Path.is_mount()`, :meth:`~pathlib.Path.is_symlink()`, +:meth:`~pathlib.Path.is_block_device()`, +:meth:`~pathlib.Path.is_char_device()`, :meth:`~pathlib.Path.is_fifo()`, +:meth:`~pathlib.Path.is_socket()` now return ``False`` instead of raising +:exc:`ValueError` or its subclasses :exc:`UnicodeEncodeError` and +:exc:`UnicodeDecodeError` for paths that contain characters or bytes +unrepresentable at the OS level. + +.. + +.. bpo: 26544 +.. date: 2018-06-13-20-33-29 +.. nonce: hQ1oMt +.. section: Library + +Fixed implementation of :func:`platform.libc_ver`. It almost always returned +version '2.9' for glibc. + +.. + +.. bpo: 33843 +.. date: 2018-06-12-18-59-16 +.. nonce: qVAK8g +.. section: Library + +Remove deprecated ``cgi.escape``, ``cgi.parse_qs`` and ``cgi.parse_qsl``. + +.. + +.. bpo: 33842 +.. date: 2018-06-12-18-34-54 +.. nonce: RZXSGu +.. section: Library + +Remove ``tarfile.filemode`` which is deprecated since Python 3.3. + +.. + +.. bpo: 30167 +.. date: 2018-06-10-19-29-17 +.. nonce: G5EgC5 +.. section: Library + +Prevent site.main() exception if PYTHONSTARTUP is set. Patch by Steve Weber. + +.. + +.. bpo: 33805 +.. date: 2018-06-10-15-14-17 +.. nonce: 5LAz5a +.. section: Library + +Improve error message of dataclasses.replace() when an InitVar is not +specified + +.. + +.. bpo: 33687 +.. date: 2018-06-10-14-08-52 +.. nonce: 1zZdnA +.. section: Library + +Fix the call to ``os.chmod()`` for ``uu.decode()`` if a mode is given or +decoded. Patch by Timo Furrer. + +.. + +.. bpo: 33812 +.. date: 2018-06-10-13-26-02 +.. nonce: frGAOr +.. section: Library + +Datetime instance d with non-None tzinfo, but with d.tzinfo.utcoffset(d) +returning None is now treated as naive by the astimezone() method. + +.. + +.. bpo: 32108 +.. date: 2018-06-10-12-15-26 +.. nonce: iEkvh0 +.. section: Library + +In configparser, don't clear section when it is assigned to itself. + +.. + +.. bpo: 27397 +.. date: 2018-06-10-09-43-54 +.. nonce: 0_fFQR +.. section: Library + +Make email module properly handle invalid-length base64 strings. + +.. + +.. bpo: 33578 +.. date: 2018-06-08-23-55-34 +.. nonce: 7oSsjG +.. section: Library + +Implement multibyte encoder/decoder state methods + +.. + +.. bpo: 30805 +.. date: 2018-06-08-17-34-16 +.. nonce: 3qCWa0 +.. section: Library + +Avoid race condition with debug logging + +.. + +.. bpo: 33476 +.. date: 2018-06-08-00-29-40 +.. nonce: R0Bhlj +.. section: Library + +Fix _header_value_parser.py when address group is missing final ';'. +Contributed by Enrique Perez-Terron + +.. + +.. bpo: 33694 +.. date: 2018-06-07-23-51-00 +.. nonce: F1zIR1 +.. section: Library + +asyncio: Fix a race condition causing data loss on +pause_reading()/resume_reading() when using the ProactorEventLoop. + +.. + +.. bpo: 32493 +.. date: 2018-06-07-18-55-35 +.. nonce: 1Bte62 +.. section: Library + +Correct test for ``uuid_enc_be`` availability in ``configure.ac``. Patch by +Michael Felt. + +.. + +.. bpo: 33792 +.. date: 2018-06-07-12-38-12 +.. nonce: 3aKG7u +.. section: Library + +Add asyncio.WindowsSelectorEventLoopPolicy and +asyncio.WindowsProactorEventLoopPolicy. + +.. + +.. bpo: 33274 +.. date: 2018-06-06-22-01-33 +.. nonce: teYqv8 +.. section: Library + +W3C DOM Level 1 specifies return value of Element.removeAttributeNode() as +"The Attr node that was removed." xml.dom.minidom now complies with this +requirement. + +.. + +.. bpo: 33778 +.. date: 2018-06-05-20-22-30 +.. nonce: _tSAS6 +.. section: Library + +Update ``unicodedata``'s database to Unicode version 11.0.0. + +.. + +.. bpo: 33165 +.. date: 2018-06-05-12-43-25 +.. nonce: 9TIsVf +.. section: Library + +Added a stacklevel parameter to logging calls to allow use of wrapper/helper +functions for logging APIs. + +.. + +.. bpo: 33770 +.. date: 2018-06-05-11-29-26 +.. nonce: oBhxxw +.. section: Library + +improve base64 exception message for encoded inputs of invalid length + +.. + +.. bpo: 33769 +.. date: 2018-06-04-13-46-39 +.. nonce: D_pxYz +.. section: Library + +asyncio/start_tls: Fix error message; cancel callbacks in case of an +unhandled error; mark SSLTransport as closed if it is aborted. + +.. + +.. bpo: 33767 +.. date: 2018-06-03-22-41-59 +.. nonce: 2e82g3 +.. section: Library + +The concatenation (``+``) and repetition (``*``) sequence operations now +raise :exc:`TypeError` instead of :exc:`SystemError` when performed on +:class:`mmap.mmap` objects. Patch by Zackery Spytz. + +.. + +.. bpo: 33734 +.. date: 2018-06-01-10-55-48 +.. nonce: x1W9x0 +.. section: Library + +asyncio/ssl: Fix AttributeError, increase default handshake timeout + +.. + +.. bpo: 31014 +.. date: 2018-05-31-06-48-55 +.. nonce: SNY681 +.. section: Library + +Fixed creating a controller for :mod:`webbrowser` when a user specifies a +path to an entry in the BROWSER environment variable. Based on patch by +John Still. + +.. + +.. bpo: 2504 +.. date: 2018-05-30-16-00-06 +.. nonce: BynUvU +.. section: Library + +Add gettext.pgettext() and variants. + +.. + +.. bpo: 33197 +.. date: 2018-05-30-00-26-05 +.. nonce: XkE2kL +.. section: Library + +Add description property for _ParameterKind + +.. + +.. bpo: 32751 +.. date: 2018-05-29-15-32-18 +.. nonce: oBTqr7 +.. section: Library + +When cancelling the task due to a timeout, :meth:`asyncio.wait_for` will now +wait until the cancellation is complete. + +.. + +.. bpo: 32684 +.. date: 2018-05-29-12-51-18 +.. nonce: ZEIism +.. section: Library + +Fix gather to propagate cancellation of itself even with return_exceptions. + +.. + +.. bpo: 33654 +.. date: 2018-05-29-01-13-39 +.. nonce: sa81Si +.. section: Library + +Support protocol type switching in SSLTransport.set_protocol(). + +.. + +.. bpo: 33674 +.. date: 2018-05-29-00-37-56 +.. nonce: 2IkGhL +.. section: Library + +Pause the transport as early as possible to further reduce the risk of +data_received() being called before connection_made(). + +.. + +.. bpo: 33671 +.. date: 2018-05-28-23-25-17 +.. nonce: GIdKKi +.. section: Library + +:func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`, +:func:`shutil.copytree` and :func:`shutil.move` use platform-specific +fast-copy syscalls on Linux, Solaris and macOS in order to copy the file +more efficiently. On Windows :func:`shutil.copyfile` uses a bigger default +buffer size (1 MiB instead of 16 KiB) and a :func:`memoryview`-based variant +of :func:`shutil.copyfileobj` is used. The speedup for copying a 512MiB file +is about +26% on Linux, +50% on macOS and +40% on Windows. Also, much less +CPU cycles are consumed. (Contributed by Giampaolo Rodola' in +:issue:`25427`.) + +.. + +.. bpo: 33674 +.. date: 2018-05-28-22-49-59 +.. nonce: 6LFFj7 +.. section: Library + +Fix a race condition in SSLProtocol.connection_made() of asyncio.sslproto: +start immediately the handshake instead of using call_soon(). Previously, +data_received() could be called before the handshake started, causing the +handshake to hang or fail. + +.. + +.. bpo: 31647 +.. date: 2018-05-28-18-40-26 +.. nonce: s4Fad3 +.. section: Library + +Fixed bug where calling write_eof() on a _SelectorSocketTransport after it's +already closed raises AttributeError. + +.. + +.. bpo: 32610 +.. date: 2018-05-28-16-40-32 +.. nonce: KvUAsL +.. section: Library + +Make asyncio.all_tasks() return only pending tasks. + +.. + +.. bpo: 32410 +.. date: 2018-05-28-16-19-35 +.. nonce: Z1DZaF +.. section: Library + +Avoid blocking on file IO in sendfile fallback code + +.. + +.. bpo: 33469 +.. date: 2018-05-28-15-55-12 +.. nonce: hmXBpY +.. section: Library + +Fix RuntimeError after closing loop that used run_in_executor + +.. + +.. bpo: 33672 +.. date: 2018-05-28-12-29-54 +.. nonce: GM_Xm_ +.. section: Library + +Fix Task.__repr__ crash with Cython's bogus coroutines + +.. + +.. bpo: 33654 +.. date: 2018-05-26-13-09-34 +.. nonce: IbYWxA +.. section: Library + +Fix transport.set_protocol() to support switching between asyncio.Protocol +and asyncio.BufferedProtocol. Fix loop.start_tls() to work with +asyncio.BufferedProtocols. + +.. + +.. bpo: 33652 +.. date: 2018-05-26-10-13-59 +.. nonce: humFJ1 +.. section: Library + +Pickles of type variables and subscripted generics are now future-proof and +compatible with older Python versions. + +.. + +.. bpo: 32493 +.. date: 2018-05-24-17-41-36 +.. nonce: 5tAoAu +.. section: Library + +Fixed :func:`uuid.uuid1` on FreeBSD. + +.. + +.. bpo: 33238 +.. date: 2018-05-24-09-15-52 +.. nonce: ooDfoo +.. section: Library + +Add ``InvalidStateError`` to :mod:`concurrent.futures`. +``Future.set_result`` and ``Future.set_exception`` now raise +``InvalidStateError`` if the futures are not pending or running. Patch by +Jason Haydaman. + +.. + +.. bpo: 33618 +.. date: 2018-05-23-20-14-34 +.. nonce: xU39lr +.. section: Library + +Finalize and document preliminary and experimental TLS 1.3 support with +OpenSSL 1.1.1 + +.. + +.. bpo: 33625 +.. date: 2018-05-23-17-07-54 +.. nonce: nzQgD8 +.. section: Library + +Release GIL on `grp.getgrnam`, `grp.getgrgid`, `pwd.getpwnam` and +`pwd.getpwuid` if reentrant variants of these functions are available. Patch +by William Grzybowski. + +.. + +.. bpo: 33623 +.. date: 2018-05-23-14-58-05 +.. nonce: wAw1cF +.. section: Library + +Fix possible SIGSGV when asyncio.Future is created in __del__ + +.. + +.. bpo: 11874 +.. date: 2018-05-23-00-26-27 +.. nonce: glK5iP +.. section: Library + +Use a better regex when breaking usage into wrappable parts. Avoids bogus +assertion errors from custom metavar strings. + +.. + +.. bpo: 30877 +.. date: 2018-05-22-13-05-12 +.. nonce: JZEGjI +.. section: Library + +Fixed a bug in the Python implementation of the JSON decoder that prevented +the cache of parsed strings from clearing after finishing the decoding. +Based on patch by c-fos. + +.. + +.. bpo: 33604 +.. date: 2018-05-22-11-55-33 +.. nonce: 6V4JcO +.. section: Library + +Remove HMAC default to md5 marked for removal in 3.8 (removal originally +planned in 3.6, bump to 3.8 in gh-7062). + +.. + +.. bpo: 33582 +.. date: 2018-05-19-15-58-14 +.. nonce: qBZPmF +.. section: Library + +Emit a deprecation warning for inspect.formatargspec + +.. + +.. bpo: 21145 +.. date: 2018-05-18-22-52-34 +.. nonce: AiQMDx +.. section: Library + +Add ``functools.cached_property`` decorator, for computed properties cached +for the life of the instance. + +.. + +.. bpo: 33570 +.. date: 2018-05-18-21-50-47 +.. nonce: 7CZy4t +.. section: Library + +Change TLS 1.3 cipher suite settings for compatibility with OpenSSL +1.1.1-pre6 and newer. OpenSSL 1.1.1 will have TLS 1.3 ciphers enabled by +default. + +.. + +.. bpo: 28556 +.. date: 2018-05-17-22-53-08 +.. nonce: C6Hnd1 +.. section: Library + +Do not simplify arguments to `typing.Union`. Now `Union[Manager, Employee]` +is not simplified to `Employee` at runtime. Such simplification previously +caused several bugs and limited possibilities for introspection. + +.. + +.. bpo: 12486 +.. date: 2018-05-17-22-14-58 +.. nonce: HBeh62 +.. section: Library + +:func:`tokenize.generate_tokens` is now documented as a public API to +tokenize unicode strings. It was previously present but undocumented. + +.. + +.. bpo: 33540 +.. date: 2018-05-16-18-10-38 +.. nonce: wy9LRV +.. section: Library + +Add a new ``block_on_close`` class attribute to ``ForkingMixIn`` and +``ThreadingMixIn`` classes of :mod:`socketserver`. + +.. + +.. bpo: 33548 +.. date: 2018-05-16-17-05-48 +.. nonce: xWslmx +.. section: Library + +tempfile._candidate_tempdir_list should consider common TEMP locations + +.. + +.. bpo: 33109 +.. date: 2018-05-16-14-57-58 +.. nonce: nPLL_S +.. section: Library + +argparse subparsers are once again not required by default, reverting the +change in behavior introduced by bpo-26510 in 3.7.0a2. + +.. + +.. bpo: 33541 +.. date: 2018-05-16-12-32-48 +.. nonce: kQORPE +.. section: Library + +Remove unused private method ``_strptime.LocaleTime.__pad`` (a.k.a. +``_LocaleTime__pad``). + +.. + +.. bpo: 33536 +.. date: 2018-05-16-10-07-40 +.. nonce: _s0TE8 +.. section: Library + +dataclasses.make_dataclass now checks for invalid field names and duplicate +fields. Also, added a check for invalid field specifications. + +.. + +.. bpo: 33542 +.. date: 2018-05-16-09-30-27 +.. nonce: idNAcs +.. section: Library + +Prevent ``uuid.get_node`` from using a DUID instead of a MAC on Windows. +Patch by Zvi Effron + +.. + +.. bpo: 26819 +.. date: 2018-05-16-05-24-43 +.. nonce: taxbVT +.. section: Library + +Fix race condition with `ReadTransport.resume_reading` in Windows proactor +event loop. + +.. + +.. bpo: 0 +.. date: 2018-05-15-18-02-03 +.. nonce: pj2Mbb +.. section: Library + +Fix failure in `typing.get_type_hints()` when ClassVar was provided as a +string forward reference. + +.. + +.. bpo: 33516 +.. date: 2018-05-15-17-06-42 +.. nonce: ZzARe4 +.. section: Library + +:class:`unittest.mock.MagicMock` now supports the ``__round__`` magic +method. + +.. + +.. bpo: 28612 +.. date: 2018-05-15-15-03-48 +.. nonce: E9dz39 +.. section: Library + +Added support for Site Maps to urllib's ``RobotFileParser`` as +:meth:`RobotFileParser.site_maps() +`. Patch by Lady Red, based on +patch by Peter Wirtz. + +.. + +.. bpo: 28167 +.. date: 2018-05-15-13-49-13 +.. nonce: p4RdQt +.. section: Library + +Remove platform.linux_distribution, which was deprecated since 3.5. + +.. + +.. bpo: 33504 +.. date: 2018-05-15-12-11-13 +.. nonce: czsHFg +.. section: Library + +Switch the default dictionary implementation for :mod:`configparser` from +:class:`collections.OrderedDict` to the standard :class:`dict` type. + +.. + +.. bpo: 33505 +.. date: 2018-05-14-18-05-35 +.. nonce: L8pAyt +.. section: Library + +Optimize asyncio.ensure_future() by reordering if checks: 1.17x faster. + +.. + +.. bpo: 33497 +.. date: 2018-05-14-17-49-34 +.. nonce: wWT6XM +.. section: Library + +Add errors param to cgi.parse_multipart and make an encoding in FieldStorage +use the given errors (needed for Twisted). Patch by Amber Brown. + +.. + +.. bpo: 29235 +.. date: 2018-05-14-15-01-55 +.. nonce: 47Fzwt +.. section: Library + +The :class:`cProfile.Profile` class can now be used as a context manager. +Patch by Scott Sanderson. + +.. + +.. bpo: 33495 +.. date: 2018-05-14-10-29-03 +.. nonce: TeGTQJ +.. section: Library + +Change dataclasses.Fields repr to use the repr of each of its members, +instead of str. This makes it more clear what each field actually +represents. This is especially true for the 'type' member. + +.. + +.. bpo: 26103 +.. date: 2018-05-14-09-07-14 +.. nonce: _zU8E2 +.. section: Library + +Correct ``inspect.isdatadescriptor`` to look for ``__set__`` or +``__delete__``. Patch by Aaron Hall. + +.. + +.. bpo: 29209 +.. date: 2018-05-12-13-06-41 +.. nonce: h5RxYy +.. section: Library + +Removed the ``doctype()`` method and the *html* parameter of the constructor +of :class:`~xml.etree.ElementTree.XMLParser`. The ``doctype()`` method +defined in a subclass will no longer be called. Deprecated methods +``getchildren()`` and ``getiterator()`` in the :mod:`~xml.etree.ElementTree` +module emit now a :exc:`DeprecationWarning` instead of +:exc:`PendingDeprecationWarning`. + +.. + +.. bpo: 33453 +.. date: 2018-05-12-06-01-02 +.. nonce: Fj-jMD +.. section: Library + +Fix dataclasses to work if using literal string type annotations or if using +PEP 563 "Postponed Evaluation of Annotations". Only specific string +prefixes are detected for both ClassVar ("ClassVar" and "typing.ClassVar") +and InitVar ("InitVar" and "dataclasses.InitVar"). + +.. + +.. bpo: 28556 +.. date: 2018-05-08-16-43-42 +.. nonce: _xr5mp +.. section: Library + +Minor fixes in typing module: add annotations to ``NamedTuple.__new__``, +pass ``*args`` and ``**kwds`` in ``Generic.__new__``. Original PRs by +Paulius ?arka and Chad Dombrova. + +.. + +.. bpo: 33365 +.. date: 2018-05-08-15-01-10 +.. nonce: SicsAd +.. section: Library + +Print the header values besides the header keys instead just the header keys +if *debuglevel* is set to >0 in :mod:`http.client`. Patch by Marco Strigl. + +.. + +.. bpo: 20087 +.. date: 2018-05-05-18-02-24 +.. nonce: lJrvXL +.. section: Library + +Updated alias mapping with glibc 2.27 supported locales. + +.. + +.. bpo: 33422 +.. date: 2018-05-05-09-53-05 +.. nonce: 4FtQ0q +.. section: Library + +Fix trailing quotation marks getting deleted when looking up byte/string +literals on pydoc. Patch by Andr?s Delfino. + +.. + +.. bpo: 28167 +.. date: 2018-05-02-07-26-29 +.. nonce: 7FwDfN +.. section: Library + +The function ``platform.linux_distribution`` and ``platform.dist`` now +trigger a ``DeprecationWarning`` and have been marked for removal in Python +3.8 + +.. + +.. bpo: 33281 +.. date: 2018-05-01-22-35-50 +.. nonce: d4jOt4 +.. section: Library + +Fix ctypes.util.find_library regression on macOS. + +.. + +.. bpo: 33311 +.. date: 2018-05-01-22-33-14 +.. nonce: 8YPB-k +.. section: Library + +Text and html output generated by cgitb does not display parentheses if the +current call is done directly in the module. Patch by St?phane Blondon. + +.. + +.. bpo: 27300 +.. date: 2018-05-01-02-24-44 +.. nonce: LdIXvK +.. section: Library + +The file classes in *tempfile* now accept an *errors* parameter that +complements the already existing *encoding*. Patch by Stephan Hohe. + +.. + +.. bpo: 32933 +.. date: 2018-04-30-22-43-31 +.. nonce: M3iI_y +.. section: Library + +:func:`unittest.mock.mock_open` now supports iteration over the file +contents. Patch by Tony Flury. + +.. + +.. bpo: 33217 +.. date: 2018-04-30-13-29-47 +.. nonce: TENDzd +.. section: Library + +Raise :exc:`TypeError` when looking up non-Enum objects in Enum classes and +Enum members. + +.. + +.. bpo: 33197 +.. date: 2018-04-29-23-56-20 +.. nonce: dgRLqr +.. section: Library + +Update error message when constructing invalid inspect.Parameters Patch by +Dong-hee Na. + +.. + +.. bpo: 33383 +.. date: 2018-04-29-11-15-38 +.. nonce: g32YWn +.. section: Library + +Fixed crash in the get() method of the :mod:`dbm.ndbm` database object when +it is called with a single argument. + +.. + +.. bpo: 33375 +.. date: 2018-04-28-08-11-35 +.. nonce: Dbq1fz +.. section: Library + +The warnings module now finds the Python file associated with a warning from +the code object, rather than the frame's global namespace. This is +consistent with how tracebacks and pdb find filenames, and should work +better for dynamically executed code. + +.. + +.. bpo: 33336 +.. date: 2018-04-27-22-18-38 +.. nonce: T8rxn0 +.. section: Library + +``imaplib`` now allows ``MOVE`` command in ``IMAP4.uid()`` (RFC 6851: IMAP +MOVE Extension) and potentially as a name of supported method of ``IMAP4`` +object. + +.. + +.. bpo: 32455 +.. date: 2018-04-26-13-31-10 +.. nonce: KPWg3K +.. section: Library + +Added *jump* parameter to :func:`dis.stack_effect`. + +.. + +.. bpo: 27485 +.. date: 2018-04-25-14-05-21 +.. nonce: nclVSU +.. section: Library + +Rename and deprecate undocumented functions in :func:`urllib.parse`. + +.. + +.. bpo: 33332 +.. date: 2018-04-23-21-41-30 +.. nonce: Y6OZ8Z +.. section: Library + +Add ``signal.valid_signals()`` to expose the POSIX sigfillset() +functionality. + +.. + +.. bpo: 33251 +.. date: 2018-04-23-18-25-36 +.. nonce: C_K-J9 +.. section: Library + +`ConfigParser.items()` was fixed so that key-value pairs passed in via +`vars` are not included in the resulting output. + +.. + +.. bpo: 33329 +.. date: 2018-04-23-13-21-39 +.. nonce: lQ-Eod +.. section: Library + +Fix multiprocessing regression on newer glibcs + +.. + +.. bpo: 33334 +.. date: 2018-04-22-20-13-21 +.. nonce: 19UMOC +.. section: Library + +:func:`dis.stack_effect` now supports all defined opcodes including NOP and +EXTENDED_ARG. + +.. + +.. bpo: 991266 +.. date: 2018-04-21-00-24-08 +.. nonce: h93TP_ +.. section: Library + +Fix quoting of the ``Comment`` attribute of +:class:`http.cookies.SimpleCookie`. + +.. + +.. bpo: 33131 +.. date: 2018-04-20-10-43-17 +.. nonce: L2E977 +.. section: Library + +Upgrade bundled version of pip to 10.0.1. + +.. + +.. bpo: 33308 +.. date: 2018-04-18-19-12-25 +.. nonce: fW75xi +.. section: Library + +Fixed a crash in the :mod:`parser` module when converting an ST object to a +tree of tuples or lists with ``line_info=False`` and ``col_info=True``. + +.. + +.. bpo: 23403 +.. date: 2018-04-16-16-21-09 +.. nonce: rxR1Q_ +.. section: Library + +lib2to3 now uses pickle protocol 4 for pre-computed grammars. + +.. + +.. bpo: 33266 +.. date: 2018-04-16-15-59-21 +.. nonce: w2PAm- +.. section: Library + +lib2to3 now recognizes ``rf'...'`` strings. + +.. + +.. bpo: 11594 +.. date: 2018-04-16-08-42-03 +.. nonce: QLo4vv +.. section: Library + +Ensure line-endings are respected when using lib2to3. + +.. + +.. bpo: 33254 +.. date: 2018-04-13-15-14-47 +.. nonce: DS4KFK +.. section: Library + +Have :func:`importlib.resources.contents` and +:meth:`importlib.abc.ResourceReader.contents` return an :term:`iterable` +instead of an :term:`iterator`. + +.. + +.. bpo: 33265 +.. date: 2018-04-13-08-12-50 +.. nonce: KPQRk0 +.. section: Library + +``contextlib.ExitStack`` and ``contextlib.AsyncExitStack`` now use a method +instead of a wrapper function for exit callbacks. + +.. + +.. bpo: 33263 +.. date: 2018-04-11-20-29-19 +.. nonce: B56Hc1 +.. section: Library + +Fix FD leak in `_SelectorSocketTransport` Patch by Vlad Starostin. + +.. + +.. bpo: 33256 +.. date: 2018-04-10-20-57-14 +.. nonce: ndHkqu +.. section: Library + +Fix display of ```` call in the html produced by ``cgitb.html()``. +Patch by St?phane Blondon. + +.. + +.. bpo: 33144 +.. date: 2018-04-10-14-50-30 +.. nonce: iZr4et +.. section: Library + +``random.Random()`` and its subclassing mechanism got optimized to check +only once at class/subclass instantiation time whether its ``getrandbits()`` +method can be relied on by other methods, including ``randrange()``, for the +generation of arbitrarily large random integers. Patch by Wolfgang Maier. + +.. + +.. bpo: 33185 +.. date: 2018-04-08-22-54-07 +.. nonce: Id-Ba9 +.. section: Library + +Fixed regression when running pydoc with the :option:`-m` switch. (The +regression was introduced in 3.7.0b3 by the resolution of :issue:`33053`) + +This fix also changed pydoc to add ``os.getcwd()`` to :data:`sys.path` when +necessary, rather than adding ``"."``. + +.. + +.. bpo: 29613 +.. date: 2018-04-07-13-49-39 +.. nonce: r6FDnB +.. section: Library + +Added support for the ``SameSite`` cookie flag to the ``http.cookies`` +module. + +.. + +.. bpo: 33169 +.. date: 2018-04-06-14-56-26 +.. nonce: ByhDqb +.. section: Library + +Delete entries of ``None`` in :data:`sys.path_importer_cache` when +:meth:`importlib.machinery.invalidate_caches` is called. + +.. + +.. bpo: 33203 +.. date: 2018-04-05-11-09-45 +.. nonce: Hje9Py +.. section: Library + +``random.Random.choice()`` now raises ``IndexError`` for empty sequences +consistently even when called from subclasses without a ``getrandbits()`` +implementation. + +.. + +.. bpo: 33224 +.. date: 2018-04-04-23-41-30 +.. nonce: pyR0jB +.. section: Library + +Update difflib.mdiff() for :pep:`479`. Convert an uncaught StopIteration in +a generator into a return-statement. + +.. + +.. bpo: 33209 +.. date: 2018-04-03-10-37-13 +.. nonce: 9sGWE_ +.. section: Library + +End framing at the end of C implementation of :func:`pickle.Pickler.dump`. + +.. + +.. bpo: 32861 +.. date: 2018-04-02-20-44-54 +.. nonce: HeBjzN +.. section: Library + +The urllib.robotparser's ``__str__`` representation now includes wildcard +entries and the "Crawl-delay" and "Request-rate" fields. Also removes extra +newlines that were being appended to the end of the string. Patch by Michael +Lazar. + +.. + +.. bpo: 23403 +.. date: 2018-04-02-16-10-12 +.. nonce: KG7ADV +.. section: Library + +``DEFAULT_PROTOCOL`` in :mod:`pickle` was bumped to 4. Protocol 4 is +described in :pep:`3154` and available since Python 3.4. It offers better +performance and smaller size compared to protocol 3 introduced in Python +3.0. + +.. + +.. bpo: 20104 +.. date: 2018-04-01-19-21-04 +.. nonce: -AKcGa +.. section: Library + +Improved error handling and fixed a reference leak in +:func:`os.posix_spawn()`. + +.. + +.. bpo: 33106 +.. date: 2018-03-30-01-20-35 +.. nonce: zncfvW +.. section: Library + +Deleting a key from a read-only dbm database raises module specfic error +instead of KeyError. + +.. + +.. bpo: 33175 +.. date: 2018-03-29-04-32-25 +.. nonce: _zs1yM +.. section: Library + +In dataclasses, Field.__set_name__ now looks up the __set_name__ special +method on the class, not the instance, of the default value. + +.. + +.. bpo: 32380 +.. date: 2018-03-29-03-09-22 +.. nonce: NhuGig +.. section: Library + +Create functools.singledispatchmethod to support generic single dispatch on +descriptors and methods. + +.. + +.. bpo: 33141 +.. date: 2018-03-26-12-33-13 +.. nonce: 23wlxf +.. section: Library + +Have Field objects pass through __set_name__ to their default values, if +they have their own __set_name__. + +.. + +.. bpo: 33096 +.. date: 2018-03-25-13-18-16 +.. nonce: ofdbe7 +.. section: Library + +Allow ttk.Treeview.insert to insert iid that has a false boolean value. Note +iid=0 and iid=False would be same. Patch by Garvit Khatri. + +.. + +.. bpo: 32873 +.. date: 2018-03-24-19-54-48 +.. nonce: cHyoAm +.. section: Library + +Treat type variables and special typing forms as immutable by copy and +pickle. This fixes several minor issues and inconsistencies, and improves +backwards compatibility with Python 3.6. + +.. + +.. bpo: 33134 +.. date: 2018-03-24-19-34-26 +.. nonce: hbVeIX +.. section: Library + +When computing dataclass's __hash__, use the lookup table to contain the +function which returns the __hash__ value. This is an improvement over +looking up a string, and then testing that string to see what to do. + +.. + +.. bpo: 33127 +.. date: 2018-03-24-15-08-24 +.. nonce: olJmHv +.. section: Library + +The ssl module now compiles with LibreSSL 2.7.1. + +.. + +.. bpo: 32505 +.. date: 2018-03-22-16-05-56 +.. nonce: YK1N8v +.. section: Library + +Raise TypeError if a member variable of a dataclass is of type Field, but +doesn't have a type annotation. + +.. + +.. bpo: 33078 +.. date: 2018-03-21-17-59-39 +.. nonce: PQOniT +.. section: Library + +Fix the failure on OSX caused by the tests relying on sem_getvalue + +.. + +.. bpo: 33116 +.. date: 2018-03-21-16-52-26 +.. nonce: Tvzerj +.. section: Library + +Add 'Field' to dataclasses.__all__. + +.. + +.. bpo: 32896 +.. date: 2018-03-20-20-53-21 +.. nonce: ewW3Ln +.. section: Library + +Fix an error where subclassing a dataclass with a field that uses a +default_factory would generate an incorrect class. + +.. + +.. bpo: 33100 +.. date: 2018-03-19-20-47-00 +.. nonce: chyIO4 +.. section: Library + +Dataclasses: If a field has a default value that's a MemberDescriptorType, +then it's from that field being in __slots__, not an actual default value. + +.. + +.. bpo: 32953 +.. date: 2018-03-18-17-38-48 +.. nonce: t8WAWN +.. section: Library + +If a non-dataclass inherits from a frozen dataclass, allow attributes to be +added to the derived class. Only attributes from the frozen dataclass +cannot be assigned to. Require all dataclasses in a hierarchy to be either +all frozen or all non-frozen. + +.. + +.. bpo: 33097 +.. date: 2018-03-18-16-48-23 +.. nonce: Yl4gI2 +.. section: Library + +Raise RuntimeError when ``executor.submit`` is called during interpreter +shutdown. + +.. + +.. bpo: 32968 +.. date: 2018-03-18-15-57-32 +.. nonce: E4G7BO +.. section: Library + +Modulo and floor division involving Fraction and float should return float. + +.. + +.. bpo: 33061 +.. date: 2018-03-16-16-07-33 +.. nonce: TRTTek +.. section: Library + +Add missing ``NoReturn`` to ``__all__`` in typing.py + +.. + +.. bpo: 33078 +.. date: 2018-03-15-07-38-00 +.. nonce: RmjUF5 +.. section: Library + +Fix the size handling in multiprocessing.Queue when a pickling error occurs. + +.. + +.. bpo: 33064 +.. date: 2018-03-12-19-58-25 +.. nonce: LO2KIY +.. section: Library + +lib2to3 now properly supports trailing commas after ``*args`` and +``**kwargs`` in function signatures. + +.. + +.. bpo: 33056 +.. date: 2018-03-12-16-40-00 +.. nonce: lNN9Eh +.. section: Library + +FIX properly close leaking fds in concurrent.futures.ProcessPoolExecutor. + +.. + +.. bpo: 33021 +.. date: 2018-03-12-00-27-56 +.. nonce: m19B9T +.. section: Library + +Release the GIL during fstat() calls, avoiding hang of all threads when +calling mmap.mmap(), os.urandom(), and random.seed(). Patch by Nir Soffer. + +.. + +.. bpo: 31804 +.. date: 2018-03-11-19-03-52 +.. nonce: i8KUMp +.. section: Library + +Avoid failing in multiprocessing.Process if the standard streams are closed +or None at exit. + +.. + +.. bpo: 33034 +.. date: 2018-03-11-08-44-12 +.. nonce: bpb23d +.. section: Library + +Providing an explicit error message when casting the port property to +anything that is not an integer value using ``urlparse()`` and +``urlsplit()``. Patch by Matt Eaton. + +.. + +.. bpo: 30249 +.. date: 2018-03-11-00-20-26 +.. nonce: KSkgLB +.. section: Library + +Improve struct.unpack_from() exception messages for problems with the buffer +size and offset. + +.. + +.. bpo: 33037 +.. date: 2018-03-09-23-07-07 +.. nonce: nAJ3at +.. section: Library + +Skip sending/receiving data after SSL transport closing. + +.. + +.. bpo: 27683 +.. date: 2018-03-07-22-28-17 +.. nonce: 572Rv4 +.. section: Library + +Fix a regression in :mod:`ipaddress` that result of :meth:`hosts` is empty +when the network is constructed by a tuple containing an integer mask and +only 1 bit left for addresses. + +.. + +.. bpo: 22674 +.. date: 2018-03-07-19-37-00 +.. nonce: 2sIMmM +.. section: Library + +Add the strsignal() function in the signal module that returns the system +description of the given signal, as returned by strsignal(3). + +.. + +.. bpo: 32999 +.. date: 2018-03-06-20-30-20 +.. nonce: lgFXWl +.. section: Library + +Fix C implementation of ``ABC.__subclasscheck__(cls, subclass)`` crashed +when ``subclass`` is not a type object. + +.. + +.. bpo: 33009 +.. date: 2018-03-06-11-54-59 +.. nonce: -Ekysb +.. section: Library + +Fix inspect.signature() for single-parameter partialmethods. + +.. + +.. bpo: 32969 +.. date: 2018-03-06-00-19-41 +.. nonce: rGTKa0 +.. section: Library + +Expose several missing constants in zlib and fix corresponding +documentation. + +.. + +.. bpo: 32056 +.. date: 2018-03-01-17-49-56 +.. nonce: IlpfgE +.. section: Library + +Improved exceptions raised for invalid number of channels and sample width +when read an audio file in modules :mod:`aifc`, :mod:`wave` and +:mod:`sunau`. + +.. + +.. bpo: 32970 +.. date: 2018-02-28-18-39-48 +.. nonce: IPWtbS +.. section: Library + +Improved disassembly of the MAKE_FUNCTION instruction. + +.. + +.. bpo: 32844 +.. date: 2018-02-28-13-08-00 +.. nonce: u8tnAe +.. section: Library + +Fix wrong redirection of a low descriptor (0 or 1) to stderr in subprocess +if another low descriptor is closed. + +.. + +.. bpo: 32960 +.. date: 2018-02-26-20-04-40 +.. nonce: 48r0Ml +.. section: Library + +For dataclasses, disallow inheriting frozen from non-frozen classes, and +also disallow inheriting non-frozen from frozen classes. This restriction +will be relaxed at a future date. + +.. + +.. bpo: 32713 +.. date: 2018-02-26-13-16-36 +.. nonce: 55yegW +.. section: Library + +Fixed tarfile.itn handling of out-of-bounds float values. Patch by Joffrey +Fuhrer. + +.. + +.. bpo: 32257 +.. date: 2018-02-26-09-08-07 +.. nonce: 6ElnUt +.. section: Library + +The ssl module now contains OP_NO_RENEGOTIATION constant, available with +OpenSSL 1.1.0h or 1.1.1. + +.. + +.. bpo: 32951 +.. date: 2018-02-25-18-22-01 +.. nonce: gHrCXq +.. section: Library + +Direct instantiation of SSLSocket and SSLObject objects is now prohibited. +The constructors were never documented, tested, or designed as public +constructors. Users were suppose to use ssl.wrap_socket() or SSLContext. + +.. + +.. bpo: 32929 +.. date: 2018-02-25-13-47-48 +.. nonce: X2gTDH +.. section: Library + +Remove the tri-state parameter "hash", and add the boolean "unsafe_hash". If +unsafe_hash is True, add a __hash__ function, but if a __hash__ exists, +raise TypeError. If unsafe_hash is False, add a __hash__ based on the +values of eq= and frozen=. The unsafe_hash=False behavior is the same as +the old hash=None behavior. unsafe_hash=False is the default, just as +hash=None used to be. + +.. + +.. bpo: 32947 +.. date: 2018-02-25-13-06-21 +.. nonce: mqStVW +.. section: Library + +Add OP_ENABLE_MIDDLEBOX_COMPAT and test workaround for TLSv1.3 for future +compatibility with OpenSSL 1.1.1. + +.. + +.. bpo: 32146 +.. date: 2018-02-25-10-17-23 +.. nonce: xOzUFW +.. section: Library + +Document the interaction between frozen executables and the spawn and +forkserver start methods in multiprocessing. + +.. + +.. bpo: 30622 +.. date: 2018-02-24-21-40-42 +.. nonce: dQjxSe +.. section: Library + +The ssl module now detects missing NPN support in LibreSSL. + +.. + +.. bpo: 32922 +.. date: 2018-02-23-19-12-04 +.. nonce: u-xe0B +.. section: Library + +dbm.open() now encodes filename with the filesystem encoding rather than +default encoding. + +.. + +.. bpo: 32759 +.. date: 2018-02-23-12-21-41 +.. nonce: M-y9GA +.. section: Library + +Free unused arenas in multiprocessing.heap. + +.. + +.. bpo: 32859 +.. date: 2018-02-19-17-46-31 +.. nonce: kAT-Xp +.. section: Library + +In ``os.dup2``, don't check every call whether the ``dup3`` syscall exists +or not. + +.. + +.. bpo: 32556 +.. date: 2018-02-19-14-27-51 +.. nonce: CsRsgr +.. section: Library + +nt._getfinalpathname, nt._getvolumepathname and nt._getdiskusage now +correctly convert from bytes. + +.. + +.. bpo: 21060 +.. date: 2018-02-17-19-20-19 +.. nonce: S1Z-x6 +.. section: Library + +Rewrite confusing message from setup.py upload from "No dist file created in +earlier command" to the more helpful "Must create and upload files in one +command". + +.. + +.. bpo: 32857 +.. date: 2018-02-16-14-37-14 +.. nonce: -XljAx +.. section: Library + +In :mod:`tkinter`, ``after_cancel(None)`` now raises a :exc:`ValueError` +instead of canceling the first scheduled function. Patch by Cheryl Sabella. + +.. + +.. bpo: 32852 +.. date: 2018-02-15-12-04-29 +.. nonce: HDqIxM +.. section: Library + +Make sure sys.argv remains as a list when running trace. + +.. + +.. bpo: 31333 +.. date: 2018-02-15-08-18-52 +.. nonce: 4fF-gM +.. section: Library + +``_abc`` module is added. It is a speedup module with C implementations for +various functions and methods in ``abc``. Creating an ABC subclass and +calling ``isinstance`` or ``issubclass`` with an ABC subclass are up to 1.5x +faster. In addition, this makes Python start-up up to 10% faster. + +Note that the new implementation hides internal registry and caches, +previously accessible via private attributes ``_abc_registry``, +``_abc_cache``, and ``_abc_negative_cache``. There are three debugging +helper methods that can be used instead ``_dump_registry``, +``_abc_registry_clear``, and ``_abc_caches_clear``. + +.. + +.. bpo: 32841 +.. date: 2018-02-14-00-21-24 +.. nonce: bvHDOc +.. section: Library + +Fixed `asyncio.Condition` issue which silently ignored cancellation after +notifying and cancelling a conditional lock. Patch by Bar Harel. + +.. + +.. bpo: 32819 +.. date: 2018-02-11-15-54-41 +.. nonce: ZTRX2Q +.. section: Library + +ssl.match_hostname() has been simplified and no longer depends on re and +ipaddress module for wildcard and IP addresses. Error reporting for invalid +wildcards has been improved. + +.. + +.. bpo: 19675 +.. date: 2018-02-10-23-41-05 +.. nonce: -dj35- +.. section: Library + +``multiprocessing.Pool`` no longer leaks processes if its initialization +fails. + +.. + +.. bpo: 32394 +.. date: 2018-02-10-13-51-56 +.. nonce: dFM9SI +.. section: Library + +socket: Remove TCP_FASTOPEN,TCP_KEEPCNT,TCP_KEEPIDLE,TCP_KEEPINTVL flags on +older version Windows during run-time. + +.. + +.. bpo: 31787 +.. date: 2018-02-09-21-41-56 +.. nonce: owSZ2t +.. section: Library + +Fixed refleaks of ``__init__()`` methods in various modules. (Contributed by +Oren Milman) + +.. + +.. bpo: 30157 +.. date: 2018-02-09-14-44-43 +.. nonce: lEiiAK +.. section: Library + +Fixed guessing quote and delimiter in csv.Sniffer.sniff() when only the last +field is quoted. Patch by Jake Davis. + +.. + +.. bpo: 30688 +.. date: 2018-02-08-18-59-11 +.. nonce: zBh4TH +.. section: Library + +Added support of ``\N{name}`` escapes in regular expressions. Based on +patch by Jonathan Eunice. + +.. + +.. bpo: 32792 +.. date: 2018-02-08-00-47-07 +.. nonce: NtyDb4 +.. section: Library + +collections.ChainMap() preserves the order of the underlying mappings. + +.. + +.. bpo: 32775 +.. date: 2018-02-07-19-12-10 +.. nonce: -T77_c +.. section: Library + +:func:`fnmatch.translate()` no longer produces patterns which contain set +operations. Sets starting with '[' or containing '--', '&&', '~~' or '||' +will be interpreted differently in regular expressions in future versions. +Currently they emit warnings. fnmatch.translate() now avoids producing +patterns containing such sets by accident. + +.. + +.. bpo: 32622 +.. date: 2018-02-06-17-58-15 +.. nonce: AE0Jz7 +.. section: Library + +Implement native fast sendfile for Windows proactor event loop. + +.. + +.. bpo: 32777 +.. date: 2018-02-05-21-28-28 +.. nonce: C-wIXF +.. section: Library + +Fix a rare but potential pre-exec child process deadlock in subprocess on +POSIX systems when marking file descriptors inheritable on exec in the child +process. This bug appears to have been introduced in 3.4. + +.. + +.. bpo: 32647 +.. date: 2018-02-05-13-31-42 +.. nonce: ktmfR_ +.. section: Library + +The ctypes module used to depend on indirect linking for dlopen. The shared +extension is now explicitly linked against libdl on platforms with dl. + +.. + +.. bpo: 32749 +.. date: 2018-02-02-17-21-24 +.. nonce: u5scIn +.. section: Library + +A :mod:`dbm.dumb` database opened with flags 'r' is now read-only. +:func:`dbm.dumb.open` with flags 'r' and 'w' no longer creates a database if +it does not exist. + +.. + +.. bpo: 32741 +.. date: 2018-02-01-17-54-08 +.. nonce: KUvOPL +.. section: Library + +Implement ``asyncio.TimerHandle.when()`` method. + +.. + +.. bpo: 32691 +.. date: 2018-02-01-15-53-35 +.. nonce: VLWVTq +.. section: Library + +Use mod_spec.parent when running modules with pdb + +.. + +.. bpo: 32734 +.. date: 2018-02-01-01-34-47 +.. nonce: gCV9AD +.. section: Library + +Fixed ``asyncio.Lock()`` safety issue which allowed acquiring and locking +the same lock multiple times, without it being free. Patch by Bar Harel. + +.. + +.. bpo: 32727 +.. date: 2018-01-30-17-46-18 +.. nonce: aHVsRC +.. section: Library + +Do not include name field in SMTP envelope from address. Patch by St?phane +Wirtel + +.. + +.. bpo: 31453 +.. date: 2018-01-21-15-01-50 +.. nonce: cZiZBe +.. section: Library + +Add TLSVersion constants and SSLContext.maximum_version / minimum_version +attributes. The new API wraps OpenSSL 1.1 +https://www.openssl.org/docs/man1.1.0/ssl/SSL_CTX_set_min_proto_version.html +feature. + +.. + +.. bpo: 24334 +.. date: 2018-01-20-23-17-25 +.. nonce: GZuQLv +.. section: Library + +Internal implementation details of ssl module were cleaned up. The SSLSocket +has one less layer of indirection. Owner and session information are now +handled by the SSLSocket and SSLObject constructor. Channel binding +implementation has been simplified. + +.. + +.. bpo: 31848 +.. date: 2018-01-18-23-34-17 +.. nonce: M2cldy +.. section: Library + +Fix the error handling in Aifc_read.initfp() when the SSND chunk is not +found. Patch by Zackery Spytz. + +.. + +.. bpo: 32585 +.. date: 2018-01-18-13-09-00 +.. nonce: qpeijr +.. section: Library + +Add Ttk spinbox widget to :mod:`tkinter.ttk`. Patch by Alan D Moore. + +.. + +.. bpo: 32512 +.. date: 2018-01-07-17-43-10 +.. nonce: flC-dE +.. section: Library + +:mod:`profile` CLI accepts `-m module_name` as an alternative to script +path. + +.. + +.. bpo: 8525 +.. date: 2018-01-01-00-16-59 +.. nonce: Dq8s63 +.. section: Library + +help() on a type now displays builtin subclasses. This is intended primarily +to help with notification of more specific exception subclasses. + +Patch by Sanyam Khurana. + +.. + +.. bpo: 31639 +.. date: 2017-12-27-21-55-19 +.. nonce: l3avDJ +.. section: Library + +http.server now exposes a ThreadingHTTPServer class and uses it when the +module is run with ``-m`` to cope with web browsers pre-opening sockets. + +.. + +.. bpo: 29877 +.. date: 2017-12-16-11-40-52 +.. nonce: SfWhmz +.. section: Library + +compileall: import ProcessPoolExecutor only when needed, preventing hangs on +low resource platforms + +.. + +.. bpo: 32221 +.. date: 2017-12-06-10-10-10 +.. nonce: ideco_ +.. section: Library + +Various functions returning tuple containing IPv6 addresses now omit +``%scope`` part since the same information is already encoded in *scopeid* +tuple item. Especially this speeds up :func:`socket.recvfrom` when it +receives multicast packet since useless resolving of network interface name +is omitted. + +.. + +.. bpo: 32147 +.. date: 2017-11-28-10-23-13 +.. nonce: PI2k1Y +.. section: Library + +:func:`binascii.unhexlify` is now up to 2 times faster. Patch by Sergey +Fedoseev. + +.. + +.. bpo: 30693 +.. date: 2017-11-27-15-09-49 +.. nonce: yC4mJ8 +.. section: Library + +The TarFile class now recurses directories in a reproducible way. + +.. + +.. bpo: 30693 +.. date: 2017-11-27-15-09-49 +.. nonce: yC4mJ7 +.. section: Library + +The ZipFile class now recurses directories in a reproducible way. + +.. + +.. bpo: 31680 +.. date: 2017-11-01-15-44-48 +.. nonce: yO6oSC +.. section: Library + +Added :data:`curses.ncurses_version`. + +.. + +.. bpo: 31908 +.. date: 2017-10-31 +.. nonce: g4xh8x +.. section: Library + +Fix output of cover files for ``trace`` module command-line tool. Previously +emitted cover files only when ``--missing`` option was used. Patch by +Michael Selik. + +.. + +.. bpo: 31608 +.. date: 2017-10-29-10-37-55 +.. nonce: wkp8Nw +.. section: Library + +Raise a ``TypeError`` instead of crashing if a ``collections.deque`` +subclass returns a non-deque from ``__new__``. Patch by Oren Milman. + +.. + +.. bpo: 31425 +.. date: 2017-10-24-10-18-35 +.. nonce: 1lgw47 +.. section: Library + +Add support for sockets of the AF_QIPCRTR address family, supported by the +Linux kernel. This is used to communicate with services, such as GPS or +radio, running on Qualcomm devices. Patch by Bjorn Andersson. + +.. + +.. bpo: 22005 +.. date: 2017-10-12-22-39-55 +.. nonce: lGP-sc +.. section: Library + +Implemented unpickling instances of :class:`~datetime.datetime`, +:class:`~datetime.date` and :class:`~datetime.time` pickled by Python 2. +``encoding='latin1'`` should be used for successful decoding. + +.. + +.. bpo: 27645 +.. date: 2017-10-05-20-41-48 +.. nonce: 1Y_Wag +.. section: Library + +:class:`sqlite3.Connection` now exposes a +:class:`~sqlite3.Connection.backup` method, if the underlying SQLite library +is at version 3.6.11 or higher. Patch by Lele Gaifax. + +.. + +.. bpo: 16865 +.. date: 2017-09-29-16-40-38 +.. nonce: l-f6I_ +.. section: Library + +Support arrays >=2GiB in :mod:`ctypes`. Patch by Segev Finer. + +.. + +.. bpo: 31508 +.. date: 2017-09-19-12-38-31 +.. nonce: pDsFJl +.. section: Library + +Removed support of arguments in `tkinter.ttk.Treeview.selection`. It was +deprecated in 3.6. Use specialized methods like `selection_set` for +changing the selection. + +.. + +.. bpo: 29456 +.. date: 2017-08-24-17-55-39 +.. nonce: XaB3MP +.. section: Library + +Fix bugs in hangul normalization: u1176, u11a7 and u11c3 + +.. + +.. bpo: 21257 +.. date: 2019-01-15-21-45-27 +.. nonce: U9LKkx +.. section: Documentation + +Document :func:`http.client.parse_headers`. + +.. + +.. bpo: 34764 +.. date: 2018-12-23-23-52-31 +.. nonce: DwOGeT +.. section: Documentation + +Improve example of iter() with 2nd sentinel argument. + +.. + +.. bpo: 35564 +.. date: 2018-12-22-22-52-05 +.. nonce: TuEU_D +.. section: Documentation + +Explicitly set master_doc variable in conf.py for compliance with Sphinx 2.0 + +.. + +.. bpo: 35511 +.. date: 2018-12-16-16-14-44 +.. nonce: iVcyav +.. section: Documentation + +Specified that profile.Profile class doesn't not support enable or disable +methods. Also, elaborated that Profile object as a context manager is only +supported in cProfile module. + +.. + +.. bpo: 10536 +.. date: 2018-11-04-22-03-56 +.. nonce: a0IsfE +.. section: Documentation + +Enhance the gettext docs. Patch by ?ric Araujo + +.. + +.. bpo: 35089 +.. date: 2018-10-28-16-51-31 +.. nonce: _stCpS +.. section: Documentation + +Remove mention of ``typing.io`` and ``typing.re``. Their types should be +imported from ``typing`` directly. + +.. + +.. bpo: 35038 +.. date: 2018-10-25-17-45-09 +.. nonce: 2eVOYS +.. section: Documentation + +Fix the documentation about an unexisting `f_restricted` attribute in the +frame object. Patch by St?phane Wirtel + +.. + +.. bpo: 35042 +.. date: 2018-10-22-14-17-57 +.. nonce: 1UGv1a +.. section: Documentation + +Replace PEP XYZ by the pep role and allow to use the direct links to the +PEPs. + +.. + +.. bpo: 35044 +.. date: 2018-10-22-14-09-58 +.. nonce: qjvNtI +.. section: Documentation + +Fix the documentation with the role ``exc`` for the appropriated exception. +Patch by St?phane Wirtel + +.. + +.. bpo: 35035 +.. date: 2018-10-21-02-20-36 +.. nonce: 4zBObK +.. section: Documentation + +Rename documentation for :mod:`email.utils` to ``email.utils.rst``. + +.. + +.. bpo: 34967 +.. date: 2018-10-13-07-39-57 +.. nonce: E40tFP +.. section: Documentation + +Use app.add_object_type() instead of the deprecated Sphinx function +app.description_unit() + +.. + +.. bpo: 34913 +.. date: 2018-10-10-00-34-08 +.. nonce: kVd1Fv +.. section: Documentation + +Add documentation about the new command line interface of the gzip module. + +.. + +.. bpo: 32174 +.. date: 2018-10-08-19-15-28 +.. nonce: YO9CYm +.. section: Documentation + +chm document displays non-ASCII charaters properly on some MBCS Windows +systems. + +.. + +.. bpo: 11233 +.. date: 2018-10-03-20-39-25 +.. nonce: BX6Gen +.. section: Documentation + +Create availability directive for documentation. Original patch by Georg +Brandl. + +.. + +.. bpo: 34790 +.. date: 2018-09-24-12-47-08 +.. nonce: G2KXIH +.. section: Documentation + +Document how passing coroutines to asyncio.wait() can be confusing. + +.. + +.. bpo: 34552 +.. date: 2018-09-12-10-18-04 +.. nonce: p9PoYv +.. section: Documentation + +Make clear that ``==`` operator sometimes is equivalent to `is`. The ``<``, +``<=``, ``>`` and ``>=`` operators are only defined where they make sense. + +.. + +.. bpo: 28617 +.. date: 2018-09-06-22-39-47 +.. nonce: MjnJLz +.. section: Documentation + +Fixed info in the stdtypes docs concerning the types that support membership +tests. + +.. + +.. bpo: 20177 +.. date: 2018-07-28-17-17-42 +.. nonce: cOZJWp +.. section: Documentation + +Migrate datetime.date.fromtimestamp to Argument Clinic. Patch by Tim +Hoffmann. + +.. + +.. bpo: 34065 +.. date: 2018-07-07-20-38-41 +.. nonce: 1snofM +.. section: Documentation + +Fix wrongly written basicConfig documentation markup syntax + +.. + +.. bpo: 33460 +.. date: 2018-06-22-08-38-29 +.. nonce: kHt4D0 +.. section: Documentation + +replaced ellipsis with correct error codes in tutorial chapter 3. + +.. + +.. bpo: 33847 +.. date: 2018-06-15-14-58-45 +.. nonce: IIDp6t +.. section: Documentation + +Add '@' operator entry to index. + +.. + +.. bpo: 33409 +.. date: 2018-06-08-23-46-01 +.. nonce: r4z9MM +.. section: Documentation + +Clarified the relationship between :pep:`538`'s PYTHONCOERCECLOCALE and PEP +540's PYTHONUTF8 mode. + +.. + +.. bpo: 33197 +.. date: 2018-06-08-23-37-14 +.. nonce: OERTKf +.. section: Documentation + +Add versionadded tag to the documentation of ParameterKind.description + +.. + +.. bpo: 17045 +.. date: 2018-06-07-08-33-45 +.. nonce: ZNx6KU +.. section: Documentation + +Improve the C-API doc for PyTypeObject. This includes adding several +quick-reference tables and a lot of missing slot/typedef entries. The +existing entries were also cleaned up with a slightly more consistent +format. + +.. + +.. bpo: 33736 +.. date: 2018-06-01-12-27-40 +.. nonce: JVegIu +.. section: Documentation + +Improve the documentation of :func:`asyncio.open_connection`, +:func:`asyncio.start_server` and their UNIX socket counterparts. + +.. + +.. bpo: 23859 +.. date: 2018-05-29-16-02-31 +.. nonce: E5gba1 +.. section: Documentation + +Document that `asyncio.wait()` does not cancel its futures on timeout. + +.. + +.. bpo: 32436 +.. date: 2018-05-23-11-59-51 +.. nonce: S1LGPa +.. section: Documentation + +Document :pep:`567` changes to asyncio. + +.. + +.. bpo: 33604 +.. date: 2018-05-22-11-47-14 +.. nonce: 5YHTpz +.. section: Documentation + +Update HMAC md5 default to a DeprecationWarning, bump removal to 3.8. + +.. + +.. bpo: 33594 +.. date: 2018-05-21-14-36-12 +.. nonce: -HRcyX +.. section: Documentation + +Document ``getargspec``, ``from_function`` and ``from_builtin`` as +deprecated in their respective docstring, and include version since +deprecation in DeprecationWarning message. + +.. + +.. bpo: 33503 +.. date: 2018-05-14-20-08-58 +.. nonce: Wvt0qg +.. section: Documentation + +Fix broken pypi link + +.. + +.. bpo: 33421 +.. date: 2018-05-14-15-15-41 +.. nonce: 3GU_QO +.. section: Documentation + +Add missing documentation for ``typing.AsyncContextManager``. + +.. + +.. bpo: 33487 +.. date: 2018-05-13-14-44-30 +.. nonce: iLDzFb +.. section: Documentation + +BZ2file now emit a DeprecationWarning when buffering=None is passed, the +deprecation message and documentation also now explicitly state it is +deprecated since 3.0. + +.. + +.. bpo: 33378 +.. date: 2018-04-29-04-02-18 +.. nonce: -anAHN +.. section: Documentation + +Add Korean language switcher for https://docs.python.org/3/ + +.. + +.. bpo: 33276 +.. date: 2018-04-20-14-09-36 +.. nonce: rA1z_3 +.. section: Documentation + +Clarify that the ``__path__`` attribute on modules cannot be just any value. + +.. + +.. bpo: 33201 +.. date: 2018-04-01-21-03-41 +.. nonce: aa8Lkl +.. section: Documentation + +Modernize documentation for writing C extension types. + +.. + +.. bpo: 33195 +.. date: 2018-04-01-14-30-36 +.. nonce: dRS-XX +.. section: Documentation + +Deprecate ``Py_UNICODE`` usage in ``c-api/arg`` document. ``Py_UNICODE`` +related APIs are deprecated since Python 3.3, but it is missed in the +document. + +.. + +.. bpo: 33126 +.. date: 2018-03-28-17-03-17 +.. nonce: 5UGkNv +.. section: Documentation + +Document PyBuffer_ToContiguous(). + +.. + +.. bpo: 27212 +.. date: 2018-03-22-19-23-04 +.. nonce: wrE5KR +.. section: Documentation + +Modify documentation for the :func:`islice` recipe to consume initial values +up to the start index. + +.. + +.. bpo: 28247 +.. date: 2018-03-20-20-11-05 +.. nonce: -V-WS- +.. section: Documentation + +Update :mod:`zipapp` documentation to describe how to make standalone +applications. + +.. + +.. bpo: 18802 +.. date: 2018-03-11-18-53-47 +.. nonce: JhAqH3 +.. section: Documentation + +Documentation changes for ipaddress. Patch by Jon Foster and Berker Peksag. + +.. + +.. bpo: 27428 +.. date: 2018-03-11-00-16-56 +.. nonce: B7A8FT +.. section: Documentation + +Update documentation to clarify that ``WindowsRegistryFinder`` implements +``MetaPathFinder``. (Patch by Himanshu Lakhara) + +.. + +.. bpo: 28124 +.. date: 2018-02-25-16-33-35 +.. nonce: _uzkgq +.. section: Documentation + +The ssl module function ssl.wrap_socket() has been de-emphasized and +deprecated in favor of the more secure and efficient +SSLContext.wrap_socket() method. + +.. + +.. bpo: 17232 +.. date: 2018-02-23-12-48-03 +.. nonce: tmuTKL +.. section: Documentation + +Clarify docs for -O and -OO. Patch by Terry Reedy. + +.. + +.. bpo: 32436 +.. date: 2018-02-14-11-10-41 +.. nonce: TTJ2jb +.. section: Documentation + +Add documentation for the contextvars module (PEP 567). + +.. + +.. bpo: 32800 +.. date: 2018-02-10-15-16-04 +.. nonce: FyrqCk +.. section: Documentation + +Update link to w3c doc for xml default namespaces. + +.. + +.. bpo: 11015 +.. date: 2018-02-10-12-48-38 +.. nonce: -gUf34 +.. section: Documentation + +Update :mod:`test.support` documentation. + +.. + +.. bpo: 32613 +.. date: 2018-02-05-15-05-53 +.. nonce: TDjgM1 +.. section: Documentation + +Update the faq/windows.html to use the py command from PEP 397 instead of +python. + +.. + +.. bpo: 8722 +.. date: 2018-02-03-06-11-37 +.. nonce: MPyVyj +.. section: Documentation + +Document :meth:`__getattr__` behavior when property :meth:`get` method +raises :exc:`AttributeError`. + +.. + +.. bpo: 32614 +.. date: 2018-02-02-07-41-57 +.. nonce: LSqzGw +.. section: Documentation + +Modify RE examples in documentation to use raw strings to prevent +:exc:`DeprecationWarning` and add text to REGEX HOWTO to highlight the +deprecation. + +.. + +.. bpo: 20709 +.. date: 2018-02-01-10-57-24 +.. nonce: 1flcnc +.. section: Documentation + +Remove the paragraph where we explain that os.utime() does not support a +directory as path under Windows. Patch by Jan-Philip Gehrcke + +.. + +.. bpo: 32722 +.. date: 2018-01-30-11-28-27 +.. nonce: frdp6A +.. section: Documentation + +Remove the bad example in the tutorial of the Generator Expression. Patch by +St?phane Wirtel + +.. + +.. bpo: 31972 +.. date: 2018-01-25-14-23-12 +.. nonce: w1m_8r +.. section: Documentation + +Improve docstrings for `pathlib.PurePath` subclasses. + +.. + +.. bpo: 30607 +.. date: 2018-01-25-13-58-49 +.. nonce: 4dXxiq +.. section: Documentation + +Use the externalized ``python-docs-theme`` package when building the +documentation. + +.. + +.. bpo: 8243 +.. date: 2018-01-13-20-30-53 +.. nonce: s98r28 +.. section: Documentation + +Add a note about curses.addch and curses.addstr exception behavior when +writing outside a window, or pad. + +.. + +.. bpo: 32337 +.. date: 2017-12-22-17-29-37 +.. nonce: eZe-ID +.. section: Documentation + +Update documentation related with ``dict`` order. + +.. + +.. bpo: 25041 +.. date: 2017-10-23-13-41-12 +.. nonce: iAo2gW +.. section: Documentation + +Document ``AF_PACKET`` in the :mod:`socket` module. + +.. + +.. bpo: 31432 +.. date: 2017-09-13-07-14-59 +.. nonce: yAY4Z3 +.. section: Documentation + +Clarify meaning of CERT_NONE, CERT_OPTIONAL, and CERT_REQUIRED flags for +ssl.SSLContext.verify_mode. + +.. + +.. bpo: 35772 +.. date: 2019-01-18-12-19-19 +.. nonce: sGBbsn +.. section: Tests + +Fix sparse file tests of test_tarfile on ppc64 with the tmpfs filesystem. +Fix the function testing if the filesystem supports sparse files: create a +file which contains data and "holes", instead of creating a file which +contains no data. tmpfs effective block size is a page size (tmpfs lives in +the page cache). RHEL uses 64 KiB pages on aarch64, ppc64, ppc64le, only +s390x and x86_64 use 4 KiB pages, whereas the test punch holes of 4 KiB. + +.. + +.. bpo: 35045 +.. date: 2019-01-10-18-35-42 +.. nonce: qdd6d9 +.. section: Tests + +Make ssl tests less strict and also accept TLSv1 as system default. The +changes unbreaks test_min_max_version on Fedora 29. + +.. + +.. bpo: 32710 +.. date: 2019-01-07-23-34-41 +.. nonce: Hzo1b8 +.. section: Tests + +``test_asyncio/test_sendfile.py`` now resets the event loop policy using +:func:`tearDownModule` as done in other tests, to prevent a warning when +running tests on Windows. + +.. + +.. bpo: 33717 +.. date: 2019-01-07-23-22-44 +.. nonce: GhHXv8 +.. section: Tests + +test.pythoninfo now logs information of all clocks, not only time.time() and +time.perf_counter(). + +.. + +.. bpo: 35488 +.. date: 2019-01-04-21-34-53 +.. nonce: U7JJzP +.. section: Tests + +Add a test to pathlib's Path.match() to verify it does not support +glob-style ** recursive pattern matching. + +.. + +.. bpo: 31731 +.. date: 2018-12-18-23-20-39 +.. nonce: tcv85C +.. section: Tests + +Fix a race condition in ``check_interrupted_write()`` of test_io: create +directly the thread with SIGALRM signal blocked, rather than blocking the +signal later from the thread. Previously, it was possible that the thread +gets the signal before the signal is blocked. + +.. + +.. bpo: 35424 +.. date: 2018-12-18-22-36-53 +.. nonce: 1Pz4IS +.. section: Tests + +Fix test_multiprocessing_main_handling: use :class:`multiprocessing.Pool` +with a context manager and then explicitly join the pool. + +.. + +.. bpo: 35519 +.. date: 2018-12-17-16-41-45 +.. nonce: RR3L_w +.. section: Tests + +Rename :mod:`test.bisect` module to :mod:`test.bisect_cmd` to avoid conflict +with :mod:`bisect` module when running directly a test like ``./python +Lib/test/test_xmlrpc.py``. + +.. + +.. bpo: 35513 +.. date: 2018-12-16-23-36-47 +.. nonce: k4WHlA +.. section: Tests + +Replace :func:`time.time` with :func:`time.monotonic` in tests to measure +time delta. + +.. + +.. bpo: 34279 +.. date: 2018-12-12-18-20-18 +.. nonce: DhKcuP +.. section: Tests + +:func:`test.support.run_unittest` no longer raise :exc:`TestDidNotRun` if +the test result contains skipped tests. The exception is now only raised if +no test have been run and no test have been skipped. + +.. + +.. bpo: 35412 +.. date: 2018-12-12-18-07-58 +.. nonce: kbuJor +.. section: Tests + +Add testcase to ``test_future4``: check unicode literal. + +.. + +.. bpo: 26704 +.. date: 2018-12-10-13-18-37 +.. nonce: DBAN4c +.. section: Tests + +Added test demonstrating double-patching of an instance method. Patch by +Anthony Sottile. + +.. + +.. bpo: 33725 +.. date: 2018-12-09-01-27-29 +.. nonce: TaGayj +.. section: Tests + +test_multiprocessing_fork may crash on recent versions of macOS. Until the +issue is resolved, skip the test on macOS. + +.. + +.. bpo: 35352 +.. date: 2018-11-30-17-18-56 +.. nonce: 8bD7GC +.. section: Tests + +Modify test_asyncio to use the certificate set from the test directory. + +.. + +.. bpo: 35317 +.. date: 2018-11-26-16-54-21 +.. nonce: jByGP2 +.. section: Tests + +Fix ``mktime()`` overflow error in ``test_email``: run +``test_localtime_daylight_true_dst_true()`` and +``test_localtime_daylight_false_dst_true()`` with a specific timezone. + +.. + +.. bpo: 21263 +.. date: 2018-11-04-20-17-09 +.. nonce: T3qo9r +.. section: Tests + +After several reports that test_gdb does not work properly on macOS and +since gdb is not shipped by default anymore, test_gdb is now skipped on +macOS when LLVM Clang has been used to compile Python. Patch by Lysandros +Nikolaou + +.. + +.. bpo: 34279 +.. date: 2018-10-27-13-41-55 +.. nonce: v0Xqxe +.. section: Tests + +regrtest issue a warning when no tests have been executed in a particular +test file. Also, a new final result state is issued if no test have been +executed across all test files. Patch by Pablo Galindo. + +.. + +.. bpo: 34962 +.. date: 2018-10-11-22-34-27 +.. nonce: 0PLBi8 +.. section: Tests + +make docstest in Doc now passes., and is enforced in CI + +.. + +.. bpo: 23596 +.. date: 2018-10-09-23-51-07 +.. nonce: rdnert +.. section: Tests + +Use argparse for the command line of the gzip module. Patch by Antony Lee + +.. + +.. bpo: 34537 +.. date: 2018-09-21-17-33-41 +.. nonce: GImYtZ +.. section: Tests + +Fix ``test_gdb.test_strings()`` when ``LC_ALL=C`` and GDB was compiled with +Python 3.6 or earlier. + +.. + +.. bpo: 34587 +.. date: 2018-09-13-20-58-07 +.. nonce: rCcxp3 +.. section: Tests + +test_socket: Remove RDSTest.testCongestion(). The test tries to fill the +receiver's socket buffer and expects an error. But the RDS protocol doesn't +require that. Moreover, the Linux implementation of RDS expects that the +producer of the messages reduces its rate, it's not the role of the receiver +to trigger an error. The test fails on Fedora 28 by design, so just remove +it. + +.. + +.. bpo: 34661 +.. date: 2018-09-13-09-53-15 +.. nonce: bdTamP +.. section: Tests + +Fix test_shutil if unzip doesn't support -t. + +.. + +.. bpo: 34200 +.. date: 2018-09-12-17-00-34 +.. nonce: dfxYQK +.. section: Tests + +Fixed non-deterministic flakiness of test_pkg by not using the scary +test.support.module_cleanup() logic to save and restore sys.modules contents +between test cases. + +.. + +.. bpo: 34569 +.. date: 2018-09-09-14-36-59 +.. nonce: okj1Xh +.. section: Tests + +The experimental PEP 554 data channels now correctly pass negative PyLong +objects between subinterpreters on 32-bit systems. Patch by Michael Felt. + +.. + +.. bpo: 34594 +.. date: 2018-09-05-23-50-21 +.. nonce: tqL-GS +.. section: Tests + +Fix usage of hardcoded ``errno`` values in the tests. + +.. + +.. bpo: 34579 +.. date: 2018-09-04-15-16-42 +.. nonce: bp4HdM +.. section: Tests + +Fix test_embed for AIX Patch by Michael Felt + +.. + +.. bpo: 34542 +.. date: 2018-08-29-16-30-52 +.. nonce: 9stVAW +.. section: Tests + +Use 3072 RSA keys and SHA-256 signature for test certs and keys. + +.. + +.. bpo: 11193 +.. date: 2018-08-26-13-12-34 +.. nonce: H8fCGa +.. section: Tests + +Remove special condition for AIX in `test_subprocess.test_undecodable_env` + +.. + +.. bpo: 34347 +.. date: 2018-08-25-13-28-18 +.. nonce: IsRDPB +.. section: Tests + +Fix `test_utf8_mode.test_cmd_line` for AIX + +.. + +.. bpo: 34490 +.. date: 2018-08-24-20-23-15 +.. nonce: vb2cx4 +.. section: Tests + +On AIX with AF_UNIX family sockets getsockname() does not provide +'sockname', so skip calls to transport.get_extra_info('sockname') + +.. + +.. bpo: 34391 +.. date: 2018-08-16-18-48-47 +.. nonce: ouNfxC +.. section: Tests + +Fix ftplib test for TLS 1.3 by reading from data socket. + +.. + +.. bpo: 11192 +.. date: 2018-08-14-20-50-07 +.. nonce: g7TwYm +.. section: Tests + +Fix `test_socket` on AIX AIX 6.1 and later IPv6 zone id supports only +supported by inet_pton6_zone() Switch to runtime-based platform.system() to +establish current platform rather than build-time based sys.platform() + +.. + +.. bpo: 34399 +.. date: 2018-08-14-10-47-44 +.. nonce: D_jd1G +.. section: Tests + +Update all RSA keys and DH params to use at least 2048 bits. + +.. + +.. bpo: 34373 +.. date: 2018-08-10-16-17-51 +.. nonce: SKdb1k +.. section: Tests + +Fix ``test_mktime`` and ``test_pthread_getcpuclickid`` tests for AIX Add +range checking for ``_PyTime_localtime`` for AIX Patch by Michael Felt + +.. + +.. bpo: 11191 +.. date: 2018-08-08-22-41-30 +.. nonce: eq9tSH +.. section: Tests + +Skip the distutils test 'test_search_cpp' when using XLC as compiler patch +by aixtools (Michael Felt) + +.. + +.. bpo: 0 +.. date: 2018-07-10-18-53-46 +.. nonce: UBQJBc +.. section: Tests + +Improved an error message when mock assert_has_calls fails. + +.. + +.. bpo: 33746 +.. date: 2018-06-19-17-55-46 +.. nonce: Sz7avn +.. section: Tests + +Fix test_unittest when run in verbose mode. + +.. + +.. bpo: 33901 +.. date: 2018-06-19-14-04-21 +.. nonce: OFW1Sr +.. section: Tests + +Fix test_dbm_gnu on macOS with gdbm 1.15: add a larger value to make sure +that the file size changes. + +.. + +.. bpo: 33873 +.. date: 2018-06-16-01-37-31 +.. nonce: d86vab +.. section: Tests + +Fix a bug in ``regrtest`` that caused an extra test to run if +--huntrleaks/-R was used. Exit with error in case that invalid parameters +are specified to --huntrleaks/-R (at least one warmup run and one repetition +must be used). + +.. + +.. bpo: 33562 +.. date: 2018-06-01-14-25-31 +.. nonce: GutEHf +.. section: Tests + +Check that a global asyncio event loop policy is not left behind by any +tests. + +.. + +.. bpo: 33655 +.. date: 2018-05-26-16-01-40 +.. nonce: Frb4LA +.. section: Tests + +Ignore test_posix_fallocate failures on BSD platforms that might be due to +running on ZFS. + +.. + +.. bpo: 32962 +.. date: 2018-05-10-16-59-15 +.. nonce: S-rcIN +.. section: Tests + +Fixed test_gdb when Python is compiled with flags -mcet -fcf-protection -O0. + +.. + +.. bpo: 33358 +.. date: 2018-04-27-11-46-35 +.. nonce: _OcR59 +.. section: Tests + +Fix ``test_embed.test_pre_initialization_sys_options()`` when the +interpreter is built with ``--enable-shared``. + +.. + +.. bpo: 32872 +.. date: 2018-03-28-01-35-02 +.. nonce: J5NDUj +.. section: Tests + +Avoid regrtest compatibility issue with namespace packages. + +.. + +.. bpo: 32517 +.. date: 2018-03-09-07-05-12 +.. nonce: ugc1iW +.. section: Tests + +Fix failing ``test_asyncio`` on macOS 10.12.2+ due to transport of +``KqueueSelector`` loop was not being closed. + +.. + +.. bpo: 32663 +.. date: 2018-01-25-18-10-47 +.. nonce: IKDsqu +.. section: Tests + +Making sure the `SMTPUTF8SimTests` class of tests gets run in +test_smtplib.py. + +.. + +.. bpo: 27643 +.. date: 2018-01-12-09-05-19 +.. nonce: _6z49y +.. section: Tests + +Test_C test case needs "signed short" bitfields, but the IBM XLC compiler +(on AIX) does not support this Skip the code and test when AIX and XLC are +used + +Applicable to Python2-2.7 and later + +.. + +.. bpo: 19417 +.. date: 2018-01-08-13-33-47 +.. nonce: 2asoXy +.. section: Tests + +Add test_bdb.py. + +.. + +.. bpo: 31809 +.. date: 2017-10-18-18-07-45 +.. nonce: KlQrkE +.. section: Tests + +Add tests to verify connection with secp ECDH curves. + +.. + +.. bpo: 34691 +.. date: 2019-02-02-13-34-05 +.. nonce: B-Lsj4 +.. section: Build + +The _contextvars module is now built into the core Python library on +Windows. + +.. + +.. bpo: 35683 +.. date: 2019-01-10-11-37-18 +.. nonce: pf5Oos +.. section: Build + +Improved Azure Pipelines build steps and now verifying layouts correctly + +.. + +.. bpo: 35642 +.. date: 2019-01-02-11-23-33 +.. nonce: pjkhJe +.. section: Build + +Remove asynciomodule.c from pythoncore.vcxproj + +.. + +.. bpo: 35550 +.. date: 2018-12-29-10-19-43 +.. nonce: BTuu8e +.. section: Build + +Fix incorrect Solaris #ifdef checks to look for __sun && __SVR4 instead of +sun when compiling. + +.. + +.. bpo: 35499 +.. date: 2018-12-14-19-36-05 +.. nonce: 9yAldM +.. section: Build + +``make profile-opt`` no longer replaces ``CFLAGS_NODIST`` with ``CFLAGS``. +It now adds profile-guided optimization (PGO) flags to ``CFLAGS_NODIST``: +existing ``CFLAGS_NODIST`` flags are kept. + +.. + +.. bpo: 35257 +.. date: 2018-12-05-22-28-40 +.. nonce: dmcd_s +.. section: Build + +Avoid leaking the linker flags from Link Time Optimizations (LTO) into +distutils when compiling C extensions. + +.. + +.. bpo: 35351 +.. date: 2018-12-04-15-33-28 +.. nonce: ZhhBfT +.. section: Build + +When building Python with clang and LTO, LTO flags are no longer passed into +CFLAGS to build third-party C extensions through distutils. + +.. + +.. bpo: 35139 +.. date: 2018-11-01-15-01-23 +.. nonce: XZTttb +.. section: Build + +Fix a compiler error when statically linking `pyexpat` in `Modules/Setup`. + +.. + +.. bpo: 35059 +.. date: 2018-10-26-14-49-19 +.. nonce: PKsBxP +.. section: Build + +PCbuild: Set InlineFunctionExpansion to OnlyExplicitInline ("/Ob1" option) +in pyproject.props in Debug mode to expand functions marked as inline. This +change should make Python compiled in Debug mode a little bit faster on +Windows. + +.. + +.. bpo: 35011 +.. date: 2018-10-17-17-38-57 +.. nonce: GgoPIC +.. section: Build + +Restores the use of pyexpatns.h to isolate our embedded copy of the expat C +library so that its symbols do not conflict at link or dynamic loading time +with an embedding application or other extension modules with their own +version of libexpat. + +.. + +.. bpo: 28015 +.. date: 2018-10-16-12-22-36 +.. nonce: ylSgFh +.. section: Build + +Have --with-lto works correctly with clang. + +.. + +.. bpo: 34765 +.. date: 2018-09-26-17-29-10 +.. nonce: AvxdVj +.. section: Build + +Update the outdated install-sh file to the latest revision from automake +v1.16.1 + +.. + +.. bpo: 34585 +.. date: 2018-09-18-16-28-31 +.. nonce: CGMu0h +.. section: Build + +Check for floating-point byte order in configure.ac using compilation tests +instead of executing code, so that these checks work in cross-compiled +builds. + +.. + +.. bpo: 34710 +.. date: 2018-09-17-13-56-12 +.. nonce: ARqIAK +.. section: Build + +Fixed SSL module build with OpenSSL & pedantic CFLAGS. + +.. + +.. bpo: 34582 +.. date: 2018-09-14-09-53-21 +.. nonce: j3omgk +.. section: Build + +Add JUnit XML output for regression tests and update Azure DevOps builds. + +.. + +.. bpo: 34081 +.. date: 2018-09-06-07-15-20 +.. nonce: cuSTnH +.. section: Build + +Make Sphinx warnings as errors in the Docs Makefile. + +.. + +.. bpo: 34555 +.. date: 2018-08-31-19-41-09 +.. nonce: dfQcnm +.. section: Build + +Fix for case where it was not possible to have both +``HAVE_LINUX_VM_SOCKETS_H`` and ``HAVE_SOCKADDR_ALG`` be undefined. + +.. + +.. bpo: 33015 +.. date: 2018-08-24-09-48-25 +.. nonce: s21y74 +.. section: Build + +Fix an undefined behaviour in the pthread implementation of +:c:func:`PyThread_start_new_thread`: add a function wrapper to always return +``NULL``. + +.. + +.. bpo: 34245 +.. date: 2018-07-27-09-52-48 +.. nonce: bBV0NI +.. section: Build + +The Python shared library is now installed with write permission (mode +0755), which is the standard way of installing such libraries. + +.. + +.. bpo: 34121 +.. date: 2018-07-15-16-49-06 +.. nonce: 74G_lo +.. section: Build + +Fix detection of C11 atomic support on clang. + +.. + +.. bpo: 32430 +.. date: 2018-07-10-21-33-25 +.. nonce: UN3Nk8 +.. section: Build + +Rename Modules/Setup.dist to Modules/Setup, and remove the necessity to copy +the former manually to the latter when updating the local source tree. + +.. + +.. bpo: 30345 +.. date: 2018-06-15-18-18-16 +.. nonce: j-xRE1 +.. section: Build + +Add -g to LDFLAGS when compiling with LTO to get debug symbols. + +.. + +.. bpo: 5755 +.. date: 2018-06-04-21-34-34 +.. nonce: 65GmCj +.. section: Build + +Move ``-Wstrict-prototypes`` option to ``CFLAGS_NODIST`` from ``OPT``. This +option emitted annoying warnings when building extension modules written in +C++. + +.. + +.. bpo: 33614 +.. date: 2018-05-28-11-40-22 +.. nonce: 28e0sE +.. section: Build + +Ensures module definition files for the stable ABI on Windows are correctly +regenerated. + +.. + +.. bpo: 33648 +.. date: 2018-05-25-13-05-51 +.. nonce: bJ4JZH +.. section: Build + +The --with-c-locale-warning configuration flag has been removed. It has had +no effect for about a year. + +.. + +.. bpo: 33522 +.. date: 2018-05-15-12-44-50 +.. nonce: mJoNcA +.. section: Build + +Enable CI builds on Visual Studio Team Services at +https://python.visualstudio.com/cpython + +.. + +.. bpo: 33512 +.. date: 2018-05-15-02-07-49 +.. nonce: X4Fy1Q +.. section: Build + +configure's check for "long double" has been simplified + +.. + +.. bpo: 33483 +.. date: 2018-05-13-17-21-54 +.. nonce: WOs-en +.. section: Build + +C compiler is now correctly detected from the standard environment +variables. --without-gcc and --with-icc options have been removed. + +.. + +.. bpo: 33394 +.. date: 2018-04-30-17-36-46 +.. nonce: _Vdi4t +.. section: Build + +Enable the verbose build for extension modules, when GNU make is passed +macros on the command line. + +.. + +.. bpo: 33393 +.. date: 2018-04-30-17-19-37 +.. nonce: HkVCqI +.. section: Build + +Update config.guess and config.sub files. + +.. + +.. bpo: 33377 +.. date: 2018-04-30-16-53-00 +.. nonce: QBh6vP +.. section: Build + +Add new triplets for mips r6 and riscv variants (used in extension +suffixes). + +.. + +.. bpo: 32232 +.. date: 2018-04-17-00-38-19 +.. nonce: o7G_UO +.. section: Build + +By default, modules configured in `Modules/Setup` are no longer built with +`-DPy_BUILD_CORE`. Instead, modules that specifically need that preprocessor +definition include it in their individual entries. + +.. + +.. bpo: 33182 +.. date: 2018-03-30-14-55-48 +.. nonce: CePczb +.. section: Build + +The embedding tests can once again be built with clang 6.0 + +.. + +.. bpo: 33163 +.. date: 2018-03-28-04-15-03 +.. nonce: hfpWuU +.. section: Build + +Upgrade pip to 9.0.3 and setuptools to v39.0.1. + +.. + +.. bpo: 33012 +.. date: 2018-03-08-20-25-29 +.. nonce: k9Fe1q +.. section: Build + +gcc 8 has added a new warning heuristic to detect invalid function casts and +a stock python build seems to hit that warning quite often. The most common +is the cast of a METH_NOARGS function (that uses just one argument) to a +PyCFunction. Fix this by adding a dummy argument to all functions that +implement METH_NOARGS. + +.. + +.. bpo: 32898 +.. date: 2018-02-21-12-46-00 +.. nonce: M15bZh +.. section: Build + +Fix the python debug build when using COUNT_ALLOCS. + +.. + +.. bpo: 29442 +.. date: 2017-09-26-23-08-27 +.. nonce: fD8YTi +.. section: Build + +Replace optparse with argparse in setup.py + +.. + +.. bpo: 35890 +.. date: 2019-02-02-22-12-23 +.. nonce: ccIjHH +.. section: Windows + +Fix API calling consistency of GetVersionEx and wcstok. + +.. + +.. bpo: 32560 +.. date: 2019-02-02-11-02-44 +.. nonce: I5WAGW +.. section: Windows + +The ``py`` launcher now forwards its ``STARTUPINFO`` structure to child +processes. + +.. + +.. bpo: 35854 +.. date: 2019-01-29-15-44-46 +.. nonce: Ww3z19 +.. section: Windows + +Fix EnvBuilder and --symlinks in venv on Windows + +.. + +.. bpo: 35811 +.. date: 2019-01-25-12-46-36 +.. nonce: 2hU-mm +.. section: Windows + +Avoid propagating venv settings when launching via py.exe + +.. + +.. bpo: 35797 +.. date: 2019-01-25-12-29-14 +.. nonce: MzyOK9 +.. section: Windows + +Fix default executable used by the multiprocessing module + +.. + +.. bpo: 35758 +.. date: 2019-01-21-05-18-14 +.. nonce: 8LsY3l +.. section: Windows + +Allow building on ARM with MSVC. + +.. + +.. bpo: 29734 +.. date: 2019-01-12-16-52-38 +.. nonce: 6_OJwI +.. section: Windows + +Fix handle leaks in os.stat on Windows. + +.. + +.. bpo: 35596 +.. date: 2019-01-08-13-56-01 +.. nonce: oFvhcm +.. section: Windows + +Use unchecked PYCs for the embeddable distro to avoid zipimport +restrictions. + +.. + +.. bpo: 35596 +.. date: 2018-12-28-07-25-47 +.. nonce: P9CEY2 +.. section: Windows + +Fix vcruntime140.dll being added to embeddable distro multiple times. + +.. + +.. bpo: 35402 +.. date: 2018-12-13-13-30-04 +.. nonce: n_mXb2 +.. section: Windows + +Update Windows build to use Tcl and Tk 8.6.9 + +.. + +.. bpo: 35401 +.. date: 2018-12-10-15-01-13 +.. nonce: 9L1onG +.. section: Windows + +Updates Windows build to OpenSSL 1.1.0j + +.. + +.. bpo: 34977 +.. date: 2018-12-07-10-00-38 +.. nonce: agQJbD +.. section: Windows + +venv on Windows will now use a python.exe redirector rather than copying the +actual binaries from the base environment. + +.. + +.. bpo: 34977 +.. date: 2018-10-30-13-39-17 +.. nonce: 0l7_QV +.. section: Windows + +Adds support for building a Windows App Store package + +.. + +.. bpo: 35067 +.. date: 2018-10-25-11-29-22 +.. nonce: RHWi7W +.. section: Windows + +Remove _distutils_findvs module and use vswhere.exe instead. + +.. + +.. bpo: 32557 +.. date: 2018-09-25-10-39-27 +.. nonce: Rs1bf9 +.. section: Windows + +Allow shutil.disk_usage to take a file path on Windows + +.. + +.. bpo: 34770 +.. date: 2018-09-22-11-02-35 +.. nonce: 4lEUOd +.. section: Windows + +Fix a possible null pointer dereference in pyshellext.cpp. + +.. + +.. bpo: 34603 +.. date: 2018-09-13-08-29-04 +.. nonce: 2AB7sc +.. section: Windows + +Fix returning structs from functions produced by MSVC + +.. + +.. bpo: 34581 +.. date: 2018-09-04-23-13-19 +.. nonce: lnbC0k +.. section: Windows + +Guard MSVC-specific code in socketmodule.c with ``#ifdef _MSC_VER``. + +.. + +.. bpo: 34532 +.. date: 2018-09-03-01-23-52 +.. nonce: N1HEbE +.. section: Windows + +Fixes exit code of list version arguments for py.exe. + +.. + +.. bpo: 34062 +.. date: 2018-08-21-19-28-23 +.. nonce: 3gxsA3 +.. section: Windows + +Fixed the '--list' and '--list-paths' arguments for the py.exe launcher + +.. + +.. bpo: 34225 +.. date: 2018-07-25-16-13-12 +.. nonce: ngemNL +.. section: Windows + +Ensure INCLUDE and LIB directories do not end with a backslash. + +.. + +.. bpo: 34011 +.. date: 2018-07-11-15-58-06 +.. nonce: Ho_d5T +.. section: Windows + +A suite of code has been changed which copied across DLLs and init.tcl from +the running Python location into a venv being created. These copies are +needed only when running from a Python source build, and the copying code is +now only run when that is the case, rather than whenever a venv is created. + +.. + +.. bpo: 34006 +.. date: 2018-07-02-14-19-32 +.. nonce: 7SgBT_ +.. section: Windows + +Revert line length limit for Windows help docs. The line-length limit is not +needed because the pages appear in a separate app rather than on a browser +tab. It can also interact badly with the DPI setting. + +.. + +.. bpo: 31546 +.. date: 2018-06-27-23-33-54 +.. nonce: zJlap- +.. section: Windows + +Restore running PyOS_InputHook while waiting for user input at the prompt. +The restores integration of interactive GUI windows (such as Matplotlib +figures) with the prompt on Windows. + +.. + +.. bpo: 30237 +.. date: 2018-06-25-09-33-48 +.. nonce: EybiZA +.. section: Windows + +Output error when ReadConsole is canceled by CancelSynchronousIo instead of +crashing. + +.. + +.. bpo: 33895 +.. date: 2018-06-19-11-57-50 +.. nonce: zpblTy +.. section: Windows + +GIL is released while calling functions that acquire Windows loader lock. + +.. + +.. bpo: 33720 +.. date: 2018-06-04-09-20-53 +.. nonce: VKDXHK +.. section: Windows + +Reduces maximum marshal recursion depth on release builds. + +.. + +.. bpo: 29097 +.. date: 2018-05-16-11-31-17 +.. nonce: 9mqEuI +.. section: Windows + +Fix bug where :meth:`datetime.fromtimestamp` erroneously throws an +:exc:`OSError` on Windows for values between 0 and 86400. Patch by Ammar +Askar. + +.. + +.. bpo: 33316 +.. date: 2018-04-20-03-24-07 +.. nonce: 9IiJ8J +.. section: Windows + +PyThread_release_lock always fails + +.. + +.. bpo: 33184 +.. date: 2018-04-13-11-28-55 +.. nonce: 7YhqQE +.. section: Windows + +Update Windows installer to use OpenSSL 1.1.0h. + +.. + +.. bpo: 32890 +.. date: 2018-03-08-20-02-38 +.. nonce: 3jzFzY +.. section: Windows + +Fix usage of GetLastError() instead of errno in os.execve() and +os.truncate(). + +.. + +.. bpo: 33016 +.. date: 2018-03-07-01-33-33 +.. nonce: Z_Med0 +.. section: Windows + +Fix potential use of uninitialized memory in nt._getfinalpathname + +.. + +.. bpo: 32903 +.. date: 2018-02-28-11-03-24 +.. nonce: 1SXY4t +.. section: Windows + +Fix a memory leak in os.chdir() on Windows if the current directory is set +to a UNC path. + +.. + +.. bpo: 32901 +.. date: 2018-02-23-00-47-13 +.. nonce: mGKz5_ +.. section: Windows + +Update Tcl and Tk versions to 8.6.8 + +.. + +.. bpo: 31966 +.. date: 2018-02-19-13-54-42 +.. nonce: _Q3HPb +.. section: Windows + +Fixed WindowsConsoleIO.write() for writing empty data. + +.. + +.. bpo: 32409 +.. date: 2018-02-19-10-00-57 +.. nonce: nocuDg +.. section: Windows + +Ensures activate.bat can handle Unicode contents. + +.. + +.. bpo: 32457 +.. date: 2018-02-19-08-54-06 +.. nonce: vVP0Iz +.. section: Windows + +Improves handling of denormalized executable path when launching Python. + +.. + +.. bpo: 32370 +.. date: 2018-02-10-15-38-19 +.. nonce: kcKuct +.. section: Windows + +Use the correct encoding for ipconfig output in the uuid module. Patch by +Segev Finer. + +.. + +.. bpo: 29248 +.. date: 2018-02-07-17-50-48 +.. nonce: Xzwj-6 +.. section: Windows + +Fix :func:`os.readlink` on Windows, which was mistakenly treating the +``PrintNameOffset`` field of the reparse data buffer as a number of +characters instead of bytes. Patch by Craig Holmquist and SSE4. + +.. + +.. bpo: 1104 +.. date: 2017-11-24-12-53-54 +.. nonce: 1CWSZp +.. section: Windows + +Correctly handle string length in ``msilib.SummaryInfo.GetProperty()`` to +prevent it from truncating the last character. + +.. + +.. bpo: 35555 +.. date: 2018-12-21-18-44-30 +.. nonce: M58_K3 +.. section: macOS + +Gray out Code Context menu entry when it's not applicable. + +.. + +.. bpo: 35401 +.. date: 2018-12-09-13-56-49 +.. nonce: n8B7X1 +.. section: macOS + +Update macOS installer to use OpenSSL 1.1.0j. + +.. + +.. bpo: 35025 +.. date: 2018-10-18-23-54-55 +.. nonce: X4LFJg +.. section: macOS + +Properly guard the use of the ``CLOCK_GETTIME`` et al. macros in +``timemodule`` on macOS. + +.. + +.. bpo: 24658 +.. date: 2018-10-17-14-36-08 +.. nonce: Naddgx +.. section: macOS + +On macOS, fix reading from and writing into a file with a size larger than 2 +GiB. + +.. + +.. bpo: 34405 +.. date: 2018-09-11-08-30-55 +.. nonce: UzIi0n +.. section: macOS + +Update to OpenSSL 1.1.0i for macOS installer builds. + +.. + +.. bpo: 33635 +.. date: 2018-07-31-09-51-01 +.. nonce: KiscE- +.. section: macOS + +In macOS stat on some file descriptors (/dev/fd/3 f.e) will result in bad +file descriptor OSError. Guard against this exception was added in is_dir, +is_file and similar methods. DirEntry.is_dir can also throw this exception +so _RecursiveWildcardSelector._iterate_directories was also extended with +the same error ignoring pattern. + +.. + +.. bpo: 13631 +.. date: 2018-05-16-13-25-58 +.. nonce: UIjDyY +.. section: macOS + +The .editrc file in user's home directory is now processed correctly during +the readline initialization through editline emulation on macOS. + +.. + +.. bpo: 33184 +.. date: 2018-04-07-00-51-34 +.. nonce: 3j208P +.. section: macOS + +Update macOS installer build to use OpenSSL 1.1.0h. + +.. + +.. bpo: 32726 +.. date: 2018-03-29-06-56-12 +.. nonce: urS9uX +.. section: macOS + +Build and link with private copy of Tcl/Tk 8.6 for the macOS 10.6+ +installer. The 10.9+ installer variant already does this. This means that +the Python 3.7 provided by the python.org macOS installers no longer need or +use any external versions of Tcl/Tk, either system-provided or +user-installed, such as ActiveTcl. + +.. + +.. bpo: 32901 +.. date: 2018-02-27-17-33-15 +.. nonce: hQu0w3 +.. section: macOS + +Update macOS 10.9+ installer to Tcl/Tk 8.6.8. + +.. + +.. bpo: 31903 +.. date: 2017-11-01-16-53-12 +.. nonce: K6jCVG +.. section: macOS + +In :mod:`_scproxy`, drop the GIL when calling into ``SystemConfiguration`` +to avoid deadlocks. + +.. + +.. bpo: 35770 +.. date: 2019-01-18-13-04-30 +.. nonce: 2LxJGu +.. section: IDLE + +IDLE macosx deletes Options => Configure IDLE. It previously deleted Window +=> Zoom Height by mistake. (Zoom Height is now on the Options menu). On +Mac, the settings dialog is accessed via Preferences on the IDLE menu. + +.. + +.. bpo: 35769 +.. date: 2019-01-18-01-24-23 +.. nonce: GqsB34 +.. section: IDLE + +Change IDLE's new file name from 'Untitled' to 'untitled' + +.. + +.. bpo: 35660 +.. date: 2019-01-04-19-14-29 +.. nonce: hMxI7N +.. section: IDLE + +Fix imports in idlelib.window. + +.. + +.. bpo: 35641 +.. date: 2019-01-02-22-15-01 +.. nonce: QEaANl +.. section: IDLE + +Proper format `calltip` when the function has no docstring. + +.. + +.. bpo: 33987 +.. date: 2018-12-31-17-04-18 +.. nonce: fD92up +.. section: IDLE + +Use ttk Frame for ttk widgets. + +.. + +.. bpo: 34055 +.. date: 2018-12-28-17-16-33 +.. nonce: TmmpzR +.. section: IDLE + +Fix erroneous 'smart' indents and newlines in IDLE Shell. + +.. + +.. bpo: 35591 +.. date: 2018-12-28-01-19-20 +.. nonce: SFpDj2 +.. section: IDLE + +Find Selection now works when selection not found. + +.. + +.. bpo: 35196 +.. date: 2018-12-27-17-46-42 +.. nonce: 9E-xUh +.. section: IDLE + +Speed up squeezer line counting. + +.. + +.. bpo: 35598 +.. date: 2018-12-27-15-29-11 +.. nonce: FWOOm8 +.. section: IDLE + +Update config_key: use PEP 8 names and ttk widgets, make some objects +global, and add tests. + +.. + +.. bpo: 28097 +.. date: 2018-12-26-13-53-34 +.. nonce: 95I9NT +.. section: IDLE + +Add Previous/Next History entries to Shell menu. + +.. + +.. bpo: 35208 +.. date: 2018-12-23-17-42-11 +.. nonce: J5NOg7 +.. section: IDLE + +Squeezer now properly counts wrapped lines before newlines. + +.. + +.. bpo: 35521 +.. date: 2018-12-20-00-14-15 +.. nonce: x32BRn +.. section: IDLE + +Document the IDLE editor code context feature. Add some internal references +within the IDLE doc. + +.. + +.. bpo: 22703 +.. date: 2018-12-18-13-56-31 +.. nonce: UlsjKQ +.. section: IDLE + +The Code Context menu label now toggles between Show/Hide Code Context. The +Zoom Height menu now toggles between Zoom/Restore Height. Zoom Height has +moved from the Window menu to the Options menu. + +.. + +.. bpo: 35213 +.. date: 2018-11-12-00-20-01 +.. nonce: cqNgzT +.. section: IDLE + +Where appropriate, use 'macOS' in idlelib. + +.. + +.. bpo: 34864 +.. date: 2018-11-11-17-13-50 +.. nonce: cw0PvO +.. section: IDLE + +On macOS, warn if the system preference "Prefer tabs when opening documents" +is set to "Always". + +.. + +.. bpo: 34864 +.. date: 2018-11-10-21-27-25 +.. nonce: Ci-G2q +.. section: IDLE + +Document two IDLE on MacOS issues. The System Preferences Dock "prefer tabs +always" setting disables some IDLE features. Menus are a bit different than +as described for Windows and Linux. + +.. + +.. bpo: 35202 +.. date: 2018-11-10-09-10-54 +.. nonce: TeJJrt +.. section: IDLE + +Remove unused imports from lib/idlelib + +.. + +.. bpo: 33000 +.. date: 2018-11-06-23-10-54 +.. nonce: pQasCt +.. section: IDLE + +Document that IDLE's shell has no line limit. A program that runs +indefinitely can overfill memory. + +.. + +.. bpo: 23220 +.. date: 2018-11-05-23-23-00 +.. nonce: H3SAWE +.. section: IDLE + +Explain how IDLE's Shell displays output. + +.. + +.. bpo: 35099 +.. date: 2018-11-05-20-43-08 +.. nonce: SVOZXC +.. section: IDLE + +Improve the doc about IDLE running user code. The section is renamed from +"IDLE -- console differences" is renamed "Running user code". It mostly +covers the implications of using custom sys.stdxxx objects. + +.. + +.. bpo: 35097 +.. date: 2018-10-28-20-17-14 +.. nonce: 07tm66 +.. section: IDLE + +Add IDLE doc subsection explaining editor windows. Topics include opening, +title and status bar, .py* extension, and running. + +.. + +.. bpo: 35093 +.. date: 2018-10-28-15-53-51 +.. nonce: cH-tli +.. section: IDLE + +Document the IDLE document viewer in the IDLE doc. Add a paragraph in "Help +and preferences", "Help sources" subsection. + +.. + +.. bpo: 35088 +.. date: 2018-10-28-00-54-32 +.. nonce: r1lJZd +.. section: IDLE + +Update idlelib.help.copy_string docstring. We now use git and backporting +instead of hg and forward merging. + +.. + +.. bpo: 35087 +.. date: 2018-10-28-00-08-42 +.. nonce: G7gx2- +.. section: IDLE + +Update idlelib help files for the current doc build. The main change is the +elimination of chapter-section numbers. + +.. + +.. bpo: 34548 +.. date: 2018-09-22-20-25-07 +.. nonce: 7pBzjg +.. section: IDLE + +Use configured color theme for read-only text views. + +.. + +.. bpo: 1529353 +.. date: 2018-08-13-16-31-24 +.. nonce: wXfQJk +.. section: IDLE + +Enable "squeezing" of long outputs in the shell, to avoid performance +degradation and to clean up the history without losing it. Squeezed outputs +may be copied, viewed in a separate window, and "unsqueezed". + +.. + +.. bpo: 34047 +.. date: 2018-08-05-15-49-55 +.. nonce: LGKsIm +.. section: IDLE + +Fixed mousewheel scrolling direction on macOS. + +.. + +.. bpo: 34275 +.. date: 2018-08-02-22-16-42 +.. nonce: Iu0d7t +.. section: IDLE + +Make IDLE calltips always visible on Mac. Some MacOS-tk combinations need +.update_idletasks(). Patch by Kevin Walzer. + +.. + +.. bpo: 34120 +.. date: 2018-08-01-23-25-38 +.. nonce: HgsIz- +.. section: IDLE + +Fix unresponsiveness after closing certain windows and dialogs. + +.. + +.. bpo: 33975 +.. date: 2018-06-26-22-53-14 +.. nonce: Ow7alv +.. section: IDLE + +Avoid small type when running htests. Since part of the purpose of +human-viewed tests is to determine that widgets look right, it is important +that they look the same for testing as when running IDLE. + +.. + +.. bpo: 33905 +.. date: 2018-06-21-20-35-33 +.. nonce: W2mhiY +.. section: IDLE + +Add test for idlelib.stackview.StackBrowser. + +.. + +.. bpo: 33924 +.. date: 2018-06-20-22-14-07 +.. nonce: 6Rz1wt +.. section: IDLE + +Change mainmenu.menudefs key 'windows' to 'window'. Every other menudef key +is lowercase version of main menu entry. + +.. + +.. bpo: 33906 +.. date: 2018-06-20-19-16-24 +.. nonce: a1lXq0 +.. section: IDLE + +Rename idlelib.windows as window Match Window on the main menu and remove +last plural module name. + +.. + +.. bpo: 33917 +.. date: 2018-06-20-16-27-48 +.. nonce: ZXHs8x +.. section: IDLE + +Fix and document idlelib/idle_test/template.py. The revised file compiles, +runs, and tests OK. idle_test/README.txt explains how to use it to create +new IDLE test files. + +.. + +.. bpo: 33904 +.. date: 2018-06-20-12-40-54 +.. nonce: qm0eCu +.. section: IDLE + +IDLE: In rstrip, rename class RstripExtension as Rstrip + +.. + +.. bpo: 33907 +.. date: 2018-06-19-22-21-27 +.. nonce: z-_B3N +.. section: IDLE + +For consistency and clarity, rename an IDLE module and classes. Module +calltips and its class CallTips are now calltip and Calltip. In module +calltip_w, class CallTip is now CalltipWindow. + +.. + +.. bpo: 33856 +.. date: 2018-06-16-21-54-45 +.. nonce: TH8WHU +.. section: IDLE + +Add "help" in the welcome message of IDLE + +.. + +.. bpo: 33839 +.. date: 2018-06-14-13-23-55 +.. nonce: ZlJzHa +.. section: IDLE + +IDLE: refactor ToolTip and CallTip and add documentation and tests + +.. + +.. bpo: 33855 +.. date: 2018-06-14-11-35-50 +.. nonce: XL230W +.. section: IDLE + +Minimally test all IDLE modules. Add missing files, import module, +instantiate classes, and check coverage. Check existing files. + +.. + +.. bpo: 33656 +.. date: 2018-06-10-17-59-36 +.. nonce: 60ZqJS +.. section: IDLE + +On Windows, add API call saying that tk scales for DPI. On Windows 8.1+ or +10, with DPI compatibility properties of the Python binary unchanged, and a +monitor resolution greater than 96 DPI, this should make text and lines +sharper. It should otherwise have no effect. + +.. + +.. bpo: 33768 +.. date: 2018-06-04-19-23-11 +.. nonce: I_2qpV +.. section: IDLE + +Clicking on a context line moves that line to the top of the editor window. + +.. + +.. bpo: 33763 +.. date: 2018-06-03-20-12-57 +.. nonce: URiFlE +.. section: IDLE + +IDLE: Use read-only text widget for code context instead of label widget. + +.. + +.. bpo: 33664 +.. date: 2018-06-03-09-13-28 +.. nonce: PZzQyL +.. section: IDLE + +Scroll IDLE editor text by lines. Previously, the mouse wheel and scrollbar +slider moved text by a fixed number of pixels, resulting in partial lines at +the top of the editor box. The change also applies to the shell and grep +output windows, but not to read-only text views. + +.. + +.. bpo: 33679 +.. date: 2018-05-29-07-14-37 +.. nonce: MgX_Ui +.. section: IDLE + +Enable theme-specific color configuration for Code Context. Use the +Highlights tab to see the setting for built-in themes or add settings to +custom themes. + +.. + +.. bpo: 33642 +.. date: 2018-05-24-20-42-44 +.. nonce: J0VQbS +.. section: IDLE + +Display up to maxlines non-blank lines for Code Context. If there is no +current context, show a single blank line. + +.. + +.. bpo: 33628 +.. date: 2018-05-23-19-51-07 +.. nonce: sLlFLO +.. section: IDLE + +IDLE: Cleanup codecontext.py and its test. + +.. + +.. bpo: 33564 +.. date: 2018-05-17-19-41-12 +.. nonce: XzHZJe +.. section: IDLE + +IDLE's code context now recognizes async as a block opener. + +.. + +.. bpo: 21474 +.. date: 2018-04-29-16-13-02 +.. nonce: bglg-F +.. section: IDLE + +Update word/identifier definition from ascii to unicode. In text and entry +boxes, this affects selection by double-click, movement left/right by +control-left/right, and deletion left/right by control-BACKSPACE/DEL. + +.. + +.. bpo: 33204 +.. date: 2018-04-02-00-28-13 +.. nonce: NBsuIv +.. section: IDLE + +IDLE: consistently color invalid string prefixes. A 'u' string prefix cannot +be paired with either 'r' or 'f'. Consistently color as much of the prefix, +starting at the right, as is valid. Revise and extend colorizer test. + +.. + +.. bpo: 32984 +.. date: 2018-03-05-01-29-05 +.. nonce: NGjgT4 +.. section: IDLE + +Set ``__file__`` while running a startup file. Like Python, IDLE optionally +runs one startup file in the Shell window before presenting the first +interactive input prompt. For IDLE, ``-s`` runs a file named in +environmental variable :envvar:`IDLESTARTUP` or :envvar:`PYTHONSTARTUP`; +``-r file`` runs ``file``. Python sets ``__file__`` to the startup file +name before running the file and unsets it before the first prompt. IDLE +now does the same when run normally, without the ``-n`` option. + +.. + +.. bpo: 32940 +.. date: 2018-02-24-18-20-50 +.. nonce: ZaJ1Rf +.. section: IDLE + +Simplify and rename StringTranslatePseudoMapping in pyparse. + +.. + +.. bpo: 32916 +.. date: 2018-02-23-07-32-36 +.. nonce: 4MsQ5F +.. section: IDLE + +Change ``str`` to ``code`` in pyparse. + +.. + +.. bpo: 32905 +.. date: 2018-02-22-00-09-27 +.. nonce: VlXj0x +.. section: IDLE + +Remove unused code in pyparse module. + +.. + +.. bpo: 32874 +.. date: 2018-02-19-10-56-41 +.. nonce: 6pZ9Gv +.. section: IDLE + +Add tests for pyparse. + +.. + +.. bpo: 32837 +.. date: 2018-02-12-17-22-48 +.. nonce: -33QPl +.. section: IDLE + +Using the system and place-dependent default encoding for open() is a bad +idea for IDLE's system and location-independent files. + +.. + +.. bpo: 32826 +.. date: 2018-02-12-11-05-22 +.. nonce: IxNZrk +.. section: IDLE + +Add "encoding=utf-8" to open() in IDLE's test_help_about. GUI test +test_file_buttons() only looks at initial ascii-only lines, but failed on +systems where open() defaults to 'ascii' because readline() internally reads +and decodes far enough ahead to encounter a non-ascii character in +CREDITS.txt. + +.. + +.. bpo: 32831 +.. date: 2018-02-12-08-08-45 +.. nonce: srDRvU +.. section: IDLE + +Add docstrings and tests for codecontext. + +.. + +.. bpo: 32765 +.. date: 2018-02-04-17-52-54 +.. nonce: qm0eCu +.. section: IDLE + +Update configdialog General tab docstring to add new widgets to the widget +list. + +.. + +.. bpo: 35884 +.. date: 2019-02-01-12-22-37 +.. nonce: hJkMRD +.. section: Tools/Demos + +Add a benchmark script for timing various ways to access variables: +``Tools/scripts/var_access_benchmark.py``. + +.. + +.. bpo: 34989 +.. date: 2018-10-15-13-22-28 +.. nonce: hU4fra +.. section: Tools/Demos + +python-gdb.py now handles errors on computing the line number of a Python +frame. + +.. + +.. bpo: 20260 +.. date: 2018-07-24-00-11-44 +.. nonce: klmmqI +.. section: Tools/Demos + +Argument Clinic now has non-bitwise unsigned int converters. + +.. + +.. bpo: 32962 +.. date: 2018-06-14-16-23-07 +.. nonce: Q3Dwns +.. section: Tools/Demos + +python-gdb now catchs ``UnicodeDecodeError`` exceptions when calling +``string()``. + +.. + +.. bpo: 32962 +.. date: 2018-06-14-16-16-53 +.. nonce: 2YfdwI +.. section: Tools/Demos + +python-gdb now catchs ValueError on read_var(): when Python has no debug +symbols for example. + +.. + +.. bpo: 33189 +.. date: 2018-04-03-18-10-00 +.. nonce: QrXR00 +.. section: Tools/Demos + +:program:`pygettext.py` now recognizes only literal strings as docstrings +and translatable strings, and rejects bytes literals and f-string +expressions. + +.. + +.. bpo: 31920 +.. date: 2018-03-26-18-54-24 +.. nonce: u_WKsT +.. section: Tools/Demos + +Fixed handling directories as arguments in the ``pygettext`` script. Based +on patch by Oleg Krasnikov. + +.. + +.. bpo: 29673 +.. date: 2018-03-16-17-25-05 +.. nonce: m8QtaW +.. section: Tools/Demos + +Fix pystackv and pystack gdbinit macros. + +.. + +.. bpo: 25427 +.. date: 2018-03-02-16-23-31 +.. nonce: 1mgMOG +.. section: Tools/Demos + +Remove the pyvenv script in favor of ``python3 -m venv`` in order to lower +confusion as to what Python interpreter a virtual environment will be +created for. + +.. + +.. bpo: 32885 +.. date: 2018-02-20-12-16-47 +.. nonce: dL5x7C +.. section: Tools/Demos + +Add an ``-n`` flag for ``Tools/scripts/pathfix.py`` to disable automatic +backup creation (files with ``~`` suffix). + +.. + +.. bpo: 32222 +.. date: 2017-12-07-20-51-20 +.. nonce: hPBcGT +.. section: Tools/Demos + +Fix pygettext not extracting docstrings for functions with type annotated +arguments. Patch by Toby Harradine. + +.. + +.. bpo: 31583 +.. date: 2017-09-26-10-11-21 +.. nonce: TM90_H +.. section: Tools/Demos + +Fix 2to3 for using with --add-suffix option but without --output-dir option +for relative path to files in current directory. + +.. + +.. bpo: 35713 +.. date: 2019-01-22-17-04-10 +.. nonce: fmehdG +.. section: C API + +The :c:func:`PyByteArray_Init` and :c:func:`PyByteArray_Fini` functions have +been removed. They did nothing since Python 2.7.4 and Python 3.2.0, were +excluded from the limited API (stable ABI), and were not documented. + +.. + +.. bpo: 33817 +.. date: 2019-01-11-11-16-16 +.. nonce: nJ4yIj +.. section: C API + +Fixed :c:func:`_PyBytes_Resize` for empty bytes objects. + +.. + +.. bpo: 35322 +.. date: 2018-11-28-03-20-36 +.. nonce: Qcqsag +.. section: C API + +Fix memory leak in :c:func:`PyUnicode_EncodeLocale` and +:c:func:`PyUnicode_EncodeFSDefault` on error handling. + +.. + +.. bpo: 35059 +.. date: 2018-11-23-11-52-34 +.. nonce: BLSp6y +.. section: C API + +The following C macros have been converted to static inline functions: +:c:func:`Py_INCREF`, :c:func:`Py_DECREF`, :c:func:`Py_XINCREF`, +:c:func:`Py_XDECREF`, :c:func:`PyObject_INIT`, :c:func:`PyObject_INIT_VAR`. + +.. + +.. bpo: 35296 +.. date: 2018-11-22-18-34-23 +.. nonce: nxrIQt +.. section: C API + +``make install`` now also installs the internal API: +``Include/internal/*.h`` header files. + +.. + +.. bpo: 35081 +.. date: 2018-11-22-18-15-46 +.. nonce: FdK9mV +.. section: C API + +Internal APIs surrounded by ``#ifdef Py_BUILD_CORE`` have been moved from +``Include/*.h`` headers to new header files ``Include/internal/pycore_*.h``. + +.. + +.. bpo: 35259 +.. date: 2018-11-22-13-52-36 +.. nonce: p07c61 +.. section: C API + +Conditionally declare :c:func:`Py_FinalizeEx()` (new in 3.6) based on +Py_LIMITED_API. Patch by Arthur Neufeld. + +.. + +.. bpo: 35081 +.. date: 2018-11-13-12-13-04 +.. nonce: gFd85N +.. section: C API + +The :c:func:`_PyObject_GC_TRACK` and :c:func:`_PyObject_GC_UNTRACK` macros +have been removed from the public C API. + +.. + +.. bpo: 35134 +.. date: 2018-11-01-13-58-37 +.. nonce: SbZo0o +.. section: C API + +Creation of a new ``Include/cpython/`` subdirectory. + +.. + +.. bpo: 34725 +.. date: 2018-10-13-16-30-54 +.. nonce: j52rIS +.. section: C API + +Adds _Py_SetProgramFullPath so embedders may override sys.executable + +.. + +.. bpo: 34910 +.. date: 2018-10-05-17-06-49 +.. nonce: tSFrls +.. section: C API + +Ensure that :c:func:`PyObject_Print` always returns ``-1`` on error. Patch +by Zackery Spytz. + +.. + +.. bpo: 34523 +.. date: 2018-08-29-18-48-47 +.. nonce: lLQ8rh +.. section: C API + +Py_DecodeLocale() and Py_EncodeLocale() now use the UTF-8 encoding on +Windows if Py_LegacyWindowsFSEncodingFlag is zero. + +.. + +.. bpo: 34193 +.. date: 2018-07-24-11-57-35 +.. nonce: M6ch1Q +.. section: C API + +Fix pluralization in TypeError messages in getargs.c and typeobject.c: '1 +argument' instead of '1 arguments' and '1 element' instead of '1 elements'. + +.. + +.. bpo: 34127 +.. date: 2018-07-22-14-58-06 +.. nonce: qkfnHO +.. section: C API + +Return grammatically correct error message based on argument count. Patch by +Karthikeyan Singaravelan. + +.. + +.. bpo: 23927 +.. date: 2018-07-09-11-39-54 +.. nonce: pDFkxb +.. section: C API + +Fixed :exc:`SystemError` in :c:func:`PyArg_ParseTupleAndKeywords` when the +``w*`` format unit is used for optional parameter. + +.. + +.. bpo: 32455 +.. date: 2018-07-08-12-06-18 +.. nonce: KVHlkz +.. section: C API + +Added :c:func:`PyCompile_OpcodeStackEffectWithJump`. + +.. + +.. bpo: 34008 +.. date: 2018-07-02-10-58-11 +.. nonce: COewz- +.. section: C API + +Py_Main() can again be called after Py_Initialize(), as in Python 3.6. + +.. + +.. bpo: 32500 +.. date: 2018-06-21-17-19-31 +.. nonce: WGCNad +.. section: C API + +Fixed error messages for :c:func:`PySequence_Size`, +:c:func:`PySequence_GetItem`, :c:func:`PySequence_SetItem` and +:c:func:`PySequence_DelItem` called with a mapping and +:c:func:`PyMapping_Size` called with a sequence. + +.. + +.. bpo: 33818 +.. date: 2018-06-10-09-42-31 +.. nonce: 50nlf3 +.. section: C API + +:c:func:`PyExceptionClass_Name` will now return ``const char *`` instead of +``char *``. + +.. + +.. bpo: 33042 +.. date: 2018-03-20-21-43-09 +.. nonce: FPFp64 +.. section: C API + +Embedding applications may once again call PySys_ResetWarnOptions, +PySys_AddWarnOption, and PySys_AddXOption prior to calling Py_Initialize. + +.. + +.. bpo: 32374 +.. date: 2018-01-09-17-03-54 +.. nonce: SwwLoz +.. section: C API + +Document that m_traverse for multi-phase initialized modules can be called +with m_state=NULL, and add a sanity check + +.. + +.. bpo: 30863 +.. date: 2017-10-12-23-24-27 +.. nonce: xrED19 +.. section: C API + +:c:func:`PyUnicode_AsWideChar` and :c:func:`PyUnicode_AsWideCharString` no +longer cache the ``wchar_t*`` representation of string objects. diff --git a/Misc/NEWS.d/next/Build/2017-09-26-23-08-27.bpo-29442.fD8YTi.rst b/Misc/NEWS.d/next/Build/2017-09-26-23-08-27.bpo-29442.fD8YTi.rst deleted file mode 100644 index 9bd12689ec18..000000000000 --- a/Misc/NEWS.d/next/Build/2017-09-26-23-08-27.bpo-29442.fD8YTi.rst +++ /dev/null @@ -1 +0,0 @@ -Replace optparse with argparse in setup.py diff --git a/Misc/NEWS.d/next/Build/2018-02-21-12-46-00.bpo-32898.M15bZh.rst b/Misc/NEWS.d/next/Build/2018-02-21-12-46-00.bpo-32898.M15bZh.rst deleted file mode 100644 index 4c75466bfd0f..000000000000 --- a/Misc/NEWS.d/next/Build/2018-02-21-12-46-00.bpo-32898.M15bZh.rst +++ /dev/null @@ -1 +0,0 @@ -Fix the python debug build when using COUNT_ALLOCS. diff --git a/Misc/NEWS.d/next/Build/2018-03-08-20-25-29.bpo-33012.k9Fe1q.rst b/Misc/NEWS.d/next/Build/2018-03-08-20-25-29.bpo-33012.k9Fe1q.rst deleted file mode 100644 index 474053348fcc..000000000000 --- a/Misc/NEWS.d/next/Build/2018-03-08-20-25-29.bpo-33012.k9Fe1q.rst +++ /dev/null @@ -1,5 +0,0 @@ -gcc 8 has added a new warning heuristic to detect invalid function casts and -a stock python build seems to hit that warning quite often. The most common -is the cast of a METH_NOARGS function (that uses just one argument) to a -PyCFunction. Fix this by adding a dummy argument to all functions that -implement METH_NOARGS. diff --git a/Misc/NEWS.d/next/Build/2018-03-28-04-15-03.bpo-33163.hfpWuU.rst b/Misc/NEWS.d/next/Build/2018-03-28-04-15-03.bpo-33163.hfpWuU.rst deleted file mode 100644 index b3f04e3f800c..000000000000 --- a/Misc/NEWS.d/next/Build/2018-03-28-04-15-03.bpo-33163.hfpWuU.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade pip to 9.0.3 and setuptools to v39.0.1. diff --git a/Misc/NEWS.d/next/Build/2018-03-30-14-55-48.bpo-33182.CePczb.rst b/Misc/NEWS.d/next/Build/2018-03-30-14-55-48.bpo-33182.CePczb.rst deleted file mode 100644 index 6310e5d5b557..000000000000 --- a/Misc/NEWS.d/next/Build/2018-03-30-14-55-48.bpo-33182.CePczb.rst +++ /dev/null @@ -1 +0,0 @@ -The embedding tests can once again be built with clang 6.0 diff --git a/Misc/NEWS.d/next/Build/2018-04-17-00-38-19.bpo-32232.o7G_UO.rst b/Misc/NEWS.d/next/Build/2018-04-17-00-38-19.bpo-32232.o7G_UO.rst deleted file mode 100644 index fea0b60fcedd..000000000000 --- a/Misc/NEWS.d/next/Build/2018-04-17-00-38-19.bpo-32232.o7G_UO.rst +++ /dev/null @@ -1,3 +0,0 @@ -By default, modules configured in `Modules/Setup` are no longer built with -`-DPy_BUILD_CORE`. Instead, modules that specifically need that preprocessor -definition include it in their individual entries. diff --git a/Misc/NEWS.d/next/Build/2018-04-30-16-53-00.bpo-33377.QBh6vP.rst b/Misc/NEWS.d/next/Build/2018-04-30-16-53-00.bpo-33377.QBh6vP.rst deleted file mode 100644 index f5dbd23c7c35..000000000000 --- a/Misc/NEWS.d/next/Build/2018-04-30-16-53-00.bpo-33377.QBh6vP.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add new triplets for mips r6 and riscv variants (used in extension -suffixes). diff --git a/Misc/NEWS.d/next/Build/2018-04-30-17-19-37.bpo-33393.HkVCqI.rst b/Misc/NEWS.d/next/Build/2018-04-30-17-19-37.bpo-33393.HkVCqI.rst deleted file mode 100644 index f3317e7e68f3..000000000000 --- a/Misc/NEWS.d/next/Build/2018-04-30-17-19-37.bpo-33393.HkVCqI.rst +++ /dev/null @@ -1 +0,0 @@ -Update config.guess and config.sub files. diff --git a/Misc/NEWS.d/next/Build/2018-04-30-17-36-46.bpo-33394._Vdi4t.rst b/Misc/NEWS.d/next/Build/2018-04-30-17-36-46.bpo-33394._Vdi4t.rst deleted file mode 100644 index b25fbb02c406..000000000000 --- a/Misc/NEWS.d/next/Build/2018-04-30-17-36-46.bpo-33394._Vdi4t.rst +++ /dev/null @@ -1,2 +0,0 @@ -Enable the verbose build for extension modules, when GNU make is passed -macros on the command line. diff --git a/Misc/NEWS.d/next/Build/2018-05-13-17-21-54.bpo-33483.WOs-en.rst b/Misc/NEWS.d/next/Build/2018-05-13-17-21-54.bpo-33483.WOs-en.rst deleted file mode 100644 index 9808711e14ea..000000000000 --- a/Misc/NEWS.d/next/Build/2018-05-13-17-21-54.bpo-33483.WOs-en.rst +++ /dev/null @@ -1,2 +0,0 @@ -C compiler is now correctly detected from the standard environment -variables. --without-gcc and --with-icc options have been removed. diff --git a/Misc/NEWS.d/next/Build/2018-05-15-02-07-49.bpo-33512.X4Fy1Q.rst b/Misc/NEWS.d/next/Build/2018-05-15-02-07-49.bpo-33512.X4Fy1Q.rst deleted file mode 100644 index 6b74551f1ba4..000000000000 --- a/Misc/NEWS.d/next/Build/2018-05-15-02-07-49.bpo-33512.X4Fy1Q.rst +++ /dev/null @@ -1 +0,0 @@ -configure's check for "long double" has been simplified diff --git a/Misc/NEWS.d/next/Build/2018-05-15-12-44-50.bpo-33522.mJoNcA.rst b/Misc/NEWS.d/next/Build/2018-05-15-12-44-50.bpo-33522.mJoNcA.rst deleted file mode 100644 index f44862f0c454..000000000000 --- a/Misc/NEWS.d/next/Build/2018-05-15-12-44-50.bpo-33522.mJoNcA.rst +++ /dev/null @@ -1,2 +0,0 @@ -Enable CI builds on Visual Studio Team Services at -https://python.visualstudio.com/cpython diff --git a/Misc/NEWS.d/next/Build/2018-05-25-13-05-51.bpo-33648.bJ4JZH.rst b/Misc/NEWS.d/next/Build/2018-05-25-13-05-51.bpo-33648.bJ4JZH.rst deleted file mode 100644 index eaac4ebf18ea..000000000000 --- a/Misc/NEWS.d/next/Build/2018-05-25-13-05-51.bpo-33648.bJ4JZH.rst +++ /dev/null @@ -1,2 +0,0 @@ -The --with-c-locale-warning configuration flag has been removed. It has had -no effect for about a year. diff --git a/Misc/NEWS.d/next/Build/2018-05-28-11-40-22.bpo-33614.28e0sE.rst b/Misc/NEWS.d/next/Build/2018-05-28-11-40-22.bpo-33614.28e0sE.rst deleted file mode 100644 index 9091c282ad0a..000000000000 --- a/Misc/NEWS.d/next/Build/2018-05-28-11-40-22.bpo-33614.28e0sE.rst +++ /dev/null @@ -1,2 +0,0 @@ -Ensures module definition files for the stable ABI on Windows are correctly -regenerated. diff --git a/Misc/NEWS.d/next/Build/2018-06-04-21-34-34.bpo-5755.65GmCj.rst b/Misc/NEWS.d/next/Build/2018-06-04-21-34-34.bpo-5755.65GmCj.rst deleted file mode 100644 index 8bcad4418baf..000000000000 --- a/Misc/NEWS.d/next/Build/2018-06-04-21-34-34.bpo-5755.65GmCj.rst +++ /dev/null @@ -1,3 +0,0 @@ -Move ``-Wstrict-prototypes`` option to ``CFLAGS_NODIST`` from ``OPT``. This -option emitted annoying warnings when building extension modules written in -C++. diff --git a/Misc/NEWS.d/next/Build/2018-06-15-18-18-16.bpo-30345.j-xRE1.rst b/Misc/NEWS.d/next/Build/2018-06-15-18-18-16.bpo-30345.j-xRE1.rst deleted file mode 100644 index f8db09bdbc66..000000000000 --- a/Misc/NEWS.d/next/Build/2018-06-15-18-18-16.bpo-30345.j-xRE1.rst +++ /dev/null @@ -1 +0,0 @@ -Add -g to LDFLAGS when compiling with LTO to get debug symbols. diff --git a/Misc/NEWS.d/next/Build/2018-07-10-21-33-25.bpo-32430.UN3Nk8.rst b/Misc/NEWS.d/next/Build/2018-07-10-21-33-25.bpo-32430.UN3Nk8.rst deleted file mode 100644 index 446c5a130d71..000000000000 --- a/Misc/NEWS.d/next/Build/2018-07-10-21-33-25.bpo-32430.UN3Nk8.rst +++ /dev/null @@ -1,2 +0,0 @@ -Rename Modules/Setup.dist to Modules/Setup, and remove the necessity to copy -the former manually to the latter when updating the local source tree. diff --git a/Misc/NEWS.d/next/Build/2018-07-15-16-49-06.bpo-34121.74G_lo.rst b/Misc/NEWS.d/next/Build/2018-07-15-16-49-06.bpo-34121.74G_lo.rst deleted file mode 100644 index 232719abf0e1..000000000000 --- a/Misc/NEWS.d/next/Build/2018-07-15-16-49-06.bpo-34121.74G_lo.rst +++ /dev/null @@ -1 +0,0 @@ -Fix detection of C11 atomic support on clang. diff --git a/Misc/NEWS.d/next/Build/2018-07-27-09-52-48.bpo-34245.bBV0NI.rst b/Misc/NEWS.d/next/Build/2018-07-27-09-52-48.bpo-34245.bBV0NI.rst deleted file mode 100644 index 3822bb0e4f08..000000000000 --- a/Misc/NEWS.d/next/Build/2018-07-27-09-52-48.bpo-34245.bBV0NI.rst +++ /dev/null @@ -1,2 +0,0 @@ -The Python shared library is now installed with write permission (mode 0755), -which is the standard way of installing such libraries. diff --git a/Misc/NEWS.d/next/Build/2018-08-24-09-48-25.bpo-33015.s21y74.rst b/Misc/NEWS.d/next/Build/2018-08-24-09-48-25.bpo-33015.s21y74.rst deleted file mode 100644 index 8c5a0c91a46b..000000000000 --- a/Misc/NEWS.d/next/Build/2018-08-24-09-48-25.bpo-33015.s21y74.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix an undefined behaviour in the pthread implementation of -:c:func:`PyThread_start_new_thread`: add a function wrapper to always return -``NULL``. diff --git a/Misc/NEWS.d/next/Build/2018-08-31-19-41-09.bpo-34555.dfQcnm.rst b/Misc/NEWS.d/next/Build/2018-08-31-19-41-09.bpo-34555.dfQcnm.rst deleted file mode 100644 index 7e61c4fb20ab..000000000000 --- a/Misc/NEWS.d/next/Build/2018-08-31-19-41-09.bpo-34555.dfQcnm.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix for case where it was not possible to have both -``HAVE_LINUX_VM_SOCKETS_H`` and ``HAVE_SOCKADDR_ALG`` be undefined. diff --git a/Misc/NEWS.d/next/Build/2018-09-06-07-15-20.bpo-34081.cuSTnH.rst b/Misc/NEWS.d/next/Build/2018-09-06-07-15-20.bpo-34081.cuSTnH.rst deleted file mode 100644 index af385bac231b..000000000000 --- a/Misc/NEWS.d/next/Build/2018-09-06-07-15-20.bpo-34081.cuSTnH.rst +++ /dev/null @@ -1 +0,0 @@ -Make Sphinx warnings as errors in the Docs Makefile. diff --git a/Misc/NEWS.d/next/Build/2018-09-14-09-53-21.bpo-34582.j3omgk.rst b/Misc/NEWS.d/next/Build/2018-09-14-09-53-21.bpo-34582.j3omgk.rst deleted file mode 100644 index 582c15f27c8c..000000000000 --- a/Misc/NEWS.d/next/Build/2018-09-14-09-53-21.bpo-34582.j3omgk.rst +++ /dev/null @@ -1 +0,0 @@ -Add JUnit XML output for regression tests and update Azure DevOps builds. diff --git a/Misc/NEWS.d/next/Build/2018-09-17-13-56-12.bpo-34710.ARqIAK.rst b/Misc/NEWS.d/next/Build/2018-09-17-13-56-12.bpo-34710.ARqIAK.rst deleted file mode 100644 index b06289d091e5..000000000000 --- a/Misc/NEWS.d/next/Build/2018-09-17-13-56-12.bpo-34710.ARqIAK.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed SSL module build with OpenSSL & pedantic CFLAGS. diff --git a/Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst b/Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst deleted file mode 100644 index 01318e6e46a3..000000000000 --- a/Misc/NEWS.d/next/Build/2018-09-18-16-28-31.bpo-34585.CGMu0h.rst +++ /dev/null @@ -1,3 +0,0 @@ -Check for floating-point byte order in configure.ac using compilation tests -instead of executing code, so that these checks work in cross-compiled -builds. diff --git a/Misc/NEWS.d/next/Build/2018-09-26-17-29-10.bpo-34765.AvxdVj.rst b/Misc/NEWS.d/next/Build/2018-09-26-17-29-10.bpo-34765.AvxdVj.rst deleted file mode 100644 index 12ed26de8ce0..000000000000 --- a/Misc/NEWS.d/next/Build/2018-09-26-17-29-10.bpo-34765.AvxdVj.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update the outdated install-sh file to the latest revision from automake -v1.16.1 diff --git a/Misc/NEWS.d/next/Build/2018-10-16-12-22-36.bpo-28015.ylSgFh.rst b/Misc/NEWS.d/next/Build/2018-10-16-12-22-36.bpo-28015.ylSgFh.rst deleted file mode 100644 index 5a7a43c77307..000000000000 --- a/Misc/NEWS.d/next/Build/2018-10-16-12-22-36.bpo-28015.ylSgFh.rst +++ /dev/null @@ -1 +0,0 @@ -Have --with-lto works correctly with clang. diff --git a/Misc/NEWS.d/next/Build/2018-10-17-17-38-57.bpo-35011.GgoPIC.rst b/Misc/NEWS.d/next/Build/2018-10-17-17-38-57.bpo-35011.GgoPIC.rst deleted file mode 100644 index 4411ffea45ce..000000000000 --- a/Misc/NEWS.d/next/Build/2018-10-17-17-38-57.bpo-35011.GgoPIC.rst +++ /dev/null @@ -1,4 +0,0 @@ -Restores the use of pyexpatns.h to isolate our embedded copy of the expat C -library so that its symbols do not conflict at link or dynamic loading time -with an embedding application or other extension modules with their own -version of libexpat. diff --git a/Misc/NEWS.d/next/Build/2018-10-26-14-49-19.bpo-35059.PKsBxP.rst b/Misc/NEWS.d/next/Build/2018-10-26-14-49-19.bpo-35059.PKsBxP.rst deleted file mode 100644 index 262161637b13..000000000000 --- a/Misc/NEWS.d/next/Build/2018-10-26-14-49-19.bpo-35059.PKsBxP.rst +++ /dev/null @@ -1,4 +0,0 @@ -PCbuild: Set InlineFunctionExpansion to OnlyExplicitInline ("/Ob1" option) -in pyproject.props in Debug mode to expand functions marked as inline. This -change should make Python compiled in Debug mode a little bit faster on -Windows. diff --git a/Misc/NEWS.d/next/Build/2018-11-01-15-01-23.bpo-35139.XZTttb.rst b/Misc/NEWS.d/next/Build/2018-11-01-15-01-23.bpo-35139.XZTttb.rst deleted file mode 100644 index aa65088be809..000000000000 --- a/Misc/NEWS.d/next/Build/2018-11-01-15-01-23.bpo-35139.XZTttb.rst +++ /dev/null @@ -1 +0,0 @@ -Fix a compiler error when statically linking `pyexpat` in `Modules/Setup`. diff --git a/Misc/NEWS.d/next/Build/2018-12-04-15-33-28.bpo-35351.ZhhBfT.rst b/Misc/NEWS.d/next/Build/2018-12-04-15-33-28.bpo-35351.ZhhBfT.rst deleted file mode 100644 index ee6c870b060f..000000000000 --- a/Misc/NEWS.d/next/Build/2018-12-04-15-33-28.bpo-35351.ZhhBfT.rst +++ /dev/null @@ -1,2 +0,0 @@ -When building Python with clang and LTO, LTO flags are no longer passed into -CFLAGS to build third-party C extensions through distutils. diff --git a/Misc/NEWS.d/next/Build/2018-12-05-22-28-40.bpo-35257.dmcd_s.rst b/Misc/NEWS.d/next/Build/2018-12-05-22-28-40.bpo-35257.dmcd_s.rst deleted file mode 100644 index fad252578299..000000000000 --- a/Misc/NEWS.d/next/Build/2018-12-05-22-28-40.bpo-35257.dmcd_s.rst +++ /dev/null @@ -1,2 +0,0 @@ -Avoid leaking the linker flags from Link Time Optimizations (LTO) -into distutils when compiling C extensions. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Build/2018-12-14-19-36-05.bpo-35499.9yAldM.rst b/Misc/NEWS.d/next/Build/2018-12-14-19-36-05.bpo-35499.9yAldM.rst deleted file mode 100644 index ed730b9d9b4a..000000000000 --- a/Misc/NEWS.d/next/Build/2018-12-14-19-36-05.bpo-35499.9yAldM.rst +++ /dev/null @@ -1,3 +0,0 @@ -``make profile-opt`` no longer replaces ``CFLAGS_NODIST`` with ``CFLAGS``. It -now adds profile-guided optimization (PGO) flags to ``CFLAGS_NODIST``: existing -``CFLAGS_NODIST`` flags are kept. diff --git a/Misc/NEWS.d/next/Build/2018-12-29-10-19-43.bpo-35550.BTuu8e.rst b/Misc/NEWS.d/next/Build/2018-12-29-10-19-43.bpo-35550.BTuu8e.rst deleted file mode 100644 index 8a6b90d5970e..000000000000 --- a/Misc/NEWS.d/next/Build/2018-12-29-10-19-43.bpo-35550.BTuu8e.rst +++ /dev/null @@ -1 +0,0 @@ -Fix incorrect Solaris #ifdef checks to look for __sun && __SVR4 instead of sun when compiling. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Build/2019-01-02-11-23-33.bpo-35642.pjkhJe.rst b/Misc/NEWS.d/next/Build/2019-01-02-11-23-33.bpo-35642.pjkhJe.rst deleted file mode 100644 index 9f6da315e2d5..000000000000 --- a/Misc/NEWS.d/next/Build/2019-01-02-11-23-33.bpo-35642.pjkhJe.rst +++ /dev/null @@ -1 +0,0 @@ -Remove asynciomodule.c from pythoncore.vcxproj diff --git a/Misc/NEWS.d/next/Build/2019-01-10-11-37-18.bpo-35683.pf5Oos.rst b/Misc/NEWS.d/next/Build/2019-01-10-11-37-18.bpo-35683.pf5Oos.rst deleted file mode 100644 index f39610169370..000000000000 --- a/Misc/NEWS.d/next/Build/2019-01-10-11-37-18.bpo-35683.pf5Oos.rst +++ /dev/null @@ -1 +0,0 @@ -Improved Azure Pipelines build steps and now verifying layouts correctly diff --git a/Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst b/Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst deleted file mode 100644 index 3b5aca75103b..000000000000 --- a/Misc/NEWS.d/next/Build/2019-02-02-13-34-05.bpo-34691.B-Lsj4.rst +++ /dev/null @@ -1,2 +0,0 @@ -The _contextvars module is now built into the core Python library on -Windows. diff --git a/Misc/NEWS.d/next/C API/2017-10-12-23-24-27.bpo-30863.xrED19.rst b/Misc/NEWS.d/next/C API/2017-10-12-23-24-27.bpo-30863.xrED19.rst deleted file mode 100644 index a8ef8761a792..000000000000 --- a/Misc/NEWS.d/next/C API/2017-10-12-23-24-27.bpo-30863.xrED19.rst +++ /dev/null @@ -1,2 +0,0 @@ -:c:func:`PyUnicode_AsWideChar` and :c:func:`PyUnicode_AsWideCharString` no -longer cache the ``wchar_t*`` representation of string objects. diff --git a/Misc/NEWS.d/next/C API/2018-01-09-17-03-54.bpo-32374.SwwLoz.rst b/Misc/NEWS.d/next/C API/2018-01-09-17-03-54.bpo-32374.SwwLoz.rst deleted file mode 100644 index f9cf6d6b99ce..000000000000 --- a/Misc/NEWS.d/next/C API/2018-01-09-17-03-54.bpo-32374.SwwLoz.rst +++ /dev/null @@ -1,2 +0,0 @@ -Document that m_traverse for multi-phase initialized modules can be called -with m_state=NULL, and add a sanity check diff --git a/Misc/NEWS.d/next/C API/2018-03-20-21-43-09.bpo-33042.FPFp64.rst b/Misc/NEWS.d/next/C API/2018-03-20-21-43-09.bpo-33042.FPFp64.rst deleted file mode 100644 index f840b55869cc..000000000000 --- a/Misc/NEWS.d/next/C API/2018-03-20-21-43-09.bpo-33042.FPFp64.rst +++ /dev/null @@ -1,2 +0,0 @@ -Embedding applications may once again call PySys_ResetWarnOptions, -PySys_AddWarnOption, and PySys_AddXOption prior to calling Py_Initialize. \ No newline at end of file diff --git a/Misc/NEWS.d/next/C API/2018-06-10-09-42-31.bpo-33818.50nlf3.rst b/Misc/NEWS.d/next/C API/2018-06-10-09-42-31.bpo-33818.50nlf3.rst deleted file mode 100644 index 0f30a6e380ef..000000000000 --- a/Misc/NEWS.d/next/C API/2018-06-10-09-42-31.bpo-33818.50nlf3.rst +++ /dev/null @@ -1,2 +0,0 @@ -:c:func:`PyExceptionClass_Name` will now return ``const char *`` instead of -``char *``. diff --git a/Misc/NEWS.d/next/C API/2018-06-21-17-19-31.bpo-32500.WGCNad.rst b/Misc/NEWS.d/next/C API/2018-06-21-17-19-31.bpo-32500.WGCNad.rst deleted file mode 100644 index 71e00a005e27..000000000000 --- a/Misc/NEWS.d/next/C API/2018-06-21-17-19-31.bpo-32500.WGCNad.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fixed error messages for :c:func:`PySequence_Size`, -:c:func:`PySequence_GetItem`, :c:func:`PySequence_SetItem` and -:c:func:`PySequence_DelItem` called with a mapping and -:c:func:`PyMapping_Size` called with a sequence. diff --git a/Misc/NEWS.d/next/C API/2018-07-02-10-58-11.bpo-34008.COewz-.rst b/Misc/NEWS.d/next/C API/2018-07-02-10-58-11.bpo-34008.COewz-.rst deleted file mode 100644 index d9881b9945df..000000000000 --- a/Misc/NEWS.d/next/C API/2018-07-02-10-58-11.bpo-34008.COewz-.rst +++ /dev/null @@ -1 +0,0 @@ -Py_Main() can again be called after Py_Initialize(), as in Python 3.6. diff --git a/Misc/NEWS.d/next/C API/2018-07-08-12-06-18.bpo-32455.KVHlkz.rst b/Misc/NEWS.d/next/C API/2018-07-08-12-06-18.bpo-32455.KVHlkz.rst deleted file mode 100644 index f28be876cf39..000000000000 --- a/Misc/NEWS.d/next/C API/2018-07-08-12-06-18.bpo-32455.KVHlkz.rst +++ /dev/null @@ -1 +0,0 @@ -Added :c:func:`PyCompile_OpcodeStackEffectWithJump`. diff --git a/Misc/NEWS.d/next/C API/2018-07-09-11-39-54.bpo-23927.pDFkxb.rst b/Misc/NEWS.d/next/C API/2018-07-09-11-39-54.bpo-23927.pDFkxb.rst deleted file mode 100644 index 3e2ac6c91837..000000000000 --- a/Misc/NEWS.d/next/C API/2018-07-09-11-39-54.bpo-23927.pDFkxb.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed :exc:`SystemError` in :c:func:`PyArg_ParseTupleAndKeywords` when the -``w*`` format unit is used for optional parameter. diff --git a/Misc/NEWS.d/next/C API/2018-07-22-14-58-06.bpo-34127.qkfnHO.rst b/Misc/NEWS.d/next/C API/2018-07-22-14-58-06.bpo-34127.qkfnHO.rst deleted file mode 100644 index c5b8c0746816..000000000000 --- a/Misc/NEWS.d/next/C API/2018-07-22-14-58-06.bpo-34127.qkfnHO.rst +++ /dev/null @@ -1,2 +0,0 @@ -Return grammatically correct error message based on argument count. -Patch by Karthikeyan Singaravelan. diff --git a/Misc/NEWS.d/next/C API/2018-07-24-11-57-35.bpo-34193.M6ch1Q.rst b/Misc/NEWS.d/next/C API/2018-07-24-11-57-35.bpo-34193.M6ch1Q.rst deleted file mode 100644 index da2a6116d44e..000000000000 --- a/Misc/NEWS.d/next/C API/2018-07-24-11-57-35.bpo-34193.M6ch1Q.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix pluralization in TypeError messages in getargs.c and typeobject.c: -'1 argument' instead of '1 arguments' and '1 element' instead of '1 elements'. diff --git a/Misc/NEWS.d/next/C API/2018-08-29-18-48-47.bpo-34523.lLQ8rh.rst b/Misc/NEWS.d/next/C API/2018-08-29-18-48-47.bpo-34523.lLQ8rh.rst deleted file mode 100644 index 95368f1c6847..000000000000 --- a/Misc/NEWS.d/next/C API/2018-08-29-18-48-47.bpo-34523.lLQ8rh.rst +++ /dev/null @@ -1,2 +0,0 @@ -Py_DecodeLocale() and Py_EncodeLocale() now use the UTF-8 encoding on -Windows if Py_LegacyWindowsFSEncodingFlag is zero. diff --git a/Misc/NEWS.d/next/C API/2018-10-05-17-06-49.bpo-34910.tSFrls.rst b/Misc/NEWS.d/next/C API/2018-10-05-17-06-49.bpo-34910.tSFrls.rst deleted file mode 100644 index eff4755d8d5e..000000000000 --- a/Misc/NEWS.d/next/C API/2018-10-05-17-06-49.bpo-34910.tSFrls.rst +++ /dev/null @@ -1,2 +0,0 @@ -Ensure that :c:func:`PyObject_Print` always returns ``-1`` on error. Patch -by Zackery Spytz. diff --git a/Misc/NEWS.d/next/C API/2018-10-13-16-30-54.bpo-34725.j52rIS.rst b/Misc/NEWS.d/next/C API/2018-10-13-16-30-54.bpo-34725.j52rIS.rst deleted file mode 100644 index b5bc1bf0c723..000000000000 --- a/Misc/NEWS.d/next/C API/2018-10-13-16-30-54.bpo-34725.j52rIS.rst +++ /dev/null @@ -1 +0,0 @@ -Adds _Py_SetProgramFullPath so embedders may override sys.executable diff --git a/Misc/NEWS.d/next/C API/2018-11-01-13-58-37.bpo-35134.SbZo0o.rst b/Misc/NEWS.d/next/C API/2018-11-01-13-58-37.bpo-35134.SbZo0o.rst deleted file mode 100644 index c486a2951f9a..000000000000 --- a/Misc/NEWS.d/next/C API/2018-11-01-13-58-37.bpo-35134.SbZo0o.rst +++ /dev/null @@ -1 +0,0 @@ -Creation of a new ``Include/cpython/`` subdirectory. diff --git a/Misc/NEWS.d/next/C API/2018-11-13-12-13-04.bpo-35081.gFd85N.rst b/Misc/NEWS.d/next/C API/2018-11-13-12-13-04.bpo-35081.gFd85N.rst deleted file mode 100644 index 34aa74201285..000000000000 --- a/Misc/NEWS.d/next/C API/2018-11-13-12-13-04.bpo-35081.gFd85N.rst +++ /dev/null @@ -1,2 +0,0 @@ -The :c:func:`_PyObject_GC_TRACK` and :c:func:`_PyObject_GC_UNTRACK` macros -have been removed from the public C API. diff --git a/Misc/NEWS.d/next/C API/2018-11-22-13-52-36.bpo-35259.p07c61.rst b/Misc/NEWS.d/next/C API/2018-11-22-13-52-36.bpo-35259.p07c61.rst deleted file mode 100644 index 1f4801cbfb71..000000000000 --- a/Misc/NEWS.d/next/C API/2018-11-22-13-52-36.bpo-35259.p07c61.rst +++ /dev/null @@ -1,2 +0,0 @@ -Conditionally declare :c:func:`Py_FinalizeEx()` (new in 3.6) based on -Py_LIMITED_API. Patch by Arthur Neufeld. diff --git a/Misc/NEWS.d/next/C API/2018-11-22-18-15-46.bpo-35081.FdK9mV.rst b/Misc/NEWS.d/next/C API/2018-11-22-18-15-46.bpo-35081.FdK9mV.rst deleted file mode 100644 index d1de852b724f..000000000000 --- a/Misc/NEWS.d/next/C API/2018-11-22-18-15-46.bpo-35081.FdK9mV.rst +++ /dev/null @@ -1,2 +0,0 @@ -Internal APIs surrounded by ``#ifdef Py_BUILD_CORE`` have been moved from -``Include/*.h`` headers to new header files ``Include/internal/pycore_*.h``. diff --git a/Misc/NEWS.d/next/C API/2018-11-22-18-34-23.bpo-35296.nxrIQt.rst b/Misc/NEWS.d/next/C API/2018-11-22-18-34-23.bpo-35296.nxrIQt.rst deleted file mode 100644 index c5f877a4e323..000000000000 --- a/Misc/NEWS.d/next/C API/2018-11-22-18-34-23.bpo-35296.nxrIQt.rst +++ /dev/null @@ -1,2 +0,0 @@ -``make install`` now also installs the internal API: -``Include/internal/*.h`` header files. diff --git a/Misc/NEWS.d/next/C API/2018-11-23-11-52-34.bpo-35059.BLSp6y.rst b/Misc/NEWS.d/next/C API/2018-11-23-11-52-34.bpo-35059.BLSp6y.rst deleted file mode 100644 index 25120466f7be..000000000000 --- a/Misc/NEWS.d/next/C API/2018-11-23-11-52-34.bpo-35059.BLSp6y.rst +++ /dev/null @@ -1,3 +0,0 @@ -The following C macros have been converted to static inline functions: -:c:func:`Py_INCREF`, :c:func:`Py_DECREF`, :c:func:`Py_XINCREF`, -:c:func:`Py_XDECREF`, :c:func:`PyObject_INIT`, :c:func:`PyObject_INIT_VAR`. diff --git a/Misc/NEWS.d/next/C API/2018-11-28-03-20-36.bpo-35322.Qcqsag.rst b/Misc/NEWS.d/next/C API/2018-11-28-03-20-36.bpo-35322.Qcqsag.rst deleted file mode 100644 index f5b4796307f7..000000000000 --- a/Misc/NEWS.d/next/C API/2018-11-28-03-20-36.bpo-35322.Qcqsag.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix memory leak in :c:func:`PyUnicode_EncodeLocale` and -:c:func:`PyUnicode_EncodeFSDefault` on error handling. diff --git a/Misc/NEWS.d/next/C API/2019-01-11-11-16-16.bpo-33817.nJ4yIj.rst b/Misc/NEWS.d/next/C API/2019-01-11-11-16-16.bpo-33817.nJ4yIj.rst deleted file mode 100644 index ca4ccb26d361..000000000000 --- a/Misc/NEWS.d/next/C API/2019-01-11-11-16-16.bpo-33817.nJ4yIj.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed :c:func:`_PyBytes_Resize` for empty bytes objects. diff --git a/Misc/NEWS.d/next/C API/2019-01-22-17-04-10.bpo-35713.fmehdG.rst b/Misc/NEWS.d/next/C API/2019-01-22-17-04-10.bpo-35713.fmehdG.rst deleted file mode 100644 index f95ceca47fdf..000000000000 --- a/Misc/NEWS.d/next/C API/2019-01-22-17-04-10.bpo-35713.fmehdG.rst +++ /dev/null @@ -1,3 +0,0 @@ -The :c:func:`PyByteArray_Init` and :c:func:`PyByteArray_Fini` functions have -been removed. They did nothing since Python 2.7.4 and Python 3.2.0, were -excluded from the limited API (stable ABI), and were not documented. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-09-12-08-11-01.bpo-29832.Kuf2M7.rst b/Misc/NEWS.d/next/Core and Builtins/2017-09-12-08-11-01.bpo-29832.Kuf2M7.rst deleted file mode 100644 index 6cf6696a71f7..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-09-12-08-11-01.bpo-29832.Kuf2M7.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove references to 'getsockaddrarg' from various socket error messages. -Patch by Oren Milman. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-09-25-20-36-24.bpo-31577.jgYsSA.rst b/Misc/NEWS.d/next/Core and Builtins/2017-09-25-20-36-24.bpo-31577.jgYsSA.rst deleted file mode 100644 index 81428828af2a..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-09-25-20-36-24.bpo-31577.jgYsSA.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a crash in `os.utime()` in case of a bad ns argument. Patch by Oren -Milman. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-10-02-21-02-14.bpo-21983.UoC319.rst b/Misc/NEWS.d/next/Core and Builtins/2017-10-02-21-02-14.bpo-21983.UoC319.rst deleted file mode 100644 index 88a03685073c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-10-02-21-02-14.bpo-21983.UoC319.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a crash in `ctypes.cast()` in case the type argument is a ctypes -structured data type. Patch by Eryk Sun and Oren Milman. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-10-07-10-13-15.bpo-25862.FPYBA5.rst b/Misc/NEWS.d/next/Core and Builtins/2017-10-07-10-13-15.bpo-25862.FPYBA5.rst deleted file mode 100644 index 787163643ad8..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-10-07-10-13-15.bpo-25862.FPYBA5.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix assertion failures in the ``tell()`` method of ``io.TextIOWrapper``. -Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-10-30-12-44-50.bpo-31902.a07fa57.rst b/Misc/NEWS.d/next/Core and Builtins/2017-10-30-12-44-50.bpo-31902.a07fa57.rst deleted file mode 100644 index e2b04b3ae0f5..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-10-30-12-44-50.bpo-31902.a07fa57.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix the ``col_offset`` attribute for ast nodes ``ast.AsyncFor``, -``ast.AsyncFunctionDef``, and ``ast.AsyncWith``. Previously, ``col_offset`` -pointed to the keyword after ``async``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-11-22-15-43-14.bpo-32117.-vloh8.rst b/Misc/NEWS.d/next/Core and Builtins/2017-11-22-15-43-14.bpo-32117.-vloh8.rst deleted file mode 100644 index 8add90c5b70a..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-11-22-15-43-14.bpo-32117.-vloh8.rst +++ /dev/null @@ -1,3 +0,0 @@ -Iterable unpacking is now allowed without parentheses in yield and return -statements, e.g. ``yield 1, 2, 3, *rest``. Thanks to David Cuthbert for the -change and Jordan Chapman for added tests. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-11-26-00-59-22.bpo-10544.fHOM3V.rst b/Misc/NEWS.d/next/Core and Builtins/2017-11-26-00-59-22.bpo-10544.fHOM3V.rst deleted file mode 100644 index 404f12cbbb31..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-11-26-00-59-22.bpo-10544.fHOM3V.rst +++ /dev/null @@ -1,2 +0,0 @@ -Yield expressions are now disallowed in comprehensions and generator -expressions except the expression for the outermost iterable. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-12-12-13-43-13.bpo-32285.LzKSwz.rst b/Misc/NEWS.d/next/Core and Builtins/2017-12-12-13-43-13.bpo-32285.LzKSwz.rst deleted file mode 100644 index 87f84b02eb84..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-12-12-13-43-13.bpo-32285.LzKSwz.rst +++ /dev/null @@ -1,2 +0,0 @@ -New function unicodedata.is_normalized, which can check whether a string is -in a specific normal form. diff --git a/Misc/NEWS.d/next/Core and Builtins/2017-12-24-19-48-59.bpo-17611.P85kWL.rst b/Misc/NEWS.d/next/Core and Builtins/2017-12-24-19-48-59.bpo-17611.P85kWL.rst deleted file mode 100644 index 52949e6018af..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2017-12-24-19-48-59.bpo-17611.P85kWL.rst +++ /dev/null @@ -1,10 +0,0 @@ -Simplified the interpreter loop by moving the logic of unrolling the stack -of blocks into the compiler. The compiler emits now explicit instructions -for adjusting the stack of values and calling the cleaning up code for -:keyword:`break`, :keyword:`continue` and :keyword:`return`. - -Removed opcodes :opcode:`BREAK_LOOP`, :opcode:`CONTINUE_LOOP`, -:opcode:`SETUP_LOOP` and :opcode:`SETUP_EXCEPT`. Added new opcodes -:opcode:`ROT_FOUR`, :opcode:`BEGIN_FINALLY` and :opcode:`CALL_FINALLY` and -:opcode:`POP_FINALLY`. Changed the behavior of :opcode:`END_FINALLY` and -:opcode:`WITH_CLEANUP_START`. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-01-03-23-12-43.bpo-32489.SDEPHB.rst b/Misc/NEWS.d/next/Core and Builtins/2018-01-03-23-12-43.bpo-32489.SDEPHB.rst deleted file mode 100644 index 68babebdad3c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-01-03-23-12-43.bpo-32489.SDEPHB.rst +++ /dev/null @@ -1,2 +0,0 @@ -A :keyword:`continue` statement is now allowed in the :keyword:`finally` -clause. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-01-26-21-20-21.bpo-32583.Fh3fau.rst b/Misc/NEWS.d/next/Core and Builtins/2018-01-26-21-20-21.bpo-32583.Fh3fau.rst deleted file mode 100644 index 45f1d043f9d6..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-01-26-21-20-21.bpo-32583.Fh3fau.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix possible crashing in builtin Unicode decoders caused by write -out-of-bound errors when using customized decode error handlers. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-01-29-14-36-37.bpo-32711.8hQFJP.rst b/Misc/NEWS.d/next/Core and Builtins/2018-01-29-14-36-37.bpo-32711.8hQFJP.rst deleted file mode 100644 index 4d55b894ce10..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-01-29-14-36-37.bpo-32711.8hQFJP.rst +++ /dev/null @@ -1 +0,0 @@ -Fix the warning messages for Python/ast_unparse.c. Patch by St?phane Wirtel diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-16-28.bpo-32303.VsvhSl.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-16-28.bpo-32303.VsvhSl.rst deleted file mode 100644 index b84448fb25a1..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-16-28.bpo-32303.VsvhSl.rst +++ /dev/null @@ -1 +0,0 @@ -Make sure ``__spec__.loader`` matches ``__loader__`` for namespace packages. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-56-41.bpo-32305.dkU9Qa.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-56-41.bpo-32305.dkU9Qa.rst deleted file mode 100644 index 204d74a49754..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-01-10-56-41.bpo-32305.dkU9Qa.rst +++ /dev/null @@ -1,2 +0,0 @@ -For namespace packages, ensure that both ``__file__`` and -``__spec__.origin`` are set to None. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-02-08-50-46.bpo-31356.MNwUOQ.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-02-08-50-46.bpo-31356.MNwUOQ.rst deleted file mode 100644 index 5022a1370609..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-02-08-50-46.bpo-31356.MNwUOQ.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove the new API added in bpo-31356 (gc.ensure_disabled() context -manager). diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-14-12-35-47.bpo-32836.bThJnx.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-14-12-35-47.bpo-32836.bThJnx.rst deleted file mode 100644 index 4eeb9aa2e52c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-14-12-35-47.bpo-32836.bThJnx.rst +++ /dev/null @@ -1 +0,0 @@ -Don't use temporary variables in cases of list/dict/set comprehensions diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-20-21-53-48.bpo-32889.J6eWy5.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-20-21-53-48.bpo-32889.J6eWy5.rst deleted file mode 100644 index 99128ccc1826..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-20-21-53-48.bpo-32889.J6eWy5.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update Valgrind suppression list to account for the rename of -``Py_ADDRESS_IN_RANG`` to ``address_in_range``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-24-00-07-05.bpo-32925.e-7Ufh.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-24-00-07-05.bpo-32925.e-7Ufh.rst deleted file mode 100644 index e9443e69e2a2..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-24-00-07-05.bpo-32925.e-7Ufh.rst +++ /dev/null @@ -1,3 +0,0 @@ -Optimized iterating and containing test for literal lists consisting of -non-constants: ``x in [a, b]`` and ``for x in [a, b]``. The case of all -constant elements already was optimized. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-24-21-51-42.bpo-32932.2cz31L.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-24-21-51-42.bpo-32932.2cz31L.rst deleted file mode 100644 index 51e3d9b613d5..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-24-21-51-42.bpo-32932.2cz31L.rst +++ /dev/null @@ -1 +0,0 @@ -Make error message more revealing when there are non-str objects in ``__all__``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-25-10-52-40.bpo-32946.Lo09rG.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-25-10-52-40.bpo-32946.Lo09rG.rst deleted file mode 100644 index cb1d2a7fb13c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-25-10-52-40.bpo-32946.Lo09rG.rst +++ /dev/null @@ -1,2 +0,0 @@ -Importing names from already imported module with "from ... import ..." is -now 30% faster if the module is not a package. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-27-13-36-21.bpo-17288.Gdj24S.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-27-13-36-21.bpo-17288.Gdj24S.rst deleted file mode 100644 index ce9e84c40313..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-27-13-36-21.bpo-17288.Gdj24S.rst +++ /dev/null @@ -1 +0,0 @@ -Prevent jumps from 'return' and 'exception' trace events. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-02-27-20-57-00.bpo-32911.cmKfco.rst b/Misc/NEWS.d/next/Core and Builtins/2018-02-27-20-57-00.bpo-32911.cmKfco.rst deleted file mode 100644 index 0c2ae756b65c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-02-27-20-57-00.bpo-32911.cmKfco.rst +++ /dev/null @@ -1,5 +0,0 @@ -Due to unexpected compatibility issues discovered during downstream beta -testing, reverted :issue:`29463`. ``docstring`` field is removed from Module, -ClassDef, FunctionDef, and AsyncFunctionDef ast nodes which was added in -3.7a1. Docstring expression is restored as a first statement in their body. -Based on patch by Inada Naoki. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-06-12-19-19.bpo-33005.LP-V2U.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-06-12-19-19.bpo-33005.LP-V2U.rst deleted file mode 100644 index 6c8b99cbb897..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-06-12-19-19.bpo-33005.LP-V2U.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix a crash on fork when using a custom memory allocator (ex: using -PYTHONMALLOC env var). _PyGILState_Reinit() and _PyInterpreterState_Enable() -now use the default RAW memory allocator to allocate a new interpreters mutex -on fork. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-08-09-48-38.bpo-33026.QZA3Ba.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-08-09-48-38.bpo-33026.QZA3Ba.rst deleted file mode 100644 index dc166d1e5771..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-08-09-48-38.bpo-33026.QZA3Ba.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed jumping out of "with" block by setting f_lineno. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-10-15-16-40.bpo-33041.-ak5Fk.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-10-15-16-40.bpo-33041.-ak5Fk.rst deleted file mode 100644 index af9ccfd89f5d..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-10-15-16-40.bpo-33041.-ak5Fk.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed bytecode generation for "async for" with a complex target. A -StopAsyncIteration raised on assigning or unpacking will be now propagated -instead of stopping the iteration. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-14-21-42-17.bpo-25750.lxgkQz.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-14-21-42-17.bpo-25750.lxgkQz.rst deleted file mode 100644 index 09ffb368b7c6..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-14-21-42-17.bpo-25750.lxgkQz.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix rare Python crash due to bad refcounting in ``type_getattro()`` if a -descriptor deletes itself from the class. Patch by Jeroen Demeyer. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-18-13-56-14.bpo-33041.XwPhI2.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-18-13-56-14.bpo-33041.XwPhI2.rst deleted file mode 100644 index 34bf6c9b0f1c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-18-13-56-14.bpo-33041.XwPhI2.rst +++ /dev/null @@ -1,6 +0,0 @@ -Added new opcode :opcode:`END_ASYNC_FOR` and fixes the following issues: - -* Setting global :exc:`StopAsyncIteration` no longer breaks ``async for`` - loops. -* Jumping into an ``async for`` loop is now disabled. -* Jumping out of an ``async for`` loop no longer corrupts the stack. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-19-00-59-20.bpo-33083.Htztjl.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-19-00-59-20.bpo-33083.Htztjl.rst deleted file mode 100644 index 81df83989e48..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-19-00-59-20.bpo-33083.Htztjl.rst +++ /dev/null @@ -1,2 +0,0 @@ -``math.factorial`` no longer accepts arguments that are not int-like. -Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-22-23-09-06.bpo-33018.0ncEJV.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-22-23-09-06.bpo-33018.0ncEJV.rst deleted file mode 100644 index e799e9834aa1..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-22-23-09-06.bpo-33018.0ncEJV.rst +++ /dev/null @@ -1,3 +0,0 @@ -Improve consistency of errors raised by ``issubclass()`` when called with a -non-class and an abstract base class as the first and second arguments, -respectively. Patch by Josh Bronson. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-25-14.bpo-33138.aSqudH.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-25-14.bpo-33138.aSqudH.rst deleted file mode 100644 index 6f445261843f..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-25-14.bpo-33138.aSqudH.rst +++ /dev/null @@ -1,2 +0,0 @@ -Changed standard error message for non-pickleable and non-copyable types. It -now says "cannot pickle" instead of "can't pickle" or "cannot serialize". diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-49-06.bpo-33053.V3xlsH.rst b/Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-49-06.bpo-33053.V3xlsH.rst deleted file mode 100644 index fd32ac150e4c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-03-25-19-49-06.bpo-33053.V3xlsH.rst +++ /dev/null @@ -1,4 +0,0 @@ -When using the -m switch, sys.path[0] is now explicitly expanded as the -*starting* working directory, rather than being left as the empty path -(which allows imports from the current working directory at the time of the -import) diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-02-09-32-40.bpo-33199.TPnxQu.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-02-09-32-40.bpo-33199.TPnxQu.rst deleted file mode 100644 index 22abf8d00011..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-02-09-32-40.bpo-33199.TPnxQu.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``ma_version_tag`` in dict implementation is uninitialized when copying -from key-sharing dict. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-30-25.bpo-29922.CdLuMl.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-30-25.bpo-29922.CdLuMl.rst deleted file mode 100644 index d8c144e59d6c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-30-25.bpo-29922.CdLuMl.rst +++ /dev/null @@ -1,2 +0,0 @@ -Improved error messages in 'async with' when ``__aenter__()`` or -``__aexit__()`` return non-awaitable object. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-58-41.bpo-33205.lk2F3r.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-58-41.bpo-33205.lk2F3r.rst deleted file mode 100644 index 44511865abfa..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-03-00-58-41.bpo-33205.lk2F3r.rst +++ /dev/null @@ -1,3 +0,0 @@ -Change dict growth function from ``round_up_to_power_2(used*2+hashtable_size/2)`` to -``round_up_to_power_2(used*3)``. Previously, dict is shrinked only when ``used == 0``. -Now dict has more chance to be shrinked. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-05-22-20-44.bpo-33231.3Jmo0q.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-05-22-20-44.bpo-33231.3Jmo0q.rst deleted file mode 100644 index de54fbb52671..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-05-22-20-44.bpo-33231.3Jmo0q.rst +++ /dev/null @@ -1 +0,0 @@ -Fix potential memory leak in ``normalizestring()``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-13-22-31-09.bpo-33176.PB9com.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-13-22-31-09.bpo-33176.PB9com.rst deleted file mode 100644 index 68785b3cb6a1..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-13-22-31-09.bpo-33176.PB9com.rst +++ /dev/null @@ -1 +0,0 @@ -Add a ``toreadonly()`` method to memoryviews. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-14-11-02-57.bpo-30455.ANRwjo.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-14-11-02-57.bpo-30455.ANRwjo.rst deleted file mode 100644 index 21182525a2df..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-14-11-02-57.bpo-30455.ANRwjo.rst +++ /dev/null @@ -1,2 +0,0 @@ -The C and Python code and the documentation related to tokens are now generated -from a single source file :file:`Grammar/Tokens`. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-14-13-12-50.bpo-33270.UmVV6i.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-14-13-12-50.bpo-33270.UmVV6i.rst deleted file mode 100644 index 4dbc4a3062b0..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-14-13-12-50.bpo-33270.UmVV6i.rst +++ /dev/null @@ -1 +0,0 @@ -Intern the names for all anonymous code objects. Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-17-01-24-51.bpo-33234.l9IDtp.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-17-01-24-51.bpo-33234.l9IDtp.rst deleted file mode 100644 index 2f9cd62e8e01..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-17-01-24-51.bpo-33234.l9IDtp.rst +++ /dev/null @@ -1,2 +0,0 @@ -The list constructor will pre-size and not over-allocate when -the input lenght is known. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-18-12-23-30.bpo-33306.tSM3cp.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-18-12-23-30.bpo-33306.tSM3cp.rst deleted file mode 100644 index 2d891062607c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-18-12-23-30.bpo-33306.tSM3cp.rst +++ /dev/null @@ -1 +0,0 @@ -Improved syntax error messages for unbalanced parentheses. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-18-14-17-44.bpo-33305.9z3dDH.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-18-14-17-44.bpo-33305.9z3dDH.rst deleted file mode 100644 index cae2f7f85950..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-18-14-17-44.bpo-33305.9z3dDH.rst +++ /dev/null @@ -1 +0,0 @@ -Improved syntax error messages for invalid numerical literals. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-19-08-30-07.bpo-33312.mDe2iL.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-19-08-30-07.bpo-33312.mDe2iL.rst deleted file mode 100644 index 40b51b902c9f..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-19-08-30-07.bpo-33312.mDe2iL.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed clang ubsan (undefined behavior sanitizer) warnings in dictobject.c by -adjusting how the internal struct _dictkeysobject shared keys structure is -declared. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-22-13-41-59.bpo-33331.s_DxdL.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-22-13-41-59.bpo-33331.s_DxdL.rst deleted file mode 100644 index 95311a61e058..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-22-13-41-59.bpo-33331.s_DxdL.rst +++ /dev/null @@ -1 +0,0 @@ -Modules imported last are now cleared first at interpreter shutdown. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-24-22-31-04.bpo-33128.g2yLuf.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-24-22-31-04.bpo-33128.g2yLuf.rst deleted file mode 100644 index 66b98cdf51cf..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-24-22-31-04.bpo-33128.g2yLuf.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a bug that causes PathFinder to appear twice on sys.meta_path. Patch by -Pablo Galindo Salgado. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-25-20-44-42.bpo-28055.f49kfC.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-25-20-44-42.bpo-28055.f49kfC.rst deleted file mode 100644 index c7d849906fc9..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-25-20-44-42.bpo-28055.f49kfC.rst +++ /dev/null @@ -1 +0,0 @@ -Fix unaligned accesses in siphash24(). Patch by Rolf Eike Beer. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-04-26-22-48-28.bpo-33363.8RCnN2.rst b/Misc/NEWS.d/next/Core and Builtins/2018-04-26-22-48-28.bpo-33363.8RCnN2.rst deleted file mode 100644 index ad8d24895343..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-04-26-22-48-28.bpo-33363.8RCnN2.rst +++ /dev/null @@ -1,2 +0,0 @@ -Raise a SyntaxError for ``async with`` and ``async for`` statements outside -of async functions. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-02-08-36-03.bpo-33391.z4a7rb.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-02-08-36-03.bpo-33391.z4a7rb.rst deleted file mode 100644 index ab17aa408c06..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-02-08-36-03.bpo-33391.z4a7rb.rst +++ /dev/null @@ -1 +0,0 @@ -Fix a leak in set_symmetric_difference(). diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-05-23-26-58.bpo-20104.tDBciE.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-05-23-26-58.bpo-20104.tDBciE.rst deleted file mode 100644 index 1d725ba7eb71..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-05-23-26-58.bpo-20104.tDBciE.rst +++ /dev/null @@ -1,2 +0,0 @@ -Added support for the `setpgroup`, `resetids`, `setsigmask`, `setsigdef` and -`scheduler` parameters of `posix_spawn`. Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-13-01-26-18.bpo-33475.rI0y1U.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-13-01-26-18.bpo-33475.rI0y1U.rst deleted file mode 100644 index cd714b9d1e89..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-13-01-26-18.bpo-33475.rI0y1U.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed miscellaneous bugs in converting annotations to strings and optimized -parentheses in the string representation. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-14-11-00-00.bpo-31849.EmHaH4.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-14-11-00-00.bpo-31849.EmHaH4.rst deleted file mode 100644 index 876a3cf0aa13..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-14-11-00-00.bpo-31849.EmHaH4.rst +++ /dev/null @@ -1 +0,0 @@ -Fix signed/unsigned comparison warning in pyhash.c. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-14-17-31-02.bpo-33509.pIUfTd.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-14-17-31-02.bpo-33509.pIUfTd.rst deleted file mode 100644 index 3d80a8c7f3eb..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-14-17-31-02.bpo-33509.pIUfTd.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix module_globals parameter of warnings.warn_explicit(): don't crash if -module_globals is not a dict. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-14-18-54-03.bpo-25711.9xfq-v.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-14-18-54-03.bpo-25711.9xfq-v.rst deleted file mode 100644 index 07f9e722baf5..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-14-18-54-03.bpo-25711.9xfq-v.rst +++ /dev/null @@ -1 +0,0 @@ -The :mod:`zipimport` module has been rewritten in pure Python. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-15-10-48-47.bpo-33499.uBEc06.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-15-10-48-47.bpo-33499.uBEc06.rst deleted file mode 100644 index f25a8d099aac..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-15-10-48-47.bpo-33499.uBEc06.rst +++ /dev/null @@ -1,3 +0,0 @@ -Add :envvar:`PYTHONPYCACHEPREFIX` environment variable and :option:`-X` -``pycache_prefix`` command-line option to set an alternate root directory for -writing module bytecode cache files. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-17-13-06-36.bpo-23722.xisqZk.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-17-13-06-36.bpo-23722.xisqZk.rst deleted file mode 100644 index dfd1e79786ab..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-17-13-06-36.bpo-23722.xisqZk.rst +++ /dev/null @@ -1,4 +0,0 @@ -A :exc:`RuntimeError` is now raised when the custom metaclass doesn't -provide the ``__classcell__`` entry in the namespace passed to -``type.__new__``. A :exc:`DeprecationWarning` was emitted in Python -3.6--3.7. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-23-17-18-02.bpo-33462.gurbpbrhe.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-23-17-18-02.bpo-33462.gurbpbrhe.rst deleted file mode 100644 index ed1f0342731e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-23-17-18-02.bpo-33462.gurbpbrhe.rst +++ /dev/null @@ -1 +0,0 @@ -Make dict and dict views reversible. Patch by R?mi Lapeyre. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-23-20-46-14.bpo-33622.xPucO9.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-23-20-46-14.bpo-33622.xPucO9.rst deleted file mode 100644 index e589b4503229..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-23-20-46-14.bpo-33622.xPucO9.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fixed a leak when the garbage collector fails to add an object with the -``__del__`` method or referenced by it into the :data:`gc.garbage` list. -:c:func:`PyGC_Collect` can now be called when an exception is set and -preserves it. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-28-12-28-53.bpo-30654.9fDJye.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-28-12-28-53.bpo-30654.9fDJye.rst deleted file mode 100644 index 01c27daa8f88..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-28-12-28-53.bpo-30654.9fDJye.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed reset of the SIGINT handler to SIG_DFL on interpreter shutdown even -when there was a custom handler set previously. Patch by Philipp Kerling. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-28-21-17-31.bpo-33597.r0ToM4.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-28-21-17-31.bpo-33597.r0ToM4.rst deleted file mode 100644 index b6baab2526ad..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-28-21-17-31.bpo-33597.r0ToM4.rst +++ /dev/null @@ -1 +0,0 @@ -Reduce ``PyGC_Head`` size from 3 words to 2 words. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-05-31-14-50-04.bpo-33706.ztlH04.rst b/Misc/NEWS.d/next/Core and Builtins/2018-05-31-14-50-04.bpo-33706.ztlH04.rst deleted file mode 100644 index d3b8477b2197..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-05-31-14-50-04.bpo-33706.ztlH04.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a crash in Python initialization when parsing the command line options. -Thanks Christoph Gohlke for the bug report and the fix! diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-05-15-49-02.bpo-30167.e956hA.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-05-15-49-02.bpo-30167.e956hA.rst deleted file mode 100644 index 41bdec899b75..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-05-15-49-02.bpo-30167.e956hA.rst +++ /dev/null @@ -1,2 +0,0 @@ -``PyRun_SimpleFileExFlags`` removes ``__cached__`` from module in addition -to ``__file__``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-06-23-24-40.bpo-33786.lBvT8z.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-06-23-24-40.bpo-33786.lBvT8z.rst deleted file mode 100644 index 57deefe339b5..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-06-23-24-40.bpo-33786.lBvT8z.rst +++ /dev/null @@ -1 +0,0 @@ -Fix asynchronous generators to handle GeneratorExit in athrow() correctly diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-07-18-34-19.bpo-33738.ODZS7a.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-07-18-34-19.bpo-33738.ODZS7a.rst deleted file mode 100644 index 2e0c43c62256..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-07-18-34-19.bpo-33738.ODZS7a.rst +++ /dev/null @@ -1,4 +0,0 @@ -Seven macro incompatibilities with the Limited API were fixed, and the -macros :c:func:`PyIter_Check`, :c:func:`PyIndex_Check` and -:c:func:`PyExceptionClass_Name` were added as functions. -A script for automatic macro checks was added. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-07-20-18-38.bpo-33803.n-Nq6_.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-07-20-18-38.bpo-33803.n-Nq6_.rst deleted file mode 100644 index 9cb8457ac446..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-07-20-18-38.bpo-33803.n-Nq6_.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a crash in hamt.c caused by enabling GC tracking for an object that -hadn't all of its fields set to NULL. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-15-19-39-06.bpo-33824.DfWHT3.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-15-19-39-06.bpo-33824.DfWHT3.rst deleted file mode 100644 index fda2ea7423dd..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-15-19-39-06.bpo-33824.DfWHT3.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix "LC_ALL=C python3.7 -V": reset properly the command line parser when the -encoding changes after reading the Python configuration. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-21-21-42-15.bpo-1617161.tSo2yM.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-21-21-42-15.bpo-1617161.tSo2yM.rst deleted file mode 100644 index bd19944075c1..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-21-21-42-15.bpo-1617161.tSo2yM.rst +++ /dev/null @@ -1,7 +0,0 @@ -The hash of :class:`BuiltinMethodType` instances (methods of built-in classes) -now depends on the hash of the identity of *__self__* instead of its value. -The hash and equality of :class:`ModuleType` and :class:`MethodWrapperType` -instances (methods of user-defined classes and some methods of built-in classes -like ``str.__add__``) now depend on the hash and equality of the identity -of *__self__* instead of its value. :class:`MethodWrapperType` instances no -longer support ordering. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-23-15-32-02.bpo-33451.sWN-1l.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-23-15-32-02.bpo-33451.sWN-1l.rst deleted file mode 100644 index 202fb38a370c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-23-15-32-02.bpo-33451.sWN-1l.rst +++ /dev/null @@ -1 +0,0 @@ -Close directly executed pyc files before calling ``PyEval_EvalCode()``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-25-16-54-05.bpo-24596.Rkwova.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-25-16-54-05.bpo-24596.Rkwova.rst deleted file mode 100644 index 1b33fd4a44d7..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-25-16-54-05.bpo-24596.Rkwova.rst +++ /dev/null @@ -1,2 +0,0 @@ -Decref the module object in :c:func:`PyRun_SimpleFileExFlags` before calling -:c:func:`PyErr_Print()`. Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-25-20-42-44.bpo-33956.1qoTwD.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-25-20-42-44.bpo-33956.1qoTwD.rst deleted file mode 100644 index f8140e1959ff..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-25-20-42-44.bpo-33956.1qoTwD.rst +++ /dev/null @@ -1 +0,0 @@ -Update vendored Expat library copy to version 2.2.5. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-27-18-56-41.bpo-33985.ILJ3Af.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-27-18-56-41.bpo-33985.ILJ3Af.rst deleted file mode 100644 index 07c8f9078686..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-06-27-18-56-41.bpo-33985.ILJ3Af.rst +++ /dev/null @@ -1 +0,0 @@ -Implement contextvars.ContextVar.name attribute. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-03-19-00-10.bpo-33418.cfGm3n.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-03-19-00-10.bpo-33418.cfGm3n.rst deleted file mode 100644 index 8f136c6a35c1..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-03-19-00-10.bpo-33418.cfGm3n.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix potential memory leak in function object when it creates reference -cycle. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-05-15-51-29.bpo-34042.Gr9XUH.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-05-15-51-29.bpo-34042.Gr9XUH.rst deleted file mode 100644 index fd1730d4308b..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-05-15-51-29.bpo-34042.Gr9XUH.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix dict.copy() to maintain correct total refcount (as reported by -sys.gettotalrefcount()). diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-07-20-15-34.bpo-34066.y9vs6s.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-07-20-15-34.bpo-34066.y9vs6s.rst deleted file mode 100644 index b12afad8da87..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-07-20-15-34.bpo-34066.y9vs6s.rst +++ /dev/null @@ -1,2 +0,0 @@ -Disabled interruption by Ctrl-C between calling ``open()`` and entering a -**with** block in ``with open()``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-10-11-24-16.bpo-34080.8t7PtO.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-10-11-24-16.bpo-34080.8t7PtO.rst deleted file mode 100644 index cfc53cca4879..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-10-11-24-16.bpo-34080.8t7PtO.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed a memory leak in the compiler when it raised some uncommon errors -during tokenizing. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-13-22-09-55.bpo-34087.I1Bxfc.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-13-22-09-55.bpo-34087.I1Bxfc.rst deleted file mode 100644 index 5147395fa217..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-13-22-09-55.bpo-34087.I1Bxfc.rst +++ /dev/null @@ -1 +0,0 @@ -Fix buffer overflow while converting unicode to numeric values. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-14-08-58-46.bpo-34068.9xfM55.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-14-08-58-46.bpo-34068.9xfM55.rst deleted file mode 100644 index 0ed8ff91925a..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-14-08-58-46.bpo-34068.9xfM55.rst +++ /dev/null @@ -1,3 +0,0 @@ -In :meth:`io.IOBase.close`, ensure that the :attr:`~io.IOBase.closed` -attribute is not set with a live exception. Patch by Zackery Spytz and Serhiy -Storchaka. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-14-14-01-37.bpo-24618.iTKjD_.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-14-14-01-37.bpo-24618.iTKjD_.rst deleted file mode 100644 index 180b56501211..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-14-14-01-37.bpo-24618.iTKjD_.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed reading invalid memory when create the code object with too small -varnames tuple or too large argument counts. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-16-20-55-29.bpo-34126.mBVmgc.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-16-20-55-29.bpo-34126.mBVmgc.rst deleted file mode 100644 index 7cfc439cf887..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-16-20-55-29.bpo-34126.mBVmgc.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix crashes when profiling certain invalid calls of unbound methods. -Patch by Jeroen Demeyer. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-18-08-36-58.bpo-34141.Fo7Q5r.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-18-08-36-58.bpo-34141.Fo7Q5r.rst deleted file mode 100644 index 328b10929be0..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-18-08-36-58.bpo-34141.Fo7Q5r.rst +++ /dev/null @@ -1 +0,0 @@ -Optimized pickling atomic types (None, bool, int, float, bytes, str). diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-23-16-34-03.bpo-34125.jCl2Q2.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-23-16-34-03.bpo-34125.jCl2Q2.rst deleted file mode 100644 index e6036b4d41e5..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-23-16-34-03.bpo-34125.jCl2Q2.rst +++ /dev/null @@ -1 +0,0 @@ -Profiling of unbound built-in methods now works when ``**kwargs`` is given. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-23-21-49-05.bpo-34149.WSV-_g.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-23-21-49-05.bpo-34149.WSV-_g.rst deleted file mode 100644 index 9672bcf8eb33..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-23-21-49-05.bpo-34149.WSV-_g.rst +++ /dev/null @@ -1 +0,0 @@ -Fix min and max functions to get default behavior when key is None. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-24-12-54-57.bpo-33237.O95mps.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-24-12-54-57.bpo-33237.O95mps.rst deleted file mode 100644 index 04bd86c3dd6a..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-24-12-54-57.bpo-33237.O95mps.rst +++ /dev/null @@ -1 +0,0 @@ -Improved :exc:`AttributeError` message for partially initialized module. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-25-19-23-33.bpo-34170.v1h_H2.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-25-19-23-33.bpo-34170.v1h_H2.rst deleted file mode 100644 index 3eae9039bdc1..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-25-19-23-33.bpo-34170.v1h_H2.rst +++ /dev/null @@ -1,2 +0,0 @@ --X dev: it is now possible to override the memory allocator using -PYTHONMALLOC even if the developer mode is enabled. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-25-20-26-02.bpo-34151.Q2pK9Q.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-25-20-26-02.bpo-34151.Q2pK9Q.rst deleted file mode 100644 index 4f6308e78845..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-25-20-26-02.bpo-34151.Q2pK9Q.rst +++ /dev/null @@ -1,2 +0,0 @@ -Performance of list concatenation, repetition and slicing operations is -slightly improved. Patch by Sergey Fedoseev. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-27-20-04-52.bpo-34100.ypJQX1.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-27-20-04-52.bpo-34100.ypJQX1.rst deleted file mode 100644 index dae318ded493..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-27-20-04-52.bpo-34100.ypJQX1.rst +++ /dev/null @@ -1,2 +0,0 @@ -Compiler now merges constants in tuples and frozensets recursively. Code -attributes like ``co_names`` are merged too. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-07-28-10-34-00.bpo-34113.eZ5FWV.rst b/Misc/NEWS.d/next/Core and Builtins/2018-07-28-10-34-00.bpo-34113.eZ5FWV.rst deleted file mode 100644 index f4c80f9b8a97..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-07-28-10-34-00.bpo-34113.eZ5FWV.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed crash on debug builds when opcode stack was adjusted with negative -numbers. Patch by Constantin Petrisor. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-02-22-34-59.bpo-34320.hNshAA.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-02-22-34-59.bpo-34320.hNshAA.rst deleted file mode 100644 index ce5b3397e65f..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-02-22-34-59.bpo-34320.hNshAA.rst +++ /dev/null @@ -1 +0,0 @@ -Fix ``dict(od)`` didn't copy iteration order of OrderedDict. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-09-18-42-49.bpo-34353.GIOm_8.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-09-18-42-49.bpo-34353.GIOm_8.rst deleted file mode 100644 index 679914120a43..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-09-18-42-49.bpo-34353.GIOm_8.rst +++ /dev/null @@ -1,2 +0,0 @@ -Added the "socket" option in the `stat.filemode()` Python implementation to -match the C implementation. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-10-15-05-00.bpo-34377.EJMMY4.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-10-15-05-00.bpo-34377.EJMMY4.rst deleted file mode 100644 index 382a799b0bda..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-10-15-05-00.bpo-34377.EJMMY4.rst +++ /dev/null @@ -1,3 +0,0 @@ -Update valgrind suppression list to use -``_PyObject_Free``/``_PyObject_Realloc`` -instead of ``PyObject_Free``/``PyObject_Realloc``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-12-16-03-58.bpo-33073.XWu1Jh.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-12-16-03-58.bpo-33073.XWu1Jh.rst deleted file mode 100644 index ce9b6129f96e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-12-16-03-58.bpo-33073.XWu1Jh.rst +++ /dev/null @@ -1 +0,0 @@ -Added as_integer_ratio to ints to make them more interoperable with floats. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-14-03-52-43.bpo-34400.AJD0bz.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-14-03-52-43.bpo-34400.AJD0bz.rst deleted file mode 100644 index 768f5a26c1a6..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-14-03-52-43.bpo-34400.AJD0bz.rst +++ /dev/null @@ -1 +0,0 @@ -Fix undefined behavior in parsetok.c. Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-14-22-35-19.bpo-34408.aomWYW.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-14-22-35-19.bpo-34408.aomWYW.rst deleted file mode 100644 index aacafd0d4c27..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-14-22-35-19.bpo-34408.aomWYW.rst +++ /dev/null @@ -1 +0,0 @@ -Prevent a null pointer dereference and resource leakage in ``PyInterpreterState_New()``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-15-20-46-49.bpo-12458.ApHbx5.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-15-20-46-49.bpo-12458.ApHbx5.rst deleted file mode 100644 index 7479654fad7a..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-15-20-46-49.bpo-12458.ApHbx5.rst +++ /dev/null @@ -1,3 +0,0 @@ -Tracebacks show now correct line number for subexpressions in multiline -expressions. Tracebacks show now the line number of the first line for -multiline expressions instead of the line number of the last subexpression. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-01-45-01.bpo-34523.aUUkc3.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-28-01-45-01.bpo-34523.aUUkc3.rst deleted file mode 100644 index 333939d821d0..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-01-45-01.bpo-34523.aUUkc3.rst +++ /dev/null @@ -1,2 +0,0 @@ -The Python filesystem encoding is now read earlier during the Python -initialization. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-10-49-55.bpo-34403.4Q3LzP.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-28-10-49-55.bpo-34403.4Q3LzP.rst deleted file mode 100644 index d70be82b0ab4..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-10-49-55.bpo-34403.4Q3LzP.rst +++ /dev/null @@ -1,3 +0,0 @@ -On HP-UX with C or POSIX locale, sys.getfilesystemencoding() now returns -"ascii" instead of "roman8" (when the UTF-8 Mode is disabled and the C locale -is not coerced). diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-52-13.bpo-34527.sh5MQJ.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-52-13.bpo-34527.sh5MQJ.rst deleted file mode 100644 index 280a8922edc3..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-52-13.bpo-34527.sh5MQJ.rst +++ /dev/null @@ -1,2 +0,0 @@ -The UTF-8 Mode is now also enabled by the "POSIX" locale, not only by the "C" -locale. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-53-39.bpo-34527.aBEX9b.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-53-39.bpo-34527.aBEX9b.rst deleted file mode 100644 index 9fce794305cc..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-11-53-39.bpo-34527.aBEX9b.rst +++ /dev/null @@ -1,3 +0,0 @@ -On FreeBSD, Py_DecodeLocale() and Py_EncodeLocale() now also forces the -ASCII encoding if the LC_CTYPE locale is "POSIX", not only if the LC_CTYPE -locale is "C". diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-17-48-40.bpo-34485.aFwck2.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-28-17-48-40.bpo-34485.aFwck2.rst deleted file mode 100644 index f6cd9515f2af..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-17-48-40.bpo-34485.aFwck2.rst +++ /dev/null @@ -1,5 +0,0 @@ -Python now gets the locale encoding with C code to initialize the encoding -of standard streams like sys.stdout. Moreover, the encoding is now -initialized to the Python codec name to get a normalized encoding name and -to ensure that the codec is loaded. The change avoids importing _bootlocale -and _locale modules at startup by default. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-23-01-14.bpo-34485.dq1Kqk.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-28-23-01-14.bpo-34485.dq1Kqk.rst deleted file mode 100644 index 5ca373aeab6d..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-28-23-01-14.bpo-34485.dq1Kqk.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix the error handler of standard streams like sys.stdout: -PYTHONIOENCODING=":" is now ignored instead of setting the error handler to -"strict". diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-29-09-27-47.bpo-34485.5aJCmw.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-29-09-27-47.bpo-34485.5aJCmw.rst deleted file mode 100644 index 893e4f573f16..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-29-09-27-47.bpo-34485.5aJCmw.rst +++ /dev/null @@ -1,3 +0,0 @@ -Standard streams like sys.stdout now use the "surrogateescape" error -handler, instead of "strict", on the POSIX locale (when the C locale is not -coerced and the UTF-8 Mode is disabled). diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-08-29-11-04-19.bpo-34485.c2AFdp.rst b/Misc/NEWS.d/next/Core and Builtins/2018-08-29-11-04-19.bpo-34485.c2AFdp.rst deleted file mode 100644 index f66a4f26f593..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-08-29-11-04-19.bpo-34485.c2AFdp.rst +++ /dev/null @@ -1,3 +0,0 @@ -On Windows, the LC_CTYPE is now set to the user preferred locale at startup. -Previously, the LC_CTYPE locale was "C" at startup, but changed when calling -setlocale(LC_CTYPE, "") or setlocale(LC_ALL, ""). diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-05-22-56-52.bpo-34588.UIuPmL.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-05-22-56-52.bpo-34588.UIuPmL.rst deleted file mode 100644 index ec7a57f23ad2..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-05-22-56-52.bpo-34588.UIuPmL.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix an off-by-one in the recursive call pruning feature of traceback -formatting. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-15-19-37.bpo-1621.7o19yG.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-11-15-19-37.bpo-1621.7o19yG.rst deleted file mode 100644 index 4047ff3bfe86..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-15-19-37.bpo-1621.7o19yG.rst +++ /dev/null @@ -1,2 +0,0 @@ -Do not assume signed integer overflow behavior (C undefined behavior) when -performing set hash table resizing. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-17-25-44.bpo-34637.HSLqY4.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-11-17-25-44.bpo-34637.HSLqY4.rst deleted file mode 100644 index c22359cc3780..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-17-25-44.bpo-34637.HSLqY4.rst +++ /dev/null @@ -1 +0,0 @@ -Make the *start* argument to *sum()* visible as a keyword argument. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-12-33.bpo-34641.gFBCc9.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-12-33.bpo-34641.gFBCc9.rst deleted file mode 100644 index 9b6eb24c138c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-12-33.bpo-34641.gFBCc9.rst +++ /dev/null @@ -1,2 +0,0 @@ -Further restrict the syntax of the left-hand side of keyword arguments in -function calls. In particular, ``f((keyword)=arg)`` is now disallowed. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-50-40.bpo-32236.3RupnN.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-50-40.bpo-32236.3RupnN.rst deleted file mode 100644 index 6fc138708c4d..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-11-23-50-40.bpo-32236.3RupnN.rst +++ /dev/null @@ -1,2 +0,0 @@ -Warn that line buffering is not supported if :func:`open` is called with -binary mode and ``buffering=1``. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-06-09.bpo-34653.z8NE-i.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-06-09.bpo-34653.z8NE-i.rst deleted file mode 100644 index 30193742a320..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-06-09.bpo-34653.z8NE-i.rst +++ /dev/null @@ -1 +0,0 @@ -Remove unused function PyParser_SimpleParseStringFilename. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-21-08.bpo-34651.v-bUeV.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-21-08.bpo-34651.v-bUeV.rst deleted file mode 100644 index 6f71bc30eb6f..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-13-12-21-08.bpo-34651.v-bUeV.rst +++ /dev/null @@ -1,3 +0,0 @@ -Only allow the main interpreter to fork. The avoids the possibility of -affecting the main interpreter, which is critical to operation of the -runtime. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-15-19-32-34.bpo-34683.msCiQE.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-15-19-32-34.bpo-34683.msCiQE.rst deleted file mode 100644 index 43bf61c5b86b..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-15-19-32-34.bpo-34683.msCiQE.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed a bug where some SyntaxError error pointed to locations that were off-by-one. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-19-06-57-34.bpo-34735.-3mrSJ.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-19-06-57-34.bpo-34735.-3mrSJ.rst deleted file mode 100644 index 8de08ec38637..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-19-06-57-34.bpo-34735.-3mrSJ.rst +++ /dev/null @@ -1 +0,0 @@ -Fix a memory leak in Modules/timemodule.c. Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-20-15-41-58.bpo-34751.Yiv0pV.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-20-15-41-58.bpo-34751.Yiv0pV.rst deleted file mode 100644 index b2ba5144fe52..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-20-15-41-58.bpo-34751.Yiv0pV.rst +++ /dev/null @@ -1,4 +0,0 @@ -The hash function for tuples is now based on xxHash -which gives better collision results on (formerly) pathological cases. -Additionally, on 64-bit systems it improves tuple hashes in general. -Patch by Jeroen Demeyer with substantial contributions by Tim Peters. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-21-11-06-56.bpo-34762.1nN53m.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-21-11-06-56.bpo-34762.1nN53m.rst deleted file mode 100644 index 0cd47a40dd35..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-21-11-06-56.bpo-34762.1nN53m.rst +++ /dev/null @@ -1 +0,0 @@ -Fix contextvars C API to use PyObject* pointer types. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-24-17-51-15.bpo-30156.pH0j5j.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-24-17-51-15.bpo-30156.pH0j5j.rst deleted file mode 100644 index 7086ff4e2d99..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-24-17-51-15.bpo-30156.pH0j5j.rst +++ /dev/null @@ -1,4 +0,0 @@ -The C function ``property_descr_get()`` uses a "cached" tuple to optimize -function calls. But this tuple can be discovered in debug mode with -:func:`sys.getobjects()`. Remove the optimization, it's not really worth it -and it causes 3 different crashes last years. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-27-11-10-02.bpo-34824.VLlCaU.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-27-11-10-02.bpo-34824.VLlCaU.rst deleted file mode 100644 index fe95b8973c09..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-27-11-10-02.bpo-34824.VLlCaU.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a possible null pointer dereference in Modules/_ssl.c. Patch by Zackery -Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-30-11-19-55.bpo-34850.CbgDwb.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-30-11-19-55.bpo-34850.CbgDwb.rst deleted file mode 100644 index bc5d5d1d5808..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-30-11-19-55.bpo-34850.CbgDwb.rst +++ /dev/null @@ -1,5 +0,0 @@ -The compiler now produces a :exc:`SyntaxWarning` when identity checks -(``is`` and ``is not``) are used with certain types of literals -(e.g. strings, ints). These can often work by accident in CPython, -but are not guaranteed by the language spec. The warning advises users -to use equality tests (``==`` and ``!=``) instead. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-09-30-19-27-13.bpo-34854.6TKTcB.rst b/Misc/NEWS.d/next/Core and Builtins/2018-09-30-19-27-13.bpo-34854.6TKTcB.rst deleted file mode 100644 index 4e04e1f157cd..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-09-30-19-27-13.bpo-34854.6TKTcB.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed a crash in compiling string annotations containing a lambda with a -keyword-only argument that doesn't have a default value. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-01-10-41-53.bpo-32912.JeIOdM.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-01-10-41-53.bpo-32912.JeIOdM.rst deleted file mode 100644 index 9cb35998a2b5..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-01-10-41-53.bpo-32912.JeIOdM.rst +++ /dev/null @@ -1,2 +0,0 @@ -A :exc:`SyntaxWarning` is now emitted instead of a :exc:`DeprecationWarning` -for invalid escape sequences in string and bytes literals. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-02-09-10-47.bpo-34784.07hdgD.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-02-09-10-47.bpo-34784.07hdgD.rst deleted file mode 100644 index 296fc149339b..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-02-09-10-47.bpo-34784.07hdgD.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix the implementation of PyStructSequence_NewType in order to create heap -allocated StructSequences. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-02-22-55-11.bpo-34879.7VNH2a.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-02-22-55-11.bpo-34879.7VNH2a.rst deleted file mode 100644 index 5775a219a273..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-02-22-55-11.bpo-34879.7VNH2a.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a possible null pointer dereference in bytesobject.c. Patch by Zackery -Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-06-14-02-51.bpo-34876.oBKBA4.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-06-14-02-51.bpo-34876.oBKBA4.rst deleted file mode 100644 index 4275c029f3f4..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-06-14-02-51.bpo-34876.oBKBA4.rst +++ /dev/null @@ -1,6 +0,0 @@ -The *lineno* and *col_offset* attributes of the AST for decorated function -and class refer now to the position of the corresponding ``def``, ``async -def`` and ``class`` instead of the position of the first decorator. This -leads to more correct line reporting in tracing. This is the only case when -the position of child AST nodes can preceed the position of the parent AST -node. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-13-16-42-03.bpo-34973.B5M-3g.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-13-16-42-03.bpo-34973.B5M-3g.rst deleted file mode 100644 index 6e403cd4cec6..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-13-16-42-03.bpo-34973.B5M-3g.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed crash in :func:`bytes` when the :class:`list` argument is mutated -while it is iterated. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-13-17-40-15.bpo-34939.0gpxlJ.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-13-17-40-15.bpo-34939.0gpxlJ.rst deleted file mode 100644 index b588f72d903b..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-13-17-40-15.bpo-34939.0gpxlJ.rst +++ /dev/null @@ -1,2 +0,0 @@ -Allow annotated names in module namespace that are declared global before -the annotation happens. Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-13-22-24-19.bpo-34974.7LgTc2.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-13-22-24-19.bpo-34974.7LgTc2.rst deleted file mode 100644 index 2a7e773648ec..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-13-22-24-19.bpo-34974.7LgTc2.rst +++ /dev/null @@ -1,3 +0,0 @@ -:class:`bytes` and :class:`bytearray` constructors no longer convert -unexpected exceptions (e.g. :exc:`MemoryError` and :exc:`KeyboardInterrupt`) -to :exc:`TypeError`. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-14-17-26-41.bpo-34983.l8XaZd.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-14-17-26-41.bpo-34983.l8XaZd.rst deleted file mode 100644 index dd76b63db119..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-14-17-26-41.bpo-34983.l8XaZd.rst +++ /dev/null @@ -1,2 +0,0 @@ -Expose :meth:`symtable.Symbol.is_nonlocal` in the symtable module. Patch by -Pablo Galindo. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-20-10-26-15.bpo-35029.t4tZcQ.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-20-10-26-15.bpo-35029.t4tZcQ.rst deleted file mode 100644 index 3644c4410fba..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-20-10-26-15.bpo-35029.t4tZcQ.rst +++ /dev/null @@ -1,2 +0,0 @@ -:exc:`SyntaxWarning` raised as an exception at code generation time will be -now replaced with a :exc:`SyntaxError` for better error reporting. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-20-18-05-58.bpo-16806.zr3A9N.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-20-18-05-58.bpo-16806.zr3A9N.rst deleted file mode 100644 index 1cdddeb5c83e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-20-18-05-58.bpo-16806.zr3A9N.rst +++ /dev/null @@ -1 +0,0 @@ -Fix ``lineno`` and ``col_offset`` for multi-line string tokens. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-21-17-43-48.bpo-29743.aeCcKR.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-21-17-43-48.bpo-29743.aeCcKR.rst deleted file mode 100644 index 9e79bb388e85..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-21-17-43-48.bpo-29743.aeCcKR.rst +++ /dev/null @@ -1,4 +0,0 @@ -Raise :exc:`ValueError` instead of :exc:`OverflowError` in case of a negative -``_length_`` in a :class:`ctypes.Array` subclass. Also raise :exc:`TypeError` -instead of :exc:`AttributeError` for non-integer ``_length_``. -Original patch by Oren Milman. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-23-15-03-53.bpo-35050.49wraS.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-23-15-03-53.bpo-35050.49wraS.rst deleted file mode 100644 index 9a33416089a2..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-23-15-03-53.bpo-35050.49wraS.rst +++ /dev/null @@ -1 +0,0 @@ -:mod:`socket`: Fix off-by-one bug in length check for ``AF_ALG`` name and type. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-10-25-20-53-32.bpo-29341.jH-AMF.rst b/Misc/NEWS.d/next/Core and Builtins/2018-10-25-20-53-32.bpo-29341.jH-AMF.rst deleted file mode 100644 index 954ce8cbc09a..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-10-25-20-53-32.bpo-29341.jH-AMF.rst +++ /dev/null @@ -1,2 +0,0 @@ -Clarify in the docstrings of :mod:`os` methods that path-like objects are also accepted -as input parameters. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-03-10-37-29.bpo-28401.RprDIg.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-03-10-37-29.bpo-28401.RprDIg.rst deleted file mode 100644 index 8fbba7826df9..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-03-10-37-29.bpo-28401.RprDIg.rst +++ /dev/null @@ -1,3 +0,0 @@ -Debug builds will no longer to attempt to import extension modules built -for the ABI as they were never compatible to begin with. -Patch by Stefano Rivera. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-04-18-13-40.bpo-34022.U3btVj.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-04-18-13-40.bpo-34022.U3btVj.rst deleted file mode 100644 index 64b362dd8dad..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-04-18-13-40.bpo-34022.U3btVj.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix handling of hash-based bytecode files in :mod:`zipimport`. -Patch by Elvis Pranskevichus. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-05-21-19-05.bpo-35169._FyPI2.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-05-21-19-05.bpo-35169._FyPI2.rst deleted file mode 100644 index 63c28f423ac2..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-05-21-19-05.bpo-35169._FyPI2.rst +++ /dev/null @@ -1 +0,0 @@ -Improved error messages for forbidden assignments. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-08-15-00-58.bpo-35193.HzPS6R.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-08-15-00-58.bpo-35193.HzPS6R.rst deleted file mode 100644 index dddebe167080..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-08-15-00-58.bpo-35193.HzPS6R.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix an off by one error in the bytecode peephole optimizer where it could read -bytes beyond the end of bounds of an array when removing unreachable code. -This bug was present in every release of Python 3.6 and 3.7 until now. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-12-11-38-06.bpo-35214.PCHKbX.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-12-11-38-06.bpo-35214.PCHKbX.rst deleted file mode 100644 index c7842f331698..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-12-11-38-06.bpo-35214.PCHKbX.rst +++ /dev/null @@ -1,4 +0,0 @@ -The interpreter and extension modules have had annotations added so that -they work properly under clang's Memory Sanitizer. A new configure flag ---with-memory-sanitizer has been added to make test builds of this nature -easier to perform. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-13-00-40-35.bpo-35214.OQBjph.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-13-00-40-35.bpo-35214.OQBjph.rst deleted file mode 100644 index d462c97d8040..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-13-00-40-35.bpo-35214.OQBjph.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed an out of bounds memory access when parsing a truncated unicode -escape sequence at the end of a string such as ``'\N'``. It would read -one byte beyond the end of the memory allocation. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-13-01-03-10.bpo-32492.voIdcp.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-13-01-03-10.bpo-32492.voIdcp.rst deleted file mode 100644 index 24682b14f36d..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-13-01-03-10.bpo-32492.voIdcp.rst +++ /dev/null @@ -1,2 +0,0 @@ -Speed up :class:`namedtuple` attribute access by 1.6x using a C fast-path -for the name descriptors. Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-13-14-26-54.bpo-35224.F0B6UQ.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-13-14-26-54.bpo-35224.F0B6UQ.rst deleted file mode 100644 index fe54f362aef6..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-13-14-26-54.bpo-35224.F0B6UQ.rst +++ /dev/null @@ -1 +0,0 @@ -Implement :pep:`572` (assignment expressions). Patch by Emily Morehouse. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-17-10-18-29.bpo-35269.gjm1LO.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-17-10-18-29.bpo-35269.gjm1LO.rst deleted file mode 100644 index 0076346f4b6c..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-17-10-18-29.bpo-35269.gjm1LO.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a possible segfault involving a newly-created coroutine. Patch by -Zackery Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-20-22-33-38.bpo-33954.RzSngM.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-20-22-33-38.bpo-33954.RzSngM.rst deleted file mode 100644 index 9bfbe1644e16..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-20-22-33-38.bpo-33954.RzSngM.rst +++ /dev/null @@ -1,3 +0,0 @@ -For :meth:`str.format`, :meth:`float.__format__` and -:meth:`complex.__format__` methods for non-ASCII decimal point when using -the "n" formatter. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-21-14-05-51.bpo-31241.Kin10-.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-21-14-05-51.bpo-31241.Kin10-.rst deleted file mode 100644 index a859a9b0d68e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-21-14-05-51.bpo-31241.Kin10-.rst +++ /dev/null @@ -1,4 +0,0 @@ -The *lineno* and *col_offset* attributes of AST nodes for list comprehensions, -generator expressions and tuples are now point to the opening parenthesis or -square brace. For tuples without parenthesis they point to the position of -the first item. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-11-29-23-59-52.bpo-35336.8LOz4F.rst b/Misc/NEWS.d/next/Core and Builtins/2018-11-29-23-59-52.bpo-35336.8LOz4F.rst deleted file mode 100644 index 28f8f9bd4db7..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-11-29-23-59-52.bpo-35336.8LOz4F.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix PYTHONCOERCECLOCALE=1 environment variable: only coerce the C locale -if the LC_CTYPE locale is "C". diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-01-19-20-53.bpo-35372.RwVJjZ.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-01-19-20-53.bpo-35372.RwVJjZ.rst deleted file mode 100644 index dc2de44b4f63..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-01-19-20-53.bpo-35372.RwVJjZ.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed the code page decoder for input longer than 2 GiB containing -undecodable bytes. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-03-21-20-24.bpo-35357.rhhoiC.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-03-21-20-24.bpo-35357.rhhoiC.rst deleted file mode 100644 index 1dade5baf4e0..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-03-21-20-24.bpo-35357.rhhoiC.rst +++ /dev/null @@ -1,4 +0,0 @@ -Internal attributes' names of unittest.mock._Call and -unittest.mock.MagicProxy (name, parent & from_kall) are now prefixed with -_mock_ in order to prevent clashes with widely used object attributes. -Fixed minor typo in test function name. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-05-16-24-05.bpo-35423.UIie_O.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-05-16-24-05.bpo-35423.UIie_O.rst deleted file mode 100644 index 271ec48b3475..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-05-16-24-05.bpo-35423.UIie_O.rst +++ /dev/null @@ -1,3 +0,0 @@ -Separate the signal handling trigger in the eval loop from the "pending -calls" machinery. There is no semantic change and the difference in -performance is insignificant. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-07-02-38-01.bpo-35436.0VW7p9.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-07-02-38-01.bpo-35436.0VW7p9.rst deleted file mode 100644 index 542fe93a00eb..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-07-02-38-01.bpo-35436.0VW7p9.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix various issues with memory allocation error handling. Patch by Zackery -Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-09-13-09-39.bpo-35444.9kYn4V.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-09-13-09-39.bpo-35444.9kYn4V.rst deleted file mode 100644 index 39591f9c32dd..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-09-13-09-39.bpo-35444.9kYn4V.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed error handling in pickling methods when fail to look up builtin -"getattr". Sped up pickling iterators. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-14-18-02-34.bpo-35494.IWOPtb.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-14-18-02-34.bpo-35494.IWOPtb.rst deleted file mode 100644 index 0813b35ec87d..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-14-18-02-34.bpo-35494.IWOPtb.rst +++ /dev/null @@ -1 +0,0 @@ -Improved syntax error messages for unbalanced parentheses in f-string. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-15-00-47-41.bpo-35504.9gVuen.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-15-00-47-41.bpo-35504.9gVuen.rst deleted file mode 100644 index 622b50ca62da..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-15-00-47-41.bpo-35504.9gVuen.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed a SystemError when delete the characters_written attribute of an OSError. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-15-14-01-45.bpo-35504.JtKczP.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-15-14-01-45.bpo-35504.JtKczP.rst deleted file mode 100644 index 2a4f0f694fee..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-15-14-01-45.bpo-35504.JtKczP.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix segfaults and :exc:`SystemError`\ s when deleting certain attributes. -Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-21-13-29-30.bpo-35552.1DzQQc.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-21-13-29-30.bpo-35552.1DzQQc.rst deleted file mode 100644 index dbc00bcd75e9..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-21-13-29-30.bpo-35552.1DzQQc.rst +++ /dev/null @@ -1,3 +0,0 @@ -Format characters ``%s`` and ``%V`` in :c:func:`PyUnicode_FromFormat` and -``%s`` in :c:func:`PyBytes_FromFormat` no longer read memory past the -limit if *precision* is specified. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-22-22-19-51.bpo-35560.9vMWSP.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-22-22-19-51.bpo-35560.9vMWSP.rst deleted file mode 100644 index 01458f11088e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-22-22-19-51.bpo-35560.9vMWSP.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix an assertion error in :func:`format` in debug build for floating point -formatting with "n" format, zero padding and small width. Release build is -not impacted. Patch by Karthikeyan Singaravelan. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-30-15-36-23.bpo-35214.GWDQcv.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-30-15-36-23.bpo-35214.GWDQcv.rst deleted file mode 100644 index fa61f78a9328..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-30-15-36-23.bpo-35214.GWDQcv.rst +++ /dev/null @@ -1,2 +0,0 @@ -clang Memory Sanitizer build instrumentation was added to work around false -positives from posix, socket, time, test_io, and test_faulthandler. diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-12-31-02-37-20.bpo-35623.24AQhY.rst b/Misc/NEWS.d/next/Core and Builtins/2018-12-31-02-37-20.bpo-35623.24AQhY.rst deleted file mode 100644 index 6e3df4dc5d4e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2018-12-31-02-37-20.bpo-35623.24AQhY.rst +++ /dev/null @@ -1 +0,0 @@ -Fix a crash when sorting very long lists. Patch by Stephan Hohe. diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-01-05-18-39-49.bpo-35634.nVP_gs.rst b/Misc/NEWS.d/next/Core and Builtins/2019-01-05-18-39-49.bpo-35634.nVP_gs.rst deleted file mode 100644 index 24e578960654..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2019-01-05-18-39-49.bpo-35634.nVP_gs.rst +++ /dev/null @@ -1,3 +0,0 @@ -``func(**kwargs)`` will now raise an error when ``kwargs`` is a mapping -containing multiple entries with the same key. An error was already raised -when other keyword arguments are passed before ``**kwargs`` since Python 3.6. diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-01-12-23-33-04.bpo-35720.LELKQx.rst b/Misc/NEWS.d/next/Core and Builtins/2019-01-12-23-33-04.bpo-35720.LELKQx.rst deleted file mode 100644 index 9c57ebcb625e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2019-01-12-23-33-04.bpo-35720.LELKQx.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed a minor memory leak in pymain_parse_cmdline_impl function in Modules/main.c \ No newline at end of file diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-01-19-19-41-53.bpo-33416.VDeOU5.rst b/Misc/NEWS.d/next/Core and Builtins/2019-01-19-19-41-53.bpo-33416.VDeOU5.rst deleted file mode 100644 index 2e618e4f0e1f..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2019-01-19-19-41-53.bpo-33416.VDeOU5.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add end line and end column position information to the Python AST nodes. -This is a C-level backwards incompatible change. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-01-22-18-50-21.bpo-35713.bTeUsa.rst b/Misc/NEWS.d/next/Core and Builtins/2019-01-22-18-50-21.bpo-35713.bTeUsa.rst deleted file mode 100644 index 67e766fa075b..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2019-01-22-18-50-21.bpo-35713.bTeUsa.rst +++ /dev/null @@ -1,2 +0,0 @@ -Reorganize Python initialization to get working exceptions and sys.stderr -earlier. diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-01-22-19-17-27.bpo-35766.gh1tHZ.rst b/Misc/NEWS.d/next/Core and Builtins/2019-01-22-19-17-27.bpo-35766.gh1tHZ.rst deleted file mode 100644 index 29c5f34d6a3e..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2019-01-22-19-17-27.bpo-35766.gh1tHZ.rst +++ /dev/null @@ -1 +0,0 @@ -Add the option to parse PEP 484 type comments in the ast module. (Off by default.) This is merging the key functionality of the third party fork thereof, [typed_ast](https://github.com/python/typed_ast). \ No newline at end of file diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-01-24-13-25-21.bpo-35814.r_MjA6.rst b/Misc/NEWS.d/next/Core and Builtins/2019-01-24-13-25-21.bpo-35814.r_MjA6.rst deleted file mode 100644 index 5d216b273e95..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2019-01-24-13-25-21.bpo-35814.r_MjA6.rst +++ /dev/null @@ -1,2 +0,0 @@ -Allow same right hand side expressions in annotated assignments as in normal ones. -In particular, ``x: Tuple[int, int] = 1, 2`` (without parentheses on the right) is now allowed. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-02-01-22-38-11.bpo-35877.Jrse8f.rst b/Misc/NEWS.d/next/Core and Builtins/2019-02-01-22-38-11.bpo-35877.Jrse8f.rst deleted file mode 100644 index 1fb173fe463d..000000000000 --- a/Misc/NEWS.d/next/Core and Builtins/2019-02-01-22-38-11.bpo-35877.Jrse8f.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make parenthesis optional for named expressions in while statement. Patch by -Karthikeyan Singaravelan. diff --git a/Misc/NEWS.d/next/Documentation/2017-09-13-07-14-59.bpo-31432.yAY4Z3.rst b/Misc/NEWS.d/next/Documentation/2017-09-13-07-14-59.bpo-31432.yAY4Z3.rst deleted file mode 100644 index 18e5353b2494..000000000000 --- a/Misc/NEWS.d/next/Documentation/2017-09-13-07-14-59.bpo-31432.yAY4Z3.rst +++ /dev/null @@ -1,2 +0,0 @@ -Clarify meaning of CERT_NONE, CERT_OPTIONAL, and CERT_REQUIRED flags for -ssl.SSLContext.verify_mode. diff --git a/Misc/NEWS.d/next/Documentation/2017-10-23-13-41-12.bpo-25041.iAo2gW.rst b/Misc/NEWS.d/next/Documentation/2017-10-23-13-41-12.bpo-25041.iAo2gW.rst deleted file mode 100644 index 5bb6e25db9de..000000000000 --- a/Misc/NEWS.d/next/Documentation/2017-10-23-13-41-12.bpo-25041.iAo2gW.rst +++ /dev/null @@ -1 +0,0 @@ -Document ``AF_PACKET`` in the :mod:`socket` module. diff --git a/Misc/NEWS.d/next/Documentation/2017-12-22-17-29-37.bpo-32337.eZe-ID.rst b/Misc/NEWS.d/next/Documentation/2017-12-22-17-29-37.bpo-32337.eZe-ID.rst deleted file mode 100644 index a905467cd59f..000000000000 --- a/Misc/NEWS.d/next/Documentation/2017-12-22-17-29-37.bpo-32337.eZe-ID.rst +++ /dev/null @@ -1 +0,0 @@ -Update documentation related with ``dict`` order. diff --git a/Misc/NEWS.d/next/Documentation/2018-01-13-20-30-53.bpo-8243.s98r28.rst b/Misc/NEWS.d/next/Documentation/2018-01-13-20-30-53.bpo-8243.s98r28.rst deleted file mode 100644 index a3520d05c095..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-01-13-20-30-53.bpo-8243.s98r28.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add a note about curses.addch and curses.addstr exception behavior when -writing outside a window, or pad. diff --git a/Misc/NEWS.d/next/Documentation/2018-01-25-13-58-49.bpo-30607.4dXxiq.rst b/Misc/NEWS.d/next/Documentation/2018-01-25-13-58-49.bpo-30607.4dXxiq.rst deleted file mode 100644 index 85e6303fe443..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-01-25-13-58-49.bpo-30607.4dXxiq.rst +++ /dev/null @@ -1,2 +0,0 @@ -Use the externalized ``python-docs-theme`` package when building the -documentation. diff --git a/Misc/NEWS.d/next/Documentation/2018-01-25-14-23-12.bpo-31972.w1m_8r.rst b/Misc/NEWS.d/next/Documentation/2018-01-25-14-23-12.bpo-31972.w1m_8r.rst deleted file mode 100644 index e0361df578b3..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-01-25-14-23-12.bpo-31972.w1m_8r.rst +++ /dev/null @@ -1 +0,0 @@ -Improve docstrings for `pathlib.PurePath` subclasses. diff --git a/Misc/NEWS.d/next/Documentation/2018-01-30-11-28-27.bpo-32722.frdp6A.rst b/Misc/NEWS.d/next/Documentation/2018-01-30-11-28-27.bpo-32722.frdp6A.rst deleted file mode 100644 index c4ed27ee2780..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-01-30-11-28-27.bpo-32722.frdp6A.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove the bad example in the tutorial of the Generator Expression. Patch by -St?phane Wirtel diff --git a/Misc/NEWS.d/next/Documentation/2018-02-01-10-57-24.bpo-20709.1flcnc.rst b/Misc/NEWS.d/next/Documentation/2018-02-01-10-57-24.bpo-20709.1flcnc.rst deleted file mode 100644 index b14c0f54eb3b..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-01-10-57-24.bpo-20709.1flcnc.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove the paragraph where we explain that os.utime() does not support a -directory as path under Windows. Patch by Jan-Philip Gehrcke diff --git a/Misc/NEWS.d/next/Documentation/2018-02-02-07-41-57.bpo-32614.LSqzGw.rst b/Misc/NEWS.d/next/Documentation/2018-02-02-07-41-57.bpo-32614.LSqzGw.rst deleted file mode 100644 index 9e9f3e3a74df..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-02-07-41-57.bpo-32614.LSqzGw.rst +++ /dev/null @@ -1,3 +0,0 @@ -Modify RE examples in documentation to use raw strings to prevent -:exc:`DeprecationWarning` and add text to REGEX HOWTO to highlight the -deprecation. diff --git a/Misc/NEWS.d/next/Documentation/2018-02-03-06-11-37.bpo-8722.MPyVyj.rst b/Misc/NEWS.d/next/Documentation/2018-02-03-06-11-37.bpo-8722.MPyVyj.rst deleted file mode 100644 index 36e6ff7db3ce..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-03-06-11-37.bpo-8722.MPyVyj.rst +++ /dev/null @@ -1,2 +0,0 @@ -Document :meth:`__getattr__` behavior when property :meth:`get` method -raises :exc:`AttributeError`. diff --git a/Misc/NEWS.d/next/Documentation/2018-02-05-15-05-53.bpo-32613.TDjgM1.rst b/Misc/NEWS.d/next/Documentation/2018-02-05-15-05-53.bpo-32613.TDjgM1.rst deleted file mode 100644 index d4701c224e70..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-05-15-05-53.bpo-32613.TDjgM1.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update the faq/windows.html to use the py command from PEP 397 instead of -python. diff --git a/Misc/NEWS.d/next/Documentation/2018-02-10-12-48-38.bpo-11015.-gUf34.rst b/Misc/NEWS.d/next/Documentation/2018-02-10-12-48-38.bpo-11015.-gUf34.rst deleted file mode 100644 index 73612dab69e5..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-10-12-48-38.bpo-11015.-gUf34.rst +++ /dev/null @@ -1 +0,0 @@ -Update :mod:`test.support` documentation. diff --git a/Misc/NEWS.d/next/Documentation/2018-02-10-15-16-04.bpo-32800.FyrqCk.rst b/Misc/NEWS.d/next/Documentation/2018-02-10-15-16-04.bpo-32800.FyrqCk.rst deleted file mode 100644 index eac1107bba76..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-10-15-16-04.bpo-32800.FyrqCk.rst +++ /dev/null @@ -1 +0,0 @@ -Update link to w3c doc for xml default namespaces. diff --git a/Misc/NEWS.d/next/Documentation/2018-02-14-11-10-41.bpo-32436.TTJ2jb.rst b/Misc/NEWS.d/next/Documentation/2018-02-14-11-10-41.bpo-32436.TTJ2jb.rst deleted file mode 100644 index b764b45cd968..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-14-11-10-41.bpo-32436.TTJ2jb.rst +++ /dev/null @@ -1 +0,0 @@ -Add documentation for the contextvars module (PEP 567). diff --git a/Misc/NEWS.d/next/Documentation/2018-02-23-12-48-03.bpo-17232.tmuTKL.rst b/Misc/NEWS.d/next/Documentation/2018-02-23-12-48-03.bpo-17232.tmuTKL.rst deleted file mode 100644 index 5c14e91b3919..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-23-12-48-03.bpo-17232.tmuTKL.rst +++ /dev/null @@ -1 +0,0 @@ -Clarify docs for -O and -OO. Patch by Terry Reedy. diff --git a/Misc/NEWS.d/next/Documentation/2018-02-25-16-33-35.bpo-28124._uzkgq.rst b/Misc/NEWS.d/next/Documentation/2018-02-25-16-33-35.bpo-28124._uzkgq.rst deleted file mode 100644 index 4f4ca001981d..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-02-25-16-33-35.bpo-28124._uzkgq.rst +++ /dev/null @@ -1,3 +0,0 @@ -The ssl module function ssl.wrap_socket() has been de-emphasized -and deprecated in favor of the more secure and efficient -SSLContext.wrap_socket() method. diff --git a/Misc/NEWS.d/next/Documentation/2018-03-11-00-16-56.bpo-27428.B7A8FT.rst b/Misc/NEWS.d/next/Documentation/2018-03-11-00-16-56.bpo-27428.B7A8FT.rst deleted file mode 100644 index c9ac8e22df08..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-03-11-00-16-56.bpo-27428.B7A8FT.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update documentation to clarify that ``WindowsRegistryFinder`` implements -``MetaPathFinder``. (Patch by Himanshu Lakhara) diff --git a/Misc/NEWS.d/next/Documentation/2018-03-11-18-53-47.bpo-18802.JhAqH3.rst b/Misc/NEWS.d/next/Documentation/2018-03-11-18-53-47.bpo-18802.JhAqH3.rst deleted file mode 100644 index cb9cc2599aca..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-03-11-18-53-47.bpo-18802.JhAqH3.rst +++ /dev/null @@ -1 +0,0 @@ -Documentation changes for ipaddress. Patch by Jon Foster and Berker Peksag. diff --git a/Misc/NEWS.d/next/Documentation/2018-03-20-20-11-05.bpo-28247.-V-WS-.rst b/Misc/NEWS.d/next/Documentation/2018-03-20-20-11-05.bpo-28247.-V-WS-.rst deleted file mode 100644 index 28a802136fa7..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-03-20-20-11-05.bpo-28247.-V-WS-.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update :mod:`zipapp` documentation to describe how to make standalone -applications. diff --git a/Misc/NEWS.d/next/Documentation/2018-03-22-19-23-04.bpo-27212.wrE5KR.rst b/Misc/NEWS.d/next/Documentation/2018-03-22-19-23-04.bpo-27212.wrE5KR.rst deleted file mode 100644 index 5910d2c17342..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-03-22-19-23-04.bpo-27212.wrE5KR.rst +++ /dev/null @@ -1,2 +0,0 @@ -Modify documentation for the :func:`islice` recipe to consume initial values -up to the start index. diff --git a/Misc/NEWS.d/next/Documentation/2018-03-28-17-03-17.bpo-33126.5UGkNv.rst b/Misc/NEWS.d/next/Documentation/2018-03-28-17-03-17.bpo-33126.5UGkNv.rst deleted file mode 100644 index 1219790e79ec..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-03-28-17-03-17.bpo-33126.5UGkNv.rst +++ /dev/null @@ -1 +0,0 @@ -Document PyBuffer_ToContiguous(). diff --git a/Misc/NEWS.d/next/Documentation/2018-04-01-14-30-36.bpo-33195.dRS-XX.rst b/Misc/NEWS.d/next/Documentation/2018-04-01-14-30-36.bpo-33195.dRS-XX.rst deleted file mode 100644 index 6884640325b0..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-04-01-14-30-36.bpo-33195.dRS-XX.rst +++ /dev/null @@ -1,3 +0,0 @@ -Deprecate ``Py_UNICODE`` usage in ``c-api/arg`` document. ``Py_UNICODE`` -related APIs are deprecated since Python 3.3, but it is missed in the -document. diff --git a/Misc/NEWS.d/next/Documentation/2018-04-01-21-03-41.bpo-33201.aa8Lkl.rst b/Misc/NEWS.d/next/Documentation/2018-04-01-21-03-41.bpo-33201.aa8Lkl.rst deleted file mode 100644 index bdee48ba0314..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-04-01-21-03-41.bpo-33201.aa8Lkl.rst +++ /dev/null @@ -1 +0,0 @@ -Modernize documentation for writing C extension types. diff --git a/Misc/NEWS.d/next/Documentation/2018-04-20-14-09-36.bpo-33276.rA1z_3.rst b/Misc/NEWS.d/next/Documentation/2018-04-20-14-09-36.bpo-33276.rA1z_3.rst deleted file mode 100644 index 0da58a0ce4c8..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-04-20-14-09-36.bpo-33276.rA1z_3.rst +++ /dev/null @@ -1 +0,0 @@ -Clarify that the ``__path__`` attribute on modules cannot be just any value. diff --git a/Misc/NEWS.d/next/Documentation/2018-04-29-04-02-18.bpo-33378.-anAHN.rst b/Misc/NEWS.d/next/Documentation/2018-04-29-04-02-18.bpo-33378.-anAHN.rst deleted file mode 100644 index 43214d10b7c5..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-04-29-04-02-18.bpo-33378.-anAHN.rst +++ /dev/null @@ -1 +0,0 @@ -Add Korean language switcher for https://docs.python.org/3/ diff --git a/Misc/NEWS.d/next/Documentation/2018-05-13-14-44-30.bpo-33487.iLDzFb.rst b/Misc/NEWS.d/next/Documentation/2018-05-13-14-44-30.bpo-33487.iLDzFb.rst deleted file mode 100644 index 3a2ac64dded8..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-05-13-14-44-30.bpo-33487.iLDzFb.rst +++ /dev/null @@ -1,3 +0,0 @@ -BZ2file now emit a DeprecationWarning when buffering=None is passed, the -deprecation message and documentation also now explicitly state it is -deprecated since 3.0. diff --git a/Misc/NEWS.d/next/Documentation/2018-05-14-15-15-41.bpo-33421.3GU_QO.rst b/Misc/NEWS.d/next/Documentation/2018-05-14-15-15-41.bpo-33421.3GU_QO.rst deleted file mode 100644 index 75694b7be1e7..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-05-14-15-15-41.bpo-33421.3GU_QO.rst +++ /dev/null @@ -1 +0,0 @@ -Add missing documentation for ``typing.AsyncContextManager``. diff --git a/Misc/NEWS.d/next/Documentation/2018-05-14-20-08-58.bpo-33503.Wvt0qg.rst b/Misc/NEWS.d/next/Documentation/2018-05-14-20-08-58.bpo-33503.Wvt0qg.rst deleted file mode 100644 index 27025c31a036..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-05-14-20-08-58.bpo-33503.Wvt0qg.rst +++ /dev/null @@ -1 +0,0 @@ -Fix broken pypi link diff --git a/Misc/NEWS.d/next/Documentation/2018-05-21-14-36-12.bpo-33594.-HRcyX.rst b/Misc/NEWS.d/next/Documentation/2018-05-21-14-36-12.bpo-33594.-HRcyX.rst deleted file mode 100644 index a63c4a5004c6..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-05-21-14-36-12.bpo-33594.-HRcyX.rst +++ /dev/null @@ -1,3 +0,0 @@ -Document ``getargspec``, ``from_function`` and ``from_builtin`` as -deprecated in their respective docstring, and include version since -deprecation in DeprecationWarning message. diff --git a/Misc/NEWS.d/next/Documentation/2018-05-22-11-47-14.bpo-33604.5YHTpz.rst b/Misc/NEWS.d/next/Documentation/2018-05-22-11-47-14.bpo-33604.5YHTpz.rst deleted file mode 100644 index 3c2f2d0b8230..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-05-22-11-47-14.bpo-33604.5YHTpz.rst +++ /dev/null @@ -1 +0,0 @@ -Update HMAC md5 default to a DeprecationWarning, bump removal to 3.8. diff --git a/Misc/NEWS.d/next/Documentation/2018-05-23-11-59-51.bpo-32436.S1LGPa.rst b/Misc/NEWS.d/next/Documentation/2018-05-23-11-59-51.bpo-32436.S1LGPa.rst deleted file mode 100644 index a4ecc23f8925..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-05-23-11-59-51.bpo-32436.S1LGPa.rst +++ /dev/null @@ -1 +0,0 @@ -Document :pep:`567` changes to asyncio. diff --git a/Misc/NEWS.d/next/Documentation/2018-05-29-16-02-31.bpo-23859.E5gba1.rst b/Misc/NEWS.d/next/Documentation/2018-05-29-16-02-31.bpo-23859.E5gba1.rst deleted file mode 100644 index b372faa5eb97..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-05-29-16-02-31.bpo-23859.E5gba1.rst +++ /dev/null @@ -1 +0,0 @@ -Document that `asyncio.wait()` does not cancel its futures on timeout. diff --git a/Misc/NEWS.d/next/Documentation/2018-06-01-12-27-40.bpo-33736.JVegIu.rst b/Misc/NEWS.d/next/Documentation/2018-06-01-12-27-40.bpo-33736.JVegIu.rst deleted file mode 100644 index 6bd9c40d35e9..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-06-01-12-27-40.bpo-33736.JVegIu.rst +++ /dev/null @@ -1,2 +0,0 @@ -Improve the documentation of :func:`asyncio.open_connection`, -:func:`asyncio.start_server` and their UNIX socket counterparts. diff --git a/Misc/NEWS.d/next/Documentation/2018-06-07-08-33-45.bpo-17045.ZNx6KU.rst b/Misc/NEWS.d/next/Documentation/2018-06-07-08-33-45.bpo-17045.ZNx6KU.rst deleted file mode 100644 index 15f7b445b82b..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-06-07-08-33-45.bpo-17045.ZNx6KU.rst +++ /dev/null @@ -1,3 +0,0 @@ -Improve the C-API doc for PyTypeObject. This includes adding several -quick-reference tables and a lot of missing slot/typedef entries. The -existing entries were also cleaned up with a slightly more consistent format. diff --git a/Misc/NEWS.d/next/Documentation/2018-06-08-23-37-14.bpo-33197.OERTKf.rst b/Misc/NEWS.d/next/Documentation/2018-06-08-23-37-14.bpo-33197.OERTKf.rst deleted file mode 100644 index ae8df74f71ff..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-06-08-23-37-14.bpo-33197.OERTKf.rst +++ /dev/null @@ -1 +0,0 @@ -Add versionadded tag to the documentation of ParameterKind.description diff --git a/Misc/NEWS.d/next/Documentation/2018-06-08-23-46-01.bpo-33409.r4z9MM.rst b/Misc/NEWS.d/next/Documentation/2018-06-08-23-46-01.bpo-33409.r4z9MM.rst deleted file mode 100644 index f26ddd82400e..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-06-08-23-46-01.bpo-33409.r4z9MM.rst +++ /dev/null @@ -1,2 +0,0 @@ -Clarified the relationship between :pep:`538`'s PYTHONCOERCECLOCALE and PEP -540's PYTHONUTF8 mode. diff --git a/Misc/NEWS.d/next/Documentation/2018-06-15-14-58-45.bpo-33847.IIDp6t.rst b/Misc/NEWS.d/next/Documentation/2018-06-15-14-58-45.bpo-33847.IIDp6t.rst deleted file mode 100644 index 3c7e0cdb7b43..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-06-15-14-58-45.bpo-33847.IIDp6t.rst +++ /dev/null @@ -1 +0,0 @@ -Add '@' operator entry to index. diff --git a/Misc/NEWS.d/next/Documentation/2018-06-22-08-38-29.bpo-33460.kHt4D0.rst b/Misc/NEWS.d/next/Documentation/2018-06-22-08-38-29.bpo-33460.kHt4D0.rst deleted file mode 100644 index 6ee63b08f682..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-06-22-08-38-29.bpo-33460.kHt4D0.rst +++ /dev/null @@ -1 +0,0 @@ -replaced ellipsis with correct error codes in tutorial chapter 3. diff --git a/Misc/NEWS.d/next/Documentation/2018-07-07-20-38-41.bpo-34065.1snofM.rst b/Misc/NEWS.d/next/Documentation/2018-07-07-20-38-41.bpo-34065.1snofM.rst deleted file mode 100644 index a3f9fb848f62..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-07-07-20-38-41.bpo-34065.1snofM.rst +++ /dev/null @@ -1 +0,0 @@ -Fix wrongly written basicConfig documentation markup syntax diff --git a/Misc/NEWS.d/next/Documentation/2018-07-28-17-17-42.bpo-20177.cOZJWp.rst b/Misc/NEWS.d/next/Documentation/2018-07-28-17-17-42.bpo-20177.cOZJWp.rst deleted file mode 100644 index 35592a64a8da..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-07-28-17-17-42.bpo-20177.cOZJWp.rst +++ /dev/null @@ -1 +0,0 @@ -Migrate datetime.date.fromtimestamp to Argument Clinic. Patch by Tim Hoffmann. diff --git a/Misc/NEWS.d/next/Documentation/2018-09-06-22-39-47.bpo-28617.MjnJLz.rst b/Misc/NEWS.d/next/Documentation/2018-09-06-22-39-47.bpo-28617.MjnJLz.rst deleted file mode 100644 index 281afad71d27..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-09-06-22-39-47.bpo-28617.MjnJLz.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed info in the stdtypes docs concerning the types that support membership -tests. diff --git a/Misc/NEWS.d/next/Documentation/2018-09-12-10-18-04.bpo-34552.p9PoYv.rst b/Misc/NEWS.d/next/Documentation/2018-09-12-10-18-04.bpo-34552.p9PoYv.rst deleted file mode 100644 index 9e7605bc6d68..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-09-12-10-18-04.bpo-34552.p9PoYv.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make clear that ``==`` operator sometimes is equivalent to `is`. The ``<``, -``<=``, ``>`` and ``>=`` operators are only defined where they make sense. diff --git a/Misc/NEWS.d/next/Documentation/2018-09-24-12-47-08.bpo-34790.G2KXIH.rst b/Misc/NEWS.d/next/Documentation/2018-09-24-12-47-08.bpo-34790.G2KXIH.rst deleted file mode 100644 index dc3de2c7d4c8..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-09-24-12-47-08.bpo-34790.G2KXIH.rst +++ /dev/null @@ -1 +0,0 @@ -Document how passing coroutines to asyncio.wait() can be confusing. diff --git a/Misc/NEWS.d/next/Documentation/2018-10-03-20-39-25.bpo-11233.BX6Gen.rst b/Misc/NEWS.d/next/Documentation/2018-10-03-20-39-25.bpo-11233.BX6Gen.rst deleted file mode 100644 index 0637dd66e42c..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-03-20-39-25.bpo-11233.BX6Gen.rst +++ /dev/null @@ -1,2 +0,0 @@ -Create availability directive for documentation. Original patch by Georg -Brandl. diff --git a/Misc/NEWS.d/next/Documentation/2018-10-08-19-15-28.bpo-32174.YO9CYm.rst b/Misc/NEWS.d/next/Documentation/2018-10-08-19-15-28.bpo-32174.YO9CYm.rst deleted file mode 100644 index a11a4b3eb087..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-08-19-15-28.bpo-32174.YO9CYm.rst +++ /dev/null @@ -1,2 +0,0 @@ -chm document displays non-ASCII charaters properly on some MBCS Windows -systems. diff --git a/Misc/NEWS.d/next/Documentation/2018-10-10-00-34-08.bpo-34913.kVd1Fv.rst b/Misc/NEWS.d/next/Documentation/2018-10-10-00-34-08.bpo-34913.kVd1Fv.rst deleted file mode 100644 index e8a11761477c..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-10-00-34-08.bpo-34913.kVd1Fv.rst +++ /dev/null @@ -1 +0,0 @@ -Add documentation about the new command line interface of the gzip module. diff --git a/Misc/NEWS.d/next/Documentation/2018-10-13-07-39-57.bpo-34967.E40tFP.rst b/Misc/NEWS.d/next/Documentation/2018-10-13-07-39-57.bpo-34967.E40tFP.rst deleted file mode 100644 index 6341296663ae..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-13-07-39-57.bpo-34967.E40tFP.rst +++ /dev/null @@ -1,2 +0,0 @@ -Use app.add_object_type() instead of the deprecated Sphinx function -app.description_unit() diff --git a/Misc/NEWS.d/next/Documentation/2018-10-21-02-20-36.bpo-35035.4zBObK.rst b/Misc/NEWS.d/next/Documentation/2018-10-21-02-20-36.bpo-35035.4zBObK.rst deleted file mode 100644 index 46436f1b979b..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-21-02-20-36.bpo-35035.4zBObK.rst +++ /dev/null @@ -1 +0,0 @@ -Rename documentation for :mod:`email.utils` to ``email.utils.rst``. diff --git a/Misc/NEWS.d/next/Documentation/2018-10-22-14-09-58.bpo-35044.qjvNtI.rst b/Misc/NEWS.d/next/Documentation/2018-10-22-14-09-58.bpo-35044.qjvNtI.rst deleted file mode 100644 index 05e67e51a73a..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-22-14-09-58.bpo-35044.qjvNtI.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix the documentation with the role ``exc`` for the appropriated exception. Patch by -St?phane Wirtel diff --git a/Misc/NEWS.d/next/Documentation/2018-10-22-14-17-57.bpo-35042.1UGv1a.rst b/Misc/NEWS.d/next/Documentation/2018-10-22-14-17-57.bpo-35042.1UGv1a.rst deleted file mode 100644 index 3ebbd3a8005a..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-22-14-17-57.bpo-35042.1UGv1a.rst +++ /dev/null @@ -1 +0,0 @@ -Replace PEP XYZ by the pep role and allow to use the direct links to the PEPs. diff --git a/Misc/NEWS.d/next/Documentation/2018-10-25-17-45-09.bpo-35038.2eVOYS.rst b/Misc/NEWS.d/next/Documentation/2018-10-25-17-45-09.bpo-35038.2eVOYS.rst deleted file mode 100644 index 3558cf47d5d5..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-25-17-45-09.bpo-35038.2eVOYS.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix the documentation about an unexisting `f_restricted` attribute in the -frame object. Patch by St?phane Wirtel diff --git a/Misc/NEWS.d/next/Documentation/2018-10-28-16-51-31.bpo-35089._stCpS.rst b/Misc/NEWS.d/next/Documentation/2018-10-28-16-51-31.bpo-35089._stCpS.rst deleted file mode 100644 index 4a469290ad73..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-10-28-16-51-31.bpo-35089._stCpS.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove mention of ``typing.io`` and ``typing.re``. Their types should be -imported from ``typing`` directly. diff --git a/Misc/NEWS.d/next/Documentation/2018-11-04-22-03-56.bpo-10536.a0IsfE.rst b/Misc/NEWS.d/next/Documentation/2018-11-04-22-03-56.bpo-10536.a0IsfE.rst deleted file mode 100644 index b5036481fb65..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-11-04-22-03-56.bpo-10536.a0IsfE.rst +++ /dev/null @@ -1 +0,0 @@ -Enhance the gettext docs. Patch by ?ric Araujo diff --git a/Misc/NEWS.d/next/Documentation/2018-12-16-16-14-44.bpo-35511.iVcyav.rst b/Misc/NEWS.d/next/Documentation/2018-12-16-16-14-44.bpo-35511.iVcyav.rst deleted file mode 100644 index 69c9d9fc56e6..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-12-16-16-14-44.bpo-35511.iVcyav.rst +++ /dev/null @@ -1,3 +0,0 @@ -Specified that profile.Profile class doesn't not support enable or disable -methods. Also, elaborated that Profile object as a context manager is only -supported in cProfile module. diff --git a/Misc/NEWS.d/next/Documentation/2018-12-22-22-52-05.bpo-35564.TuEU_D.rst b/Misc/NEWS.d/next/Documentation/2018-12-22-22-52-05.bpo-35564.TuEU_D.rst deleted file mode 100644 index 8ca95eed4c56..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-12-22-22-52-05.bpo-35564.TuEU_D.rst +++ /dev/null @@ -1 +0,0 @@ -Explicitly set master_doc variable in conf.py for compliance with Sphinx 2.0 diff --git a/Misc/NEWS.d/next/Documentation/2018-12-23-23-52-31.bpo-34764.DwOGeT.rst b/Misc/NEWS.d/next/Documentation/2018-12-23-23-52-31.bpo-34764.DwOGeT.rst deleted file mode 100644 index d2a7f1b52b75..000000000000 --- a/Misc/NEWS.d/next/Documentation/2018-12-23-23-52-31.bpo-34764.DwOGeT.rst +++ /dev/null @@ -1 +0,0 @@ -Improve example of iter() with 2nd sentinel argument. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Documentation/2019-01-15-21-45-27.bpo-21257.U9LKkx.rst b/Misc/NEWS.d/next/Documentation/2019-01-15-21-45-27.bpo-21257.U9LKkx.rst deleted file mode 100644 index ad035e95b51c..000000000000 --- a/Misc/NEWS.d/next/Documentation/2019-01-15-21-45-27.bpo-21257.U9LKkx.rst +++ /dev/null @@ -1 +0,0 @@ -Document :func:`http.client.parse_headers`. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-04-17-52-54.bpo-32765.qm0eCu.rst b/Misc/NEWS.d/next/IDLE/2018-02-04-17-52-54.bpo-32765.qm0eCu.rst deleted file mode 100644 index 1bd6b094ca5d..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-04-17-52-54.bpo-32765.qm0eCu.rst +++ /dev/null @@ -1 +0,0 @@ -Update configdialog General tab docstring to add new widgets to the widget list. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-12-08-08-45.bpo-32831.srDRvU.rst b/Misc/NEWS.d/next/IDLE/2018-02-12-08-08-45.bpo-32831.srDRvU.rst deleted file mode 100644 index 583e341f94f0..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-12-08-08-45.bpo-32831.srDRvU.rst +++ /dev/null @@ -1 +0,0 @@ -Add docstrings and tests for codecontext. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-12-11-05-22.bpo-32826.IxNZrk.rst b/Misc/NEWS.d/next/IDLE/2018-02-12-11-05-22.bpo-32826.IxNZrk.rst deleted file mode 100644 index 4310ed2e721a..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-12-11-05-22.bpo-32826.IxNZrk.rst +++ /dev/null @@ -1,5 +0,0 @@ -Add "encoding=utf-8" to open() in IDLE's test_help_about. -GUI test test_file_buttons() only looks at initial ascii-only lines, -but failed on systems where open() defaults to 'ascii' because -readline() internally reads and decodes far enough ahead to encounter -a non-ascii character in CREDITS.txt. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-12-17-22-48.bpo-32837.-33QPl.rst b/Misc/NEWS.d/next/IDLE/2018-02-12-17-22-48.bpo-32837.-33QPl.rst deleted file mode 100644 index 258536a1cd0c..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-12-17-22-48.bpo-32837.-33QPl.rst +++ /dev/null @@ -1,2 +0,0 @@ -Using the system and place-dependent default encoding for open() is a bad -idea for IDLE's system and location-independent files. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-19-10-56-41.bpo-32874.6pZ9Gv.rst b/Misc/NEWS.d/next/IDLE/2018-02-19-10-56-41.bpo-32874.6pZ9Gv.rst deleted file mode 100644 index 79655315fff4..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-19-10-56-41.bpo-32874.6pZ9Gv.rst +++ /dev/null @@ -1 +0,0 @@ -Add tests for pyparse. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-22-00-09-27.bpo-32905.VlXj0x.rst b/Misc/NEWS.d/next/IDLE/2018-02-22-00-09-27.bpo-32905.VlXj0x.rst deleted file mode 100644 index c9bedd98f2e0..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-22-00-09-27.bpo-32905.VlXj0x.rst +++ /dev/null @@ -1 +0,0 @@ -Remove unused code in pyparse module. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-23-07-32-36.bpo-32916.4MsQ5F.rst b/Misc/NEWS.d/next/IDLE/2018-02-23-07-32-36.bpo-32916.4MsQ5F.rst deleted file mode 100644 index 0832944f1621..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-23-07-32-36.bpo-32916.4MsQ5F.rst +++ /dev/null @@ -1 +0,0 @@ -Change ``str`` to ``code`` in pyparse. diff --git a/Misc/NEWS.d/next/IDLE/2018-02-24-18-20-50.bpo-32940.ZaJ1Rf.rst b/Misc/NEWS.d/next/IDLE/2018-02-24-18-20-50.bpo-32940.ZaJ1Rf.rst deleted file mode 100644 index 958f9522d4f8..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-02-24-18-20-50.bpo-32940.ZaJ1Rf.rst +++ /dev/null @@ -1 +0,0 @@ -Simplify and rename StringTranslatePseudoMapping in pyparse. diff --git a/Misc/NEWS.d/next/IDLE/2018-03-05-01-29-05.bpo-32984.NGjgT4.rst b/Misc/NEWS.d/next/IDLE/2018-03-05-01-29-05.bpo-32984.NGjgT4.rst deleted file mode 100644 index 15d40b72caaf..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-03-05-01-29-05.bpo-32984.NGjgT4.rst +++ /dev/null @@ -1,7 +0,0 @@ -Set ``__file__`` while running a startup file. Like Python, IDLE optionally -runs one startup file in the Shell window before presenting the first interactive -input prompt. For IDLE, ``-s`` runs a file named in environmental variable - :envvar:`IDLESTARTUP` or :envvar:`PYTHONSTARTUP`; ``-r file`` runs -``file``. Python sets ``__file__`` to the startup file name before running the -file and unsets it before the first prompt. IDLE now does the same when run -normally, without the ``-n`` option. diff --git a/Misc/NEWS.d/next/IDLE/2018-04-02-00-28-13.bpo-33204.NBsuIv.rst b/Misc/NEWS.d/next/IDLE/2018-04-02-00-28-13.bpo-33204.NBsuIv.rst deleted file mode 100644 index 3ae937bab930..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-04-02-00-28-13.bpo-33204.NBsuIv.rst +++ /dev/null @@ -1,3 +0,0 @@ -IDLE: consistently color invalid string prefixes. A 'u' string prefix cannot -be paired with either 'r' or 'f'. Consistently color as much of the prefix, -starting at the right, as is valid. Revise and extend colorizer test. diff --git a/Misc/NEWS.d/next/IDLE/2018-04-29-16-13-02.bpo-21474.bglg-F.rst b/Misc/NEWS.d/next/IDLE/2018-04-29-16-13-02.bpo-21474.bglg-F.rst deleted file mode 100644 index caf640b73b29..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-04-29-16-13-02.bpo-21474.bglg-F.rst +++ /dev/null @@ -1,3 +0,0 @@ -Update word/identifier definition from ascii to unicode. In text and entry -boxes, this affects selection by double-click, movement left/right by -control-left/right, and deletion left/right by control-BACKSPACE/DEL. diff --git a/Misc/NEWS.d/next/IDLE/2018-05-17-19-41-12.bpo-33564.XzHZJe.rst b/Misc/NEWS.d/next/IDLE/2018-05-17-19-41-12.bpo-33564.XzHZJe.rst deleted file mode 100644 index df828485f69e..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-05-17-19-41-12.bpo-33564.XzHZJe.rst +++ /dev/null @@ -1 +0,0 @@ -IDLE's code context now recognizes async as a block opener. diff --git a/Misc/NEWS.d/next/IDLE/2018-05-23-19-51-07.bpo-33628.sLlFLO.rst b/Misc/NEWS.d/next/IDLE/2018-05-23-19-51-07.bpo-33628.sLlFLO.rst deleted file mode 100644 index f0b13a21c346..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-05-23-19-51-07.bpo-33628.sLlFLO.rst +++ /dev/null @@ -1,2 +0,0 @@ -IDLE: Cleanup codecontext.py and its test. - diff --git a/Misc/NEWS.d/next/IDLE/2018-05-24-20-42-44.bpo-33642.J0VQbS.rst b/Misc/NEWS.d/next/IDLE/2018-05-24-20-42-44.bpo-33642.J0VQbS.rst deleted file mode 100644 index b1d0763a8a9f..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-05-24-20-42-44.bpo-33642.J0VQbS.rst +++ /dev/null @@ -1,2 +0,0 @@ -Display up to maxlines non-blank lines for Code Context. -If there is no current context, show a single blank line. diff --git a/Misc/NEWS.d/next/IDLE/2018-05-29-07-14-37.bpo-33679.MgX_Ui.rst b/Misc/NEWS.d/next/IDLE/2018-05-29-07-14-37.bpo-33679.MgX_Ui.rst deleted file mode 100644 index 2d52fa86490d..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-05-29-07-14-37.bpo-33679.MgX_Ui.rst +++ /dev/null @@ -1,3 +0,0 @@ -Enable theme-specific color configuration for Code Context. -Use the Highlights tab to see the setting for built-in themes -or add settings to custom themes. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-03-09-13-28.bpo-33664.PZzQyL.rst b/Misc/NEWS.d/next/IDLE/2018-06-03-09-13-28.bpo-33664.PZzQyL.rst deleted file mode 100644 index 48f602f641c9..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-03-09-13-28.bpo-33664.PZzQyL.rst +++ /dev/null @@ -1,5 +0,0 @@ -Scroll IDLE editor text by lines. -Previously, the mouse wheel and scrollbar slider moved text by a fixed -number of pixels, resulting in partial lines at the top of the editor -box. The change also applies to the shell and grep output windows, -but not to read-only text views. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-03-20-12-57.bpo-33763.URiFlE.rst b/Misc/NEWS.d/next/IDLE/2018-06-03-20-12-57.bpo-33763.URiFlE.rst deleted file mode 100644 index 187ef650cb73..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-03-20-12-57.bpo-33763.URiFlE.rst +++ /dev/null @@ -1 +0,0 @@ -IDLE: Use read-only text widget for code context instead of label widget. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-04-19-23-11.bpo-33768.I_2qpV.rst b/Misc/NEWS.d/next/IDLE/2018-06-04-19-23-11.bpo-33768.I_2qpV.rst deleted file mode 100644 index 689aede15ac6..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-04-19-23-11.bpo-33768.I_2qpV.rst +++ /dev/null @@ -1 +0,0 @@ -Clicking on a context line moves that line to the top of the editor window. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-10-17-59-36.bpo-33656.60ZqJS.rst b/Misc/NEWS.d/next/IDLE/2018-06-10-17-59-36.bpo-33656.60ZqJS.rst deleted file mode 100644 index e0c51b2c0f9e..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-10-17-59-36.bpo-33656.60ZqJS.rst +++ /dev/null @@ -1,4 +0,0 @@ -On Windows, add API call saying that tk scales for DPI. On Windows -8.1+ or 10, with DPI compatibility properties of the Python binary -unchanged, and a monitor resolution greater than 96 DPI, this should -make text and lines sharper. It should otherwise have no effect. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-14-11-35-50.bpo-33855.XL230W.rst b/Misc/NEWS.d/next/IDLE/2018-06-14-11-35-50.bpo-33855.XL230W.rst deleted file mode 100644 index aaf4f8fe2b0a..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-14-11-35-50.bpo-33855.XL230W.rst +++ /dev/null @@ -1,2 +0,0 @@ -Minimally test all IDLE modules. Add missing files, import module, -instantiate classes, and check coverage. Check existing files. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-14-13-23-55.bpo-33839.ZlJzHa.rst b/Misc/NEWS.d/next/IDLE/2018-06-14-13-23-55.bpo-33839.ZlJzHa.rst deleted file mode 100644 index c0c4d9046a59..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-14-13-23-55.bpo-33839.ZlJzHa.rst +++ /dev/null @@ -1 +0,0 @@ -IDLE: refactor ToolTip and CallTip and add documentation and tests diff --git a/Misc/NEWS.d/next/IDLE/2018-06-16-21-54-45.bpo-33856.TH8WHU.rst b/Misc/NEWS.d/next/IDLE/2018-06-16-21-54-45.bpo-33856.TH8WHU.rst deleted file mode 100644 index 058f96e681c2..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-16-21-54-45.bpo-33856.TH8WHU.rst +++ /dev/null @@ -1 +0,0 @@ -Add "help" in the welcome message of IDLE diff --git a/Misc/NEWS.d/next/IDLE/2018-06-19-22-21-27.bpo-33907.z-_B3N.rst b/Misc/NEWS.d/next/IDLE/2018-06-19-22-21-27.bpo-33907.z-_B3N.rst deleted file mode 100644 index b4741060bb21..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-19-22-21-27.bpo-33907.z-_B3N.rst +++ /dev/null @@ -1,3 +0,0 @@ -For consistency and clarity, rename an IDLE module and classes. -Module calltips and its class CallTips are now calltip and Calltip. -In module calltip_w, class CallTip is now CalltipWindow. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-20-12-40-54.bpo-33904.qm0eCu.rst b/Misc/NEWS.d/next/IDLE/2018-06-20-12-40-54.bpo-33904.qm0eCu.rst deleted file mode 100644 index efed2379b4bf..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-20-12-40-54.bpo-33904.qm0eCu.rst +++ /dev/null @@ -1 +0,0 @@ -IDLE: In rstrip, rename class RstripExtension as Rstrip diff --git a/Misc/NEWS.d/next/IDLE/2018-06-20-16-27-48.bpo-33917.ZXHs8x.rst b/Misc/NEWS.d/next/IDLE/2018-06-20-16-27-48.bpo-33917.ZXHs8x.rst deleted file mode 100644 index fe62d81461cb..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-20-16-27-48.bpo-33917.ZXHs8x.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix and document idlelib/idle_test/template.py. The revised file compiles, -runs, and tests OK. idle_test/README.txt explains how to use it to create -new IDLE test files. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-20-19-16-24.bpo-33906.a1lXq0.rst b/Misc/NEWS.d/next/IDLE/2018-06-20-19-16-24.bpo-33906.a1lXq0.rst deleted file mode 100644 index 141122c3128b..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-20-19-16-24.bpo-33906.a1lXq0.rst +++ /dev/null @@ -1,2 +0,0 @@ -Rename idlelib.windows as window Match Window on the main menu and remove -last plural module name. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-20-22-14-07.bpo-33924.6Rz1wt.rst b/Misc/NEWS.d/next/IDLE/2018-06-20-22-14-07.bpo-33924.6Rz1wt.rst deleted file mode 100644 index 03f9efd43802..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-20-22-14-07.bpo-33924.6Rz1wt.rst +++ /dev/null @@ -1,2 +0,0 @@ -Change mainmenu.menudefs key 'windows' to 'window'. Every other menudef key -is lowercase version of main menu entry. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-21-20-35-33.bpo-33905.W2mhiY.rst b/Misc/NEWS.d/next/IDLE/2018-06-21-20-35-33.bpo-33905.W2mhiY.rst deleted file mode 100644 index c671e4791da4..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-21-20-35-33.bpo-33905.W2mhiY.rst +++ /dev/null @@ -1 +0,0 @@ -Add test for idlelib.stackview.StackBrowser. diff --git a/Misc/NEWS.d/next/IDLE/2018-06-26-22-53-14.bpo-33975.Ow7alv.rst b/Misc/NEWS.d/next/IDLE/2018-06-26-22-53-14.bpo-33975.Ow7alv.rst deleted file mode 100644 index 03f6a1957650..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-06-26-22-53-14.bpo-33975.Ow7alv.rst +++ /dev/null @@ -1,3 +0,0 @@ -Avoid small type when running htests. Since part of the purpose of -human-viewed tests is to determine that widgets look right, it is important -that they look the same for testing as when running IDLE. diff --git a/Misc/NEWS.d/next/IDLE/2018-08-01-23-25-38.bpo-34120.HgsIz-.rst b/Misc/NEWS.d/next/IDLE/2018-08-01-23-25-38.bpo-34120.HgsIz-.rst deleted file mode 100644 index f9954f7c1af0..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-08-01-23-25-38.bpo-34120.HgsIz-.rst +++ /dev/null @@ -1 +0,0 @@ -Fix unresponsiveness after closing certain windows and dialogs. \ No newline at end of file diff --git a/Misc/NEWS.d/next/IDLE/2018-08-02-22-16-42.bpo-34275.Iu0d7t.rst b/Misc/NEWS.d/next/IDLE/2018-08-02-22-16-42.bpo-34275.Iu0d7t.rst deleted file mode 100644 index d7eba7ad3cf4..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-08-02-22-16-42.bpo-34275.Iu0d7t.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make IDLE calltips always visible on Mac. Some MacOS-tk combinations need -.update_idletasks(). Patch by Kevin Walzer. diff --git a/Misc/NEWS.d/next/IDLE/2018-08-05-15-49-55.bpo-34047.LGKsIm.rst b/Misc/NEWS.d/next/IDLE/2018-08-05-15-49-55.bpo-34047.LGKsIm.rst deleted file mode 100644 index a247908ba844..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-08-05-15-49-55.bpo-34047.LGKsIm.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed mousewheel scrolling direction on macOS. diff --git a/Misc/NEWS.d/next/IDLE/2018-08-13-16-31-24.bpo-1529353.wXfQJk.rst b/Misc/NEWS.d/next/IDLE/2018-08-13-16-31-24.bpo-1529353.wXfQJk.rst deleted file mode 100644 index cae4af8f2e23..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-08-13-16-31-24.bpo-1529353.wXfQJk.rst +++ /dev/null @@ -1,3 +0,0 @@ -Enable "squeezing" of long outputs in the shell, to avoid performance -degradation and to clean up the history without losing it. Squeezed outputs -may be copied, viewed in a separate window, and "unsqueezed". diff --git a/Misc/NEWS.d/next/IDLE/2018-09-22-20-25-07.bpo-34548.7pBzjg.rst b/Misc/NEWS.d/next/IDLE/2018-09-22-20-25-07.bpo-34548.7pBzjg.rst deleted file mode 100644 index 237c0c788c2c..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-09-22-20-25-07.bpo-34548.7pBzjg.rst +++ /dev/null @@ -1 +0,0 @@ -Use configured color theme for read-only text views. diff --git a/Misc/NEWS.d/next/IDLE/2018-10-28-00-08-42.bpo-35087.G7gx2-.rst b/Misc/NEWS.d/next/IDLE/2018-10-28-00-08-42.bpo-35087.G7gx2-.rst deleted file mode 100644 index 0fd26699a96c..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-10-28-00-08-42.bpo-35087.G7gx2-.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update idlelib help files for the current doc build. The main change is the -elimination of chapter-section numbers. diff --git a/Misc/NEWS.d/next/IDLE/2018-10-28-00-54-32.bpo-35088.r1lJZd.rst b/Misc/NEWS.d/next/IDLE/2018-10-28-00-54-32.bpo-35088.r1lJZd.rst deleted file mode 100644 index 993ff51d74e5..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-10-28-00-54-32.bpo-35088.r1lJZd.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update idlelib.help.copy_string docstring. We now use git and backporting -instead of hg and forward merging. diff --git a/Misc/NEWS.d/next/IDLE/2018-10-28-15-53-51.bpo-35093.cH-tli.rst b/Misc/NEWS.d/next/IDLE/2018-10-28-15-53-51.bpo-35093.cH-tli.rst deleted file mode 100644 index a330b990761a..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-10-28-15-53-51.bpo-35093.cH-tli.rst +++ /dev/null @@ -1,2 +0,0 @@ -Document the IDLE document viewer in the IDLE doc. Add a paragraph in "Help -and preferences", "Help sources" subsection. diff --git a/Misc/NEWS.d/next/IDLE/2018-10-28-20-17-14.bpo-35097.07tm66.rst b/Misc/NEWS.d/next/IDLE/2018-10-28-20-17-14.bpo-35097.07tm66.rst deleted file mode 100644 index a1e58ee5983c..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-10-28-20-17-14.bpo-35097.07tm66.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add IDLE doc subsection explaining editor windows. Topics include opening, -title and status bar, .py* extension, and running. diff --git a/Misc/NEWS.d/next/IDLE/2018-11-05-20-43-08.bpo-35099.SVOZXC.rst b/Misc/NEWS.d/next/IDLE/2018-11-05-20-43-08.bpo-35099.SVOZXC.rst deleted file mode 100644 index 1459f20cb78f..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-11-05-20-43-08.bpo-35099.SVOZXC.rst +++ /dev/null @@ -1,3 +0,0 @@ -Improve the doc about IDLE running user code. The section is renamed from -"IDLE -- console differences" is renamed "Running user code". -It mostly covers the implications of using custom sys.stdxxx objects. diff --git a/Misc/NEWS.d/next/IDLE/2018-11-05-23-23-00.bpo-23220.H3SAWE.rst b/Misc/NEWS.d/next/IDLE/2018-11-05-23-23-00.bpo-23220.H3SAWE.rst deleted file mode 100644 index 77c71268dddd..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-11-05-23-23-00.bpo-23220.H3SAWE.rst +++ /dev/null @@ -1 +0,0 @@ -Explain how IDLE's Shell displays output. diff --git a/Misc/NEWS.d/next/IDLE/2018-11-06-23-10-54.bpo-33000.pQasCt.rst b/Misc/NEWS.d/next/IDLE/2018-11-06-23-10-54.bpo-33000.pQasCt.rst deleted file mode 100644 index c6ba9e4669d5..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-11-06-23-10-54.bpo-33000.pQasCt.rst +++ /dev/null @@ -1,2 +0,0 @@ -Document that IDLE's shell has no line limit. A program that runs -indefinitely can overfill memory. diff --git a/Misc/NEWS.d/next/IDLE/2018-11-10-09-10-54.bpo-35202.TeJJrt.rst b/Misc/NEWS.d/next/IDLE/2018-11-10-09-10-54.bpo-35202.TeJJrt.rst deleted file mode 100644 index 1824536f3db1..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-11-10-09-10-54.bpo-35202.TeJJrt.rst +++ /dev/null @@ -1 +0,0 @@ -Remove unused imports from lib/idlelib diff --git a/Misc/NEWS.d/next/IDLE/2018-11-10-21-27-25.bpo-34864.Ci-G2q.rst b/Misc/NEWS.d/next/IDLE/2018-11-10-21-27-25.bpo-34864.Ci-G2q.rst deleted file mode 100644 index fb0083e337a5..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-11-10-21-27-25.bpo-34864.Ci-G2q.rst +++ /dev/null @@ -1,3 +0,0 @@ -Document two IDLE on MacOS issues. The System Preferences Dock "prefer tabs -always" setting disables some IDLE features. Menus are a bit different than -as described for Windows and Linux. diff --git a/Misc/NEWS.d/next/IDLE/2018-11-11-17-13-50.bpo-34864.cw0PvO.rst b/Misc/NEWS.d/next/IDLE/2018-11-11-17-13-50.bpo-34864.cw0PvO.rst deleted file mode 100644 index 8d2b61d599ff..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-11-11-17-13-50.bpo-34864.cw0PvO.rst +++ /dev/null @@ -1,2 +0,0 @@ -On macOS, warn if the system preference "Prefer tabs when opening documents" -is set to "Always". \ No newline at end of file diff --git a/Misc/NEWS.d/next/IDLE/2018-11-12-00-20-01.bpo-35213.cqNgzT.rst b/Misc/NEWS.d/next/IDLE/2018-11-12-00-20-01.bpo-35213.cqNgzT.rst deleted file mode 100644 index 9d0e4e1220bb..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-11-12-00-20-01.bpo-35213.cqNgzT.rst +++ /dev/null @@ -1 +0,0 @@ -Where appropriate, use 'macOS' in idlelib. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-18-13-56-31.bpo-22703.UlsjKQ.rst b/Misc/NEWS.d/next/IDLE/2018-12-18-13-56-31.bpo-22703.UlsjKQ.rst deleted file mode 100644 index d1129c4f155c..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-18-13-56-31.bpo-22703.UlsjKQ.rst +++ /dev/null @@ -1,3 +0,0 @@ -The Code Context menu label now toggles between Show/Hide Code Context. -The Zoom Height menu now toggles between Zoom/Restore Height. -Zoom Height has moved from the Window menu to the Options menu. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-20-00-14-15.bpo-35521.x32BRn.rst b/Misc/NEWS.d/next/IDLE/2018-12-20-00-14-15.bpo-35521.x32BRn.rst deleted file mode 100644 index 120de7f6c844..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-20-00-14-15.bpo-35521.x32BRn.rst +++ /dev/null @@ -1,2 +0,0 @@ -Document the IDLE editor code context feature. Add some internal references -within the IDLE doc. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-23-17-42-11.bpo-35208.J5NOg7.rst b/Misc/NEWS.d/next/IDLE/2018-12-23-17-42-11.bpo-35208.J5NOg7.rst deleted file mode 100644 index d47806f62f46..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-23-17-42-11.bpo-35208.J5NOg7.rst +++ /dev/null @@ -1 +0,0 @@ -Squeezer now properly counts wrapped lines before newlines. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-26-13-53-34.bpo-28097.95I9NT.rst b/Misc/NEWS.d/next/IDLE/2018-12-26-13-53-34.bpo-28097.95I9NT.rst deleted file mode 100644 index 83163cf736fe..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-26-13-53-34.bpo-28097.95I9NT.rst +++ /dev/null @@ -1 +0,0 @@ -Add Previous/Next History entries to Shell menu. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-27-15-29-11.bpo-35598.FWOOm8.rst b/Misc/NEWS.d/next/IDLE/2018-12-27-15-29-11.bpo-35598.FWOOm8.rst deleted file mode 100644 index d81cf2c44162..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-27-15-29-11.bpo-35598.FWOOm8.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update config_key: use PEP 8 names and ttk widgets, -make some objects global, and add tests. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-27-17-46-42.bpo-35196.9E-xUh.rst b/Misc/NEWS.d/next/IDLE/2018-12-27-17-46-42.bpo-35196.9E-xUh.rst deleted file mode 100644 index ee90d76010d9..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-27-17-46-42.bpo-35196.9E-xUh.rst +++ /dev/null @@ -1 +0,0 @@ -Speed up squeezer line counting. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-28-01-19-20.bpo-35591.SFpDj2.rst b/Misc/NEWS.d/next/IDLE/2018-12-28-01-19-20.bpo-35591.SFpDj2.rst deleted file mode 100644 index 33f67a4cfe6f..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-28-01-19-20.bpo-35591.SFpDj2.rst +++ /dev/null @@ -1 +0,0 @@ -Find Selection now works when selection not found. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-28-17-16-33.bpo-34055.TmmpzR.rst b/Misc/NEWS.d/next/IDLE/2018-12-28-17-16-33.bpo-34055.TmmpzR.rst deleted file mode 100644 index 7e475fbfa9f3..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-28-17-16-33.bpo-34055.TmmpzR.rst +++ /dev/null @@ -1 +0,0 @@ -Fix erroneous 'smart' indents and newlines in IDLE Shell. diff --git a/Misc/NEWS.d/next/IDLE/2018-12-31-17-04-18.bpo-33987.fD92up.rst b/Misc/NEWS.d/next/IDLE/2018-12-31-17-04-18.bpo-33987.fD92up.rst deleted file mode 100644 index 289a65cf532c..000000000000 --- a/Misc/NEWS.d/next/IDLE/2018-12-31-17-04-18.bpo-33987.fD92up.rst +++ /dev/null @@ -1 +0,0 @@ -Use ttk Frame for ttk widgets. diff --git a/Misc/NEWS.d/next/IDLE/2019-01-02-22-15-01.bpo-35641.QEaANl.rst b/Misc/NEWS.d/next/IDLE/2019-01-02-22-15-01.bpo-35641.QEaANl.rst deleted file mode 100644 index 5abba690be48..000000000000 --- a/Misc/NEWS.d/next/IDLE/2019-01-02-22-15-01.bpo-35641.QEaANl.rst +++ /dev/null @@ -1 +0,0 @@ -Proper format `calltip` when the function has no docstring. diff --git a/Misc/NEWS.d/next/IDLE/2019-01-04-19-14-29.bpo-35660.hMxI7N.rst b/Misc/NEWS.d/next/IDLE/2019-01-04-19-14-29.bpo-35660.hMxI7N.rst deleted file mode 100644 index 1ad83fe29e14..000000000000 --- a/Misc/NEWS.d/next/IDLE/2019-01-04-19-14-29.bpo-35660.hMxI7N.rst +++ /dev/null @@ -1 +0,0 @@ -Fix imports in idlelib.window. diff --git a/Misc/NEWS.d/next/IDLE/2019-01-18-01-24-23.bpo-35769.GqsB34.rst b/Misc/NEWS.d/next/IDLE/2019-01-18-01-24-23.bpo-35769.GqsB34.rst deleted file mode 100644 index 79003a984a9f..000000000000 --- a/Misc/NEWS.d/next/IDLE/2019-01-18-01-24-23.bpo-35769.GqsB34.rst +++ /dev/null @@ -1 +0,0 @@ -Change IDLE's new file name from 'Untitled' to 'untitled' diff --git a/Misc/NEWS.d/next/IDLE/2019-01-18-13-04-30.bpo-35770.2LxJGu.rst b/Misc/NEWS.d/next/IDLE/2019-01-18-13-04-30.bpo-35770.2LxJGu.rst deleted file mode 100644 index 89e4bdef83ef..000000000000 --- a/Misc/NEWS.d/next/IDLE/2019-01-18-13-04-30.bpo-35770.2LxJGu.rst +++ /dev/null @@ -1,3 +0,0 @@ -IDLE macosx deletes Options => Configure IDLE. It previously deleted Window -=> Zoom Height by mistake. (Zoom Height is now on the Options menu). On -Mac, the settings dialog is accessed via Preferences on the IDLE menu. diff --git a/Misc/NEWS.d/next/Library/2017-08-24-17-55-39.bpo-29456.XaB3MP.rst b/Misc/NEWS.d/next/Library/2017-08-24-17-55-39.bpo-29456.XaB3MP.rst deleted file mode 100644 index 9b30bf654bd0..000000000000 --- a/Misc/NEWS.d/next/Library/2017-08-24-17-55-39.bpo-29456.XaB3MP.rst +++ /dev/null @@ -1 +0,0 @@ -Fix bugs in hangul normalization: u1176, u11a7 and u11c3 diff --git a/Misc/NEWS.d/next/Library/2017-09-19-12-38-31.bpo-31508.pDsFJl.rst b/Misc/NEWS.d/next/Library/2017-09-19-12-38-31.bpo-31508.pDsFJl.rst deleted file mode 100644 index b3d49ee3e9a7..000000000000 --- a/Misc/NEWS.d/next/Library/2017-09-19-12-38-31.bpo-31508.pDsFJl.rst +++ /dev/null @@ -1,3 +0,0 @@ -Removed support of arguments in `tkinter.ttk.Treeview.selection`. It was -deprecated in 3.6. Use specialized methods like `selection_set` for -changing the selection. diff --git a/Misc/NEWS.d/next/Library/2017-09-29-16-40-38.bpo-16865.l-f6I_.rst b/Misc/NEWS.d/next/Library/2017-09-29-16-40-38.bpo-16865.l-f6I_.rst deleted file mode 100644 index afaff736bf1c..000000000000 --- a/Misc/NEWS.d/next/Library/2017-09-29-16-40-38.bpo-16865.l-f6I_.rst +++ /dev/null @@ -1 +0,0 @@ -Support arrays >=2GiB in :mod:`ctypes`. Patch by Segev Finer. diff --git a/Misc/NEWS.d/next/Library/2017-10-05-20-41-48.bpo-27645.1Y_Wag.rst b/Misc/NEWS.d/next/Library/2017-10-05-20-41-48.bpo-27645.1Y_Wag.rst deleted file mode 100644 index c4b7185614a5..000000000000 --- a/Misc/NEWS.d/next/Library/2017-10-05-20-41-48.bpo-27645.1Y_Wag.rst +++ /dev/null @@ -1,3 +0,0 @@ -:class:`sqlite3.Connection` now exposes a :class:`~sqlite3.Connection.backup` -method, if the underlying SQLite library is at version 3.6.11 -or higher. Patch by Lele Gaifax. diff --git a/Misc/NEWS.d/next/Library/2017-10-12-22-39-55.bpo-22005.lGP-sc.rst b/Misc/NEWS.d/next/Library/2017-10-12-22-39-55.bpo-22005.lGP-sc.rst deleted file mode 100644 index 951098d0a7a3..000000000000 --- a/Misc/NEWS.d/next/Library/2017-10-12-22-39-55.bpo-22005.lGP-sc.rst +++ /dev/null @@ -1,3 +0,0 @@ -Implemented unpickling instances of :class:`~datetime.datetime`, -:class:`~datetime.date` and :class:`~datetime.time` pickled by Python 2. -``encoding='latin1'`` should be used for successful decoding. diff --git a/Misc/NEWS.d/next/Library/2017-10-24-10-18-35.bpo-31425.1lgw47.rst b/Misc/NEWS.d/next/Library/2017-10-24-10-18-35.bpo-31425.1lgw47.rst deleted file mode 100644 index 26294a9a4765..000000000000 --- a/Misc/NEWS.d/next/Library/2017-10-24-10-18-35.bpo-31425.1lgw47.rst +++ /dev/null @@ -1,3 +0,0 @@ -Add support for sockets of the AF_QIPCRTR address family, supported by the -Linux kernel. This is used to communicate with services, such as GPS or -radio, running on Qualcomm devices. Patch by Bjorn Andersson. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2017-10-29-10-37-55.bpo-31608.wkp8Nw.rst b/Misc/NEWS.d/next/Library/2017-10-29-10-37-55.bpo-31608.wkp8Nw.rst deleted file mode 100644 index d657a8697361..000000000000 --- a/Misc/NEWS.d/next/Library/2017-10-29-10-37-55.bpo-31608.wkp8Nw.rst +++ /dev/null @@ -1,2 +0,0 @@ -Raise a ``TypeError`` instead of crashing if a ``collections.deque`` subclass -returns a non-deque from ``__new__``. Patch by Oren Milman. diff --git a/Misc/NEWS.d/next/Library/2017-10-31.bpo-31908.g4xh8x.rst b/Misc/NEWS.d/next/Library/2017-10-31.bpo-31908.g4xh8x.rst deleted file mode 100644 index 700bc690764f..000000000000 --- a/Misc/NEWS.d/next/Library/2017-10-31.bpo-31908.g4xh8x.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix output of cover files for ``trace`` module command-line tool. -Previously emitted cover files only when ``--missing`` option was used. -Patch by Michael Selik. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2017-11-01-15-44-48.bpo-31680.yO6oSC.rst b/Misc/NEWS.d/next/Library/2017-11-01-15-44-48.bpo-31680.yO6oSC.rst deleted file mode 100644 index 3cf33ac9bd63..000000000000 --- a/Misc/NEWS.d/next/Library/2017-11-01-15-44-48.bpo-31680.yO6oSC.rst +++ /dev/null @@ -1 +0,0 @@ -Added :data:`curses.ncurses_version`. diff --git a/Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ7.rst b/Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ7.rst deleted file mode 100644 index 9c895c53de12..000000000000 --- a/Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ7.rst +++ /dev/null @@ -1 +0,0 @@ -The ZipFile class now recurses directories in a reproducible way. diff --git a/Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ8.rst b/Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ8.rst deleted file mode 100644 index a622e7ed6e5d..000000000000 --- a/Misc/NEWS.d/next/Library/2017-11-27-15-09-49.bpo-30693.yC4mJ8.rst +++ /dev/null @@ -1 +0,0 @@ -The TarFile class now recurses directories in a reproducible way. diff --git a/Misc/NEWS.d/next/Library/2017-11-28-10-23-13.bpo-32147.PI2k1Y.rst b/Misc/NEWS.d/next/Library/2017-11-28-10-23-13.bpo-32147.PI2k1Y.rst deleted file mode 100644 index e02a97c5e9e6..000000000000 --- a/Misc/NEWS.d/next/Library/2017-11-28-10-23-13.bpo-32147.PI2k1Y.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`binascii.unhexlify` is now up to 2 times faster. -Patch by Sergey Fedoseev. diff --git a/Misc/NEWS.d/next/Library/2017-12-06-10-10-10.bpo-32221.ideco_.rst b/Misc/NEWS.d/next/Library/2017-12-06-10-10-10.bpo-32221.ideco_.rst deleted file mode 100644 index b45bb1b5417c..000000000000 --- a/Misc/NEWS.d/next/Library/2017-12-06-10-10-10.bpo-32221.ideco_.rst +++ /dev/null @@ -1,4 +0,0 @@ -Various functions returning tuple containing IPv6 addresses now omit ``%scope`` -part since the same information is already encoded in *scopeid* tuple item. -Especially this speeds up :func:`socket.recvfrom` when it receives multicast -packet since useless resolving of network interface name is omitted. diff --git a/Misc/NEWS.d/next/Library/2017-12-16-11-40-52.bpo-29877.SfWhmz.rst b/Misc/NEWS.d/next/Library/2017-12-16-11-40-52.bpo-29877.SfWhmz.rst deleted file mode 100644 index cc09533b7124..000000000000 --- a/Misc/NEWS.d/next/Library/2017-12-16-11-40-52.bpo-29877.SfWhmz.rst +++ /dev/null @@ -1,2 +0,0 @@ -compileall: import ProcessPoolExecutor only when needed, preventing hangs on -low resource platforms diff --git a/Misc/NEWS.d/next/Library/2017-12-27-21-55-19.bpo-31639.l3avDJ.rst b/Misc/NEWS.d/next/Library/2017-12-27-21-55-19.bpo-31639.l3avDJ.rst deleted file mode 100644 index 741b276a3022..000000000000 --- a/Misc/NEWS.d/next/Library/2017-12-27-21-55-19.bpo-31639.l3avDJ.rst +++ /dev/null @@ -1,2 +0,0 @@ -http.server now exposes a ThreadingHTTPServer class and uses it when the -module is run with ``-m`` to cope with web browsers pre-opening sockets. diff --git a/Misc/NEWS.d/next/Library/2018-01-01-00-16-59.bpo-8525.Dq8s63.rst b/Misc/NEWS.d/next/Library/2018-01-01-00-16-59.bpo-8525.Dq8s63.rst deleted file mode 100644 index d8af500ab63c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-01-01-00-16-59.bpo-8525.Dq8s63.rst +++ /dev/null @@ -1,4 +0,0 @@ -help() on a type now displays builtin subclasses. This is intended primarily -to help with notification of more specific exception subclasses. - -Patch by Sanyam Khurana. diff --git a/Misc/NEWS.d/next/Library/2018-01-07-17-43-10.bpo-32512.flC-dE.rst b/Misc/NEWS.d/next/Library/2018-01-07-17-43-10.bpo-32512.flC-dE.rst deleted file mode 100644 index 0a7763daffad..000000000000 --- a/Misc/NEWS.d/next/Library/2018-01-07-17-43-10.bpo-32512.flC-dE.rst +++ /dev/null @@ -1,2 +0,0 @@ -:mod:`profile` CLI accepts `-m module_name` as an alternative to -script path. diff --git a/Misc/NEWS.d/next/Library/2018-01-18-13-09-00.bpo-32585.qpeijr.rst b/Misc/NEWS.d/next/Library/2018-01-18-13-09-00.bpo-32585.qpeijr.rst deleted file mode 100644 index 0a602045bacd..000000000000 --- a/Misc/NEWS.d/next/Library/2018-01-18-13-09-00.bpo-32585.qpeijr.rst +++ /dev/null @@ -1 +0,0 @@ -Add Ttk spinbox widget to :mod:`tkinter.ttk`. Patch by Alan D Moore. diff --git a/Misc/NEWS.d/next/Library/2018-01-18-23-34-17.bpo-31848.M2cldy.rst b/Misc/NEWS.d/next/Library/2018-01-18-23-34-17.bpo-31848.M2cldy.rst deleted file mode 100644 index c8e61acb0b06..000000000000 --- a/Misc/NEWS.d/next/Library/2018-01-18-23-34-17.bpo-31848.M2cldy.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix the error handling in Aifc_read.initfp() when the SSND chunk is not found. -Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Library/2018-01-20-23-17-25.bpo-24334.GZuQLv.rst b/Misc/NEWS.d/next/Library/2018-01-20-23-17-25.bpo-24334.GZuQLv.rst deleted file mode 100644 index 2b4877fad7e1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-01-20-23-17-25.bpo-24334.GZuQLv.rst +++ /dev/null @@ -1,4 +0,0 @@ -Internal implementation details of ssl module were cleaned up. The SSLSocket -has one less layer of indirection. Owner and session information are now -handled by the SSLSocket and SSLObject constructor. Channel binding -implementation has been simplified. diff --git a/Misc/NEWS.d/next/Library/2018-01-21-15-01-50.bpo-31453.cZiZBe.rst b/Misc/NEWS.d/next/Library/2018-01-21-15-01-50.bpo-31453.cZiZBe.rst deleted file mode 100644 index 6d43dfd8207d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-01-21-15-01-50.bpo-31453.cZiZBe.rst +++ /dev/null @@ -1,4 +0,0 @@ -Add TLSVersion constants and SSLContext.maximum_version / minimum_version -attributes. The new API wraps OpenSSL 1.1 -https://www.openssl.org/docs/man1.1.0/ssl/SSL_CTX_set_min_proto_version.html -feature. diff --git a/Misc/NEWS.d/next/Library/2018-01-30-17-46-18.bpo-32727.aHVsRC.rst b/Misc/NEWS.d/next/Library/2018-01-30-17-46-18.bpo-32727.aHVsRC.rst deleted file mode 100644 index 22c219636de2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-01-30-17-46-18.bpo-32727.aHVsRC.rst +++ /dev/null @@ -1 +0,0 @@ -Do not include name field in SMTP envelope from address. Patch by St?phane Wirtel diff --git a/Misc/NEWS.d/next/Library/2018-02-01-01-34-47.bpo-32734.gCV9AD.rst b/Misc/NEWS.d/next/Library/2018-02-01-01-34-47.bpo-32734.gCV9AD.rst deleted file mode 100644 index 14d4bbdade75..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-01-01-34-47.bpo-32734.gCV9AD.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed ``asyncio.Lock()`` safety issue which allowed acquiring and locking -the same lock multiple times, without it being free. Patch by Bar Harel. diff --git a/Misc/NEWS.d/next/Library/2018-02-01-15-53-35.bpo-32691.VLWVTq.rst b/Misc/NEWS.d/next/Library/2018-02-01-15-53-35.bpo-32691.VLWVTq.rst deleted file mode 100644 index 93f898e9c689..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-01-15-53-35.bpo-32691.VLWVTq.rst +++ /dev/null @@ -1 +0,0 @@ -Use mod_spec.parent when running modules with pdb diff --git a/Misc/NEWS.d/next/Library/2018-02-01-17-54-08.bpo-32741.KUvOPL.rst b/Misc/NEWS.d/next/Library/2018-02-01-17-54-08.bpo-32741.KUvOPL.rst deleted file mode 100644 index 651e7666157a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-01-17-54-08.bpo-32741.KUvOPL.rst +++ /dev/null @@ -1 +0,0 @@ -Implement ``asyncio.TimerHandle.when()`` method. diff --git a/Misc/NEWS.d/next/Library/2018-02-02-17-21-24.bpo-32749.u5scIn.rst b/Misc/NEWS.d/next/Library/2018-02-02-17-21-24.bpo-32749.u5scIn.rst deleted file mode 100644 index 9665ff1f8ec8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-02-17-21-24.bpo-32749.u5scIn.rst +++ /dev/null @@ -1,3 +0,0 @@ -A :mod:`dbm.dumb` database opened with flags 'r' is now read-only. -:func:`dbm.dumb.open` with flags 'r' and 'w' no longer creates a database if -it does not exist. diff --git a/Misc/NEWS.d/next/Library/2018-02-05-13-31-42.bpo-32647.ktmfR_.rst b/Misc/NEWS.d/next/Library/2018-02-05-13-31-42.bpo-32647.ktmfR_.rst deleted file mode 100644 index 04fc0247bcde..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-05-13-31-42.bpo-32647.ktmfR_.rst +++ /dev/null @@ -1,2 +0,0 @@ -The ctypes module used to depend on indirect linking for dlopen. The shared -extension is now explicitly linked against libdl on platforms with dl. diff --git a/Misc/NEWS.d/next/Library/2018-02-05-21-28-28.bpo-32777.C-wIXF.rst b/Misc/NEWS.d/next/Library/2018-02-05-21-28-28.bpo-32777.C-wIXF.rst deleted file mode 100644 index d5d7d7b27dc7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-05-21-28-28.bpo-32777.C-wIXF.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a rare but potential pre-exec child process deadlock in subprocess on -POSIX systems when marking file descriptors inheritable on exec in the child -process. This bug appears to have been introduced in 3.4. diff --git a/Misc/NEWS.d/next/Library/2018-02-06-17-58-15.bpo-32622.AE0Jz7.rst b/Misc/NEWS.d/next/Library/2018-02-06-17-58-15.bpo-32622.AE0Jz7.rst deleted file mode 100644 index 456a6dc55959..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-06-17-58-15.bpo-32622.AE0Jz7.rst +++ /dev/null @@ -1 +0,0 @@ -Implement native fast sendfile for Windows proactor event loop. diff --git a/Misc/NEWS.d/next/Library/2018-02-07-19-12-10.bpo-32775.-T77_c.rst b/Misc/NEWS.d/next/Library/2018-02-07-19-12-10.bpo-32775.-T77_c.rst deleted file mode 100644 index ed563c17fdc8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-07-19-12-10.bpo-32775.-T77_c.rst +++ /dev/null @@ -1,5 +0,0 @@ -:func:`fnmatch.translate()` no longer produces patterns which contain set -operations. Sets starting with '[' or containing '--', '&&', '~~' or '||' -will be interpreted differently in regular expressions in future versions. -Currently they emit warnings. fnmatch.translate() now avoids producing -patterns containing such sets by accident. diff --git a/Misc/NEWS.d/next/Library/2018-02-08-00-47-07.bpo-32792.NtyDb4.rst b/Misc/NEWS.d/next/Library/2018-02-08-00-47-07.bpo-32792.NtyDb4.rst deleted file mode 100644 index 1f7df62cc3e1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-08-00-47-07.bpo-32792.NtyDb4.rst +++ /dev/null @@ -1 +0,0 @@ -collections.ChainMap() preserves the order of the underlying mappings. diff --git a/Misc/NEWS.d/next/Library/2018-02-08-18-59-11.bpo-30688.zBh4TH.rst b/Misc/NEWS.d/next/Library/2018-02-08-18-59-11.bpo-30688.zBh4TH.rst deleted file mode 100644 index 7d31680d651a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-08-18-59-11.bpo-30688.zBh4TH.rst +++ /dev/null @@ -1,2 +0,0 @@ -Added support of ``\N{name}`` escapes in regular expressions. Based on -patch by Jonathan Eunice. diff --git a/Misc/NEWS.d/next/Library/2018-02-09-14-44-43.bpo-30157.lEiiAK.rst b/Misc/NEWS.d/next/Library/2018-02-09-14-44-43.bpo-30157.lEiiAK.rst deleted file mode 100644 index 9f651930ac2b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-09-14-44-43.bpo-30157.lEiiAK.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed guessing quote and delimiter in csv.Sniffer.sniff() when only the last -field is quoted. Patch by Jake Davis. diff --git a/Misc/NEWS.d/next/Library/2018-02-09-21-41-56.bpo-31787.owSZ2t.rst b/Misc/NEWS.d/next/Library/2018-02-09-21-41-56.bpo-31787.owSZ2t.rst deleted file mode 100644 index f0cde59d740f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-09-21-41-56.bpo-31787.owSZ2t.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed refleaks of ``__init__()`` methods in various modules. -(Contributed by Oren Milman) diff --git a/Misc/NEWS.d/next/Library/2018-02-10-13-51-56.bpo-32394.dFM9SI.rst b/Misc/NEWS.d/next/Library/2018-02-10-13-51-56.bpo-32394.dFM9SI.rst deleted file mode 100644 index ee5807619a93..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-10-13-51-56.bpo-32394.dFM9SI.rst +++ /dev/null @@ -1,2 +0,0 @@ -socket: Remove TCP_FASTOPEN,TCP_KEEPCNT,TCP_KEEPIDLE,TCP_KEEPINTVL flags on -older version Windows during run-time. diff --git a/Misc/NEWS.d/next/Library/2018-02-10-23-41-05.bpo-19675.-dj35-.rst b/Misc/NEWS.d/next/Library/2018-02-10-23-41-05.bpo-19675.-dj35-.rst deleted file mode 100644 index 958550d3e8d7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-10-23-41-05.bpo-19675.-dj35-.rst +++ /dev/null @@ -1 +0,0 @@ -``multiprocessing.Pool`` no longer leaks processes if its initialization fails. diff --git a/Misc/NEWS.d/next/Library/2018-02-11-15-54-41.bpo-32819.ZTRX2Q.rst b/Misc/NEWS.d/next/Library/2018-02-11-15-54-41.bpo-32819.ZTRX2Q.rst deleted file mode 100644 index 7d57bf697826..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-11-15-54-41.bpo-32819.ZTRX2Q.rst +++ /dev/null @@ -1,3 +0,0 @@ -ssl.match_hostname() has been simplified and no longer depends on re and -ipaddress module for wildcard and IP addresses. Error reporting for invalid -wildcards has been improved. diff --git a/Misc/NEWS.d/next/Library/2018-02-14-00-21-24.bpo-32841.bvHDOc.rst b/Misc/NEWS.d/next/Library/2018-02-14-00-21-24.bpo-32841.bvHDOc.rst deleted file mode 100644 index a6d45669d027..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-14-00-21-24.bpo-32841.bvHDOc.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed `asyncio.Condition` issue which silently ignored cancellation after -notifying and cancelling a conditional lock. Patch by Bar Harel. diff --git a/Misc/NEWS.d/next/Library/2018-02-15-08-18-52.bpo-31333.4fF-gM.rst b/Misc/NEWS.d/next/Library/2018-02-15-08-18-52.bpo-31333.4fF-gM.rst deleted file mode 100644 index 63fc72a5c11b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-15-08-18-52.bpo-31333.4fF-gM.rst +++ /dev/null @@ -1,10 +0,0 @@ -``_abc`` module is added. It is a speedup module with C implementations for -various functions and methods in ``abc``. Creating an ABC subclass and calling -``isinstance`` or ``issubclass`` with an ABC subclass are up to 1.5x faster. -In addition, this makes Python start-up up to 10% faster. - -Note that the new implementation hides internal registry and caches, previously -accessible via private attributes ``_abc_registry``, ``_abc_cache``, and -``_abc_negative_cache``. There are three debugging helper methods that can be -used instead ``_dump_registry``, ``_abc_registry_clear``, and -``_abc_caches_clear``. diff --git a/Misc/NEWS.d/next/Library/2018-02-15-12-04-29.bpo-32852.HDqIxM.rst b/Misc/NEWS.d/next/Library/2018-02-15-12-04-29.bpo-32852.HDqIxM.rst deleted file mode 100644 index 8eabbfaea222..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-15-12-04-29.bpo-32852.HDqIxM.rst +++ /dev/null @@ -1 +0,0 @@ -Make sure sys.argv remains as a list when running trace. diff --git a/Misc/NEWS.d/next/Library/2018-02-16-14-37-14.bpo-32857.-XljAx.rst b/Misc/NEWS.d/next/Library/2018-02-16-14-37-14.bpo-32857.-XljAx.rst deleted file mode 100644 index 4ebbde4d1946..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-16-14-37-14.bpo-32857.-XljAx.rst +++ /dev/null @@ -1 +0,0 @@ -In :mod:`tkinter`, ``after_cancel(None)`` now raises a :exc:`ValueError` instead of canceling the first scheduled function. Patch by Cheryl Sabella. diff --git a/Misc/NEWS.d/next/Library/2018-02-17-19-20-19.bpo-21060.S1Z-x6.rst b/Misc/NEWS.d/next/Library/2018-02-17-19-20-19.bpo-21060.S1Z-x6.rst deleted file mode 100644 index 4e0a11362086..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-17-19-20-19.bpo-21060.S1Z-x6.rst +++ /dev/null @@ -1,3 +0,0 @@ -Rewrite confusing message from setup.py upload from -"No dist file created in earlier command" to the more helpful -"Must create and upload files in one command". diff --git a/Misc/NEWS.d/next/Library/2018-02-19-14-27-51.bpo-32556.CsRsgr.rst b/Misc/NEWS.d/next/Library/2018-02-19-14-27-51.bpo-32556.CsRsgr.rst deleted file mode 100644 index 1a475b308f5e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-19-14-27-51.bpo-32556.CsRsgr.rst +++ /dev/null @@ -1,2 +0,0 @@ -nt._getfinalpathname, nt._getvolumepathname and nt._getdiskusage now -correctly convert from bytes. diff --git a/Misc/NEWS.d/next/Library/2018-02-19-17-46-31.bpo-32859.kAT-Xp.rst b/Misc/NEWS.d/next/Library/2018-02-19-17-46-31.bpo-32859.kAT-Xp.rst deleted file mode 100644 index 755bdc118610..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-19-17-46-31.bpo-32859.kAT-Xp.rst +++ /dev/null @@ -1,2 +0,0 @@ -In ``os.dup2``, don't check every call whether the ``dup3`` syscall exists -or not. diff --git a/Misc/NEWS.d/next/Library/2018-02-23-12-21-41.bpo-32759.M-y9GA.rst b/Misc/NEWS.d/next/Library/2018-02-23-12-21-41.bpo-32759.M-y9GA.rst deleted file mode 100644 index e9bd326b4af1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-23-12-21-41.bpo-32759.M-y9GA.rst +++ /dev/null @@ -1 +0,0 @@ -Free unused arenas in multiprocessing.heap. diff --git a/Misc/NEWS.d/next/Library/2018-02-23-19-12-04.bpo-32922.u-xe0B.rst b/Misc/NEWS.d/next/Library/2018-02-23-19-12-04.bpo-32922.u-xe0B.rst deleted file mode 100644 index 412e588586c0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-23-19-12-04.bpo-32922.u-xe0B.rst +++ /dev/null @@ -1,2 +0,0 @@ -dbm.open() now encodes filename with the filesystem encoding rather than -default encoding. diff --git a/Misc/NEWS.d/next/Library/2018-02-24-21-40-42.bpo-30622.dQjxSe.rst b/Misc/NEWS.d/next/Library/2018-02-24-21-40-42.bpo-30622.dQjxSe.rst deleted file mode 100644 index bcb659b24dd3..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-24-21-40-42.bpo-30622.dQjxSe.rst +++ /dev/null @@ -1 +0,0 @@ -The ssl module now detects missing NPN support in LibreSSL. diff --git a/Misc/NEWS.d/next/Library/2018-02-25-10-17-23.bpo-32146.xOzUFW.rst b/Misc/NEWS.d/next/Library/2018-02-25-10-17-23.bpo-32146.xOzUFW.rst deleted file mode 100644 index f071c7101806..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-25-10-17-23.bpo-32146.xOzUFW.rst +++ /dev/null @@ -1,2 +0,0 @@ -Document the interaction between frozen executables and the spawn and -forkserver start methods in multiprocessing. diff --git a/Misc/NEWS.d/next/Library/2018-02-25-13-06-21.bpo-32947.mqStVW.rst b/Misc/NEWS.d/next/Library/2018-02-25-13-06-21.bpo-32947.mqStVW.rst deleted file mode 100644 index 28de360c3671..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-25-13-06-21.bpo-32947.mqStVW.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add OP_ENABLE_MIDDLEBOX_COMPAT and test workaround for TLSv1.3 for future -compatibility with OpenSSL 1.1.1. diff --git a/Misc/NEWS.d/next/Library/2018-02-25-13-47-48.bpo-32929.X2gTDH.rst b/Misc/NEWS.d/next/Library/2018-02-25-13-47-48.bpo-32929.X2gTDH.rst deleted file mode 100644 index b8a470cbf280..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-25-13-47-48.bpo-32929.X2gTDH.rst +++ /dev/null @@ -1,6 +0,0 @@ -Remove the tri-state parameter "hash", and add the boolean "unsafe_hash". If -unsafe_hash is True, add a __hash__ function, but if a __hash__ exists, -raise TypeError. If unsafe_hash is False, add a __hash__ based on the -values of eq= and frozen=. The unsafe_hash=False behavior is the same as -the old hash=None behavior. unsafe_hash=False is the default, just as -hash=None used to be. diff --git a/Misc/NEWS.d/next/Library/2018-02-25-18-22-01.bpo-32951.gHrCXq.rst b/Misc/NEWS.d/next/Library/2018-02-25-18-22-01.bpo-32951.gHrCXq.rst deleted file mode 100644 index 9c038cf25979..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-25-18-22-01.bpo-32951.gHrCXq.rst +++ /dev/null @@ -1,3 +0,0 @@ -Direct instantiation of SSLSocket and SSLObject objects is now prohibited. -The constructors were never documented, tested, or designed as public -constructors. Users were suppose to use ssl.wrap_socket() or SSLContext. diff --git a/Misc/NEWS.d/next/Library/2018-02-26-09-08-07.bpo-32257.6ElnUt.rst b/Misc/NEWS.d/next/Library/2018-02-26-09-08-07.bpo-32257.6ElnUt.rst deleted file mode 100644 index e74c39b68100..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-26-09-08-07.bpo-32257.6ElnUt.rst +++ /dev/null @@ -1,2 +0,0 @@ -The ssl module now contains OP_NO_RENEGOTIATION constant, available with -OpenSSL 1.1.0h or 1.1.1. diff --git a/Misc/NEWS.d/next/Library/2018-02-26-13-16-36.bpo-32713.55yegW.rst b/Misc/NEWS.d/next/Library/2018-02-26-13-16-36.bpo-32713.55yegW.rst deleted file mode 100644 index bb5d64a351cb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-26-13-16-36.bpo-32713.55yegW.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed tarfile.itn handling of out-of-bounds float values. Patch by Joffrey Fuhrer. diff --git a/Misc/NEWS.d/next/Library/2018-02-26-20-04-40.bpo-32960.48r0Ml.rst b/Misc/NEWS.d/next/Library/2018-02-26-20-04-40.bpo-32960.48r0Ml.rst deleted file mode 100644 index 4ad1fa17571d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-26-20-04-40.bpo-32960.48r0Ml.rst +++ /dev/null @@ -1,3 +0,0 @@ -For dataclasses, disallow inheriting frozen from non-frozen classes, and -also disallow inheriting non-frozen from frozen classes. This restriction -will be relaxed at a future date. diff --git a/Misc/NEWS.d/next/Library/2018-02-28-13-08-00.bpo-32844.u8tnAe.rst b/Misc/NEWS.d/next/Library/2018-02-28-13-08-00.bpo-32844.u8tnAe.rst deleted file mode 100644 index 67412fe5ba46..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-28-13-08-00.bpo-32844.u8tnAe.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix wrong redirection of a low descriptor (0 or 1) to stderr in subprocess -if another low descriptor is closed. diff --git a/Misc/NEWS.d/next/Library/2018-02-28-18-39-48.bpo-32970.IPWtbS.rst b/Misc/NEWS.d/next/Library/2018-02-28-18-39-48.bpo-32970.IPWtbS.rst deleted file mode 100644 index e97c16df5a0d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-02-28-18-39-48.bpo-32970.IPWtbS.rst +++ /dev/null @@ -1 +0,0 @@ -Improved disassembly of the MAKE_FUNCTION instruction. diff --git a/Misc/NEWS.d/next/Library/2018-03-01-17-49-56.bpo-32056.IlpfgE.rst b/Misc/NEWS.d/next/Library/2018-03-01-17-49-56.bpo-32056.IlpfgE.rst deleted file mode 100644 index 421aa3767794..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-01-17-49-56.bpo-32056.IlpfgE.rst +++ /dev/null @@ -1,3 +0,0 @@ -Improved exceptions raised for invalid number of channels and sample width -when read an audio file in modules :mod:`aifc`, :mod:`wave` and -:mod:`sunau`. diff --git a/Misc/NEWS.d/next/Library/2018-03-06-00-19-41.bpo-32969.rGTKa0.rst b/Misc/NEWS.d/next/Library/2018-03-06-00-19-41.bpo-32969.rGTKa0.rst deleted file mode 100644 index a92307e67bfa..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-06-00-19-41.bpo-32969.rGTKa0.rst +++ /dev/null @@ -1,2 +0,0 @@ -Expose several missing constants in zlib and fix corresponding -documentation. diff --git a/Misc/NEWS.d/next/Library/2018-03-06-11-54-59.bpo-33009.-Ekysb.rst b/Misc/NEWS.d/next/Library/2018-03-06-11-54-59.bpo-33009.-Ekysb.rst deleted file mode 100644 index 96bc70a8c944..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-06-11-54-59.bpo-33009.-Ekysb.rst +++ /dev/null @@ -1 +0,0 @@ -Fix inspect.signature() for single-parameter partialmethods. diff --git a/Misc/NEWS.d/next/Library/2018-03-06-20-30-20.bpo-32999.lgFXWl.rst b/Misc/NEWS.d/next/Library/2018-03-06-20-30-20.bpo-32999.lgFXWl.rst deleted file mode 100644 index e2e3dedbea84..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-06-20-30-20.bpo-32999.lgFXWl.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix C implementation of ``ABC.__subclasscheck__(cls, subclass)`` crashed when -``subclass`` is not a type object. diff --git a/Misc/NEWS.d/next/Library/2018-03-07-19-37-00.bpo-22674.2sIMmM.rst b/Misc/NEWS.d/next/Library/2018-03-07-19-37-00.bpo-22674.2sIMmM.rst deleted file mode 100644 index a9af5da46ef1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-07-19-37-00.bpo-22674.2sIMmM.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add the strsignal() function in the signal module that returns the system -description of the given signal, as returned by strsignal(3). diff --git a/Misc/NEWS.d/next/Library/2018-03-07-22-28-17.bpo-27683.572Rv4.rst b/Misc/NEWS.d/next/Library/2018-03-07-22-28-17.bpo-27683.572Rv4.rst deleted file mode 100644 index 4e6dfa8e978c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-07-22-28-17.bpo-27683.572Rv4.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a regression in :mod:`ipaddress` that result of :meth:`hosts` -is empty when the network is constructed by a tuple containing an -integer mask and only 1 bit left for addresses. diff --git a/Misc/NEWS.d/next/Library/2018-03-09-23-07-07.bpo-33037.nAJ3at.rst b/Misc/NEWS.d/next/Library/2018-03-09-23-07-07.bpo-33037.nAJ3at.rst deleted file mode 100644 index 2732eeb4534b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-09-23-07-07.bpo-33037.nAJ3at.rst +++ /dev/null @@ -1 +0,0 @@ -Skip sending/receiving data after SSL transport closing. diff --git a/Misc/NEWS.d/next/Library/2018-03-11-00-20-26.bpo-30249.KSkgLB.rst b/Misc/NEWS.d/next/Library/2018-03-11-00-20-26.bpo-30249.KSkgLB.rst deleted file mode 100644 index f30dff3124eb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-11-00-20-26.bpo-30249.KSkgLB.rst +++ /dev/null @@ -1,2 +0,0 @@ -Improve struct.unpack_from() exception messages for problems with the buffer -size and offset. diff --git a/Misc/NEWS.d/next/Library/2018-03-11-08-44-12.bpo-33034.bpb23d.rst b/Misc/NEWS.d/next/Library/2018-03-11-08-44-12.bpo-33034.bpb23d.rst deleted file mode 100644 index c81683abf592..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-11-08-44-12.bpo-33034.bpb23d.rst +++ /dev/null @@ -1,3 +0,0 @@ -Providing an explicit error message when casting the port property to anything -that is not an integer value using ``urlparse()`` and ``urlsplit()``. -Patch by Matt Eaton. diff --git a/Misc/NEWS.d/next/Library/2018-03-11-19-03-52.bpo-31804.i8KUMp.rst b/Misc/NEWS.d/next/Library/2018-03-11-19-03-52.bpo-31804.i8KUMp.rst deleted file mode 100644 index 7fcede297aca..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-11-19-03-52.bpo-31804.i8KUMp.rst +++ /dev/null @@ -1,2 +0,0 @@ -Avoid failing in multiprocessing.Process if the standard streams are closed -or None at exit. diff --git a/Misc/NEWS.d/next/Library/2018-03-12-00-27-56.bpo-33021.m19B9T.rst b/Misc/NEWS.d/next/Library/2018-03-12-00-27-56.bpo-33021.m19B9T.rst deleted file mode 100644 index 50dfafe600d8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-12-00-27-56.bpo-33021.m19B9T.rst +++ /dev/null @@ -1,2 +0,0 @@ -Release the GIL during fstat() calls, avoiding hang of all threads when -calling mmap.mmap(), os.urandom(), and random.seed(). Patch by Nir Soffer. diff --git a/Misc/NEWS.d/next/Library/2018-03-12-16-40-00.bpo-33056.lNN9Eh.rst b/Misc/NEWS.d/next/Library/2018-03-12-16-40-00.bpo-33056.lNN9Eh.rst deleted file mode 100644 index 6acc19a36dc8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-12-16-40-00.bpo-33056.lNN9Eh.rst +++ /dev/null @@ -1 +0,0 @@ -FIX properly close leaking fds in concurrent.futures.ProcessPoolExecutor. diff --git a/Misc/NEWS.d/next/Library/2018-03-12-19-58-25.bpo-33064.LO2KIY.rst b/Misc/NEWS.d/next/Library/2018-03-12-19-58-25.bpo-33064.LO2KIY.rst deleted file mode 100644 index c8e955e335cb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-12-19-58-25.bpo-33064.LO2KIY.rst +++ /dev/null @@ -1,2 +0,0 @@ -lib2to3 now properly supports trailing commas after ``*args`` and -``**kwargs`` in function signatures. diff --git a/Misc/NEWS.d/next/Library/2018-03-15-07-38-00.bpo-33078.RmjUF5.rst b/Misc/NEWS.d/next/Library/2018-03-15-07-38-00.bpo-33078.RmjUF5.rst deleted file mode 100644 index 55c2b1de8668..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-15-07-38-00.bpo-33078.RmjUF5.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix the size handling in multiprocessing.Queue when a pickling error -occurs. diff --git a/Misc/NEWS.d/next/Library/2018-03-16-16-07-33.bpo-33061.TRTTek.rst b/Misc/NEWS.d/next/Library/2018-03-16-16-07-33.bpo-33061.TRTTek.rst deleted file mode 100644 index b82ffb73a143..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-16-16-07-33.bpo-33061.TRTTek.rst +++ /dev/null @@ -1 +0,0 @@ -Add missing ``NoReturn`` to ``__all__`` in typing.py diff --git a/Misc/NEWS.d/next/Library/2018-03-18-15-57-32.bpo-32968.E4G7BO.rst b/Misc/NEWS.d/next/Library/2018-03-18-15-57-32.bpo-32968.E4G7BO.rst deleted file mode 100644 index 16bf2f342d4c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-18-15-57-32.bpo-32968.E4G7BO.rst +++ /dev/null @@ -1 +0,0 @@ -Modulo and floor division involving Fraction and float should return float. diff --git a/Misc/NEWS.d/next/Library/2018-03-18-16-48-23.bpo-33097.Yl4gI2.rst b/Misc/NEWS.d/next/Library/2018-03-18-16-48-23.bpo-33097.Yl4gI2.rst deleted file mode 100644 index d9411eb51623..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-18-16-48-23.bpo-33097.Yl4gI2.rst +++ /dev/null @@ -1,2 +0,0 @@ -Raise RuntimeError when ``executor.submit`` is called during interpreter -shutdown. diff --git a/Misc/NEWS.d/next/Library/2018-03-18-17-38-48.bpo-32953.t8WAWN.rst b/Misc/NEWS.d/next/Library/2018-03-18-17-38-48.bpo-32953.t8WAWN.rst deleted file mode 100644 index 03c1162c7833..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-18-17-38-48.bpo-32953.t8WAWN.rst +++ /dev/null @@ -1,4 +0,0 @@ -If a non-dataclass inherits from a frozen dataclass, allow attributes to be -added to the derived class. Only attributes from the frozen dataclass -cannot be assigned to. Require all dataclasses in a hierarchy to be either -all frozen or all non-frozen. diff --git a/Misc/NEWS.d/next/Library/2018-03-19-20-47-00.bpo-33100.chyIO4.rst b/Misc/NEWS.d/next/Library/2018-03-19-20-47-00.bpo-33100.chyIO4.rst deleted file mode 100644 index 080a55c0cfb7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-19-20-47-00.bpo-33100.chyIO4.rst +++ /dev/null @@ -1,2 +0,0 @@ -Dataclasses: If a field has a default value that's a MemberDescriptorType, -then it's from that field being in __slots__, not an actual default value. diff --git a/Misc/NEWS.d/next/Library/2018-03-20-20-53-21.bpo-32896.ewW3Ln.rst b/Misc/NEWS.d/next/Library/2018-03-20-20-53-21.bpo-32896.ewW3Ln.rst deleted file mode 100644 index 8363da4667a1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-20-20-53-21.bpo-32896.ewW3Ln.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix an error where subclassing a dataclass with a field that uses a -default_factory would generate an incorrect class. diff --git a/Misc/NEWS.d/next/Library/2018-03-21-16-52-26.bpo-33116.Tvzerj.rst b/Misc/NEWS.d/next/Library/2018-03-21-16-52-26.bpo-33116.Tvzerj.rst deleted file mode 100644 index 90072d8e3030..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-21-16-52-26.bpo-33116.Tvzerj.rst +++ /dev/null @@ -1 +0,0 @@ -Add 'Field' to dataclasses.__all__. diff --git a/Misc/NEWS.d/next/Library/2018-03-21-17-59-39.bpo-33078.PQOniT.rst b/Misc/NEWS.d/next/Library/2018-03-21-17-59-39.bpo-33078.PQOniT.rst deleted file mode 100644 index 8b71bb32e0ec..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-21-17-59-39.bpo-33078.PQOniT.rst +++ /dev/null @@ -1 +0,0 @@ -Fix the failure on OSX caused by the tests relying on sem_getvalue diff --git a/Misc/NEWS.d/next/Library/2018-03-22-16-05-56.bpo-32505.YK1N8v.rst b/Misc/NEWS.d/next/Library/2018-03-22-16-05-56.bpo-32505.YK1N8v.rst deleted file mode 100644 index 91e97bf53f65..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-22-16-05-56.bpo-32505.YK1N8v.rst +++ /dev/null @@ -1,2 +0,0 @@ -Raise TypeError if a member variable of a dataclass is of type Field, but -doesn't have a type annotation. diff --git a/Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst b/Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst deleted file mode 100644 index 635aabbde031..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-24-15-08-24.bpo-33127.olJmHv.rst +++ /dev/null @@ -1 +0,0 @@ -The ssl module now compiles with LibreSSL 2.7.1. diff --git a/Misc/NEWS.d/next/Library/2018-03-24-19-34-26.bpo-33134.hbVeIX.rst b/Misc/NEWS.d/next/Library/2018-03-24-19-34-26.bpo-33134.hbVeIX.rst deleted file mode 100644 index 3f4ce84bef76..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-24-19-34-26.bpo-33134.hbVeIX.rst +++ /dev/null @@ -1,3 +0,0 @@ -When computing dataclass's __hash__, use the lookup table to contain the -function which returns the __hash__ value. This is an improvement over -looking up a string, and then testing that string to see what to do. diff --git a/Misc/NEWS.d/next/Library/2018-03-24-19-54-48.bpo-32873.cHyoAm.rst b/Misc/NEWS.d/next/Library/2018-03-24-19-54-48.bpo-32873.cHyoAm.rst deleted file mode 100644 index 99f8088cf138..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-24-19-54-48.bpo-32873.cHyoAm.rst +++ /dev/null @@ -1,3 +0,0 @@ -Treat type variables and special typing forms as immutable by copy and -pickle. This fixes several minor issues and inconsistencies, and improves -backwards compatibility with Python 3.6. diff --git a/Misc/NEWS.d/next/Library/2018-03-25-13-18-16.bpo-33096.ofdbe7.rst b/Misc/NEWS.d/next/Library/2018-03-25-13-18-16.bpo-33096.ofdbe7.rst deleted file mode 100644 index c55ea20b337d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-25-13-18-16.bpo-33096.ofdbe7.rst +++ /dev/null @@ -1,4 +0,0 @@ -Allow ttk.Treeview.insert to insert iid that has a false boolean value. -Note iid=0 and iid=False would be same. -Patch by Garvit Khatri. - diff --git a/Misc/NEWS.d/next/Library/2018-03-26-12-33-13.bpo-33141.23wlxf.rst b/Misc/NEWS.d/next/Library/2018-03-26-12-33-13.bpo-33141.23wlxf.rst deleted file mode 100644 index 1d49c08fed54..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-26-12-33-13.bpo-33141.23wlxf.rst +++ /dev/null @@ -1,2 +0,0 @@ -Have Field objects pass through __set_name__ to their default values, if -they have their own __set_name__. diff --git a/Misc/NEWS.d/next/Library/2018-03-29-03-09-22.bpo-32380.NhuGig.rst b/Misc/NEWS.d/next/Library/2018-03-29-03-09-22.bpo-32380.NhuGig.rst deleted file mode 100644 index ab852a53e92a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-29-03-09-22.bpo-32380.NhuGig.rst +++ /dev/null @@ -1,2 +0,0 @@ -Create functools.singledispatchmethod to support generic single dispatch on -descriptors and methods. diff --git a/Misc/NEWS.d/next/Library/2018-03-29-04-32-25.bpo-33175._zs1yM.rst b/Misc/NEWS.d/next/Library/2018-03-29-04-32-25.bpo-33175._zs1yM.rst deleted file mode 100644 index c872499cd679..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-29-04-32-25.bpo-33175._zs1yM.rst +++ /dev/null @@ -1,2 +0,0 @@ -In dataclasses, Field.__set_name__ now looks up the __set_name__ special -method on the class, not the instance, of the default value. diff --git a/Misc/NEWS.d/next/Library/2018-03-30-01-20-35.bpo-33106.zncfvW.rst b/Misc/NEWS.d/next/Library/2018-03-30-01-20-35.bpo-33106.zncfvW.rst deleted file mode 100644 index 859c09cd58f3..000000000000 --- a/Misc/NEWS.d/next/Library/2018-03-30-01-20-35.bpo-33106.zncfvW.rst +++ /dev/null @@ -1,2 +0,0 @@ -Deleting a key from a read-only dbm database raises module specfic error -instead of KeyError. diff --git a/Misc/NEWS.d/next/Library/2018-04-01-19-21-04.bpo-20104.-AKcGa.rst b/Misc/NEWS.d/next/Library/2018-04-01-19-21-04.bpo-20104.-AKcGa.rst deleted file mode 100644 index 150401dc7412..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-01-19-21-04.bpo-20104.-AKcGa.rst +++ /dev/null @@ -1 +0,0 @@ -Improved error handling and fixed a reference leak in :func:`os.posix_spawn()`. diff --git a/Misc/NEWS.d/next/Library/2018-04-02-16-10-12.bpo-23403.KG7ADV.rst b/Misc/NEWS.d/next/Library/2018-04-02-16-10-12.bpo-23403.KG7ADV.rst deleted file mode 100644 index d1fbbebfadc6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-02-16-10-12.bpo-23403.KG7ADV.rst +++ /dev/null @@ -1,4 +0,0 @@ -``DEFAULT_PROTOCOL`` in :mod:`pickle` was bumped to 4. Protocol 4 is -described in :pep:`3154` and available since Python 3.4. It offers -better performance and smaller size compared to protocol 3 introduced -in Python 3.0. diff --git a/Misc/NEWS.d/next/Library/2018-04-02-20-44-54.bpo-32861.HeBjzN.rst b/Misc/NEWS.d/next/Library/2018-04-02-20-44-54.bpo-32861.HeBjzN.rst deleted file mode 100644 index 2bb24d7edab5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-02-20-44-54.bpo-32861.HeBjzN.rst +++ /dev/null @@ -1,4 +0,0 @@ -The urllib.robotparser's ``__str__`` representation now includes wildcard -entries and the "Crawl-delay" and "Request-rate" fields. Also removes extra -newlines that were being appended to the end of the string. Patch by -Michael Lazar. diff --git a/Misc/NEWS.d/next/Library/2018-04-03-10-37-13.bpo-33209.9sGWE_.rst b/Misc/NEWS.d/next/Library/2018-04-03-10-37-13.bpo-33209.9sGWE_.rst deleted file mode 100644 index d98b1e174e55..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-03-10-37-13.bpo-33209.9sGWE_.rst +++ /dev/null @@ -1 +0,0 @@ -End framing at the end of C implementation of :func:`pickle.Pickler.dump`. diff --git a/Misc/NEWS.d/next/Library/2018-04-04-23-41-30.bpo-33224.pyR0jB.rst b/Misc/NEWS.d/next/Library/2018-04-04-23-41-30.bpo-33224.pyR0jB.rst deleted file mode 100644 index b0ddba9335e2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-04-23-41-30.bpo-33224.pyR0jB.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update difflib.mdiff() for :pep:`479`. Convert an uncaught StopIteration in a -generator into a return-statement. diff --git a/Misc/NEWS.d/next/Library/2018-04-05-11-09-45.bpo-33203.Hje9Py.rst b/Misc/NEWS.d/next/Library/2018-04-05-11-09-45.bpo-33203.Hje9Py.rst deleted file mode 100644 index ab6d17b5d1ba..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-05-11-09-45.bpo-33203.Hje9Py.rst +++ /dev/null @@ -1,3 +0,0 @@ -``random.Random.choice()`` now raises ``IndexError`` for empty sequences -consistently even when called from subclasses without a ``getrandbits()`` -implementation. diff --git a/Misc/NEWS.d/next/Library/2018-04-06-14-56-26.bpo-33169.ByhDqb.rst b/Misc/NEWS.d/next/Library/2018-04-06-14-56-26.bpo-33169.ByhDqb.rst deleted file mode 100644 index b5bacfcb5732..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-06-14-56-26.bpo-33169.ByhDqb.rst +++ /dev/null @@ -1,2 +0,0 @@ -Delete entries of ``None`` in :data:`sys.path_importer_cache` when -:meth:`importlib.machinery.invalidate_caches` is called. diff --git a/Misc/NEWS.d/next/Library/2018-04-07-13-49-39.bpo-29613.r6FDnB.rst b/Misc/NEWS.d/next/Library/2018-04-07-13-49-39.bpo-29613.r6FDnB.rst deleted file mode 100644 index a679cd91194f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-07-13-49-39.bpo-29613.r6FDnB.rst +++ /dev/null @@ -1,2 +0,0 @@ -Added support for the ``SameSite`` cookie flag to the ``http.cookies`` -module. diff --git a/Misc/NEWS.d/next/Library/2018-04-08-22-54-07.bpo-33185.Id-Ba9.rst b/Misc/NEWS.d/next/Library/2018-04-08-22-54-07.bpo-33185.Id-Ba9.rst deleted file mode 100644 index 1f51d7e5120d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-08-22-54-07.bpo-33185.Id-Ba9.rst +++ /dev/null @@ -1,5 +0,0 @@ -Fixed regression when running pydoc with the :option:`-m` switch. (The regression -was introduced in 3.7.0b3 by the resolution of :issue:`33053`) - -This fix also changed pydoc to add ``os.getcwd()`` to :data:`sys.path` when -necessary, rather than adding ``"."``. diff --git a/Misc/NEWS.d/next/Library/2018-04-10-14-50-30.bpo-33144.iZr4et.rst b/Misc/NEWS.d/next/Library/2018-04-10-14-50-30.bpo-33144.iZr4et.rst deleted file mode 100644 index eb6b9b7fe08d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-10-14-50-30.bpo-33144.iZr4et.rst +++ /dev/null @@ -1,4 +0,0 @@ -``random.Random()`` and its subclassing mechanism got optimized to check only -once at class/subclass instantiation time whether its ``getrandbits()`` method -can be relied on by other methods, including ``randrange()``, for the -generation of arbitrarily large random integers. Patch by Wolfgang Maier. diff --git a/Misc/NEWS.d/next/Library/2018-04-10-20-57-14.bpo-33256.ndHkqu.rst b/Misc/NEWS.d/next/Library/2018-04-10-20-57-14.bpo-33256.ndHkqu.rst deleted file mode 100644 index a0605c04b4de..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-10-20-57-14.bpo-33256.ndHkqu.rst +++ /dev/null @@ -1 +0,0 @@ -Fix display of ```` call in the html produced by ``cgitb.html()``. Patch by St?phane Blondon. diff --git a/Misc/NEWS.d/next/Library/2018-04-11-20-29-19.bpo-33263.B56Hc1.rst b/Misc/NEWS.d/next/Library/2018-04-11-20-29-19.bpo-33263.B56Hc1.rst deleted file mode 100644 index 77994f6a5986..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-11-20-29-19.bpo-33263.B56Hc1.rst +++ /dev/null @@ -1 +0,0 @@ -Fix FD leak in `_SelectorSocketTransport` Patch by Vlad Starostin. diff --git a/Misc/NEWS.d/next/Library/2018-04-13-08-12-50.bpo-33265.KPQRk0.rst b/Misc/NEWS.d/next/Library/2018-04-13-08-12-50.bpo-33265.KPQRk0.rst deleted file mode 100644 index 523ceb9be1d6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-13-08-12-50.bpo-33265.KPQRk0.rst +++ /dev/null @@ -1,2 +0,0 @@ -``contextlib.ExitStack`` and ``contextlib.AsyncExitStack`` now use a method -instead of a wrapper function for exit callbacks. diff --git a/Misc/NEWS.d/next/Library/2018-04-13-15-14-47.bpo-33254.DS4KFK.rst b/Misc/NEWS.d/next/Library/2018-04-13-15-14-47.bpo-33254.DS4KFK.rst deleted file mode 100644 index c77a902524b8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-13-15-14-47.bpo-33254.DS4KFK.rst +++ /dev/null @@ -1,3 +0,0 @@ -Have :func:`importlib.resources.contents` and -:meth:`importlib.abc.ResourceReader.contents` return an :term:`iterable` instead -of an :term:`iterator`. diff --git a/Misc/NEWS.d/next/Library/2018-04-16-08-42-03.bpo-11594.QLo4vv.rst b/Misc/NEWS.d/next/Library/2018-04-16-08-42-03.bpo-11594.QLo4vv.rst deleted file mode 100644 index be2abf6c34dd..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-16-08-42-03.bpo-11594.QLo4vv.rst +++ /dev/null @@ -1 +0,0 @@ -Ensure line-endings are respected when using lib2to3. diff --git a/Misc/NEWS.d/next/Library/2018-04-16-15-59-21.bpo-33266.w2PAm-.rst b/Misc/NEWS.d/next/Library/2018-04-16-15-59-21.bpo-33266.w2PAm-.rst deleted file mode 100644 index 6c93c48b8886..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-16-15-59-21.bpo-33266.w2PAm-.rst +++ /dev/null @@ -1 +0,0 @@ -lib2to3 now recognizes ``rf'...'`` strings. diff --git a/Misc/NEWS.d/next/Library/2018-04-16-16-21-09.bpo-23403.rxR1Q_.rst b/Misc/NEWS.d/next/Library/2018-04-16-16-21-09.bpo-23403.rxR1Q_.rst deleted file mode 100644 index 8116e3b9cea9..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-16-16-21-09.bpo-23403.rxR1Q_.rst +++ /dev/null @@ -1 +0,0 @@ -lib2to3 now uses pickle protocol 4 for pre-computed grammars. diff --git a/Misc/NEWS.d/next/Library/2018-04-18-19-12-25.bpo-33308.fW75xi.rst b/Misc/NEWS.d/next/Library/2018-04-18-19-12-25.bpo-33308.fW75xi.rst deleted file mode 100644 index 586004a3c6c9..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-18-19-12-25.bpo-33308.fW75xi.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed a crash in the :mod:`parser` module when converting an ST object to a -tree of tuples or lists with ``line_info=False`` and ``col_info=True``. diff --git a/Misc/NEWS.d/next/Library/2018-04-20-10-43-17.bpo-33131.L2E977.rst b/Misc/NEWS.d/next/Library/2018-04-20-10-43-17.bpo-33131.L2E977.rst deleted file mode 100644 index 875c6ac5f742..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-20-10-43-17.bpo-33131.L2E977.rst +++ /dev/null @@ -1 +0,0 @@ -Upgrade bundled version of pip to 10.0.1. diff --git a/Misc/NEWS.d/next/Library/2018-04-21-00-24-08.bpo-991266.h93TP_.rst b/Misc/NEWS.d/next/Library/2018-04-21-00-24-08.bpo-991266.h93TP_.rst deleted file mode 100644 index 3af6c27cf21d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-21-00-24-08.bpo-991266.h93TP_.rst +++ /dev/null @@ -1 +0,0 @@ -Fix quoting of the ``Comment`` attribute of :class:`http.cookies.SimpleCookie`. diff --git a/Misc/NEWS.d/next/Library/2018-04-22-20-13-21.bpo-33334.19UMOC.rst b/Misc/NEWS.d/next/Library/2018-04-22-20-13-21.bpo-33334.19UMOC.rst deleted file mode 100644 index 1df274091863..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-22-20-13-21.bpo-33334.19UMOC.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`dis.stack_effect` now supports all defined opcodes including NOP and -EXTENDED_ARG. diff --git a/Misc/NEWS.d/next/Library/2018-04-23-13-21-39.bpo-33329.lQ-Eod.rst b/Misc/NEWS.d/next/Library/2018-04-23-13-21-39.bpo-33329.lQ-Eod.rst deleted file mode 100644 index d1a4e56d04b9..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-23-13-21-39.bpo-33329.lQ-Eod.rst +++ /dev/null @@ -1 +0,0 @@ -Fix multiprocessing regression on newer glibcs diff --git a/Misc/NEWS.d/next/Library/2018-04-23-18-25-36.bpo-33251.C_K-J9.rst b/Misc/NEWS.d/next/Library/2018-04-23-18-25-36.bpo-33251.C_K-J9.rst deleted file mode 100644 index fc6861f0d368..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-23-18-25-36.bpo-33251.C_K-J9.rst +++ /dev/null @@ -1,2 +0,0 @@ -`ConfigParser.items()` was fixed so that key-value pairs passed in via `vars` -are not included in the resulting output. diff --git a/Misc/NEWS.d/next/Library/2018-04-23-21-41-30.bpo-33332.Y6OZ8Z.rst b/Misc/NEWS.d/next/Library/2018-04-23-21-41-30.bpo-33332.Y6OZ8Z.rst deleted file mode 100644 index 05dca54d5776..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-23-21-41-30.bpo-33332.Y6OZ8Z.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add ``signal.valid_signals()`` to expose the POSIX sigfillset() -functionality. diff --git a/Misc/NEWS.d/next/Library/2018-04-25-14-05-21.bpo-27485.nclVSU.rst b/Misc/NEWS.d/next/Library/2018-04-25-14-05-21.bpo-27485.nclVSU.rst deleted file mode 100644 index 8962d8229264..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-25-14-05-21.bpo-27485.nclVSU.rst +++ /dev/null @@ -1 +0,0 @@ -Rename and deprecate undocumented functions in :func:`urllib.parse`. diff --git a/Misc/NEWS.d/next/Library/2018-04-26-13-31-10.bpo-32455.KPWg3K.rst b/Misc/NEWS.d/next/Library/2018-04-26-13-31-10.bpo-32455.KPWg3K.rst deleted file mode 100644 index dd873f77bbd4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-26-13-31-10.bpo-32455.KPWg3K.rst +++ /dev/null @@ -1 +0,0 @@ -Added *jump* parameter to :func:`dis.stack_effect`. diff --git a/Misc/NEWS.d/next/Library/2018-04-27-22-18-38.bpo-33336.T8rxn0.rst b/Misc/NEWS.d/next/Library/2018-04-27-22-18-38.bpo-33336.T8rxn0.rst deleted file mode 100644 index d205c68a95af..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-27-22-18-38.bpo-33336.T8rxn0.rst +++ /dev/null @@ -1,3 +0,0 @@ -``imaplib`` now allows ``MOVE`` command in ``IMAP4.uid()`` (RFC -6851: IMAP MOVE Extension) and potentially as a name of supported -method of ``IMAP4`` object. diff --git a/Misc/NEWS.d/next/Library/2018-04-28-08-11-35.bpo-33375.Dbq1fz.rst b/Misc/NEWS.d/next/Library/2018-04-28-08-11-35.bpo-33375.Dbq1fz.rst deleted file mode 100644 index f3f9d2a50881..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-28-08-11-35.bpo-33375.Dbq1fz.rst +++ /dev/null @@ -1,4 +0,0 @@ -The warnings module now finds the Python file associated with a warning from -the code object, rather than the frame's global namespace. This is -consistent with how tracebacks and pdb find filenames, and should work -better for dynamically executed code. diff --git a/Misc/NEWS.d/next/Library/2018-04-29-11-15-38.bpo-33383.g32YWn.rst b/Misc/NEWS.d/next/Library/2018-04-29-11-15-38.bpo-33383.g32YWn.rst deleted file mode 100644 index 7b65baac97bf..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-29-11-15-38.bpo-33383.g32YWn.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed crash in the get() method of the :mod:`dbm.ndbm` database object when -it is called with a single argument. diff --git a/Misc/NEWS.d/next/Library/2018-04-29-23-56-20.bpo-33197.dgRLqr.rst b/Misc/NEWS.d/next/Library/2018-04-29-23-56-20.bpo-33197.dgRLqr.rst deleted file mode 100644 index 1bbb44b2fc39..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-29-23-56-20.bpo-33197.dgRLqr.rst +++ /dev/null @@ -1,2 +0,0 @@ -Update error message when constructing invalid inspect.Parameters -Patch by Dong-hee Na. diff --git a/Misc/NEWS.d/next/Library/2018-04-30-13-29-47.bpo-33217.TENDzd.rst b/Misc/NEWS.d/next/Library/2018-04-30-13-29-47.bpo-33217.TENDzd.rst deleted file mode 100644 index 071f5f16bfb7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-30-13-29-47.bpo-33217.TENDzd.rst +++ /dev/null @@ -1,2 +0,0 @@ -Raise :exc:`TypeError` when looking up non-Enum objects in Enum classes and -Enum members. diff --git a/Misc/NEWS.d/next/Library/2018-04-30-22-43-31.bpo-32933.M3iI_y.rst b/Misc/NEWS.d/next/Library/2018-04-30-22-43-31.bpo-32933.M3iI_y.rst deleted file mode 100644 index 4de7a8f927d5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-04-30-22-43-31.bpo-32933.M3iI_y.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`unittest.mock.mock_open` now supports iteration over the file -contents. Patch by Tony Flury. diff --git a/Misc/NEWS.d/next/Library/2018-05-01-02-24-44.bpo-27300.LdIXvK.rst b/Misc/NEWS.d/next/Library/2018-05-01-02-24-44.bpo-27300.LdIXvK.rst deleted file mode 100644 index 5edbc86b9c9c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-01-02-24-44.bpo-27300.LdIXvK.rst +++ /dev/null @@ -1,2 +0,0 @@ -The file classes in *tempfile* now accept an *errors* parameter that -complements the already existing *encoding*. Patch by Stephan Hohe. diff --git a/Misc/NEWS.d/next/Library/2018-05-01-22-33-14.bpo-33311.8YPB-k.rst b/Misc/NEWS.d/next/Library/2018-05-01-22-33-14.bpo-33311.8YPB-k.rst deleted file mode 100644 index d0218de373ca..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-01-22-33-14.bpo-33311.8YPB-k.rst +++ /dev/null @@ -1,2 +0,0 @@ -Text and html output generated by cgitb does not display parentheses if the -current call is done directly in the module. Patch by St?phane Blondon. diff --git a/Misc/NEWS.d/next/Library/2018-05-01-22-35-50.bpo-33281.d4jOt4.rst b/Misc/NEWS.d/next/Library/2018-05-01-22-35-50.bpo-33281.d4jOt4.rst deleted file mode 100644 index ad08caa70b63..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-01-22-35-50.bpo-33281.d4jOt4.rst +++ /dev/null @@ -1 +0,0 @@ -Fix ctypes.util.find_library regression on macOS. diff --git a/Misc/NEWS.d/next/Library/2018-05-02-07-26-29.bpo-28167.7FwDfN.rst b/Misc/NEWS.d/next/Library/2018-05-02-07-26-29.bpo-28167.7FwDfN.rst deleted file mode 100644 index 2d7cf01961ff..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-02-07-26-29.bpo-28167.7FwDfN.rst +++ /dev/null @@ -1,3 +0,0 @@ -The function ``platform.linux_distribution`` and ``platform.dist`` now -trigger a ``DeprecationWarning`` and have been marked for removal in Python -3.8 diff --git a/Misc/NEWS.d/next/Library/2018-05-05-09-53-05.bpo-33422.4FtQ0q.rst b/Misc/NEWS.d/next/Library/2018-05-05-09-53-05.bpo-33422.4FtQ0q.rst deleted file mode 100644 index 0d284d508f10..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-05-09-53-05.bpo-33422.4FtQ0q.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix trailing quotation marks getting deleted when looking up byte/string -literals on pydoc. Patch by Andr?s Delfino. diff --git a/Misc/NEWS.d/next/Library/2018-05-05-18-02-24.bpo-20087.lJrvXL.rst b/Misc/NEWS.d/next/Library/2018-05-05-18-02-24.bpo-20087.lJrvXL.rst deleted file mode 100644 index 2342cb781926..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-05-18-02-24.bpo-20087.lJrvXL.rst +++ /dev/null @@ -1 +0,0 @@ -Updated alias mapping with glibc 2.27 supported locales. diff --git a/Misc/NEWS.d/next/Library/2018-05-08-15-01-10.bpo-33365.SicsAd.rst b/Misc/NEWS.d/next/Library/2018-05-08-15-01-10.bpo-33365.SicsAd.rst deleted file mode 100644 index 41c273f37998..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-08-15-01-10.bpo-33365.SicsAd.rst +++ /dev/null @@ -1 +0,0 @@ -Print the header values besides the header keys instead just the header keys if *debuglevel* is set to >0 in :mod:`http.client`. Patch by Marco Strigl. diff --git a/Misc/NEWS.d/next/Library/2018-05-08-16-43-42.bpo-28556._xr5mp.rst b/Misc/NEWS.d/next/Library/2018-05-08-16-43-42.bpo-28556._xr5mp.rst deleted file mode 100644 index 8ed4658211fb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-08-16-43-42.bpo-28556._xr5mp.rst +++ /dev/null @@ -1,3 +0,0 @@ -Minor fixes in typing module: add annotations to ``NamedTuple.__new__``, -pass ``*args`` and ``**kwds`` in ``Generic.__new__``. Original PRs by -Paulius ?arka and Chad Dombrova. diff --git a/Misc/NEWS.d/next/Library/2018-05-12-06-01-02.bpo-33453.Fj-jMD.rst b/Misc/NEWS.d/next/Library/2018-05-12-06-01-02.bpo-33453.Fj-jMD.rst deleted file mode 100644 index 6595b1265a4e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-12-06-01-02.bpo-33453.Fj-jMD.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix dataclasses to work if using literal string type annotations or if using -PEP 563 "Postponed Evaluation of Annotations". Only specific string -prefixes are detected for both ClassVar ("ClassVar" and "typing.ClassVar") -and InitVar ("InitVar" and "dataclasses.InitVar"). diff --git a/Misc/NEWS.d/next/Library/2018-05-12-13-06-41.bpo-29209.h5RxYy.rst b/Misc/NEWS.d/next/Library/2018-05-12-13-06-41.bpo-29209.h5RxYy.rst deleted file mode 100644 index 78d9b0c55daa..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-12-13-06-41.bpo-29209.h5RxYy.rst +++ /dev/null @@ -1,6 +0,0 @@ -Removed the ``doctype()`` method and the *html* parameter of the constructor -of :class:`~xml.etree.ElementTree.XMLParser`. The ``doctype()`` method -defined in a subclass will no longer be called. Deprecated methods -``getchildren()`` and ``getiterator()`` in the :mod:`~xml.etree.ElementTree` -module emit now a :exc:`DeprecationWarning` instead of -:exc:`PendingDeprecationWarning`. diff --git a/Misc/NEWS.d/next/Library/2018-05-14-09-07-14.bpo-26103._zU8E2.rst b/Misc/NEWS.d/next/Library/2018-05-14-09-07-14.bpo-26103._zU8E2.rst deleted file mode 100644 index cb4c41ba5db9..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-14-09-07-14.bpo-26103._zU8E2.rst +++ /dev/null @@ -1,2 +0,0 @@ -Correct ``inspect.isdatadescriptor`` to look for ``__set__`` or -``__delete__``. Patch by Aaron Hall. diff --git a/Misc/NEWS.d/next/Library/2018-05-14-10-29-03.bpo-33495.TeGTQJ.rst b/Misc/NEWS.d/next/Library/2018-05-14-10-29-03.bpo-33495.TeGTQJ.rst deleted file mode 100644 index 22cf04cd2e43..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-14-10-29-03.bpo-33495.TeGTQJ.rst +++ /dev/null @@ -1,3 +0,0 @@ -Change dataclasses.Fields repr to use the repr of each of its members, -instead of str. This makes it more clear what each field actually -represents. This is especially true for the 'type' member. diff --git a/Misc/NEWS.d/next/Library/2018-05-14-15-01-55.bpo-29235.47Fzwt.rst b/Misc/NEWS.d/next/Library/2018-05-14-15-01-55.bpo-29235.47Fzwt.rst deleted file mode 100644 index 2ce9096126ab..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-14-15-01-55.bpo-29235.47Fzwt.rst +++ /dev/null @@ -1,2 +0,0 @@ -The :class:`cProfile.Profile` class can now be used as a context manager. Patch -by Scott Sanderson. diff --git a/Misc/NEWS.d/next/Library/2018-05-14-17-49-34.bpo-33497.wWT6XM.rst b/Misc/NEWS.d/next/Library/2018-05-14-17-49-34.bpo-33497.wWT6XM.rst deleted file mode 100644 index d919dfdca75e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-14-17-49-34.bpo-33497.wWT6XM.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add errors param to cgi.parse_multipart and make an encoding in FieldStorage -use the given errors (needed for Twisted). Patch by Amber Brown. diff --git a/Misc/NEWS.d/next/Library/2018-05-14-18-05-35.bpo-33505.L8pAyt.rst b/Misc/NEWS.d/next/Library/2018-05-14-18-05-35.bpo-33505.L8pAyt.rst deleted file mode 100644 index 201b02781c18..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-14-18-05-35.bpo-33505.L8pAyt.rst +++ /dev/null @@ -1 +0,0 @@ -Optimize asyncio.ensure_future() by reordering if checks: 1.17x faster. diff --git a/Misc/NEWS.d/next/Library/2018-05-15-12-11-13.bpo-33504.czsHFg.rst b/Misc/NEWS.d/next/Library/2018-05-15-12-11-13.bpo-33504.czsHFg.rst deleted file mode 100644 index d5065d9224e7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-15-12-11-13.bpo-33504.czsHFg.rst +++ /dev/null @@ -1,2 +0,0 @@ -Switch the default dictionary implementation for :mod:`configparser` from -:class:`collections.OrderedDict` to the standard :class:`dict` type. diff --git a/Misc/NEWS.d/next/Library/2018-05-15-13-49-13.bpo-28167.p4RdQt.rst b/Misc/NEWS.d/next/Library/2018-05-15-13-49-13.bpo-28167.p4RdQt.rst deleted file mode 100644 index 0079c8a09ced..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-15-13-49-13.bpo-28167.p4RdQt.rst +++ /dev/null @@ -1 +0,0 @@ -Remove platform.linux_distribution, which was deprecated since 3.5. diff --git a/Misc/NEWS.d/next/Library/2018-05-15-15-03-48.bpo-28612.E9dz39.rst b/Misc/NEWS.d/next/Library/2018-05-15-15-03-48.bpo-28612.E9dz39.rst deleted file mode 100644 index e3e8f16eef07..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-15-15-03-48.bpo-28612.E9dz39.rst +++ /dev/null @@ -1,3 +0,0 @@ -Added support for Site Maps to urllib's ``RobotFileParser`` as -:meth:`RobotFileParser.site_maps() `. -Patch by Lady Red, based on patch by Peter Wirtz. diff --git a/Misc/NEWS.d/next/Library/2018-05-15-17-06-42.bpo-33516.ZzARe4.rst b/Misc/NEWS.d/next/Library/2018-05-15-17-06-42.bpo-33516.ZzARe4.rst deleted file mode 100644 index 77b1428f3c87..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-15-17-06-42.bpo-33516.ZzARe4.rst +++ /dev/null @@ -1 +0,0 @@ -:class:`unittest.mock.MagicMock` now supports the ``__round__`` magic method. diff --git a/Misc/NEWS.d/next/Library/2018-05-15-18-02-03.bpo-0.pj2Mbb.rst b/Misc/NEWS.d/next/Library/2018-05-15-18-02-03.bpo-0.pj2Mbb.rst deleted file mode 100644 index ba8514cdd895..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-15-18-02-03.bpo-0.pj2Mbb.rst +++ /dev/null @@ -1 +0,0 @@ -Fix failure in `typing.get_type_hints()` when ClassVar was provided as a string forward reference. diff --git a/Misc/NEWS.d/next/Library/2018-05-16-05-24-43.bpo-26819.taxbVT.rst b/Misc/NEWS.d/next/Library/2018-05-16-05-24-43.bpo-26819.taxbVT.rst deleted file mode 100644 index d407a5800318..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-16-05-24-43.bpo-26819.taxbVT.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix race condition with `ReadTransport.resume_reading` in Windows proactor -event loop. diff --git a/Misc/NEWS.d/next/Library/2018-05-16-09-30-27.bpo-33542.idNAcs.rst b/Misc/NEWS.d/next/Library/2018-05-16-09-30-27.bpo-33542.idNAcs.rst deleted file mode 100644 index 16ba799131f4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-16-09-30-27.bpo-33542.idNAcs.rst +++ /dev/null @@ -1,2 +0,0 @@ -Prevent ``uuid.get_node`` from using a DUID instead of a MAC on Windows. -Patch by Zvi Effron diff --git a/Misc/NEWS.d/next/Library/2018-05-16-10-07-40.bpo-33536._s0TE8.rst b/Misc/NEWS.d/next/Library/2018-05-16-10-07-40.bpo-33536._s0TE8.rst deleted file mode 100644 index 2c1024180d34..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-16-10-07-40.bpo-33536._s0TE8.rst +++ /dev/null @@ -1,2 +0,0 @@ -dataclasses.make_dataclass now checks for invalid field names and duplicate -fields. Also, added a check for invalid field specifications. diff --git a/Misc/NEWS.d/next/Library/2018-05-16-12-32-48.bpo-33541.kQORPE.rst b/Misc/NEWS.d/next/Library/2018-05-16-12-32-48.bpo-33541.kQORPE.rst deleted file mode 100644 index 137189849ea7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-16-12-32-48.bpo-33541.kQORPE.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove unused private method ``_strptime.LocaleTime.__pad`` (a.k.a. -``_LocaleTime__pad``). diff --git a/Misc/NEWS.d/next/Library/2018-05-16-14-57-58.bpo-33109.nPLL_S.rst b/Misc/NEWS.d/next/Library/2018-05-16-14-57-58.bpo-33109.nPLL_S.rst deleted file mode 100644 index be731f99f7f0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-16-14-57-58.bpo-33109.nPLL_S.rst +++ /dev/null @@ -1,2 +0,0 @@ -argparse subparsers are once again not required by default, reverting the -change in behavior introduced by bpo-26510 in 3.7.0a2. diff --git a/Misc/NEWS.d/next/Library/2018-05-16-17-05-48.bpo-33548.xWslmx.rst b/Misc/NEWS.d/next/Library/2018-05-16-17-05-48.bpo-33548.xWslmx.rst deleted file mode 100644 index 65585c152987..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-16-17-05-48.bpo-33548.xWslmx.rst +++ /dev/null @@ -1 +0,0 @@ -tempfile._candidate_tempdir_list should consider common TEMP locations diff --git a/Misc/NEWS.d/next/Library/2018-05-16-18-10-38.bpo-33540.wy9LRV.rst b/Misc/NEWS.d/next/Library/2018-05-16-18-10-38.bpo-33540.wy9LRV.rst deleted file mode 100644 index 9019cc14f515..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-16-18-10-38.bpo-33540.wy9LRV.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add a new ``block_on_close`` class attribute to ``ForkingMixIn`` and -``ThreadingMixIn`` classes of :mod:`socketserver`. diff --git a/Misc/NEWS.d/next/Library/2018-05-17-22-14-58.bpo-12486.HBeh62.rst b/Misc/NEWS.d/next/Library/2018-05-17-22-14-58.bpo-12486.HBeh62.rst deleted file mode 100644 index 89c88e27373b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-17-22-14-58.bpo-12486.HBeh62.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`tokenize.generate_tokens` is now documented as a public API to -tokenize unicode strings. It was previously present but undocumented. diff --git a/Misc/NEWS.d/next/Library/2018-05-17-22-53-08.bpo-28556.C6Hnd1.rst b/Misc/NEWS.d/next/Library/2018-05-17-22-53-08.bpo-28556.C6Hnd1.rst deleted file mode 100644 index 35e13bde1897..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-17-22-53-08.bpo-28556.C6Hnd1.rst +++ /dev/null @@ -1,3 +0,0 @@ -Do not simplify arguments to `typing.Union`. Now `Union[Manager, Employee]` -is not simplified to `Employee` at runtime. Such simplification previously -caused several bugs and limited possibilities for introspection. diff --git a/Misc/NEWS.d/next/Library/2018-05-18-21-50-47.bpo-33570.7CZy4t.rst b/Misc/NEWS.d/next/Library/2018-05-18-21-50-47.bpo-33570.7CZy4t.rst deleted file mode 100644 index 1c43cb3f9d9f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-18-21-50-47.bpo-33570.7CZy4t.rst +++ /dev/null @@ -1,3 +0,0 @@ -Change TLS 1.3 cipher suite settings for compatibility with OpenSSL -1.1.1-pre6 and newer. OpenSSL 1.1.1 will have TLS 1.3 ciphers enabled by -default. diff --git a/Misc/NEWS.d/next/Library/2018-05-18-22-52-34.bpo-21145.AiQMDx.rst b/Misc/NEWS.d/next/Library/2018-05-18-22-52-34.bpo-21145.AiQMDx.rst deleted file mode 100644 index a5973c33a30b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-18-22-52-34.bpo-21145.AiQMDx.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add ``functools.cached_property`` decorator, for computed properties cached -for the life of the instance. diff --git a/Misc/NEWS.d/next/Library/2018-05-19-15-58-14.bpo-33582.qBZPmF.rst b/Misc/NEWS.d/next/Library/2018-05-19-15-58-14.bpo-33582.qBZPmF.rst deleted file mode 100644 index 3471c0e7f0b8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-19-15-58-14.bpo-33582.qBZPmF.rst +++ /dev/null @@ -1 +0,0 @@ -Emit a deprecation warning for inspect.formatargspec diff --git a/Misc/NEWS.d/next/Library/2018-05-22-11-55-33.bpo-33604.6V4JcO.rst b/Misc/NEWS.d/next/Library/2018-05-22-11-55-33.bpo-33604.6V4JcO.rst deleted file mode 100644 index 200a9d5f661a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-22-11-55-33.bpo-33604.6V4JcO.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove HMAC default to md5 marked for removal in 3.8 (removal originally -planned in 3.6, bump to 3.8 in gh-7062). diff --git a/Misc/NEWS.d/next/Library/2018-05-22-13-05-12.bpo-30877.JZEGjI.rst b/Misc/NEWS.d/next/Library/2018-05-22-13-05-12.bpo-30877.JZEGjI.rst deleted file mode 100644 index 4be0fae4ecb6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-22-13-05-12.bpo-30877.JZEGjI.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed a bug in the Python implementation of the JSON decoder that prevented -the cache of parsed strings from clearing after finishing the decoding. -Based on patch by c-fos. diff --git a/Misc/NEWS.d/next/Library/2018-05-23-00-26-27.bpo-11874.glK5iP.rst b/Misc/NEWS.d/next/Library/2018-05-23-00-26-27.bpo-11874.glK5iP.rst deleted file mode 100644 index 6c75f142c4be..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-23-00-26-27.bpo-11874.glK5iP.rst +++ /dev/null @@ -1,2 +0,0 @@ -Use a better regex when breaking usage into wrappable parts. Avoids bogus -assertion errors from custom metavar strings. diff --git a/Misc/NEWS.d/next/Library/2018-05-23-14-58-05.bpo-33623.wAw1cF.rst b/Misc/NEWS.d/next/Library/2018-05-23-14-58-05.bpo-33623.wAw1cF.rst deleted file mode 100644 index 641874c3ca39..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-23-14-58-05.bpo-33623.wAw1cF.rst +++ /dev/null @@ -1 +0,0 @@ -Fix possible SIGSGV when asyncio.Future is created in __del__ diff --git a/Misc/NEWS.d/next/Library/2018-05-23-17-07-54.bpo-33625.nzQgD8.rst b/Misc/NEWS.d/next/Library/2018-05-23-17-07-54.bpo-33625.nzQgD8.rst deleted file mode 100644 index 265fab2289c2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-23-17-07-54.bpo-33625.nzQgD8.rst +++ /dev/null @@ -1,3 +0,0 @@ -Release GIL on `grp.getgrnam`, `grp.getgrgid`, `pwd.getpwnam` and -`pwd.getpwuid` if reentrant variants of these functions are available. -Patch by William Grzybowski. diff --git a/Misc/NEWS.d/next/Library/2018-05-23-20-14-34.bpo-33618.xU39lr.rst b/Misc/NEWS.d/next/Library/2018-05-23-20-14-34.bpo-33618.xU39lr.rst deleted file mode 100644 index 6cc2452b145c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-23-20-14-34.bpo-33618.xU39lr.rst +++ /dev/null @@ -1,2 +0,0 @@ -Finalize and document preliminary and experimental TLS 1.3 support with -OpenSSL 1.1.1 diff --git a/Misc/NEWS.d/next/Library/2018-05-24-09-15-52.bpo-33238.ooDfoo.rst b/Misc/NEWS.d/next/Library/2018-05-24-09-15-52.bpo-33238.ooDfoo.rst deleted file mode 100644 index b03ab1068889..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-24-09-15-52.bpo-33238.ooDfoo.rst +++ /dev/null @@ -1,4 +0,0 @@ -Add ``InvalidStateError`` to :mod:`concurrent.futures`. -``Future.set_result`` and ``Future.set_exception`` now raise -``InvalidStateError`` if the futures are not pending or running. Patch by -Jason Haydaman. diff --git a/Misc/NEWS.d/next/Library/2018-05-24-17-41-36.bpo-32493.5tAoAu.rst b/Misc/NEWS.d/next/Library/2018-05-24-17-41-36.bpo-32493.5tAoAu.rst deleted file mode 100644 index 32f88dd0388d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-24-17-41-36.bpo-32493.5tAoAu.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed :func:`uuid.uuid1` on FreeBSD. diff --git a/Misc/NEWS.d/next/Library/2018-05-26-10-13-59.bpo-33652.humFJ1.rst b/Misc/NEWS.d/next/Library/2018-05-26-10-13-59.bpo-33652.humFJ1.rst deleted file mode 100644 index f5499f1b53ce..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-26-10-13-59.bpo-33652.humFJ1.rst +++ /dev/null @@ -1,2 +0,0 @@ -Pickles of type variables and subscripted generics are now future-proof and -compatible with older Python versions. diff --git a/Misc/NEWS.d/next/Library/2018-05-26-13-09-34.bpo-33654.IbYWxA.rst b/Misc/NEWS.d/next/Library/2018-05-26-13-09-34.bpo-33654.IbYWxA.rst deleted file mode 100644 index 3ae506ddc55f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-26-13-09-34.bpo-33654.IbYWxA.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix transport.set_protocol() to support switching between asyncio.Protocol -and asyncio.BufferedProtocol. Fix loop.start_tls() to work with -asyncio.BufferedProtocols. diff --git a/Misc/NEWS.d/next/Library/2018-05-28-12-29-54.bpo-33672.GM_Xm_.rst b/Misc/NEWS.d/next/Library/2018-05-28-12-29-54.bpo-33672.GM_Xm_.rst deleted file mode 100644 index 36373c028639..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-28-12-29-54.bpo-33672.GM_Xm_.rst +++ /dev/null @@ -1 +0,0 @@ -Fix Task.__repr__ crash with Cython's bogus coroutines diff --git a/Misc/NEWS.d/next/Library/2018-05-28-15-55-12.bpo-33469.hmXBpY.rst b/Misc/NEWS.d/next/Library/2018-05-28-15-55-12.bpo-33469.hmXBpY.rst deleted file mode 100644 index cc1b2e436f2a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-28-15-55-12.bpo-33469.hmXBpY.rst +++ /dev/null @@ -1 +0,0 @@ -Fix RuntimeError after closing loop that used run_in_executor diff --git a/Misc/NEWS.d/next/Library/2018-05-28-16-19-35.bpo-32410.Z1DZaF.rst b/Misc/NEWS.d/next/Library/2018-05-28-16-19-35.bpo-32410.Z1DZaF.rst deleted file mode 100644 index 2d7bb2032ac5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-28-16-19-35.bpo-32410.Z1DZaF.rst +++ /dev/null @@ -1 +0,0 @@ -Avoid blocking on file IO in sendfile fallback code diff --git a/Misc/NEWS.d/next/Library/2018-05-28-16-40-32.bpo-32610.KvUAsL.rst b/Misc/NEWS.d/next/Library/2018-05-28-16-40-32.bpo-32610.KvUAsL.rst deleted file mode 100644 index 372908063247..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-28-16-40-32.bpo-32610.KvUAsL.rst +++ /dev/null @@ -1 +0,0 @@ -Make asyncio.all_tasks() return only pending tasks. diff --git a/Misc/NEWS.d/next/Library/2018-05-28-18-40-26.bpo-31647.s4Fad3.rst b/Misc/NEWS.d/next/Library/2018-05-28-18-40-26.bpo-31647.s4Fad3.rst deleted file mode 100644 index 61cc8baa1cd5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-28-18-40-26.bpo-31647.s4Fad3.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed bug where calling write_eof() on a _SelectorSocketTransport after it's -already closed raises AttributeError. diff --git a/Misc/NEWS.d/next/Library/2018-05-28-22-49-59.bpo-33674.6LFFj7.rst b/Misc/NEWS.d/next/Library/2018-05-28-22-49-59.bpo-33674.6LFFj7.rst deleted file mode 100644 index 1e9868073f78..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-28-22-49-59.bpo-33674.6LFFj7.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix a race condition in SSLProtocol.connection_made() of asyncio.sslproto: -start immediately the handshake instead of using call_soon(). Previously, -data_received() could be called before the handshake started, causing the -handshake to hang or fail. diff --git a/Misc/NEWS.d/next/Library/2018-05-28-23-25-17.bpo-33671.GIdKKi.rst b/Misc/NEWS.d/next/Library/2018-05-28-23-25-17.bpo-33671.GIdKKi.rst deleted file mode 100644 index b1523f235da6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-28-23-25-17.bpo-33671.GIdKKi.rst +++ /dev/null @@ -1,10 +0,0 @@ -:func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`, -:func:`shutil.copytree` and :func:`shutil.move` use platform-specific -fast-copy syscalls on Linux, Solaris and macOS in order to copy the file -more efficiently. -On Windows :func:`shutil.copyfile` uses a bigger default buffer size (1 MiB -instead of 16 KiB) and a :func:`memoryview`-based variant of -:func:`shutil.copyfileobj` is used. -The speedup for copying a 512MiB file is about +26% on Linux, +50% on macOS and -+40% on Windows. Also, much less CPU cycles are consumed. -(Contributed by Giampaolo Rodola' in :issue:`25427`.) diff --git a/Misc/NEWS.d/next/Library/2018-05-29-00-37-56.bpo-33674.2IkGhL.rst b/Misc/NEWS.d/next/Library/2018-05-29-00-37-56.bpo-33674.2IkGhL.rst deleted file mode 100644 index 66baca16d69f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-29-00-37-56.bpo-33674.2IkGhL.rst +++ /dev/null @@ -1,2 +0,0 @@ -Pause the transport as early as possible to further reduce the risk of -data_received() being called before connection_made(). diff --git a/Misc/NEWS.d/next/Library/2018-05-29-01-13-39.bpo-33654.sa81Si.rst b/Misc/NEWS.d/next/Library/2018-05-29-01-13-39.bpo-33654.sa81Si.rst deleted file mode 100644 index 39e8e615d8c4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-29-01-13-39.bpo-33654.sa81Si.rst +++ /dev/null @@ -1 +0,0 @@ -Support protocol type switching in SSLTransport.set_protocol(). diff --git a/Misc/NEWS.d/next/Library/2018-05-29-12-51-18.bpo-32684.ZEIism.rst b/Misc/NEWS.d/next/Library/2018-05-29-12-51-18.bpo-32684.ZEIism.rst deleted file mode 100644 index b360bbcf7998..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-29-12-51-18.bpo-32684.ZEIism.rst +++ /dev/null @@ -1 +0,0 @@ -Fix gather to propagate cancellation of itself even with return_exceptions. diff --git a/Misc/NEWS.d/next/Library/2018-05-29-15-32-18.bpo-32751.oBTqr7.rst b/Misc/NEWS.d/next/Library/2018-05-29-15-32-18.bpo-32751.oBTqr7.rst deleted file mode 100644 index 3e27cd461ca8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-29-15-32-18.bpo-32751.oBTqr7.rst +++ /dev/null @@ -1,2 +0,0 @@ -When cancelling the task due to a timeout, :meth:`asyncio.wait_for` will now -wait until the cancellation is complete. diff --git a/Misc/NEWS.d/next/Library/2018-05-30-00-26-05.bpo-33197.XkE2kL.rst b/Misc/NEWS.d/next/Library/2018-05-30-00-26-05.bpo-33197.XkE2kL.rst deleted file mode 100644 index e6f7ac3309b3..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-30-00-26-05.bpo-33197.XkE2kL.rst +++ /dev/null @@ -1 +0,0 @@ -Add description property for _ParameterKind diff --git a/Misc/NEWS.d/next/Library/2018-05-30-16-00-06.bpo-2504.BynUvU.rst b/Misc/NEWS.d/next/Library/2018-05-30-16-00-06.bpo-2504.BynUvU.rst deleted file mode 100644 index 72b0f7044720..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-30-16-00-06.bpo-2504.BynUvU.rst +++ /dev/null @@ -1 +0,0 @@ -Add gettext.pgettext() and variants. diff --git a/Misc/NEWS.d/next/Library/2018-05-31-06-48-55.bpo-31014.SNY681.rst b/Misc/NEWS.d/next/Library/2018-05-31-06-48-55.bpo-31014.SNY681.rst deleted file mode 100644 index bd3c8bbd0f2b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-05-31-06-48-55.bpo-31014.SNY681.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed creating a controller for :mod:`webbrowser` when a user specifies a -path to an entry in the BROWSER environment variable. Based on patch by -John Still. diff --git a/Misc/NEWS.d/next/Library/2018-06-01-10-55-48.bpo-33734.x1W9x0.rst b/Misc/NEWS.d/next/Library/2018-06-01-10-55-48.bpo-33734.x1W9x0.rst deleted file mode 100644 index 305d40ed8a1b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-01-10-55-48.bpo-33734.x1W9x0.rst +++ /dev/null @@ -1 +0,0 @@ -asyncio/ssl: Fix AttributeError, increase default handshake timeout diff --git a/Misc/NEWS.d/next/Library/2018-06-03-22-41-59.bpo-33767.2e82g3.rst b/Misc/NEWS.d/next/Library/2018-06-03-22-41-59.bpo-33767.2e82g3.rst deleted file mode 100644 index 348330189095..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-03-22-41-59.bpo-33767.2e82g3.rst +++ /dev/null @@ -1,3 +0,0 @@ -The concatenation (``+``) and repetition (``*``) sequence operations now -raise :exc:`TypeError` instead of :exc:`SystemError` when performed on -:class:`mmap.mmap` objects. Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Library/2018-06-04-13-46-39.bpo-33769.D_pxYz.rst b/Misc/NEWS.d/next/Library/2018-06-04-13-46-39.bpo-33769.D_pxYz.rst deleted file mode 100644 index 9a124fafc6d2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-04-13-46-39.bpo-33769.D_pxYz.rst +++ /dev/null @@ -1,2 +0,0 @@ -asyncio/start_tls: Fix error message; cancel callbacks in case of an -unhandled error; mark SSLTransport as closed if it is aborted. diff --git a/Misc/NEWS.d/next/Library/2018-06-05-11-29-26.bpo-33770.oBhxxw.rst b/Misc/NEWS.d/next/Library/2018-06-05-11-29-26.bpo-33770.oBhxxw.rst deleted file mode 100644 index a1529dda1a6d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-05-11-29-26.bpo-33770.oBhxxw.rst +++ /dev/null @@ -1 +0,0 @@ -improve base64 exception message for encoded inputs of invalid length diff --git a/Misc/NEWS.d/next/Library/2018-06-05-12-43-25.bpo-33165.9TIsVf.rst b/Misc/NEWS.d/next/Library/2018-06-05-12-43-25.bpo-33165.9TIsVf.rst deleted file mode 100644 index b3b2126479db..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-05-12-43-25.bpo-33165.9TIsVf.rst +++ /dev/null @@ -1,2 +0,0 @@ -Added a stacklevel parameter to logging calls to allow use of wrapper/helper -functions for logging APIs. diff --git a/Misc/NEWS.d/next/Library/2018-06-05-20-22-30.bpo-33778._tSAS6.rst b/Misc/NEWS.d/next/Library/2018-06-05-20-22-30.bpo-33778._tSAS6.rst deleted file mode 100644 index 7301b3641565..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-05-20-22-30.bpo-33778._tSAS6.rst +++ /dev/null @@ -1 +0,0 @@ -Update ``unicodedata``'s database to Unicode version 11.0.0. diff --git a/Misc/NEWS.d/next/Library/2018-06-06-22-01-33.bpo-33274.teYqv8.rst b/Misc/NEWS.d/next/Library/2018-06-06-22-01-33.bpo-33274.teYqv8.rst deleted file mode 100644 index 420652bddf6e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-06-22-01-33.bpo-33274.teYqv8.rst +++ /dev/null @@ -1,3 +0,0 @@ -W3C DOM Level 1 specifies return value of Element.removeAttributeNode() as -"The Attr node that was removed." xml.dom.minidom now complies with this -requirement. diff --git a/Misc/NEWS.d/next/Library/2018-06-07-12-38-12.bpo-33792.3aKG7u.rst b/Misc/NEWS.d/next/Library/2018-06-07-12-38-12.bpo-33792.3aKG7u.rst deleted file mode 100644 index 8c01764bc682..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-07-12-38-12.bpo-33792.3aKG7u.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add asyncio.WindowsSelectorEventLoopPolicy and -asyncio.WindowsProactorEventLoopPolicy. diff --git a/Misc/NEWS.d/next/Library/2018-06-07-18-55-35.bpo-32493.1Bte62.rst b/Misc/NEWS.d/next/Library/2018-06-07-18-55-35.bpo-32493.1Bte62.rst deleted file mode 100644 index 3d8bb3ed305c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-07-18-55-35.bpo-32493.1Bte62.rst +++ /dev/null @@ -1,2 +0,0 @@ -Correct test for ``uuid_enc_be`` availability in ``configure.ac``. -Patch by Michael Felt. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2018-06-07-23-51-00.bpo-33694.F1zIR1.rst b/Misc/NEWS.d/next/Library/2018-06-07-23-51-00.bpo-33694.F1zIR1.rst deleted file mode 100644 index 6b7f15cf8d43..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-07-23-51-00.bpo-33694.F1zIR1.rst +++ /dev/null @@ -1,2 +0,0 @@ -asyncio: Fix a race condition causing data loss on -pause_reading()/resume_reading() when using the ProactorEventLoop. diff --git a/Misc/NEWS.d/next/Library/2018-06-08-00-29-40.bpo-33476.R0Bhlj.rst b/Misc/NEWS.d/next/Library/2018-06-08-00-29-40.bpo-33476.R0Bhlj.rst deleted file mode 100644 index 8104753c055e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-08-00-29-40.bpo-33476.R0Bhlj.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix _header_value_parser.py when address group is missing final ';'. -Contributed by Enrique Perez-Terron diff --git a/Misc/NEWS.d/next/Library/2018-06-08-17-34-16.bpo-30805.3qCWa0.rst b/Misc/NEWS.d/next/Library/2018-06-08-17-34-16.bpo-30805.3qCWa0.rst deleted file mode 100644 index e1ba57675397..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-08-17-34-16.bpo-30805.3qCWa0.rst +++ /dev/null @@ -1 +0,0 @@ -Avoid race condition with debug logging diff --git a/Misc/NEWS.d/next/Library/2018-06-08-23-55-34.bpo-33578.7oSsjG.rst b/Misc/NEWS.d/next/Library/2018-06-08-23-55-34.bpo-33578.7oSsjG.rst deleted file mode 100644 index 4e2e4627dc54..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-08-23-55-34.bpo-33578.7oSsjG.rst +++ /dev/null @@ -1 +0,0 @@ -Implement multibyte encoder/decoder state methods diff --git a/Misc/NEWS.d/next/Library/2018-06-10-09-43-54.bpo-27397.0_fFQR.rst b/Misc/NEWS.d/next/Library/2018-06-10-09-43-54.bpo-27397.0_fFQR.rst deleted file mode 100644 index 109817267bd0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-10-09-43-54.bpo-27397.0_fFQR.rst +++ /dev/null @@ -1 +0,0 @@ -Make email module properly handle invalid-length base64 strings. diff --git a/Misc/NEWS.d/next/Library/2018-06-10-12-15-26.bpo-32108.iEkvh0.rst b/Misc/NEWS.d/next/Library/2018-06-10-12-15-26.bpo-32108.iEkvh0.rst deleted file mode 100644 index 154d88471f6a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-10-12-15-26.bpo-32108.iEkvh0.rst +++ /dev/null @@ -1 +0,0 @@ -In configparser, don't clear section when it is assigned to itself. diff --git a/Misc/NEWS.d/next/Library/2018-06-10-13-26-02.bpo-33812.frGAOr.rst b/Misc/NEWS.d/next/Library/2018-06-10-13-26-02.bpo-33812.frGAOr.rst deleted file mode 100644 index 0dc3df6a7953..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-10-13-26-02.bpo-33812.frGAOr.rst +++ /dev/null @@ -1,2 +0,0 @@ -Datetime instance d with non-None tzinfo, but with d.tzinfo.utcoffset(d) -returning None is now treated as naive by the astimezone() method. diff --git a/Misc/NEWS.d/next/Library/2018-06-10-14-08-52.bpo-33687.1zZdnA.rst b/Misc/NEWS.d/next/Library/2018-06-10-14-08-52.bpo-33687.1zZdnA.rst deleted file mode 100644 index 63c5bfcac474..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-10-14-08-52.bpo-33687.1zZdnA.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix the call to ``os.chmod()`` for ``uu.decode()`` if a mode is given or -decoded. Patch by Timo Furrer. diff --git a/Misc/NEWS.d/next/Library/2018-06-10-15-14-17.bpo-33805.5LAz5a.rst b/Misc/NEWS.d/next/Library/2018-06-10-15-14-17.bpo-33805.5LAz5a.rst deleted file mode 100644 index 74bcf6d7c8c8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-10-15-14-17.bpo-33805.5LAz5a.rst +++ /dev/null @@ -1 +0,0 @@ -Improve error message of dataclasses.replace() when an InitVar is not specified diff --git a/Misc/NEWS.d/next/Library/2018-06-10-19-29-17.bpo-30167.G5EgC5.rst b/Misc/NEWS.d/next/Library/2018-06-10-19-29-17.bpo-30167.G5EgC5.rst deleted file mode 100644 index 072a001adab8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-10-19-29-17.bpo-30167.G5EgC5.rst +++ /dev/null @@ -1 +0,0 @@ -Prevent site.main() exception if PYTHONSTARTUP is set. Patch by Steve Weber. diff --git a/Misc/NEWS.d/next/Library/2018-06-12-18-34-54.bpo-33842.RZXSGu.rst b/Misc/NEWS.d/next/Library/2018-06-12-18-34-54.bpo-33842.RZXSGu.rst deleted file mode 100644 index 4d8d7c2fb2d0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-12-18-34-54.bpo-33842.RZXSGu.rst +++ /dev/null @@ -1 +0,0 @@ -Remove ``tarfile.filemode`` which is deprecated since Python 3.3. diff --git a/Misc/NEWS.d/next/Library/2018-06-12-18-59-16.bpo-33843.qVAK8g.rst b/Misc/NEWS.d/next/Library/2018-06-12-18-59-16.bpo-33843.qVAK8g.rst deleted file mode 100644 index c79b2513095f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-12-18-59-16.bpo-33843.qVAK8g.rst +++ /dev/null @@ -1 +0,0 @@ -Remove deprecated ``cgi.escape``, ``cgi.parse_qs`` and ``cgi.parse_qsl``. diff --git a/Misc/NEWS.d/next/Library/2018-06-13-20-33-29.bpo-26544.hQ1oMt.rst b/Misc/NEWS.d/next/Library/2018-06-13-20-33-29.bpo-26544.hQ1oMt.rst deleted file mode 100644 index e2cd0bad6e2c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-13-20-33-29.bpo-26544.hQ1oMt.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed implementation of :func:`platform.libc_ver`. It almost always returned -version '2.9' for glibc. diff --git a/Misc/NEWS.d/next/Library/2018-06-14-17-53-30.bpo-33721.8i9_9A.rst b/Misc/NEWS.d/next/Library/2018-06-14-17-53-30.bpo-33721.8i9_9A.rst deleted file mode 100644 index 987bf4696d56..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-14-17-53-30.bpo-33721.8i9_9A.rst +++ /dev/null @@ -1,12 +0,0 @@ -:mod:`os.path` functions that return a boolean result like -:func:`~os.path.exists`, :func:`~os.path.lexists`, :func:`~os.path.isdir`, -:func:`~os.path.isfile`, :func:`~os.path.islink`, and :func:`~os.path.ismount`, -and :mod:`pathlib.Path` methods that return a boolean result like -:meth:`~pathlib.Path.exists()`, :meth:`~pathlib.Path.is_dir()`, -:meth:`~pathlib.Path.is_file()`, :meth:`~pathlib.Path.is_mount()`, -:meth:`~pathlib.Path.is_symlink()`, :meth:`~pathlib.Path.is_block_device()`, -:meth:`~pathlib.Path.is_char_device()`, :meth:`~pathlib.Path.is_fifo()`, -:meth:`~pathlib.Path.is_socket()` now return ``False`` instead of raising -:exc:`ValueError` or its subclasses :exc:`UnicodeEncodeError` and -:exc:`UnicodeDecodeError` for paths that contain characters or bytes -unrepresentable at the OS level. diff --git a/Misc/NEWS.d/next/Library/2018-06-17-10-48-03.bpo-33663.sUuGmq.rst b/Misc/NEWS.d/next/Library/2018-06-17-10-48-03.bpo-33663.sUuGmq.rst deleted file mode 100644 index b2a8e3cc00c6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-17-10-48-03.bpo-33663.sUuGmq.rst +++ /dev/null @@ -1 +0,0 @@ -Convert content length to string before putting to header. diff --git a/Misc/NEWS.d/next/Library/2018-06-17-11-46-20.bpo-33833.RnEqvM.rst b/Misc/NEWS.d/next/Library/2018-06-17-11-46-20.bpo-33833.RnEqvM.rst deleted file mode 100644 index 1a7672f27ce0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-17-11-46-20.bpo-33833.RnEqvM.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed bug in asyncio where ProactorSocketTransport logs AssertionError if -force closed during write. diff --git a/Misc/NEWS.d/next/Library/2018-06-21-09-33-02.bpo-32568.f_meGY.rst b/Misc/NEWS.d/next/Library/2018-06-21-09-33-02.bpo-32568.f_meGY.rst deleted file mode 100644 index 3ade8cf6f3d4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-21-09-33-02.bpo-32568.f_meGY.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make select.epoll() and its documentation consistent regarding *sizehint* and -*flags*. diff --git a/Misc/NEWS.d/next/Library/2018-06-21-11-35-47.bpo-33916.cZgPCD.rst b/Misc/NEWS.d/next/Library/2018-06-21-11-35-47.bpo-33916.cZgPCD.rst deleted file mode 100644 index 65b9d2bf89a5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-21-11-35-47.bpo-33916.cZgPCD.rst +++ /dev/null @@ -1,2 +0,0 @@ -bz2 and lzma: When Decompressor.__init__() is called twice, free the old -lock to not leak memory. diff --git a/Misc/NEWS.d/next/Library/2018-06-23-12-47-37.bpo-33695.seRTxh.rst b/Misc/NEWS.d/next/Library/2018-06-23-12-47-37.bpo-33695.seRTxh.rst deleted file mode 100644 index 21950453b0ad..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-23-12-47-37.bpo-33695.seRTxh.rst +++ /dev/null @@ -1,7 +0,0 @@ -:func:`shutil.copytree` uses :func:`os.scandir` function and all copy -functions depending from it use cached :func:`os.stat` values. The speedup -for copying a directory with 8000 files is around +9% on Linux, +20% on -Windows and + 30% on a Windows SMB share. Also the number of :func:`os.stat` -syscalls is reduced by 38% making :func:`shutil.copytree` especially faster -on network filesystems. -(Contributed by Giampaolo Rodola' in :issue:`33695`.) diff --git a/Misc/NEWS.d/next/Library/2018-06-23-18-09-28.bpo-33897.Hu0yvt.rst b/Misc/NEWS.d/next/Library/2018-06-23-18-09-28.bpo-33897.Hu0yvt.rst deleted file mode 100644 index 64ec3a166f80..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-23-18-09-28.bpo-33897.Hu0yvt.rst +++ /dev/null @@ -1 +0,0 @@ -Added a 'force' keyword argument to logging.basicConfig(). diff --git a/Misc/NEWS.d/next/Library/2018-06-24-01-57-14.bpo-33899.IaOcAr.rst b/Misc/NEWS.d/next/Library/2018-06-24-01-57-14.bpo-33899.IaOcAr.rst deleted file mode 100644 index 21c909599363..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-24-01-57-14.bpo-33899.IaOcAr.rst +++ /dev/null @@ -1,3 +0,0 @@ -Tokenize module now implicitly emits a NEWLINE when provided with input that -does not have a trailing new line. This behavior now matches what the C -tokenizer does internally. Contributed by Ammar Askar. diff --git a/Misc/NEWS.d/next/Library/2018-06-26-02-09-18.bpo-33929.OcCLah.rst b/Misc/NEWS.d/next/Library/2018-06-26-02-09-18.bpo-33929.OcCLah.rst deleted file mode 100644 index 6ddb17c81cd9..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-26-02-09-18.bpo-33929.OcCLah.rst +++ /dev/null @@ -1,5 +0,0 @@ -multiprocessing: Fix a race condition in Popen of -multiprocessing.popen_spawn_win32. The child process now duplicates the read -end of pipe instead of "stealing" it. Previously, the read end of pipe was -"stolen" by the child process, but it leaked a handle if the child process had -been terminated before it could steal the handle from the parent process. diff --git a/Misc/NEWS.d/next/Library/2018-06-26-16-55-59.bpo-25007.6LQWOF.rst b/Misc/NEWS.d/next/Library/2018-06-26-16-55-59.bpo-25007.6LQWOF.rst deleted file mode 100644 index b7d832be1ade..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-26-16-55-59.bpo-25007.6LQWOF.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add :func:`copy.copy` and :func:`copy.deepcopy` support to zlib compressors -and decompressors. Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Library/2018-06-26-19-03-56.bpo-33871.XhlrGU.rst b/Misc/NEWS.d/next/Library/2018-06-26-19-03-56.bpo-33871.XhlrGU.rst deleted file mode 100644 index 9fd15356c72d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-26-19-03-56.bpo-33871.XhlrGU.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed integer overflow in :func:`os.readv`, :func:`os.writev`, -:func:`os.preadv` and :func:`os.pwritev` and in :func:`os.sendfile` with -*headers* or *trailers* arguments (on BSD-based OSes and macOS). diff --git a/Misc/NEWS.d/next/Library/2018-06-27-00-31-30.bpo-24567.FuePyY.rst b/Misc/NEWS.d/next/Library/2018-06-27-00-31-30.bpo-24567.FuePyY.rst deleted file mode 100644 index d496f2bc411c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-27-00-31-30.bpo-24567.FuePyY.rst +++ /dev/null @@ -1,2 +0,0 @@ -Improve random.choices() to handle subnormal input weights that could -occasionally trigger an IndexError. diff --git a/Misc/NEWS.d/next/Library/2018-06-28-13-00-12.bpo-27500._s1gZ5.rst b/Misc/NEWS.d/next/Library/2018-06-28-13-00-12.bpo-27500._s1gZ5.rst deleted file mode 100644 index 4762e2795643..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-28-13-00-12.bpo-27500._s1gZ5.rst +++ /dev/null @@ -1 +0,0 @@ -Fix getaddrinfo to resolve IPv6 addresses correctly. diff --git a/Misc/NEWS.d/next/Library/2018-06-28-14-56-44.bpo-33974.SA8nNP.rst b/Misc/NEWS.d/next/Library/2018-06-28-14-56-44.bpo-33974.SA8nNP.rst deleted file mode 100644 index 8c03babd4f2e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-28-14-56-44.bpo-33974.SA8nNP.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed passing lists and tuples of strings containing special characters -``"``, ``\``, ``{``, ``}`` and ``\n`` as options to :mod:`~tkinter.ttk` -widgets. diff --git a/Misc/NEWS.d/next/Library/2018-06-29-00-31-36.bpo-14117.3nvDuR.rst b/Misc/NEWS.d/next/Library/2018-06-29-00-31-36.bpo-14117.3nvDuR.rst deleted file mode 100644 index 13cabd4a43c4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-29-00-31-36.bpo-14117.3nvDuR.rst +++ /dev/null @@ -1,3 +0,0 @@ -Make minor tweaks to turtledemo. The 'wikipedia' example is now 'rosette', -describing what it draws. The 'penrose' print output is reduced. The'1024' -output of 'tree' is eliminated. diff --git a/Misc/NEWS.d/next/Library/2018-06-29-12-23-34.bpo-33978.y4csIw.rst b/Misc/NEWS.d/next/Library/2018-06-29-12-23-34.bpo-33978.y4csIw.rst deleted file mode 100644 index 12638957ee38..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-29-12-23-34.bpo-33978.y4csIw.rst +++ /dev/null @@ -1,2 +0,0 @@ -Closed existing logging handlers before reconfiguration via fileConfig -and dictConfig. Patch by Karthikeyan Singaravelan. diff --git a/Misc/NEWS.d/next/Library/2018-06-29-13-05-01.bpo-34003.Iu831h.rst b/Misc/NEWS.d/next/Library/2018-06-29-13-05-01.bpo-34003.Iu831h.rst deleted file mode 100644 index 7bc5e1200ae8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-06-29-13-05-01.bpo-34003.Iu831h.rst +++ /dev/null @@ -1,2 +0,0 @@ -csv.DictReader now creates dicts instead of OrderedDicts. Patch by Michael -Selik. diff --git a/Misc/NEWS.d/next/Library/2018-07-02-05-59-11.bpo-34019.ZXJIife.rst b/Misc/NEWS.d/next/Library/2018-07-02-05-59-11.bpo-34019.ZXJIife.rst deleted file mode 100644 index 8a9fe79b80cf..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-02-05-59-11.bpo-34019.ZXJIife.rst +++ /dev/null @@ -1,2 +0,0 @@ -webbrowser: Correct the arguments passed to Opera Browser when opening a new URL -using the ``webbrowser`` module. Patch by Bumsik Kim. diff --git a/Misc/NEWS.d/next/Library/2018-07-04-07-36-53.bpo-34010.VNDkde.rst b/Misc/NEWS.d/next/Library/2018-07-04-07-36-53.bpo-34010.VNDkde.rst deleted file mode 100644 index 4cb7892ee81a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-04-07-36-53.bpo-34010.VNDkde.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed a performance regression for reading streams with tarfile. The -buffered read should use a list, instead of appending to a bytes object. diff --git a/Misc/NEWS.d/next/Library/2018-07-04-17-14-26.bpo-34044.KWAu4y.rst b/Misc/NEWS.d/next/Library/2018-07-04-17-14-26.bpo-34044.KWAu4y.rst deleted file mode 100644 index 42a6ffbf84af..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-04-17-14-26.bpo-34044.KWAu4y.rst +++ /dev/null @@ -1,3 +0,0 @@ -``subprocess.Popen`` now copies the *startupinfo* argument to leave it -unchanged: it will modify the copy, so that the same ``STARTUPINFO`` object can -be used multiple times. diff --git a/Misc/NEWS.d/next/Library/2018-07-04-21-14-35.bpo-34043.0YJNq9.rst b/Misc/NEWS.d/next/Library/2018-07-04-21-14-35.bpo-34043.0YJNq9.rst deleted file mode 100644 index c035ba7275f8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-04-21-14-35.bpo-34043.0YJNq9.rst +++ /dev/null @@ -1 +0,0 @@ -Optimize tarfile uncompress performance about 15% when gzip is used. diff --git a/Misc/NEWS.d/next/Library/2018-07-05-18-37-05.bpo-34054.nWRS6M.rst b/Misc/NEWS.d/next/Library/2018-07-05-18-37-05.bpo-34054.nWRS6M.rst deleted file mode 100644 index 9d4d1f24db49..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-05-18-37-05.bpo-34054.nWRS6M.rst +++ /dev/null @@ -1,3 +0,0 @@ -The multiprocessing module now uses the monotonic clock -:func:`time.monotonic` instead of the system clock :func:`time.time` to -implement timeout. diff --git a/Misc/NEWS.d/next/Library/2018-07-05-22-45-46.bpo-34056.86isrU.rst b/Misc/NEWS.d/next/Library/2018-07-05-22-45-46.bpo-34056.86isrU.rst deleted file mode 100644 index edc0135efc60..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-05-22-45-46.bpo-34056.86isrU.rst +++ /dev/null @@ -1,3 +0,0 @@ -Ensure the loader shim created by ``imp.load_module`` always returns bytes -from its ``get_data()`` function. This fixes using ``imp.load_module`` with -:pep:`552` hash-based pycs. diff --git a/Misc/NEWS.d/next/Library/2018-07-06-15-06-32.bpo-34041.0zrKLh.rst b/Misc/NEWS.d/next/Library/2018-07-06-15-06-32.bpo-34041.0zrKLh.rst deleted file mode 100644 index c41876bc60cb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-06-15-06-32.bpo-34041.0zrKLh.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add the parameter *deterministic* to the -:meth:`sqlite3.Connection.create_function` method. Patch by Sergey Fedoseev. diff --git a/Misc/NEWS.d/next/Library/2018-07-08-18-49-41.bpo-33967.lhaAez.rst b/Misc/NEWS.d/next/Library/2018-07-08-18-49-41.bpo-33967.lhaAez.rst deleted file mode 100644 index 1e1e745789a4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-08-18-49-41.bpo-33967.lhaAez.rst +++ /dev/null @@ -1,2 +0,0 @@ -functools.singledispatch now raises TypeError instead of IndexError when no -positional arguments are passed. diff --git a/Misc/NEWS.d/next/Library/2018-07-11-10-03-21.bpo-27494.04OWkW.rst b/Misc/NEWS.d/next/Library/2018-07-11-10-03-21.bpo-27494.04OWkW.rst deleted file mode 100644 index 9ad67c46170f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-11-10-03-21.bpo-27494.04OWkW.rst +++ /dev/null @@ -1,2 +0,0 @@ -Reverted :issue:`27494`. 2to3 rejects now a trailing comma in generator -expressions. diff --git a/Misc/NEWS.d/next/Library/2018-07-11-20-51-20.bpo-34070.WpmFAu.rst b/Misc/NEWS.d/next/Library/2018-07-11-20-51-20.bpo-34070.WpmFAu.rst deleted file mode 100644 index 0088c62c0ffb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-11-20-51-20.bpo-34070.WpmFAu.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make sure to only check if the handle is a tty, when opening -a file with ``buffering=-1``. diff --git a/Misc/NEWS.d/next/Library/2018-07-13-08-44-52.bpo-34108.RjobUC.rst b/Misc/NEWS.d/next/Library/2018-07-13-08-44-52.bpo-34108.RjobUC.rst deleted file mode 100644 index 1021f98b7f9e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-13-08-44-52.bpo-34108.RjobUC.rst +++ /dev/null @@ -1 +0,0 @@ -Remove extraneous CR in 2to3 refactor. diff --git a/Misc/NEWS.d/next/Library/2018-07-13-13-42-10.bpo-34097.F5Dk5o.rst b/Misc/NEWS.d/next/Library/2018-07-13-13-42-10.bpo-34097.F5Dk5o.rst deleted file mode 100644 index 397149559af5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-13-13-42-10.bpo-34097.F5Dk5o.rst +++ /dev/null @@ -1,3 +0,0 @@ -ZipFile can zip files older than 1980-01-01 and newer than 2107-12-31 using -a new ``strict_timestamps`` parameter at the cost of setting the timestamp -to the limit. diff --git a/Misc/NEWS.d/next/Library/2018-07-20-09-11-05.bpo-33729.sO6iTb.rst b/Misc/NEWS.d/next/Library/2018-07-20-09-11-05.bpo-33729.sO6iTb.rst deleted file mode 100644 index c4718722ad7c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-20-09-11-05.bpo-33729.sO6iTb.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed issues with arguments parsing in :mod:`hashlib`. diff --git a/Misc/NEWS.d/next/Library/2018-07-20-18-06-00.bpo-34164.fNfT-q.rst b/Misc/NEWS.d/next/Library/2018-07-20-18-06-00.bpo-34164.fNfT-q.rst deleted file mode 100644 index 99bf169308c0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-20-18-06-00.bpo-34164.fNfT-q.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`base64.b32decode` could raise UnboundLocalError or OverflowError for -incorrect padding. Now it always raises :exc:`base64.Error` in these cases. diff --git a/Misc/NEWS.d/next/Library/2018-07-22-07-59-32.bpo-940286.NZTzyc.rst b/Misc/NEWS.d/next/Library/2018-07-22-07-59-32.bpo-940286.NZTzyc.rst deleted file mode 100644 index 678ac7a12244..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-22-07-59-32.bpo-940286.NZTzyc.rst +++ /dev/null @@ -1,2 +0,0 @@ -pydoc's ``Helper.showtopic()`` method now prints the cross references of a -topic correctly. diff --git a/Misc/NEWS.d/next/Library/2018-07-22-09-05-01.bpo-21446.w6g7tn.rst b/Misc/NEWS.d/next/Library/2018-07-22-09-05-01.bpo-21446.w6g7tn.rst deleted file mode 100644 index 81da4a6b6a05..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-22-09-05-01.bpo-21446.w6g7tn.rst +++ /dev/null @@ -1,2 +0,0 @@ -The :2to3fixer:`reload` fixer now uses :func:`importlib.reload` instead of -deprecated :func:`imp.reload`. diff --git a/Misc/NEWS.d/next/Library/2018-07-23-12-20-02.bpo-32788.R2jSiK.rst b/Misc/NEWS.d/next/Library/2018-07-23-12-20-02.bpo-32788.R2jSiK.rst deleted file mode 100644 index 1f3ae88b706d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-23-12-20-02.bpo-32788.R2jSiK.rst +++ /dev/null @@ -1,3 +0,0 @@ -Errors other than :exc:`TypeError` raised in methods ``__adapt__()`` and -``__conform__()`` in the :mod:`sqlite3` module are now propagated to the -user. diff --git a/Misc/NEWS.d/next/Library/2018-07-23-14-12-28.bpo-34197.7yFSP5.rst b/Misc/NEWS.d/next/Library/2018-07-23-14-12-28.bpo-34197.7yFSP5.rst deleted file mode 100644 index 344d7280f20a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-23-14-12-28.bpo-34197.7yFSP5.rst +++ /dev/null @@ -1,3 +0,0 @@ -Attributes *skipinitialspace*, *doublequote* and *strict* of the *dialect* -attribute of the :mod:`csv` reader are now :class:`bool` instances instead -of integers 0 or 1. diff --git a/Misc/NEWS.d/next/Library/2018-07-24-16-37-40.bpo-34052.VbbFAE.rst b/Misc/NEWS.d/next/Library/2018-07-24-16-37-40.bpo-34052.VbbFAE.rst deleted file mode 100644 index 5aa3cc9a81d7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-24-16-37-40.bpo-34052.VbbFAE.rst +++ /dev/null @@ -1,7 +0,0 @@ -:meth:`sqlite3.Connection.create_aggregate`, -:meth:`sqlite3.Connection.create_function`, -:meth:`sqlite3.Connection.set_authorizer`, -:meth:`sqlite3.Connection.set_progress_handler` methods raises TypeError -when unhashable objects are passed as callable. These methods now don't pass -such objects to SQLite API. Previous behavior could lead to segfaults. Patch -by Sergey Fedoseev. diff --git a/Misc/NEWS.d/next/Library/2018-07-25-00-40-14.bpo-34213.O15MgP.rst b/Misc/NEWS.d/next/Library/2018-07-25-00-40-14.bpo-34213.O15MgP.rst deleted file mode 100644 index 28012af45728..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-25-00-40-14.bpo-34213.O15MgP.rst +++ /dev/null @@ -1 +0,0 @@ -Allow frozen dataclasses to have a field named "object". Previously this conflicted with an internal use of "object". diff --git a/Misc/NEWS.d/next/Library/2018-07-25-12-08-48.bpo-13041.lNmgDz.rst b/Misc/NEWS.d/next/Library/2018-07-25-12-08-48.bpo-13041.lNmgDz.rst deleted file mode 100644 index d0871a8ef1d6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-25-12-08-48.bpo-13041.lNmgDz.rst +++ /dev/null @@ -1,3 +0,0 @@ -Use :func:`shutil.get_terminal_size` to calculate the terminal width -correctly in the ``argparse.HelpFormatter`` class. Initial patch by Zbyszek -J?drzejewski-Szmek. diff --git a/Misc/NEWS.d/next/Library/2018-07-25-19-02-39.bpo-34228.0Ibztw.rst b/Misc/NEWS.d/next/Library/2018-07-25-19-02-39.bpo-34228.0Ibztw.rst deleted file mode 100644 index 729c0c4fa810..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-25-19-02-39.bpo-34228.0Ibztw.rst +++ /dev/null @@ -1,3 +0,0 @@ -tracemalloc: PYTHONTRACEMALLOC=0 environment variable and -X tracemalloc=0 -command line option are now allowed to disable explicitly tracemalloc at -startup. diff --git a/Misc/NEWS.d/next/Library/2018-07-25-22-38-54.bpo-33089.C3CB7e.rst b/Misc/NEWS.d/next/Library/2018-07-25-22-38-54.bpo-33089.C3CB7e.rst deleted file mode 100644 index 83152a77b20b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-25-22-38-54.bpo-33089.C3CB7e.rst +++ /dev/null @@ -1 +0,0 @@ -Enhanced math.hypot() to support more than two dimensions. diff --git a/Misc/NEWS.d/next/Library/2018-07-26-08-45-49.bpo-19891.Y-3IiB.rst b/Misc/NEWS.d/next/Library/2018-07-26-08-45-49.bpo-19891.Y-3IiB.rst deleted file mode 100644 index 18e10f5aa3d6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-26-08-45-49.bpo-19891.Y-3IiB.rst +++ /dev/null @@ -1,2 +0,0 @@ -Ignore errors caused by missing / non-writable homedir while writing history -during exit of an interactive session. Patch by Anthony Sottile. diff --git a/Misc/NEWS.d/next/Library/2018-07-28-11-47-10.bpo-34251.q3elQ6.rst b/Misc/NEWS.d/next/Library/2018-07-28-11-47-10.bpo-34251.q3elQ6.rst deleted file mode 100644 index 098f47e187c7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-28-11-47-10.bpo-34251.q3elQ6.rst +++ /dev/null @@ -1,2 +0,0 @@ -Restore ``msilib.Win64`` to preserve backwards compatibility since it's -already used by :mod:`distutils`' ``bdist_msi`` command. diff --git a/Misc/NEWS.d/next/Library/2018-07-28-11-49-21.bpo-34075.9u1bO-.rst b/Misc/NEWS.d/next/Library/2018-07-28-11-49-21.bpo-34075.9u1bO-.rst deleted file mode 100644 index 799e68ef9978..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-28-11-49-21.bpo-34075.9u1bO-.rst +++ /dev/null @@ -1,2 +0,0 @@ -Deprecate passing non-ThreadPoolExecutor instances to -:meth:`AbstractEventLoop.set_default_executor`. diff --git a/Misc/NEWS.d/next/Library/2018-07-28-12-08-53.bpo-32215.EU68SY.rst b/Misc/NEWS.d/next/Library/2018-07-28-12-08-53.bpo-32215.EU68SY.rst deleted file mode 100644 index c097cf7310df..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-28-12-08-53.bpo-32215.EU68SY.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix performance regression in :mod:`sqlite3` when a DML statement appeared -in a different line than the rest of the SQL query. diff --git a/Misc/NEWS.d/next/Library/2018-07-28-15-00-31.bpo-34035.75nW0H.rst b/Misc/NEWS.d/next/Library/2018-07-28-15-00-31.bpo-34035.75nW0H.rst deleted file mode 100644 index b66d2812179c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-28-15-00-31.bpo-34035.75nW0H.rst +++ /dev/null @@ -1 +0,0 @@ -Fix several AttributeError in zipfile seek() methods. Patch by Micka?l Schoentgen. diff --git a/Misc/NEWS.d/next/Library/2018-07-28-17-00-36.bpo-34263.zUfRsu.rst b/Misc/NEWS.d/next/Library/2018-07-28-17-00-36.bpo-34263.zUfRsu.rst deleted file mode 100644 index 799463b59163..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-28-17-00-36.bpo-34263.zUfRsu.rst +++ /dev/null @@ -1,2 +0,0 @@ -asyncio's event loop will not pass timeouts longer than one day to -epoll/select etc. diff --git a/Misc/NEWS.d/next/Library/2018-07-29-11-32-56.bpo-34270.aL6P-3.rst b/Misc/NEWS.d/next/Library/2018-07-29-11-32-56.bpo-34270.aL6P-3.rst deleted file mode 100644 index a66e110315ae..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-29-11-32-56.bpo-34270.aL6P-3.rst +++ /dev/null @@ -1,8 +0,0 @@ -The default asyncio task class now always has a name which can be get or set -using two new methods (:meth:`~asyncio.Task.get_name()` and -:meth:`~asyncio.Task.set_name`) and is visible in the :func:`repr` output. An -initial name can also be set using the new ``name`` keyword argument to -:func:`asyncio.create_task` or the -:meth:`~asyncio.AbstractEventLoop.create_task` method of the event loop. -If no initial name is set, the default Task implementation generates a name -like ``Task-1`` using a monotonic counter. diff --git a/Misc/NEWS.d/next/Library/2018-07-29-13-50-32.bpo-32321.hDoNKC.rst b/Misc/NEWS.d/next/Library/2018-07-29-13-50-32.bpo-32321.hDoNKC.rst deleted file mode 100644 index 82ee39fa76c4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-29-13-50-32.bpo-32321.hDoNKC.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add pure Python fallback for functools.reduce. -Patch by Robert Wright. diff --git a/Misc/NEWS.d/next/Library/2018-07-29-14-12-23.bpo-31047.FSarLs.rst b/Misc/NEWS.d/next/Library/2018-07-29-14-12-23.bpo-31047.FSarLs.rst deleted file mode 100644 index 6415d4a95aef..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-29-14-12-23.bpo-31047.FSarLs.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``ntpath.abspath`` for invalid paths on windows. Patch by Franz -Woellert. diff --git a/Misc/NEWS.d/next/Library/2018-07-29-15-25-15.bpo-34246.xiKq-Q.rst b/Misc/NEWS.d/next/Library/2018-07-29-15-25-15.bpo-34246.xiKq-Q.rst deleted file mode 100644 index 50c91ece07ef..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-29-15-25-15.bpo-34246.xiKq-Q.rst +++ /dev/null @@ -1,2 +0,0 @@ -:meth:`smtplib.SMTP.send_message` no longer modifies the content of the -*mail_options* argument. Patch by Pablo S. Blum de Aguiar. diff --git a/Misc/NEWS.d/next/Library/2018-07-29-21-53-15.bpo-33089.hxbp3g.rst b/Misc/NEWS.d/next/Library/2018-07-29-21-53-15.bpo-33089.hxbp3g.rst deleted file mode 100644 index 9b253d0bc7f4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-29-21-53-15.bpo-33089.hxbp3g.rst +++ /dev/null @@ -1 +0,0 @@ -Add math.dist() to compute the Euclidean distance between two points. diff --git a/Misc/NEWS.d/next/Library/2018-07-31-23-00-09.bpo-34248.5U6wwc.rst b/Misc/NEWS.d/next/Library/2018-07-31-23-00-09.bpo-34248.5U6wwc.rst deleted file mode 100644 index 55215f60550b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-31-23-00-09.bpo-34248.5U6wwc.rst +++ /dev/null @@ -1,3 +0,0 @@ -Report filename in the exception raised when the database file cannot be opened -by :func:`dbm.gnu.open` and :func:`dbm.ndbm.open` due to OS-related error. -Patch by Zsolt Cserna. diff --git a/Misc/NEWS.d/next/Library/2018-07-31-23-33-06.bpo-33613.Cdnt0i.rst b/Misc/NEWS.d/next/Library/2018-07-31-23-33-06.bpo-33613.Cdnt0i.rst deleted file mode 100644 index 9574e43fcc60..000000000000 --- a/Misc/NEWS.d/next/Library/2018-07-31-23-33-06.bpo-33613.Cdnt0i.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a race condition in ``multiprocessing.semaphore_tracker`` when the -tracker receives SIGINT before it can register signal handlers for ignoring -it. diff --git a/Misc/NEWS.d/next/Library/2018-08-01-21-26-17.bpo-9372.V8Ou3K.rst b/Misc/NEWS.d/next/Library/2018-08-01-21-26-17.bpo-9372.V8Ou3K.rst deleted file mode 100644 index 8ae5ce118f95..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-01-21-26-17.bpo-9372.V8Ou3K.rst +++ /dev/null @@ -1,3 +0,0 @@ -Deprecate :meth:`__getitem__` methods of -:class:`xml.dom.pulldom.DOMEventStream`, :class:`wsgiref.util.FileWrapper` -and :class:`fileinput.FileInput`. diff --git a/Misc/NEWS.d/next/Library/2018-08-02-14-43-42.bpo-34318.GneiXs.rst b/Misc/NEWS.d/next/Library/2018-08-02-14-43-42.bpo-34318.GneiXs.rst deleted file mode 100644 index 4df4fe30b97a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-02-14-43-42.bpo-34318.GneiXs.rst +++ /dev/null @@ -1,7 +0,0 @@ -:func:`~unittest.TestCase.assertRaises`, -:func:`~unittest.TestCase.assertRaisesRegex`, -:func:`~unittest.TestCase.assertWarns` and -:func:`~unittest.TestCase.assertWarnsRegex` no longer success if the passed -callable is None. They no longer ignore unknown keyword arguments in the -context manager mode. A DeprecationWarning was raised in these cases -since Python 3.5. diff --git a/Misc/NEWS.d/next/Library/2018-08-02-20-39-32.bpo-26502.eGXr_k.rst b/Misc/NEWS.d/next/Library/2018-08-02-20-39-32.bpo-26502.eGXr_k.rst deleted file mode 100644 index 3a3fc17e22df..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-02-20-39-32.bpo-26502.eGXr_k.rst +++ /dev/null @@ -1,2 +0,0 @@ -Implement ``traceback.FrameSummary.__len__()`` method to preserve -compatibility with the old tuple API. diff --git a/Misc/NEWS.d/next/Library/2018-08-02-21-28-38.bpo-18540.AryoYY.rst b/Misc/NEWS.d/next/Library/2018-08-02-21-28-38.bpo-18540.AryoYY.rst deleted file mode 100644 index 3ffd9f6a3754..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-02-21-28-38.bpo-18540.AryoYY.rst +++ /dev/null @@ -1,3 +0,0 @@ -The :class:`imaplib.IMAP4` and :class:`imaplib.IMAP4_SSL` classes now -resolve to the local host IP correctly when the default value of *host* -parameter (``''``) is used. diff --git a/Misc/NEWS.d/next/Library/2018-08-04-00-06-28.bpo-34333.5NHG93.rst b/Misc/NEWS.d/next/Library/2018-08-04-00-06-28.bpo-34333.5NHG93.rst deleted file mode 100644 index 000f68422556..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-04-00-06-28.bpo-34333.5NHG93.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix %-formatting in :meth:`pathlib.PurePath.with_suffix` when formatting an -error message. diff --git a/Misc/NEWS.d/next/Library/2018-08-06-11-01-18.bpo-34341.E0b9p2.rst b/Misc/NEWS.d/next/Library/2018-08-06-11-01-18.bpo-34341.E0b9p2.rst deleted file mode 100644 index 46a9cde19c40..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-06-11-01-18.bpo-34341.E0b9p2.rst +++ /dev/null @@ -1,2 +0,0 @@ -Appending to the ZIP archive with the ZIP64 extension no longer grows the -size of extra fields of existing entries. diff --git a/Misc/NEWS.d/next/Library/2018-08-06-21-47-03.bpo-2122.GWdmrm.rst b/Misc/NEWS.d/next/Library/2018-08-06-21-47-03.bpo-2122.GWdmrm.rst deleted file mode 100644 index dd31c0ec9089..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-06-21-47-03.bpo-2122.GWdmrm.rst +++ /dev/null @@ -1,2 +0,0 @@ -The :meth:`mmap.flush() ` method now returns ``None`` on -success, raises an exception on error under all platforms. diff --git a/Misc/NEWS.d/next/Library/2018-08-12-00-14-54.bpo-22602.ybG9K8.rst b/Misc/NEWS.d/next/Library/2018-08-12-00-14-54.bpo-22602.ybG9K8.rst deleted file mode 100644 index 5b113e3204c1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-12-00-14-54.bpo-22602.ybG9K8.rst +++ /dev/null @@ -1,3 +0,0 @@ -The UTF-7 decoder now raises :exc:`UnicodeDecodeError` for ill-formed -sequences starting with "+" (as specified in RFC 2152). Patch by Zackery -Spytz. diff --git a/Misc/NEWS.d/next/Library/2018-08-12-08-43-21.bpo-34384.yjofCv.rst b/Misc/NEWS.d/next/Library/2018-08-12-08-43-21.bpo-34384.yjofCv.rst deleted file mode 100644 index 117236b21b04..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-12-08-43-21.bpo-34384.yjofCv.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`os.readlink` now accepts :term:`path-like ` and -:class:`bytes` objects on Windows. diff --git a/Misc/NEWS.d/next/Library/2018-08-15-16-22-30.bpo-31715.Iw8jS8.rst b/Misc/NEWS.d/next/Library/2018-08-15-16-22-30.bpo-31715.Iw8jS8.rst deleted file mode 100644 index eacba28f9fd9..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-15-16-22-30.bpo-31715.Iw8jS8.rst +++ /dev/null @@ -1 +0,0 @@ -Associate ``.mjs`` file extension with ``application/javascript`` MIME Type. diff --git a/Misc/NEWS.d/next/Library/2018-08-16-16-47-15.bpo-20849.YWJECC.rst b/Misc/NEWS.d/next/Library/2018-08-16-16-47-15.bpo-20849.YWJECC.rst deleted file mode 100644 index 8ef544ba1e34..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-16-16-47-15.bpo-20849.YWJECC.rst +++ /dev/null @@ -1,2 +0,0 @@ -shutil.copytree now accepts a new ``dirs_exist_ok`` keyword argument. -Patch by Josh Bronson. diff --git a/Misc/NEWS.d/next/Library/2018-08-16-19-07-05.bpo-34412.NF5Jm2.rst b/Misc/NEWS.d/next/Library/2018-08-16-19-07-05.bpo-34412.NF5Jm2.rst deleted file mode 100644 index 8d7320f25e47..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-16-19-07-05.bpo-34412.NF5Jm2.rst +++ /dev/null @@ -1 +0,0 @@ -Make :func:`signal.strsignal` work on HP-UX. Patch by Michael Osipov. diff --git a/Misc/NEWS.d/next/Library/2018-08-20-13-53-10.bpo-34427.tMRQjl.rst b/Misc/NEWS.d/next/Library/2018-08-20-13-53-10.bpo-34427.tMRQjl.rst deleted file mode 100644 index f6e0e030b7fe..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-20-13-53-10.bpo-34427.tMRQjl.rst +++ /dev/null @@ -1 +0,0 @@ -Fix infinite loop in ``a.extend(a)`` for ``MutableSequence`` subclasses. diff --git a/Misc/NEWS.d/next/Library/2018-08-20-16-48-32.bpo-34441._zx9lU.rst b/Misc/NEWS.d/next/Library/2018-08-20-16-48-32.bpo-34441._zx9lU.rst deleted file mode 100644 index 6db095bdf0c6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-20-16-48-32.bpo-34441._zx9lU.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix crash when an ``ABC``-derived class with invalid ``__subclasses__`` is -passed as the second argument to :func:`issubclass()`. Patch by Alexey -Izbyshev. diff --git a/Misc/NEWS.d/next/Library/2018-08-21-00-29-01.bpo-34171.6LkWav.rst b/Misc/NEWS.d/next/Library/2018-08-21-00-29-01.bpo-34171.6LkWav.rst deleted file mode 100644 index f647b8e3fb4b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-21-00-29-01.bpo-34171.6LkWav.rst +++ /dev/null @@ -1 +0,0 @@ -Running the :mod:`trace` module no longer creates the ``trace.cover`` file. diff --git a/Misc/NEWS.d/next/Library/2018-08-22-17-43-52.bpo-6700.hp7C4B.rst b/Misc/NEWS.d/next/Library/2018-08-22-17-43-52.bpo-6700.hp7C4B.rst deleted file mode 100644 index d95c737a2860..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-22-17-43-52.bpo-6700.hp7C4B.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix inspect.getsourcelines for module level frames/tracebacks. -Patch by Vladimir Matveev. diff --git a/Misc/NEWS.d/next/Library/2018-08-22-21-59-08.bpo-34454.z7uG4b.rst b/Misc/NEWS.d/next/Library/2018-08-22-21-59-08.bpo-34454.z7uG4b.rst deleted file mode 100644 index 1d5c32708c15..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-22-21-59-08.bpo-34454.z7uG4b.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix the .fromisoformat() methods of datetime types crashing when given -unicode with non-UTF-8-encodable code points. Specifically, -datetime.fromisoformat() now accepts surrogate unicode code points used as -the separator. Report and tests by Alexey Izbyshev, patch by Paul Ganssle. diff --git a/Misc/NEWS.d/next/Library/2018-08-23-09-25-08.bpo-34472.cGyYrO.rst b/Misc/NEWS.d/next/Library/2018-08-23-09-25-08.bpo-34472.cGyYrO.rst deleted file mode 100644 index 208ec0bf7431..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-23-09-25-08.bpo-34472.cGyYrO.rst +++ /dev/null @@ -1,3 +0,0 @@ -Improved compatibility for streamed files in :mod:`zipfile`. Previously an -optional signature was not being written and certain ZIP applications were -not supported. Patch by Silas Sewell. diff --git a/Misc/NEWS.d/next/Library/2018-08-24-17-31-27.bpo-13312.6hA5La.rst b/Misc/NEWS.d/next/Library/2018-08-24-17-31-27.bpo-13312.6hA5La.rst deleted file mode 100644 index dc906696a53e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-24-17-31-27.bpo-13312.6hA5La.rst +++ /dev/null @@ -1,2 +0,0 @@ -Avoids a possible integer underflow (undefined behavior) in the time -module's year handling code when passed a very low negative year value. diff --git a/Misc/NEWS.d/next/Library/2018-08-27-16-01-22.bpo-34515.S0Irst.rst b/Misc/NEWS.d/next/Library/2018-08-27-16-01-22.bpo-34515.S0Irst.rst deleted file mode 100644 index 7ace7ba8218c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-27-16-01-22.bpo-34515.S0Irst.rst +++ /dev/null @@ -1 +0,0 @@ -Fix parsing non-ASCII identifiers in :mod:`lib2to3.pgen2.tokenize` (PEP 3131). diff --git a/Misc/NEWS.d/next/Library/2018-08-30-14-44-11.bpo-22872.NhIaZ9.rst b/Misc/NEWS.d/next/Library/2018-08-30-14-44-11.bpo-22872.NhIaZ9.rst deleted file mode 100644 index 547c7b1a31cb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-30-14-44-11.bpo-22872.NhIaZ9.rst +++ /dev/null @@ -1,4 +0,0 @@ -When the queue is closed, :exc:`ValueError` is now raised by -:meth:`multiprocessing.Queue.put` and :meth:`multiprocessing.Queue.get` -instead of :exc:`AssertionError` and :exc:`OSError`, respectively. -Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Library/2018-08-31-06-28-03.bpo-34282.ztyXH8.rst b/Misc/NEWS.d/next/Library/2018-08-31-06-28-03.bpo-34282.ztyXH8.rst deleted file mode 100644 index 79f56f124a3f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-31-06-28-03.bpo-34282.ztyXH8.rst +++ /dev/null @@ -1,2 +0,0 @@ -Move ``Enum._convert`` to ``EnumMeta._convert_`` and fix enum members getting -shadowed by parent attributes. diff --git a/Misc/NEWS.d/next/Library/2018-08-31-19-26-55.bpo-34558.MHv582.rst b/Misc/NEWS.d/next/Library/2018-08-31-19-26-55.bpo-34558.MHv582.rst deleted file mode 100644 index 267242690eef..000000000000 --- a/Misc/NEWS.d/next/Library/2018-08-31-19-26-55.bpo-34558.MHv582.rst +++ /dev/null @@ -1 +0,0 @@ -Correct typo in Lib/ctypes/_aix.py diff --git a/Misc/NEWS.d/next/Library/2018-09-01-20-43-10.bpo-34563.7NQK7B.rst b/Misc/NEWS.d/next/Library/2018-09-01-20-43-10.bpo-34563.7NQK7B.rst deleted file mode 100644 index 9127af0d1924..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-01-20-43-10.bpo-34563.7NQK7B.rst +++ /dev/null @@ -1 +0,0 @@ -On Windows, fix multiprocessing.Connection for very large read: fix _winapi.PeekNamedPipe() and _winapi.ReadFile() for read larger than INT_MAX (usually 2^31-1). \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2018-09-03-23-23-32.bpo-34530.h_Xsu7.rst b/Misc/NEWS.d/next/Library/2018-09-03-23-23-32.bpo-34530.h_Xsu7.rst deleted file mode 100644 index 064de73c0ffe..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-03-23-23-32.bpo-34530.h_Xsu7.rst +++ /dev/null @@ -1,2 +0,0 @@ -``distutils.spawn.find_executable()`` now falls back on :data:`os.defpath` -if the ``PATH`` environment variable is not set. diff --git a/Misc/NEWS.d/next/Library/2018-09-03-23-54-35.bpo-8110.FExWI_.rst b/Misc/NEWS.d/next/Library/2018-09-03-23-54-35.bpo-8110.FExWI_.rst deleted file mode 100644 index c29ace1a0fc6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-03-23-54-35.bpo-8110.FExWI_.rst +++ /dev/null @@ -1,2 +0,0 @@ -Refactored :mod:`subprocess` to check for Windows-specific modules rather -than ``sys.platform == 'win32'``. diff --git a/Misc/NEWS.d/next/Library/2018-09-04-09-32-54.bpo-34574.X4RwYI.rst b/Misc/NEWS.d/next/Library/2018-09-04-09-32-54.bpo-34574.X4RwYI.rst deleted file mode 100644 index de718ad1e6f1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-04-09-32-54.bpo-34574.X4RwYI.rst +++ /dev/null @@ -1,2 +0,0 @@ -OrderedDict iterators are not exhausted during pickling anymore. Patch by -Sergey Fedoseev. diff --git a/Misc/NEWS.d/next/Library/2018-09-06-10-07-46.bpo-30977.bP661V.rst b/Misc/NEWS.d/next/Library/2018-09-06-10-07-46.bpo-30977.bP661V.rst deleted file mode 100644 index 3d547c06beb5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-06-10-07-46.bpo-30977.bP661V.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make uuid.UUID use ``__slots__`` to reduce its memory footprint. Based on -original patch by Wouter Bolsterlee. diff --git a/Misc/NEWS.d/next/Library/2018-09-07-10-16-34.bpo-34604.xL7-kG.rst b/Misc/NEWS.d/next/Library/2018-09-07-10-16-34.bpo-34604.xL7-kG.rst deleted file mode 100644 index 958b74fd0da6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-07-10-16-34.bpo-34604.xL7-kG.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix possible mojibake in the error message of `pwd.getpwnam` and -`grp.getgrnam` using string representation because of invisible characters -or trailing whitespaces. Patch by William Grzybowski. diff --git a/Misc/NEWS.d/next/Library/2018-09-07-10-57-00.bpo-34421.AKJISD.rst b/Misc/NEWS.d/next/Library/2018-09-07-10-57-00.bpo-34421.AKJISD.rst deleted file mode 100644 index cc1db086f0c4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-07-10-57-00.bpo-34421.AKJISD.rst +++ /dev/null @@ -1 +0,0 @@ -Fix distutils logging for non-ASCII strings. This caused installation issues on Windows. diff --git a/Misc/NEWS.d/next/Library/2018-09-08-12-57-07.bpo-34610.wmoP5j.rst b/Misc/NEWS.d/next/Library/2018-09-08-12-57-07.bpo-34610.wmoP5j.rst deleted file mode 100644 index bffb355ea2ab..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-08-12-57-07.bpo-34610.wmoP5j.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed iterator of :class:`multiprocessing.managers.DictProxy`. diff --git a/Misc/NEWS.d/next/Library/2018-09-10-13-04-40.bpo-34622.tpv_rN.rst b/Misc/NEWS.d/next/Library/2018-09-10-13-04-40.bpo-34622.tpv_rN.rst deleted file mode 100644 index 493d6abd910b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-10-13-04-40.bpo-34622.tpv_rN.rst +++ /dev/null @@ -1,4 +0,0 @@ -Create a dedicated ``asyncio.CancelledError``, ``asyncio.InvalidStateError`` -and ``asyncio.TimeoutError`` exception classes. Inherit them from -corresponding exceptions from ``concurrent.futures`` package. Extract -``asyncio`` exceptions into a separate file. diff --git a/Misc/NEWS.d/next/Library/2018-09-10-14-15-53.bpo-32270.wSJjuD.rst b/Misc/NEWS.d/next/Library/2018-09-10-14-15-53.bpo-32270.wSJjuD.rst deleted file mode 100644 index 83f68624c1be..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-10-14-15-53.bpo-32270.wSJjuD.rst +++ /dev/null @@ -1,2 +0,0 @@ -The subprocess module no longer mistakenly closes redirected fds even when -they were in pass_fds when outside of the default {0, 1, 2} set. diff --git a/Misc/NEWS.d/next/Library/2018-09-10-17-46-51.bpo-34625.D2YfDz.rst b/Misc/NEWS.d/next/Library/2018-09-10-17-46-51.bpo-34625.D2YfDz.rst deleted file mode 100644 index 0747ec54470f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-10-17-46-51.bpo-34625.D2YfDz.rst +++ /dev/null @@ -1 +0,0 @@ -Update vendorized expat library version to 2.2.6. diff --git a/Misc/NEWS.d/next/Library/2018-09-10-21-09-34.bpo-34363.YuSb0T.rst b/Misc/NEWS.d/next/Library/2018-09-10-21-09-34.bpo-34363.YuSb0T.rst deleted file mode 100644 index 5691efb1e276..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-10-21-09-34.bpo-34363.YuSb0T.rst +++ /dev/null @@ -1 +0,0 @@ -dataclasses.asdict() and .astuple() now handle namedtuples correctly. diff --git a/Misc/NEWS.d/next/Library/2018-09-11-01-25-35.bpo-32490.ROIDO1.rst b/Misc/NEWS.d/next/Library/2018-09-11-01-25-35.bpo-32490.ROIDO1.rst deleted file mode 100644 index 16fe7b4d4c09..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-11-01-25-35.bpo-32490.ROIDO1.rst +++ /dev/null @@ -1,2 +0,0 @@ -Prevent filename duplication in :mod:`subprocess` exception messages. Patch -by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Library/2018-09-11-10-00-53.bpo-34630.YbqUS6.rst b/Misc/NEWS.d/next/Library/2018-09-11-10-00-53.bpo-34630.YbqUS6.rst deleted file mode 100644 index 452bcb6142a0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-11-10-00-53.bpo-34630.YbqUS6.rst +++ /dev/null @@ -1,2 +0,0 @@ -Don't log SSL certificate errors in asyncio code (connection error logging -is skipped already). diff --git a/Misc/NEWS.d/next/Library/2018-09-11-10-51-16.bpo-24412.i-F_E5.rst b/Misc/NEWS.d/next/Library/2018-09-11-10-51-16.bpo-24412.i-F_E5.rst deleted file mode 100644 index 862500dd19fb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-11-10-51-16.bpo-24412.i-F_E5.rst +++ /dev/null @@ -1,4 +0,0 @@ -Add :func:`~unittest.addModuleCleanup()` and -:meth:`~unittest.TestCase.addClassCleanup()` to unittest to support -cleanups for :func:`~unittest.setUpModule()` and -:meth:`~unittest.TestCase.setUpClass()`. Patch by Lisa Roach. diff --git a/Misc/NEWS.d/next/Library/2018-09-11-15-04-05.bpo-34636.capCmt.rst b/Misc/NEWS.d/next/Library/2018-09-11-15-04-05.bpo-34636.capCmt.rst deleted file mode 100644 index c982b0a4cda0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-11-15-04-05.bpo-34636.capCmt.rst +++ /dev/null @@ -1,2 +0,0 @@ -Speed up re scanning of many non-matching characters for \s \w and \d within -bytes objects. (microoptimization) diff --git a/Misc/NEWS.d/next/Library/2018-09-11-15-49-09.bpo-34536.3IPIH5.rst b/Misc/NEWS.d/next/Library/2018-09-11-15-49-09.bpo-34536.3IPIH5.rst deleted file mode 100644 index be45eb57cad5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-11-15-49-09.bpo-34536.3IPIH5.rst +++ /dev/null @@ -1,2 +0,0 @@ -`Enum._missing_`: raise `ValueError` if None returned and `TypeError` if -non-member is returned. diff --git a/Misc/NEWS.d/next/Library/2018-09-12-10-33-44.bpo-34638.xaeZX5.rst b/Misc/NEWS.d/next/Library/2018-09-12-10-33-44.bpo-34638.xaeZX5.rst deleted file mode 100644 index 13b3952a98eb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-12-10-33-44.bpo-34638.xaeZX5.rst +++ /dev/null @@ -1,3 +0,0 @@ -Store a weak reference to stream reader to break strong references loop -between reader and protocol. It allows to detect and close the socket if -the stream is deleted (garbage collected) without ``close()`` call. diff --git a/Misc/NEWS.d/next/Library/2018-09-12-14-46-51.bpo-34652.Rt1m1b.rst b/Misc/NEWS.d/next/Library/2018-09-12-14-46-51.bpo-34652.Rt1m1b.rst deleted file mode 100644 index cbdd7e0ec6ce..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-12-14-46-51.bpo-34652.Rt1m1b.rst +++ /dev/null @@ -1 +0,0 @@ -Ensure :func:`os.lchmod` is never defined on Linux. diff --git a/Misc/NEWS.d/next/Library/2018-09-13-03-59-43.bpo-34658.ykZ-ia.rst b/Misc/NEWS.d/next/Library/2018-09-13-03-59-43.bpo-34658.ykZ-ia.rst deleted file mode 100644 index 35375a088300..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-13-03-59-43.bpo-34658.ykZ-ia.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a rare interpreter unhandled exception state SystemError only seen when -using subprocess with a preexec_fn while an after_parent handler has been -registered with os.register_at_fork and the fork system call fails. diff --git a/Misc/NEWS.d/next/Library/2018-09-13-10-09-19.bpo-6721.ZUL_F3.rst b/Misc/NEWS.d/next/Library/2018-09-13-10-09-19.bpo-6721.ZUL_F3.rst deleted file mode 100644 index 073a441db679..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-13-10-09-19.bpo-6721.ZUL_F3.rst +++ /dev/null @@ -1,2 +0,0 @@ -Acquire the logging module's commonly used internal locks while fork()ing to -avoid deadlocks in the child process. diff --git a/Misc/NEWS.d/next/Library/2018-09-13-11-49-52.bpo-34666.3uLtWv.rst b/Misc/NEWS.d/next/Library/2018-09-13-11-49-52.bpo-34666.3uLtWv.rst deleted file mode 100644 index be82cfed7f13..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-13-11-49-52.bpo-34666.3uLtWv.rst +++ /dev/null @@ -1,3 +0,0 @@ -Implement ``asyncio.StreamWriter.awrite`` and -``asyncio.StreamWriter.aclose()`` coroutines. Methods are needed for -providing a consistent stream API with control flow switched on by default. diff --git a/Misc/NEWS.d/next/Library/2018-09-13-21-04-23.bpo-34672.BYuKKS.rst b/Misc/NEWS.d/next/Library/2018-09-13-21-04-23.bpo-34672.BYuKKS.rst deleted file mode 100644 index 59d106b60042..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-13-21-04-23.bpo-34672.BYuKKS.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add a workaround, so the ``'Z'`` :func:`time.strftime` specifier on the musl -C library can work in some cases. diff --git a/Misc/NEWS.d/next/Library/2018-09-14-10-38-18.bpo-31177.Sv91TN.rst b/Misc/NEWS.d/next/Library/2018-09-14-10-38-18.bpo-31177.Sv91TN.rst deleted file mode 100644 index f385571e99cc..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-14-10-38-18.bpo-31177.Sv91TN.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix bug that prevented using :meth:`reset_mock ` -on mock instances with deleted attributes diff --git a/Misc/NEWS.d/next/Library/2018-09-14-12-38-49.bpo-32718.ICYQbt.rst b/Misc/NEWS.d/next/Library/2018-09-14-12-38-49.bpo-32718.ICYQbt.rst deleted file mode 100644 index b60106a003d3..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-14-12-38-49.bpo-32718.ICYQbt.rst +++ /dev/null @@ -1,2 +0,0 @@ -The Activate.ps1 script from venv works with PowerShell Core 6.1 and is now -available under all operating systems. diff --git a/Misc/NEWS.d/next/Library/2018-09-14-14-29-45.bpo-34670.17XwGB.rst b/Misc/NEWS.d/next/Library/2018-09-14-14-29-45.bpo-34670.17XwGB.rst deleted file mode 100644 index c1a61293faa3..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-14-14-29-45.bpo-34670.17XwGB.rst +++ /dev/null @@ -1,3 +0,0 @@ -Add SSLContext.post_handshake_auth and -SSLSocket.verify_client_post_handshake for TLS 1.3's post -handshake authentication feature. diff --git a/Misc/NEWS.d/next/Library/2018-09-14-20-00-47.bpo-29577.RzwKFD.rst b/Misc/NEWS.d/next/Library/2018-09-14-20-00-47.bpo-29577.RzwKFD.rst deleted file mode 100644 index bd71ac496a67..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-14-20-00-47.bpo-29577.RzwKFD.rst +++ /dev/null @@ -1 +0,0 @@ -Support multiple mixin classes when creating Enums. diff --git a/Misc/NEWS.d/next/Library/2018-09-16-17-04-16.bpo-34659.CWemzH.rst b/Misc/NEWS.d/next/Library/2018-09-16-17-04-16.bpo-34659.CWemzH.rst deleted file mode 100644 index 3b7925aafd4e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-16-17-04-16.bpo-34659.CWemzH.rst +++ /dev/null @@ -1 +0,0 @@ -Add an optional *initial* argument to itertools.accumulate(). diff --git a/Misc/NEWS.d/next/Library/2018-09-19-16-51-04.bpo-34738.Pr3-iG.rst b/Misc/NEWS.d/next/Library/2018-09-19-16-51-04.bpo-34738.Pr3-iG.rst deleted file mode 100644 index c3f402d39ae0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-19-16-51-04.bpo-34738.Pr3-iG.rst +++ /dev/null @@ -1,2 +0,0 @@ -ZIP files created by :mod:`distutils` will now include entries for -directories. diff --git a/Misc/NEWS.d/next/Library/2018-09-20-16-55-43.bpo-34728.CUE8LU.rst b/Misc/NEWS.d/next/Library/2018-09-20-16-55-43.bpo-34728.CUE8LU.rst deleted file mode 100644 index e06eb0f45c9f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-20-16-55-43.bpo-34728.CUE8LU.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add deprecation warning when `loop` is used in methods: `asyncio.sleep`, -`asyncio.wait` and `asyncio.wait_for`. diff --git a/Misc/NEWS.d/next/Library/2018-09-20-17-35-05.bpo-32892.TOUBdg.rst b/Misc/NEWS.d/next/Library/2018-09-20-17-35-05.bpo-32892.TOUBdg.rst deleted file mode 100644 index 9be4bf89008d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-20-17-35-05.bpo-32892.TOUBdg.rst +++ /dev/null @@ -1,4 +0,0 @@ -The parser now represents all constants as :class:`ast.Constant` instead of -using specific constant AST types (``Num``, ``Str``, ``Bytes``, -``NameConstant`` and ``Ellipsis``). These classes are considered deprecated -and will be removed in future Python versions. diff --git a/Misc/NEWS.d/next/Library/2018-09-24-14-21-58.bpo-5950.xH0ekQ.rst b/Misc/NEWS.d/next/Library/2018-09-24-14-21-58.bpo-5950.xH0ekQ.rst deleted file mode 100644 index f0f9c0b80170..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-24-14-21-58.bpo-5950.xH0ekQ.rst +++ /dev/null @@ -1 +0,0 @@ -Support reading zip files with archive comments in :mod:`zipimport`. diff --git a/Misc/NEWS.d/next/Library/2018-09-24-17-14-57.bpo-34687.Fku_8S.rst b/Misc/NEWS.d/next/Library/2018-09-24-17-14-57.bpo-34687.Fku_8S.rst deleted file mode 100644 index 0e203c4f2786..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-24-17-14-57.bpo-34687.Fku_8S.rst +++ /dev/null @@ -1,2 +0,0 @@ -On Windows, asyncio now uses ProactorEventLoop, instead of -SelectorEventLoop, by default. diff --git a/Misc/NEWS.d/next/Library/2018-09-25-08-42-34.bpo-34334.rSPBW9.rst b/Misc/NEWS.d/next/Library/2018-09-25-08-42-34.bpo-34334.rSPBW9.rst deleted file mode 100644 index 137a4f78f420..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-25-08-42-34.bpo-34334.rSPBW9.rst +++ /dev/null @@ -1,2 +0,0 @@ -In :class:`QueueHandler`, clear `exc_text` from :class:`LogRecord` to -prevent traceback from being written twice. diff --git a/Misc/NEWS.d/next/Library/2018-09-25-15-48-50.bpo-34789.rPOEj5.rst b/Misc/NEWS.d/next/Library/2018-09-25-15-48-50.bpo-34789.rPOEj5.rst deleted file mode 100644 index 28f15c3f4122..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-25-15-48-50.bpo-34789.rPOEj5.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`xml.sax.make_parser` now accepts any iterable as its *parser_list* -argument. Patch by Andr?s Delfino. diff --git a/Misc/NEWS.d/next/Library/2018-09-26-14-09-34.bpo-34758.bRBfAi.rst b/Misc/NEWS.d/next/Library/2018-09-26-14-09-34.bpo-34758.bRBfAi.rst deleted file mode 100644 index 82e38aa6e158..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-26-14-09-34.bpo-34758.bRBfAi.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add .wasm -> application/wasm to list of recognized file types and content -type headers diff --git a/Misc/NEWS.d/next/Library/2018-09-27-09-45-00.bpo-34819.9ZaFyO.rst b/Misc/NEWS.d/next/Library/2018-09-27-09-45-00.bpo-34819.9ZaFyO.rst deleted file mode 100644 index 6bbdea235f03..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-27-09-45-00.bpo-34819.9ZaFyO.rst +++ /dev/null @@ -1 +0,0 @@ -Use a monotonic clock to compute timeouts in :meth:`Executor.map` and :func:`as_completed`, in order to prevent timeouts from deviating when the system clock is adjusted. diff --git a/Misc/NEWS.d/next/Library/2018-09-27-13-14-15.bpo-34022.E2cl0r.rst b/Misc/NEWS.d/next/Library/2018-09-27-13-14-15.bpo-34022.E2cl0r.rst deleted file mode 100644 index efebb84304bf..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-27-13-14-15.bpo-34022.E2cl0r.rst +++ /dev/null @@ -1,3 +0,0 @@ -The :envvar:`SOURCE_DATE_EPOCH` environment variable no longer overrides the -value of the *invalidation_mode* argument to :func:`py_compile.compile`, and -determines its default value instead. diff --git a/Misc/NEWS.d/next/Library/2018-09-30-08-08-14.bpo-34849.NXK9Ff.rst b/Misc/NEWS.d/next/Library/2018-09-30-08-08-14.bpo-34849.NXK9Ff.rst deleted file mode 100644 index b92e2f05749b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-09-30-08-08-14.bpo-34849.NXK9Ff.rst +++ /dev/null @@ -1,3 +0,0 @@ -Don't log waiting for ``selector.select`` in asyncio loop iteration. The -waiting is pretty normal for any asyncio program, logging its time just adds -a noise to logs without any useful information provided. diff --git a/Misc/NEWS.d/next/Library/2018-10-02-19-36-34.bpo-34872.yWZRhI.rst b/Misc/NEWS.d/next/Library/2018-10-02-19-36-34.bpo-34872.yWZRhI.rst deleted file mode 100644 index cd027102d012..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-02-19-36-34.bpo-34872.yWZRhI.rst +++ /dev/null @@ -1 +0,0 @@ -Fix self-cancellation in C implementation of asyncio.Task diff --git a/Misc/NEWS.d/next/Library/2018-10-03-09-25-02.bpo-34711.HeOmKR.rst b/Misc/NEWS.d/next/Library/2018-10-03-09-25-02.bpo-34711.HeOmKR.rst deleted file mode 100644 index f3522f319785..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-03-09-25-02.bpo-34711.HeOmKR.rst +++ /dev/null @@ -1,3 +0,0 @@ -http.server ensures it reports HTTPStatus.NOT_FOUND when the local path ends with "/" -and is not a directory, even if the underlying OS (e.g. AIX) accepts such paths as a -valid file reference. Patch by Michael Felt. diff --git a/Misc/NEWS.d/next/Library/2018-10-03-11-07-28.bpo-34866.ML6KpJ.rst b/Misc/NEWS.d/next/Library/2018-10-03-11-07-28.bpo-34866.ML6KpJ.rst deleted file mode 100644 index 90c146ce834e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-03-11-07-28.bpo-34866.ML6KpJ.rst +++ /dev/null @@ -1,2 +0,0 @@ -Adding ``max_num_fields`` to ``cgi.FieldStorage`` to make DOS attacks harder by -limiting the number of ``MiniFieldStorage`` objects created by ``FieldStorage``. diff --git a/Misc/NEWS.d/next/Library/2018-10-04-15-53-14.bpo-28441.2sQENe.rst b/Misc/NEWS.d/next/Library/2018-10-04-15-53-14.bpo-28441.2sQENe.rst deleted file mode 100644 index 45143c2a54ac..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-04-15-53-14.bpo-28441.2sQENe.rst +++ /dev/null @@ -1,3 +0,0 @@ -On Cygwin and MinGW, ensure that ``sys.executable`` always includes the full -filename in the path, including the ``.exe`` suffix (unless it is a symbolic -link). diff --git a/Misc/NEWS.d/next/Library/2018-10-04-17-23-43.bpo-34898.Wo2PoJ.rst b/Misc/NEWS.d/next/Library/2018-10-04-17-23-43.bpo-34898.Wo2PoJ.rst deleted file mode 100644 index 4c0a061daf9f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-04-17-23-43.bpo-34898.Wo2PoJ.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add `mtime` argument to `gzip.compress` for reproducible output. -Patch by Guo Ci Teo. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2018-10-04-18-46-54.bpo-34871.t3X-dB.rst b/Misc/NEWS.d/next/Library/2018-10-04-18-46-54.bpo-34871.t3X-dB.rst deleted file mode 100644 index 8cff15671ce5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-04-18-46-54.bpo-34871.t3X-dB.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix inspect module polluted ``sys.modules`` when parsing -``__text_signature__`` of callable. diff --git a/Misc/NEWS.d/next/Library/2018-10-04-20-25-35.bpo-34897.rNE2Cy.rst b/Misc/NEWS.d/next/Library/2018-10-04-20-25-35.bpo-34897.rNE2Cy.rst deleted file mode 100644 index f25349659ca5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-04-20-25-35.bpo-34897.rNE2Cy.rst +++ /dev/null @@ -1,2 +0,0 @@ -Adjust test.support.missing_compiler_executable check so that a nominal -command name of "" is ignored. Patch by Michael Felt. diff --git a/Misc/NEWS.d/next/Library/2018-10-04-20-44-45.bpo-34844.Hnuxav.rst b/Misc/NEWS.d/next/Library/2018-10-04-20-44-45.bpo-34844.Hnuxav.rst deleted file mode 100644 index 464dcb1e4ceb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-04-20-44-45.bpo-34844.Hnuxav.rst +++ /dev/null @@ -1,6 +0,0 @@ -logging.Formatter enhancement - Ensure styles and fmt matches in -logging.Formatter - Added validate method in each format style class: -StrFormatStyle, PercentStyle, StringTemplateStyle. - This method is called -in the constructor of logging.Formatter class - Also re-raise the KeyError -in the format method of each style class, so it would a bit clear that it's -an error with the invalid format fields. diff --git a/Misc/NEWS.d/next/Library/2018-10-05-05-55-53.bpo-34900.8RNiFu.rst b/Misc/NEWS.d/next/Library/2018-10-05-05-55-53.bpo-34900.8RNiFu.rst deleted file mode 100644 index 20e3a0e2d5a1..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-05-05-55-53.bpo-34900.8RNiFu.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed :meth:`unittest.TestCase.debug` when used to call test methods with -subtests. Patch by Bruno Oliveira. diff --git a/Misc/NEWS.d/next/Library/2018-10-07-20-37-02.bpo-34925.KlkZ-Y.rst b/Misc/NEWS.d/next/Library/2018-10-07-20-37-02.bpo-34925.KlkZ-Y.rst deleted file mode 100644 index b7853684a959..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-07-20-37-02.bpo-34925.KlkZ-Y.rst +++ /dev/null @@ -1 +0,0 @@ -25% speedup in argument parsing for the functions in the bisect module. diff --git a/Misc/NEWS.d/next/Library/2018-10-07-21-18-52.bpo-34922.37IdsA.rst b/Misc/NEWS.d/next/Library/2018-10-07-21-18-52.bpo-34922.37IdsA.rst deleted file mode 100644 index 646388688399..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-07-21-18-52.bpo-34922.37IdsA.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed integer overflow in the :meth:`~hashlib.shake.digest()` and -:meth:`~hashlib.shake.hexdigest()` methods for the SHAKE algorithm -in the :mod:`hashlib` module. diff --git a/Misc/NEWS.d/next/Library/2018-10-08-15-22-02.bpo-34911.hCy0Fv.rst b/Misc/NEWS.d/next/Library/2018-10-08-15-22-02.bpo-34911.hCy0Fv.rst deleted file mode 100644 index d3509475306b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-08-15-22-02.bpo-34911.hCy0Fv.rst +++ /dev/null @@ -1,3 +0,0 @@ -Added *secure_protocols* argument to *http.cookiejar.DefaultCookiePolicy* to -allow for tweaking of protocols and also to add support by default for -*wss*, the secure websocket protocol. diff --git a/Misc/NEWS.d/next/Library/2018-10-08-16-04-36.bpo-34829.B7v7D0.rst b/Misc/NEWS.d/next/Library/2018-10-08-16-04-36.bpo-34829.B7v7D0.rst deleted file mode 100644 index e74b56b83611..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-08-16-04-36.bpo-34829.B7v7D0.rst +++ /dev/null @@ -1,3 +0,0 @@ -Add methods ``selection_from``, ``selection_range``, ``selection_present`` -and ``selection_to`` to the ``tkinter.Spinbox`` for consistency with the -``tkinter.Entry`` widget. Patch by Juliette Monsel. diff --git a/Misc/NEWS.d/next/Library/2018-10-08-21-05-11.bpo-34936.3tRqdq.rst b/Misc/NEWS.d/next/Library/2018-10-08-21-05-11.bpo-34936.3tRqdq.rst deleted file mode 100644 index 7c1f7bb59760..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-08-21-05-11.bpo-34936.3tRqdq.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``TclError`` in ``tkinter.Spinbox.selection_element()``. Patch by -Juliette Monsel. diff --git a/Misc/NEWS.d/next/Library/2018-10-09-11-01-16.bpo-34769.cSkkZt.rst b/Misc/NEWS.d/next/Library/2018-10-09-11-01-16.bpo-34769.cSkkZt.rst deleted file mode 100644 index fc034c962ea2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-09-11-01-16.bpo-34769.cSkkZt.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix for async generators not finalizing when event loop is in debug mode and -garbage collector runs in another thread. diff --git a/Misc/NEWS.d/next/Library/2018-10-09-14-25-36.bpo-32680.z2FbOp.rst b/Misc/NEWS.d/next/Library/2018-10-09-14-25-36.bpo-32680.z2FbOp.rst deleted file mode 100644 index afe16b627c8f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-09-14-25-36.bpo-32680.z2FbOp.rst +++ /dev/null @@ -1 +0,0 @@ -:class:`smtplib.SMTP` objects now always have a `sock` attribute present diff --git a/Misc/NEWS.d/next/Library/2018-10-09-14-42-16.bpo-34941.1Q5QKv.rst b/Misc/NEWS.d/next/Library/2018-10-09-14-42-16.bpo-34941.1Q5QKv.rst deleted file mode 100644 index 402372489bef..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-09-14-42-16.bpo-34941.1Q5QKv.rst +++ /dev/null @@ -1,3 +0,0 @@ -Methods ``find()``, ``findtext()`` and ``findall()`` of the ``Element`` -class in the :mod:`xml.etree.ElementTree` module are now able to find -children which are instances of ``Element`` subclasses. diff --git a/Misc/NEWS.d/next/Library/2018-10-09-15-44-04.bpo-23831.2CL7lL.rst b/Misc/NEWS.d/next/Library/2018-10-09-15-44-04.bpo-23831.2CL7lL.rst deleted file mode 100644 index de12407b4ffe..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-09-15-44-04.bpo-23831.2CL7lL.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add ``moveto()`` method to the ``tkinter.Canvas`` widget. Patch by Juliette -Monsel. diff --git a/Misc/NEWS.d/next/Library/2018-10-10-00-22-57.bpo-34926.CA0rqd.rst b/Misc/NEWS.d/next/Library/2018-10-10-00-22-57.bpo-34926.CA0rqd.rst deleted file mode 100644 index 5b009cb87747..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-10-00-22-57.bpo-34926.CA0rqd.rst +++ /dev/null @@ -1,2 +0,0 @@ -:meth:`mimetypes.MimeTypes.guess_type` now accepts :term:`path-like object` in addition to url strings. -Patch by Mayank Asthana. diff --git a/Misc/NEWS.d/next/Library/2018-10-12-18-57-52.bpo-34966.WZeBHO.rst b/Misc/NEWS.d/next/Library/2018-10-12-18-57-52.bpo-34966.WZeBHO.rst deleted file mode 100644 index b861405297f4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-12-18-57-52.bpo-34966.WZeBHO.rst +++ /dev/null @@ -1,3 +0,0 @@ -:mod:`pydoc` now supports aliases not only to methods defined in -the end class, but also to inherited methods. The docstring is not -duplicated for aliases. diff --git a/Misc/NEWS.d/next/Library/2018-10-12-20-30-42.bpo-16965.xo5LAr.rst b/Misc/NEWS.d/next/Library/2018-10-12-20-30-42.bpo-16965.xo5LAr.rst deleted file mode 100644 index 8e9d2f9482d2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-12-20-30-42.bpo-16965.xo5LAr.rst +++ /dev/null @@ -1,2 +0,0 @@ -The :term:`2to3` :2to3fixer:`execfile` fixer now opens the file with mode -``'rb'``. Patch by Zackery Spytz. diff --git a/Misc/NEWS.d/next/Library/2018-10-13-07-46-50.bpo-34969.Mfnhjb.rst b/Misc/NEWS.d/next/Library/2018-10-13-07-46-50.bpo-34969.Mfnhjb.rst deleted file mode 100644 index e3b713261406..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-13-07-46-50.bpo-34969.Mfnhjb.rst +++ /dev/null @@ -1,3 +0,0 @@ -gzip: Add --fast, --best on the gzip CLI, these parameters will be used for the -fast compression method (quick) or the best method compress (slower, but smaller -file). Also, change the default compression level to 6 (tradeoff). diff --git a/Misc/NEWS.d/next/Library/2018-10-13-11-14-13.bpo-34970.SrJTY7.rst b/Misc/NEWS.d/next/Library/2018-10-13-11-14-13.bpo-34970.SrJTY7.rst deleted file mode 100644 index a58b3dd35419..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-13-11-14-13.bpo-34970.SrJTY7.rst +++ /dev/null @@ -1 +0,0 @@ -Protect tasks weak set manipulation in ``asyncio.all_tasks()`` diff --git a/Misc/NEWS.d/next/Library/2018-10-13-18-16-20.bpo-31522.rWBb43.rst b/Misc/NEWS.d/next/Library/2018-10-13-18-16-20.bpo-31522.rWBb43.rst deleted file mode 100644 index 5aea7173fc6d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-13-18-16-20.bpo-31522.rWBb43.rst +++ /dev/null @@ -1 +0,0 @@ -The `mailbox.mbox.get_string` function *from_* parameter can now successfully be set to a non-default value. diff --git a/Misc/NEWS.d/next/Library/2018-10-13-19-15-23.bpo-34521.YPaiTK.rst b/Misc/NEWS.d/next/Library/2018-10-13-19-15-23.bpo-34521.YPaiTK.rst deleted file mode 100644 index 4f4a7f74864f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-13-19-15-23.bpo-34521.YPaiTK.rst +++ /dev/null @@ -1,3 +0,0 @@ -Use :func:`socket.CMSG_SPACE` to calculate ancillary data size instead of -:func:`socket.CMSG_LEN` in :func:`multiprocessing.reduction.recvfds` as -:rfc:`3542` requires the use of the former for portable applications. diff --git a/Misc/NEWS.d/next/Library/2018-10-15-23-10-41.bpo-34890.77E770.rst b/Misc/NEWS.d/next/Library/2018-10-15-23-10-41.bpo-34890.77E770.rst deleted file mode 100644 index 58745b289591..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-15-23-10-41.bpo-34890.77E770.rst +++ /dev/null @@ -1,3 +0,0 @@ -Make :func:`inspect.iscoroutinefunction`, -:func:`inspect.isgeneratorfunction` and :func:`inspect.isasyncgenfunction` -work with :func:`functools.partial`. Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Library/2018-10-17-02-15-23.bpo-33947.SRuq3T.rst b/Misc/NEWS.d/next/Library/2018-10-17-02-15-23.bpo-33947.SRuq3T.rst deleted file mode 100644 index bf08bac13cc7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-17-02-15-23.bpo-33947.SRuq3T.rst +++ /dev/null @@ -1 +0,0 @@ -dataclasses now handle recursive reprs without raising RecursionError. diff --git a/Misc/NEWS.d/next/Library/2018-10-17-11-00-00.bpo-23420.Lq74Uu.rst b/Misc/NEWS.d/next/Library/2018-10-17-11-00-00.bpo-23420.Lq74Uu.rst deleted file mode 100644 index 034e7e53970a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-17-11-00-00.bpo-23420.Lq74Uu.rst +++ /dev/null @@ -1,2 +0,0 @@ -Verify the value for the parameter '-s' of the cProfile CLI. Patch by Robert -Kuska diff --git a/Misc/NEWS.d/next/Library/2018-10-17-11-54-04.bpo-35008.dotef_.rst b/Misc/NEWS.d/next/Library/2018-10-17-11-54-04.bpo-35008.dotef_.rst deleted file mode 100644 index 3d12a918fc73..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-17-11-54-04.bpo-35008.dotef_.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed references leaks when call the ``__setstate__()`` method of -:class:`xml.etree.ElementTree.Element` in the C implementation for already -initialized element. diff --git a/Misc/NEWS.d/next/Library/2018-10-18-17-57-28.bpo-35022.KeEF4T.rst b/Misc/NEWS.d/next/Library/2018-10-18-17-57-28.bpo-35022.KeEF4T.rst deleted file mode 100644 index 426be70ceacf..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-18-17-57-28.bpo-35022.KeEF4T.rst +++ /dev/null @@ -1,2 +0,0 @@ -:class:`unittest.mock.MagicMock` now supports the ``__fspath__`` method -(from :class:`os.PathLike`). diff --git a/Misc/NEWS.d/next/Library/2018-10-20-00-29-43.bpo-34909.Ew_8DC.rst b/Misc/NEWS.d/next/Library/2018-10-20-00-29-43.bpo-34909.Ew_8DC.rst deleted file mode 100644 index b71b69ad8522..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-20-00-29-43.bpo-34909.Ew_8DC.rst +++ /dev/null @@ -1,2 +0,0 @@ -Enum: fix grandchildren subclassing when parent mixed with concrete data -types. diff --git a/Misc/NEWS.d/next/Library/2018-10-21-14-53-19.bpo-34794.yt3R4-.rst b/Misc/NEWS.d/next/Library/2018-10-21-14-53-19.bpo-34794.yt3R4-.rst deleted file mode 100644 index 770807fc7653..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-21-14-53-19.bpo-34794.yt3R4-.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed a leak in Tkinter when pass the Python wrapper around Tcl_Obj back to -Tcl/Tk. diff --git a/Misc/NEWS.d/next/Library/2018-10-23-14-46-47.bpo-31553.JxRkAW.rst b/Misc/NEWS.d/next/Library/2018-10-23-14-46-47.bpo-31553.JxRkAW.rst deleted file mode 100644 index de80e7cd7d11..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-23-14-46-47.bpo-31553.JxRkAW.rst +++ /dev/null @@ -1 +0,0 @@ -Add the --json-lines option to json.tool. Patch by hongweipeng. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2018-10-23-18-58-12.bpo-35053.G82qwh.rst b/Misc/NEWS.d/next/Library/2018-10-23-18-58-12.bpo-35053.G82qwh.rst deleted file mode 100644 index d96ac119aa82..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-23-18-58-12.bpo-35053.G82qwh.rst +++ /dev/null @@ -1,3 +0,0 @@ -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). diff --git a/Misc/NEWS.d/next/Library/2018-10-25-09-37-03.bpo-31047.kBbX8r.rst b/Misc/NEWS.d/next/Library/2018-10-25-09-37-03.bpo-31047.kBbX8r.rst deleted file mode 100644 index 1e47bf4174e7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-25-09-37-03.bpo-31047.kBbX8r.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``ntpath.abspath`` regression where it didn't remove a trailing -separator on Windows. Patch by Tim Graham. diff --git a/Misc/NEWS.d/next/Library/2018-10-25-09-59-00.bpo-35047.abbaa.rst b/Misc/NEWS.d/next/Library/2018-10-25-09-59-00.bpo-35047.abbaa.rst deleted file mode 100644 index 12eda27527d8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-25-09-59-00.bpo-35047.abbaa.rst +++ /dev/null @@ -1,3 +0,0 @@ -``unittest.mock`` now includes mock calls in exception messages if -``assert_not_called``, ``assert_called_once``, or ``assert_called_once_with`` -fails. Patch by Petter Strandmark. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2018-10-25-15-43-32.bpo-35024.ltSrtr.rst b/Misc/NEWS.d/next/Library/2018-10-25-15-43-32.bpo-35024.ltSrtr.rst deleted file mode 100644 index ef156435d3f7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-25-15-43-32.bpo-35024.ltSrtr.rst +++ /dev/null @@ -1,3 +0,0 @@ -`importlib` no longer logs `wrote ` redundantly after -`(created|could not create) ` is already logged. -Patch by Quentin Agren. diff --git a/Misc/NEWS.d/next/Library/2018-10-26-00-11-21.bpo-35017.6Ez4Cv.rst b/Misc/NEWS.d/next/Library/2018-10-26-00-11-21.bpo-35017.6Ez4Cv.rst deleted file mode 100644 index 5682717adf70..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-26-00-11-21.bpo-35017.6Ez4Cv.rst +++ /dev/null @@ -1,3 +0,0 @@ -:meth:`socketserver.BaseServer.serve_forever` now exits immediately if it's -:meth:`~socketserver.BaseServer.shutdown` method is called while it is -polling for new events. diff --git a/Misc/NEWS.d/next/Library/2018-10-26-21-12-55.bpo-33710.Q5oXc6.rst b/Misc/NEWS.d/next/Library/2018-10-26-21-12-55.bpo-33710.Q5oXc6.rst deleted file mode 100644 index 25f0f8758083..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-26-21-12-55.bpo-33710.Q5oXc6.rst +++ /dev/null @@ -1,4 +0,0 @@ -Deprecated ``l*gettext()`` functions and methods in the :mod:`gettext` -module. They return encoded bytes instead of Unicode strings and are -artifacts from Python 2 times. Also deprecated functions and methods related -to setting the charset for ``l*gettext()`` functions and methods. diff --git a/Misc/NEWS.d/next/Library/2018-10-26-22-53-16.bpo-35079.Tm5jvF.rst b/Misc/NEWS.d/next/Library/2018-10-26-22-53-16.bpo-35079.Tm5jvF.rst deleted file mode 100644 index 991bae38ec72..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-26-22-53-16.bpo-35079.Tm5jvF.rst +++ /dev/null @@ -1,2 +0,0 @@ -Improve difflib.SequenceManager.get_matching_blocks doc by adding -'non-overlapping' and changing '!=' to '<'. diff --git a/Misc/NEWS.d/next/Library/2018-10-27-21-11-42.bpo-34160.UzyPZf.rst b/Misc/NEWS.d/next/Library/2018-10-27-21-11-42.bpo-34160.UzyPZf.rst deleted file mode 100644 index 775d33aacda7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-27-21-11-42.bpo-34160.UzyPZf.rst +++ /dev/null @@ -1 +0,0 @@ -ElementTree and minidom now preserve the attribute order specified by the user. diff --git a/Misc/NEWS.d/next/Library/2018-10-29-10-18-31.bpo-35065.CulMN8.rst b/Misc/NEWS.d/next/Library/2018-10-29-10-18-31.bpo-35065.CulMN8.rst deleted file mode 100644 index 9d5d61263f8c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-29-10-18-31.bpo-35065.CulMN8.rst +++ /dev/null @@ -1,3 +0,0 @@ -Remove `StreamReaderProtocol._untrack_reader`. The call to `_untrack_reader` -is currently performed too soon, causing the protocol to forget about the -reader before `connection_lost` can run and feed the EOF to the reader. diff --git a/Misc/NEWS.d/next/Library/2018-10-29-23-09-24.bpo-35062.dQS1ng.rst b/Misc/NEWS.d/next/Library/2018-10-29-23-09-24.bpo-35062.dQS1ng.rst deleted file mode 100644 index b77ed8685bfc..000000000000 --- a/Misc/NEWS.d/next/Library/2018-10-29-23-09-24.bpo-35062.dQS1ng.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix incorrect parsing of :class:`_io.IncrementalNewlineDecoder`'s -*translate* argument. diff --git a/Misc/NEWS.d/next/Library/2018-11-03-10-12-04.bpo-35152.xpqskp.rst b/Misc/NEWS.d/next/Library/2018-11-03-10-12-04.bpo-35152.xpqskp.rst deleted file mode 100644 index 7cc9ed39007e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-03-10-12-04.bpo-35152.xpqskp.rst +++ /dev/null @@ -1 +0,0 @@ -Allow sending more than 2 GB at once on a multiprocessing connection on non-Windows systems. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2018-11-08-14-22-29.bpo-35186.5m22Mj.rst b/Misc/NEWS.d/next/Library/2018-11-08-14-22-29.bpo-35186.5m22Mj.rst deleted file mode 100644 index 2e8cff982907..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-08-14-22-29.bpo-35186.5m22Mj.rst +++ /dev/null @@ -1,2 +0,0 @@ -Removed the "built with" comment added when ``setup.py upload`` is used with -either ``bdist_rpm`` or ``bdist_dumb``. diff --git a/Misc/NEWS.d/next/Library/2018-11-09-01-18-51.bpo-30064.IF5mH6.rst b/Misc/NEWS.d/next/Library/2018-11-09-01-18-51.bpo-30064.IF5mH6.rst deleted file mode 100644 index 67dfa7b9c936..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-09-01-18-51.bpo-30064.IF5mH6.rst +++ /dev/null @@ -1,2 +0,0 @@ -Use add_done_callback() in sock_* asyncio API to unsubscribe reader/writer -early on calcellation. diff --git a/Misc/NEWS.d/next/Library/2018-11-09-13-35-36.bpo-35189.gog-sl.rst b/Misc/NEWS.d/next/Library/2018-11-09-13-35-36.bpo-35189.gog-sl.rst deleted file mode 100644 index 3408ca4eec44..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-09-13-35-36.bpo-35189.gog-sl.rst +++ /dev/null @@ -1,2 +0,0 @@ -Modify the following fnctl function to retry if interrupted by a signal -(EINTR): flock, lockf, fnctl diff --git a/Misc/NEWS.d/next/Library/2018-11-12-17-40-04.bpo-29564.SFNBT5.rst b/Misc/NEWS.d/next/Library/2018-11-12-17-40-04.bpo-29564.SFNBT5.rst deleted file mode 100644 index 7ef3adeb73b9..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-12-17-40-04.bpo-29564.SFNBT5.rst +++ /dev/null @@ -1,3 +0,0 @@ -The warnings module now suggests to enable tracemalloc if the source is -specified, the tracemalloc module is available, but tracemalloc is not -tracing memory allocations. diff --git a/Misc/NEWS.d/next/Library/2018-11-15-07-14-32.bpo-35226.wJPEEe.rst b/Misc/NEWS.d/next/Library/2018-11-15-07-14-32.bpo-35226.wJPEEe.rst deleted file mode 100644 index b95cc979573e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-15-07-14-32.bpo-35226.wJPEEe.rst +++ /dev/null @@ -1,3 +0,0 @@ -Recursively check arguments when testing for equality of -:class:`unittest.mock.call` objects and add note that tracking of parameters -used to create ancestors of mocks in ``mock_calls`` is not possible. diff --git a/Misc/NEWS.d/next/Library/2018-11-18-18-44-40.bpo-24209.p3YWOf.rst b/Misc/NEWS.d/next/Library/2018-11-18-18-44-40.bpo-24209.p3YWOf.rst deleted file mode 100644 index 88749e920c2c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-18-18-44-40.bpo-24209.p3YWOf.rst +++ /dev/null @@ -1 +0,0 @@ -Adds IPv6 support when invoking http.server directly. diff --git a/Misc/NEWS.d/next/Library/2018-11-19-07-22-04.bpo-35277.dsD-2E.rst b/Misc/NEWS.d/next/Library/2018-11-19-07-22-04.bpo-35277.dsD-2E.rst deleted file mode 100644 index ff76988e33e7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-19-07-22-04.bpo-35277.dsD-2E.rst +++ /dev/null @@ -1 +0,0 @@ -Update ensurepip to install pip 18.1 and setuptools 40.6.2. diff --git a/Misc/NEWS.d/next/Library/2018-11-20-13-34-01.bpo-28604.iiih5h.rst b/Misc/NEWS.d/next/Library/2018-11-20-13-34-01.bpo-28604.iiih5h.rst deleted file mode 100644 index 289e484c35d6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-20-13-34-01.bpo-28604.iiih5h.rst +++ /dev/null @@ -1,3 +0,0 @@ -:func:`locale.localeconv` now sets temporarily the ``LC_CTYPE`` locale to the -``LC_MONETARY`` locale if the two locales are different and monetary strings -are non-ASCII. This temporary change affects other threads. diff --git a/Misc/NEWS.d/next/Library/2018-11-22-15-22-56.bpo-24746.eSLKBE.rst b/Misc/NEWS.d/next/Library/2018-11-22-15-22-56.bpo-24746.eSLKBE.rst deleted file mode 100644 index c592516d1466..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-22-15-22-56.bpo-24746.eSLKBE.rst +++ /dev/null @@ -1,2 +0,0 @@ -Avoid stripping trailing whitespace in doctest fancy diff. Orignial patch by -R. David Murray & Jairo Trad. Enhanced by Sanyam Khurana. diff --git a/Misc/NEWS.d/next/Library/2018-11-24-10-33-42.bpo-35308.9--2iy.rst b/Misc/NEWS.d/next/Library/2018-11-24-10-33-42.bpo-35308.9--2iy.rst deleted file mode 100644 index a33fe2e4812b..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-24-10-33-42.bpo-35308.9--2iy.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix regression in ``webbrowser`` where default browsers may be preferred -over browsers in the ``BROWSER`` environment variable. diff --git a/Misc/NEWS.d/next/Library/2018-11-25-20-05-33.bpo-35312.wbw0zO.rst b/Misc/NEWS.d/next/Library/2018-11-25-20-05-33.bpo-35312.wbw0zO.rst deleted file mode 100644 index c195468b9e27..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-25-20-05-33.bpo-35312.wbw0zO.rst +++ /dev/null @@ -1 +0,0 @@ -Make ``lib2to3.pgen2.parse.ParseError`` round-trip pickle-able. Patch by Anthony Sottile. diff --git a/Misc/NEWS.d/next/Library/2018-11-29-00-23-25.bpo-35344.4QOPJQ.rst b/Misc/NEWS.d/next/Library/2018-11-29-00-23-25.bpo-35344.4QOPJQ.rst deleted file mode 100644 index a999cbe2a72e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-29-00-23-25.bpo-35344.4QOPJQ.rst +++ /dev/null @@ -1,3 +0,0 @@ -On macOS, :func:`platform.platform` now uses :func:`platform.mac_ver`, if it -returns a non-empty release string, to get the macOS version rather than the -darwin version. diff --git a/Misc/NEWS.d/next/Library/2018-11-29-00-55-33.bpo-35345.vepCSJ.rst b/Misc/NEWS.d/next/Library/2018-11-29-00-55-33.bpo-35345.vepCSJ.rst deleted file mode 100644 index e4d3b52c9ef5..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-29-00-55-33.bpo-35345.vepCSJ.rst +++ /dev/null @@ -1,2 +0,0 @@ -The function `platform.popen` has been removed, it was deprecated since Python -3.3: use :func:`os.popen` instead. diff --git a/Misc/NEWS.d/next/Library/2018-11-29-09-38-40.bpo-35066.Nwej2s.rst b/Misc/NEWS.d/next/Library/2018-11-29-09-38-40.bpo-35066.Nwej2s.rst deleted file mode 100644 index b0c39bd86383..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-29-09-38-40.bpo-35066.Nwej2s.rst +++ /dev/null @@ -1,5 +0,0 @@ -Previously, calling the strftime() method on a datetime object with a -trailing '%' in the format string would result in an exception. However, -this only occured when the datetime C module was being used; the python -implementation did not match this behavior. Datetime is now PEP-399 -compliant, and will not throw an exception on a trailing '%'. diff --git a/Misc/NEWS.d/next/Library/2018-11-29-12-42-13.bpo-35346.OmTY5c.rst b/Misc/NEWS.d/next/Library/2018-11-29-12-42-13.bpo-35346.OmTY5c.rst deleted file mode 100644 index f6d28feab78c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-11-29-12-42-13.bpo-35346.OmTY5c.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`platform.uname` now redirects ``stderr`` to :data:`os.devnull` when -running external programs like ``cmd /c ver``. diff --git a/Misc/NEWS.d/next/Library/2018-12-01-13-44-12.bpo-35371.fTAwlX.rst b/Misc/NEWS.d/next/Library/2018-12-01-13-44-12.bpo-35371.fTAwlX.rst deleted file mode 100644 index f40d13939311..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-01-13-44-12.bpo-35371.fTAwlX.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed possible crash in ``os.utime()`` on Windows when pass incorrect -arguments. diff --git a/Misc/NEWS.d/next/Library/2018-12-02-13-50-52.bpo-35341.32E8T_.rst b/Misc/NEWS.d/next/Library/2018-12-02-13-50-52.bpo-35341.32E8T_.rst deleted file mode 100644 index 43aa9956c1f7..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-02-13-50-52.bpo-35341.32E8T_.rst +++ /dev/null @@ -1 +0,0 @@ -Add generic version of ``collections.OrderedDict`` to the ``typing`` module. Patch by Ismo Toijala. diff --git a/Misc/NEWS.d/next/Library/2018-12-03-14-41-11.bpo-35380.SdRF9l.rst b/Misc/NEWS.d/next/Library/2018-12-03-14-41-11.bpo-35380.SdRF9l.rst deleted file mode 100644 index 91f86e604ea8..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-03-14-41-11.bpo-35380.SdRF9l.rst +++ /dev/null @@ -1 +0,0 @@ -Enable TCP_NODELAY on Windows for proactor asyncio event loop. diff --git a/Misc/NEWS.d/next/Library/2018-12-03-19-45-00.bpo-35310.9k28gR.rst b/Misc/NEWS.d/next/Library/2018-12-03-19-45-00.bpo-35310.9k28gR.rst deleted file mode 100644 index 1ab2e168c86a..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-03-19-45-00.bpo-35310.9k28gR.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix a bug in :func:`select.select` where, in some cases, the file descriptor -sequences were returned unmodified after a signal interruption, even though the -file descriptors might not be ready yet. :func:`select.select` will now always -return empty lists if a timeout has occurred. Patch by Oran Avraham. diff --git a/Misc/NEWS.d/next/Library/2018-12-04-12-17-08.bpo-35394.fuTVDk.rst b/Misc/NEWS.d/next/Library/2018-12-04-12-17-08.bpo-35394.fuTVDk.rst deleted file mode 100644 index ab630c0f67fc..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-04-12-17-08.bpo-35394.fuTVDk.rst +++ /dev/null @@ -1 +0,0 @@ -Add empty slots to asyncio abstract protocols. diff --git a/Misc/NEWS.d/next/Library/2018-12-04-12-46-05.bpo-35389.CTZ9iA.rst b/Misc/NEWS.d/next/Library/2018-12-04-12-46-05.bpo-35389.CTZ9iA.rst deleted file mode 100644 index 8e2f9dd21cc0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-04-12-46-05.bpo-35389.CTZ9iA.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`platform.libc_ver` now uses ``os.confstr('CS_GNU_LIBC_VERSION')`` if -available and the *executable* parameter is not set. diff --git a/Misc/NEWS.d/next/Library/2018-12-05-13-37-39.bpo-10496.VH-1Lp.rst b/Misc/NEWS.d/next/Library/2018-12-05-13-37-39.bpo-10496.VH-1Lp.rst deleted file mode 100644 index 232fcc6503b0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-05-13-37-39.bpo-10496.VH-1Lp.rst +++ /dev/null @@ -1,5 +0,0 @@ -:func:`posixpath.expanduser` now returns the input *path* unchanged if the -``HOME`` environment variable is not set and the current user has no home -directory (if the current user identifier doesn't exist in the password -database). This change fix the :mod:`site` module if the current user doesn't -exist in the password database (if the user has no home directory). diff --git a/Misc/NEWS.d/next/Library/2018-12-05-17-42-49.bpo-10496.laV_IE.rst b/Misc/NEWS.d/next/Library/2018-12-05-17-42-49.bpo-10496.laV_IE.rst deleted file mode 100644 index cbfe5eb11668..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-05-17-42-49.bpo-10496.laV_IE.rst +++ /dev/null @@ -1,3 +0,0 @@ -:func:`~distutils.utils.check_environ` of :mod:`distutils.utils` now catchs -:exc:`KeyError` on calling :func:`pwd.getpwuid`: don't create the ``HOME`` -environment variable in this case. diff --git a/Misc/NEWS.d/next/Library/2018-12-05-22-52-21.bpo-35346.Okm9-S.rst b/Misc/NEWS.d/next/Library/2018-12-05-22-52-21.bpo-35346.Okm9-S.rst deleted file mode 100644 index 047a1c82b8f2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-05-22-52-21.bpo-35346.Okm9-S.rst +++ /dev/null @@ -1,2 +0,0 @@ -Drop Mac OS 9 and Rhapsody support from the :mod:`platform` module. Rhapsody -last release was in 2000. Mac OS 9 last release was in 2001. diff --git a/Misc/NEWS.d/next/Library/2018-12-06-00-43-13.bpo-35330.abB4BN.rst b/Misc/NEWS.d/next/Library/2018-12-06-00-43-13.bpo-35330.abB4BN.rst deleted file mode 100644 index 24d0ab84fb16..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-06-00-43-13.bpo-35330.abB4BN.rst +++ /dev/null @@ -1,4 +0,0 @@ -When a :class:`Mock` instance was used to wrap an object, if `side_effect` -is used in one of the mocks of it methods, don't call the original -implementation and return the result of using the side effect the same way -that it is done with return_value. diff --git a/Misc/NEWS.d/next/Library/2018-12-06-02-02-28.bpo-35424.gXxOJU.rst b/Misc/NEWS.d/next/Library/2018-12-06-02-02-28.bpo-35424.gXxOJU.rst deleted file mode 100644 index db4a336ee17c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-06-02-02-28.bpo-35424.gXxOJU.rst +++ /dev/null @@ -1,2 +0,0 @@ -:class:`multiprocessing.Pool` destructor now emits :exc:`ResourceWarning` -if the pool is still running. diff --git a/Misc/NEWS.d/next/Library/2018-12-06-14-44-21.bpo-35415.-HoK3d.rst b/Misc/NEWS.d/next/Library/2018-12-06-14-44-21.bpo-35415.-HoK3d.rst deleted file mode 100644 index ab053df4f74c..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-06-14-44-21.bpo-35415.-HoK3d.rst +++ /dev/null @@ -1 +0,0 @@ -Validate fileno= argument to socket.socket(). diff --git a/Misc/NEWS.d/next/Library/2018-12-09-14-35-49.bpo-35445.LjvtsC.rst b/Misc/NEWS.d/next/Library/2018-12-09-14-35-49.bpo-35445.LjvtsC.rst deleted file mode 100644 index c0ba2b10e1eb..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-09-14-35-49.bpo-35445.LjvtsC.rst +++ /dev/null @@ -1 +0,0 @@ -Memory errors during creating posix.environ no longer ignored. diff --git a/Misc/NEWS.d/next/Library/2018-12-09-17-04-15.bpo-17185.SfSCJF.rst b/Misc/NEWS.d/next/Library/2018-12-09-17-04-15.bpo-17185.SfSCJF.rst deleted file mode 100644 index 311c6d2b0e4e..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-09-17-04-15.bpo-17185.SfSCJF.rst +++ /dev/null @@ -1,2 +0,0 @@ -Set ``__signature__`` on mock for :mod:`inspect` to get signature. -Patch by Karthikeyan Singaravelan. diff --git a/Misc/NEWS.d/next/Library/2018-12-09-21-35-49.bpo-20239.V4mWBL.rst b/Misc/NEWS.d/next/Library/2018-12-09-21-35-49.bpo-20239.V4mWBL.rst deleted file mode 100644 index fe9c69d234cf..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-09-21-35-49.bpo-20239.V4mWBL.rst +++ /dev/null @@ -1,2 +0,0 @@ -Allow repeated assignment deletion of :class:`unittest.mock.Mock` attributes. -Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Library/2018-12-10-09-48-27.bpo-35052.xE1ymg.rst b/Misc/NEWS.d/next/Library/2018-12-10-09-48-27.bpo-35052.xE1ymg.rst deleted file mode 100644 index 4877188a2944..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-10-09-48-27.bpo-35052.xE1ymg.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix xml.dom.minidom cloneNode() on a document with an entity: pass the -correct arguments to the user data handler of an entity. diff --git a/Misc/NEWS.d/next/Library/2018-12-12-16-24-55.bpo-23057.OB4Z1Y.rst b/Misc/NEWS.d/next/Library/2018-12-12-16-24-55.bpo-23057.OB4Z1Y.rst deleted file mode 100644 index 51b727db3042..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-12-16-24-55.bpo-23057.OB4Z1Y.rst +++ /dev/null @@ -1 +0,0 @@ -Unblock Proactor event loop when keyboard interrupt is received on Windows diff --git a/Misc/NEWS.d/next/Library/2018-12-12-16-25-21.bpo-35471.SK8jFC.rst b/Misc/NEWS.d/next/Library/2018-12-12-16-25-21.bpo-35471.SK8jFC.rst deleted file mode 100644 index fb4b9ff5b7d3..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-12-16-25-21.bpo-35471.SK8jFC.rst +++ /dev/null @@ -1,2 +0,0 @@ -Python 2.4 dropped MacOS 9 support. The macpath module was deprecated in -Python 3.7. The module is now removed. diff --git a/Misc/NEWS.d/next/Library/2018-12-12-22-52-34.bpo-31446.l--Fjz.rst b/Misc/NEWS.d/next/Library/2018-12-12-22-52-34.bpo-31446.l--Fjz.rst deleted file mode 100644 index 741263f16bb4..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-12-22-52-34.bpo-31446.l--Fjz.rst +++ /dev/null @@ -1,2 +0,0 @@ -Copy command line that was passed to CreateProcessW since this function can -change the content of the input buffer. diff --git a/Misc/NEWS.d/next/Library/2018-12-13-00-10-51.bpo-35477.hHyy06.rst b/Misc/NEWS.d/next/Library/2018-12-13-00-10-51.bpo-35477.hHyy06.rst deleted file mode 100644 index 524df71ed951..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-13-00-10-51.bpo-35477.hHyy06.rst +++ /dev/null @@ -1,2 +0,0 @@ -:meth:`multiprocessing.Pool.__enter__` now fails if the pool is not running: -``with pool:`` fails if used more than once. diff --git a/Misc/NEWS.d/next/Library/2018-12-14-12-12-15.bpo-35491.jHsNOU.rst b/Misc/NEWS.d/next/Library/2018-12-14-12-12-15.bpo-35491.jHsNOU.rst deleted file mode 100644 index 7bb650ad7349..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-14-12-12-15.bpo-35491.jHsNOU.rst +++ /dev/null @@ -1,4 +0,0 @@ -:mod:`multiprocessing`: Add ``Pool.__repr__()`` and enhance -``BaseProcess.__repr__()`` (add pid and parent pid) to ease debugging. Pool -state constant values are now strings instead of integers, for example ``RUN`` -value becomes ``'RUN'`` instead of ``0``. diff --git a/Misc/NEWS.d/next/Library/2018-12-14-13-27-45.bpo-35348.u3Y2an.rst b/Misc/NEWS.d/next/Library/2018-12-14-13-27-45.bpo-35348.u3Y2an.rst deleted file mode 100644 index 190db31cfd68..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-14-13-27-45.bpo-35348.u3Y2an.rst +++ /dev/null @@ -1,3 +0,0 @@ -Make :func:`platform.architecture` parsing of ``file`` command output more -reliable: add the ``-b`` option to the ``file`` command to omit the filename, -force the usage of the C locale, and search also the "shared object" pattern. diff --git a/Misc/NEWS.d/next/Library/2018-12-14-23-56-48.bpo-35502.gLHuFS.rst b/Misc/NEWS.d/next/Library/2018-12-14-23-56-48.bpo-35502.gLHuFS.rst deleted file mode 100644 index 0fcea8d5a41d..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-14-23-56-48.bpo-35502.gLHuFS.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed reference leaks in :class:`xml.etree.ElementTree.TreeBuilder` in case -of unfinished building of the tree (in particular when an error was raised -during parsing XML). diff --git a/Misc/NEWS.d/next/Library/2018-12-16-23-28-49.bpo-35513.pn-Zh3.rst b/Misc/NEWS.d/next/Library/2018-12-16-23-28-49.bpo-35513.pn-Zh3.rst deleted file mode 100644 index f1436a718de2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-16-23-28-49.bpo-35513.pn-Zh3.rst +++ /dev/null @@ -1,4 +0,0 @@ -:class:`~unittest.runner.TextTestRunner` of :mod:`unittest.runner` now uses -:func:`time.perf_counter` rather than :func:`time.time` to measure the -execution time of a test: :func:`time.time` can go backwards, whereas -:func:`time.perf_counter` is monotonic. diff --git a/Misc/NEWS.d/next/Library/2018-12-17-11-43-11.bpo-31784.W0gDjC.rst b/Misc/NEWS.d/next/Library/2018-12-17-11-43-11.bpo-31784.W0gDjC.rst deleted file mode 100644 index 6f0cb8ff4faf..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-17-11-43-11.bpo-31784.W0gDjC.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`uuid.uuid1` now calls :func:`time.time_ns` rather than -``int(time.time() * 1e9)``. diff --git a/Misc/NEWS.d/next/Library/2018-12-18-13-52-13.bpo-35523.SkoMno.rst b/Misc/NEWS.d/next/Library/2018-12-18-13-52-13.bpo-35523.SkoMno.rst deleted file mode 100644 index 94a9fd257383..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-18-13-52-13.bpo-35523.SkoMno.rst +++ /dev/null @@ -1,2 +0,0 @@ -Remove :mod:`ctypes` callback workaround: no longer create a callback at -startup. Avoid SELinux alert on ``import ctypes`` and ``import uuid``. diff --git a/Misc/NEWS.d/next/Library/2018-12-18-21-12-25.bpo-35526.fYvo6H.rst b/Misc/NEWS.d/next/Library/2018-12-18-21-12-25.bpo-35526.fYvo6H.rst deleted file mode 100644 index ea1096393d21..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-18-21-12-25.bpo-35526.fYvo6H.rst +++ /dev/null @@ -1 +0,0 @@ -Delaying the 'joke' of barry_as_FLUFL.mandatory to Python version 4.0 \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2018-12-20-16-24-51.bpo-35537.z4E7aA.rst b/Misc/NEWS.d/next/Library/2018-12-20-16-24-51.bpo-35537.z4E7aA.rst deleted file mode 100644 index b14d7493bc60..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-20-16-24-51.bpo-35537.z4E7aA.rst +++ /dev/null @@ -1,2 +0,0 @@ -The :mod:`subprocess` module can now use the :func:`os.posix_spawn` function in -some cases for better performance. diff --git a/Misc/NEWS.d/next/Library/2018-12-23-22-27-59.bpo-30561.PSRQ2w.rst b/Misc/NEWS.d/next/Library/2018-12-23-22-27-59.bpo-30561.PSRQ2w.rst deleted file mode 100644 index ae99b7cb0ae0..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-23-22-27-59.bpo-30561.PSRQ2w.rst +++ /dev/null @@ -1,4 +0,0 @@ -random.gammavariate(1.0, beta) now computes the same result as -random.expovariate(1.0 / beta). This synchonizes the two algorithms and -eliminates some idiosyncrasies in the old implementation. It does however -produce a difference stream of random variables than it used to. diff --git a/Misc/NEWS.d/next/Library/2018-12-26-02-28-00.bpo-35585.Lkzd3Z.rst b/Misc/NEWS.d/next/Library/2018-12-26-02-28-00.bpo-35585.Lkzd3Z.rst deleted file mode 100644 index 247a4ae6800f..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-26-02-28-00.bpo-35585.Lkzd3Z.rst +++ /dev/null @@ -1 +0,0 @@ -Speed-up building enums by value, e.g. http.HTTPStatus(200). diff --git a/Misc/NEWS.d/next/Library/2018-12-26-10-55-59.bpo-35588.PSR6Ez.rst b/Misc/NEWS.d/next/Library/2018-12-26-10-55-59.bpo-35588.PSR6Ez.rst deleted file mode 100644 index 270f556e76b2..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-26-10-55-59.bpo-35588.PSR6Ez.rst +++ /dev/null @@ -1,2 +0,0 @@ -The floor division and modulo operations and the :func:`divmod` function on :class:`fractions.Fraction` types are 2--4x faster. -Patch by Stefan Behnel. diff --git a/Misc/NEWS.d/next/Library/2018-12-27-19-23-00.bpo-35568.PutiOC.rst b/Misc/NEWS.d/next/Library/2018-12-27-19-23-00.bpo-35568.PutiOC.rst deleted file mode 100644 index d70806404f87..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-27-19-23-00.bpo-35568.PutiOC.rst +++ /dev/null @@ -1 +0,0 @@ -Expose ``raise(signum)`` as `raise_signal` diff --git a/Misc/NEWS.d/next/Library/2018-12-30-01-10-50.bpo-35614.cnkM4f.rst b/Misc/NEWS.d/next/Library/2018-12-30-01-10-50.bpo-35614.cnkM4f.rst deleted file mode 100644 index 4d6beffa2be6..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-30-01-10-50.bpo-35614.cnkM4f.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed help() on metaclasses. Patch by Sanyam Khurana. diff --git a/Misc/NEWS.d/next/Library/2018-12-30-14-56-33.bpo-28503.V4kNN3.rst b/Misc/NEWS.d/next/Library/2018-12-30-14-56-33.bpo-28503.V4kNN3.rst deleted file mode 100644 index 651fef1f0371..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-30-14-56-33.bpo-28503.V4kNN3.rst +++ /dev/null @@ -1,2 +0,0 @@ -The `crypt` module now internally uses the `crypt_r()` library function -instead of `crypt()` when available. diff --git a/Misc/NEWS.d/next/Library/2018-12-30-19-50-36.bpo-35619.ZRXdhy.rst b/Misc/NEWS.d/next/Library/2018-12-30-19-50-36.bpo-35619.ZRXdhy.rst deleted file mode 100644 index fe278e63dd86..000000000000 --- a/Misc/NEWS.d/next/Library/2018-12-30-19-50-36.bpo-35619.ZRXdhy.rst +++ /dev/null @@ -1,2 +0,0 @@ -Improved support of custom data descriptors in :func:`help` and -:mod:`pydoc`. diff --git a/Misc/NEWS.d/next/Library/2019-01-02-20-04-49.bpo-35643.DaMiaV.rst b/Misc/NEWS.d/next/Library/2019-01-02-20-04-49.bpo-35643.DaMiaV.rst deleted file mode 100644 index 0b47bb61fc05..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-02-20-04-49.bpo-35643.DaMiaV.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed a SyntaxWarning: invalid escape sequence in Modules/_sha3/cleanup.py. -Patch by Micka?l Schoentgen. diff --git a/Misc/NEWS.d/next/Library/2019-01-04-22-18-25.bpo-35664.Z-Gyyj.rst b/Misc/NEWS.d/next/Library/2019-01-04-22-18-25.bpo-35664.Z-Gyyj.rst deleted file mode 100644 index f4acc5ae57e7..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-04-22-18-25.bpo-35664.Z-Gyyj.rst +++ /dev/null @@ -1,4 +0,0 @@ -Improve operator.itemgetter() performance by 33% with optimized argument -handling and with adding a fast path for the common case of a single -non-negative integer index into a tuple (which is the typical use case in -the standard library). diff --git a/Misc/NEWS.d/next/Library/2019-01-07-17-17-16.bpo-35283.WClosC.rst b/Misc/NEWS.d/next/Library/2019-01-07-17-17-16.bpo-35283.WClosC.rst deleted file mode 100644 index 711865281b45..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-07-17-17-16.bpo-35283.WClosC.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add a deprecated warning for the :meth:`threading.Thread.isAlive` method. -Patch by Dong-hee Na. diff --git a/Misc/NEWS.d/next/Library/2019-01-08-01-54-02.bpo-35682.KDM9lk.rst b/Misc/NEWS.d/next/Library/2019-01-08-01-54-02.bpo-35682.KDM9lk.rst deleted file mode 100644 index 8152bd707ba5..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-08-01-54-02.bpo-35682.KDM9lk.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``asyncio.ProactorEventLoop.sendfile()``: don't attempt to set the result -of an internal future if it's already done. diff --git a/Misc/NEWS.d/next/Library/2019-01-08-14-00-52.bpo-32710.Sn5Ujj.rst b/Misc/NEWS.d/next/Library/2019-01-08-14-00-52.bpo-32710.Sn5Ujj.rst deleted file mode 100644 index 5c3961c33d96..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-08-14-00-52.bpo-32710.Sn5Ujj.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a memory leak in asyncio in the ProactorEventLoop when ``ReadFile()`` or -``WSASend()`` overlapped operation fail immediately: release the internal -buffer. diff --git a/Misc/NEWS.d/next/Library/2019-01-10-14-03-12.bpo-35702._ct_0H.rst b/Misc/NEWS.d/next/Library/2019-01-10-14-03-12.bpo-35702._ct_0H.rst deleted file mode 100644 index f97f3d4abb71..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-10-14-03-12.bpo-35702._ct_0H.rst +++ /dev/null @@ -1 +0,0 @@ -The :data:`time.CLOCK_UPTIME_RAW` constant is now available for macOS 10.12. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2019-01-10-15-55-10.bpo-32710.KwECPu.rst b/Misc/NEWS.d/next/Library/2019-01-10-15-55-10.bpo-32710.KwECPu.rst deleted file mode 100644 index 9f7a95a0aaff..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-10-15-55-10.bpo-32710.KwECPu.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix memory leaks in asyncio ProactorEventLoop on overlapped operation -failure. diff --git a/Misc/NEWS.d/next/Library/2019-01-11-07-09-25.bpo-35699.VDiENF.rst b/Misc/NEWS.d/next/Library/2019-01-11-07-09-25.bpo-35699.VDiENF.rst deleted file mode 100644 index e632e7bdcffe..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-11-07-09-25.bpo-35699.VDiENF.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed detection of Visual Studio Build Tools 2017 in distutils \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2019-01-11-17-56-15.bpo-35717.6TDTB_.rst b/Misc/NEWS.d/next/Library/2019-01-11-17-56-15.bpo-35717.6TDTB_.rst deleted file mode 100644 index 7cae1d1c82c7..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-11-17-56-15.bpo-35717.6TDTB_.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix KeyError exception raised when using enums and compile. Patch -contributed by R?mi Lapeyre. diff --git a/Misc/NEWS.d/next/Library/2019-01-11-20-21-59.bpo-35719.qyRcpE.rst b/Misc/NEWS.d/next/Library/2019-01-11-20-21-59.bpo-35719.qyRcpE.rst deleted file mode 100644 index e46e14296479..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-11-20-21-59.bpo-35719.qyRcpE.rst +++ /dev/null @@ -1,2 +0,0 @@ -Sped up multi-argument :mod:`math` functions atan2(), copysign(), -remainder() and hypot() by 1.3--2.5 times. diff --git a/Misc/NEWS.d/next/Library/2019-01-13-01-33-00.bpo-35726.dasdas.rst b/Misc/NEWS.d/next/Library/2019-01-13-01-33-00.bpo-35726.dasdas.rst deleted file mode 100644 index f47cdc128e85..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-13-01-33-00.bpo-35726.dasdas.rst +++ /dev/null @@ -1 +0,0 @@ -QueueHandler.prepare() now makes a copy of the record before modifying and enqueueing it, to avoid affecting other handlers in the chain. diff --git a/Misc/NEWS.d/next/Library/2019-01-13-18-42-41.bpo-35733.eFfLiv.rst b/Misc/NEWS.d/next/Library/2019-01-13-18-42-41.bpo-35733.eFfLiv.rst deleted file mode 100644 index 8e5ef9b84178..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-13-18-42-41.bpo-35733.eFfLiv.rst +++ /dev/null @@ -1,2 +0,0 @@ -``ast.Constant(boolean)`` no longer an instance of :class:`ast.Num`. Patch by Anthony -Sottile. diff --git a/Misc/NEWS.d/next/Library/2019-01-14-14-13-08.bpo-35674.kamWqz.rst b/Misc/NEWS.d/next/Library/2019-01-14-14-13-08.bpo-35674.kamWqz.rst deleted file mode 100644 index 02d170ecac6e..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-14-14-13-08.bpo-35674.kamWqz.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add a new :func:`os.posix_spawnp` function. -Patch by Joannah Nanjekye. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2019-01-14-17-34-36.bpo-34323.CRErrt.rst b/Misc/NEWS.d/next/Library/2019-01-14-17-34-36.bpo-34323.CRErrt.rst deleted file mode 100644 index 59269244cc47..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-14-17-34-36.bpo-34323.CRErrt.rst +++ /dev/null @@ -1,3 +0,0 @@ -:mod:`asyncio`: Enhance ``IocpProactor.close()`` log: wait 1 second before -the first log, then log every second. Log also the number of seconds since -``close()`` was called. diff --git a/Misc/NEWS.d/next/Library/2019-01-15-13-31-30.bpo-23846.LT_qL8.rst b/Misc/NEWS.d/next/Library/2019-01-15-13-31-30.bpo-23846.LT_qL8.rst deleted file mode 100644 index 788f092df9c1..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-15-13-31-30.bpo-23846.LT_qL8.rst +++ /dev/null @@ -1,2 +0,0 @@ -:class:`asyncio.ProactorEventLoop` now catchs and logs send errors when the -self-pipe is full. diff --git a/Misc/NEWS.d/next/Library/2019-01-18-13-44-13.bpo-35537.R1lbTl.rst b/Misc/NEWS.d/next/Library/2019-01-18-13-44-13.bpo-35537.R1lbTl.rst deleted file mode 100644 index 56f23a179a4b..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-18-13-44-13.bpo-35537.R1lbTl.rst +++ /dev/null @@ -1 +0,0 @@ -:func:`os.posix_spawn` and :func:`os.posix_spawnp` now have a *setsid* parameter. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Library/2019-01-19-17-01-43.bpo-35780.CLf7fT.rst b/Misc/NEWS.d/next/Library/2019-01-19-17-01-43.bpo-35780.CLf7fT.rst deleted file mode 100644 index d44488272170..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-19-17-01-43.bpo-35780.CLf7fT.rst +++ /dev/null @@ -1,11 +0,0 @@ -Fix lru_cache() errors arising in recursive, reentrant, or -multi-threaded code. These errors could result in orphan links and in -the cache being trapped in a state with fewer than the specified maximum -number of links. Fix handling of negative maxsize which should have -been treated as zero. Fix errors in toggling the "full" status flag. -Fix misordering of links when errors are encountered. Sync-up the C -code and pure Python code for the space saving path in functions with a -single positional argument. In this common case, the space overhead of -an lru cache entry is reduced by almost half. Fix counting of cache -misses. In error cases, the miss count was out of sync with the actual -number of times the underlying user function was called. diff --git a/Misc/NEWS.d/next/Library/2019-01-23-22-44-37.bpo-35813.Yobj-Y.rst b/Misc/NEWS.d/next/Library/2019-01-23-22-44-37.bpo-35813.Yobj-Y.rst deleted file mode 100644 index 714a24c66963..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-23-22-44-37.bpo-35813.Yobj-Y.rst +++ /dev/null @@ -1,2 +0,0 @@ -Shared memory submodule added to multiprocessing to avoid need for -serialization between processes diff --git a/Misc/NEWS.d/next/Library/2019-01-29-09-11-09.bpo-35847.eiSi4t.rst b/Misc/NEWS.d/next/Library/2019-01-29-09-11-09.bpo-35847.eiSi4t.rst deleted file mode 100644 index e3775f96f36e..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-29-09-11-09.bpo-35847.eiSi4t.rst +++ /dev/null @@ -1 +0,0 @@ -RISC-V needed the CTYPES_PASS_BY_REF_HACK. Fixes ctypes Structure test_pass_by_value. diff --git a/Misc/NEWS.d/next/Library/2019-01-29-17-24-52.bpo-35537.Q0ktFC.rst b/Misc/NEWS.d/next/Library/2019-01-29-17-24-52.bpo-35537.Q0ktFC.rst deleted file mode 100644 index 2a9588e745f4..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-29-17-24-52.bpo-35537.Q0ktFC.rst +++ /dev/null @@ -1,4 +0,0 @@ -An ExitStack is now used internally within subprocess.POpen to clean up pipe -file handles. No behavior change in normal operation. But if closing one -handle were ever to cause an exception, the others will now be closed -instead of leaked. (patch by Giampaolo Rodola) diff --git a/Misc/NEWS.d/next/Library/2019-01-30-20-22-36.bpo-35864.ig9KnG.rst b/Misc/NEWS.d/next/Library/2019-01-30-20-22-36.bpo-35864.ig9KnG.rst deleted file mode 100644 index e3b41b700e6b..000000000000 --- a/Misc/NEWS.d/next/Library/2019-01-30-20-22-36.bpo-35864.ig9KnG.rst +++ /dev/null @@ -1,2 +0,0 @@ -The _asdict() method for collections.namedtuple now returns a regular dict -instead of an OrderedDict. diff --git a/Misc/NEWS.d/next/Library/2019-02-02-00-04-01.bpo-35845.1jx2wk.rst b/Misc/NEWS.d/next/Library/2019-02-02-00-04-01.bpo-35845.1jx2wk.rst deleted file mode 100644 index 755baf7b6154..000000000000 --- a/Misc/NEWS.d/next/Library/2019-02-02-00-04-01.bpo-35845.1jx2wk.rst +++ /dev/null @@ -1 +0,0 @@ -Add 'order' parameter to memoryview.tobytes(). diff --git a/Misc/NEWS.d/next/Security/2017-08-06-14-43-45.bpo-28414.mzZ6vD.rst b/Misc/NEWS.d/next/Security/2017-08-06-14-43-45.bpo-28414.mzZ6vD.rst deleted file mode 100644 index 06528c93ee19..000000000000 --- a/Misc/NEWS.d/next/Security/2017-08-06-14-43-45.bpo-28414.mzZ6vD.rst +++ /dev/null @@ -1 +0,0 @@ -The ssl module now allows users to perform their own IDN en/decoding when using SNI. diff --git a/Misc/NEWS.d/next/Security/2018-03-02-10-24-52.bpo-32981.O_qDyj.rst b/Misc/NEWS.d/next/Security/2018-03-02-10-24-52.bpo-32981.O_qDyj.rst deleted file mode 100644 index 9ebabb44f91e..000000000000 --- a/Misc/NEWS.d/next/Security/2018-03-02-10-24-52.bpo-32981.O_qDyj.rst +++ /dev/null @@ -1,4 +0,0 @@ -Regexes in difflib and poplib were vulnerable to catastrophic backtracking. -These regexes formed potential DOS vectors (REDOS). They have been -refactored. This resolves CVE-2018-1060 and CVE-2018-1061. -Patch by Jamie Davis. diff --git a/Misc/NEWS.d/next/Security/2018-03-05-10-09-51.bpo-33001.elj4Aa.rst b/Misc/NEWS.d/next/Security/2018-03-05-10-09-51.bpo-33001.elj4Aa.rst deleted file mode 100644 index 2acbac9e1af6..000000000000 --- a/Misc/NEWS.d/next/Security/2018-03-05-10-09-51.bpo-33001.elj4Aa.rst +++ /dev/null @@ -1 +0,0 @@ -Minimal fix to prevent buffer overrun in os.symlink on Windows diff --git a/Misc/NEWS.d/next/Security/2018-03-25-12-05-43.bpo-33136.TzSN4x.rst b/Misc/NEWS.d/next/Security/2018-03-25-12-05-43.bpo-33136.TzSN4x.rst deleted file mode 100644 index c3505167092b..000000000000 --- a/Misc/NEWS.d/next/Security/2018-03-25-12-05-43.bpo-33136.TzSN4x.rst +++ /dev/null @@ -1,3 +0,0 @@ -Harden ssl module against LibreSSL CVE-2018-8970. -X509_VERIFY_PARAM_set1_host() is called with an explicit namelen. A new test -ensures that NULL bytes are not allowed. diff --git a/Misc/NEWS.d/next/Security/2018-05-28-08-55-30.bpo-32533.IzwkBI.rst b/Misc/NEWS.d/next/Security/2018-05-28-08-55-30.bpo-32533.IzwkBI.rst deleted file mode 100644 index a3642258edaf..000000000000 --- a/Misc/NEWS.d/next/Security/2018-05-28-08-55-30.bpo-32533.IzwkBI.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed thread-safety of error handling in _ssl. diff --git a/Misc/NEWS.d/next/Security/2018-06-26-19-35-33.bpo-33871.S4HR9n.rst b/Misc/NEWS.d/next/Security/2018-06-26-19-35-33.bpo-33871.S4HR9n.rst deleted file mode 100644 index 547342c2e9dd..000000000000 --- a/Misc/NEWS.d/next/Security/2018-06-26-19-35-33.bpo-33871.S4HR9n.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed sending the part of the file in :func:`os.sendfile` on macOS. Using -the *trailers* argument could cause sending more bytes from the input file -than was specified. diff --git a/Misc/NEWS.d/next/Security/2018-08-15-12-12-47.bpo-34405.qbHTH_.rst b/Misc/NEWS.d/next/Security/2018-08-15-12-12-47.bpo-34405.qbHTH_.rst deleted file mode 100644 index a3a006fd4826..000000000000 --- a/Misc/NEWS.d/next/Security/2018-08-15-12-12-47.bpo-34405.qbHTH_.rst +++ /dev/null @@ -1 +0,0 @@ -Updated to OpenSSL 1.1.0i for Windows builds. diff --git a/Misc/NEWS.d/next/Security/2018-09-10-16-05-39.bpo-34623.Ua9jMv.rst b/Misc/NEWS.d/next/Security/2018-09-10-16-05-39.bpo-34623.Ua9jMv.rst deleted file mode 100644 index cbaa4b750644..000000000000 --- a/Misc/NEWS.d/next/Security/2018-09-10-16-05-39.bpo-34623.Ua9jMv.rst +++ /dev/null @@ -1,2 +0,0 @@ -CVE-2018-14647: The C accelerated _elementtree module now initializes hash -randomization salt from _Py_HashSecret instead of libexpat's default CSPRNG. diff --git a/Misc/NEWS.d/next/Security/2018-09-11-18-30-55.bpo-17239.kOpwK2.rst b/Misc/NEWS.d/next/Security/2018-09-11-18-30-55.bpo-17239.kOpwK2.rst deleted file mode 100644 index 8dd0fe8c1b53..000000000000 --- a/Misc/NEWS.d/next/Security/2018-09-11-18-30-55.bpo-17239.kOpwK2.rst +++ /dev/null @@ -1,3 +0,0 @@ -The xml.sax and xml.dom.minidom parsers no longer processes external -entities by default. External DTD and ENTITY declarations no longer -load files or create network connections. diff --git a/Misc/NEWS.d/next/Security/2018-09-24-18-49-25.bpo-34791.78GmIG.rst b/Misc/NEWS.d/next/Security/2018-09-24-18-49-25.bpo-34791.78GmIG.rst deleted file mode 100644 index afb59f8cb0eb..000000000000 --- a/Misc/NEWS.d/next/Security/2018-09-24-18-49-25.bpo-34791.78GmIG.rst +++ /dev/null @@ -1,3 +0,0 @@ -The xml.sax and xml.dom.domreg no longer use environment variables to -override parser implementations when sys.flags.ignore_environment is set by --E or -I arguments. diff --git a/Misc/NEWS.d/next/Security/2018-11-23-15-00-23.bpo-34812.84VQnb.rst b/Misc/NEWS.d/next/Security/2018-11-23-15-00-23.bpo-34812.84VQnb.rst deleted file mode 100644 index 860404f019d2..000000000000 --- a/Misc/NEWS.d/next/Security/2018-11-23-15-00-23.bpo-34812.84VQnb.rst +++ /dev/null @@ -1,4 +0,0 @@ -The :option:`-I` command line option (run Python in isolated mode) is now -also copied by the :mod:`multiprocessing` and :mod:`distutils` modules when -spawning child processes. Previously, only :option:`-E` and :option:`-s` options -(enabled by :option:`-I`) were copied. diff --git a/Misc/NEWS.d/next/Security/2019-01-15-18-16-05.bpo-35746.nMSd0j.rst b/Misc/NEWS.d/next/Security/2019-01-15-18-16-05.bpo-35746.nMSd0j.rst deleted file mode 100644 index dffe347eec84..000000000000 --- a/Misc/NEWS.d/next/Security/2019-01-15-18-16-05.bpo-35746.nMSd0j.rst +++ /dev/null @@ -1,3 +0,0 @@ -[CVE-2019-5010] Fix a NULL pointer deref in ssl module. The cert parser did -not handle CRL distribution points with empty DP or URI correctly. A -malicious or buggy certificate can result into segfault. diff --git a/Misc/NEWS.d/next/Tests/2017-10-18-18-07-45.bpo-31809.KlQrkE.rst b/Misc/NEWS.d/next/Tests/2017-10-18-18-07-45.bpo-31809.KlQrkE.rst deleted file mode 100644 index 8a48508b8c1f..000000000000 --- a/Misc/NEWS.d/next/Tests/2017-10-18-18-07-45.bpo-31809.KlQrkE.rst +++ /dev/null @@ -1 +0,0 @@ -Add tests to verify connection with secp ECDH curves. diff --git a/Misc/NEWS.d/next/Tests/2018-01-08-13-33-47.bpo-19417.2asoXy.rst b/Misc/NEWS.d/next/Tests/2018-01-08-13-33-47.bpo-19417.2asoXy.rst deleted file mode 100644 index 739352fcdd67..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-01-08-13-33-47.bpo-19417.2asoXy.rst +++ /dev/null @@ -1 +0,0 @@ -Add test_bdb.py. diff --git a/Misc/NEWS.d/next/Tests/2018-01-12-09-05-19.bpo-27643._6z49y.rst b/Misc/NEWS.d/next/Tests/2018-01-12-09-05-19.bpo-27643._6z49y.rst deleted file mode 100644 index 7daf748cd551..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-01-12-09-05-19.bpo-27643._6z49y.rst +++ /dev/null @@ -1,5 +0,0 @@ -Test_C test case needs "signed short" bitfields, but the -IBM XLC compiler (on AIX) does not support this -Skip the code and test when AIX and XLC are used - -Applicable to Python2-2.7 and later diff --git a/Misc/NEWS.d/next/Tests/2018-01-25-18-10-47.bpo-32663.IKDsqu.rst b/Misc/NEWS.d/next/Tests/2018-01-25-18-10-47.bpo-32663.IKDsqu.rst deleted file mode 100644 index 8357284e5734..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-01-25-18-10-47.bpo-32663.IKDsqu.rst +++ /dev/null @@ -1,2 +0,0 @@ -Making sure the `SMTPUTF8SimTests` class of tests gets run in -test_smtplib.py. diff --git a/Misc/NEWS.d/next/Tests/2018-03-09-07-05-12.bpo-32517.ugc1iW.rst b/Misc/NEWS.d/next/Tests/2018-03-09-07-05-12.bpo-32517.ugc1iW.rst deleted file mode 100644 index 43f148f06ecb..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-03-09-07-05-12.bpo-32517.ugc1iW.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix failing ``test_asyncio`` on macOS 10.12.2+ due to transport of -``KqueueSelector`` loop was not being closed. diff --git a/Misc/NEWS.d/next/Tests/2018-03-28-01-35-02.bpo-32872.J5NDUj.rst b/Misc/NEWS.d/next/Tests/2018-03-28-01-35-02.bpo-32872.J5NDUj.rst deleted file mode 100644 index 06d656bbfd64..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-03-28-01-35-02.bpo-32872.J5NDUj.rst +++ /dev/null @@ -1 +0,0 @@ -Avoid regrtest compatibility issue with namespace packages. diff --git a/Misc/NEWS.d/next/Tests/2018-04-27-11-46-35.bpo-33358._OcR59.rst b/Misc/NEWS.d/next/Tests/2018-04-27-11-46-35.bpo-33358._OcR59.rst deleted file mode 100644 index 89406e994a91..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-04-27-11-46-35.bpo-33358._OcR59.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``test_embed.test_pre_initialization_sys_options()`` when the interpreter -is built with ``--enable-shared``. diff --git a/Misc/NEWS.d/next/Tests/2018-05-10-16-59-15.bpo-32962.S-rcIN.rst b/Misc/NEWS.d/next/Tests/2018-05-10-16-59-15.bpo-32962.S-rcIN.rst deleted file mode 100644 index 97328ebafe6e..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-05-10-16-59-15.bpo-32962.S-rcIN.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed test_gdb when Python is compiled with flags -mcet -fcf-protection -O0. diff --git a/Misc/NEWS.d/next/Tests/2018-05-26-16-01-40.bpo-33655.Frb4LA.rst b/Misc/NEWS.d/next/Tests/2018-05-26-16-01-40.bpo-33655.Frb4LA.rst deleted file mode 100644 index 7ed2ea232371..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-05-26-16-01-40.bpo-33655.Frb4LA.rst +++ /dev/null @@ -1,2 +0,0 @@ -Ignore test_posix_fallocate failures on BSD platforms that might be due to -running on ZFS. diff --git a/Misc/NEWS.d/next/Tests/2018-06-01-14-25-31.bpo-33562.GutEHf.rst b/Misc/NEWS.d/next/Tests/2018-06-01-14-25-31.bpo-33562.GutEHf.rst deleted file mode 100644 index f63e2632a192..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-06-01-14-25-31.bpo-33562.GutEHf.rst +++ /dev/null @@ -1,2 +0,0 @@ -Check that a global asyncio event loop policy is not left behind by any -tests. diff --git a/Misc/NEWS.d/next/Tests/2018-06-16-01-37-31.bpo-33873.d86vab.rst b/Misc/NEWS.d/next/Tests/2018-06-16-01-37-31.bpo-33873.d86vab.rst deleted file mode 100644 index f4f425570267..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-06-16-01-37-31.bpo-33873.d86vab.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix a bug in ``regrtest`` that caused an extra test to run if ---huntrleaks/-R was used. Exit with error in case that invalid -parameters are specified to --huntrleaks/-R (at least one warmup -run and one repetition must be used). diff --git a/Misc/NEWS.d/next/Tests/2018-06-19-14-04-21.bpo-33901.OFW1Sr.rst b/Misc/NEWS.d/next/Tests/2018-06-19-14-04-21.bpo-33901.OFW1Sr.rst deleted file mode 100644 index 2a2dec3e9fa1..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-06-19-14-04-21.bpo-33901.OFW1Sr.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix test_dbm_gnu on macOS with gdbm 1.15: add a larger value to make sure that -the file size changes. diff --git a/Misc/NEWS.d/next/Tests/2018-06-19-17-55-46.bpo-33746.Sz7avn.rst b/Misc/NEWS.d/next/Tests/2018-06-19-17-55-46.bpo-33746.Sz7avn.rst deleted file mode 100644 index e79399f03be5..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-06-19-17-55-46.bpo-33746.Sz7avn.rst +++ /dev/null @@ -1 +0,0 @@ -Fix test_unittest when run in verbose mode. diff --git a/Misc/NEWS.d/next/Tests/2018-07-10-18-53-46.bpo-0.UBQJBc.rst b/Misc/NEWS.d/next/Tests/2018-07-10-18-53-46.bpo-0.UBQJBc.rst deleted file mode 100644 index 9d82677686bd..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-07-10-18-53-46.bpo-0.UBQJBc.rst +++ /dev/null @@ -1 +0,0 @@ -Improved an error message when mock assert_has_calls fails. diff --git a/Misc/NEWS.d/next/Tests/2018-08-08-22-41-30.bpo-11191.eq9tSH.rst b/Misc/NEWS.d/next/Tests/2018-08-08-22-41-30.bpo-11191.eq9tSH.rst deleted file mode 100644 index d05d52238e07..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-08-22-41-30.bpo-11191.eq9tSH.rst +++ /dev/null @@ -1,2 +0,0 @@ -Skip the distutils test 'test_search_cpp' when using XLC as compiler -patch by aixtools (Michael Felt) diff --git a/Misc/NEWS.d/next/Tests/2018-08-10-16-17-51.bpo-34373.SKdb1k.rst b/Misc/NEWS.d/next/Tests/2018-08-10-16-17-51.bpo-34373.SKdb1k.rst deleted file mode 100644 index 1df5449eced6..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-10-16-17-51.bpo-34373.SKdb1k.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix ``test_mktime`` and ``test_pthread_getcpuclickid`` tests for AIX -Add range checking for ``_PyTime_localtime`` for AIX -Patch by Michael Felt diff --git a/Misc/NEWS.d/next/Tests/2018-08-14-10-47-44.bpo-34399.D_jd1G.rst b/Misc/NEWS.d/next/Tests/2018-08-14-10-47-44.bpo-34399.D_jd1G.rst deleted file mode 100644 index 8c5458f490f2..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-14-10-47-44.bpo-34399.D_jd1G.rst +++ /dev/null @@ -1 +0,0 @@ -Update all RSA keys and DH params to use at least 2048 bits. diff --git a/Misc/NEWS.d/next/Tests/2018-08-14-20-50-07.bpo-11192.g7TwYm.rst b/Misc/NEWS.d/next/Tests/2018-08-14-20-50-07.bpo-11192.g7TwYm.rst deleted file mode 100644 index 2428cad79ca7..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-14-20-50-07.bpo-11192.g7TwYm.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix `test_socket` on AIX -AIX 6.1 and later IPv6 zone id supports only supported by inet_pton6_zone() -Switch to runtime-based platform.system() to establish current platform - rather than build-time based sys.platform() diff --git a/Misc/NEWS.d/next/Tests/2018-08-16-18-48-47.bpo-34391.ouNfxC.rst b/Misc/NEWS.d/next/Tests/2018-08-16-18-48-47.bpo-34391.ouNfxC.rst deleted file mode 100644 index 18702cbac312..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-16-18-48-47.bpo-34391.ouNfxC.rst +++ /dev/null @@ -1 +0,0 @@ -Fix ftplib test for TLS 1.3 by reading from data socket. diff --git a/Misc/NEWS.d/next/Tests/2018-08-24-20-23-15.bpo-34490.vb2cx4.rst b/Misc/NEWS.d/next/Tests/2018-08-24-20-23-15.bpo-34490.vb2cx4.rst deleted file mode 100644 index c778f94b5e8d..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-24-20-23-15.bpo-34490.vb2cx4.rst +++ /dev/null @@ -1,2 +0,0 @@ -On AIX with AF_UNIX family sockets getsockname() does not provide 'sockname', -so skip calls to transport.get_extra_info('sockname') diff --git a/Misc/NEWS.d/next/Tests/2018-08-25-13-28-18.bpo-34347.IsRDPB.rst b/Misc/NEWS.d/next/Tests/2018-08-25-13-28-18.bpo-34347.IsRDPB.rst deleted file mode 100644 index 0959476b9310..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-25-13-28-18.bpo-34347.IsRDPB.rst +++ /dev/null @@ -1 +0,0 @@ -Fix `test_utf8_mode.test_cmd_line` for AIX diff --git a/Misc/NEWS.d/next/Tests/2018-08-26-13-12-34.bpo-11193.H8fCGa.rst b/Misc/NEWS.d/next/Tests/2018-08-26-13-12-34.bpo-11193.H8fCGa.rst deleted file mode 100644 index b31caa649520..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-26-13-12-34.bpo-11193.H8fCGa.rst +++ /dev/null @@ -1 +0,0 @@ -Remove special condition for AIX in `test_subprocess.test_undecodable_env` diff --git a/Misc/NEWS.d/next/Tests/2018-08-29-16-30-52.bpo-34542.9stVAW.rst b/Misc/NEWS.d/next/Tests/2018-08-29-16-30-52.bpo-34542.9stVAW.rst deleted file mode 100644 index 1ca3c7d7996c..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-08-29-16-30-52.bpo-34542.9stVAW.rst +++ /dev/null @@ -1 +0,0 @@ -Use 3072 RSA keys and SHA-256 signature for test certs and keys. diff --git a/Misc/NEWS.d/next/Tests/2018-09-04-15-16-42.bpo-34579.bp4HdM.rst b/Misc/NEWS.d/next/Tests/2018-09-04-15-16-42.bpo-34579.bp4HdM.rst deleted file mode 100644 index 9e01cc9cb232..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-09-04-15-16-42.bpo-34579.bp4HdM.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix test_embed for AIX -Patch by Michael Felt diff --git a/Misc/NEWS.d/next/Tests/2018-09-05-23-50-21.bpo-34594.tqL-GS.rst b/Misc/NEWS.d/next/Tests/2018-09-05-23-50-21.bpo-34594.tqL-GS.rst deleted file mode 100644 index 7a7b1f055561..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-09-05-23-50-21.bpo-34594.tqL-GS.rst +++ /dev/null @@ -1 +0,0 @@ -Fix usage of hardcoded ``errno`` values in the tests. diff --git a/Misc/NEWS.d/next/Tests/2018-09-09-14-36-59.bpo-34569.okj1Xh.rst b/Misc/NEWS.d/next/Tests/2018-09-09-14-36-59.bpo-34569.okj1Xh.rst deleted file mode 100644 index bd433adfc357..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-09-09-14-36-59.bpo-34569.okj1Xh.rst +++ /dev/null @@ -1,2 +0,0 @@ -The experimental PEP 554 data channels now correctly pass negative PyLong -objects between subinterpreters on 32-bit systems. Patch by Michael Felt. diff --git a/Misc/NEWS.d/next/Tests/2018-09-12-17-00-34.bpo-34200.dfxYQK.rst b/Misc/NEWS.d/next/Tests/2018-09-12-17-00-34.bpo-34200.dfxYQK.rst deleted file mode 100644 index b53339c5856c..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-09-12-17-00-34.bpo-34200.dfxYQK.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed non-deterministic flakiness of test_pkg by not using the scary -test.support.module_cleanup() logic to save and restore sys.modules contents -between test cases. diff --git a/Misc/NEWS.d/next/Tests/2018-09-13-09-53-15.bpo-34661.bdTamP.rst b/Misc/NEWS.d/next/Tests/2018-09-13-09-53-15.bpo-34661.bdTamP.rst deleted file mode 100644 index fc2b8e90ead5..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-09-13-09-53-15.bpo-34661.bdTamP.rst +++ /dev/null @@ -1 +0,0 @@ -Fix test_shutil if unzip doesn't support -t. diff --git a/Misc/NEWS.d/next/Tests/2018-09-13-20-58-07.bpo-34587.rCcxp3.rst b/Misc/NEWS.d/next/Tests/2018-09-13-20-58-07.bpo-34587.rCcxp3.rst deleted file mode 100644 index 8d45418aeab4..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-09-13-20-58-07.bpo-34587.rCcxp3.rst +++ /dev/null @@ -1,5 +0,0 @@ -test_socket: Remove RDSTest.testCongestion(). The test tries to fill the -receiver's socket buffer and expects an error. But the RDS protocol doesn't -require that. Moreover, the Linux implementation of RDS expects that the -producer of the messages reduces its rate, it's not the role of the receiver to -trigger an error. The test fails on Fedora 28 by design, so just remove it. diff --git a/Misc/NEWS.d/next/Tests/2018-09-21-17-33-41.bpo-34537.GImYtZ.rst b/Misc/NEWS.d/next/Tests/2018-09-21-17-33-41.bpo-34537.GImYtZ.rst deleted file mode 100644 index b64a6a762cdb..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-09-21-17-33-41.bpo-34537.GImYtZ.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix ``test_gdb.test_strings()`` when ``LC_ALL=C`` and GDB was compiled with -Python 3.6 or earlier. diff --git a/Misc/NEWS.d/next/Tests/2018-10-09-23-51-07.bpo-23596.rdnert.rst b/Misc/NEWS.d/next/Tests/2018-10-09-23-51-07.bpo-23596.rdnert.rst deleted file mode 100644 index ef71720c56fb..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-10-09-23-51-07.bpo-23596.rdnert.rst +++ /dev/null @@ -1 +0,0 @@ -Use argparse for the command line of the gzip module. Patch by Antony Lee diff --git a/Misc/NEWS.d/next/Tests/2018-10-11-22-34-27.bpo-34962.0PLBi8.rst b/Misc/NEWS.d/next/Tests/2018-10-11-22-34-27.bpo-34962.0PLBi8.rst deleted file mode 100644 index 0d0f6a1ff77e..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-10-11-22-34-27.bpo-34962.0PLBi8.rst +++ /dev/null @@ -1 +0,0 @@ -make docstest in Doc now passes., and is enforced in CI diff --git a/Misc/NEWS.d/next/Tests/2018-10-27-13-41-55.bpo-34279.v0Xqxe.rst b/Misc/NEWS.d/next/Tests/2018-10-27-13-41-55.bpo-34279.v0Xqxe.rst deleted file mode 100644 index a82fa6b304ac..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-10-27-13-41-55.bpo-34279.v0Xqxe.rst +++ /dev/null @@ -1,3 +0,0 @@ -regrtest issue a warning when no tests have been executed in a particular -test file. Also, a new final result state is issued if no test have been -executed across all test files. Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Tests/2018-11-04-20-17-09.bpo-21263.T3qo9r.rst b/Misc/NEWS.d/next/Tests/2018-11-04-20-17-09.bpo-21263.T3qo9r.rst deleted file mode 100644 index 9c6b4ef90706..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-11-04-20-17-09.bpo-21263.T3qo9r.rst +++ /dev/null @@ -1,4 +0,0 @@ -After several reports that test_gdb does not work properly on macOS and -since gdb is not shipped by default anymore, test_gdb is now skipped on -macOS when LLVM Clang has been used to compile Python. Patch by -Lysandros Nikolaou diff --git a/Misc/NEWS.d/next/Tests/2018-11-26-16-54-21.bpo-35317.jByGP2.rst b/Misc/NEWS.d/next/Tests/2018-11-26-16-54-21.bpo-35317.jByGP2.rst deleted file mode 100644 index 73a30f71927f..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-11-26-16-54-21.bpo-35317.jByGP2.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix ``mktime()`` overflow error in ``test_email``: run -``test_localtime_daylight_true_dst_true()`` and -``test_localtime_daylight_false_dst_true()`` with a specific timezone. diff --git a/Misc/NEWS.d/next/Tests/2018-11-30-17-18-56.bpo-35352.8bD7GC.rst b/Misc/NEWS.d/next/Tests/2018-11-30-17-18-56.bpo-35352.8bD7GC.rst deleted file mode 100644 index e479e9612e72..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-11-30-17-18-56.bpo-35352.8bD7GC.rst +++ /dev/null @@ -1 +0,0 @@ -Modify test_asyncio to use the certificate set from the test directory. diff --git a/Misc/NEWS.d/next/Tests/2018-12-09-01-27-29.bpo-33725.TaGayj.rst b/Misc/NEWS.d/next/Tests/2018-12-09-01-27-29.bpo-33725.TaGayj.rst deleted file mode 100644 index 425048cb37cf..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-09-01-27-29.bpo-33725.TaGayj.rst +++ /dev/null @@ -1,2 +0,0 @@ -test_multiprocessing_fork may crash on recent versions of macOS. Until the -issue is resolved, skip the test on macOS. diff --git a/Misc/NEWS.d/next/Tests/2018-12-10-13-18-37.bpo-26704.DBAN4c.rst b/Misc/NEWS.d/next/Tests/2018-12-10-13-18-37.bpo-26704.DBAN4c.rst deleted file mode 100644 index 458f495be483..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-10-13-18-37.bpo-26704.DBAN4c.rst +++ /dev/null @@ -1,2 +0,0 @@ -Added test demonstrating double-patching of an instance method. Patch by -Anthony Sottile. diff --git a/Misc/NEWS.d/next/Tests/2018-12-12-18-07-58.bpo-35412.kbuJor.rst b/Misc/NEWS.d/next/Tests/2018-12-12-18-07-58.bpo-35412.kbuJor.rst deleted file mode 100644 index d696074fb734..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-12-18-07-58.bpo-35412.kbuJor.rst +++ /dev/null @@ -1 +0,0 @@ -Add testcase to ``test_future4``: check unicode literal. diff --git a/Misc/NEWS.d/next/Tests/2018-12-12-18-20-18.bpo-34279.DhKcuP.rst b/Misc/NEWS.d/next/Tests/2018-12-12-18-20-18.bpo-34279.DhKcuP.rst deleted file mode 100644 index 5a70cc5308ef..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-12-18-20-18.bpo-34279.DhKcuP.rst +++ /dev/null @@ -1,3 +0,0 @@ -:func:`test.support.run_unittest` no longer raise :exc:`TestDidNotRun` if -the test result contains skipped tests. The exception is now only raised if -no test have been run and no test have been skipped. diff --git a/Misc/NEWS.d/next/Tests/2018-12-16-23-36-47.bpo-35513.k4WHlA.rst b/Misc/NEWS.d/next/Tests/2018-12-16-23-36-47.bpo-35513.k4WHlA.rst deleted file mode 100644 index 33ca3a8846e2..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-16-23-36-47.bpo-35513.k4WHlA.rst +++ /dev/null @@ -1,2 +0,0 @@ -Replace :func:`time.time` with :func:`time.monotonic` in tests to measure -time delta. diff --git a/Misc/NEWS.d/next/Tests/2018-12-17-16-41-45.bpo-35519.RR3L_w.rst b/Misc/NEWS.d/next/Tests/2018-12-17-16-41-45.bpo-35519.RR3L_w.rst deleted file mode 100644 index e108dd877e1b..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-17-16-41-45.bpo-35519.RR3L_w.rst +++ /dev/null @@ -1,3 +0,0 @@ -Rename :mod:`test.bisect` module to :mod:`test.bisect_cmd` to avoid conflict -with :mod:`bisect` module when running directly a test like -``./python Lib/test/test_xmlrpc.py``. diff --git a/Misc/NEWS.d/next/Tests/2018-12-18-22-36-53.bpo-35424.1Pz4IS.rst b/Misc/NEWS.d/next/Tests/2018-12-18-22-36-53.bpo-35424.1Pz4IS.rst deleted file mode 100644 index 461f636981b1..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-18-22-36-53.bpo-35424.1Pz4IS.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix test_multiprocessing_main_handling: use :class:`multiprocessing.Pool` with -a context manager and then explicitly join the pool. diff --git a/Misc/NEWS.d/next/Tests/2018-12-18-23-20-39.bpo-31731.tcv85C.rst b/Misc/NEWS.d/next/Tests/2018-12-18-23-20-39.bpo-31731.tcv85C.rst deleted file mode 100644 index 530977c6e87e..000000000000 --- a/Misc/NEWS.d/next/Tests/2018-12-18-23-20-39.bpo-31731.tcv85C.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix a race condition in ``check_interrupted_write()`` of test_io: create -directly the thread with SIGALRM signal blocked, rather than blocking the -signal later from the thread. Previously, it was possible that the thread gets -the signal before the signal is blocked. diff --git a/Misc/NEWS.d/next/Tests/2019-01-04-21-34-53.bpo-35488.U7JJzP.rst b/Misc/NEWS.d/next/Tests/2019-01-04-21-34-53.bpo-35488.U7JJzP.rst deleted file mode 100644 index 815754ef561f..000000000000 --- a/Misc/NEWS.d/next/Tests/2019-01-04-21-34-53.bpo-35488.U7JJzP.rst +++ /dev/null @@ -1 +0,0 @@ -Add a test to pathlib's Path.match() to verify it does not support glob-style ** recursive pattern matching. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Tests/2019-01-07-23-22-44.bpo-33717.GhHXv8.rst b/Misc/NEWS.d/next/Tests/2019-01-07-23-22-44.bpo-33717.GhHXv8.rst deleted file mode 100644 index 05338a329ef8..000000000000 --- a/Misc/NEWS.d/next/Tests/2019-01-07-23-22-44.bpo-33717.GhHXv8.rst +++ /dev/null @@ -1,2 +0,0 @@ -test.pythoninfo now logs information of all clocks, not only time.time() and -time.perf_counter(). diff --git a/Misc/NEWS.d/next/Tests/2019-01-07-23-34-41.bpo-32710.Hzo1b8.rst b/Misc/NEWS.d/next/Tests/2019-01-07-23-34-41.bpo-32710.Hzo1b8.rst deleted file mode 100644 index dd602a94c349..000000000000 --- a/Misc/NEWS.d/next/Tests/2019-01-07-23-34-41.bpo-32710.Hzo1b8.rst +++ /dev/null @@ -1,3 +0,0 @@ -``test_asyncio/test_sendfile.py`` now resets the event loop policy using -:func:`tearDownModule` as done in other tests, to prevent a warning when -running tests on Windows. diff --git a/Misc/NEWS.d/next/Tests/2019-01-10-18-35-42.bpo-35045.qdd6d9.rst b/Misc/NEWS.d/next/Tests/2019-01-10-18-35-42.bpo-35045.qdd6d9.rst deleted file mode 100644 index 630a22d77868..000000000000 --- a/Misc/NEWS.d/next/Tests/2019-01-10-18-35-42.bpo-35045.qdd6d9.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make ssl tests less strict and also accept TLSv1 as system default. The -changes unbreaks test_min_max_version on Fedora 29. diff --git a/Misc/NEWS.d/next/Tests/2019-01-18-12-19-19.bpo-35772.sGBbsn.rst b/Misc/NEWS.d/next/Tests/2019-01-18-12-19-19.bpo-35772.sGBbsn.rst deleted file mode 100644 index cfd282f1d090..000000000000 --- a/Misc/NEWS.d/next/Tests/2019-01-18-12-19-19.bpo-35772.sGBbsn.rst +++ /dev/null @@ -1,6 +0,0 @@ -Fix sparse file tests of test_tarfile on ppc64 with the tmpfs filesystem. Fix -the function testing if the filesystem supports sparse files: create a file -which contains data and "holes", instead of creating a file which contains no -data. tmpfs effective block size is a page size (tmpfs lives in the page cache). -RHEL uses 64 KiB pages on aarch64, ppc64, ppc64le, only s390x and x86_64 use 4 -KiB pages, whereas the test punch holes of 4 KiB. diff --git a/Misc/NEWS.d/next/Tools-Demos/2017-09-26-10-11-21.bpo-31583.TM90_H.rst b/Misc/NEWS.d/next/Tools-Demos/2017-09-26-10-11-21.bpo-31583.TM90_H.rst deleted file mode 100644 index 472f61c5129e..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2017-09-26-10-11-21.bpo-31583.TM90_H.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix 2to3 for using with --add-suffix option but without --output-dir -option for relative path to files in current directory. diff --git a/Misc/NEWS.d/next/Tools-Demos/2017-12-07-20-51-20.bpo-32222.hPBcGT.rst b/Misc/NEWS.d/next/Tools-Demos/2017-12-07-20-51-20.bpo-32222.hPBcGT.rst deleted file mode 100644 index b0b4c5e9357c..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2017-12-07-20-51-20.bpo-32222.hPBcGT.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix pygettext not extracting docstrings for functions with type annotated -arguments. -Patch by Toby Harradine. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-02-20-12-16-47.bpo-32885.dL5x7C.rst b/Misc/NEWS.d/next/Tools-Demos/2018-02-20-12-16-47.bpo-32885.dL5x7C.rst deleted file mode 100644 index ef069fcbb4e8..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-02-20-12-16-47.bpo-32885.dL5x7C.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add an ``-n`` flag for ``Tools/scripts/pathfix.py`` to disable automatic -backup creation (files with ``~`` suffix). diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-03-02-16-23-31.bpo-25427.1mgMOG.rst b/Misc/NEWS.d/next/Tools-Demos/2018-03-02-16-23-31.bpo-25427.1mgMOG.rst deleted file mode 100644 index fe4495e8b574..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-03-02-16-23-31.bpo-25427.1mgMOG.rst +++ /dev/null @@ -1,3 +0,0 @@ -Remove the pyvenv script in favor of ``python3 -m venv`` in order to lower -confusion as to what Python interpreter a virtual environment will be -created for. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-03-16-17-25-05.bpo-29673.m8QtaW.rst b/Misc/NEWS.d/next/Tools-Demos/2018-03-16-17-25-05.bpo-29673.m8QtaW.rst deleted file mode 100644 index 3d515b3ee4db..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-03-16-17-25-05.bpo-29673.m8QtaW.rst +++ /dev/null @@ -1 +0,0 @@ -Fix pystackv and pystack gdbinit macros. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-03-26-18-54-24.bpo-31920.u_WKsT.rst b/Misc/NEWS.d/next/Tools-Demos/2018-03-26-18-54-24.bpo-31920.u_WKsT.rst deleted file mode 100644 index 39c694b0728d..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-03-26-18-54-24.bpo-31920.u_WKsT.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed handling directories as arguments in the ``pygettext`` script. Based -on patch by Oleg Krasnikov. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-04-03-18-10-00.bpo-33189.QrXR00.rst b/Misc/NEWS.d/next/Tools-Demos/2018-04-03-18-10-00.bpo-33189.QrXR00.rst deleted file mode 100644 index 4d4137240e61..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-04-03-18-10-00.bpo-33189.QrXR00.rst +++ /dev/null @@ -1,2 +0,0 @@ -:program:`pygettext.py` now recognizes only literal strings as docstrings -and translatable strings, and rejects bytes literals and f-string expressions. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-16-53.bpo-32962.2YfdwI.rst b/Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-16-53.bpo-32962.2YfdwI.rst deleted file mode 100644 index de40070795e9..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-16-53.bpo-32962.2YfdwI.rst +++ /dev/null @@ -1,2 +0,0 @@ -python-gdb now catchs ValueError on read_var(): when Python has no debug -symbols for example. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-23-07.bpo-32962.Q3Dwns.rst b/Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-23-07.bpo-32962.Q3Dwns.rst deleted file mode 100644 index fc14261019a0..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-06-14-16-23-07.bpo-32962.Q3Dwns.rst +++ /dev/null @@ -1,2 +0,0 @@ -python-gdb now catchs ``UnicodeDecodeError`` exceptions when calling -``string()``. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-07-24-00-11-44.bpo-20260.klmmqI.rst b/Misc/NEWS.d/next/Tools-Demos/2018-07-24-00-11-44.bpo-20260.klmmqI.rst deleted file mode 100644 index f8d0df0ca585..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-07-24-00-11-44.bpo-20260.klmmqI.rst +++ /dev/null @@ -1 +0,0 @@ -Argument Clinic now has non-bitwise unsigned int converters. diff --git a/Misc/NEWS.d/next/Tools-Demos/2018-10-15-13-22-28.bpo-34989.hU4fra.rst b/Misc/NEWS.d/next/Tools-Demos/2018-10-15-13-22-28.bpo-34989.hU4fra.rst deleted file mode 100644 index 53bb425ea7b4..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2018-10-15-13-22-28.bpo-34989.hU4fra.rst +++ /dev/null @@ -1,2 +0,0 @@ -python-gdb.py now handles errors on computing the line number of a Python -frame. diff --git a/Misc/NEWS.d/next/Tools-Demos/2019-02-01-12-22-37.bpo-35884.hJkMRD.rst b/Misc/NEWS.d/next/Tools-Demos/2019-02-01-12-22-37.bpo-35884.hJkMRD.rst deleted file mode 100644 index 416eeac1d935..000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2019-02-01-12-22-37.bpo-35884.hJkMRD.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add a benchmark script for timing various ways to access variables: -``Tools/scripts/var_access_benchmark.py``. diff --git a/Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst b/Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst deleted file mode 100644 index a4043496bc24..000000000000 --- a/Misc/NEWS.d/next/Windows/2017-11-24-12-53-54.bpo-1104.1CWSZp.rst +++ /dev/null @@ -1,2 +0,0 @@ -Correctly handle string length in ``msilib.SummaryInfo.GetProperty()`` to -prevent it from truncating the last character. diff --git a/Misc/NEWS.d/next/Windows/2018-02-07-17-50-48.bpo-29248.Xzwj-6.rst b/Misc/NEWS.d/next/Windows/2018-02-07-17-50-48.bpo-29248.Xzwj-6.rst deleted file mode 100644 index 3030ef6958de..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-02-07-17-50-48.bpo-29248.Xzwj-6.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix :func:`os.readlink` on Windows, which was mistakenly treating the -``PrintNameOffset`` field of the reparse data buffer as a number of -characters instead of bytes. Patch by Craig Holmquist and SSE4. diff --git a/Misc/NEWS.d/next/Windows/2018-02-10-15-38-19.bpo-32370.kcKuct.rst b/Misc/NEWS.d/next/Windows/2018-02-10-15-38-19.bpo-32370.kcKuct.rst deleted file mode 100644 index 7f076d45bef9..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-02-10-15-38-19.bpo-32370.kcKuct.rst +++ /dev/null @@ -1,2 +0,0 @@ -Use the correct encoding for ipconfig output in the uuid module. -Patch by Segev Finer. diff --git a/Misc/NEWS.d/next/Windows/2018-02-19-08-54-06.bpo-32457.vVP0Iz.rst b/Misc/NEWS.d/next/Windows/2018-02-19-08-54-06.bpo-32457.vVP0Iz.rst deleted file mode 100644 index b55ec821e622..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-02-19-08-54-06.bpo-32457.vVP0Iz.rst +++ /dev/null @@ -1 +0,0 @@ -Improves handling of denormalized executable path when launching Python. diff --git a/Misc/NEWS.d/next/Windows/2018-02-19-10-00-57.bpo-32409.nocuDg.rst b/Misc/NEWS.d/next/Windows/2018-02-19-10-00-57.bpo-32409.nocuDg.rst deleted file mode 100644 index 36251b0b4783..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-02-19-10-00-57.bpo-32409.nocuDg.rst +++ /dev/null @@ -1 +0,0 @@ -Ensures activate.bat can handle Unicode contents. diff --git a/Misc/NEWS.d/next/Windows/2018-02-19-13-54-42.bpo-31966._Q3HPb.rst b/Misc/NEWS.d/next/Windows/2018-02-19-13-54-42.bpo-31966._Q3HPb.rst deleted file mode 100644 index 042a4d835abf..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-02-19-13-54-42.bpo-31966._Q3HPb.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed WindowsConsoleIO.write() for writing empty data. diff --git a/Misc/NEWS.d/next/Windows/2018-02-23-00-47-13.bpo-32901.mGKz5_.rst b/Misc/NEWS.d/next/Windows/2018-02-23-00-47-13.bpo-32901.mGKz5_.rst deleted file mode 100644 index af0ca65e3c82..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-02-23-00-47-13.bpo-32901.mGKz5_.rst +++ /dev/null @@ -1 +0,0 @@ -Update Tcl and Tk versions to 8.6.8 diff --git a/Misc/NEWS.d/next/Windows/2018-02-28-11-03-24.bpo-32903.1SXY4t.rst b/Misc/NEWS.d/next/Windows/2018-02-28-11-03-24.bpo-32903.1SXY4t.rst deleted file mode 100644 index a20a414790f8..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-02-28-11-03-24.bpo-32903.1SXY4t.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a memory leak in os.chdir() on Windows if the current directory is set -to a UNC path. diff --git a/Misc/NEWS.d/next/Windows/2018-03-07-01-33-33.bpo-33016.Z_Med0.rst b/Misc/NEWS.d/next/Windows/2018-03-07-01-33-33.bpo-33016.Z_Med0.rst deleted file mode 100644 index f4f78d489bf1..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-03-07-01-33-33.bpo-33016.Z_Med0.rst +++ /dev/null @@ -1 +0,0 @@ -Fix potential use of uninitialized memory in nt._getfinalpathname diff --git a/Misc/NEWS.d/next/Windows/2018-03-08-20-02-38.bpo-32890.3jzFzY.rst b/Misc/NEWS.d/next/Windows/2018-03-08-20-02-38.bpo-32890.3jzFzY.rst deleted file mode 100644 index e8a63b334192..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-03-08-20-02-38.bpo-32890.3jzFzY.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix usage of GetLastError() instead of errno in os.execve() and -os.truncate(). diff --git a/Misc/NEWS.d/next/Windows/2018-04-13-11-28-55.bpo-33184.7YhqQE.rst b/Misc/NEWS.d/next/Windows/2018-04-13-11-28-55.bpo-33184.7YhqQE.rst deleted file mode 100644 index ca47a9811088..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-04-13-11-28-55.bpo-33184.7YhqQE.rst +++ /dev/null @@ -1 +0,0 @@ -Update Windows installer to use OpenSSL 1.1.0h. diff --git a/Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst b/Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst deleted file mode 100644 index 55176791a901..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-04-20-03-24-07.bpo-33316.9IiJ8J.rst +++ /dev/null @@ -1 +0,0 @@ -PyThread_release_lock always fails diff --git a/Misc/NEWS.d/next/Windows/2018-05-16-11-31-17.bpo-29097.9mqEuI.rst b/Misc/NEWS.d/next/Windows/2018-05-16-11-31-17.bpo-29097.9mqEuI.rst deleted file mode 100644 index a35251a149bb..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-05-16-11-31-17.bpo-29097.9mqEuI.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix bug where :meth:`datetime.fromtimestamp` erroneously throws an -:exc:`OSError` on Windows for values between 0 and 86400. -Patch by Ammar Askar. diff --git a/Misc/NEWS.d/next/Windows/2018-06-04-09-20-53.bpo-33720.VKDXHK.rst b/Misc/NEWS.d/next/Windows/2018-06-04-09-20-53.bpo-33720.VKDXHK.rst deleted file mode 100644 index f7e2f9d1eae4..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-06-04-09-20-53.bpo-33720.VKDXHK.rst +++ /dev/null @@ -1 +0,0 @@ -Reduces maximum marshal recursion depth on release builds. diff --git a/Misc/NEWS.d/next/Windows/2018-06-19-11-57-50.bpo-33895.zpblTy.rst b/Misc/NEWS.d/next/Windows/2018-06-19-11-57-50.bpo-33895.zpblTy.rst deleted file mode 100644 index a12b8196c36b..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-06-19-11-57-50.bpo-33895.zpblTy.rst +++ /dev/null @@ -1 +0,0 @@ -GIL is released while calling functions that acquire Windows loader lock. diff --git a/Misc/NEWS.d/next/Windows/2018-06-25-09-33-48.bpo-30237.EybiZA.rst b/Misc/NEWS.d/next/Windows/2018-06-25-09-33-48.bpo-30237.EybiZA.rst deleted file mode 100644 index 18aac756cb58..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-06-25-09-33-48.bpo-30237.EybiZA.rst +++ /dev/null @@ -1,2 +0,0 @@ -Output error when ReadConsole is canceled by CancelSynchronousIo instead of -crashing. diff --git a/Misc/NEWS.d/next/Windows/2018-06-27-23-33-54.bpo-31546.zJlap-.rst b/Misc/NEWS.d/next/Windows/2018-06-27-23-33-54.bpo-31546.zJlap-.rst deleted file mode 100644 index 8f487632ce05..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-06-27-23-33-54.bpo-31546.zJlap-.rst +++ /dev/null @@ -1,3 +0,0 @@ -Restore running PyOS_InputHook while waiting for user input at the prompt. -The restores integration of interactive GUI windows (such as Matplotlib -figures) with the prompt on Windows. diff --git a/Misc/NEWS.d/next/Windows/2018-07-02-14-19-32.bpo-34006.7SgBT_.rst b/Misc/NEWS.d/next/Windows/2018-07-02-14-19-32.bpo-34006.7SgBT_.rst deleted file mode 100644 index f21e51646f1a..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-07-02-14-19-32.bpo-34006.7SgBT_.rst +++ /dev/null @@ -1,3 +0,0 @@ -Revert line length limit for Windows help docs. The line-length limit is not -needed because the pages appear in a separate app rather than on a browser -tab. It can also interact badly with the DPI setting. diff --git a/Misc/NEWS.d/next/Windows/2018-07-11-15-58-06.bpo-34011.Ho_d5T.rst b/Misc/NEWS.d/next/Windows/2018-07-11-15-58-06.bpo-34011.Ho_d5T.rst deleted file mode 100644 index 8fcf8b51081b..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-07-11-15-58-06.bpo-34011.Ho_d5T.rst +++ /dev/null @@ -1,4 +0,0 @@ -A suite of code has been changed which copied across DLLs and init.tcl from -the running Python location into a venv being created. These copies are needed -only when running from a Python source build, and the copying code is now only -run when that is the case, rather than whenever a venv is created. diff --git a/Misc/NEWS.d/next/Windows/2018-07-25-16-13-12.bpo-34225.ngemNL.rst b/Misc/NEWS.d/next/Windows/2018-07-25-16-13-12.bpo-34225.ngemNL.rst deleted file mode 100644 index d29c8696307d..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-07-25-16-13-12.bpo-34225.ngemNL.rst +++ /dev/null @@ -1 +0,0 @@ -Ensure INCLUDE and LIB directories do not end with a backslash. diff --git a/Misc/NEWS.d/next/Windows/2018-08-21-19-28-23.bpo-34062.3gxsA3.rst b/Misc/NEWS.d/next/Windows/2018-08-21-19-28-23.bpo-34062.3gxsA3.rst deleted file mode 100644 index ca71945d8797..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-08-21-19-28-23.bpo-34062.3gxsA3.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed the '--list' and '--list-paths' arguments for the py.exe launcher diff --git a/Misc/NEWS.d/next/Windows/2018-09-03-01-23-52.bpo-34532.N1HEbE.rst b/Misc/NEWS.d/next/Windows/2018-09-03-01-23-52.bpo-34532.N1HEbE.rst deleted file mode 100644 index 812b47497c2d..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-09-03-01-23-52.bpo-34532.N1HEbE.rst +++ /dev/null @@ -1 +0,0 @@ -Fixes exit code of list version arguments for py.exe. diff --git a/Misc/NEWS.d/next/Windows/2018-09-04-23-13-19.bpo-34581.lnbC0k.rst b/Misc/NEWS.d/next/Windows/2018-09-04-23-13-19.bpo-34581.lnbC0k.rst deleted file mode 100644 index 2dfa1aec9b86..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-09-04-23-13-19.bpo-34581.lnbC0k.rst +++ /dev/null @@ -1 +0,0 @@ -Guard MSVC-specific code in socketmodule.c with ``#ifdef _MSC_VER``. diff --git a/Misc/NEWS.d/next/Windows/2018-09-13-08-29-04.bpo-34603.2AB7sc.rst b/Misc/NEWS.d/next/Windows/2018-09-13-08-29-04.bpo-34603.2AB7sc.rst deleted file mode 100644 index 86ae1cd06171..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-09-13-08-29-04.bpo-34603.2AB7sc.rst +++ /dev/null @@ -1 +0,0 @@ -Fix returning structs from functions produced by MSVC diff --git a/Misc/NEWS.d/next/Windows/2018-09-22-11-02-35.bpo-34770.4lEUOd.rst b/Misc/NEWS.d/next/Windows/2018-09-22-11-02-35.bpo-34770.4lEUOd.rst deleted file mode 100644 index 5e4ba8868e84..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-09-22-11-02-35.bpo-34770.4lEUOd.rst +++ /dev/null @@ -1 +0,0 @@ -Fix a possible null pointer dereference in pyshellext.cpp. diff --git a/Misc/NEWS.d/next/Windows/2018-09-25-10-39-27.bpo-32557.Rs1bf9.rst b/Misc/NEWS.d/next/Windows/2018-09-25-10-39-27.bpo-32557.Rs1bf9.rst deleted file mode 100644 index d93c55ac62fe..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-09-25-10-39-27.bpo-32557.Rs1bf9.rst +++ /dev/null @@ -1 +0,0 @@ -Allow shutil.disk_usage to take a file path on Windows diff --git a/Misc/NEWS.d/next/Windows/2018-10-25-11-29-22.bpo-35067.RHWi7W.rst b/Misc/NEWS.d/next/Windows/2018-10-25-11-29-22.bpo-35067.RHWi7W.rst deleted file mode 100644 index 2b8153b6ceea..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-10-25-11-29-22.bpo-35067.RHWi7W.rst +++ /dev/null @@ -1 +0,0 @@ -Remove _distutils_findvs module and use vswhere.exe instead. diff --git a/Misc/NEWS.d/next/Windows/2018-10-30-13-39-17.bpo-34977.0l7_QV.rst b/Misc/NEWS.d/next/Windows/2018-10-30-13-39-17.bpo-34977.0l7_QV.rst deleted file mode 100644 index 8e1a4ba84880..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-10-30-13-39-17.bpo-34977.0l7_QV.rst +++ /dev/null @@ -1 +0,0 @@ -Adds support for building a Windows App Store package diff --git a/Misc/NEWS.d/next/Windows/2018-12-07-10-00-38.bpo-34977.agQJbD.rst b/Misc/NEWS.d/next/Windows/2018-12-07-10-00-38.bpo-34977.agQJbD.rst deleted file mode 100644 index 12d8db2ab46a..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-12-07-10-00-38.bpo-34977.agQJbD.rst +++ /dev/null @@ -1,2 +0,0 @@ -venv on Windows will now use a python.exe redirector rather than copying the -actual binaries from the base environment. diff --git a/Misc/NEWS.d/next/Windows/2018-12-10-15-01-13.bpo-35401.9L1onG.rst b/Misc/NEWS.d/next/Windows/2018-12-10-15-01-13.bpo-35401.9L1onG.rst deleted file mode 100644 index 5854388d067d..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-12-10-15-01-13.bpo-35401.9L1onG.rst +++ /dev/null @@ -1 +0,0 @@ -Updates Windows build to OpenSSL 1.1.0j diff --git a/Misc/NEWS.d/next/Windows/2018-12-13-13-30-04.bpo-35402.n_mXb2.rst b/Misc/NEWS.d/next/Windows/2018-12-13-13-30-04.bpo-35402.n_mXb2.rst deleted file mode 100644 index 56cf17c09dcf..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-12-13-13-30-04.bpo-35402.n_mXb2.rst +++ /dev/null @@ -1 +0,0 @@ -Update Windows build to use Tcl and Tk 8.6.9 diff --git a/Misc/NEWS.d/next/Windows/2018-12-28-07-25-47.bpo-35596.P9CEY2.rst b/Misc/NEWS.d/next/Windows/2018-12-28-07-25-47.bpo-35596.P9CEY2.rst deleted file mode 100644 index 3ce90f6065c9..000000000000 --- a/Misc/NEWS.d/next/Windows/2018-12-28-07-25-47.bpo-35596.P9CEY2.rst +++ /dev/null @@ -1 +0,0 @@ -Fix vcruntime140.dll being added to embeddable distro multiple times. diff --git a/Misc/NEWS.d/next/Windows/2019-01-08-13-56-01.bpo-35596.oFvhcm.rst b/Misc/NEWS.d/next/Windows/2019-01-08-13-56-01.bpo-35596.oFvhcm.rst deleted file mode 100644 index db4d8fa420d6..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-01-08-13-56-01.bpo-35596.oFvhcm.rst +++ /dev/null @@ -1,2 +0,0 @@ -Use unchecked PYCs for the embeddable distro to avoid zipimport -restrictions. diff --git a/Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst b/Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst deleted file mode 100644 index c89a509a0e8f..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-01-12-16-52-38.bpo-29734.6_OJwI.rst +++ /dev/null @@ -1 +0,0 @@ -Fix handle leaks in os.stat on Windows. \ No newline at end of file diff --git a/Misc/NEWS.d/next/Windows/2019-01-21-05-18-14.bpo-35758.8LsY3l.rst b/Misc/NEWS.d/next/Windows/2019-01-21-05-18-14.bpo-35758.8LsY3l.rst deleted file mode 100644 index c1e19d465b3c..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-01-21-05-18-14.bpo-35758.8LsY3l.rst +++ /dev/null @@ -1 +0,0 @@ -Allow building on ARM with MSVC. diff --git a/Misc/NEWS.d/next/Windows/2019-01-25-12-29-14.bpo-35797.MzyOK9.rst b/Misc/NEWS.d/next/Windows/2019-01-25-12-29-14.bpo-35797.MzyOK9.rst deleted file mode 100644 index a0745f500b13..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-01-25-12-29-14.bpo-35797.MzyOK9.rst +++ /dev/null @@ -1 +0,0 @@ -Fix default executable used by the multiprocessing module diff --git a/Misc/NEWS.d/next/Windows/2019-01-25-12-46-36.bpo-35811.2hU-mm.rst b/Misc/NEWS.d/next/Windows/2019-01-25-12-46-36.bpo-35811.2hU-mm.rst deleted file mode 100644 index 3207c955bff4..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-01-25-12-46-36.bpo-35811.2hU-mm.rst +++ /dev/null @@ -1 +0,0 @@ -Avoid propagating venv settings when launching via py.exe diff --git a/Misc/NEWS.d/next/Windows/2019-01-29-15-44-46.bpo-35854.Ww3z19.rst b/Misc/NEWS.d/next/Windows/2019-01-29-15-44-46.bpo-35854.Ww3z19.rst deleted file mode 100644 index a1c761458d35..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-01-29-15-44-46.bpo-35854.Ww3z19.rst +++ /dev/null @@ -1 +0,0 @@ -Fix EnvBuilder and --symlinks in venv on Windows diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst b/Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst deleted file mode 100644 index bf2bf113e24c..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-02-02-11-02-44.bpo-32560.I5WAGW.rst +++ /dev/null @@ -1,2 +0,0 @@ -The ``py`` launcher now forwards its ``STARTUPINFO`` structure to child -processes. diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-22-12-23.bpo-35890.ccIjHH.rst b/Misc/NEWS.d/next/Windows/2019-02-02-22-12-23.bpo-35890.ccIjHH.rst deleted file mode 100644 index 6bf6084ecc5e..000000000000 --- a/Misc/NEWS.d/next/Windows/2019-02-02-22-12-23.bpo-35890.ccIjHH.rst +++ /dev/null @@ -1 +0,0 @@ -Fix API calling consistency of GetVersionEx and wcstok. \ No newline at end of file diff --git a/Misc/NEWS.d/next/macOS/2017-11-01-16-53-12.bpo-31903.K6jCVG.rst b/Misc/NEWS.d/next/macOS/2017-11-01-16-53-12.bpo-31903.K6jCVG.rst deleted file mode 100644 index 3788112cd730..000000000000 --- a/Misc/NEWS.d/next/macOS/2017-11-01-16-53-12.bpo-31903.K6jCVG.rst +++ /dev/null @@ -1,2 +0,0 @@ -In :mod:`_scproxy`, drop the GIL when calling into ``SystemConfiguration`` to avoid -deadlocks. diff --git a/Misc/NEWS.d/next/macOS/2018-02-27-17-33-15.bpo-32901.hQu0w3.rst b/Misc/NEWS.d/next/macOS/2018-02-27-17-33-15.bpo-32901.hQu0w3.rst deleted file mode 100644 index 73e69a9b7119..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-02-27-17-33-15.bpo-32901.hQu0w3.rst +++ /dev/null @@ -1 +0,0 @@ -Update macOS 10.9+ installer to Tcl/Tk 8.6.8. diff --git a/Misc/NEWS.d/next/macOS/2018-03-29-06-56-12.bpo-32726.urS9uX.rst b/Misc/NEWS.d/next/macOS/2018-03-29-06-56-12.bpo-32726.urS9uX.rst deleted file mode 100644 index 9b769a831e58..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-03-29-06-56-12.bpo-32726.urS9uX.rst +++ /dev/null @@ -1,5 +0,0 @@ -Build and link with private copy of Tcl/Tk 8.6 for the macOS 10.6+ -installer. The 10.9+ installer variant already does this. This means that -the Python 3.7 provided by the python.org macOS installers no longer need or -use any external versions of Tcl/Tk, either system-provided or -user-installed, such as ActiveTcl. diff --git a/Misc/NEWS.d/next/macOS/2018-04-07-00-51-34.bpo-33184.3j208P.rst b/Misc/NEWS.d/next/macOS/2018-04-07-00-51-34.bpo-33184.3j208P.rst deleted file mode 100644 index 03308ed6a72b..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-04-07-00-51-34.bpo-33184.3j208P.rst +++ /dev/null @@ -1 +0,0 @@ -Update macOS installer build to use OpenSSL 1.1.0h. diff --git a/Misc/NEWS.d/next/macOS/2018-05-16-13-25-58.bpo-13631.UIjDyY.rst b/Misc/NEWS.d/next/macOS/2018-05-16-13-25-58.bpo-13631.UIjDyY.rst deleted file mode 100644 index d9d505e937a8..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-05-16-13-25-58.bpo-13631.UIjDyY.rst +++ /dev/null @@ -1,2 +0,0 @@ -The .editrc file in user's home directory is now processed correctly during -the readline initialization through editline emulation on macOS. diff --git a/Misc/NEWS.d/next/macOS/2018-07-31-09-51-01.bpo-33635.KiscE-.rst b/Misc/NEWS.d/next/macOS/2018-07-31-09-51-01.bpo-33635.KiscE-.rst deleted file mode 100644 index 90d9ab6d4202..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-07-31-09-51-01.bpo-33635.KiscE-.rst +++ /dev/null @@ -1,5 +0,0 @@ -In macOS stat on some file descriptors (/dev/fd/3 f.e) will result in bad -file descriptor OSError. Guard against this exception was added in is_dir, -is_file and similar methods. DirEntry.is_dir can also throw this exception -so _RecursiveWildcardSelector._iterate_directories was also extended with -the same error ignoring pattern. diff --git a/Misc/NEWS.d/next/macOS/2018-09-11-08-30-55.bpo-34405.UzIi0n.rst b/Misc/NEWS.d/next/macOS/2018-09-11-08-30-55.bpo-34405.UzIi0n.rst deleted file mode 100644 index 3bc9c4c2a037..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-09-11-08-30-55.bpo-34405.UzIi0n.rst +++ /dev/null @@ -1 +0,0 @@ -Update to OpenSSL 1.1.0i for macOS installer builds. diff --git a/Misc/NEWS.d/next/macOS/2018-10-17-14-36-08.bpo-24658.Naddgx.rst b/Misc/NEWS.d/next/macOS/2018-10-17-14-36-08.bpo-24658.Naddgx.rst deleted file mode 100644 index ff660a125c64..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-10-17-14-36-08.bpo-24658.Naddgx.rst +++ /dev/null @@ -1 +0,0 @@ -On macOS, fix reading from and writing into a file with a size larger than 2 GiB. \ No newline at end of file diff --git a/Misc/NEWS.d/next/macOS/2018-10-18-23-54-55.bpo-35025.X4LFJg.rst b/Misc/NEWS.d/next/macOS/2018-10-18-23-54-55.bpo-35025.X4LFJg.rst deleted file mode 100644 index aebd1af9351c..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-10-18-23-54-55.bpo-35025.X4LFJg.rst +++ /dev/null @@ -1,2 +0,0 @@ -Properly guard the use of the ``CLOCK_GETTIME`` et al. macros in ``timemodule`` -on macOS. diff --git a/Misc/NEWS.d/next/macOS/2018-12-09-13-56-49.bpo-35401.n8B7X1.rst b/Misc/NEWS.d/next/macOS/2018-12-09-13-56-49.bpo-35401.n8B7X1.rst deleted file mode 100644 index bfe41bd67ff6..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-12-09-13-56-49.bpo-35401.n8B7X1.rst +++ /dev/null @@ -1 +0,0 @@ -Update macOS installer to use OpenSSL 1.1.0j. diff --git a/Misc/NEWS.d/next/macOS/2018-12-21-18-44-30.bpo-35555.M58_K3.rst b/Misc/NEWS.d/next/macOS/2018-12-21-18-44-30.bpo-35555.M58_K3.rst deleted file mode 100644 index 0939195cadd3..000000000000 --- a/Misc/NEWS.d/next/macOS/2018-12-21-18-44-30.bpo-35555.M58_K3.rst +++ /dev/null @@ -1 +0,0 @@ -Gray out Code Context menu entry when it's not applicable. diff --git a/README.rst b/README.rst index 6a70f6c8eef8..ed8c8fb20381 100644 --- a/README.rst +++ b/README.rst @@ -1,4 +1,4 @@ -This is Python version 3.8.0 alpha 0 +This is Python version 3.8.0 alpha 1 ==================================== .. image:: https://travis-ci.org/python/cpython.svg?branch=master @@ -71,8 +71,8 @@ elsewhere it's just ``python``. If you are running on macOS with the latest updates installed, make sure to install openSSL or some other SSL software along with Homebrew or another package manager. -If issues persist, see https://devguide.python.org/setup/#macos-and-os-x for more -information. +If issues persist, see https://devguide.python.org/setup/#macos-and-os-x for more +information. On macOS, if you have configured Python with ``--enable-framework``, you should use ``make frameworkinstall`` to do the installation. Note that this From webhook-mailer at python.org Mon Feb 4 03:39:39 2019 From: webhook-mailer at python.org (=?utf-8?q?=C5=81ukasz?= Langa) Date: Mon, 04 Feb 2019 08:39:39 -0000 Subject: [Python-checkins] Post 3.8.0a1 Message-ID: https://github.com/python/cpython/commit/ca7d2933a388677cc3bbc621913b479452c0f25a commit: ca7d2933a388677cc3bbc621913b479452c0f25a branch: master author: ?ukasz Langa committer: ?ukasz Langa date: 2019-02-04T09:39:24+01:00 summary: Post 3.8.0a1 files: M Include/patchlevel.h diff --git a/Include/patchlevel.h b/Include/patchlevel.h index 611dea8af4aa..91efd275af52 100644 --- a/Include/patchlevel.h +++ b/Include/patchlevel.h @@ -23,7 +23,7 @@ #define PY_RELEASE_SERIAL 1 /* Version as a string */ -#define PY_VERSION "3.8.0a1" +#define PY_VERSION "3.8.0a1+" /*--end constants--*/ /* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2. From solipsis at pitrou.net Mon Feb 4 04:06:47 2019 From: solipsis at pitrou.net (solipsis at pitrou.net) Date: Mon, 04 Feb 2019 09:06:47 +0000 Subject: [Python-checkins] Daily reference leaks (4243df51fe43): sum=11 Message-ID: <20190204090647.1.0EAD8B6E08BC1350@psf.io> results for 4243df51fe43 on branch "default" -------------------------------------------- test_collections leaked [7, 0, 0] memory blocks, sum=7 test_functools leaked [0, 3, 1] memory blocks, sum=4 Command line was: ['./python', '-m', 'test.regrtest', '-uall', '-R', '3:3:/home/psf-users/antoine/refleaks/reflogmfwNP1', '--timeout', '7200'] From webhook-mailer at python.org Mon Feb 4 10:20:24 2019 From: webhook-mailer at python.org (Steve Dower) Date: Mon, 04 Feb 2019 15:20:24 -0000 Subject: [Python-checkins] bpo-35872 and bpo-35873: Clears __PYVENV_LAUNCHER__ variable (GH-11745) Message-ID: https://github.com/python/cpython/commit/44467e8ea4cea390b0718702291b4cfe8ddd67ed commit: 44467e8ea4cea390b0718702291b4cfe8ddd67ed branch: 3.7 author: Steve Dower committer: GitHub date: 2019-02-04T07:20:19-08:00 summary: bpo-35872 and bpo-35873: Clears __PYVENV_LAUNCHER__ variable (GH-11745) After reading __PYVENV_LAUNCHER__ we now set sys._base_executable value for later use. Make the same changes for macOS to avoid extra platform checks. files: A Misc/NEWS.d/next/Windows/2019-02-02-15-56-50.bpo-35873.UW-qS9.rst A Misc/NEWS.d/next/Windows/2019-02-02-15-57-19.bpo-35872.Bba2n7.rst M Lib/multiprocessing/popen_spawn_win32.py M Lib/multiprocessing/spawn.py M Lib/site.py M Lib/test/test_venv.py M Lib/venv/__init__.py diff --git a/Lib/multiprocessing/popen_spawn_win32.py b/Lib/multiprocessing/popen_spawn_win32.py index 3e42e9c33874..e01953d32b7a 100644 --- a/Lib/multiprocessing/popen_spawn_win32.py +++ b/Lib/multiprocessing/popen_spawn_win32.py @@ -18,6 +18,19 @@ WINEXE = (sys.platform == 'win32' and getattr(sys, 'frozen', False)) WINSERVICE = sys.executable.lower().endswith("pythonservice.exe") + +def _path_eq(p1, p2): + return p1 == p2 or os.path.normcase(p1) == os.path.normcase(p2) + +WINENV = (hasattr(sys, '_base_executable') and + not _path_eq(sys.executable, sys._base_executable)) + + +def _close_handles(*handles): + for handle in handles: + _winapi.CloseHandle(handle) + + # # We define a Popen class similar to the one from subprocess, but # whose constructor takes a process object as its argument. @@ -40,12 +53,23 @@ def __init__(self, process_obj): pipe_handle=rhandle) cmd = ' '.join('"%s"' % x for x in cmd) + python_exe = spawn.get_executable() + + # bpo-35797: When running in a venv, we bypass the redirect + # executor and launch our base Python. + if WINENV and _path_eq(python_exe, sys.executable): + python_exe = sys._base_executable + env = os.environ.copy() + env["__PYVENV_LAUNCHER__"] = sys.executable + else: + env = None + with open(wfd, 'wb', closefd=True) as to_child: # start process try: hp, ht, pid, tid = _winapi.CreateProcess( - spawn.get_executable(), cmd, - None, None, False, 0, None, None, None) + python_exe, cmd, + env, None, False, 0, None, None, None) _winapi.CloseHandle(ht) except: _winapi.CloseHandle(rhandle) diff --git a/Lib/multiprocessing/spawn.py b/Lib/multiprocessing/spawn.py index 693f2fb9d475..6ed459074325 100644 --- a/Lib/multiprocessing/spawn.py +++ b/Lib/multiprocessing/spawn.py @@ -29,19 +29,12 @@ if sys.platform != 'win32': WINEXE = False WINSERVICE = False - _WINENV = False else: WINEXE = getattr(sys, 'frozen', False) WINSERVICE = sys.executable.lower().endswith("pythonservice.exe") - _WINENV = '__PYVENV_LAUNCHER__' in os.environ if WINSERVICE: _python_exe = os.path.join(sys.exec_prefix, 'python.exe') -elif _WINENV: - # bpo-35797: When running in a venv, we need to bypass the redirect - # executor and launch our base Python. - import _winapi - _python_exe = _winapi.GetModuleFileName(0) else: _python_exe = sys.executable diff --git a/Lib/site.py b/Lib/site.py index ffd132b389e1..ad1146332b0a 100644 --- a/Lib/site.py +++ b/Lib/site.py @@ -457,7 +457,14 @@ def venv(known_paths): env = os.environ if sys.platform == 'darwin' and '__PYVENV_LAUNCHER__' in env: - executable = os.environ['__PYVENV_LAUNCHER__'] + executable = sys._base_executable = os.environ['__PYVENV_LAUNCHER__'] + elif sys.platform == 'win32' and '__PYVENV_LAUNCHER__' in env: + executable = sys.executable + import _winapi + sys._base_executable = _winapi.GetModuleFileName(0) + # bpo-35873: Clear the environment variable to avoid it being + # inherited by child processes. + del os.environ['__PYVENV_LAUNCHER__'] else: executable = sys.executable exe_dir, _ = os.path.split(os.path.abspath(executable)) diff --git a/Lib/test/test_venv.py b/Lib/test/test_venv.py index 6096b9df45bf..347544a67722 100644 --- a/Lib/test/test_venv.py +++ b/Lib/test/test_venv.py @@ -52,10 +52,7 @@ def setUp(self): self.bindir = 'bin' self.lib = ('lib', 'python%d.%d' % sys.version_info[:2]) self.include = 'include' - if sys.platform == 'darwin' and '__PYVENV_LAUNCHER__' in os.environ: - executable = os.environ['__PYVENV_LAUNCHER__'] - else: - executable = sys.executable + executable = getattr(sys, '_base_executable', sys.executable) self.exe = os.path.split(executable)[-1] def tearDown(self): @@ -100,11 +97,7 @@ def test_defaults(self): else: self.assertFalse(os.path.exists(p)) data = self.get_text_file_contents('pyvenv.cfg') - if sys.platform == 'darwin' and ('__PYVENV_LAUNCHER__' - in os.environ): - executable = os.environ['__PYVENV_LAUNCHER__'] - else: - executable = sys.executable + executable = getattr(sys, '_base_executable', sys.executable) path = os.path.dirname(executable) self.assertIn('home = %s' % path, data) fn = self.get_env_file(self.bindir, self.exe) diff --git a/Lib/venv/__init__.py b/Lib/venv/__init__.py index 8f9e3138474a..d5ab38958bb2 100644 --- a/Lib/venv/__init__.py +++ b/Lib/venv/__init__.py @@ -106,10 +106,7 @@ def create_if_needed(d): context.prompt = '(%s) ' % prompt create_if_needed(env_dir) env = os.environ - if sys.platform == 'darwin' and '__PYVENV_LAUNCHER__' in env: - executable = os.environ['__PYVENV_LAUNCHER__'] - else: - executable = sys.executable + executable = getattr(sys, '_base_executable', sys.executable) dirname, exename = os.path.split(os.path.abspath(executable)) context.executable = executable context.python_dir = dirname diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-15-56-50.bpo-35873.UW-qS9.rst b/Misc/NEWS.d/next/Windows/2019-02-02-15-56-50.bpo-35873.UW-qS9.rst new file mode 100644 index 000000000000..a9ce777a4bd3 --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2019-02-02-15-56-50.bpo-35873.UW-qS9.rst @@ -0,0 +1 @@ +Prevents venv paths being inherited by child processes diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-15-57-19.bpo-35872.Bba2n7.rst b/Misc/NEWS.d/next/Windows/2019-02-02-15-57-19.bpo-35872.Bba2n7.rst new file mode 100644 index 000000000000..be293c5b5255 --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2019-02-02-15-57-19.bpo-35872.Bba2n7.rst @@ -0,0 +1 @@ +Uses the base Python executable when invoking venv in a virtual environment From webhook-mailer at python.org Mon Feb 4 14:42:10 2019 From: webhook-mailer at python.org (Alexander Belopolsky) Date: Mon, 04 Feb 2019 19:42:10 -0000 Subject: [Python-checkins] bpo-32417: Make timedelta arithmetic respect subclasses (#10902) Message-ID: https://github.com/python/cpython/commit/89427cd0feae25bbc8693abdccfa6a8c81a2689c commit: 89427cd0feae25bbc8693abdccfa6a8c81a2689c branch: master author: Paul Ganssle committer: Alexander Belopolsky date: 2019-02-04T14:42:04-05:00 summary: bpo-32417: Make timedelta arithmetic respect subclasses (#10902) * Make timedelta return subclass types Previously timedelta would always return the `date` and `datetime` types, regardless of what it is added to. This makes it return an object of the type it was added to. * Add tests for timedelta arithmetic on subclasses * Make pure python timedelta return subclass types * Add test for fromtimestamp with tz argument * Add tests for subclass behavior in now * Add news entry. Fixes: bpo-32417 bpo-35364 * More descriptive variable names in tests Addresses Victor's comments files: A Misc/NEWS.d/next/Library/2018-12-04-13-35-36.bpo-32417._Y9SKM.rst M Lib/datetime.py M Lib/test/datetimetester.py M Modules/_datetimemodule.c diff --git a/Lib/datetime.py b/Lib/datetime.py index 4780b6df8f9b..89c32c0b0a63 100644 --- a/Lib/datetime.py +++ b/Lib/datetime.py @@ -1014,7 +1014,7 @@ def __add__(self, other): if isinstance(other, timedelta): o = self.toordinal() + other.days if 0 < o <= _MAXORDINAL: - return date.fromordinal(o) + return type(self).fromordinal(o) raise OverflowError("result out of range") return NotImplemented @@ -2024,10 +2024,10 @@ def __add__(self, other): hour, rem = divmod(delta.seconds, 3600) minute, second = divmod(rem, 60) if 0 < delta.days <= _MAXORDINAL: - return datetime.combine(date.fromordinal(delta.days), - time(hour, minute, second, - delta.microseconds, - tzinfo=self._tzinfo)) + return type(self).combine(date.fromordinal(delta.days), + time(hour, minute, second, + delta.microseconds, + tzinfo=self._tzinfo)) raise OverflowError("result out of range") __radd__ = __add__ diff --git a/Lib/test/datetimetester.py b/Lib/test/datetimetester.py index d729c7efd52f..958b33675c37 100644 --- a/Lib/test/datetimetester.py +++ b/Lib/test/datetimetester.py @@ -820,6 +820,44 @@ def as_hours(self): self.assertEqual(str(t3), str(t4)) self.assertEqual(t4.as_hours(), -1) + def test_subclass_date(self): + class DateSubclass(date): + pass + + d1 = DateSubclass(2018, 1, 5) + td = timedelta(days=1) + + tests = [ + ('add', lambda d, t: d + t, DateSubclass(2018, 1, 6)), + ('radd', lambda d, t: t + d, DateSubclass(2018, 1, 6)), + ('sub', lambda d, t: d - t, DateSubclass(2018, 1, 4)), + ] + + for name, func, expected in tests: + with self.subTest(name): + act = func(d1, td) + self.assertEqual(act, expected) + self.assertIsInstance(act, DateSubclass) + + def test_subclass_datetime(self): + class DateTimeSubclass(datetime): + pass + + d1 = DateTimeSubclass(2018, 1, 5, 12, 30) + td = timedelta(days=1, minutes=30) + + tests = [ + ('add', lambda d, t: d + t, DateTimeSubclass(2018, 1, 6, 13)), + ('radd', lambda d, t: t + d, DateTimeSubclass(2018, 1, 6, 13)), + ('sub', lambda d, t: d - t, DateTimeSubclass(2018, 1, 4, 12)), + ] + + for name, func, expected in tests: + with self.subTest(name): + act = func(d1, td) + self.assertEqual(act, expected) + self.assertIsInstance(act, DateTimeSubclass) + def test_division(self): t = timedelta(hours=1, minutes=24, seconds=19) second = timedelta(seconds=1) @@ -2604,33 +2642,58 @@ def __new__(cls, *args, **kwargs): ts = base_d.timestamp() test_cases = [ - ('fromtimestamp', (ts,)), + ('fromtimestamp', (ts,), base_d), # See https://bugs.python.org/issue32417 - # ('fromtimestamp', (ts, timezone.utc)), - ('utcfromtimestamp', (utc_ts,)), - ('fromisoformat', (d_isoformat,)), - ('strptime', (d_isoformat, '%Y-%m-%dT%H:%M:%S.%f')), - ('combine', (date(*args[0:3]), time(*args[3:]))), + ('fromtimestamp', (ts, timezone.utc), + base_d.astimezone(timezone.utc)), + ('utcfromtimestamp', (utc_ts,), base_d), + ('fromisoformat', (d_isoformat,), base_d), + ('strptime', (d_isoformat, '%Y-%m-%dT%H:%M:%S.%f'), base_d), + ('combine', (date(*args[0:3]), time(*args[3:])), base_d), ] - for constr_name, constr_args in test_cases: + for constr_name, constr_args, expected in test_cases: for base_obj in (DateTimeSubclass, base_d): # Test both the classmethod and method with self.subTest(base_obj_type=type(base_obj), constr_name=constr_name): - constr = getattr(base_obj, constr_name) + constructor = getattr(base_obj, constr_name) - dt = constr(*constr_args) + dt = constructor(*constr_args) # Test that it creates the right subclass self.assertIsInstance(dt, DateTimeSubclass) # Test that it's equal to the base object - self.assertEqual(dt, base_d.replace(tzinfo=None)) + self.assertEqual(dt, expected) # Test that it called the constructor self.assertEqual(dt.extra, 7) + def test_subclass_now(self): + # Test that alternate constructors call the constructor + class DateTimeSubclass(self.theclass): + def __new__(cls, *args, **kwargs): + result = self.theclass.__new__(cls, *args, **kwargs) + result.extra = 7 + + return result + + test_cases = [ + ('now', 'now', {}), + ('utcnow', 'utcnow', {}), + ('now_utc', 'now', {'tz': timezone.utc}), + ('now_fixed', 'now', {'tz': timezone(timedelta(hours=-5), "EST")}), + ] + + for name, meth_name, kwargs in test_cases: + with self.subTest(name): + constr = getattr(DateTimeSubclass, meth_name) + dt = constr(**kwargs) + + self.assertIsInstance(dt, DateTimeSubclass) + self.assertEqual(dt.extra, 7) + def test_fromisoformat_datetime(self): # Test that isoformat() is reversible base_dates = [ diff --git a/Misc/NEWS.d/next/Library/2018-12-04-13-35-36.bpo-32417._Y9SKM.rst b/Misc/NEWS.d/next/Library/2018-12-04-13-35-36.bpo-32417._Y9SKM.rst new file mode 100644 index 000000000000..cfc4fbe2e686 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2018-12-04-13-35-36.bpo-32417._Y9SKM.rst @@ -0,0 +1,6 @@ +Performing arithmetic between :class:`datetime.datetime` subclasses and +:class:`datetime.timedelta` now returns an object of the same type as the +:class:`datetime.datetime` subclass. As a result, +:meth:`datetime.datetime.astimezone` and alternate constructors like +:meth:`datetime.datetime.now` and :meth:`datetime.fromtimestamp` called with +a ``tz`` argument now *also* retain their subclass. diff --git a/Modules/_datetimemodule.c b/Modules/_datetimemodule.c index 7997758908bb..c1557b5e6f49 100644 --- a/Modules/_datetimemodule.c +++ b/Modules/_datetimemodule.c @@ -3004,7 +3004,8 @@ add_date_timedelta(PyDateTime_Date *date, PyDateTime_Delta *delta, int negate) int day = GET_DAY(date) + (negate ? -deltadays : deltadays); if (normalize_date(&year, &month, &day) >= 0) - result = new_date(year, month, day); + result = new_date_subclass_ex(year, month, day, + (PyObject* )Py_TYPE(date)); return result; } @@ -5166,9 +5167,10 @@ add_datetime_timedelta(PyDateTime_DateTime *date, PyDateTime_Delta *delta, return NULL; } - return new_datetime(year, month, day, - hour, minute, second, microsecond, - HASTZINFO(date) ? date->tzinfo : Py_None, 0); + return new_datetime_subclass_ex(year, month, day, + hour, minute, second, microsecond, + HASTZINFO(date) ? date->tzinfo : Py_None, + (PyObject *)Py_TYPE(date)); } static PyObject * From webhook-mailer at python.org Mon Feb 4 19:56:41 2019 From: webhook-mailer at python.org (Barry Warsaw) Date: Tue, 05 Feb 2019 00:56:41 -0000 Subject: [Python-checkins] bpo-35321: Set the spec origin to frozen in frozen modules (#11732) Message-ID: https://github.com/python/cpython/commit/69091cb497b2f0fe7e2789b30b43cf78caf9de9b commit: 69091cb497b2f0fe7e2789b30b43cf78caf9de9b branch: master author: Nina Zakharenko committer: Barry Warsaw date: 2019-02-04T16:56:26-08:00 summary: bpo-35321: Set the spec origin to frozen in frozen modules (#11732) * bpo-35321: Set the spec origin to frozen in frozen modules This fix correctly sets the spec origin to "frozen" for the _frozen_importlib module. Note that the origin was already correctly set in _frozen_importlib_external. * ?? Added by blurb_it. files: A Misc/NEWS.d/next/Library/2019-02-02-01-53-36.bpo-35321.1Y4DU4.rst M Lib/importlib/_bootstrap.py M Lib/test/test_imp.py M Python/importlib.h diff --git a/Lib/importlib/_bootstrap.py b/Lib/importlib/_bootstrap.py index 857583afde26..70b706a36ea8 100644 --- a/Lib/importlib/_bootstrap.py +++ b/Lib/importlib/_bootstrap.py @@ -786,6 +786,8 @@ class FrozenImporter: """ + _ORIGIN = "frozen" + @staticmethod def module_repr(m): """Return repr for the module. @@ -793,12 +795,12 @@ def module_repr(m): The method is deprecated. The import machinery does the job itself. """ - return ''.format(m.__name__) + return ''.format(m.__name__, FrozenImporter._ORIGIN) @classmethod def find_spec(cls, fullname, path=None, target=None): if _imp.is_frozen(fullname): - return spec_from_loader(fullname, cls, origin='frozen') + return spec_from_loader(fullname, cls, origin=cls._ORIGIN) else: return None diff --git a/Lib/test/test_imp.py b/Lib/test/test_imp.py index bb0144b12d41..fe394dc50c56 100644 --- a/Lib/test/test_imp.py +++ b/Lib/test/test_imp.py @@ -332,6 +332,17 @@ class BadSpec: with self.assertRaises(TypeError): create_dynamic(BadSpec()) + def test_issue_35321(self): + # Both _frozen_importlib and _frozen_importlib_external + # should have a spec origin of "frozen" and + # no need to clean up imports in this case. + + import _frozen_importlib_external + self.assertEqual(_frozen_importlib_external.__spec__.origin, "frozen") + + import _frozen_importlib + self.assertEqual(_frozen_importlib.__spec__.origin, "frozen") + def test_source_hash(self): self.assertEqual(_imp.source_hash(42, b'hi'), b'\xc6\xe7Z\r\x03:}\xab') self.assertEqual(_imp.source_hash(43, b'hi'), b'\x85\x9765\xf8\x9a\x8b9') diff --git a/Misc/NEWS.d/next/Library/2019-02-02-01-53-36.bpo-35321.1Y4DU4.rst b/Misc/NEWS.d/next/Library/2019-02-02-01-53-36.bpo-35321.1Y4DU4.rst new file mode 100644 index 000000000000..aa22384d1025 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2019-02-02-01-53-36.bpo-35321.1Y4DU4.rst @@ -0,0 +1 @@ +Set ``__spec__.origin`` of ``_frozen_importlib`` to frozen so that it matches the behavior of ``_frozen_importlib_external``. Patch by Nina Zakharenko. \ No newline at end of file diff --git a/Python/importlib.h b/Python/importlib.h index dd78c0b9d2b9..b5774f83de60 100644 --- a/Python/importlib.h +++ b/Python/importlib.h @@ -784,7 +784,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 110,2,100,3,124,3,95,10,124,6,124,3,95,11,124,7, 124,3,95,12,124,3,83,0,41,4,78,169,1,114,113,0, 0,0,70,84,41,13,114,105,0,0,0,114,106,0,0,0, - 114,1,0,0,0,114,98,0,0,0,114,108,0,0,0,90, + 114,1,0,0,0,114,98,0,0,0,114,108,0,0,0,218, 7,95,79,82,73,71,73,78,218,10,95,95,99,97,99,104, 101,100,95,95,218,4,108,105,115,116,218,8,95,95,112,97, 116,104,95,95,114,112,0,0,0,114,118,0,0,0,114,123, @@ -798,7 +798,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 6,1,8,1,2,1,10,1,14,2,6,1,2,1,10,1, 14,1,10,1,8,1,8,1,2,1,10,1,14,1,12,2, 4,1,2,1,10,1,14,1,10,1,2,1,14,1,16,1, - 10,2,14,1,20,1,6,1,6,1,114,141,0,0,0,70, + 10,2,14,1,20,1,6,1,6,1,114,142,0,0,0,70, 169,1,218,8,111,118,101,114,114,105,100,101,99,2,0,0, 0,1,0,0,0,5,0,0,0,8,0,0,0,67,0,0, 0,115,226,1,0,0,124,2,115,20,116,0,124,1,100,1, @@ -833,17 +833,17 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 116,3,107,10,144,1,114,220,1,0,1,0,1,0,89,0, 110,2,88,0,124,1,83,0,41,7,78,114,1,0,0,0, 114,98,0,0,0,218,11,95,95,112,97,99,107,97,103,101, - 95,95,114,140,0,0,0,114,108,0,0,0,114,138,0,0, + 95,95,114,141,0,0,0,114,108,0,0,0,114,139,0,0, 0,41,21,114,6,0,0,0,114,17,0,0,0,114,1,0, 0,0,114,106,0,0,0,114,109,0,0,0,114,117,0,0, 0,114,126,0,0,0,114,127,0,0,0,218,16,95,78,97, 109,101,115,112,97,99,101,76,111,97,100,101,114,218,7,95, 95,110,101,119,95,95,90,5,95,112,97,116,104,114,108,0, - 0,0,114,98,0,0,0,114,130,0,0,0,114,144,0,0, - 0,114,105,0,0,0,114,140,0,0,0,114,124,0,0,0, - 114,113,0,0,0,114,123,0,0,0,114,138,0,0,0,41, - 5,114,95,0,0,0,114,96,0,0,0,114,143,0,0,0, - 114,109,0,0,0,114,145,0,0,0,114,10,0,0,0,114, + 0,0,114,98,0,0,0,114,130,0,0,0,114,145,0,0, + 0,114,105,0,0,0,114,141,0,0,0,114,124,0,0,0, + 114,113,0,0,0,114,123,0,0,0,114,139,0,0,0,41, + 5,114,95,0,0,0,114,96,0,0,0,114,144,0,0,0, + 114,109,0,0,0,114,146,0,0,0,114,10,0,0,0,114, 10,0,0,0,114,11,0,0,0,218,18,95,105,110,105,116, 95,109,111,100,117,108,101,95,97,116,116,114,115,221,1,0, 0,115,96,0,0,0,0,4,20,1,2,1,12,1,14,1, @@ -852,7 +852,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 20,1,2,1,12,1,14,1,6,2,2,1,10,1,16,1, 6,2,24,1,12,1,2,1,12,1,16,1,6,2,8,1, 24,1,2,1,12,1,16,1,6,2,24,1,12,1,2,1, - 12,1,16,1,6,1,114,147,0,0,0,99,1,0,0,0, + 12,1,16,1,6,1,114,148,0,0,0,99,1,0,0,0, 0,0,0,0,2,0,0,0,3,0,0,0,67,0,0,0, 115,82,0,0,0,100,1,125,1,116,0,124,0,106,1,100, 2,131,2,114,30,124,0,106,1,160,2,124,0,161,1,125, @@ -869,13 +869,13 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 100,117,108,101,40,41,32,109,117,115,116,32,97,108,115,111, 32,100,101,102,105,110,101,32,99,114,101,97,116,101,95,109, 111,100,117,108,101,40,41,41,7,114,4,0,0,0,114,109, - 0,0,0,114,148,0,0,0,114,79,0,0,0,114,18,0, - 0,0,114,17,0,0,0,114,147,0,0,0,169,2,114,95, + 0,0,0,114,149,0,0,0,114,79,0,0,0,114,18,0, + 0,0,114,17,0,0,0,114,148,0,0,0,169,2,114,95, 0,0,0,114,96,0,0,0,114,10,0,0,0,114,10,0, 0,0,114,11,0,0,0,218,16,109,111,100,117,108,101,95, 102,114,111,109,95,115,112,101,99,37,2,0,0,115,18,0, 0,0,0,3,4,1,12,3,14,1,12,1,8,2,8,1, - 10,1,10,1,114,151,0,0,0,99,1,0,0,0,0,0, + 10,1,10,1,114,152,0,0,0,99,1,0,0,0,0,0, 0,0,2,0,0,0,4,0,0,0,67,0,0,0,115,106, 0,0,0,124,0,106,0,100,1,107,8,114,14,100,2,110, 4,124,0,106,0,125,1,124,0,106,1,100,1,107,8,114, @@ -887,7 +887,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 38,82,101,116,117,114,110,32,116,104,101,32,114,101,112,114, 32,116,111,32,117,115,101,32,102,111,114,32,116,104,101,32, 109,111,100,117,108,101,46,78,114,100,0,0,0,114,101,0, - 0,0,114,102,0,0,0,114,103,0,0,0,122,18,60,109, + 0,0,114,102,0,0,0,114,103,0,0,0,250,18,60,109, 111,100,117,108,101,32,123,33,114,125,32,40,123,125,41,62, 41,5,114,17,0,0,0,114,113,0,0,0,114,109,0,0, 0,114,45,0,0,0,114,124,0,0,0,41,2,114,95,0, @@ -917,12 +917,12 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 101,32,123,33,114,125,32,110,111,116,32,105,110,32,115,121, 115,46,109,111,100,117,108,101,115,114,16,0,0,0,78,250, 14,109,105,115,115,105,110,103,32,108,111,97,100,101,114,84, - 114,142,0,0,0,114,149,0,0,0,41,14,114,17,0,0, + 114,143,0,0,0,114,150,0,0,0,41,14,114,17,0,0, 0,114,50,0,0,0,114,15,0,0,0,114,92,0,0,0, 114,34,0,0,0,114,45,0,0,0,114,79,0,0,0,114, - 109,0,0,0,114,117,0,0,0,114,147,0,0,0,114,4, + 109,0,0,0,114,117,0,0,0,114,148,0,0,0,114,4, 0,0,0,218,11,108,111,97,100,95,109,111,100,117,108,101, - 114,149,0,0,0,218,3,112,111,112,41,4,114,95,0,0, + 114,150,0,0,0,218,3,112,111,112,41,4,114,95,0,0, 0,114,96,0,0,0,114,17,0,0,0,218,3,109,115,103, 114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,114, 93,0,0,0,71,2,0,0,115,34,0,0,0,0,2,6, @@ -948,20 +948,20 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 114,22,122,10,124,0,124,1,95,13,87,0,110,22,4,0, 116,8,107,10,144,1,114,20,1,0,1,0,1,0,89,0, 110,2,88,0,124,1,83,0,41,7,78,114,98,0,0,0, - 114,144,0,0,0,114,140,0,0,0,114,128,0,0,0,114, + 114,145,0,0,0,114,141,0,0,0,114,128,0,0,0,114, 22,0,0,0,114,105,0,0,0,41,14,114,109,0,0,0, - 114,153,0,0,0,114,17,0,0,0,114,15,0,0,0,114, - 92,0,0,0,114,154,0,0,0,114,6,0,0,0,114,98, - 0,0,0,114,106,0,0,0,114,1,0,0,0,114,144,0, + 114,155,0,0,0,114,17,0,0,0,114,15,0,0,0,114, + 92,0,0,0,114,156,0,0,0,114,6,0,0,0,114,98, + 0,0,0,114,106,0,0,0,114,1,0,0,0,114,145,0, 0,0,114,4,0,0,0,114,129,0,0,0,114,105,0,0, - 0,114,150,0,0,0,114,10,0,0,0,114,10,0,0,0, + 0,114,151,0,0,0,114,10,0,0,0,114,10,0,0,0, 114,11,0,0,0,218,25,95,108,111,97,100,95,98,97,99, 107,119,97,114,100,95,99,111,109,112,97,116,105,98,108,101, 101,2,0,0,115,54,0,0,0,0,4,2,1,18,1,6, 1,12,1,14,1,12,1,8,3,14,1,12,1,16,1,2, 1,12,1,14,1,6,1,16,1,2,4,8,1,10,1,22, 1,14,1,6,1,18,1,2,1,10,1,16,1,6,1,114, - 156,0,0,0,99,1,0,0,0,0,0,0,0,2,0,0, + 158,0,0,0,99,1,0,0,0,0,0,0,0,2,0,0, 0,11,0,0,0,67,0,0,0,115,220,0,0,0,124,0, 106,0,100,0,107,9,114,30,116,1,124,0,106,0,100,1, 131,2,115,30,116,2,124,0,131,1,83,0,116,3,124,0, @@ -976,21 +976,21 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 116,5,106,6,160,12,124,0,106,7,161,1,125,1,124,1, 116,5,106,6,124,0,106,7,60,0,116,13,100,5,124,0, 106,7,124,0,106,0,131,3,1,0,87,0,53,0,100,6, - 124,0,95,4,88,0,124,1,83,0,41,7,78,114,149,0, - 0,0,84,114,152,0,0,0,114,16,0,0,0,122,18,105, + 124,0,95,4,88,0,124,1,83,0,41,7,78,114,150,0, + 0,0,84,114,154,0,0,0,114,16,0,0,0,122,18,105, 109,112,111,114,116,32,123,33,114,125,32,35,32,123,33,114, - 125,70,41,14,114,109,0,0,0,114,4,0,0,0,114,156, - 0,0,0,114,151,0,0,0,90,13,95,105,110,105,116,105, + 125,70,41,14,114,109,0,0,0,114,4,0,0,0,114,158, + 0,0,0,114,152,0,0,0,90,13,95,105,110,105,116,105, 97,108,105,122,105,110,103,114,15,0,0,0,114,92,0,0, 0,114,17,0,0,0,114,117,0,0,0,114,79,0,0,0, - 114,149,0,0,0,114,63,0,0,0,114,154,0,0,0,114, - 76,0,0,0,114,150,0,0,0,114,10,0,0,0,114,10, + 114,150,0,0,0,114,63,0,0,0,114,156,0,0,0,114, + 76,0,0,0,114,151,0,0,0,114,10,0,0,0,114,10, 0,0,0,114,11,0,0,0,218,14,95,108,111,97,100,95, 117,110,108,111,99,107,101,100,138,2,0,0,115,46,0,0, 0,0,2,10,2,12,1,8,2,8,5,6,1,2,1,12, 1,2,1,10,1,10,1,16,3,16,1,6,1,2,1,14, 1,14,1,6,1,8,5,14,1,12,1,20,2,8,2,114, - 157,0,0,0,99,1,0,0,0,0,0,0,0,1,0,0, + 159,0,0,0,99,1,0,0,0,0,0,0,0,1,0,0, 0,10,0,0,0,67,0,0,0,115,42,0,0,0,116,0, 124,0,106,1,131,1,143,22,1,0,116,2,124,0,131,1, 87,0,2,0,53,0,81,0,82,0,163,0,83,0,81,0, @@ -1007,7 +1007,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 116,32,101,120,105,115,116,105,110,103,32,109,111,100,117,108, 101,32,103,101,116,115,10,32,32,32,32,99,108,111,98,98, 101,114,101,100,46,10,10,32,32,32,32,78,41,3,114,50, - 0,0,0,114,17,0,0,0,114,157,0,0,0,41,1,114, + 0,0,0,114,17,0,0,0,114,159,0,0,0,41,1,114, 95,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11, 0,0,0,114,94,0,0,0,180,2,0,0,115,4,0,0, 0,0,9,12,1,114,94,0,0,0,99,0,0,0,0,0, @@ -1042,7 +1042,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 100,111,101,115,32,116,104,101,32,106,111,98,32,105,116,115, 101,108,102,46,10,10,32,32,32,32,32,32,32,32,122,24, 60,109,111,100,117,108,101,32,123,33,114,125,32,40,98,117, - 105,108,116,45,105,110,41,62,169,2,114,45,0,0,0,114, + 105,108,116,45,105,110,41,62,41,2,114,45,0,0,0,114, 1,0,0,0,41,1,114,96,0,0,0,114,10,0,0,0, 114,10,0,0,0,114,11,0,0,0,114,99,0,0,0,204, 2,0,0,115,2,0,0,0,0,7,122,27,66,117,105,108, @@ -1075,8 +1075,8 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 111,100,32,105,115,32,100,101,112,114,101,99,97,116,101,100, 46,32,32,85,115,101,32,102,105,110,100,95,115,112,101,99, 40,41,32,105,110,115,116,101,97,100,46,10,10,32,32,32, - 32,32,32,32,32,78,41,2,114,165,0,0,0,114,109,0, - 0,0,41,4,114,162,0,0,0,114,81,0,0,0,114,163, + 32,32,32,32,32,78,41,2,114,166,0,0,0,114,109,0, + 0,0,41,4,114,163,0,0,0,114,81,0,0,0,114,164, 0,0,0,114,95,0,0,0,114,10,0,0,0,114,10,0, 0,0,114,11,0,0,0,218,11,102,105,110,100,95,109,111, 100,117,108,101,222,2,0,0,115,4,0,0,0,0,9,12, @@ -1093,7 +1093,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 0,0,114,45,0,0,0,114,67,0,0,0,114,57,0,0, 0,90,14,99,114,101,97,116,101,95,98,117,105,108,116,105, 110,41,2,114,30,0,0,0,114,95,0,0,0,114,10,0, - 0,0,114,10,0,0,0,114,11,0,0,0,114,148,0,0, + 0,0,114,10,0,0,0,114,11,0,0,0,114,149,0,0, 0,234,2,0,0,115,10,0,0,0,0,3,12,1,12,1, 4,255,6,2,122,29,66,117,105,108,116,105,110,73,109,112, 111,114,116,101,114,46,99,114,101,97,116,101,95,109,111,100, @@ -1104,7 +1104,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 32,109,111,100,117,108,101,78,41,3,114,67,0,0,0,114, 57,0,0,0,90,12,101,120,101,99,95,98,117,105,108,116, 105,110,41,2,114,30,0,0,0,114,96,0,0,0,114,10, - 0,0,0,114,10,0,0,0,114,11,0,0,0,114,149,0, + 0,0,0,114,10,0,0,0,114,11,0,0,0,114,150,0, 0,0,242,2,0,0,115,2,0,0,0,0,3,122,27,66, 117,105,108,116,105,110,73,109,112,111,114,116,101,114,46,101, 120,101,99,95,109,111,100,117,108,101,99,2,0,0,0,0, @@ -1113,7 +1113,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 114,110,32,78,111,110,101,32,97,115,32,98,117,105,108,116, 45,105,110,32,109,111,100,117,108,101,115,32,100,111,32,110, 111,116,32,104,97,118,101,32,99,111,100,101,32,111,98,106, - 101,99,116,115,46,78,114,10,0,0,0,169,2,114,162,0, + 101,99,116,115,46,78,114,10,0,0,0,169,2,114,163,0, 0,0,114,81,0,0,0,114,10,0,0,0,114,10,0,0, 0,114,11,0,0,0,218,8,103,101,116,95,99,111,100,101, 247,2,0,0,115,2,0,0,0,0,4,122,24,66,117,105, @@ -1124,7 +1124,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 110,101,32,97,115,32,98,117,105,108,116,45,105,110,32,109, 111,100,117,108,101,115,32,100,111,32,110,111,116,32,104,97, 118,101,32,115,111,117,114,99,101,32,99,111,100,101,46,78, - 114,10,0,0,0,114,167,0,0,0,114,10,0,0,0,114, + 114,10,0,0,0,114,168,0,0,0,114,10,0,0,0,114, 10,0,0,0,114,11,0,0,0,218,10,103,101,116,95,115, 111,117,114,99,101,253,2,0,0,115,2,0,0,0,0,4, 122,26,66,117,105,108,116,105,110,73,109,112,111,114,116,101, @@ -1134,7 +1134,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 116,117,114,110,32,70,97,108,115,101,32,97,115,32,98,117, 105,108,116,45,105,110,32,109,111,100,117,108,101,115,32,97, 114,101,32,110,101,118,101,114,32,112,97,99,107,97,103,101, - 115,46,70,114,10,0,0,0,114,167,0,0,0,114,10,0, + 115,46,70,114,10,0,0,0,114,168,0,0,0,114,10,0, 0,0,114,10,0,0,0,114,11,0,0,0,114,115,0,0, 0,3,3,0,0,115,2,0,0,0,0,4,122,26,66,117, 105,108,116,105,110,73,109,112,111,114,116,101,114,46,105,115, @@ -1142,627 +1142,628 @@ const unsigned char _Py_M__importlib_bootstrap[] = { 17,114,1,0,0,0,114,0,0,0,0,114,2,0,0,0, 114,3,0,0,0,218,12,115,116,97,116,105,99,109,101,116, 104,111,100,114,99,0,0,0,218,11,99,108,97,115,115,109, - 101,116,104,111,100,114,165,0,0,0,114,166,0,0,0,114, - 148,0,0,0,114,149,0,0,0,114,86,0,0,0,114,168, - 0,0,0,114,169,0,0,0,114,115,0,0,0,114,97,0, - 0,0,114,153,0,0,0,114,10,0,0,0,114,10,0,0, - 0,114,10,0,0,0,114,11,0,0,0,114,158,0,0,0, + 101,116,104,111,100,114,166,0,0,0,114,167,0,0,0,114, + 149,0,0,0,114,150,0,0,0,114,86,0,0,0,114,169, + 0,0,0,114,170,0,0,0,114,115,0,0,0,114,97,0, + 0,0,114,155,0,0,0,114,10,0,0,0,114,10,0,0, + 0,114,10,0,0,0,114,11,0,0,0,114,160,0,0,0, 195,2,0,0,115,42,0,0,0,8,2,4,7,2,1,10, 8,2,1,12,8,2,1,12,11,2,1,10,7,2,1,10, 4,2,1,2,1,12,4,2,1,2,1,12,4,2,1,2, - 1,12,4,114,158,0,0,0,99,0,0,0,0,0,0,0, - 0,0,0,0,0,4,0,0,0,64,0,0,0,115,140,0, - 0,0,101,0,90,1,100,0,90,2,100,1,90,3,101,4, - 100,2,100,3,132,0,131,1,90,5,101,6,100,21,100,5, - 100,6,132,1,131,1,90,7,101,6,100,22,100,7,100,8, - 132,1,131,1,90,8,101,6,100,9,100,10,132,0,131,1, - 90,9,101,4,100,11,100,12,132,0,131,1,90,10,101,6, - 100,13,100,14,132,0,131,1,90,11,101,6,101,12,100,15, - 100,16,132,0,131,1,131,1,90,13,101,6,101,12,100,17, - 100,18,132,0,131,1,131,1,90,14,101,6,101,12,100,19, - 100,20,132,0,131,1,131,1,90,15,100,4,83,0,41,23, - 218,14,70,114,111,122,101,110,73,109,112,111,114,116,101,114, - 122,142,77,101,116,97,32,112,97,116,104,32,105,109,112,111, - 114,116,32,102,111,114,32,102,114,111,122,101,110,32,109,111, - 100,117,108,101,115,46,10,10,32,32,32,32,65,108,108,32, - 109,101,116,104,111,100,115,32,97,114,101,32,101,105,116,104, - 101,114,32,99,108,97,115,115,32,111,114,32,115,116,97,116, - 105,99,32,109,101,116,104,111,100,115,32,116,111,32,97,118, - 111,105,100,32,116,104,101,32,110,101,101,100,32,116,111,10, - 32,32,32,32,105,110,115,116,97,110,116,105,97,116,101,32, - 116,104,101,32,99,108,97,115,115,46,10,10,32,32,32,32, - 99,1,0,0,0,0,0,0,0,1,0,0,0,3,0,0, - 0,67,0,0,0,115,12,0,0,0,100,1,160,0,124,0, - 106,1,161,1,83,0,41,2,114,159,0,0,0,122,22,60, - 109,111,100,117,108,101,32,123,33,114,125,32,40,102,114,111, - 122,101,110,41,62,114,160,0,0,0,41,1,218,1,109,114, - 10,0,0,0,114,10,0,0,0,114,11,0,0,0,114,99, - 0,0,0,21,3,0,0,115,2,0,0,0,0,7,122,26, - 70,114,111,122,101,110,73,109,112,111,114,116,101,114,46,109, - 111,100,117,108,101,95,114,101,112,114,78,99,4,0,0,0, - 0,0,0,0,4,0,0,0,5,0,0,0,67,0,0,0, - 115,32,0,0,0,116,0,160,1,124,1,161,1,114,24,116, - 2,124,1,124,0,100,1,100,2,141,3,83,0,100,0,83, - 0,100,0,83,0,41,3,78,90,6,102,114,111,122,101,110, - 114,137,0,0,0,41,3,114,57,0,0,0,114,88,0,0, - 0,114,91,0,0,0,114,161,0,0,0,114,10,0,0,0, - 114,10,0,0,0,114,11,0,0,0,114,165,0,0,0,30, - 3,0,0,115,6,0,0,0,0,2,10,1,14,2,122,24, - 70,114,111,122,101,110,73,109,112,111,114,116,101,114,46,102, - 105,110,100,95,115,112,101,99,99,3,0,0,0,0,0,0, - 0,3,0,0,0,3,0,0,0,67,0,0,0,115,18,0, - 0,0,116,0,160,1,124,1,161,1,114,14,124,0,83,0, - 100,1,83,0,41,2,122,93,70,105,110,100,32,97,32,102, - 114,111,122,101,110,32,109,111,100,117,108,101,46,10,10,32, - 32,32,32,32,32,32,32,84,104,105,115,32,109,101,116,104, - 111,100,32,105,115,32,100,101,112,114,101,99,97,116,101,100, - 46,32,32,85,115,101,32,102,105,110,100,95,115,112,101,99, - 40,41,32,105,110,115,116,101,97,100,46,10,10,32,32,32, - 32,32,32,32,32,78,41,2,114,57,0,0,0,114,88,0, - 0,0,41,3,114,162,0,0,0,114,81,0,0,0,114,163, - 0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,0, - 0,0,114,166,0,0,0,37,3,0,0,115,2,0,0,0, - 0,7,122,26,70,114,111,122,101,110,73,109,112,111,114,116, - 101,114,46,102,105,110,100,95,109,111,100,117,108,101,99,2, - 0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,67, - 0,0,0,115,4,0,0,0,100,1,83,0,41,2,122,42, - 85,115,101,32,100,101,102,97,117,108,116,32,115,101,109,97, - 110,116,105,99,115,32,102,111,114,32,109,111,100,117,108,101, - 32,99,114,101,97,116,105,111,110,46,78,114,10,0,0,0, - 41,2,114,162,0,0,0,114,95,0,0,0,114,10,0,0, - 0,114,10,0,0,0,114,11,0,0,0,114,148,0,0,0, - 46,3,0,0,115,2,0,0,0,0,2,122,28,70,114,111, - 122,101,110,73,109,112,111,114,116,101,114,46,99,114,101,97, - 116,101,95,109,111,100,117,108,101,99,1,0,0,0,0,0, - 0,0,3,0,0,0,4,0,0,0,67,0,0,0,115,64, - 0,0,0,124,0,106,0,106,1,125,1,116,2,160,3,124, - 1,161,1,115,36,116,4,100,1,160,5,124,1,161,1,124, - 1,100,2,141,2,130,1,116,6,116,2,106,7,124,1,131, - 2,125,2,116,8,124,2,124,0,106,9,131,2,1,0,100, - 0,83,0,114,87,0,0,0,41,10,114,105,0,0,0,114, - 17,0,0,0,114,57,0,0,0,114,88,0,0,0,114,79, - 0,0,0,114,45,0,0,0,114,67,0,0,0,218,17,103, - 101,116,95,102,114,111,122,101,110,95,111,98,106,101,99,116, - 218,4,101,120,101,99,114,7,0,0,0,41,3,114,96,0, - 0,0,114,17,0,0,0,218,4,99,111,100,101,114,10,0, - 0,0,114,10,0,0,0,114,11,0,0,0,114,149,0,0, - 0,50,3,0,0,115,14,0,0,0,0,2,8,1,10,1, - 10,1,2,255,6,2,12,1,122,26,70,114,111,122,101,110, - 73,109,112,111,114,116,101,114,46,101,120,101,99,95,109,111, - 100,117,108,101,99,2,0,0,0,0,0,0,0,2,0,0, - 0,3,0,0,0,67,0,0,0,115,10,0,0,0,116,0, - 124,0,124,1,131,2,83,0,41,1,122,95,76,111,97,100, - 32,97,32,102,114,111,122,101,110,32,109,111,100,117,108,101, - 46,10,10,32,32,32,32,32,32,32,32,84,104,105,115,32, - 109,101,116,104,111,100,32,105,115,32,100,101,112,114,101,99, - 97,116,101,100,46,32,32,85,115,101,32,101,120,101,99,95, - 109,111,100,117,108,101,40,41,32,105,110,115,116,101,97,100, - 46,10,10,32,32,32,32,32,32,32,32,41,1,114,97,0, - 0,0,114,167,0,0,0,114,10,0,0,0,114,10,0,0, - 0,114,11,0,0,0,114,153,0,0,0,59,3,0,0,115, - 2,0,0,0,0,7,122,26,70,114,111,122,101,110,73,109, - 112,111,114,116,101,114,46,108,111,97,100,95,109,111,100,117, - 108,101,99,2,0,0,0,0,0,0,0,2,0,0,0,3, - 0,0,0,67,0,0,0,115,10,0,0,0,116,0,160,1, - 124,1,161,1,83,0,41,1,122,45,82,101,116,117,114,110, - 32,116,104,101,32,99,111,100,101,32,111,98,106,101,99,116, - 32,102,111,114,32,116,104,101,32,102,114,111,122,101,110,32, - 109,111,100,117,108,101,46,41,2,114,57,0,0,0,114,174, - 0,0,0,114,167,0,0,0,114,10,0,0,0,114,10,0, - 0,0,114,11,0,0,0,114,168,0,0,0,68,3,0,0, - 115,2,0,0,0,0,4,122,23,70,114,111,122,101,110,73, - 109,112,111,114,116,101,114,46,103,101,116,95,99,111,100,101, - 99,2,0,0,0,0,0,0,0,2,0,0,0,1,0,0, - 0,67,0,0,0,115,4,0,0,0,100,1,83,0,41,2, - 122,54,82,101,116,117,114,110,32,78,111,110,101,32,97,115, - 32,102,114,111,122,101,110,32,109,111,100,117,108,101,115,32, - 100,111,32,110,111,116,32,104,97,118,101,32,115,111,117,114, - 99,101,32,99,111,100,101,46,78,114,10,0,0,0,114,167, - 0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,0, - 0,0,114,169,0,0,0,74,3,0,0,115,2,0,0,0, - 0,4,122,25,70,114,111,122,101,110,73,109,112,111,114,116, - 101,114,46,103,101,116,95,115,111,117,114,99,101,99,2,0, - 0,0,0,0,0,0,2,0,0,0,3,0,0,0,67,0, - 0,0,115,10,0,0,0,116,0,160,1,124,1,161,1,83, - 0,41,1,122,46,82,101,116,117,114,110,32,84,114,117,101, - 32,105,102,32,116,104,101,32,102,114,111,122,101,110,32,109, - 111,100,117,108,101,32,105,115,32,97,32,112,97,99,107,97, - 103,101,46,41,2,114,57,0,0,0,90,17,105,115,95,102, - 114,111,122,101,110,95,112,97,99,107,97,103,101,114,167,0, - 0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,0, - 0,114,115,0,0,0,80,3,0,0,115,2,0,0,0,0, - 4,122,25,70,114,111,122,101,110,73,109,112,111,114,116,101, - 114,46,105,115,95,112,97,99,107,97,103,101,41,2,78,78, - 41,1,78,41,16,114,1,0,0,0,114,0,0,0,0,114, - 2,0,0,0,114,3,0,0,0,114,170,0,0,0,114,99, - 0,0,0,114,171,0,0,0,114,165,0,0,0,114,166,0, - 0,0,114,148,0,0,0,114,149,0,0,0,114,153,0,0, - 0,114,90,0,0,0,114,168,0,0,0,114,169,0,0,0, - 114,115,0,0,0,114,10,0,0,0,114,10,0,0,0,114, - 10,0,0,0,114,11,0,0,0,114,172,0,0,0,12,3, - 0,0,115,44,0,0,0,8,2,4,7,2,1,10,8,2, - 1,12,6,2,1,12,8,2,1,10,3,2,1,10,8,2, - 1,10,8,2,1,2,1,12,4,2,1,2,1,12,4,2, - 1,2,1,114,172,0,0,0,99,0,0,0,0,0,0,0, - 0,0,0,0,0,2,0,0,0,64,0,0,0,115,32,0, + 1,12,4,114,160,0,0,0,99,0,0,0,0,0,0,0, + 0,0,0,0,0,4,0,0,0,64,0,0,0,115,144,0, 0,0,101,0,90,1,100,0,90,2,100,1,90,3,100,2, - 100,3,132,0,90,4,100,4,100,5,132,0,90,5,100,6, - 83,0,41,7,218,18,95,73,109,112,111,114,116,76,111,99, - 107,67,111,110,116,101,120,116,122,36,67,111,110,116,101,120, - 116,32,109,97,110,97,103,101,114,32,102,111,114,32,116,104, - 101,32,105,109,112,111,114,116,32,108,111,99,107,46,99,1, - 0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,67, - 0,0,0,115,12,0,0,0,116,0,160,1,161,0,1,0, - 100,1,83,0,41,2,122,24,65,99,113,117,105,114,101,32, - 116,104,101,32,105,109,112,111,114,116,32,108,111,99,107,46, - 78,41,2,114,57,0,0,0,114,58,0,0,0,114,47,0, - 0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,0, - 0,114,54,0,0,0,93,3,0,0,115,2,0,0,0,0, - 2,122,28,95,73,109,112,111,114,116,76,111,99,107,67,111, - 110,116,101,120,116,46,95,95,101,110,116,101,114,95,95,99, - 4,0,0,0,0,0,0,0,4,0,0,0,2,0,0,0, - 67,0,0,0,115,12,0,0,0,116,0,160,1,161,0,1, - 0,100,1,83,0,41,2,122,60,82,101,108,101,97,115,101, - 32,116,104,101,32,105,109,112,111,114,116,32,108,111,99,107, - 32,114,101,103,97,114,100,108,101,115,115,32,111,102,32,97, - 110,121,32,114,97,105,115,101,100,32,101,120,99,101,112,116, - 105,111,110,115,46,78,41,2,114,57,0,0,0,114,60,0, - 0,0,41,4,114,30,0,0,0,90,8,101,120,99,95,116, - 121,112,101,90,9,101,120,99,95,118,97,108,117,101,90,13, - 101,120,99,95,116,114,97,99,101,98,97,99,107,114,10,0, - 0,0,114,10,0,0,0,114,11,0,0,0,114,56,0,0, - 0,97,3,0,0,115,2,0,0,0,0,2,122,27,95,73, - 109,112,111,114,116,76,111,99,107,67,111,110,116,101,120,116, - 46,95,95,101,120,105,116,95,95,78,41,6,114,1,0,0, - 0,114,0,0,0,0,114,2,0,0,0,114,3,0,0,0, - 114,54,0,0,0,114,56,0,0,0,114,10,0,0,0,114, - 10,0,0,0,114,10,0,0,0,114,11,0,0,0,114,177, - 0,0,0,89,3,0,0,115,6,0,0,0,8,2,4,2, - 8,4,114,177,0,0,0,99,3,0,0,0,0,0,0,0, - 5,0,0,0,5,0,0,0,67,0,0,0,115,64,0,0, - 0,124,1,160,0,100,1,124,2,100,2,24,0,161,2,125, - 3,116,1,124,3,131,1,124,2,107,0,114,36,116,2,100, - 3,131,1,130,1,124,3,100,4,25,0,125,4,124,0,114, - 60,100,5,160,3,124,4,124,0,161,2,83,0,124,4,83, - 0,41,6,122,50,82,101,115,111,108,118,101,32,97,32,114, - 101,108,97,116,105,118,101,32,109,111,100,117,108,101,32,110, - 97,109,101,32,116,111,32,97,110,32,97,98,115,111,108,117, - 116,101,32,111,110,101,46,114,128,0,0,0,114,37,0,0, - 0,122,50,97,116,116,101,109,112,116,101,100,32,114,101,108, - 97,116,105,118,101,32,105,109,112,111,114,116,32,98,101,121, - 111,110,100,32,116,111,112,45,108,101,118,101,108,32,112,97, - 99,107,97,103,101,114,22,0,0,0,250,5,123,125,46,123, - 125,41,4,218,6,114,115,112,108,105,116,218,3,108,101,110, - 218,10,86,97,108,117,101,69,114,114,111,114,114,45,0,0, - 0,41,5,114,17,0,0,0,218,7,112,97,99,107,97,103, - 101,218,5,108,101,118,101,108,90,4,98,105,116,115,90,4, - 98,97,115,101,114,10,0,0,0,114,10,0,0,0,114,11, - 0,0,0,218,13,95,114,101,115,111,108,118,101,95,110,97, - 109,101,102,3,0,0,115,10,0,0,0,0,2,16,1,12, - 1,8,1,8,1,114,184,0,0,0,99,3,0,0,0,0, - 0,0,0,4,0,0,0,4,0,0,0,67,0,0,0,115, - 34,0,0,0,124,0,160,0,124,1,124,2,161,2,125,3, - 124,3,100,0,107,8,114,24,100,0,83,0,116,1,124,1, - 124,3,131,2,83,0,114,13,0,0,0,41,2,114,166,0, - 0,0,114,91,0,0,0,41,4,218,6,102,105,110,100,101, - 114,114,17,0,0,0,114,163,0,0,0,114,109,0,0,0, - 114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,218, - 17,95,102,105,110,100,95,115,112,101,99,95,108,101,103,97, - 99,121,111,3,0,0,115,8,0,0,0,0,3,12,1,8, - 1,4,1,114,186,0,0,0,99,3,0,0,0,0,0,0, - 0,10,0,0,0,10,0,0,0,67,0,0,0,115,12,1, - 0,0,116,0,106,1,125,3,124,3,100,1,107,8,114,22, - 116,2,100,2,131,1,130,1,124,3,115,38,116,3,160,4, - 100,3,116,5,161,2,1,0,124,0,116,0,106,6,107,6, - 125,4,124,3,68,0,93,210,125,5,116,7,131,0,143,84, - 1,0,122,10,124,5,106,8,125,6,87,0,110,54,4,0, - 116,9,107,10,114,128,1,0,1,0,1,0,116,10,124,5, - 124,0,124,1,131,3,125,7,124,7,100,1,107,8,114,124, - 89,0,87,0,53,0,81,0,82,0,163,0,113,52,89,0, - 110,14,88,0,124,6,124,0,124,1,124,2,131,3,125,7, - 87,0,53,0,81,0,82,0,88,0,124,7,100,1,107,9, - 114,52,124,4,144,0,115,254,124,0,116,0,106,6,107,6, - 144,0,114,254,116,0,106,6,124,0,25,0,125,8,122,10, - 124,8,106,11,125,9,87,0,110,28,4,0,116,9,107,10, - 114,226,1,0,1,0,1,0,124,7,6,0,89,0,2,0, - 1,0,83,0,88,0,124,9,100,1,107,8,114,244,124,7, - 2,0,1,0,83,0,124,9,2,0,1,0,83,0,113,52, - 124,7,2,0,1,0,83,0,113,52,100,1,83,0,41,4, - 122,21,70,105,110,100,32,97,32,109,111,100,117,108,101,39, - 115,32,115,112,101,99,46,78,122,53,115,121,115,46,109,101, - 116,97,95,112,97,116,104,32,105,115,32,78,111,110,101,44, - 32,80,121,116,104,111,110,32,105,115,32,108,105,107,101,108, - 121,32,115,104,117,116,116,105,110,103,32,100,111,119,110,122, - 22,115,121,115,46,109,101,116,97,95,112,97,116,104,32,105, - 115,32,101,109,112,116,121,41,12,114,15,0,0,0,218,9, - 109,101,116,97,95,112,97,116,104,114,79,0,0,0,218,9, - 95,119,97,114,110,105,110,103,115,218,4,119,97,114,110,218, - 13,73,109,112,111,114,116,87,97,114,110,105,110,103,114,92, - 0,0,0,114,177,0,0,0,114,165,0,0,0,114,106,0, - 0,0,114,186,0,0,0,114,105,0,0,0,41,10,114,17, - 0,0,0,114,163,0,0,0,114,164,0,0,0,114,187,0, - 0,0,90,9,105,115,95,114,101,108,111,97,100,114,185,0, - 0,0,114,165,0,0,0,114,95,0,0,0,114,96,0,0, - 0,114,105,0,0,0,114,10,0,0,0,114,10,0,0,0, - 114,11,0,0,0,218,10,95,102,105,110,100,95,115,112,101, - 99,120,3,0,0,115,54,0,0,0,0,2,6,1,8,2, - 8,3,4,1,12,5,10,1,8,1,8,1,2,1,10,1, - 14,1,12,1,8,1,20,2,22,1,8,2,18,1,10,1, - 2,1,10,1,14,4,14,2,8,1,8,2,10,2,10,2, - 114,191,0,0,0,99,3,0,0,0,0,0,0,0,3,0, - 0,0,5,0,0,0,67,0,0,0,115,108,0,0,0,116, - 0,124,0,116,1,131,2,115,28,116,2,100,1,160,3,116, - 4,124,0,131,1,161,1,131,1,130,1,124,2,100,2,107, - 0,114,44,116,5,100,3,131,1,130,1,124,2,100,2,107, - 4,114,84,116,0,124,1,116,1,131,2,115,72,116,2,100, - 4,131,1,130,1,110,12,124,1,115,84,116,6,100,5,131, - 1,130,1,124,0,115,104,124,2,100,2,107,2,114,104,116, - 5,100,6,131,1,130,1,100,7,83,0,41,8,122,28,86, - 101,114,105,102,121,32,97,114,103,117,109,101,110,116,115,32, - 97,114,101,32,34,115,97,110,101,34,46,122,31,109,111,100, - 117,108,101,32,110,97,109,101,32,109,117,115,116,32,98,101, - 32,115,116,114,44,32,110,111,116,32,123,125,114,22,0,0, - 0,122,18,108,101,118,101,108,32,109,117,115,116,32,98,101, - 32,62,61,32,48,122,31,95,95,112,97,99,107,97,103,101, - 95,95,32,110,111,116,32,115,101,116,32,116,111,32,97,32, - 115,116,114,105,110,103,122,54,97,116,116,101,109,112,116,101, - 100,32,114,101,108,97,116,105,118,101,32,105,109,112,111,114, - 116,32,119,105,116,104,32,110,111,32,107,110,111,119,110,32, - 112,97,114,101,110,116,32,112,97,99,107,97,103,101,122,17, - 69,109,112,116,121,32,109,111,100,117,108,101,32,110,97,109, - 101,78,41,7,218,10,105,115,105,110,115,116,97,110,99,101, - 218,3,115,116,114,218,9,84,121,112,101,69,114,114,111,114, - 114,45,0,0,0,114,14,0,0,0,114,181,0,0,0,114, - 79,0,0,0,169,3,114,17,0,0,0,114,182,0,0,0, - 114,183,0,0,0,114,10,0,0,0,114,10,0,0,0,114, - 11,0,0,0,218,13,95,115,97,110,105,116,121,95,99,104, - 101,99,107,167,3,0,0,115,22,0,0,0,0,2,10,1, - 18,1,8,1,8,1,8,1,10,1,10,1,4,1,8,2, - 12,1,114,196,0,0,0,122,16,78,111,32,109,111,100,117, - 108,101,32,110,97,109,101,100,32,122,4,123,33,114,125,99, - 2,0,0,0,0,0,0,0,8,0,0,0,8,0,0,0, - 67,0,0,0,115,220,0,0,0,100,0,125,2,124,0,160, - 0,100,1,161,1,100,2,25,0,125,3,124,3,114,134,124, - 3,116,1,106,2,107,7,114,42,116,3,124,1,124,3,131, - 2,1,0,124,0,116,1,106,2,107,6,114,62,116,1,106, - 2,124,0,25,0,83,0,116,1,106,2,124,3,25,0,125, - 4,122,10,124,4,106,4,125,2,87,0,110,50,4,0,116, - 5,107,10,114,132,1,0,1,0,1,0,116,6,100,3,23, - 0,160,7,124,0,124,3,161,2,125,5,116,8,124,5,124, - 0,100,4,141,2,100,0,130,2,89,0,110,2,88,0,116, - 9,124,0,124,2,131,2,125,6,124,6,100,0,107,8,114, - 172,116,8,116,6,160,7,124,0,161,1,124,0,100,4,141, - 2,130,1,110,8,116,10,124,6,131,1,125,7,124,3,114, - 216,116,1,106,2,124,3,25,0,125,4,116,11,124,4,124, - 0,160,0,100,1,161,1,100,5,25,0,124,7,131,3,1, - 0,124,7,83,0,41,6,78,114,128,0,0,0,114,22,0, - 0,0,122,23,59,32,123,33,114,125,32,105,115,32,110,111, - 116,32,97,32,112,97,99,107,97,103,101,114,16,0,0,0, - 233,2,0,0,0,41,12,114,129,0,0,0,114,15,0,0, - 0,114,92,0,0,0,114,67,0,0,0,114,140,0,0,0, - 114,106,0,0,0,218,8,95,69,82,82,95,77,83,71,114, - 45,0,0,0,218,19,77,111,100,117,108,101,78,111,116,70, - 111,117,110,100,69,114,114,111,114,114,191,0,0,0,114,157, - 0,0,0,114,5,0,0,0,41,8,114,17,0,0,0,218, - 7,105,109,112,111,114,116,95,114,163,0,0,0,114,130,0, - 0,0,90,13,112,97,114,101,110,116,95,109,111,100,117,108, - 101,114,155,0,0,0,114,95,0,0,0,114,96,0,0,0, - 114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,218, - 23,95,102,105,110,100,95,97,110,100,95,108,111,97,100,95, - 117,110,108,111,99,107,101,100,186,3,0,0,115,42,0,0, - 0,0,1,4,1,14,1,4,1,10,1,10,2,10,1,10, - 1,10,1,2,1,10,1,14,1,16,1,20,1,10,1,8, - 1,20,2,8,1,4,2,10,1,22,1,114,201,0,0,0, - 99,2,0,0,0,0,0,0,0,4,0,0,0,10,0,0, - 0,67,0,0,0,115,106,0,0,0,116,0,124,0,131,1, - 143,50,1,0,116,1,106,2,160,3,124,0,116,4,161,2, - 125,2,124,2,116,4,107,8,114,54,116,5,124,0,124,1, - 131,2,87,0,2,0,53,0,81,0,82,0,163,0,83,0, - 87,0,53,0,81,0,82,0,88,0,124,2,100,1,107,8, - 114,94,100,2,160,6,124,0,161,1,125,3,116,7,124,3, - 124,0,100,3,141,2,130,1,116,8,124,0,131,1,1,0, - 124,2,83,0,41,4,122,25,70,105,110,100,32,97,110,100, - 32,108,111,97,100,32,116,104,101,32,109,111,100,117,108,101, - 46,78,122,40,105,109,112,111,114,116,32,111,102,32,123,125, - 32,104,97,108,116,101,100,59,32,78,111,110,101,32,105,110, - 32,115,121,115,46,109,111,100,117,108,101,115,114,16,0,0, - 0,41,9,114,50,0,0,0,114,15,0,0,0,114,92,0, - 0,0,114,34,0,0,0,218,14,95,78,69,69,68,83,95, - 76,79,65,68,73,78,71,114,201,0,0,0,114,45,0,0, - 0,114,199,0,0,0,114,65,0,0,0,41,4,114,17,0, - 0,0,114,200,0,0,0,114,96,0,0,0,114,75,0,0, - 0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,0, - 218,14,95,102,105,110,100,95,97,110,100,95,108,111,97,100, - 216,3,0,0,115,22,0,0,0,0,2,10,1,14,1,8, - 1,32,2,8,1,4,1,2,255,4,2,12,2,8,1,114, - 203,0,0,0,114,22,0,0,0,99,3,0,0,0,0,0, - 0,0,3,0,0,0,4,0,0,0,67,0,0,0,115,42, - 0,0,0,116,0,124,0,124,1,124,2,131,3,1,0,124, - 2,100,1,107,4,114,32,116,1,124,0,124,1,124,2,131, - 3,125,0,116,2,124,0,116,3,131,2,83,0,41,2,97, - 50,1,0,0,73,109,112,111,114,116,32,97,110,100,32,114, - 101,116,117,114,110,32,116,104,101,32,109,111,100,117,108,101, - 32,98,97,115,101,100,32,111,110,32,105,116,115,32,110,97, - 109,101,44,32,116,104,101,32,112,97,99,107,97,103,101,32, - 116,104,101,32,99,97,108,108,32,105,115,10,32,32,32,32, - 98,101,105,110,103,32,109,97,100,101,32,102,114,111,109,44, - 32,97,110,100,32,116,104,101,32,108,101,118,101,108,32,97, - 100,106,117,115,116,109,101,110,116,46,10,10,32,32,32,32, - 84,104,105,115,32,102,117,110,99,116,105,111,110,32,114,101, - 112,114,101,115,101,110,116,115,32,116,104,101,32,103,114,101, - 97,116,101,115,116,32,99,111,109,109,111,110,32,100,101,110, - 111,109,105,110,97,116,111,114,32,111,102,32,102,117,110,99, - 116,105,111,110,97,108,105,116,121,10,32,32,32,32,98,101, - 116,119,101,101,110,32,105,109,112,111,114,116,95,109,111,100, - 117,108,101,32,97,110,100,32,95,95,105,109,112,111,114,116, - 95,95,46,32,84,104,105,115,32,105,110,99,108,117,100,101, - 115,32,115,101,116,116,105,110,103,32,95,95,112,97,99,107, - 97,103,101,95,95,32,105,102,10,32,32,32,32,116,104,101, - 32,108,111,97,100,101,114,32,100,105,100,32,110,111,116,46, - 10,10,32,32,32,32,114,22,0,0,0,41,4,114,196,0, - 0,0,114,184,0,0,0,114,203,0,0,0,218,11,95,103, - 99,100,95,105,109,112,111,114,116,114,195,0,0,0,114,10, - 0,0,0,114,10,0,0,0,114,11,0,0,0,114,204,0, - 0,0,232,3,0,0,115,8,0,0,0,0,9,12,1,8, - 1,12,1,114,204,0,0,0,169,1,218,9,114,101,99,117, - 114,115,105,118,101,99,3,0,0,0,1,0,0,0,8,0, - 0,0,11,0,0,0,67,0,0,0,115,226,0,0,0,124, - 1,68,0,93,216,125,4,116,0,124,4,116,1,131,2,115, - 66,124,3,114,34,124,0,106,2,100,1,23,0,125,5,110, - 4,100,2,125,5,116,3,100,3,124,5,155,0,100,4,116, - 4,124,4,131,1,106,2,155,0,157,4,131,1,130,1,110, - 154,124,4,100,5,107,2,114,108,124,3,115,106,116,5,124, - 0,100,6,131,2,114,106,116,6,124,0,124,0,106,7,124, - 2,100,7,100,8,141,4,1,0,110,112,116,5,124,0,124, - 4,131,2,115,220,100,9,160,8,124,0,106,2,124,4,161, - 2,125,6,122,14,116,9,124,2,124,6,131,2,1,0,87, - 0,110,72,4,0,116,10,107,10,114,218,1,0,125,7,1, - 0,122,42,124,7,106,11,124,6,107,2,114,200,116,12,106, - 13,160,14,124,6,116,15,161,2,100,10,107,9,114,200,87, - 0,89,0,162,8,113,4,130,0,87,0,53,0,100,10,125, - 7,126,7,88,0,89,0,110,2,88,0,113,4,124,0,83, - 0,41,11,122,238,70,105,103,117,114,101,32,111,117,116,32, - 119,104,97,116,32,95,95,105,109,112,111,114,116,95,95,32, - 115,104,111,117,108,100,32,114,101,116,117,114,110,46,10,10, - 32,32,32,32,84,104,101,32,105,109,112,111,114,116,95,32, - 112,97,114,97,109,101,116,101,114,32,105,115,32,97,32,99, - 97,108,108,97,98,108,101,32,119,104,105,99,104,32,116,97, - 107,101,115,32,116,104,101,32,110,97,109,101,32,111,102,32, - 109,111,100,117,108,101,32,116,111,10,32,32,32,32,105,109, - 112,111,114,116,46,32,73,116,32,105,115,32,114,101,113,117, - 105,114,101,100,32,116,111,32,100,101,99,111,117,112,108,101, - 32,116,104,101,32,102,117,110,99,116,105,111,110,32,102,114, - 111,109,32,97,115,115,117,109,105,110,103,32,105,109,112,111, - 114,116,108,105,98,39,115,10,32,32,32,32,105,109,112,111, - 114,116,32,105,109,112,108,101,109,101,110,116,97,116,105,111, - 110,32,105,115,32,100,101,115,105,114,101,100,46,10,10,32, - 32,32,32,122,8,46,95,95,97,108,108,95,95,122,13,96, - 96,102,114,111,109,32,108,105,115,116,39,39,122,8,73,116, - 101,109,32,105,110,32,122,18,32,109,117,115,116,32,98,101, - 32,115,116,114,44,32,110,111,116,32,250,1,42,218,7,95, - 95,97,108,108,95,95,84,114,205,0,0,0,114,178,0,0, - 0,78,41,16,114,192,0,0,0,114,193,0,0,0,114,1, - 0,0,0,114,194,0,0,0,114,14,0,0,0,114,4,0, - 0,0,218,16,95,104,97,110,100,108,101,95,102,114,111,109, - 108,105,115,116,114,208,0,0,0,114,45,0,0,0,114,67, - 0,0,0,114,199,0,0,0,114,17,0,0,0,114,15,0, - 0,0,114,92,0,0,0,114,34,0,0,0,114,202,0,0, - 0,41,8,114,96,0,0,0,218,8,102,114,111,109,108,105, - 115,116,114,200,0,0,0,114,206,0,0,0,218,1,120,90, - 5,119,104,101,114,101,90,9,102,114,111,109,95,110,97,109, - 101,90,3,101,120,99,114,10,0,0,0,114,10,0,0,0, - 114,11,0,0,0,114,209,0,0,0,247,3,0,0,115,44, - 0,0,0,0,10,8,1,10,1,4,1,12,2,4,1,28, - 2,8,1,14,1,10,1,2,255,8,2,10,1,14,1,2, - 1,14,1,16,4,10,1,16,255,2,2,8,1,22,1,114, - 209,0,0,0,99,1,0,0,0,0,0,0,0,3,0,0, - 0,6,0,0,0,67,0,0,0,115,146,0,0,0,124,0, - 160,0,100,1,161,1,125,1,124,0,160,0,100,2,161,1, - 125,2,124,1,100,3,107,9,114,82,124,2,100,3,107,9, - 114,78,124,1,124,2,106,1,107,3,114,78,116,2,106,3, - 100,4,124,1,155,2,100,5,124,2,106,1,155,2,100,6, - 157,5,116,4,100,7,100,8,141,3,1,0,124,1,83,0, - 124,2,100,3,107,9,114,96,124,2,106,1,83,0,116,2, - 106,3,100,9,116,4,100,7,100,8,141,3,1,0,124,0, - 100,10,25,0,125,1,100,11,124,0,107,7,114,142,124,1, - 160,5,100,12,161,1,100,13,25,0,125,1,124,1,83,0, - 41,14,122,167,67,97,108,99,117,108,97,116,101,32,119,104, - 97,116,32,95,95,112,97,99,107,97,103,101,95,95,32,115, - 104,111,117,108,100,32,98,101,46,10,10,32,32,32,32,95, - 95,112,97,99,107,97,103,101,95,95,32,105,115,32,110,111, - 116,32,103,117,97,114,97,110,116,101,101,100,32,116,111,32, - 98,101,32,100,101,102,105,110,101,100,32,111,114,32,99,111, - 117,108,100,32,98,101,32,115,101,116,32,116,111,32,78,111, - 110,101,10,32,32,32,32,116,111,32,114,101,112,114,101,115, - 101,110,116,32,116,104,97,116,32,105,116,115,32,112,114,111, - 112,101,114,32,118,97,108,117,101,32,105,115,32,117,110,107, - 110,111,119,110,46,10,10,32,32,32,32,114,144,0,0,0, - 114,105,0,0,0,78,122,32,95,95,112,97,99,107,97,103, - 101,95,95,32,33,61,32,95,95,115,112,101,99,95,95,46, - 112,97,114,101,110,116,32,40,122,4,32,33,61,32,250,1, - 41,233,3,0,0,0,41,1,90,10,115,116,97,99,107,108, - 101,118,101,108,122,89,99,97,110,39,116,32,114,101,115,111, - 108,118,101,32,112,97,99,107,97,103,101,32,102,114,111,109, - 32,95,95,115,112,101,99,95,95,32,111,114,32,95,95,112, - 97,99,107,97,103,101,95,95,44,32,102,97,108,108,105,110, - 103,32,98,97,99,107,32,111,110,32,95,95,110,97,109,101, - 95,95,32,97,110,100,32,95,95,112,97,116,104,95,95,114, - 1,0,0,0,114,140,0,0,0,114,128,0,0,0,114,22, - 0,0,0,41,6,114,34,0,0,0,114,130,0,0,0,114, - 188,0,0,0,114,189,0,0,0,114,190,0,0,0,114,129, - 0,0,0,41,3,218,7,103,108,111,98,97,108,115,114,182, - 0,0,0,114,95,0,0,0,114,10,0,0,0,114,10,0, - 0,0,114,11,0,0,0,218,17,95,99,97,108,99,95,95, - 95,112,97,99,107,97,103,101,95,95,28,4,0,0,115,38, - 0,0,0,0,7,10,1,10,1,8,1,18,1,22,2,2, - 0,2,254,6,3,4,1,8,1,6,2,6,2,2,0,2, - 254,6,3,8,1,8,1,14,1,114,215,0,0,0,114,10, - 0,0,0,99,5,0,0,0,0,0,0,0,9,0,0,0, - 5,0,0,0,67,0,0,0,115,180,0,0,0,124,4,100, - 1,107,2,114,18,116,0,124,0,131,1,125,5,110,36,124, - 1,100,2,107,9,114,30,124,1,110,2,105,0,125,6,116, - 1,124,6,131,1,125,7,116,0,124,0,124,7,124,4,131, - 3,125,5,124,3,115,150,124,4,100,1,107,2,114,84,116, - 0,124,0,160,2,100,3,161,1,100,1,25,0,131,1,83, - 0,124,0,115,92,124,5,83,0,116,3,124,0,131,1,116, - 3,124,0,160,2,100,3,161,1,100,1,25,0,131,1,24, - 0,125,8,116,4,106,5,124,5,106,6,100,2,116,3,124, - 5,106,6,131,1,124,8,24,0,133,2,25,0,25,0,83, - 0,110,26,116,7,124,5,100,4,131,2,114,172,116,8,124, - 5,124,3,116,0,131,3,83,0,124,5,83,0,100,2,83, - 0,41,5,97,215,1,0,0,73,109,112,111,114,116,32,97, - 32,109,111,100,117,108,101,46,10,10,32,32,32,32,84,104, - 101,32,39,103,108,111,98,97,108,115,39,32,97,114,103,117, - 109,101,110,116,32,105,115,32,117,115,101,100,32,116,111,32, - 105,110,102,101,114,32,119,104,101,114,101,32,116,104,101,32, - 105,109,112,111,114,116,32,105,115,32,111,99,99,117,114,114, - 105,110,103,32,102,114,111,109,10,32,32,32,32,116,111,32, - 104,97,110,100,108,101,32,114,101,108,97,116,105,118,101,32, - 105,109,112,111,114,116,115,46,32,84,104,101,32,39,108,111, - 99,97,108,115,39,32,97,114,103,117,109,101,110,116,32,105, - 115,32,105,103,110,111,114,101,100,46,32,84,104,101,10,32, - 32,32,32,39,102,114,111,109,108,105,115,116,39,32,97,114, - 103,117,109,101,110,116,32,115,112,101,99,105,102,105,101,115, - 32,119,104,97,116,32,115,104,111,117,108,100,32,101,120,105, - 115,116,32,97,115,32,97,116,116,114,105,98,117,116,101,115, - 32,111,110,32,116,104,101,32,109,111,100,117,108,101,10,32, - 32,32,32,98,101,105,110,103,32,105,109,112,111,114,116,101, - 100,32,40,101,46,103,46,32,96,96,102,114,111,109,32,109, - 111,100,117,108,101,32,105,109,112,111,114,116,32,60,102,114, - 111,109,108,105,115,116,62,96,96,41,46,32,32,84,104,101, - 32,39,108,101,118,101,108,39,10,32,32,32,32,97,114,103, - 117,109,101,110,116,32,114,101,112,114,101,115,101,110,116,115, - 32,116,104,101,32,112,97,99,107,97,103,101,32,108,111,99, - 97,116,105,111,110,32,116,111,32,105,109,112,111,114,116,32, - 102,114,111,109,32,105,110,32,97,32,114,101,108,97,116,105, - 118,101,10,32,32,32,32,105,109,112,111,114,116,32,40,101, - 46,103,46,32,96,96,102,114,111,109,32,46,46,112,107,103, - 32,105,109,112,111,114,116,32,109,111,100,96,96,32,119,111, - 117,108,100,32,104,97,118,101,32,97,32,39,108,101,118,101, - 108,39,32,111,102,32,50,41,46,10,10,32,32,32,32,114, - 22,0,0,0,78,114,128,0,0,0,114,140,0,0,0,41, - 9,114,204,0,0,0,114,215,0,0,0,218,9,112,97,114, - 116,105,116,105,111,110,114,180,0,0,0,114,15,0,0,0, - 114,92,0,0,0,114,1,0,0,0,114,4,0,0,0,114, - 209,0,0,0,41,9,114,17,0,0,0,114,214,0,0,0, - 218,6,108,111,99,97,108,115,114,210,0,0,0,114,183,0, - 0,0,114,96,0,0,0,90,8,103,108,111,98,97,108,115, - 95,114,182,0,0,0,90,7,99,117,116,95,111,102,102,114, - 10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,10, - 95,95,105,109,112,111,114,116,95,95,55,4,0,0,115,30, - 0,0,0,0,11,8,1,10,2,16,1,8,1,12,1,4, - 3,8,1,18,1,4,1,4,4,26,3,32,1,10,1,12, - 2,114,218,0,0,0,99,1,0,0,0,0,0,0,0,2, - 0,0,0,3,0,0,0,67,0,0,0,115,38,0,0,0, - 116,0,160,1,124,0,161,1,125,1,124,1,100,0,107,8, - 114,30,116,2,100,1,124,0,23,0,131,1,130,1,116,3, - 124,1,131,1,83,0,41,2,78,122,25,110,111,32,98,117, - 105,108,116,45,105,110,32,109,111,100,117,108,101,32,110,97, - 109,101,100,32,41,4,114,158,0,0,0,114,165,0,0,0, - 114,79,0,0,0,114,157,0,0,0,41,2,114,17,0,0, - 0,114,95,0,0,0,114,10,0,0,0,114,10,0,0,0, - 114,11,0,0,0,218,18,95,98,117,105,108,116,105,110,95, - 102,114,111,109,95,110,97,109,101,92,4,0,0,115,8,0, - 0,0,0,1,10,1,8,1,12,1,114,219,0,0,0,99, - 2,0,0,0,0,0,0,0,10,0,0,0,5,0,0,0, - 67,0,0,0,115,166,0,0,0,124,1,97,0,124,0,97, - 1,116,2,116,1,131,1,125,2,116,1,106,3,160,4,161, - 0,68,0,93,72,92,2,125,3,125,4,116,5,124,4,124, - 2,131,2,114,26,124,3,116,1,106,6,107,6,114,60,116, - 7,125,5,110,18,116,0,160,8,124,3,161,1,114,26,116, - 9,125,5,110,2,113,26,116,10,124,4,124,5,131,2,125, - 6,116,11,124,6,124,4,131,2,1,0,113,26,116,1,106, - 3,116,12,25,0,125,7,100,1,68,0,93,46,125,8,124, - 8,116,1,106,3,107,7,114,138,116,13,124,8,131,1,125, - 9,110,10,116,1,106,3,124,8,25,0,125,9,116,14,124, - 7,124,8,124,9,131,3,1,0,113,114,100,2,83,0,41, - 3,122,250,83,101,116,117,112,32,105,109,112,111,114,116,108, - 105,98,32,98,121,32,105,109,112,111,114,116,105,110,103,32, - 110,101,101,100,101,100,32,98,117,105,108,116,45,105,110,32, - 109,111,100,117,108,101,115,32,97,110,100,32,105,110,106,101, - 99,116,105,110,103,32,116,104,101,109,10,32,32,32,32,105, - 110,116,111,32,116,104,101,32,103,108,111,98,97,108,32,110, - 97,109,101,115,112,97,99,101,46,10,10,32,32,32,32,65, - 115,32,115,121,115,32,105,115,32,110,101,101,100,101,100,32, - 102,111,114,32,115,121,115,46,109,111,100,117,108,101,115,32, - 97,99,99,101,115,115,32,97,110,100,32,95,105,109,112,32, - 105,115,32,110,101,101,100,101,100,32,116,111,32,108,111,97, - 100,32,98,117,105,108,116,45,105,110,10,32,32,32,32,109, - 111,100,117,108,101,115,44,32,116,104,111,115,101,32,116,119, - 111,32,109,111,100,117,108,101,115,32,109,117,115,116,32,98, - 101,32,101,120,112,108,105,99,105,116,108,121,32,112,97,115, - 115,101,100,32,105,110,46,10,10,32,32,32,32,41,3,114, - 23,0,0,0,114,188,0,0,0,114,64,0,0,0,78,41, - 15,114,57,0,0,0,114,15,0,0,0,114,14,0,0,0, - 114,92,0,0,0,218,5,105,116,101,109,115,114,192,0,0, - 0,114,78,0,0,0,114,158,0,0,0,114,88,0,0,0, - 114,172,0,0,0,114,141,0,0,0,114,147,0,0,0,114, - 1,0,0,0,114,219,0,0,0,114,5,0,0,0,41,10, - 218,10,115,121,115,95,109,111,100,117,108,101,218,11,95,105, - 109,112,95,109,111,100,117,108,101,90,11,109,111,100,117,108, - 101,95,116,121,112,101,114,17,0,0,0,114,96,0,0,0, - 114,109,0,0,0,114,95,0,0,0,90,11,115,101,108,102, - 95,109,111,100,117,108,101,90,12,98,117,105,108,116,105,110, - 95,110,97,109,101,90,14,98,117,105,108,116,105,110,95,109, - 111,100,117,108,101,114,10,0,0,0,114,10,0,0,0,114, - 11,0,0,0,218,6,95,115,101,116,117,112,99,4,0,0, - 115,36,0,0,0,0,9,4,1,4,3,8,1,18,1,10, - 1,10,1,6,1,10,1,6,2,2,1,10,1,12,3,10, - 1,8,1,10,1,10,2,10,1,114,223,0,0,0,99,2, - 0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,67, - 0,0,0,115,38,0,0,0,116,0,124,0,124,1,131,2, - 1,0,116,1,106,2,160,3,116,4,161,1,1,0,116,1, - 106,2,160,3,116,5,161,1,1,0,100,1,83,0,41,2, - 122,48,73,110,115,116,97,108,108,32,105,109,112,111,114,116, - 101,114,115,32,102,111,114,32,98,117,105,108,116,105,110,32, - 97,110,100,32,102,114,111,122,101,110,32,109,111,100,117,108, - 101,115,78,41,6,114,223,0,0,0,114,15,0,0,0,114, - 187,0,0,0,114,120,0,0,0,114,158,0,0,0,114,172, - 0,0,0,41,2,114,221,0,0,0,114,222,0,0,0,114, - 10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,8, - 95,105,110,115,116,97,108,108,134,4,0,0,115,6,0,0, - 0,0,2,10,2,12,1,114,224,0,0,0,99,0,0,0, + 90,4,101,5,100,3,100,4,132,0,131,1,90,6,101,7, + 100,22,100,6,100,7,132,1,131,1,90,8,101,7,100,23, + 100,8,100,9,132,1,131,1,90,9,101,7,100,10,100,11, + 132,0,131,1,90,10,101,5,100,12,100,13,132,0,131,1, + 90,11,101,7,100,14,100,15,132,0,131,1,90,12,101,7, + 101,13,100,16,100,17,132,0,131,1,131,1,90,14,101,7, + 101,13,100,18,100,19,132,0,131,1,131,1,90,15,101,7, + 101,13,100,20,100,21,132,0,131,1,131,1,90,16,100,5, + 83,0,41,24,218,14,70,114,111,122,101,110,73,109,112,111, + 114,116,101,114,122,142,77,101,116,97,32,112,97,116,104,32, + 105,109,112,111,114,116,32,102,111,114,32,102,114,111,122,101, + 110,32,109,111,100,117,108,101,115,46,10,10,32,32,32,32, + 65,108,108,32,109,101,116,104,111,100,115,32,97,114,101,32, + 101,105,116,104,101,114,32,99,108,97,115,115,32,111,114,32, + 115,116,97,116,105,99,32,109,101,116,104,111,100,115,32,116, + 111,32,97,118,111,105,100,32,116,104,101,32,110,101,101,100, + 32,116,111,10,32,32,32,32,105,110,115,116,97,110,116,105, + 97,116,101,32,116,104,101,32,99,108,97,115,115,46,10,10, + 32,32,32,32,90,6,102,114,111,122,101,110,99,1,0,0, 0,0,0,0,0,1,0,0,0,4,0,0,0,67,0,0, - 0,115,32,0,0,0,100,1,100,2,108,0,125,0,124,0, - 97,1,124,0,160,2,116,3,106,4,116,5,25,0,161,1, - 1,0,100,2,83,0,41,3,122,57,73,110,115,116,97,108, - 108,32,105,109,112,111,114,116,101,114,115,32,116,104,97,116, - 32,114,101,113,117,105,114,101,32,101,120,116,101,114,110,97, - 108,32,102,105,108,101,115,121,115,116,101,109,32,97,99,99, - 101,115,115,114,22,0,0,0,78,41,6,218,26,95,102,114, - 111,122,101,110,95,105,109,112,111,114,116,108,105,98,95,101, - 120,116,101,114,110,97,108,114,126,0,0,0,114,224,0,0, - 0,114,15,0,0,0,114,92,0,0,0,114,1,0,0,0, - 41,1,114,225,0,0,0,114,10,0,0,0,114,10,0,0, - 0,114,11,0,0,0,218,27,95,105,110,115,116,97,108,108, - 95,101,120,116,101,114,110,97,108,95,105,109,112,111,114,116, - 101,114,115,142,4,0,0,115,6,0,0,0,0,3,8,1, - 4,1,114,226,0,0,0,41,2,78,78,41,1,78,41,2, - 78,114,22,0,0,0,41,4,78,78,114,10,0,0,0,114, - 22,0,0,0,41,50,114,3,0,0,0,114,126,0,0,0, - 114,12,0,0,0,114,18,0,0,0,114,59,0,0,0,114, - 33,0,0,0,114,42,0,0,0,114,19,0,0,0,114,20, - 0,0,0,114,49,0,0,0,114,50,0,0,0,114,53,0, - 0,0,114,65,0,0,0,114,67,0,0,0,114,76,0,0, - 0,114,86,0,0,0,114,90,0,0,0,114,97,0,0,0, - 114,111,0,0,0,114,112,0,0,0,114,91,0,0,0,114, - 141,0,0,0,114,147,0,0,0,114,151,0,0,0,114,107, - 0,0,0,114,93,0,0,0,114,156,0,0,0,114,157,0, - 0,0,114,94,0,0,0,114,158,0,0,0,114,172,0,0, - 0,114,177,0,0,0,114,184,0,0,0,114,186,0,0,0, - 114,191,0,0,0,114,196,0,0,0,90,15,95,69,82,82, - 95,77,83,71,95,80,82,69,70,73,88,114,198,0,0,0, - 114,201,0,0,0,218,6,111,98,106,101,99,116,114,202,0, - 0,0,114,203,0,0,0,114,204,0,0,0,114,209,0,0, - 0,114,215,0,0,0,114,218,0,0,0,114,219,0,0,0, - 114,223,0,0,0,114,224,0,0,0,114,226,0,0,0,114, - 10,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11, - 0,0,0,218,8,60,109,111,100,117,108,101,62,1,0,0, - 0,115,94,0,0,0,4,24,4,2,8,8,8,8,4,2, - 4,3,16,4,14,68,14,21,14,16,8,37,8,17,8,11, - 14,8,8,11,8,12,8,16,8,36,14,101,16,26,10,45, - 14,72,8,17,8,17,8,30,8,37,8,42,8,15,14,73, - 14,77,14,13,8,9,8,9,10,47,8,16,4,1,8,2, - 8,27,6,3,8,16,10,15,14,37,8,27,10,37,8,7, - 8,35,8,8, + 0,115,16,0,0,0,100,1,160,0,124,0,106,1,116,2, + 106,3,161,2,83,0,41,2,114,161,0,0,0,114,153,0, + 0,0,41,4,114,45,0,0,0,114,1,0,0,0,114,173, + 0,0,0,114,138,0,0,0,41,1,218,1,109,114,10,0, + 0,0,114,10,0,0,0,114,11,0,0,0,114,99,0,0, + 0,23,3,0,0,115,2,0,0,0,0,7,122,26,70,114, + 111,122,101,110,73,109,112,111,114,116,101,114,46,109,111,100, + 117,108,101,95,114,101,112,114,78,99,4,0,0,0,0,0, + 0,0,4,0,0,0,5,0,0,0,67,0,0,0,115,34, + 0,0,0,116,0,160,1,124,1,161,1,114,26,116,2,124, + 1,124,0,124,0,106,3,100,1,141,3,83,0,100,0,83, + 0,100,0,83,0,41,2,78,114,137,0,0,0,41,4,114, + 57,0,0,0,114,88,0,0,0,114,91,0,0,0,114,138, + 0,0,0,114,162,0,0,0,114,10,0,0,0,114,10,0, + 0,0,114,11,0,0,0,114,166,0,0,0,32,3,0,0, + 115,6,0,0,0,0,2,10,1,16,2,122,24,70,114,111, + 122,101,110,73,109,112,111,114,116,101,114,46,102,105,110,100, + 95,115,112,101,99,99,3,0,0,0,0,0,0,0,3,0, + 0,0,3,0,0,0,67,0,0,0,115,18,0,0,0,116, + 0,160,1,124,1,161,1,114,14,124,0,83,0,100,1,83, + 0,41,2,122,93,70,105,110,100,32,97,32,102,114,111,122, + 101,110,32,109,111,100,117,108,101,46,10,10,32,32,32,32, + 32,32,32,32,84,104,105,115,32,109,101,116,104,111,100,32, + 105,115,32,100,101,112,114,101,99,97,116,101,100,46,32,32, + 85,115,101,32,102,105,110,100,95,115,112,101,99,40,41,32, + 105,110,115,116,101,97,100,46,10,10,32,32,32,32,32,32, + 32,32,78,41,2,114,57,0,0,0,114,88,0,0,0,41, + 3,114,163,0,0,0,114,81,0,0,0,114,164,0,0,0, + 114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,114, + 167,0,0,0,39,3,0,0,115,2,0,0,0,0,7,122, + 26,70,114,111,122,101,110,73,109,112,111,114,116,101,114,46, + 102,105,110,100,95,109,111,100,117,108,101,99,2,0,0,0, + 0,0,0,0,2,0,0,0,1,0,0,0,67,0,0,0, + 115,4,0,0,0,100,1,83,0,41,2,122,42,85,115,101, + 32,100,101,102,97,117,108,116,32,115,101,109,97,110,116,105, + 99,115,32,102,111,114,32,109,111,100,117,108,101,32,99,114, + 101,97,116,105,111,110,46,78,114,10,0,0,0,41,2,114, + 163,0,0,0,114,95,0,0,0,114,10,0,0,0,114,10, + 0,0,0,114,11,0,0,0,114,149,0,0,0,48,3,0, + 0,115,2,0,0,0,0,2,122,28,70,114,111,122,101,110, + 73,109,112,111,114,116,101,114,46,99,114,101,97,116,101,95, + 109,111,100,117,108,101,99,1,0,0,0,0,0,0,0,3, + 0,0,0,4,0,0,0,67,0,0,0,115,64,0,0,0, + 124,0,106,0,106,1,125,1,116,2,160,3,124,1,161,1, + 115,36,116,4,100,1,160,5,124,1,161,1,124,1,100,2, + 141,2,130,1,116,6,116,2,106,7,124,1,131,2,125,2, + 116,8,124,2,124,0,106,9,131,2,1,0,100,0,83,0, + 114,87,0,0,0,41,10,114,105,0,0,0,114,17,0,0, + 0,114,57,0,0,0,114,88,0,0,0,114,79,0,0,0, + 114,45,0,0,0,114,67,0,0,0,218,17,103,101,116,95, + 102,114,111,122,101,110,95,111,98,106,101,99,116,218,4,101, + 120,101,99,114,7,0,0,0,41,3,114,96,0,0,0,114, + 17,0,0,0,218,4,99,111,100,101,114,10,0,0,0,114, + 10,0,0,0,114,11,0,0,0,114,150,0,0,0,52,3, + 0,0,115,14,0,0,0,0,2,8,1,10,1,10,1,2, + 255,6,2,12,1,122,26,70,114,111,122,101,110,73,109,112, + 111,114,116,101,114,46,101,120,101,99,95,109,111,100,117,108, + 101,99,2,0,0,0,0,0,0,0,2,0,0,0,3,0, + 0,0,67,0,0,0,115,10,0,0,0,116,0,124,0,124, + 1,131,2,83,0,41,1,122,95,76,111,97,100,32,97,32, + 102,114,111,122,101,110,32,109,111,100,117,108,101,46,10,10, + 32,32,32,32,32,32,32,32,84,104,105,115,32,109,101,116, + 104,111,100,32,105,115,32,100,101,112,114,101,99,97,116,101, + 100,46,32,32,85,115,101,32,101,120,101,99,95,109,111,100, + 117,108,101,40,41,32,105,110,115,116,101,97,100,46,10,10, + 32,32,32,32,32,32,32,32,41,1,114,97,0,0,0,114, + 168,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11, + 0,0,0,114,155,0,0,0,61,3,0,0,115,2,0,0, + 0,0,7,122,26,70,114,111,122,101,110,73,109,112,111,114, + 116,101,114,46,108,111,97,100,95,109,111,100,117,108,101,99, + 2,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0, + 67,0,0,0,115,10,0,0,0,116,0,160,1,124,1,161, + 1,83,0,41,1,122,45,82,101,116,117,114,110,32,116,104, + 101,32,99,111,100,101,32,111,98,106,101,99,116,32,102,111, + 114,32,116,104,101,32,102,114,111,122,101,110,32,109,111,100, + 117,108,101,46,41,2,114,57,0,0,0,114,175,0,0,0, + 114,168,0,0,0,114,10,0,0,0,114,10,0,0,0,114, + 11,0,0,0,114,169,0,0,0,70,3,0,0,115,2,0, + 0,0,0,4,122,23,70,114,111,122,101,110,73,109,112,111, + 114,116,101,114,46,103,101,116,95,99,111,100,101,99,2,0, + 0,0,0,0,0,0,2,0,0,0,1,0,0,0,67,0, + 0,0,115,4,0,0,0,100,1,83,0,41,2,122,54,82, + 101,116,117,114,110,32,78,111,110,101,32,97,115,32,102,114, + 111,122,101,110,32,109,111,100,117,108,101,115,32,100,111,32, + 110,111,116,32,104,97,118,101,32,115,111,117,114,99,101,32, + 99,111,100,101,46,78,114,10,0,0,0,114,168,0,0,0, + 114,10,0,0,0,114,10,0,0,0,114,11,0,0,0,114, + 170,0,0,0,76,3,0,0,115,2,0,0,0,0,4,122, + 25,70,114,111,122,101,110,73,109,112,111,114,116,101,114,46, + 103,101,116,95,115,111,117,114,99,101,99,2,0,0,0,0, + 0,0,0,2,0,0,0,3,0,0,0,67,0,0,0,115, + 10,0,0,0,116,0,160,1,124,1,161,1,83,0,41,1, + 122,46,82,101,116,117,114,110,32,84,114,117,101,32,105,102, + 32,116,104,101,32,102,114,111,122,101,110,32,109,111,100,117, + 108,101,32,105,115,32,97,32,112,97,99,107,97,103,101,46, + 41,2,114,57,0,0,0,90,17,105,115,95,102,114,111,122, + 101,110,95,112,97,99,107,97,103,101,114,168,0,0,0,114, + 10,0,0,0,114,10,0,0,0,114,11,0,0,0,114,115, + 0,0,0,82,3,0,0,115,2,0,0,0,0,4,122,25, + 70,114,111,122,101,110,73,109,112,111,114,116,101,114,46,105, + 115,95,112,97,99,107,97,103,101,41,2,78,78,41,1,78, + 41,17,114,1,0,0,0,114,0,0,0,0,114,2,0,0, + 0,114,3,0,0,0,114,138,0,0,0,114,171,0,0,0, + 114,99,0,0,0,114,172,0,0,0,114,166,0,0,0,114, + 167,0,0,0,114,149,0,0,0,114,150,0,0,0,114,155, + 0,0,0,114,90,0,0,0,114,169,0,0,0,114,170,0, + 0,0,114,115,0,0,0,114,10,0,0,0,114,10,0,0, + 0,114,10,0,0,0,114,11,0,0,0,114,173,0,0,0, + 12,3,0,0,115,46,0,0,0,8,2,4,7,4,2,2, + 1,10,8,2,1,12,6,2,1,12,8,2,1,10,3,2, + 1,10,8,2,1,10,8,2,1,2,1,12,4,2,1,2, + 1,12,4,2,1,2,1,114,173,0,0,0,99,0,0,0, + 0,0,0,0,0,0,0,0,0,2,0,0,0,64,0,0, + 0,115,32,0,0,0,101,0,90,1,100,0,90,2,100,1, + 90,3,100,2,100,3,132,0,90,4,100,4,100,5,132,0, + 90,5,100,6,83,0,41,7,218,18,95,73,109,112,111,114, + 116,76,111,99,107,67,111,110,116,101,120,116,122,36,67,111, + 110,116,101,120,116,32,109,97,110,97,103,101,114,32,102,111, + 114,32,116,104,101,32,105,109,112,111,114,116,32,108,111,99, + 107,46,99,1,0,0,0,0,0,0,0,1,0,0,0,2, + 0,0,0,67,0,0,0,115,12,0,0,0,116,0,160,1, + 161,0,1,0,100,1,83,0,41,2,122,24,65,99,113,117, + 105,114,101,32,116,104,101,32,105,109,112,111,114,116,32,108, + 111,99,107,46,78,41,2,114,57,0,0,0,114,58,0,0, + 0,114,47,0,0,0,114,10,0,0,0,114,10,0,0,0, + 114,11,0,0,0,114,54,0,0,0,95,3,0,0,115,2, + 0,0,0,0,2,122,28,95,73,109,112,111,114,116,76,111, + 99,107,67,111,110,116,101,120,116,46,95,95,101,110,116,101, + 114,95,95,99,4,0,0,0,0,0,0,0,4,0,0,0, + 2,0,0,0,67,0,0,0,115,12,0,0,0,116,0,160, + 1,161,0,1,0,100,1,83,0,41,2,122,60,82,101,108, + 101,97,115,101,32,116,104,101,32,105,109,112,111,114,116,32, + 108,111,99,107,32,114,101,103,97,114,100,108,101,115,115,32, + 111,102,32,97,110,121,32,114,97,105,115,101,100,32,101,120, + 99,101,112,116,105,111,110,115,46,78,41,2,114,57,0,0, + 0,114,60,0,0,0,41,4,114,30,0,0,0,90,8,101, + 120,99,95,116,121,112,101,90,9,101,120,99,95,118,97,108, + 117,101,90,13,101,120,99,95,116,114,97,99,101,98,97,99, + 107,114,10,0,0,0,114,10,0,0,0,114,11,0,0,0, + 114,56,0,0,0,99,3,0,0,115,2,0,0,0,0,2, + 122,27,95,73,109,112,111,114,116,76,111,99,107,67,111,110, + 116,101,120,116,46,95,95,101,120,105,116,95,95,78,41,6, + 114,1,0,0,0,114,0,0,0,0,114,2,0,0,0,114, + 3,0,0,0,114,54,0,0,0,114,56,0,0,0,114,10, + 0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,0, + 0,0,114,178,0,0,0,91,3,0,0,115,6,0,0,0, + 8,2,4,2,8,4,114,178,0,0,0,99,3,0,0,0, + 0,0,0,0,5,0,0,0,5,0,0,0,67,0,0,0, + 115,64,0,0,0,124,1,160,0,100,1,124,2,100,2,24, + 0,161,2,125,3,116,1,124,3,131,1,124,2,107,0,114, + 36,116,2,100,3,131,1,130,1,124,3,100,4,25,0,125, + 4,124,0,114,60,100,5,160,3,124,4,124,0,161,2,83, + 0,124,4,83,0,41,6,122,50,82,101,115,111,108,118,101, + 32,97,32,114,101,108,97,116,105,118,101,32,109,111,100,117, + 108,101,32,110,97,109,101,32,116,111,32,97,110,32,97,98, + 115,111,108,117,116,101,32,111,110,101,46,114,128,0,0,0, + 114,37,0,0,0,122,50,97,116,116,101,109,112,116,101,100, + 32,114,101,108,97,116,105,118,101,32,105,109,112,111,114,116, + 32,98,101,121,111,110,100,32,116,111,112,45,108,101,118,101, + 108,32,112,97,99,107,97,103,101,114,22,0,0,0,250,5, + 123,125,46,123,125,41,4,218,6,114,115,112,108,105,116,218, + 3,108,101,110,218,10,86,97,108,117,101,69,114,114,111,114, + 114,45,0,0,0,41,5,114,17,0,0,0,218,7,112,97, + 99,107,97,103,101,218,5,108,101,118,101,108,90,4,98,105, + 116,115,90,4,98,97,115,101,114,10,0,0,0,114,10,0, + 0,0,114,11,0,0,0,218,13,95,114,101,115,111,108,118, + 101,95,110,97,109,101,104,3,0,0,115,10,0,0,0,0, + 2,16,1,12,1,8,1,8,1,114,185,0,0,0,99,3, + 0,0,0,0,0,0,0,4,0,0,0,4,0,0,0,67, + 0,0,0,115,34,0,0,0,124,0,160,0,124,1,124,2, + 161,2,125,3,124,3,100,0,107,8,114,24,100,0,83,0, + 116,1,124,1,124,3,131,2,83,0,114,13,0,0,0,41, + 2,114,167,0,0,0,114,91,0,0,0,41,4,218,6,102, + 105,110,100,101,114,114,17,0,0,0,114,164,0,0,0,114, + 109,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11, + 0,0,0,218,17,95,102,105,110,100,95,115,112,101,99,95, + 108,101,103,97,99,121,113,3,0,0,115,8,0,0,0,0, + 3,12,1,8,1,4,1,114,187,0,0,0,99,3,0,0, + 0,0,0,0,0,10,0,0,0,10,0,0,0,67,0,0, + 0,115,12,1,0,0,116,0,106,1,125,3,124,3,100,1, + 107,8,114,22,116,2,100,2,131,1,130,1,124,3,115,38, + 116,3,160,4,100,3,116,5,161,2,1,0,124,0,116,0, + 106,6,107,6,125,4,124,3,68,0,93,210,125,5,116,7, + 131,0,143,84,1,0,122,10,124,5,106,8,125,6,87,0, + 110,54,4,0,116,9,107,10,114,128,1,0,1,0,1,0, + 116,10,124,5,124,0,124,1,131,3,125,7,124,7,100,1, + 107,8,114,124,89,0,87,0,53,0,81,0,82,0,163,0, + 113,52,89,0,110,14,88,0,124,6,124,0,124,1,124,2, + 131,3,125,7,87,0,53,0,81,0,82,0,88,0,124,7, + 100,1,107,9,114,52,124,4,144,0,115,254,124,0,116,0, + 106,6,107,6,144,0,114,254,116,0,106,6,124,0,25,0, + 125,8,122,10,124,8,106,11,125,9,87,0,110,28,4,0, + 116,9,107,10,114,226,1,0,1,0,1,0,124,7,6,0, + 89,0,2,0,1,0,83,0,88,0,124,9,100,1,107,8, + 114,244,124,7,2,0,1,0,83,0,124,9,2,0,1,0, + 83,0,113,52,124,7,2,0,1,0,83,0,113,52,100,1, + 83,0,41,4,122,21,70,105,110,100,32,97,32,109,111,100, + 117,108,101,39,115,32,115,112,101,99,46,78,122,53,115,121, + 115,46,109,101,116,97,95,112,97,116,104,32,105,115,32,78, + 111,110,101,44,32,80,121,116,104,111,110,32,105,115,32,108, + 105,107,101,108,121,32,115,104,117,116,116,105,110,103,32,100, + 111,119,110,122,22,115,121,115,46,109,101,116,97,95,112,97, + 116,104,32,105,115,32,101,109,112,116,121,41,12,114,15,0, + 0,0,218,9,109,101,116,97,95,112,97,116,104,114,79,0, + 0,0,218,9,95,119,97,114,110,105,110,103,115,218,4,119, + 97,114,110,218,13,73,109,112,111,114,116,87,97,114,110,105, + 110,103,114,92,0,0,0,114,178,0,0,0,114,166,0,0, + 0,114,106,0,0,0,114,187,0,0,0,114,105,0,0,0, + 41,10,114,17,0,0,0,114,164,0,0,0,114,165,0,0, + 0,114,188,0,0,0,90,9,105,115,95,114,101,108,111,97, + 100,114,186,0,0,0,114,166,0,0,0,114,95,0,0,0, + 114,96,0,0,0,114,105,0,0,0,114,10,0,0,0,114, + 10,0,0,0,114,11,0,0,0,218,10,95,102,105,110,100, + 95,115,112,101,99,122,3,0,0,115,54,0,0,0,0,2, + 6,1,8,2,8,3,4,1,12,5,10,1,8,1,8,1, + 2,1,10,1,14,1,12,1,8,1,20,2,22,1,8,2, + 18,1,10,1,2,1,10,1,14,4,14,2,8,1,8,2, + 10,2,10,2,114,192,0,0,0,99,3,0,0,0,0,0, + 0,0,3,0,0,0,5,0,0,0,67,0,0,0,115,108, + 0,0,0,116,0,124,0,116,1,131,2,115,28,116,2,100, + 1,160,3,116,4,124,0,131,1,161,1,131,1,130,1,124, + 2,100,2,107,0,114,44,116,5,100,3,131,1,130,1,124, + 2,100,2,107,4,114,84,116,0,124,1,116,1,131,2,115, + 72,116,2,100,4,131,1,130,1,110,12,124,1,115,84,116, + 6,100,5,131,1,130,1,124,0,115,104,124,2,100,2,107, + 2,114,104,116,5,100,6,131,1,130,1,100,7,83,0,41, + 8,122,28,86,101,114,105,102,121,32,97,114,103,117,109,101, + 110,116,115,32,97,114,101,32,34,115,97,110,101,34,46,122, + 31,109,111,100,117,108,101,32,110,97,109,101,32,109,117,115, + 116,32,98,101,32,115,116,114,44,32,110,111,116,32,123,125, + 114,22,0,0,0,122,18,108,101,118,101,108,32,109,117,115, + 116,32,98,101,32,62,61,32,48,122,31,95,95,112,97,99, + 107,97,103,101,95,95,32,110,111,116,32,115,101,116,32,116, + 111,32,97,32,115,116,114,105,110,103,122,54,97,116,116,101, + 109,112,116,101,100,32,114,101,108,97,116,105,118,101,32,105, + 109,112,111,114,116,32,119,105,116,104,32,110,111,32,107,110, + 111,119,110,32,112,97,114,101,110,116,32,112,97,99,107,97, + 103,101,122,17,69,109,112,116,121,32,109,111,100,117,108,101, + 32,110,97,109,101,78,41,7,218,10,105,115,105,110,115,116, + 97,110,99,101,218,3,115,116,114,218,9,84,121,112,101,69, + 114,114,111,114,114,45,0,0,0,114,14,0,0,0,114,182, + 0,0,0,114,79,0,0,0,169,3,114,17,0,0,0,114, + 183,0,0,0,114,184,0,0,0,114,10,0,0,0,114,10, + 0,0,0,114,11,0,0,0,218,13,95,115,97,110,105,116, + 121,95,99,104,101,99,107,169,3,0,0,115,22,0,0,0, + 0,2,10,1,18,1,8,1,8,1,8,1,10,1,10,1, + 4,1,8,2,12,1,114,197,0,0,0,122,16,78,111,32, + 109,111,100,117,108,101,32,110,97,109,101,100,32,122,4,123, + 33,114,125,99,2,0,0,0,0,0,0,0,8,0,0,0, + 8,0,0,0,67,0,0,0,115,220,0,0,0,100,0,125, + 2,124,0,160,0,100,1,161,1,100,2,25,0,125,3,124, + 3,114,134,124,3,116,1,106,2,107,7,114,42,116,3,124, + 1,124,3,131,2,1,0,124,0,116,1,106,2,107,6,114, + 62,116,1,106,2,124,0,25,0,83,0,116,1,106,2,124, + 3,25,0,125,4,122,10,124,4,106,4,125,2,87,0,110, + 50,4,0,116,5,107,10,114,132,1,0,1,0,1,0,116, + 6,100,3,23,0,160,7,124,0,124,3,161,2,125,5,116, + 8,124,5,124,0,100,4,141,2,100,0,130,2,89,0,110, + 2,88,0,116,9,124,0,124,2,131,2,125,6,124,6,100, + 0,107,8,114,172,116,8,116,6,160,7,124,0,161,1,124, + 0,100,4,141,2,130,1,110,8,116,10,124,6,131,1,125, + 7,124,3,114,216,116,1,106,2,124,3,25,0,125,4,116, + 11,124,4,124,0,160,0,100,1,161,1,100,5,25,0,124, + 7,131,3,1,0,124,7,83,0,41,6,78,114,128,0,0, + 0,114,22,0,0,0,122,23,59,32,123,33,114,125,32,105, + 115,32,110,111,116,32,97,32,112,97,99,107,97,103,101,114, + 16,0,0,0,233,2,0,0,0,41,12,114,129,0,0,0, + 114,15,0,0,0,114,92,0,0,0,114,67,0,0,0,114, + 141,0,0,0,114,106,0,0,0,218,8,95,69,82,82,95, + 77,83,71,114,45,0,0,0,218,19,77,111,100,117,108,101, + 78,111,116,70,111,117,110,100,69,114,114,111,114,114,192,0, + 0,0,114,159,0,0,0,114,5,0,0,0,41,8,114,17, + 0,0,0,218,7,105,109,112,111,114,116,95,114,164,0,0, + 0,114,130,0,0,0,90,13,112,97,114,101,110,116,95,109, + 111,100,117,108,101,114,157,0,0,0,114,95,0,0,0,114, + 96,0,0,0,114,10,0,0,0,114,10,0,0,0,114,11, + 0,0,0,218,23,95,102,105,110,100,95,97,110,100,95,108, + 111,97,100,95,117,110,108,111,99,107,101,100,188,3,0,0, + 115,42,0,0,0,0,1,4,1,14,1,4,1,10,1,10, + 2,10,1,10,1,10,1,2,1,10,1,14,1,16,1,20, + 1,10,1,8,1,20,2,8,1,4,2,10,1,22,1,114, + 202,0,0,0,99,2,0,0,0,0,0,0,0,4,0,0, + 0,10,0,0,0,67,0,0,0,115,106,0,0,0,116,0, + 124,0,131,1,143,50,1,0,116,1,106,2,160,3,124,0, + 116,4,161,2,125,2,124,2,116,4,107,8,114,54,116,5, + 124,0,124,1,131,2,87,0,2,0,53,0,81,0,82,0, + 163,0,83,0,87,0,53,0,81,0,82,0,88,0,124,2, + 100,1,107,8,114,94,100,2,160,6,124,0,161,1,125,3, + 116,7,124,3,124,0,100,3,141,2,130,1,116,8,124,0, + 131,1,1,0,124,2,83,0,41,4,122,25,70,105,110,100, + 32,97,110,100,32,108,111,97,100,32,116,104,101,32,109,111, + 100,117,108,101,46,78,122,40,105,109,112,111,114,116,32,111, + 102,32,123,125,32,104,97,108,116,101,100,59,32,78,111,110, + 101,32,105,110,32,115,121,115,46,109,111,100,117,108,101,115, + 114,16,0,0,0,41,9,114,50,0,0,0,114,15,0,0, + 0,114,92,0,0,0,114,34,0,0,0,218,14,95,78,69, + 69,68,83,95,76,79,65,68,73,78,71,114,202,0,0,0, + 114,45,0,0,0,114,200,0,0,0,114,65,0,0,0,41, + 4,114,17,0,0,0,114,201,0,0,0,114,96,0,0,0, + 114,75,0,0,0,114,10,0,0,0,114,10,0,0,0,114, + 11,0,0,0,218,14,95,102,105,110,100,95,97,110,100,95, + 108,111,97,100,218,3,0,0,115,22,0,0,0,0,2,10, + 1,14,1,8,1,32,2,8,1,4,1,2,255,4,2,12, + 2,8,1,114,204,0,0,0,114,22,0,0,0,99,3,0, + 0,0,0,0,0,0,3,0,0,0,4,0,0,0,67,0, + 0,0,115,42,0,0,0,116,0,124,0,124,1,124,2,131, + 3,1,0,124,2,100,1,107,4,114,32,116,1,124,0,124, + 1,124,2,131,3,125,0,116,2,124,0,116,3,131,2,83, + 0,41,2,97,50,1,0,0,73,109,112,111,114,116,32,97, + 110,100,32,114,101,116,117,114,110,32,116,104,101,32,109,111, + 100,117,108,101,32,98,97,115,101,100,32,111,110,32,105,116, + 115,32,110,97,109,101,44,32,116,104,101,32,112,97,99,107, + 97,103,101,32,116,104,101,32,99,97,108,108,32,105,115,10, + 32,32,32,32,98,101,105,110,103,32,109,97,100,101,32,102, + 114,111,109,44,32,97,110,100,32,116,104,101,32,108,101,118, + 101,108,32,97,100,106,117,115,116,109,101,110,116,46,10,10, + 32,32,32,32,84,104,105,115,32,102,117,110,99,116,105,111, + 110,32,114,101,112,114,101,115,101,110,116,115,32,116,104,101, + 32,103,114,101,97,116,101,115,116,32,99,111,109,109,111,110, + 32,100,101,110,111,109,105,110,97,116,111,114,32,111,102,32, + 102,117,110,99,116,105,111,110,97,108,105,116,121,10,32,32, + 32,32,98,101,116,119,101,101,110,32,105,109,112,111,114,116, + 95,109,111,100,117,108,101,32,97,110,100,32,95,95,105,109, + 112,111,114,116,95,95,46,32,84,104,105,115,32,105,110,99, + 108,117,100,101,115,32,115,101,116,116,105,110,103,32,95,95, + 112,97,99,107,97,103,101,95,95,32,105,102,10,32,32,32, + 32,116,104,101,32,108,111,97,100,101,114,32,100,105,100,32, + 110,111,116,46,10,10,32,32,32,32,114,22,0,0,0,41, + 4,114,197,0,0,0,114,185,0,0,0,114,204,0,0,0, + 218,11,95,103,99,100,95,105,109,112,111,114,116,114,196,0, + 0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,0, + 0,114,205,0,0,0,234,3,0,0,115,8,0,0,0,0, + 9,12,1,8,1,12,1,114,205,0,0,0,169,1,218,9, + 114,101,99,117,114,115,105,118,101,99,3,0,0,0,1,0, + 0,0,8,0,0,0,11,0,0,0,67,0,0,0,115,226, + 0,0,0,124,1,68,0,93,216,125,4,116,0,124,4,116, + 1,131,2,115,66,124,3,114,34,124,0,106,2,100,1,23, + 0,125,5,110,4,100,2,125,5,116,3,100,3,124,5,155, + 0,100,4,116,4,124,4,131,1,106,2,155,0,157,4,131, + 1,130,1,110,154,124,4,100,5,107,2,114,108,124,3,115, + 106,116,5,124,0,100,6,131,2,114,106,116,6,124,0,124, + 0,106,7,124,2,100,7,100,8,141,4,1,0,110,112,116, + 5,124,0,124,4,131,2,115,220,100,9,160,8,124,0,106, + 2,124,4,161,2,125,6,122,14,116,9,124,2,124,6,131, + 2,1,0,87,0,110,72,4,0,116,10,107,10,114,218,1, + 0,125,7,1,0,122,42,124,7,106,11,124,6,107,2,114, + 200,116,12,106,13,160,14,124,6,116,15,161,2,100,10,107, + 9,114,200,87,0,89,0,162,8,113,4,130,0,87,0,53, + 0,100,10,125,7,126,7,88,0,89,0,110,2,88,0,113, + 4,124,0,83,0,41,11,122,238,70,105,103,117,114,101,32, + 111,117,116,32,119,104,97,116,32,95,95,105,109,112,111,114, + 116,95,95,32,115,104,111,117,108,100,32,114,101,116,117,114, + 110,46,10,10,32,32,32,32,84,104,101,32,105,109,112,111, + 114,116,95,32,112,97,114,97,109,101,116,101,114,32,105,115, + 32,97,32,99,97,108,108,97,98,108,101,32,119,104,105,99, + 104,32,116,97,107,101,115,32,116,104,101,32,110,97,109,101, + 32,111,102,32,109,111,100,117,108,101,32,116,111,10,32,32, + 32,32,105,109,112,111,114,116,46,32,73,116,32,105,115,32, + 114,101,113,117,105,114,101,100,32,116,111,32,100,101,99,111, + 117,112,108,101,32,116,104,101,32,102,117,110,99,116,105,111, + 110,32,102,114,111,109,32,97,115,115,117,109,105,110,103,32, + 105,109,112,111,114,116,108,105,98,39,115,10,32,32,32,32, + 105,109,112,111,114,116,32,105,109,112,108,101,109,101,110,116, + 97,116,105,111,110,32,105,115,32,100,101,115,105,114,101,100, + 46,10,10,32,32,32,32,122,8,46,95,95,97,108,108,95, + 95,122,13,96,96,102,114,111,109,32,108,105,115,116,39,39, + 122,8,73,116,101,109,32,105,110,32,122,18,32,109,117,115, + 116,32,98,101,32,115,116,114,44,32,110,111,116,32,250,1, + 42,218,7,95,95,97,108,108,95,95,84,114,206,0,0,0, + 114,179,0,0,0,78,41,16,114,193,0,0,0,114,194,0, + 0,0,114,1,0,0,0,114,195,0,0,0,114,14,0,0, + 0,114,4,0,0,0,218,16,95,104,97,110,100,108,101,95, + 102,114,111,109,108,105,115,116,114,209,0,0,0,114,45,0, + 0,0,114,67,0,0,0,114,200,0,0,0,114,17,0,0, + 0,114,15,0,0,0,114,92,0,0,0,114,34,0,0,0, + 114,203,0,0,0,41,8,114,96,0,0,0,218,8,102,114, + 111,109,108,105,115,116,114,201,0,0,0,114,207,0,0,0, + 218,1,120,90,5,119,104,101,114,101,90,9,102,114,111,109, + 95,110,97,109,101,90,3,101,120,99,114,10,0,0,0,114, + 10,0,0,0,114,11,0,0,0,114,210,0,0,0,249,3, + 0,0,115,44,0,0,0,0,10,8,1,10,1,4,1,12, + 2,4,1,28,2,8,1,14,1,10,1,2,255,8,2,10, + 1,14,1,2,1,14,1,16,4,10,1,16,255,2,2,8, + 1,22,1,114,210,0,0,0,99,1,0,0,0,0,0,0, + 0,3,0,0,0,6,0,0,0,67,0,0,0,115,146,0, + 0,0,124,0,160,0,100,1,161,1,125,1,124,0,160,0, + 100,2,161,1,125,2,124,1,100,3,107,9,114,82,124,2, + 100,3,107,9,114,78,124,1,124,2,106,1,107,3,114,78, + 116,2,106,3,100,4,124,1,155,2,100,5,124,2,106,1, + 155,2,100,6,157,5,116,4,100,7,100,8,141,3,1,0, + 124,1,83,0,124,2,100,3,107,9,114,96,124,2,106,1, + 83,0,116,2,106,3,100,9,116,4,100,7,100,8,141,3, + 1,0,124,0,100,10,25,0,125,1,100,11,124,0,107,7, + 114,142,124,1,160,5,100,12,161,1,100,13,25,0,125,1, + 124,1,83,0,41,14,122,167,67,97,108,99,117,108,97,116, + 101,32,119,104,97,116,32,95,95,112,97,99,107,97,103,101, + 95,95,32,115,104,111,117,108,100,32,98,101,46,10,10,32, + 32,32,32,95,95,112,97,99,107,97,103,101,95,95,32,105, + 115,32,110,111,116,32,103,117,97,114,97,110,116,101,101,100, + 32,116,111,32,98,101,32,100,101,102,105,110,101,100,32,111, + 114,32,99,111,117,108,100,32,98,101,32,115,101,116,32,116, + 111,32,78,111,110,101,10,32,32,32,32,116,111,32,114,101, + 112,114,101,115,101,110,116,32,116,104,97,116,32,105,116,115, + 32,112,114,111,112,101,114,32,118,97,108,117,101,32,105,115, + 32,117,110,107,110,111,119,110,46,10,10,32,32,32,32,114, + 145,0,0,0,114,105,0,0,0,78,122,32,95,95,112,97, + 99,107,97,103,101,95,95,32,33,61,32,95,95,115,112,101, + 99,95,95,46,112,97,114,101,110,116,32,40,122,4,32,33, + 61,32,250,1,41,233,3,0,0,0,41,1,90,10,115,116, + 97,99,107,108,101,118,101,108,122,89,99,97,110,39,116,32, + 114,101,115,111,108,118,101,32,112,97,99,107,97,103,101,32, + 102,114,111,109,32,95,95,115,112,101,99,95,95,32,111,114, + 32,95,95,112,97,99,107,97,103,101,95,95,44,32,102,97, + 108,108,105,110,103,32,98,97,99,107,32,111,110,32,95,95, + 110,97,109,101,95,95,32,97,110,100,32,95,95,112,97,116, + 104,95,95,114,1,0,0,0,114,141,0,0,0,114,128,0, + 0,0,114,22,0,0,0,41,6,114,34,0,0,0,114,130, + 0,0,0,114,189,0,0,0,114,190,0,0,0,114,191,0, + 0,0,114,129,0,0,0,41,3,218,7,103,108,111,98,97, + 108,115,114,183,0,0,0,114,95,0,0,0,114,10,0,0, + 0,114,10,0,0,0,114,11,0,0,0,218,17,95,99,97, + 108,99,95,95,95,112,97,99,107,97,103,101,95,95,30,4, + 0,0,115,38,0,0,0,0,7,10,1,10,1,8,1,18, + 1,22,2,2,0,2,254,6,3,4,1,8,1,6,2,6, + 2,2,0,2,254,6,3,8,1,8,1,14,1,114,216,0, + 0,0,114,10,0,0,0,99,5,0,0,0,0,0,0,0, + 9,0,0,0,5,0,0,0,67,0,0,0,115,180,0,0, + 0,124,4,100,1,107,2,114,18,116,0,124,0,131,1,125, + 5,110,36,124,1,100,2,107,9,114,30,124,1,110,2,105, + 0,125,6,116,1,124,6,131,1,125,7,116,0,124,0,124, + 7,124,4,131,3,125,5,124,3,115,150,124,4,100,1,107, + 2,114,84,116,0,124,0,160,2,100,3,161,1,100,1,25, + 0,131,1,83,0,124,0,115,92,124,5,83,0,116,3,124, + 0,131,1,116,3,124,0,160,2,100,3,161,1,100,1,25, + 0,131,1,24,0,125,8,116,4,106,5,124,5,106,6,100, + 2,116,3,124,5,106,6,131,1,124,8,24,0,133,2,25, + 0,25,0,83,0,110,26,116,7,124,5,100,4,131,2,114, + 172,116,8,124,5,124,3,116,0,131,3,83,0,124,5,83, + 0,100,2,83,0,41,5,97,215,1,0,0,73,109,112,111, + 114,116,32,97,32,109,111,100,117,108,101,46,10,10,32,32, + 32,32,84,104,101,32,39,103,108,111,98,97,108,115,39,32, + 97,114,103,117,109,101,110,116,32,105,115,32,117,115,101,100, + 32,116,111,32,105,110,102,101,114,32,119,104,101,114,101,32, + 116,104,101,32,105,109,112,111,114,116,32,105,115,32,111,99, + 99,117,114,114,105,110,103,32,102,114,111,109,10,32,32,32, + 32,116,111,32,104,97,110,100,108,101,32,114,101,108,97,116, + 105,118,101,32,105,109,112,111,114,116,115,46,32,84,104,101, + 32,39,108,111,99,97,108,115,39,32,97,114,103,117,109,101, + 110,116,32,105,115,32,105,103,110,111,114,101,100,46,32,84, + 104,101,10,32,32,32,32,39,102,114,111,109,108,105,115,116, + 39,32,97,114,103,117,109,101,110,116,32,115,112,101,99,105, + 102,105,101,115,32,119,104,97,116,32,115,104,111,117,108,100, + 32,101,120,105,115,116,32,97,115,32,97,116,116,114,105,98, + 117,116,101,115,32,111,110,32,116,104,101,32,109,111,100,117, + 108,101,10,32,32,32,32,98,101,105,110,103,32,105,109,112, + 111,114,116,101,100,32,40,101,46,103,46,32,96,96,102,114, + 111,109,32,109,111,100,117,108,101,32,105,109,112,111,114,116, + 32,60,102,114,111,109,108,105,115,116,62,96,96,41,46,32, + 32,84,104,101,32,39,108,101,118,101,108,39,10,32,32,32, + 32,97,114,103,117,109,101,110,116,32,114,101,112,114,101,115, + 101,110,116,115,32,116,104,101,32,112,97,99,107,97,103,101, + 32,108,111,99,97,116,105,111,110,32,116,111,32,105,109,112, + 111,114,116,32,102,114,111,109,32,105,110,32,97,32,114,101, + 108,97,116,105,118,101,10,32,32,32,32,105,109,112,111,114, + 116,32,40,101,46,103,46,32,96,96,102,114,111,109,32,46, + 46,112,107,103,32,105,109,112,111,114,116,32,109,111,100,96, + 96,32,119,111,117,108,100,32,104,97,118,101,32,97,32,39, + 108,101,118,101,108,39,32,111,102,32,50,41,46,10,10,32, + 32,32,32,114,22,0,0,0,78,114,128,0,0,0,114,141, + 0,0,0,41,9,114,205,0,0,0,114,216,0,0,0,218, + 9,112,97,114,116,105,116,105,111,110,114,181,0,0,0,114, + 15,0,0,0,114,92,0,0,0,114,1,0,0,0,114,4, + 0,0,0,114,210,0,0,0,41,9,114,17,0,0,0,114, + 215,0,0,0,218,6,108,111,99,97,108,115,114,211,0,0, + 0,114,184,0,0,0,114,96,0,0,0,90,8,103,108,111, + 98,97,108,115,95,114,183,0,0,0,90,7,99,117,116,95, + 111,102,102,114,10,0,0,0,114,10,0,0,0,114,11,0, + 0,0,218,10,95,95,105,109,112,111,114,116,95,95,57,4, + 0,0,115,30,0,0,0,0,11,8,1,10,2,16,1,8, + 1,12,1,4,3,8,1,18,1,4,1,4,4,26,3,32, + 1,10,1,12,2,114,219,0,0,0,99,1,0,0,0,0, + 0,0,0,2,0,0,0,3,0,0,0,67,0,0,0,115, + 38,0,0,0,116,0,160,1,124,0,161,1,125,1,124,1, + 100,0,107,8,114,30,116,2,100,1,124,0,23,0,131,1, + 130,1,116,3,124,1,131,1,83,0,41,2,78,122,25,110, + 111,32,98,117,105,108,116,45,105,110,32,109,111,100,117,108, + 101,32,110,97,109,101,100,32,41,4,114,160,0,0,0,114, + 166,0,0,0,114,79,0,0,0,114,159,0,0,0,41,2, + 114,17,0,0,0,114,95,0,0,0,114,10,0,0,0,114, + 10,0,0,0,114,11,0,0,0,218,18,95,98,117,105,108, + 116,105,110,95,102,114,111,109,95,110,97,109,101,94,4,0, + 0,115,8,0,0,0,0,1,10,1,8,1,12,1,114,220, + 0,0,0,99,2,0,0,0,0,0,0,0,10,0,0,0, + 5,0,0,0,67,0,0,0,115,166,0,0,0,124,1,97, + 0,124,0,97,1,116,2,116,1,131,1,125,2,116,1,106, + 3,160,4,161,0,68,0,93,72,92,2,125,3,125,4,116, + 5,124,4,124,2,131,2,114,26,124,3,116,1,106,6,107, + 6,114,60,116,7,125,5,110,18,116,0,160,8,124,3,161, + 1,114,26,116,9,125,5,110,2,113,26,116,10,124,4,124, + 5,131,2,125,6,116,11,124,6,124,4,131,2,1,0,113, + 26,116,1,106,3,116,12,25,0,125,7,100,1,68,0,93, + 46,125,8,124,8,116,1,106,3,107,7,114,138,116,13,124, + 8,131,1,125,9,110,10,116,1,106,3,124,8,25,0,125, + 9,116,14,124,7,124,8,124,9,131,3,1,0,113,114,100, + 2,83,0,41,3,122,250,83,101,116,117,112,32,105,109,112, + 111,114,116,108,105,98,32,98,121,32,105,109,112,111,114,116, + 105,110,103,32,110,101,101,100,101,100,32,98,117,105,108,116, + 45,105,110,32,109,111,100,117,108,101,115,32,97,110,100,32, + 105,110,106,101,99,116,105,110,103,32,116,104,101,109,10,32, + 32,32,32,105,110,116,111,32,116,104,101,32,103,108,111,98, + 97,108,32,110,97,109,101,115,112,97,99,101,46,10,10,32, + 32,32,32,65,115,32,115,121,115,32,105,115,32,110,101,101, + 100,101,100,32,102,111,114,32,115,121,115,46,109,111,100,117, + 108,101,115,32,97,99,99,101,115,115,32,97,110,100,32,95, + 105,109,112,32,105,115,32,110,101,101,100,101,100,32,116,111, + 32,108,111,97,100,32,98,117,105,108,116,45,105,110,10,32, + 32,32,32,109,111,100,117,108,101,115,44,32,116,104,111,115, + 101,32,116,119,111,32,109,111,100,117,108,101,115,32,109,117, + 115,116,32,98,101,32,101,120,112,108,105,99,105,116,108,121, + 32,112,97,115,115,101,100,32,105,110,46,10,10,32,32,32, + 32,41,3,114,23,0,0,0,114,189,0,0,0,114,64,0, + 0,0,78,41,15,114,57,0,0,0,114,15,0,0,0,114, + 14,0,0,0,114,92,0,0,0,218,5,105,116,101,109,115, + 114,193,0,0,0,114,78,0,0,0,114,160,0,0,0,114, + 88,0,0,0,114,173,0,0,0,114,142,0,0,0,114,148, + 0,0,0,114,1,0,0,0,114,220,0,0,0,114,5,0, + 0,0,41,10,218,10,115,121,115,95,109,111,100,117,108,101, + 218,11,95,105,109,112,95,109,111,100,117,108,101,90,11,109, + 111,100,117,108,101,95,116,121,112,101,114,17,0,0,0,114, + 96,0,0,0,114,109,0,0,0,114,95,0,0,0,90,11, + 115,101,108,102,95,109,111,100,117,108,101,90,12,98,117,105, + 108,116,105,110,95,110,97,109,101,90,14,98,117,105,108,116, + 105,110,95,109,111,100,117,108,101,114,10,0,0,0,114,10, + 0,0,0,114,11,0,0,0,218,6,95,115,101,116,117,112, + 101,4,0,0,115,36,0,0,0,0,9,4,1,4,3,8, + 1,18,1,10,1,10,1,6,1,10,1,6,2,2,1,10, + 1,12,3,10,1,8,1,10,1,10,2,10,1,114,224,0, + 0,0,99,2,0,0,0,0,0,0,0,2,0,0,0,3, + 0,0,0,67,0,0,0,115,38,0,0,0,116,0,124,0, + 124,1,131,2,1,0,116,1,106,2,160,3,116,4,161,1, + 1,0,116,1,106,2,160,3,116,5,161,1,1,0,100,1, + 83,0,41,2,122,48,73,110,115,116,97,108,108,32,105,109, + 112,111,114,116,101,114,115,32,102,111,114,32,98,117,105,108, + 116,105,110,32,97,110,100,32,102,114,111,122,101,110,32,109, + 111,100,117,108,101,115,78,41,6,114,224,0,0,0,114,15, + 0,0,0,114,188,0,0,0,114,120,0,0,0,114,160,0, + 0,0,114,173,0,0,0,41,2,114,222,0,0,0,114,223, + 0,0,0,114,10,0,0,0,114,10,0,0,0,114,11,0, + 0,0,218,8,95,105,110,115,116,97,108,108,136,4,0,0, + 115,6,0,0,0,0,2,10,2,12,1,114,225,0,0,0, + 99,0,0,0,0,0,0,0,0,1,0,0,0,4,0,0, + 0,67,0,0,0,115,32,0,0,0,100,1,100,2,108,0, + 125,0,124,0,97,1,124,0,160,2,116,3,106,4,116,5, + 25,0,161,1,1,0,100,2,83,0,41,3,122,57,73,110, + 115,116,97,108,108,32,105,109,112,111,114,116,101,114,115,32, + 116,104,97,116,32,114,101,113,117,105,114,101,32,101,120,116, + 101,114,110,97,108,32,102,105,108,101,115,121,115,116,101,109, + 32,97,99,99,101,115,115,114,22,0,0,0,78,41,6,218, + 26,95,102,114,111,122,101,110,95,105,109,112,111,114,116,108, + 105,98,95,101,120,116,101,114,110,97,108,114,126,0,0,0, + 114,225,0,0,0,114,15,0,0,0,114,92,0,0,0,114, + 1,0,0,0,41,1,114,226,0,0,0,114,10,0,0,0, + 114,10,0,0,0,114,11,0,0,0,218,27,95,105,110,115, + 116,97,108,108,95,101,120,116,101,114,110,97,108,95,105,109, + 112,111,114,116,101,114,115,144,4,0,0,115,6,0,0,0, + 0,3,8,1,4,1,114,227,0,0,0,41,2,78,78,41, + 1,78,41,2,78,114,22,0,0,0,41,4,78,78,114,10, + 0,0,0,114,22,0,0,0,41,50,114,3,0,0,0,114, + 126,0,0,0,114,12,0,0,0,114,18,0,0,0,114,59, + 0,0,0,114,33,0,0,0,114,42,0,0,0,114,19,0, + 0,0,114,20,0,0,0,114,49,0,0,0,114,50,0,0, + 0,114,53,0,0,0,114,65,0,0,0,114,67,0,0,0, + 114,76,0,0,0,114,86,0,0,0,114,90,0,0,0,114, + 97,0,0,0,114,111,0,0,0,114,112,0,0,0,114,91, + 0,0,0,114,142,0,0,0,114,148,0,0,0,114,152,0, + 0,0,114,107,0,0,0,114,93,0,0,0,114,158,0,0, + 0,114,159,0,0,0,114,94,0,0,0,114,160,0,0,0, + 114,173,0,0,0,114,178,0,0,0,114,185,0,0,0,114, + 187,0,0,0,114,192,0,0,0,114,197,0,0,0,90,15, + 95,69,82,82,95,77,83,71,95,80,82,69,70,73,88,114, + 199,0,0,0,114,202,0,0,0,218,6,111,98,106,101,99, + 116,114,203,0,0,0,114,204,0,0,0,114,205,0,0,0, + 114,210,0,0,0,114,216,0,0,0,114,219,0,0,0,114, + 220,0,0,0,114,224,0,0,0,114,225,0,0,0,114,227, + 0,0,0,114,10,0,0,0,114,10,0,0,0,114,10,0, + 0,0,114,11,0,0,0,218,8,60,109,111,100,117,108,101, + 62,1,0,0,0,115,94,0,0,0,4,24,4,2,8,8, + 8,8,4,2,4,3,16,4,14,68,14,21,14,16,8,37, + 8,17,8,11,14,8,8,11,8,12,8,16,8,36,14,101, + 16,26,10,45,14,72,8,17,8,17,8,30,8,37,8,42, + 8,15,14,73,14,79,14,13,8,9,8,9,10,47,8,16, + 4,1,8,2,8,27,6,3,8,16,10,15,14,37,8,27, + 10,37,8,7,8,35,8,8, }; From webhook-mailer at python.org Mon Feb 4 20:15:18 2019 From: webhook-mailer at python.org (Steve Dower) Date: Tue, 05 Feb 2019 01:15:18 -0000 Subject: [Python-checkins] bpo-35299: Fixed sysconfig and distutils during PGO profiling (GH-11744) Message-ID: https://github.com/python/cpython/commit/85e102a2b090dd693d0801ae2edb9660cfa0f281 commit: 85e102a2b090dd693d0801ae2edb9660cfa0f281 branch: master author: Steve Dower committer: GitHub date: 2019-02-04T17:15:13-08:00 summary: bpo-35299: Fixed sysconfig and distutils during PGO profiling (GH-11744) files: A Misc/NEWS.d/next/Windows/2019-02-02-14-47-12.bpo-35299.1rgEzd.rst M Lib/distutils/command/build_ext.py M Lib/distutils/sysconfig.py M Lib/distutils/tests/test_build_ext.py M Lib/sysconfig.py M Tools/msi/dev/dev.wixproj diff --git a/Lib/distutils/command/build_ext.py b/Lib/distutils/command/build_ext.py index 158465d2338c..0428466b00c9 100644 --- a/Lib/distutils/command/build_ext.py +++ b/Lib/distutils/command/build_ext.py @@ -161,9 +161,10 @@ def finalize_options(self): # Put the Python "system" include dir at the end, so that # any local include dirs take precedence. - self.include_dirs.append(py_include) + self.include_dirs.extend(py_include.split(os.path.pathsep)) if plat_py_include != py_include: - self.include_dirs.append(plat_py_include) + self.include_dirs.extend( + plat_py_include.split(os.path.pathsep)) self.ensure_string_list('libraries') self.ensure_string_list('link_objects') diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py index b433fc86ffcc..40af493cdfb5 100644 --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py @@ -29,9 +29,7 @@ project_base = os.path.abspath(os.environ["_PYTHON_PROJECT_BASE"]) else: project_base = os.path.dirname(os.path.abspath(sys.executable)) -if (os.name == 'nt' and - project_base.lower().endswith(('\\pcbuild\\win32', '\\pcbuild\\amd64'))): - project_base = os.path.dirname(os.path.dirname(project_base)) + # python_build: (Boolean) if true, we're either building Python or # building an extension with an un-installed Python, so we use @@ -41,16 +39,26 @@ def _is_python_source_dir(d): if os.path.isfile(os.path.join(d, "Modules", fn)): return True return False + _sys_home = getattr(sys, '_home', None) -if (_sys_home and os.name == 'nt' and - _sys_home.lower().endswith(('\\pcbuild\\win32', '\\pcbuild\\amd64'))): - _sys_home = os.path.dirname(os.path.dirname(_sys_home)) + +if os.name == 'nt': + def _fix_pcbuild(d): + if d and os.path.normcase(d).startswith( + os.path.normcase(os.path.join(PREFIX, "PCbuild"))): + return PREFIX + return d + project_base = _fix_pcbuild(project_base) + _sys_home = _fix_pcbuild(_sys_home) + def _python_build(): if _sys_home: return _is_python_source_dir(_sys_home) return _is_python_source_dir(project_base) + python_build = _python_build() + # Calculate the build qualifier flags if they are defined. Adding the flags # to the include and lib directories only makes sense for an installation, not # an in-source build. @@ -99,6 +107,11 @@ def get_python_inc(plat_specific=0, prefix=None): python_dir = 'python' + get_python_version() + build_flags return os.path.join(prefix, "include", python_dir) elif os.name == "nt": + if python_build: + # Include both the include and PC dir to ensure we can find + # pyconfig.h + return (os.path.join(prefix, "include") + os.path.pathsep + + os.path.join(prefix, "PC")) return os.path.join(prefix, "include") else: raise DistutilsPlatformError( diff --git a/Lib/distutils/tests/test_build_ext.py b/Lib/distutils/tests/test_build_ext.py index a72218274ca9..88847f9e9aa7 100644 --- a/Lib/distutils/tests/test_build_ext.py +++ b/Lib/distutils/tests/test_build_ext.py @@ -177,10 +177,12 @@ def test_finalize_options(self): cmd.finalize_options() py_include = sysconfig.get_python_inc() - self.assertIn(py_include, cmd.include_dirs) + for p in py_include.split(os.path.pathsep): + self.assertIn(p, cmd.include_dirs) plat_py_include = sysconfig.get_python_inc(plat_specific=1) - self.assertIn(plat_py_include, cmd.include_dirs) + for p in plat_py_include.split(os.path.pathsep): + self.assertIn(p, cmd.include_dirs) # make sure cmd.libraries is turned into a list # if it's a string diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py index e0f9c18531b6..cc8c7962b1bc 100644 --- a/Lib/sysconfig.py +++ b/Lib/sysconfig.py @@ -125,9 +125,16 @@ def _is_python_source_dir(d): return False _sys_home = getattr(sys, '_home', None) -if (_sys_home and os.name == 'nt' and - _sys_home.lower().endswith(('\\pcbuild\\win32', '\\pcbuild\\amd64'))): - _sys_home = os.path.dirname(os.path.dirname(_sys_home)) + +if os.name == 'nt': + def _fix_pcbuild(d): + if d and os.path.normcase(d).startswith( + os.path.normcase(os.path.join(_PREFIX, "PCbuild"))): + return _PREFIX + return d + _PROJECT_BASE = _fix_pcbuild(_PROJECT_BASE) + _sys_home = _fix_pcbuild(_sys_home) + def is_python_build(check_home=False): if check_home and _sys_home: return _is_python_source_dir(_sys_home) diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-14-47-12.bpo-35299.1rgEzd.rst b/Misc/NEWS.d/next/Windows/2019-02-02-14-47-12.bpo-35299.1rgEzd.rst new file mode 100644 index 000000000000..19fba619b5ab --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2019-02-02-14-47-12.bpo-35299.1rgEzd.rst @@ -0,0 +1,2 @@ +Fix sysconfig detection of the source directory and distutils handling of +pyconfig.h during PGO profiling diff --git a/Tools/msi/dev/dev.wixproj b/Tools/msi/dev/dev.wixproj index bc3a19ce33ca..4a56cec35722 100644 --- a/Tools/msi/dev/dev.wixproj +++ b/Tools/msi/dev/dev.wixproj @@ -21,7 +21,8 @@ - + $(PySourcePath) !(bindpath.src) $(PySourcePath) From webhook-mailer at python.org Mon Feb 4 20:55:04 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Tue, 05 Feb 2019 01:55:04 -0000 Subject: [Python-checkins] bpo-35299: Fixed sysconfig and distutils during PGO profiling (GH-11744) Message-ID: https://github.com/python/cpython/commit/4f6854a690e95ab5159687794652c639a020d6fd commit: 4f6854a690e95ab5159687794652c639a020d6fd branch: 3.7 author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> committer: GitHub date: 2019-02-04T17:54:59-08:00 summary: bpo-35299: Fixed sysconfig and distutils during PGO profiling (GH-11744) (cherry picked from commit 85e102a2b090dd693d0801ae2edb9660cfa0f281) Co-authored-by: Steve Dower files: A Misc/NEWS.d/next/Windows/2019-02-02-14-47-12.bpo-35299.1rgEzd.rst M Lib/distutils/command/build_ext.py M Lib/distutils/sysconfig.py M Lib/distutils/tests/test_build_ext.py M Lib/sysconfig.py M Tools/msi/dev/dev.wixproj diff --git a/Lib/distutils/command/build_ext.py b/Lib/distutils/command/build_ext.py index 158465d2338c..0428466b00c9 100644 --- a/Lib/distutils/command/build_ext.py +++ b/Lib/distutils/command/build_ext.py @@ -161,9 +161,10 @@ def finalize_options(self): # Put the Python "system" include dir at the end, so that # any local include dirs take precedence. - self.include_dirs.append(py_include) + self.include_dirs.extend(py_include.split(os.path.pathsep)) if plat_py_include != py_include: - self.include_dirs.append(plat_py_include) + self.include_dirs.extend( + plat_py_include.split(os.path.pathsep)) self.ensure_string_list('libraries') self.ensure_string_list('link_objects') diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py index e07a6c8b94ec..83160f8dcc59 100644 --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py @@ -29,9 +29,7 @@ project_base = os.path.abspath(os.environ["_PYTHON_PROJECT_BASE"]) else: project_base = os.path.dirname(os.path.abspath(sys.executable)) -if (os.name == 'nt' and - project_base.lower().endswith(('\\pcbuild\\win32', '\\pcbuild\\amd64'))): - project_base = os.path.dirname(os.path.dirname(project_base)) + # python_build: (Boolean) if true, we're either building Python or # building an extension with an un-installed Python, so we use @@ -43,16 +41,26 @@ def _is_python_source_dir(d): if os.path.isfile(os.path.join(d, "Modules", fn)): return True return False + _sys_home = getattr(sys, '_home', None) -if (_sys_home and os.name == 'nt' and - _sys_home.lower().endswith(('\\pcbuild\\win32', '\\pcbuild\\amd64'))): - _sys_home = os.path.dirname(os.path.dirname(_sys_home)) + +if os.name == 'nt': + def _fix_pcbuild(d): + if d and os.path.normcase(d).startswith( + os.path.normcase(os.path.join(PREFIX, "PCbuild"))): + return PREFIX + return d + project_base = _fix_pcbuild(project_base) + _sys_home = _fix_pcbuild(_sys_home) + def _python_build(): if _sys_home: return _is_python_source_dir(_sys_home) return _is_python_source_dir(project_base) + python_build = _python_build() + # Calculate the build qualifier flags if they are defined. Adding the flags # to the include and lib directories only makes sense for an installation, not # an in-source build. @@ -101,6 +109,11 @@ def get_python_inc(plat_specific=0, prefix=None): python_dir = 'python' + get_python_version() + build_flags return os.path.join(prefix, "include", python_dir) elif os.name == "nt": + if python_build: + # Include both the include and PC dir to ensure we can find + # pyconfig.h + return (os.path.join(prefix, "include") + os.path.pathsep + + os.path.join(prefix, "PC")) return os.path.join(prefix, "include") else: raise DistutilsPlatformError( diff --git a/Lib/distutils/tests/test_build_ext.py b/Lib/distutils/tests/test_build_ext.py index a72218274ca9..88847f9e9aa7 100644 --- a/Lib/distutils/tests/test_build_ext.py +++ b/Lib/distutils/tests/test_build_ext.py @@ -177,10 +177,12 @@ def test_finalize_options(self): cmd.finalize_options() py_include = sysconfig.get_python_inc() - self.assertIn(py_include, cmd.include_dirs) + for p in py_include.split(os.path.pathsep): + self.assertIn(p, cmd.include_dirs) plat_py_include = sysconfig.get_python_inc(plat_specific=1) - self.assertIn(plat_py_include, cmd.include_dirs) + for p in plat_py_include.split(os.path.pathsep): + self.assertIn(p, cmd.include_dirs) # make sure cmd.libraries is turned into a list # if it's a string diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py index 9ee4d3185a71..d15cec8dbfc9 100644 --- a/Lib/sysconfig.py +++ b/Lib/sysconfig.py @@ -125,9 +125,16 @@ def _is_python_source_dir(d): return False _sys_home = getattr(sys, '_home', None) -if (_sys_home and os.name == 'nt' and - _sys_home.lower().endswith(('\\pcbuild\\win32', '\\pcbuild\\amd64'))): - _sys_home = os.path.dirname(os.path.dirname(_sys_home)) + +if os.name == 'nt': + def _fix_pcbuild(d): + if d and os.path.normcase(d).startswith( + os.path.normcase(os.path.join(_PREFIX, "PCbuild"))): + return _PREFIX + return d + _PROJECT_BASE = _fix_pcbuild(_PROJECT_BASE) + _sys_home = _fix_pcbuild(_sys_home) + def is_python_build(check_home=False): if check_home and _sys_home: return _is_python_source_dir(_sys_home) diff --git a/Misc/NEWS.d/next/Windows/2019-02-02-14-47-12.bpo-35299.1rgEzd.rst b/Misc/NEWS.d/next/Windows/2019-02-02-14-47-12.bpo-35299.1rgEzd.rst new file mode 100644 index 000000000000..19fba619b5ab --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2019-02-02-14-47-12.bpo-35299.1rgEzd.rst @@ -0,0 +1,2 @@ +Fix sysconfig detection of the source directory and distutils handling of +pyconfig.h during PGO profiling diff --git a/Tools/msi/dev/dev.wixproj b/Tools/msi/dev/dev.wixproj index bc3a19ce33ca..4a56cec35722 100644 --- a/Tools/msi/dev/dev.wixproj +++ b/Tools/msi/dev/dev.wixproj @@ -21,7 +21,8 @@ - + $(PySourcePath) !(bindpath.src) $(PySourcePath) From webhook-mailer at python.org Tue Feb 5 02:33:00 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Tue, 05 Feb 2019 07:33:00 -0000 Subject: [Python-checkins] Fix typo (micro->nano) (GH-11759) Message-ID: https://github.com/python/cpython/commit/9da3583e78603a81b1839e17a420079f734a75b0 commit: 9da3583e78603a81b1839e17a420079f734a75b0 branch: master author: Raymond Hettinger committer: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> date: 2019-02-04T23:32:55-08:00 summary: Fix typo (micro->nano) (GH-11759) files: M Tools/scripts/var_access_benchmark.py diff --git a/Tools/scripts/var_access_benchmark.py b/Tools/scripts/var_access_benchmark.py index b4f3b9727056..f8490457e65a 100644 --- a/Tools/scripts/var_access_benchmark.py +++ b/Tools/scripts/var_access_benchmark.py @@ -269,4 +269,4 @@ def loop_overhead(trials=trials): continue timing = min(Timer(f).repeat(7, 1000)) timing *= 1000000 / (len(trials) * steps_per_trial) - print(u'{:6.1f} \N{greek small letter mu}s\t{}'.format(timing, f.__name__)) + print('{:6.1f} ns\t{}'.format(timing, f.__name__)) From webhook-mailer at python.org Tue Feb 5 03:04:49 2019 From: webhook-mailer at python.org (Inada Naoki) Date: Tue, 05 Feb 2019 08:04:49 -0000 Subject: [Python-checkins] asyncio: use dict instead of OrderedDict (GH-11710) Message-ID: https://github.com/python/cpython/commit/f34517094049170acc311bac30f68fa67f27a301 commit: f34517094049170acc311bac30f68fa67f27a301 branch: master author: Inada Naoki committer: GitHub date: 2019-02-05T17:04:40+09:00 summary: asyncio: use dict instead of OrderedDict (GH-11710) files: M Lib/asyncio/base_events.py diff --git a/Lib/asyncio/base_events.py b/Lib/asyncio/base_events.py index cec47ce67f38..36fe7e0076c9 100644 --- a/Lib/asyncio/base_events.py +++ b/Lib/asyncio/base_events.py @@ -1187,7 +1187,7 @@ def _check_sendfile_params(self, sock, file, offset, count): (local_addr, remote_addr)), ) else: # join address by (family, protocol) - addr_infos = collections.OrderedDict() + addr_infos = {} # Using order preserving dict for idx, addr in ((0, local_addr), (1, remote_addr)): if addr is not None: assert isinstance(addr, tuple) and len(addr) == 2, ( From solipsis at pitrou.net Tue Feb 5 04:11:12 2019 From: solipsis at pitrou.net (solipsis at pitrou.net) Date: Tue, 05 Feb 2019 09:11:12 +0000 Subject: [Python-checkins] Daily reference leaks (4243df51fe43): sum=10 Message-ID: <20190205091112.1.9D3CFBF3D474F644@psf.io> results for 4243df51fe43 on branch "default" -------------------------------------------- test_asyncio leaked [0, 3, 0] memory blocks, sum=3 test_collections leaked [-7, 8, 0] memory blocks, sum=1 test_functools leaked [0, 3, 1] memory blocks, sum=4 test_multiprocessing_fork leaked [2, 0, 1] memory blocks, sum=3 test_multiprocessing_spawn leaked [0, -2, 1] memory blocks, sum=-1 Command line was: ['./python', '-m', 'test.regrtest', '-uall', '-R', '3:3:/home/psf-users/antoine/refleaks/reflogl__qDK', '--timeout', '7200'] From webhook-mailer at python.org Tue Feb 5 05:16:20 2019 From: webhook-mailer at python.org (Inada Naoki) Date: Tue, 05 Feb 2019 10:16:20 -0000 Subject: [Python-checkins] bpo-20001: update pathlib landing image (GH-11304) Message-ID: https://github.com/python/cpython/commit/cd90f6a3692e0f7ef0a13aae651e19a08d1f9b31 commit: cd90f6a3692e0f7ef0a13aae651e19a08d1f9b31 branch: master author: Harmandeep Singh committer: Inada Naoki date: 2019-02-05T19:16:13+09:00 summary: bpo-20001: update pathlib landing image (GH-11304) files: M Doc/library/pathlib-inheritance.png M Doc/library/pathlib-inheritance.svg diff --git a/Doc/library/pathlib-inheritance.png b/Doc/library/pathlib-inheritance.png index f0e8d0213418..628ae6e9adb6 100644 Binary files a/Doc/library/pathlib-inheritance.png and b/Doc/library/pathlib-inheritance.png differ diff --git a/Doc/library/pathlib-inheritance.svg b/Doc/library/pathlib-inheritance.svg index 9f42005e0a12..49057f678fd7 100644 --- a/Doc/library/pathlib-inheritance.svg +++ b/Doc/library/pathlib-inheritance.svg @@ -1,4 +1 @@ - - - - + \ No newline at end of file From webhook-mailer at python.org Tue Feb 5 05:39:47 2019 From: webhook-mailer at python.org (Inada Naoki) Date: Tue, 05 Feb 2019 10:39:47 -0000 Subject: [Python-checkins] bpo-20001: update pathlib landing image (GH-11304) Message-ID: https://github.com/python/cpython/commit/21ab7744ae30bff24bcc9e075a96e98137b90a37 commit: 21ab7744ae30bff24bcc9e075a96e98137b90a37 branch: 3.7 author: Inada Naoki committer: GitHub date: 2019-02-05T19:39:42+09:00 summary: bpo-20001: update pathlib landing image (GH-11304) (cherry picked from commit cd90f6a3692e0f7ef0a13aae651e19a08d1f9b31) files: M Doc/library/pathlib-inheritance.png M Doc/library/pathlib-inheritance.svg diff --git a/Doc/library/pathlib-inheritance.png b/Doc/library/pathlib-inheritance.png index b81c3deb6049..628ae6e9adb6 100644 Binary files a/Doc/library/pathlib-inheritance.png and b/Doc/library/pathlib-inheritance.png differ diff --git a/Doc/library/pathlib-inheritance.svg b/Doc/library/pathlib-inheritance.svg index 9f42005e0a12..49057f678fd7 100644 --- a/Doc/library/pathlib-inheritance.svg +++ b/Doc/library/pathlib-inheritance.svg @@ -1,4 +1 @@ - - - - + \ No newline at end of file From solipsis at pitrou.net Wed Feb 6 04:13:38 2019 From: solipsis at pitrou.net (solipsis at pitrou.net) Date: Wed, 06 Feb 2019 09:13:38 +0000 Subject: [Python-checkins] Daily reference leaks (4243df51fe43): sum=10 Message-ID: <20190206091338.1.C8C1DA936DC9096A@psf.io> results for 4243df51fe43 on branch "default" -------------------------------------------- test_collections leaked [0, 7, 0] memory blocks, sum=7 test_functools leaked [0, 3, 1] memory blocks, sum=4 test_multiprocessing_forkserver leaked [-1, 2, -2] memory blocks, sum=-1 test_multiprocessing_spawn leaked [-1, -1, 2] memory blocks, sum=0 Command line was: ['./python', '-m', 'test.regrtest', '-uall', '-R', '3:3:/home/psf-users/antoine/refleaks/reflog20YNZ4', '--timeout', '7200'] From webhook-mailer at python.org Wed Feb 6 15:45:07 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Wed, 06 Feb 2019 20:45:07 -0000 Subject: [Python-checkins] Fix url to core-mentorship mailing list (GH-11775) Message-ID: https://github.com/python/cpython/commit/e9bc4172d18db9c182d8e04dd7b033097a994c06 commit: e9bc4172d18db9c182d8e04dd7b033097a994c06 branch: master author: Mariatta committer: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> date: 2019-02-06T12:45:03-08:00 summary: Fix url to core-mentorship mailing list (GH-11775) files: M Doc/bugs.rst diff --git a/Doc/bugs.rst b/Doc/bugs.rst index 3206a456b3a8..c449ba2e7192 100644 --- a/Doc/bugs.rst +++ b/Doc/bugs.rst @@ -89,4 +89,4 @@ any and all questions pertaining to the process of fixing issues in Python. .. _Documentation bugs: https://bugs.python.org/issue?@filter=status&@filter=components&components=4&status=1&@columns=id,activity,title,status&@sort=-activity .. _Python Developer's Guide: https://devguide.python.org/ -.. _core-mentorship mailing list: https://mail.python.org/mailman/listinfo/core-mentorship/ +.. _core-mentorship mailing list: https://mail.python.org/mailman3/lists/core-mentorship.python.org/ From webhook-mailer at python.org Wed Feb 6 15:58:03 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Wed, 06 Feb 2019 20:58:03 -0000 Subject: [Python-checkins] Fix url to core-mentorship mailing list (GH-11775) Message-ID: https://github.com/python/cpython/commit/27f6e94d5feed9608e45af25de263216ae77cbfe commit: 27f6e94d5feed9608e45af25de263216ae77cbfe branch: 3.7 author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> committer: GitHub date: 2019-02-06T12:58:00-08:00 summary: Fix url to core-mentorship mailing list (GH-11775) (cherry picked from commit e9bc4172d18db9c182d8e04dd7b033097a994c06) Co-authored-by: Mariatta files: M Doc/bugs.rst diff --git a/Doc/bugs.rst b/Doc/bugs.rst index 3206a456b3a8..c449ba2e7192 100644 --- a/Doc/bugs.rst +++ b/Doc/bugs.rst @@ -89,4 +89,4 @@ any and all questions pertaining to the process of fixing issues in Python. .. _Documentation bugs: https://bugs.python.org/issue?@filter=status&@filter=components&components=4&status=1&@columns=id,activity,title,status&@sort=-activity .. _Python Developer's Guide: https://devguide.python.org/ -.. _core-mentorship mailing list: https://mail.python.org/mailman/listinfo/core-mentorship/ +.. _core-mentorship mailing list: https://mail.python.org/mailman3/lists/core-mentorship.python.org/ From webhook-mailer at python.org Wed Feb 6 17:02:49 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Wed, 06 Feb 2019 22:02:49 -0000 Subject: [Python-checkins] [2.7] Fix url to core-mentorship mailing list (GH-11775). (GH-11778) Message-ID: https://github.com/python/cpython/commit/8fe830d374da0855e0712160620dd61aa6519d14 commit: 8fe830d374da0855e0712160620dd61aa6519d14 branch: 2.7 author: Mariatta committer: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> date: 2019-02-06T14:02:45-08:00 summary: [2.7] Fix url to core-mentorship mailing list (GH-11775). (GH-11778) (cherry picked from commit e9bc4172d18db9c182d8e04dd7b033097a994c06) Co-authored-by: Mariatta files: M Doc/bugs.rst diff --git a/Doc/bugs.rst b/Doc/bugs.rst index 4dbcb45765e7..3749f936fc70 100644 --- a/Doc/bugs.rst +++ b/Doc/bugs.rst @@ -84,5 +84,5 @@ the `core-mentorship mailing list`_ is a friendly place to get answers to any and all questions pertaining to the process of fixing issues in Python. .. _Documentation bugs: https://bugs.python.org/issue?@filter=status&@filter=components&components=4&status=1&@columns=id,activity,title,status&@sort=-activity -.. _Python Developer's Guide: https://docs.python.org/devguide/ -.. _core-mentorship mailing list: https://mail.python.org/mailman/listinfo/core-mentorship/ +.. _Python Developer's Guide: https://devguide.python.org/ +.. _core-mentorship mailing list: https://mail.python.org/mailman3/lists/core-mentorship.python.org/ From webhook-mailer at python.org Thu Feb 7 02:04:07 2019 From: webhook-mailer at python.org (Raymond Hettinger) Date: Thu, 07 Feb 2019 07:04:07 -0000 Subject: [Python-checkins] bpo-35606: Implement math.prod (GH-11359) Message-ID: https://github.com/python/cpython/commit/bc098515864d0d1ffe8fb97ca1a0526c30fee45a commit: bc098515864d0d1ffe8fb97ca1a0526c30fee45a branch: master author: Pablo Galindo committer: Raymond Hettinger date: 2019-02-06T23:04:02-08:00 summary: bpo-35606: Implement math.prod (GH-11359) files: A Misc/NEWS.d/next/Library/2018-12-29-21-59-03.bpo-35606.NjGjou.rst M Doc/library/math.rst M Doc/whatsnew/3.8.rst M Lib/test/test_math.py M Modules/clinic/mathmodule.c.h M Modules/mathmodule.c diff --git a/Doc/library/math.rst b/Doc/library/math.rst index 76226c282d5e..7129525c7887 100644 --- a/Doc/library/math.rst +++ b/Doc/library/math.rst @@ -178,6 +178,18 @@ Number-theoretic and representation functions of *x* and are floats. +.. function:: prod(iterable, *, start=1) + + Calculate the product of all the elements in the input *iterable*. + The default *start* value for the product is ``1``. + + When the iterable is empty, return the start value. This function is + intended specifically for use with numeric values and may reject + non-numeric types. + + .. versionadded:: 3.8 + + .. function:: remainder(x, y) Return the IEEE 754-style remainder of *x* with respect to *y*. For diff --git a/Doc/whatsnew/3.8.rst b/Doc/whatsnew/3.8.rst index a3982b0dfe09..a90bc274eb6b 100644 --- a/Doc/whatsnew/3.8.rst +++ b/Doc/whatsnew/3.8.rst @@ -171,6 +171,15 @@ json.tool Add option ``--json-lines`` to parse every input line as separate JSON object. (Contributed by Weipeng Hong in :issue:`31553`.) + +math +---- + +Added new function, :func:`math.prod`, as analogous function to :func:`sum` +that returns the product of a 'start' value (default: 1) times an iterable of +numbers. (Contributed by Pablo Galindo in :issue:`issue35606`) + + os.path ------- diff --git a/Lib/test/test_math.py b/Lib/test/test_math.py index f9b11f3f74e6..083759ca75e1 100644 --- a/Lib/test/test_math.py +++ b/Lib/test/test_math.py @@ -1724,6 +1724,37 @@ def test_fractions(self): self.assertAllClose(fraction_examples, rel_tol=1e-8) self.assertAllNotClose(fraction_examples, rel_tol=1e-9) + def test_prod(self): + prod = math.prod + self.assertEqual(prod([]), 1) + self.assertEqual(prod([], start=5), 5) + self.assertEqual(prod(list(range(2,8))), 5040) + self.assertEqual(prod(iter(list(range(2,8)))), 5040) + self.assertEqual(prod(range(1, 10), start=10), 3628800) + + self.assertEqual(prod([1, 2, 3, 4, 5]), 120) + self.assertEqual(prod([1.0, 2.0, 3.0, 4.0, 5.0]), 120.0) + self.assertEqual(prod([1, 2, 3, 4.0, 5.0]), 120.0) + self.assertEqual(prod([1.0, 2.0, 3.0, 4, 5]), 120.0) + + # Test overflow in fast-path for integers + self.assertEqual(prod([1, 1, 2**32, 1, 1]), 2**32) + # Test overflow in fast-path for floats + self.assertEqual(prod([1.0, 1.0, 2**32, 1, 1]), float(2**32)) + + self.assertRaises(TypeError, prod) + self.assertRaises(TypeError, prod, 42) + self.assertRaises(TypeError, prod, ['a', 'b', 'c']) + self.assertRaises(TypeError, prod, ['a', 'b', 'c'], '') + self.assertRaises(TypeError, prod, [b'a', b'c'], b'') + values = [bytearray(b'a'), bytearray(b'b')] + self.assertRaises(TypeError, prod, values, bytearray(b'')) + self.assertRaises(TypeError, prod, [[1], [2], [3]]) + self.assertRaises(TypeError, prod, [{2:3}]) + self.assertRaises(TypeError, prod, [{2:3}]*2, {2:3}) + self.assertRaises(TypeError, prod, [[1], [2], [3]], []) + with self.assertRaises(TypeError): + prod([10, 20], [30, 40]) # start is a keyword-only argument def test_main(): from doctest import DocFileSuite diff --git a/Misc/NEWS.d/next/Library/2018-12-29-21-59-03.bpo-35606.NjGjou.rst b/Misc/NEWS.d/next/Library/2018-12-29-21-59-03.bpo-35606.NjGjou.rst new file mode 100644 index 000000000000..d70b0bcb5d48 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2018-12-29-21-59-03.bpo-35606.NjGjou.rst @@ -0,0 +1,3 @@ +Implement :func:`math.prod` as analogous function to :func:`sum` that +returns the product of a 'start' value (default: 1) times an iterable of +numbers. Patch by Pablo Galindo. diff --git a/Modules/clinic/mathmodule.c.h b/Modules/clinic/mathmodule.c.h index 82a4c4a0e7a4..b99a8deecea1 100644 --- a/Modules/clinic/mathmodule.c.h +++ b/Modules/clinic/mathmodule.c.h @@ -556,4 +556,41 @@ math_isclose(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject exit: return return_value; } -/*[clinic end generated code: output=0664f30046da09fe input=a9049054013a1b77]*/ + +PyDoc_STRVAR(math_prod__doc__, +"prod($module, iterable, /, *, start=1)\n" +"--\n" +"\n" +"Calculate the product of all the elements in the input iterable.\n" +"\n" +"The default start value for the product is 1.\n" +"\n" +"When the iterable is empty, return the start value. This function is\n" +"intended specifically for use with numeric values and may reject\n" +"non-numeric types."); + +#define MATH_PROD_METHODDEF \ + {"prod", (PyCFunction)(void(*)(void))math_prod, METH_FASTCALL|METH_KEYWORDS, math_prod__doc__}, + +static PyObject * +math_prod_impl(PyObject *module, PyObject *iterable, PyObject *start); + +static PyObject * +math_prod(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) +{ + PyObject *return_value = NULL; + static const char * const _keywords[] = {"", "start", NULL}; + static _PyArg_Parser _parser = {"O|$O:prod", _keywords, 0}; + PyObject *iterable; + PyObject *start = NULL; + + if (!_PyArg_ParseStackAndKeywords(args, nargs, kwnames, &_parser, + &iterable, &start)) { + goto exit; + } + return_value = math_prod_impl(module, iterable, start); + +exit: + return return_value; +} +/*[clinic end generated code: output=20505690ca6fe402 input=a9049054013a1b77]*/ diff --git a/Modules/mathmodule.c b/Modules/mathmodule.c index 83dab1269d63..d2f8d5334736 100644 --- a/Modules/mathmodule.c +++ b/Modules/mathmodule.c @@ -2494,6 +2494,172 @@ math_isclose_impl(PyObject *module, double a, double b, double rel_tol, } +/*[clinic input] +math.prod + + iterable: object + / + * + start: object(c_default="NULL") = 1 + +Calculate the product of all the elements in the input iterable. + +The default start value for the product is 1. + +When the iterable is empty, return the start value. This function is +intended specifically for use with numeric values and may reject +non-numeric types. +[clinic start generated code]*/ + +static PyObject * +math_prod_impl(PyObject *module, PyObject *iterable, PyObject *start) +/*[clinic end generated code: output=36153bedac74a198 input=4c5ab0682782ed54]*/ +{ + PyObject *result = start; + PyObject *temp, *item, *iter; + + iter = PyObject_GetIter(iterable); + if (iter == NULL) { + return NULL; + } + + if (result == NULL) { + result = PyLong_FromLong(1); + if (result == NULL) { + Py_DECREF(iter); + return NULL; + } + } else { + Py_INCREF(result); + } +#ifndef SLOW_PROD + /* Fast paths for integers keeping temporary products in C. + * Assumes all inputs are the same type. + * If the assumption fails, default to use PyObjects instead. + */ + if (PyLong_CheckExact(result)) { + int overflow; + long i_result = PyLong_AsLongAndOverflow(result, &overflow); + /* If this already overflowed, don't even enter the loop. */ + if (overflow == 0) { + Py_DECREF(result); + result = NULL; + } + /* Loop over all the items in the iterable until we finish, we overflow + * or we found a non integer element */ + while(result == NULL) { + item = PyIter_Next(iter); + if (item == NULL) { + Py_DECREF(iter); + if (PyErr_Occurred()) { + return NULL; + } + return PyLong_FromLong(i_result); + } + if (PyLong_CheckExact(item)) { + long b = PyLong_AsLongAndOverflow(item, &overflow); + long x = i_result * b; + /* Continue if there is no overflow */ + if (overflow == 0 + && x < INT_MAX && x > INT_MIN + && !(b != 0 && x / i_result != b)) { + i_result = x; + Py_DECREF(item); + continue; + } + } + /* Either overflowed or is not an int. + * Restore real objects and process normally */ + result = PyLong_FromLong(i_result); + if (result == NULL) { + Py_DECREF(item); + Py_DECREF(iter); + return NULL; + } + temp = PyNumber_Multiply(result, item); + Py_DECREF(result); + Py_DECREF(item); + result = temp; + if (result == NULL) { + Py_DECREF(iter); + return NULL; + } + } + } + + /* Fast paths for floats keeping temporary products in C. + * Assumes all inputs are the same type. + * If the assumption fails, default to use PyObjects instead. + */ + if (PyFloat_CheckExact(result)) { + double f_result = PyFloat_AS_DOUBLE(result); + Py_DECREF(result); + result = NULL; + while(result == NULL) { + item = PyIter_Next(iter); + if (item == NULL) { + Py_DECREF(iter); + if (PyErr_Occurred()) { + return NULL; + } + return PyFloat_FromDouble(f_result); + } + if (PyFloat_CheckExact(item)) { + f_result *= PyFloat_AS_DOUBLE(item); + Py_DECREF(item); + continue; + } + if (PyLong_CheckExact(item)) { + long value; + int overflow; + value = PyLong_AsLongAndOverflow(item, &overflow); + if (!overflow) { + f_result *= (double)value; + Py_DECREF(item); + continue; + } + } + result = PyFloat_FromDouble(f_result); + if (result == NULL) { + Py_DECREF(item); + Py_DECREF(iter); + return NULL; + } + temp = PyNumber_Multiply(result, item); + Py_DECREF(result); + Py_DECREF(item); + result = temp; + if (result == NULL) { + Py_DECREF(iter); + return NULL; + } + } + } +#endif + /* Consume rest of the iterable (if any) that could not be handled + * by specialized functions above.*/ + for(;;) { + item = PyIter_Next(iter); + if (item == NULL) { + /* error, or end-of-sequence */ + if (PyErr_Occurred()) { + Py_DECREF(result); + result = NULL; + } + break; + } + temp = PyNumber_Multiply(result, item); + Py_DECREF(result); + Py_DECREF(item); + result = temp; + if (result == NULL) + break; + } + Py_DECREF(iter); + return result; +} + + static PyMethodDef math_methods[] = { {"acos", math_acos, METH_O, math_acos_doc}, {"acosh", math_acosh, METH_O, math_acosh_doc}, @@ -2541,6 +2707,7 @@ static PyMethodDef math_methods[] = { {"tan", math_tan, METH_O, math_tan_doc}, {"tanh", math_tanh, METH_O, math_tanh_doc}, MATH_TRUNC_METHODDEF + MATH_PROD_METHODDEF {NULL, NULL} /* sentinel */ }; From solipsis at pitrou.net Thu Feb 7 04:07:37 2019 From: solipsis at pitrou.net (solipsis at pitrou.net) Date: Thu, 07 Feb 2019 09:07:37 +0000 Subject: [Python-checkins] Daily reference leaks (4243df51fe43): sum=3 Message-ID: <20190207090737.1.6720771D29DD9E9E@psf.io> results for 4243df51fe43 on branch "default" -------------------------------------------- test_collections leaked [7, -7, 1] memory blocks, sum=1 test_functools leaked [0, 3, 1] memory blocks, sum=4 test_multiprocessing_fork leaked [1, -2, 1] memory blocks, sum=0 test_multiprocessing_forkserver leaked [1, 0, -2] memory blocks, sum=-1 test_multiprocessing_spawn leaked [0, 1, -2] memory blocks, sum=-1 Command line was: ['./python', '-m', 'test.regrtest', '-uall', '-R', '3:3:/home/psf-users/antoine/refleaks/reflogjl6CRq', '--timeout', '7200'] From webhook-mailer at python.org Thu Feb 7 06:03:25 2019 From: webhook-mailer at python.org (Antoine Pitrou) Date: Thu, 07 Feb 2019 11:03:25 -0000 Subject: [Python-checkins] bpo-35917: Test multiprocessing manager classes and shareable types (GH-11772) Message-ID: https://github.com/python/cpython/commit/2848d9d29914948621bce26bf0d9a89f2e19b97b commit: 2848d9d29914948621bce26bf0d9a89f2e19b97b branch: master author: Giampaolo Rodola committer: Antoine Pitrou date: 2019-02-07T11:03:11Z summary: bpo-35917: Test multiprocessing manager classes and shareable types (GH-11772) multiprocessing: provide unittests for manager classes and shareable types files: A Misc/NEWS.d/next/Tests/2019-02-06-18-06-16.bpo-35917.-Clv1L.rst M Lib/test/_test_multiprocessing.py diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py index 7341131231a4..2f839b952126 100644 --- a/Lib/test/_test_multiprocessing.py +++ b/Lib/test/_test_multiprocessing.py @@ -4706,6 +4706,252 @@ def is_alive(self): any(process.is_alive() for process in forked_processes)) +class TestSyncManagerTypes(unittest.TestCase): + """Test all the types which can be shared between a parent and a + child process by using a manager which acts as an intermediary + between them. + + In the following unit-tests the base type is created in the parent + process, the @classmethod represents the worker process and the + shared object is readable and editable between the two. + + # The child. + @classmethod + def _test_list(cls, obj): + assert obj[0] == 5 + assert obj.append(6) + + # The parent. + def test_list(self): + o = self.manager.list() + o.append(5) + self.run_worker(self._test_list, o) + assert o[1] == 6 + """ + manager_class = multiprocessing.managers.SyncManager + + def setUp(self): + self.manager = self.manager_class() + self.manager.start() + self.proc = None + + def tearDown(self): + if self.proc is not None and self.proc.is_alive(): + self.proc.terminate() + self.proc.join() + self.manager.shutdown() + + @classmethod + def setUpClass(cls): + support.reap_children() + + tearDownClass = setUpClass + + def wait_proc_exit(self): + # Only the manager process should be returned by active_children() + # but this can take a bit on slow machines, so wait a few seconds + # if there are other children too (see #17395). + join_process(self.proc) + start_time = time.monotonic() + t = 0.01 + while len(multiprocessing.active_children()) > 1: + time.sleep(t) + t *= 2 + dt = time.monotonic() - start_time + if dt >= 5.0: + test.support.environment_altered = True + print("Warning -- multiprocessing.Manager still has %s active " + "children after %s seconds" + % (multiprocessing.active_children(), dt), + file=sys.stderr) + break + + def run_worker(self, worker, obj): + self.proc = multiprocessing.Process(target=worker, args=(obj, )) + self.proc.daemon = True + self.proc.start() + self.wait_proc_exit() + self.assertEqual(self.proc.exitcode, 0) + + @classmethod + def _test_queue(cls, obj): + assert obj.qsize() == 2 + assert obj.full() + assert not obj.empty() + assert obj.get() == 5 + assert not obj.empty() + assert obj.get() == 6 + assert obj.empty() + + def test_queue(self, qname="Queue"): + o = getattr(self.manager, qname)(2) + o.put(5) + o.put(6) + self.run_worker(self._test_queue, o) + assert o.empty() + assert not o.full() + + def test_joinable_queue(self): + self.test_queue("JoinableQueue") + + @classmethod + def _test_event(cls, obj): + assert obj.is_set() + obj.wait() + obj.clear() + obj.wait(0.001) + + def test_event(self): + o = self.manager.Event() + o.set() + self.run_worker(self._test_event, o) + assert not o.is_set() + o.wait(0.001) + + @classmethod + def _test_lock(cls, obj): + obj.acquire() + + def test_lock(self, lname="Lock"): + o = getattr(self.manager, lname)() + self.run_worker(self._test_lock, o) + o.release() + self.assertRaises(RuntimeError, o.release) # already released + + @classmethod + def _test_rlock(cls, obj): + obj.acquire() + obj.release() + + def test_rlock(self, lname="Lock"): + o = getattr(self.manager, lname)() + self.run_worker(self._test_rlock, o) + + @classmethod + def _test_semaphore(cls, obj): + obj.acquire() + + def test_semaphore(self, sname="Semaphore"): + o = getattr(self.manager, sname)() + self.run_worker(self._test_semaphore, o) + o.release() + + def test_bounded_semaphore(self): + self.test_semaphore(sname="BoundedSemaphore") + + @classmethod + def _test_condition(cls, obj): + obj.acquire() + obj.release() + + def test_condition(self): + o = self.manager.Condition() + self.run_worker(self._test_condition, o) + + @classmethod + def _test_barrier(cls, obj): + assert obj.parties == 5 + obj.reset() + + def test_barrier(self): + o = self.manager.Barrier(5) + self.run_worker(self._test_barrier, o) + + @classmethod + def _test_pool(cls, obj): + # TODO: fix https://bugs.python.org/issue35919 + with obj: + pass + + def test_pool(self): + o = self.manager.Pool(processes=4) + self.run_worker(self._test_pool, o) + + @classmethod + def _test_list(cls, obj): + assert obj[0] == 5 + assert obj.count(5) == 1 + assert obj.index(5) == 0 + obj.sort() + obj.reverse() + for x in obj: + pass + assert len(obj) == 1 + assert obj.pop(0) == 5 + + def test_list(self): + o = self.manager.list() + o.append(5) + self.run_worker(self._test_list, o) + assert not o + self.assertEqual(len(o), 0) + + @classmethod + def _test_dict(cls, obj): + assert len(obj) == 1 + assert obj['foo'] == 5 + assert obj.get('foo') == 5 + # TODO: fix https://bugs.python.org/issue35918 + # assert obj.has_key('foo') + assert list(obj.items()) == [('foo', 5)] + assert list(obj.keys()) == ['foo'] + assert list(obj.values()) == [5] + assert obj.copy() == {'foo': 5} + assert obj.popitem() == ('foo', 5) + + def test_dict(self): + o = self.manager.dict() + o['foo'] = 5 + self.run_worker(self._test_dict, o) + assert not o + self.assertEqual(len(o), 0) + + @classmethod + def _test_value(cls, obj): + assert obj.value == 1 + assert obj.get() == 1 + obj.set(2) + + def test_value(self): + o = self.manager.Value('i', 1) + self.run_worker(self._test_value, o) + self.assertEqual(o.value, 2) + self.assertEqual(o.get(), 2) + + @classmethod + def _test_array(cls, obj): + assert obj[0] == 0 + assert obj[1] == 1 + assert len(obj) == 2 + assert list(obj) == [0, 1] + + def test_array(self): + o = self.manager.Array('i', [0, 1]) + self.run_worker(self._test_array, o) + + @classmethod + def _test_namespace(cls, obj): + assert obj.x == 0 + assert obj.y == 1 + + def test_namespace(self): + o = self.manager.Namespace() + o.x = 0 + o.y = 1 + self.run_worker(self._test_namespace, o) + + +try: + import multiprocessing.shared_memory +except ImportError: + @unittest.skip("SharedMemoryManager not available on this platform") + class TestSharedMemoryManagerTypes(TestSyncManagerTypes): + pass +else: + class TestSharedMemoryManagerTypes(TestSyncManagerTypes): + """Same as above but by using SharedMemoryManager.""" + manager_class = multiprocessing.shared_memory.SharedMemoryManager + class MiscTestCase(unittest.TestCase): def test__all__(self): diff --git a/Misc/NEWS.d/next/Tests/2019-02-06-18-06-16.bpo-35917.-Clv1L.rst b/Misc/NEWS.d/next/Tests/2019-02-06-18-06-16.bpo-35917.-Clv1L.rst new file mode 100644 index 000000000000..546d47e39d87 --- /dev/null +++ b/Misc/NEWS.d/next/Tests/2019-02-06-18-06-16.bpo-35917.-Clv1L.rst @@ -0,0 +1,3 @@ +multiprocessing: provide unit tests for SyncManager and SharedMemoryManager +classes + all the shareable types which are supposed to be supported by +them. (patch by Giampaolo Rodola) From webhook-mailer at python.org Thu Feb 7 06:34:17 2019 From: webhook-mailer at python.org (Antoine Pitrou) Date: Thu, 07 Feb 2019 11:34:17 -0000 Subject: [Python-checkins] [3.7] bpo-35917: Test multiprocessing manager classes and shareable types (GH-11772) (GH-11780) Message-ID: https://github.com/python/cpython/commit/15526f5be72f547288c16d53526fc74f15ee61ed commit: 15526f5be72f547288c16d53526fc74f15ee61ed branch: 3.7 author: Antoine Pitrou committer: GitHub date: 2019-02-07T11:34:12Z summary: [3.7] bpo-35917: Test multiprocessing manager classes and shareable types (GH-11772) (GH-11780) multiprocessing: provide unittests for manager classes and shareable types. (cherry picked from commit 2848d9d29914948621bce26bf0d9a89f2e19b97b) Co-authored-by: Giampaolo Rodola files: A Misc/NEWS.d/next/Tests/2019-02-06-18-06-16.bpo-35917.-Clv1L.rst M Lib/test/_test_multiprocessing.py diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py index 1bf83ffb9b4a..c35b920758db 100644 --- a/Lib/test/_test_multiprocessing.py +++ b/Lib/test/_test_multiprocessing.py @@ -4575,6 +4575,242 @@ def test_empty(self): proc.join() + +class TestSyncManagerTypes(unittest.TestCase): + """Test all the types which can be shared between a parent and a + child process by using a manager which acts as an intermediary + between them. + + In the following unit-tests the base type is created in the parent + process, the @classmethod represents the worker process and the + shared object is readable and editable between the two. + + # The child. + @classmethod + def _test_list(cls, obj): + assert obj[0] == 5 + assert obj.append(6) + + # The parent. + def test_list(self): + o = self.manager.list() + o.append(5) + self.run_worker(self._test_list, o) + assert o[1] == 6 + """ + manager_class = multiprocessing.managers.SyncManager + + def setUp(self): + self.manager = self.manager_class() + self.manager.start() + self.proc = None + + def tearDown(self): + if self.proc is not None and self.proc.is_alive(): + self.proc.terminate() + self.proc.join() + self.manager.shutdown() + + @classmethod + def setUpClass(cls): + support.reap_children() + + tearDownClass = setUpClass + + def wait_proc_exit(self): + # Only the manager process should be returned by active_children() + # but this can take a bit on slow machines, so wait a few seconds + # if there are other children too (see #17395). + join_process(self.proc) + start_time = time.monotonic() + t = 0.01 + while len(multiprocessing.active_children()) > 1: + time.sleep(t) + t *= 2 + dt = time.monotonic() - start_time + if dt >= 5.0: + test.support.environment_altered = True + print("Warning -- multiprocessing.Manager still has %s active " + "children after %s seconds" + % (multiprocessing.active_children(), dt), + file=sys.stderr) + break + + def run_worker(self, worker, obj): + self.proc = multiprocessing.Process(target=worker, args=(obj, )) + self.proc.daemon = True + self.proc.start() + self.wait_proc_exit() + self.assertEqual(self.proc.exitcode, 0) + + @classmethod + def _test_queue(cls, obj): + assert obj.qsize() == 2 + assert obj.full() + assert not obj.empty() + assert obj.get() == 5 + assert not obj.empty() + assert obj.get() == 6 + assert obj.empty() + + def test_queue(self, qname="Queue"): + o = getattr(self.manager, qname)(2) + o.put(5) + o.put(6) + self.run_worker(self._test_queue, o) + assert o.empty() + assert not o.full() + + def test_joinable_queue(self): + self.test_queue("JoinableQueue") + + @classmethod + def _test_event(cls, obj): + assert obj.is_set() + obj.wait() + obj.clear() + obj.wait(0.001) + + def test_event(self): + o = self.manager.Event() + o.set() + self.run_worker(self._test_event, o) + assert not o.is_set() + o.wait(0.001) + + @classmethod + def _test_lock(cls, obj): + obj.acquire() + + def test_lock(self, lname="Lock"): + o = getattr(self.manager, lname)() + self.run_worker(self._test_lock, o) + o.release() + self.assertRaises(RuntimeError, o.release) # already released + + @classmethod + def _test_rlock(cls, obj): + obj.acquire() + obj.release() + + def test_rlock(self, lname="Lock"): + o = getattr(self.manager, lname)() + self.run_worker(self._test_rlock, o) + + @classmethod + def _test_semaphore(cls, obj): + obj.acquire() + + def test_semaphore(self, sname="Semaphore"): + o = getattr(self.manager, sname)() + self.run_worker(self._test_semaphore, o) + o.release() + + def test_bounded_semaphore(self): + self.test_semaphore(sname="BoundedSemaphore") + + @classmethod + def _test_condition(cls, obj): + obj.acquire() + obj.release() + + def test_condition(self): + o = self.manager.Condition() + self.run_worker(self._test_condition, o) + + @classmethod + def _test_barrier(cls, obj): + assert obj.parties == 5 + obj.reset() + + def test_barrier(self): + o = self.manager.Barrier(5) + self.run_worker(self._test_barrier, o) + + @classmethod + def _test_pool(cls, obj): + # TODO: fix https://bugs.python.org/issue35919 + with obj: + pass + + def test_pool(self): + o = self.manager.Pool(processes=4) + self.run_worker(self._test_pool, o) + + @classmethod + def _test_list(cls, obj): + assert obj[0] == 5 + assert obj.count(5) == 1 + assert obj.index(5) == 0 + obj.sort() + obj.reverse() + for x in obj: + pass + assert len(obj) == 1 + assert obj.pop(0) == 5 + + def test_list(self): + o = self.manager.list() + o.append(5) + self.run_worker(self._test_list, o) + assert not o + self.assertEqual(len(o), 0) + + @classmethod + def _test_dict(cls, obj): + assert len(obj) == 1 + assert obj['foo'] == 5 + assert obj.get('foo') == 5 + # TODO: fix https://bugs.python.org/issue35918 + # assert obj.has_key('foo') + assert list(obj.items()) == [('foo', 5)] + assert list(obj.keys()) == ['foo'] + assert list(obj.values()) == [5] + assert obj.copy() == {'foo': 5} + assert obj.popitem() == ('foo', 5) + + def test_dict(self): + o = self.manager.dict() + o['foo'] = 5 + self.run_worker(self._test_dict, o) + assert not o + self.assertEqual(len(o), 0) + + @classmethod + def _test_value(cls, obj): + assert obj.value == 1 + assert obj.get() == 1 + obj.set(2) + + def test_value(self): + o = self.manager.Value('i', 1) + self.run_worker(self._test_value, o) + self.assertEqual(o.value, 2) + self.assertEqual(o.get(), 2) + + @classmethod + def _test_array(cls, obj): + assert obj[0] == 0 + assert obj[1] == 1 + assert len(obj) == 2 + assert list(obj) == [0, 1] + + def test_array(self): + o = self.manager.Array('i', [0, 1]) + self.run_worker(self._test_array, o) + + @classmethod + def _test_namespace(cls, obj): + assert obj.x == 0 + assert obj.y == 1 + + def test_namespace(self): + o = self.manager.Namespace() + o.x = 0 + o.y = 1 + self.run_worker(self._test_namespace, o) + + # # Mixins # diff --git a/Misc/NEWS.d/next/Tests/2019-02-06-18-06-16.bpo-35917.-Clv1L.rst b/Misc/NEWS.d/next/Tests/2019-02-06-18-06-16.bpo-35917.-Clv1L.rst new file mode 100644 index 000000000000..546d47e39d87 --- /dev/null +++ b/Misc/NEWS.d/next/Tests/2019-02-06-18-06-16.bpo-35917.-Clv1L.rst @@ -0,0 +1,3 @@ +multiprocessing: provide unit tests for SyncManager and SharedMemoryManager +classes + all the shareable types which are supposed to be supported by +them. (patch by Giampaolo Rodola) From webhook-mailer at python.org Thu Feb 7 08:22:50 2019 From: webhook-mailer at python.org (Jason R. Coombs) Date: Thu, 07 Feb 2019 13:22:50 -0000 Subject: [Python-checkins] bpo-24209: In http.server script, rely on getaddrinfo to bind to preferred address based on the bind parameter. (#11767) Message-ID: https://github.com/python/cpython/commit/f289084c83190cc72db4a70c58f007ec62e75247 commit: f289084c83190cc72db4a70c58f007ec62e75247 branch: master author: Jason R. Coombs committer: GitHub date: 2019-02-07T08:22:45-05:00 summary: bpo-24209: In http.server script, rely on getaddrinfo to bind to preferred address based on the bind parameter. (#11767) In http.server script, rely on getaddrinfo to bind to preferred address based on the bind parameter. As a result, now IPv6 is used as the default (including IPv4 on dual-stack systems). Enhanced tests. files: A Misc/NEWS.d/next/Library/2019-02-06-01-40-55.bpo-24209.awtwPD.rst M Lib/http/server.py M Lib/test/test_httpservers.py diff --git a/Lib/http/server.py b/Lib/http/server.py index 29c720ea7ea8..b247675ec45e 100644 --- a/Lib/http/server.py +++ b/Lib/http/server.py @@ -1224,24 +1224,34 @@ def run_cgi(self): self.log_message("CGI script exited OK") +def _get_best_family(*address): + infos = socket.getaddrinfo( + *address, + type=socket.SOCK_STREAM, + flags=socket.AI_PASSIVE, + ) + family, type, proto, canonname, sockaddr = next(iter(infos)) + return family, sockaddr + + def test(HandlerClass=BaseHTTPRequestHandler, ServerClass=ThreadingHTTPServer, - protocol="HTTP/1.0", port=8000, bind=""): + protocol="HTTP/1.0", port=8000, bind=None): """Test the HTTP request handler class. This runs an HTTP server on port 8000 (or the port argument). """ - server_address = (bind, port) - - if ':' in bind: - ServerClass.address_family = socket.AF_INET6 + ServerClass.address_family, addr = _get_best_family(bind, port) HandlerClass.protocol_version = protocol - with ServerClass(server_address, HandlerClass) as httpd: - sa = httpd.socket.getsockname() - serve_message = "Serving HTTP on {host} port {port} (http://{host}:{port}/) ..." - print(serve_message.format(host=sa[0], port=sa[1])) + with ServerClass(addr, HandlerClass) as httpd: + host, port = httpd.socket.getsockname()[:2] + url_host = f'[{host}]' if ':' in host else host + print( + f"Serving HTTP on {host} port {port} " + f"(http://{url_host}:{port}/) ..." + ) try: httpd.serve_forever() except KeyboardInterrupt: @@ -1254,7 +1264,7 @@ def test(HandlerClass=BaseHTTPRequestHandler, parser = argparse.ArgumentParser() parser.add_argument('--cgi', action='store_true', help='Run as CGI Server') - parser.add_argument('--bind', '-b', default='', metavar='ADDRESS', + parser.add_argument('--bind', '-b', metavar='ADDRESS', help='Specify alternate bind address ' '[default: all interfaces]') parser.add_argument('--directory', '-d', default=os.getcwd(), diff --git a/Lib/test/test_httpservers.py b/Lib/test/test_httpservers.py index 3d8e0af8b45c..8357ee9145d7 100644 --- a/Lib/test/test_httpservers.py +++ b/Lib/test/test_httpservers.py @@ -1118,21 +1118,63 @@ def test_all(self): class ScriptTestCase(unittest.TestCase): + + def mock_server_class(self): + return mock.MagicMock( + return_value=mock.MagicMock( + __enter__=mock.MagicMock( + return_value=mock.MagicMock( + socket=mock.MagicMock( + getsockname=lambda: ('', 0), + ), + ), + ), + ), + ) + + @mock.patch('builtins.print') + def test_server_test_unspec(self, _): + mock_server = self.mock_server_class() + server.test(ServerClass=mock_server, bind=None) + self.assertIn( + mock_server.address_family, + (socket.AF_INET6, socket.AF_INET), + ) + + @mock.patch('builtins.print') + def test_server_test_localhost(self, _): + mock_server = self.mock_server_class() + server.test(ServerClass=mock_server, bind="localhost") + self.assertIn( + mock_server.address_family, + (socket.AF_INET6, socket.AF_INET), + ) + + ipv6_addrs = ( + "::", + "2001:0db8:85a3:0000:0000:8a2e:0370:7334", + "::1", + ) + + ipv4_addrs = ( + "0.0.0.0", + "8.8.8.8", + "127.0.0.1", + ) + @mock.patch('builtins.print') def test_server_test_ipv6(self, _): - mock_server = mock.MagicMock() - server.test(ServerClass=mock_server, bind="::") - self.assertEqual(mock_server.address_family, socket.AF_INET6) - - mock_server.reset_mock() - server.test(ServerClass=mock_server, - bind="2001:0db8:85a3:0000:0000:8a2e:0370:7334") - self.assertEqual(mock_server.address_family, socket.AF_INET6) - - mock_server.reset_mock() - server.test(ServerClass=mock_server, - bind="::1") - self.assertEqual(mock_server.address_family, socket.AF_INET6) + for bind in self.ipv6_addrs: + mock_server = self.mock_server_class() + server.test(ServerClass=mock_server, bind=bind) + self.assertEqual(mock_server.address_family, socket.AF_INET6) + + @mock.patch('builtins.print') + def test_server_test_ipv4(self, _): + for bind in self.ipv4_addrs: + mock_server = self.mock_server_class() + server.test(ServerClass=mock_server, bind=bind) + self.assertEqual(mock_server.address_family, socket.AF_INET) def test_main(verbose=None): diff --git a/Misc/NEWS.d/next/Library/2019-02-06-01-40-55.bpo-24209.awtwPD.rst b/Misc/NEWS.d/next/Library/2019-02-06-01-40-55.bpo-24209.awtwPD.rst new file mode 100644 index 000000000000..4d555fd4125a --- /dev/null +++ b/Misc/NEWS.d/next/Library/2019-02-06-01-40-55.bpo-24209.awtwPD.rst @@ -0,0 +1 @@ +In http.server script, rely on getaddrinfo to bind to preferred address based on the bind parameter. Now default bind or binding to a name may bind to IPv6 or dual-stack, depending on the environment. \ No newline at end of file From webhook-mailer at python.org Thu Feb 7 14:36:59 2019 From: webhook-mailer at python.org (Antoine Pitrou) Date: Thu, 07 Feb 2019 19:36:59 -0000 Subject: [Python-checkins] bpo-35911: add cell constructor (GH-11771) Message-ID: https://github.com/python/cpython/commit/df8d2cde63c865446468351f8f648e1c7bd45109 commit: df8d2cde63c865446468351f8f648e1c7bd45109 branch: master author: Pierre Glaser committer: Antoine Pitrou date: 2019-02-07T19:36:48Z summary: bpo-35911: add cell constructor (GH-11771) Add a cell constructor, expose the cell type in the types module. files: A Misc/NEWS.d/next/Core and Builtins/2019-02-06-17-50-59.bpo-35911.oiWE8.rst M Doc/library/types.rst M Doc/reference/datamodel.rst M Lib/test/test_funcattrs.py M Lib/types.py M Objects/cellobject.c diff --git a/Doc/library/types.rst b/Doc/library/types.rst index b19aa0273ef5..07c3a2e7f682 100644 --- a/Doc/library/types.rst +++ b/Doc/library/types.rst @@ -136,6 +136,14 @@ Standard names are defined for the following types: The type for code objects such as returned by :func:`compile`. +.. data:: CellType + + The type for cell objects: such objects are used as containers for + a function's free variables. + + .. versionadded:: 3.8 + + .. data:: MethodType The type of methods of user-defined class instances. diff --git a/Doc/reference/datamodel.rst b/Doc/reference/datamodel.rst index 83e1d239b34a..9961aee14e06 100644 --- a/Doc/reference/datamodel.rst +++ b/Doc/reference/datamodel.rst @@ -539,7 +539,9 @@ Callable types the value of the cell, as well as set the value. Additional information about a function's definition can be retrieved from its - code object; see the description of internal types below. + code object; see the description of internal types below. The + :data:`cell ` type can be accessed in the :mod:`types` + module. Instance methods .. index:: diff --git a/Lib/test/test_funcattrs.py b/Lib/test/test_funcattrs.py index 35fd657ec0ba..11d68cc75e20 100644 --- a/Lib/test/test_funcattrs.py +++ b/Lib/test/test_funcattrs.py @@ -83,6 +83,15 @@ def f(): print(a) self.assertEqual(c[0].__class__.__name__, "cell") self.cannot_set_attr(f, "__closure__", c, AttributeError) + def test_cell_new(self): + cell_obj = types.CellType(1) + self.assertEqual(cell_obj.cell_contents, 1) + + cell_obj = types.CellType() + msg = "shouldn't be able to read an empty cell" + with self.assertRaises(ValueError, msg=msg): + cell_obj.cell_contents + def test_empty_cell(self): def f(): print(a) try: diff --git a/Lib/types.py b/Lib/types.py index ce4652f37189..53b588da7569 100644 --- a/Lib/types.py +++ b/Lib/types.py @@ -15,6 +15,13 @@ def _f(): pass MappingProxyType = type(type.__dict__) SimpleNamespace = type(sys.implementation) +def _cell_factory(): + a = 1 + def f(): + nonlocal a + return f.__closure__[0] +CellType = type(_cell_factory()) + def _g(): yield 1 GeneratorType = type(_g()) diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-02-06-17-50-59.bpo-35911.oiWE8.rst b/Misc/NEWS.d/next/Core and Builtins/2019-02-06-17-50-59.bpo-35911.oiWE8.rst new file mode 100644 index 000000000000..458ccb49fa41 --- /dev/null +++ b/Misc/NEWS.d/next/Core and Builtins/2019-02-06-17-50-59.bpo-35911.oiWE8.rst @@ -0,0 +1,3 @@ +Enable the creation of cell objects by adding a ``cell.__new__`` method, and +expose the type ``cell`` in ``Lib/types.py`` under the name CellType. Patch by +Pierre Glaser. diff --git a/Objects/cellobject.c b/Objects/cellobject.c index 86bebb9604a5..4e359f889fdc 100644 --- a/Objects/cellobject.c +++ b/Objects/cellobject.c @@ -20,6 +20,37 @@ PyCell_New(PyObject *obj) return (PyObject *)op; } +PyDoc_STRVAR(cell_new_doc, +"cell([contents])\n" +"--\n" +"\n" +"Create a new cell object.\n" +"\n" +" contents\n" +" the contents of the cell. If not specified, the cell will be empty,\n" +" and \n further attempts to access its cell_contents attribute will\n" +" raise a ValueError."); + + +static PyObject * +cell_new(PyTypeObject *type, PyObject *args, PyObject *kwargs) +{ + PyObject *return_value = NULL; + PyObject *obj = NULL; + + if (!_PyArg_NoKeywords("cell", kwargs)) { + goto exit; + } + /* min = 0: we allow the cell to be empty */ + if (!PyArg_UnpackTuple(args, "cell", 0, 1, &obj)) { + goto exit; + } + return_value = PyCell_New(obj); + +exit: + return return_value; +} + PyObject * PyCell_Get(PyObject *op) { @@ -146,7 +177,7 @@ PyTypeObject PyCell_Type = { 0, /* tp_setattro */ 0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC, /* tp_flags */ - 0, /* tp_doc */ + cell_new_doc, /* tp_doc */ (traverseproc)cell_traverse, /* tp_traverse */ (inquiry)cell_clear, /* tp_clear */ cell_richcompare, /* tp_richcompare */ @@ -156,4 +187,13 @@ PyTypeObject PyCell_Type = { 0, /* tp_methods */ 0, /* tp_members */ cell_getsetlist, /* tp_getset */ + 0, /* tp_base */ + 0, /* tp_dict */ + 0, /* tp_descr_get */ + 0, /* tp_descr_set */ + 0, /* tp_dictoffset */ + 0, /* tp_init */ + 0, /* tp_alloc */ + (newfunc)cell_new, /* tp_new */ + 0, /* tp_free */ }; From webhook-mailer at python.org Thu Feb 7 14:52:05 2019 From: webhook-mailer at python.org (Antoine Pitrou) Date: Thu, 07 Feb 2019 19:52:05 -0000 Subject: [Python-checkins] bpo-35615: Fix crashes when copying a Weak{Key, Value}Dictionary. (GH-11384) Message-ID: https://github.com/python/cpython/commit/96d37dbcd23e65a7a57819aeced9034296ef747e commit: 96d37dbcd23e65a7a57819aeced9034296ef747e branch: master author: Fish committer: Antoine Pitrou date: 2019-02-07T19:51:59Z summary: bpo-35615: Fix crashes when copying a Weak{Key,Value}Dictionary. (GH-11384) Protect dict iterations by wrapping them with _IterationGuard in the following methods: - WeakValueDictionary.copy() - WeakValueDictionary.__deepcopy__() - WeakKeyDictionary.copy() - WeakKeyDictionary.__deepcopy__() files: A Misc/NEWS.d/next/Library/2018-12-30-20-00-05.bpo-35615.Uz1SVh.rst M Lib/test/test_weakref.py M Lib/weakref.py diff --git a/Lib/test/test_weakref.py b/Lib/test/test_weakref.py index 9fa0bbd78087..1fac08dafc7d 100644 --- a/Lib/test/test_weakref.py +++ b/Lib/test/test_weakref.py @@ -8,6 +8,7 @@ import copy import threading import time +import random from test import support from test.support import script_helper @@ -1688,6 +1689,87 @@ def test_threaded_weak_valued_consistency(self): self.assertEqual(len(d), 1) o = None # lose ref + def check_threaded_weak_dict_copy(self, type_, deepcopy): + # `type_` should be either WeakKeyDictionary or WeakValueDictionary. + # `deepcopy` should be either True or False. + exc = [] + + class DummyKey: + def __init__(self, ctr): + self.ctr = ctr + + class DummyValue: + def __init__(self, ctr): + self.ctr = ctr + + def dict_copy(d, exc): + try: + if deepcopy is True: + _ = copy.deepcopy(d) + else: + _ = d.copy() + except Exception as ex: + exc.append(ex) + + def pop_and_collect(lst): + gc_ctr = 0 + while lst: + i = random.randint(0, len(lst) - 1) + gc_ctr += 1 + lst.pop(i) + if gc_ctr % 10000 == 0: + gc.collect() # just in case + + self.assertIn(type_, (weakref.WeakKeyDictionary, weakref.WeakValueDictionary)) + + d = type_() + keys = [] + values = [] + # Initialize d with many entries + for i in range(70000): + k, v = DummyKey(i), DummyValue(i) + keys.append(k) + values.append(v) + d[k] = v + del k + del v + + t_copy = threading.Thread(target=dict_copy, args=(d, exc,)) + if type_ is weakref.WeakKeyDictionary: + t_collect = threading.Thread(target=pop_and_collect, args=(keys,)) + else: # weakref.WeakValueDictionary + t_collect = threading.Thread(target=pop_and_collect, args=(values,)) + + t_copy.start() + t_collect.start() + + t_copy.join() + t_collect.join() + + # Test exceptions + if exc: + raise exc[0] + + def test_threaded_weak_key_dict_copy(self): + # Issue #35615: Weakref keys or values getting GC'ed during dict + # copying should not result in a crash. + self.check_threaded_weak_dict_copy(weakref.WeakKeyDictionary, False) + + def test_threaded_weak_key_dict_deepcopy(self): + # Issue #35615: Weakref keys or values getting GC'ed during dict + # copying should not result in a crash. + self.check_threaded_weak_dict_copy(weakref.WeakKeyDictionary, True) + + def test_threaded_weak_value_dict_copy(self): + # Issue #35615: Weakref keys or values getting GC'ed during dict + # copying should not result in a crash. + self.check_threaded_weak_dict_copy(weakref.WeakValueDictionary, False) + + def test_threaded_weak_value_dict_deepcopy(self): + # Issue #35615: Weakref keys or values getting GC'ed during dict + # copying should not result in a crash. + self.check_threaded_weak_dict_copy(weakref.WeakValueDictionary, True) + from test import mapping_tests diff --git a/Lib/weakref.py b/Lib/weakref.py index 99de2eab7414..753f07291e20 100644 --- a/Lib/weakref.py +++ b/Lib/weakref.py @@ -171,10 +171,11 @@ def copy(self): if self._pending_removals: self._commit_removals() new = WeakValueDictionary() - for key, wr in self.data.items(): - o = wr() - if o is not None: - new[key] = o + with _IterationGuard(self): + for key, wr in self.data.items(): + o = wr() + if o is not None: + new[key] = o return new __copy__ = copy @@ -184,10 +185,11 @@ def __deepcopy__(self, memo): if self._pending_removals: self._commit_removals() new = self.__class__() - for key, wr in self.data.items(): - o = wr() - if o is not None: - new[deepcopy(key, memo)] = o + with _IterationGuard(self): + for key, wr in self.data.items(): + o = wr() + if o is not None: + new[deepcopy(key, memo)] = o return new def get(self, key, default=None): @@ -408,10 +410,11 @@ def __setitem__(self, key, value): def copy(self): new = WeakKeyDictionary() - for key, value in self.data.items(): - o = key() - if o is not None: - new[o] = value + with _IterationGuard(self): + for key, value in self.data.items(): + o = key() + if o is not None: + new[o] = value return new __copy__ = copy @@ -419,10 +422,11 @@ def copy(self): def __deepcopy__(self, memo): from copy import deepcopy new = self.__class__() - for key, value in self.data.items(): - o = key() - if o is not None: - new[o] = deepcopy(value, memo) + with _IterationGuard(self): + for key, value in self.data.items(): + o = key() + if o is not None: + new[o] = deepcopy(value, memo) return new def get(self, key, default=None): diff --git a/Misc/NEWS.d/next/Library/2018-12-30-20-00-05.bpo-35615.Uz1SVh.rst b/Misc/NEWS.d/next/Library/2018-12-30-20-00-05.bpo-35615.Uz1SVh.rst new file mode 100644 index 000000000000..4aff8f7f30c8 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2018-12-30-20-00-05.bpo-35615.Uz1SVh.rst @@ -0,0 +1,3 @@ +:mod:`weakref`: Fix a RuntimeError when copying a WeakKeyDictionary or a +WeakValueDictionary, due to some keys or values disappearing while +iterating. From webhook-mailer at python.org Thu Feb 7 15:09:20 2019 From: webhook-mailer at python.org (Antoine Pitrou) Date: Thu, 07 Feb 2019 20:09:20 -0000 Subject: [Python-checkins] bpo-35615: Fix crashes when copying a Weak{Key, Value}Dictionary. (GH-11384) (GH-11785) Message-ID: https://github.com/python/cpython/commit/48769a28ad6ef4183508951fa6a378531ace26a4 commit: 48769a28ad6ef4183508951fa6a378531ace26a4 branch: 3.7 author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> committer: Antoine Pitrou date: 2019-02-07T20:09:16Z summary: bpo-35615: Fix crashes when copying a Weak{Key,Value}Dictionary. (GH-11384) (GH-11785) Protect dict iterations by wrapping them with _IterationGuard in the following methods: - WeakValueDictionary.copy() - WeakValueDictionary.__deepcopy__() - WeakKeyDictionary.copy() - WeakKeyDictionary.__deepcopy__() (cherry picked from commit 96d37dbcd23e65a7a57819aeced9034296ef747e) Co-authored-by: Fish files: A Misc/NEWS.d/next/Library/2018-12-30-20-00-05.bpo-35615.Uz1SVh.rst M Lib/test/test_weakref.py M Lib/weakref.py diff --git a/Lib/test/test_weakref.py b/Lib/test/test_weakref.py index 9fa0bbd78087..1fac08dafc7d 100644 --- a/Lib/test/test_weakref.py +++ b/Lib/test/test_weakref.py @@ -8,6 +8,7 @@ import copy import threading import time +import random from test import support from test.support import script_helper @@ -1688,6 +1689,87 @@ def test_threaded_weak_valued_consistency(self): self.assertEqual(len(d), 1) o = None # lose ref + def check_threaded_weak_dict_copy(self, type_, deepcopy): + # `type_` should be either WeakKeyDictionary or WeakValueDictionary. + # `deepcopy` should be either True or False. + exc = [] + + class DummyKey: + def __init__(self, ctr): + self.ctr = ctr + + class DummyValue: + def __init__(self, ctr): + self.ctr = ctr + + def dict_copy(d, exc): + try: + if deepcopy is True: + _ = copy.deepcopy(d) + else: + _ = d.copy() + except Exception as ex: + exc.append(ex) + + def pop_and_collect(lst): + gc_ctr = 0 + while lst: + i = random.randint(0, len(lst) - 1) + gc_ctr += 1 + lst.pop(i) + if gc_ctr % 10000 == 0: + gc.collect() # just in case + + self.assertIn(type_, (weakref.WeakKeyDictionary, weakref.WeakValueDictionary)) + + d = type_() + keys = [] + values = [] + # Initialize d with many entries + for i in range(70000): + k, v = DummyKey(i), DummyValue(i) + keys.append(k) + values.append(v) + d[k] = v + del k + del v + + t_copy = threading.Thread(target=dict_copy, args=(d, exc,)) + if type_ is weakref.WeakKeyDictionary: + t_collect = threading.Thread(target=pop_and_collect, args=(keys,)) + else: # weakref.WeakValueDictionary + t_collect = threading.Thread(target=pop_and_collect, args=(values,)) + + t_copy.start() + t_collect.start() + + t_copy.join() + t_collect.join() + + # Test exceptions + if exc: + raise exc[0] + + def test_threaded_weak_key_dict_copy(self): + # Issue #35615: Weakref keys or values getting GC'ed during dict + # copying should not result in a crash. + self.check_threaded_weak_dict_copy(weakref.WeakKeyDictionary, False) + + def test_threaded_weak_key_dict_deepcopy(self): + # Issue #35615: Weakref keys or values getting GC'ed during dict + # copying should not result in a crash. + self.check_threaded_weak_dict_copy(weakref.WeakKeyDictionary, True) + + def test_threaded_weak_value_dict_copy(self): + # Issue #35615: Weakref keys or values getting GC'ed during dict + # copying should not result in a crash. + self.check_threaded_weak_dict_copy(weakref.WeakValueDictionary, False) + + def test_threaded_weak_value_dict_deepcopy(self): + # Issue #35615: Weakref keys or values getting GC'ed during dict + # copying should not result in a crash. + self.check_threaded_weak_dict_copy(weakref.WeakValueDictionary, True) + from test import mapping_tests diff --git a/Lib/weakref.py b/Lib/weakref.py index 99de2eab7414..753f07291e20 100644 --- a/Lib/weakref.py +++ b/Lib/weakref.py @@ -171,10 +171,11 @@ def copy(self): if self._pending_removals: self._commit_removals() new = WeakValueDictionary() - for key, wr in self.data.items(): - o = wr() - if o is not None: - new[key] = o + with _IterationGuard(self): + for key, wr in self.data.items(): + o = wr() + if o is not None: + new[key] = o return new __copy__ = copy @@ -184,10 +185,11 @@ def __deepcopy__(self, memo): if self._pending_removals: self._commit_removals() new = self.__class__() - for key, wr in self.data.items(): - o = wr() - if o is not None: - new[deepcopy(key, memo)] = o + with _IterationGuard(self): + for key, wr in self.data.items(): + o = wr() + if o is not None: + new[deepcopy(key, memo)] = o return new def get(self, key, default=None): @@ -408,10 +410,11 @@ def __setitem__(self, key, value): def copy(self): new = WeakKeyDictionary() - for key, value in self.data.items(): - o = key() - if o is not None: - new[o] = value + with _IterationGuard(self): + for key, value in self.data.items(): + o = key() + if o is not None: + new[o] = value return new __copy__ = copy @@ -419,10 +422,11 @@ def copy(self): def __deepcopy__(self, memo): from copy import deepcopy new = self.__class__() - for key, value in self.data.items(): - o = key() - if o is not None: - new[o] = deepcopy(value, memo) + with _IterationGuard(self): + for key, value in self.data.items(): + o = key() + if o is not None: + new[o] = deepcopy(value, memo) return new def get(self, key, default=None): diff --git a/Misc/NEWS.d/next/Library/2018-12-30-20-00-05.bpo-35615.Uz1SVh.rst b/Misc/NEWS.d/next/Library/2018-12-30-20-00-05.bpo-35615.Uz1SVh.rst new file mode 100644 index 000000000000..4aff8f7f30c8 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2018-12-30-20-00-05.bpo-35615.Uz1SVh.rst @@ -0,0 +1,3 @@ +:mod:`weakref`: Fix a RuntimeError when copying a WeakKeyDictionary or a +WeakValueDictionary, due to some keys or values disappearing while +iterating. From solipsis at pitrou.net Fri Feb 8 04:06:36 2019 From: solipsis at pitrou.net (solipsis at pitrou.net) Date: Fri, 08 Feb 2019 09:06:36 +0000 Subject: [Python-checkins] Daily reference leaks (4243df51fe43): sum=6 Message-ID: <20190208090636.1.D1AC0C4929A8DB2D@psf.io> results for 4243df51fe43 on branch "default" -------------------------------------------- test_collections leaked [0, -7, 8] memory blocks, sum=1 test_functools leaked [0, 3, 1] memory blocks, sum=4 test_multiprocessing_forkserver leaked [1, -2, 2] memory blocks, sum=1 Command line was: ['./python', '-m', 'test.regrtest', '-uall', '-R', '3:3:/home/psf-users/antoine/refleaks/reflogZiqmwQ', '--timeout', '7200'] From webhook-mailer at python.org Fri Feb 8 11:02:11 2019 From: webhook-mailer at python.org (=?utf-8?q?=C5=81ukasz?= Langa) Date: Fri, 08 Feb 2019 16:02:11 -0000 Subject: [Python-checkins] Add What's New entry for date subclass behavior (#11790) Message-ID: https://github.com/python/cpython/commit/d9503c307a8b6a7b73f6344183602ffb014d3356 commit: d9503c307a8b6a7b73f6344183602ffb014d3356 branch: master author: Paul Ganssle committer: ?ukasz Langa date: 2019-02-08T17:02:00+01:00 summary: Add What's New entry for date subclass behavior (#11790) This was a backwards incompatible change and should be clearly noted. Related bugs: bpo-32417: https://bugs.python.org/issue32417 bpo-35364: https://bugs.python.org/issue35364 files: M Doc/whatsnew/3.8.rst diff --git a/Doc/whatsnew/3.8.rst b/Doc/whatsnew/3.8.rst index a90bc274eb6b..740c608418ab 100644 --- a/Doc/whatsnew/3.8.rst +++ b/Doc/whatsnew/3.8.rst @@ -115,6 +115,14 @@ Other Language Changes a :exc:`SyntaxWarning` instead. (Contributed by Serhiy Storchaka in :issue:`32912`.) +* Arithmetic operations between subclasses of :class:`datetime.date` or + :class:`datetime.datetime` and :class:`datetime.timedelta` objects now return + an instance of the subclass, rather than the base class. This also affects + the return type of operations whose implementation (directly or indirectly) + uses :class:`datetime.timedelta` arithmetic, such as + :meth:`datetime.datetime.astimezone`. + (Contributed by Paul Ganssle in :issue:`32417`.) + New Modules =========== From webhook-mailer at python.org Fri Feb 8 13:37:45 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Fri, 08 Feb 2019 18:37:45 -0000 Subject: [Python-checkins] Complete and neaten-up namedtuple's replacement of builtin function lookups with derefs (GH-11794) Message-ID: https://github.com/python/cpython/commit/64360ada0f6123a051e9dc6cd04f030ec1322e46 commit: 64360ada0f6123a051e9dc6cd04f030ec1322e46 branch: master author: Raymond Hettinger committer: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> date: 2019-02-08T10:37:39-08:00 summary: Complete and neaten-up namedtuple's replacement of builtin function lookups with derefs (GH-11794) files: M Lib/collections/__init__.py diff --git a/Lib/collections/__init__.py b/Lib/collections/__init__.py index aee79b931602..d88c4aaaee89 100644 --- a/Lib/collections/__init__.py +++ b/Lib/collections/__init__.py @@ -390,7 +390,7 @@ def namedtuple(typename, field_names, *, rename=False, defaults=None, module=Non arg_list = repr(field_names).replace("'", "")[1:-1] repr_fmt = '(' + ', '.join(f'{name}=%r' for name in field_names) + ')' tuple_new = tuple.__new__ - _len = len + _dict, _tuple, _len, _map, _zip = dict, tuple, len, map, zip # Create all the named tuple methods to be added to the class namespace @@ -414,7 +414,7 @@ def _make(cls, iterable): 'or iterable') def _replace(_self, **kwds): - result = _self._make(map(kwds.pop, field_names, _self)) + result = _self._make(_map(kwds.pop, field_names, _self)) if kwds: raise ValueError(f'Got unexpected field names: {list(kwds)!r}') return result @@ -426,18 +426,15 @@ def __repr__(self): 'Return a nicely formatted representation string' return self.__class__.__name__ + repr_fmt % self - _dict, _zip = dict, zip - def _asdict(self): 'Return a new dict which maps field names to their values.' return _dict(_zip(self._fields, self)) def __getnewargs__(self): 'Return self as a plain tuple. Used by copy and pickle.' - return tuple(self) + return _tuple(self) # Modify function metadata to help with introspection and debugging - for method in (__new__, _make.__func__, _replace, __repr__, _asdict, __getnewargs__): method.__qualname__ = f'{typename}.{method.__name__}' From webhook-mailer at python.org Fri Feb 8 13:48:51 2019 From: webhook-mailer at python.org (Neil Schemenauer) Date: Fri, 08 Feb 2019 18:48:51 -0000 Subject: [Python-checkins] bpo-35903: Use autoconfig to probe for shm_open() and shm_unlink(). (#11765) Message-ID: https://github.com/python/cpython/commit/5741c45acf9b0ce22ff0dbf56322fe0ff16cfcfc commit: 5741c45acf9b0ce22ff0dbf56322fe0ff16cfcfc branch: master author: Neil Schemenauer committer: GitHub date: 2019-02-08T10:48:46-08:00 summary: bpo-35903: Use autoconfig to probe for shm_open() and shm_unlink(). (#11765) Use autoconfig to probe for shm_open() and shm_unlink(). Set SHM_NEEDS_LIBRT if we must link with librt to get the shm_* functions. Change setup.py to use the autoconfig defines. These changes should make it more likely that _multiprocessing/posixshmem.c gets built correctly on different platforms. files: M configure M configure.ac M pyconfig.h.in M setup.py diff --git a/configure b/configure index ebd9f904b09a..b78a7b226100 100755 --- a/configure +++ b/configure @@ -16862,6 +16862,108 @@ $as_echo "#define HAVE_GETRANDOM 1" >>confdefs.h fi +# checks for POSIX shared memory, used by Modules/_multiprocessing/posixshmem.c +# shm_* may only be available if linking against librt +save_LIBS="$LIBS" +save_includes_default="$ac_includes_default" +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing shm_open" >&5 +$as_echo_n "checking for library containing shm_open... " >&6; } +if ${ac_cv_search_shm_open+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_func_search_save_LIBS=$LIBS +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char shm_open (); +int +main () +{ +return shm_open (); + ; + return 0; +} +_ACEOF +for ac_lib in '' rt; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + if ac_fn_c_try_link "$LINENO"; then : + ac_cv_search_shm_open=$ac_res +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if ${ac_cv_search_shm_open+:} false; then : + break +fi +done +if ${ac_cv_search_shm_open+:} false; then : + +else + ac_cv_search_shm_open=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_shm_open" >&5 +$as_echo "$ac_cv_search_shm_open" >&6; } +ac_res=$ac_cv_search_shm_open +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + +fi + +if test "$ac_cv_search_shm_open" = "-lrt"; then + +$as_echo "#define SHM_NEEDS_LIBRT 1" >>confdefs.h + +fi +for ac_header in sys/mman.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "sys/mman.h" "ac_cv_header_sys_mman_h" "$ac_includes_default" +if test "x$ac_cv_header_sys_mman_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_SYS_MMAN_H 1 +_ACEOF + +fi + +done + +# temporarily override ac_includes_default for AC_CHECK_FUNCS below +ac_includes_default="\ +${ac_includes_default} +#ifndef __cplusplus +# ifdef HAVE_SYS_MMAN_H +# include +# endif +#endif +" +for ac_func in shm_open shm_unlink +do : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + +# we don't want to link with librt always, restore LIBS +LIBS="$save_LIBS" +ac_includes_default="$save_includes_default" + # Check for usable OpenSSL found=false diff --git a/configure.ac b/configure.ac index 721edb015ea3..eeedfedd236f 100644 --- a/configure.ac +++ b/configure.ac @@ -5443,6 +5443,30 @@ if test "$have_getrandom" = yes; then [Define to 1 if the getrandom() function is available]) fi +# checks for POSIX shared memory, used by Modules/_multiprocessing/posixshmem.c +# shm_* may only be available if linking against librt +save_LIBS="$LIBS" +save_includes_default="$ac_includes_default" +AC_SEARCH_LIBS(shm_open, rt) +if test "$ac_cv_search_shm_open" = "-lrt"; then + AC_DEFINE(SHM_NEEDS_LIBRT, 1, + [Define to 1 if you must link with -lrt for shm_open().]) +fi +AC_CHECK_HEADERS(sys/mman.h) +# temporarily override ac_includes_default for AC_CHECK_FUNCS below +ac_includes_default="\ +${ac_includes_default} +#ifndef __cplusplus +# ifdef HAVE_SYS_MMAN_H +# include +# endif +#endif +" +AC_CHECK_FUNCS([shm_open shm_unlink]) +# we don't want to link with librt always, restore LIBS +LIBS="$save_LIBS" +ac_includes_default="$save_includes_default" + # Check for usable OpenSSL AX_CHECK_OPENSSL([have_openssl=yes],[have_openssl=no]) diff --git a/pyconfig.h.in b/pyconfig.h.in index a2a56230fc13..ab9e9e10f7ce 100644 --- a/pyconfig.h.in +++ b/pyconfig.h.in @@ -144,6 +144,18 @@ /* Define to 1 if you have the `copysign' function. */ #undef HAVE_COPYSIGN +/* Define to 1 if you must link with -lrt for shm_open(). */ +#undef SHM_NEEDS_LIBRT + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_MMAN_H + +/* Define to 1 if you have the shm_open syscall */ +#undef HAVE_SHM_OPEN + +/* Define to 1 if you have the shm_unlink syscall */ +#undef HAVE_SHM_UNLINK + /* Define to 1 if you have the header file. */ #undef HAVE_CRYPT_H diff --git a/setup.py b/setup.py index d54bbe0f43ed..4a01a8f45ac4 100644 --- a/setup.py +++ b/setup.py @@ -1592,12 +1592,13 @@ class db_found(Exception): pass if (sysconfig.get_config_var('HAVE_SEM_OPEN') and not sysconfig.get_config_var('POSIX_SEMAPHORES_NOT_ENABLED')): multiprocessing_srcs.append('_multiprocessing/semaphore.c') - if (self.compiler.find_library_file(lib_dirs, 'rt') or - host_platform != 'cygwin'): + if (sysconfig.get_config_var('HAVE_SHM_OPEN') and + sysconfig.get_config_var('HAVE_SHM_UNLINK')): posixshmem_srcs = [ '_multiprocessing/posixshmem.c', ] libs = [] - if self.compiler.find_library_file(lib_dirs, 'rt'): + if sysconfig.get_config_var('SHM_NEEDS_LIBRT'): + # need to link with librt to get shm_open() libs.append('rt') exts.append( Extension('_posixshmem', posixshmem_srcs, define_macros={}, From webhook-mailer at python.org Fri Feb 8 16:09:30 2019 From: webhook-mailer at python.org (Raymond Hettinger) Date: Fri, 08 Feb 2019 21:09:30 -0000 Subject: [Python-checkins] Rework tuple hash tests. (GH-10161) Message-ID: https://github.com/python/cpython/commit/7ab3d1573c123fdd582a239d01f8475651df38f2 commit: 7ab3d1573c123fdd582a239d01f8475651df38f2 branch: master author: Tim Peters committer: Raymond Hettinger date: 2019-02-08T13:09:26-08:00 summary: Rework tuple hash tests. (GH-10161) Add tooling that will useful in future updates, paying particular attention to difficult cases where only the upper bits on the input vary. files: M Lib/test/support/__init__.py M Lib/test/test_tuple.py diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py index 697182ea775f..436f648a979c 100644 --- a/Lib/test/support/__init__.py +++ b/Lib/test/support/__init__.py @@ -2944,3 +2944,44 @@ def __fspath__(self): def maybe_get_event_loop_policy(): """Return the global event loop policy if one is set, else return None.""" return asyncio.events._event_loop_policy + +# Helpers for testing hashing. +NHASHBITS = sys.hash_info.width # number of bits in hash() result +assert NHASHBITS in (32, 64) + +# Return mean and sdev of number of collisions when tossing nballs balls +# uniformly at random into nbins bins. By definition, the number of +# collisions is the number of balls minus the number of occupied bins at +# the end. +def collision_stats(nbins, nballs): + n, k = nbins, nballs + # prob a bin empty after k trials = (1 - 1/n)**k + # mean # empty is then n * (1 - 1/n)**k + # so mean # occupied is n - n * (1 - 1/n)**k + # so collisions = k - (n - n*(1 - 1/n)**k) + # + # For the variance: + # n*(n-1)*(1-2/n)**k + meanempty - meanempty**2 = + # n*(n-1)*(1-2/n)**k + meanempty * (1 - meanempty) + # + # Massive cancellation occurs, and, e.g., for a 64-bit hash code + # 1-1/2**64 rounds uselessly to 1.0. Rather than make heroic (and + # error-prone) efforts to rework the naive formulas to avoid those, + # we use the `decimal` module to get plenty of extra precision. + # + # Note: the exact values are straightforward to compute with + # rationals, but in context that's unbearably slow, requiring + # multi-million bit arithmetic. + import decimal + with decimal.localcontext() as ctx: + bits = n.bit_length() * 2 # bits in n**2 + # At least that many bits will likely cancel out. + # Use that many decimal digits instead. + ctx.prec = max(bits, 30) + dn = decimal.Decimal(n) + p1empty = ((dn - 1) / dn) ** k + meanempty = n * p1empty + occupied = n - meanempty + collisions = k - occupied + var = dn*(dn-1)*((dn-2)/dn)**k + meanempty * (1 - meanempty) + return float(collisions), float(var.sqrt()) diff --git a/Lib/test/test_tuple.py b/Lib/test/test_tuple.py index 929f85316438..ca46d0b5a645 100644 --- a/Lib/test/test_tuple.py +++ b/Lib/test/test_tuple.py @@ -4,6 +4,17 @@ import gc import pickle +# For tuple hashes, we normally only run a test to ensure that we get +# the same results across platforms in a handful of cases. If that's +# so, there's no real point to running more. Set RUN_ALL_HASH_TESTS to +# run more anyway. That's usually of real interest only when analyzing, +# or changing, the hash algorithm. In which case it's usually also +# most useful to set JUST_SHOW_HASH_RESULTS, to see all the results +# instead of wrestling with test "failures". See the bottom of the +# file for extensive notes on what we're testing here and why. +RUN_ALL_HASH_TESTS = False +JUST_SHOW_HASH_RESULTS = False # if RUN_ALL_HASH_TESTS, just display + class TupleTest(seq_tests.CommonTest): type2test = tuple @@ -62,104 +73,183 @@ def f(): yield i self.assertEqual(list(tuple(f())), list(range(1000))) + # We expect tuples whose base components have deterministic hashes to + # have deterministic hashes too - and, indeed, the same hashes across + # platforms with hash codes of the same bit width. + def test_hash_exact(self): + def check_one_exact(t, e32, e64): + got = hash(t) + expected = e32 if support.NHASHBITS == 32 else e64 + if got != expected: + msg = f"FAIL hash({t!r}) == {got} != {expected}" + self.fail(msg) + + check_one_exact((), 750394483, 5740354900026072187) + check_one_exact((0,), 1214856301, -8753497827991233192) + check_one_exact((0, 0), -168982784, -8458139203682520985) + check_one_exact((0.5,), 2077348973, -408149959306781352) + check_one_exact((0.5, (), (-2, 3, (4, 6))), 714642271, + -1845940830829704396) + # Various tests for hashing of tuples to check that we get few collisions. + # Does something only if RUN_ALL_HASH_TESTS is true. # - # Earlier versions of the tuple hash algorithm had collisions + # Earlier versions of the tuple hash algorithm had massive collisions # reported at: # - https://bugs.python.org/issue942952 # - https://bugs.python.org/issue34751 - # - # Notes: - # - The hash of tuples is deterministic: if the test passes once on a given - # system, it will always pass. So the probabilities mentioned in the - # test_hash functions below should be interpreted assuming that the - # hashes are random. - # - Due to the structure in the testsuite inputs, collisions are not - # independent. For example, if hash((a,b)) == hash((c,d)), then also - # hash((a,b,x)) == hash((c,d,x)). But the quoted probabilities assume - # independence anyway. - # - We limit the hash to 32 bits in the tests to have a good test on - # 64-bit systems too. Furthermore, this is also a sanity check that the - # lower 32 bits of a 64-bit hash are sufficiently random too. - def test_hash1(self): - # Check for hash collisions between small integers in range(50) and - # certain tuples and nested tuples of such integers. - N=50 + def test_hash_optional(self): + from itertools import product + + if not RUN_ALL_HASH_TESTS: + return + + # If specified, `expected` is a 2-tuple of expected + # (number_of_collisions, pileup) values, and the test fails if + # those aren't the values we get. Also if specified, the test + # fails if z > `zlimit`. + def tryone_inner(tag, nbins, hashes, expected=None, zlimit=None): + from collections import Counter + + nballs = len(hashes) + mean, sdev = support.collision_stats(nbins, nballs) + c = Counter(hashes) + collisions = nballs - len(c) + z = (collisions - mean) / sdev + pileup = max(c.values()) - 1 + del c + got = (collisions, pileup) + failed = False + prefix = "" + if zlimit is not None and z > zlimit: + failed = True + prefix = f"FAIL z > {zlimit}; " + if expected is not None and got != expected: + failed = True + prefix += f"FAIL {got} != {expected}; " + if failed or JUST_SHOW_HASH_RESULTS: + msg = f"{prefix}{tag}; pileup {pileup:,} mean {mean:.1f} " + msg += f"coll {collisions:,} z {z:+.1f}" + if JUST_SHOW_HASH_RESULTS: + import sys + print(msg, file=sys.__stdout__) + else: + self.fail(msg) + + def tryone(tag, xs, + native32=None, native64=None, hi32=None, lo32=None, + zlimit=None): + NHASHBITS = support.NHASHBITS + hashes = list(map(hash, xs)) + tryone_inner(tag + f"; {NHASHBITS}-bit hash codes", + 1 << NHASHBITS, + hashes, + native32 if NHASHBITS == 32 else native64, + zlimit) + + if NHASHBITS > 32: + shift = NHASHBITS - 32 + tryone_inner(tag + "; 32-bit upper hash codes", + 1 << 32, + [h >> shift for h in hashes], + hi32, + zlimit) + + mask = (1 << 32) - 1 + tryone_inner(tag + "; 32-bit lower hash codes", + 1 << 32, + [h & mask for h in hashes], + lo32, + zlimit) + + # Tuples of smallish positive integers are common - nice if we + # get "better than random" for these. + tryone("range(100) by 3", list(product(range(100), repeat=3)), + (0, 0), (0, 0), (4, 1), (0, 0)) + + # A previous hash had systematic problems when mixing integers of + # similar magnitude but opposite sign, obscurely related to that + # j ^ -2 == -j when j is odd. + cands = list(range(-10, -1)) + list(range(9)) + + # Note: -1 is omitted because hash(-1) == hash(-2) == -2, and + # there's nothing the tuple hash can do to avoid collisions + # inherited from collisions in the tuple components' hashes. + tryone("-10 .. 8 by 4", list(product(cands, repeat=4)), + (0, 0), (0, 0), (0, 0), (0, 0)) + del cands + + # The hashes here are a weird mix of values where all the + # variation is in the lowest bits and across a single high-order + # bit - the middle bits are all zeroes. A decent hash has to + # both propagate low bits to the left and high bits to the + # right. This is also complicated a bit in that there are + # collisions among the hashes of the integers in L alone. + L = [n << 60 for n in range(100)] + tryone("0..99 << 60 by 3", list(product(L, repeat=3)), + (0, 0), (0, 0), (0, 0), (324, 1)) + del L + + # Used to suffer a massive number of collisions. + tryone("[-3, 3] by 18", list(product([-3, 3], repeat=18)), + (7, 1), (0, 0), (7, 1), (6, 1)) + + # And even worse. hash(0.5) has only a single bit set, at the + # high end. A decent hash needs to propagate high bits right. + tryone("[0, 0.5] by 18", list(product([0, 0.5], repeat=18)), + (5, 1), (0, 0), (9, 1), (12, 1)) + + # Hashes of ints and floats are the same across platforms. + # String hashes vary even on a single platform across runs, due + # to hash randomization for strings. So we can't say exactly + # what this should do. Instead we insist that the # of + # collisions is no more than 4 sdevs above the theoretically + # random mean. Even if the tuple hash can't achieve that on its + # own, the string hash is trying to be decently pseudo-random + # (in all bit positions) on _its_ own. We can at least test + # that the tuple hash doesn't systematically ruin that. + tryone("4-char tuples", + list(product("abcdefghijklmnopqrstuvwxyz", repeat=4)), + zlimit=4.0) + + # The "old tuple test". See https://bugs.python.org/issue942952. + # Ensures, for example, that the hash: + # is non-commutative + # spreads closely spaced values + # doesn't exhibit cancellation in tuples like (x,(x,y)) + N = 50 base = list(range(N)) - xp = [(i, j) for i in base for j in base] - inps = base + [(i, j) for i in base for j in xp] + \ - [(i, j) for i in xp for j in base] + xp + list(zip(base)) - self.assertEqual(len(inps), 252600) - hashes = set(hash(x) % 2**32 for x in inps) - collisions = len(inps) - len(hashes) - - # For a pure random 32-bit hash and N = 252,600 test items, the - # expected number of collisions equals - # - # 2**(-32) * N(N-1)/2 = 7.4 - # - # We allow up to 15 collisions, which suffices to make the test - # pass with 99.5% confidence. - self.assertLessEqual(collisions, 15) - - def test_hash2(self): - # Check for hash collisions between small integers (positive and - # negative), tuples and nested tuples of such integers. - - # All numbers in the interval [-n, ..., n] except -1 because - # hash(-1) == hash(-2). + xp = list(product(base, repeat=2)) + inps = base + list(product(base, xp)) + \ + list(product(xp, base)) + xp + list(zip(base)) + tryone("old tuple test", inps, + (2, 1), (0, 0), (52, 49), (7, 1)) + del base, xp, inps + + # The "new tuple test". See https://bugs.python.org/issue34751. + # Even more tortured nesting, and a mix of signed ints of very + # small magnitude. n = 5 A = [x for x in range(-n, n+1) if x != -1] - B = A + [(a,) for a in A] - - L2 = [(a,b) for a in A for b in A] - L3 = L2 + [(a,b,c) for a in A for b in A for c in A] - L4 = L3 + [(a,b,c,d) for a in A for b in A for c in A for d in A] - + L2 = list(product(A, repeat=2)) + L3 = L2 + list(product(A, repeat=3)) + L4 = L3 + list(product(A, repeat=4)) # T = list of testcases. These consist of all (possibly nested # at most 2 levels deep) tuples containing at most 4 items from # the set A. T = A T += [(a,) for a in B + L4] - T += [(a,b) for a in L3 for b in B] - T += [(a,b) for a in L2 for b in L2] - T += [(a,b) for a in B for b in L3] - T += [(a,b,c) for a in B for b in B for c in L2] - T += [(a,b,c) for a in B for b in L2 for c in B] - T += [(a,b,c) for a in L2 for b in B for c in B] - T += [(a,b,c,d) for a in B for b in B for c in B for d in B] - self.assertEqual(len(T), 345130) - hashes = set(hash(x) % 2**32 for x in T) - collisions = len(T) - len(hashes) - - # For a pure random 32-bit hash and N = 345,130 test items, the - # expected number of collisions equals - # - # 2**(-32) * N(N-1)/2 = 13.9 - # - # We allow up to 20 collisions, which suffices to make the test - # pass with 95.5% confidence. - self.assertLessEqual(collisions, 20) - - def test_hash3(self): - # Check for hash collisions between tuples containing 0.0 and 0.5. - # The hashes of 0.0 and 0.5 itself differ only in one high bit. - # So this implicitly tests propagation of high bits to low bits. - from itertools import product - T = list(product([0.0, 0.5], repeat=18)) - self.assertEqual(len(T), 262144) - hashes = set(hash(x) % 2**32 for x in T) - collisions = len(T) - len(hashes) - - # For a pure random 32-bit hash and N = 262,144 test items, the - # expected number of collisions equals - # - # 2**(-32) * N(N-1)/2 = 8.0 - # - # We allow up to 15 collisions, which suffices to make the test - # pass with 99.1% confidence. - self.assertLessEqual(collisions, 15) + T += product(L3, B) + T += product(L2, repeat=2) + T += product(B, L3) + T += product(B, B, L2) + T += product(B, L2, B) + T += product(L2, B, B) + T += product(B, repeat=4) + assert len(T) == 345130 + tryone("new tuple test", T, + (9, 1), (0, 0), (21, 5), (6, 1)) def test_repr(self): l0 = tuple() @@ -298,5 +388,98 @@ def test_lexicographic_ordering(self): self.assertLess(a, b) self.assertLess(b, c) +# Notes on testing hash codes. The primary thing is that Python doesn't +# care about "random" hash codes. To the contrary, we like them to be +# very regular when possible, so that the low-order bits are as evenly +# distributed as possible. For integers this is easy: hash(i) == i for +# all not-huge i except i==-1. +# +# For tuples of mixed type there's really no hope of that, so we want +# "randomish" here instead. But getting close to pseudo-random in all +# bit positions is more expensive than we've been willing to pay for. +# +# We can tolerate large deviations from random - what we don't want is +# catastrophic pileups on a relative handful of hash codes. The dict +# and set lookup routines remain effective provided that full-width hash +# codes for not-equal objects are distinct. +# +# So we compute various statistics here based on what a "truly random" +# hash would do, but don't automate "pass or fail" based on those +# results. Instead those are viewed as inputs to human judgment, and the +# automated tests merely ensure we get the _same_ results across +# platforms. In fact, we normally don't bother to run them at all - +# set RUN_ALL_HASH_TESTS to force it. +# +# When global JUST_SHOW_HASH_RESULTS is True, the tuple hash statistics +# are just displayed to stdout. A typical output line looks like: +# +# old tuple test; 32-bit upper hash codes; \ +# pileup 49 mean 7.4 coll 52 z +16.4 +# +# "old tuple test" is just a string name for the test being run. +# +# "32-bit upper hash codes" means this was run under a 64-bit build and +# we've shifted away the lower 32 bits of the hash codes. +# +# "pileup" is 0 if there were no collisions across those hash codes. +# It's 1 less than the maximum number of times any single hash code was +# seen. So in this case, there was (at least) one hash code that was +# seen 50 times: that hash code "piled up" 49 more times than ideal. +# +# "mean" is the number of collisions a perfectly random hash function +# would have yielded, on average. +# +# "coll" is the number of collisions actually seen. +# +# "z" is "coll - mean" divided by the standard deviation of the number +# of collisions a perfectly random hash function would suffer. A +# positive value is "worse than random", and negative value "better than +# random". Anything of magnitude greater than 3 would be highly suspect +# for a hash function that claimed to be random. It's essentially +# impossible that a truly random function would deliver a result 16.4 +# sdevs "worse than random". +# +# But we don't care here! That's why the test isn't coded to fail. +# Knowing something about how the high-order hash code bits behave +# provides insight, but is irrelevant to how the dict and set lookup +# code performs. The low-order bits are much more important to that, +# and on the same test those did "just like random": +# +# old tuple test; 32-bit lower hash codes; \ +# pileup 1 mean 7.4 coll 7 z -0.2 +# +# So there are always tradeoffs to consider. For another: +# +# 0..99 << 60 by 3; 32-bit hash codes; \ +# pileup 0 mean 116.4 coll 0 z -10.8 +# +# That was run under a 32-bit build, and is spectacularly "better than +# random". On a 64-bit build the wider hash codes are fine too: +# +# 0..99 << 60 by 3; 64-bit hash codes; \ +# pileup 0 mean 0.0 coll 0 z -0.0 +# +# but their lower 32 bits are poor: +# +# 0..99 << 60 by 3; 32-bit lower hash codes; \ +# pileup 1 mean 116.4 coll 324 z +19.2 +# +# In a statistical sense that's waaaaay too many collisions, but (a) 324 +# collisions out of a million hash codes isn't anywhere near being a +# real problem; and, (b) the worst pileup on a single hash code is a measly +# 1 extra. It's a relatively poor case for the tuple hash, but still +# fine for practical use. +# +# This isn't, which is what Python 3.7.1 produced for the hashes of +# itertools.product([0, 0.5], repeat=18). Even with a fat 64-bit +# hashcode, the highest pileup was over 16,000 - making a dict/set +# lookup on one of the colliding values thousands of times slower (on +# average) than we expect. +# +# [0, 0.5] by 18; 64-bit hash codes; \ +# pileup 16,383 mean 0.0 coll 262,128 z +6073641856.9 +# [0, 0.5] by 18; 32-bit lower hash codes; \ +# pileup 262,143 mean 8.0 coll 262,143 z +92683.6 + if __name__ == "__main__": unittest.main() From webhook-mailer at python.org Fri Feb 8 21:55:08 2019 From: webhook-mailer at python.org (Miss Islington (bot)) Date: Sat, 09 Feb 2019 02:55:08 -0000 Subject: [Python-checkins] lru_cache: Add more comments. Fix comment typos. Clarify a comment. (GH-11795) Message-ID: https://github.com/python/cpython/commit/2dda72a2e8e1f1ab28011a65194db5d03979dbb3 commit: 2dda72a2e8e1f1ab28011a65194db5d03979dbb3 branch: master author: Raymond Hettinger committer: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> date: 2019-02-08T18:55:02-08:00 summary: lru_cache: Add more comments. Fix comment typos. Clarify a comment. (GH-11795) files: M Modules/_functoolsmodule.c diff --git a/Modules/_functoolsmodule.c b/Modules/_functoolsmodule.c index d72aaff2b13c..3f1c01651ded 100644 --- a/Modules/_functoolsmodule.c +++ b/Modules/_functoolsmodule.c @@ -661,6 +661,26 @@ sequence is empty."); /* lru_cache object **********************************************************/ +/* There are four principal algorithmic differences from the pure python version: + + 1). The C version relies on the GIL instead of having its own reentrant lock. + + 2). The prev/next link fields use borrowed references. + + 3). For a full cache, the pure python version rotates the location of the + root entry so that it never has to move individual links and it can + limit updates to just the key and result fields. However, in the C + version, links are temporarily removed while the cache dict updates are + occurring. Afterwards, they are appended or prepended back into the + doubly-linked lists. + + 4) In the Python version, the _HashSeq class is used to prevent __hash__ + from being called more than once. In the C version, the "known hash" + variants of dictionary calls as used to the same effect. + +*/ + + /* this object is used delimit args and keywords in the cache keys */ static PyObject *kwd_mark = NULL; @@ -1009,14 +1029,15 @@ bounded_lru_cache_wrapper(lru_cache_object *self, PyObject *args, PyObject *kwds link = self->root.next; lru_cache_extract_link(link); /* Remove it from the cache. - The cache dict holds one reference to the link, - and the linked list holds yet one reference to it. */ + The cache dict holds one reference to the link. + We created one other reference when the link was created. + The linked list only has borrowed references. */ popresult = _PyDict_Pop_KnownHash(self->cache, link->key, link->hash, Py_None); if (popresult == Py_None) { /* Getting here means that the user function call or another thread has already removed the old key from the dictionary. - This link is now an orpan. Since we don't want to leave the + This link is now an orphan. Since we don't want to leave the cache in an inconsistent state, we don't restore the link. */ Py_DECREF(popresult); Py_DECREF(link); @@ -1048,7 +1069,7 @@ bounded_lru_cache_wrapper(lru_cache_object *self, PyObject *args, PyObject *kwds prev and next fields set to valid values. We have to wait for successful insertion in the cache dict before adding the link to the linked list. Otherwise, the potentially reentrant - __eq__ call could cause the then ophan link to be visited. */ + __eq__ call could cause the then orphan link to be visited. */ if (_PyDict_SetItem_KnownHash(self->cache, key, (PyObject *)link, hash) < 0) { /* Somehow the cache dict update failed. We no longer can From webhook-mailer at python.org Fri Feb 8 22:33:09 2019 From: webhook-mailer at python.org (Raymond Hettinger) Date: Sat, 09 Feb 2019 03:33:09 -0000 Subject: [Python-checkins] lru_cache: Add more comments. Fix comment typos. Clarify a comment. (GH-11795) (GH-11798) Message-ID: https://github.com/python/cpython/commit/7c7839329c2c66d051960ab1df096aed1cc9343e commit: 7c7839329c2c66d051960ab1df096aed1cc9343e branch: 3.7 author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com> committer: Raymond Hettinger date: 2019-02-08T19:33:06-08:00 summary: lru_cache: Add more comments. Fix comment typos. Clarify a comment. (GH-11795) (GH-11798) files: M Modules/_functoolsmodule.c diff --git a/Modules/_functoolsmodule.c b/Modules/_functoolsmodule.c index 90c698ee41e4..c6a92ed16959 100644 --- a/Modules/_functoolsmodule.c +++ b/Modules/_functoolsmodule.c @@ -661,6 +661,26 @@ sequence is empty."); /* lru_cache object **********************************************************/ +/* There are four principal algorithmic differences from the pure python version: + + 1). The C version relies on the GIL instead of having its own reentrant lock. + + 2). The prev/next link fields use borrowed references. + + 3). For a full cache, the pure python version rotates the location of the + root entry so that it never has to move individual links and it can + limit updates to just the key and result fields. However, in the C + version, links are temporarily removed while the cache dict updates are + occurring. Afterwards, they are appended or prepended back into the + doubly-linked lists. + + 4) In the Python version, the _HashSeq class is used to prevent __hash__ + from being called more than once. In the C version, the "known hash" + variants of dictionary calls as used to the same effect. + +*/ + + /* this object is used delimit args and keywords in the cache keys */ static PyObject *kwd_mark = NULL; @@ -1009,14 +1029,15 @@ bounded_lru_cache_wrapper(lru_cache_object *self, PyObject *args, PyObject *kwds link = self->root.next; lru_cache_extract_link(link); /* Remove it from the cache. - The cache dict holds one reference to the link, - and the linked list holds yet one reference to it. */ + The cache dict holds one reference to the link. + We created one other reference when the link was created. + The linked list only has borrowed references. */ popresult = _PyDict_Pop_KnownHash(self->cache, link->key, link->hash, Py_None); if (popresult == Py_None) { /* Getting here means that the user function call or another thread has already removed the old key from the dictionary. - This link is now an orpan. Since we don't want to leave the + This link is now an orphan. Since we don't want to leave the cache in an inconsistent state, we don't restore the link. */ Py_DECREF(popresult); Py_DECREF(link); @@ -1048,7 +1069,7 @@ bounded_lru_cache_wrapper(lru_cache_object *self, PyObject *args, PyObject *kwds prev and next fields set to valid values. We have to wait for successful insertion in the cache dict before adding the link to the linked list. Otherwise, the potentially reentrant - __eq__ call could cause the then ophan link to be visited. */ + __eq__ call could cause the then orphan link to be visited. */ if (_PyDict_SetItem_KnownHash(self->cache, key, (PyObject *)link, hash) < 0) { /* Somehow the cache dict update failed. We no longer can From webhook-mailer at python.org Fri Feb 8 22:51:56 2019 From: webhook-mailer at python.org (Terry Jan Reedy) Date: Sat, 09 Feb 2019 03:51:56 -0000 Subject: [Python-checkins] bpo-35833: Revise IDLE doc for control codes sent to Shell. (GH-11799) Message-ID: https://github.com/python/cpython/commit/8a03ff2ff4db973c9fe152561f1796e72cb71132 commit: 8a03ff2ff4db973c9fe152561f1796e72cb71132 branch: master author: Terry Jan Reedy committer: GitHub date: 2019-02-08T22:51:51-05:00 summary: bpo-35833: Revise IDLE doc for control codes sent to Shell. (GH-11799) Add a code example block. files: A Misc/NEWS.d/next/IDLE/2019-02-08-22-14-24.bpo-35833.XKFRvF.rst M Doc/library/idle.rst M Lib/idlelib/NEWS.txt M Lib/idlelib/help.html diff --git a/Doc/library/idle.rst b/Doc/library/idle.rst index 56d7c9f4c2c2..8290039c968b 100644 --- a/Doc/library/idle.rst +++ b/Doc/library/idle.rst @@ -716,14 +716,33 @@ In contrast, some system text windows only keep the last n lines of output. A Windows console, for instance, keeps a user-settable 1 to 9999 lines, with 300 the default. -Text widgets display a subset of Unicode, the Basic Multilingual Plane (BMP). -Which characters get a proper glyph instead of a replacement box depends on -the operating system and installed fonts. Newline characters cause following -text to appear on a new line, but other control characters are either -replaced with a box or deleted. However, ``repr()``, which is used for -interactive echo of expression values, replaces control characters, -some BMP codepoints, and all non-BMP characters with escape codes -before they are output. +A Tk Text widget, and hence IDLE's Shell, displays characters (codepoints) +in the the BMP (Basic Multilingual Plane) subset of Unicode. +Which characters are displayed with a proper glyph and which with a +replacement box depends on the operating system and installed fonts. +Tab characters cause the following text to begin after +the next tab stop. (They occur every 8 'characters'). +Newline characters cause following text to appear on a new line. +Other control characters are ignored or displayed as a space, box, or +something else, depending on the operating system and font. +(Moving the text cursor through such output with arrow keys may exhibit +some surprising spacing behavior.) + +.. code-block:: none + + >>> s = 'a\tb\a<\x02><\r>\bc\nd' + >>> len(s) + 14 + >>> s # Display repr(s) + 'a\tb\x07<\x02><\r>\x08c\nd' + >>> print(s, end='') # Display s as is. + # Result varies by OS and font. Try it. + +The ``repr`` function is used for interactive echo of expression +values. It returns an altered version of the input string in which +control codes, some BMP codepoints, and all non-BMP codepoints are +replaced with escape codes. As demonstrated above, it allows one to +identify the characters in a string, regardless of how they are displayed. Normal and error output are generally kept separate (on separate lines) from code input and each other. They each get different highlight colors. diff --git a/Lib/idlelib/NEWS.txt b/Lib/idlelib/NEWS.txt index 61457e93d238..60454c24c6a8 100644 --- a/Lib/idlelib/NEWS.txt +++ b/Lib/idlelib/NEWS.txt @@ -3,6 +3,9 @@ Released on 2019-10-20? ====================================== +bpo-35833: Revise IDLE doc for control codes sent to Shell. +Add a code example block. + bpo-35770: IDLE macosx deletes Options => Configure IDLE. It previously deleted Window => Zoom Height by mistake. (Zoom Height is now on the Options menu). On Mac, the settings diff --git a/Lib/idlelib/help.html b/Lib/idlelib/help.html index 80c87f6ebdf1..374159f807e9 100644 --- a/Lib/idlelib/help.html +++ b/Lib/idlelib/help.html @@ -6,7 +6,7 @@ - IDLE — Python 3.8.0a0 documentation + IDLE — Python 3.8.0a1 documentation @@ -19,7 +19,7 @@ @@ -72,7 +72,7 @@

Navigation

  • - 3.8.0a0 Documentation » + 3.8.0a1 Documentation »
  • @@ -673,14 +673,31 @@

    User output in Shell -

    Text widgets display a subset of Unicode, the Basic Multilingual Plane (BMP). -Which characters get a proper glyph instead of a replacement box depends on -the operating system and installed fonts. Newline characters cause following -text to appear on a new line, but other control characters are either -replaced with a box or deleted. However, repr(), which is used for -interactive echo of expression values, replaces control characters, -some BMP codepoints, and all non-BMP characters with escape codes -before they are output.

    +

    A Tk Text widget, and hence IDLE?s Shell, displays characters (codepoints) +in the the BMP (Basic Multilingual Plane) subset of Unicode. +Which characters are displayed with a proper glyph and which with a +replacement box depends on the operating system and installed fonts. +Tab characters cause the following text to begin after +the next tab stop. (They occur every 8 ?characters?). +Newline characters cause following text to appear on a new line. +Other control characters are ignored or displayed as a space, box, or +something else, depending on the operating system and font. +(Moving the text cursor through such output with arrow keys may exhibit +some surprising spacing behavior.)

    +
    >>> s = 'a\tb\a<\x02><\r>\bc\nd'
    +>>> len(s)
    +14
    +>>> s  # Display repr(s)
    +'a\tb\x07<\x02><\r>\x08c\nd'
    +>>> print(s, end='')  # Display s as is.
    +# Result varies by OS and font.  Try it.
    +
    +
    +

    The repr function is used for interactive echo of expression +values. It returns an altered version of the input string in which +control codes, some BMP codepoints, and all non-BMP codepoints are +replaced with escape codes. As demonstrated above, it allows one to +identify the characters in a string, regardless of how they are displayed.

    Normal and error output are generally kept separate (on separate lines) from code input and each other. They each get different highlight colors.

    For SyntaxError tracebacks, the normal ?^? marking where the error was @@ -889,7 +906,7 @@

    Navigation

  • - 3.8.0a0 Documentation » + 3.8.0a1 Documentation »
  • @@ -912,7 +929,7 @@

    Navigation