Bug 1413527 - trash-cli: Switch to Python 3
Summary: trash-cli: Switch to Python 3
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: trash-cli
Version: 26
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Ankur Sinha (FranciscoD)
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: PYTHON3 PY3PATCH-AVAILABLE
TreeView+ depends on / blocked
 
Reported: 2017-01-16 09:40 UTC by Iryna Shcherbina
Modified: 2017-06-09 18:52 UTC (History)
2 users (show)

Fixed In Version: trash-cli-0.17.1.14-1.fc26
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-06-09 18:52:46 UTC
Type: Bug


Attachments (Terms of Use)
Latest Python3 upstream version (5.16 KB, patch)
2017-03-24 12:52 UTC, Jan Beran
no flags Details | Diff
Updated Python3 spec file (4.72 KB, patch)
2017-05-05 15:00 UTC, Jan Beran
no flags Details | Diff

Description Iryna Shcherbina 2017-01-16 09:40:48 UTC
Upstream, this software supports Python 3. Please provide a Python 3
package for Fedora.


According to the Python packaging guidelines [0], software must be
packaged for Python 3 if upstream supports it.
The guidelines give detailed information on how to do this, and even
provide an example spec file [1].

Since users aren't expected to import this tool from Python code,
you can just switch to /usr/bin/python3. Alternatively, if you want or
need to keep a Python 2 version, the current best practice is to provide
subpackages -- this is called "Common SRPM" in the guidelines.

It's OK to do this in Rawhide only, however, it would be greatly
appreciated if you could push it to Fedora 25 as well.


If you need more instructions, a guide for porting Python-based RPMs is
available at [2].
If anything is unclear, or if you need any kind of assistance with the
porting, you can ask on IRC (#fedora-python on Freenode), or reply here.
We'll be happy to help!


[0] https://fedoraproject.org/wiki/Packaging:Python
[1] https://fedoraproject.org/wiki/Packaging:Python#Example_common_spec_file
[2] http://python-rpm-porting.readthedocs.io/

Comment 1 Fedora End Of Life 2017-02-28 10:59:42 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 26 development cycle.
Changing version to '26'.

Comment 2 Jan Beran 2017-03-24 12:52:42 UTC
Created attachment 1266050 [details]
Latest Python3 upstream version

May I ask for a review of the updated spec file?

Comment 3 Jan Beran 2017-04-25 11:25:49 UTC
Hi Ankur,

may I kindly ask for your review of the attached spec file update?

Thank you.

Jan

Comment 4 Iryna Shcherbina 2017-04-25 11:38:27 UTC
Hello Jan,

I have looked through the patch. It looks good, but I have a few small comments:

* when building in mock, the build fails with 

> /var/tmp/rpm-tmp.tmnBws: line 31: nosetests: command not found

This can be fixed if you use `nosetests-%{python3_version}` in check section. However there are no tests to be run, so we should either get sources from GitHub or skip test for now and ask upstream to add tests to PyPI tarball.

* as it is not a Python module but a CLI tool, I think we can just switch it to Python 3 without changing the name of the package, or at least provide the old `trash-cli` name.

* I believe the build time dependency on dos2unix is no longer needed, the usage was removed long ago [0].

[0] https://src.fedoraproject.org/cgit/rpms/trash-cli.git/commit/trash-cli.spec?id=c3b966335acd556c94d96eca46a464d506cb45f4

Comment 5 Ankur Sinha (FranciscoD) 2017-04-27 21:14:50 UTC
Sorry - been busy. I'll only be able to get to this early next week. Monday hopefully. It's on my list of things to do. 

Again, sorry for the delay.

Cheers!

Comment 6 Ankur Sinha (FranciscoD) 2017-05-01 11:10:47 UTC
(In reply to Iryna Shcherbina from comment #4)
Hiya,

Just looked at the patch. Iryna's pointed out the issues already, though:


> 
> I have looked through the patch. It looks good, but I have a few small
> comments:
> 
> * when building in mock, the build fails with 
> 
> > /var/tmp/rpm-tmp.tmnBws: line 31: nosetests: command not found
> 
> This can be fixed if you use `nosetests-%{python3_version}` in check
> section. However there are no tests to be run, so we should either get
> sources from GitHub or skip test for now and ask upstream to add tests to
> PyPI tarball.

+1 to get rid of it. I'll file a ticket upstream asking for the tests to be included in the tar. I expect it'll be done with the new release, but I see no reason to delay the update here on that account.

> 
> * as it is not a Python module but a CLI tool, I think we can just switch it
> to Python 3 without changing the name of the package, or at least provide
> the old `trash-cli` name.

I think providing trash-cli should be sufficient.

> 
> * I believe the build time dependency on dos2unix is no longer needed, the
> usage was removed long ago [0].
> 
> [0]
> https://src.fedoraproject.org/cgit/rpms/trash-cli.git/commit/trash-cli.
> spec?id=c3b966335acd556c94d96eca46a464d506cb45f4

+1


Jan, if you'd like to co-maintain the package and apply this update yourself, please apply for permissions on pkgdb - otherwise I can apply the update on your behalf if you'd like.

Cheers!

Comment 7 Jan Beran 2017-05-02 07:19:31 UTC
Hi,

thanks to Iryna and Ankur for the review.

Ankur, may I ask you to update the spec?

Comment 8 Jan Beran 2017-05-05 15:00:38 UTC
Created attachment 1276619 [details]
Updated Python3 spec file

I have updated the spec file according to the review recommendation:
- just `trash-cli` name is kept
- dos2unix is omitted
- testing is omitted (could be added again when the test is available at PyPI)

Comment 9 Fedora Update System 2017-05-08 12:20:02 UTC
trash-cli-0.17.1.14-1.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-7af0df2d2d

Comment 10 Ankur Sinha (FranciscoD) 2017-05-08 12:20:52 UTC
Thanks Jan and Iryna - built and update pushed for F26.

Comment 11 Fedora Update System 2017-05-09 02:38:40 UTC
trash-cli-0.17.1.14-1.fc26 has been pushed to the Fedora 26 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-2017-7af0df2d2d

Comment 12 Fedora Update System 2017-06-09 18:52:46 UTC
trash-cli-0.17.1.14-1.fc26 has been pushed to the Fedora 26 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.