Commit graph

19682 commits

Author SHA1 Message Date
Victor Stinner
e54dd0b92b Merge 3.4 (asyncio) 2015-01-14 02:13:51 +01:00
Victor Stinner
f651a60407 Python issue #23173: sync with Tulip
* If an exception is raised during the creation of a subprocess, kill the
  subprocess (close pipes, kill and read the return status). Log an error in
  such case.
* Fix SubprocessStreamProtocol.connection_made() to handle cancelled waiter.
  Add unit test cancelling subprocess methods.
2015-01-14 02:10:33 +01:00
Victor Stinner
81a04f7ad4 Merge 3.4 (asyncio: new SSL implementation) 2015-01-14 00:19:55 +01:00
Victor Stinner
231b404cb0 Issue #22560: New SSL implementation based on ssl.MemoryBIO
The new SSL implementation is based on the new ssl.MemoryBIO which is only
available on Python 3.5. On Python 3.4 and older, the legacy SSL implementation
(using SSL_write, SSL_read, etc.) is used. The proactor event loop only
supports the new implementation.

The new asyncio.sslproto module adds _SSLPipe, SSLProtocol and
_SSLProtocolTransport classes. _SSLPipe allows to "wrap" or "unwrap" a socket
(switch between cleartext and SSL/TLS).

Patch written by Antoine Pitrou. sslproto.py is based on gruvi/ssl.py of the
gruvi project written by Geert Jansen.

This change adds SSL support to ProactorEventLoop on Python 3.5 and newer!

