Bug 1812845

Summary: python3-staplelib not installable on fedora 32+
Product: [Fedora] Fedora Reporter: Fabio Valentini <decathorpe>
Component: pdf-staplerAssignee: Ranjan Maitra <itsme_410>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: itsme_410, lbalhar
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: pdf-stapler-1.0.0-0.4.20191215git8753251.fc32 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-04-02 00:31:40 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Fabio Valentini 2020-03-12 10:39:09 UTC
$ mock -r fedora-rawhide-x86_64 install python3-staplelib

(...)

Error: 
 Problem: conflicting requests
  - nothing provides (python3.8dist(more-itertools) >= 2.2 with python3.8dist(more-itertools) < 6) needed by python3-staplelib-1.0.0-0.3.20191215git8753251.fc32.noarch

python-more-itertools was updated to 7.2.0 over 7 months ago.

Comment 1 Lumír Balhar 2020-03-19 08:16:38 UTC
I did a test and it seems that pdf-stapler is compatible also with newer more-itertools. I think that we can remove the limit from RPM.

See: https://github.com/hellerbarde/stapler/issues/71

Comment 2 Ranjan Maitra 2020-03-20 18:26:29 UTC
(In reply to Lumír Balhar from comment #1)
> I did a test and it seems that pdf-stapler is compatible also with newer
> more-itertools. I think that we can remove the limit from RPM.
> 
> See: https://github.com/hellerbarde/stapler/issues/71

I think that this limit has to be removed upstream. I have nothing in the spec file that imposes this limit. Perhaps a patch is needed if this is not fixed upstream.

Comment 3 Lumír Balhar 2020-03-21 10:04:20 UTC
(In reply to Ranjan Maitra from comment #2)
> I think that this limit has to be removed upstream. I have nothing in the
> spec file that imposes this limit. Perhaps a patch is needed if this is not
> fixed upstream.

Yes, you are right. But, because more-itertools is mentioned as a dependency in setup.py, the RPM dependency is generated automatically also with both version limits.

See these lines from the build log:

Provides: python-staplelib = 1.0.0-0.3.20191215git8753251.fc32 python3-staplelib = 1.0.0-0.3.20191215git8753251.fc32 python3.8dist(stapler) = 1.0.0rc1 python3dist(stapler) = 1.0.0rc1
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PartialHardlinkSets) <= 4.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires: (python3.8dist(more-itertools) >= 2.2 with python3.8dist(more-itertools) < 6) python(abi) = 3.8 python3.8dist(pypdf2) >= 1.26 python3.8dist(setuptools)

We can wait until it's fixed upstream but in the meantime, a simple sed is enough to remove the version limits and fix this problem.

I've filled a PR for this: https://src.fedoraproject.org/rpms/pdf-stapler/pull-request/2

Scratch build: https://koji.fedoraproject.org/koji/taskinfo?taskID=42663280

And it's installable on rawhide.

Comment 4 Ranjan Maitra 2020-03-22 22:25:54 UTC
(In reply to Lumír Balhar from comment #3)
> (In reply to Ranjan Maitra from comment #2)
> > I think that this limit has to be removed upstream. I have nothing in the
> > spec file that imposes this limit. Perhaps a patch is needed if this is not
> > fixed upstream.
> 
> Yes, you are right. But, because more-itertools is mentioned as a dependency
> in setup.py, the RPM dependency is generated automatically also with both
> version limits.
> 
> See these lines from the build log:
> 
> Provides: python-staplelib = 1.0.0-0.3.20191215git8753251.fc32
> python3-staplelib = 1.0.0-0.3.20191215git8753251.fc32 python3.8dist(stapler)
> = 1.0.0rc1 python3dist(stapler) = 1.0.0rc1
> Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests)
> <= 4.6.0-1 rpmlib(PartialHardlinkSets) <= 4.0.4-1
> rpmlib(PayloadFilesHavePrefix) <= 4.0-1
> Requires: (python3.8dist(more-itertools) >= 2.2 with
> python3.8dist(more-itertools) < 6) python(abi) = 3.8 python3.8dist(pypdf2)
> >= 1.26 python3.8dist(setuptools)
> 
> We can wait until it's fixed upstream but in the meantime, a simple sed is
> enough to remove the version limits and fix this problem.
> 
> I've filled a PR for this:
> https://src.fedoraproject.org/rpms/pdf-stapler/pull-request/2
> 
> Scratch build: https://koji.fedoraproject.org/koji/taskinfo?taskID=42663280
> 
> And it's installable on rawhide.

Do you mind sharing the spec file for the rpm file? I guess that the sed is in there. It will be easier for me then. THanks!

Comment 5 Lumír Balhar 2020-03-23 02:18:48 UTC
I am sorry but I don't understand. I've created the PR so the only thing you need to do is to merge it and do a build.

The PR is here: https://src.fedoraproject.org/rpms/pdf-stapler/pull-request/2#request_diff

Comment 6 Fedora Update System 2020-03-25 18:08:14 UTC
FEDORA-2020-ed14cff0d5 has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2020-ed14cff0d5

Comment 7 Fedora Update System 2020-03-25 21:07:34 UTC
FEDORA-2020-ed14cff0d5 has been pushed to the Fedora 32 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-ed14cff0d5`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-ed14cff0d5

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 8 Fedora Update System 2020-04-02 00:31:40 UTC
FEDORA-2020-ed14cff0d5 has been pushed to the Fedora 32 stable repository.
If problem still persists, please make note of it in this bug report.