Skip to content

Commit 23d532a

Browse files
committed
Merge tag 'v3.8.0b4' into 3.8
Python 3.8.0b4
2 parents 27f4186 + d93605d commit 23d532a

File tree

77 files changed

+845
-225
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+845
-225
lines changed

Include/patchlevel.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,10 @@
2020
#define PY_MINOR_VERSION 8
2121
#define PY_MICRO_VERSION 0
2222
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_BETA
23-
#define PY_RELEASE_SERIAL 3
23+
#define PY_RELEASE_SERIAL 4
2424

2525
/* Version as a string */
26-
#define PY_VERSION "3.8.0b3+"
26+
#define PY_VERSION "3.8.0b4"
2727
/*--end constants--*/
2828

2929
/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.

Lib/pydoc_data/topics.py

Lines changed: 109 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# -*- coding: utf-8 -*-
2-
# Autogenerated by Sphinx on Mon Jul 29 15:22:27 2019
2+
# Autogenerated by Sphinx on Thu Aug 29 23:57:58 2019
33
topics = {'assert': 'The "assert" statement\n'
44
'**********************\n'
55
'\n'
@@ -808,28 +808,47 @@
808808
'whose name is\n'
809809
'the key of the property in the owner class’ "__dict__".\n'
810810
'\n'
811-
'object.__get__(self, instance, owner)\n'
811+
'object.__get__(self, instance, owner=None)\n'
812812
'\n'
813813
' Called to get the attribute of the owner class (class '
814814
'attribute\n'
815815
' access) or of an instance of that class (instance '
816816
'attribute\n'
817-
' access). *owner* is always the owner class, while '
818-
'*instance* is the\n'
819-
' instance that the attribute was accessed through, or '
820-
'"None" when\n'
821-
' the attribute is accessed through the *owner*. This '
822-
'method should\n'
823-
' return the (computed) attribute value or raise an '
824-
'"AttributeError"\n'
825-
' exception.\n'
817+
' access). The optional *owner* argument is the owner '
818+
'class, while\n'
819+
' *instance* is the instance that the attribute was '
820+
'accessed through,\n'
821+
' or "None" when the attribute is accessed through the '
822+
'*owner*.\n'
823+
'\n'
824+
' This method should return the computed attribute '
825+
'value or raise an\n'
826+
' "AttributeError" exception.\n'
827+
'\n'
828+
' **PEP 252** specifies that "__get__()" is callable '
829+
'with one or two\n'
830+
' arguments. Python’s own built-in descriptors support '
831+
'this\n'
832+
' specification; however, it is likely that some '
833+
'third-party tools\n'
834+
' have descriptors that require both arguments. '
835+
'Python’s own\n'
836+
' "__getattribute__()" implementation always passes in '
837+
'both arguments\n'
838+
' whether they are required or not.\n'
826839
'\n'
827840
'object.__set__(self, instance, value)\n'
828841
'\n'
829842
' Called to set the attribute on an instance *instance* '
830843
'of the owner\n'
831844
' class to a new value, *value*.\n'
832845
'\n'
846+
' Note, adding "__set__()" or "__delete__()" changes '
847+
'the kind of\n'
848+
' descriptor to a “data descriptor”. See Invoking '
849+
'Descriptors for\n'
850+
' more details.\n'
851+
'\n'
833852
'object.__delete__(self, instance)\n'
834853
'\n'
835854
' Called to delete the attribute on an instance '
@@ -1829,6 +1848,12 @@
18291848
'all false.\n'
18301849
' This behavior is compliant with IEEE 754.\n'
18311850
'\n'
1851+
'* "None" and "NotImplemented" are singletons. **PEP 8** '
1852+
'advises\n'
1853+
' that comparisons for singletons should always be done with '
1854+
'"is" or\n'
1855+
' "is not", never the equality operators.\n'
1856+
'\n'
18321857
'* Binary sequences (instances of "bytes" or "bytearray") can '
18331858
'be\n'
18341859
' compared within and across their types. They compare\n'
@@ -1854,38 +1879,13 @@
18541879
' these types raises "TypeError".\n'
18551880
'\n'
18561881
' Sequences compare lexicographically using comparison of\n'
1857-
' corresponding elements, whereby reflexivity of the elements '
1858-
'is\n'
1859-
' enforced.\n'
1860-
'\n'
1861-
' In enforcing reflexivity of elements, the comparison of '
1862-
'collections\n'
1863-
' assumes that for a collection element "x", "x == x" is '
1864-
'always true.\n'
1865-
' Based on that assumption, element identity is compared '
1866-
'first, and\n'
1867-
' element comparison is performed only for distinct '
1868-
'elements. This\n'
1869-
' approach yields the same result as a strict element '
1870-
'comparison\n'
1871-
' would, if the compared elements are reflexive. For '
1872-
'non-reflexive\n'
1873-
' elements, the result is different than for strict element\n'
1874-
' comparison, and may be surprising: The non-reflexive '
1875-
'not-a-number\n'
1876-
' values for example result in the following comparison '
1877-
'behavior when\n'
1878-
' used in a list:\n'
1879-
'\n'
1880-
" >>> nan = float('NaN')\n"
1881-
' >>> nan is nan\n'
1882-
' True\n'
1883-
' >>> nan == nan\n'
1884-
' False <-- the defined non-reflexive '
1885-
'behavior of NaN\n'
1886-
' >>> [nan] == [nan]\n'
1887-
' True <-- list enforces reflexivity and '
1888-
'tests identity first\n'
1882+
' corresponding elements. The built-in containers typically '
1883+
'assume\n'
1884+
' identical objects are equal to themselves. That lets them '
1885+
'bypass\n'
1886+
' equality tests for identical objects to improve performance '
1887+
'and to\n'
1888+
' maintain their internal invariants.\n'
18891889
'\n'
18901890
' Lexicographical comparison between built-in collections '
18911891
'works as\n'
@@ -3126,13 +3126,15 @@
31263126
'returning\n'
31273127
' it.\n'
31283128
'\n'
3129-
' If "__new__()" returns an instance of *cls*, then the '
3130-
'new\n'
3131-
' instance’s "__init__()" method will be invoked like\n'
3132-
' "__init__(self[, ...])", where *self* is the new '
3133-
'instance and the\n'
3134-
' remaining arguments are the same as were passed to '
3135-
'"__new__()".\n'
3129+
' If "__new__()" is invoked during object construction and '
3130+
'it returns\n'
3131+
' an instance or subclass of *cls*, then the new '
3132+
'instance’s\n'
3133+
' "__init__()" method will be invoked like '
3134+
'"__init__(self[, ...])",\n'
3135+
' where *self* is the new instance and the remaining '
3136+
'arguments are\n'
3137+
' the same as were passed to the object constructor.\n'
31363138
'\n'
31373139
' If "__new__()" does not return an instance of *cls*, '
31383140
'then the new\n'
@@ -3500,10 +3502,10 @@
35003502
' hashable by an "isinstance(obj, '
35013503
'collections.abc.Hashable)" call.\n'
35023504
'\n'
3503-
' Note: By default, the "__hash__()" values of str, bytes '
3504-
'and\n'
3505-
' datetime objects are “salted” with an unpredictable '
3506-
'random value.\n'
3505+
' Note: By default, the "__hash__()" values of str and '
3506+
'bytes\n'
3507+
' objects are “salted” with an unpredictable random '
3508+
'value.\n'
35073509
' Although they remain constant within an individual '
35083510
'Python\n'
35093511
' process, they are not predictable between repeated '
@@ -7841,13 +7843,15 @@
78417843
'returning\n'
78427844
' it.\n'
78437845
'\n'
7844-
' If "__new__()" returns an instance of *cls*, then the '
7845-
'new\n'
7846-
' instance’s "__init__()" method will be invoked like\n'
7847-
' "__init__(self[, ...])", where *self* is the new instance '
7848-
'and the\n'
7849-
' remaining arguments are the same as were passed to '
7850-
'"__new__()".\n'
7846+
' If "__new__()" is invoked during object construction and '
7847+
'it returns\n'
7848+
' an instance or subclass of *cls*, then the new '
7849+
'instance’s\n'
7850+
' "__init__()" method will be invoked like "__init__(self[, '
7851+
'...])",\n'
7852+
' where *self* is the new instance and the remaining '
7853+
'arguments are\n'
7854+
' the same as were passed to the object constructor.\n'
78517855
'\n'
78527856
' If "__new__()" does not return an instance of *cls*, then '
78537857
'the new\n'
@@ -8212,10 +8216,10 @@
82128216
' hashable by an "isinstance(obj, '
82138217
'collections.abc.Hashable)" call.\n'
82148218
'\n'
8215-
' Note: By default, the "__hash__()" values of str, bytes '
8216-
'and\n'
8217-
' datetime objects are “salted” with an unpredictable '
8218-
'random value.\n'
8219+
' Note: By default, the "__hash__()" values of str and '
8220+
'bytes\n'
8221+
' objects are “salted” with an unpredictable random '
8222+
'value.\n'
82198223
' Although they remain constant within an individual '
82208224
'Python\n'
82218225
' process, they are not predictable between repeated '
@@ -8440,28 +8444,47 @@
84408444
'whose name is\n'
84418445
'the key of the property in the owner class’ "__dict__".\n'
84428446
'\n'
8443-
'object.__get__(self, instance, owner)\n'
8447+
'object.__get__(self, instance, owner=None)\n'
84448448
'\n'
84458449
' Called to get the attribute of the owner class (class '
84468450
'attribute\n'
84478451
' access) or of an instance of that class (instance '
84488452
'attribute\n'
8449-
' access). *owner* is always the owner class, while '
8450-
'*instance* is the\n'
8451-
' instance that the attribute was accessed through, or '
8452-
'"None" when\n'
8453-
' the attribute is accessed through the *owner*. This '
8454-
'method should\n'
8455-
' return the (computed) attribute value or raise an '
8456-
'"AttributeError"\n'
8457-
' exception.\n'
8453+
' access). The optional *owner* argument is the owner '
8454+
'class, while\n'
8455+
' *instance* is the instance that the attribute was '
8456+
'accessed through,\n'
8457+
' or "None" when the attribute is accessed through the '
8458+
'*owner*.\n'
8459+
'\n'
8460+
' This method should return the computed attribute value or '
8461+
'raise an\n'
8462+
' "AttributeError" exception.\n'
8463+
'\n'
8464+
' **PEP 252** specifies that "__get__()" is callable with '
8465+
'one or two\n'
8466+
' arguments. Python’s own built-in descriptors support '
8467+
'this\n'
8468+
' specification; however, it is likely that some '
8469+
'third-party tools\n'
8470+
' have descriptors that require both arguments. Python’s '
8471+
'own\n'
8472+
' "__getattribute__()" implementation always passes in both '
8473+
'arguments\n'
8474+
' whether they are required or not.\n'
84588475
'\n'
84598476
'object.__set__(self, instance, value)\n'
84608477
'\n'
84618478
' Called to set the attribute on an instance *instance* of '
84628479
'the owner\n'
84638480
' class to a new value, *value*.\n'
84648481
'\n'
8482+
' Note, adding "__set__()" or "__delete__()" changes the '
8483+
'kind of\n'
8484+
' descriptor to a “data descriptor”. See Invoking '
8485+
'Descriptors for\n'
8486+
' more details.\n'
8487+
'\n'
84658488
'object.__delete__(self, instance)\n'
84668489
'\n'
84678490
' Called to delete the attribute on an instance *instance* '
@@ -10030,13 +10053,15 @@
1003010053
'\n'
1003110054
' Return true if there are only whitespace characters in '
1003210055
'the string\n'
10033-
' and there is at least one character, false otherwise. '
10034-
'Whitespace\n'
10035-
' characters are those characters defined in the Unicode '
10036-
'character\n'
10037-
' database as “Other” or “Separator” and those with '
10038-
'bidirectional\n'
10039-
' property being one of “WS”, “B”, or “S”.\n'
10056+
' and there is at least one character, false otherwise.\n'
10057+
'\n'
10058+
' A character is *whitespace* if in the Unicode character '
10059+
'database\n'
10060+
' (see "unicodedata"), either its general category is '
10061+
'"Zs"\n'
10062+
' (“Separator, space”), or its bidirectional class is one '
10063+
'of "WS",\n'
10064+
' "B", or "S".\n'
1004010065
'\n'
1004110066
'str.istitle()\n'
1004210067
'\n'
@@ -10725,13 +10750,9 @@
1072510750
'\n'
1072610751
' Changed in version 3.6: Unrecognized escape sequences produce '
1072710752
'a\n'
10728-
' "DeprecationWarning".\n'
10729-
'\n'
10730-
' Changed in version 3.8: Unrecognized escape sequences produce '
10753+
' "DeprecationWarning". In a future Python version they will be '
1073110754
'a\n'
10732-
' "SyntaxWarning". In some future version of Python they will '
10733-
'be a\n'
10734-
' "SyntaxError".\n'
10755+
' "SyntaxWarning" and eventually a "SyntaxError".\n'
1073510756
'\n'
1073610757
'Even in a raw literal, quotes can be escaped with a backslash, '
1073710758
'but the\n'

0 commit comments

Comments
 (0)