Bug 1207737 - [RFE] There is no python3 version of websockify
Summary: [RFE] There is no python3 version of websockify
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: python-websockify
Version: 23
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Miro Hrončok
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Keywords: Reopened
Depends On:
Blocks: PYTHON3 PY3PATCH-PUSH
TreeView+ depends on / blocked
 
Reported: 2015-03-31 15:15 UTC by Alberto Ruiz
Modified: 2016-09-07 10:37 UTC (History)
8 users (show)

(edit)
Clone Of:
(edit)
Last Closed: 2016-09-07 10:37:43 UTC


Attachments (Terms of Use)
Spec file patch to provide Python 3 subpackage (4.21 KB, patch)
2016-08-25 19:38 UTC, Jan Beran
no flags Details | Diff
Updated spec file (4.21 KB, patch)
2016-08-26 20:39 UTC, Jan Beran
no flags Details | Diff
Spec file patch to provide Python 3 subpackage (4.24 KB, patch)
2016-08-29 10:52 UTC, Jan Beran
no flags Details | Diff

Description Alberto Ruiz 2015-03-31 15:15:07 UTC
There is no python3 version of websockify, trying to use websockify as a library from a Python3 module is not possible due to this variant of the package missing.

Comment 1 Fedora End Of Life 2015-11-04 12:47:23 UTC
This message is a reminder that Fedora 21 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 21. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as EOL if it remains open with a Fedora  'version'
of '21'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 21 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 2 Fedora End Of Life 2015-12-02 10:42:21 UTC
Fedora 21 changed to end-of-life (EOL) status on 2015-12-01. Fedora 21 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.

Comment 3 Alberto Ruiz 2015-12-02 13:30:19 UTC
This bug is still valid in Fedora 23

Comment 4 Tomas Orsava 2016-04-13 13:54: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].

The current best practice is to provide subpackages for the two Python
versions (called "Common SRPM" in the guidelines). Alternatively, if
nothing depends on your Python2 package, you can just switch to Python 3
entirely.

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


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

Comment 5 Dominika Krejčí 2016-05-06 15:44:49 UTC
Hello Pádraig,

Do you need any help adding Python 3 support to the RPM?

If you need more instructions, a [guide] for porting Python-based RPMs is available.

[guide] http://python-rpm-porting.readthedocs.org/en/latest/index.html

Comment 6 Jan Beran 2016-08-25 19:38 UTC
Created attachment 1194115 [details]
Spec file patch to provide Python 3 subpackage

The attached spec file contains
- Python 3 subpackage,
- doc subpackage,
- correction in changelog because the original spec file contains this error:

$ rpmlint python-websockify.spec
python-websockify.spec: E: specfile-error warning: bogus date in %changelog: Thu Sep 10 2013 Nikola Đipanov <ndipanov@redhat.com> - 0.5.1-1
0 packages and 1 specfiles checked; 1 errors, 0 warnings.

Comment 7 Tomas Orsava 2016-08-26 14:54:10 UTC
Hi Jan!

I've noticed that you have placed the binary only in the Python 3 submodule. However, the Python guidelines specify that you should only package the Python 2 binary in the Python 2 submodule. (Unless the binaries differ in functionality, which I believe they don't in this case.)

To make sure that only the Python 2 binary is placed in /usr/bin, I refer you to the %install section of this type of package on Python RPM Porting Guide:

http://python-rpm-porting.readthedocs.io/en/latest/application-modules.html#install

In addition, the man page should always be in the package(s) that contain binaries. Unlike docs, man pages don't take much space at all. Therefore in this case the man page should be in the Python 2 subpackage as well.

Comment 8 Tomas Orsava 2016-08-26 15:18:02 UTC
Now I'll have to eat a big piece of humble pie, because I was completely wrong.

In cases where only one binary is being packaged, it should indeed be the one for Python 3! I apologise Jan!

Nevertheless, please take a look at the link to the Python RPM Porting Guide, as the %install section should still be amended.

Comment 9 Jan Beran 2016-08-26 20:39 UTC
Created attachment 1194460 [details]
Updated spec file

Hi Tomáš,

thanks for your review. I made the correction related to man pages in the attached file. May I ask you to review the new spec file?

Comment 10 Tomas Orsava 2016-08-29 09:52:55 UTC
Hi Jan!
The man pages are now correct!

However, the %install section still needs to be amended so that we can be sure that only the Python 3 binary remains and the Python 2 binary is deleted:

Here's the relevant section of the Python RPM Porting guide:

http://python-rpm-porting.readthedocs.io/en/latest/application-modules.html#install

Comment 11 Jan Beran 2016-08-29 10:52 UTC
Created attachment 1195327 [details]
Spec file patch to provide Python 3 subpackage

Hi Tomáš,

thanks for your review. I have made the adjustment that I forgot to include last time.

Comment 12 Tomas Orsava 2016-08-29 11:09:39 UTC
Looks good to me, Jan, thank you!

Comment 13 Tomas Orsava 2016-08-29 11:10:08 UTC
Hi Pádraig,
as this is a bit of a time sensitive issue, we would really appreciate if you could take a look at the patch as soon as possible.
If you are time constrained right now, I hope you won't mind if we do the review and push the changes ourselves in case you are unable.

Thank you!

Comment 14 Alan Pevec 2016-08-30 11:42:30 UTC
> If you are time constrained right now, I hope you won't mind if we do the
> review and push the changes ourselves in case you are unable.

Please go ahead.


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