All,

I am sponsoring this fast track for Laszlo (Laca) Peter from
the JDS Desktop team.  The case directory contains this proposal.
I have set the timeout for Friday, August 29th, 2008.

The project proposes to integrate Python 2.5 into a Patch release
of Solaris.  Python 2.5 and Python 2.4 will coexist on the system.
The symbolic link pointing to the most recent version of python will
be updated to point to Python 2.5.

Thanks,

John

-------------- next part --------------
Title:          Python 2.5 for Solaris
Case:           PSARC/2008/543
Submitter:      Laszlo Peter
Owner:          John Fischer
Timeout:        08/29/2008 

1.0 Introduction

1.1 Project/Component Working Name:

    Python 2.5 for Solaris
    
1.2 Purpose

    This project delivers Python 2.5 into Solaris.  Python 2.4
    remains in Nevada and is upgraded to Uncommitted.
    It also introduces the isapython2.x executable, which invokes
    the python2.x executable that best matches the ISA of the
    running system, using isaexec.

    Release binding: Patch
    
2.0 Description 

    Python 2.5 is not fully compatible with Python 2.4, therefore
    both versions need to be shipped.  This is a common practice in
    Linux distributions as well.  Python 2.4 and Python 2.5 are
    parallel installable, the only namespace clash is /usr/bin/python
    which becomes a convenience symlink to the latest version of
    Python.  Note: /usr/bin/python currently points to python2.4.

    Python scripts delivered to Solaris must call the required
    version explicitely, not the /usr/bin/python convenience symlink:

    #!/usr/bin/python2.4

    or

    #!/usr/bin/python2.5

    The isapython2.x executable can be used to invoke the Python2.x
    interpreter that best matches the instruction set architecture
    of the running system.  isapython2.x is specific to the
    [Open]Solaris implementation of Python.

    Projects delivering Python modules are advised to deliver them
    for both Python 2.4 and Python 2.5.

    Projects delivering shared object Python modules are advised to
    deliver both 32 and 64-bit versions, as per PSARC/2006/666

2.2 Imported Interfaces

    The Python library/interpreter itself only uses system libraries.
    The various Python modules included in the SUNWPython25 package
    import the following interfaces:

    Python module                Interface            Classification
    --------------------------   ------------------   ----------------
    ssl                          OpenSSL              Volatile
    tkinter                      Tcl/Tk               Uncommitted
    bz2                          libbz2               Committed
    pyexpat                      libexpat             Volatile
    zlib                         libz                 Committed
    ctypes                       libffi               Volatile

2.3 Exported Interfaces

    Interface                       Classification  Comments
    -----------------------------   --------------  ----------------------
    /usr/bin/python                 Volatile       Convenience symlink
                                                   that points to the
                                                   most recent version of
                                                   Python
    /usr/bin/$MACH64/python         Volatile        Convenience symlink
                                                   to the most recent
                                                   version of the
                                                   64-bit Python interpreter
    /usr/bin/python2.4              Uncommitted    Python 2.4.x interpreter
                                                   (32-bit)
    /usr/bin/python2.5              Uncommitted    Python 2.5.y interpreter
                                                   (32-bit)
    /usr/bin/$MACH64/python2.4      Uncommitted    Python 2.4.x interpreter
                                                   (64-bit)
    /usr/bin/$MACH64/python2.5      Uncommitted    Python 2.5.y interpreter
                                                   (64-bit)
    /usr/bin/isapython2.4           Uncommitted    isaexec'd python2.4
    /usr/bin/isapython2.5           Uncommitted    isaexec'd python2.5

    /usr/lib/python2.4              Uncommitted    base directory for
                                                   Python 2.4 modules

    /usr/lib/python2.4/vendor-packages             directory for Python 2.4
                                    Uncommitted    modules shipped by Sun
                                                   see PSARC/2006/666
    /usr/lib/python2.4/site-packages               directory for Python 2.4
                                    Volatile       modules installed locally
                                                   by the sysadmin
    /usr/lib/python2.5              Uncommitted    base directory for
                                                   Python 2.5 modules
    /usr/lib/python2.5/vendor-packages             directory for Python 2.5
                                    Uncommitted    modules shipped by Sun
                                                   see PSARC/2006/666
    /usr/lib/python2.5/site-packages               directory for Python 2.5
                                    Volatile       modules installed locally
                                                   by the sysadmin

Reply via email to