%global gitrev 4a8f93b # gitrev is output of: git rev-parse --short HEAD Name: librepo Version: 1.2.0 Release: 2%{?dist} Summary: Repodata downloading library Group: System Environment/Libraries License: GPLv2+ URL: https://github.com/Tojaj/librepo # Use the following commands to generate the tarball: # git clone https://github.com/Tojaj/librepo.git # cd librepo # utils/make_tarball.sh %{gitrev} Source0: librepo-%{gitrev}.tar.xz BuildRequires: check-devel BuildRequires: cmake BuildRequires: doxygen BuildRequires: expat-devel BuildRequires: glib2-devel >= 2.22.0 BuildRequires: gpgme-devel BuildRequires: libattr-devel BuildRequires: libcurl-devel BuildRequires: openssl-devel # prevent provides from nonstandard paths: %filter_provides_in %{python_sitearch}/.*\.so$ %filter_provides_in %{python3_sitearch}/.*\.so$ %filter_setup %description A library providing C and Python (libcURL like) API to downloading repository metadata. %package devel Summary: Repodata downloading library Group: Development/Libraries Requires: %{name}%{?_isa} = %{version}-%{release} %description devel Development files for librepo. %package -n python-librepo Summary: Python bindings for the librepo library Group: Development/Languages BuildRequires: pygpgme BuildRequires: python2-devel BuildRequires: python-flask BuildRequires: python-nose BuildRequires: python-sphinx Requires: %{name}%{?_isa} = %{version}-%{release} %description -n python-librepo Python bindings for the librepo library. %package -n python3-librepo Summary: Python 3 bindings for the librepo library Group: Development/Languages BuildRequires: python3-pygpgme BuildRequires: python3-devel BuildRequires: python3-flask BuildRequires: python3-nose BuildRequires: python3-sphinx Requires: %{name}%{?_isa} = %{version}-%{release} %description -n python3-librepo Python 3 bindings for the librepo library. %prep %setup -q -n librepo rm -rf py3 mkdir ../py3 cp -a . ../py3/ mv ../py3 ./ %build %cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo . make %{?_smp_mflags} pushd py3 %cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DPYTHON_DESIRED:str=3 . make %{?_smp_mflags} popd %check make ARGS="-V" test pushd py3 make ARGS="-V" test popd %install make install DESTDIR=$RPM_BUILD_ROOT pushd py3 make install DESTDIR=$RPM_BUILD_ROOT popd %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %doc COPYING README.md %{_libdir}/librepo.so.* %files devel %{_libdir}/librepo.so %{_libdir}/pkgconfig/librepo.pc %{_includedir}/librepo/ %files -n python-librepo %{python_sitearch}/librepo/ %files -n python3-librepo %{python3_sitearch}/ %changelog * Thu Oct 03 2013 Tomas Mlcoch - 1.2.0-2 - Add target for Python 3 to the spec file - Fix few python3 related issues * Tue Oct 01 2013 Tomas Mlcoch - 1.2.0-1 - Better detection of bad content of repomd.xml - Close files properly (RhBug: 1012290) - Add fastestmirror module + LRO_FASTESTMIRROR option - downloader: Fix uninitialized total to download variable (GitHub issue 22) - Add LRO_MIRRORLISTURL and LRO_METALINKURL. LRO_MIRRORLIST is deprecated. - Few other small fixes * Mon Sep 16 2013 Tomas Mlcoch - 1.1.0-1 - New librepo.download_url(url, fd, handle=None) function in Python API. - Low-level downloader interface is now public in C API. - Small change of API lr_download_packages() and lr_packagetarget_new functions. - In python download_packages() changed from method of Handle() to librepo module function without handle param. Param handle was moved to the PackageTarget class that takes handle as a optional param during constrution. - Implements checking size of downloaded files (expectedsize param of downloading functions). * Wed Aug 28 2013 Tomas Mlcoch - 1.0.0-1 - Huge API changes - Library starts to use GLib2 - Support for parallel downloads - Better error reporting - More GLib2 style C api - More descriptive Python exception messages - A lot of bugfixes - Updated examples * Thu Jul 25 2013 Tomas Mlcoch - 0.0.5-3 - python: Raise exception if handle has bad repo type configured (RhBug: 988013) * Mon Jul 22 2013 Tomas Mlcoch - 0.0.5-2 - Bump version in versioh.h to 0.0.5 - Python: Fix Handle.mirrors to return empty list instead of None if no mirrors available (RhBug: 986228) * Wed Jul 17 2013 Tomas Mlcoch - 0.0.5-1 - Return LRE_ALREADYDOWNLOADED if the file exists even if no resume is specified. (GitHub issue 15) - downloadtarget: New module, future replacement for curltarget module. - Librepo migrated to lr_LrMirrorlist from lr_InternalMirrorlist. - test: Run python unittest verbosely - lrmirrorlis: New module. GLib2 ready replacement for the internal_mirrorlist module. - package_downloader: Add LRE_ALREADYDOWNLOADED rc code. (GitHub issue 15) - handle: After set python SIGINT handler back, check if librepo was interrupted by CTRL+C. (RhBug: 977803) - cmake: Set required python version to 2. (GitHub issue 10) - Fix missing VAR substitution for mirrorlist. (GitHub issue 11) - cmake: Add FindXattr module. - Add support for caching checksum as extended file attribute. (GitHub issue 8) - util: Add lr_asprintf(). - util: Add lr_vasprintf(). - handle: Fix funky logic in internal error handling. (GitHub issue 9) - Add lr_yum_repomd_get_age() function. (GitHub issue 6) - test: Add test for LR_VERSION_CHECK macro. - Add a LR_VERSION_CHECK macro * Wed Jun 12 2013 Tomas Mlcoch - 0.0.4-2 - examples: Add C example of usage. - Fix predefined lists in types.h (GitHub issue 4). Thank you hughsie - Add LRO_VARSUB and LRI_VARSUB. (RhBug: 965131) - py: Change reported name from _librepo.Exception to librepo.LibrepoException * Thu May 2 2013 Tomas Mlcoch - 0.0.4-1 - Fix type conversion long long -> long.(RhBug: 957656) - python: Handle.perfrom() could be called without Result(). - Add LRI_MAXMIRRORTRIES option. (RhBug: 954736) - py: unittests: Add metalink.xml and mirrorlist files. (RhBug: 954294) - Fix double free and memory leak. (RhBug: 954294) - New option LRO_MAXMIRRORTRIES. (RhBug: 949517) - LRI_MIRRORS return only content of mirrorlist file (without LRO_URL as first item). - Add LRO_FETCHMIRRORS option. * Mon Apr 8 2013 Tomas Mlcoch - 0.0.2-3.git720d68d - Add CURL_GLOBAL_ACK_EINTR flag to curl init. - Proper multi handle cleanup. (RhBug: 947388) - Support for read 'useragent' attr. (RhBug: 947346) - Add valgrind supress files. (RhBug: 923214) - Make python bindings interruptible (LRO_INTERRUPTIBLE) (RhBug: 919125) - Add LRI_MIRRORS option (RhBug: 923198) - Add LRI_METALINK option. (BzBug: 947767) * Mon Mar 18 2013 Tomas Mlcoch - 0.0.2-2.gitb3c3323 - py: Use standard python exception while accessing bad attrs. (RhBug: 920673) - Default mask for newly created files is 0666. (RhBug: 922557) * Thu Mar 14 2013 Tomas Mlcoch - 0.0.2-1.git714e828 - Add LRI_PROGRESSCB and LRI_PROGRESSDATA options (RhBug: 919123) - Bindings: More pythonic operations with handle's attributes (RhBug: 919124) * Tue Oct 9 2012 Tomas Mlcoch - 0.0.1-1.gitc69642e - Initial package