From 731ade3c3278260b3d2e6388cca237c7d310367c Mon Sep 17 00:00:00 2001 From: Troy Dawson Date: Thu, 15 Oct 2020 15:27:53 -0700 Subject: [PATCH] RHEL 9.0.0 Alpha bootstrap The content of this branch was automatically imported from Fedora ELN with the following as its source: https://src.fedoraproject.org/rpms/zchunk#d8d91ebc4bd2584f9fa53e10d13a35c72c0e3653 --- .gitignore | 27 ++++++ sources | 1 + zchunk.spec | 264 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 292 insertions(+) create mode 100644 sources create mode 100644 zchunk.spec diff --git a/.gitignore b/.gitignore index e69de29..2eb9921 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1,27 @@ +/zchunk-0.7.5.tar.gz +/zchunk-0.7.6.tar.gz +/zchunk-0.9.0.tar.gz +/zchunk-0.9.1.tar.gz +/zchunk-0.9.2.tar.gz +/zchunk-0.9.3.tar.gz +/zchunk-0.9.4.tar.gz +/zchunk-0.9.5.tar.gz +/zchunk-0.9.7.tar.gz +/zchunk-0.9.10.tar.gz +/zchunk-0.9.11.tar.gz +/zchunk-0.9.12.tar.gz +/zchunk-0.9.13.tar.gz +/zchunk-0.9.14.tar.gz +/zchunk-0.9.15.tar.gz +/zchunk-0.9.16.tar.gz +/zchunk-0.9.17.tar.gz +/zchunk-1.0.0.tar.gz +/zchunk-1.0.1.tar.gz +/zchunk-1.0.2.tar.gz +/zchunk-1.0.3.tar.gz +/zchunk-1.0.4.tar.gz +/zchunk-1.1.0.tar.gz +/zchunk-1.1.1.tar.gz +/zchunk-1.1.2.tar.gz +/zchunk-1.1.4.tar.gz +/zchunk-1.1.5.tar.gz diff --git a/sources b/sources new file mode 100644 index 0000000..65b3f40 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (zchunk-1.1.5.tar.gz) = 50e955782ad04d71a1011f88670bdd9953bbf182d401f963e47187ff474bdadd9a2b4c368f74a68d841bd510af29dd261c9ddb15ca09ce03bfe966c09417215f diff --git a/zchunk.spec b/zchunk.spec new file mode 100644 index 0000000..c52ea0b --- /dev/null +++ b/zchunk.spec @@ -0,0 +1,264 @@ +Name: zchunk +Version: 1.1.5 +Release: 3%{?dist} +Summary: Compressed file format that allows easy deltas +License: BSD and MIT +URL: https://github.com/zchunk/zchunk +Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz +BuildRequires: gcc +BuildRequires: pkgconfig(libzstd) +BuildRequires: pkgconfig(libcurl) +BuildRequires: pkgconfig(openssl) +BuildRequires: meson +Requires: %{name}-libs%{_isa} = %{version}-%{release} +Provides: bundled(buzhash-urlblock) = 0.1 + +%description +zchunk is a compressed file format that splits the file into independent +chunks. This allows you to only download the differences when downloading a +new version of the file, and also makes zchunk files efficient over rsync. +zchunk files are protected with strong checksums to verify that the file you +downloaded is in fact the file you wanted. + +%package libs +Summary: Zchunk library + +%description libs +zchunk is a compressed file format that splits the file into independent +chunks. This allows you to only download the differences when downloading a +new version of the file, and also makes zchunk files efficient over rsync. +zchunk files are protected with strong checksums to verify that the file you +downloaded is in fact the file you wanted. + +This package contains the zchunk library, libzck. + +%package devel +Summary: Headers for building against zchunk +Requires: %{name}-libs%{_isa} = %{version}-%{release} + +%description devel +zchunk is a compressed file format that splits the file into independent +chunks. This allows you to only download the differences when downloading a +new version of the file, and also makes zchunk files efficient over rsync. +zchunk files are protected with strong checksums to verify that the file you +downloaded is in fact the file you wanted. + +This package contains the headers necessary for building against the zchunk +library, libzck. + +%prep +%autosetup +# Remove bundled sha libraries +rm -rf src/lib/hash/sha* + +%build +%meson -Dwith-openssl=enabled -Dwith-zstd=enabled +%meson_build + +%install +%meson_install +mkdir -p %{buildroot}%{_libexecdir} +install contrib/gen_xml_dictionary %{buildroot}%{_libexecdir}/zck_gen_xml_dictionary + +%check +%meson_test + +%ldconfig_scriptlets libs + +%files +%doc README.md contrib +%{_bindir}/zck* +%{_bindir}/unzck +%{_libexecdir}/zck_gen_xml_dictionary + +%files libs +%license LICENSE +%doc README.md +%{_libdir}/libzck.so.* + +%files devel +%doc zchunk_format.txt +%{_libdir}/libzck.so +%{_libdir}/pkgconfig/zck.pc +%{_includedir}/zck.h + +%changelog +* Wed Jul 29 2020 Fedora Release Engineering - 1.1.5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Fri Jan 31 2020 Fedora Release Engineering - 1.1.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Sat Jan 18 2020 Jonathan Dieter - 1.1.5-1 +- Fix small bug in corner case when handling write failures + +* Wed Nov 13 2019 Jonathan Dieter - 1.1.4-1 +- Fix download failure when web server doesn't include content-type with each + range + +* Sat Jul 27 2019 Fedora Release Engineering - 1.1.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sun May 19 2019 Jonathan Dieter - 1.1.2-2 +- Fix multipart range handling to work with quotes, fixes #1706627 +- Fix file creation permissions so they respect umask +- Actually push new sources + +* Tue Apr 16 2019 Adam Williamson - 1.1.1-3 +- Rebuild with Meson fix for #1699099 + +* Mon Apr 15 2019 Jonathan Dieter - 1.1.1-2 +- Fix compilation on GCC 4.4.7 so it builds on EL6 +- Add missing sources +- Also, zchunk will now automatically do all your taxes + +* Sat Mar 23 2019 Jonathan Dieter - 1.1.0-1 +- Optimize chunk matching while downloading, significantly reducing CPU usage + +* Sat Mar 16 2019 Jonathan Dieter - 1.0.4-1 +- Fix multipart boundary bug when dealing with lighttpd servers + +* Sun Feb 03 2019 Fedora Release Engineering - 1.0.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Thu Jan 24 2019 Jonathan Dieter - 1.0.3-1 +- Fix several memory leaks and use-after-frees + +* Fri Dec 28 2018 Jonathan Dieter - 1.0.2-1 +- Use hash table for finding identical chunks, speeding up process considerably +- Add test case to verify that identical chunk checking is working + +* Sat Dec 22 2018 Jonathan Dieter - 1.0.0-1 +- 1.0 release. API/ABI stability is now guaranteed + +* Sun Dec 09 2018 Jonathan Dieter - 0.9.17-1 +- Turn off some tests for big-endian architectures since zstd isn't + deterministic on them + +* Sat Dec 08 2018 Jonathan Dieter - 0.9.16-1 +- Add zck_gen_zdict binary to generate optimal zdict for a zchunk file +- Add functions to API to simplify extracting a single chunk +- Change default zstd compression to 9 for a 6x speed increase in compression + speed for a 5% increase in compression size + +* Tue Nov 13 2018 Jonathan Dieter - 0.9.15-1 +- Switch from optional flags to more robust optional elements + +* Thu Nov 01 2018 Jonathan Dieter - 0.9.14-1 +- Sanity check hex hashes passed in as an option + +* Mon Oct 08 2018 Jonathan Dieter - 0.9.13-1 +- Add read support for zchunk files with optional flags +- Fix tests for zstd-1.3.6 + +* Fri Sep 28 2018 Jonathan Dieter - 0.9.11-1 +- Fix small bug where creating a zck_dl context fails when zck context is NULL + +* Tue Sep 18 2018 Jonathan Dieter - 0.9.10-1 +- Update to 0.9.10 +- Fixes security bugs found by Coverity + +* Fri Aug 10 2018 Jonathan Dieter - 0.9.7-2 +- Add contrib scripts to docs +- Fix test failures for zstd <= 1.3.4 +- Add gen_xml_dictionary to libexecdir with zck_ prefix + +* Wed Aug 01 2018 Jonathan Dieter - 0.9.5-1 +- Update to 0.9.4 +- Fix failing tests on ppc64, ppc64le, arm7, and s390x +- Fix intermittent parallel test failures + +* Tue Jul 31 2018 Jonathan Dieter - 0.9.3-1 +- Update to 0.9.3 +- Fix intermittent bug where auto-chunking wasn't deterministic + +* Mon Jul 30 2018 Jonathan Dieter - 0.9.2-1 +- Update to 0.9.2 +- Set minimum and maximum chunk sizes for both automatic and + manual chunking +- New tests +- ABI (but not API change) - Use bool from stdbool.h +- Allow specification of output file in zck + +* Wed Jul 25 2018 Jonathan Dieter - 0.9.1-1 +- Update to 0.9.1 +- New error handling functions +- File format changes +- API changes +- Proposed permanent stable ABI +- Fix Rawhide build error + +* Thu Jul 12 2018 Jonathan Dieter - 0.7.6-1 +- Update to 0.7.6 +- SHA-512 and SHA-512/128 support +- New default chunk checksum type SHA-512/128 +- Automatic chunking moved into libzck and is now default +- New option to disable automatic chunking +- Bugfixes + +* Wed Jul 04 2018 Jonathan Dieter - 0.7.5-4 +- Fix ldconfig scriptlets to run on libs package +- Rename zchunk-libs-devel to zchunk-devel +- Add BR: gcc +- Explicitly enable zstd and openssl support +- Simplify file globs + +* Tue Jul 03 2018 Jonathan Dieter - 0.7.5-1 +- Split libs into separate package +- Fix license +- Provide bundled buzhash +- Fix punctuation +- Simplify source0 using url macro +- Remove bundled sha library and add dependency on OpenSSL + +* Mon Jul 02 2018 Jonathan Dieter - 0.7.4-2 +- Add zchunk format definition to -devel documentation + +* Fri Jun 22 2018 Jonathan Dieter - 0.7.4-1 +- Add --stdout argument to unzck +- Use meson native versioning rather than manual header and fix + pkgconfig output + +* Tue Jun 12 2018 Jonathan Dieter - 0.7.2-1 +- Rename zck_get_dl_range to zck_get_missing_range because it + was too similar to the unrelated zck_dl_get_range function + +* Mon Jun 11 2018 Jonathan Dieter - 0.7.1-1 +- New functions in the library + +* Fri Jun 08 2018 Jonathan Dieter - 0.7.0-1 +- Massive API rework in preparation for ABI stability guarantee + +* Wed Jun 06 2018 Jonathan Dieter - 0.6.2-1 +- Header and API cleanup +- Fix warnings + +* Tue Jun 05 2018 Jonathan Dieter - 0.6.0-1 +- Massive rework of zckdl utility +- Main library no longer depends on curl, only zckdl utility +- Rework API +- Support for servers that have different maximum ranges in a request + +* Thu May 10 2018 Jonathan Dieter - 0.5.2-1 +- Add new zck_get_range() function +- Add tests +- Range functions are no longer prefixed with "Range: bytes=" + +* Wed May 09 2018 Jonathan Dieter - 0.5.0-1 +- Command line utilities now provide help and usage examples and take + proper flags +- Reading a zchunk header no longer automatically reads the dictionary + +* Sun Apr 29 2018 Jonathan Dieter - 0.4.0-1 +- Next release with incompatible file format changes +- File format has been reworked to allow checking of the header checksum + without reading full header into memory at once +- Terminology changes for the header + +* Fri Apr 20 2018 Jonathan Dieter - 0.3.0-1 +- Next release with incompatible file format changes +- File format now supports streams and signatures + +* Tue Apr 17 2018 Jonathan Dieter - 0.2.2-1 +- First release +- Fix build on EL7