summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* bpo-41713: Remove PyOS_InitInterrupts() from python3dll.c (GH-24257)Victor Stinner2021-01-191-1/+0
|
* Add a clarification for the object-domain allocators regarding pointer ↵Pablo Galindo2021-01-191-0/+7
| | | | validity (GH-24253)
* bpo-41818: Close file descriptors in test_openpty (#GH-24119)Petr Viktorin2021-01-191-10/+10
| | | | | | | | When stdin is a TTY, the test added in commit c13d89955d9a2942c6355d6839d7096323244136 is expected to fail. However, when it failed, it did not close its file descriptors. This is flagged by the refleak tests (but only when stdin is a TTY, which doesn't seem to be the case on CI).
* Add a paragraph about allocation domains to the C-API docs (GH-24252)Pablo Galindo2021-01-181-1/+32
|
* closes bpo-42938: Replace snprintf with Python unicode formatting in ctypes ↵Benjamin Peterson2021-01-183-32/+64
| | | | param reprs. (24239)
* bpo-36143: make regen-all now also runs regen-keyword (GH-24245)Victor Stinner2021-01-182-1/+2
|
* bpo-42923: Dump extension modules on fatal error (GH-24207)Victor Stinner2021-01-188-0/+96
| | | | | | | The Py_FatalError() function and the faulthandler module now dump the list of extension modules on a fatal error. Add _Py_DumpExtensionModules() and _PyModule_IsExtension() internal functions.
* bpo-42944 Fix Random.sample when counts is not None (GH-24235)jonanifranco2021-01-183-28/+29
|
* bpo-42923: Py_FatalError() avoids fprintf() (GH-24242)Victor Stinner2021-01-183-50/+47
| | | | | * Replace buffered fprintf() with unbuffered _Py_write_noraise() in Py_FatalError(). * _Py_DumpHexadecimal() now accepts uintptr_t.
* bpo-42923: Add Py_FatalError() test in test_capi (GH-24240)Victor Stinner2021-01-184-39/+48
| | | Move faulthandler._fatal_error() to _testcapi.fatal_error().
* bpo-42931: randbytes missing from random.__all__ (GH-24219)Setrak Balian2021-01-152-0/+2
|
* bpo-42934: use TracebackException(compact=True) in unittest.TestResult ↵Irit Katriel2021-01-152-1/+5
| | | | (GH-24221)
* Mark instructions at end of class scope as artificial. (GH-24222)Mark Shannon2021-01-152-0/+20
|
* bpo-42877: add the 'compact' param to TracebackException's __init__ (#24179)Irit Katriel2021-01-154-10/+69
| | | Use it to reduce the time and memory taken up by several of traceback's module-level functions.
* bpo-42827: Fix crash on SyntaxError in multiline expressions (GH-24140)Lysandros Nikolaou2021-01-145-2/+64
| | | | | | | | | | | | | | | | | | | | | | | When trying to extract the error line for the error message there are two distinct cases: 1. The input comes from a file, which means that we can extract the error line by using `PyErr_ProgramTextObject` and which we already do. 2. The input does not come from a file, at which point we need to get the source code from the tokenizer: * If the tokenizer's current line number is the same with the line of the error, we get the line from `tok->buf` and we're ready. * Else, we can extract the error line from the source code in the following two ways: * If the input comes from a string we have all the input in `tok->str` and we can extract the error line from it. * If the input comes from stdin, i.e. the interactive prompt, we do not have access to the previous line. That's why a new field `tok->stdin_content` is added which holds the whole input for the current (multiline) statement or expression. We can then extract the error line from `tok->stdin_content` like we do in the string case above. Co-authored-by: Pablo Galindo <Pablogsal@gmail.com>
* Docs: Remove stray semicolon in init.rst (GH-23974)Ken Jin2021-01-141-1/+1
| | | Removed stray semicolon which was causing the docs to render weirdly (it's the function right under the one [here](https://docs.python.org/3/c-api/init.html#c._PyInterpreterState_GetEvalFrameFunc)).
* bpo-39273: Expose BUTTON5_* constants in the curses module if available ↵Zackery Spytz2021-01-144-1/+19
| | | | (GH-17996)
* bpo-40956: Fix sqlite3.Cursor.fetchmany() default value (GH-24214)Erlend Egeberg Aasland2021-01-132-5/+9
|
* bpo-42924: Fix incorrect copy in bytearray_repeat (GH-24208)Tobias Holl2021-01-133-2/+15
| | | | Before, using the * operator to repeat a bytearray would copy data from the start of the internal buffer (ob_bytes) and not from the start of the actual data (ob_start).
* Eliminate NOPs in extended blocks. (GH-24209)Mark Shannon2021-01-131-5/+13
|
* bpo-42908: Mark cleanup code at end of try-except and with artificial (#24202)Mark Shannon2021-01-136-4359/+4473
| | | | | | | | | * Mark bytecodes at end of try-except as artificial. * Make sure that the CFG is consistent throughout optimiization. * Extend line-number propagation logic so that implicit returns after 'try-except' or 'with' have the correct line numbers. * Update importlib
* bpo-1635741: Fix PyModule_AddObjectRef to use EXPORT_FUNC (GH-24205)Dong-hee Na2021-01-131-1/+1
|
* bpo-42901: [Enum] move member creation to `__set_name__` (GH-24196)Ethan Furman2021-01-134-110/+207
| | | | | | | | | | | `type.__new__` calls `__set_name__` and `__init_subclass__`, which means that any work metaclasses do after calling `super().__new__()` will not be available to those two methods. In particular, `Enum` classes that want to make use of `__init_subclass__` will not see any members. Almost all customization is therefore moved to before the `type.__new__()` call, including changing all members to a proto member descriptor with a `__set_name__` that will do the final conversion of a member to be an instance of the `Enum` class.
* bpo-37324: Remove ABC aliases from collections (GH-23754)Hugo van Kemenade2021-01-124-21/+6
| | | | Remove deprecated aliases to Abstract Base Classes from the collections module.
* bpo-42848: remove recursion from TracebackException (GH-24158)Irit Katriel2021-01-123-46/+95
|
* bpo-42874: Remove grep -qE options for Solaris 10 compatibility (GH-24200)Paul Ganssle2021-01-123-2/+5
| | | | | | | | According to [bpo-42874](), some versions of grep do not support the `-q` and `-E` options. Although both options are used elsewhere in the configure script, this particular bit of validation can be achieved without them, so there's no real harm in using a grep call with no flags. Would be good to get some people taking advantage of the `--with-tzpath` arguments in the wild to try this out.. Local testing seems to indicate that this does the same thing, but I don't know that we have any buildbots using this option. Maybe @pablogsal? [bpo-42874]():
* bpo-41994: Fix refcount issues in Python/import.c (GH-22632)Serhiy Storchaka2021-01-124-63/+51
| | | https://bugs.python.org/issue41994
* bpo-42882: Add test_embed.test_unicode_id_init() (GH-24198)Victor Stinner2021-01-122-0/+44
| | | | Test that _PyUnicode_FromId() works when Python is initialized multiples times.
* bpo-42882: _PyRuntimeState_Init() leaves unicode next_index unchanged (GH-24193)Victor Stinner2021-01-123-1/+11
| | | | | | | | Fix the _PyUnicode_FromId() function (_Py_IDENTIFIER(var) API) when Py_Initialize() / Py_Finalize() is called multiple times: preserve _PyRuntime.unicode_ids.next_index value. Use _PyRuntimeState_INIT macro instead memset(0) to reset _PyRuntimeState members to zero.
* bpo-42870: Document change in argparse help output. (GH-24190)Tomáš Hrnčiar2021-01-122-0/+7
|
* Fix various ParamSpec errors in typing (GH-24176)Ken Jin2021-01-112-3/+3
| | | | | 1. ParamSpec -> TypeVar for ``typing.Concatenate`` 2. ParamSpec's call signature should align with its documentation. Noticed in GH-24169
* bpo-33065: Fix problem debugging user classes with __repr__ method (GH-24183)Terry Jan Reedy2021-01-104-3/+20
| | | | | If __repr__ uses instance attributes, as normal, and one steps through the __init__ method, debugger may try to get repr before the instance attributes exist. reprlib.repr handles the error.
* bpo-24464: Fix sqlite3.enable_shared_cache() deprecation wrapper (GH-24170)Erlend Egeberg Aasland2021-01-092-1/+5
|
* bpo-42802: Remove distutils bdist_wininst command (GH-24043)Victor Stinner2021-01-0840-4057/+17
| | | | | | | | | | The distutils bdist_wininst command deprecated in Python 3.8 has been removed. The distutils bidst_wheel command is now recommended to distribute binary packages on Windows. * Remove Lib/distutils/command/bdist_wininst.py * Remove PC/bdist_wininst/ project * Remove Lib/distutils/command/wininst-*.exe programs * Remove all references to bdist_wininst
* Fix a typo in docs for typing.Concatenate (#24169)Johan Dahlin2021-01-081-1/+1
| | | Return param spec should be R, not T
* bpo-42866: Add traverse func to _multibytecodec.MultibyteCodec (GH-24166)Victor Stinner2021-01-081-3/+13
| | | | Convert _multibytecodec.MultibyteCodec type to a GC type and adds a traverse function.
* bpo-42866: Fix refleak in CJK getcodec() (GH-24165)Victor Stinner2021-01-082-0/+3
| | | Fix a reference leak in the getcodec() function of CJK codecs.
* bpo-42846: Convert CJK codec extensions to multiphase init (GH-24157)Victor Stinner2021-01-073-31/+66
| | | | | | | | | | | Convert the 6 CJK codec extension modules (_codecs_cn, _codecs_hk, _codecs_iso2022, _codecs_jp, _codecs_kr and _codecs_tw) to the multiphase initialization API (PEP 489). Remove getmultibytecodec() local cache: always import _multibytecodec. It should be uncommon to get a codec. For example, this function is only called once per CJK codec module. Fix a reference leak in register_maps() error path.
* bpo-42860: Remove type error from grammar (GH-24156)Lysandros Nikolaou2021-01-072-421/+438
| | | | | | This is only there so that alternative implementations written in statically-typed languages can use this grammar without having type errors in the way. Automerge-Triggered-By: GH:lysnikolaou
* bpo-42851: [Enum] remove brittle __init_subclass__ support (GH-24154)Ethan Furman2021-01-073-75/+2
| | | Solution to support calls to `__init_subclass__` with members defined is too brittle and breaks with certain mixins.
* Update frame.f_lineno before any call to the (C) tracing function. (GH-24150)Mark Shannon2021-01-071-33/+54
| | | * Minimizes breakage of C extensions and ensures PyFrame_GetLineNumber is efficient.
* bpo-42783: Documentation for asyncio.sleep(0) (#24002)Simon Willison2021-01-071-0/+4
| | | Co-authored-by: Ken Jin <28750310+Fidget-Spinner@users.noreply.github.com>
* bpo-42847: Normalise Lib/sqlite3/test/* file encodings (GH-24147)Erlend Egeberg Aasland2021-01-076-21/+15
| | | Convert from ISO-8859-1 to UTF-8.
* bpo-40823: Use loadTestsFromTestCase() iso. makeSuite() in sqlite3 tests ↵Erlend Egeberg Aasland2021-01-0710-320/+345
| | | | (GH-20538)
* bpo-41798: Allocate the _datetime.datetime_CAPI on the heap memory (GH-24096)Hai Shi2021-01-061-21/+43
|
* bpo-41798: Allocate _socket module C API on the heap (GH-24126)Erlend Egeberg Aasland2021-01-062-16/+47
|
* bpo-42811: Update importlib.utils.resolve_name() docs to use __spec__.parent ↵Yair Frid2021-01-062-1/+3
| | | | | (GH-24100) Automerge-Triggered-By: GH:brettcannon
* bpo-41798: Allocate _decimal extension module C API on the heap (GH-24117)Erlend Egeberg Aasland2021-01-062-6/+23
|
* bpo-42528: Improve the docs of most Py*_Check{,Exact} API calls (GH-23602)Antonio Cuni2021-01-0626-52/+74
| | | | | I think that none of these API calls can fail, but only few of them are documented as such. Add the sentence "This function always succeeds" (which is the same already used e.g. by PyNumber_Check) to all of them.
* bpo-14014: Clarify StreamWriter.reset() documentation (GH-13716)Berker Peksag2021-01-062-4/+4
|