It becomes also possible to implement STARTTTLS: switch a cleartext socket to
SSL.
2015-01-14 00:19:09 +01:00
Victor Stinner
7d5a95627b Merge 3.4 (asyncio) 2015-01-13 16:13:36 +01:00
Victor Stinner
9036e49ba1 Tulip issue 184: Fix test_pipe() on Windows
Pass explicitly the event loop to StreamReaderProtocol.
2015-01-13 16:13:06 +01:00
Benjamin Peterson
610bc6a211 merge 3.4 (#23221) 2015-01-13 09:20:31 -05:00
Benjamin Peterson
82f34ada45 fix instances of consecutive articles (closes #23221)
Patch by Karan Goel.
2015-01-13 09:17:24 -05:00
Victor Stinner
458fc6f98c Issue #23209, #23225: selectors.BaseSelector.get_key() now raises a
RuntimeError if the selector is closed. And selectors.BaseSelector.close() now
clears its internal reference to the selector mapping to break a reference
cycle. Initial patch written by Martin Richard.
2015-01-13 10:00:55 +01:00
Victor Stinner
38dc250521 Issue #23209, #23225: selectors.BaseSelector.close() now clears its internal
reference to the selector mapping to break a reference cycle. Initial patch
written by Martin Richard.
2015-01-13 09:58:33 +01:00
Antoine Pitrou
17cba7daf5 Issue #19777: Provide a home() classmethod on Path objects.
Contributed by Victor Salgado and Mayank Tripathi.
2015-01-12 21:03:41 +01:00
Antoine Pitrou
dc3eaa80d4 Issue #23206: Make `json.dumps(..., ensure_ascii=False) as fast as the default case of ensure_ascii=True`. Patch by Naoki Inada. 2015-01-11 16:41:01 +01:00
Mark Dickinson
a5d0c7c2fd Issue #23185: add math.inf and math.nan constants. 2015-01-11 11:55:29 +00:00
Victor Stinner
e969439862 Issue #19776: Fix test_pathlib.test_expanduser()
Skip users with an empty home directory.
2015-01-10 09:00:20 +01:00
Victor Stinner
3cd440df22 Merge 3.4 (asyncio) 2015-01-09 21:32:24 +01:00
Victor Stinner
70db9e428a asyncio: sync with Tulip
* Tulip issue 184: FlowControlMixin constructor now get the event loop if the
  loop parameter is not set. Add unit tests to ensure that constructor of
  StreamReader and StreamReaderProtocol classes get the event loop.
* Remove outdated TODO/XXX
2015-01-09 21:32:05 +01:00
Brett Cannon
02d8454002 Issue #23014: Make importlib.abc.Loader.create_module() required when
importlib.abc.Loader.exec_module() is also defined.

Before this change, create_module() was optional **and** could return
None to trigger default semantics. This change now reduces the
options for choosing default semantics to one and in the most
backporting-friendly way (define create_module() to return None).
2015-01-09 11:39:21 -05:00
Victor Stinner
12985b5da7 Merge 3.4 (asyncio) 2015-01-09 00:09:35 +01:00
Victor Stinner
15cc678d89 asyncio: Truncate to 80 columns 2015-01-09 00:09:10 +01:00
Benjamin Peterson
15042921ad enable cert validation in test 2015-01-07 22:12:43 -06:00
Benjamin Peterson
23ef9fac16 trying again 2015-01-07 21:21:34 -06:00
Benjamin Peterson
e6838e08ef reorder cipher prefs 2015-01-07 20:52:40 -06:00
Benjamin Peterson
44c77791ab drop 256 2015-01-07 20:30:59 -06:00
Benjamin Peterson
359f2982f4 try using AES256 2015-01-07 20:03:27 -06:00
Benjamin Peterson
8791d697e0 fix assertions after ciphers were changed 2015-01-07 14:29:45 -06:00
Benjamin Peterson
f78b78aed4 rc4 is a long time favorite 2015-01-07 14:21:22 -06:00
Benjamin Peterson
438a8db763 everyone should support AES ciphers 2015-01-07 13:28:40 -06:00
Benjamin Peterson
9f6eceab46 include some more ciphers 2015-01-07 12:59:20 -06:00
Benjamin Peterson
aacd524118 force test server to speak tlsv1 2015-01-07 11:42:38 -06:00
Benjamin Peterson
e27a421354 remove apparently wrong assertion about des bit size 2015-01-07 11:33:51 -06:00
Benjamin Peterson
4cb17812d9 expose the client's cipher suites from the handshake (closes #23186) 2015-01-07 11:14:26 -06:00
Nick Coghlan
582acb75e9 Merge issue 19548 changes from 3.4 2015-01-07 00:37:01 +10:00
Nick Coghlan
b9fdb7a452 Issue 19548: update codecs module documentation
- clarified the distinction between text encodings and other codecs
- clarified relationship with builtin open and the io module
- consolidated documentation of error handlers into one section
- clarified type constraints of some behaviours
- added tests for some of the new statements in the docs
2015-01-07 00:22:00 +10:00
Victor Stinner
5d575399bc Issue #23145: regrtest now shows errors and raises an exception if
loader.loadTestsFromModule() logged errors.
2015-01-06 14:05:03 +01:00
Victor Stinner
fcfed19913 Issue #21356: Make ssl.RAND_egd() optional to support LibreSSL. The
availability of the function is checked during the compilation. Patch written
by Bernard Spil.
2015-01-06 13:54:58 +01:00
Victor Stinner
789b805700 test_ssl: add more debug to investigate test_openssl_version() failure on
OpenBSD with LibreSSL.
2015-01-06 11:51:06 +01:00
Victor Stinner
4ae5467134 Merge 3.4 (asyncio) 2015-01-06 01:22:54 +01:00
Victor Stinner
212994e4e2 Issue #23140, asyncio: Simplify the unit test 2015-01-06 01:22:45 +01:00
Victor Stinner
43a8534364 Merge 3.4 (asyncio) 2015-01-06 01:14:09 +01:00
Victor Stinner
c447ba04e7 Issue #23140, asyncio: Fix cancellation of Process.wait(). Check the state of
the waiter future before setting its result.
2015-01-06 01:13:49 +01:00
Ned Deily
04c365d7fb Issue #22165: merge from 3.4 2015-01-05 01:05:36 -08:00
Ned Deily
1418320850 Issue #22165: Skip test_undecodable_filename on OS X prior to 10.5.
10.4 systems do not allow creation of files with such filenames.
2015-01-05 01:02:30 -08:00
Gregory P. Smith
9eb1faf39b fix issue23157 - time_hashlib hadn't been ported to Python 3. 2015-01-04 00:36:59 -08:00
Gregory P. Smith
5719ef17ba fix issue23157 - time_hashlib hadn't been ported to Python 3. 2015-01-04 00:36:04 -08:00
Serhiy Storchaka
697a526fa1 Issue #23132: Improve performance and introspection support of comparison
methods created by functool.total_ordering.
2015-01-01 15:23:12 +02:00
Antoine Pitrou
8477ed6048 Issue #19776: Add a expanduser() method on Path objects.
Patch by Serhiy.
2014-12-30 20:54:45 +01:00
Victor Stinner
0f9f7497d0 Merge 3.4 (asyncio) 2014-12-26 21:29:45 +01:00
Victor Stinner
956de691f8 Issue #22926: In debug mode, call_soon(), call_at() and call_later() methods of
asyncio.BaseEventLoop now use the identifier of the current thread to ensure
that they are called from the thread running the event loop.

Before, the get_event_loop() method was used to check the thread, and no
exception was raised when the thread had no event loop. Now the methods always
raise an exception in debug mode when called from the wrong thread. It should
help to notice misusage of the API.
2014-12-26 21:07:52 +01:00
Victor Stinner
d7ff5a5375 asyncio: sync with Tulip
* Fix pyflakes warnings: remove unused imports and variables
* asyncio.test_support now uses test.support and test.script_helper if available
2014-12-26 21:16:42 +01:00
Benjamin Peterson
fe975a234f merge 3.4 (#23112) 2014-12-26 10:56:51 -06:00