Bug 1738816 - rss2email depends on Python 2
Summary: rss2email depends on Python 2
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: rss2email
Version: 31
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Orphan Owner
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: F31_PY2REMOVAL
TreeView+ depends on / blocked
 
Reported: 2019-08-08 08:37 UTC by Lumír Balhar
Modified: 2019-09-22 11:30 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-09-22 11:30:13 UTC
Type: Bug


Attachments (Terms of Use)

Description Lumír Balhar 2019-08-08 08:37:53 UTC
Python 2.7 will reach end-of-life in January 2020, over 9 years after it was released. This falls within the Fedora 31 lifetime.
Packages that depend on Python 2 are being switched to Python 3 or removed from Fedora: https://fedoraproject.org/wiki/Changes/F31_Mass_Python_2_Package_Removal#Information_on_Remaining_Packages
Python 2 will be retired in Fedora 32: https://fedoraproject.org/wiki/Changes/RetirePython2

To help planning, we'd like to know the plans for rss2email's future. Specifically:


- What is the reason for the Python2 dependency? (Is it software written in Python, or does it just provide Python bindings, or use Python in the build system or test runner?) 

- What are the upstream/community plans/timelines regarding Python 3?

- What is the guidance for porting to Python 3? (Assuming that there is someone who generally knows how to port to Python 3, but doesn't know anything about the particular package, what are the next steps to take?)


This bug is filed semi-automatically, and might not have all the context specific to rss2email.
If you need anything from us, or something is unclear, please mention it here.

Thank you.

Comment 1 David Kaufmann 2019-08-08 17:18:53 UTC
Last update of the source code for rss2email is from 2011, but there have been multiple forks.
The best version to use would probably be https://github.com/wking/rss2email , which is also the source for the pypi package.

Best way forward is probably switching to the wking/rss2email fork, which already runs in python3.

Reasons for having the Python2 dependency:
- The current version is written in python2, and also depends on a python2-package (python2-feedparser, python2-html2text).
  Both of those packages also could be replaced by the python3-version, if the source is switched to the fork.
- I could not find a timeline for migration, as the package seems to be orphaned.

I'd like to keep the package, and I'm also willing to maintain it, but as I am not a package maintainer yet I'd probably need a review and a mentor first.
Unfortunately the fork does change both the configuration file path and the configuration file syntax. (but it will convert old configs to the new format).

Also as it's a pypi package copr seems to prefer the name as "python-rss2email":
https://copr.fedorainfracloud.org/coprs/astra/rss2email/build/992956/
(currently does not build on centos-7 anymore)

Not sure what would the appropriate action here:
- retiring the rss2email package and creating a python-rss2email package or
- keeping the rss2email package and just switching the source to the fork

Any help is appreciated.

All the best,
David

Comment 2 Matěj Cepl 2019-08-09 19:49:41 UTC
(In reply to David Kaufmann from comment #1)
> I'd like to keep the package, and I'm also willing to maintain it, but as
> I am not a package maintainer yet I'd probably need a review and a mentor
> first.

If you propose a pull review on https://src.fedoraproject.org/rpms/rss2email
than I would be more than happy to review and if accepted, merge it.

> Unfortunately the fork does change both the configuration file path and the
> configuration file syntax. (but it will convert old configs to the new
> format).

Yes, that’t exactly the reason, why we have never did it. However, it seems to
me that when there is a choice between having badly migrated package and no
package at all, there is not much choice for us. If you could at least provide
some information on migration of the configuration manually.

> Also as it's a pypi package copr seems to prefer the name as
> "python-rss2email":
> https://copr.fedorainfracloud.org/coprs/astra/rss2email/build/992956/
> (currently does not build on centos-7 anymore)

Yes, renaming of the package should be done as well, probably.

> Not sure what would the appropriate action here:

https://fedoraproject.org/wiki/Package_Renaming_Process and yes, I will gladly
do the review of the package.

> - retiring the rss2email package and creating a python-rss2email package or
> - keeping the rss2email package and just switching the source to the fork

No, this old package should go (https://pythonclock.org/), there is no value to
keep it around.

Comment 3 David Kaufmann 2019-08-09 21:10:15 UTC
(In reply to Matěj Cepl from comment #2)
> If you propose a pull review on https://src.fedoraproject.org/rpms/rss2email
> than I would be more than happy to review and if accepted, merge it.

There is already a pull request from fszymanski there, which does the switch to 3.9
(that would be keeping the old name with the new source)

>> Unfortunately the fork does change both the configuration file path and the
>> configuration file syntax. (but it will convert old configs to the new
>> format).
> If you could at least provide some information on migration of the configuration manually.

Well, I've almost remembered it correctly - it needs the old version to export stuff
To quote W. Trevor King from https://bugzilla.redhat.com/show_bug.cgi?id=911509#c5

  $ r2e run
  $ r2e opmlexport feeds.xml
  $ …upgrade…
  $ r2e import feeds.xml
  $ r2e run --no-send

>> Also as it's a pypi package copr seems to prefer the name as "python-rss2email"
> Yes, renaming of the package should be done as well, probably.

If you prefer renaming I can create the new package python-rss2email for fedora-30, fedora-rawhide and rhelbeta-8 (and epel-7 if i can make it work there)

I'm okay with either option, although I prefer the new package name option a bit, as it's a different upstream source anyway.

All the best,
David

Comment 4 Matěj Cepl 2019-08-09 21:58:10 UTC
I have rebased fszymanski’s pull request on the top of the current repo (it is at https://src.fedoraproject.org/fork/mcepl/rpms/rss2email), but I am certainly not willing to be the maintainer of this package again. I have left Red Hat, and I don’t Fedora/RHEL distro any more.

If you want to go ahead with the process, take the commit from my repo, review and follow the steps at https://fedoraproject.org/wiki/Join_the_package_collection_maintainers to become to be a maintainer. Also, start https://fedoraproject.org/wiki/Package_Review_Process to start renewal of the rss2email package. Let me know, when you have the review ready.

Comment 5 Ben Cotton 2019-08-13 17:04:50 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 31 development cycle.
Changing version to '31'.

Comment 6 Ben Cotton 2019-08-13 17:13:47 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 31 development cycle.
Changing version to 31.

Comment 7 Miro Hrončok 2019-09-22 11:30:13 UTC
Automation has figured out the package is retired in Fedora 31.

If you like it to be unretired, please open a ticket at https://pagure.io/releng/new_issue?template=package_unretirement


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