From edb9f64aec30695043b720aa7832d6dfddbadf36 Mon Sep 17 00:00:00 2001 From: Scott Little Date: Wed, 4 Sep 2019 10:14:28 -0400 Subject: [PATCH] Relocated some packages to repo 'compile' List of relocated subdirectories: base/bash base/golang-dep base/rpm python/python-2.7.5 base/golang Story: 2006166 Task: 35687 Depends-On: I665dc7fabbfffc798ad57843eb74dca16e7647a3 Change-Id: I1afe2c0a2f9ca6acf70f29ae85f8497da7593bf8 Signed-off-by: Scott Little Depends-On: I840888f0b012e9fb24e72f4e6a46567e6f949df7 --- base/bash/centos/build_srpm.data | 3 - ...te-package-versioning-for-TIS-format.patch | 25 - base/bash/centos/meta_patches/PATCH_ORDER | 2 - .../meta_patches/spec-TiS-bash-history.patch | 38 - base/bash/centos/srpm_path | 1 - ...h-history-exit-child-on-parent-death.patch | 105 - base/bash/files/bash-history-syslog.patch | 335 -- base/golang-dep/centos/build_srpm.data | 2 - base/golang-dep/centos/golang-dep.spec | 45 - base/golang/centos/Readme.rst | 5 - base/golang/centos/build_srpm.data | 8 - ...ndled-tzdata-at-runtime-except-for-t.patch | 88 - ...expose-IfInfomsg.X__ifi_pad-on-s390x.patch | 41 - base/golang/centos/files/fedora.go | 7 - base/golang/centos/files/golang-gdbinit | 1 - base/golang/centos/files/golang-prelink.conf | 3 - base/golang/centos/files/macros.golang | 8 - base/golang/centos/golang.spec | 1046 ----- base/golang/centos/golang.spec.orig | 1046 ----- base/rpm/centos/build_srpm.data | 5 - base/rpm/centos/rpm.spec | 1361 ------- base/rpm/patches/0001-sign-files-only.patch | 206 - python/python-2.7.5/README | 3 - python/python-2.7.5/centos/build_srpm.data | 1 - ...te-package-versioning-for-TIS-format.patch | 25 - .../0002-Disable-unittest-check-phase.patch | 25 - .../0003-Make-Python-Faster.patch | 42 - ...off-with_systemtap-to-disable-dtrace.patch | 25 - .../centos/meta_patches/PATCH_ORDER | 4 - .../patches/Rollup-optimization-commits.patch | 3548 ----------------- python/python-2.7.5/centos/srpm_path | 2 - 31 files changed, 8056 deletions(-) delete mode 100644 base/bash/centos/build_srpm.data delete mode 100644 base/bash/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch delete mode 100644 base/bash/centos/meta_patches/PATCH_ORDER delete mode 100644 base/bash/centos/meta_patches/spec-TiS-bash-history.patch delete mode 100644 base/bash/centos/srpm_path delete mode 100644 base/bash/files/bash-history-exit-child-on-parent-death.patch delete mode 100644 base/bash/files/bash-history-syslog.patch delete mode 100644 base/golang-dep/centos/build_srpm.data delete mode 100644 base/golang-dep/centos/golang-dep.spec delete mode 100644 base/golang/centos/Readme.rst delete mode 100644 base/golang/centos/build_srpm.data delete mode 100644 base/golang/centos/files/0001-Don-t-use-the-bundled-tzdata-at-runtime-except-for-t.patch delete mode 100644 base/golang/centos/files/0002-syscall-expose-IfInfomsg.X__ifi_pad-on-s390x.patch delete mode 100644 base/golang/centos/files/fedora.go delete mode 100644 base/golang/centos/files/golang-gdbinit delete mode 100644 base/golang/centos/files/golang-prelink.conf delete mode 100644 base/golang/centos/files/macros.golang delete mode 100644 base/golang/centos/golang.spec delete mode 100644 base/golang/centos/golang.spec.orig delete mode 100644 base/rpm/centos/build_srpm.data delete mode 100644 base/rpm/centos/rpm.spec delete mode 100644 base/rpm/patches/0001-sign-files-only.patch delete mode 100644 python/python-2.7.5/README delete mode 100644 python/python-2.7.5/centos/build_srpm.data delete mode 100644 python/python-2.7.5/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch delete mode 100644 python/python-2.7.5/centos/meta_patches/0002-Disable-unittest-check-phase.patch delete mode 100644 python/python-2.7.5/centos/meta_patches/0003-Make-Python-Faster.patch delete mode 100644 python/python-2.7.5/centos/meta_patches/0004-Turn-off-with_systemtap-to-disable-dtrace.patch delete mode 100644 python/python-2.7.5/centos/meta_patches/PATCH_ORDER delete mode 100644 python/python-2.7.5/centos/patches/Rollup-optimization-commits.patch delete mode 100644 python/python-2.7.5/centos/srpm_path diff --git a/base/bash/centos/build_srpm.data b/base/bash/centos/build_srpm.data deleted file mode 100644 index ef0524f8c..000000000 --- a/base/bash/centos/build_srpm.data +++ /dev/null @@ -1,3 +0,0 @@ -COPY_LIST="files/*" -TIS_PATCH_VER=4 -BUILD_IS_SLOW=3 diff --git a/base/bash/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch b/base/bash/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch deleted file mode 100644 index 318b934cc..000000000 --- a/base/bash/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 30796013a8d2b3b008a843bd3a4bee33e866a151 Mon Sep 17 00:00:00 2001 -From: Scott Little -Date: Mon, 2 Oct 2017 16:05:36 -0400 -Subject: [PATCH 2/3] WRS: 0001-Update-package-versioning-for-TIS-format.patch - ---- - SPECS/bash.spec | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/SPECS/bash.spec b/SPECS/bash.spec -index 4f16c8c..d749f92 100644 ---- a/SPECS/bash.spec -+++ b/SPECS/bash.spec -@@ -6,7 +6,7 @@ - Version: %{baseversion}%{patchleveltag} - Name: bash - Summary: The GNU Bourne Again shell --Release: 31%{?dist} -+Release: 31.el7%{?_tis_dist}.%{tis_patch_ver} - Group: System Environment/Shells - License: GPLv3+ - Url: http://www.gnu.org/software/bash --- -2.7.4 - diff --git a/base/bash/centos/meta_patches/PATCH_ORDER b/base/bash/centos/meta_patches/PATCH_ORDER deleted file mode 100644 index b8f937b3d..000000000 --- a/base/bash/centos/meta_patches/PATCH_ORDER +++ /dev/null @@ -1,2 +0,0 @@ -spec-TiS-bash-history.patch -0001-Update-package-versioning-for-TIS-format.patch diff --git a/base/bash/centos/meta_patches/spec-TiS-bash-history.patch b/base/bash/centos/meta_patches/spec-TiS-bash-history.patch deleted file mode 100644 index 725f0d31b..000000000 --- a/base/bash/centos/meta_patches/spec-TiS-bash-history.patch +++ /dev/null @@ -1,38 +0,0 @@ -From cc0534185464b04c1d320518af7d2b73291ea449 Mon Sep 17 00:00:00 2001 -From: Scott Little -Date: Mon, 2 Oct 2017 16:05:36 -0400 -Subject: [PATCH 1/3] WRS: spec-TiS-bash-history.patch - ---- - SPECS/bash.spec | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/SPECS/bash.spec b/SPECS/bash.spec -index 4b2ec49..4f16c8c 100644 ---- a/SPECS/bash.spec -+++ b/SPECS/bash.spec -@@ -198,6 +198,10 @@ Patch153: bash-4.3-wshouldquote.patch - #1495398 - Append '/' while tab completing directory names - Patch154: bash-4.3-dircomp-append-slash.patch - -+# Patches from WindRiver -+Patch500: bash-history-syslog.patch -+Patch501: bash-history-exit-child-on-parent-death.patch -+ - BuildRequires: texinfo bison - BuildRequires: ncurses-devel - BuildRequires: autoconf, gettext -@@ -331,6 +335,10 @@ This package contains documentation files for %{name}. - %patch153 -p1 -b .wshouldquote - %patch154 -p1 -b .append-slash - -+# WindRiver patches -+%patch500 -p1 -b .history-syslog -+%patch501 -p1 -b .history-exit-child-on-parent-death -+ - echo %{version} > _distribution - echo %{release} > _patchlevel - --- -2.7.4 - diff --git a/base/bash/centos/srpm_path b/base/bash/centos/srpm_path deleted file mode 100644 index 0e82ece7c..000000000 --- a/base/bash/centos/srpm_path +++ /dev/null @@ -1 +0,0 @@ -mirror:Source/bash-4.2.46-31.el7.src.rpm diff --git a/base/bash/files/bash-history-exit-child-on-parent-death.patch b/base/bash/files/bash-history-exit-child-on-parent-death.patch deleted file mode 100644 index 69867ad11..000000000 --- a/base/bash/files/bash-history-exit-child-on-parent-death.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 31e35dced8a76f9bec4ed2be86d0cca234751d09 Mon Sep 17 00:00:00 2001 -From: Scott Little -Date: Fri, 26 Aug 2016 16:04:48 -0400 -Subject: [PATCH 2/2] WRS: Patch501: - bash-history-exit-child-on-parent-death.patch - ---- - shell.c | 16 +++++++++++++++- - sig.c | 13 +++++++++++++ - sig.h | 2 ++ - 3 files changed, 30 insertions(+), 1 deletion(-) - -diff --git a/shell.c b/shell.c -index 7eca4e3..dcba61a 100644 ---- a/shell.c -+++ b/shell.c -@@ -75,6 +75,7 @@ - #if defined (SYSLOG_HISTORY) - # include - # include -+# include - # include "error.h" - #endif - -@@ -338,6 +339,7 @@ static void shell_reinitialize __P((void)); - static void show_shell_usage __P((FILE *, int)); - - #if defined (SYSLOG_HISTORY) -+int logger_terminated = 0; - static pid_t make_consumer_process __P(()); - #endif - -@@ -1687,6 +1689,16 @@ make_consumer_process () - - default_tty_job_signals (); - -+ /* handle parent process deaths */ -+ set_signal_handler(SIGTERM, sigterm_logger_sighandler); -+ prctl(PR_SET_PDEATHSIG, SIGTERM); -+ -+ if (getppid() == 1) -+ { -+ /* parent has already died */ -+ exit (0); -+ } -+ - close(cmdline_hist_sock[0]); - - ret = getsockopt(cmdline_hist_sock[1], SOL_SOCKET, SO_RCVBUF, &rcvbuf_size, &optlen); -@@ -1718,7 +1730,9 @@ make_consumer_process () - /*syslog this bash command line*/ - syslog (SYSLOG_FACILITY|SYSLOG_LEVEL, "HISTORY: PID=%d UID=%d %s", - getpid(), current_user.uid, buffer); -- } while (1); -+ } while (!logger_terminated); -+ -+ exit(0); - - } - else -diff --git a/sig.c b/sig.c -index 6bd1319..94864fa 100644 ---- a/sig.c -+++ b/sig.c -@@ -561,6 +561,19 @@ termsig_handler (sig) - kill (getpid (), sig); - } - -+sighandler -+sigterm_logger_sighandler (sig) -+ int sig; -+{ -+#if defined (MUST_REINSTALL_SIGHANDLERS) -+ signal (sig, sigterm_logger_sighandler); -+#endif -+ -+ logger_terminated = 1; -+ -+ SIGRETURN (0); -+} -+ - /* What we really do when SIGINT occurs. */ - sighandler - sigint_sighandler (sig) -diff --git a/sig.h b/sig.h -index 540aa3e..8f47c56 100644 ---- a/sig.h -+++ b/sig.h -@@ -115,11 +115,13 @@ extern volatile int sigwinch_received; - - extern int interrupt_immediately; - extern int terminate_immediately; -+extern int logger_terminated; - - /* Functions from sig.c. */ - extern sighandler termsig_sighandler __P((int)); - extern void termsig_handler __P((int)); - extern sighandler sigint_sighandler __P((int)); -+extern sighandler sigterm_logger_sighandler __P((int)); - extern void initialize_signals __P((int)); - extern void initialize_terminating_signals __P((void)); - extern void reset_terminating_signals __P((void)); --- -2.7.4 - diff --git a/base/bash/files/bash-history-syslog.patch b/base/bash/files/bash-history-syslog.patch deleted file mode 100644 index 475ff6118..000000000 --- a/base/bash/files/bash-history-syslog.patch +++ /dev/null @@ -1,335 +0,0 @@ -From 33e9b03f81e871594b1f8ab1740c09cd5593c27c Mon Sep 17 00:00:00 2001 -From: Scott Little -Date: Fri, 26 Aug 2016 16:04:44 -0400 -Subject: [PATCH 1/2] WRS: Patch500: bash-history-syslog.patch - ---- - bashhist.c | 78 +- - config-top.h | 2 +- - shell.c | 111 +++ - 3 files changed, 173 insertions(+), 18 deletions(-) - -diff --git a/bashhist.c b/bashhist.c -index 7240a5b..5116f8d 100644 ---- a/bashhist.c -+++ b/bashhist.c -@@ -38,10 +38,6 @@ - - #include "bashintl.h" - --#if defined (SYSLOG_HISTORY) --# include --#endif -- - #include "shell.h" - #include "flags.h" - #include "input.h" -@@ -54,6 +50,10 @@ - #include - #include - -+#if defined (SYSLOG_HISTORY) -+#include -+#endif -+ - #if defined (READLINE) - # include "bashline.h" - extern int rl_done, rl_dispatching; /* should really include readline.h */ -@@ -68,6 +68,12 @@ static int check_history_control __P((char *)); - static void hc_erasedups __P((char *)); - static void really_add_history __P((char *)); - -+ -+#if defined (SYSLOG_HISTORY) -+static void send_cmdline_mq __P((const char *)); -+int cmdline_hist_sock[2]; -+#endif -+ - static struct ignorevar histignore = - { - "HISTIGNORE", -@@ -700,22 +706,11 @@ check_add_history (line, force) - } - - #if defined (SYSLOG_HISTORY) --#define SYSLOG_MAXLEN 600 -- - void - bash_syslog_history (line) - const char *line; - { -- char trunc[SYSLOG_MAXLEN]; -- -- if (strlen(line) < SYSLOG_MAXLEN) -- syslog (SYSLOG_FACILITY|SYSLOG_LEVEL, "HISTORY: PID=%d UID=%d %s", getpid(), current_user.uid, line); -- else -- { -- strncpy (trunc, line, SYSLOG_MAXLEN); -- trunc[SYSLOG_MAXLEN - 1] = '\0'; -- syslog (SYSLOG_FACILITY|SYSLOG_LEVEL, "HISTORY (TRUNCATED): PID=%d UID=%d %s", getpid(), current_user.uid, trunc); -- } -+ send_cmdline_mq (line); - } - #endif - -@@ -769,6 +764,10 @@ bash_add_history (line) - sprintf (new_line, "%s%s%s", current->line, chars_to_add, line); - offset = where_history (); - old = replace_history_entry (offset, new_line, current->data); -+ -+#if defined (SYSLOG_HISTORY) -+ bash_syslog_history (new_line); -+#endif - free (new_line); - - if (old) -@@ -779,11 +778,13 @@ bash_add_history (line) - } - - if (add_it) -+ { - really_add_history (line); - - #if defined (SYSLOG_HISTORY) -- bash_syslog_history (line); -+ bash_syslog_history (line); - #endif -+ } - - using_history (); - } -@@ -906,4 +907,47 @@ history_should_ignore (line) - - return match; - } -+ -+#if defined (SYSLOG_HISTORY) -+ -+#define MQ_SEND_MAX_ATTEMPT 2 -+ -+static void -+send_cmdline_mq (line) -+ const char *line; -+{ -+ int ret = 0; -+ int attempt = 0; -+ int fail = 0; -+ size_t len_snd; -+ int sndbuf_size; -+ -+ do { -+ if (attempt >= MQ_SEND_MAX_ATTEMPT) -+ { -+ fail = 1; -+ break; -+ } -+ -+ len_snd = strlen(line)+1; -+ ret = send (cmdline_hist_sock[0], line, len_snd, MSG_DONTWAIT); -+ if (ret == EMSGSIZE) -+ { -+ socklen_t optlen = sizeof(sndbuf_size); -+ ret = getsockopt(cmdline_hist_sock[0], SOL_SOCKET, SO_SNDBUF, -+ &sndbuf_size, &optlen); -+ if (ret == 0) { -+ len_snd = sndbuf_size - 1; -+ continue; -+ } -+ } -+ -+ attempt ++; -+ } while (ret < 0 && (errno == EAGAIN || errno == EINTR)); -+ -+ return; -+} -+ -+#endif /*SYSLOG_HISTORY*/ -+ - #endif /* HISTORY */ -diff --git a/config-top.h b/config-top.h -index 01e934e..c22c883 100644 ---- a/config-top.h -+++ b/config-top.h -@@ -103,7 +103,7 @@ - - /* Define if you want each line saved to the history list in bashhist.c: - bash_add_history() to be sent to syslog(). */ --/* #define SYSLOG_HISTORY */ -+#define SYSLOG_HISTORY - #if defined (SYSLOG_HISTORY) - # define SYSLOG_FACILITY LOG_USER - # define SYSLOG_LEVEL LOG_INFO -diff --git a/shell.c b/shell.c -index 6f9afcd..7eca4e3 100644 ---- a/shell.c -+++ b/shell.c -@@ -72,6 +72,12 @@ - # include - #endif - -+#if defined (SYSLOG_HISTORY) -+# include -+# include -+# include "error.h" -+#endif -+ - #if defined (READLINE) - # include "bashline.h" - #endif -@@ -106,6 +112,9 @@ extern int array_needs_making; - extern int gnu_error_format; - extern char *primary_prompt, *secondary_prompt; - extern char *this_command_name; -+#if defined (SYSLOG_HISTORY) -+extern int cmdline_hist_sock[2]; -+#endif - - /* Non-zero means that this shell has already been run; i.e. you should - call shell_reinitialize () if you need to start afresh. */ -@@ -223,6 +232,7 @@ int dump_po_strings; /* Dump strings in $"..." in po format */ - int wordexp_only = 0; /* Do word expansion only */ - int protected_mode = 0; /* No command substitution with --wordexp */ - -+ - #if defined (STRICT_POSIX) - int posixly_correct = 1; /* Non-zero means posix.2 superset. */ - #else -@@ -327,6 +337,10 @@ static void shell_reinitialize __P((void)); - - static void show_shell_usage __P((FILE *, int)); - -+#if defined (SYSLOG_HISTORY) -+static pid_t make_consumer_process __P(()); -+#endif -+ - #ifdef __CYGWIN__ - static void - _cygwin32_check_tmp () -@@ -369,6 +383,11 @@ main (argc, argv, env) - env = environ; - #endif /* __OPENNT */ - -+ -+#if defined (SYSLOG_HISTORY) -+ pid_t con_pid; -+#endif -+ - USE_VAR(argc); - USE_VAR(argv); - USE_VAR(env); -@@ -747,6 +766,11 @@ main (argc, argv, env) - /* Initialize terminal state for interactive shells after the - .bash_profile and .bashrc are interpreted. */ - get_tty_state (); -+ -+#if defined (SYSLOG_HISTORY) -+ /*fork a child for bash history logging consumption*/ -+ con_pid = make_consumer_process (); -+#endif - } - - #if !defined (ONESHOT) -@@ -757,6 +781,13 @@ main (argc, argv, env) - - /* Read commands until exit condition. */ - reader_loop (); -+ -+#if defined (SYSLOG_HISTORY) -+ if (interactive_shell && con_pid > 0) { -+ kill(con_pid, SIGKILL); -+ } -+#endif -+ - exit_shell (last_command_exit_value); - } - -@@ -1619,6 +1650,86 @@ set_shell_name (argv0) - shell_name = PROGRAM; - } - -+ -+#if defined (SYSLOG_HISTORY) -+#define SYSLOG_MAXLEN 1200 -+ -+/* Fork child process for bash history logging, handling errors. -+ Returns the pid of the newly made child in parent process context -+ and will not return in child process context. */ -+static pid_t -+make_consumer_process () -+{ -+ pid_t pid; -+ -+ if (socketpair(AF_UNIX, SOCK_DGRAM | SOCK_CLOEXEC, 0, cmdline_hist_sock) == -1) -+ { -+ return -1; -+ } -+ -+ -+ pid = fork (); -+ if (pid < 0) -+ { -+ return -1; -+ } -+ -+ if (pid == 0) -+ { -+ int ret; -+ char *buffer; -+ int rcvbuf_size; -+ socklen_t optlen = sizeof(rcvbuf_size); -+ -+#if defined (BUFFERED_INPUT) -+ unset_bash_input (0); -+#endif /* BUFFERED_INPUT */ -+ -+ default_tty_job_signals (); -+ -+ close(cmdline_hist_sock[0]); -+ -+ ret = getsockopt(cmdline_hist_sock[1], SOL_SOCKET, SO_RCVBUF, &rcvbuf_size, &optlen); -+ if (ret < 0) -+ { -+ rcvbuf_size = SYSLOG_MAXLEN; -+ } -+ -+ buffer = (char *) malloc(rcvbuf_size); -+ if (buffer == NULL) -+ { -+ return -1; -+ } -+ -+ do { -+ ret = recv(cmdline_hist_sock[1], buffer, rcvbuf_size, 0); -+ -+ if (ret == -1 && errno == EINTR) -+ { -+ continue; -+ } -+ else if (ret < 0) -+ { -+ break; -+ } -+ -+ buffer[ret] = '\0'; -+ -+ /*syslog this bash command line*/ -+ syslog (SYSLOG_FACILITY|SYSLOG_LEVEL, "HISTORY: PID=%d UID=%d %s", -+ getpid(), current_user.uid, buffer); -+ } while (1); -+ -+ } -+ else -+ { -+ /* In the parent. */ -+ close(cmdline_hist_sock[1]); -+ } -+ return (pid); -+} -+#endif /*SYSLOG_HISTORY*/ -+ - static void - init_interactive () - { --- -1.9.1 - diff --git a/base/golang-dep/centos/build_srpm.data b/base/golang-dep/centos/build_srpm.data deleted file mode 100644 index 418ca079f..000000000 --- a/base/golang-dep/centos/build_srpm.data +++ /dev/null @@ -1,2 +0,0 @@ -COPY_LIST="$CGCS_BASE/downloads/dep-v0.5.0.tar.gz" -TIS_PATCH_VER=0 diff --git a/base/golang-dep/centos/golang-dep.spec b/base/golang-dep/centos/golang-dep.spec deleted file mode 100644 index ba461d4f8..000000000 --- a/base/golang-dep/centos/golang-dep.spec +++ /dev/null @@ -1,45 +0,0 @@ -Name: golang-dep -Version: 0.5.0 -Release: %{tis_patch_ver}%{?_tis_dist} -Summary: Go dep dependency management tool -Group: Development/Languages -License: Go -URL: https://github.com/golang/dep -Source: dep-v0.5.0.tar.gz -BuildRequires: golang -Requires: golang - -%global with_debug 0 -%global debug_package %{nil} -%define __spec_install_post %{nil} - -%define tooldir %{_libdir}/go/pkg/%{name}/linux_amd64 - -%if ! 0%{?gobuild:1} -%define gobuild(o:) go build -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n')" -a -v -x %{?**}; -%endif - -%description -This package includes additional go development tools. - -%prep -%setup -T -c -n go/src/github.com/golang/dep -tar --strip-components=1 -x -f %{SOURCE0} - -%build -export GOPATH=%{_builddir}/go -(cd cmd/dep && %gobuild -o dep) - -%install -rm -rf %{buildroot} -install -d %{buildroot}%{_bindir} -install -d %{buildroot}%{tooldir} -install cmd/dep/dep %{buildroot}%{_bindir} - -%clean -rm -rf %{buildroot} - -%files -%defattr(-,root,root,-) -%{_bindir}/dep - diff --git a/base/golang/centos/Readme.rst b/base/golang/centos/Readme.rst deleted file mode 100644 index 02e9c8069..000000000 --- a/base/golang/centos/Readme.rst +++ /dev/null @@ -1,5 +0,0 @@ -The spec file used here was from the golang 1.11.2 src rpm. - -The orig file is included to help show modifications made to that -spec file, to help understand which changes were needed and to -assist with future upversioning. diff --git a/base/golang/centos/build_srpm.data b/base/golang/centos/build_srpm.data deleted file mode 100644 index c714eb876..000000000 --- a/base/golang/centos/build_srpm.data +++ /dev/null @@ -1,8 +0,0 @@ -VERSION=1.12.9 -TAR_NAME=go -TAR="$TAR_NAME$VERSION.src.tar.gz" -CONTRIB="$TAR_NAME-contrib-v$CON_VERSION.tar.gz" - -COPY_LIST="${CGCS_BASE}/downloads/$TAR $FILES_BASE/*" - -TIS_PATCH_VER=1 diff --git a/base/golang/centos/files/0001-Don-t-use-the-bundled-tzdata-at-runtime-except-for-t.patch b/base/golang/centos/files/0001-Don-t-use-the-bundled-tzdata-at-runtime-except-for-t.patch deleted file mode 100644 index 422ca2b75..000000000 --- a/base/golang/centos/files/0001-Don-t-use-the-bundled-tzdata-at-runtime-except-for-t.patch +++ /dev/null @@ -1,88 +0,0 @@ -From edce31a2904846ae74e3c011f2cf5fddc963459e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jakub=20=C4=8Cajka?= -Date: Thu, 22 Mar 2018 12:07:32 +0100 -Subject: [PATCH 1/3] Don't use the bundled tzdata at runtime, except for the - internal test suite - ---- - src/time/internal_test.go | 7 +++++-- - src/time/zoneinfo_test.go | 3 ++- - src/time/zoneinfo_unix.go | 2 -- - 3 files changed, 7 insertions(+), 5 deletions(-) - -diff --git a/src/time/internal_test.go b/src/time/internal_test.go -index 76d5524124..e81ace5f64 100644 ---- a/src/time/internal_test.go -+++ b/src/time/internal_test.go -@@ -4,13 +4,15 @@ - - package time - -+import "runtime" -+ - func init() { - // force US/Pacific for time zone tests - ForceUSPacificForTesting() - } - - func initTestingZone() { -- z, err := loadLocation("America/Los_Angeles", zoneSources[len(zoneSources)-1:]) -+ z, err := loadLocation("America/Los_Angeles", zoneSources) - if err != nil { - panic("cannot load America/Los_Angeles for testing: " + err.Error()) - } -@@ -21,8 +23,9 @@ func initTestingZone() { - var OrigZoneSources = zoneSources - - func forceZipFileForTesting(zipOnly bool) { -- zoneSources = make([]string, len(OrigZoneSources)) -+ zoneSources = make([]string, len(OrigZoneSources)+1) - copy(zoneSources, OrigZoneSources) -+ zoneSources = append(zoneSources, runtime.GOROOT()+"/lib/time/zoneinfo.zip") - if zipOnly { - zoneSources = zoneSources[len(zoneSources)-1:] - } -diff --git a/src/time/zoneinfo_test.go b/src/time/zoneinfo_test.go -index 7a55d4f618..6063ca1195 100644 ---- a/src/time/zoneinfo_test.go -+++ b/src/time/zoneinfo_test.go -@@ -8,6 +8,7 @@ import ( - "fmt" - "os" - "reflect" -+ "runtime" - "testing" - "time" - ) -@@ -128,7 +129,7 @@ func TestLoadLocationFromTZData(t *testing.T) { - t.Fatal(err) - } - -- tzinfo, err := time.LoadTzinfo(locationName, time.OrigZoneSources[len(time.OrigZoneSources)-1]) -+ tzinfo, err := time.LoadTzinfo(locationName, runtime.GOROOT()+"/lib/time/zoneinfo.zip") - if err != nil { - t.Fatal(err) - } -diff --git a/src/time/zoneinfo_unix.go b/src/time/zoneinfo_unix.go -index 88313aa0ed..d9596115ef 100644 ---- a/src/time/zoneinfo_unix.go -+++ b/src/time/zoneinfo_unix.go -@@ -12,7 +12,6 @@ - package time - - import ( -- "runtime" - "syscall" - ) - -@@ -22,7 +21,6 @@ var zoneSources = []string{ - "/usr/share/zoneinfo/", - "/usr/share/lib/zoneinfo/", - "/usr/lib/locale/TZ/", -- runtime.GOROOT() + "/lib/time/zoneinfo.zip", - } - - func initLocal() { --- -2.14.3 - diff --git a/base/golang/centos/files/0002-syscall-expose-IfInfomsg.X__ifi_pad-on-s390x.patch b/base/golang/centos/files/0002-syscall-expose-IfInfomsg.X__ifi_pad-on-s390x.patch deleted file mode 100644 index 072440dd8..000000000 --- a/base/golang/centos/files/0002-syscall-expose-IfInfomsg.X__ifi_pad-on-s390x.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 817407fc2d6a861e65086388766f58082d38bc0b Mon Sep 17 00:00:00 2001 -From: Michael Munday -Date: Tue, 17 Jan 2017 11:33:38 -0500 -Subject: [PATCH 2/3] syscall: expose IfInfomsg.X__ifi_pad on s390x - -Exposing this field on s390x improves compatibility with the other -linux architectures, all of which already expose it. - -Fixes #18628 and updates #18632. - -Change-Id: I08e8e1eb705f898cd8822f8bee0d61ce11d514b5 ---- - src/syscall/ztypes_linux_s390x.go | 12 ++++++------ - 1 file changed, 6 insertions(+), 6 deletions(-) - -diff --git a/src/syscall/ztypes_linux_s390x.go b/src/syscall/ztypes_linux_s390x.go -index 63c4a83b19..b5894255df 100644 ---- a/src/syscall/ztypes_linux_s390x.go -+++ b/src/syscall/ztypes_linux_s390x.go -@@ -449,12 +449,12 @@ type RtAttr struct { - } - - type IfInfomsg struct { -- Family uint8 -- _ uint8 -- Type uint16 -- Index int32 -- Flags uint32 -- Change uint32 -+ Family uint8 -+ X__ifi_pad uint8 -+ Type uint16 -+ Index int32 -+ Flags uint32 -+ Change uint32 - } - - type IfAddrmsg struct { --- -2.14.3 - diff --git a/base/golang/centos/files/fedora.go b/base/golang/centos/files/fedora.go deleted file mode 100644 index 81b28ba3b..000000000 --- a/base/golang/centos/files/fedora.go +++ /dev/null @@ -1,7 +0,0 @@ -// +build rpm_crashtraceback - -package runtime - -func init() { - setTraceback("crash") -} diff --git a/base/golang/centos/files/golang-gdbinit b/base/golang/centos/files/golang-gdbinit deleted file mode 100644 index ecddca6d6..000000000 --- a/base/golang/centos/files/golang-gdbinit +++ /dev/null @@ -1 +0,0 @@ -add-auto-load-safe-path /usr/lib/golang/src/runtime/runtime-gdb.py diff --git a/base/golang/centos/files/golang-prelink.conf b/base/golang/centos/files/golang-prelink.conf deleted file mode 100644 index 471e8e64a..000000000 --- a/base/golang/centos/files/golang-prelink.conf +++ /dev/null @@ -1,3 +0,0 @@ -# there are ELF files in src which are testdata and shouldn't be modified --b /usr/lib/golang/src --b /usr/lib64/golang/src diff --git a/base/golang/centos/files/macros.golang b/base/golang/centos/files/macros.golang deleted file mode 100644 index de6c610df..000000000 --- a/base/golang/centos/files/macros.golang +++ /dev/null @@ -1,8 +0,0 @@ -# Where to set GOPATH for builds. Like: -# export GOPATH=$(pwd)/_build:%{gopath} -%gopath %{_datadir}/gocode - -# for use like: -# ExclusiveArch: %{go_arches} -%go_arches %{ix86} x86_64 %{arm} aarch64 ppc64le - diff --git a/base/golang/centos/golang.spec b/base/golang/centos/golang.spec deleted file mode 100644 index a5061f7f3..000000000 --- a/base/golang/centos/golang.spec +++ /dev/null @@ -1,1046 +0,0 @@ -%bcond_with bootstrap -%bcond_with ignore_tests -# build ids are not currently generated: -# https://code.google.com/p/go/issues/detail?id=5238 -# -# also, debuginfo extraction currently fails with -# "Failed to write file: invalid section alignment" -%global debug_package %{nil} - -# we are shipping the full contents of src in the data subpackage, which -# contains binary-like things (ELF data for tests, etc) -%global _binaries_in_noarch_packages_terminate_build 0 - -# Do not check any files in doc or src for requires -%global __requires_exclude_from ^(%{_datadir}|/usr/lib)/%{name}/(doc|src)/.*$ - -# Don't alter timestamps of especially the .a files (or else go will rebuild later) -# Actually, don't strip at all since we are not even building debug packages and this corrupts the dwarf testdata -%global __strip /bin/true - -# rpmbuild magic to keep from having meta dependency on libc.so.6 -%define _use_internal_dependency_generator 0 -%define __find_requires %{nil} -%global __spec_install_post /usr/lib/rpm/check-rpaths /usr/lib/rpm/check-buildroot \ - /usr/lib/rpm/brp-compress - -%global golibdir %{_libdir}/golang - -# Golang build options. - -# Build golang using external/internal(close to cgo disabled) linking. -%ifarch %{ix86} x86_64 ppc64le %{arm} aarch64 s390x -%global external_linker 1 -%else -%global external_linker 0 -%endif - -# Build golang with cgo enabled/disabled(later equals more or less to internal linking). -%ifarch %{ix86} x86_64 ppc64le %{arm} aarch64 s390x -%global cgo_enabled 1 -%else -%global cgo_enabled 0 -%endif - -# Use golang/gcc-go as bootstrap compiler -%if %{with bootstrap} -%global golang_bootstrap 0 -%else -%global golang_bootstrap 1 -%endif - -# Controls what ever we fail on failed tests -%ifarch x86_64 -%global fail_on_tests 0 -%else -%global fail_on_tests 1 -%endif - -# Build golang shared objects for stdlib -%ifarch %{ix86} x86_64 ppc64le %{arm} aarch64 -%global shared 1 -%else -%global shared 0 -%endif - -# Pre build std lib with -race enabled -%ifarch x86_64 -%global race 1 -%else -%global race 0 -%endif - -# Fedora GOROOT -%global goroot /usr/lib/%{name} -%global gopath %{_datadir}/gocode -%global go_arches %{ix86} x86_64 %{arm} aarch64 ppc64le -%global golibdir %{_libdir}/golang - -%ifarch x86_64 -%global gohostarch amd64 -%endif -%ifarch %{ix86} -%global gohostarch 386 -%endif -%ifarch %{arm} -%global gohostarch arm -%endif -%ifarch aarch64 -%global gohostarch arm64 -%endif -%ifarch ppc64 -%global gohostarch ppc64 -%endif -%ifarch ppc64le -%global gohostarch ppc64le -%endif -%ifarch s390x -%global gohostarch s390x -%endif - -%global go_api 1.12 -%global go_version 1.12.9 - -Name: golang -Version: 1.12.9 -Release: 3%{?_tis_dist}.%{tis_patch_ver} -Summary: The Go Programming Language -# source tree includes several copies of Mark.Twain-Tom.Sawyer.txt under Public Domain -License: BSD and Public Domain -URL: http://golang.org/ -Source0: go%{go_version}.src.tar.gz -# make possible to override default traceback level at build time by setting build tag rpm_crashtraceback -Source1: fedora.go - -# The compiler is written in Go. Needs go(1.4+) compiler for build. -%if !%{golang_bootstrap} -BuildRequires: gcc-go >= 5 -%else -BuildRequires: golang > 1.4 -%endif -%if 0%{?rhel} > 6 || 0%{?fedora} > 0 -BuildRequires: hostname -%else -BuildRequires: net-tools -%endif -# for tests -BuildRequires: pcre-devel, glibc-static, perl - -Provides: go = %{version}-%{release} -Provides: go-srpm-macros - -# Bundled/Vendored provides generated by -# go list -f {{.ImportPath}} ./src/vendor/... | sed "s:_$PWD/src/vendor/::g;s:_:.:;s:.*:Provides\: bundled(golang(&)):" && go list -f {{.ImportPath}} ./src/cmd/vendor/... | sed "s:_$PWD/src/cmd/vendor/::g;s:_:.:;s:.*:Provides\: bundled(golang(&)):" -Provides: bundled(golang(golang.org/x/crypto/chacha20poly1305)) -Provides: bundled(golang(golang.org/x/crypto/cryptobyte)) -Provides: bundled(golang(golang.org/x/crypto/cryptobyte/asn1)) -Provides: bundled(golang(golang.org/x/crypto/curve25519)) -Provides: bundled(golang(golang.org/x/crypto/internal/chacha20)) -Provides: bundled(golang(golang.org/x/crypto/poly1305)) -Provides: bundled(golang(golang.org/x/net/dns/dnsmessage)) -Provides: bundled(golang(golang.org/x/net/http/httpguts)) -Provides: bundled(golang(golang.org/x/net/http/httpproxy)) -Provides: bundled(golang(golang.org/x/net/http2/hpack)) -Provides: bundled(golang(golang.org/x/net/idna)) -Provides: bundled(golang(golang.org/x/net/internal/nettest)) -Provides: bundled(golang(golang.org/x/net/nettest)) -Provides: bundled(golang(golang.org/x/text/secure)) -Provides: bundled(golang(golang.org/x/text/secure/bidirule)) -Provides: bundled(golang(golang.org/x/text/transform)) -Provides: bundled(golang(golang.org/x/text/unicode)) -Provides: bundled(golang(golang.org/x/text/unicode/bidi)) -Provides: bundled(golang(golang.org/x/text/unicode/norm)) -Provides: bundled(golang(github.com/google/pprof/driver)) -Provides: bundled(golang(github.com/google/pprof/internal/binutils)) -Provides: bundled(golang(github.com/google/pprof/internal/driver)) -Provides: bundled(golang(github.com/google/pprof/internal/elfexec)) -Provides: bundled(golang(github.com/google/pprof/internal/graph)) -Provides: bundled(golang(github.com/google/pprof/internal/measurement)) -Provides: bundled(golang(github.com/google/pprof/internal/plugin)) -Provides: bundled(golang(github.com/google/pprof/internal/proftest)) -Provides: bundled(golang(github.com/google/pprof/internal/report)) -Provides: bundled(golang(github.com/google/pprof/internal/symbolizer)) -Provides: bundled(golang(github.com/google/pprof/internal/symbolz)) -Provides: bundled(golang(github.com/google/pprof/profile)) -Provides: bundled(golang(github.com/google/pprof/third.party/d3)) -Provides: bundled(golang(github.com/google/pprof/third.party/d3flamegraph)) -Provides: bundled(golang(github.com/google/pprof/third.party/svgpan)) -Provides: bundled(golang(github.com/ianlancetaylor/demangle)) -Provides: bundled(golang(golang.org/x/arch/arm/armasm)) -Provides: bundled(golang(golang.org/x/arch/arm64/arm64asm)) -Provides: bundled(golang(golang.org/x/arch/ppc64/ppc64asm)) -Provides: bundled(golang(golang.org/x/arch/x86/x86asm)) -Provides: bundled(golang(golang.org/x/crypto/ssh/terminal)) -Provides: bundled(golang(golang.org/x/sys/unix)) -Provides: bundled(golang(golang.org/x/sys/windows)) -Provides: bundled(golang(golang.org/x/sys/windows/registry)) - -Requires: %{name}-bin = %{version}-%{release} -Requires: %{name}-src = %{version}-%{release} -Requires: go-srpm-macros - -Patch1: 0001-Don-t-use-the-bundled-tzdata-at-runtime-except-for-t.patch -Patch2: 0002-syscall-expose-IfInfomsg.X__ifi_pad-on-s390x.patch - -# Having documentation separate was broken -Obsoletes: %{name}-docs < 1.1-4 - -# RPM can't handle symlink -> dir with subpackages, so merge back -Obsoletes: %{name}-data < 1.1.1-4 - -# go1.4 deprecates a few packages -Obsoletes: %{name}-vim < 1.4 -Obsoletes: emacs-%{name} < 1.4 - -# These are the only RHEL/Fedora architectures that we compile this package for -ExclusiveArch: %{go_arches} - -Source100: golang-gdbinit -Source101: golang-prelink.conf -Source102: macros.golang - -%description -%{summary}. - -%package docs -Summary: Golang compiler docs -Requires: %{name} = %{version}-%{release} -BuildArch: noarch -Obsoletes: %{name}-docs < 1.1-4 - -%description docs -%{summary}. - -%package misc -Summary: Golang compiler miscellaneous sources -Requires: %{name} = %{version}-%{release} -BuildArch: noarch - -%description misc -%{summary}. - -%package tests -Summary: Golang compiler tests for stdlib -Requires: %{name} = %{version}-%{release} -BuildArch: noarch - -%description tests -%{summary}. - -%package src -Summary: Golang compiler source tree -BuildArch: noarch -%description src -%{summary} - -%package bin -Summary: Golang core compiler tools -Requires: go = %{version}-%{release} -# Pre-go1.5, all arches had to be bootstrapped individually, before usable, and -# env variables to compile for the target os-arch. -# Now the host compiler needs only the GOOS and GOARCH environment variables -# set to compile for the target os-arch. -Obsoletes: %{name}-pkg-bin-linux-386 < 1.4.99 -Obsoletes: %{name}-pkg-bin-linux-amd64 < 1.4.99 -Obsoletes: %{name}-pkg-bin-linux-arm < 1.4.99 -Obsoletes: %{name}-pkg-linux-386 < 1.4.99 -Obsoletes: %{name}-pkg-linux-amd64 < 1.4.99 -Obsoletes: %{name}-pkg-linux-arm < 1.4.99 -Obsoletes: %{name}-pkg-darwin-386 < 1.4.99 -Obsoletes: %{name}-pkg-darwin-amd64 < 1.4.99 -Obsoletes: %{name}-pkg-windows-386 < 1.4.99 -Obsoletes: %{name}-pkg-windows-amd64 < 1.4.99 -Obsoletes: %{name}-pkg-plan9-386 < 1.4.99 -Obsoletes: %{name}-pkg-plan9-amd64 < 1.4.99 -Obsoletes: %{name}-pkg-freebsd-386 < 1.4.99 -Obsoletes: %{name}-pkg-freebsd-amd64 < 1.4.99 -Obsoletes: %{name}-pkg-freebsd-arm < 1.4.99 -Obsoletes: %{name}-pkg-netbsd-386 < 1.4.99 -Obsoletes: %{name}-pkg-netbsd-amd64 < 1.4.99 -Obsoletes: %{name}-pkg-netbsd-arm < 1.4.99 -Obsoletes: %{name}-pkg-openbsd-386 < 1.4.99 -Obsoletes: %{name}-pkg-openbsd-amd64 < 1.4.99 - -Obsoletes: golang-vet < 0-12.1 -Obsoletes: golang-cover < 0-12.1 - -Requires(post): %{_sbindir}/update-alternatives -Requires(postun): %{_sbindir}/update-alternatives - -# We strip the meta dependency, but go does require glibc. -# This is an odd issue, still looking for a better fix. -Requires: glibc -Requires: gcc -Requires: git, subversion, mercurial -%description bin -%{summary} - -# Workaround old RPM bug of symlink-replaced-with-dir failure -%pretrans -p -for _,d in pairs({"api", "doc", "include", "lib", "src"}) do - path = "%{goroot}/" .. d - if posix.stat(path, "type") == "link" then - os.remove(path) - posix.mkdir(path) - end -end - -%if %{shared} -%package shared -Summary: Golang shared object libraries - -%description shared -%{summary}. -%endif - -%if %{race} -%package race -Summary: Golang std library with -race enabled - -Requires: %{name} = %{version}-%{release} - -%description race -%{summary} -%endif - -%prep -%setup -q -n go - -%patch1 -p1 -%patch2 -p1 - -cp %{SOURCE1} ./src/runtime/ - -%build -# print out system information -uname -a -cat /proc/cpuinfo -cat /proc/meminfo - -# bootstrap compiler GOROOT -%if !%{golang_bootstrap} -export GOROOT_BOOTSTRAP=/ -%else -export GOROOT_BOOTSTRAP=%{goroot} -%endif - -# set up final install location -export GOROOT_FINAL=%{goroot} - -export GOHOSTOS=linux -export GOHOSTARCH=%{gohostarch} - -pushd src -# use our gcc options for this build, but store gcc as default for compiler -export CFLAGS="$RPM_OPT_FLAGS" -export LDFLAGS="$RPM_LD_FLAGS" -export CC="gcc" -export CC_FOR_TARGET="gcc" -export GOOS=linux -export GOARCH=%{gohostarch} -%if !%{external_linker} -export GO_LDFLAGS="-linkmode internal" -%endif -%if !%{cgo_enabled} -export CGO_ENABLED=0 -%endif -./make.bash --no-clean -v -popd - -# build shared std lib -%if %{shared} -GOROOT=$(pwd) PATH=$(pwd)/bin:$PATH go install -buildmode=shared -v -x std -%endif - -%if %{race} -GOROOT=$(pwd) PATH=$(pwd)/bin:$PATH go install -race -v -x std -%endif - -%install -rm -rf $RPM_BUILD_ROOT -# remove GC build cache -rm -rf pkg/obj/go-build/* - -# create the top level directories -mkdir -p $RPM_BUILD_ROOT%{_bindir} -mkdir -p $RPM_BUILD_ROOT%{goroot} - -# install everything into libdir (until symlink problems are fixed) -# https://code.google.com/p/go/issues/detail?id=5830 -cp -apv api bin doc favicon.ico lib pkg robots.txt src misc test VERSION \ - $RPM_BUILD_ROOT%{goroot} - -# bz1099206 -find $RPM_BUILD_ROOT%{goroot}/src -exec touch -r $RPM_BUILD_ROOT%{goroot}/VERSION "{}" \; -# and level out all the built archives -touch $RPM_BUILD_ROOT%{goroot}/pkg -find $RPM_BUILD_ROOT%{goroot}/pkg -exec touch -r $RPM_BUILD_ROOT%{goroot}/pkg "{}" \; -# generate the spec file ownership of this source tree and packages -cwd=$(pwd) -src_list=$cwd/go-src.list -pkg_list=$cwd/go-pkg.list -shared_list=$cwd/go-shared.list -race_list=$cwd/go-race.list -misc_list=$cwd/go-misc.list -docs_list=$cwd/go-docs.list -tests_list=$cwd/go-tests.list -rm -f $src_list $pkg_list $docs_list $misc_list $tests_list $shared_list $race_list -touch $src_list $pkg_list $docs_list $misc_list $tests_list $shared_list $race_list -pushd $RPM_BUILD_ROOT%{goroot} - find src/ -type d -a \( ! -name testdata -a ! -ipath '*/testdata/*' \) -printf '%%%dir %{goroot}/%p\n' >> $src_list - find src/ ! -type d -a \( ! -ipath '*/testdata/*' -a ! -name '*_test.go' \) -printf '%{goroot}/%p\n' >> $src_list - - find bin/ pkg/ -type d -a ! -path '*_dynlink/*' -a ! -path '*_race/*' -printf '%%%dir %{goroot}/%p\n' >> $pkg_list - find bin/ pkg/ ! -type d -a ! -path '*_dynlink/*' -a ! -path '*_race/*' -printf '%{goroot}/%p\n' >> $pkg_list - - find doc/ -type d -printf '%%%dir %{goroot}/%p\n' >> $docs_list - find doc/ ! -type d -printf '%{goroot}/%p\n' >> $docs_list - - find misc/ -type d -printf '%%%dir %{goroot}/%p\n' >> $misc_list - find misc/ ! -type d -printf '%{goroot}/%p\n' >> $misc_list - -%if %{shared} - mkdir -p %{buildroot}/%{_libdir}/ - mkdir -p %{buildroot}/%{golibdir}/ - for file in $(find . -iname "*.so" ); do - chmod 755 $file - mv $file %{buildroot}/%{golibdir} - pushd $(dirname $file) - ln -fs %{golibdir}/$(basename $file) $(basename $file) - popd - echo "%%{goroot}/$file" >> $shared_list - echo "%%{golibdir}/$(basename $file)" >> $shared_list - done - - find pkg/*_dynlink/ -type d -printf '%%%dir %{goroot}/%p\n' >> $shared_list - find pkg/*_dynlink/ ! -type d -printf '%{goroot}/%p\n' >> $shared_list -%endif - -%if %{race} - - find pkg/*_race/ -type d -printf '%%%dir %{goroot}/%p\n' >> $race_list - find pkg/*_race/ ! -type d -printf '%{goroot}/%p\n' >> $race_list - -%endif - - find test/ -type d -printf '%%%dir %{goroot}/%p\n' >> $tests_list - find test/ ! -type d -printf '%{goroot}/%p\n' >> $tests_list - find src/ -type d -a \( -name testdata -o -ipath '*/testdata/*' \) -printf '%%%dir %{goroot}/%p\n' >> $tests_list - find src/ ! -type d -a \( -ipath '*/testdata/*' -o -name '*_test.go' \) -printf '%{goroot}/%p\n' >> $tests_list - # this is only the zoneinfo.zip - find lib/ -type d -printf '%%%dir %{goroot}/%p\n' >> $tests_list - find lib/ ! -type d -printf '%{goroot}/%p\n' >> $tests_list -popd - -# remove the doc Makefile -rm -rfv $RPM_BUILD_ROOT%{goroot}/doc/Makefile - -# put binaries to bindir, linked to the arch we're building, -# leave the arch independent pieces in {goroot} -mkdir -p $RPM_BUILD_ROOT%{goroot}/bin/linux_%{gohostarch} -ln -sf %{goroot}/bin/go $RPM_BUILD_ROOT%{goroot}/bin/linux_%{gohostarch}/go -ln -sf %{goroot}/bin/gofmt $RPM_BUILD_ROOT%{goroot}/bin/linux_%{gohostarch}/gofmt - -# ensure these exist and are owned -mkdir -p $RPM_BUILD_ROOT%{gopath}/src/github.com -mkdir -p $RPM_BUILD_ROOT%{gopath}/src/bitbucket.org -mkdir -p $RPM_BUILD_ROOT%{gopath}/src/code.google.com/p -mkdir -p $RPM_BUILD_ROOT%{gopath}/src/golang.org/x - -# make sure these files exist and point to alternatives -rm -f $RPM_BUILD_ROOT%{_bindir}/go -ln -sf /etc/alternatives/go $RPM_BUILD_ROOT%{_bindir}/go -rm -f $RPM_BUILD_ROOT%{_bindir}/gofmt -ln -sf /etc/alternatives/gofmt $RPM_BUILD_ROOT%{_bindir}/gofmt - -# gdbinit -mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gdbinit.d -cp -av %{SOURCE100} $RPM_BUILD_ROOT%{_sysconfdir}/gdbinit.d/golang.gdb - -# prelink blacklist -mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/prelink.conf.d -cp -av %{SOURCE101} $RPM_BUILD_ROOT%{_sysconfdir}/prelink.conf.d/golang.conf - -# rpm macros -mkdir -p %{buildroot} -%if 0%{?rhel} > 6 || 0%{?fedora} > 0 -mkdir -p $RPM_BUILD_ROOT%{_rpmconfigdir}/macros.d -cp -av %{SOURCE102} $RPM_BUILD_ROOT%{_rpmconfigdir}/macros.d/macros.golang -%else -mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/rpm -cp -av %{SOURCE102} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros.golang -%endif - - -%check -export GOROOT=$(pwd -P) -export PATH="$GOROOT"/bin:"$PATH" -cd src - -export CC="gcc" -export CFLAGS="$RPM_OPT_FLAGS" -export LDFLAGS="$RPM_LD_FLAGS" -%if !%{external_linker} -export GO_LDFLAGS="-linkmode internal" -%endif -%if !%{cgo_enabled} || !%{external_linker} -export CGO_ENABLED=0 -%endif - -# make sure to not timeout -export GO_TEST_TIMEOUT_SCALE=2 - -%if %{fail_on_tests} -./run.bash --no-rebuild -v -v -v -k -%else -./run.bash --no-rebuild -v -v -v -k || : -%endif -cd .. - - -%post bin -%{_sbindir}/update-alternatives --install %{_bindir}/go \ - go %{goroot}/bin/go 90 \ - --slave %{_bindir}/gofmt gofmt %{goroot}/bin/gofmt - -%preun bin -if [ $1 = 0 ]; then - %{_sbindir}/update-alternatives --remove go %{goroot}/bin/go -fi - - -%files -%doc AUTHORS CONTRIBUTORS LICENSE PATENTS -# VERSION has to be present in the GOROOT, for `go install std` to work -%doc %{goroot}/VERSION -%dir %{goroot}/doc -%doc %{goroot}/doc/* - -# go files -%dir %{goroot} -%exclude %{goroot}/bin/ -%exclude %{goroot}/pkg/ -%exclude %{goroot}/src/ -%exclude %{goroot}/doc/ -%exclude %{goroot}/misc/ -%exclude %{goroot}/test/ -%{goroot}/* - -# ensure directory ownership, so they are cleaned up if empty -%dir %{gopath} -%dir %{gopath}/src -%dir %{gopath}/src/github.com/ -%dir %{gopath}/src/bitbucket.org/ -%dir %{gopath}/src/code.google.com/ -%dir %{gopath}/src/code.google.com/p/ -%dir %{gopath}/src/golang.org -%dir %{gopath}/src/golang.org/x - - -# gdbinit (for gdb debugging) -%{_sysconfdir}/gdbinit.d - -# prelink blacklist -%{_sysconfdir}/prelink.conf.d - -%if 0%{?rhel} > 6 || 0%{?fedora} > 0 -%{_rpmconfigdir}/macros.d/macros.golang -%else -%{_sysconfdir}/rpm/macros.golang -%endif - - -%files -f go-src.list src - -%files -f go-docs.list docs - -%files -f go-misc.list misc - -%files -f go-tests.list tests - -%files -f go-pkg.list bin -%{_bindir}/go -%{_bindir}/gofmt - -%if %{shared} -%files -f go-shared.list shared -%endif - -%if %{race} -%files -f go-race.list race -%endif - -%changelog -* Fri Nov 30 2018 Jakub Čajka - 1.11.2-3 -- add ppc64le proper - -* Mon Nov 26 2018 Jakub Čajka - 1.11.2-2 -- fix up macros file for aarch64 - -* Fri Nov 23 2018 Jakub Čajka - 1.11.2-1 -- Rebase to go1.11.2 - -* Sun Oct 07 2018 Jakub Čajka - 1.11.1-1 -- Rebase to go1.11.1 - -* Mon Jun 11 2018 Jakub Čajka - 1.9.7-1 -- Rebase to 1.9.7 - -* Thu May 10 2018 Jakub Čajka - 1.9.6-1 -- Rebase to 1.9.6 - -* Tue Mar 20 2018 Jakub Čajka - 1.9.4-1 -- Rebase to 1.9.4 -- Fix CVE-2018-6574 and CVE-2018-7187 -- Resolves: BZ#1543561, BZ#1543563, BZ#1546386, BZ#1546387 - -* Thu Oct 26 2017 Jakub Čajka - 1.9.2-1 -- Rebase to 1.9.2 -- execute correctly pie tests -- allow to ignore tests via bcond -- reduce size of golang package - -* Fri Oct 06 2017 Jakub Čajka - 1.9.1-1 -- fix CVE-2017-15041 and CVE-2017-15042 - -* Fri Sep 15 2017 Jakub Čajka - 1.9-1 -- bump to the relased version - -* Wed Aug 02 2017 Fedora Release Engineering - 1.9-0.beta2.1.2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 1.9-0.beta2.1.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Tue Jul 11 2017 Jakub Čajka - 1.9-0.beta2.1 -- bump to beta2 - -* Thu May 25 2017 Jakub Čajka - 1.8.3-1 -- bump to 1.8.3 -- fix for CVE-2017-8932 -- make possible to use 31bit OID in ASN1 -- Resolves: BZ#1454978, BZ#1455191 - -* Fri Apr 21 2017 Jakub Čajka - 1.8.1-2 -- fix uint64 constant codegen on s390x -- Resolves: BZ#1441078 - -* Tue Apr 11 2017 Jakub Čajka - 1.8.1-1 -- bump to Go 1.8.1 -- Resolves: BZ#1440345 - -* Fri Feb 24 2017 Jakub Čajka - 1.8-2 -- avoid possibly stale packages due to chacha test file not being test file - -* Fri Feb 17 2017 Jakub Čajka - 1.8-1 -- bump to released version -- Resolves: BZ#1423637 -- Related: BZ#1411242 - -* Fri Feb 10 2017 Fedora Release Engineering - 1.8-0.rc3.2.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Fri Jan 27 2017 Jakub Čajka - 1.8-0.rc3.2 -- make possible to override default traceback level at build time -- add sub-package race containing std lib built with -race enabled -- Related: BZ#1411242 - -* Fri Jan 27 2017 Jakub Čajka - 1.8-0.rc3.1 -- rebase to go1.8rc3 -- Resolves: BZ#1411242 - -* Fri Jan 20 2017 Jakub Čajka - 1.7.4-2 -- Resolves: BZ#1404679 -- expose IfInfomsg.X__ifi_pad on s390x - -* Fri Dec 02 2016 Jakub Čajka - 1.7.4-1 -- Bump to 1.7.4 -- Resolves: BZ#1400732 - -* Thu Nov 17 2016 Tom Callaway - 1.7.3-2 -- re-enable the NIST P-224 curve - -* Thu Oct 20 2016 Jakub Čajka - 1.7.3-1 -- Resolves: BZ#1387067 - golang-1.7.3 is available -- added fix for tests failing with latest tzdata - -* Fri Sep 23 2016 Jakub Čajka - 1.7.1-2 -- fix link failure due to relocation overflows on PPC64X - -* Thu Sep 08 2016 Jakub Čajka - 1.7.1-1 -- rebase to 1.7.1 -- Resolves: BZ#1374103 - -* Tue Aug 23 2016 Jakub Čajka - 1.7-1 -- update to released version -- related: BZ#1342090, BZ#1357394 - -* Mon Aug 08 2016 Jakub Čajka - 1.7-0.3.rc5 -- Obsolete golang-vet and golang-cover from golang-googlecode-tools package - vet/cover binaries are provided by golang-bin rpm (thanks to jchaloup) -- clean up exclusive arch after s390x boostrap -- resolves: #1268206 - -* Wed Aug 03 2016 Jakub Čajka - 1.7-0.2.rc5 -- rebase to go1.7rc5 -- Resolves: BZ#1342090 - -* Thu Jul 21 2016 Fedora Release Engineering - 1.7-0.1.rc2 -- https://fedoraproject.org/wiki/Changes/golang1.7 - -* Tue Jul 19 2016 Jakub Čajka - 1.7-0.0.rc2 -- rebase to 1.7rc2 -- added s390x build -- improved shared lib packaging -- Resolves: bz1357602 - CVE-2016-5386 -- Resolves: bz1342090, bz1342090 - -* Tue Apr 26 2016 Jakub Čajka - 1.6.2-1 -- rebase to 1.6.2 -- Resolves: bz1329206 - golang-1.6.2.src is available - -* Wed Apr 13 2016 Jakub Čajka - 1.6.1-1 -- rebase to 1.6.1 -- Resolves: bz1324344 - CVE-2016-3959 -- Resolves: bz1324951 - prelink is gone, /etc/prelink.conf.d/* is no longer used -- Resolves: bz1326366 - wrong epoll_event struct for ppc64le/ppc64 - -* Mon Feb 22 2016 Jakub Čajka - 1.6-1 -- Resolves: bz1304701 - rebase to go1.6 release -- Resolves: bz1304591 - fix possible stack miss-alignment in callCgoMmap - -* Wed Feb 03 2016 Fedora Release Engineering - 1.6-0.3.rc1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Fri Jan 29 2016 Jakub Čajka - 1.6-0.2.rc1 -- disabled cgo and external linking on ppc64 - -* Thu Jan 28 2016 Jakub Čajka - 1.6-0.1.rc1 -- Resolves bz1292640, rebase to pre-release 1.6 -- bootstrap for PowerPC -- fix rpmlint errors/warning - -* Thu Jan 14 2016 Jakub Čajka - 1.5.3-1 -- rebase to 1.5.3 -- resolves bz1293451, CVE-2015-8618 -- apply timezone patch, avoid using bundled data -- print out rpm build system info - -* Fri Dec 11 2015 Jakub Čajka - 1.5.2-2 -- bz1290543 Accept x509 certs with negative serial - -* Tue Dec 08 2015 Jakub Čajka - 1.5.2-1 -- bz1288263 rebase to 1.5.2 -- spec file clean up -- added build options -- scrubbed "Project Gutenberg License" - -* Mon Oct 19 2015 Vincent Batts - 1.5.1-1 -- bz1271709 include patch from upstream fix - -* Wed Sep 09 2015 Vincent Batts - 1.5.1-0 -- update to go1.5.1 - -* Fri Sep 04 2015 Vincent Batts - 1.5-8 -- bz1258166 remove srpm macros, for go-srpm-macros - -* Thu Sep 03 2015 Vincent Batts - 1.5-7 -- bz1258166 remove srpm macros, for go-srpm-macros - -* Thu Aug 27 2015 Vincent Batts - 1.5-6 -- starting a shared object subpackage. This will be x86_64 only until upstream supports more arches shared objects. - -* Thu Aug 27 2015 Vincent Batts - 1.5-5 -- bz991759 gdb path fix - -* Wed Aug 26 2015 Vincent Batts - 1.5-4 -- disable shared object until linux/386 is ironned out -- including the test/ directory for tests - -* Tue Aug 25 2015 Vincent Batts - 1.5-3 -- bz1256910 only allow the golang zoneinfo.zip to be used in tests -- bz1166611 add golang.org/x directory -- bz1256525 include stdlib shared object. This will let other libraries and binaries - build with `go build -buildmode=shared -linkshared ...` or similar. - -* Sun Aug 23 2015 Peter Robinson 1.5-2 -- Enable aarch64 -- Minor cleanups - -* Thu Aug 20 2015 Vincent Batts - 1.5-1 -- updating to go1.5 - -* Thu Aug 06 2015 Vincent Batts - 1.5-0.11.rc1 -- fixing the sources reference - -* Thu Aug 06 2015 Vincent Batts - 1.5-0.10.rc1 -- updating to go1.5rc1 -- checks are back in place - -* Tue Aug 04 2015 Vincent Batts - 1.5-0.9.beta3 -- pull in upstream archive/tar fix - -* Thu Jul 30 2015 Vincent Batts - 1.5-0.8.beta3 -- updating to go1.5beta3 - -* Thu Jul 30 2015 Vincent Batts - 1.5-0.7.beta2 -- add the patch .. - -* Thu Jul 30 2015 Vincent Batts - 1.5-0.6.beta2 -- increase ELFRESERVE (bz1248071) - -* Tue Jul 28 2015 Lokesh Mandvekar - 1.5-0.5.beta2 -- correct package version and release tags as per naming guidelines - -* Fri Jul 17 2015 Vincent Batts - 1.4.99-4.1.5beta2 -- adding test output, for visibility - -* Fri Jul 10 2015 Vincent Batts - 1.4.99-3.1.5beta2 -- updating to go1.5beta2 - -* Fri Jul 10 2015 Vincent Batts - 1.4.99-2.1.5beta1 -- add checksum to sources and fixed one patch - -* Fri Jul 10 2015 Vincent Batts - 1.4.99-1.1.5beta1 -- updating to go1.5beta1 - -* Wed Jun 17 2015 Fedora Release Engineering - 1.4.2-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Wed Mar 18 2015 Vincent Batts - 1.4.2-2 -- obsoleting deprecated packages - -* Wed Feb 18 2015 Vincent Batts - 1.4.2-1 -- updating to go1.4.2 - -* Fri Jan 16 2015 Vincent Batts - 1.4.1-1 -- updating to go1.4.1 - -* Fri Jan 02 2015 Vincent Batts - 1.4-2 -- doc organizing - -* Thu Dec 11 2014 Vincent Batts - 1.4-1 -- update to go1.4 release - -* Wed Dec 03 2014 Vincent Batts - 1.3.99-3.1.4rc2 -- update to go1.4rc2 - -* Mon Nov 17 2014 Vincent Batts - 1.3.99-2.1.4rc1 -- update to go1.4rc1 - -* Thu Oct 30 2014 Vincent Batts - 1.3.99-1.1.4beta1 -- update to go1.4beta1 - -* Thu Oct 30 2014 Vincent Batts - 1.3.3-3 -- macros will need to be in their own rpm - -* Fri Oct 24 2014 Vincent Batts - 1.3.3-2 -- split out rpm macros (bz1156129) -- progress on gccgo accomodation - -* Wed Oct 01 2014 Vincent Batts - 1.3.3-1 -- update to go1.3.3 (bz1146882) - -* Mon Sep 29 2014 Vincent Batts - 1.3.2-1 -- update to go1.3.2 (bz1147324) - -* Thu Sep 11 2014 Vincent Batts - 1.3.1-3 -- patching the tzinfo failure - -* Sat Aug 16 2014 Fedora Release Engineering - 1.3.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Wed Aug 13 2014 Vincent Batts - 1.3.1-1 -- update to go1.3.1 - -* Wed Aug 13 2014 Vincent Batts - 1.3-11 -- merged a line wrong - -* Wed Aug 13 2014 Vincent Batts - 1.3-10 -- more work to get cgo.a timestamps to line up, due to build-env -- explicitly list all the files and directories for the source and packages trees -- touch all the built archives to be the same - -* Mon Aug 11 2014 Vincent Batts - 1.3-9 -- make golang-src 'noarch' again, since that was not a fix, and takes up more space - -* Mon Aug 11 2014 Vincent Batts - 1.3-8 -- update timestamps of source files during %%install bz1099206 - -* Fri Aug 08 2014 Vincent Batts - 1.3-7 -- update timestamps of source during %%install bz1099206 - -* Wed Aug 06 2014 Vincent Batts - 1.3-6 -- make the source subpackage arch'ed, instead of noarch - -* Mon Jul 21 2014 Vincent Batts - 1.3-5 -- fix the writing of pax headers - -* Tue Jul 15 2014 Vincent Batts - 1.3-4 -- fix the loading of gdb safe-path. bz981356 - -* Tue Jul 08 2014 Vincent Batts - 1.3-3 -- `go install std` requires gcc, to build cgo. bz1105901, bz1101508 - -* Mon Jul 07 2014 Vincent Batts - 1.3-2 -- archive/tar memory allocation improvements - -* Thu Jun 19 2014 Vincent Batts - 1.3-1 -- update to go1.3 - -* Fri Jun 13 2014 Vincent Batts - 1.3rc2-1 -- update to go1.3rc2 - -* Sat Jun 07 2014 Fedora Release Engineering - 1.3rc1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Tue Jun 03 2014 Vincent Batts 1.3rc1-1 -- update to go1.3rc1 -- new arch file shuffling - -* Wed May 21 2014 Vincent Batts 1.3beta2-1 -- update to go1.3beta2 -- no longer provides go-mode for xemacs (emacs only) - -* Wed May 21 2014 Vincent Batts 1.2.2-7 -- bz1099206 ghost files are not what is needed - -* Tue May 20 2014 Vincent Batts 1.2.2-6 -- bz1099206 more fixing. The packages %%post need golang-bin present first - -* Tue May 20 2014 Vincent Batts 1.2.2-5 -- bz1099206 more fixing. Let go fix its own timestamps and freshness - -* Tue May 20 2014 Vincent Batts 1.2.2-4 -- fix the existence and alternatives of `go` and `gofmt` - -* Mon May 19 2014 Vincent Batts 1.2.2-3 -- bz1099206 fix timestamp issue caused by koji builders - -* Fri May 09 2014 Vincent Batts 1.2.2-2 -- more arch file shuffling - -* Fri May 09 2014 Vincent Batts 1.2.2-1 -- update to go1.2.2 - -* Thu May 08 2014 Vincent Batts 1.2.1-8 -- RHEL6 rpm macros can't %%exlude missing files - -* Wed May 07 2014 Vincent Batts 1.2.1-7 -- missed two arch-dependent src files - -* Wed May 07 2014 Vincent Batts 1.2.1-6 -- put generated arch-dependent src in their respective RPMs - -* Fri Apr 11 2014 Vincent Batts 1.2.1-5 -- skip test that is causing a SIGABRT on fc21 bz1086900 - -* Thu Apr 10 2014 Vincent Batts 1.2.1-4 -- fixing file and directory ownership bz1010713 - -* Wed Apr 09 2014 Vincent Batts 1.2.1-3 -- including more to macros (%%go_arches) -- set a standard goroot as /usr/lib/golang, regardless of arch -- include sub-packages for compiler toolchains, for all golang supported architectures - -* Wed Mar 26 2014 Vincent Batts 1.2.1-2 -- provide a system rpm macros. Starting with gopath - -* Tue Mar 04 2014 Adam Miller 1.2.1-1 -- Update to latest upstream - -* Thu Feb 20 2014 Adam Miller 1.2-7 -- Remove _BSD_SOURCE and _SVID_SOURCE, they are deprecated in recent - versions of glibc and aren't needed - -* Wed Feb 19 2014 Adam Miller 1.2-6 -- pull in upstream archive/tar implementation that supports xattr for - docker 0.8.1 - -* Tue Feb 18 2014 Vincent Batts 1.2-5 -- provide 'go', so users can yum install 'go' - -* Fri Jan 24 2014 Vincent Batts 1.2-4 -- skip a flaky test that is sporadically failing on the build server - -* Thu Jan 16 2014 Vincent Batts 1.2-3 -- remove golang-godoc dependency. cyclic dependency on compiling godoc - -* Wed Dec 18 2013 Vincent Batts - 1.2-2 -- removing P224 ECC curve - -* Mon Dec 2 2013 Vincent Batts - 1.2-1 -- Update to upstream 1.2 release -- remove the pax tar patches - -* Tue Nov 26 2013 Vincent Batts - 1.1.2-8 -- fix the rpmspec conditional for rhel and fedora - -* Thu Nov 21 2013 Vincent Batts - 1.1.2-7 -- patch tests for testing on rawhide -- let the same spec work for rhel and fedora - -* Wed Nov 20 2013 Vincent Batts - 1.1.2-6 -- don't symlink /usr/bin out to ../lib..., move the file -- seperate out godoc, to accomodate the go.tools godoc - -* Fri Sep 20 2013 Adam Miller - 1.1.2-5 -- Pull upstream patches for BZ#1010271 -- Add glibc requirement that got dropped because of meta dep fix - -* Fri Aug 30 2013 Adam Miller - 1.1.2-4 -- fix the libc meta dependency (thanks to vbatts [at] redhat.com for the fix) - -* Tue Aug 27 2013 Adam Miller - 1.1.2-3 -- Revert incorrect merged changelog - -* Tue Aug 27 2013 Adam Miller - 1.1.2-2 -- This was reverted, just a placeholder changelog entry for bad merge - -* Tue Aug 20 2013 Adam Miller - 1.1.2-1 -- Update to latest upstream - -* Sat Aug 03 2013 Fedora Release Engineering - 1.1.1-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Wed Jul 17 2013 Petr Pisar - 1.1.1-6 -- Perl 5.18 rebuild - -* Wed Jul 10 2013 Adam Goode - 1.1.1-5 -- Blacklist testdata files from prelink -- Again try to fix #973842 - -* Fri Jul 5 2013 Adam Goode - 1.1.1-4 -- Move src to libdir for now (#973842) (upstream issue https://code.google.com/p/go/issues/detail?id=5830) -- Eliminate noarch data package to work around RPM bug (#975909) -- Try to add runtime-gdb.py to the gdb safe-path (#981356) - -* Wed Jun 19 2013 Adam Goode - 1.1.1-3 -- Use lua for pretrans (http://fedoraproject.org/wiki/Packaging:Guidelines#The_.25pretrans_scriptlet) - -* Mon Jun 17 2013 Adam Goode - 1.1.1-2 -- Hopefully really fix #973842 -- Fix update from pre-1.1.1 (#974840) - -* Thu Jun 13 2013 Adam Goode - 1.1.1-1 -- Update to 1.1.1 -- Fix basically useless package (#973842) - -* Sat May 25 2013 Dan Horák - 1.1-3 -- set ExclusiveArch - -* Fri May 24 2013 Adam Goode - 1.1-2 -- Fix noarch package discrepancies - -* Fri May 24 2013 Adam Goode - 1.1-1 -- Initial Fedora release. -- Update to 1.1 - -* Thu May 9 2013 Adam Goode - 1.1-0.3.rc3 -- Update to rc3 - -* Thu Apr 11 2013 Adam Goode - 1.1-0.2.beta2 -- Update to beta2 - -* Tue Apr 9 2013 Adam Goode - 1.1-0.1.beta1 -- Initial packaging. diff --git a/base/golang/centos/golang.spec.orig b/base/golang/centos/golang.spec.orig deleted file mode 100644 index 2b0bec5e1..000000000 --- a/base/golang/centos/golang.spec.orig +++ /dev/null @@ -1,1046 +0,0 @@ -%bcond_with bootstrap -%bcond_with ignore_tests -# build ids are not currently generated: -# https://code.google.com/p/go/issues/detail?id=5238 -# -# also, debuginfo extraction currently fails with -# "Failed to write file: invalid section alignment" -%global debug_package %{nil} - -# we are shipping the full contents of src in the data subpackage, which -# contains binary-like things (ELF data for tests, etc) -%global _binaries_in_noarch_packages_terminate_build 0 - -# Do not check any files in doc or src for requires -%global __requires_exclude_from ^(%{_datadir}|/usr/lib)/%{name}/(doc|src)/.*$ - -# Don't alter timestamps of especially the .a files (or else go will rebuild later) -# Actually, don't strip at all since we are not even building debug packages and this corrupts the dwarf testdata -%global __strip /bin/true - -# rpmbuild magic to keep from having meta dependency on libc.so.6 -%define _use_internal_dependency_generator 0 -%define __find_requires %{nil} -%global __spec_install_post /usr/lib/rpm/check-rpaths /usr/lib/rpm/check-buildroot \ - /usr/lib/rpm/brp-compress - -%global golibdir %{_libdir}/golang - -# Golang build options. - -# Build golang using external/internal(close to cgo disabled) linking. -%ifarch %{ix86} x86_64 ppc64le %{arm} aarch64 s390x -%global external_linker 1 -%else -%global external_linker 0 -%endif - -# Build golang with cgo enabled/disabled(later equals more or less to internal linking). -%ifarch %{ix86} x86_64 ppc64le %{arm} aarch64 s390x -%global cgo_enabled 1 -%else -%global cgo_enabled 0 -%endif - -# Use golang/gcc-go as bootstrap compiler -%if %{with bootstrap} -%global golang_bootstrap 0 -%else -%global golang_bootstrap 1 -%endif - -# Controls what ever we fail on failed tests -%ifarch x86_64 -%global fail_on_tests 0 -%else -%global fail_on_tests 1 -%endif - -# Build golang shared objects for stdlib -%ifarch %{ix86} x86_64 ppc64le %{arm} aarch64 -%global shared 1 -%else -%global shared 0 -%endif - -# Pre build std lib with -race enabled -%ifarch x86_64 -%global race 1 -%else -%global race 0 -%endif - -# Fedora GOROOT -%global goroot /usr/lib/%{name} -%global gopath %{_datadir}/gocode -%global go_arches %{ix86} x86_64 %{arm} aarch64 ppc64le -%global golibdir %{_libdir}/golang - -%ifarch x86_64 -%global gohostarch amd64 -%endif -%ifarch %{ix86} -%global gohostarch 386 -%endif -%ifarch %{arm} -%global gohostarch arm -%endif -%ifarch aarch64 -%global gohostarch arm64 -%endif -%ifarch ppc64 -%global gohostarch ppc64 -%endif -%ifarch ppc64le -%global gohostarch ppc64le -%endif -%ifarch s390x -%global gohostarch s390x -%endif - -%global go_api 1.11 -%global go_version 1.11.2 - -Name: golang -Version: 1.11.2 -Release: 3%{?dist} -Summary: The Go Programming Language -# source tree includes several copies of Mark.Twain-Tom.Sawyer.txt under Public Domain -License: BSD and Public Domain -URL: http://golang.org/ -Source0: https://storage.googleapis.com/golang/go%{go_version}.src.tar.gz -# make possible to override default traceback level at build time by setting build tag rpm_crashtraceback -Source1: fedora.go - -# The compiler is written in Go. Needs go(1.4+) compiler for build. -%if !%{golang_bootstrap} -BuildRequires: gcc-go >= 5 -%else -BuildRequires: golang > 1.4 -%endif -%if 0%{?rhel} > 6 || 0%{?fedora} > 0 -BuildRequires: hostname -%else -BuildRequires: net-tools -%endif -# for tests -BuildRequires: pcre-devel, glibc-static, perl - -Provides: go = %{version}-%{release} -Provides: go-srpm-macros - -# Bundled/Vendored provides generated by -# go list -f {{.ImportPath}} ./src/vendor/... | sed "s:_$PWD/src/vendor/::g;s:_:.:;s:.*:Provides\: bundled(golang(&)):" && go list -f {{.ImportPath}} ./src/cmd/vendor/... | sed "s:_$PWD/src/cmd/vendor/::g;s:_:.:;s:.*:Provides\: bundled(golang(&)):" -Provides: bundled(golang(golang.org/x/crypto/chacha20poly1305)) -Provides: bundled(golang(golang.org/x/crypto/cryptobyte)) -Provides: bundled(golang(golang.org/x/crypto/cryptobyte/asn1)) -Provides: bundled(golang(golang.org/x/crypto/curve25519)) -Provides: bundled(golang(golang.org/x/crypto/internal/chacha20)) -Provides: bundled(golang(golang.org/x/crypto/poly1305)) -Provides: bundled(golang(golang.org/x/net/dns/dnsmessage)) -Provides: bundled(golang(golang.org/x/net/http/httpguts)) -Provides: bundled(golang(golang.org/x/net/http/httpproxy)) -Provides: bundled(golang(golang.org/x/net/http2/hpack)) -Provides: bundled(golang(golang.org/x/net/idna)) -Provides: bundled(golang(golang.org/x/net/internal/nettest)) -Provides: bundled(golang(golang.org/x/net/nettest)) -Provides: bundled(golang(golang.org/x/text/secure)) -Provides: bundled(golang(golang.org/x/text/secure/bidirule)) -Provides: bundled(golang(golang.org/x/text/transform)) -Provides: bundled(golang(golang.org/x/text/unicode)) -Provides: bundled(golang(golang.org/x/text/unicode/bidi)) -Provides: bundled(golang(golang.org/x/text/unicode/norm)) -Provides: bundled(golang(github.com/google/pprof/driver)) -Provides: bundled(golang(github.com/google/pprof/internal/binutils)) -Provides: bundled(golang(github.com/google/pprof/internal/driver)) -Provides: bundled(golang(github.com/google/pprof/internal/elfexec)) -Provides: bundled(golang(github.com/google/pprof/internal/graph)) -Provides: bundled(golang(github.com/google/pprof/internal/measurement)) -Provides: bundled(golang(github.com/google/pprof/internal/plugin)) -Provides: bundled(golang(github.com/google/pprof/internal/proftest)) -Provides: bundled(golang(github.com/google/pprof/internal/report)) -Provides: bundled(golang(github.com/google/pprof/internal/symbolizer)) -Provides: bundled(golang(github.com/google/pprof/internal/symbolz)) -Provides: bundled(golang(github.com/google/pprof/profile)) -Provides: bundled(golang(github.com/google/pprof/third.party/d3)) -Provides: bundled(golang(github.com/google/pprof/third.party/d3flamegraph)) -Provides: bundled(golang(github.com/google/pprof/third.party/svgpan)) -Provides: bundled(golang(github.com/ianlancetaylor/demangle)) -Provides: bundled(golang(golang.org/x/arch/arm/armasm)) -Provides: bundled(golang(golang.org/x/arch/arm64/arm64asm)) -Provides: bundled(golang(golang.org/x/arch/ppc64/ppc64asm)) -Provides: bundled(golang(golang.org/x/arch/x86/x86asm)) -Provides: bundled(golang(golang.org/x/crypto/ssh/terminal)) -Provides: bundled(golang(golang.org/x/sys/unix)) -Provides: bundled(golang(golang.org/x/sys/windows)) -Provides: bundled(golang(golang.org/x/sys/windows/registry)) - -Requires: %{name}-bin = %{version}-%{release} -Requires: %{name}-src = %{version}-%{release} -Requires: go-srpm-macros - -Patch1: 0001-Don-t-use-the-bundled-tzdata-at-runtime-except-for-t.patch -Patch2: 0002-syscall-expose-IfInfomsg.X__ifi_pad-on-s390x.patch - -# Having documentation separate was broken -Obsoletes: %{name}-docs < 1.1-4 - -# RPM can't handle symlink -> dir with subpackages, so merge back -Obsoletes: %{name}-data < 1.1.1-4 - -# go1.4 deprecates a few packages -Obsoletes: %{name}-vim < 1.4 -Obsoletes: emacs-%{name} < 1.4 - -# These are the only RHEL/Fedora architectures that we compile this package for -ExclusiveArch: %{go_arches} - -Source100: golang-gdbinit -Source101: golang-prelink.conf -Source102: macros.golang - -%description -%{summary}. - -%package docs -Summary: Golang compiler docs -Requires: %{name} = %{version}-%{release} -BuildArch: noarch -Obsoletes: %{name}-docs < 1.1-4 - -%description docs -%{summary}. - -%package misc -Summary: Golang compiler miscellaneous sources -Requires: %{name} = %{version}-%{release} -BuildArch: noarch - -%description misc -%{summary}. - -%package tests -Summary: Golang compiler tests for stdlib -Requires: %{name} = %{version}-%{release} -BuildArch: noarch - -%description tests -%{summary}. - -%package src -Summary: Golang compiler source tree -BuildArch: noarch -%description src -%{summary} - -%package bin -Summary: Golang core compiler tools -Requires: go = %{version}-%{release} -# Pre-go1.5, all arches had to be bootstrapped individually, before usable, and -# env variables to compile for the target os-arch. -# Now the host compiler needs only the GOOS and GOARCH environment variables -# set to compile for the target os-arch. -Obsoletes: %{name}-pkg-bin-linux-386 < 1.4.99 -Obsoletes: %{name}-pkg-bin-linux-amd64 < 1.4.99 -Obsoletes: %{name}-pkg-bin-linux-arm < 1.4.99 -Obsoletes: %{name}-pkg-linux-386 < 1.4.99 -Obsoletes: %{name}-pkg-linux-amd64 < 1.4.99 -Obsoletes: %{name}-pkg-linux-arm < 1.4.99 -Obsoletes: %{name}-pkg-darwin-386 < 1.4.99 -Obsoletes: %{name}-pkg-darwin-amd64 < 1.4.99 -Obsoletes: %{name}-pkg-windows-386 < 1.4.99 -Obsoletes: %{name}-pkg-windows-amd64 < 1.4.99 -Obsoletes: %{name}-pkg-plan9-386 < 1.4.99 -Obsoletes: %{name}-pkg-plan9-amd64 < 1.4.99 -Obsoletes: %{name}-pkg-freebsd-386 < 1.4.99 -Obsoletes: %{name}-pkg-freebsd-amd64 < 1.4.99 -Obsoletes: %{name}-pkg-freebsd-arm < 1.4.99 -Obsoletes: %{name}-pkg-netbsd-386 < 1.4.99 -Obsoletes: %{name}-pkg-netbsd-amd64 < 1.4.99 -Obsoletes: %{name}-pkg-netbsd-arm < 1.4.99 -Obsoletes: %{name}-pkg-openbsd-386 < 1.4.99 -Obsoletes: %{name}-pkg-openbsd-amd64 < 1.4.99 - -Obsoletes: golang-vet < 0-12.1 -Obsoletes: golang-cover < 0-12.1 - -Requires(post): %{_sbindir}/update-alternatives -Requires(postun): %{_sbindir}/update-alternatives - -# We strip the meta dependency, but go does require glibc. -# This is an odd issue, still looking for a better fix. -Requires: glibc -Requires: gcc -Requires: git, subversion, mercurial -%description bin -%{summary} - -# Workaround old RPM bug of symlink-replaced-with-dir failure -%pretrans -p -for _,d in pairs({"api", "doc", "include", "lib", "src"}) do - path = "%{goroot}/" .. d - if posix.stat(path, "type") == "link" then - os.remove(path) - posix.mkdir(path) - end -end - -%if %{shared} -%package shared -Summary: Golang shared object libraries - -%description shared -%{summary}. -%endif - -%if %{race} -%package race -Summary: Golang std library with -race enabled - -Requires: %{name} = %{version}-%{release} - -%description race -%{summary} -%endif - -%prep -%setup -q -n go - -%patch1 -p1 -%patch2 -p1 - -cp %{SOURCE1} ./src/runtime/ - -%build -# print out system information -uname -a -cat /proc/cpuinfo -cat /proc/meminfo - -# bootstrap compiler GOROOT -%if !%{golang_bootstrap} -export GOROOT_BOOTSTRAP=/ -%else -export GOROOT_BOOTSTRAP=%{goroot} -%endif - -# set up final install location -export GOROOT_FINAL=%{goroot} - -export GOHOSTOS=linux -export GOHOSTARCH=%{gohostarch} - -pushd src -# use our gcc options for this build, but store gcc as default for compiler -export CFLAGS="$RPM_OPT_FLAGS" -export LDFLAGS="$RPM_LD_FLAGS" -export CC="gcc" -export CC_FOR_TARGET="gcc" -export GOOS=linux -export GOARCH=%{gohostarch} -%if !%{external_linker} -export GO_LDFLAGS="-linkmode internal" -%endif -%if !%{cgo_enabled} -export CGO_ENABLED=0 -%endif -./make.bash --no-clean -v -popd - -# build shared std lib -%if %{shared} -GOROOT=$(pwd) PATH=$(pwd)/bin:$PATH go install -buildmode=shared -v -x std -%endif - -%if %{race} -GOROOT=$(pwd) PATH=$(pwd)/bin:$PATH go install -race -v -x std -%endif - -%install -rm -rf $RPM_BUILD_ROOT -# remove GC build cache -rm -rf pkg/obj/go-build/* - -# create the top level directories -mkdir -p $RPM_BUILD_ROOT%{_bindir} -mkdir -p $RPM_BUILD_ROOT%{goroot} - -# install everything into libdir (until symlink problems are fixed) -# https://code.google.com/p/go/issues/detail?id=5830 -cp -apv api bin doc favicon.ico lib pkg robots.txt src misc test VERSION \ - $RPM_BUILD_ROOT%{goroot} - -# bz1099206 -find $RPM_BUILD_ROOT%{goroot}/src -exec touch -r $RPM_BUILD_ROOT%{goroot}/VERSION "{}" \; -# and level out all the built archives -touch $RPM_BUILD_ROOT%{goroot}/pkg -find $RPM_BUILD_ROOT%{goroot}/pkg -exec touch -r $RPM_BUILD_ROOT%{goroot}/pkg "{}" \; -# generate the spec file ownership of this source tree and packages -cwd=$(pwd) -src_list=$cwd/go-src.list -pkg_list=$cwd/go-pkg.list -shared_list=$cwd/go-shared.list -race_list=$cwd/go-race.list -misc_list=$cwd/go-misc.list -docs_list=$cwd/go-docs.list -tests_list=$cwd/go-tests.list -rm -f $src_list $pkg_list $docs_list $misc_list $tests_list $shared_list $race_list -touch $src_list $pkg_list $docs_list $misc_list $tests_list $shared_list $race_list -pushd $RPM_BUILD_ROOT%{goroot} - find src/ -type d -a \( ! -name testdata -a ! -ipath '*/testdata/*' \) -printf '%%%dir %{goroot}/%p\n' >> $src_list - find src/ ! -type d -a \( ! -ipath '*/testdata/*' -a ! -name '*_test.go' \) -printf '%{goroot}/%p\n' >> $src_list - - find bin/ pkg/ -type d -a ! -path '*_dynlink/*' -a ! -path '*_race/*' -printf '%%%dir %{goroot}/%p\n' >> $pkg_list - find bin/ pkg/ ! -type d -a ! -path '*_dynlink/*' -a ! -path '*_race/*' -printf '%{goroot}/%p\n' >> $pkg_list - - find doc/ -type d -printf '%%%dir %{goroot}/%p\n' >> $docs_list - find doc/ ! -type d -printf '%{goroot}/%p\n' >> $docs_list - - find misc/ -type d -printf '%%%dir %{goroot}/%p\n' >> $misc_list - find misc/ ! -type d -printf '%{goroot}/%p\n' >> $misc_list - -%if %{shared} - mkdir -p %{buildroot}/%{_libdir}/ - mkdir -p %{buildroot}/%{golibdir}/ - for file in $(find . -iname "*.so" ); do - chmod 755 $file - mv $file %{buildroot}/%{golibdir} - pushd $(dirname $file) - ln -fs %{golibdir}/$(basename $file) $(basename $file) - popd - echo "%%{goroot}/$file" >> $shared_list - echo "%%{golibdir}/$(basename $file)" >> $shared_list - done - - find pkg/*_dynlink/ -type d -printf '%%%dir %{goroot}/%p\n' >> $shared_list - find pkg/*_dynlink/ ! -type d -printf '%{goroot}/%p\n' >> $shared_list -%endif - -%if %{race} - - find pkg/*_race/ -type d -printf '%%%dir %{goroot}/%p\n' >> $race_list - find pkg/*_race/ ! -type d -printf '%{goroot}/%p\n' >> $race_list - -%endif - - find test/ -type d -printf '%%%dir %{goroot}/%p\n' >> $tests_list - find test/ ! -type d -printf '%{goroot}/%p\n' >> $tests_list - find src/ -type d -a \( -name testdata -o -ipath '*/testdata/*' \) -printf '%%%dir %{goroot}/%p\n' >> $tests_list - find src/ ! -type d -a \( -ipath '*/testdata/*' -o -name '*_test.go' \) -printf '%{goroot}/%p\n' >> $tests_list - # this is only the zoneinfo.zip - find lib/ -type d -printf '%%%dir %{goroot}/%p\n' >> $tests_list - find lib/ ! -type d -printf '%{goroot}/%p\n' >> $tests_list -popd - -# remove the doc Makefile -rm -rfv $RPM_BUILD_ROOT%{goroot}/doc/Makefile - -# put binaries to bindir, linked to the arch we're building, -# leave the arch independent pieces in {goroot} -mkdir -p $RPM_BUILD_ROOT%{goroot}/bin/linux_%{gohostarch} -ln -sf %{goroot}/bin/go $RPM_BUILD_ROOT%{goroot}/bin/linux_%{gohostarch}/go -ln -sf %{goroot}/bin/gofmt $RPM_BUILD_ROOT%{goroot}/bin/linux_%{gohostarch}/gofmt - -# ensure these exist and are owned -mkdir -p $RPM_BUILD_ROOT%{gopath}/src/github.com -mkdir -p $RPM_BUILD_ROOT%{gopath}/src/bitbucket.org -mkdir -p $RPM_BUILD_ROOT%{gopath}/src/code.google.com/p -mkdir -p $RPM_BUILD_ROOT%{gopath}/src/golang.org/x - -# make sure these files exist and point to alternatives -rm -f $RPM_BUILD_ROOT%{_bindir}/go -ln -sf /etc/alternatives/go $RPM_BUILD_ROOT%{_bindir}/go -rm -f $RPM_BUILD_ROOT%{_bindir}/gofmt -ln -sf /etc/alternatives/gofmt $RPM_BUILD_ROOT%{_bindir}/gofmt - -# gdbinit -mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gdbinit.d -cp -av %{SOURCE100} $RPM_BUILD_ROOT%{_sysconfdir}/gdbinit.d/golang.gdb - -# prelink blacklist -mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/prelink.conf.d -cp -av %{SOURCE101} $RPM_BUILD_ROOT%{_sysconfdir}/prelink.conf.d/golang.conf - -# rpm macros -mkdir -p %{buildroot} -%if 0%{?rhel} > 6 || 0%{?fedora} > 0 -mkdir -p $RPM_BUILD_ROOT%{_rpmconfigdir}/macros.d -cp -av %{SOURCE102} $RPM_BUILD_ROOT%{_rpmconfigdir}/macros.d/macros.golang -%else -mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/rpm -cp -av %{SOURCE102} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros.golang -%endif - - -%check -export GOROOT=$(pwd -P) -export PATH="$GOROOT"/bin:"$PATH" -cd src - -export CC="gcc" -export CFLAGS="$RPM_OPT_FLAGS" -export LDFLAGS="$RPM_LD_FLAGS" -%if !%{external_linker} -export GO_LDFLAGS="-linkmode internal" -%endif -%if !%{cgo_enabled} || !%{external_linker} -export CGO_ENABLED=0 -%endif - -# make sure to not timeout -export GO_TEST_TIMEOUT_SCALE=2 - -%if %{fail_on_tests} -./run.bash --no-rebuild -v -v -v -k -%else -./run.bash --no-rebuild -v -v -v -k || : -%endif -cd .. - - -%post bin -%{_sbindir}/update-alternatives --install %{_bindir}/go \ - go %{goroot}/bin/go 90 \ - --slave %{_bindir}/gofmt gofmt %{goroot}/bin/gofmt - -%preun bin -if [ $1 = 0 ]; then - %{_sbindir}/update-alternatives --remove go %{goroot}/bin/go -fi - - -%files -%doc AUTHORS CONTRIBUTORS LICENSE PATENTS -# VERSION has to be present in the GOROOT, for `go install std` to work -%doc %{goroot}/VERSION -%dir %{goroot}/doc -%doc %{goroot}/doc/* - -# go files -%dir %{goroot} -%exclude %{goroot}/bin/ -%exclude %{goroot}/pkg/ -%exclude %{goroot}/src/ -%exclude %{goroot}/doc/ -%exclude %{goroot}/misc/ -%exclude %{goroot}/test/ -%{goroot}/* - -# ensure directory ownership, so they are cleaned up if empty -%dir %{gopath} -%dir %{gopath}/src -%dir %{gopath}/src/github.com/ -%dir %{gopath}/src/bitbucket.org/ -%dir %{gopath}/src/code.google.com/ -%dir %{gopath}/src/code.google.com/p/ -%dir %{gopath}/src/golang.org -%dir %{gopath}/src/golang.org/x - - -# gdbinit (for gdb debugging) -%{_sysconfdir}/gdbinit.d - -# prelink blacklist -%{_sysconfdir}/prelink.conf.d - -%if 0%{?rhel} > 6 || 0%{?fedora} > 0 -%{_rpmconfigdir}/macros.d/macros.golang -%else -%{_sysconfdir}/rpm/macros.golang -%endif - - -%files -f go-src.list src - -%files -f go-docs.list docs - -%files -f go-misc.list misc - -%files -f go-tests.list tests - -%files -f go-pkg.list bin -%{_bindir}/go -%{_bindir}/gofmt - -%if %{shared} -%files -f go-shared.list shared -%endif - -%if %{race} -%files -f go-race.list race -%endif - -%changelog -* Fri Nov 30 2018 Jakub Čajka - 1.11.2-3 -- add ppc64le proper - -* Mon Nov 26 2018 Jakub Čajka - 1.11.2-2 -- fix up macros file for aarch64 - -* Fri Nov 23 2018 Jakub Čajka - 1.11.2-1 -- Rebase to go1.11.2 - -* Sun Oct 07 2018 Jakub Čajka - 1.11.1-1 -- Rebase to go1.11.1 - -* Mon Jun 11 2018 Jakub Čajka - 1.9.7-1 -- Rebase to 1.9.7 - -* Thu May 10 2018 Jakub Čajka - 1.9.6-1 -- Rebase to 1.9.6 - -* Tue Mar 20 2018 Jakub Čajka - 1.9.4-1 -- Rebase to 1.9.4 -- Fix CVE-2018-6574 and CVE-2018-7187 -- Resolves: BZ#1543561, BZ#1543563, BZ#1546386, BZ#1546387 - -* Thu Oct 26 2017 Jakub Čajka - 1.9.2-1 -- Rebase to 1.9.2 -- execute correctly pie tests -- allow to ignore tests via bcond -- reduce size of golang package - -* Fri Oct 06 2017 Jakub Čajka - 1.9.1-1 -- fix CVE-2017-15041 and CVE-2017-15042 - -* Fri Sep 15 2017 Jakub Čajka - 1.9-1 -- bump to the relased version - -* Wed Aug 02 2017 Fedora Release Engineering - 1.9-0.beta2.1.2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 1.9-0.beta2.1.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Tue Jul 11 2017 Jakub Čajka - 1.9-0.beta2.1 -- bump to beta2 - -* Thu May 25 2017 Jakub Čajka - 1.8.3-1 -- bump to 1.8.3 -- fix for CVE-2017-8932 -- make possible to use 31bit OID in ASN1 -- Resolves: BZ#1454978, BZ#1455191 - -* Fri Apr 21 2017 Jakub Čajka - 1.8.1-2 -- fix uint64 constant codegen on s390x -- Resolves: BZ#1441078 - -* Tue Apr 11 2017 Jakub Čajka - 1.8.1-1 -- bump to Go 1.8.1 -- Resolves: BZ#1440345 - -* Fri Feb 24 2017 Jakub Čajka - 1.8-2 -- avoid possibly stale packages due to chacha test file not being test file - -* Fri Feb 17 2017 Jakub Čajka - 1.8-1 -- bump to released version -- Resolves: BZ#1423637 -- Related: BZ#1411242 - -* Fri Feb 10 2017 Fedora Release Engineering - 1.8-0.rc3.2.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Fri Jan 27 2017 Jakub Čajka - 1.8-0.rc3.2 -- make possible to override default traceback level at build time -- add sub-package race containing std lib built with -race enabled -- Related: BZ#1411242 - -* Fri Jan 27 2017 Jakub Čajka - 1.8-0.rc3.1 -- rebase to go1.8rc3 -- Resolves: BZ#1411242 - -* Fri Jan 20 2017 Jakub Čajka - 1.7.4-2 -- Resolves: BZ#1404679 -- expose IfInfomsg.X__ifi_pad on s390x - -* Fri Dec 02 2016 Jakub Čajka - 1.7.4-1 -- Bump to 1.7.4 -- Resolves: BZ#1400732 - -* Thu Nov 17 2016 Tom Callaway - 1.7.3-2 -- re-enable the NIST P-224 curve - -* Thu Oct 20 2016 Jakub Čajka - 1.7.3-1 -- Resolves: BZ#1387067 - golang-1.7.3 is available -- added fix for tests failing with latest tzdata - -* Fri Sep 23 2016 Jakub Čajka - 1.7.1-2 -- fix link failure due to relocation overflows on PPC64X - -* Thu Sep 08 2016 Jakub Čajka - 1.7.1-1 -- rebase to 1.7.1 -- Resolves: BZ#1374103 - -* Tue Aug 23 2016 Jakub Čajka - 1.7-1 -- update to released version -- related: BZ#1342090, BZ#1357394 - -* Mon Aug 08 2016 Jakub Čajka - 1.7-0.3.rc5 -- Obsolete golang-vet and golang-cover from golang-googlecode-tools package - vet/cover binaries are provided by golang-bin rpm (thanks to jchaloup) -- clean up exclusive arch after s390x boostrap -- resolves: #1268206 - -* Wed Aug 03 2016 Jakub Čajka - 1.7-0.2.rc5 -- rebase to go1.7rc5 -- Resolves: BZ#1342090 - -* Thu Jul 21 2016 Fedora Release Engineering - 1.7-0.1.rc2 -- https://fedoraproject.org/wiki/Changes/golang1.7 - -* Tue Jul 19 2016 Jakub Čajka - 1.7-0.0.rc2 -- rebase to 1.7rc2 -- added s390x build -- improved shared lib packaging -- Resolves: bz1357602 - CVE-2016-5386 -- Resolves: bz1342090, bz1342090 - -* Tue Apr 26 2016 Jakub Čajka - 1.6.2-1 -- rebase to 1.6.2 -- Resolves: bz1329206 - golang-1.6.2.src is available - -* Wed Apr 13 2016 Jakub Čajka - 1.6.1-1 -- rebase to 1.6.1 -- Resolves: bz1324344 - CVE-2016-3959 -- Resolves: bz1324951 - prelink is gone, /etc/prelink.conf.d/* is no longer used -- Resolves: bz1326366 - wrong epoll_event struct for ppc64le/ppc64 - -* Mon Feb 22 2016 Jakub Čajka - 1.6-1 -- Resolves: bz1304701 - rebase to go1.6 release -- Resolves: bz1304591 - fix possible stack miss-alignment in callCgoMmap - -* Wed Feb 03 2016 Fedora Release Engineering - 1.6-0.3.rc1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Fri Jan 29 2016 Jakub Čajka - 1.6-0.2.rc1 -- disabled cgo and external linking on ppc64 - -* Thu Jan 28 2016 Jakub Čajka - 1.6-0.1.rc1 -- Resolves bz1292640, rebase to pre-release 1.6 -- bootstrap for PowerPC -- fix rpmlint errors/warning - -* Thu Jan 14 2016 Jakub Čajka - 1.5.3-1 -- rebase to 1.5.3 -- resolves bz1293451, CVE-2015-8618 -- apply timezone patch, avoid using bundled data -- print out rpm build system info - -* Fri Dec 11 2015 Jakub Čajka - 1.5.2-2 -- bz1290543 Accept x509 certs with negative serial - -* Tue Dec 08 2015 Jakub Čajka - 1.5.2-1 -- bz1288263 rebase to 1.5.2 -- spec file clean up -- added build options -- scrubbed "Project Gutenberg License" - -* Mon Oct 19 2015 Vincent Batts - 1.5.1-1 -- bz1271709 include patch from upstream fix - -* Wed Sep 09 2015 Vincent Batts - 1.5.1-0 -- update to go1.5.1 - -* Fri Sep 04 2015 Vincent Batts - 1.5-8 -- bz1258166 remove srpm macros, for go-srpm-macros - -* Thu Sep 03 2015 Vincent Batts - 1.5-7 -- bz1258166 remove srpm macros, for go-srpm-macros - -* Thu Aug 27 2015 Vincent Batts - 1.5-6 -- starting a shared object subpackage. This will be x86_64 only until upstream supports more arches shared objects. - -* Thu Aug 27 2015 Vincent Batts - 1.5-5 -- bz991759 gdb path fix - -* Wed Aug 26 2015 Vincent Batts - 1.5-4 -- disable shared object until linux/386 is ironned out -- including the test/ directory for tests - -* Tue Aug 25 2015 Vincent Batts - 1.5-3 -- bz1256910 only allow the golang zoneinfo.zip to be used in tests -- bz1166611 add golang.org/x directory -- bz1256525 include stdlib shared object. This will let other libraries and binaries - build with `go build -buildmode=shared -linkshared ...` or similar. - -* Sun Aug 23 2015 Peter Robinson 1.5-2 -- Enable aarch64 -- Minor cleanups - -* Thu Aug 20 2015 Vincent Batts - 1.5-1 -- updating to go1.5 - -* Thu Aug 06 2015 Vincent Batts - 1.5-0.11.rc1 -- fixing the sources reference - -* Thu Aug 06 2015 Vincent Batts - 1.5-0.10.rc1 -- updating to go1.5rc1 -- checks are back in place - -* Tue Aug 04 2015 Vincent Batts - 1.5-0.9.beta3 -- pull in upstream archive/tar fix - -* Thu Jul 30 2015 Vincent Batts - 1.5-0.8.beta3 -- updating to go1.5beta3 - -* Thu Jul 30 2015 Vincent Batts - 1.5-0.7.beta2 -- add the patch .. - -* Thu Jul 30 2015 Vincent Batts - 1.5-0.6.beta2 -- increase ELFRESERVE (bz1248071) - -* Tue Jul 28 2015 Lokesh Mandvekar - 1.5-0.5.beta2 -- correct package version and release tags as per naming guidelines - -* Fri Jul 17 2015 Vincent Batts - 1.4.99-4.1.5beta2 -- adding test output, for visibility - -* Fri Jul 10 2015 Vincent Batts - 1.4.99-3.1.5beta2 -- updating to go1.5beta2 - -* Fri Jul 10 2015 Vincent Batts - 1.4.99-2.1.5beta1 -- add checksum to sources and fixed one patch - -* Fri Jul 10 2015 Vincent Batts - 1.4.99-1.1.5beta1 -- updating to go1.5beta1 - -* Wed Jun 17 2015 Fedora Release Engineering - 1.4.2-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Wed Mar 18 2015 Vincent Batts - 1.4.2-2 -- obsoleting deprecated packages - -* Wed Feb 18 2015 Vincent Batts - 1.4.2-1 -- updating to go1.4.2 - -* Fri Jan 16 2015 Vincent Batts - 1.4.1-1 -- updating to go1.4.1 - -* Fri Jan 02 2015 Vincent Batts - 1.4-2 -- doc organizing - -* Thu Dec 11 2014 Vincent Batts - 1.4-1 -- update to go1.4 release - -* Wed Dec 03 2014 Vincent Batts - 1.3.99-3.1.4rc2 -- update to go1.4rc2 - -* Mon Nov 17 2014 Vincent Batts - 1.3.99-2.1.4rc1 -- update to go1.4rc1 - -* Thu Oct 30 2014 Vincent Batts - 1.3.99-1.1.4beta1 -- update to go1.4beta1 - -* Thu Oct 30 2014 Vincent Batts - 1.3.3-3 -- macros will need to be in their own rpm - -* Fri Oct 24 2014 Vincent Batts - 1.3.3-2 -- split out rpm macros (bz1156129) -- progress on gccgo accomodation - -* Wed Oct 01 2014 Vincent Batts - 1.3.3-1 -- update to go1.3.3 (bz1146882) - -* Mon Sep 29 2014 Vincent Batts - 1.3.2-1 -- update to go1.3.2 (bz1147324) - -* Thu Sep 11 2014 Vincent Batts - 1.3.1-3 -- patching the tzinfo failure - -* Sat Aug 16 2014 Fedora Release Engineering - 1.3.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Wed Aug 13 2014 Vincent Batts - 1.3.1-1 -- update to go1.3.1 - -* Wed Aug 13 2014 Vincent Batts - 1.3-11 -- merged a line wrong - -* Wed Aug 13 2014 Vincent Batts - 1.3-10 -- more work to get cgo.a timestamps to line up, due to build-env -- explicitly list all the files and directories for the source and packages trees -- touch all the built archives to be the same - -* Mon Aug 11 2014 Vincent Batts - 1.3-9 -- make golang-src 'noarch' again, since that was not a fix, and takes up more space - -* Mon Aug 11 2014 Vincent Batts - 1.3-8 -- update timestamps of source files during %%install bz1099206 - -* Fri Aug 08 2014 Vincent Batts - 1.3-7 -- update timestamps of source during %%install bz1099206 - -* Wed Aug 06 2014 Vincent Batts - 1.3-6 -- make the source subpackage arch'ed, instead of noarch - -* Mon Jul 21 2014 Vincent Batts - 1.3-5 -- fix the writing of pax headers - -* Tue Jul 15 2014 Vincent Batts - 1.3-4 -- fix the loading of gdb safe-path. bz981356 - -* Tue Jul 08 2014 Vincent Batts - 1.3-3 -- `go install std` requires gcc, to build cgo. bz1105901, bz1101508 - -* Mon Jul 07 2014 Vincent Batts - 1.3-2 -- archive/tar memory allocation improvements - -* Thu Jun 19 2014 Vincent Batts - 1.3-1 -- update to go1.3 - -* Fri Jun 13 2014 Vincent Batts - 1.3rc2-1 -- update to go1.3rc2 - -* Sat Jun 07 2014 Fedora Release Engineering - 1.3rc1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Tue Jun 03 2014 Vincent Batts 1.3rc1-1 -- update to go1.3rc1 -- new arch file shuffling - -* Wed May 21 2014 Vincent Batts 1.3beta2-1 -- update to go1.3beta2 -- no longer provides go-mode for xemacs (emacs only) - -* Wed May 21 2014 Vincent Batts 1.2.2-7 -- bz1099206 ghost files are not what is needed - -* Tue May 20 2014 Vincent Batts 1.2.2-6 -- bz1099206 more fixing. The packages %%post need golang-bin present first - -* Tue May 20 2014 Vincent Batts 1.2.2-5 -- bz1099206 more fixing. Let go fix its own timestamps and freshness - -* Tue May 20 2014 Vincent Batts 1.2.2-4 -- fix the existence and alternatives of `go` and `gofmt` - -* Mon May 19 2014 Vincent Batts 1.2.2-3 -- bz1099206 fix timestamp issue caused by koji builders - -* Fri May 09 2014 Vincent Batts 1.2.2-2 -- more arch file shuffling - -* Fri May 09 2014 Vincent Batts 1.2.2-1 -- update to go1.2.2 - -* Thu May 08 2014 Vincent Batts 1.2.1-8 -- RHEL6 rpm macros can't %%exlude missing files - -* Wed May 07 2014 Vincent Batts 1.2.1-7 -- missed two arch-dependent src files - -* Wed May 07 2014 Vincent Batts 1.2.1-6 -- put generated arch-dependent src in their respective RPMs - -* Fri Apr 11 2014 Vincent Batts 1.2.1-5 -- skip test that is causing a SIGABRT on fc21 bz1086900 - -* Thu Apr 10 2014 Vincent Batts 1.2.1-4 -- fixing file and directory ownership bz1010713 - -* Wed Apr 09 2014 Vincent Batts 1.2.1-3 -- including more to macros (%%go_arches) -- set a standard goroot as /usr/lib/golang, regardless of arch -- include sub-packages for compiler toolchains, for all golang supported architectures - -* Wed Mar 26 2014 Vincent Batts 1.2.1-2 -- provide a system rpm macros. Starting with gopath - -* Tue Mar 04 2014 Adam Miller 1.2.1-1 -- Update to latest upstream - -* Thu Feb 20 2014 Adam Miller 1.2-7 -- Remove _BSD_SOURCE and _SVID_SOURCE, they are deprecated in recent - versions of glibc and aren't needed - -* Wed Feb 19 2014 Adam Miller 1.2-6 -- pull in upstream archive/tar implementation that supports xattr for - docker 0.8.1 - -* Tue Feb 18 2014 Vincent Batts 1.2-5 -- provide 'go', so users can yum install 'go' - -* Fri Jan 24 2014 Vincent Batts 1.2-4 -- skip a flaky test that is sporadically failing on the build server - -* Thu Jan 16 2014 Vincent Batts 1.2-3 -- remove golang-godoc dependency. cyclic dependency on compiling godoc - -* Wed Dec 18 2013 Vincent Batts - 1.2-2 -- removing P224 ECC curve - -* Mon Dec 2 2013 Vincent Batts - 1.2-1 -- Update to upstream 1.2 release -- remove the pax tar patches - -* Tue Nov 26 2013 Vincent Batts - 1.1.2-8 -- fix the rpmspec conditional for rhel and fedora - -* Thu Nov 21 2013 Vincent Batts - 1.1.2-7 -- patch tests for testing on rawhide -- let the same spec work for rhel and fedora - -* Wed Nov 20 2013 Vincent Batts - 1.1.2-6 -- don't symlink /usr/bin out to ../lib..., move the file -- seperate out godoc, to accomodate the go.tools godoc - -* Fri Sep 20 2013 Adam Miller - 1.1.2-5 -- Pull upstream patches for BZ#1010271 -- Add glibc requirement that got dropped because of meta dep fix - -* Fri Aug 30 2013 Adam Miller - 1.1.2-4 -- fix the libc meta dependency (thanks to vbatts [at] redhat.com for the fix) - -* Tue Aug 27 2013 Adam Miller - 1.1.2-3 -- Revert incorrect merged changelog - -* Tue Aug 27 2013 Adam Miller - 1.1.2-2 -- This was reverted, just a placeholder changelog entry for bad merge - -* Tue Aug 20 2013 Adam Miller - 1.1.2-1 -- Update to latest upstream - -* Sat Aug 03 2013 Fedora Release Engineering - 1.1.1-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Wed Jul 17 2013 Petr Pisar - 1.1.1-6 -- Perl 5.18 rebuild - -* Wed Jul 10 2013 Adam Goode - 1.1.1-5 -- Blacklist testdata files from prelink -- Again try to fix #973842 - -* Fri Jul 5 2013 Adam Goode - 1.1.1-4 -- Move src to libdir for now (#973842) (upstream issue https://code.google.com/p/go/issues/detail?id=5830) -- Eliminate noarch data package to work around RPM bug (#975909) -- Try to add runtime-gdb.py to the gdb safe-path (#981356) - -* Wed Jun 19 2013 Adam Goode - 1.1.1-3 -- Use lua for pretrans (http://fedoraproject.org/wiki/Packaging:Guidelines#The_.25pretrans_scriptlet) - -* Mon Jun 17 2013 Adam Goode - 1.1.1-2 -- Hopefully really fix #973842 -- Fix update from pre-1.1.1 (#974840) - -* Thu Jun 13 2013 Adam Goode - 1.1.1-1 -- Update to 1.1.1 -- Fix basically useless package (#973842) - -* Sat May 25 2013 Dan Horák - 1.1-3 -- set ExclusiveArch - -* Fri May 24 2013 Adam Goode - 1.1-2 -- Fix noarch package discrepancies - -* Fri May 24 2013 Adam Goode - 1.1-1 -- Initial Fedora release. -- Update to 1.1 - -* Thu May 9 2013 Adam Goode - 1.1-0.3.rc3 -- Update to rc3 - -* Thu Apr 11 2013 Adam Goode - 1.1-0.2.beta2 -- Update to beta2 - -* Tue Apr 9 2013 Adam Goode - 1.1-0.1.beta1 -- Initial packaging. diff --git a/base/rpm/centos/build_srpm.data b/base/rpm/centos/build_srpm.data deleted file mode 100644 index 657af790f..000000000 --- a/base/rpm/centos/build_srpm.data +++ /dev/null @@ -1,5 +0,0 @@ -TAR_NAME=rpm -VERSION=4.14.0 -TIS_PATCH_VER=1 - -COPY_LIST="$CGCS_BASE/downloads/$TAR_NAME-$VERSION.tar.bz2 patches/*" diff --git a/base/rpm/centos/rpm.spec b/base/rpm/centos/rpm.spec deleted file mode 100644 index 46a49a075..000000000 --- a/base/rpm/centos/rpm.spec +++ /dev/null @@ -1,1361 +0,0 @@ -# build against xz? -%bcond_without xz -# just for giggles, option to build with internal Berkeley DB -%bcond_with int_bdb -# run internal testsuite? -%bcond_with check -# disable plugins initially -%bcond_without plugins - -%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} - -%define rpmhome /usr/lib/rpm - -%define rpmver 4.14.0 -%define srcver %{rpmver}%{?snapver:-%{snapver}} - -%define bdbname libdb -%define bdbver 5.3.15 -%define dbprefix db - -Summary: The RPM package management system -Name: rpm -Version: %{rpmver} -Release: 1%{?_tis_dist}.%{tis_patch_ver} -Group: System Environment/Base -Url: http://www.rpm.org/ -Source0: %{name}-%{version}%{?snapver:-%{snapver}}.tar.bz2 -%if %{with int_bdb} -Source1: db-%{bdbver}.tar.gz -%else -BuildRequires: libdb-devel -%endif - -Patch1: 0001-sign-files-only.patch - -# Partially GPL/LGPL dual-licensed and some bits with BSD -# SourceLicense: (GPLv2+ and LGPLv2+ with exceptions) and BSD -License: GPLv2+ - -Requires: coreutils -%if %{without int_bdb} -# db recovery tools, rpmdb_util symlinks -Requires: %{_bindir}/%{dbprefix}_stat -%endif -Requires: popt%{_isa} >= 1.10.2.1 -Requires: curl - -%if %{without int_bdb} -BuildRequires: %{bdbname}-devel -%endif - -%if %{with check} -BuildRequires: fakechroot -%endif - -# XXX generally assumed to be installed but make it explicit as rpm -# is a bit special... -BuildRequires: redhat-rpm-config -BuildRequires: gawk -BuildRequires: elfutils-devel >= 0.112 -BuildRequires: elfutils-libelf-devel -BuildRequires: readline-devel zlib-devel -BuildRequires: nss-devel -BuildRequires: nss-softokn-freebl-devel -# The popt version here just documents an older known-good version -BuildRequires: popt-devel >= 1.10.2 -BuildRequires: file-devel -BuildRequires: gettext-devel -BuildRequires: libselinux-devel -# XXX semanage is only used by sepolicy plugin but configure requires it... -BuildRequires: libsemanage-devel -BuildRequires: ncurses-devel -BuildRequires: bzip2-devel >= 0.9.0c-2 -BuildRequires: python-devel >= 2.6 -BuildRequires: lua-devel >= 5.1 -BuildRequires: libcap-devel -BuildRequires: libacl-devel -%if ! %{without xz} -BuildRequires: xz-devel >= 4.999.8 -%endif -%if %{with plugins} -# Required for systemd-inhibit plugin -BuildRequires: dbus-devel -%endif - -# Only required by sepdebugcrcfix patch -BuildRequires: binutils-devel -# Also required as sepdebugcrcfix messes with all the make files -BuildRequires: automake - -BuildRequires: libtool -BuildRequires: autoconf -BuildRequires: automake -BuildRequires: gettext-devel -BuildRequires: openssl-devel -BuildRequires: libattr-devel -BuildRequires: nss-devel -BuildRequires: file-devel -BuildRequires: libarchive-devel -BuildRequires: popt-devel -BuildRequires: ima-evm-utils -BuildRequires: ima-evm-utils-devel -BuildRequires: lua-devel -BuildRequires: zlib-devel -BuildRequires: nspr-devel -BuildRequires: libdb-devel - - -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root - -%description -The RPM Package Manager (RPM) is a powerful command line driven -package management system capable of installing, uninstalling, -verifying, querying, and updating software packages. Each software -package consists of an archive of files along with information about -the package like its version, a description, etc. - -%package libs -Summary: Libraries for manipulating RPM packages -Group: Development/Libraries -License: GPLv2+ and LGPLv2+ with exceptions -Requires: rpm = %{version}-%{release} -Provides: librpm.so.3()(64bit) librpmio.so.3()(64bit) -# librpm uses cap_compare, introduced sometimes between libcap 2.10 and 2.16. -# A manual require is needed, see #505596 -Requires: libcap%{_isa} >= 2.16 - -%description libs -This package contains the RPM shared libraries. - -%package build-libs -Summary: Libraries for building and signing RPM packages -Group: Development/Libraries -License: GPLv2+ and LGPLv2+ with exceptions -Requires: rpm-libs%{_isa} = %{version}-%{release} -Requires: %{_bindir}/gpg2 - -%description build-libs -This package contains the RPM shared libraries for building and signing -packages. - -%package devel -Summary: Development files for manipulating RPM packages -Group: Development/Libraries -License: GPLv2+ and LGPLv2+ with exceptions -Requires: rpm = %{version}-%{release} -Requires: rpm-libs%{_isa} = %{version}-%{release} -Requires: rpm-build-libs%{_isa} = %{version}-%{release} -Requires: popt-devel%{_isa} - -%description devel -This package contains the RPM C library and header files. These -development files will simplify the process of writing programs that -manipulate RPM packages and databases. These files are intended to -simplify the process of creating graphical package managers or any -other tools that need an intimate knowledge of RPM packages in order -to function. - -This package should be installed if you want to develop programs that -will manipulate RPM packages and databases. - -%package build -Summary: Scripts and executable programs used to build packages -Group: Development/Tools -Requires: rpm = %{version}-%{release} -Requires: elfutils >= 0.128 binutils -Requires: findutils sed grep gawk diffutils file patch >= 2.5 -Requires: unzip gzip bzip2 cpio xz tar -Requires: pkgconfig >= 1:0.24 -Requires: /usr/bin/gdb-add-index -# Technically rpmbuild doesn't require any external configuration, but -# creating distro-compatible packages does. To make the common case -# "just work" while allowing for alternatives, depend on a virtual -# provide, typically coming from redhat-rpm-config. -Requires: system-rpm-config -Conflicts: ocaml-runtime < 3.11.1-7 - -%description build -The rpm-build package contains the scripts and executable programs -that are used to build packages using the RPM Package Manager. - -%package sign -Summary: Package signing support -Group: System Environment/Base -Requires: rpm-build-libs%{_isa} = %{version}-%{release} - -%description sign -This package contains support for digitally signing RPM packages. - -%package python -Summary: Python bindings for apps which will manipulate RPM packages -Group: Development/Libraries -Requires: rpm = %{version}-%{release} - -%description python -The rpm-python package contains a module that permits applications -written in the Python programming language to use the interface -supplied by RPM Package Manager libraries. - -This package should be installed if you want to develop Python -programs that will manipulate RPM packages and databases. - -%package apidocs -Summary: API documentation for RPM libraries -Group: Documentation -BuildArch: noarch - -%description apidocs -This package contains API documentation for developing applications -that will manipulate RPM packages and databases. - -%package cron -Summary: Create daily logs of installed packages. -Group: System Environment/Base -BuildArch: noarch -Requires: crontabs logrotate rpm = %{version}-%{release} - -%description cron -This package contains a cron job which creates daily logs of installed -packages on a system. - -%if %{with plugins} -%package plugin-systemd-inhibit -Summary: Rpm plugin for systemd inhibit functionality -Group: System Environment/Base -Requires: rpm-libs%{_isa} = %{version}-%{release} - -%description plugin-systemd-inhibit -%{summary} -%endif - - -%prep -%setup -q -n %{name}-%{srcver} %{?with_int_bdb:-a 1} - -%patch1 -p1 - -%if %{with int_bdb} -ln -s db-%{bdbver} db -%endif - -%build - -# Using configure macro has some unwanted side-effects on rpm platform -# setup, use the old-fashioned way for now only defining minimal paths. -./autogen.sh \ - --prefix=%{_usr} \ - --sysconfdir=%{_sysconfdir} \ - --localstatedir=%{_var} \ - --sharedstatedir=%{_var}/lib \ - --libdir=%{_libdir} \ - %{!?with_int_bdb: --with-external-db} \ - %{!?with_plugins: --disable-plugins} \ - --with-lua \ - --with-cap \ - --with-acl \ - --enable-python \ - --with-vendor=redhat \ - --with-imaevm - -make %{?_smp_mflags} -ls %{_libdir} - -%install -rm -rf $RPM_BUILD_ROOT - -make DESTDIR="$RPM_BUILD_ROOT" install - -ln -s ./librpmio.so.8 ${RPM_BUILD_ROOT}%{_libdir}/librpmio.so.3 -ln -s ./librpm.so.8 ${RPM_BUILD_ROOT}%{_libdir}/librpm.so.3 -ls -l ${RPM_BUILD_ROOT}%{_libdir} - -# remove all plugins except systemd_inhibit -rm -f ${RPM_BUILD_ROOT}%{_libdir}/rpm-plugins/{exec.so,sepolicy.so} - -# Save list of packages through cron -mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/cron.daily -install -m 755 scripts/rpm.daily ${RPM_BUILD_ROOT}%{_sysconfdir}/cron.daily/rpm - -mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d -install -m 644 scripts/rpm.log ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/rpm - -mkdir -p ${RPM_BUILD_ROOT}/usr/lib/tmpfiles.d -echo "r /var/lib/rpm/__db.*" > ${RPM_BUILD_ROOT}/usr/lib/tmpfiles.d/rpm.conf - -mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/rpm -mkdir -p $RPM_BUILD_ROOT%{rpmhome}/macros.d - -mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/bash-completion/completions/rpm - - -mkdir -p $RPM_BUILD_ROOT/var/lib/rpm -for dbi in \ - Basenames Conflictname Dirnames Group Installtid Name Obsoletename \ - Packages Providename Requirename Triggername Sha1header Sigmd5 \ - __db.001 __db.002 __db.003 __db.004 __db.005 __db.006 __db.007 \ - __db.008 __db.009 -do - touch $RPM_BUILD_ROOT/var/lib/rpm/$dbi -done - -# plant links to relevant db utils as rpmdb_foo for documention compatibility -%if %{without int_bdb} -for dbutil in dump load recover stat upgrade verify -do - ln -s ../../bin/%{dbprefix}_${dbutil} $RPM_BUILD_ROOT/%{rpmhome}/rpmdb_${dbutil} -done -%endif - -%find_lang %{name} - -find $RPM_BUILD_ROOT -name "*.la"|xargs rm -f - -%clean -rm -rf $RPM_BUILD_ROOT - -%if %{with check} -%check -make check -[ "$(ls -A tests/rpmtests.dir)" ] && cat tests/rpmtests.log -%endif - -%post libs -p /sbin/ldconfig -%postun libs -p /sbin/ldconfig - -%post build-libs -p /sbin/ldconfig -%postun build-libs -p /sbin/ldconfig - -%posttrans -# XXX this is klunky and ugly, rpm itself should handle this -dbstat=/usr/lib/rpm/rpmdb_stat -if [ -x "$dbstat" ]; then - if "$dbstat" -e -h /var/lib/rpm 2>&1 | grep -q "doesn't match library version \| Invalid argument"; then - rm -f /var/lib/rpm/__db.* - fi -fi -exit 0 - -%files -f %{name}.lang -%defattr(-,root,root,-) - -/usr/lib/tmpfiles.d/rpm.conf -%dir %{_sysconfdir}/rpm - -%attr(0755, root, root) %dir /var/lib/rpm -%attr(0644, root, root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/lib/rpm/* - -%{_bindir}/rpm -%{_bindir}/rpm2cpio -%{_bindir}/rpmdb -%{_bindir}/rpmkeys -%{_bindir}/rpmquery -%{_bindir}/rpmverify - -%{_mandir}/man8/rpm.8* -%{_mandir}/man8/rpmdb.8* -%{_mandir}/man8/rpmkeys.8* -%{_mandir}/man8/rpm2cpio.8* - -%{_datadir}/bash-completion/completions/rpm - -# XXX this places translated manuals to wrong package wrt eg rpmbuild -%lang(fr) %{_mandir}/fr/man[18]/*.[18]* -%lang(ko) %{_mandir}/ko/man[18]/*.[18]* -%lang(ja) %{_mandir}/ja/man[18]/*.[18]* -%lang(pl) %{_mandir}/pl/man[18]/*.[18]* -%lang(ru) %{_mandir}/ru/man[18]/*.[18]* -%lang(sk) %{_mandir}/sk/man[18]/*.[18]* - -%attr(0755, root, root) %dir %{rpmhome} -%{rpmhome}/macros -%{rpmhome}/macros.d -%{rpmhome}/rpmpopt* -%{rpmhome}/rpmrc - -%{rpmhome}/rpmdb_* -%{rpmhome}/rpm.daily -%{rpmhome}/rpm.log -%{rpmhome}/rpm.supp -%{rpmhome}/rpm2cpio.sh -%{rpmhome}/tgpg - -%{rpmhome}/platform - -%files libs -%defattr(-,root,root) -%{_libdir}/librpmio.so.* -%{_libdir}/librpm.so.* - -%if %{with plugins} -%files plugin-systemd-inhibit -%{_libdir}/rpm-plugins -%endif - -%files build-libs -%defattr(-,root,root) -%{_libdir}/librpmbuild.so.* -%{_libdir}/librpmsign.so.* - -%files build -%defattr(-,root,root) -%{_bindir}/rpmbuild -%{_bindir}/gendiff -%{_bindir}/rpmspec -%{_bindir}/rpm2archive - -%{_mandir}/man1/gendiff.1* -%{_mandir}/man8/rpmbuild.8* -%{_mandir}/man8/rpmdeps.8* -%{_mandir}/man8/rpmspec.8* - -%{rpmhome}/brp-* -%{rpmhome}/check-* -%{rpmhome}/debugedit -%{rpmhome}/sepdebugcrcfix -%{rpmhome}/find-debuginfo.sh -%{rpmhome}/find-lang.sh -%{rpmhome}/*provides* -%{rpmhome}/*requires* -%{rpmhome}/*deps* -%{rpmhome}/*.prov -%{rpmhome}/*.req -%{rpmhome}/config.* -%{rpmhome}/mkinstalldirs -%{rpmhome}/macros.p* -%{rpmhome}/fileattrs - -%files sign -%defattr(-,root,root) -%{_bindir}/rpmsign -%{_mandir}/man8/rpmsign.8* - -%files python -%defattr(-,root,root) -%{python_sitearch}/rpm - -%files devel -%defattr(-,root,root) -%{_mandir}/man8/* -%{_bindir}/rpmgraph -%{_libdir}/librp*[a-z].so -%{_libdir}/pkgconfig/rpm.pc -%{_includedir}/rpm - -%files cron -%defattr(-,root,root) -%{_sysconfdir}/cron.daily/rpm -%config(noreplace) %{_sysconfdir}/logrotate.d/rpm - -%files apidocs -%defattr(-,root,root) - -%changelog -* Tue Jul 26 2016 Florian Festi - 4.11.3-21 -- Fix --sign for rpmbuild with --quiet (#1293483) -- Adjusted fix for --noplugins option (#1264031) - -* Thu Jul 14 2016 Florian Festi - 4.11.3-20 -- Removed broken fix for #1293483 - -* Thu Apr 21 2016 Florian Festi - 4.11.3-18 -- Fixed failing upstream test 257 on big endian systems (#1264463) -- Fixed problems with perl.req script (#1320214, #1275551) -- Fixed race condition in rpm file deployment when updating an existing file - (#1320181) -- Move bdb warnings from stdin to stdout (#1297793) -- Add --justdb to the erase section of the man page, too (#1310561) -- Backport support for multi threaded xz compression (#1278924) -- Update config.guess (#1291377) -- Add --noplugins option (#1264031) -- Overwrite a file if it is not marked as config any more (#1290463) -- Add man page for systemd-inhibit plugin (#1265578) - -* Tue Dec 01 2015 Pavol Babincak - 4.11.3-17.2 -- Remove one more %%{_isa} from BuildRequires (#1286805) - -* Tue Dec 01 2015 Pavol Babincak - 4.11.3-17.1 -- Remove %%{_isa} from BuildRequires (#1286805) - -* Fri Sep 11 2015 Florian Festi - 4.11.3-17 -- Detect plugins by DSO file name. Needed for #1160401 - -* Thu Aug 20 2015 Florian Festi - 4.11.3-16 -- Add fix for the fix for #1225118 - -* Wed Aug 19 2015 Florian Festi - 4.11.3-15 -- Remove incompatible check for multiple separators in version or release - (#1250538) - -* Wed Aug 19 2015 Florian Festi - 4.11.3-14 -- Enable plugin system but disable collection plugins. Needed for - systemd-inhibit plugin (#1160401) -- Move systemd-inhibit plugin into its own sub packge - -* Tue Jul 21 2015 Florian Festi - 4.11.3-13 -- Don't show error message if log function fails because of broken pipe - (#1244687) - -* Wed Jul 08 2015 Florian Festi - 4.11.3-12 -- Dont eat newlines on parametrized macro invocations (#1225118) - -* Tue Jul 07 2015 Florian Festi - 4.11.3-11 -- Back port rpm-plugin-systemd-inhibit (#1160401) - -* Thu Jul 02 2015 Florian Festi - 4.11.3-10 -- Fix stripping and debuginfo creation of binaries for changed file output. - (#1206312) - -* Tue Jun 30 2015 Florian Festi - 4.11.3-9 -- Fix color skipping of multiple files with the same content (#1170119) - -* Mon Jun 29 2015 Florian Festi - 4.11.3-8 -- Add %make_build macro for hiding parallel-build magic from specs (#1221357) - -* Fri Jun 26 2015 Florian Festi - 4.11.3-7 -- Add deprecation warning to description of --addsign (#1165414) - -* Fri Jun 26 2015 Florian Festi - 4.11.3-6 -- Add bash completion (#1183032) - -* Fri Jun 26 2015 Florian Festi - 4.11.3-5 -- Fix producing bogus dependencies by perl.req (#1191121) - -* Thu Jun 25 2015 Florian Festi - 4.11.3-4 -- Clearly state that --setperms and --setugids are mutually exclusive - (#1192000) - -* Thu Jun 25 2015 Florian Festi - 4.11.3-3 -- If an error occurs during printing log message then print the error on stderr - (#1202753) - -* Thu Jun 25 2015 Florian Festi - 4.11.3-2 -- File mode from %%defattr is applied to directories with warning (#1204674) - -* Fri Jun 19 2015 Florian Festi - 4.11.3-1 -- Rebase to upstream release 4.11.3 (#1145970) - -* Mon Jan 12 2015 Florian Festi - 4.11.1-25 -- Check for malicious CPIO file name size (#1163061) -- Fixes CVE-2014-8118 - -* Thu Nov 13 2014 Florian Festi - 4.11.1-24 -- Fix race condidition where unchecked data is exposed in the file system - (#1163061) - -* Fri Oct 10 2014 Panu matilainen - 4.11.1-23 -- Really fix brp-python-bytecompile (#1083052) - -* Mon Sep 29 2014 Panu matilainen - 4.11.1-22 -- Actually apply the dirlink patch, doh. - -* Mon Sep 29 2014 Panu matilainen - 4.11.1-21 -- Handle directory replaced with a symlink to one in verify (#1101861) - -* Thu Sep 25 2014 Panu matilainen - 4.11.1-20 -- Byte-compile versioned python libdirs in non-root prefix too (#1083052) - -* Fri Apr 25 2014 Aldy Hernandez - 4.11.1-19 -- Handle ppc64le in libtool.m4. - -* Fri Apr 25 2014 Aldy Hernandez - 4.11.1-18 -- Import from rawhide: - * Wed Jan 15 2013 Panu Matilainen - 4.11.1-12 - - include ppc64le in %%power64 macro (#1052930) - -* Fri Apr 25 2014 Aldy Hernandez - 4.11.1-17 -- Import from rawhide: - * Tue Oct 01 2013 Panu Matilainen - 4.11.1-8 - - add support for ppc64le architecture - -* Mon Mar 24 2014 Panu Matilainen - 4.11.1-16 -- Fully reset file actions between rpmtsRun() calls (#1076552) - -* Wed Feb 19 2014 Panu Matilainen - 4.11.1-15 -- Make room for SHA224 in digest bundles (#1066494) - -* Tue Feb 18 2014 Panu Matilainen - 4.11.1-14 -- Fix incorrect header sort state on export bloating headers (#1061730) - -* Fri Jan 24 2014 Daniel Mach - 4.11.1-13 -- Mass rebuild 2014-01-24 - -* Thu Jan 16 2014 Panu Matilainen - 4.11.1-12 -- Make rpm-build depend on virtual system-rpm-config provide (#1048514) - -* Thu Jan 16 2014 Panu Matilainen - 4.11.1-11 -- Fix minidebuginfo generation on ppc64 (#1052415) - -* Fri Dec 27 2013 Daniel Mach - 4.11.1-10 -- Mass rebuild 2013-12-27 - -* Mon Sep 30 2013 Florian Festi - 4.11.1-9 - - Fix byteorder for 64 bit tags on big endian machines (#1012946) - - Better RPMSIGTAG_SIZE vs PMSIGTAG_LONGSIZE detection (#1012595) - -* Wed Sep 11 2013 Panu Matilainen - 4.11.1-8 -- Fix segfault on empty -p scriptlet body (#1004062) -- Add missing dependency on tar to rpm-build (#986539) - -* Thu Aug 29 2013 Panu Matilainen - 4.11.1-7 -- Fix relocation regression wrt unowned directories (#1001553) -- Fix build-time double-free wrt %%caps() on wildcard file entry (#1002089) -- Fix source URL in spec - -* Fri Aug 02 2013 Florian Festi - 4.11.1-6 - - Disable test suite as fakechroot is not longer in the distribution - -* Fri Aug 02 2013 Florian Festi - 4.11.1-5 -- Revert: Clarify man page about mutually exclusive options (#969505) -- Revert: Move translated rpmgraph man pages to devel sub package (#948861) - -* Thu Aug 01 2013 Florian Festi - 4.11.1-4 -- Clarify man page about mutually exclusive options (#969505) -- Move translated rpmgraph man pages to devel sub package (#948861) - -* Tue Jul 30 2013 Florian Festi - 4.11.1-3 -- Do not filter out lib64.* dependencies (#988373) - -* Fri Jul 05 2013 Panu Matilainen - 4.11.1-2 -- filter out non-library soname dependencies by default - -* Fri Jul 05 2013 Panu Matilainen - 4.11.1-1 -- update to 4.11.1 (http://rpm.org/wiki/Releases/4.11.1) -- drop upstreamed patches -- fix .gnu_debuglink CRC32 after dwz, buildrequire binutils-devel (#971119) -- ensure relocatable packages always get install-prefix(es) set (#979443) - -* Tue May 28 2013 Panu Matilainen - 4.11.0.1-2 -- check for stale locks when opening write-cursors (#860500, #962750...) -- serialize BDB environment open/close (#924417) - -* Mon Feb 04 2013 Panu Matilainen - 4.11.0.1-1 -- update to 4.11.0.1 (http://rpm.org/wiki/Releases/4.11.0.1) - -* Tue Jan 29 2013 Panu Matilainen - 4.11.0-0.beta1.3 -- revert yesterdays ghost-fix, it eats rpmdb's on upgrades - -* Mon Jan 28 2013 Panu Matilainen - 4.11.0-0.beta1.2 -- armv7hl and armv7hnl should not have -mthumb (#901901) -- fix duplicate directory ownership between rpm and rpm-build (#894201) -- fix regression on paths shared between a real file/dir and a ghost - -* Mon Dec 10 2012 Panu Matilainen - 4.11.0-0.beta1.1 -- update to 4.11 beta - -* Mon Nov 19 2012 Panu Matilainen - 4.10.90-0.git11989.3 -- package /usr/lib/rpm/macros.d directory (related to #846679) -- fixup a bunch of old incorrect dates in spec changelog - -* Sat Nov 17 2012 Panu Matilainen - 4.10.90-0.git11989.2 -- fix double-free on %caps in spec (#877512) - -* Thu Nov 15 2012 Panu Matilainen - 4.10.90-0.git11989.1 -- update to 4.11 (http://rpm.org/wiki/Releases/4.11.0) post-alpha snapshot -- drop/adjust patches as necessary - -* Thu Oct 11 2012 Panu Matilainen - 4.10.1-3 -- fix noarch __isa_* macro filter in installplatform (#865436) - -* Wed Oct 10 2012 Panu Matilainen - 4.10.1-2 -- account for intentionally skipped files when verifying hardlinks (#864622) - -* Wed Oct 03 2012 Panu Matilainen - 4.10.1-1 -- update to 4.10.1 ((http://rpm.org/wiki/Releases/4.10.1) - -* Mon Jul 30 2012 Panu Matilainen - 4.10.0-6 -- move our tmpfiles config to more politically correct location (#840192) - -* Sat Jul 21 2012 Fedora Release Engineering - 4.10.0-5.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Mon Jul 02 2012 Panu Matilainen - 4.10.0-5 -- force _host_vendor to redhat to better match toolchain etc (#485203) - -* Thu Jun 28 2012 Panu Matilainen - 4.10.0-4 -- merge ppc64p7 related fixes that only went into f17 (#835978) - -* Wed Jun 27 2012 Panu Matilainen - 4.10.0-3 -- add support for minidebuginfo generation (#834073) - -* Mon Jun 25 2012 Panu Matilainen - 4.10.0-2 -- add dwarf compression support to debuginfo generation (#833311) - -* Thu May 24 2012 Panu Matilainen - 4.10.0-1 -- update to 4.10.0 final - -* Mon Apr 23 2012 Panu Matilainen - 4.10.0-0.beta1.1 -- update to 4.10.0-beta1 - -* Mon Apr 16 2012 Panu Matilainen - 4.9.90-0.git11536.1 -- newer git snapshot (#809402, #808750) -- adjust posttrans script wrt bdb string change (#803866, #805613) - -* Thu Apr 05 2012 Panu Matilainen - 4.9.90-0.git11519.1 -- newer git snapshot to keep patch-count down -- fixes CVE-2012-0060, CVE-2012-0061 and CVE-2012-0815 -- fix obsoletes in installing set getting matched on provides (#810077) - -* Wed Apr 04 2012 Jindrich Novy - 4.9.90-0.git11505.12 -- rebuild against new libdb - -* Tue Apr 03 2012 Jindrich Novy - 4.9.90-0.git11505.11 -- build with internal libdb to allow libdb build with higher soname - -* Fri Mar 30 2012 Panu Matilainen - 4.9.90-0.git11505.10 -- fix base arch macro generation (#808250) - -* Thu Mar 29 2012 Panu Matilainen - 4.9.90-0.git11505.9 -- accept files as command line arguments to rpmdeps again (#807767) - -* Mon Mar 26 2012 Panu Matilainen - 4.9.90-0.git11505.8 -- remove fake library provide hacks now that deltarpm got rebuilt - -* Fri Mar 23 2012 Panu Matilainen - 4.9.90-0.git11505.7 -- fix header data length calculation breakage - -* Thu Mar 22 2012 Panu Matilainen - 4.9.90-0.git11505.6 -- fix keyid size bogosity causing breakage on 32bit systems - -* Wed Mar 21 2012 Panu Matilainen - 4.9.90-0.git11505.5 -- add temporary fake library provides to get around deltarpm "bootstrap" - dependency (yes its dirty) - -* Wed Mar 21 2012 Panu Matilainen - 4.9.90-0.git11505.4 -- fix overzealous sanity check breaking posttrans scripts - -* Tue Mar 20 2012 Panu Matilainen - 4.9.90-0.git11505.3 -- fix bad interaction with yum's test-transaction and pretrans scripts - -* Tue Mar 20 2012 Jindrich Novy - 4.9.90-0.git11505.2 -- rebuild - -* Tue Mar 20 2012 Panu Matilainen - 4.9.90-0.git11505.1 -- update to 4.10.0 alpha (http://rpm.org/wiki/Releases/4.10.0) -- drop/adjust patches as necessary - -* Wed Mar 07 2012 Panu Matilainen - 4.9.1.2-14 -- fix backport thinko in the exclude patch - -* Wed Mar 07 2012 Panu Matilainen - 4.9.1.2-13 -- fix memory corruption on rpmdb size estimation (#766260) -- fix couple of memleaks in python bindings (#782147) -- fix regression in verify output formatting (#797964) -- dont process spec include in false branch of if (#782970) -- only warn on missing excluded files on build (#745629) -- dont free up file info sets on test transactions - -* Thu Feb 09 2012 Panu Matilainen - 4.9.1.2-12 -- switch back to smaller BDB cache default (#752897) - -* Sun Jan 15 2012 Dennis Gilmore - 4.9.1.2-11 -- always apply arm hfp macros, conditionally apply the logic to detect hfp - -* Tue Jan 10 2012 Panu Matilainen - 4.9.1.2-10 -- adjust perl and python detection rules for libmagic change (#772699) - -* Mon Jan 09 2012 Jindrich Novy - 4.9.1.2-9 -- recognize perl script as perl code (#772632) - -* Tue Dec 20 2011 Kay Sievers - 4.9.1.2-8 -- add temporary rpmlib patch to support filesystem transition - https://fedoraproject.org/wiki/Features/UsrMove - -* Fri Dec 02 2011 Panu Matilainen - 4.9.1.2-7 -- switch over to libdb, aka Berkeley DB 5.x - -* Thu Dec 01 2011 Panu Matilainen - 4.9.1.2-6 -- fix classification of ELF binaries with setuid/setgid bit (#758251) - -* Fri Nov 25 2011 Panu Matilainen - 4.9.1.2-5 -- adjust font detection rules for libmagic change (#757105) - -* Wed Nov 09 2011 Dennis Gilmore - 4.9.1.2-4 -- conditionally apply arm patch for hardfp on all arches but arm softfp ones - -* Fri Oct 28 2011 Panu Matilainen - 4.9.1.2-3 -- adjust db util prefix & dependency due to #749293 -- warn but dont fail the build if STABS encountered by debugedit (#725378) - -* Wed Oct 12 2011 Panu Matilainen - 4.9.1.2-2 -- try teaching find-lang about the new gnome help layout (#736523) - -* Thu Sep 29 2011 Panu Matilainen - 4.9.1.2-1 -- update to 4.9.1.2 (CVE-2011-3378) -- drop upstreamed rpmdb signal patch - -* Mon Sep 19 2011 Panu Matilainen - 4.9.1.1-3 -- fix signal blocking/unblocking regression on rpmdb open/close (#739492) - -* Mon Aug 08 2011 Adam Jackson 4.9.1.1-2 -- Add RPM_LD_FLAGS to build environment (#728974) - -* Tue Aug 02 2011 Panu Matilainen - 4.9.1.1-1 -- update to 4.9.1.1 - -* Tue Jul 19 2011 Panu Matilainen - 4.9.1-2 -- fix recursion of directories with trailing slash in file list (#722474) - -* Fri Jul 15 2011 Panu Matilainen - 4.9.1-1 -- update to 4.9.1 (http://rpm.org/wiki/Releases/4.9.1) -- drop no longer needed patches - -* Thu Jun 16 2011 Panu Matilainen - 4.9.0-10 -- rebuild to fix a missing interpreter dependency due to bug #712251 - -* Fri Jun 10 2011 Panu Matilainen - 4.9.0-9 -- fix crash if prep or changelog section in spec is empty (#706959) -- fix crash on macro which undefines itself -- fix script dependency generation with file 5.07 string changes (#712251) - -* Thu May 26 2011 Panu Matilainen - 4.9.0-8 -- add dwarf-4 support to debugedit (#707677) -- generate build-id symlinks for all filenames sharing a build-id (#641377) - -* Thu Apr 07 2011 Panu Matilainen - 4.9.0-7 -- add missing ldconfig calls to build-libs sub-package -- fix source url - -* Thu Apr 07 2011 Panu Matilainen - 4.9.0-6 -- revert the spec query change (#693338) for now, it breaks fedpkg - -* Tue Apr 05 2011 Panu Matilainen - 4.9.0-5 -- verify some properties of replaced and wrong-colored files (#528383) -- only list packages that would be generated on spec query (#693338) -- preferred color packages should be erased last (#680261) -- fix leaks when freeing a populated transaction set -- take file state into account for file dependencies - -* Tue Mar 22 2011 Panu Matilainen - 4.9.0-4 -- fix classification of elf executables with sticky bit set (#689182) - -* Wed Mar 16 2011 Jindirch Novy - 4.9.0-3 -- fix crash in package manifest check (#688091) - -* Fri Mar 04 2011 Panu Matilainen - 4.9.0-2 -- fix duplicate rpmsign binary in rpm main package dragging in build-libs - -* Wed Mar 02 2011 Panu Matilainen - 4.9.0-1 -- update to 4.9.0 final -- drop upstreamed patches - -* Tue Mar 01 2011 Panu Matilainen - 4.9.0-0.rc1.4 -- spec cosmetics clean up extra whitespace + group more logically -- wipe out BDB environment at boot via tmpfiles.d - -* Mon Feb 21 2011 Panu Matilainen - 4.9.0-0.rc1.3 -- fix erronous double cursor open, causing yum reinstall hang (#678644) - -* Mon Feb 21 2011 Panu Matilainen - 4.9.0-0.rc1.2 -- fix broken logic in depgen collector, hopefully curing #675002 - -* Tue Feb 15 2011 Panu Matilainen - 4.9.0-0.rc1.1 -- update to 4.9.0-rc1 -- drop upstream patches -- nss packaging has changed, buildrequire nss-softokn-freebl-devel - -* Wed Feb 09 2011 Fedora Release Engineering - 4.9.0-0.beta1.7.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Mon Feb 07 2011 Panu Matilainen - 4.9.0-0.beta1.7 -- fix segfault when building more than one package at a time (#675565) - -* Sun Feb 06 2011 Panu Matilainen - 4.9.0-0.beta1.6 -- adjust ocaml rule for libmagic string change - -* Mon Jan 31 2011 Panu Matilainen - 4.9.0-0.beta1.5 -- dont try to remove environment files if private env used (related to #671200) -- unbreak mono dependency extraction (#673663) -- complain instead of silent abort if cwd is not readable (#672576) - -* Tue Jan 25 2011 Panu Matilainen - 4.9.0-0.beta1.4 -- add support for Requires(posttrans) dependencies - -* Fri Jan 21 2011 Panu Matilainen - 4.9.0-0.beta1.3 -- avoid division by zero in rpmdb size calculation (#671056) -- fix secondary index iteration returing duplicate at end (#671149) -- fix rebuilddb creating duplicate indexes for first header - -* Fri Jan 21 2011 Panu Matilainen - 4.9.0-0.beta1.2 -- permit queries from rpmdb on read-only media (#671200) - -* Tue Jan 18 2011 Panu Matilainen - 4.9.0-0.beta1.1 -- rpm 4.9.0-beta1 (http://rpm.org/wiki/Releases/4.9.0) - - drop no longer needed patches - - adjust requires + buildrequires to match current needs - - adjust rpmdb index ghosts to match the new release - - split librpmbuild and librpmsign to a separate rpm-build-libs package - - split rpmsign to its own package to allow signing without all the build goo - - build-conditionalize plugins, disabled for now - - gstreamer and printer dependency generation moving out - - handle .so symlink dependencies with fileattrs - - use gnupg2 for signing as that's what typically installed by default - -* Tue Jan 18 2011 Panu Matilainen - 4.8.1-7 -- bunch of spec tweaks, cleanups + corrections: - - shorten rpm-build filelist a bit with glob use, reorder for saner grouping - - missing isa in popt version dependency - - only add rpmdb_foo symlinks for actually relevant db_* utils - - drop no longer necessary file-devel dependency from rpm-devel - - drop sqlite backend build-conditional - - preliminaries for moving from db4 to libdb -- use gnupg2 for signing as that's more likely to be installed by default - -* Mon Oct 25 2010 Jindrich Novy - 4.8.1-6 -- rebuild with new xz-5.0.0 - -* Tue Aug 10 2010 Panu Matilainen - 4.8.1-5 -- create gdb index on debuginfo generation (#617166) -- rpm-build now requires /usr/bin/gdb-add-index for consistent index creation -- include COPYING in -apidocs for licensing guidelines compliance - -* Thu Jul 22 2010 David Malcolm - 4.8.1-4 -- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild - -* Fri Jul 02 2010 Panu Matilainen - 4.8.1-3 -- ugh, reversed condition braindamage in the font provide extractor "fix" - -* Wed Jun 30 2010 Panu Matilainen - 4.8.1-2 -- fix a potential getOutputFrom() error from font provide extraction -- debug-friendlier message to aid finding other similar cases (#565223) - -* Fri Jun 11 2010 Panu Matilainen - 4.8.1-1 -- update to 4.8.1 (http://rpm.org/wiki/Releases/4.8.1) -- drop no longer needed patches -- fix source url pointing to testing directory - -* Thu Jun 03 2010 Panu Matilainen - 4.8.0-19 -- also strip POSIX file capabilities from hardlinks on upgrade/erase (#598775) - -* Wed Jun 02 2010 Panu Matilainen - 4.8.0-18 -- remove s-bits on upgrade too (#598775) - -* Thu May 27 2010 Panu Matilainen - 4.8.0-17 -- fix segfault in spec parser (#597835) - -* Thu May 27 2010 Panu Matilainen - 4.8.0-16 -- adjust to new pkg-config behavior wrt private dependencies (#596433) -- rpm-build now requires pkgconfig >= 0.24 - -* Fri May 21 2010 Panu Matilainen - 4.8.0-15 -- handle non-existent dependency sets correctly in python (#593553) -- make find-lang look in all locale dirs (#584866) - -* Fri Apr 23 2010 Panu Matilainen - 4.8.0-14 -- lose dangling symlink to extinct (and useless) berkeley_db_svc (#585174) - -* Wed Mar 24 2010 Panu Matilainen - 4.8.0-13 -- fix python match iterator regression wrt boolean representation - -* Wed Mar 17 2010 Panu Matilainen - 4.8.0-12 -- unbreak find-lang --with-man from yesterdays braindamage - -* Tue Mar 16 2010 Panu Matilainen - 4.8.0-11 -- support single PPD providing driver for devices (#568351) -- merge the psdriver patch pile into one -- preserve empty lines in spec prep section (#573339) -- teach python bindings about RPMTRANS_FLAG_NOCONTEXTS (related to #573111) -- dont own localized man directories through find_lang (#569536) - -* Mon Feb 15 2010 Panu Matilainen - 4.8.0-10 -- drop bogus dependency on lzma, xz is used to handle the lzma format too - -* Fri Feb 05 2010 Panu Matilainen - 4.8.0-9 -- unbreak python(abi) requires generation (#562906) - -* Fri Feb 05 2010 Panu Matilainen - 4.8.0-8 -- more fixes to postscript provides extractor (#562228) -- avoid accessing unrelated mount points in disk space checking (#547548) -- fix disk space checking with erasures present in transaction (#561160) - -* Fri Feb 05 2010 Panu Matilainen - 4.8.0-7 -- couple of fixes to the postscript provides extractor (#538101) - -* Thu Feb 04 2010 Panu Matilainen - 4.8.0-6 -- extract provides for postscript printer drivers (#538101) - -* Wed Feb 03 2010 Panu Matilainen - 4.8.0-5 -- python byte-compilation fixes + improvements (#558997) - -* Sat Jan 30 2010 Panu Matilainen - 4.8.0-4 -- support parallel python versions in python dependency extractor (#532118) - -* Thu Jan 21 2010 Panu Matilainen - 4.8.0-3 -- fix segfault on failed url retrieval -- fix verification error code depending on verbosity level -- if anything in testsuite fails, dump out the log - -* Fri Jan 08 2010 Panu Matilainen - 4.8.0-2 -- put disttag back, accidentally nuked in 4.8.0 final update - -* Fri Jan 08 2010 Panu Matilainen - 4.8.0-1 -- update to 4.8.0 final (http://rpm.org/wiki/Releases/4.8.0) - -* Thu Jan 07 2010 Panu Matilainen - 4.8.0-0.beta1.6 -- pull out macro scoping "fix" for now, it breaks font package macros - -* Mon Jan 04 2010 Panu Matilainen - 4.8.0-0.beta1.5 -- always clear locally defined macros when they go out of scope - -* Thu Dec 17 2009 Panu Matilainen - 4.8.0-0.beta1.4 -- permit unexpanded macros when parsing spec (#547997) - -* Wed Dec 09 2009 Panu Matilainen - 4.8.0-0.beta1.3 -- fix a bunch of python refcount-errors causing major memory leaks - -* Mon Dec 07 2009 Panu Matilainen - 4.8.0-0.beta1.2 -- fix noise from python bytecompile on non-python packages (#539635) -- make all our -devel [build]requires isa-specific -- trim out superfluous -devel dependencies from rpm-devel - -* Mon Dec 07 2009 Panu Matilainen - 4.8.0-0.beta1.1 -- update to 4.8.0-beta1 (http://rpm.org/wiki/Releases/4.8.0) -- rpm-build conflicts with current ocaml-runtime - -* Fri Dec 04 2009 Panu Matilainen - 4.7.2-2 -- missing error exit code from signing password checking (#496754) -- dont fail build on unrecognized data files (#532489) -- dont try to parse subkeys and secret keys (#436812) -- fix chmod test on selinux, breaking %%{_fixperms} macro (#543035) - -* Wed Nov 25 2009 Panu Matilainen - 4.7.2-1 -- update to 4.7.2 (http://rpm.org/wiki/Releases/4.7.2) -- fixes #464750, #529214 - -* Wed Nov 18 2009 Jindrich Novy - 4.7.1-10 -- rebuild against BDB-4.8.24 - -* Wed Nov 18 2009 Jindrich Novy - 4.7.1-9 -- drop versioned dependency to BDB - -* Wed Oct 28 2009 Panu Matilainen - 4.7.1-8 -- support multiple python implementations in brp-python-bytecompile (#531117) -- make disk space problem reporting a bit saner (#517418) - -* Tue Oct 06 2009 Panu Matilainen - 4.7.1-7 -- fix build with BDB 4.8.x by removing XA "support" from BDB backend -- perl dep extractor heredoc parsing improvements (#524929) - -* Mon Sep 21 2009 Panu Matilainen - 4.7.1-6 -- use relative paths within db environment (related to #507309, #507309...) -- remove db environment on close in chrooted operation (related to above) -- initialize rpmlib earlier in rpm2cpio (#523260) -- fix file dependency tag extension formatting (#523282) - -* Tue Sep 15 2009 Panu Matilainen - 4.7.1-5 -- fix duplicate dependency filtering on build (#490378) -- permit absolute paths in file lists again (#521760) -- use permissions 444 for all .debug files (#522194) -- add support for optional bugurl tag (#512774) - -* Fri Aug 14 2009 Jesse Keating - 4.7.1-4 -- Patch to make geode appear as i686 (#517475) - -* Thu Aug 06 2009 Jindrich Novy - 4.7.1-3 -- rebuild because of the new xz - -* Sun Jul 26 2009 Fedora Release Engineering - 4.7.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild - -* Tue Jul 21 2009 Panu Matilainen - 4.7.1-1 -- update to 4.7.1 ((http://rpm.org/wiki/Releases/4.7.1) -- fix source url - -* Mon Jul 20 2009 Bill Nottingham - 4.7.0-9 -- enable XZ support - -* Thu Jun 18 2009 Panu Matilainen - 4.7.0-8 -- updated OSGi dependency extractor (#506471) -- fix segfault in symlink fingerprinting (#505777) -- fix invalid memory access causing bogus file dependency errors (#506323) - -* Tue Jun 16 2009 Panu Matilainen - 4.7.0-7 -- add dwarf-3 support to debugedit (#505774) - -* Fri Jun 12 2009 Stepan Kasal - 4.7.0-6 -- require libcap >= 2.16 (#505596) - -* Wed Jun 03 2009 Panu Matilainen - 4.7.0-5 -- don't mess up problem altNEVR in python ts.check() (#501068) -- fix hardlink size calculation on build (#503020) - -* Thu May 14 2009 Panu Matilainen - 4.7.0-4 -- split cron-job into a sub-package to avoid silly deps on core rpm (#500722) -- rpm requires coreutils but not in %%post -- build with libcap and libacl -- fix pgp pubkey signature tag parsing - -* Tue Apr 21 2009 Panu Matilainen - 4.7.0-3 -- couple of merge-review fixes (#226377) - - eliminate bogus leftover rpm:rpm rpmdb ownership - - unescaped macro in changelog -- fix find-lang --with-kde with KDE3 (#466009) -- switch back to default file digest algorithm - -* Fri Apr 17 2009 Panu Matilainen - 4.7.0-2 -- file classification tweaks for text files (#494817) - - disable libmagic text token checks, it's way too error-prone - - consistently classify all text as such and include description - -* Thu Apr 16 2009 Panu Matilainen - 4.7.0-1 -- update to 4.7.0 final (http://rpm.org/wiki/Releases/4.7.0) -- fixes #494049, #495429 -- dont permit test-suite failure anymore - -* Thu Apr 09 2009 Panu Matilainen - 4.7.0-0.rc1.1 -- update to 4.7.0-rc1 -- fixes #493157, #493777, #493696, #491388, #487597, #493162 - -* Fri Apr 03 2009 Panu Matilainen - 4.7.0-0.beta1.9 -- fix recorded file state of otherwise skipped files (#492947) -- compress ChangeLog, drop old CHANGES file (#492440) - -* Thu Apr 2 2009 Tom "spot" Callaway - 4.7.0-0.beta1.8 -- Fix sparcv9v and sparc64v targets - -* Tue Mar 24 2009 Panu Matilainen - 4.7.0-0.beta1.7 -- prefer more specific types over generic "text" in classification (#491349) - -* Mon Mar 23 2009 Panu Matilainen - 4.7.0-0.beta1.6 -- with the fd leak gone, let libmagic look into compressed files again (#491596) - -* Mon Mar 23 2009 Panu Matilainen - 4.7.0-0.beta1.5 -- fix font provide generation on filenames with whitespace (#491597) - -* Thu Mar 12 2009 Panu Matilainen - 4.7.0-0.beta1.4 -- handle RSA V4 signatures (#436812) -- add alpha arch ISA-bits -- enable internal testsuite on build - -* Mon Mar 09 2009 Panu Matilainen - 4.7.0-0.beta1.3 -- fix _install_langs behavior (#489235) -- fix recording of file states into rpmdb on install - -* Sun Mar 08 2009 Panu Matilainen - 4.7.0-0.beta1.2 -- load macros before creating directories on src.rpm install (#489104) - -* Fri Mar 06 2009 Panu Matilainen - 4.7.0-0.beta1.1 -- update to 4.7.0-beta1 (http://rpm.org/wiki/Releases/4.7.0) - -* Fri Feb 27 2009 Panu Matilainen - 4.6.0-11 -- build rpm itself with md5 file digests for now to ensure upgradability - -* Thu Feb 26 2009 Panu Matilainen - 4.6.0-10 -- handle NULL passed as EVR in rpmdsSingle() again (#485616) - -* Wed Feb 25 2009 Panu Matilainen - 4.6.0-9 -- pull out python byte-compile syntax check for now - -* Mon Feb 23 2009 Panu Matilainen - 4.6.0-8 -- make -apidocs sub-package noarch -- fix source URL - -* Sat Feb 21 2009 Panu Matilainen - 4.6.0-7 -- loosen up restrictions on dependency names (#455119) -- handle inter-dependent pkg-config files for requires too (#473814) -- error/warn on elf binaries in noarch package in build - -* Fri Feb 20 2009 Panu Matilainen - 4.6.0-6 -- error out on uncompilable python code (Tim Waugh) - -* Tue Feb 17 2009 Jindrich Novy - 4.6.0-5 -- remove two offending hunks from anyarch patch causing that - RPMTAG_BUILDARCHS isn't written to SRPMs - -* Mon Feb 16 2009 Jindrich Novy - 4.6.0-4 -- inherit group tag from the main package (#470714) -- ignore BuildArch tags for anyarch actions (#442105) -- don't check package BuildRequires when doing --rmsource (#452477) -- don't fail because of missing sources when only spec removal - is requested (#472427) - -* Mon Feb 16 2009 Panu Matilainen - 4.6.0-3 -- updated fontconfig provide script - fc-query does all the hard work now - -* Mon Feb 09 2009 Panu Matilainen - 4.6.0-2 -- build against db 4.7.x - -* Fri Feb 06 2009 Panu Matilainen - 4.6.0-1 -- update to 4.6.0 final -- revert libmagic looking into compressed files for now, breaks ooffice build - -* Fri Feb 06 2009 Panu Matilainen - 4.6.0-0.rc4.5 -- enable fontconfig provides generation - -* Thu Feb 05 2009 Panu Matilainen - 4.6.0-0.rc4.4 -- fixup rpm translation lookup to match Fedora specspo (#436941) - -* Wed Feb 04 2009 Panu Matilainen - 4.6.0-0.rc4.3 -- extract mimehandler provides from .desktop files -- preliminaries for extracting font provides (not enabled yet) -- dont classify font metrics data as fonts -- only run script dep extraction once per file, duh - -* Sat Jan 31 2009 Panu Matilainen - 4.6.0-0.rc4.2 -- change platform sharedstatedir to something more sensible (#185862) -- add rpmdb_foo links to db utils for documentation compatibility - -* Fri Jan 30 2009 Panu Matilainen - 4.6.0-0.rc4.1 -- update to 4.6.0-rc4 -- fixes #475582, #478907, #476737, #479869, #476201 - -* Fri Dec 12 2008 Panu Matilainen - 4.6.0-0.rc3.2 -- add back defaultdocdir patch which hadn't been applied on 4.6.x branch yet - -* Fri Dec 12 2008 Panu Matilainen - 4.6.0-0.rc3.1 -- add dist-tag, rebuild - -* Tue Dec 09 2008 Panu Matilainen - 4.6.0-0.rc3.1 -- update to rpm 4.6.0-rc3 -- fixes #475214, #474550, #473239 - -* Wed Dec 3 2008 Jeremy Katz - 4.6.0-0.rc2.9 -- I built into the wrong place - -* Wed Dec 3 2008 Jeremy Katz - 4.6.0-0.rc2.8 -- python 2.6 rebuild again - -* Wed Dec 03 2008 Panu Matilainen -- make rpm-build require pkgconfig (#473978) - -* Tue Dec 02 2008 Panu Matilainen -- fix pkg-config provide generation when pc's depend on each other (#473814) - -* Mon Dec 01 2008 Jindrich Novy -- include rpmfileutil.h from rpmmacro.h, unbreaks - net-snmp (#473420) - -* Sun Nov 30 2008 Panu Matilainen -- rebuild for python 2.6 - -* Sat Nov 29 2008 Panu Matilainen -- update to 4.6.0-rc2 -- fixes #471820, #473167, #469355, #468319, #472507, #247374, #426672, #444661 -- enable automatic generation of pkg-config and libtool dependencies #465377 - -* Fri Oct 31 2008 Panu Matilainen -- adjust find-debuginfo for "file" output change (#468129) - -* Tue Oct 28 2008 Panu Matilainen -- Florian's improved fingerprinting hash algorithm from upstream - -* Sat Oct 25 2008 Panu Matilainen -- Make noarch sub-packages actually work -- Fix defaultdocdir logic in installplatform to avoid hardwiring mandir - -* Fri Oct 24 2008 Jindrich Novy -- update compat-db dependencies (#459710) - -* Wed Oct 22 2008 Panu Matilainen -- never add identical NEVRA to transaction more than once (#467822) - -* Sun Oct 19 2008 Panu Matilainen -- permit tab as macro argument separator (#467567) - -* Thu Oct 16 2008 Panu Matilainen -- update to 4.6.0-rc1 -- fixes #465586, #466597, #465409, #216221, #466503, #466009, #463447... -- avoid using %%configure macro for now, it has unwanted side-effects on rpm - -* Wed Oct 01 2008 Panu Matilainen -- update to official 4.5.90 alpha tarball -- a big pile of misc bugfixes + translation updates -- isa-macro generation fix for ppc (#464754) -- avoid pulling in pile of perl dependencies for an unused script -- handle both "invalid argument" and clear env version mismatch on posttrans - -* Thu Sep 25 2008 Jindrich Novy -- don't treat %%patch numberless if -P parameter is present (#463942) - -* Thu Sep 11 2008 Panu Matilainen -- add hack to support extracting gstreamer plugin provides (#438225) -- fix another macro argument handling regression (#461180) - -* Thu Sep 11 2008 Jindrich Novy -- create directory structure for rpmbuild prior to build if it doesn't exist (#455387) -- create _topdir if it doesn't exist when installing SRPM -- don't generate broken cpio in case of hardlink pointing on softlink, - thanks to pixel@mandriva.com - -* Sat Sep 06 2008 Jindrich Novy -- fail hard if patch isn't found (#461347) - -* Mon Sep 01 2008 Jindrich Novy -- fix parsing of boolean expressions in spec (#456103) - (unbreaks pam, jpilot and maybe other builds) - -* Tue Aug 26 2008 Jindrich Novy -- add support for noarch subpackages -- fix segfault in case of insufficient disk space detected (#460146) - -* Wed Aug 13 2008 Panu Matilainen -- 4.5.90-0.git8461.2 -- fix archivesize tag generation on ppc (#458817) - -* Fri Aug 08 2008 Panu Matilainen -- 4.5.90-0.git8461.1 -- new snapshot from upstream -- fixes #68290, #455972, #446202, #453364, #456708, #456103, #456321, #456913, - #458260, #458261 -- partial fix for #457360 - -* Thu Jul 31 2008 Florian Festi -- 4.5.90-0.git8427.1 -- new snapshot from upstream - -* Thu Jul 31 2008 Florian Festi -- 4.5.90-0.git8426.10 -- rpm-4.5.90-posttrans.patch -- use header from rpmdb in posttrans to make anaconda happy - -* Sat Jul 19 2008 Panu Matilainen -- 4.5.90-0.git8426.9 -- fix regression in patch number handling (#455872) - -* Tue Jul 15 2008 Panu Matilainen -- 4.5.90-0.git8426.8 -- fix regression in macro argument handling (#455333) - -* Mon Jul 14 2008 Panu Matilainen -- 4.5.90-0.git8426.7 -- fix mono dependency extraction (adjust for libmagic string change) - -* Sat Jul 12 2008 Panu Matilainen -- 4.5.90-0.git8426.6 -- fix type mismatch causing funky breakage on ppc64 - -* Fri Jul 11 2008 Panu Matilainen -- 4.5.90-0.git8426.5 -- flip back to external bdb -- fix tab vs spaces complaints from rpmlint -- add dep for lzma and require unzip instead of zip in build (#310694) -- add pkgconfig dependency to rpm-devel -- drop ISA-dependencies for initial introduction -- new snapshot from upstream for documentation fixes - -* Thu Jul 10 2008 Panu Matilainen -- 4.5.90-0.git8424.4 -- handle int vs external db in posttrans too - -* Wed Jul 09 2008 Panu Matilainen -- 4.5.90-0.git8424.3 -- require curl as external url helper - -* Wed Jul 09 2008 Panu Matilainen -- 4.5.90-0.git8424.2 -- add support for building with or without internal db - -* Wed Jul 09 2008 Panu Matilainen -- rpm 4.5.90-0.git8424.1 (alpha snapshot) -- adjust to build against Berkeley DB 4.5.20 from compat-db for now -- add posttrans to clean up db environment mismatch after upgrade -- forward-port devel autodeps patch - -* Tue Jul 08 2008 Panu Matilainen -- adjust for rpmdb index name change -- drop unnecessary vendor-macro patch for real -- add ISA-dependencies among rpm subpackages -- make lzma and sqlite deps conditional and disabled by default for now - -* Fri Feb 01 2008 Panu Matilainen -- spec largely rewritten, truncating changelog diff --git a/base/rpm/patches/0001-sign-files-only.patch b/base/rpm/patches/0001-sign-files-only.patch deleted file mode 100644 index eb4dda746..000000000 --- a/base/rpm/patches/0001-sign-files-only.patch +++ /dev/null @@ -1,206 +0,0 @@ -diff --git a/rpmsign.c b/rpmsign.c -index ae86f66..8855e01 100644 ---- a/rpmsign.c -+++ b/rpmsign.c -@@ -19,7 +19,7 @@ enum modes { - static int mode = MODE_NONE; - - #ifdef WITH_IMAEVM --static int signfiles = 0, fskpass = 0; -+static int signfiles = 0, fskpass = 0, signpkg=0; - static char * fileSigningKey = NULL; - #endif - -@@ -97,9 +97,11 @@ static int doSign(poptContext optCon, struct rpmSignArgs *sargs) - int rc = EXIT_FAILURE; - char * name = rpmExpand("%{?_gpg_name}", NULL); - -- if (rstreq(name, "")) { -- fprintf(stderr, _("You must set \"%%_gpg_name\" in your macro file\n")); -- goto exit; -+ if (signpkg) { -+ if (rstreq(name, "")) { -+ fprintf(stderr, _("You must set \"%%_gpg_name\" in your macro file\n")); -+ goto exit; -+ } - } - - #ifdef WITH_IMAEVM -@@ -179,7 +181,11 @@ int main(int argc, char *argv[]) - } - break; - case MODE_NONE: -- printUsage(optCon, stderr, 0); -+ if (signfiles) { -+ ec = doSign(optCon, &sargs); -+ } else { -+ printUsage(optCon, stderr, 0); -+ } - break; - default: - argerror(_("only one major mode may be specified")); -diff --git a/sign/rpmgensig.c b/sign/rpmgensig.c -index d29c178..66168d2 100644 ---- a/sign/rpmgensig.c -+++ b/sign/rpmgensig.c -@@ -507,7 +507,9 @@ static rpmRC replaceSigDigests(FD_t fd, const char *rpm, Header *sigp, - goto exit; - } - -+/* - headerFree(*sigp); -+*/ - rc = rpmReadSignature(fd, sigp, NULL); - if (rc != RPMRC_OK) { - rpmlog(RPMLOG_ERR, _("rpmReadSignature failed\n")); -@@ -519,6 +521,15 @@ exit: - } - #endif - -+static void *nullDigest(int algo, int ascii) -+{ -+ void *d = NULL; -+ DIGEST_CTX ctx = rpmDigestInit(algo, 0); -+ rpmDigestFinal(ctx, &d, NULL, ascii); -+ return d; -+} -+ -+ - static rpmRC includeFileSignatures(FD_t fd, const char *rpm, - Header *sigp, Header *hdrp, - off_t sigStart, off_t headerStart) -@@ -572,6 +583,27 @@ static rpmRC includeFileSignatures(FD_t fd, const char *rpm, - goto exit; - } - -+ /* Generate and write a placeholder signature header */ -+ if (Fseek(fd, sigStart, SEEK_SET) < 0) { -+ rc = RPMRC_FAIL; -+ rpmlog(RPMLOG_ERR, _("Could not seek in file %s: %s\n"), -+ rpm, Fstrerror(fd)); -+ goto exit; -+ } -+ SHA1 = nullDigest(PGPHASHALGO_SHA1, 1); -+ SHA256 = nullDigest(PGPHASHALGO_SHA256, 1); -+ MD5 = nullDigest(PGPHASHALGO_MD5, 0); -+ replaceSigDigests(fd, rpm, sigp, sigStart, sigTargetSize, SHA256, SHA1, MD5); -+ SHA1 = _free(SHA1); -+ SHA256 = _free(SHA256); -+ MD5 = _free(MD5); -+ SHA1 = NULL; -+ SHA256 = NULL; -+ MD5 = NULL; -+ -+ /* get new header start */ -+ headerStart = Ftell(fd); -+ - if (Fseek(fd, headerStart, SEEK_SET) < 0) { - rc = RPMRC_FAIL; - rpmlog(RPMLOG_ERR, _("Could not seek in file %s: %s\n"), -@@ -590,9 +622,12 @@ static rpmRC includeFileSignatures(FD_t fd, const char *rpm, - rpmlog(RPMLOG_ERR, _("headerWrite failed\n")); - goto exit; - } -+ - fdFiniDigest(fd, RPMSIGTAG_SHA1, (void **)&SHA1, NULL, 1); - /* Only add SHA256 if it was there to begin with */ -+/* - if (headerIsEntry(*sigp, RPMSIGTAG_SHA256)) -+*/ - fdFiniDigest(fd, RPMSIGTAG_SHA256, (void **)&SHA256, NULL, 1); - - /* Copy archive from temp file */ -@@ -621,8 +656,10 @@ static rpmRC includeFileSignatures(FD_t fd, const char *rpm, - rpmlog(RPMLOG_WARNING, - _("%s already contains identical file signatures\n"), - rpm); -- else -+ else { - replaceSigDigests(fd, rpm, sigp, sigStart, sigTargetSize, SHA256, SHA1, MD5); -+ rc = headerWrite(fd, *hdrp, HEADER_MAGIC_YES); -+ } - - exit: - free(trpm); -@@ -697,6 +734,22 @@ static int rpmSign(const char *rpm, int deleting, int signfiles) - - if (signfiles) { - includeFileSignatures(fd, rpm, &sigh, &h, sigStart, headerStart); -+ -+ if (Fseek(fd, sigStart, SEEK_SET) < 0) { -+ rpmlog(RPMLOG_ERR, _("Could not seek in file %s: %s\n"), -+ rpm, Fstrerror(fd)); -+ goto exit; -+ } -+ -+ rc = rpmReadSignature(fd, &sigh, &msg); -+ if (rc != RPMRC_OK) { -+ rpmlog(RPMLOG_ERR, _("%s: rpmReadSignature failed: %s"), rpm, -+ (msg && *msg ? msg : "\n")); -+ goto exit; -+ } -+ -+ headerStart = Ftell(fd); -+ - } - - unloadImmutableRegion(&sigh, RPMTAG_HEADERSIGNATURES); -@@ -730,6 +783,7 @@ static int rpmSign(const char *rpm, int deleting, int signfiles) - } - - /* Try to make new signature smaller to have size of original signature */ -+/* - rpmtdReset(&utd); - if (headerGet(sigh, RPMSIGTAG_RESERVEDSPACE, &utd, HEADERGET_MINMEM)) { - int diff; -@@ -752,6 +806,7 @@ static int rpmSign(const char *rpm, int deleting, int signfiles) - insSig = 1; - } - } -+*/ - - /* Reallocate the signature into one contiguous region. */ - sigh = headerReload(sigh, RPMTAG_HEADERSIGNATURES); -@@ -794,12 +849,12 @@ static int rpmSign(const char *rpm, int deleting, int signfiles) - Fstrerror(ofd)); - goto exit; - } -- - if (Fseek(fd, headerStart, SEEK_SET) < 0) { - rpmlog(RPMLOG_ERR, _("Could not seek in file %s: %s\n"), - rpm, Fstrerror(fd)); - goto exit; - } -+ - /* Append the header and archive from the temp file */ - if (copyFile(&fd, rpm, &ofd, trpm) == 0) { - struct stat st; -@@ -848,7 +903,7 @@ int rpmPkgSign(const char *path, const struct rpmSignArgs * args) - } - } - -- rc = rpmSign(path, 0, args ? args->signfiles : 0); -+ rc = rpmSign(path, args ? args->signfiles : 0, args ? args->signfiles : 0); - - if (args) { - if (args->hashalgo) { -diff --git a/sign/rpmsignfiles.c b/sign/rpmsignfiles.c -index 61b73bd..d6c593d 100644 ---- a/sign/rpmsignfiles.c -+++ b/sign/rpmsignfiles.c -@@ -126,10 +126,15 @@ rpmRC rpmSignFiles(Header h, const char *key, char *keypass) - rc = RPMRC_FAIL; - goto exit; - } -+/* - free(signature); -+*/ -+ - } - - exit: -+/* - rpmtdFreeData(&digests); -+*/ - return rc; - } diff --git a/python/python-2.7.5/README b/python/python-2.7.5/README deleted file mode 100644 index 75196b0d6..000000000 --- a/python/python-2.7.5/README +++ /dev/null @@ -1,3 +0,0 @@ -The src rpm version indicates that we are patching python 2.7.5, however there are at least 58 patches -added by Centos to fix issues fixed in the later python 2.7 releases. - diff --git a/python/python-2.7.5/centos/build_srpm.data b/python/python-2.7.5/centos/build_srpm.data deleted file mode 100644 index 0eac83bbb..000000000 --- a/python/python-2.7.5/centos/build_srpm.data +++ /dev/null @@ -1 +0,0 @@ -TIS_PATCH_VER=4 diff --git a/python/python-2.7.5/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch b/python/python-2.7.5/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch deleted file mode 100644 index c9d0cf319..000000000 --- a/python/python-2.7.5/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 61ff7bbc259e5729f58536bdb6e3a554de6be514 Mon Sep 17 00:00:00 2001 -From: Al Bailey -Date: Tue, 27 Mar 2018 12:38:50 -0500 -Subject: [PATCH 1/4] Update package versioning for TIS format - ---- - SPECS/python.spec | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/SPECS/python.spec b/SPECS/python.spec -index 2af363e..c3706be 100644 ---- a/SPECS/python.spec -+++ b/SPECS/python.spec -@@ -114,7 +114,7 @@ Summary: An interpreted, interactive, object-oriented programming language - Name: %{python} - # Remember to also rebase python-docs when changing this: - Version: 2.7.5 --Release: 76%{?dist} -+Release: 76.el7%{?_tis_dist}.%{tis_patch_ver} - License: Python - Group: Development/Languages - Requires: %{python}-libs%{?_isa} = %{version}-%{release} --- -2.7.4 - diff --git a/python/python-2.7.5/centos/meta_patches/0002-Disable-unittest-check-phase.patch b/python/python-2.7.5/centos/meta_patches/0002-Disable-unittest-check-phase.patch deleted file mode 100644 index 420c9eee9..000000000 --- a/python/python-2.7.5/centos/meta_patches/0002-Disable-unittest-check-phase.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 2f23c2c6194d828de7bede593926007802cca610 Mon Sep 17 00:00:00 2001 -From: Al Bailey -Date: Tue, 6 Mar 2018 18:21:48 -0600 -Subject: [PATCH] Disable unittest check phase - ---- - SPECS/python.spec | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/SPECS/python.spec b/SPECS/python.spec -index a9fd32f..1030c57 100644 ---- a/SPECS/python.spec -+++ b/SPECS/python.spec -@@ -62,7 +62,7 @@ - %global with_gdbm 1 - - # Turn this to 0 to turn off the "check" phase: --%global run_selftest_suite 1 -+%global run_selftest_suite 0 - - # Some of the files below /usr/lib/pythonMAJOR.MINOR/test (e.g. bad_coding.py) - # are deliberately invalid, leading to SyntaxError exceptions if they get --- -1.8.3.1 - diff --git a/python/python-2.7.5/centos/meta_patches/0003-Make-Python-Faster.patch b/python/python-2.7.5/centos/meta_patches/0003-Make-Python-Faster.patch deleted file mode 100644 index 612f5c9b4..000000000 --- a/python/python-2.7.5/centos/meta_patches/0003-Make-Python-Faster.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 089860dac0d15120466dc7d9e38041dbaae505eb Mon Sep 17 00:00:00 2001 -From: Al Bailey -Date: Wed, 28 Mar 2018 08:26:56 -0500 -Subject: [PATCH] Make Python Faster - ---- - SPECS/python.spec | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/SPECS/python.spec b/SPECS/python.spec -index 94adb05..36289ea 100644 ---- a/SPECS/python.spec -+++ b/SPECS/python.spec -@@ -1301,6 +1301,8 @@ Patch306: 00306-fix-oserror-17-upon-semaphores-creation.patch - # above: - Patch5000: 05000-autotool-intermediates.patch - -+Patch9000: Rollup-optimization-commits.patch -+ - # ====================================================== - # Additional metadata, and subpackages - # ====================================================== -@@ -1719,6 +1721,7 @@ find -name "*~" |xargs rm -f - %patch5000 -p0 -b .autotool-intermediates - %endif - -+%patch9000 -p1 - - # ====================================================== - # Configuring and building the code: -@@ -1849,7 +1852,7 @@ BuildPython debug \ - BuildPython optimized \ - python \ - python%{pybasever} \ -- "" \ -+ "--enable-optimizations --with-computed-gotos" \ - true - - --- -2.7.4 - diff --git a/python/python-2.7.5/centos/meta_patches/0004-Turn-off-with_systemtap-to-disable-dtrace.patch b/python/python-2.7.5/centos/meta_patches/0004-Turn-off-with_systemtap-to-disable-dtrace.patch deleted file mode 100644 index 38c739fa7..000000000 --- a/python/python-2.7.5/centos/meta_patches/0004-Turn-off-with_systemtap-to-disable-dtrace.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 83b8eb17d13fd5afdb926698082e47cba029c531 Mon Sep 17 00:00:00 2001 -From: Al Bailey -Date: Wed, 28 Mar 2018 15:23:35 -0500 -Subject: [PATCH] Turn off with_systemtap to disable dtrace - ---- - SPECS/python.spec | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/SPECS/python.spec b/SPECS/python.spec -index 2441951..c2edce8 100644 ---- a/SPECS/python.spec -+++ b/SPECS/python.spec -@@ -43,7 +43,7 @@ - - %global with_gdb_hooks 1 - --%global with_systemtap 1 -+%global with_systemtap 0 - - # some arches don't have valgrind so we need to disable its support on them - %ifarch %{ix86} x86_64 ppc %{power64} s390x aarch64 --- -1.8.3.1 - diff --git a/python/python-2.7.5/centos/meta_patches/PATCH_ORDER b/python/python-2.7.5/centos/meta_patches/PATCH_ORDER deleted file mode 100644 index 1003df479..000000000 --- a/python/python-2.7.5/centos/meta_patches/PATCH_ORDER +++ /dev/null @@ -1,4 +0,0 @@ -0001-Update-package-versioning-for-TIS-format.patch -0002-Disable-unittest-check-phase.patch -0003-Make-Python-Faster.patch -0004-Turn-off-with_systemtap-to-disable-dtrace.patch diff --git a/python/python-2.7.5/centos/patches/Rollup-optimization-commits.patch b/python/python-2.7.5/centos/patches/Rollup-optimization-commits.patch deleted file mode 100644 index f73bcc8a3..000000000 --- a/python/python-2.7.5/centos/patches/Rollup-optimization-commits.patch +++ /dev/null @@ -1,3548 +0,0 @@ -From 932023666da32002277b878a91ff322a79c1a6a8 Mon Sep 17 00:00:00 2001 -From: Al Bailey -Date: Wed, 28 Mar 2018 15:18:09 -0500 -Subject: [PATCH] WRS: Patch9000: 0001-WRS-Rollup-optimization-commits.patch - ---- - .gitignore | 50 ++ - .hgignore | 86 ++ - Makefile.pre.in | 39 +- - Misc/NEWS | 2647 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ - README | 29 + - configure | 334 ++++++- - configure.ac | 168 ++++ - 7 files changed, 3341 insertions(+), 12 deletions(-) - create mode 100644 .gitignore - create mode 100644 .hgignore - -diff --git a/.gitignore b/.gitignore -new file mode 100644 -index 0000000..2b87e93 ---- /dev/null -+++ b/.gitignore -@@ -0,0 +1,50 @@ -+*.cover -+*.o -+*.orig -+*.pyc -+*.pyd -+*.pyo -+*.rej -+*~ -+*.gc?? -+*.profclang? -+*.profraw -+Doc/build/ -+Doc/tools/docutils/ -+Doc/tools/jinja2/ -+Doc/tools/pygments/ -+Doc/tools/sphinx/ -+Lib/lib2to3/*.pickle -+Makefile -+Makefile.pre -+Misc/python.pc -+Modules/Setup -+Modules/Setup.config -+Modules/Setup.local -+Modules/config.c -+Modules/ld_so_aix -+PCbuild/*.bsc -+PCbuild/*.dll -+PCbuild/*.exe -+PCbuild/*.exp -+PCbuild/*.lib -+PCbuild/*.ncb -+PCbuild/*.o -+PCbuild/*.pdb -+PCbuild/Win32-temp-* -+Parser/pgen -+Parser/pgen.stamp -+autom4te.cache -+build/ -+config.log -+config.status -+libpython*.a -+libpython*.so* -+pyconfig.h -+python$ -+python-gdb.py -+tags -+.coverage -+coverage/ -+externals/ -+htmlcov/ -diff --git a/.hgignore b/.hgignore -new file mode 100644 -index 0000000..007aa7b ---- /dev/null -+++ b/.hgignore -@@ -0,0 +1,86 @@ -+.gdb_history -+.purify -+.svn/ -+^.idea/ -+.DS_Store -+Makefile$ -+Makefile.pre$ -+TAGS$ -+autom4te.cache$ -+build/ -+buildno$ -+config.cache -+config.log -+config.status -+config.status.lineno -+db_home -+platform$ -+pyconfig.h$ -+python$ -+python.bat$ -+python.exe$ -+reflog.txt$ -+tags$ -+Lib/plat-mac/errors.rsrc.df.rsrc -+Misc/python.pc -+Modules/Setup$ -+Modules/Setup.config -+Modules/Setup.local -+Modules/config.c -+Modules/ld_so_aix$ -+Parser/pgen$ -+Parser/pgen.stamp$ -+^core -+^python-gdb.py -+^pybuilddir.txt -+ -+syntax: glob -+python.exe-gdb.py -+libpython*.a -+libpython*.so* -+*.swp -+*.o -+*.pyc -+*.pyo -+*.pyd -+*.cover -+*~ -+*.gc?? -+*.profclang? -+*.profraw -+Lib/distutils/command/*.pdb -+Lib/lib2to3/*.pickle -+Lib/test/data/* -+Misc/*.wpu -+PC/python_nt*.h -+PC/pythonnt_rc*.h -+PC/*/*.exe -+PC/*/*.exp -+PC/*/*.lib -+PC/*/*.bsc -+PC/*/*.dll -+PC/*/*.pdb -+PC/*/*.user -+PC/*/*.ncb -+PC/*/*.suo -+PC/*/Win32-temp-* -+PC/*/x64-temp-* -+PC/*/amd64 -+PCbuild/*.user -+PCbuild/*.suo -+PCbuild/*.*sdf -+PCbuild/*-pgi -+PCbuild/*-pgo -+PCbuild/.vs -+PCbuild/*.dll -+PCbuild/*.exp -+PCbuild/*.exe -+PCbuild/*.ilk -+PCbuild/*.lib -+PCbuild/*.pdb -+PCbuild/amd64 -+PCbuild/obj -+.coverage -+coverage/ -+externals/ -+htmlcov/ -diff --git a/Makefile.pre.in b/Makefile.pre.in -index 611f63a..21b6478 100644 ---- a/Makefile.pre.in -+++ b/Makefile.pre.in -@@ -42,6 +42,11 @@ SVNVERSION= @SVNVERSION@ - HGVERSION= @HGVERSION@ - HGTAG= @HGTAG@ - HGBRANCH= @HGBRANCH@ -+PGO_PROF_GEN_FLAG=@PGO_PROF_GEN_FLAG@ -+PGO_PROF_USE_FLAG=@PGO_PROF_USE_FLAG@ -+LLVM_PROF_MERGER=@LLVM_PROF_MERGER@ -+LLVM_PROF_FILE=@LLVM_PROF_FILE@ -+LLVM_PROF_ERR=@LLVM_PROF_ERR@ - - GNULD= @GNULD@ - -@@ -203,8 +208,7 @@ _PYTHON_HOST_PLATFORM=@_PYTHON_HOST_PLATFORM@ - HOST_GNU_TYPE= @host@ - - # The task to run while instrument when building the profile-opt target --PROFILE_TASK= $(srcdir)/Tools/pybench/pybench.py -n 2 --with-gc --with-syscheck --#PROFILE_TASK= $(srcdir)/Lib/test/regrtest.py -+PROFILE_TASK=-m test.regrtest >/dev/null 2>&1 - - # === Definitions added by makesetup === - -@@ -417,42 +421,53 @@ LIBRARY_OBJS= \ - # Rules - - # Default target --all: build_all -+all: @DEF_MAKE_ALL_RULE@ - build_all: $(BUILDPYTHON) oldsharedmods sharedmods gdbhooks - --# Compile a binary with gcc profile guided optimization. -+# Compile a binary with profile guided optimization. - profile-opt: -+ @if [ $(LLVM_PROF_ERR) == yes ]; then \ -+ echo "Error: Cannot perform PGO build because llvm-profdata was not found in PATH" ;\ -+ echo "Please add it to PATH and run ./configure again" ;\ -+ exit 1;\ -+ fi - @echo "Building with support for profile generation:" - $(MAKE) clean -+ $(MAKE) profile-removal - $(MAKE) build_all_generate_profile -- @echo "Running benchmark to generate profile data:" - $(MAKE) profile-removal -+ @echo "Running code to generate profile data (this can take a while):" - $(MAKE) run_profile_task -+ $(MAKE) build_all_merge_profile - @echo "Rebuilding with profile guided optimizations:" - $(MAKE) clean - $(MAKE) build_all_use_profile -+ $(MAKE) profile-removal - - build_all_generate_profile: -- $(MAKE) all CFLAGS="$(CFLAGS) -fprofile-generate" LIBS="$(LIBS) -lgcov" -+ $(MAKE) @DEF_MAKE_RULE@ CFLAGS="$(CFLAGS) $(PGO_PROF_GEN_FLAG) @LTOFLAGS@" LDFLAGS="$(LDFLAGS) $(PGO_PROF_GEN_FLAG) @LTOFLAGS@" LIBS="$(LIBS)" - - run_profile_task: - : # FIXME: can't run for a cross build -- ./$(BUILDPYTHON) $(PROFILE_TASK) -+ $(LLVM_PROF_FILE) ./$(BUILDPYTHON) $(PROFILE_TASK) || true -+ -+build_all_merge_profile: -+ $(LLVM_PROF_MERGER) - - build_all_use_profile: -- $(MAKE) all CFLAGS="$(CFLAGS) -fprofile-use" -+ $(MAKE) @DEF_MAKE_RULE@ CFLAGS="$(CFLAGS) $(PGO_PROF_USE_FLAG) @LTOFLAGS@" LDFLAGS="$(LDFLAGS) @LTOFLAGS@" - - coverage: - @echo "Building with support for coverage checking:" -- $(MAKE) clean -- $(MAKE) all CFLAGS="$(CFLAGS) -O0 -pg -fprofile-arcs -ftest-coverage" LIBS="$(LIBS) -lgcov" -+ $(MAKE) clean profile-removal -+ $(MAKE) @DEF_MAKE_RULE@ CFLAGS="$(CFLAGS) -O0 -pg -fprofile-arcs -ftest-coverage" LIBS="$(LIBS) -lgcov" - - - # Build the interpreter - $(BUILDPYTHON): Modules/python.o $(LDLIBRARY) - $(LINKCC) $(CFLAGS) $(LDFLAGS) $(LINKFORSHARED) -o $@ \ - Modules/python.o \ -- $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) -+ $(LIBRARY_OBJS) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) - - platform: $(BUILDPYTHON) pybuilddir.txt - $(RUNSHARED) $(PYTHON_FOR_BUILD) -c 'import sys ; from sysconfig import get_platform ; print get_platform()+"-"+sys.version[0:3]' >platform -@@ -1282,9 +1297,11 @@ clean: pycremoval - find build -name 'fficonfig.h' -exec rm -f {} ';' || true - find build -name 'fficonfig.py' -exec rm -f {} ';' || true - -rm -f Lib/lib2to3/*Grammar*.pickle -+ -find build -type f -a ! -name '*.gc??' -exec rm -f {} ';' - - profile-removal: - find . -name '*.gc??' -exec rm -f {} ';' -+ find . -name '*.profclang?' -exec rm -f {} ';' - - clobber: clean profile-removal - -rm -f $(BUILDPYTHON) $(PGEN) $(LIBRARY) $(LDLIBRARY) $(DLLLIBRARY) \ -diff --git a/Misc/NEWS b/Misc/NEWS -index 8f97390..8e581ab 100644 ---- a/Misc/NEWS -+++ b/Misc/NEWS -@@ -1,6 +1,2653 @@ -++++++++++++ - Python News - +++++++++++ - -+What's New in Python 2.7.13? -+============================ -+ -+*Release date: XXXX-XX-XX* -+ -+Core and Builtins -+----------------- -+ -+- bpo-28598: Support __rmod__ for subclasses of str being called before -+ str.__mod__. Patch by Martijn Pieters. -+ -+- bpo-29602: Fix incorrect handling of signed zeros in complex constructor for -+ complex subclasses and for inputs having a __complex__ method. Patch -+ by Serhiy Storchaka. -+ -+- bpo-29347: Fixed possibly dereferencing undefined pointers -+ when creating weakref objects. -+ -+- Issue #14376: Allow sys.exit to accept longs as well as ints. Patch -+ by Gareth Rees. -+ -+- Issue #29028: Fixed possible use-after-free bugs in the subscription of the -+ buffer object with custom index object. -+ -+- Issue #29145: Fix overflow checks in string, bytearray and unicode. -+ Patch by jan matejek and Xiang Zhang. -+ -+- Issue #28932: Do not include if it does not exist. -+ -+Extension Modules -+----------------- -+ -+- Issue #29169: Update zlib to 1.2.11. -+ -+Library -+------- -+ -+- bpo-29861: Release references to tasks, their arguments and their results -+ as soon as they are finished in multiprocessing.Pool. -+ -+- bpo-27880: Fixed integer overflow in cPickle when pickle large strings or -+ too many objects. -+ -+- bpo-29110: Fix file object leak in aifc.open() when file is given as a -+ filesystem path and is not in valid AIFF format. -+ Original patch by Anthony Zhang. -+ -+- Issue #29354: Fixed inspect.getargs() for parameters which are cell -+ variables. -+ -+- Issue #29335: Fix subprocess.Popen.wait() when the child process has -+ exited to a stopped instead of terminated state (ex: when under ptrace). -+ -+- Issue #29219: Fixed infinite recursion in the repr of uninitialized -+ ctypes.CDLL instances. -+ -+- Issue #29082: Fixed loading libraries in ctypes by unicode names on Windows. -+ Original patch by Chi Hsuan Yen. -+ -+- Issue #29188: Support glibc 2.24 on Linux: don't use getentropy() function -+ but read from /dev/urandom to get random bytes, for example in os.urandom(). -+ On Linux, getentropy() is implemented which getrandom() is blocking mode, -+ whereas os.urandom() should not block. -+ -+- Issue #29142: In urllib, suffixes in no_proxy environment variable with -+ leading dots could match related hostnames again (e.g. .b.c matches a.b.c). -+ Patch by Milan Oberkirch. -+ -+- Issue #29094: Offsets in a ZIP file created with extern file object and mode -+ "w" now are relative to the start of the file. -+ -+- Issue #13051: Fixed recursion errors in large or resized -+ curses.textpad.Textbox. Based on patch by Tycho Andersen. -+ -+- Issue #9770: curses.ascii predicates now work correctly with negative -+ integers. -+ -+- Issue #28427: old keys should not remove new values from -+ WeakValueDictionary when collecting from another thread. -+ -+- Issue #28998: More APIs now support longs as well as ints. -+ -+- Issue 28923: Remove editor artifacts from Tix.py, -+ including encoding not recognized by codecs.lookup. -+ -+- Issue #29019: Fix dict.fromkeys(x) overallocates when x is sparce dict. -+ Original patch by Rasmus Villemoes. -+ -+- Issue #19542: Fix bugs in WeakValueDictionary.setdefault() and -+ WeakValueDictionary.pop() when a GC collection happens in another -+ thread. -+ -+- Issue #28925: cPickle now correctly propagates errors when unpickle instances -+ of old-style classes. -+ -+C API -+----- -+ -+- Issue #27867: Function PySlice_GetIndicesEx() is replaced with a macro. -+ -+Documentation -+------------- -+ -+- bpo-28929: Link the documentation to its source file on GitHub. -+ -+- Issue #26355: Add canonical header link on each page to corresponding major -+ version of the documentation. Patch by Matthias Bussonnier. -+ -+- Issue #12067: Rewrite Comparisons section in the Expressions chapter of the -+ language reference. Some of the details of comparing mixed types were -+ incorrect or ambiguous. Added default behaviour and consistency suggestions -+ for user-defined classes. Based on patch from Andy Maier. -+ -+Build -+----- -+ -+- bpo-29643: Fix ``--enable-optimization`` configure option didn't work. -+ -+- bpo-29572: Update Windows build and OS X installers to use OpenSSL 1.0.2k. -+ -+- Issue #28768: Fix implicit declaration of function _setmode. Patch by -+ Masayuki Yamamoto -+ -+ -+What's New in Python 2.7.13 -+=========================== -+ -+*Release date: 2016-12-17* -+ -+Core and Builtins -+----------------- -+ -+- Revert a37cc3d926ec (Issue #5322). -+ -+ -+What's New in Python 2.7.13 release candidate 1? -+================================================ -+ -+*Release date: 2016-12-03* -+ -+Core and Builtins -+----------------- -+ -+- Issue #5322: Fixed setting __new__ to a PyCFunction inside Python code. -+ Original patch by Andreas Stührk. -+ -+- Issue #28847: dumbdbm no longer writes the index file in when it is not -+ changed and supports reading read-only files. -+ -+- Issue #11145: Fixed miscellaneous issues with C-style formatting of types -+ with custom __oct__ and __hex__. -+ -+- Issue #24469: Fixed memory leak caused by int subclasses without overridden -+ tp_free (e.g. C-inherited Cython classes). -+ -+- Issue #19398: Extra slash no longer added to sys.path components in case of -+ empty compile-time PYTHONPATH components. -+ -+- Issue #21720: Improve exception message when the type of fromlist is unicode. -+ fromlist parameter of __import__() only accepts str in Python 2 and this -+ will help to identify the problem especially when the unicode_literals -+ future import is used. -+ -+- Issue #26906: Resolving special methods of uninitialized type now causes -+ implicit initialization of the type instead of a fail. -+ -+- Issue #18287: PyType_Ready() now checks that tp_name is not NULL. -+ Original patch by Niklas Koep. -+ -+- Issue #24098: Fixed possible crash when AST is changed in process of -+ compiling it. -+ -+- Issue #28350: String constants with null character no longer interned. -+ -+- Issue #27942: String constants now interned recursively in tuples and frozensets. -+ -+- Issue #15578: Correctly incref the parent module while importing. -+ -+- Issue #26307: The profile-opt build now applys PGO to the built-in modules. -+ -+- Issue #27870: A left shift of zero by a large integer no longer attempts -+ to allocate large amounts of memory. -+ -+- Issue #25604: Fix a minor bug in integer true division; this bug could -+ potentially have caused off-by-one-ulp results on platforms with -+ unreliable ldexp implementations. -+ -+- Issue #27473: Fixed possible integer overflow in str, unicode and bytearray -+ concatenations and repetitions. Based on patch by Xiang Zhang. -+ -+- Issue #27507: Add integer overflow check in bytearray.extend(). Patch by -+ Xiang Zhang. -+ -+- Issue #27581: Don't rely on wrapping for overflow check in -+ PySequence_Tuple(). Patch by Xiang Zhang. -+ -+- Issue #23908: os functions, open() and the io.FileIO constructor now reject -+ unicode paths with embedded null character on Windows instead of silently -+ truncating them. -+ -+- Issue #27514: Make having too many statically nested blocks a SyntaxError -+ instead of SystemError. -+ -+Library -+------- -+ -+- Issue #27570: Avoid zero-length memcpy() etc calls with null source -+ pointers in the "ctypes" and "array" modules. -+ -+- lib2to3.pgen3.driver.load_grammar() now creates a stable cache file -+ between runs given the same Grammar.txt input regardless of the hash -+ randomization setting. -+ -+- Issue #27691: Fix ssl module's parsing of GEN_RID subject alternative name -+ fields in X.509 certs. -+ -+- Issue #27850: Remove 3DES from ssl module's default cipher list to counter -+ measure sweet32 attack (CVE-2016-2183). -+ -+- Issue #27766: Add ChaCha20 Poly1305 to ssl module's default ciper list. -+ (Required OpenSSL 1.1.0 or LibreSSL). -+ -+- Issue #26470: Port ssl and hashlib module to OpenSSL 1.1.0. -+ -+- Issue #27944: Fix some memory-corruption bugs in the log reading code of the -+ _hotshot module. -+ -+- Issue #27934: Use ``float.__repr__`` instead of plain ``repr`` when JSON- -+ encoding an instance of a float subclass. Thanks Eddie James. -+ -+- Issue #27861: Fixed a crash in sqlite3.Connection.cursor() when a factory -+ creates not a cursor. Patch by Xiang Zhang. -+ -+- Issue #19884: Avoid spurious output on OS X with Gnu Readline. -+ -+- Issue #10513: Fix a regression in Connection.commit(). Statements should -+ not be reset after a commit. -+ -+- Issue #2466: posixpath.ismount now correctly recognizes mount points which -+ the user does not have permission to access. -+ -+- Issue #27783: Fix possible usage of uninitialized memory in operator.methodcaller. -+ -+- Issue #27774: Fix possible Py_DECREF on unowned object in _sre. -+ -+- Issue #27760: Fix possible integer overflow in binascii.b2a_qp. -+ -+- In the curses module, raise an error if window.getstr() or window.instr() is -+ passed a negative value. -+ -+- Issue #27758: Fix possible integer overflow in the _csv module for large record -+ lengths. -+ -+- Issue #23369: Fixed possible integer overflow in -+ _json.encode_basestring_ascii. -+ -+- Issue #27568: Prevent HTTPoxy attack (CVE-2016-1000110). Ignore the -+ HTTP_PROXY variable when REQUEST_METHOD environment is set, which indicates -+ that the script is in CGI mode. -+ -+- Issue #27130: In the "zlib" module, fix handling of large buffers -+ (typically 2 or 4 GiB). Previously, inputs were limited to 2 GiB, and -+ compression and decompression operations did not properly handle results of -+ 2 or 4 GiB. -+ -+- Issue #23804: Fix SSL zero-length recv() calls to not block and not raise -+ an error about unclean EOF. -+ -+- Issue #27466: Change time format returned by http.cookie.time2netscape, -+ confirming the netscape cookie format and making it consistent with -+ documentation. -+ -+- Issue #22115: Fixed tracing Tkinter variables: trace_vdelete() with wrong -+ mode no longer break tracing, trace_vinfo() now always returns a list of -+ pairs of strings. -+ -+- Issue #27079: Fixed curses.ascii functions isblank(), iscntrl() and ispunct(). -+ -+- Issue #22636: Avoid shell injection problems with -+ ctypes.util.find_library(). -+ -+- Issue #27330: Fixed possible leaks in the ctypes module. -+ -+- Issue #27238: Got rid of bare excepts in the turtle module. Original patch -+ by Jelle Zijlstra. -+ -+- Issue #26386: Fixed ttk.TreeView selection operations with item id's -+ containing spaces. -+ -+- Issue #25455: Fixed a crash in repr of cElementTree.Element with recursive tag. -+ -+IDLE -+---- -+ -+- Issue #27714: text_textview and test_autocomplete now pass when re-run -+ in the same process. This occurs when test_idle fails when run with the -+ -w option but without -jn. Fix warning from test_config. -+ -+- Issue #27452: add line counter and crc to IDLE configHandler test dump. -+ -+- Issue #27365: Allow non-ascii chars in IDLE NEWS.txt, for contributor names. -+ -+- Issue #27245: IDLE: Cleanly delete custom themes and key bindings. -+ Previously, when IDLE was started from a console or by import, a cascade -+ of warnings was emitted. Patch by Serhiy Storchaka. -+ -+Documentation -+------------- -+ -+- Issue #16484: Change the default PYTHONDOCS URL to "https:", and fix the -+ resulting links to use lowercase. Patch by Sean Rodman, test by Kaushik -+ Nadikuditi. -+ -+Tests -+----- -+ -+- Issue #27369: In test_pyexpat, avoid testing an error message detail that -+ changed in Expat 2.2.0. -+ -+Build -+----- -+ -+- Issue #26359: Rename --with-optimiations to --enable-optimizations. -+ -+- Issue #28248: Update Windows build and OS X installers to use OpenSSL 1.0.2j. -+ -+- Issue #28258: Fixed build with Estonian locale (distclean target in -+ Makefile). Patch by Arfrever Frehtes Taifersar Arahesis. -+ -+- Issue #26661: setup.py now detects system libffi with multiarch wrapper. -+ -+- Issue #15819: The Include directory in the build tree is already searched; -+ drop unused code trying to add it again. -+ -+- Issue #27566: Fix clean target in freeze makefile (patch by Lisa Roach) -+ -+- Issue #27983: Cause lack of llvm-profdata tool when using clang as -+ required for PGO linking to be a configure time error rather than -+ make time when --with-optimizations is enabled. Also improve our -+ ability to find the llvm-profdata tool on MacOS and some Linuxes. -+ -+- Issue #26359: Add the --with-optimizations configure flag. -+ -+- Issue #10910: Avoid C++ compilation errors on FreeBSD and OS X. -+ Also update FreedBSD version checks for the original ctype UTF-8 workaround. -+ -+Windows -+------- -+ -+- Issue #27888: Prevent Windows installer from displaying console windows and -+ failing when pip cannot be installed/uninstalled. -+ -+What's New in Python 2.7.12? -+============================ -+ -+*Release date: XXXX-XX-XX* -+ -+Core and Builtins -+----------------- -+ -+- Issue #25702: A --with-lto configure option has been added that will -+ enable link time optimizations at build time during a make profile-opt. -+ Some compilers and toolchains are known to not produce stable code when -+ using LTO, be sure to test things thoroughly before relying on it. -+ It can provide a few % speed up over profile-opt alone. -+ -+- Issue #26168: Fixed possible refleaks in failing Py_BuildValue() with the "N" -+ format unit. -+ -+- Issue #27039: Fixed bytearray.remove() for values greater than 127. Patch by -+ Joe Jevnik. -+ -+- Issue #4806: Avoid masking the original TypeError exception when using star -+ (*) unpacking and the exception was raised from a generator. Based on -+ patch by Hagen Fürstenau. -+ -+- Issue #26659: Make the builtin slice type support cycle collection. -+ -+- Issue #26718: super.__init__ no longer leaks memory if called multiple times. -+ NOTE: A direct call of super.__init__ is not endorsed! -+ -+- Issue #13410: Fixed a bug in PyUnicode_Format where it failed to properly -+ ignore errors from a __int__() method. -+ -+- Issue #26494: Fixed crash on iterating exhausting iterators. -+ Affected classes are generic sequence iterators, iterators of bytearray, -+ list, tuple, set, frozenset, dict, OrderedDict and corresponding views. -+ -+- Issue #26581: If coding cookie is specified multiple times on a line in -+ Python source code file, only the first one is taken to account. -+ -+- Issue #22836: Ensure exception reports from PyErr_Display() and -+ PyErr_WriteUnraisable() are sensible even when formatting them produces -+ secondary errors. This affects the reports produced by -+ sys.__excepthook__() and when __del__() raises an exception. -+ -+- Issue #22847: Improve method cache efficiency. -+ -+- Issue #25843: When compiling code, don't merge constants if they are equal -+ but have a different types. For example, ``f1, f2 = lambda: 1, lambda: 1.0`` -+ is now correctly compiled to two different functions: ``f1()`` returns ``1`` -+ (``int``) and ``f2()`` returns ``1.0`` (``int``), even if ``1`` and ``1.0`` -+ are equal. -+ -+- Issue #22995: [UPDATE] Remove the one of the pickleability tests in -+ _PyObject_GetState() due to regressions observed in Cython-based projects. -+ -+- Issue #25961: Disallowed null characters in the type name. -+ -+- Issue #22995: Instances of extension types with a state that aren't -+ subclasses of list or dict and haven't implemented any pickle-related -+ methods (__reduce__, __reduce_ex__, __getnewargs__, __getnewargs_ex__, -+ or __getstate__), can no longer be pickled. Including memoryview. -+ -+- Issue #20440: Massive replacing unsafe attribute setting code with special -+ macro Py_SETREF. -+ -+- Issue #25421: __sizeof__ methods of builtin types now use dynamic basic size. -+ This allows sys.getsize() to work correctly with their subclasses with -+ __slots__ defined. -+ -+- Issue #19543: Added Py3k warning for decoding unicode. -+ -+- Issue #24097: Fixed crash in object.__reduce__() if slot name is freed inside -+ __getattr__. -+ -+- Issue #24731: Fixed crash on converting objects with special methods -+ __str__, __trunc__, and __float__ returning instances of subclasses of -+ str, long, and float to subclasses of str, long, and float correspondingly. -+ -+- Issue #26478: Fix semantic bugs when using binary operators with dictionary -+ views and tuples. -+ -+- Issue #26171: Fix possible integer overflow and heap corruption in -+ zipimporter.get_data(). -+ -+Library -+------- -+ -+- Issue #27114: Fix SSLContext._load_windows_store_certs fails with -+ PermissionError -+ -+- Issue #14132: Fix urllib.request redirect handling when the target only has -+ a query string. Fix by Ján Janech. -+ -+- Removed the requirements for the ctypes and modulefinder modules to be -+ compatible with earlier Python versions. -+ -+- Issue #22274: In the subprocess module, allow stderr to be redirected to -+ stdout even when stdout is not redirected. Patch by Akira Li. -+ -+- Issue #12045: Avoid duplicate execution of command in ctypes.util._get_soname(). -+ Patch by Sijin Joseph. -+ -+- Issue #26960: Backported #16270 from Python 3 to Python 2, to prevent urllib -+ from hanging when retrieving certain FTP files. -+ -+- Issue #25745: Fixed leaking a userptr in curses panel destructor. -+ -+- Issue #17765: weakref.ref() no longer silently ignores keyword arguments. -+ Patch by Georg Brandl. -+ -+- Issue #26873: xmlrpclib now raises ResponseError on unsupported type tags -+ instead of silently return incorrect result. -+ -+- Issue #24114: Fix an uninitialized variable in `ctypes.util`. -+ -+ The bug only occurs on SunOS when the ctypes implementation searches -+ for the `crle` program. Patch by Xiang Zhang. Tested on SunOS by -+ Kees Bos. -+ -+- Issue #26864: In urllib, change the proxy bypass host checking against -+ no_proxy to be case-insensitive, and to not match unrelated host names that -+ happen to have a bypassed hostname as a suffix. Patch by Xiang Zhang. -+ -+- Issue #26804: urllib will prefer lower_case proxy environment variables over -+ UPPER_CASE or Mixed_Case ones. Patch contributed by Hans-Peter Jansen. -+ -+- Issue #26837: assertSequenceEqual() now correctly outputs non-stringified -+ differing items. This affects assertListEqual() and assertTupleEqual(). -+ -+- Issue #26822: itemgetter, attrgetter and methodcaller objects no longer -+ silently ignore keyword arguments. -+ -+- Issue #26657: Fix directory traversal vulnerability with SimpleHTTPServer -+ on Windows. This fixes a regression that was introduced in 2.7.7. Based -+ on patch by Philipp Hagemeister. -+ -+- Issue #19377: Add .svg to mimetypes.types_map. -+ -+- Issue #13952: Add .csv to mimetypes.types_map. Patch by Geoff Wilson. -+ -+- Issue #16329: Add .webm to mimetypes.types_map. Patch by Giampaolo Rodola'. -+ -+- Issue #23735: Handle terminal resizing with Readline 6.3+ by installing our -+ own SIGWINCH handler. Patch by Eric Price. -+ -+- Issue #26644: Raise ValueError rather than SystemError when a negative -+ length is passed to SSLSocket.recv() or read(). -+ -+- Issue #23804: Fix SSL recv(0) and read(0) methods to return zero bytes -+ instead of up to 1024. -+ -+- Issue #24266: Ctrl+C during Readline history search now cancels the search -+ mode when compiled with Readline 7. -+ -+- Issue #23857: Implement PEP 493, adding a Python-2-only ssl module API and -+ environment variable to configure the default handling of SSL/TLS certificates -+ for HTTPS connections. -+ -+- Issue #26313: ssl.py _load_windows_store_certs fails if windows cert store -+ is empty. Patch by Baji. -+ -+- Issue #26513: Fixes platform module detection of Windows Server -+ -+- Issue #23718: Fixed parsing time in week 0 before Jan 1. Original patch by -+ Tamás Bence Gedai. -+ -+- Issue #26177: Fixed the keys() method for Canvas and Scrollbar widgets. -+ -+- Issue #15068: Got rid of excessive buffering in the fileinput module. -+ The bufsize parameter is no longer used. -+ -+- Issue #2202: Fix UnboundLocalError in -+ AbstractDigestAuthHandler.get_algorithm_impls. Initial patch by Mathieu Dupuy. -+ -+- Issue #26475: Fixed debugging output for regular expressions with the (?x) -+ flag. -+ -+- Issue #26385: Remove the file if the internal fdopen() call in -+ NamedTemporaryFile() fails. Based on patch by Silent Ghost. -+ -+- Issue #26309: In the "socketserver" module, shut down the request (closing -+ the connected socket) when verify_request() returns false. Based on patch -+ by Aviv Palivoda. -+ -+- Issue #25939: On Windows open the cert store readonly in ssl.enum_certificates. -+ -+- Issue #24303: Fix random EEXIST upon multiprocessing semaphores creation with -+ Linux PID namespaces enabled. -+ -+- Issue #25698: Importing module if the stack is too deep no longer replaces -+ imported module with the empty one. -+ -+- Issue #12923: Reset FancyURLopener's redirect counter even if there is an -+ exception. Based on patches by Brian Brazil and Daniel Rocco. -+ -+- Issue #25945: Fixed a crash when unpickle the functools.partial object with -+ wrong state. Fixed a leak in failed functools.partial constructor. -+ "args" and "keywords" attributes of functools.partial have now always types -+ tuple and dict correspondingly. -+ -+- Issue #19883: Fixed possible integer overflows in zipimport. -+ -+- Issue #26147: xmlrpclib now works with unicode not encodable with used -+ non-UTF-8 encoding. -+ -+- Issue #16620: Fixed AttributeError in msilib.Directory.glob(). -+ -+- Issue #21847: Fixed xmlrpclib on Unicode-disabled builds. -+ -+- Issue #6500: Fixed infinite recursion in urllib2.Request.__getattr__(). -+ -+- Issue #26083: Workaround a subprocess bug that raises an incorrect -+ "ValueError: insecure string pickle" exception instead of the actual -+ exception on some platforms such as Mac OS X when an exception raised -+ in the forked child process prior to the exec() was large enough that -+ it overflowed the internal errpipe_read pipe buffer. -+ -+- Issue #24103: Fixed possible use after free in ElementTree.iterparse(). -+ -+- Issue #20954: _args_from_interpreter_flags used by multiprocessing and some -+ tests no longer behaves incorrectly in the presence of the PYTHONHASHSEED -+ environment variable. -+ -+- Issue #14285: When executing a package with the "python -m package" option, -+ and package initialization raises ImportError, a proper traceback is now -+ reported. -+ -+- Issue #6478: _strptime's regexp cache now is reset after changing timezone -+ with time.tzset(). -+ -+- Issue #25718: Fixed copying object with state with boolean value is false. -+ -+- Issue #25742: :func:`locale.setlocale` now accepts a Unicode string for -+ its second parameter. -+ -+- Issue #10131: Fixed deep copying of minidom documents. Based on patch -+ by Marian Ganisin. -+ -+- Issue #25725: Fixed a reference leak in cPickle.loads() when unpickling -+ invalid data including tuple instructions. -+ -+- Issue #25663: In the Readline completer, avoid listing duplicate global -+ names, and search the global namespace before searching builtins. -+ -+- Issue #25688: Fixed file leak in ElementTree.iterparse() raising an error. -+ -+- Issue #23914: Fixed SystemError raised by CPickle unpickler on broken data. -+ -+- Issue #25924: Avoid unnecessary serialization of getaddrinfo(3) calls on -+ OS X versions 10.5 or higher. Original patch by A. Jesse Jiryu Davis. -+ -+- Issue #26406: Avoid unnecessary serialization of getaddrinfo(3) calls on -+ current versions of OpenBSD and NetBSD. Patch by A. Jesse Jiryu Davis. -+ -+IDLE -+---- -+ -+- Issue #26673: When tk reports font size as 0, change to size 10. -+ Such fonts on Linux prevented the configuration dialog from opening. -+ -+- Issue #27044: Add ConfigDialog.remove_var_callbacks to stop memory leaks. -+ -+- In the 'IDLE-console differences' section of the IDLE doc, clarify -+ how running with IDLE affects sys.modules and the standard streams. -+ -+- Issue #25507: fix incorrect change in IOBinding that prevented printing. -+ Change also prevented saving shell window with non-ascii characters. -+ Augment IOBinding htest to include all major IOBinding functions. -+ -+- Issue #25905: Revert unwanted conversion of ' to ’ RIGHT SINGLE QUOTATION -+ MARK in README.txt and open this and NEWS.txt with 'ascii'. -+ Re-encode CREDITS.txt to utf-8 and open it with 'utf-8'. -+ -+- Issue #26417: Prevent spurious errors and incorrect defaults when -+ installing IDLE 2.7 on OS X: default configuration settings are -+ no longer installed from OS X specific copies. -+ -+Documentation -+------------- -+ -+- Issue #26736: Used HTTPS for external links in the documentation if possible. -+ -+- Issue #6953: Rework the Readline module documentation to group related -+ functions together, and add more details such as what underlying Readline -+ functions and variables are accessed. -+ -+Tests -+----- -+ -+- Issue #25940: Changed test_ssl to use self-signed.pythontest.net. This -+ avoids relying on svn.python.org, which recently changed root certificate. -+ -+- Issue #25616: Tests for OrderedDict are extracted from test_collections -+ into separate file test_ordered_dict. -+ -+Build -+----- -+ -+- Issue #22359: Avoid incorrect recursive $(MAKE), and disable the rules for -+ running pgen when cross-compiling. The pgen output is normally saved with -+ the source code anyway, and is still regenerated when doing a native build. -+ Patch by Jonas Wagner and Xavier de Gaye. -+ -+- Issue #19450: Update Windows builds to use SQLite 3.8.11.0. -+ -+- Issue #17603: Avoid error about nonexistant fileblocks.o file by using a -+ lower-level check for st_blocks in struct stat. -+ -+- Issue #26465: Update Windows builds to use OpenSSL 1.0.2g. -+ -+- Issue #24421: Compile Modules/_math.c once, before building extensions. -+ Previously it could fail to compile properly if the math and cmath builds -+ were concurrent. -+ -+- Issue #25824: Fixes sys.winver to not include any architecture suffix. -+ -+- Issue #25348: Added ``--pgo`` and ``--pgo-job`` arguments to -+ ``PCbuild\build.bat`` for building with Profile-Guided Optimization. The -+ old ``PCbuild\build_pgo.bat`` script is now deprecated, and simply calls -+ ``PCbuild\build.bat --pgo %*``. -+ -+- Issue #25827: Add support for building with ICC to ``configure``, including -+ a new ``--with-icc`` flag. -+ -+- Issue #25696: Fix installation of Python on UNIX with make -j9. -+ -+- Issue #26465: Update OS X 10.5+ 32-bit-only installer to build -+ and link with OpenSSL 1.0.2g. -+ -+- Issue #26268: Update Windows builds to use OpenSSL 1.0.2f. -+ -+- Issue #25136: Support Apple Xcode 7's new textual SDK stub libraries. -+ -+Tools/Demos -+----------- -+ -+- Issue #26799: Fix python-gdb.py: don't get C types once when the Python code -+ is loaded, but get C types on demand. The C types can change if -+ python-gdb.py is loaded before the Python executable. Patch written by Thomas -+ Ilsche. -+ -+C API -+----- -+ -+- Issue #26476: Fixed compilation error when use PyErr_BadInternalCall() in C++. -+ Patch by Jeroen Demeyer. -+ -+ -+What's New in Python 2.7.11? -+============================ -+ -+*Release date: XXXX-XX-XX* -+ -+Core and Builtins -+----------------- -+ -+- Issue #21167: NAN operations are now handled correctly when python is -+ compiled with ICC even if -fp-model strict is not specified. -+ -+- Issue #24467: Fixed possible buffer over-read in bytearray. The bytearray -+ object now always allocates place for trailing null byte and it's buffer now -+ is always null-terminated. -+ -+- Issue #19543: encode() and decode() methods and constructors of str, -+ unicode and bytearray classes now emit deprecation warning for known -+ non-text encodings when Python is ran with the -3 option. -+ -+- Issue #24115: Update uses of PyObject_IsTrue(), PyObject_Not(), -+ PyObject_IsInstance(), PyObject_RichCompareBool() and _PyDict_Contains() -+ to check for and handle errors correctly. -+ -+- Issue #4753: On compilers where it is supported, use "computed gotos" for -+ bytecode dispatch in the interpreter. This improves interpretation -+ performance. -+ -+- Issue #22939: Fixed integer overflow in iterator object. Original patch by -+ Clement Rouault. -+ -+- Issue #24102: Fixed exception type checking in standard error handlers. -+ -+Library -+------- -+ -+- Issue #24684: socket.socket.getaddrinfo() now calls -+ PyUnicode_AsEncodedString() instead of calling the encode() method of the -+ host, to handle correctly custom unicode string with an encode() method -+ which doesn't return a byte string. The encoder of the IDNA codec is now -+ called directly instead of calling the encode() method of the string. -+ -+- Issue #24982: shutil.make_archive() with the "zip" format now adds entries -+ for directories (including empty directories) in ZIP file. -+ -+- Issue #17849: Raise a sensible exception if an invalid response is -+ received for a HTTP tunnel request, as seen with some servers that -+ do not support tunnelling. Initial patch from Cory Benfield. -+ -+- Issue #16180: Exit pdb if file has syntax error, instead of trapping user -+ in an infinite loop. Patch by Xavier de Gaye. -+ -+- Issue #22812: Fix unittest discovery examples. -+ Patch from Pam McA'Nulty. -+ -+- Issue #24634: Importing uuid should not try to load libc on Windows -+ -+- Issue #23652: Make it possible to compile the select module against the -+ libc headers from the Linux Standard Base, which do not include some -+ EPOLL macros. Initial patch by Matt Frank. -+ -+- Issue #15138: Speed up base64.urlsafe_b64{en,de}code considerably. -+ -+- Issue #23319: Fix ctypes.BigEndianStructure, swap correctly bytes. Patch -+ written by Matthieu Gautier. -+ -+- Issue #23254: Document how to close the TCPServer listening socket. -+ Patch from Martin Panter. -+ -+- Issue #17527: Add PATCH to wsgiref.validator. Patch from Luca Sbardella. -+ -+- Issue #24613: Calling array.fromstring() with self is no longer allowed -+ to prevent the use-after-free error. Patch by John Leitch. -+ -+- Issue #24708: Fix possible integer overflow in strop.replace(). -+ -+- Issue #24620: Random.setstate() now validates the value of state last element. -+ -+- Issue #13938: 2to3 converts StringTypes to a tuple. Patch from Mark Hammond. -+ -+- Issue #24611: Fixed compiling the posix module on non-Windows platforms -+ without mknod() or makedev() (e.g. on Unixware). -+ -+- Issue #18684: Fixed reading out of the buffer in the re module. -+ -+- Issue #24259: tarfile now raises a ReadError if an archive is truncated -+ inside a data segment. -+ -+- Issue #24514: tarfile now tolerates number fields consisting of only -+ whitespace. -+ -+- Issue #20387: Restore semantic round-trip correctness in tokenize/untokenize -+ for tab-indented blocks. -+ -+- Issue #24456: Fixed possible buffer over-read in adpcm2lin() and lin2adpcm() -+ functions of the audioop module. Fixed SystemError when the state is not a -+ tuple. Fixed possible memory leak. -+ -+- Issue #24481: Fix possible memory corruption with large profiler info strings -+ in hotshot. -+ -+- Issue #24489: ensure a previously set C errno doesn't disturb cmath.polar(). -+ -+- Issue #19543: io.TextIOWrapper (and hence io.open()) now uses the internal -+ codec marking system added to emit deprecation warning for known non-text -+ encodings at stream construction time when Python is ran with the -3 option. -+ -+- Issue #24264: Fixed buffer overflow in the imageop module. -+ -+- Issue #5633: Fixed timeit when the statement is a string and the setup is not. -+ -+- Issue #24326: Fixed audioop.ratecv() with non-default weightB argument. -+ Original patch by David Moore. -+ -+- Issue #22095: Fixed HTTPConnection.set_tunnel with default port. The port -+ value in the host header was set to "None". Patch by Demian Brecht. -+ -+- Issue #24257: Fixed segmentation fault in sqlite3.Row constructor with faked -+ cursor type. -+ -+- Issue #24286: Dict view were not registered with the MappingView abstract -+ base classes. This caused key and item views in OrderedDict to not be equal -+ to their regular dict counterparts. -+ -+- Issue #22107: tempfile.gettempdir() and tempfile.mkdtemp() now try again -+ when a directory with the chosen name already exists on Windows as well as -+ on Unix. tempfile.mkstemp() now fails early if parent directory is not -+ valid (not exists or is a file) on Windows. -+ -+- Issue #6598: Increased time precision and random number range in -+ email.utils.make_msgid() to strengthen the uniqueness of the message ID. -+ -+- Issue #24091: Fixed various crashes in corner cases in cElementTree. -+ -+- Issue #15267: HTTPConnection.request() now is compatibile with old-style -+ classes (such as TemporaryFile). Original patch by Atsuo Ishimoto. -+ -+- Issue #20014: array.array() now accepts unicode typecodes. Based on patch by -+ Vajrasky Kok. -+ -+- Issue #23637: Showing a warning no longer fails with UnicodeErrror. -+ Formatting unicode warning in the file with the path containing non-ascii -+ characters no longer fails with UnicodeErrror. -+ -+- Issue #24134: Reverted issue #24134 changes. -+ -+Build -+----- -+ -+- Issue #24915: When doing a PGO build, the test suite is now used instead of -+ pybench; Clang support was also added as part off this work. -+ -+- Issue #24986: It is now possible to build Python on Windows without errors -+ when external libraries are not available. -+ -+- Issue #24508: Backported the MSBuild project files from Python 3.5. The -+ backported files replace the old project files in PCbuild; the old files moved -+ to PC/VS9.0 and remain supported. -+ -+- Issue #24603: Update Windows builds and OS X 10.5 installer to use OpenSSL -+ 1.0.2d. -+ -+IDLE -+---- -+ -+- Issue #23672: Allow Idle to edit and run files with astral chars in name. -+ Patch by Mohd Sanad Zaki Rizvi. -+ -+- Issue 24745: Idle editor default font. Switch from Courier to -+ platform-sensitive TkFixedFont. This should not affect current customized -+ font selections. If there is a problem, edit $HOME/.idlerc/config-main.cfg -+ and remove 'fontxxx' entries from [Editor Window]. Patch by Mark Roseman. -+ -+- Issue #21192: Idle editor. When a file is run, put its name in the restart bar. -+ Do not print false prompts. Original patch by Adnan Umer. -+ -+- Issue #13884: Idle menus. Remove tearoff lines. Patch by Roger Serwy. -+ -+- Issue #15809: IDLE shell now uses locale encoding instead of Latin1 for -+ decoding unicode literals. -+ -+Documentation -+------------- -+ -+- Issue #24952: Clarify the default size argument of stack_size() in -+ the "threading" and "thread" modules. Patch from Mattip. -+ -+- Issue #20769: Improve reload() docs. Patch by Dorian Pula. -+ -+- Issue #23589: Remove duplicate sentence from the FAQ. Patch by Yongzhi Pan. -+ -+- Issue #22155: Add File Handlers subsection with createfilehandler to Tkinter -+ doc. Remove obsolete example from FAQ. Patch by Martin Panter. -+ -+Tests -+----- -+ -+- Issue #24751: When running regrtest with the ``-w`` command line option, -+ a test run is no longer marked as a failure if all tests succeed when -+ re-run. -+ -+- PCbuild\rt.bat now accepts an unlimited number of arguments to pass along -+ to regrtest.py. Previously there was a limit of 9. -+ -+Windows -+------- -+ -+- Issue #25022: Removed very outdated PC/example_nt/ directory. -+ -+ -+What's New in Python 2.7.10? -+============================ -+ -+*Release date: 2015-05-23* -+ -+Library -+------- -+ -+- Issue #22931: Allow '[' and ']' in cookie values. -+ -+ -+What's New in Python 2.7.10 release candidate 1? -+================================================ -+ -+*Release date: 2015-05-10* -+ -+Core and Builtins -+----------------- -+ -+- Issue #23971: Fix underestimated presizing in dict.fromkeys(). -+ -+- Issue #23757: PySequence_Tuple() incorrectly called the concrete list API -+ when the data was a list subclass. -+ -+- Issue #23629: Fix the default __sizeof__ implementation for variable-sized -+ objects. -+ -+- Issue #23055: Fixed a buffer overflow in PyUnicode_FromFormatV. Analysis -+ and fix by Guido Vranken. -+ -+- Issue #23048: Fix jumping out of an infinite while loop in the pdb. -+ -+Library -+------- -+ -+- The keywords attribute of functools.partial is now always a dictionary. -+ -+- Issue #20274: When calling a _sqlite.Connection, it now complains if passed -+ any keyword arguments. Previously it silently ignored them. -+ -+- Issue #20274: Remove ignored and erroneous "kwargs" parameters from three -+ METH_VARARGS methods on _sqlite.Connection. -+ -+- Issue #24134: assertRaises() and assertRaisesRegexp() checks are not longer -+ successful if the callable is None. -+ -+- Issue #23008: Fixed resolving attributes with boolean value is False in pydoc. -+ -+- Issues #24099, #24100, and #24101: Fix use-after-free bug in heapq's siftup -+ and siftdown functions. -+ -+- Backport collections.deque fixes from Python 3.5. Prevents reentrant badness -+ during deletion by deferring the decref until the container has been restored -+ to a consistent state. -+ -+- Issue #23842: os.major(), os.minor() and os.makedev() now support ints again. -+ -+- Issue #23811: Add missing newline to the PyCompileError error message. -+ Patch by Alex Shkop. -+ -+- Issue #17898: Fix exception in gettext.py when parsing certain plural forms. -+ -+- Issue #23865: close() methods in multiple modules now are idempotent and more -+ robust at shutdown. If they need to release multiple resources, all are -+ released even if errors occur. -+ -+- Issue #23881: urllib.ftpwrapper constructor now closes the socket if the FTP -+ connection failed. -+ -+- Issue #15133: _tkinter.tkapp.getboolean() now supports long and Tcl_Obj and -+ always returns bool. tkinter.BooleanVar now validates input values (accepted -+ bool, int, long, str, unicode, and Tcl_Obj). tkinter.BooleanVar.get() now -+ always returns bool. -+ -+- Issue #23338: Fixed formatting ctypes error messages on Cygwin. -+ Patch by Makoto Kato. -+ -+- Issue #16840: Tkinter now supports 64-bit integers added in Tcl 8.4 and -+ arbitrary precision integers added in Tcl 8.5. -+ -+- Issue #23834: Fix socket.sendto(), use the C long type to store the result of -+ sendto() instead of the C int type. -+ -+- Issue #21526: Tkinter now supports new boolean type in Tcl 8.5. -+ -+- Issue #23838: linecache now clears the cache and returns an empty result on -+ MemoryError. -+ -+- Issue #23742: ntpath.expandvars() no longer loses unbalanced single quotes. -+ -+- Issue #21802: The reader in BufferedRWPair now is closed even when closing -+ writer failed in BufferedRWPair.close(). -+ -+- Issue #23671: string.Template now allows to specify the "self" parameter as -+ keyword argument. string.Formatter now allows to specify the "self" and -+ the "format_string" parameters as keyword arguments. -+ -+- Issue #21560: An attempt to write a data of wrong type no longer cause -+ GzipFile corruption. Original patch by Wolfgang Maier. -+ -+- Issue #23647: Increase impalib's MAXLINE to accommodate modern mailbox sizes. -+ -+- Issue #23539: If body is None, http.client.HTTPConnection.request now sets -+ Content-Length to 0 for PUT, POST, and PATCH headers to avoid 411 errors from -+ some web servers. -+ -+- Issue #23136: _strptime now uniformly handles all days in week 0, including -+ Dec 30 of previous year. Based on patch by Jim Carroll. -+ -+- Issue #23138: Fixed parsing cookies with absent keys or values in cookiejar. -+ Patch by Demian Brecht. -+ -+- Issue #23051: multiprocessing.Pool methods imap() and imap_unordered() now -+ handle exceptions raised by an iterator. Patch by Alon Diamant and Davin -+ Potts. -+ -+- Issue #22928: Disabled HTTP header injections in httplib. -+ Original patch by Demian Brecht. -+ -+- Issue #23615: Module tarfile is now can be reloaded with imp.reload(). -+ -+- Issue #22853: Fixed a deadlock when use multiprocessing.Queue at import time. -+ Patch by Florian Finkernagel and Davin Potts. -+ -+- Issue #23476: In the ssl module, enable OpenSSL's X509_V_FLAG_TRUSTED_FIRST -+ flag on certificate stores when it is available. -+ -+- Issue #23576: Avoid stalling in SSL reads when EOF has been reached in the -+ SSL layer but the underlying connection hasn't been closed. -+ -+- Issue #23504: Added an __all__ to the types module. -+ -+- Issue #23458: On POSIX, the file descriptor kept open by os.urandom() is now -+ set to non inheritable -+ -+- Issue #22113: struct.pack_into() now supports new buffer protocol (in -+ particular accepts writable memoryview). -+ -+- Issues #814253, #9179: Warnings now are raised when group references and -+ conditional group references are used in lookbehind assertions in regular -+ expressions. -+ -+- Issue #23215: Multibyte codecs with custom error handlers that ignores errors -+ consumed too much memory and raised SystemError or MemoryError. -+ Original patch by Aleksi Torhamo. -+ -+- Issue #5700: io.FileIO() called flush() after closing the file. -+ flush() was not called in close() if closefd=False. -+ -+- Issue #21548: Fix pydoc.synopsis() and pydoc.apropos() on modules with empty -+ docstrings. Initial patch by Yuyang Guo. -+ -+- Issue #22885: Fixed arbitrary code execution vulnerability in the dumbdbm -+ module. Original patch by Claudiu Popa. -+ -+- Issue #23481: Remove RC4 from the SSL module's default cipher list. -+ -+- Issue #21849: Fixed xmlrpclib serialization of non-ASCII unicode strings in -+ the multiprocessing module. -+ -+- Issue #21840: Fixed expanding unicode variables of form $var in -+ posixpath.expandvars(). Fixed all os.path implementations on -+ unicode-disabled builds. -+ -+- Issue #23367: Fix possible overflows in the unicodedata module. -+ -+- Issue #23363: Fix possible overflow in itertools.permutations. -+ -+- Issue #23364: Fix possible overflow in itertools.product. -+ -+- Issue #23365: Fixed possible integer overflow in -+ itertools.combinations_with_replacement. -+ -+- Issue #23366: Fixed possible integer overflow in itertools.combinations. -+ -+- Issue #23191: fnmatch functions that use caching are now threadsafe. -+ -+- Issue #18518: timeit now rejects statements which can't be compiled outside -+ a function or a loop (e.g. "return" or "break"). -+ -+- Issue #19996: Make :mod:`httplib` ignore headers with no name rather than -+ assuming the body has started. -+ -+- Issue #20188: Support Application-Layer Protocol Negotiation (ALPN) in the ssl -+ module. -+ -+- Issue #23248: Update ssl error codes from latest OpenSSL git master. -+ -+- Issue #23098: 64-bit dev_t is now supported in the os module. -+ -+- Issue #23063: In the disutils' check command, fix parsing of reST with code or -+ code-block directives. -+ -+- Issue #21356: Make ssl.RAND_egd() optional to support LibreSSL. The -+ availability of the function is checked during the compilation. Patch written -+ by Bernard Spil. -+ -+- Backport the context argument to ftplib.FTP_TLS. -+ -+- Issue #23111: Maximize compatibility in protocol versions of ftplib.FTP_TLS. -+ -+- Issue #23112: Fix SimpleHTTPServer to correctly carry the query string and -+ fragment when it redirects to add a trailing slash. -+ -+- Issue #22585: On OpenBSD 5.6 and newer, os.urandom() now calls getentropy(), -+ instead of reading /dev/urandom, to get pseudo-random bytes. -+ -+- Issue #23093: In the io, module allow more operations to work on detached -+ streams. -+ -+- Issue #23071: Added missing names to codecs.__all__. Patch by Martin Panter. -+ -+- Issue #23016: A warning no longer produces an AttributeError when sys.stderr -+ is None. -+ -+- Issue #21032. Fixed socket leak if HTTPConnection.getresponse() fails. -+ Original patch by Martin Panter. -+ -+- Issue #22609: Constructors and update methods of mapping classes in the -+ collections module now accept the self keyword argument. -+ -+Documentation -+------------- -+ -+- Issue #23006: Improve the documentation and indexing of dict.__missing__. -+ Add an entry in the language datamodel special methods section. -+ Revise and index its discussion in the stdtypes mapping/dict section. -+ Backport the code example from 3.4. -+ -+- Issue #21514: The documentation of the json module now refers to new JSON RFC -+ 7159 instead of obsoleted RFC 4627. -+ -+Tools/Demos -+----------- -+ -+- Issue #23330: h2py now supports arbitrary filenames in #include. -+ -+- Issue #6639: Module-level turtle functions no longer raise TclError after -+ closing the window. -+ -+- Issue #22314: pydoc now works when the LINES environment variable is set. -+ -+- Issue #18905: "pydoc -p 0" now outputs actually used port. Based on patch by -+ Wieland Hoffmann. -+ -+- Issue #23345: Prevent test_ssl failures with large OpenSSL patch level -+ values (like 0.9.8zc). -+ -+Tests -+----- -+ -+- Issue #23799: Added test.test_support.start_threads() for running and -+ cleaning up multiple threads. -+ -+- Issue #22390: test.regrtest now emits a warning if temporary files or -+ directories are left after running a test. -+ -+- Issue #23583: Added tests for standard IO streams in IDLE. -+ -+- Issue #23392: Added tests for marshal C API that works with FILE*. -+ -+- Issue #18982: Add tests for CLI of the calendar module. -+ -+- Issue #19949: The test_xpickle test now tests compatibility with installed -+ Python 2.7 and reports skipped tests. Based on patch by Zachary Ware. -+ -+- Issue #11578: Backported test for the timeit module. -+ -+- Issue #22943: bsddb tests are locale independend now. -+ -+IDLE -+---- -+ -+- Issue #23583: Fixed writing unicode to standard output stream in IDLE. -+ -+- Issue #20577: Configuration of the max line length for the FormatParagraph -+ extension has been moved from the General tab of the Idle preferences dialog -+ to the FormatParagraph tab of the Config Extensions dialog. -+ Patch by Tal Einat. -+ -+- Issue #16893: Update Idle doc chapter to match current Idle and add new -+ information. -+ -+- Issue #23180: Rename IDLE "Windows" menu item to "Window". -+ Patch by Al Sweigart. -+ -+Build -+----- -+ -+- Issue #15506: Use standard PKG_PROG_PKG_CONFIG autoconf macro in the configure -+ script. -+ -+- Issue #23032: Fix installer build failures on OS X 10.4 Tiger -+ by disabling assembly code in the OpenSSL build. -+ -+- Issue #23686: Update OS X 10.5 installer and Windows builds to use -+ OpenSSL 1.0.2a. -+ -+C API -+----- -+ -+- Issue #23998: PyImport_ReInitLock() now checks for lock allocation error -+ -+- Issue #22079: PyType_Ready() now checks that statically allocated type has -+ no dynamically allocated bases. -+ -+ -+What's New in Python 2.7.9? -+=========================== -+ -+*Release date: 2014-12-10* -+ -+Library -+------- -+ -+- Issue #22959: Remove the *check_hostname* parameter of -+ httplib.HTTPSConnection. The *context* parameter should be used instead. -+ -+- Issue #16043: Add a default limit for the amount of data xmlrpclib.gzip_decode -+ will return. This resolves CVE-2013-1753. -+ -+- Issue #16042: CVE-2013-1752: smtplib: Limit amount of data read by limiting -+ the call to readline(). Original patch by Christian Heimes. -+ -+- Issue #16041: In poplib, limit maximum line length read from the server to -+ prevent CVE-2013-1752. -+ -+- Issue #22960: Add a context argument to xmlrpclib.ServerProxy. -+ -+Build -+----- -+ -+- Issue #22935: Allow the ssl module to be compiled if openssl doesn't support -+ SSL 3. -+ -+- Issue #17128: Use private version of OpenSSL for 2.7.9 OS X 10.5+ installer. -+ -+ -+What's New in Python 2.7.9 release candidate 1? -+=============================================== -+ -+*Release date: 2014-11-25* -+ -+Core and Builtins -+----------------- -+ -+- Issue #21963: backout issue #1856 patch (avoid crashes and lockups when -+ daemon threads run while the interpreter is shutting down; instead, these -+ threads are now killed when they try to take the GIL), as it seems to -+ break some existing code. -+ -+- Issue #22604: Fix assertion error in debug mode when dividing a complex -+ number by (nan+0j). -+ -+- Issue #22470: Fixed integer overflow issues in "backslashreplace" and -+ "xmlcharrefreplace" error handlers. -+ -+- Issue #22526: Fix iterating through files with lines longer than 2^31 bytes. -+ -+- Issue #22519: Fix overflow checking in PyString_Repr. -+ -+- Issue #22518: Fix integer overflow issues in latin-1 encoding. -+ -+- Issue #22379: Fix empty exception message in a TypeError raised in -+ ``str.join``. -+ -+- Issue #22221: Now the source encoding declaration on the second line isn't -+ effective if the first line contains anything except a comment. -+ -+- Issue #22023: Fix ``%S``, ``%R`` and ``%V`` formats of -+ :c:func:`PyUnicode_FromFormat`. -+ -+- Issue #21591: Correctly handle qualified exec statements in tuple form by -+ moving compatibility layer from run-time to AST transformation. -+ -+Library -+------- -+ -+- Issue #22417: Verify certificates by default in httplib (PEP 476). -+ -+- Issue #22927: Allow urllib.urlopen to take a *context* parameter to control -+ SSL settings for HTTPS connections. -+ -+- Issue #22921: Allow SSLContext to take the *hostname* parameter even if -+ OpenSSL doesn't support SNI. -+ -+- Issue #9003 and #22366: httplib.HTTPSConnection, urllib2.HTTPSHandler and -+ urllib2.urlopen now take optional arguments to allow for server certificate -+ checking, as recommended in public uses of HTTPS. This backport is part of PEP -+ 467. -+ -+- Issue #12728: Different Unicode characters having the same uppercase but -+ different lowercase are now matched in case-insensitive regular expressions. -+ -+- Issue #22821: Fixed fcntl() with integer argument on 64-bit big-endian -+ platforms. -+ -+- Issue #17293: uuid.getnode() now determines MAC address on AIX using netstat. -+ Based on patch by Aivars Kalvāns. -+ -+- Issue #22769: Fixed ttk.Treeview.tag_has() when called without arguments. -+ -+- Issue #22787: Allow the keyfile argument of SSLContext.load_cert_chain to be -+ None. -+ -+- Issue #22775: Fixed unpickling of Cookie.SimpleCookie with protocol 2. -+ Patch by Tim Graham. -+ -+- Issue #22776: Brought excluded code into the scope of a try block in -+ SysLogHandler.emit(). -+ -+- Issue #17381: Fixed ranges handling in case-insensitive regular expressions. -+ -+- Issue #19329: Optimized compiling charsets in regular expressions. -+ -+- Issue #22410: Module level functions in the re module now cache compiled -+ locale-dependent regular expressions taking into account the locale. -+ -+- Issue #8876: distutils now falls back to copying files when hard linking -+ doesn't work. This allows use with special filesystems such as VirtualBox -+ shared folders. -+ -+- Issue #9351: Defaults set with set_defaults on an argparse subparser -+ are no longer ignored when also set on the parent parser. -+ -+- Issue #20421: Add a .version() method to SSL sockets exposing the actual -+ protocol version in use. -+ -+- Issue #22435: Fix a file descriptor leak when SocketServer bind fails. -+ -+- Issue #13664: GzipFile now supports non-ascii Unicode filenames. -+ -+- Issue #13096: Fixed segfault in CTypes POINTER handling of large -+ values. -+ -+- Issue #11694: Raise ConversionError in xdrlib as documented. Patch -+ by Filip Gruszczyński and Claudiu Popa. -+ -+- Issue #1686: Fix string.Template when overriding the pattern attribute. -+ -+- Issue #11866: Eliminated race condition in the computation of names -+ for new threads. -+ -+- Issue #22219: The zipfile module CLI now adds entries for directories -+ (including empty directories) in ZIP file. -+ -+- Issue #22449: In the ssl.SSLContext.load_default_certs, consult the -+ enviromental variables SSL_CERT_DIR and SSL_CERT_FILE on Windows. -+ -+- Issue #8473: doctest.testfile now uses universal newline mode to read -+ the test file. -+ -+- Issue #20076: Added non derived UTF-8 aliases to locale aliases table. -+ -+- Issue #20079: Added locales supported in glibc 2.18 to locale alias table. -+ -+- Issue #22530: Allow the ``group()`` method of regular expression match objects -+ to take a ``long`` as an index. -+ -+- Issue #22517: When a io.BufferedRWPair object is deallocated, clear its -+ weakrefs. -+ -+- Issue #10510: distutils register and upload methods now use HTML standards -+ compliant CRLF line endings. -+ -+- Issue #9850: Fixed macpath.join() for empty first component. Patch by -+ Oleg Oshmyan. -+ -+- Issue #20912: Now directories added to ZIP file have correct Unix and MS-DOS -+ directory attributes. -+ -+- Issue #21866: ZipFile.close() no longer writes ZIP64 central directory -+ records if allowZip64 is false. -+ -+- Issue #22415: Fixed debugging output of the GROUPREF_EXISTS opcode in the re -+ module. -+ -+- Issue #22423: Unhandled exception in thread no longer causes unhandled -+ AttributeError when sys.stderr is None. -+ -+- Issue #22419: Limit the length of incoming HTTP request in wsgiref server to -+ 65536 bytes and send a 414 error code for higher lengths. Patch contributed -+ by Devin Cook. -+ -+- Lax cookie parsing in http.cookies could be a security issue when combined -+ with non-standard cookie handling in some Web browsers. Reported by -+ Sergey Bobrov. -+ -+- Issue #21147: sqlite3 now raises an exception if the request contains a null -+ character instead of truncate it. Based on patch by Victor Stinner. -+ -+- Issue #21951: Fixed a crash in Tkinter on AIX when called Tcl command with -+ empty string or tuple argument. -+ -+- Issue #21951: Tkinter now most likely raises MemoryError instead of crash -+ if the memory allocation fails. -+ -+- Issue #22226: First letter no longer is stripped from the "status" key in -+ the result of Treeview.heading(). -+ -+- Issue #22051: turtledemo no longer reloads examples to re-run them. -+ Initialization of variables and gui setup should be done in main(), -+ which is called each time a demo is run, but not on import. -+ -+- Issue #21597: The separator between the turtledemo text pane and the drawing -+ canvas can now be grabbed and dragged with a mouse. The code text pane can -+ be widened to easily view or copy the full width of the text. The canvas -+ can be widened on small screens. Original patches by Jan Kanis and Lita Cho. -+ -+- Issue #18132: Turtledemo buttons no longer disappear when the window is -+ shrunk. Original patches by Jan Kanis and Lita Cho. -+ -+- Issue #22312: Fix ntpath.splitdrive IndexError. -+ -+- Issue #22216: smtplib now resets its state more completely after a quit. The -+ most obvious consequence of the previous behavior was a STARTTLS failure -+ during a connect/starttls/quit/connect/starttls sequence. -+ -+- Issue #21305: os.urandom now caches a fd to /dev/urandom. This is a PEP 466 -+ backport from Python 3. -+ -+- Issue #21307: As part of PEP 466, backport hashlib.algorithms_guaranteed and -+ hashlib.algorithms_available. -+ -+- Issue #22259: Fix segfault when attempting to fopen a file descriptor -+ corresponding to a directory. -+ -+- Issue #22236: Fixed Tkinter images copying operations in NoDefaultRoot mode. -+ -+- Issue #22191: Fixed warnings.__all__. -+ -+- Issue #21308: Backport numerous features from Python's ssl module. This is -+ part of PEP 466. -+ -+- Issue #15696: Add a __sizeof__ implementation for mmap objects on Windows. -+ -+- Issue #8797: Raise HTTPError on failed Basic Authentication immediately. -+ Initial patch by Sam Bull. -+ -+- Issue #22068: Avoided reference loops with Variables and Fonts in Tkinter. -+ -+- Issue #21448: Changed FeedParser feed() to avoid O(N**2) behavior when -+ parsing long line. Original patch by Raymond Hettinger. -+ -+- Issue #17923: glob() patterns ending with a slash no longer match non-dirs on -+ AIX. Based on patch by Delhallt. -+ -+- Issue #21975: Fixed crash when using uninitialized sqlite3.Row (in particular -+ when unpickling pickled sqlite3.Row). sqlite3.Row is now initialized in the -+ __new__() method. -+ -+- Issue #16037: HTTPMessage.readheaders() raises an HTTPException when more -+ than 100 headers are read. Patch by Jyrki Pulliainen and Daniel Eriksson. -+ -+- Issue #21580: Now Tkinter correctly handles binary "data" and "maskdata" -+ configure options of tkinter.PhotoImage. -+ -+- Issue #19612: subprocess.communicate() now also ignores EINVAL when using at -+ least two pipes. -+ -+- Fix repr(_socket.socket) on Windows 64-bit: don't fail with OverflowError -+ on closed socket. -+ -+- Issue #16133: The asynchat.async_chat.handle_read() method now ignores -+ socket.error() exceptions with blocking I/O errors: EAGAIN, EALREADY, -+ EINPROGRESS, or EWOULDBLOCK. -+ -+- Issue #21990: Clean-up unnecessary and slow inner class definition in -+ saxutils (Contributed by Alex Gaynor). -+ -+- Issue #1730136: Fix the comparison between a tkFont.Font and an object of -+ another kind. -+ -+- Issue #19884: readline: Disable the meta modifier key if stdout is not -+ a terminal to not write the ANSI sequence "\033[1034h" into stdout. This -+ sequence is used on some terminal (ex: TERM=xterm-256color") to enable -+ support of 8 bit characters. -+ -+- Issue #22017: Correct reference counting errror in the initialization of the -+ _warnings module. -+ -+- Issue #21868: Prevent turtle crash when undo buffer set to a value less -+ than one. -+ -+- Issue #21151: Fixed a segfault in the _winreg module when ``None`` is passed -+ as a ``REG_BINARY`` value to SetValueEx. Patch by John Ehresman. -+ -+- Issue #21090: io.FileIO.readall() does not ignore I/O errors anymore. Before, -+ it ignored I/O errors if at least the first C call read() succeed. -+ -+- Issue #19870: BaseCookie now parses 'secure' and 'httponly' flags. -+ Backport of issue #16611. -+ -+- Issue #21923: Prevent AttributeError in distutils.sysconfig.customize_compiler -+ due to possible uninitialized _config_vars. -+ -+- Issue #21323: Fix CGIHTTPServer to again handle scripts in CGI subdirectories, -+ broken by the fix for security issue #19435. Patch by Zach Byrne. -+ -+- Issue #22199: Make get_makefile_filename() available in Lib/sysconfig.py -+ for 2.7 to match other versions of sysconfig. -+ -+IDLE -+---- -+ -+- Issue #3068: Add Idle extension configuration dialog to Options menu. -+ Changes are written to HOME/.idlerc/config-extensions.cfg. -+ Original patch by Tal Einat. -+ -+- Issue #16233: A module browser (File : Class Browser, Alt+C) requires a -+ editor window with a filename. When Class Browser is requested otherwise, -+ from a shell, output window, or 'Untitled' editor, Idle no longer displays -+ an error box. It now pops up an Open Module box (Alt+M). If a valid name -+ is entered and a module is opened, a corresponding browser is also opened. -+ -+- Issue #4832: Save As to type Python files automatically adds .py to the -+ name you enter (even if your system does not display it). Some systems -+ automatically add .txt when type is Text files. -+ -+- Issue #21986: Code objects are not normally pickled by the pickle module. -+ To match this, they are no longer pickled when running under Idle. -+ -+- Issue #22221: IDLE now ignores the source encoding declaration on the second -+ line if the first line contains anything except a comment. -+ -+- Issue #17390: Adjust Editor window title; remove 'Python', -+ move version to end. -+ -+- Issue #14105: Idle debugger breakpoints no longer disappear -+ when inseting or deleting lines. -+ -+Extension Modules -+----------------- -+ -+- Issue #22381: Update zlib to 1.2.8. -+ -+- Issue #22176: Update the ctypes module's libffi to v3.1. This release -+ adds support for the Linux AArch64 and POWERPC ELF ABIv2 little endian -+ architectures. -+ -+Tools/Demos -+----------- -+ -+- Issue #10712: 2to3 has a new "asserts" fixer that replaces deprecated names -+ of unittest methods (e.g. failUnlessEqual -> assertEqual). -+ -+- Issue #22221: 2to3 and the findnocoding.py script now ignore the source -+ encoding declaration on the second line if the first line contains anything -+ except a comment. -+ -+- Issue #22201: Command-line interface of the zipfile module now correctly -+ extracts ZIP files with directory entries. Patch by Ryan Wilson. -+ -+Tests -+----- -+ -+- Issue #22236: Tkinter tests now don't reuse default root window. New root -+ window is created for every test class. -+ -+- Issue #18004: test_overflow in test_list by mistake consumed 40 GiB of memory -+ on 64-bit systems. -+ -+- Issue #21976: Fix test_ssl to accept LibreSSL version strings. Thanks -+ to William Orr. -+ -+- Issue #22770: Prevent some Tk segfaults on OS X when running gui tests. -+ -+Build -+----- -+ -+- Issue #20221: Removed conflicting (or circular) hypot definition when -+ compiled with VS 2010 or above. Initial patch by Tabrez Mohammed. -+ -+- Issue #16537: Check whether self.extensions is empty in setup.py. Patch by -+ Jonathan Hosmer. -+ -+- The documentation Makefile no longer automatically downloads Sphinx. Users are -+ now required to have Sphinx already installed to build the documentation. -+ -+- Issue #21958: Define HAVE_ROUND when building with Visual Studio 2013 and -+ above. Patch by Zachary Turner. -+ -+- Issue #15759: "make suspicious", "make linkcheck" and "make doctest" in Doc/ -+ now display special message when and only when there are failures. -+ -+- Issue #21166: Prevent possible segfaults and other random failures of -+ python --generate-posix-vars in pybuilddir.txt build target. -+ -+- Issue #18096: Fix library order returned by python-config. -+ -+- Issue #17219: Add library build dir for Python extension cross-builds. -+ -+- Issue #22877: PEP 477 - OS X installer now installs pip. -+ -+- Issue #22878: PEP 477 - "make install" and "make altinstall" can now install -+ or upgrade pip, using the bundled pip provided by the backported ensurepip -+ module. A configure option, --with-ensurepip[=upgrade|install|no], is -+ available to set the option for subsequent installs; the default for Python 2 -+ in "no" (do not install or upgrade pip). The option can also be set with -+ "make [alt]install ENSUREPIP=[upgrade|install|no]". -+ -+Windows -+------- -+ -+- Issue #17896: The Windows build scripts now expect external library sources -+ to be in ``PCbuild\..\externals`` rather than ``PCbuild\..\..``. -+ -+- Issue #17717: The Windows build scripts now use a copy of NASM pulled from -+ svn.python.org to build OpenSSL. -+ -+- Issue #22644: The bundled version of OpenSSL has been updated to 1.0.1j. -+ -+ -+What's New in Python 2.7.8? -+=========================== -+ -+*Release date: 2014-06-29* -+ -+Core and Builtins -+----------------- -+ -+- Issue #4346: In PyObject_CallMethod and PyObject_CallMethodObjArgs, don't -+ overwrite the error set in PyObject_GetAttr. -+ -+- Issue #21831: Avoid integer overflow when large sizes and offsets are given to -+ the buffer type. CVE-2014-7185. -+ -+- Issue #19656: Running Python with the -3 option now also warns about -+ non-ascii bytes literals. -+ -+- Issue #21642: If the conditional if-else expression, allow an integer written -+ with no space between itself and the ``else`` keyword (e.g. ``True if 42else -+ False``) to be valid syntax. -+ -+- Issue #21523: Fix over-pessimistic computation of the stack effect of -+ some opcodes in the compiler. This also fixes a quadratic compilation -+ time issue noticeable when compiling code with a large number of "and" -+ and "or" operators. -+ -+Library -+------- -+ -+- Issue #21652: Prevent mimetypes.type_map from containing unicode keys on -+ Windows. -+ -+- Issue #21729: Used the "with" statement in the dbm.dumb module to ensure -+ files closing. -+ -+- Issue #21672: Fix the behavior of ntpath.join on UNC-style paths. -+ -+- Issue #19145: The times argument for itertools.repeat now handles -+ negative values the same way for keyword arguments as it does for -+ positional arguments. -+ -+- Issue #21832: Require named tuple inputs to be exact strings. -+ -+- Issue #8343: Named group error messages in the re module did not show -+ the name of the erroneous group. -+ -+- Issue #21491: SocketServer: Fix a race condition in child processes reaping. -+ -+- Issue #21635: The difflib SequenceMatcher.get_matching_blocks() method -+ cache didn't match the actual result. The former was a list of tuples -+ and the latter was a list of named tuples. -+ -+- Issue #21722: The distutils "upload" command now exits with a non-zero -+ return code when uploading fails. Patch by Martin Dengler. -+ -+- Issue #21766: Prevent a security hole in CGIHTTPServer by URL unquoting paths -+ before checking for a CGI script at that path. -+ -+- Issue #21310: Fixed possible resource leak in failed open(). -+ -+- Issue #21304: Backport the key derivation function hashlib.pbkdf2_hmac from -+ Python 3 per PEP 466. -+ -+- Issue #11709: Fix the pydoc.help function to not fail when sys.stdin is not a -+ valid file. -+ -+- Issue #13223: Fix pydoc.writedoc so that the HTML documentation for methods -+ that use 'self' in the example code is generated correctly. -+ -+- Issue #21552: Fixed possible integer overflow of too long string lengths in -+ the tkinter module on 64-bit platforms. -+ -+- Issue #14315: The zipfile module now ignores extra fields in the central -+ directory that are too short to be parsed instead of letting a struct.unpack -+ error bubble up as this "bad data" appears in many real world zip files in -+ the wild and is ignored by other zip tools. -+ -+- Issue #21402: Tkinter.ttk now works when default root window is not set. -+ -+- Issue #10203: sqlite3.Row now truly supports sequence protocol. In particulr -+ it supports reverse() and negative indices. Original patch by Claudiu Popa. -+ -+- Issue #8743: Fix interoperability between set objects and the -+ collections.Set() abstract base class. -+ -+- Issue #21481: Argparse equality and inequality tests now return -+ NotImplemented when comparing to an unknown type. -+ -+IDLE -+---- -+ -+- Issue #21940: Add unittest for WidgetRedirector. Initial patch by Saimadhav -+ Heblikar. -+ -+- Issue #18592: Add unittest for SearchDialogBase. Patch by Phil Webster. -+ -+- Issue #21694: Add unittest for ParenMatch. Patch by Saimadhav Heblikar. -+ -+- Issue #21686: add unittest for HyperParser. Original patch by Saimadhav -+ Heblikar. -+ -+- Issue #12387: Add missing upper(lower)case versions of default Windows key -+ bindings for Idle so Caps Lock does not disable them. Patch by Roger Serwy. -+ -+- Issue #21695: Closing a Find-in-files output window while the search is -+ still in progress no longer closes Idle. -+ -+- Issue #18910: Add unittest for textView. Patch by Phil Webster. -+ -+- Issue #18292: Add unittest for AutoExpand. Patch by Saihadhav Heblikar. -+ -+- Issue #18409: Add unittest for AutoComplete. Patch by Phil Webster. -+ -+Tests -+----- -+ -+- Issue #20155: Changed HTTP method names in failing tests in test_httpservers -+ so that packet filtering software (specifically Windows Base Filtering Engine) -+ does not interfere with the transaction semantics expected by the tests. -+ -+- Issue #19493: Refactored the ctypes test package to skip tests explicitly -+ rather than silently. -+ -+- Issue #18492: All resources are now allowed when tests are not run by -+ regrtest.py. -+ -+- Issue #21605: Added tests for Tkinter images. -+ -+- Issue #21493: Added test for ntpath.expanduser(). Original patch by -+ Claudiu Popa. -+ -+- Issue #19925: Added tests for the spwd module. Original patch by Vajrasky Kok. -+ -+- Issue #13355: random.triangular() no longer fails with a ZeroDivisionError -+ when low equals high. -+ -+- Issue #21522: Added Tkinter tests for Listbox.itemconfigure(), -+ PanedWindow.paneconfigure(), and Menu.entryconfigure(). -+ -+- Issue #20635: Added tests for Tk geometry managers. -+ -+Build -+----- -+ -+- Issue #21811: Anticipated fixes to support OS X versions > 10.9. -+ -+Windows -+------- -+ -+- Issue #21671, CVE-2014-0224: The bundled version of OpenSSL has been -+ updated to 1.0.1h. -+ -+ -+What's New in Python 2.7.7 -+========================== -+ -+*Release date: 2014-05-31* -+ -+Build -+----- -+ -+- Issue #21462: Build the Windows installers with OpenSSL 1.0.1g. -+ -+- Issue #19866: Include some test data in the Windows installers, so tests don't -+ fail. -+ -+ -+What's New in Python 2.7.7 release candidate 1? -+=============================================== -+ -+*Release date: 2014-05-17* -+ -+Core and Builtins -+----------------- -+ -+- Issue #21350: Fix file.writelines() to accept arbitrary buffer objects, -+ as advertised. Patch by Brian Kearns. -+ -+- Issue #20437: Fixed 43 potential bugs when deleting objects references. -+ -+- Issue #21134: Fix segfault when str is called on an uninitialized -+ UnicodeEncodeError, UnicodeDecodeError, or UnicodeTranslateError object. -+ -+- Issue #20494: Ensure that free()d memory arenas are really released on POSIX -+ systems supporting anonymous memory mappings. Patch by Charles-François -+ Natali. -+ -+- Issue #17825: Cursor "^" is correctly positioned for SyntaxError and -+ IndentationError. -+ -+- Raise a better error when non-unicode codecs are used for a file's coding -+ cookie. -+ -+- Issue #17976: Fixed potential problem with file.write() not detecting IO error -+ by inspecting the return value of fwrite(). Based on patches by Jaakko Moisio -+ and Victor Stinner. -+ -+- Issue #14432: Generator now clears the borrowed reference to the thread -+ state. Fix a crash when a generator is created in a C thread that is -+ destroyed while the generator is still used. The issue was that a generator -+ contains a frame, and the frame kept a reference to the Python state of the -+ destroyed C thread. The crash occurs when a trace function is setup. -+ -+- Issue #19932: Fix typo in import.h, missing whitespaces in function prototypes. -+ -+- Issue #19638: Fix possible crash / undefined behaviour from huge (more than 2 -+ billion characters) input strings in _Py_dg_strtod. -+ -+- Issue #12546: Allow \x00 to be used as a fill character when using str, int, -+ float, and complex __format__ methods. -+ -+Library -+------- -+ -+- Issue #10744: Fix PEP 3118 format strings on ctypes objects with a nontrivial -+ shape. -+ -+- Issue #7776: Backport Fix ``Host:'' header and reconnection when using -+ http.client.HTTPConnection.set_tunnel() from Python 3. Patch by Nikolaus -+ Rath. -+ -+- Issue #21306: Backport hmac.compare_digest from Python 3. This is part of PEP -+ 466. -+ -+- Issue #21470: Do a better job seeding the random number generator by -+ using enough bytes to span the full state space of the Mersenne Twister. -+ -+- Issue #21469: Reduced the risk of false positives in robotparser by -+ checking to make sure that robots.txt has been read or does not exist -+ prior to returning True in can_fetch(). -+ -+- Issue #21321: itertools.islice() now releases the reference to the source -+ iterator when the slice is exhausted. Patch by Anton Afanasyev. -+ -+- Issue #9291: Do not attempt to re-encode mimetype data read from registry in -+ ANSI mode. Initial patches by Dmitry Jemerov & Vladimir Iofik. -+ -+- Issue #21349: Passing a memoryview to _winreg.SetValueEx now correctly raises -+ a TypeError where it previously crashed the interpreter. Patch by Brian Kearns -+ -+- Fix arbitrary memory access in JSONDecoder.raw_decode with a negative second -+ parameter. Bug reported by Guido Vranken. -+ -+- Issue #21172: isinstance check relaxed from dict to collections.Mapping. -+ -+- Issue #21191: In os.fdopen, never close the file descriptor when an exception -+ happens. -+ -+- Issue #21149: Improved thread-safety in logging cleanup during interpreter -+ shutdown. Thanks to Devin Jeanpierre for the patch. -+ -+- Fix possible overflow bug in strop.expandtabs. You shouldn't be using this -+ module! -+ -+- Issue #20145: `assertRaisesRegex` now raises a TypeError if the second -+ argument is not a string or compiled regex. -+ -+- Issue #21058: Fix a leak of file descriptor in tempfile.NamedTemporaryFile(), -+ close the file descriptor if os.fdopen() fails -+ -+- Issue #20283: RE pattern methods now accept the string keyword parameters -+ as documented. The pattern and source keyword parameters are left as -+ deprecated aliases. -+ -+- Issue #11599: When an external command (e.g. compiler) fails, distutils now -+ prints out the whole command line (instead of just the command name) if the -+ environment variable DISTUTILS_DEBUG is set. -+ -+- Issue #4931: distutils should not produce unhelpful "error: None" messages -+ anymore. distutils.util.grok_environment_error is kept but doc-deprecated. -+ -+- Improve the random module's default seeding to use 256 bits of entropy -+ from os.urandom(). This was already done for Python 3, mildly improving -+ security with a bigger seed space. -+ -+- Issue #15618: Make turtle.py compatible with 'from __future__ import -+ unicode_literals'. Initial patch by Juancarlo Añez. -+ -+- Issue #20501: fileinput module no longer reads whole file into memory when using -+ fileinput.hook_encoded. -+ -+- Issue #6815: os.path.expandvars() now supports non-ASCII Unicode environment -+ variables names and values. -+ -+- Issue #20635: Fixed grid_columnconfigure() and grid_rowconfigure() methods of -+ Tkinter widgets to work in wantobjects=True mode. -+ -+- Issue #17671: Fixed a crash when use non-initialized io.BufferedRWPair. -+ Based on patch by Stephen Tu. -+ -+- Issue #8478: Untokenizer.compat processes first token from iterator input. -+ Patch based on lines from Georg Brandl, Eric Snow, and Gareth Rees. -+ -+- Issue #20594: Avoid name clash with the libc function posix_close. -+ -+- Issue #19856: shutil.move() failed to move a directory to other directory -+ on Windows if source name ends with os.altsep. -+ -+- Issue #14983: email.generator now always adds a line end after each MIME -+ boundary marker, instead of doing so only when there is an epilogue. This -+ fixes an RFC compliance bug and solves an issue with signed MIME parts. -+ -+- Issue #20013: Some imap servers disconnect if the current mailbox is -+ deleted, and imaplib did not handle that case gracefully. Now it -+ handles the 'bye' correctly. -+ -+- Issue #20426: When passing the re.DEBUG flag, re.compile() displays the -+ debug output every time it is called, regardless of the compilation cache. -+ -+- Issue #20368: The null character now correctly passed from Tcl to Python (in -+ unicode strings only). Improved error handling in variables-related commands. -+ -+- Issue #20435: Fix _pyio.StringIO.getvalue() to take into account newline -+ translation settings. -+ -+- Issue #20288: fix handling of invalid numeric charrefs in HTMLParser. -+ -+- Issue #19456: ntpath.join() now joins relative paths correctly when a drive -+ is present. -+ -+- Issue #8260: The read(), readline() and readlines() methods of -+ codecs.StreamReader returned incomplete data when were called after -+ readline() or read(size). Based on patch by Amaury Forgeot d'Arc. -+ -+- Issue #20374: Fix build with GNU readline >= 6.3. -+ -+- Issue #14548: Make multiprocessing finalizers check pid before -+ running to cope with possibility of gc running just after fork. -+ (Backport from 3.x.) -+ -+- Issue #20262: Warnings are raised now when duplicate names are added in the -+ ZIP file or too long ZIP file comment is truncated. -+ -+- Issue #20270: urllib and urlparse now support empty ports. -+ -+- Issue #20243: TarFile no longer raise ReadError when opened in write mode. -+ -+- Issue #20245: The open functions in the tarfile module now correctly handle -+ empty mode. -+ -+- Issue #20086: Restored the use of locale-independent mapping instead of -+ locale-dependent str.lower() in locale.normalize(). -+ -+- Issue #20246: Fix buffer overflow in socket.recvfrom_into. -+ -+- Issue #19082: Working SimpleXMLRPCServer and xmlrpclib examples, both in -+ modules and documentation. -+ -+- Issue #13107: argparse and optparse no longer raises an exception when output -+ a help on environment with too small COLUMNS. Based on patch by -+ Elazar Gershuni. -+ -+- Issue #20207: Always disable SSLv2 except when PROTOCOL_SSLv2 is explicitly -+ asked for. -+ -+- Issue #20072: Fixed multiple errors in tkinter with wantobjects is False. -+ -+- Issue #1065986: pydoc can now handle unicode strings. -+ -+- Issue #16039: CVE-2013-1752: Change use of readline in imaplib module to -+ limit line length. Patch by Emil Lind. -+ -+- Issue #19422: Explicitly disallow non-SOCK_STREAM sockets in the ssl -+ module, rather than silently let them emit clear text data. -+ -+- Issue #20027: Fixed locale aliases for devanagari locales. -+ -+- Issue #20067: Tkinter variables now work when wantobjects is false. -+ -+- Issue #19020: Tkinter now uses splitlist() instead of split() in configure -+ methods. -+ -+- Issue #12226: HTTPS is now used by default when connecting to PyPI. -+ -+- Issue #20048: Fixed ZipExtFile.peek() when it is called on the boundary of -+ the uncompress buffer and read() goes through more than one readbuffer. -+ -+- Issue #20034: Updated alias mapping to most recent locale.alias file -+ from X.org distribution using makelocalealias.py. -+ -+- Issue #5815: Fixed support for locales with modifiers. Fixed support for -+ locale encodings with hyphens. -+ -+- Issue #20026: Fix the sqlite module to handle correctly invalid isolation -+ level (wrong type). -+ -+- Issue #18829: csv.Dialect() now checks type for delimiter, escapechar and -+ quotechar fields. Original patch by Vajrasky Kok. -+ -+- Issue #19855: uuid.getnode() on Unix now looks on the PATH for the -+ executables used to find the mac address, with /sbin and /usr/sbin as -+ fallbacks. -+ -+- Issue #20007: HTTPResponse.read(0) no more prematurely closes connection. -+ Original patch by Simon Sapin. -+ -+- Issue #19912: Fixed numerous bugs in ntpath.splitunc(). -+ -+- Issue #19623: Fixed writing to unseekable files in the aifc module. -+ Fixed writing 'ulaw' (lower case) compressed AIFC files. -+ -+- Issue #17919: select.poll.register() again works with poll.POLLNVAL on AIX. -+ Fixed integer overflow in the eventmask parameter. -+ -+- Issue #17200: telnetlib's read_until and expect timeout was broken by the -+ fix to Issue #14635 in Python 2.7.4 to be interpreted as milliseconds -+ instead of seconds when the platform supports select.poll (ie: everywhere). -+ It is now treated as seconds once again. -+ -+- Issue #19099: The struct module now supports Unicode format strings. -+ -+- Issue #19878: Fix segfault in bz2 module after calling __init__ twice with -+ non-existent filename. Initial patch by Vajrasky Kok. -+ -+- Issue #16373: Prevent infinite recursion for ABC Set class comparisons. -+ -+- Issue #19138: doctest's IGNORE_EXCEPTION_DETAIL now allows a match when -+ no exception detail exists (no colon following the exception's name, or -+ a colon does follow but no text follows the colon). -+ -+- Issue #16231: Fixed pickle.Pickler to only fallback to its default pickling -+ behaviour when Pickler.persistent_id returns None, but not for any other -+ false values. This allows false values other than None to be used as -+ persistent IDs. This behaviour is consistent with cPickle. -+ -+- Issue #11508: Fixed uuid.getnode() and uuid.uuid1() on environment with -+ virtual interface. Original patch by Kent Frazier. -+ -+- Issue #11489: JSON decoder now accepts lone surrogates. -+ -+- Fix test.test_support.bind_port() to not cause an error when Python was -+ compiled on a system with SO_REUSEPORT defined in the headers but run on -+ a system with an OS kernel that does not support that new socket option. -+ -+- Issue #19633: Fixed writing not compressed 16- and 32-bit wave files on -+ big-endian platforms. -+ -+- Issue #19449: in csv's writerow, handle non-string keys when generating the -+ error message that certain keys are not in the 'fieldnames' list. -+ -+- Issue #12853: Fix NameError in distutils.command.upload. -+ -+- Issue #19523: Closed FileHandler leak which occurred when delay was set. -+ -+- Issue #1575020: Fixed support of 24-bit wave files on big-endian platforms. -+ -+- Issue #19480: HTMLParser now accepts all valid start-tag names as defined -+ by the HTML5 standard. -+ -+- Issue #17827: Add the missing documentation for ``codecs.encode`` and -+ ``codecs.decode``. -+ -+- Issue #6157: Fixed Tkinter.Text.debug(). Original patch by Guilherme Polo. -+ -+- Issue #6160: The bbox() method of tkinter.Spinbox now returns a tuple of -+ integers instead of a string. Based on patch by Guilherme Polo. -+ -+- Issue #19286: Directories in ``package_data`` are no longer added to -+ the filelist, preventing failure outlined in the ticket. -+ -+- Issue #6676: Ensure a meaningful exception is raised when attempting -+ to parse more than one XML document per pyexpat xmlparser instance. -+ (Original patches by Hirokazu Yamamoto and Amaury Forgeot d'Arc, with -+ suggested wording by David Gutteridge) -+ -+- Issue #21311: Avoid exception in _osx_support with non-standard compiler -+ configurations. Patch by John Szakmeister. -+ -+Tools/Demos -+----------- -+ -+- Issue #3561: The Windows installer now has an option, off by default, for -+ placing the Python installation into the system "Path" environment variable. -+ This was backported from Python 3.3. -+ -+- Add support for ``yield from`` to 2to3. -+ -+- Add support for the PEP 465 matrix multiplication operator to 2to3. -+ -+- Issue #19936: Added executable bits or shebang lines to Python scripts which -+ requires them. Disable executable bits and shebang lines in test and -+ benchmark files in order to prevent using a random system python, and in -+ source files of modules which don't provide command line interface. -+ -+IDLE -+---- -+ -+- Issue #18104: Add idlelib/idle_test/htest.py with a few sample tests to begin -+ consolidating and improving human-validated tests of Idle. Change other files -+ as needed to work with htest. Running the module as __main__ runs all tests. -+ -+- Issue #21139: Change default paragraph width to 72, the PEP 8 recommendation. -+ -+- Issue #21284: Paragraph reformat test passes after user changes reformat width. -+ -+- Issue #20406: Use Python application icons for Idle window title bars. -+ Patch mostly by Serhiy Storchaka. -+ -+- Issue #21029: Occurrences of "print" are now consistently colored as -+ being a keyword (the colorizer doesn't know if print functions are -+ enabled in the source). -+ -+- Issue #17721: Remove non-functional configuration dialog help button until we -+ make it actually gives some help when clicked. Patch by Guilherme Simões. -+ -+- Issue #17390: Add Python version to Idle editor window title bar. -+ Original patches by Edmond Burnett and Kent Johnson. -+ -+- Issue #20058: sys.stdin.readline() in IDLE now always returns only one line. -+ -+- Issue #19481: print() of unicode, str or bytearray subclass instance in IDLE -+ no more hangs. -+ -+- Issue #18270: Prevent possible IDLE AttributeError on OS X when no initial -+ shell window is present. -+ -+- Issue #17654: Ensure IDLE menus are customized properly on OS X for -+ non-framework builds and for all variants of Tk. -+ -+Tests -+----- -+ -+- Issue #17752: Fix distutils tests when run from the installed location. -+ -+- Issue #18604: Consolidated checks for GUI availability. All platforms now -+ at least check whether Tk can be instantiated when the GUI resource is -+ requested. -+ -+- Issue #20946: Correct alignment assumptions of some ctypes tests. -+ -+- Issue #20743: Fix a reference leak in test_tcl. -+ -+- Issue #20510: Rewrote test_exit in test_sys to match existing comments, -+ use modern unittest features, and use helpers from test.script_helper -+ instead of using subprocess directly. Initial patch by Gareth Rees. -+ -+- Issue #20532: Tests which use _testcapi now are marked as CPython only. -+ -+- Issue #19920: Added tests for TarFile.list(). Based on patch by Vajrasky Kok. -+ -+- Issue #19990: Added tests for the imghdr module. Based on patch by -+ Claudiu Popa. -+ -+- Issue #19804: The test_find_mac test in test_uuid is now skipped if the -+ ifconfig executable is not available. -+ -+- Issue #19886: Use better estimated memory requirements for bigmem tests. -+ -+- Backported tests for Tkinter variables. -+ -+- Issue #19320: test_tcl no longer fails when wantobjects is false. -+ -+- Issue #19683: Removed empty tests from test_minidom. Initial patch by -+ Ajitesh Gupta. -+ -+- Issue #19928: Implemented a test for repr() of cell objects. -+ -+- Issue #19595, #19987: Re-enabled a long-disabled test in test_winsound. -+ -+- Issue #19588: Fixed tests in test_random that were silently skipped most -+ of the time. Patch by Julian Gindi. -+ -+- Issue #17883: Tweak test_tcl testLoadWithUNC to skip the test in the -+ event of a permission error on Windows and to properly report other -+ skip conditions. -+ -+- Issue #17883: Backported _is_gui_available() in test.test_support to -+ avoid hanging Windows buildbots on test_ttk_guionly. -+ -+- Issue #18702, #19572: All skipped tests now reported as skipped. -+ -+- Issue #19085: Added basic tests for all tkinter widget options. -+ -+- Issue #20605: Make test_socket getaddrinfo OS X segfault test more robust. -+ -+- Issue #20939: Avoid various network test failures due to new -+ redirect of http://www.python.org/ to https://www.python.org: -+ use http://www.example.com instead. -+ -+- Issue #21093: Prevent failures of ctypes test_macholib on OS X if a -+ copy of libz exists in $HOME/lib or /usr/local/lib. -+ -+Build -+----- -+ -+- Issue #21285: Refactor and fix curses configure check to always search -+ in a ncursesw directory. -+ -+Documentation -+------------- -+ -+- Issue #20255: Update the about and bugs pages. -+ -+- Issue #18840: Introduce the json module in the tutorial, and de-emphasize -+ the pickle module. -+ -+- Issue #19795: Improved markup of True/False constants. -+ -+Windows -+------- -+ -+- Issue #21303, #20565: Updated the version of Tcl/Tk included in the -+ installer from 8.5.2 to 8.5.15. -+ -+Mac OS X -+-------- -+ -+- As of 2.7.8, the 32-bit-only installer will support OS X 10.5 -+ and later systems as is currently done for Python 3.x installers. -+ For 2.7.7 only, we will provide three installers: -+ the legacy deprecated 10.3+ 32-bit-only format; -+ the newer 10.5+ 32-bit-only format; -+ and the unchanged 10.6+ 64-/32-bit format. -+ Although binary installers will no longer be available from -+ python.org as of 2.7.8, it will still be possible to build from -+ source on 10.3.9 and 10.4 systems if necessary. -+ See Mac/BuildScript/README.txt for more information. -+ -+ -+Whats' New in Python 2.7.6? -+=========================== -+ -+*Release date: 2013-11-10* -+ -+Library -+------- -+ -+- Issue #19435: Fix directory traversal attack on CGIHttpRequestHandler. -+ -+IDLE -+---- -+ -+- Issue #19426: Fixed the opening of Python source file with specified encoding. -+ -+Tests -+----- -+ -+- Issue #19457: Fixed xmlcharrefreplace tests on wide build when tests are -+ loaded from .py[co] files. -+ -+Build -+----- -+ -+- Issue #15663: Revert OS X installer built-in Tcl/Tk support for 2.7.6. -+ Some third-party projects, such as Matplotlib and PIL/Pillow, -+ depended on being able to build with Tcl and Tk frameworks in -+ /Library/Frameworks. -+ -+ -+What's New in Python 2.7.6 release candidate 1? -+=============================================== -+ -+*Release date: 2013-10-26* -+ -+Core and Builtins -+----------------- -+ -+- Issue #18603: Ensure that PyOS_mystricmp and PyOS_mystrnicmp are in the -+ Python executable and not removed by the linker's optimizer. -+ -+- Issue #19279: UTF-7 decoder no more produces illegal unicode strings. -+ -+- Issue #18739: Fix an inconsistency between math.log(n) and math.log(long(n)); -+ the results could be off from one another by a ulp or two. -+ -+- Issue #13461: Fix a crash in the "replace" error handler on 64-bit platforms. -+ Patch by Yogesh Chaudhari. -+ -+- Issue #15866: The xmlcharrefreplace error handler no more produces two XML -+ entities for a non-BMP character on narrow build. -+ -+- Issue #18184: PyUnicode_FromFormat() and PyUnicode_FromFormatV() now raise -+ OverflowError when an argument of %c format is out of range. -+ -+- Issue #18137: Detect integer overflow on precision in float.__format__() -+ and complex.__format__(). -+ -+- Issue #18038: SyntaxError raised during compilation sources with illegal -+ encoding now always contains an encoding name. -+ -+- Issue #18019: Fix crash in the repr of dictionaries containing their own -+ views. -+ -+- Issue #18427: str.replace could crash the interpreter with huge strings. -+ -+Library -+------- -+ -+- Issue #19393: Fix symtable.symtable function to not be confused when there are -+ functions or classes named "top". -+ -+- Issue #19327: Fixed the working of regular expressions with too big charset. -+ -+- Issue #19350: Increasing the test coverage of macurl2path. Patch by Colin -+ Williams. -+ -+- Issue #19352: Fix unittest discovery when a module can be reached -+ through several paths (e.g. under Debian/Ubuntu with virtualenv). -+ -+- Issue #15207: Fix mimetypes to read from correct part of Windows registry -+ Original patch by Dave Chambers -+ -+- Issue #8964: fix platform._sys_version to handle IronPython 2.6+. -+ Patch by Martin Matusiak. -+ -+- Issue #16038: CVE-2013-1752: ftplib: Limit amount of data read by -+ limiting the call to readline(). Original patch by Michał -+ Jastrzębski and Giampaolo Rodola. -+ -+- Issue #19276: Fixed the wave module on 64-bit big-endian platforms. -+ -+- Issue #18458: Prevent crashes with newer versions of libedit. Its readline -+ emulation has changed from 0-based indexing to 1-based like gnu readline. -+ Original patch by Ronald Oussoren. -+ -+- Issue #18919: If the close() method of a writer in the sunau or wave module -+ failed, second invocation of close() and destructor no more raise an -+ exception. Second invocation of close() on sunau writer now has no effects. -+ The aifc module now accepts lower case of names of the 'ulaw' and 'alaw' -+ codecs. -+ -+- Issue #19131: The aifc module now correctly reads and writes sampwidth of -+ compressed streams. -+ -+- Issue #19158: A rare race in BoundedSemaphore could allow .release() too -+ often. -+ -+- Issue #18037: 2to3 now escapes '\u' and '\U' in native strings. -+ -+- Issue #19137: The pprint module now correctly formats empty set and frozenset -+ and instances of set and frozenset subclasses. -+ -+- Issue #16040: CVE-2013-1752: nntplib: Limit maximum line lengths to 2048 to -+ prevent readline() calls from consuming too much memory. Patch by Jyrki -+ Pulliainen. -+ -+- Issue #12641: Avoid passing "-mno-cygwin" to the mingw32 compiler, except -+ when necessary. Patch by Oscar Benjamin. -+ -+- Properly initialize all fields of a SSL object after allocation. -+ -+- Issue #4366: Fix building extensions on all platforms when --enable-shared -+ is used. -+ -+- Issue #18950: Fix miscellaneous bugs in the sunau module. -+ Au_read.readframes() now updates current file position and reads correct -+ number of frames from multichannel stream. Au_write.writeframesraw() now -+ correctly updates current file position. Au_read and Au_write now correctly -+ work with file object if start file position is not a zero. -+ -+- Issue #18050: Fixed an incompatibility of the re module with Python 2.7.3 -+ and older binaries. -+ -+- Issue #19037: The mailbox module now makes all changes to maildir files -+ before moving them into place, to avoid race conditions with other programs -+ that may be accessing the maildir directory. -+ -+- Issue #14984: On POSIX systems, when netrc is called without a filename -+ argument (and therefore is reading the user's $HOME/.netrc file), it now -+ enforces the same security rules as typical ftp clients: the .netrc file must -+ be owned by the user that owns the process and must not be readable by any -+ other user. -+ -+- Issue #17324: Fix http.server's request handling case on trailing '/'. Patch -+ contributed by Vajrasky Kok. -+ -+- Issue #19018: The heapq.merge() function no longer suppresses IndexError -+ in the underlying iterables. -+ -+- Issue #18784: The uuid module no more attempts to load libc via ctypes.CDLL, -+ if all necessary functions are already found in libuuid. -+ Patch by Evgeny Sologubov. -+ -+- Issue #14971: unittest test discovery no longer gets confused when a function -+ has a different __name__ than its name in the TestCase class dictionary. -+ -+- Issue #18672: Fixed format specifiers for Py_ssize_t in debugging output in -+ the _sre module. -+ -+- Issue #18830: inspect.getclasstree() no more produces duplicated entries even -+ when input list contains duplicates. -+ -+- Issue #18909: Fix _tkinter.tkapp.interpaddr() on Windows 64-bit, don't cast -+ 64-bit pointer to long (32 bits). -+ -+- Issue #18876: The FileIO.mode attribute now better reflects the actual mode -+ under which the file was opened. Patch by Erik Bray. -+ -+- Issue #18851: Avoid a double close of subprocess pipes when the child -+ process fails starting. -+ -+- Issue #18418: After fork(), reinit all threads states, not only active ones. -+ Patch by A. Jesse Jiryu Davis. -+ -+- Issue #11973: Fix a problem in kevent. The flags and fflags fields are now -+ properly handled as unsigned. -+ -+- Issue #16809: Fixed some tkinter incompabilities with Tcl/Tk 8.6. -+ -+- Issue #16809: Tkinter's splitlist() and split() methods now accept Tcl_Obj -+ argument. -+ -+- Issue #17119: Fixed integer overflows when processing large Unicode strings -+ and tuples in the tkinter module. -+ -+- Issue #15233: Python now guarantees that callables registered with the atexit -+ module will be called in a deterministic order. -+ -+- Issue #18747: Re-seed OpenSSL's pseudo-random number generator after fork. -+ A pthread_atfork() parent handler is used to seed the PRNG with pid, time -+ and some stack data. -+ -+- Issue #8865: Concurrent invocation of select.poll.poll() now raises a -+ RuntimeError exception. Patch by Christian Schubert. -+ -+- Issue #13461: Fix a crash in the TextIOWrapper.tell method on 64-bit -+ platforms. Patch by Yogesh Chaudhari. -+ -+- Issue #18777: The ssl module now uses the new CRYPTO_THREADID API of -+ OpenSSL 1.0.0+ instead of the deprecated CRYPTO id callback function. -+ -+- Issue #18768: Correct doc string of RAND_edg(). Patch by Vajrasky Kok. -+ -+- Issue #18178: Fix ctypes on BSD. dlmalloc.c was compiled twice which broke -+ malloc weak symbols. -+ -+- Issue #18709: Fix CVE-2013-4238. The SSL module now handles NULL bytes -+ inside subjectAltName correctly. Formerly the module has used OpenSSL's -+ GENERAL_NAME_print() function to get the string represention of ASN.1 -+ strings for ``rfc822Name`` (email), ``dNSName`` (DNS) and -+ ``uniformResourceIdentifier`` (URI). -+ -+- Issue #18756: Improve error reporting in os.urandom() when the failure -+ is due to something else than /dev/urandom not existing (for example, -+ exhausting the file descriptor limit). -+ -+- Fix tkinter regression introduced by the security fix in issue #16248. -+ -+- Issue #18676: Change 'positive' to 'non-negative' in queue.py put and get -+ docstrings and ValueError messages. Patch by Zhongyue Luo -+ -+- Issue #17998: Fix an internal error in regular expression engine. -+ -+- Issue #17557: Fix os.getgroups() to work with the modified behavior of -+ getgroups(2) on OS X 10.8. Original patch by Mateusz Lenik. -+ -+- Issue #18455: multiprocessing should not retry connect() with same socket. -+ -+- Issue #18513: Fix behaviour of cmath.rect w.r.t. signed zeros on OS X 10.8 + -+ gcc. -+ -+- Issue #18101: Tcl.split() now process Unicode strings nested in a tuple as it -+ do with byte strings. -+ -+- Issue #18347: ElementTree's html serializer now preserves the case of -+ closing tags. -+ -+- Issue #17261: Ensure multiprocessing's proxies use proper address. -+ -+- Issue #17097: Make multiprocessing ignore EINTR. -+ -+- Issue #18155: The csv module now correctly handles csv files that use -+ a delimiter character that has a special meaning in regexes, instead of -+ throwing an exception. -+ -+- Issue #18135: ssl.SSLSocket.write() now raises an OverflowError if the input -+ string in longer than 2 gigabytes. The ssl module does not support partial -+ write. -+ -+- Issue #18167: cgi.FieldStorage no longer fails to handle multipart/form-data -+ when \r\n appears at end of 65535 bytes without other newlines. -+ -+- Issue #17403: urllib.parse.robotparser normalizes the urls before adding to -+ ruleline. This helps in handling certain types invalid urls in a conservative -+ manner. Patch contributed by Mher Movsisyan. -+ -+- Implement inequality on weakref.WeakSet. -+ -+- Issue #17981: Closed socket on error in SysLogHandler. -+ -+- Issue #18015: Fix unpickling of 2.7.3 and 2.7.4 namedtuples. -+ -+- Issue #17754: Make ctypes.util.find_library() independent of the locale. -+ -+- Fix typos in the multiprocessing module. -+ -+- Issue #17269: Workaround for socket.getaddrinfo crash on MacOS X -+ with port None or "0" and flags AI_NUMERICSERV. -+ -+- Issue #18080: When building a C extension module on OS X, if the compiler -+ is overridden with the CC environment variable, use the new compiler as -+ the default for linking if LDSHARED is not also overridden. This restores -+ Distutils behavior introduced in 2.7.3 and inadvertently dropped in 2.7.4. -+ -+- Issue #18071: C extension module builds on OS X could fail with TypeError -+ if the Xcode command line tools were not installed. -+ -+- Issue #18113: Fixed a refcount leak in the curses.panel module's -+ set_userptr() method. Reported by Atsuo Ishimoto. -+ -+- Issue #18849: Fixed a Windows-specific tempfile bug where collision with an -+ existing directory caused mkstemp and related APIs to fail instead of -+ retrying. Report and fix by Vlad Shcherbina. -+ -+- Issue #19400: Prevent extension module build failures with Xcode 5 on OS X -+ 10.8+ when using a universal Python that included a PPC architecture, -+ such as with a python.org 32-bit-only binary installer. -+ -+Tools/Demos -+----------- -+ -+- Issue #18873: 2to3 and the findnocoding.py script now detect Python source -+ code encoding only in comment lines. -+ -+- Issue #18817: Fix a resource warning in Lib/aifc.py demo. -+ -+- Issue #18439: Make patchcheck work on Windows for ACKS, NEWS. -+ -+- Issue #18448: Fix a typo in Demo/newmetaclasses/Eiffel.py. -+ -+- Issue #12990: The "Python Launcher" on OSX could not launch python scripts -+ that have paths that include wide characters. -+ -+Build -+----- -+ -+- Issue #16067: Add description into MSI file to replace installer's temporary name. -+ -+- Issue #18256: Compilation fix for recent AIX releases. Patch by -+ David Edelsohn. -+ -+- Issue #18098: The deprecated OS X Build Applet.app fails to build on -+ OS X 10.8 systems because the Apple-deprecated QuickDraw headers have -+ been removed from Xcode 4. Skip building it in this case. -+ -+- Issue #1584: Provide options to override default search paths for -+ Tcl and Tk when building _tkinter. -+ -+- Issue #15663: Tcl/Tk 8.5.15 is now included with the OS X 10.6+ -+ 64-bit/32-bit installer for 10.6+. It is no longer necessary -+ to install a third-party version of Tcl/Tk 8.5 to work around the -+ problems in the Apple-supplied Tcl/Tk 8.5 shipped in OS X 10.6 -+ and later releases. -+ -+- Issue #19019: Change the OS X installer build script to use CFLAGS instead -+ of OPT for special build options. By setting OPT, some compiler-specific -+ options like -fwrapv were overridden and thus not used, which could result -+ in broken interpreters when building with clang. -+ -+IDLE -+---- -+ -+- Issue #18873: IDLE now detects Python source code encoding only in comment -+ lines. -+ -+- Issue #18988: The "Tab" key now works when a word is already autocompleted. -+ -+- Issue #18489: Add tests for SearchEngine. Original patch by Phil Webster. -+ -+- Issue #18429: Format / Format Paragraph, now works when comment blocks -+ are selected. As with text blocks, this works best when the selection -+ only includes complete lines. -+ -+- Issue #18226: Add docstrings and unittests for FormatParagraph.py. -+ Original patches by Todd Rovito and Phil Webster. -+ -+- Issue #18279: Format - Strip trailing whitespace no longer marks a file as -+ changed when it has not been changed. This fix followed the addition of a -+ test file originally written by Phil Webster (the issue's main goal). -+ -+- Issue #18539: Calltips now work for float default arguments. -+ -+- Issue #7136: In the Idle File menu, "New Window" is renamed "New File". -+ Patch by Tal Einat, Roget Serwy, and Todd Rovito. -+ -+- Issue #8515: Set __file__ when run file in IDLE. -+ Initial patch by Bruce Frederiksen. -+ -+- Issue #5492: Avoid traceback when exiting IDLE caused by a race condition. -+ -+- Issue #17511: Keep IDLE find dialog open after clicking "Find Next". -+ Original patch by Sarah K. -+ -+- Issue #15392: Create a unittest framework for IDLE. -+ Preliminary patch by Rajagopalasarma Jayakrishnan -+ See Lib/idlelib/idle_test/README.txt for how to run Idle tests. -+ -+- Issue #14146: Highlight source line while debugging on Windows. -+ -+- Issue #17532: Always include Options menu for IDLE on OS X. -+ Patch by Guilherme Simões. -+ -+Tests -+----- -+ -+- Issue #18919: Added tests for the sunau module. Unified and extended tests -+ for audio modules: aifc, sunau and wave. -+ -+- Issue #18792: Use "127.0.0.1" or "::1" instead of "localhost" as much as -+ possible, since "localhost" goes through a DNS lookup under recent Windows -+ versions. -+ -+- Issue #18357: add tests for dictview set difference. -+ Patch by Fraser Tweedale. -+ -+- Issue #11185: Fix test_wait4 under AIX. Patch by Sébastien Sablé. -+ -+- Issue #18094: test_uuid no more reports skipped tests as passed. -+ -+- Issue #11995: test_pydoc doesn't import all sys.path modules anymore. -+ -+Documentation -+------------- -+ -+- Issue #18758: Fixed and improved cross-references. -+ -+- Issue #18718: datetime documentation contradictory on leap second support. -+ -+- Issue #17701: Improving strftime documentation. -+ -+- Issue #17844: Refactor a documentation of Python specific encodings. -+ Add links to encoders and decoders for binary-to-binary codecs. -+ -+ - What's New in Python 2.7.5? - =========================== - -diff --git a/README b/README -index 014028d..691b818 100644 ---- a/README -+++ b/README -@@ -166,6 +166,11 @@ rebuilt. In this case, you may have to run make again to correctly - build your desired target. The interpreter executable is built in the - top level directory. - -+If you need an optimized version of Python, you type "make profile-opt" -+in the top level directory. This will rebuild the interpreter executable -+using Profile Guided Optimization (PGO). For more details, see the -+section below. -+ - Once you have built a Python interpreter, see the subsections below on - testing and installation. If you run into trouble, see the next - section. -@@ -178,6 +183,30 @@ guidance of the setup.py script, which is run by Make after the - interpreter has been built. - - -+Profile Guided Optimization -+--------------------------- -+ -+PGO takes advantage of recent versions of the GCC or Clang compilers. -+If ran, the "profile-opt" rule will do several steps. -+ -+First, the entire Python directory is cleaned of temporary files that -+may resulted in a previous compilation. -+ -+Then, an instrumented version of the interpreter is built, using suitable -+compiler flags for each flavour. Note that this is just an intermediary -+step and the binary resulted after this step is not good for real life -+workloads, as it has profiling instructions embedded inside. -+ -+After this instrumented version of the interpreter is built, the Makefile -+will automatically run a training workload. This is necessary in order to -+profile the interpreter execution. Note also that any output, both stdout -+and stderr, that may appear at this step is supressed. -+ -+Finally, the last step is to rebuild the interpreter, using the information -+collected in the previous one. The end result will be a the Python binary -+that is optimized and suitable for distribution or production installation. -+ -+ - Troubleshooting - --------------- - -diff --git a/configure b/configure -index 60a3335..aeb8570 100755 ---- a/configure -+++ b/configure -@@ -658,6 +658,20 @@ LDSHARED - SO - LIBTOOL_CRUFT - OTHER_LIBTOOL_OPT -+LLVM_PROF_FOUND -+target_os -+target_vendor -+target_cpu -+target -+LLVM_PROFDATA -+LLVM_PROF_ERR -+LLVM_PROF_FILE -+LLVM_PROF_MERGER -+PGO_PROF_USE_FLAG -+PGO_PROF_GEN_FLAG -+LTOFLAGS -+DEF_MAKE_RULE -+DEF_MAKE_ALL_RULE - UNIVERSAL_ARCH_FLAGS - BASECFLAGS - OPT -@@ -786,6 +800,8 @@ with_suffix - enable_shared - enable_profiling - with_pydebug -+enable_optimizations -+with_lto - enable_toolbox_glue - with_libs - with_system_expat -@@ -1421,6 +1437,7 @@ _ACEOF - System types: - --build=BUILD configure for building on BUILD [guessed] - --host=HOST cross-compile to build programs to run on HOST [BUILD] -+ --target=TARGET configure for building compilers for TARGET [HOST] - _ACEOF - fi - -@@ -1440,6 +1457,8 @@ Optional Features: - Build (MacOSX|Darwin) framework - --enable-shared disable/enable building shared python library - --enable-profiling enable C-level code profiling -+ --enable-optimizations Enable expensive optimizations (PGO, maybe LTO, -+ etc). Disabled by default. - --enable-toolbox-glue disable/enable MacOSX glue code for extensions - --enable-ipv6 Enable ipv6 (with ipv4) support - --disable-ipv6 Disable ipv6 support -@@ -1463,6 +1482,8 @@ Optional Packages: - compiler - --with-suffix=.exe set executable suffix - --with-pydebug build with Py_DEBUG defined -+ --with-lto Enable Link Time Optimization in PGO builds. -+ Disabled by default. - --with-libs='lib1 ...' link against additional libs - --with-system-expat build pyexpat module using an installed expat - library -@@ -6307,6 +6328,308 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - CFLAGS=$save_CFLAGS - fi - -+ -+# Enable optimization flags -+ -+ -+Py_OPT='false' -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --enable-optimizations" >&5 -+$as_echo_n "checking for --enable-optimizations... " >&6; } -+# Check whether --enable-optimizations was given. -+if test "${enable_optimizations+set}" = set; then : -+ enableval=$enable_optimizations; -+if test "$enableval" != no -+then -+ Py_OPT='true' -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -+$as_echo "yes" >&6; }; -+else -+ Py_OPT='false' -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -+$as_echo "no" >&6; }; -+fi -+else -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -+$as_echo "no" >&6; } -+fi -+ -+if test "$Py_OPT" = 'true' ; then -+ case $ac_sys_system in -+ Darwin*) -+ # At least on macOS El Capitan, LTO does not work with PGO. -+ Py_LTO='false' -+ ;; -+ esac -+ Py_LTO='true' -+ DEF_MAKE_ALL_RULE="profile-opt" -+ REQUIRE_PGO="yes" -+ DEF_MAKE_RULE="build_all" -+else -+ DEF_MAKE_ALL_RULE="build_all" -+ REQUIRE_PGO="no" -+ DEF_MAKE_RULE="all" -+fi -+ -+ -+# Enable LTO flags -+ -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-lto" >&5 -+$as_echo_n "checking for --with-lto... " >&6; } -+ -+# Check whether --with-lto was given. -+if test "${with_lto+set}" = set; then : -+ withval=$with_lto; -+if test "$withval" != no -+then -+ Py_LTO='true' -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -+$as_echo "yes" >&6; }; -+else -+ Py_LTO='false' -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -+$as_echo "no" >&6; }; -+fi -+else -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -+$as_echo "no" >&6; } -+fi -+ -+if test "$Py_LTO" = 'true' ; then -+ case $CC in -+ *clang*) -+ # Any changes made here should be reflected in the GCC+Darwin case below -+ LTOFLAGS="-flto" -+ ;; -+ *gcc*) -+ case $ac_sys_system in -+ Darwin*) -+ LTOFLAGS="-flto" -+ ;; -+ *) -+ LTOFLAGS="-flto -fuse-linker-plugin -ffat-lto-objects -flto-partition=none" -+ ;; -+ esac -+ ;; -+ esac -+fi -+ -+ -+# Enable PGO flags. -+ -+# Make this work on systems where llvm tools are not installed with their -+# normal names in the default $PATH (ie: Ubuntu). They exist under the -+# non-suffixed name in their versioned llvm directory. -+llvm_bin_dir='' -+llvm_path="${PATH}" -+if test "${CC}" = "clang" -+then -+ clang_bin=`which clang` -+ # Some systems install clang elsewhere as a symlink to the real path -+ # which is where the related llvm tools are located. -+ if test -L "${clang_bin}" -+ then -+ clang_dir=`dirname "${clang_bin}"` -+ clang_bin=`readlink "${clang_bin}"` -+ llvm_bin_dir="${clang_dir}/"`dirname "${clang_bin}"` -+ llvm_path="${llvm_path}${PATH_SEPARATOR}${llvm_bin_dir}" -+ fi -+fi -+ -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5 -+$as_echo_n "checking target system type... " >&6; } -+if ${ac_cv_target+:} false; then : -+ $as_echo_n "(cached) " >&6 -+else -+ if test "x$target_alias" = x; then -+ ac_cv_target=$ac_cv_host -+else -+ ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` || -+ as_fn_error $? "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5 -+fi -+ -+fi -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5 -+$as_echo "$ac_cv_target" >&6; } -+case $ac_cv_target in -+*-*-*) ;; -+*) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;; -+esac -+target=$ac_cv_target -+ac_save_IFS=$IFS; IFS='-' -+set x $ac_cv_target -+shift -+target_cpu=$1 -+target_vendor=$2 -+shift; shift -+# Remember, the first character of IFS is used to create $*, -+# except with old shells: -+target_os=$* -+IFS=$ac_save_IFS -+case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac -+ -+ -+# The aliases save the names the user supplied, while $host etc. -+# will get canonicalized. -+test -n "$target_alias" && -+ test "$program_prefix$program_suffix$program_transform_name" = \ -+ NONENONEs,x,x, && -+ program_prefix=${target_alias}- -+# Extract the first word of "$target_alias-llvm-profdata", so it can be a program name with args. -+set dummy $target_alias-llvm-profdata; ac_word=$2 -+ -+ -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -+$as_echo_n "checking for $ac_word... " >&6; } -+if ${ac_cv_path_LLVM_PROFDATA+:} false; then : -+ $as_echo_n "(cached) " >&6 -+else -+ case $LLVM_PROFDATA in -+ [\\/]* | ?:[\\/]*) -+ ac_cv_path_LLVM_PROFDATA="$LLVM_PROFDATA" # Let the user override the test with a path. -+ ;; -+ *) -+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in ${llvm_path} -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_path_LLVM_PROFDATA="$as_dir/$ac_word$ac_exec_ext" -+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+ done -+IFS=$as_save_IFS -+ ;; -+esac -+fi -+LLVM_PROFDATA=$ac_cv_path_LLVM_PROFDATA -+if test -n "$LLVM_PROFDATA"; then -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LLVM_PROFDATA" >&5 -+$as_echo "$LLVM_PROFDATA" >&6; } -+else -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -+$as_echo "no" >&6; } -+fi -+ -+ -+if test -z "$ac_cv_path_LLVM_PROFDATA"; then -+ if test "$build" = "$target"; then -+ ac_pt_LLVM_PROFDATA=$LLVM_PROFDATA -+ # Extract the first word of "llvm-profdata", so it can be a program name with args. -+set dummy llvm-profdata; ac_word=$2 -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -+$as_echo_n "checking for $ac_word... " >&6; } -+if ${ac_cv_path_ac_pt_LLVM_PROFDATA+:} false; then : -+ $as_echo_n "(cached) " >&6 -+else -+ case $ac_pt_LLVM_PROFDATA in -+ [\\/]* | ?:[\\/]*) -+ ac_cv_path_ac_pt_LLVM_PROFDATA="$ac_pt_LLVM_PROFDATA" # Let the user override the test with a path. -+ ;; -+ *) -+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in ${llvm_path} -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_path_ac_pt_LLVM_PROFDATA="$as_dir/$ac_word$ac_exec_ext" -+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+ done -+IFS=$as_save_IFS -+ -+ test -z "$ac_cv_path_ac_pt_LLVM_PROFDATA" && ac_cv_path_ac_pt_LLVM_PROFDATA="''" -+ ;; -+esac -+fi -+ac_pt_LLVM_PROFDATA=$ac_cv_path_ac_pt_LLVM_PROFDATA -+if test -n "$ac_pt_LLVM_PROFDATA"; then -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_LLVM_PROFDATA" >&5 -+$as_echo "$ac_pt_LLVM_PROFDATA" >&6; } -+else -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -+$as_echo "no" >&6; } -+fi -+ -+ LLVM_PROFDATA=$ac_pt_LLVM_PROFDATA -+ else -+ LLVM_PROFDATA="''" -+ fi -+else -+ LLVM_PROFDATA="$ac_cv_path_LLVM_PROFDATA" -+fi -+ -+if test -n "${LLVM_PROFDATA}" -a -x "${LLVM_PROFDATA}" -+then -+ LLVM_PROF_FOUND="found" -+else -+ LLVM_PROF_FOUND="not-found" -+fi -+if test "$ac_sys_system" = "Darwin" -a "${LLVM_PROF_FOUND}" = "not-found" -+then -+ found_llvm_profdata=`/usr/bin/xcrun -find llvm-profdata 2>/dev/null` -+ if test -n "${found_llvm_profdata}" -+ then -+ # llvm-profdata isn't directly in $PATH in some cases. -+ # https://apple.stackexchange.com/questions/197053/ -+ LLVM_PROFDATA='/usr/bin/xcrun llvm-profdata' -+ LLVM_PROF_FOUND=found -+ { $as_echo "$as_me:${as_lineno-$LINENO}: llvm-profdata found via xcrun: ${LLVM_PROFDATA}" >&5 -+$as_echo "$as_me: llvm-profdata found via xcrun: ${LLVM_PROFDATA}" >&6;} -+ fi -+fi -+ -+LLVM_PROF_ERR=no -+case $CC in -+ *clang*) -+ # Any changes made here should be reflected in the GCC+Darwin case below -+ PGO_PROF_GEN_FLAG="-fprofile-instr-generate" -+ PGO_PROF_USE_FLAG="-fprofile-instr-use=code.profclangd" -+ LLVM_PROF_MERGER="${LLVM_PROFDATA} merge -output=code.profclangd *.profclangr" -+ LLVM_PROF_FILE="LLVM_PROFILE_FILE=\"code-%p.profclangr\"" -+ if test $LLVM_PROF_FOUND = not-found -+ then -+ LLVM_PROF_ERR=yes -+ if test "${REQUIRE_PGO}" = "yes" -+ then -+ as_fn_error $? "llvm-profdata is required for a --enable-optimizations build but could not be found." "$LINENO" 5 -+ fi -+ fi -+ ;; -+ *gcc*) -+ case $ac_sys_system in -+ Darwin*) -+ PGO_PROF_GEN_FLAG="-fprofile-instr-generate" -+ PGO_PROF_USE_FLAG="-fprofile-instr-use=code.profclangd" -+ LLVM_PROF_MERGER="llvm-profdata merge -output=code.profclangd *.profclangr" -+ LLVM_PROF_FILE="LLVM_PROFILE_FILE=\"code-%p.profclangr\"" -+ if test "${LLVM_PROF_FOUND}" = "not-found" -+ then -+ LLVM_PROF_ERR=yes -+ if test "${REQUIRE_PGO}" = "yes" -+ then -+ as_fn_error $? "llvm-profdata is required for a --enable-optimizations build but could not be found." "$LINENO" 5 -+ fi -+ fi -+ ;; -+ *) -+ PGO_PROF_GEN_FLAG="-fprofile-generate" -+ PGO_PROF_USE_FLAG="-fprofile-use -fprofile-correction" -+ LLVM_PROF_MERGER="true" -+ LLVM_PROF_FILE="" -+ ;; -+ esac -+ ;; -+esac -+ -+ - # On some compilers, pthreads are available without further options - # (e.g. MacOS X). On some of these systems, the compiler will not - # complain if unaccepted options are passed (e.g. gcc on Mac OS X). -@@ -14613,7 +14936,7 @@ for dir in $SRCDIRS; do - fi - done - -- BEGIN_COMPUTED_GOTO -+# BEGIN_COMPUTED_GOTO - # Check for --with-computed-gotos - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-computed-gotos" >&5 - $as_echo_n "checking for --with-computed-gotos... " >&6; } -@@ -16031,3 +16354,12 @@ $as_echo "$as_me: WARNING: - esac - - mv config.c Modules -+ -+if test "$Py_OPT" = 'false' -a "$Py_DEBUG" != 'true'; then -+ echo "" >&6 -+ echo "" >&6 -+ echo "If you want a release build with all optimizations active (LTO, PGO, etc)," -+ echo "please run ./configure --enable-optimizations" >&6 -+ echo "" >&6 -+ echo "" >&6 -+fi -diff --git a/configure.ac b/configure.ac -index 74bb514..040fc69 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1347,6 +1347,165 @@ then - CFLAGS=$save_CFLAGS - fi - -+ -+# Enable optimization flags -+AC_SUBST(DEF_MAKE_ALL_RULE) -+AC_SUBST(DEF_MAKE_RULE) -+Py_OPT='false' -+AC_MSG_CHECKING(for --enable-optimizations) -+AC_ARG_ENABLE(optimizations, AS_HELP_STRING([--enable-optimizations], [Enable expensive optimizations (PGO, maybe LTO, etc). Disabled by default.]), -+[ -+if test "$enableval" != no -+then -+ Py_OPT='true' -+ AC_MSG_RESULT(yes); -+else -+ Py_OPT='false' -+ AC_MSG_RESULT(no); -+fi], -+[AC_MSG_RESULT(no)]) -+if test "$Py_OPT" = 'true' ; then -+ case $ac_sys_system in -+ Darwin*) -+ # At least on macOS El Capitan, LTO does not work with PGO. -+ Py_LTO='false' -+ ;; -+ esac -+ Py_LTO='true' -+ DEF_MAKE_ALL_RULE="profile-opt" -+ REQUIRE_PGO="yes" -+ DEF_MAKE_RULE="build_all" -+else -+ DEF_MAKE_ALL_RULE="build_all" -+ REQUIRE_PGO="no" -+ DEF_MAKE_RULE="all" -+fi -+ -+ -+# Enable LTO flags -+AC_SUBST(LTOFLAGS) -+AC_MSG_CHECKING(for --with-lto) -+AC_ARG_WITH(lto, AS_HELP_STRING([--with-lto], [Enable Link Time Optimization in PGO builds. Disabled by default.]), -+[ -+if test "$withval" != no -+then -+ Py_LTO='true' -+ AC_MSG_RESULT(yes); -+else -+ Py_LTO='false' -+ AC_MSG_RESULT(no); -+fi], -+[AC_MSG_RESULT(no)]) -+if test "$Py_LTO" = 'true' ; then -+ case $CC in -+ *clang*) -+ # Any changes made here should be reflected in the GCC+Darwin case below -+ LTOFLAGS="-flto" -+ ;; -+ *gcc*) -+ case $ac_sys_system in -+ Darwin*) -+ LTOFLAGS="-flto" -+ ;; -+ *) -+ LTOFLAGS="-flto -fuse-linker-plugin -ffat-lto-objects -flto-partition=none" -+ ;; -+ esac -+ ;; -+ esac -+fi -+ -+ -+# Enable PGO flags. -+AC_SUBST(PGO_PROF_GEN_FLAG) -+AC_SUBST(PGO_PROF_USE_FLAG) -+AC_SUBST(LLVM_PROF_MERGER) -+AC_SUBST(LLVM_PROF_FILE) -+AC_SUBST(LLVM_PROF_ERR) -+# Make this work on systems where llvm tools are not installed with their -+# normal names in the default $PATH (ie: Ubuntu). They exist under the -+# non-suffixed name in their versioned llvm directory. -+llvm_bin_dir='' -+llvm_path="${PATH}" -+if test "${CC}" = "clang" -+then -+ clang_bin=`which clang` -+ # Some systems install clang elsewhere as a symlink to the real path -+ # which is where the related llvm tools are located. -+ if test -L "${clang_bin}" -+ then -+ clang_dir=`dirname "${clang_bin}"` -+ clang_bin=`readlink "${clang_bin}"` -+ llvm_bin_dir="${clang_dir}/"`dirname "${clang_bin}"` -+ llvm_path="${llvm_path}${PATH_SEPARATOR}${llvm_bin_dir}" -+ fi -+fi -+AC_SUBST(LLVM_PROFDATA) -+AC_PATH_TARGET_TOOL(LLVM_PROFDATA, llvm-profdata, '', ${llvm_path}) -+AC_SUBST(LLVM_PROF_FOUND) -+if test -n "${LLVM_PROFDATA}" -a -x "${LLVM_PROFDATA}" -+then -+ LLVM_PROF_FOUND="found" -+else -+ LLVM_PROF_FOUND="not-found" -+fi -+if test "$ac_sys_system" = "Darwin" -a "${LLVM_PROF_FOUND}" = "not-found" -+then -+ found_llvm_profdata=`/usr/bin/xcrun -find llvm-profdata 2>/dev/null` -+ if test -n "${found_llvm_profdata}" -+ then -+ # llvm-profdata isn't directly in $PATH in some cases. -+ # https://apple.stackexchange.com/questions/197053/ -+ LLVM_PROFDATA='/usr/bin/xcrun llvm-profdata' -+ LLVM_PROF_FOUND=found -+ AC_MSG_NOTICE([llvm-profdata found via xcrun: ${LLVM_PROFDATA}]) -+ fi -+fi -+ -+LLVM_PROF_ERR=no -+case $CC in -+ *clang*) -+ # Any changes made here should be reflected in the GCC+Darwin case below -+ PGO_PROF_GEN_FLAG="-fprofile-instr-generate" -+ PGO_PROF_USE_FLAG="-fprofile-instr-use=code.profclangd" -+ LLVM_PROF_MERGER="${LLVM_PROFDATA} merge -output=code.profclangd *.profclangr" -+ LLVM_PROF_FILE="LLVM_PROFILE_FILE=\"code-%p.profclangr\"" -+ if test $LLVM_PROF_FOUND = not-found -+ then -+ LLVM_PROF_ERR=yes -+ if test "${REQUIRE_PGO}" = "yes" -+ then -+ AC_MSG_ERROR([llvm-profdata is required for a --enable-optimizations build but could not be found.]) -+ fi -+ fi -+ ;; -+ *gcc*) -+ case $ac_sys_system in -+ Darwin*) -+ PGO_PROF_GEN_FLAG="-fprofile-instr-generate" -+ PGO_PROF_USE_FLAG="-fprofile-instr-use=code.profclangd" -+ LLVM_PROF_MERGER="${LLVM_PROFDATA} merge -output=code.profclangd *.profclangr" -+ LLVM_PROF_FILE="LLVM_PROFILE_FILE=\"code-%p.profclangr\"" -+ if test "${LLVM_PROF_FOUND}" = "not-found" -+ then -+ LLVM_PROF_ERR=yes -+ if test "${REQUIRE_PGO}" = "yes" -+ then -+ AC_MSG_ERROR([llvm-profdata is required for a --enable-optimizations build but could not be found.]) -+ fi -+ fi -+ ;; -+ *) -+ PGO_PROF_GEN_FLAG="-fprofile-generate" -+ PGO_PROF_USE_FLAG="-fprofile-use -fprofile-correction" -+ LLVM_PROF_MERGER="true" -+ LLVM_PROF_FILE="" -+ ;; -+ esac -+ ;; -+esac -+ -+ - # On some compilers, pthreads are available without further options - # (e.g. MacOS X). On some of these systems, the compiler will not - # complain if unaccepted options are passed (e.g. gcc on Mac OS X). -@@ -4648,3 +4807,12 @@ BeOS) - esac - - mv config.c Modules -+ -+if test "$Py_OPT" = 'false' -a "$Py_DEBUG" != 'true'; then -+ echo "" >&AS_MESSAGE_FD -+ echo "" >&AS_MESSAGE_FD -+ echo "If you want a release build with all optimizations active (LTO, PGO, etc)," -+ echo "please run ./configure --enable-optimizations" >&AS_MESSAGE_FD -+ echo "" >&AS_MESSAGE_FD -+ echo "" >&AS_MESSAGE_FD -+fi --- -1.8.3.1 - diff --git a/python/python-2.7.5/centos/srpm_path b/python/python-2.7.5/centos/srpm_path deleted file mode 100644 index 4f555512b..000000000 --- a/python/python-2.7.5/centos/srpm_path +++ /dev/null @@ -1,2 +0,0 @@ -mirror:Source/python-2.7.5-76.el7.src.rpm -