commit: fe9c89c185c549170603c9736752e1d0f6105881
parent 6441ad4fcabfc8a66d004c56e20a347c5eeef3d6
Author: Michael Forney <mforney@mforney.org>
Date: Fri, 18 Oct 2019 00:16:25 -0700
python: Update to 3.8.0
Diffstat:
10 files changed, 97 insertions(+), 335 deletions(-)
diff --git a/pkg/python/.gitignore b/pkg/python/.gitignore
@@ -1,3 +1,3 @@
-/Python-3.7.4.tar.xz
+/Python-3.8.0.tar.xz
/modules.ninja
/src
diff --git a/pkg/python/gen.lua b/pkg/python/gen.lua
@@ -2,6 +2,7 @@ cflags{
'-D NDEBUG',
'-I $dir',
'-I $srcdir/Include',
+ '-I $srcdir/Include/internal',
}
pkg.deps = {}
@@ -34,21 +35,14 @@ end
local sources = {}
sub('modules.ninja', function()
- -- snapshot $cflags in the subninja environment
- cflags{}
+ cflags{'-D Py_BUILD_CORE_BUILTIN'}
for _, mod in pairs(modules) do
- if mod.core then
- for _, src in ipairs(mod) do
- sources[src] = true
- end
- else
- for _, src in ipairs(mod) do
- local obj = src..'.o'
- if not sources[obj] then
- cc('Modules/'..src)
- sources[obj] = true
- end
+ for _, src in ipairs(mod) do
+ local obj = src..'.o'
+ if not sources[obj] then
+ cc('Modules/'..src)
+ sources[obj] = true
end
end
end
@@ -61,7 +55,7 @@ rule('makesetup', 'lua5.2 $dir/makesetup.lua $dir/modules.lua <$in >$out.tmp &&
build('makesetup', '$outdir/config.c', {'$srcdir/Modules/config.c.in', '|', '$dir/makesetup.lua', '$dir/modules.lua'})
cc('Modules/getbuildinfo.c', nil, {
- cflags=[[$cflags -D 'DATE="Oct 20 2018"' -D 'TIME="02:05:48"']]
+ cflags=[[$cflags -D 'DATE="Oct 14 2019"' -D 'TIME="15:34:47"']]
})
cc('Modules/getpath.c', nil, {
cflags={
@@ -69,7 +63,7 @@ cc('Modules/getpath.c', nil, {
[[-D 'PYTHONPATH=":plat-linux"']],
[[-D 'PREFIX="/"']],
[[-D 'EXEC_PREFIX="/"']],
- [[-D 'VERSION="3.7"']],
+ [[-D 'VERSION="3.8"']],
[[-D 'VPATH=""']],
},
})
@@ -106,6 +100,7 @@ lib('libpython.a', {expand{'Modules/', sources}, paths[[
bytearrayobject.c
bytesobject.c
call.c
+ capsule.c
cellobject.c
classobject.c
codeobject.c
@@ -118,6 +113,7 @@ lib('libpython.a', {expand{'Modules/', sources}, paths[[
floatobject.c
frameobject.c
funcobject.c
+ interpreteridobject.c
iterobject.c
listobject.c
longobject.c
@@ -129,7 +125,7 @@ lib('libpython.a', {expand{'Modules/', sources}, paths[[
namespaceobject.c
object.c
obmalloc.c
- capsule.c
+ picklebufobject.c
rangeobject.c
setobject.c
sliceobject.c
@@ -146,11 +142,7 @@ lib('libpython.a', {expand{'Modules/', sources}, paths[[
listnode.c
node.c
parser.c
- bitset.c
- metagrammar.c
- firstsets.c
- grammar.c
- pgen.c
+ token.c
myreadline.c parsetok.c tokenizer.c
)
Python/(
@@ -162,9 +154,9 @@ lib('libpython.a', {expand{'Modules/', sources}, paths[[
ast_unparse.c
bltinmodule.c
ceval.c
- compile.c
codecs.c
- dynamic_annotations.c
+ compile.c
+ context.c
errors.c
frozenmain.c
future.c
@@ -174,14 +166,17 @@ lib('libpython.a', {expand{'Modules/', sources}, paths[[
getplatform.c.o
getversion.c
graminit.c
+ hamt.c
import.c
importdl.c
+ initconfig.c
marshal.c
modsupport.c
mysnprintf.c
mystrtoul.c
pathconfig.c
peephole.c
+ preconfig.c
pyarena.c
pyctype.c
pyfpe.c
@@ -189,8 +184,6 @@ lib('libpython.a', {expand{'Modules/', sources}, paths[[
pylifecycle.c
pymath.c
pystate.c
- context.c
- hamt.c
pythonrun.c
pytime.c
bootstrap_hash.c
@@ -217,10 +210,10 @@ file('bin/python3', '755', '$outdir/python')
sym('bin/python', 'python3')
for f in iterlines('pylibs.txt') do
- file('lib/python3.7/'..f, '644', '$srcdir/Lib/'..f)
+ file('lib/python3.8/'..f, '644', '$srcdir/Lib/'..f)
end
-file('lib/python3.7/_sysconfigdata_'..abiflags..'_'..platform..'_.py', '644', '$dir/lib/_sysconfigdata.py')
-file('lib/python3.7/Makefile', '644', '$dir/lib/Makefile')
-dir('lib/python3.7/lib-dynload', '755')
+file('lib/python3.8/_sysconfigdata_'..abiflags..'_'..platform..'_.py', '644', '$dir/lib/_sysconfigdata.py')
+file('lib/python3.8/Makefile', '644', '$dir/lib/Makefile')
+dir('lib/python3.8/lib-dynload', '755')
fetch 'curl'
diff --git a/pkg/python/modules.lua b/pkg/python/modules.lua
@@ -1,21 +1,21 @@
return {
- -- Setup.dist
- posix={'posixmodule.c', core=true},
+ -- Modules/Setup
+ posix={'posixmodule.c'},
errno={'errnomodule.c'},
pwd={'pwdmodule.c'},
_sre={'_sre.c'},
_codecs={'_codecsmodule.c'},
_weakref={'_weakref.c'},
- _functools={'_functoolsmodule.c', core=true},
+ _functools={'_functoolsmodule.c'},
_operator={'_operator.c'},
_collections={'_collectionsmodule.c'},
_abc={'_abc.c'},
itertools={'itertoolsmodule.c'},
atexit={'atexitmodule.c'},
- _signal={'signalmodule.c', core=true},
+ _signal={'signalmodule.c'},
_stat={'_stat.c'},
- time={'timemodule.c', core=true},
- _thread={'_threadmodule.c', core=true},
+ time={'timemodule.c'},
+ _thread={'_threadmodule.c'},
_locale={'_localemodule.c'},
_io={
'_io/_iomodule.c',
@@ -25,9 +25,7 @@ return {
'_io/bufferedio.c',
'_io/textio.c',
'_io/stringio.c',
- core=true,
},
- zipimport={'zipimport.c', core=true},
faulthandler={'faulthandler.c'},
_tracemalloc={'_tracemalloc.c', 'hashtable.c'},
--_symtable={'symtablemodule.c'},
@@ -36,8 +34,8 @@ return {
-- setup.py:/Extension
array={'arraymodule.c'},
_contextvars={'_contextvarsmodule.c'},
- cmath={'cmathmodule.c', '_math.c'},
math={'mathmodule.c', '_math.c'},
+ cmath={'cmathmodule.c', '_math.c'},
-- time defined above
_datetime={'_datetimemodule.c'},
_random={'_randommodule.c'},
@@ -46,16 +44,13 @@ return {
_pickle={'_pickle.c'},
-- atexit defined above
_json={'_json.c'},
- --_testcapi={'_testcapimodule.c'},
- --_testbuffer={'_testbuffer.c'},
- --_testimportmultiple={'_testimportmultiple.c'},
- --_testmultiphase={'_testmultiphase.c'},
--_lsprof={'_lsprof.c', 'rotatingtree.c'},
unicodedata={'unicodedata.c'},
_opcode={'_opcode.c'},
_asyncio={'_asynciomodule.c'},
_abc={'_abc.c'},
_queue={'_queuemodule.c'},
+ _statistics={'_statisticsmodule.c'},
fcntl={'fcntlmodule.c'},
-- pwd defined above
grp={'grpmodule.c'},
@@ -64,29 +59,28 @@ return {
parser={'parsermodule.c'},
mmap={'mmapmodule.c'},
--syslog={'syslogmodule.c'},
- --_xxtestfuzz={'_xxtestfuzz/_xxtestfuzz.c', '_xxtestfuzz/fuzzer.c'},
+ --_xxsubinterpreters={'_xxsubinterpretersmodule.c'},
--audioop={'audioop.c'},
- --readline={'readline.c'},
- _crypt={'_cryptmodule.c'},
_csv={'_csv.c'},
_posixsubprocess={'_posixsubprocess.c'},
+ --_testcapi={'_testcapimodule.c'},
+ --_testinternalcapi={'_testinternalcapi.c'},
+ --_testbuffer={'_testbuffer.c'},
+ --_testimportmultiple={'_testimportmultiple.c'},
+ --_testmultiphase={'_testmultiphase.c'},
+ --_xxtestfuzz={'_xxtestfuzz/_xxtestfuzz.c', '_xxtestfuzz/fuzzer.c'},
+ --readline={'readline.c'},
+ --_curses={'_cursesmodule.c'},
+ --_curses_panel={'_curses_panel.c'},
+ _crypt={'_cryptmodule.c'},
_socket={'socketmodule.c'},
- _ssl={'_ssl.c'},
- _hashlib={'_hashopenssl.c'},
- --_sha256={'sha256module.c'},
- --_sha512={'sha512module.c'},
- --_md5={'md5module.c'},
- --_sha1={'sha1module.c'},
- _blake2={'_blake2/blake2module.c', '_blake2/blake2b_impl.c', '_blake2/blake2s_impl.c'},
- _sha3={'_sha3/sha3module.c'},
- --_sqlite3={'_sqlite/cache.c', '_sqlite/connection.c', '_sqlite/cursor.c', '_sqlite/microprotocols.c', '_sqlite/module.c', '_sqlite/prepare_protocol.c', '_sqlite/row.c', '_sqlite/statement.c', '_sqlite/util.c'},
--_dbm={'_dbmmodule.c'},
--_gdbm={'_gdbmmodule.c'},
+ --_sqlite3={'_sqlite/cache.c', '_sqlite/connection.c', '_sqlite/cursor.c', '_sqlite/microprotocols.c', '_sqlite/module.c', '_sqlite/prepare_protocol.c', '_sqlite/row.c', '_sqlite/statement.c', '_sqlite/util.c'},
termios={'termios.c'},
resource={'resource.c'},
- --nis={'nismodule.c'},
- --_curses={'_cursesmodule.c'},
- --_curses_panel={'_curses_panel.c'},
+ --ossaudiodev={'ossaudiodev.c'},
+ --_scproxy={'_scproxy.c'},
zlib={'zlibmodule.c'},
binascii={'binascii.c'},
--_bz2={'_bz2module.c'},
@@ -100,14 +94,22 @@ return {
--_codecs_tw={'cjkcodecs/_codecs_tw.c'},
--_codecs_hk={'cjkcodecs/_codecs_hk.c'},
--_codecs_iso2022={'cjkcodecs/_codecs_iso2022.c'},
+ _posixshmem={'_multiprocessing/posixshmem.c'},
_multiprocessing={'_multiprocessing/multiprocessing.c', '_multiprocessing/semaphore.c'},
- --ossaudiodev={'ossaudiodev.c'},
- --_scproxy={'_scproxy.c'},
+ --_uuid={'_uuidmodule.c'},
--xxlimited={'xxlimited.c'},
--_tkinter={'_tkinter.c', 'tkappinit.c'},
- --_uuid={'_uuidmodule.c'},
--_ctypes={'_ctypes/_ctypes.c', '_ctypes/callbacks.c', '_ctypes/callproc.c', '_ctypes/stgdict.c', '_ctypes/cfield.c'},
--_ctypes_test={'_ctypes/_ctypes_test.c'},
--_decimal={'_decimal/_decimal.c'},
+ _ssl={'_ssl.c'},
+ _hashlib={'_hashopenssl.c'},
+ --_sha256={'sha256module.c'},
+ --_sha512={'sha512module.c'},
+ --_md5={'md5module.c'},
+ --_sha1={'sha1module.c'},
+ _blake2={'_blake2/blake2module.c', '_blake2/blake2b_impl.c', '_blake2/blake2s_impl.c'},
+ _sha3={'_sha3/sha3module.c'},
+ --nis={'nismodule.c'},
_struct={'_struct.c'},
}
diff --git a/pkg/python/patch/0001-bpo-36594-Fix-incorrect-use-of-p-in-format-strings-G.patch b/pkg/python/patch/0001-bpo-36594-Fix-incorrect-use-of-p-in-format-strings-G.patch
@@ -1,261 +0,0 @@
-From 2060c4983a600b654c0128e93640f702cf1cbc3e Mon Sep 17 00:00:00 2001
-From: Zackery Spytz <zspytz@gmail.com>
-Date: Mon, 6 May 2019 10:56:51 -0600
-Subject: [PATCH] bpo-36594: Fix incorrect use of %p in format strings
- (GH-12769)
-
-In addition, fix some other minor violations of C99.
----
- .../2019-04-10-18-12-11.bpo-36594.fbnJAc.rst | 2 ++
- Modules/_ctypes/_ctypes_test.c | 8 ++++----
- Modules/_ctypes/callproc.c | 4 ++--
- Modules/hashtable.c | 2 +-
- Objects/object.c | 8 ++++----
- Objects/obmalloc.c | 2 +-
- Objects/unicodeobject.c | 6 +++---
- Programs/_freeze_importlib.c | 2 +-
- Python/sysmodule.c | 8 ++++----
- Python/thread_pthread.h | 4 ++--
- 10 files changed, 24 insertions(+), 22 deletions(-)
- create mode 100644 Misc/NEWS.d/next/Core and Builtins/2019-04-10-18-12-11.bpo-36594.fbnJAc.rst
-
-diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-04-10-18-12-11.bpo-36594.fbnJAc.rst b/Misc/NEWS.d/next/Core and Builtins/2019-04-10-18-12-11.bpo-36594.fbnJAc.rst
-new file mode 100644
-index 0000000000..7ca5dd998d
---- /dev/null
-+++ b/Misc/NEWS.d/next/Core and Builtins/2019-04-10-18-12-11.bpo-36594.fbnJAc.rst
-@@ -0,0 +1,2 @@
-+Fix incorrect use of ``%p`` in format strings.
-+Patch by Zackery Spytz.
-diff --git a/Modules/_ctypes/_ctypes_test.c b/Modules/_ctypes/_ctypes_test.c
-index 0152945ca1..c837c4cbf8 100644
---- a/Modules/_ctypes/_ctypes_test.c
-+++ b/Modules/_ctypes/_ctypes_test.c
-@@ -87,7 +87,7 @@ EXPORT(void)testfunc_array(int values[4])
- EXPORT(long double)testfunc_Ddd(double a, double b)
- {
- long double result = (long double)(a * b);
-- printf("testfunc_Ddd(%p, %p)\n", &a, &b);
-+ printf("testfunc_Ddd(%p, %p)\n", (void *)&a, (void *)&b);
- printf("testfunc_Ddd(%g, %g)\n", a, b);
- return result;
- }
-@@ -95,7 +95,7 @@ EXPORT(long double)testfunc_Ddd(double a, double b)
- EXPORT(long double)testfunc_DDD(long double a, long double b)
- {
- long double result = a * b;
-- printf("testfunc_DDD(%p, %p)\n", &a, &b);
-+ printf("testfunc_DDD(%p, %p)\n", (void *)&a, (void *)&b);
- printf("testfunc_DDD(%Lg, %Lg)\n", a, b);
- return result;
- }
-@@ -103,7 +103,7 @@ EXPORT(long double)testfunc_DDD(long double a, long double b)
- EXPORT(int)testfunc_iii(int a, int b)
- {
- int result = a * b;
-- printf("testfunc_iii(%p, %p)\n", &a, &b);
-+ printf("testfunc_iii(%p, %p)\n", (void *)&a, (void *)&b);
- return result;
- }
-
-@@ -361,7 +361,7 @@ static void _xxx_init(void *(*Xalloc)(int), void (*Xfree)(void *))
- {
- void *ptr;
-
-- printf("_xxx_init got %p %p\n", Xalloc, Xfree);
-+ printf("_xxx_init got %p %p\n", (void *)Xalloc, (void *)Xfree);
- printf("calling\n");
- ptr = Xalloc(32);
- Xfree(ptr);
-diff --git a/Modules/_ctypes/callproc.c b/Modules/_ctypes/callproc.c
-index ec854c864c..8de36893a1 100644
---- a/Modules/_ctypes/callproc.c
-+++ b/Modules/_ctypes/callproc.c
-@@ -528,11 +528,11 @@ PyCArg_repr(PyCArgObject *self)
- default:
- if (is_literal_char((unsigned char)self->tag)) {
- sprintf(buffer, "<cparam '%c' at %p>",
-- (unsigned char)self->tag, self);
-+ (unsigned char)self->tag, (void *)self);
- }
- else {
- sprintf(buffer, "<cparam 0x%02x at %p>",
-- (unsigned char)self->tag, self);
-+ (unsigned char)self->tag, (void *)self);
- }
- break;
- }
-diff --git a/Modules/hashtable.c b/Modules/hashtable.c
-index e6f8daf796..4a36a1e71c 100644
---- a/Modules/hashtable.c
-+++ b/Modules/hashtable.c
-@@ -240,7 +240,7 @@ _Py_hashtable_print_stats(_Py_hashtable_t *ht)
- }
- printf("hash table %p: entries=%"
- PY_FORMAT_SIZE_T "u/%" PY_FORMAT_SIZE_T "u (%.0f%%), ",
-- ht, ht->entries, ht->num_buckets, load * 100.0);
-+ (void *)ht, ht->entries, ht->num_buckets, load * 100.0);
- if (nchains)
- printf("avg_chain_len=%.1f, ", (double)total_chain_len / nchains);
- printf("max_chain_len=%" PY_FORMAT_SIZE_T "u, %" PY_FORMAT_SIZE_T "u KiB\n",
-diff --git a/Objects/object.c b/Objects/object.c
-index 8a3f8831d6..b2baf0c7a5 100644
---- a/Objects/object.c
-+++ b/Objects/object.c
-@@ -359,7 +359,7 @@ PyObject_Print(PyObject *op, FILE *fp, int flags)
- universally available */
- Py_BEGIN_ALLOW_THREADS
- fprintf(fp, "<refcnt %ld at %p>",
-- (long)op->ob_refcnt, op);
-+ (long)op->ob_refcnt, (void *)op);
- Py_END_ALLOW_THREADS
- else {
- PyObject *s;
-@@ -472,7 +472,7 @@ _PyObject_Dump(PyObject* op)
- "address : %p\n",
- Py_TYPE(op)==NULL ? "NULL" : Py_TYPE(op)->tp_name,
- (long)op->ob_refcnt,
-- op);
-+ (void *)op);
- fflush(stderr);
- }
-
-@@ -1980,7 +1980,7 @@ _Py_PrintReferences(FILE *fp)
- PyObject *op;
- fprintf(fp, "Remaining objects:\n");
- for (op = refchain._ob_next; op != &refchain; op = op->_ob_next) {
-- fprintf(fp, "%p [%" PY_FORMAT_SIZE_T "d] ", op, op->ob_refcnt);
-+ fprintf(fp, "%p [%" PY_FORMAT_SIZE_T "d] ", (void *)op, op->ob_refcnt);
- if (PyObject_Print(op, fp, 0) != 0)
- PyErr_Clear();
- putc('\n', fp);
-@@ -1996,7 +1996,7 @@ _Py_PrintReferenceAddresses(FILE *fp)
- PyObject *op;
- fprintf(fp, "Remaining object addresses:\n");
- for (op = refchain._ob_next; op != &refchain; op = op->_ob_next)
-- fprintf(fp, "%p [%" PY_FORMAT_SIZE_T "d] %s\n", op,
-+ fprintf(fp, "%p [%" PY_FORMAT_SIZE_T "d] %s\n", (void *)op,
- op->ob_refcnt, Py_TYPE(op)->tp_name);
- }
-
-diff --git a/Objects/obmalloc.c b/Objects/obmalloc.c
-index 885ad537ad..4966ac8a10 100644
---- a/Objects/obmalloc.c
-+++ b/Objects/obmalloc.c
-@@ -2362,7 +2362,7 @@ _PyObject_DebugDumpAddress(const void *p)
- }
-
- tail = q + nbytes;
-- fprintf(stderr, " The %d pad bytes at tail=%p are ", SST, tail);
-+ fprintf(stderr, " The %d pad bytes at tail=%p are ", SST, (void *)tail);
- ok = 1;
- for (i = 0; i < SST; ++i) {
- if (tail[i] != FORBIDDENBYTE) {
-diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
-index c0e9c2d112..dda2208edc 100644
---- a/Objects/unicodeobject.c
-+++ b/Objects/unicodeobject.c
-@@ -1214,7 +1214,7 @@ void *_PyUnicode_compact_data(void *unicode) {
- return _PyUnicode_COMPACT_DATA(unicode);
- }
- void *_PyUnicode_data(void *unicode){
-- printf("obj %p\n", unicode);
-+ printf("obj %p\n", (void *)unicode);
- printf("compact %d\n", PyUnicode_IS_COMPACT(unicode));
- printf("compact ascii %d\n", PyUnicode_IS_COMPACT_ASCII(unicode));
- printf("ascii op %p\n", ((void*)((PyASCIIObject*)(unicode) + 1)));
-@@ -1245,14 +1245,14 @@ _PyUnicode_Dump(PyObject *op)
-
- if (ascii->wstr == data)
- printf("shared ");
-- printf("wstr=%p", ascii->wstr);
-+ printf("wstr=%p", (void *)ascii->wstr);
-
- if (!(ascii->state.ascii == 1 && ascii->state.compact == 1)) {
- printf(" (%" PY_FORMAT_SIZE_T "u), ", compact->wstr_length);
- if (!ascii->state.compact && compact->utf8 == unicode->data.any)
- printf("shared ");
- printf("utf8=%p (%" PY_FORMAT_SIZE_T "u)",
-- compact->utf8, compact->utf8_length);
-+ (void *)compact->utf8, compact->utf8_length);
- }
- printf(", data=%p\n", data);
- }
-diff --git a/Programs/_freeze_importlib.c b/Programs/_freeze_importlib.c
-index 7de641e1a5..609133cca8 100644
---- a/Programs/_freeze_importlib.c
-+++ b/Programs/_freeze_importlib.c
-@@ -132,7 +132,7 @@ main(int argc, char *argv[])
- size_t i, end = Py_MIN(n + 16, data_size);
- fprintf(outfile, " ");
- for (i = n; i < end; i++) {
-- fprintf(outfile, "%d,", (unsigned int) data[i]);
-+ fprintf(outfile, "%u,", (unsigned int) data[i]);
- }
- fprintf(outfile, "\n");
- }
-diff --git a/Python/sysmodule.c b/Python/sysmodule.c
-index 942a8b6bec..9f73bbd62c 100644
---- a/Python/sysmodule.c
-+++ b/Python/sysmodule.c
-@@ -1683,7 +1683,7 @@ _alloc_preinit_entry(const wchar_t *value)
-
- PyMem_SetAllocator(PYMEM_DOMAIN_RAW, &old_alloc);
- return node;
--};
-+}
-
- static int
- _append_preinit_entry(_Py_PreInitEntry *optionlist, const wchar_t *value)
-@@ -1705,7 +1705,7 @@ _append_preinit_entry(_Py_PreInitEntry *optionlist, const wchar_t *value)
- last_entry->next = new_entry;
- }
- return 0;
--};
-+}
-
- static void
- _clear_preinit_entries(_Py_PreInitEntry *optionlist)
-@@ -1722,7 +1722,7 @@ _clear_preinit_entries(_Py_PreInitEntry *optionlist)
- current = next;
- }
- PyMem_SetAllocator(PYMEM_DOMAIN_RAW, &old_alloc);
--};
-+}
-
- static void
- _clear_all_preinit_options(void)
-@@ -1753,7 +1753,7 @@ _PySys_ReadPreInitOptions(void)
-
- _clear_all_preinit_options();
- return 0;
--};
-+}
-
- static PyObject *
- get_warnoptions(void)
-diff --git a/Python/thread_pthread.h b/Python/thread_pthread.h
-index f79f9b90a6..2677cc945e 100644
---- a/Python/thread_pthread.h
-+++ b/Python/thread_pthread.h
-@@ -298,7 +298,7 @@ PyThread_allocate_lock(void)
- }
- }
-
-- dprintf(("PyThread_allocate_lock() -> %p\n", lock));
-+ dprintf(("PyThread_allocate_lock() -> %p\n", (void *)lock));
- return (PyThread_type_lock)lock;
- }
-
-@@ -482,7 +482,7 @@ PyThread_allocate_lock(void)
- }
- }
-
-- dprintf(("PyThread_allocate_lock() -> %p\n", lock));
-+ dprintf(("PyThread_allocate_lock() -> %p\n", (void *)lock));
- return (PyThread_type_lock) lock;
- }
-
---
-2.22.0
-
diff --git a/pkg/python/pyconfig.h b/pkg/python/pyconfig.h
@@ -2,11 +2,13 @@
#define Py_PYCONFIG_H
/* #undef AC_APPLE_UNIVERSAL_BUILD */
/* #undef AIX_GENUINE_CPLUSPLUS */
+/* #undef ALT_SOABI */
/* #undef ANDROID_API_LEVEL */
/* #undef DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754 */
/* #undef DOUBLE_IS_BIG_ENDIAN_IEEE754 */
#define DOUBLE_IS_LITTLE_ENDIAN_IEEE754 1
#define ENABLE_IPV6 1
+/* #undef FLOAT_WORDS_BIGENDIAN */
/* #undef FLOCK_NEEDS_LIBBSD */
/* #undef GETPGRP_HAVE_ARG */
/* #undef GETTIMEOFDAY_NO_TZ */
@@ -43,6 +45,7 @@
#define HAVE_CONFSTR 1
/* #undef HAVE_CONIO_H */
#define HAVE_COPYSIGN 1
+/* #undef HAVE_COPY_FILE_RANGE */
#define HAVE_CRYPT_H 1
#define HAVE_CRYPT_R 1
#define HAVE_CTERMID 1
@@ -90,6 +93,8 @@
#define HAVE_ERFC 1
#define HAVE_ERRNO_H 1
#define HAVE_EXECV 1
+#define HAVE_EXPLICIT_BZERO 1
+/* #undef HAVE_EXPLICIT_MEMSET */
#define HAVE_EXPM1 1
#define HAVE_FACCESSAT 1
#define HAVE_FCHDIR 1
@@ -100,6 +105,7 @@
#define HAVE_FCNTL_H 1
#define HAVE_FDATASYNC 1
#define HAVE_FDOPENDIR 1
+/* #undef HAVE_FDWALK */
#define HAVE_FEXECVE 1
#define HAVE_FINITE 1
#define HAVE_FLOCK 1
@@ -127,6 +133,8 @@
#define HAVE_GETADDRINFO 1
#define HAVE_GETC_UNLOCKED 1
#define HAVE_GETENTROPY 1
+#define HAVE_GETGRGID_R 1
+#define HAVE_GETGRNAM_R 1
#define HAVE_GETGROUPLIST 1
#define HAVE_GETGROUPS 1
/* #undef HAVE_GETHOSTBYNAME */
@@ -145,6 +153,8 @@
#define HAVE_GETPID 1
#define HAVE_GETPRIORITY 1
#define HAVE_GETPWENT 1
+#define HAVE_GETPWNAM_R 1
+#define HAVE_GETPWUID_R 1
#define HAVE_GETRANDOM 1
#define HAVE_GETRANDOM_SYSCALL 1
#define HAVE_GETRESGID 1
@@ -190,7 +200,9 @@
#define HAVE_LINUX_CAN_H 1
#define HAVE_LINUX_CAN_RAW_FD_FRAMES 1
#define HAVE_LINUX_CAN_RAW_H 1
+#define HAVE_LINUX_MEMFD_H 1
#define HAVE_LINUX_NETLINK_H 1
+#define HAVE_LINUX_QRTR_H 1
#define HAVE_LINUX_RANDOM_H 1
#define HAVE_LINUX_TIPC_H 1
#define HAVE_LINUX_VM_SOCKETS_H 1
@@ -200,8 +212,10 @@
#define HAVE_LONG_DOUBLE 1
#define HAVE_LSTAT 1
#define HAVE_LUTIMES 1
+#define HAVE_MADVISE 1
#define HAVE_MAKEDEV 1
#define HAVE_MBRTOWC 1
+#define HAVE_MEMFD_CREATE 1
#define HAVE_MEMORY_H 1
#define HAVE_MEMRCHR 1
#define HAVE_MKDIRAT 1
@@ -228,12 +242,14 @@
#define HAVE_POSIX_FADVISE 1
#define HAVE_POSIX_FALLOCATE 1
#define HAVE_POSIX_SPAWN 1
+#define HAVE_POSIX_SPAWNP 1
#define HAVE_PREAD 1
#define HAVE_PREADV 1
/* #undef HAVE_PREADV2 */
#define HAVE_PRLIMIT 1
/* #undef HAVE_PROCESS_H */
#define HAVE_PROTOTYPES 1
+#define HAVE_PTHREAD_CONDATTR_SETCLOCK 1
/* #undef HAVE_PTHREAD_DESTRUCTOR */
#define HAVE_PTHREAD_GETCPUCLOCKID 1
#define HAVE_PTHREAD_H 1
@@ -259,6 +275,7 @@
/* #undef HAVE_RL_PRE_INPUT_HOOK */
/* #undef HAVE_RL_RESIZE_TERMINAL */
#define HAVE_ROUND 1
+/* #undef HAVE_RTPSPAWN */
#define HAVE_SCHED_GET_PRIORITY_MAX 1
#define HAVE_SCHED_H 1
#define HAVE_SCHED_RR_GET_INTERVAL 1
@@ -288,8 +305,11 @@
#define HAVE_SETUID 1
#define HAVE_SETVBUF 1
#define HAVE_SHADOW_H 1
+#define HAVE_SHM_OPEN 1
+#define HAVE_SHM_UNLINK 1
#define HAVE_SIGACTION 1
#define HAVE_SIGALTSTACK 1
+#define HAVE_SIGFILLSET 1
#define HAVE_SIGINFO_T_SI_BAND 1
#define HAVE_SIGINTERRUPT 1
#define HAVE_SIGNAL_H 1
@@ -318,6 +338,7 @@
#define HAVE_STRING_H 1
#define HAVE_STRLCPY 1
#define HAVE_STROPTS_H 1
+#define HAVE_STRSIGNAL 1
#define HAVE_STRUCT_PASSWD_PW_GECOS 1
#define HAVE_STRUCT_PASSWD_PW_PASSWD 1
/* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */
@@ -344,7 +365,9 @@
/* #undef HAVE_SYS_KERN_CONTROL_H */
/* #undef HAVE_SYS_LOADAVG_H */
/* #undef HAVE_SYS_LOCK_H */
+/* #undef HAVE_SYS_MEMFD_H */
/* #undef HAVE_SYS_MKDEV_H */
+#define HAVE_SYS_MMAN_H 1
/* #undef HAVE_SYS_MODEM_H */
/* #undef HAVE_SYS_NDIR_H */
#define HAVE_SYS_PARAM_H 1
@@ -411,9 +434,8 @@
#define HAVE_X509_VERIFY_PARAM_SET1_HOST 1
#define HAVE_ZLIB_COPY 1
/* #undef HAVE__GETPTY */
-/* #undef LOG1P_DROPS_ZERO_SIGN */
/* #undef MAJOR_IN_MKDEV */
-/* #undef MAJOR_IN_SYSMACROS */
+#define MAJOR_IN_SYSMACROS 1
/* #undef MVWDELCH_IS_EXPRESSION */
/* #undef PACKAGE_BUGREPORT */
/* #undef PACKAGE_NAME */
@@ -432,8 +454,10 @@
/* #undef Py_DEBUG */
/* #undef Py_ENABLE_SHARED */
/* #undef Py_HASH_ALGORITHM */
+/* #undef Py_TRACE_REFS */
#define RETSIGTYPE void
/* #undef SETPGRP_HAVE_ARG */
+/* #undef SHM_NEEDS_LIBRT */
/* #undef SIGNED_RIGHT_SHIFT_ZERO_FILLS */
#define SIZEOF_DOUBLE 8
#define SIZEOF_FLOAT 4
@@ -455,7 +479,6 @@
#define SIZEOF__BOOL 1
#define STDC_HEADERS 1
#define SYS_SELECT_WITH_SYS_TIME 1
-#define TANH_PRESERVES_ZERO_SIGN 1
/* #undef TIMEMODULE_LIB */
#define TIME_WITH_SYS_TIME 1
/* #undef TM_IN_SYS_TIME */
diff --git a/pkg/python/pylibs.txt b/pkg/python/pylibs.txt
@@ -22,6 +22,7 @@ argparse.py
ast.py
asynchat.py
asyncio/__init__.py
+asyncio/__main__.py
asyncio/base_events.py
asyncio/base_futures.py
asyncio/base_subprocess.py
@@ -29,6 +30,7 @@ asyncio/base_tasks.py
asyncio/constants.py
asyncio/coroutines.py
asyncio/events.py
+asyncio/exceptions.py
asyncio/format_helpers.py
asyncio/futures.py
asyncio/locks.py
@@ -39,10 +41,12 @@ asyncio/queues.py
asyncio/runners.py
asyncio/selector_events.py
asyncio/sslproto.py
+asyncio/staggered.py
asyncio/streams.py
asyncio/subprocess.py
asyncio/tasks.py
asyncio/transports.py
+asyncio/trsock.py
asyncio/unix_events.py
asyncio/windows_events.py
asyncio/windows_utils.py
@@ -208,7 +212,6 @@ encodings/cp273.py
encodings/cp424.py
encodings/cp437.py
encodings/cp500.py
-encodings/cp65001.py
encodings/cp720.py
encodings/cp737.py
encodings/cp775.py
@@ -295,7 +298,6 @@ encodings/shift_jisx0213.py
encodings/tis_620.py
encodings/undefined.py
encodings/unicode_escape.py
-encodings/unicode_internal.py
encodings/utf_16.py
encodings/utf_16_be.py
encodings/utf_16_le.py
@@ -356,6 +358,7 @@ idlelib/delegator.py
idlelib/dynoption.py
idlelib/editor.py
idlelib/filelist.py
+idlelib/format.py
idlelib/grep.py
idlelib/help.py
idlelib/help_about.py
@@ -367,7 +370,6 @@ idlelib/macosx.py
idlelib/mainmenu.py
idlelib/multicall.py
idlelib/outwin.py
-idlelib/paragraph.py
idlelib/parenmatch.py
idlelib/pathbrowser.py
idlelib/percolator.py
@@ -377,13 +379,13 @@ idlelib/query.py
idlelib/redirector.py
idlelib/replace.py
idlelib/rpc.py
-idlelib/rstrip.py
idlelib/run.py
idlelib/runscript.py
idlelib/scrolledlist.py
idlelib/search.py
idlelib/searchbase.py
idlelib/searchengine.py
+idlelib/sidebar.py
idlelib/squeezer.py
idlelib/stackviewer.py
idlelib/statusbar.py
@@ -402,6 +404,7 @@ importlib/_bootstrap.py
importlib/_bootstrap_external.py
importlib/abc.py
importlib/machinery.py
+importlib/metadata.py
importlib/resources.py
importlib/util.py
inspect.py
@@ -494,7 +497,6 @@ logging/__init__.py
logging/config.py
logging/handlers.py
lzma.py
-macpath.py
mailbox.py
mailcap.py
mimetypes.py
@@ -520,7 +522,8 @@ multiprocessing/process.py
multiprocessing/queues.py
multiprocessing/reduction.py
multiprocessing/resource_sharer.py
-multiprocessing/semaphore_tracker.py
+multiprocessing/resource_tracker.py
+multiprocessing/shared_memory.py
multiprocessing/sharedctypes.py
multiprocessing/spawn.py
multiprocessing/synchronize.py
@@ -644,6 +647,7 @@ types.py
typing.py
unittest/__init__.py
unittest/__main__.py
+unittest/async_case.py
unittest/case.py
unittest/loader.py
unittest/main.py
@@ -701,3 +705,4 @@ xmlrpc/client.py
xmlrpc/server.py
zipapp.py
zipfile.py
+zipimport.py
diff --git a/pkg/python/sha256 b/pkg/python/sha256
@@ -1 +1 @@
-fb799134b868199930b75f26678f18932214042639cd52b16da7fd134cd9b13f Python-3.7.4.tar.xz
+b356244e13fb5491da890b35b13b2118c3122977c2cd825e3eb6e7d462030d84 Python-3.8.0.tar.xz
diff --git a/pkg/python/url b/pkg/python/url
@@ -1 +1 @@
-url = "https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tar.xz"
+url = "https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tar.xz"
diff --git a/pkg/python/ver b/pkg/python/ver
@@ -1 +1 @@
-3.7.4 r0
+3.8.0 r0
diff --git a/pkg/youtube-dl/gen.lua b/pkg/youtube-dl/gen.lua
@@ -1,6 +1,6 @@
file('bin/youtube-dl', '755', '$srcdir/bin/youtube-dl')
for f in iterlines('pylibs.txt') do
- file('lib/python3.7/'..f, '644', '$srcdir/'..f)
+ file('lib/python3.8/'..f, '644', '$srcdir/'..f)
end
fetch 'git'