summaryrefslogtreecommitdiff
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
...
* bpo-16865: Support arrays >=2GB in ctypes. (GH-3006)Segev Finer2018-05-151-8/+8
|
* Fixed an unused variable warning introduced in GH-6800 (GH-6816)Alex Gaynor2018-05-141-1/+0
|
* Remove `ifdef` check for an OpenSSL version (0.9.6) we don't support (GH-6800)Alex Gaynor2018-05-141-5/+2
|
* bpo-20171: Convert the _curses and _curses_panel modules to Argument Clinic. ↵Serhiy Storchaka2018-05-104-1270/+6543
| | | | (GH-4251)
* bpo-21983: Fix a crash in ctypes.cast() when passed a ctypes structured data ↵Oren Milman2018-05-091-1/+1
| | | | type (GH-3859)
* bpo-33441: Make the sigset_t converter available in other modules. (GH-6720)Serhiy Storchaka2018-05-084-105/+138
| | | | | | | | | * Expose the sigset_t converter via private API _Py_Sigset_Converter(). * Use Argument Clinic for parsing sigset_t in signalmodule.c. * Raise ValueError instead OverflowError for integers out of the C long range. Based on patch by Pablo Galindo Salgado.
* bpo-33332: Add signal.valid_signals() (GH-6581)Antoine Pitrou2018-05-042-6/+89
|
* bpo-20104: Improve error handling and fix a reference leak in ↵Serhiy Storchaka2018-05-012-124/+125
| | | | os.posix_spawn(). (#6332)
* bpo-27645, sqlite: Fix integer overflow on sleep (#6594)Victor Stinner2018-04-301-4/+20
| | | | | | | | | Use the _PyTime_t type and round away from zero (ROUND_UP, _PyTime_ROUND_TIMEOUT) the sleep duration, when converting a Python object to seconds and then to milliseconds. Raise an OverflowError in case of overflow. Previously the (int)double conversion rounded towards zero (ROUND_DOWN).
* bpo-33012: Fix invalid function cast warnings with gcc 8 for METH_NOARGS. ↵Siddhesh Poyarekar2018-04-2925-220/+216
| | | | | | | | | (GH-6030) METH_NOARGS functions need only a single argument but they are cast into a PyCFunction, which takes two arguments. This triggers an invalid function cast warning in gcc8 due to the argument mismatch. Fix this by adding a dummy unused argument.
* bpo-33383: Fix crash in get() of the dbm.ndbm database object. (#6630)Serhiy Storchaka2018-04-292-5/+5
|
* bpo-33329: Fix multiprocessing regression on newer glibcs (GH-6575)Antoine Pitrou2018-04-231-6/+8
| | | | | | | Starting with glibc 2.27.9000-xxx, sigaddset() can return EINVAL for some reserved signal numbers between 1 and NSIG. The `range(1, NSIG)` idiom is commonly used to select all signals for blocking with `pthread_sigmask`. So we ignore the sigaddset() return value until we expose sigfillset() to provide a better idiom.
* bpo-32232: by default, Setup modules are no longer built with ↵xdegaye2018-04-212-20/+20
| | | | | | | | | -DPy_BUILD_CORE (GH-6489) Setup modules are no longer built with -DPy_BUILD_CORE by default, as using that flag may now require including additional internal-only header files. Instead, only the modules that specifically need it use that setting.
* bpo-33308: Fix a crash in the parser module when convert an ST object. (#6519)Serhiy Storchaka2018-04-191-3/+3
| | | | Converting with line_info=False and col_info=True crashed before.
* bpo-33253: Fix xxsubtype.bench() to accept correct str signature. (GH-6439)Devon R2018-04-101-1/+1
|
* bpo-23403: Bump pickle.DEFAULT_PROTOCOL to 4 (#6355)Łukasz Langa2018-04-032-11/+17
| | | This makes performance better and produces shorter pickles. This change is backwards compatible up to the oldest currently supported version of Python (3.4).
* bpo-33209: End framing at the end of C implementation of ↵Serhiy Storchaka2018-04-031-2/+3
| | | | pickle.Pickler.dump(). (GH-6363)
* Fix duplicating words words. (GH-6296)Serhiy Storchaka2018-03-281-1/+1
| | | Most of them have been added in 3.7.
* bpo-32844: Fix a subprocess misredirection of a low fd (GH5689)Alexey Izbyshev2018-03-261-1/+1
| | | | | | | | | | bpo-32844: subprocess: Fix a potential misredirection of a low fd to stderr. When redirecting, subprocess attempts to achieve the following state: each fd to be redirected to is less than or equal to the fd it is redirected from, which is necessary because redirection occurs in the ascending order of destination descriptors. It fails to do so in a couple of corner cases, for example, if 1 is redirected to 2 and 0 is closed in the parent.
* Fix error message in sqlite connection thread check. (GH-6028)Takuya Akiba2018-03-261-2/+2
|
* bpo-33136: Harden ssl module against CVE-2018-8970 (GH-6229)Christian Heimes2018-03-251-3/+4
| | | | | | | 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. Signed-off-by: Christian Heimes <christian@python.org>
* bpo-33127: Compatibility patch for LibreSSL 2.7.0 (GH-6210)Christian Heimes2018-03-241-6/+16
| | | | | | | | | | LibreSSL 2.7 introduced OpenSSL 1.1.0 API. The ssl module now detects LibreSSL 2.7 and only provides API shims for OpenSSL < 1.1.0 and LibreSSL < 2.7. Documentation updates and fixes for failing tests will be provided in another patch set. Signed-off-by: Christian Heimes <christian@python.org>
* bpo-32999: ast: Convert useless check to assert (GH-6197)INADA Naoki2018-03-231-3/+1
|
* bpo-32999: Revert GH-6002 (fc7df0e6) (GH-6189)INADA Naoki2018-03-221-24/+11
| | | | bpo-33018 (GH-5944) fixed bpo-32999 too. So fc7df0e6 is not required anymore. Revert it except test case.
* bpo-33018: Improve issubclass() error checking and message. (GH-5944)jab2018-03-221-0/+5
| | | | | This improves error message for situations when a non-class is checked w.r.t. an abstract base class.
* Fix typos in mmap() error messages (GH-6173)Zackery Spytz2018-03-211-2/+2
|
* bpo-27645: Fix version number in 'database in transaction' fallback (GH-6131)Aviv Palivoda2018-03-181-2/+2
| | | It was actually fixed in SQLite 3.8.8, not 3.8.7.
* bpo-32374: m_traverse may be called with m_state=NULL (GH-5140)Marcel Plch2018-03-171-3/+49
| | | | | Multi-phase initialized modules allow m_traverse to be called while the module is still being initialized, so module authors may need to account for that.
* bpo-33021: Fix GCC 7 warning (-Wmaybe-uninitialized) in mmapmodule.c (#6117)Zackery Spytz2018-03-141-1/+1
|
* signal: add strsignal() (#6017)Antoine Pietri2018-03-122-1/+92
| | | Co-authored-by: Vajrasky Kok <sky.kok@speaklikeaking.com>
* bpo-33021: Release the GIL during fstat() calls (GH-6019)Nir Soffer2018-03-121-2/+9
| | | | | | | | | | | | | | fstat may block for long time if the file descriptor is on a non-responsive NFS server, hanging all threads. Most fstat() calls are handled by _Py_fstat(), releasing the GIL internally, but but _Py_fstat_noraise() does not release the GIL, and most calls release the GIL explicitly around it. This patch fixes last 2 calls to _Py_fstat_no_raise(), avoiding hangs when calling: - mmap.mmap() - os.urandom() - random.seed()
* bpo-27645: Add support for native backup facility of SQLite (GH-4238)Emanuele Gaifas2018-03-112-0/+142
|
* bpo-30249: Improve struct.unpack_from() error messages (GH-6059)Xiang Zhang2018-03-112-8/+32
|
* bpo-33016: Fix potential use of uninitialized memory in nt._getfinalpathname ↵Alexey Izbyshev2018-03-081-42/+32
| | | | (#6010)
* bpo-32999: Fix ABC.__subclasscheck__ crash (GH-6002)INADA Naoki2018-03-071-12/+25
|
* bpo-32969: Expose some missing constants in zlib and fix the doc (GH-5988)Xiang Zhang2018-03-071-3/+18
|
* bpo-33001: Prevent buffer overrun in os.symlink (GH-5989)Steve Dower2018-03-051-28/+38
|
* bpo-32903: Fix a memory leak in os.chdir() on Windows (GH-5801)Alexey Izbyshev2018-03-011-7/+7
|
* bpo-31453: Add setter for min/max protocol version (#5259)Christian Heimes2018-02-271-22/+212
| | | | | | | | | | | | OpenSSL 1.1 has introduced a new API to set the minimum and maximum supported protocol version. The API is easier to use than the old OP_NO_TLS1 option flags, too. Since OpenSSL has no call to set minimum version to highest supported, the implementation emulate maximum_version = MINIMUM_SUPPORTED and minimum_version = MAXIMUM_SUPPORTED by figuring out the minumum and maximum supported version at compile time. Signed-off-by: Christian Heimes <christian@python.org>
* bpo-32947: OpenSSL 1.1.1-pre1 / TLS 1.3 fixes (#5663)Christian Heimes2018-02-271-0/+4
| | | | | | | | | | | | | | | | | | * bpo-32947: OpenSSL 1.1.1-pre1 / TLS 1.3 fixes Misc fixes and workarounds for compatibility with OpenSSL 1.1.1-pre1 and TLS 1.3 support. With OpenSSL 1.1.1, Python negotiates TLS 1.3 by default. Some test cases only apply to TLS 1.2. Other tests currently fail because the threaded or async test servers stop after failure. I'm going to address these issues when OpenSSL 1.1.1 reaches beta. OpenSSL 1.1.1 has added a new option OP_ENABLE_MIDDLEBOX_COMPAT for TLS 1.3. The feature is enabled by default for maximum compatibility with broken middle boxes. Users should be able to disable the hack and CPython's test suite needs it to verify default options. Signed-off-by: Christian Heimes <christian@python.org>
* bpo-32147: Improved perfomance of binascii.unhexlify(). (GH-4586)Sergey Fedoseev2018-02-261-33/+5
|
* bpo-32394: Remove some TCP options on old version Windows. (GH-5523)animalize2018-02-261-0/+70
|
* bpo-32922: dbm.open() now encodes filename with the filesystem encoding. ↵Serhiy Storchaka2018-02-264-18/+45
| | | | (GH-5832)
* bpo-32622: Native sendfile on windows (#5565)Andrew Svetlov2018-02-251-2/+62
| | | * Support sendfile on Windows Proactor event loop naively.
* bpo-30622: Fix NPN for OpenSSL 1.1.1-pre1 (#5876)Christian Heimes2018-02-252-25/+30
| | | Signed-off-by: Christian Heimes <christian@python.org>
* bpo-17232: Clarify docs for -O and -OO command line options (#5839)Cheryl Sabella2018-02-241-2/+4
| | | The 'optimization' is for space in the executable file, not for run time.
* bpo-30622: Improve NPN support detection (#5859)Christian Heimes2018-02-242-11/+24
| | | | | | The ssl module now detects missing NPN support in LibreSSL. Co-Authored-By: Bernard Spil <brnrd@FreeBSD.org> Signed-off-by: Christian Heimes <christian@python.org>
* bpo-24334: Cleanup SSLSocket (#5252)Christian Heimes2018-02-242-63/+113
| | | | | | | | | | | | | * The SSLSocket is no longer implemented on top of SSLObject to avoid an extra level of indirection. * Owner and session are now handled in the internal constructor. * _ssl._SSLSocket now uses the same method names as SSLSocket and SSLObject. * Channel binding type check is now handled in C code. Channel binding is always available. The patch also changes the signature of SSLObject.__init__(). In my opinion it's fine. A SSLObject is not a user-constructable object. SSLContext.wrap_bio() is the only valid factory.
* bpo-31966: Fixed WindowsConsoleIO.write() for writing empty data. (GH-5754)Serhiy Storchaka2018-02-241-0/+3
|
* [bpo-28414] Make all hostnames in SSL module IDN A-labels (GH-5128)Christian Heimes2018-02-232-68/+78
| | | | | | | | | | | | Previously, the ssl module stored international domain names (IDNs) as U-labels. This is problematic for a number of reasons -- for example, it made it impossible for users to use a different version of IDNA than the one built into Python. After this change, we always convert to A-labels as soon as possible, and use them for all internal processing. In particular, server_hostname attribute is now an A-label, and on the server side there's a new sni_callback that receives the SNI servername as an A-label rather than a U-label.