Bug 701280

Summary: Missing Python3 package for Cython
Product: [Fedora] Fedora Reporter: Eric Hopper <eric-bugs2>
Component: CythonAssignee: Neal Becker <ndbecker2>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 15CC: dmalcolm, steve.traylen
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-08-07 20:00:13 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Eric Hopper 2011-05-02 12:42:29 UTC
I'm trying to develop a package that has C++ components that I would like to test against both Python 2.7 and Python 3.x. There is no current way to bind to Python 3.x without using the Python C API directly.

Currently I use boost::python, but I strongly suspect Cython would be a better choice. Unfortunately, neither of them have a package for supporting Python 3.x.

I'm filing this against Cython because I suspect a Python 3 package for Cython is easier, and if one existed I'd happily port to it.

Comment 1 Neal Becker 2011-05-02 13:53:38 UTC
Boost::python does support python3

Comment 2 Neal Becker 2011-05-02 13:54:33 UTC
If you want python3 support on cython, you'll need to ask upstream.  Asking here won't do it.

Comment 3 Eric Hopper 2011-05-02 16:44:03 UTC
Perhaps I did not make myself completely and perfectly clear. I assumed some level of assuming the bug reporter was not a complete idiot on the part of Fedora packagers.

Both Boost::python and Cython upstream support Python3.

http://wiki.cython.org/FAQ#WhatPythonversionsdoesCythonsupport.3F

I am not asking Fedora to magically add support to a package that does not support it. I'm asking for a Fedora package that supports it.

Boost::python is packaged like a C++ library. It would be hard to have two versions of the shared library, one for Python 3 and one for Python 2.7.

Cython is packaged like a Python package. So the techniques that are used to allow, say, a python3-paste and python-paste would work for Cython.

Comment 4 Eric Hopper 2011-08-25 01:53:04 UTC
Cython already supports Python 3.2. Could you please create a package for a version of Cython compiled to support Python 3.2? Perhaps Cython-py3 would be a good package name.

Comment 5 Dave Malcolm 2011-08-25 14:31:21 UTC
[Trying to clear the air a little here; the tone in the discussion so far seems
to have been rather unpleasant, alas.  Please be respectful.]

What cython "support for Python 3.2" means is a little ambiguous to me. 

It could mean:

  (A) ...that the generated C source code is compilable against python 3's
      headers and libpython3.*   As I understand it, Cython can already do
      this: it generates C code that is compilable against both 2 and 3, and
      ought to work with 2.7 and 3.2 (you have to compile it twice though,
      as the ABIs are different) - Cython does all the work of handling the
      API differences between the 2.7 and 3.2 header files.  I believe that
      modules generated using Cython have no run-time requirement on Cython.

  (B) ...that the Python code for Cython is implemented in Python 3 rather
      than Python 2.  Currently in $(rpm -qlv Cython) on this F15 box I see
      a hierarchy of Python modules under:
        /usr/lib64/python2.7/site-packages/Cython
      which is clearly for Python 2.   I don't know if Cython can be run
      _using_ Python 3; if it doesn't that would require fixing upstream.

Based on comment #0, it sounds like the reporter is interested in case (A)
above, which ought to already work, without requiring further work on the
Cython rpm.

Did I characterize the requirements correctly?  (setting "needinfo" flag on the reporter)

[Hope this is helpful]

Comment 6 Eric Hopper 2011-08-25 16:21:04 UTC
(In reply to comment #5)
> Based on comment #0, it sounds like the reporter is interested in case (A)
> above, which ought to already work, without requiring further work on the
> Cython rpm.
> 
> Did I characterize the requirements correctly?  (setting "needinfo" flag on the
> reporter)
> 
> [Hope this is helpful]

It is case A that I am most interested in. I apologize for not having investigated more carefully. I did not realize that things would work this way.

I will try to some test cases and verify that you are correct.

Comment 7 Fedora End Of Life 2012-08-07 20:00:17 UTC
This message is a notice that Fedora 15 is now at end of life. Fedora
has stopped maintaining and issuing updates for Fedora 15. It is
Fedora's policy to close all bug reports from releases that are no
longer maintained. At this time, all open bugs with a Fedora 'version'
of '15' have been closed as WONTFIX.

(Please note: Our normal process is to give advanced warning of this
occurring, but we forgot to do that. A thousand apologies.)

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

Bug Reporter: Thank you for reporting this issue and we are sorry that
we were unable to fix it before Fedora 15 reached 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 to click on
"Clone This Bug" (top right of this page) and open it against that
version of Fedora.

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.

The process we are following is described here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping