Commit Graph

101144 Commits

Author SHA1 Message Date
Steve Dower 2507e29a9e
bpo-32588: Move _findvs into its own module and add missing _queue module to installer (#5227) 2018-01-19 09:09:36 +11:00
Raymond Hettinger fa78806041
Removed unnecesssary bit inversion which doesn't improve dispersion statistics (#5235) 2018-01-18 13:23:27 -08:00
Victor Stinner 05d68a8bd8
bpo-9566: Fix size_t=>int downcast warnings (#5230)
* Use wider types (int => Py_ssize_t) to avoid integer overflows.
* Fix gc.get_freeze_count(): use Py_ssize_t type rather than int, since gc_list_size() returns a Py_ssize_t.
2018-01-18 11:15:25 +01:00
Antoine Pitrou ab74504346
bpo-32576: use queue.SimpleQueue in critical places (#5216)
Where a queue may be invoked from a weakref callback, we need
to use the reentrant SimpleQueue.
2018-01-18 10:38:03 +01:00
hui shang 6027802ca7 Fix typo in thread_nt.h code comment (GH-5211)
The comment for PyThread_allocate_lock says "It has too be implemented ...".
There was an extra "o" in ".. to be implemented.."
2018-01-17 15:21:01 -08:00
Gregory P. Smith 3941499d6c
Use assertCountEqual instead of assertEqual. (#5223)
This test doesn't care about order, the underlying filesystem APIs do not
guarantee directory listings on subsequent calls will be in the same order.
2018-01-17 14:57:57 -08:00
Victor Stinner e860089fd9
bpo-32226: Fix memory leak in generic_alias_dealloc() (#5212) 2018-01-17 23:08:18 +01:00
Victor Stinner 7d91c02504
pythoninfo: add time.time and datetime.datetime.now (#5214) 2018-01-17 16:35:45 +01:00
Victor Stinner 3a0cf93179
bpo-32248: Fix test_importlib.test_open() (#5213)
Use the binary.file instead of utf-8.file to avoid issues with
Unix newlines vs Windows newlines.
2018-01-17 15:21:50 +01:00
Victor Stinner 44a70e9336
Fix Git attributes of test_importlib data files (#5209)
bpo-32248: Make sure that Git checks out data files with Unix line
ending on Windows as well.
2018-01-17 10:26:03 +01:00
Christian Heimes ced9cb5303
bpo-32549: Compile OpenSSL 1.1.0 on Travis CI (#5180)
Use an improved version of multissl test helper to compile a local copy
of OpenSSL 1.1.0g.

Signed-off-by: Christian Heimes <christian@python.org>
2018-01-16 21:02:26 +01:00
Paul Ganssle 9f1b7b93f5 bpo-32403: Faster date and datetime constructors (#4993)
* Add tests for date subclass alternate constructors

* Switch over alternate date constructors to fast path

* Switch datetime constructors to fastpath, fix bpo-32404

* Add fast path for datetime in date subclass constructor

* Set fold in constructor in datetime.combine

* Add news entries.
2018-01-16 13:06:31 -05:00
Andrew Svetlov 6b5a27975a
bpo-32410: Implement loop.sock_sendfile() (#4976) 2018-01-16 19:59:34 +02:00
Victor Stinner c495e799ed
Skip test_readline.test_nonascii() on C locale (#5203)
bpo-29240: On FreeBSD, if the LC_CTYPE locale is "C" or "POSIX",
writing and reading non-ASCII bytes into/from a TTY works,
but readline or ncurses ignores non-ASCII bytes on read.
2018-01-16 17:34:34 +01:00
Serhiy Storchaka 4d9aec0220
bpo-31572: Get rid of PyObject_HasAttr() and _PyObject_HasAttrId() in the _io module. (#3726) 2018-01-16 18:34:21 +02:00
INADA Naoki 378edee0a3
bpo-32544: Speed up hasattr() and getattr() (GH-5173)
AttributeError was raised always when attribute is not found.
This commit skip raising AttributeError when `tp_getattro` is `PyObject_GenericGetAttr`.
It makes hasattr() and getattr() about 4x faster when attribute is not found.
2018-01-16 20:52:41 +09:00
Raymond Hettinger b44c5169f6
bpo-26163: Frozenset hash improvement (#5194) 2018-01-16 01:30:26 -08:00
Antoine Pitrou 94e1696d04
bpo-14976: Reentrant simple queue (#3346)
Add a queue.SimpleQueue class, an unbounded FIFO queue with a reentrant C implementation of put().
2018-01-16 00:27:16 +01:00
Barry Warsaw 5ec0feeeec
Implement the get_resource_reader() API for file system imports (#5168) 2018-01-15 15:07:11 -08:00
Yury Selivanov 21102f0dc2
Make asyncio tests run when there's no SSL module (#5196) 2018-01-15 17:56:32 -05:00
Victor Stinner cb064fc232
bpo-31900: Fix localeconv() encoding for LC_NUMERIC (#4174)
* Add _Py_GetLocaleconvNumeric() function: decode decimal_point and
  thousands_sep fields of localeconv() from the LC_NUMERIC encoding,
  rather than decoding from the LC_CTYPE encoding.
* Modify locale.localeconv() and "n" formatter of str.format() (for
  int, float and complex to use _Py_GetLocaleconvNumeric()
  internally.
2018-01-15 15:58:02 +01:00
Victor Stinner 7ed7aead95
bpo-29240: Fix locale encodings in UTF-8 Mode (#5170)
Modify locale.localeconv(), time.tzname, os.strerror() and other
functions to ignore the UTF-8 Mode: always use the current locale
encoding.

Changes:

* Add _Py_DecodeLocaleEx() and _Py_EncodeLocaleEx(). On decoding or
  encoding error, they return the position of the error and an error
  message which are used to raise Unicode errors in
  PyUnicode_DecodeLocale() and PyUnicode_EncodeLocale().
* Replace _Py_DecodeCurrentLocale() with _Py_DecodeLocaleEx().
* PyUnicode_DecodeLocale() now uses _Py_DecodeLocaleEx() for all
  cases, especially for the strict error handler.
* Add _Py_DecodeUTF8Ex(): return more information on decoding error
  and supports the strict error handler.
* Rename _Py_EncodeUTF8_surrogateescape() to _Py_EncodeUTF8Ex().
* Replace _Py_EncodeCurrentLocale() with _Py_EncodeLocaleEx().
* Ignore the UTF-8 mode to encode/decode localeconv(), strerror()
  and time zone name.
* Remove PyUnicode_DecodeLocale(), PyUnicode_DecodeLocaleAndSize()
  and PyUnicode_EncodeLocale() now ignore the UTF-8 mode: always use
  the "current" locale.
* Remove _PyUnicode_DecodeCurrentLocale(),
  _PyUnicode_DecodeCurrentLocaleAndSize() and
  _PyUnicode_EncodeCurrentLocale().
2018-01-15 10:45:49 +01:00
Cheryl Sabella ee3b83547c bpo-26330: Update shutil.disk_usage() documentation (GH-5184)
Clarify that on Windows, path must be a directory.
On Unix, path can be a file or a directory.
2018-01-14 21:08:37 -08:00
Cheryl Sabella b3dd18d403 bpo-15221: Update os.path.is*() documentation (GH-5185)
`os.path.is*()` can return False if the file can't be accessed.
The behaviour is documented in details in `os.path.exists()`.
Link to `os.path.exists()` from `os.path.is*()`.
2018-01-14 20:57:51 -08:00
Raymond Hettinger 3329992e31
bpo-29476: Simplify set_add_entry() (#5175) 2018-01-14 10:20:13 -08:00
Raymond Hettinger d37258dd2e
Add itertools recipe for directly finding the n-th combination (#5161) 2018-01-13 10:35:40 -08:00
Julian Kahnert 0f31c74fcf Improve enum.Flag code example (GH-5167)
The code example that demonstrate how to use enum.Flag was missing
the import of enum.auto.
2018-01-12 19:35:57 -08:00
Brett Cannon bca42186b6
bpo-32248: Introduce the concept of Loader.get_resource_reader() (GH-5108) 2018-01-12 15:08:59 -08:00
Serhiy Storchaka 5b76bdba07
bpo-31993: Do not use memoryview when pickle large strings. (#5154)
PyMemoryView_FromMemory() created a memoryview referring to
the internal data of the string.  When the string is destroyed
the memoryview become referring to a freed memory.
2018-01-13 00:28:31 +02:00
Christian Heimes f3031b8a7a
bpo-32521: nis libtirpc (#5137)
glibc has removed Sun RPC. Use replacement libtirpc headers and library in
nis module

Signed-off-by: Christian Heimes <christian@python.org>
2018-01-12 15:26:32 +01:00
yahya-abou-imran ae12f5d4c9 bpo-32473: Improve ABCMeta._dump_registry() readability (GH-5091) 2018-01-12 18:18:44 +09:00
Raymond Hettinger 05565ed27e
OrderedDict import is no longer needed (#4890) 2018-01-11 22:20:33 -08:00
İsmail Arılık 3764bb075a Lexical Analysis ref doc: Fix a typo in the string concatenation internal link (GH-5157)
In lexical analysis reference documentation, the internal link to
the string literal concatenation section was written as`.. _string-catenation:`.
Changed that to `.. _string-concatenation:`.
2018-01-11 22:18:54 -08:00
Raymond Hettinger 0c3be9651f
bpo-31145: Use dataclasses to create a prioritization wrapper (#5153) 2018-01-11 22:06:34 -08:00
Raymond Hettinger 02556fbade
bpo-32467: Let collections.abc.ValuesView inherit from Collection (#5152) 2018-01-11 21:53:49 -08:00
Serhiy Storchaka 782d6fe443
bpo-31113: Get rid of recursion in the compiler for normal control flow. (#3015) 2018-01-11 20:20:13 +02:00
Serhiy Storchaka 0a2da50e18
bpo-31993: Do not create frames for large bytes and str objects (#5114)
when serialize into memory buffer with C pickle implementations.

This optimization already is performed when serialize into memory
with Python pickle implementations or into a file with both
implementations.
2018-01-11 13:03:20 +02:00
Victor Stinner cb3ae5588b
bpo-29240: Ignore UTF-8 Mode in time module (#5148)
time.strftime() must use the current LC_CTYPE encoding, not UTF-8
if the UTF-8 mode is enabled.

Add _PyUnicode_DecodeCurrentLocale() function.
2018-01-11 10:37:59 +01:00
Raymond Hettinger 3948207c61
bpo-32320: Add default value support to collections.namedtuple() (#4859) 2018-01-10 21:45:19 -08:00
Raymond Hettinger d55209d5b1
Fix obvious typos in docstrings (#5151) 2018-01-10 20:56:41 -08:00
Victor Stinner 2cba6b8579
bpo-29240: readline now ignores the UTF-8 Mode (#5145)
Add new fuctions ignoring the UTF-8 mode:

* _Py_DecodeCurrentLocale()
* _Py_EncodeCurrentLocale()
* _PyUnicode_DecodeCurrentLocaleAndSize()
* _PyUnicode_EncodeCurrentLocale()

Modify the readline module to use these functions.

Re-enable test_readline.test_nonascii().
2018-01-10 22:46:15 +01:00
Mario Corchero f80c0ca133 Fix when parsing tz offsets microseconds shorter than 6 (#4781)
As the remainder was directly parsed as an int, strings like
.600 were parsed as 600 microseconds rather than milliseconds.
2018-01-09 16:37:26 -05:00
Serhiy Storchaka d4864c61e3
bpo-24340: Fix estimation of the code stack size. (#5076) 2018-01-09 21:54:52 +02:00
David Carlier b4ebaa7099 bpo-32493: Not only AIX, but FreeBSD has uuid_create support (#5089)
Allow building the _uuid extension module on FreeBSD and OpenBSD.
2018-01-09 20:38:07 +01:00
Ned Deily 2ab3a8fd26 Post-release version bump to a4+ 2018-01-09 10:27:57 -05:00
Ned Deily a612df0bed Fix several changelog items to use PEP markup. 2018-01-09 10:20:28 -05:00
Ned Deily 868460c576 Python 3.7.0a4
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEDZbfTUEQ5cQ/v7F/LTR+pqplQh0FAlpUMYcACgkQLTR+pqpl
 Qh11Qg//fw+KSUEYso8I2L+D5JEiOaGTfEB/6giNTdXQHIiD6iWvHLfyqaY41F7c
 xFYtBKD4wJZRJmN4OTLBklSqKWn89jNtAU41RnEC6JqRso1WPYCPZYiDsq/qXBAk
 grbTu5NN2xSHQUZsmP6ht8Uufg2WdMTKWZEI2atxd7d6u6cTjmIIygx56CyCod+W
 pPxC4Ff+ljmHOuhAr0nrS04qRgJKi+e4LU3jaAZZxE9nY62hirab1DaDygSRraDz
 6Pcy00Eqx8k2XnIFgGRiAVGPVi0nCLBtYqCQisu2u40pOHRAyYldl1UgMlJzg2Pu
 3w74X0/fzrLSUYS2Ut9OF9mloHAGcBkPUQ4N9pDgVnOd98WB38wvQCVSXD8g6oLs
 kU4pLYbUJPseW3TUDdDSz9cBUXeZ8SLeySobG5Ss+xA4/WEHUPO3SGnnbBrtyD8u
 mAcLt65mfd37llEIKdKycpTOKRIoVA0kiX45Tej0XU+Pd/9x9f1pzbdFin00JUMN
 ASGc7Ee8lzGKUQv9wE7Ilz5J2TB2Y8/guSVCAs0+lA56UWmWuQ65F96jPR8wi38y
 5A3liTxHqyLxOkAZVVu2Je1hjTpOf1us2XJ3UiVGtaw4GZTwB0BpTlWlotJ6KTwz
 /J7GO2e+D/B1YrPvxUA2DpjIMYinJEjj+Cxn5QiOWmwRR+1s83U=
 =k59m
 -----END PGP SIGNATURE-----

Merge tag 'v3.7.0a4'
2018-01-09 10:17:17 -05:00
Steve Dower d135f20ae8
bpo-32507: Change Windows install to include app-local UCRT (#5119) 2018-01-09 19:14:46 +11:00
Ned Deily 07c9d8547c Bump to 3.7.0a4 2018-01-08 22:05:14 -05:00
Ned Deily 3b43bfaae6 Update docs for 3.7.0a4 2018-01-08 21:57:13 -05:00