Bug 1507815 - Handle twine as an application, not a library
Summary: Handle twine as an application, not a library
Alias: None
Product: Fedora
Classification: Fedora
Component: python-twine
Version: 26
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: Jeremy Cline
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2017-10-31 08:49 UTC by Nick Coghlan
Modified: 2017-11-13 07:49 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2017-11-10 18:28:30 UTC
Type: Bug

Attachments (Terms of Use)

Description Nick Coghlan 2017-10-31 08:49:03 UTC
Running "sudo dnf install python3-twine" doesn't currently get you a "twine" command - it only gets you versioned twine-3 and twine-3.6 commands, with the unversioned file living in python2-twine.

This isn't right, as twine isn't intended for use as a Python library, it's a PyPI CLI application.

This means there should only be a single "python-twine" RPM that installs a "twine" command running in the default system Python version.

Comment 1 Jeremy Cline 2017-10-31 14:03:06 UTC
Yeeeeah, this was one of my early packages and it's not very good. It seems to me it should probably just be called "twine", in addition to all the things you noted. I don't see anything specific in the guidelines, though. Thoughts?

Comment 2 Nick Coghlan 2017-11-10 11:52:22 UTC
Yep, that would make sense - I had to make exactly the same change for fedmod [1] after realising the auto-generated spec from pyp2rpm was designed for Python libraries and frameworks, not command line tools that happened to be implemented in Python.

However, it's a more annoying change to make, and the current SRPM name isn't actually *wrong* (since the python- prefix correctly implies that PyPI is twine's main upstream publication channel)

So the changes definitely needed are:

* RPM name -> twine (obsoleting both python2-twine and python3-twine)
* no versioned binaries
* builds for the default system Python only

Whether or not to chang the SRPM name as well would be up to you - I'll note that one concrete advantage of the current name is that it makes it easier for automated tools to correlate the system package with the upstream project.

[1] https://pagure.io/modularity/fedmod/issue/27

Comment 3 Jeremy Cline 2017-11-10 18:28:30 UTC
I opted to leave the SRPM name the same, but the RPM is now just "twine".

Fixed in python-twine-1.9.1-3.fc28

Comment 4 Nick Coghlan 2017-11-13 07:49:53 UTC
Thank you!

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