diff --git a/0007-Fix-non-revealed-port-is-closed-ports.test.patch b/0007-Fix-non-revealed-port-is-closed-ports.test.patch new file mode 100644 index 0000000..06c08af --- /dev/null +++ b/0007-Fix-non-revealed-port-is-closed-ports.test.patch @@ -0,0 +1,32 @@ +From ac8dc55ebbd43306eb54989f096a6814dadda974 Mon Sep 17 00:00:00 2001 +From: Rob Browning +Date: Sat, 19 Sep 2020 14:09:04 -0500 +Subject: Fix "non-revealed port is closed" ports.test + +Don't close the test port's file descriptor because the port still has a +reference to it, and could still close it at any time when finally +garbage collected. This did soemetimes break subsequent tests. + +Bug: https://debbugs.gnu.org/43521 +--- + test-suite/tests/ports.test | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/test-suite/tests/ports.test b/test-suite/tests/ports.test +index 31fb2b0a8..9dca62df8 100644 +--- a/test-suite/tests/ports.test ++++ b/test-suite/tests/ports.test +@@ -623,9 +623,10 @@ + (seek fdes 0 SEEK_CUR) + + ;; If we get here, it might be because PORT was not GC'd, we +- ;; don't know (and we can't use a guardian because it would keep +- ;; PORT alive.) +- (close-fdes fdes) ++ ;; don't know, and we can't use a guardian because it would keep ++ ;; PORT alive, and we can't close the descriptor because ++ ;; subseuqent opens may re-use it, and then if this port is ++ ;; garbage collected, it'll close the descriptor unexpectedly. + (throw 'unresolved)) + (lambda args + (system-error-errno args))))) diff --git a/disable-test-out-of-memory.patch b/disable-test-out-of-memory.patch index 1be7344..b743255 100644 --- a/disable-test-out-of-memory.patch +++ b/disable-test-out-of-memory.patch @@ -1,8 +1,7 @@ -Index: guile-2.2.4/test-suite/standalone/Makefile.am -=================================================================== ---- guile-2.2.4.orig/test-suite/standalone/Makefile.am -+++ guile-2.2.4/test-suite/standalone/Makefile.am -@@ -295,7 +295,4 @@ TESTS += test-smob-mark-race +diff -Nur guile-3.0.7/test-suite/standalone/Makefile.am new/test-suite/standalone/Makefile.am +--- guile-3.0.7/test-suite/standalone/Makefile.am 2021-05-10 10:07:12.000000000 +0200 ++++ new/test-suite/standalone/Makefile.am 2021-05-15 13:52:39.130407172 +0200 +@@ -298,7 +298,4 @@ check_SCRIPTS += test-stack-overflow TESTS += test-stack-overflow @@ -10,11 +9,10 @@ Index: guile-2.2.4/test-suite/standalone/Makefile.am -TESTS += test-out-of-memory - EXTRA_DIST += ${check_SCRIPTS} -Index: guile-2.2.4/test-suite/standalone/Makefile.in -=================================================================== ---- guile-2.2.4.orig/test-suite/standalone/Makefile.in -+++ guile-2.2.4/test-suite/standalone/Makefile.in -@@ -103,7 +103,7 @@ TESTS = test-system-cmds test-bad-identi +diff -Nur guile-3.0.7/test-suite/standalone/Makefile.in new/test-suite/standalone/Makefile.in +--- guile-3.0.7/test-suite/standalone/Makefile.in 2021-05-10 10:30:31.000000000 +0200 ++++ new/test-suite/standalone/Makefile.in 2021-05-15 13:53:17.370706370 +0200 +@@ -106,7 +106,7 @@ test-scm-c-bind-keyword-arguments$(EXEEXT) \ test-srfi-4$(EXEEXT) $(am__append_6) $(am__EXEEXT_1) \ test-smob-mark$(EXEEXT) test-smob-mark-race$(EXEEXT) \ @@ -23,13 +21,12 @@ Index: guile-2.2.4/test-suite/standalone/Makefile.in check_PROGRAMS = test-num2integral$(EXEEXT) test-round$(EXEEXT) \ test-foreign-object-c$(EXEEXT) test-list$(EXEEXT) \ test-unwind$(EXEEXT) test-conversion$(EXEEXT) \ -@@ -1938,8 +1938,7 @@ check_SCRIPTS = test-system-cmds test-ba - test-command-line-encoding test-command-line-encoding2 \ - test-language test-guild-compile $(am__append_3) \ - test-foreign-object-scm test-fast-slot-ref test-mb-regexp \ -- test-use-srfi $(am__append_5) test-stack-overflow \ -- test-out-of-memory -+ test-use-srfi $(am__append_5) test-stack-overflow +@@ -2147,7 +2147,7 @@ + test-language test-guild-compile test-signal-fork \ + $(am__append_3) test-foreign-object-scm test-fast-slot-ref \ + test-mb-regexp test-use-srfi $(am__append_5) \ +- test-stack-overflow test-out-of-memory ++ test-stack-overflow BUILT_SOURCES = $(am__append_2) EXTRA_DIST = test-import-order-a.scm test-import-order-b.scm \ test-import-order-c.scm test-import-order-d.scm \ diff --git a/guile-3.0.5.tar.xz b/guile-3.0.5.tar.xz deleted file mode 100644 index abe40b3..0000000 --- a/guile-3.0.5.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2d76fb023d2366126a5fac04704f9bd843846b80cccba6da5d752318b03350f1 -size 13037040 diff --git a/guile-3.0.5.tar.xz.sig b/guile-3.0.5.tar.xz.sig deleted file mode 100644 index cba6e2b..0000000 --- a/guile-3.0.5.tar.xz.sig +++ /dev/null @@ -1,16 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQIzBAABCAAdFiEET9TSiNRFk04KFPmlqIA3MuRDaIUFAl/2/rsACgkQqIA3MuRD -aIUwCQ//Uxno4MMfUgIfHdIDJ6IFeUjbEwaOXj7Pc8bmL/St9Xsmvh0J3qqisn3L -OOCbgWnkUvNi4rbXcp2ZP52k96Hw+pAf0jtuNwlhAbXeag/FCa7+UoFupvh1Z8P9 -ESWL4iQ00ZZKeuN7Raj6Kg4Da10sqPWQIlnuICqwSB7yDcaD7n20U1/w34C8wFru -IYG4ErTtznXkIzcbaSlctlIPrbB1hLaQ9KGXDKrJp49fwKS3w70JdWgaVOkdCVZ1 -a19lE0r366No+NbvFI3YoCIejiDq9ViiRqma8GUWxUMfas5V5sfznpEW/XNw8X2u -SytxBeWxTdJ7mDtXeIXsXf8eREeJ6C/+VHJXdP8nfmRFdG93cvN3GxVu8R0So7Kk -FCURFZtvJvddVlZ+2d1vi7s75RBR+jJ5C2o6U6EVEQVZmhuK2by4PblxsaWAJxQI -syC2PxEZ25gCY4UWt+xhWMnsG6XK/SVMzveHbyvcMA8iN+3KqWrf/V0AEzuWt5Dx -sMft/Dqv2r8nZjPobUOLw4iw29qy051kWlPgvj71xFYTIlQcmrXYFdqb/fKk/uBy -n9qDS+6cFynl+dtZp1SEesDlg195gULcvwsg23cYWgtA8j71FpFSlBtQxp01H5ah -sx6kTrFylgKxB3rIY0z0Rwb2zaK+YRAxy84zjg29CRMcgPpZvWY= -=VKDb ------END PGP SIGNATURE----- diff --git a/guile-3.0.7.tar.xz b/guile-3.0.7.tar.xz new file mode 100644 index 0000000..6cde818 --- /dev/null +++ b/guile-3.0.7.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f57d86c70620271bfceb7a9be0c81744a033f08adc7ceba832c9917ab3e691b7 +size 13208808 diff --git a/guile-3.0.7.tar.xz.sig b/guile-3.0.7.tar.xz.sig new file mode 100644 index 0000000..243f857 --- /dev/null +++ b/guile-3.0.7.tar.xz.sig @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCAAdFiEET9TSiNRFk04KFPmlqIA3MuRDaIUFAmCY8yUACgkQqIA3MuRD +aIV2KRAAi0TMbz+ZoHZ3b08wOl6WUkAB6NWuhS8w6KdHlrUTl1hLeug/vG0pCV+e +u/esJTALCQWHZd8QMD1AqRlTMe8jWnys7JxoqeOTBQ9HkNWFAeFQSh1mrFTCpKBH +4M5CTwjKPmvKounQ2PbfpzqbZowoP9CxEq5CHFwi/MvExsTbUhMm5hGnfSdqQc4V +R5LzwgywOn2uy/BALDs+2wqHn2GNifQ0/8v25qlMvejWcZkTUe+t0MgfkunxV2bp +PWgSsd6bDhpVodKVGkWWmH0PueWlF0xOz6onBlts3yfd3kiGeno9KC77+7bNGlrI +wsnLAXokkb4iARZEda5PQQzEU+rOK6STMhhdWQDuFpSqq0cxrYRcm8BctL0XBR2B +NDvTBnYYPuSdUrhUelKGfaKKzIdMRCB6gXdIV/pNZREHT9uwG/OJh5czmR2koq3u +oSxTOb9LyLY95zzxHmVH5riE7kvMxcBmEvVAjDEn2b1vDEwMNBgzaZH1bkAVSXOm +tpKhuQt4TiCrO2M4eqAcQCV9hY6vIaIyQQKMMJz33L1TpIO95pW8sOe1Fm8868tB +TkBQJfmqcoIXNRThkV80pQqyz1d48hKQmj24wV+nYlVV93IskwUJXiFJhiJc8KDI +u8CnSj1pni0Q4khLcDzKLNwKmADJ1lJ0Ha22fZVsxt3QuFfINiA= +=KB3C +-----END PGP SIGNATURE----- diff --git a/guile.changes b/guile.changes index 41894de..4c194b4 100644 --- a/guile.changes +++ b/guile.changes @@ -1,3 +1,56 @@ +------------------------------------------------------------------- +Fri May 14 14:15:48 UTC 2021 - Ferdinand Thiessen + +- Update to version 3.0.7 + * Guile now defines constants such as `O_NOFOLLOW', `O_CLOEXEC', + `O_TMPFILE', and more. These may be passed as arguments to + procedures such as `open' and `open-fdes'. + * Fix deadlock after `primitive-fork' + * Fix duplicates handlers for interfaces that use interfaces + * Fix R7RS include-library-declarations, cond-expand + * Fix excessive compile times for vectors >16k elements long + * Fix use of literal tree-il as source language + * Fix SRFI-64 test-end to not remove globally-installed test runner +- Update to version 3.0.6 + * Reimplement dynamic library loading ("dlopening") without libltdl + * New library search path variable, `GUILE_EXTENSIONS_PATH'. + * Fix important incompatibility with GnuTLS and GMP, but this may + slow down some uses of bignums. + * New `read' implementation in Scheme + * Syntax objects record source locations + * Optimized run-time relocations + * Optimized calls to known functions + * Reduce code size for calls to module variables + * Updated Gnulib + * New interfaces and functionality + * `call-with-port' + * `call-with-input-bytevector', `call-with-output-bytevector' + * `mkdtemp' and `mkstemp' + * `(system foreign-library)' module + * `read-syntax' + * `quote-syntax' + * `syntax-sourcev' + * Fix reverse-list->string docstring + * Fix R7RS "member" result when no item found + * Fix make-transcoded-port on input+output ports + * Fix (ice-9 ftw) on filesystems where inode values are meaningless + * Fix srfi-69 merge-hash + * Fix suspendable-ports implementation of get-bytevector-some! + * Fix overread in string-locale diff --git a/guile.spec b/guile.spec index db303d1..cda92c9 100644 --- a/guile.spec +++ b/guile.spec @@ -23,7 +23,7 @@ %define libgver 1 %define gsuff %{guilemaj}_%{guilemin}-%{libgver} Name: guile -Version: %{guilevers}.5 +Version: %{guilevers}.7 Release: 0 Summary: GNU's Ubiquitous Intelligent Language for Extension License: GFDL-1.3-only AND GPL-3.0-or-later AND LGPL-3.0-or-later @@ -38,6 +38,7 @@ Patch0: guile-3.0-gc_pkgconfig_private.patch # The out-of-memory test is flaky, so disable it Patch1: disable-test-out-of-memory.patch Patch2: gcc10-x86-disable-one-test.patch +Patch3: 0007-Fix-non-revealed-port-is-closed-ports.test.patch BuildRequires: gmp-devel BuildRequires: libffi-devel BuildRequires: libltdl-devel @@ -102,6 +103,7 @@ linked in as a library when building extensible programs. %patch0 -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 # remove broken prebuilt objects rm -r prebuilt/32-bit-big-endian