diff --git a/sources b/sources index 1f747a4..5a685ca 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (subversion-1.14.0.tar.bz2) = af6b706fdc91f7ab292fce9d9de582da306fd11e92767dc852687e71a6a8b65bb867fa70d5afd7f76a46005acb1b3c2d3193e690def48cd26875b3a7851cd13b +SHA512 (subversion-1.14.2.tar.bz2) = 20ada4688ca07d9fb8da4b7d53b5084568652a3b9418c65e688886bae950a16a3ff37710fcfc9c29ef14a89e75b2ceec4e9cf35d5876a7896ebc2b512cfb9ecc diff --git a/subversion-1.14.1-fixjavatests.patch b/subversion-1.14.1-fixjavatests.patch new file mode 100644 index 0000000..b7a79b0 --- /dev/null +++ b/subversion-1.14.1-fixjavatests.patch @@ -0,0 +1,30 @@ + +See upstream dev@subversion thread. Fixes intermittent failure of +javahl tests, particularly reproducible on aarch64. + +Message-ID: <11de5f5c-5059-b973-95a1-385e7913a63a@syntevo.com> +From: Alexandr Miloslavskiy + +--- subversion-1.14.1/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java.fixjavatests ++++ subversion-1.14.1/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java +@@ -4676,7 +4676,19 @@ + // RuntimeException("Test exception") is expected here + } + +- tunnelAgent.joinAndTest(); ++ // In this test, there is a race condition that sometimes results in ++ // IOException when 'WAIT_TUNNEL' tries to read from a pipe that ++ // already has its read end closed. This is not an error, but ++ // it's hard to distinguish this case from other IOException which ++ // indicate a problem. To reproduce, simply wrap this test's body in ++ // a loop. The workaround is to ignore any detected IOException. ++ // ++ // tunnelAgent.joinAndTest(); ++ try { ++ tunnelAgent.join(); ++ } catch (InterruptedException e) { ++ e.printStackTrace (); ++ } + } + + /** diff --git a/subversion-1.14.1-python-3.11-build.patch b/subversion-1.14.1-python-3.11-build.patch new file mode 100644 index 0000000..8801ffe --- /dev/null +++ b/subversion-1.14.1-python-3.11-build.patch @@ -0,0 +1,14 @@ +Use read_file instead of deprecated readfp - removed in Python 3.11 + +diff -ur subversion-1.14.1/build/generator/gen_base.py subversion-1.14.1-patched/build/generator/gen_base.py +--- subversion-1.14.1/build/generator/gen_base.py 2019-11-04 06:59:36.000000000 +0100 ++++ subversion-1.14.1-patched/build/generator/gen_base.py 2021-12-15 14:04:50.041649320 +0100 +@@ -76,7 +76,7 @@ + + # Now read and parse build.conf + parser = configparser.ConfigParser() +- parser.readfp(open(fname)) ++ parser.read_file(open(fname)) + + self.conf = build_path(os.path.abspath(fname)) + diff --git a/subversion-1.14.1-testnoautoprops.patch b/subversion-1.14.1-testnoautoprops.patch new file mode 100644 index 0000000..96dd59d --- /dev/null +++ b/subversion-1.14.1-testnoautoprops.patch @@ -0,0 +1,14 @@ + +Fix intermittent failures when "svn add" guesses a near-empty file is binary and hence +the output is different. + +--- subversion-1.14.1/subversion/tests/cmdline/svntest/main.py.testnoautoprops ++++ subversion-1.14.1/subversion/tests/cmdline/svntest/main.py +@@ -691,6 +691,7 @@ + + [miscellany] + interactive-conflicts = false ++enable-auto-props = no + """ + if exclusive_wc_locks: + config_contents += """ diff --git a/subversion.spec b/subversion.spec index fa52a32..9e98ddd 100644 --- a/subversion.spec +++ b/subversion.spec @@ -1,8 +1,15 @@ -# set to zero to avoid running test suite - -%bcond_without kwallet +# Disable to avoid all the test suites %bcond_without tests +# Disable automatic .la file removal +%global __brp_remove_la_files %nil + +%if 0%{?rhel} || 0%{?eln} +%bcond_with kwallet +%else +%bcond_without kwallet +%endif + %if 0%{?fedora} > 32 || 0%{?rhel} > 8 %bcond_with bdb %else @@ -22,10 +29,10 @@ %bcond_without ruby %endif -%ifarch %{power64} s390x -%global with_java 0 +%ifarch %{java_arches} +%bcond_without java %else -%global with_java 1 +%bcond_with java %endif %if %{with python2} == %{with python3} @@ -51,12 +58,11 @@ Summary: A Modern Concurrent Version Control System Name: subversion -Version: 1.14.0 -Release: 6%{?dist} +Version: 1.14.2 +Release: 4%{?dist} License: ASL 2.0 URL: https://subversion.apache.org/ - -Source0: https://downloads.apache.org/subversion/subversion-1.14.0.tar.bz2 +Source0: https://downloads.apache.org/subversion/subversion-%{version}.tar.bz2 Source1: subversion.conf Source3: filter-requires.sh Source4: http://www.xsteve.at/prg/emacs/psvn.el @@ -69,13 +75,17 @@ Patch2: subversion-1.14.0-testwarn.patch Patch3: subversion-1.14.0-soversion.patch Patch4: subversion-1.8.0-rubybind.patch Patch5: subversion-1.8.5-swigplWall.patch -BuildRequires: autoconf, libtool, texinfo, which +Patch6: subversion-1.14.1-testnoautoprops.patch +Patch8: subversion-1.14.1-python-3.11-build.patch + +BuildRequires: make +BuildRequires: autoconf, libtool, texinfo, which, gcc, gcc-c++ BuildRequires: swig >= 1.3.24, gettext %if %{with bdb} BuildRequires: libdb-devel >= 4.1.25 %endif BuildRequires: %{svn_python_br} -BuildRequires: apr-devel >= 1.3.0, apr-util-devel >= 1.3.0 +BuildRequires: apr-devel >= 1.5.0, apr-util-devel >= 1.3.0 BuildRequires: libserf-devel >= 1.3.0, cyrus-sasl-devel BuildRequires: sqlite-devel >= 3.4.0, file-devel, systemd-units BuildRequires: utf8proc-devel, lz4-devel @@ -104,7 +114,7 @@ compelling replacement for CVS. %package libs Summary: Libraries for Subversion Version Control system # APR 1.3.x interfaces are required -Conflicts: apr%{?_isa} < 1.3.0 +Conflicts: apr%{?_isa} < 1.5.0 # Enforced at run-time by ra_serf Conflicts: libserf%{?_isa} < 1.3.0 @@ -131,6 +141,7 @@ Subversion libraries. %{?python_provide:%python_provide python3-subversion} Summary: Python bindings for Subversion Version Control system BuildRequires: python3-devel py3c-devel +Requires: subversion-libs%{?_isa} = %{version}-%{release} %description -n python3-subversion The python3-subversion package includes the Python 3.x bindings to the @@ -187,11 +198,11 @@ Requires: subversion-libs%{?_isa} = %{version}-%{release} %description perl This package includes the Perl bindings to the Subversion libraries. -%if %{with_java} +%if %{with java} %package javahl Summary: JNI bindings to the Subversion libraries Requires: subversion = %{version}-%{release} -BuildRequires: java-11-openjdk-devel +BuildRequires: java-17-openjdk-devel # JAR repacking requires both zip and unzip in the buildroot BuildRequires: zip, unzip # For the tests @@ -228,11 +239,13 @@ This package includes supplementary tools for use with Subversion. %patch3 -p1 -b .soversion %patch4 -p1 -b .rubybind %patch5 -p1 -b .swigplWall +%patch6 -p1 -b .testnoautoprops +%patch8 -p1 -b .pythonbuild : : === Building: : === Python3=%{with python3} Python2=%{with python2} PySwig=%{with pyswig} -: === Java=%{with_java} Ruby=%{with ruby} +: === Java=%{with java} Ruby=%{with ruby} : === BDB=%{with bdb} Tests=%{with tests} KWallet=%{with kwallet} : @@ -281,7 +294,7 @@ export CC=gcc CXX=g++ JAVA_HOME=%{jdk_path} --disable-static --with-sasl=%{_prefix} \ --with-libmagic=%{_prefix} \ --with-gnome-keyring \ -%if %{with_java} +%if %{with java} --enable-javahl \ --with-junit=%{_prefix}/share/java/junit.jar \ %endif @@ -302,7 +315,7 @@ make swig-pl swig-pl-lib %if %{with ruby} make swig-rb swig-rb-lib %endif -%if %{with_java} +%if %{with java} # javahl-javah does not parallel-make with javahl #make javahl-java javahl-javah make javahl @@ -316,7 +329,7 @@ make install-swig-py %{swigdirs} DESTDIR=$RPM_BUILD_ROOT make install-swig-pl-lib install-swig-rb DESTDIR=$RPM_BUILD_ROOT make pure_vendor_install -C subversion/bindings/swig/perl/native \ PERL_INSTALL_ROOT=$RPM_BUILD_ROOT -%if %{with_java} +%if %{with java} make install-javahl-java install-javahl-lib javahl_javadir=%{_javadir} DESTDIR=$RPM_BUILD_ROOT %endif @@ -382,6 +395,9 @@ sed -i "/^dependency_libs/{ s,%{_libdir}/lib[^a][^p][^r][^ ']*.la, ,g; }" $RPM_BUILD_ROOT%{_libdir}/*.la +# Trim libdir in pkgconfig files to avoid multilib conflicts +sed -i '/^libdir=/d' $RPM_BUILD_ROOT%{_datadir}/pkgconfig/libsvn*.pc + # Install bash completion install -Dpm 644 tools/client-side/bash_completion \ $RPM_BUILD_ROOT%{_datadir}/bash-completion/completions/svn @@ -451,7 +467,7 @@ if ! make check-swig-py; then fi %endif # check-swig-rb omitted: it runs svnserve -%if %{with_java} +%if %{with java} make check-javahl %endif %endif @@ -471,7 +487,7 @@ make check-javahl %ldconfig_scriptlets ruby -%if %{with_java} +%if %{with java} %ldconfig_scriptlets javahl %endif @@ -504,7 +520,7 @@ make check-javahl %{_libdir}/libsvn*.so.* %exclude %{_libdir}/libsvn_swig_perl* %exclude %{_libdir}/libsvn_swig_ruby* -%if %{with_java} +%if %{with java} %{_libdir}/libsvnjavahl-*.so %endif %if %{with kwallet} @@ -559,12 +575,80 @@ make check-javahl %{ruby_vendorarchdir}/svn %endif -%if %{with_java} +%if %{with java} %files javahl %{_javadir}/svn-javahl.jar %endif %changelog +* Tue Jul 5 2022 Joe Orton - 1.14.2-4 +- update for new Java arches and bump to JDK 17 (#2103909) + +* Mon Jun 13 2022 Python Maint - 1.14.2-3 +- Rebuilt for Python 3.11 + +* Tue May 31 2022 Jitka Plesnikova - 1.14.2-2 +- Perl 5.36 rebuild + +* Wed May 4 2022 Joe Orton - 1.14.2-1 +- update to 1.14.2 (#2073852, CVE-2021-28544, CVE-2022-24070) + +* Sat Feb 05 2022 Jiri Vanek - 1.14.1-11 +- Rebuilt for java-17-openjdk as system jdk + +* Thu Jan 27 2022 Mamoru TASAKA - 1.14.1-10 +- F-36: rebuild against ruby31 + +* Mon Jan 24 2022 Timm Bäder - 1.14.1-9 +- Disable automatic .la file removal +- https://fedoraproject.org/wiki/Changes/RemoveLaFiles + +* Sat Jan 22 2022 Fedora Release Engineering - 1.14.1-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Thu Dec 16 2021 Richard Lescak - 1.14.1-7 +- Replaced deprecated method readfp() in gen_base.py to build with Python 3.11 (#2019019) + +* Thu Jul 29 2021 Joe Orton - 1.14.1-6 +- fix intermittent FTBFS in tests (#1956806) + +* Fri Jul 23 2021 Fedora Release Engineering - 1.14.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Fri Jun 04 2021 Python Maint - 1.14.1-4 +- Rebuilt for Python 3.10 + +* Sat May 22 2021 Jitka Plesnikova - 1.14.1-3 +- Perl 5.34 rebuild + +* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 1.14.1-2 +- Rebuilt for updated systemd-rpm-macros + See https://pagure.io/fesco/issue/2583. + +* Wed Feb 10 2021 Joe Orton - 1.14.1-1 +- update to 1.14.1 (#1927265, #1768698) + +* Wed Jan 27 2021 Fedora Release Engineering - 1.14.0-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Jan 06 2021 Mamoru TASAKA - 1.14.0-11 +- F-34: rebuild against ruby 3.0 + +* Fri Dec 11 2020 Joe Orton - 1.14.0-10 +- strip libdir from pkgconfig files +- add missing -libs dep from python3-subversion + +* Thu Dec 3 2020 Joe Orton - 1.14.0-9 +- fix KWallet conditional (#1902598) + +* Mon Nov 30 2020 Jan Grulich - 1.14.0-8 +- Disable KWallet for RHEL and ELN + Resolves: bz#1902598 + +* Tue Sep 29 2020 Joe Orton - 1.14.0-7 +- bump required apr-devel +- BR gcc, gcc-c++ + * Sat Aug 01 2020 Fedora Release Engineering - 1.14.0-6 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild