Skip to content
This repository was archived by the owner on Feb 13, 2025. It is now read-only.

Commit c22fcf5

Browse files
author
Anselm Kruis
committed
Merge tag v3.7.8 into 3.7-slp
2 parents d768ddf + 4b47a5b commit c22fcf5

File tree

9 files changed

+74
-34
lines changed

9 files changed

+74
-34
lines changed

Include/patchlevel.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@
1919
#define PY_MAJOR_VERSION 3
2020
#define PY_MINOR_VERSION 7
2121
#define PY_MICRO_VERSION 8
22-
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_GAMMA
23-
#define PY_RELEASE_SERIAL 1
22+
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_FINAL
23+
#define PY_RELEASE_SERIAL 0
2424

2525
/* Version as a string */
26-
#define PY_VERSION "3.7.8rc1"
26+
#define PY_VERSION "3.7.8"
2727
/*--end constants--*/
2828

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

Lib/test/support/__init__.py

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -565,25 +565,25 @@ def _requires_unix_version(sysname, min_version):
565565
For example, @_requires_unix_version('FreeBSD', (7, 2)) raises SkipTest if
566566
the FreeBSD version is less than 7.2.
567567
"""
568-
def decorator(func):
569-
@functools.wraps(func)
570-
def wrapper(*args, **kw):
571-
if platform.system() == sysname:
572-
version_txt = platform.release().split('-', 1)[0]
573-
try:
574-
version = tuple(map(int, version_txt.split('.')))
575-
except ValueError:
576-
pass
577-
else:
578-
if version < min_version:
579-
min_version_txt = '.'.join(map(str, min_version))
580-
raise unittest.SkipTest(
581-
"%s version %s or higher required, not %s"
582-
% (sysname, min_version_txt, version_txt))
583-
return func(*args, **kw)
584-
wrapper.min_version = min_version
585-
return wrapper
586-
return decorator
568+
import platform
569+
min_version_txt = '.'.join(map(str, min_version))
570+
version_txt = platform.release().split('-', 1)[0]
571+
if platform.system() == sysname:
572+
try:
573+
version = tuple(map(int, version_txt.split('.')))
574+
except ValueError:
575+
skip = False
576+
else:
577+
skip = version < min_version
578+
else:
579+
skip = False
580+
581+
return unittest.skipIf(
582+
skip,
583+
f"{sysname} version {min_version_txt} or higher required, not "
584+
f"{version_txt}"
585+
)
586+
587587

588588
def requires_freebsd_version(*min_version):
589589
"""Decorator raising SkipTest if the OS is FreeBSD and the FreeBSD version is

Mac/BuildScript/README.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ building on a newer version of macOS that will run on older versions
3030
by setting MACOSX_DEPLOYMENT_TARGET. This is because the various
3131
Python C modules do not yet support runtime testing of macOS
3232
feature availability (for example, by using macOS AvailabilityMacros.h
33-
and weak-linking). To build a Python that is used to be used on a
33+
and weak-linking). To build a Python that is to be used on a
3434
range of macOS releases, always build on the oldest release to be
3535
supported; the necessary shared libraries for that release will
3636
normally also be available on later systems, with the occasional
@@ -40,7 +40,7 @@ build-installer requires Apple Developer tools, either from the
4040
Command Line Tools package or from a full Xcode installation.
4141
You should use the most recent version of either for the operating
4242
system version in use. (One notable exception: on macOS 10.6,
43-
Snow Leopards, use Xcode 3, not Xcode 4 which was released later
43+
Snow Leopard, use Xcode 3, not Xcode 4 which was released later
4444
in the 10.6 support cycle.)
4545

4646
1. 64-bit, x86_64, for OS X 10.9 (and later)::

Mac/BuildScript/build-installer.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1328,7 +1328,6 @@ def buildPython():
13281328
l_dict = {}
13291329
exec(data, g_dict, l_dict)
13301330
build_time_vars = l_dict['build_time_vars']
1331-
exec(data)
13321331
vars = {}
13331332
for k, v in build_time_vars.items():
13341333
if type(v) == type(''):

