# HG changeset patch # User John Beck # Date 1469130752 25200 # Node ID 56a2f066191a81997f0a4259bad6ebb3c7e6fa6a # Parent b54de573b4e9b3dbec4a2801cabd5db510293f2b 23858083 Upgrade Python to 3.5.2 diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/Makefile --- a/components/python/python35/Makefile Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/Makefile Thu Jul 21 12:52:32 2016 -0700 @@ -25,17 +25,17 @@ include ../../../make-rules/shared-macros.mk COMPONENT_NAME= Python -COMPONENT_VERSION= 3.5.1 +COMPONENT_VERSION= 3.5.2 COMPONENT_PROJECT_URL= http://python.org/ COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.xz COMPONENT_ARCHIVE_HASH= \ - sha256:c6d57c0c366d9060ab6c0cdf889ebf3d92711d466cc0119c441dbf2746f725c9 + sha256:0010f56100b9b74259ebcd5d4b295a32324b58b517403a10d1a2aa7cb22bca40 COMPONENT_ARCHIVE_URL= $(COMPONENT_PROJECT_URL)ftp/python/$(COMPONENT_VERSION)/$(COMPONENT_ARCHIVE) COMPONENT_SIG_URL= $(COMPONENT_ARCHIVE_URL).asc COMPONENT_BUGDB= utility/python -TPNO= 25978 +TPNO= 29999 include $(WS_MAKE_RULES)/prep.mk include $(WS_MAKE_RULES)/configure.mk diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/00-dtrace.patch --- a/components/python/python35/patches/00-dtrace.patch Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/patches/00-dtrace.patch Thu Jul 21 12:52:32 2016 -0700 @@ -1011,17 +1011,17 @@ +if __name__ == '__main__': + test_main() + ---- Python-3.5.0a4/Lib/test/test_sys.py.~1~ 2015-04-20 00:37:52.000000000 -0700 -+++ Python-3.5.0a4/Lib/test/test_sys.py 2015-04-20 12:38:22.235939749 -0700 -@@ -868,6 +868,7 @@ +--- Python-3.5.2/Lib/test/test_sys.py.~1~ 2016-06-25 14:38:37.000000000 -0700 ++++ Python-3.5.2/Lib/test/test_sys.py 2016-07-07 15:09:04.689495337 -0700 +@@ -882,6 +882,7 @@ self.assertEqual(sys.getsizeof(True, -1), size('') + self.longdigit) def test_objecttypes(self): + import dtrace # check all types defined in Objects/ + calcsize = struct.calcsize size = test.support.calcobjsize - vsize = test.support.calcvobjsize -@@ -896,13 +897,17 @@ +@@ -911,13 +912,17 @@ return inner check(get_cell().__closure__[0], size('P')) # code @@ -1042,8 +1042,8 @@ # complex check(complex(0,1), size('2d')) # method_descriptor (descriptor object) ---- Python-3.5.1rc1/Makefile.pre.in.~1~ 2015-11-22 22:19:07.000000000 -0800 -+++ Python-3.5.1rc1/Makefile.pre.in 2015-12-04 07:32:55.999196503 -0800 +--- Python-3.5.2/Makefile.pre.in.~1~ 2016-06-25 14:38:37.000000000 -0700 ++++ Python-3.5.2/Makefile.pre.in 2016-07-07 15:10:50.572816003 -0700 @@ -57,6 +57,13 @@ # Use this to make a link between python$(VERSION) and python in $(BINDIR) LN= @LN@ @@ -1058,7 +1058,7 @@ # Portable install script (configure doesn't always guess right) INSTALL= @INSTALL@ INSTALL_PROGRAM=@INSTALL_PROGRAM@ -@@ -611,7 +618,7 @@ +@@ -618,7 +625,7 @@ $(AR) $(ARFLAGS) $@ $(MODOBJS) $(RANLIB) $@ @@ -1067,7 +1067,7 @@ if test $(INSTSONAME) != $(LDLIBRARY); then \ $(BLDSHARED) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ $(LN) -f $(INSTSONAME) $@; \ -@@ -622,9 +629,8 @@ +@@ -629,9 +636,8 @@ libpython3.so: libpython$(LDVERSION).so $(BLDSHARED) $(NO_AS_NEEDED) -o $@ -Wl,-h$@ $^ @@ -1079,7 +1079,7 @@ libpython$(VERSION).sl: $(LIBRARY_OBJS) $(LDSHARED) -o $@ $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST) -@@ -729,12 +735,18 @@ +@@ -740,12 +746,18 @@ $(MODULE_OBJS) \ $(SIGNAL_OBJS) \ $(MODOBJS) \ @@ -1098,7 +1098,7 @@ Modules/getpath.o: $(srcdir)/Modules/getpath.c Makefile $(CC) -c $(PY_CORE_CFLAGS) -DPYTHONPATH='"$(PYTHONPATH)"' \ -@@ -868,6 +880,46 @@ +@@ -890,6 +902,46 @@ Objects/typeslots.inc: $(srcdir)/Include/typeslots.h $(srcdir)/Objects/typeslots.py $(PYTHON) $(srcdir)/Objects/typeslots.py < $(srcdir)/Include/typeslots.h > Objects/typeslots.inc @@ -1145,7 +1145,7 @@ ############################################################################ # Header files -@@ -1582,6 +1634,11 @@ +@@ -1608,6 +1660,11 @@ find build -name '*.py[co]' -exec rm -f {} ';' || true -rm -f pybuilddir.txt -rm -f Lib/lib2to3/*Grammar*.pickle @@ -1157,7 +1157,7 @@ -rm -f Programs/_testembed Programs/_freeze_importlib -rm -rf build -@@ -1615,6 +1672,11 @@ +@@ -1642,6 +1699,11 @@ -o -name '*.orig' -o -name '*.rej' \ -o -name '*.bak' ')' \ -exec rm -f {} ';' @@ -1339,7 +1339,7 @@ --- Python-3.5.0rc2/Objects/frameobject.c.~1~ 2015-08-25 10:19:14.000000000 -0700 +++ Python-3.5.0rc2/Objects/frameobject.c 2015-09-02 11:31:53.362348226 -0700 -@@ -737,6 +737,15 @@ +@@ -735,6 +735,15 @@ f->f_executing = 0; f->f_gen = NULL; @@ -1355,8 +1355,8 @@ _PyObject_GC_TRACK(f); return f; } ---- Python-3.5.0a4/Objects/typeobject.c.~1~ 2015-04-20 00:37:53.000000000 -0700 -+++ Python-3.5.0a4/Objects/typeobject.c 2015-04-20 12:55:28.246913689 -0700 +--- Python-3.5.2/Objects/typeobject.c.~1~ 2016-06-25 14:38:38.000000000 -0700 ++++ Python-3.5.2/Objects/typeobject.c 2016-07-07 15:17:01.001120208 -0700 @@ -4,6 +4,10 @@ #include "frameobject.h" #include "structmember.h" @@ -1368,7 +1368,7 @@ #include -@@ -934,8 +938,29 @@ +@@ -916,8 +920,29 @@ PyType_GenericAlloc(PyTypeObject *type, Py_ssize_t nitems) { PyObject *obj; @@ -1399,7 +1399,7 @@ if (PyType_IS_GC(type)) obj = _PyObject_GC_Malloc(size); -@@ -957,6 +982,23 @@ +@@ -939,6 +964,23 @@ if (PyType_IS_GC(type)) _PyObject_GC_TRACK(obj); @@ -1423,7 +1423,7 @@ return obj; } -@@ -1077,9 +1119,56 @@ +@@ -1059,9 +1101,56 @@ return 0; } @@ -1480,8 +1480,8 @@ PyTypeObject *type, *base; destructor basedealloc; PyThreadState *tstate = PyThreadState_GET(); ---- Python-3.5.0rc2/Python/ceval.c.~1~ 2015-08-25 10:19:14.000000000 -0700 -+++ Python-3.5.0rc2/Python/ceval.c 2015-09-02 11:33:12.745496843 -0700 +--- Python-3.5.2/Python/ceval.c.~1~ 2016-06-25 14:38:38.000000000 -0700 ++++ Python-3.5.2/Python/ceval.c 2016-07-08 06:34:15.786356054 -0700 @@ -20,6 +20,13 @@ #include @@ -1619,7 +1619,7 @@ switch (opcode) { /* BEWARE! -@@ -3573,6 +3648,10 @@ +@@ -3625,6 +3700,10 @@ /* pop frame */ exit_eval_frame: @@ -1630,7 +1630,7 @@ Py_LeaveRecursiveCall(); f->f_executing = 0; tstate->frame = f->f_back; -@@ -4323,6 +4402,57 @@ +@@ -4375,6 +4454,57 @@ return result; } @@ -1688,7 +1688,7 @@ PyObject * _PyEval_CallTracing(PyObject *func, PyObject *args) { -@@ -4340,6 +4470,51 @@ +@@ -4392,6 +4522,51 @@ return result; } @@ -1740,8 +1740,8 @@ /* See Objects/lnotab_notes.txt for a description of how tracing works. */ static int maybe_call_line_trace(Py_tracefunc func, PyObject *obj, ---- Python-3.5.0a4/configure.~1~ 2015-04-20 00:37:53.000000000 -0700 -+++ Python-3.5.0a4/configure 2015-04-20 12:58:28.386851213 -0700 +--- Python-3.5.2/configure.~1~ 2016-06-25 14:38:39.000000000 -0700 ++++ Python-3.5.2/configure 2016-07-08 06:36:50.661156099 -0700 @@ -642,6 +642,11 @@ MACHDEP_OBJS DYNLOADFILE @@ -1754,7 +1754,7 @@ THREADOBJ LDLAST USE_THREAD_MODULE -@@ -824,6 +829,7 @@ +@@ -828,6 +833,7 @@ with_tsc with_pymalloc with_valgrind @@ -1762,7 +1762,7 @@ with_fpectl with_libm with_libc -@@ -1512,6 +1518,7 @@ +@@ -1519,6 +1525,7 @@ --with(out)-tsc enable/disable timestamp counter profile --with(out)-pymalloc disable/enable specialized mallocs --with-valgrind Enable Valgrind support @@ -1770,7 +1770,7 @@ --with-fpectl enable SIGFPE catching --with-libm=STRING math library --with-libc=STRING C library -@@ -10866,6 +10873,174 @@ +@@ -11074,6 +11081,174 @@ OPT="-DDYNAMIC_ANNOTATIONS_ENABLED=1 $OPT" fi @@ -1945,9 +1945,9 @@ # -I${DLINCLDIR} is added to the compile rule for importdl.o DLINCLDIR=. ---- Python-3.5.0a4/configure.ac.~1~ 2015-04-20 00:37:53.000000000 -0700 -+++ Python-3.5.0a4/configure.ac 2015-04-20 12:59:58.383305870 -0700 -@@ -3129,6 +3129,62 @@ +--- Python-3.5.2/configure.ac.~1~ 2016-06-25 14:38:39.000000000 -0700 ++++ Python-3.5.2/configure.ac 2016-07-08 06:38:36.346837325 -0700 +@@ -3211,6 +3211,62 @@ OPT="-DDYNAMIC_ANNOTATIONS_ENABLED=1 $OPT" fi @@ -2010,9 +2010,9 @@ # -I${DLINCLDIR} is added to the compile rule for importdl.o AC_SUBST(DLINCLDIR) DLINCLDIR=. ---- Python-3.5.0a4/pyconfig.h.in.~1~ 2015-04-20 00:37:53.000000000 -0700 -+++ Python-3.5.0a4/pyconfig.h.in 2015-04-20 13:00:52.054987861 -0700 -@@ -1358,6 +1358,9 @@ +--- Python-3.5.2/pyconfig.h.in.~1~ 2016-06-25 14:38:39.000000000 -0700 ++++ Python-3.5.2/pyconfig.h.in 2016-07-08 06:40:11.272340748 -0700 +@@ -1360,6 +1360,9 @@ /* Define if you want documentation strings in extension modules */ #undef WITH_DOC_STRINGS @@ -2022,9 +2022,9 @@ /* Define if you want to use the new-style (Openstep, Rhapsody, MacOS) dynamic linker (dyld) instead of the old-style (NextStep) dynamic linker (rld). Dyld is necessary to support frameworks. */ ---- Python-3.5.0a4/setup.py.~1~ 2015-04-20 00:37:53.000000000 -0700 -+++ Python-3.5.0a4/setup.py 2015-04-20 13:01:49.596181289 -0700 -@@ -663,6 +663,9 @@ +--- Python-3.5.2/setup.py.~1~ 2016-06-25 14:38:39.000000000 -0700 ++++ Python-3.5.2/setup.py 2016-07-08 06:41:09.939900823 -0700 +@@ -690,6 +690,9 @@ # syslog daemon interface exts.append( Extension('syslog', ['syslogmodule.c']) ) diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/01-bits.patch --- a/components/python/python35/patches/01-bits.patch Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/patches/01-bits.patch Thu Jul 21 12:52:32 2016 -0700 @@ -2,8 +2,8 @@ # This patch addresses problems with the configure script. # As it is Solaris-specific, it is not suitable for upstream. # ---- Python-3.5.0a4/configure.ac.~2~ 2015-04-20 13:02:40.184381369 -0700 -+++ Python-3.5.0a4/configure.ac 2015-04-20 13:02:40.208203720 -0700 +--- Python-3.5.2/configure.ac.~2~ 2016-07-08 06:42:00.483719423 -0700 ++++ Python-3.5.2/configure.ac 2016-07-08 06:42:00.499219410 -0700 @@ -5,7 +5,7 @@ # Set VERSION so we only need to edit in one place (i.e., here) m4_define(PYTHON_VERSION, 3.5) @@ -13,7 +13,7 @@ AC_INIT(python, PYTHON_VERSION, http://bugs.python.org/) -@@ -2345,12 +2345,6 @@ +@@ -2427,12 +2427,6 @@ if test -z "$CCSHARED" then case $ac_sys_system/$ac_sys_release in diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/03-setup.patch --- a/components/python/python35/patches/03-setup.patch Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/patches/03-setup.patch Thu Jul 21 12:52:32 2016 -0700 @@ -1,10 +1,10 @@ This patch modifies the setup script to support Solaris. As it is Solaris-specific, it is not suitable for upstream. ---- Python-3.5.0/setup.py.~2~ 2015-04-20 13:10:20.522357068 -0700 -+++ Python-3.5.0/setup.py 2015-04-20 13:10:20.553743713 -0700 -@@ -465,12 +465,15 @@ - os.unlink(tmpfile) +--- Python-3.5.2/setup.py.~2~ 2016-07-08 06:42:55.956132475 -0700 ++++ Python-3.5.2/setup.py 2016-07-08 06:42:55.983129138 -0700 +@@ -488,12 +488,15 @@ + return ['m'] def detect_modules(self): - # Ensure that /usr/local is always used, but the local build @@ -24,7 +24,7 @@ # only change this for cross builds for 3.3, issues on Mageia if cross_compiling: self.add_gcc_paths() -@@ -756,6 +759,13 @@ +@@ -786,6 +789,13 @@ ['/usr/lib/termcap'], 'termcap'): readline_libs.append('termcap') @@ -38,7 +38,7 @@ exts.append( Extension('readline', ['readline.c'], library_dirs=['/usr/lib/termcap'], extra_link_args=readline_extra_link_args, -@@ -779,7 +789,8 @@ +@@ -809,7 +819,8 @@ # socket(2) exts.append( Extension('_socket', ['socketmodule.c'], @@ -48,7 +48,7 @@ # Detect SSL support for the socket module (via _ssl) search_for_ssl_incs_in = [ '/usr/local/ssl/include', -@@ -1315,6 +1326,10 @@ +@@ -1345,6 +1356,10 @@ curses_defines.append(('_XOPEN_SOURCE_EXTENDED', '1')) if curses_library.startswith('ncurses'): @@ -59,7 +59,7 @@ curses_libs = [curses_library] exts.append( Extension('_curses', ['_cursesmodule.c'], include_dirs=curses_includes, -@@ -1339,10 +1352,32 @@ +@@ -1369,10 +1384,32 @@ # If the curses module is enabled, check for the panel module if (module_enabled(exts, '_curses') and self.compiler.find_library_file(lib_dirs, panel_library)): @@ -93,7 +93,7 @@ else: missing.append('_curses_panel') -@@ -1938,7 +1973,7 @@ +@@ -1969,7 +2006,7 @@ # this option. If you want to compile ctypes with the Sun # compiler, please research a proper solution, instead of # finding some -z option for the Sun compiler. diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/05-studio-profile.patch --- a/components/python/python35/patches/05-studio-profile.patch Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/patches/05-studio-profile.patch Thu Jul 21 12:52:32 2016 -0700 @@ -4,22 +4,22 @@ that the profiling options be used at all steps of the build -- not just compilation. As it is Solaris-specific, it is not suitable for upstream. ---- Python-3.5.1rc1/Makefile.pre.in.~2~ 2015-12-04 07:50:01.643727127 -0800 -+++ Python-3.5.1rc1/Makefile.pre.in 2015-12-04 07:52:18.287953768 -0800 -@@ -238,7 +238,7 @@ - TCLTK_LIBS= @TCLTK_LIBS@ - - # The task to run while instrument when building the profile-opt target --PROFILE_TASK=-m test.regrtest --pgo +--- Python-3.5.2/Makefile.pre.in.~2~ 2016-07-08 06:44:25.728534993 -0700 ++++ Python-3.5.2/Makefile.pre.in 2016-07-08 06:53:21.459625807 -0700 +@@ -241,7 +241,7 @@ + # The task to run while instrumented when building the profile-opt target. + # We exclude unittests with -x that take a rediculious amount of time to + # run in the instrumented training build or do not provide much value. +-PROFILE_TASK=-m test.regrtest --pgo -x test_asyncore test_gdb test_multiprocessing_fork test_multiprocessing_forkserver test_multiprocessing_main_handling test_multiprocessing_spawn test_subprocess +PROFILE_TASK= $(srcdir)/Tools/pybench/pybench.py -n 2 --with-gc --with-syscheck # report files for gcov / lcov coverage report COVERAGE_INFO= $(abs_builddir)/coverage.info -@@ -509,24 +509,33 @@ +@@ -512,24 +512,33 @@ $(MAKE) profile-removal build_all_generate_profile: -- $(MAKE) all CFLAGS_NODIST="$(CFLAGS) $(PGO_PROF_GEN_FLAG)" LDFLAGS="$(LDFLAGS) $(PGO_PROF_GEN_FLAG)" LIBS="$(LIBS)" +- $(MAKE) all CFLAGS_NODIST="$(CFLAGS) $(PGO_PROF_GEN_FLAG) @LTOFLAGS@" LDFLAGS="$(LDFLAGS) $(PGO_PROF_GEN_FLAG) @LTOFLAGS@" LIBS="$(LIBS)" + $(MAKE) all CC="$(CC) -xprofile=collect:$(XPROFILE_DIR)" \ + CFLAGS_NODIST="$(CFLAGS) -xprofile=collect:$(XPROFILE_DIR)" \ + LDFLAGS="$(LDFLAGS) -xprofile=collect:$(XPROFILE_DIR)" \ @@ -34,7 +34,7 @@ $(LLVM_PROF_MERGER) build_all_use_profile: -- $(MAKE) all CFLAGS_NODIST="$(CFLAGS) $(PGO_PROF_USE_FLAG)" +- $(MAKE) all CFLAGS_NODIST="$(CFLAGS) $(PGO_PROF_USE_FLAG) @LTOFLAGS@" LDFLAGS="$(LDFLAGS) @LTOFLAGS@" + $(MAKE) all CC="$(CC) -xprofile=use:$(XPROFILE_DIR)" \ + CFLAGS_NODIST="$(CFLAGS) -xprofile=use:$(XPROFILE_DIR)" \ + LDFLAGS="$(LDFLAGS) -xprofile=use:$(XPROFILE_DIR)" \ @@ -53,10 +53,10 @@ coverage-lcov: @echo "Creating Coverage HTML report with LCOV:" -@@ -598,13 +607,9 @@ +@@ -605,13 +614,9 @@ # -s, --silent or --quiet is always the first char. # Under BSD make, MAKEFLAGS might be " -s -v x=y". - sharedmods: $(BUILDPYTHON) pybuilddir.txt + sharedmods: $(BUILDPYTHON) pybuilddir.txt Modules/_math.o - @case "$$MAKEFLAGS" in \ - *\ -s*|s*) quiet="-q";; \ - *) quiet="";; \ @@ -68,12 +68,13 @@ # Build static library # avoid long command lines, same as LIBRARY_OBJS -@@ -1643,8 +1648,7 @@ +@@ -1669,9 +1674,7 @@ -rm -rf build profile-removal: - find . -name '*.gc??' -exec rm -f {} ';' - find . -name '*.profclang?' -exec rm -f {} ';' +- find . -name '*.dyn' -exec rm -f {} ';' + find . -name '*profile' -exec rm -f {} ';' rm -f $(COVERAGE_INFO) rm -rf $(COVERAGE_REPORT) diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/07-ucred.patch --- a/components/python/python35/patches/07-ucred.patch Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/patches/07-ucred.patch Thu Jul 21 12:52:32 2016 -0700 @@ -410,9 +410,9 @@ + + return m; +} ---- Python-3.5.0a4/setup.py.~3~ 2015-04-20 13:25:43.044301257 -0700 -+++ Python-3.5.0a4/setup.py 2015-04-20 13:25:43.100051905 -0700 -@@ -1533,6 +1533,13 @@ +--- Python-3.5.2/setup.py.~3~ 2016-07-08 06:54:05.078859457 -0700 ++++ Python-3.5.2/setup.py 2016-07-08 06:54:05.130776372 -0700 +@@ -1565,6 +1565,13 @@ # Stefan Krah's _decimal module exts.append(self._decimal_ext()) diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/08-dlpi.patch --- a/components/python/python35/patches/08-dlpi.patch Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/patches/08-dlpi.patch Thu Jul 21 12:52:32 2016 -0700 @@ -1223,9 +1223,9 @@ + + return mod; +} ---- Python-3.5.0a4/setup.py.~4~ 2015-04-20 13:28:29.633806027 -0700 -+++ Python-3.5.0a4/setup.py 2015-04-20 13:28:29.649896175 -0700 -@@ -1540,6 +1540,12 @@ +--- Python-3.5.2/setup.py.~4~ 2016-07-08 06:55:41.015494673 -0700 ++++ Python-3.5.2/setup.py 2016-07-08 06:55:41.034639922 -0700 +@@ -1572,6 +1572,12 @@ exts.append( Extension('ucred', ['ucred.c'], libraries = ['tsol']) ) diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/10-rbac.patch --- a/components/python/python35/patches/10-rbac.patch Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/patches/10-rbac.patch Thu Jul 21 12:52:32 2016 -0700 @@ -1283,9 +1283,9 @@ + 0, /* tp_free */ + 0, /* tp_is_gc */ +}; ---- Python-3.5.0a4/setup.py.~5~ 2015-04-20 13:30:08.410768276 -0700 -+++ Python-3.5.0a4/setup.py 2015-04-20 13:30:08.438983714 -0700 -@@ -1546,6 +1546,22 @@ +--- Python-3.5.2/setup.py.~5~ 2016-07-08 06:56:45.280312010 -0700 ++++ Python-3.5.2/setup.py 2016-07-08 06:56:45.314844079 -0700 +@@ -1578,6 +1578,22 @@ exts.append( Extension('dlpi', ['dlpimodule.c'], libraries = ['dlpi']) ) diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/11-closerange.patch --- a/components/python/python35/patches/11-closerange.patch Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/patches/11-closerange.patch Thu Jul 21 12:52:32 2016 -0700 @@ -1,9 +1,9 @@ This patch uses fdwalk(3c) to close file descriptors; as that function is not widely implemented, this is unsuitable for upstream. ---- Python-3.5.0rc2/Modules/posixmodule.c.~1~ 2015-08-25 10:19:14.000000000 -0700 -+++ Python-3.5.0rc2/Modules/posixmodule.c 2015-09-02 12:31:54.885953202 -0700 -@@ -7777,6 +7777,19 @@ +--- Python-3.5.2/Modules/posixmodule.c.~1~ 2016-06-25 14:38:38.000000000 -0700 ++++ Python-3.5.2/Modules/posixmodule.c 2016-07-08 06:58:01.808943682 -0700 +@@ -7779,6 +7779,19 @@ Py_RETURN_NONE; } @@ -23,7 +23,7 @@ /*[clinic input] os.closerange -@@ -7793,11 +7806,13 @@ +@@ -7795,11 +7808,13 @@ /*[clinic end generated code: output=70e6adb95220ba96 input=5855a3d053ebd4ec]*/ { int i; diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/12-py_db.patch --- a/components/python/python35/patches/12-py_db.patch Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/patches/12-py_db.patch Thu Jul 21 12:52:32 2016 -0700 @@ -1,9 +1,9 @@ This patch adds Python debugger support. It may be contributed upstream at some point, but the suitability (or lack thereof) has not yet been determined. ---- Python-3.5.1rc1/Makefile.pre.in.~3~ 2015-12-04 07:55:35.437372222 -0800 -+++ Python-3.5.1rc1/Makefile.pre.in 2015-12-04 07:55:35.539445506 -0800 -@@ -486,7 +486,7 @@ +--- Python-3.5.2/Makefile.pre.in.~3~ 2016-07-08 06:59:11.325607242 -0700 ++++ Python-3.5.2/Makefile.pre.in 2016-07-08 06:59:11.467802979 -0700 +@@ -489,7 +489,7 @@ # Default target all: build_all @@ -12,7 +12,7 @@ # Compile a binary with profile guided optimization. profile-opt: -@@ -700,6 +700,15 @@ +@@ -707,6 +707,15 @@ @mv config.c Modules @echo "The Makefile was updated, you may need to re-run make." @@ -28,7 +28,7 @@ Modules/Setup: $(srcdir)/Modules/Setup.dist @if test -f Modules/Setup; then \ -@@ -1077,7 +1086,7 @@ +@@ -1099,7 +1108,7 @@ $(TESTRUNNER) $(QUICKTESTOPTS) diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/14-ossaudiodev.patch --- a/components/python/python35/patches/14-ossaudiodev.patch Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/patches/14-ossaudiodev.patch Thu Jul 21 12:52:32 2016 -0700 @@ -2,9 +2,9 @@ Some OSS ioctls are not supported on Solaris, so they are ifdef'd out. As the patch is Solaris-specific, it is not suitable for upstream. ---- Python-3.5.0a4/setup.py.~6~ 2015-04-20 13:49:47.441303130 -0700 -+++ Python-3.5.0a4/setup.py 2015-04-20 13:49:47.506430752 -0700 -@@ -1617,7 +1617,7 @@ +--- Python-3.5.2/setup.py.~6~ 2016-07-08 07:00:12.092542253 -0700 ++++ Python-3.5.2/setup.py 2016-07-08 07:00:12.150840947 -0700 +@@ -1649,7 +1649,7 @@ # End multiprocessing # Platform-specific libraries diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/19-SOABI.patch --- a/components/python/python35/patches/19-SOABI.patch Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/patches/19-SOABI.patch Thu Jul 21 12:52:32 2016 -0700 @@ -1,9 +1,9 @@ This patch was developed in-house. We have not yet decided whether to offer it upstream or not. ---- Python-3.5.0a4/configure.ac.~3~ 2015-04-20 14:10:42.056744800 -0700 -+++ Python-3.5.0a4/configure.ac 2015-04-20 14:10:42.275328447 -0700 -@@ -4412,7 +4412,7 @@ +--- Python-3.5.2/configure.ac.~3~ 2016-07-08 07:01:17.881588483 -0700 ++++ Python-3.5.2/configure.ac 2016-07-08 07:01:18.127834605 -0700 +@@ -4494,7 +4494,7 @@ AC_SUBST(EXT_SUFFIX) case $ac_sys_system in diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/21-default-lib-path.patch --- a/components/python/python35/patches/21-default-lib-path.patch Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/patches/21-default-lib-path.patch Thu Jul 21 12:52:32 2016 -0700 @@ -1,9 +1,9 @@ This patch was developed in-house. It has been submitted upstream: http://bugs.python.org/issue23287 ---- Python-3.5.0a4/Lib/ctypes/util.py.~1~ 2015-04-20 00:37:51.000000000 -0700 -+++ Python-3.5.0a4/Lib/ctypes/util.py 2015-04-20 14:14:06.541902625 -0700 -@@ -175,23 +175,11 @@ +--- Python-3.5.2/Lib/ctypes/util.py.~1~ 2016-06-25 14:38:35.000000000 -0700 ++++ Python-3.5.2/Lib/ctypes/util.py 2016-07-08 07:06:45.026306406 -0700 +@@ -175,24 +175,11 @@ elif sys.platform == "sunos5": @@ -18,6 +18,7 @@ else: - cmd = 'env LC_ALL=C /usr/bin/crle 2>/dev/null' - +- paths = None - with contextlib.closing(os.popen(cmd)) as f: - for line in f.readlines(): - line = line.strip() @@ -30,7 +31,7 @@ for dir in paths.split(":"): libfile = os.path.join(dir, "lib%s.so" % name) -@@ -201,7 +189,7 @@ +@@ -202,7 +189,7 @@ return None def find_library(name, is64 = False): diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/23-doctest.patch --- a/components/python/python35/patches/23-doctest.patch Thu Jul 21 12:52:12 2016 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,23 +0,0 @@ -This patch was developed in-house and has been submitted upstream: -http://bugs.python.org/issue23584 - ---- Python-3.5.0a4/Lib/test/test_doctest.py.~1~ 2015-04-20 00:37:51.000000000 -0700 -+++ Python-3.5.0a4/Lib/test/test_doctest.py 2015-04-20 14:15:20.031951150 -0700 -@@ -2647,7 +2647,7 @@ - >>> with open(fn, 'wb') as f: - ... f.write(b'Test:\r\n\r\n >>> x = 1 + 1\r\n\r\nDone.\r\n') - 35 -- >>> doctest.testfile(fn, False) -+ >>> doctest.testfile(fn, False, verbose=False) - TestResults(failed=0, attempted=1) - >>> os.remove(fn) - -@@ -2657,7 +2657,7 @@ - >>> with open(fn, 'wb') as f: - ... f.write(b'Test:\n\n >>> x = 1 + 1\n\nDone.\n') - 30 -- >>> doctest.testfile(fn, False) -+ >>> doctest.testfile(fn, False, verbose=False) - TestResults(failed=0, attempted=1) - >>> os.remove(fn) - diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/25-test_site.patch --- a/components/python/python35/patches/25-test_site.patch Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/patches/25-test_site.patch Thu Jul 21 12:52:32 2016 -0700 @@ -2,9 +2,9 @@ upstream, but rejected, so this is the next simplest way to work around issues with when the site module is imported. ---- Python-3.5.0rc2/Lib/test/test_site.py.~1~ 2015-08-25 10:19:13.000000000 -0700 -+++ Python-3.5.0rc2/Lib/test/test_site.py 2015-09-02 12:38:45.356337855 -0700 -@@ -438,7 +438,7 @@ +--- Python-3.5.2/Lib/test/test_site.py.~1~ 2016-06-25 14:38:37.000000000 -0700 ++++ Python-3.5.2/Lib/test/test_site.py 2016-07-08 07:09:08.106539974 -0700 +@@ -443,7 +443,7 @@ def test_startup_imports(self): # This tests checks which modules are loaded by Python when it # initially starts upon startup. @@ -13,7 +13,7 @@ 'import sys; print(set(sys.modules))'], stdout=subprocess.PIPE, stderr=subprocess.PIPE) -@@ -447,8 +447,6 @@ +@@ -452,8 +452,6 @@ stderr = stderr.decode('utf-8') modules = eval(stdout) diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/26-getrandom.patch --- a/components/python/python35/patches/26-getrandom.patch Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/patches/26-getrandom.patch Thu Jul 21 12:52:32 2016 -0700 @@ -2,10 +2,10 @@ in getrandom(2). That bug was fixed in S12, and in an 11.3 SRU, but not in time for 11.3 GA, so this patch is still needed for FOSS Evaluation builds. ---- Python-3.5.1/Python/random.c.~1~ 2015-08-25 10:19:14.000000000 -0700 -+++ Python-3.5.1/Python/random.c 2015-09-02 14:18:51.799090171 -0700 -@@ -136,7 +136,7 @@ - } +--- Python-3.5.2/Python/random.c.~1~ 2016-06-25 14:38:38.000000000 -0700 ++++ Python-3.5.2/Python/random.c 2016-07-08 07:09:56.389742049 -0700 +@@ -171,7 +171,7 @@ + #endif if (n < 0) { - if (errno == ENOSYS) { diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/31-zipimport.patch --- a/components/python/python35/patches/31-zipimport.patch Thu Jul 21 12:52:12 2016 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,18 +0,0 @@ -This patch comes from upstream: - -https://bugs.python.org/issue26171 - ---- a/Modules/zipimport.c -+++ b/Modules/zipimport.c -@@ -1112,6 +1112,11 @@ get_data(PyObject *archive, PyObject *to - } - file_offset += l; /* Start of file data */ - -+ if (data_size > LONG_MAX - 1) { -+ fclose(fp); -+ PyErr_NoMemory(); -+ return NULL; -+ } - bytes_size = compress == 0 ? data_size : data_size + 1; - if (bytes_size == 0) - bytes_size++; diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/patches/32-smtplib.patch --- a/components/python/python35/patches/32-smtplib.patch Thu Jul 21 12:52:12 2016 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,18 +0,0 @@ -This patch comes from upstream: - -https://hg.python.org/cpython/rev/d590114c2394 - ---- a/Lib/smtplib.py Sun Nov 08 01:03:52 2015 -0500 -+++ b/Lib/smtplib.py Sat Jun 11 13:18:56 2016 -0700 -@@ -773,6 +773,11 @@ - self.ehlo_resp = None - self.esmtp_features = {} - self.does_esmtp = 0 -+ else: -+ # RFC 3207: -+ # 501 Syntax error (no parameters allowed) -+ # 454 TLS not available due to temporary reason -+ raise SMTPResponseException(resp, reply) - return (resp, reply) - - def sendmail(self, from_addr, to_addrs, msg, mail_options=[], diff -r b54de573b4e9 -r 56a2f066191a components/python/python35/python-35.p5m --- a/components/python/python35/python-35.p5m Thu Jul 21 12:52:12 2016 -0700 +++ b/components/python/python35/python-35.p5m Thu Jul 21 12:52:32 2016 -0700 @@ -18,7 +18,7 @@ # # CDDL HEADER END # -# Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved. # # Bootstrap: pkgdepend doesn't like python 3.5 yet; # remove this block once it is installed on build machines. @@ -606,8 +606,8 @@ file path=usr/lib/python3.5/encodings/zlib_codec.py file path=usr/lib/python3.5/ensurepip/__init__.py file path=usr/lib/python3.5/ensurepip/__main__.py -file path=usr/lib/python3.5/ensurepip/_bundled/pip-7.1.2-py2.py3-none-any.whl -file path=usr/lib/python3.5/ensurepip/_bundled/setuptools-18.2-py2.py3-none-any.whl +file path=usr/lib/python3.5/ensurepip/_bundled/pip-8.1.1-py2.py3-none-any.whl +file path=usr/lib/python3.5/ensurepip/_bundled/setuptools-20.10.1-py2.py3-none-any.whl file path=usr/lib/python3.5/ensurepip/_uninstall.py file path=usr/lib/python3.5/enum.py file path=usr/lib/python3.5/filecmp.py @@ -724,9 +724,11 @@ file path=usr/lib/python3.5/idlelib/idle_test/test_autocomplete.py file path=usr/lib/python3.5/idlelib/idle_test/test_autoexpand.py file path=usr/lib/python3.5/idlelib/idle_test/test_calltips.py +file path=usr/lib/python3.5/idlelib/idle_test/test_config_help.py file path=usr/lib/python3.5/idlelib/idle_test/test_config_name.py file path=usr/lib/python3.5/idlelib/idle_test/test_configdialog.py file path=usr/lib/python3.5/idlelib/idle_test/test_delegator.py +file path=usr/lib/python3.5/idlelib/idle_test/test_editmenu.py file path=usr/lib/python3.5/idlelib/idle_test/test_editor.py file path=usr/lib/python3.5/idlelib/idle_test/test_formatparagraph.py file path=usr/lib/python3.5/idlelib/idle_test/test_grep.py @@ -735,11 +737,15 @@ file path=usr/lib/python3.5/idlelib/idle_test/test_io.py file path=usr/lib/python3.5/idlelib/idle_test/test_parenmatch.py file path=usr/lib/python3.5/idlelib/idle_test/test_pathbrowser.py +file path=usr/lib/python3.5/idlelib/idle_test/test_percolator.py +file path=usr/lib/python3.5/idlelib/idle_test/test_replacedialog.py file path=usr/lib/python3.5/idlelib/idle_test/test_rstrip.py +file path=usr/lib/python3.5/idlelib/idle_test/test_searchdialog.py file path=usr/lib/python3.5/idlelib/idle_test/test_searchdialogbase.py file path=usr/lib/python3.5/idlelib/idle_test/test_searchengine.py file path=usr/lib/python3.5/idlelib/idle_test/test_text.py file path=usr/lib/python3.5/idlelib/idle_test/test_textview.py +file path=usr/lib/python3.5/idlelib/idle_test/test_undodelegator.py file path=usr/lib/python3.5/idlelib/idle_test/test_warning.py file path=usr/lib/python3.5/idlelib/idle_test/test_widgetredir.py file path=usr/lib/python3.5/idlelib/idlever.py @@ -1130,12 +1136,13 @@ file path=usr/lib/python3.5/test/badsyntax_future8.py pkg.tmp.autopyc=false file path=usr/lib/python3.5/test/badsyntax_future9.py pkg.tmp.autopyc=false file path=usr/lib/python3.5/test/badsyntax_pep3120.py pkg.tmp.autopyc=false -file path=usr/lib/python3.5/test/buffer_tests.py file path=usr/lib/python3.5/test/bytecode_helper.py +file path=usr/lib/python3.5/test/capath/0e4015b9.0 file path=usr/lib/python3.5/test/capath/4e1295a3.0 file path=usr/lib/python3.5/test/capath/5ed36f99.0 file path=usr/lib/python3.5/test/capath/6e88d7b8.0 file path=usr/lib/python3.5/test/capath/99d0fa06.0 +file path=usr/lib/python3.5/test/capath/ce7b8643.0 file path=usr/lib/python3.5/test/cfgparser.1 file path=usr/lib/python3.5/test/cfgparser.2 file path=usr/lib/python3.5/test/cfgparser.3 @@ -1338,7 +1345,6 @@ file path=usr/lib/python3.5/test/future_test1.py file path=usr/lib/python3.5/test/future_test2.py file path=usr/lib/python3.5/test/gdb_sample.py -file path=usr/lib/python3.5/test/https_svn_python_org_root.pem file path=usr/lib/python3.5/test/ieee754.txt file path=usr/lib/python3.5/test/imghdrdata/python.bmp file path=usr/lib/python3.5/test/imghdrdata/python.exr @@ -1829,6 +1835,7 @@ file path=usr/lib/python3.5/test/test_openpty.py file path=usr/lib/python3.5/test/test_operator.py file path=usr/lib/python3.5/test/test_optparse.py +file path=usr/lib/python3.5/test/test_ordered_dict.py file path=usr/lib/python3.5/test/test_os.py file path=usr/lib/python3.5/test/test_ossaudiodev.py file path=usr/lib/python3.5/test/test_osx_env.py @@ -1838,7 +1845,6 @@ file path=usr/lib/python3.5/test/test_peepholer.py file path=usr/lib/python3.5/test/test_pep247.py file path=usr/lib/python3.5/test/test_pep277.py -file path=usr/lib/python3.5/test/test_pep292.py file path=usr/lib/python3.5/test/test_pep3120.py file path=usr/lib/python3.5/test/test_pep3131.py file path=usr/lib/python3.5/test/test_pep3151.py @@ -1957,6 +1963,7 @@ file path=usr/lib/python3.5/test/test_ttk_guionly.py file path=usr/lib/python3.5/test/test_ttk_textonly.py file path=usr/lib/python3.5/test/test_tuple.py +file path=usr/lib/python3.5/test/test_turtle.py file path=usr/lib/python3.5/test/test_typechecks.py file path=usr/lib/python3.5/test/test_types.py file path=usr/lib/python3.5/test/test_typing.py @@ -2018,6 +2025,7 @@ file path=usr/lib/python3.5/test/tracedmodules/testmod.py file path=usr/lib/python3.5/test/ucredtest.py file path=usr/lib/python3.5/test/win_console_handler.py +file path=usr/lib/python3.5/test/wrongcert.pem file path=usr/lib/python3.5/test/xmltestdata/simple-ns.xml file path=usr/lib/python3.5/test/xmltestdata/simple.xml file path=usr/lib/python3.5/test/xmltestdata/test.xml