Bug 1287837 - Review Request: borgbackup - A deduplicating backup program
Review Request: borgbackup - A deduplicating backup program
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
unspecified Severity medium
: ---
: ---
Assigned To: Antonio Trande
Fedora Extras Quality Assurance
: Reopened
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2015-12-02 14:24 EST by Benjamin Pereto
Modified: 2016-06-08 01:20 EDT (History)
7 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2016-06-08 01:20:26 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
anto.trande: fedora‑review+


Attachments (Terms of Use)

  None (edit)
Description Benjamin Pereto 2015-12-02 14:24:15 EST
Spec URL: https://data.sandchaschte.ch/pub/fedora/python-borgbackup.spec
SRPM URL: https://data.sandchaschte.ch/pub/fedora/python-borgbackup-0.28.2-3.fc23.src.rpm
Description: BorgBackup (short: Borg) is a deduplicating backup program. Optionally, it supports compression and authenticated encryption.
it is a fork from attic.

Fedora Account System Username: bpereto

I really want to participate in the fedora packaging. so i'm seeking for a sponsor who will mentoring me until i become a maintainer.

Upstream: https://github.com/borgbackup/borg
Comment 1 Benjamin Pereto 2015-12-02 14:27:32 EST
Koji Build of the provided spec and srpm:

https://koji.fedoraproject.org/koji/taskinfo?taskID=12031726
Comment 2 Antonio Trande 2015-12-02 14:32:09 EST
Why a double package?

This is not need:

>%package -n python3-%{srcname}
>Requires:       python3-msgpack
>Summary:        %{sum}
>
>%description -n python3-%{srcname}
>BorgBackup (short: Borg) is a deduplicating backup program. Optionally, it
>supports compression and authenticated encryption.

Why a 'sum' macro?
Comment 3 Benjamin Pereto 2015-12-02 16:06:46 EST
You are right, for a python3 only package its doubled.
I considered adding it in epel 7, and there is python3 not ready yet AFAIK.
and would lead to such a contruct with the progress of the guidline proposal and discussion at the moment.

Thanks for your feedback, I updated the spec and srpm for python3 only:

Spec URL: https://data.sandchaschte.ch/pub/fedora/python-borgbackup.spec
SRPM URL: https://data.sandchaschte.ch/pub/fedora/python3-borgbackup-0.28.2-4.fc23.src.rpm

Koji Build: http://koji.fedoraproject.org/koji/taskinfo?taskID=12032322
Comment 4 Antonio Trande 2015-12-03 17:02:05 EST
- SPEC file name does not match package's name
- Remove pre-built egg-info files
Comment 5 Benjamin Pereto 2015-12-04 08:38:35 EST
Spec URL: https://data.sandchaschte.ch/pub/fedora/python3-borgbackup.spec
SRPM URL: https://data.sandchaschte.ch/pub/fedora/python3-borgbackup-0.28.2-5.fc23.src.rpm

Koji Build: http://koji.fedoraproject.org/koji/taskinfo?taskID=12052822


> - SPEC file name does not match package's name
Sure, now its a python3 only rpm

> - Remove pre-built egg-info files
is beeing removed in %pre stage
Comment 6 Antonio Trande 2015-12-04 12:25:00 EST
- >rm -rf %{buildroot}/%{srcname}.egg-info

This command does not work in %prep, %{buildroot} does not exist yet.
Use

rm -rf %{srcname}.egg-info

