From Fedora Project Wiki
m (→‎Python Runtimes: add link to Ironclad)
(48 intermediate revisions by 24 users not shown)
Line 5: Line 5:


== Python Special Interest Group ==
== Python Special Interest Group ==
A SIG for people who are interested in Python on Fedora. This includes
A SIG for people who are interested in Python on Fedora. This includes:
packaging and optimizing the various Python 2 and Python 3 [http://wiki.python.org/moin/implementation runtimes]
* packaging and optimizing the various Python 2 and Python 3 [[#Python_Runtimes|Python runtimes]]
([http://wiki.python.org/moin/CPython CPython], [http://www.jython.org/ Jython]), packaging libraries and applications, setting and improving [[Packaging:Python|standards for packaging them as RPMs]] and maintaining Python packages for Fedora.
* packaging Python libraries and applications
* setting and improving [[Packaging:Python|standards for packaging them as RPMs]]
* maintaining Python packages for Fedora


=== Contact Info ===
=== Contact Info ===


Mailing List: [[http://lists.fedoraproject.org/mailman/listinfo/python-devel python-devel]] <BR>
Mailing List for general discussions: [https://lists.fedoraproject.org/mailman/listinfo/python-devel python-devel] <BR>
IRC: #fedora-python on irc.freenode.net <BR>
IRC: #fedora-python on irc.freenode.net <BR>
=== Python SIG FAS group ===
You can add [https://admin.fedoraproject.org/pkgdb/packager/group::python-sig/ group::python-sig] to your package so the core members of the python-sig get notified on each bug in your python program. This way it is possible to maintain all python packages with the group permissions, which will simplify general python cleanup changes.
To apply for the group, please apply:
* at the [https://admin.fedoraproject.org/accounts/group/view/python-sig FAS group]
* for the [https://lists.fedoraproject.org/mailman/listinfo/python-sig python-sig] mailing list.
Unfortunately, this python-sig group is restricted because there are also security sensitive mails send out.
Please introduce yourself at the normal [https://lists.fedoraproject.org/mailman/listinfo/python-devel python-devel] mailing list and apply for the FAS group AND the python-sig mailing list.
The current list of packages maintained by the python-sig can be found at the [https://admin.fedoraproject.org/pkgdb/packager/group::python-sig/ package database].


=== Members ===
=== Members ===


[[User:Ivazquez| Ignacio Vazquez-Abrams]] <BR>
[[MartinBacovsky| Martin Bacovsky]] <BR>
[[User:lbazan | Luis Bazán]] <BR>
[[AurelienBompard| Aurelien Bompard]] <BR>
[[User:Ncoghlan | Nick Coghlan]] <BR>
[[User:Kushal | Kushal Das]] <BR>
[[User:Lupinix | Christian Dersch]] <BR>
[[TejasDinkar| Tejas Dinkar]] <BR>
[[User:Tadej | Tadej Janež]] <BR>
[[User:Bkabrda | Bohuslav Kabrda]] <BR>
[[User:Mstuchli | Matej Stuchlik]] <BR>
[[User:topdog| Andrew Colin Kissa]] <BR>
[[ToshioKuratomi| Toshio Kuratomi]] <BR>
[[AlexLancaster| Alex Lancaster]] <BR>
[[TimLauridsen| Tim Lauridsen]] <BR>
[[TimLauridsen| Tim Lauridsen]] <BR>
[[PaulNasrat| Paul Nasrat]] <BR>
[[ToshioKuratomi| Toshio Kuratomi]] <BR>
[[TejasDinkar| Tejas Dinkar]] <BR>
[[AurelienBompard| Aurelien Bompard]] <BR>
[[JoseMatos| José Matos]] <BR>
[[JoseMatos| José Matos]] <BR>
[[MichelSalim| Michel Salim]] <BR>
[[AlexLancaster| Alex Lancaster]] <BR>
[[LukeMacken| Luke Macken]] <BR>
[[LukeMacken| Luke Macken]] <BR>
[[ChristosTrochalakis| Christos Trochalakis]] <BR>
[[User:potty | Abdel Martínez]] <BR>
[[FelixSchwarz| FelixSchwarz]] <BR>
[[DaveMalcolm| Dave Malcolm]]: interested in core Python runtimes and low-level implementation details <BR>
[[DaveMalcolm| Dave Malcolm]]: interested in core Python runtimes and low-level implementation details <BR>
[[MartinBacovsky| Martin Bacovsky]] <BR>
[[PaulNasrat| Paul Nasrat]] <BR>
[[User:Jamielinux | Jamie Nguyen]] <BR>
[[User:Tradej | Tomas Radej]] <BR>
[[MichelSalim| Michel Salim]] <BR>
[[FelixSchwarz| Felix Schwarz]] <BR>
[[User:jdulaney | John Dulaney]] <BR>
[[User:Tomspur| Thomas Spura]] <BR>
[[User:Tomspur| Thomas Spura]] <BR>
[[ChristosTrochalakis| Christos Trochalakis]] <BR>
[[User:Ramkrsna | Ramakrishna Reddy Yekulla]] <BR>
[[User:Ivazquez| Ignacio Vazquez-Abrams]] <BR>
[[User:Kumarpraveen | Praveen Kumar]] <BR>
[[User:raphgro | Raphael Groner]] <BR>
[[User:Athmane | Athmane Madjoudj]] <BR>
[[User:rkuska | Robert Kuska]] <BR>
[[User:churchyard | Miro Hrončok]] <BR>


=== Python packages awaiting review ===
=== Python packages awaiting review ===
* [https://bugzilla.redhat.com/buglist.cgi?query_format=advanced&short_desc=python&bug_status=NEW&bug_status=ASSIGNED&bug_status=MODIFIED&bug_status=ON_DEV&bug_status=ON_QA&bug_status=VERIFIED&bug_status=RELEASE_PENDING&bug_status=POST&short_desc_type=allwordssubstr&component=Package%20Review&product=Fedora List of most python packages awaiting review] - Bugzilla query for packages which have not passed review with "python" in the name or summary.


* [https://bugzilla.redhat.com/show_bug.cgi?id=588941 pypy] - An alternate [http://pypy.org/ python interpreter written in a subset of python].  The interpreter has [http://morepypy.blogspot.com/2009/10/gc-improvements.html better memory] use than CPython and speed is closing in on Cpython.  The JIT'd version is faster than CPython in many [http://speed.pypy.org benchmarks].  It is growing the ability to [http://morepypy.blogspot.com/2010/04/using-cpython-extension-modules-with.html load CPython extension modules] in the near future (work presently done on a branch).
* [https://bugzilla.redhat.com/show_bug.cgi?id=593069 pynie] - Python 3, on top of the [https://admin.fedoraproject.org/pkgdb/acls/name/parrot Parrot virtual machine]
* [https://bugzilla.redhat.com/show_bug.cgi?id=593069 pynie] - Python 3, on top of the [https://admin.fedoraproject.org/pkgdb/acls/name/parrot Parrot virtual machine]
=== Packaging Quickstart ===
If you're just getting started with packaging python modules for Fedora, here's some hints to get you started:
* The [[Packaging:Guidelines|Fedora Packaging Guidelines]] must be followed for any package.  The [[Packaging:Python|Python specific guidelines]] are a good starting point.
* You can generate a spec template for your new python package like this. For Fedora 22 and later versions use [[dnf|DNF]]: <pre>dnf install rpmdevtools && rpmdev-newspec -t python</pre> Or in Fedora 21 and earlier versions: <pre>yum install rpmdevtools && rpmdev-newspec -t python</pre>  That will generate a spec file template that is a good starting point to making your package.
* When packaging PyPI project you can generate initial SPEC file using [https://apps.fedoraproject.org/packages/pyp2rpm pyp2rpm] tool.


=== Package requests ===
=== Package requests ===
* [http://chandlerproject.org Chandler PIM]
* [http://chandlerproject.org Chandler PIM] - I don't think it is such hot idea ... upstream is pinning for the fjords, and after couple of years of non-development, it is not that advanced as it used to be.
* [http://www.hforge.org/itools/ itools] - A python library that includes several useful tools, such as an ODF anonymizer that can be used to sanitize confidential documents before attaching them tp bug reports
* [http://www.hforge.org/itools/ itools] - A python library that includes several useful tools, such as an ODF anonymizer that can be used to sanitize confidential documents before attaching them tp bug reports
* [http://code.google.com/p/python-multiprocessing/ python-multiprocessing] - multiprocessing backport useful for EL-5
[https://bugzilla.redhat.com/show_bug.cgi?id=1181317 review request]
* [http://code.google.com/p/python-multiprocessing/ python-multiprocessing] - multiprocessing backport useful for EL-5 [https://bugzilla.redhat.com/show_bug.cgi?id=716667 review request]
* [http://pypi.python.org/pypi/repoze.profile repoze.profile] - WSGI profiling middleware
* [http://pypi.python.org/pypi/repoze.profile repoze.profile] - WSGI profiling middleware
* [http://code.google.com/p/tgscheduler/ tgscheduler] - TurboGears scheduler
* [http://code.google.com/p/tgscheduler/ tgscheduler] - TurboGears scheduler
Line 51: Line 93:
[[PackagingDrafts/TGApps|  Packaging TurboGears Applications]] <BR>
[[PackagingDrafts/TGApps|  Packaging TurboGears Applications]] <BR>
[[Packaging:Python Eggs|  Packaging Python Eggs]] <BR>
[[Packaging:Python Eggs|  Packaging Python Eggs]] <BR>
Parallel installable [[Python26]] information (mainly EPEL5).<br/>
[http://farmdev.com/talks/unicode/ Unicode in Python, Completely Demystified]
[http://farmdev.com/talks/unicode/ Unicode in Python, Completely Demystified]


Line 58: Line 101:


=== Upstream Release Schedules ===
=== Upstream Release Schedules ===
[http://python.org/dev/peps/pep-0373/ Python 2.7]
[http://www.python.org/dev/peps/pep-0429/ Python 3.4]


=== Python Features ===
=== Python Features ===
==== Under development (Fedora 16?) ====
==== Future work ====
* [[Features/Python3ForCriticalComponents|port anaconda and yum to python 3]]
* [[Features/Python3ForCriticalComponents|port anaconda and yum to python 3]]
==== Under development (Fedora 15?) ====
* [[Features/DebugPythonStacks|debug versions of Python 2 and Python 3 in addition to the traditional optimized builds]]
* [[Features/DebugPythonStacks|debug versions of Python 2 and Python 3 in addition to the traditional optimized builds]]
* [[Features/Python_3.2|upgrade of the Python 3 stack to 3.2]]
* [[Features/PyPyStack|add PyPy to Fedora, possibly with a stack of extensions]]
* [[Features/PyPyStack|add PyPy to Fedora, possibly with a stack of extensions]]
* [[Features/JythonStack|add a stack of extensions to Jython, in RPM form]]
* [[Features/JythonStack|add a stack of extensions to Jython, in RPM form]]
* [[Features/PythonNamingDependingOnImplementation | Rename python packages to reflect python implementation in the name]]
==== Under development (Fedora 18) ====
* [[Features/Python_3.3|upgrade of the Python 3 stack to 3.3]]
==== Added in Fedora 17 ====
* [[Features/StaticAnalysisOfPythonRefcounts| further work on static analysis of refcounting]]
==== Added in Fedora 16 ====
* [[Features/GccPythonPlugin|GCC plugin embedding Python, for writing GCC extensions in Python]]
* [[Features/StaticAnalysisOfCPythonExtensions|Static analysis tool to detect common mistakes made in Python extension modules written in C]]
==== Added in Fedora 15 ====
* [[Features/Python_3.2|upgrade of the Python 3 stack to 3.2]]


==== Added in Fedora 14 ====
==== Added in Fedora 14 ====
* [[Features/Python_2.7|upgrade of the Python 2 stack to 2.7]]
* [[Features/Python_2.7|upgrade of the Python 2 stack to 2.7]]
* pypy was packaged, available prebuilt via rpm


==== Added in Fedora 13 ====
==== Added in Fedora 13 ====
Line 83: Line 138:
==== Added in Fedora 10 ====
==== Added in Fedora 10 ====
* [[Features/PythonNSS|created and packaged bindings for the FIPS-validated NSS cryptographic library]]
* [[Features/PythonNSS|created and packaged bindings for the FIPS-validated NSS cryptographic library]]
==== Stalled features ====
* [[Features/SystemPythonExecutablesUseSystemPython]]


=== Python Runtimes ===
=== Python Runtimes ===
'''Within Fedora:'''
'''Within Fedora:'''
* {{package|python}} - The standard "CPython" implementation of Python 2  
* {{package|python}} - The standard "CPython" implementation of Python 2  
* {{package|python3}} - As above, for Python 3
* {{package|python3}} - As above, for Python 3.  There's a separate page detailing the [[Python3|status of building up a stack of pre-packaged Python 3 modules]]
* {{package|jython}} - Python 2 implementation on top of the Java virtual machine
* {{package|jython}} - Python 2 implementation on top of the Java virtual machine
* {{package|pypy}} - An alternate [http://pypy.org/ python 2 interpreter (with a JIT-compiler) written in a subset of python, compiled to .c].  The interpreter has [http://morepypy.blogspot.com/2009/10/gc-improvements.html better memory] use than CPython and speed is closing in on CPython.  The JIT'd version is faster than CPython in many [http://speed.pypy.org benchmarks].  It is growing the ability to [http://morepypy.blogspot.com/2010/04/using-cpython-extension-modules-with.html load CPython extension modules], though this is in an "alpha" state right now.
'''Within EPEL:'''
* {{package|python26}} - [[Python26|Python 2.6 stack for EPEL5]], parallel-installable with the system Python 2.4 stack
'''Awaiting review:'''
'''Awaiting review:'''
* [https://bugzilla.redhat.com/show_bug.cgi?id=588941 pypy] - An alternate [http://pypy.org/ python interpreter written in a subset of python]
* [https://bugzilla.redhat.com/show_bug.cgi?id=593069 pynie] - Python 3, on top of the [https://admin.fedoraproject.org/pkgdb/acls/name/parrot Parrot virtual machine]
* [https://bugzilla.redhat.com/show_bug.cgi?id=593069 pynie] - Python 3, on top of the [https://admin.fedoraproject.org/pkgdb/acls/name/parrot Parrot virtual machine]
'''Awaiting packaging'''
'''Awaiting packaging'''
Line 100: Line 163:
'''Within Fedora:'''
'''Within Fedora:'''
* {{package|pyjamas}} - Python-to-JavaScript compiler, implemented in Python
* {{package|pyjamas}} - Python-to-JavaScript compiler, implemented in Python
 
* {{package|shedskin}} -  Python to C++ compiler (for a subset of Python with "implicit types")
'''Awaiting review:'''
* [https://bugzilla.redhat.com/show_bug.cgi?id=554187 shedskin] -  Python to C++ compiler (for a subset of Python with "implicit types")


[[Category:Fedora special-interest groups|Python SIG]]
[[Category:Fedora special-interest groups|Python SIG]]

Revision as of 13:00, 28 April 2016


Python Special Interest Group

A SIG for people who are interested in Python on Fedora. This includes:

Contact Info

Mailing List for general discussions: python-devel
IRC: #fedora-python on irc.freenode.net

Python SIG FAS group

You can add group::python-sig to your package so the core members of the python-sig get notified on each bug in your python program. This way it is possible to maintain all python packages with the group permissions, which will simplify general python cleanup changes.

To apply for the group, please apply:

Unfortunately, this python-sig group is restricted because there are also security sensitive mails send out. Please introduce yourself at the normal python-devel mailing list and apply for the FAS group AND the python-sig mailing list.

The current list of packages maintained by the python-sig can be found at the package database.

Members

Martin Bacovsky
Luis Bazán
Aurelien Bompard
Nick Coghlan
Kushal Das
Christian Dersch
Tejas Dinkar
Tadej Janež
Bohuslav Kabrda
Matej Stuchlik
Andrew Colin Kissa
Toshio Kuratomi
Alex Lancaster
Tim Lauridsen
José Matos
Luke Macken
Abdel Martínez
Dave Malcolm: interested in core Python runtimes and low-level implementation details
Paul Nasrat
Jamie Nguyen
Tomas Radej
Michel Salim
Felix Schwarz
John Dulaney
Thomas Spura
Christos Trochalakis
Ramakrishna Reddy Yekulla
Ignacio Vazquez-Abrams
Praveen Kumar
Raphael Groner
Athmane Madjoudj
Robert Kuska
Miro Hrončok

Python packages awaiting review

Packaging Quickstart

If you're just getting started with packaging python modules for Fedora, here's some hints to get you started:

  • The Fedora Packaging Guidelines must be followed for any package. The Python specific guidelines are a good starting point.
  • You can generate a spec template for your new python package like this. For Fedora 22 and later versions use DNF:
    dnf install rpmdevtools && rpmdev-newspec -t python
    Or in Fedora 21 and earlier versions:
    yum install rpmdevtools && rpmdev-newspec -t python
    That will generate a spec file template that is a good starting point to making your package.
  • When packaging PyPI project you can generate initial SPEC file using pyp2rpm tool.

Package requests

  • Chandler PIM - I don't think it is such hot idea ... upstream is pinning for the fjords, and after couple of years of non-development, it is not that advanced as it used to be.
  • itools - A python library that includes several useful tools, such as an ODF anonymizer that can be used to sanitize confidential documents before attaching them tp bug reports

review request

Links

Python website
Building Python packages
TurboGears
Packaging TurboGears Applications
Packaging Python Eggs
Parallel installable Python26 information (mainly EPEL5).
Unicode in Python, Completely Demystified

Upstream Release Schedules

Python 3.4

Python Features

Future work

Under development (Fedora 18)

Added in Fedora 17

Added in Fedora 16

Added in Fedora 15

Added in Fedora 14

Added in Fedora 13

Added in Fedora 11

Added in Fedora 10

Stalled features

Python Runtimes

Within Fedora:

Within EPEL:


Awaiting review:

Awaiting packaging

Python Compilers

Within Fedora:

  • Package-x-generic-16.pngpyjamas - Python-to-JavaScript compiler, implemented in Python
  • Package-x-generic-16.pngshedskin - Python to C++ compiler (for a subset of Python with "implicit types")