Sync from SUSE:SLFO:Main librepo revision fd2f35f33cae14169ea021659ffbe651

This commit is contained in:
Adrian Schröter 2024-05-03 15:46:39 +02:00
commit 50bfb8f85f
4 changed files with 372 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

BIN
librepo-1.15.1.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

205
librepo.changes Normal file
View File

@ -0,0 +1,205 @@
-------------------------------------------------------------------
Wed Dec 28 16:50:53 UTC 2022 - Andreas Stieger <andreas.stieger@gmx.de>
- update to 1.15.1:
* Add API support for waiting on network in an event driven
manner
* OpenPGP API extension and fixes
- lincense updated to LGPL-2.1-or-later
-------------------------------------------------------------------
Sat Oct 15 19:32:29 UTC 2022 - Andreas Stieger <andreas.stieger@gmx.de>
- update to 1.14.5:
* Detailed error message when using non-existing TMPDIR
* Make error messages about repodata and rpm mismatch more user
friendly
-------------------------------------------------------------------
Wed Aug 25 16:46:36 UTC 2021 - Neal Gompa <ngompa13@gmail.com>
- Update to 1.14.2
+ Recover from fsync fail on read-only filesystem (rh#1956361)
+ Reduce time to load metadata
+ Fix resource leaks
+ Fix memory leaks
-------------------------------------------------------------------
Tue Apr 13 12:59:28 UTC 2021 - Neal Gompa <ngompa13@gmail.com>
- Update to 1.14.0
+ Fix LRO_PRESERVETIME behavior
+ Support multiple checksums in xattr (rh#1931904)
+ Return "calculated" checksum if requested w/caching
+ Fix lr_yum_download_url in case lr_handle is NULL
-------------------------------------------------------------------
Wed Feb 3 02:37:36 UTC 2021 - Neal Gompa <ngompa13@gmail.com>
- Update to 1.13.0
+ Fix the key string parsing in url_substitution
+ Fix memory leak in 'fastestmirror'
+ Download whole file when server doesn't support ranges (rh#1886706)
+ Various fixes for mirrors without ranges support and zchunk
+ Add support for pkcs11 certificate and key for repository authorization (rh#1859495)
+ Fix lr_perform() - Avoid 100% CPU usage
+ Drop Python 2 support
+ Add support for working with certificates used with proxy (rh#1920991)
-------------------------------------------------------------------
Sat Aug 22 20:18:17 UTC 2020 - Neal Gompa <ngompa13@gmail.com>
- Upgrade to 1.12.1
+ Validate path read from repomd.xml (rh#1868639, CVE-2020-14352)
- Dropped validate_path.patch to prevent directory traversal attacks
(boo#1175475, CVE-2020-14352) since it is upstream with version 1.12.1
-------------------------------------------------------------------
Thu Aug 20 10:30:12 UTC 2020 - Christian Vögl <christian.voegl@suse.com>
- Add validate_path.patch to prevent directory traversal attacks
(boo#1175475, CVE-2020-14352)
-------------------------------------------------------------------
Tue Jul 7 10:38:49 UTC 2020 - Neal Gompa <ngompa13@gmail.com>
- Upgrade to 1.12.0
+ Prefer mirrorlist/metalink over baseurl (rh#1775184)
+ Decode package URL when using for local filename (rh#1817130)
+ Fix memory leak in lr_download_metadata() and lr_yum_download_remote()
+ Download sources work when at least one of specified is working (rh#1775184)
-------------------------------------------------------------------
Sun Jan 19 14:52:18 UTC 2020 - Neal Gompa <ngompa13@gmail.com>
- Upgrade to 1.11.2
+ Fix calling Python API without holding GIL (rh#1788918)
+ Do not unref LrErr_Exception on exit (rh#1778854)
+ Cleanup zchunk-related error messages (rh#1790625)
- Fix typo in changes entry about version update to 1.11.1
-------------------------------------------------------------------
Sat Dec 14 22:17:03 UTC 2019 - Neal Gompa <ngompa13@gmail.com>
- Upgrade to 1.11.1
+ Create a directory for gpg sockets in /run/user/ (rh#1769831, rh#1771012)
- Fix bcond declaration for zchunk so defaults are always declared
-------------------------------------------------------------------
Sun Dec 1 15:37:41 UTC 2019 - Neal Gompa <ngompa13@gmail.com>
- Upgrade to 1.11.0
+ Define LRO_SUPPORTS_CACHEDIR only with zchunk (rh#1726141)
+ Allow to use mirrors multiple times for a target (rh#1678588)
+ Allow to try baseurl multiple times (rh#1678588)
+ Remove librepo xattr when no file descriptor (rh#1690894)
+ Fix verification of checksum from file attr (rh#1700341)
+ Rephrase repository GPG check error message (rh#1741442)
+ Add sleep when all mirrors were tried (rh#1741931)
+ Raise logging level of error messages (rh#1737709)
+ retry mirrorlist/metalink downloads
+ Fix lr_url_substitute() and add ${variable} support
+ Add support for one-time URL flags
+ Fix API - LrHandleOption enum - LRO_ONETIMEFLAG (rh#1761779)
-------------------------------------------------------------------
Fri May 24 03:18:15 UTC 2019 - Neal Gompa <ngompa13@gmail.com>
- Upgrade to 1.10.3
+ Exit gpg-agent after repokey import (rh#1650266)
+ Make sure to check next transfer if current zck transfer already exists (rh#1706627)
-------------------------------------------------------------------
Sun May 12 02:58:52 UTC 2019 - Neal Gompa <ngompa13@gmail.com>
- Upgrade to 1.10.2
+ Fix librepo isn't able to load zchunk files from next server on failure (rh#1706321)
-------------------------------------------------------------------
Fri May 10 14:21:16 UTC 2019 - Neal Gompa <ngompa13@gmail.com>
- Upgrade to 1.10.1
+ Clean up target->curl_handle rather than target->handle (rh#1694411)
+ Add an option to preserve timestamps of the downloaded files (rh#1688537)
+ Fix fetching repositories supplied by SUSE Customer Center
+ [tests] Wait for server to start instead of doing arbitrary sleep
- Drop patch included in this release
* Patch: librepo-PR148-clean-up-curl-target_handle.patch
- Disable executing test suite on ARM and RISC-V due to performance issues with builders
-------------------------------------------------------------------
Sun Mar 31 18:26:16 UTC 2019 - Neal Gompa <ngompa13@gmail.com>
- Add patch to fix fetching zck-compressed repos (rh#1694411)
* Patch: librepo-PR148-clean-up-curl-target_handle.patch
-------------------------------------------------------------------
Sun Mar 31 15:04:35 UTC 2019 - Neal Gompa <ngompa13@gmail.com>
- Upgrade to 1.9.6
+ Fix progress reporting with zchunk files
+ Reduce download delays by using still_running correctly
+ Improve error handling, cleanup
+ Simplified lr_perform()'s loop to prevent busy wait
+ Require libcurl >= 7.28.0
- Drop patch included in this release
* Patch: PR138-Fix-progress-reporting-with-zchunk-files.patch
-------------------------------------------------------------------
Sun Feb 3 17:23:59 UTC 2019 - Neal Gompa <ngompa13@gmail.com>
- Upgrade to 1.9.3
+ Replace expat with libxml2
+ Support using python-gpg instead of pygpgme
+ Fix major performance regression with libcurl-7.61.1
+ Add zchunk support
- Drop patch for backported fix that is part of this release
* Patch: 0001-stop-requiring-attr-xattr.patch
- Add patch proposed upstream to fix progress reporting for zck
* Patch: PR138-Fix-progress-reporting-with-zchunk-files.patch
- Fix RPM group and description for Python 3 subpackage
- Drop Python 2 subpackage
-------------------------------------------------------------------
Thu Sep 13 13:57:02 UTC 2018 - Jan Engelhardt <jengelh@inai.de>
- Fix RPM groups. Update descriptions so that librepo0
(which is going to be installed most of the time) has something
halfway useful.
-------------------------------------------------------------------
Thu Sep 13 11:19:32 UTC 2018 - Neal Gompa <ngompa13@gmail.com>
- Backport fix from upstream to use glibc's xattr instead of libattr
* Add patch: 0001-stop-requiring-attr-xattr.patch
- Use full author identities in changelog entries
-------------------------------------------------------------------
Thu Jan 4 00:45:16 UTC 2018 - Neal Gompa <ngompa13@gmail.com>
- Upgrade to 1.8.1
+ Fix memory leaks in Python bindings (gh#rpm-software-management/librepo#83)
+ Fix HTTP header checking to work with proxies (gh#rpm-software-management/librepo#86)
+ Change connection and low-speed default timeouts to sync with DNF/Yum
+ Fix max download speed from repo (rh#1227921)
-------------------------------------------------------------------
Sun Aug 13 17:13:45 UTC 2017 - Neal Gompa <ngompa13@gmail.com>
- Disable running unit tests by default because of random pygpgme failures
-------------------------------------------------------------------
Mon Feb 20 14:35:02 UTC 2017 - Neal Gompa <ngompa13@gmail.com>
- Update to 1.7.20
-------------------------------------------------------------------
Mon Feb 1 06:28:16 UTC 2016 - Neal Gompa <ngompa13@gmail.com>
- Use SUSE-specific groups and tags
-------------------------------------------------------------------
Mon Feb 1 06:15:57 UTC 2016 - Neal Gompa <ngompa13@gmail.com>
- Initial packaging of librepo derived from Mageia packaging

141
librepo.spec Normal file
View File

@ -0,0 +1,141 @@
#
# spec file for package librepo
#
# Copyright (c) 2022 SUSE LLC
# Copyright (c) 2020-2021 Neal Gompa <ngompa13@gmail.com>.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%ifarch %{arm} aarch64 riscv64
# Don't run tests on ARM and RISC-V for now. There are problems
# with performance on the builders and often these time out.
%bcond_with tests
%else
%bcond_without tests
%endif
# zchunk is only available in Leap 15.1 and newer
%if 0%{?sle_version} >= 150100 || 0%{?suse_version} >= 1550
%bcond_without zchunk
%else
%bcond_with zchunk
%endif
%define major 0
%define libname %{name}%{major}
%define devname %{name}-devel
Name: librepo
Version: 1.15.1
Release: 0
Summary: Repodata downloading library
License: LGPL-2.1-or-later
Group: Development/Libraries/C and C++
URL: https://github.com/rpm-software-management/librepo
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
BuildRequires: cmake
BuildRequires: doxygen
BuildRequires: gpgme-devel
BuildRequires: pkgconfig(check)
BuildRequires: pkgconfig(glib-2.0) >= 2.28.0
BuildRequires: pkgconfig(libcrypto)
BuildRequires: pkgconfig(libcurl) >= 7.52.0
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(openssl)
%if %{with zchunk}
BuildRequires: pkgconfig(zck) >= 0.9.11
%endif
BuildRequires: python-rpm-macros
# prevent provides from nonstandard paths:
%global __provides_exclude ^(%{python3_sitearch}/.*\\.so)$
%description
A library providing C and Python (libcURL like) API for downloading repository
metadata.
%package -n %{libname}
Summary: Repodata downloading library
Group: System/Libraries
%description -n %{libname}
A library providing C and Python (libcURL like) API for downloading repository
metadata.
%package -n %{devname}
Summary: Header files for the Repodata downloading library
Group: Development/Libraries/C and C++
Requires: %{libname}%{?_isa} = %{version}-%{release}
%description -n %{devname}
This package provides the development files for %{name}.
%package -n python3-librepo
Summary: Python 3 bindings for the librepo library
Group: Development/Libraries/Python
BuildRequires: python3-devel
%if %{with tests}
BuildRequires: python3-Flask
BuildRequires: python3-gpg
BuildRequires: python3-requests
%endif
BuildRequires: python3-Sphinx
BuildRequires: python3-xattr
Requires: %{libname}%{?_isa} = %{version}-%{release}
# There is no more Python 2 subpackage
Obsoletes: python2-librepo < 1.9.3
%description -n python3-librepo
This package provides the Python 3 bindings for the librepo library.
%prep
%autosetup -p1
%build
%cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DPYTHON_DESIRED:str=3 %{!?with_zchunk:-DWITH_ZCHUNK=OFF}
%make_build
%check
%if %{with tests}
pushd ./build
make ARGS="-V" test
make clean
popd
%endif
%install
pushd ./build
%make_install
popd
%post -n %{libname} -p /sbin/ldconfig
%postun -n %{libname} -p /sbin/ldconfig
%files -n %{libname}
%doc README.md
%license COPYING
%{_libdir}/librepo.so.%{major}
%files -n %{devname}
%{_libdir}/librepo.so
%{_libdir}/pkgconfig/librepo.pc
%{_includedir}/librepo/
%files -n python3-librepo
%{python3_sitearch}/librepo
%changelog