-  >%attr(0755, root, root) %{python3_sitearch}/borg/*.so 

Why ?

- >%{__python3} setup.py check

No tests seem performed; please check.

- >%files -n python3-%{srcname}

Specify package name is useless.

- >%{?python_provide:%python_provide python3-%{srcname}}

'python_provide' macro is not necessary in this case.
Comment 7 Robert Buchholz 2015-12-05 18:36:40 EST
As additional review points:

- python3-borgbackup.x86_64: W: dangling-relative-symlink /usr/share/doc/python3-borgbackup/CHANGES.rst docs/changes.rst
The target of the symbolic link does not exist within this package or its file
based dependencies.  Verify spelling of the link target and that the target is
included in a package in this package's dependency chain.

- You are missing the installation of testing-only dependencies (as BuildRequires, defined in requirements.d in the source). tests can be called with either tox or the py.test call in tox.ini.

- There is no man page.

- Since this is not a library, but a CLI tool, shouldn't the package be called borgbackup (or borg)?
Comment 8 Benjamin Pereto 2015-12-07 05:26:56 EST
>rm -rf %{buildroot}/%{srcname}.egg-info
added

> 
> -  >%attr(0755, root, root) %{python3_sitearch}/borg/*.so 
> 
> Why ?

rpmlint:
non-standard-executable-perm /usr/lib64/python3.5/site-packages/borg/crypto.cpython-35m-x86_64-linux-gnu.so 775
And the packaging guidelines.

> - >%{__python3} setup.py check
> 
> No tests seem performed; please check.
> 
You are right, trying to implement the documented checks with tox or pytest

> - You are missing the installation of testing-only dependencies (as BuildRequires, defined in requirements.d in the source). tests can be called  with either tox or the py.test call in tox.ini.
I think tox is in this place an overkill and only nessecary to test against the actual python3 active in each dist-version. Also it likes to install dependencys from pypi, which should be handled in BuildRequires
So I experimented with the statement tox executes: py.test
the tests needing addintional requirements (which you pointet it out), where one fedora rawhide does not contain: python3-pytest-benchmark
Excluding it breaks the testsuite.
I see 2 options:
- Patch to exclude benchmarking from testsuite
- Packaging pytest-benchmark
( pytest command in tox.ini also skipping it with --benchmark-skip )
 

> - >%files -n python3-%{srcname}

cleaned up

> - >%{?python_provide:%python_provide python3-%{srcname}}
> 
> 'python_provide' macro is not necessary in this case.

removed.

> - python3-borgbackup.x86_64: W: dangling-relative-symlink /usr/share/doc/python3-borgbackup/CHANGES.rst docs/changes.rst

Thanks, the symlink destination file is now beeing copied.


> - There is no man page.

Working on it. Man pages can be generated with sphinx, but I worked on the test part.

> - Since this is not a library, but a CLI tool, shouldn't the package be called borgbackup (or borg)?

I'm open to that. The whole resides in lib/python../site-packages and the 'borg' cmd loads borg.archiver:main
Whats more common in the naming?


I updated the spec file. Since the package at the moment is not working (testing failed, and manpage missing) I provide later a working SRPM.
Comment 9 Benjamin Pereto 2015-12-14 15:48:54 EST
Spec URL: https://data.sandchaschte.ch/pub/fedora/python3-borgbackup.spec
SRPM URL: https://data.sandchaschte.ch/pub/fedora/python3-borgbackup-0.29.0-1.fc23.src.rpm
Koji Build: http://koji.fedoraproject.org/koji/taskinfo?taskID=12188877

- added upstream manpage
- exclude benchmark from testsuite (is skipped by upstream also)
- new release 0.29.0

So what now about the name of the package?
If its not a python3 package I would name it for ex. borgbackup
Comment 10 Antonio Trande 2015-12-15 16:37:25 EST
>> - Since this is not a library, but a CLI tool, shouldn't the package be 
>> called borgbackup (or borg)?
>>
> I'm open to that. The whole resides in lib/python../site-packages and the 
> 'borg' cmd loads borg.archiver:main
> Whats more common in the naming?
> 
> So what now about the name of the package?

Well, i don't see any guidelines about how to name a Python package w/o python- suffix but what Robert said is well-founded.

- >cd docs; make SPHINXBUILD=sphinx-build-3 man

For brevity,

make -C docs SPHINXBUILD=sphinx-build-3 man


- >mv docs/_build/man/borg*.1* %{buildroot}/usr/share/man/man1/borg.1

/usr/share/man -->  %{_mandir}

- 
%{python3_sitearch}/*
%attr(0755, root, root) %{python3_sitearch}/borg/*.so

In this way, the directory %{python3_sitearch}/borg is listed twice. 
You may list 

%{python3_sitearch}/borg/

(If you need to fix *.so file permission, use 'chmod' in the %install section)
Comment 11 Benjamin Pereto 2015-12-17 15:09:51 EST
Spec URL: https://data.sandchaschte.ch/pub/fedora/borgbackup.spec
SRPM URL: https://data.sandchaschte.ch/pub/fedora/borgbackup-0.29.0-2.fc23.src.rpm
Koji Build: http://koji.fedoraproject.org/koji/taskinfo?taskID=12225516

- cleaned up & fixed spec

> Well, i don't see any guidelines about how to name a Python package w/o python-suffix but what Robert said is well-founded.

So I changed from python3-borgbackup to borgbackup.
Comment 12 Antonio Trande 2015-12-17 16:47:57 EST
Package approved.

Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed


Issues:
=======
- Package installs properly.
  Note: Installation errors (see attachment)
  See: https://fedoraproject.org/wiki/Packaging:Guidelines

--> fedora-review bug.

===== MUST items =====

C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[-]: Development (unversioned) .so files in -devel subpackage, if present.
     Note: Unversioned so-files in private %_libdir subdirectory (see
     attachment). Verify they are not in ld path.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses
     found: "BSD (3 clause)", "Unknown or generated". 102 files have
     unknown license. Detailed output of licensecheck in
     /home/sagitter/1287837-borgbackup/licensecheck.txt
[x]: License file installed when any subpackage combination is installed.
[x]: Package requires other packages for directories it uses.
     Note: No known owner of /usr/lib64/python3.5/site-packages,
     /usr/lib64/python3.5
[x]: Package must own all directories that it creates.
     Note: Directories without known owners: /usr/lib64/python3.5/site-
     packages, /usr/lib64/python3.5
[x]: %build honors applicable compiler flags or justifies otherwise.
[x]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[-]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros (instead of hard-coded directory
     names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Useful -debuginfo package or justification otherwise.
[x]: Package is not known to require an ExcludeArch tag.
[-]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 61440 bytes in 4 files.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least
     one supported primary architecture.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: If (and only if) the source package includes the text of the
     license(s) in its own file, then that file, containing the text of the
     license(s) for the package is included in %license.
[x]: Package does not own files or directories owned by other packages.
[x]: All build dependencies are listed in BuildRequires, except for any
     that are listed in the exceptions section of Packaging Guidelines.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Dist tag is present.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package use %makeinstall only when make install DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package does not use a name that already exists.
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as
     provided in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local

Python:
[x]: Python eggs must not download any dependencies during the build
     process.
[x]: A package which is used by another package via an egg interface should
     provide egg info.
[x]: Package meets the Packaging Guidelines::Python
[x]: Package contains BR: python2-devel or python3-devel
[x]: Binary eggs must be removed in %prep

===== SHOULD items =====

Generic:
[x]: Uses parallel make %{?_smp_mflags} macro.
[-]: If the source package does not include license text(s) as a separate
     file from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[x]: Fully versioned dependency in subpackages if applicable.
     Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in
     borgbackup-debuginfo
[ ]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[-]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[x]: Package should compile and build into binary rpms on all supported
     architectures.
[x]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed
     files.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[!]: Rpmlint is run on all installed packages.
     Note: Mock build failed
     See: http://fedoraproject.org/wiki/Packaging/Guidelines#rpmlint

--> fedora-review bug.

[x]: Large data in /usr/share should live in a noarch subpackage if package
     is arched.
[x]: Spec file according to URL is the same as in SRPM.


Installation errors
-------------------
INFO: mock.py version 1.2.14 starting (python version = 3.4.3)...
Start: init plugins
INFO: selinux enabled
Finish: init plugins
Start: run
Start: chroot init
INFO: calling preinit hooks
INFO: enabled root cache
INFO: enabled dnf cache
Start: cleaning dnf metadata
Finish: cleaning dnf metadata
INFO: enabled ccache
Mock Version: 1.2.14
INFO: Mock Version: 1.2.14
Finish: chroot init
INFO: installing package(s): /home/sagitter/1287837-borgbackup/results/borgbackup-0.29.0-2.fc24.x86_64.rpm /home/sagitter/1287837-borgbackup/results/borgbackup-debuginfo-0.29.0-2.fc24.x86_64.rpm /home/sagitter/1287837-borgbackup/results/borgbackup-debuginfo-0.29.0-2.fc24.x86_64.rpm
ERROR: Command failed. See logs for output.
 # /usr/bin/dnf --installroot /var/lib/mock/fedora-rawhide-x86_64/root/ --releasever 24 --setopt=deltarpm=false install /home/sagitter/1287837-borgbackup/results/borgbackup-0.29.0-2.fc24.x86_64.rpm /home/sagitter/1287837-borgbackup/results/borgbackup-debuginfo-0.29.0-2.fc24.x86_64.rpm /home/sagitter/1287837-borgbackup/results/borgbackup-debuginfo-0.29.0-2.fc24.x86_64.rpm --setopt=tsflags=nocontexts

--> fedora-review bug.


Rpmlint
-------
Checking: borgbackup-0.29.0-2.fc24.x86_64.rpm
          borgbackup-debuginfo-0.29.0-2.fc24.x86_64.rpm
          borgbackup-0.29.0-2.fc24.src.rpm
borgbackup.x86_64: W: spelling-error Summary(en_US) deduplicating -> reduplicating, duplicating, quadruplicating
borgbackup.x86_64: W: spelling-error %description -l en_US deduplicating -> reduplicating, duplicating, quadruplicating
borgbackup.src: W: spelling-error Summary(en_US) deduplicating -> reduplicating, duplicating, quadruplicating
borgbackup.src: W: spelling-error %description -l en_US deduplicating -> reduplicating, duplicating, quadruplicating
3 packages and 0 specfiles checked; 0 errors, 4 warnings.




Requires
--------
borgbackup-debuginfo (rpmlib, GLIBC filtered):

borgbackup (rpmlib, GLIBC filtered):
    /usr/bin/python3
    libacl.so.1()(64bit)
    libacl.so.1(ACL_1.0)(64bit)
    libc.so.6()(64bit)
    libcrypto.so.10()(64bit)
    libcrypto.so.10(libcrypto.so.10)(64bit)
    liblz4.so.1()(64bit)
    libpthread.so.0()(64bit)
    libpython3.5m.so.1.0()(64bit)
    python(abi)
    python3-msgpack
    rtld(GNU_HASH)



Provides
--------
borgbackup-debuginfo:
    borgbackup-debuginfo
    borgbackup-debuginfo(x86-64)

borgbackup:
    borgbackup
    borgbackup(x86-64)



Unversioned so-files
--------------------
borgbackup: /usr/lib64/python3.5/site-packages/borg/chunker.cpython-35m-x86_64-linux-gnu.so
borgbackup: /usr/lib64/python3.5/site-packages/borg/compress.cpython-35m-x86_64-linux-gnu.so
borgbackup: /usr/lib64/python3.5/site-packages/borg/crypto.cpython-35m-x86_64-linux-gnu.so
borgbackup: /usr/lib64/python3.5/site-packages/borg/hashindex.cpython-35m-x86_64-linux-gnu.so
borgbackup: /usr/lib64/python3.5/site-packages/borg/platform_linux.cpython-35m-x86_64-linux-gnu.so

Source checksums
----------------
http://pypi.python.org/packages/source/b/borgbackup/borgbackup-0.29.0.tar.gz :
  CHECKSUM(SHA256) this package     : b57859a3b39c703695a631b75621e6efbc18571c99a1974b8326c8a3cc007dbf
  CHECKSUM(SHA256) upstream package : b57859a3b39c703695a631b75621e6efbc18571c99a1974b8326c8a3cc007dbf


Generated by fedora-review 0.6.0 (3c5c9d7) last change: 2015-05-20
Command line :/usr/bin/fedora-review -m fedora-rawhide-x86_64 -b 1287837
Buildroot used: fedora-rawhide-x86_64
Active plugins: Python, Generic, Shell-api, C/C++
Disabled plugins: Java, SugarActivity, fonts, Haskell, Ocaml, Perl, R, PHP, Ruby
Disabled flags: EXARCH, DISTTAG, EPEL5, BATCH, EPEL6
Comment 13 Peter Meier 2015-12-21 18:47:33 EST
Adding python3-sphinx_rtd_theme to the python3-sphinx BuildRequires makes it also build on F23, otherwise I got the following error:

+ make -C docs SPHINXBUILD=sphinx-build-3 man
make: Entering directory '/builddir/build/BUILD/borgbackup-0.29.0/docs'
sphinx-build-3 -b man -d _build/doctrees   . _build/man
Making output directory...
Running Sphinx v1.2.3

Exception occurred:
  File "conf.py", line 99, in <module>
    import sphinx_rtd_theme
ImportError: No module named 'sphinx_rtd_theme'
The full traceback has been saved in /tmp/sphinx-err-k0mqe8kx.log, if you want to report the issue to the developers.
Please also report this if it was a user error, so that a better error message can be provided next time.
A bug report can be filed in the tracker at <https://bitbucket.org/birkenfeld/sphinx/issues/>. Thanks!
Makefile:112: recipe for target 'man' failed
make: Leaving directory '/builddir/build/BUILD/borgbackup-0.29.0/docs'
make: *** [man] Error 1
error: Bad exit status from /var/tmp/rpm-tmp.CsGvEV (%build)
    Bad exit status from /var/tmp/rpm-tmp.CsGvEV (%build)

Thanks a lot for the packaging, I was just starting the same effort.
Comment 14 Tadej Janež 2016-01-01 17:26:33 EST
Hi Benjamin,

thanks for packaging up BorgBackup!

I have two short comments/suggestions:

1. Change the URL to https://borgbackup.readthedocs.org/ as it is deemed as the project's main web site (https://borgbackup.readthedocs.org/en/stable/#links).

2. For making it available in EPEL 7, you can use python34, which is the official Python 3 package for EPEL 7 (https://apps.fedoraproject.org/packages/python34).
Comment 15 Peter Meier 2016-01-02 04:53:11 EST
There is also a packaging draft for python 3 on EPEL 7: https://fedoraproject.org/wiki/PackagingDrafts:Python3EPEL

Would be awesome to have it there...
Comment 16 Benjamin Pereto 2016-01-02 10:03:21 EST
Hi,

thanks for you suggestions.

Spec URL: https://data.sandchaschte.ch/pub/fedora/borgbackup.spec
SRPM URL: https://data.sandchaschte.ch/pub/fedora/borgbackup-0.29.0-3.fc23.src.rpm

Rawhide: http://koji.fedoraproject.org/koji/taskinfo?taskID=12381070
F23:     http://koji.fedoraproject.org/koji/taskinfo?taskID=12381074

I changed the url and added the buildrequires sphinx_rtd_theme.
Thank you Peter, now its working for f23.

I also like to see it in EPEL 7, but it looks like not everything is in place for python34 to build borgbackup against epel:

https://bugzilla.redhat.com/show_bug.cgi?id=1249039#c1
https://fedorahosted.org/fpc/ticket/567

Borgbackup has alot of dependencies and needs some work to bring it to epel, after the Packaging Guidlines passed the FPC.

Would be awesome.
Comment 17 Upstream Release Monitoring 2016-01-02 10:08:34 EST
bpereto's scratch build of borgbackup-0.29.0-3.fc23.src.rpm for f23 completed http://koji.fedoraproject.org/koji/taskinfo?taskID=12381074
Comment 18 Felix Schwarz 2016-04-04 11:47:15 EDT
Benjamin: What's your plan with this package? Seems like the review is approved but you still need a sponsor, right? Are you still interested in maintaining the package?

Also you updated the package after it was already approved. Even though I think the changes are ok, I guess we should see a new formal review for it... While we're at it could you upgrade the spec to 1.0.0 ?

I rebuilt your borgbackup on EL7 with a few changes (upgraded to 1.0.0 though) and it seems to work fine (didn't build the docs, no coverage tests). So that's a thing you might want to look into.

Also I found two missing requires (at least on EL7): It needs python34-setuptools and python34-llfuse (the latter is only a BuildRequires at the moment).
Comment 19 Benjamin Pereto 2016-04-04 14:39:13 EDT
I'm still interested in maintaining the package, but as you said, I need a sponsor.
There are other packages which I can prepare an keep this as reference.
So if someone interested of the packagers group, he can take this packge.

The mentioned FPC above is still not through, but progress were made. the python34-setuptools and python3-rpm-macros was added to EPEL7.

Results of my try's building against epel7 showed missing dependencies:
Error: No Package found for python34-Cython
Error: No Package found for python34-pytest-cov
Error: No Package found for python34-sphinx
Error: No Package found for python34-sphinx_rtd_theme

If you remove docs + test and its requirements, there is only python34-Cython, which is needed for the performance critical part of borgbackup.
We/I will look what is needed to bring it to epel.

Sadly, the updated python3 macros are not added to buildroot in F23, and the build is failing with a unified spec file.

https://copr.fedorainfracloud.org/coprs/bpereto/borgbackup/build/173284/
Comment 20 Orion Poplawski 2016-04-04 15:20:00 EDT
(In reply to Benjamin Pereto from comment #19)
> I'm still interested in maintaining the package, but as you said, I need a
> sponsor.

I've sponsored you.

> The mentioned FPC above is still not through, but progress were made. the
> python34-setuptools and python3-rpm-macros was added to EPEL7.
> 
> Results of my try's building against epel7 showed missing dependencies:
> Error: No Package found for python34-Cython

In testing: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2016-a140c12508

> Sadly, the updated python3 macros are not added to buildroot in F23, and the
> build is failing with a unified spec file.
> 
> https://copr.fedorainfracloud.org/coprs/bpereto/borgbackup/build/173284/

This is coming: https://bodhi.fedoraproject.org/updates/FEDORA-2016-dcddcc1f06

In fact, I think I'll add buildroot overrides soon so we can test building in koji.
Comment 21 Felix Schwarz 2016-04-04 15:23:18 EDT
Of course you're right about Cython - I forgot that I built that locally (which was pretty painless).

The macro should be fixable with this custom defintion:
  %{!?python3_pkgversion:%global python3_pkgversion 3}

However I think focussing on Fedora first is probably the right thing. I suggest you update the package to 1.0, get a new review (which should be simple). In parallel you should try to get sponsored. I assume you know https://fedoraproject.org/wiki/How_to_get_sponsored_into_the_packager_group already? If you like I can introduce you to a few sponsors I worked with in the past.
Comment 22 Benjamin Pereto 2016-04-04 15:44:02 EDT
Thank you for you support.

@Orion, thank you for the sponsoring.
I missed to look into bodhi for updates.

@felix, I will try the custom definition, thanks for your participation.
Comment 23 Gwyn Ciesla 2016-04-05 08:54:42 EDT
Package request has been approved: https://admin.fedoraproject.org/pkgdb/package/rpms/borgbackup
Comment 24 Fedora Update System 2016-04-05 15:43:49 EDT
borgbackup-1.0.0-1.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-4ffaff98a7
Comment 25 Fedora Update System 2016-04-05 15:46:14 EDT
borgbackup-1.0.0-1.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2016-bd1515f44d
Comment 26 Fedora Update System 2016-04-06 13:53:31 EDT
borgbackup-1.0.0-1.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-4ffaff98a7
Comment 27 Fedora Update System 2016-04-06 14:21:07 EDT
borgbackup-1.0.0-1.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-bd1515f44d
Comment 28 Fedora Update System 2016-04-07 16:20:23 EDT
borgbackup-1.0.0-2.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-e9bd5cf00b
Comment 29 Fedora Update System 2016-04-07 16:21:41 EDT
borgbackup-1.0.0-2.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2016-05a0787f3c
Comment 30 Fedora Update System 2016-04-08 12:52:32 EDT
borgbackup-1.0.0-2.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-e9bd5cf00b
Comment 31 Fedora Update System 2016-04-08 16:50:50 EDT
borgbackup-1.0.0-2.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-05a0787f3c
Comment 32 Fedora Update System 2016-04-12 05:38:32 EDT
borgbackup-1.0.0-2.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.
Comment 33 Fedora Update System 2016-04-17 08:28:07 EDT
borgbackup-1.0.2-1.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2016-016b5b1678
Comment 34 Fedora Update System 2016-04-17 23:20:34 EDT
borgbackup-1.0.0-2.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.
Comment 35 Fedora Update System 2016-04-18 00:23:23 EDT
borgbackup-1.0.2-1.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2016-016b5b1678
Comment 36 Matthias Hensler 2016-04-19 07:42:32 EDT
borgbackup-1.0.2-1.el7.x86_64 is missing a dependency for python34-setuptools.

[root@cams ~]# yum install --enablerepo=epel-testing borgbackup
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.halifax.rwth-aachen.de
 * epel: mirror.de.leaseweb.net
 * epel-testing: mirror.imt-systems.com
 * extras: ftp.halifax.rwth-aachen.de
 * updates: ftp.halifax.rwth-aachen.de
Resolving Dependencies
--> Running transaction check
---> Package borgbackup.x86_64 0:1.0.2-1.el7 will be installed
--> Processing Dependency: python(abi) = 3.4 for package: borgbackup-1.0.2-1.el7.x86_64
--> Processing Dependency: python34-msgpack >= 0.4.6 for package: borgbackup-1.0.2-1.el7.x86_64
--> Processing Dependency: python34-llfuse for package: borgbackup-1.0.2-1.el7.x86_64
--> Processing Dependency: /usr/bin/python3.4 for package: borgbackup-1.0.2-1.el7.x86_64
--> Processing Dependency: libpython3.4m.so.1.0()(64bit) for package: borgbackup-1.0.2-1.el7.x86_64
--> Processing Dependency: liblz4.so.1()(64bit) for package: borgbackup-1.0.2-1.el7.x86_64
--> Running transaction check
---> Package lz4.x86_64 0:r131-1.el7 will be installed
---> Package python34.x86_64 0:3.4.3-4.el7 will be installed
---> Package python34-libs.x86_64 0:3.4.3-4.el7 will be installed
---> Package python34-llfuse.x86_64 0:1.0-1.el7 will be installed
--> Processing Dependency: libfuse.so.2(FUSE_2.9)(64bit) for package: python34-llfuse-1.0-1.el7.x86_64
--> Processing Dependency: libfuse.so.2(FUSE_2.8)(64bit) for package: python34-llfuse-1.0-1.el7.x86_64
--> Processing Dependency: libfuse.so.2(FUSE_2.6)(64bit) for package: python34-llfuse-1.0-1.el7.x86_64
--> Processing Dependency: libfuse.so.2(FUSE_2.5)(64bit) for package: python34-llfuse-1.0-1.el7.x86_64
--> Processing Dependency: libfuse.so.2(FUSE_2.4)(64bit) for package: python34-llfuse-1.0-1.el7.x86_64
--> Processing Dependency: libfuse.so.2()(64bit) for package: python34-llfuse-1.0-1.el7.x86_64
---> Package python34-msgpack.x86_64 0:0.4.7-3.el7 will be installed
--> Running transaction check
---> Package fuse-libs.x86_64 0:2.9.2-6.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=================================================================================================================================================================================================================================================================================
 Package                                                                Arch                                                         Version                                                            Repository                                                          Size
=================================================================================================================================================================================================================================================================================
Installing:
 borgbackup                                                             x86_64                                                       1.0.2-1.el7                                                        epel-testing                                                       393 k
Installing for dependencies:
 fuse-libs                                                              x86_64                                                       2.9.2-6.el7                                                        base                                                                93 k
 lz4                                                                    x86_64                                                       r131-1.el7                                                         epel                                                                70 k
 python34                                                               x86_64                                                       3.4.3-4.el7                                                        epel                                                                49 k
 python34-libs                                                          x86_64                                                       3.4.3-4.el7                                                        epel                                                               6.7 M
 python34-llfuse                                                        x86_64                                                       1.0-1.el7                                                          epel                                                               364 k
 python34-msgpack                                                       x86_64                                                       0.4.7-3.el7                                                        epel                                                                81 k

Transaction Summary
=================================================================================================================================================================================================================================================================================
Install  1 Package (+6 Dependent packages)

Total download size: 7.7 M
Installed size: 31 M
Is this ok [y/d/N]: y
Downloading packages:
(1/7): lz4-r131-1.el7.x86_64.rpm                                                                                                                                                                                                                          |  70 kB  00:00:00     
(2/7): fuse-libs-2.9.2-6.el7.x86_64.rpm                                                                                                                                                                                                                   |  93 kB  00:00:00     
(3/7): python34-3.4.3-4.el7.x86_64.rpm                                                                                                                                                                                                                    |  49 kB  00:00:00     
(4/7): borgbackup-1.0.2-1.el7.x86_64.rpm                                                                                                                                                                                                                  | 393 kB  00:00:00     
(5/7): python34-libs-3.4.3-4.el7.x86_64.rpm                                                                                                                                                                                                               | 6.7 MB  00:00:00     
(6/7): python34-llfuse-1.0-1.el7.x86_64.rpm                                                                                                                                                                                                               | 364 kB  00:00:00     
(7/7): python34-msgpack-0.4.7-3.el7.x86_64.rpm                                                                                                                                                                                                            |  81 kB  00:00:00     
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                                                                                                            9.0 MB/s | 7.7 MB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Warning: RPMDB altered outside of yum.
  Installing : python34-libs-3.4.3-4.el7.x86_64                                                                                                                                                                                                                              1/7 
  Installing : python34-3.4.3-4.el7.x86_64                                                                                                                                                                                                                                   2/7 
  Installing : python34-msgpack-0.4.7-3.el7.x86_64                                                                                                                                                                                                                           3/7 
  Installing : lz4-r131-1.el7.x86_64                                                                                                                                                                                                                                         4/7 
  Installing : fuse-libs-2.9.2-6.el7.x86_64                                                                                                                                                                                                                                  5/7 
  Installing : python34-llfuse-1.0-1.el7.x86_64                                                                                                                                                                                                                              6/7 
  Installing : borgbackup-1.0.2-1.el7.x86_64                                                                                                                                                                                                                                 7/7 
  Verifying  : python34-llfuse-1.0-1.el7.x86_64                                                                                                                                                                                                                              1/7 
  Verifying  : fuse-libs-2.9.2-6.el7.x86_64                                                                                                                                                                                                                                  2/7 
  Verifying  : python34-msgpack-0.4.7-3.el7.x86_64                                                                                                                                                                                                                           3/7 
  Verifying  : borgbackup-1.0.2-1.el7.x86_64                                                                                                                                                                                                                                 4/7 
  Verifying  : python34-libs-3.4.3-4.el7.x86_64                                                                                                                                                                                                                              5/7 
  Verifying  : python34-3.4.3-4.el7.x86_64                                                                                                                                                                                                                                   6/7 
  Verifying  : lz4-r131-1.el7.x86_64                                                                                                                                                                                                                                         7/7 

Installed:
  borgbackup.x86_64 0:1.0.2-1.el7                                                                                                                                                                                                                                                

Dependency Installed:
  fuse-libs.x86_64 0:2.9.2-6.el7              lz4.x86_64 0:r131-1.el7              python34.x86_64 0:3.4.3-4.el7              python34-libs.x86_64 0:3.4.3-4.el7              python34-llfuse.x86_64 0:1.0-1.el7              python34-msgpack.x86_64 0:0.4.7-3.el7             

Complete!
[root@cams ~]# borg -V
Traceback (most recent call last):
  File "/usr/bin/borg", line 5, in <module>
    from pkg_resources import load_entry_point
ImportError: No module named 'pkg_resources'
[root@cams ~]# yum install python34-setuptools
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.halifax.rwth-aachen.de
 * epel: mirror.de.leaseweb.net
 * extras: ftp.halifax.rwth-aachen.de
 * updates: ftp.halifax.rwth-aachen.de
Resolving Dependencies
--> Running transaction check
---> Package python34-setuptools.noarch 0:19.2-3.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=================================================================================================================================================================================================================================================================================
 Package                                                                    Arch                                                          Version                                                              Repository                                                   Size
=================================================================================================================================================================================================================================================================================
Installing:
 python34-setuptools                                                        noarch                                                        19.2-3.el7                                                           epel                                                        373 k

Transaction Summary
=================================================================================================================================================================================================================================================================================
Install  1 Package

Total download size: 373 k
Installed size: 1.3 M
Is this ok [y/d/N]: y
Downloading packages:
python34-setuptools-19.2-3.el7.noarch.rpm                                                                                                                                                                                                                 | 373 kB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : python34-setuptools-19.2-3.el7.noarch                                                                                                                                                                                                                         1/1 
  Verifying  : python34-setuptools-19.2-3.el7.noarch                                                                                                                                                                                                                         1/1 

Installed:
  python34-setuptools.noarch 0:19.2-3.el7                                                                                                                                                                                                                                        

Complete!
[root@cams ~]# borg -V
borg 1.0.2
[root@cams ~]#
Comment 37 Fedora Update System 2016-05-23 06:33:50 EDT
borgbackup-1.0.3-1.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2016-1b4d00dabe
Comment 38 Fedora Update System 2016-05-24 02:19:20 EDT
borgbackup-1.0.3-1.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2016-1b4d00dabe
Comment 39 Fedora Update System 2016-06-08 01:20:15 EDT
borgbackup-1.0.3-1.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.