Bug 1738921 - archmage depends on Python 2
Summary: archmage depends on Python 2
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: archmage
Version: 31
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Luis Bazan
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1589958 1738931
Blocks: F31_PY2REMOVAL 1739542
TreeView+ depends on / blocked
 
Reported: 2019-08-08 11:46 UTC by Lumír Balhar
Modified: 2020-05-03 04:54 UTC (History)
3 users (show)

Fixed In Version: archmage-0.4.2.1-1.fc31
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-05-03 04:54:06 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Lumír Balhar 2019-08-08 11:46:15 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 archmage'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 archmage.
If you need anything from us, or something is unclear, please mention it here.

Thank you.

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

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

Comment 3 Lumír Balhar 2019-08-16 09:09:27 UTC
Please answer the above questions. If you don't, the package can be orphaned: https://fedoraproject.org/wiki/Changes/F31_Mass_Python_2_Package_Removal#Information_on_Remaining_Packages

If you need any information or help, or if you need some more time, please let us know.

Comment 4 Luis Bazan 2019-08-16 18:28:15 UTC
Hi Lumir / Ben --

I think going leave this package an orphan.

upstream has not been updated 5 years ago.

Cheers,

Comment 5 Timotheus Pokorra 2019-08-17 19:21:41 UTC
I think I could get it to work with a patch to support python3.
It depends if python-chm is updated. I have linked the bug.

Comment 6 Timotheus Pokorra 2019-08-17 20:25:23 UTC
I got python-chm to build with Python3.
But it seems, archmage depends on sgmllib, which does not exist in Python3 anymore:

cat ./archmod/CHMParser.py | grep sgmllib
shows:
import sgmllib, urllib.request, urllib.error, urllib.parse
class SitemapParser(sgmllib.SGMLParser):
        sgmllib.SGMLParser.__init__(self)
class PageLister(sgmllib.SGMLParser):
        sgmllib.SGMLParser.reset(self)
class ImageCatcher(sgmllib.SGMLParser):
        sgmllib.SGMLParser.reset(self)


So that would be quite a lot of coding, probably moving to BeautifulSoap4 which is already in Fedora.
see https://stackoverflow.com/questions/12167310/sgml-parser-for-python-3

Comment 7 Timotheus Pokorra 2019-08-17 20:32:05 UTC
BeautifulSoup that is...

Comment 8 Timotheus Pokorra 2019-08-17 20:56:42 UTC
we could use https://pypi.org/project/sgmllib3k/ instead. we would need to package that for Fedora.

Comment 9 Lumír Balhar 2019-08-26 13:55:35 UTC
What is the final plan? Can I help you somehow?

Comment 10 Lumír Balhar 2019-08-27 06:30:45 UTC
Also, please switch from python-beautifulsoap to python-beautifulsoap4 which has dual support for both Pythons.

Comment 11 Timotheus Pokorra 2019-08-31 18:30:59 UTC
I was waiting for the python-chm package to get fixed, but I did not get any reply or comment.
I also realised, that my reason for using archmage has vanished (it was keepass that was using archmage, but it is not using archmage anymore).

So I decided for myself, I will not work on archmage anymore.
So I agree with Luis to let this package die.

Comment 12 Lumír Balhar 2019-09-02 04:19:30 UTC
Given that this package is a leaf (nothing depends on it in rawhide), you can freely retire it.

Comment 13 Lumír Balhar 2019-09-09 07:51:19 UTC
Because of unresponsive maintainer the python-chm package will be orphaned in the next few days. It means that if you'd change your mind there is a possibility to maintain python-chm as well.

If you don't change your mind, please orphan this package rather sooner than later so it can be taken by somebody who is interested or retired automatically.

Comment 14 Lumír Balhar 2019-09-16 18:55:29 UTC
python-chm is retired. What is your plan?

Comment 15 Lumír Balhar 2019-09-24 05:27:11 UTC
Could you please retire this package?

Comment 16 Timotheus Pokorra 2019-09-25 05:15:23 UTC
I have already withdrawn myself from this package, so I am not a packager anymore.

It is up to Luis to retire this package, I guess.

Comment 17 Lumír Balhar 2019-10-02 06:50:33 UTC
Luis, could you please retire this package?

Comment 18 Lumír Balhar 2019-10-09 13:14:32 UTC
This package is a leaf and if the maintainer won't do it, it will be retired in the middle of November.

The current plan is to remove packages with dependency on Python 2 from Fedora 32 in the middle of November 2019. If you want to keep your package in Fedora after that date and you cannot port it to Python 3 yet, you need to request a FESCo exception for the package and all its Python 2 dependencies (even transitive) [1]. If you don't want to maintain it anymore, and nothing in Fedora uses it, you can retire it or just remove the Python 2 part from it (subpackage, module, bindings, etc.).

If you're considering filing the exception request, let us know. We can help (for example, we can help find all the dependencies).

[1] https://fedoraproject.org/wiki/Changes/RetirePython2#FESCo_exceptions

Comment 19 Luis Bazan 2019-12-27 19:38:19 UTC
Retire completed in rawhide.

Cheers,

Comment 20 Luis Bazan 2019-12-27 20:12:58 UTC
(In reply to Lumír Balhar from comment #18)
> This package is a leaf and if the maintainer won't do it, it will be retired
> in the middle of November.
> 
> The current plan is to remove packages with dependency on Python 2 from
> Fedora 32 in the middle of November 2019. If you want to keep your package
> in Fedora after that date and you cannot port it to Python 3 yet, you need
> to request a FESCo exception for the package and all its Python 2
> dependencies (even transitive) [1]. If you don't want to maintain it
> anymore, and nothing in Fedora uses it, you can retire it or just remove the
> Python 2 part from it (subpackage, module, bindings, etc.).
> 
> If you're considering filing the exception request, let us know. We can help
> (for example, we can help find all the dependencies).
> 
> [1] https://fedoraproject.org/wiki/Changes/RetirePython2#FESCo_exceptions

Upstream working on python3 compatibility
https://github.com/dottedmag/archmage/issues/10

Best,

Comment 21 Fedora Update System 2020-04-24 17:08:53 UTC
FEDORA-2020-76d5da99f6 has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2020-76d5da99f6

Comment 22 Luis Bazan 2020-04-24 17:11:24 UTC
Releng ticket

https://pagure.io/releng/issue/9416

Cheers,

Comment 23 Luis Bazan 2020-04-24 20:25:05 UTC
python-chm
https://pagure.io/releng/issue/9417

Comment 24 Fedora Update System 2020-04-25 04:19:12 UTC
FEDORA-2020-76d5da99f6 has been pushed to the Fedora 31 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-76d5da99f6`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-76d5da99f6

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

Comment 25 Fedora Update System 2020-05-03 04:54:06 UTC
FEDORA-2020-76d5da99f6 has been pushed to the Fedora 31 stable repository.
If problem still persists, 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.