Mac/BuildScript/resources/ReadMe.rtf

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
{\rtf1\ansi\ansicpg1252\cocoartf2511
1+
{\rtf1\ansi\ansicpg1252\cocoartf2513
22
\cocoatextscaling0\cocoaplatform0{\fonttbl\f0\fswiss\fcharset0 Helvetica;\f1\fswiss\fcharset0 Helvetica-Bold;\f2\fswiss\fcharset0 Helvetica-Oblique;
33
\f3\fmodern\fcharset0 CourierNewPSMT;}
44
{\colortbl;\red255\green255\blue255;}
@@ -35,7 +35,7 @@ The bundled
3535
\
3636
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural\partightenfactor0
3737

38-
\f1\b \cf0 \ul \ulc0 Which installer variant should I use?
38+
\f1\b \cf0 \ul Which installer variant should I use?
3939
\f0\b0 \ulnone \
4040
\
4141
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\partightenfactor0
@@ -46,7 +46,7 @@ The bundled
4646
\f0\b0 variant is no longer provided. \
4747
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural\partightenfactor0
4848

49-
\f1\b \cf0 \ul \ulc0 \
49+
\f1\b \cf0 \ul \
5050
Using IDLE or other Tk applications
5151
\f0\b0 \ulnone \
5252
\
@@ -63,13 +63,33 @@ Due to new security checks on macOS 10.15 Catalina, when launching IDLE macOS ma
6363
\f0\b0 file dialog windows. Click on the
6464
\f1\b OK
6565
\f0\b0 button to proceed.\
66+
67+
\f1\b \ul \
68+
Python 2.7 end-of-life [changed in 3.7.8]\
69+
\
6670
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural\partightenfactor0
6771
68-
\f1\b \cf0 \ul \ulc0 \
72+
\f0\b0 \cf0 \ulnone Python 2.7 has now reached end-of-life. As of Python 3.7.8, the
73+
\f3 Python Launcher
74+
\f0 app now has
75+
\f3 python3
76+
\f0 factory defaults. Also, the
77+
\f3 Current
78+
\f0 link in the
79+
\f3 /Library/Frameworks/Python.framework/Versions
80+
\f0 directory is now updated to point to the Python 3 being installed; previously, only Python 2 installs updated
81+
\f3 Current
82+
\f0 . This change might affect developers using the framework to embed Python in their applications. If another version is desired for embedding, the
83+
\f3 Current
84+
\f0 symlink can be changed manually without affecting 3.7.x behavior.\
85+
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural\partightenfactor0
86+
87+
\f1\b \cf0 \ul \
6988
Other changes\
7089
\
90+
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural\partightenfactor0
7191
72-
\f0\b0 \ulnone For other changes in this release, see the
92+
\f0\b0 \cf0 \ulnone For other changes in this release, see the
7393
\f2\i What's new
7494
\f0\i0 section in the {\field{\*\fldinst{HYPERLINK "https://www.python.org/doc/"}}{\fldrslt Documentation Set}} for this release and its
7595
\f2\i Release Notes

Misc/NEWS.d/3.7.8.rst

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
.. bpo: 41009
2+
.. date: 2020-06-17-17-27-07
3+
.. nonce: Rvn6OQ
4+
.. release date: 2020-06-27
5+
.. section: Tests
6+
7+
Fix use of ``support.require_{linux|mac|freebsd}_version()`` decorators as
8+
class decorator.
9+
10+
..
11+
12+
.. bpo: 41100
13+
.. date: 2020-06-24-13-51-57
14+
.. nonce: mcHdc5
15+
.. section: macOS
16+
17+
Fix configure error when building on macOS 11. Note that 3.7.8 was released
18+
shortly after the first developer preview of macOS 11 (Big Sur); there are
19+
other known issues with building and running on the developer preview. Big
20+
Sur is expected to be fully supported in a future bugfix release of Python
21+
3.8.x and with 3.9.0.

README.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
This is Python version 3.7.8 candidate 1
2-
========================================
1+
This is Python version 3.7.8
2+
============================
33

44
.. image:: https://travis-ci.org/python/cpython.svg?branch=3.7
55
:alt: CPython build status on Travis CI

configure

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3400,7 +3400,7 @@ $as_echo "#define _BSD_SOURCE 1" >>confdefs.h
34003400
# has no effect, don't bother defining them
34013401
Darwin/[6789].*)
34023402
define_xopen_source=no;;
3403-
Darwin/1[0-9].*)
3403+
Darwin/[12][0-9].*)
34043404
define_xopen_source=no;;
34053405
# On AIX 4 and 5.1, mbstate_t is defined only when _XOPEN_SOURCE == 500 but
34063406
# used in wcsnrtombs() and mbsnrtowcs() even if _XOPEN_SOURCE is not defined

configure.ac

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -507,7 +507,7 @@ case $ac_sys_system/$ac_sys_release in
507507
# has no effect, don't bother defining them
508508
Darwin/@<:@6789@:>@.*)
509509
define_xopen_source=no;;
510-
Darwin/1@<:@0-9@:>@.*)
510+
Darwin/@<:@[12]@:>@@<:@0-9@:>@.*)
511511
define_xopen_source=no;;
512512
# On AIX 4 and 5.1, mbstate_t is defined only when _XOPEN_SOURCE == 500 but
513513
# used in wcsnrtombs() and mbsnrtowcs() even if _XOPEN_SOURCE is not defined

0 commit comments

Comments
 (0)