diff --git a/xz-java-1.10.zip b/xz-java-1.10.zip new file mode 100644 index 0000000..d4bde8d --- /dev/null +++ b/xz-java-1.10.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c02a52da42f432fd5e9c8f30f8e0a9be775961d25740ec098b3f46b4d45f7fe5 +size 179204 diff --git a/xz-java-1.9.zip b/xz-java-1.9.zip deleted file mode 100644 index dbec562..0000000 --- a/xz-java-1.9.zip +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b1d9a603f4fa75f0702ef84af5bcc11d03e721b6317daec1b1f81c31904bed00 -size 155868 diff --git a/xz-java.changes b/xz-java.changes index f6cc5dc..1f7f510 100644 --- a/xz-java.changes +++ b/xz-java.changes @@ -1,3 +1,79 @@ +------------------------------------------------------------------- +Fri Aug 2 15:55:10 UTC 2024 - Anton Shvetz + +- Update to version 1.10 + * Licensing change: From version 1.10 onwards, XZ for Java is + under the BSD Zero Clause License (0BSD). 1.9 and older are in + the public domain and obviously remain so; the change only + affects the new releases. + 0BSD is an extremely permissive license which doesn't require + retaining or reproducing copyright or license notices when + distributing the code, thus in practice there is extremely + little difference to public domain. + * Mark copyright and license information in the source package so + that it is compliant to the REUSE Specification version 3.2. + * Improve LZMAInputStream.enableRelaxedEndCondition(): + + Error detection is slightly better. + + The input position will always be at the end of the stream + after successful decompression. + * Support .lzma files that have both a known uncompressed size + and the end marker. Such files are uncommon but valid. The same + issue was fixed in XZ Utils 5.2.6 in 2022. + * Add ARM64 and RISC-V BCJ filters. + * Speed optimizations: + + Delta filter + + LZMA/LZMA2 decoder + + LZMA/LZMA2 encoder (partially Java >= 9 only) + + CRC64 (Java >= 9 only) + * Changes that affect API/ABI compatibility: + + Change XZOutputStream constructors to not call the method + public void updateFilters(FilterOptions[] filterOptions). + + In SeekableXZInputStream, change the method public void + seekToBlock(int blockNumber) to not call the method public + long getBlockPos(int blockNumber). + + Make the filter options classes final: + ~ ARM64Options + ~ ARMOptions + ~ ARMThumbOptions + ~ DeltaOptions + ~ IA64Options + ~ LZMA2Options + ~ PowerPCOptions + ~ RISCVOptions + ~ SPARCOptions + ~ X86Options + * Add new system properties: + + org.tukaani.xz.ArrayCache sets the default ArrayCache: Dummy + (default) or Basic. See the documentation of ArrayCache and + BasicArrayCache. + + org.tukaani.xz.MatchLengthFinder (Java >= 9 only) sets the + byte array comparison method used for finding match lengths + in LZMA/LZMA2 encoder: UnalignedLongLE (default on x86-64 and + ARM64) or Basic (default on other systems). The former could + be worth testing on other 64-bit little endian systems that + support fast unaligned memory access. + * Build system (Apache Ant): + + Building the documentation no longer downloads element-list + or package-list file; the build is now fully offline. Such + files aren't needed with OpenJDK >= 16 whose javadoc can + auto-link to platform documentation on docs.oracle.com. With + older OpenJDK versions, links to platform documentation + aren't generated anymore. + + Don't require editing of build.properties to build with + OpenJDK 8. Now it's enough to use ant -Djava8only=true. Older + OpenJDK versions are no longer supported because the main + source tree uses Java 8 features. + + Support reproducible builds. See the notes in README.md. + + Add a new Ant target pom that only creates xz.pom. + + Change ant dist to use git archive to create a .zip file. + * Convert the plain text documentation in the source tree to + Markdown (CommonMark). + * The binaries of 1.10 in the Maven Central require Java 8 and + contain optimized classes for Java >= 9 as multi-release JAR. + They were built with OpenJDK 21.0.4 on GNU/Linux using the + following command: + SOURCE_DATE_EPOCH=1722262226 TZ=UTC0 ant maven + ------------------------------------------------------------------- Thu Sep 21 06:43:05 UTC 2023 - Fridrich Strba diff --git a/xz-java.spec b/xz-java.spec index e8f65d5..3482ccd 100644 --- a/xz-java.spec +++ b/xz-java.spec @@ -1,7 +1,7 @@ # # spec file for package xz-java # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2024 SUSE LLC # Copyright (c) 2013 Peter Conrad # # All modifications and additions to the file contributed by third parties @@ -18,13 +18,13 @@ Name: xz-java -Version: 1.9 +Version: 1.10 Release: 0 Summary: Pure Java implementation of XZ compression -License: SUSE-Public-Domain +License: 0BSD Group: Development/Libraries/Java URL: https://tukaani.org/xz/java.html -Source: http://tukaani.org/xz/xz-java-%{version}.zip +Source: https://tukaani.org/xz/xz-java-%{version}.zip BuildRequires: ant BuildRequires: fdupes BuildRequires: java-devel >= 1.8 @@ -50,9 +50,7 @@ This package contains the API documentation of xz-java. %setup -q -c -n %{name} %build -sed -i 's/linkoffline="[^"]*"//;/extdoc_/d' build.xml -sed -i 's/sourcever = 7/sourcever = 8/g' build.properties -ant -Dant.build.javac.{source,target}=8 clean jar doc maven +%{ant} -Dant.build.javac.{source,target}=8 clean jar doc maven %install # jar @@ -70,7 +68,7 @@ cp -pr build/doc/* %{buildroot}%{_javadocdir}/%{name} %files -f .mfiles %license COPYING -%doc NEWS README THANKS +%doc {NEWS,README,THANKS}.md %{_javadir}/xz.jar %files javadoc