From sacadmin Thu Nov 30 13:44:40 2006
Received: from sunmail5.uk.sun.com (sunmail5.UK.Sun.COM [129.156.85.165])
	by sac.sfbay.sun.com (8.13.6+Sun/8.13.6) with ESMTP id kAULidLr000504
	for <psarc@sac.eng.sun.com>; Thu, 30 Nov 2006 13:44:39 -0800 (PST)
Received: from nwk-avmta-1.sfbay.sun.com (nwk-avmta-1.SFBay.Sun.COM [129.149.246.28])
	by sunmail5.uk.sun.com (8.13.7+Sun/8.13.3/ENSMAIL,v2.2) with ESMTP id kAULiX47020817
	for <@sunmail2.sfbay.sun.com:psarc@sun.com>; Thu, 30 Nov 2006 21:44:38 GMT
Received: from pmxchannel-daemon.nwk-avmta-1.sfbay.Sun.COM by
 nwk-avmta-1.sfbay.Sun.COM
 (Sun Java System Messaging Server 6.2 (built Dec  2 2004))
 id <0J9K00F01CECA600@nwk-avmta-1.sfbay.Sun.COM> for psarc@sun.com
 (ORCPT psarc@sun.com); Thu, 30 Nov 2006 13:44:36 -0800 (PST)
Received: from brmea-mail-4.sun.com ([192.18.98.36])
 by nwk-avmta-1.sfbay.Sun.COM
 (Sun Java System Messaging Server 6.2 (built Dec  2 2004))
 with ESMTP id <0J9K002RNCEBOAC0@nwk-avmta-1.sfbay.Sun.COM> for psarc@sun.com
 (ORCPT psarc@sun.com); Thu, 30 Nov 2006 13:44:35 -0800 (PST)
Received: from fe-amer-03.sun.com ([192.18.108.177])
	by brmea-mail-4.sun.com (8.13.6+Sun/8.12.9) with ESMTP id kAULiYcU022739	for
 <psarc@sun.com>; Thu, 30 Nov 2006 14:44:34 -0700 (MST)
Received: from conversion-daemon.mail-amer.sun.com by mail-amer.sun.com
 (Sun Java System Messaging Server 6.2-6.01 (built Apr  3 2006))
 id <0J9K00501C3L7W00@mail-amer.sun.com>
 (original mail from John.Fischer@Sun.COM)
 for psarc@sun.com (ORCPT psarc@sun.com); Thu, 30 Nov 2006 14:44:34 -0700 (MST)
Received: from 129.146.11.154 ([129.146.11.154])
 by mail-amer.sun.com (Sun Java System Messaging Server 6.2-6.01 (built Apr  3
 2006)) with ESMTPSA id <0J9K00M2HCEA3AF9@mail-amer.sun.com> for psarc@sun.com
 (ORCPT psarc@sun.com); Thu, 30 Nov 2006 14:44:34 -0700 (MST)
Date: Thu, 30 Nov 2006 13:44:34 -0800
From: John Fischer <John.Fischer@sun.com>
Subject: PSARC/2006/666 - 64-bit Python and removal of Python 2.3 from	Nevada
Sender: John.Fischer@sun.com
To: psarc@sun.com
Cc: Laszlo.Peter@sun.com, John Fischer <John.Fischer@sun.com>
Reply-to: John.Fischer@sun.com
Message-id: <1164923073.61879.96.camel@sr1-umpk-02>
MIME-version: 1.0
X-Mailer: Ximian Evolution 1.4.6.324
Content-type: multipart/mixed; boundary="Boundary_(ID_0z7uZcyqRrbFy7RRcqM4Kw)"
X-PMX-Version: 5.2.0.264296
Status: RO
Content-Length: 5855


--Boundary_(ID_0z7uZcyqRrbFy7RRcqM4Kw)
Content-type: text/plain
Content-transfer-encoding: 7BIT

PSARC,

I am sponsoring this fast track for Laszlo Peter (aka Laca)
from the JDS product group.  I have set the timeout for the
case to be Friday December 8th, 2006.

This project includes:

    - delivering 64-bit Python interpreter, libraries and modules
      for Python 2.4: release binding: Patch
    - removing Python 2.3 from Solaris Nevada: release binding: Minor
    - fixing the /usr/sfw/bin/python symlink: release binding: Patch
    - changing the release binding of PSARC/2005/532 to Patch [1]

The case directory contains the attached proposal.

Thanks,

John

--Boundary_(ID_0z7uZcyqRrbFy7RRcqM4Kw)
Content-type: text/plain; charset=us-ascii; name=proposal.txt
Content-transfer-encoding: 7BIT
Content-disposition: attachment; filename=proposal.txt

Title:		64-bit Python and removal of Python 2.3 from Nevada
Case:		PSARC/2006/666
Submitter:	Laszlo Peter
Owner:          John Fischer
Timeout:	12/08/2006 

1.0 Introduction

1.1 Project/Component Working Name:

    64-bit Python and removal of Python 2.3 from Nevada
    
1.2 Purpose

    This project includes:

    - delivering 64-bit Python interpreter, libraries and modules
      for Python 2.4: release binding: Patch
    - removing Python 2.3 from Solaris Nevada: release binding: Minor
    - fixing the /usr/sfw/bin/python symlink: release binding: Patch
    - changing the release binding of PSARC/2005/532 to Patch [1]
    
2.0 Description 

    2.0.1  Delivering 64-bit Python interpreter, libraries and modules

	   This is a requirement of the Xen project.  The project
	   delivers /usr/bin/{amd64,sparcv9}/python and
	   /usr/lib/64/libpython2.4.so.

	   Python bytecode (.pyc) and optimized bytecode (.pyo) objects
	   can be loaded by either variants.

	   Shared objects are duplicated as follows:

	   /path/to/python/module/foo.so     - 32-bit shared object
	   /path/to/python/module/64/foo.so  - 64-bit shared object

	   The project enhances python's distutils module so that
	   the shared objects are automatically installed in the
	   correct directory.

    2.0.2  Removing Python 2.3 from Solaris Nevada

	   Python 2.3 was declared Obsolete in PSARC/2005/532 [1]
	   It was left in /usr/sfw due to a slight risk of breakage
	   since the python bytecode files are not necessarily
	   compatible across python versions.  At this stage
	   Python 2.3 is getting old (Python 2.5 has been released
           recently).  All consumers of Python in Solaris (Xen, Orca,
           JDS) use Python 2.4.  It is very likely that customers
           also migrated to Python 2.4.

    2.0.3  Fixing the /usr/sfw/bin/python symlink

           In PSARC/2005/532 it was decided that /usr/sfw/bin/python
	   should point to /usr/bin/python2.4, however in retrospect
	   that was a mistake as it defeats the purpose of this
           symlink (i.e. apps that depend on python2.3 can continue
           to use /usr/sfw/bin/python), furthermore
           /usr/sfw/bin/python2.3 was never defined as an interface
	   so apps that may depend on python2.3 would have to be
	   changed to use an unclassified interface.

	   This project changes /usr/sfw/bin/python as follows:

	   in S10: /usr/sfw/bin/python -> python2.3
	   in S11: /usr/sfw/bin/python -> ../../bin/python2.4

    2.0.4  Changing the release binding of PSARC/2005/532

	   This is a request to deliver python 2.4 (32 and 64-bit
	   versions) into a patch release of Solaris.  This is a
	   requirement of the Xen project.

2.2 Interface Changes

	   Interface               Classification  Comments
	   ---------------------   --------------  ----------------------
	   /usr/sfw/bin/python     Obsolete        points to python2.3 on
						   Solaris 10
						   points to python2.4 on
						   Solaris Nevada

	   /usr/bin/amd64/python   Volatile        (new)
	   /usr/bin/sparcv9/python Volatile        (new)

	   /usr/lib/amd64/         Volatile        (new)
		libpython2.4.so
	   /usr/lib/sparcv9/       Volatile        (new)
		libpython2.4.so

3.0 Packaging Python modules

    The following is advice to potential consumers of Python.

    Python modules have 3 incarnations:
     - foo.py:  python sources
     - foo.pyc: python compiled bytecode
     - foo.pyo: python optimized bytecode

    At this point, there is hardly any difference between .pyc and .pyo
    so the advice is to ship both .py and .pyc, but not .pyo.

    As highlighted by "6469243 Python has quantum observability problems",
    Python records the mtime of the py file in .pyc file.  When importing
    the .pyc file, it checks that the recorded and the real mtime are
    equal.  If not, it recompiles the .py file and, if the permissions
    allow it, writes a new .pyc file.  Therefore, importing a .pyc file
    with an incorrect mtime will result in changing files in the filesystem,
    causing pkgchk errors.   Packagers of Python module need to be aware
    of this behaviour and make sure that mtimes are preserved, either by:

    - not copying or modifying the files
    - restoring the mtime after copying (e.g. touch -r src dest);
      an alternative is to use compileall

    Finally, a reminder that as per PSARC/2005/555, python modules
    shipped in Solaris must be installed in
        /usr/lib/python<version>/vendor-packages
    as opposed to the default
        /usr/lib/python<version>/site-packages
    directory.

4.0 References

    1. http://sac.sfbay/PSARC/2005/532  Python migration from /usr/sfw
       to /usr and upgrade to v2.4.x
    2. http://sac.sfbay/PSARC/2005/555  Python "vendor-packages" support
    3. http://sac.sfbay/LSARC/2005/504  Orca Screen Reader/Magnifier for
       the JDS desktop
    4. http://sac.sfbay/PSARC/2006/260  Solaris on Xen

--Boundary_(ID_0z7uZcyqRrbFy7RRcqM4Kw)--

From sacadmin Thu Dec  7 09:02:28 2006
Received: from sunmail4.Singapore.Sun.COM (sunmail4.Singapore.Sun.COM [129.158.71.19])
	by sac.sfbay.sun.com (8.13.6+Sun/8.13.6) with ESMTP id kB7H2RBH013340
	for <psarc@sac.eng.Sun.COM>; Thu, 7 Dec 2006 09:02:27 -0800 (PST)
Received: from nwk-avmta-2.sfbay.sun.com (nwk-avmta-2.SFBay.Sun.COM [129.145.155.6])
	by sunmail4.Singapore.Sun.COM (8.13.4+Sun/8.13.3/ENSMAIL,v2.2) with ESMTP id kB7H2Lot001287
	for <@sunmail3.sfbay.sun.com:psarc@sun.com>; Fri, 8 Dec 2006 01:02:26 +0800 (SGT)
Received: from pmxchannel-daemon.nwk-avmta-2.sfbay.sun.com by
 nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0J9W00GGHY02XF10@nwk-avmta-2.sfbay.sun.com> for psarc@sun.com
 (ORCPT psarc@sun.com); Thu, 07 Dec 2006 09:02:26 -0800 (PST)
Received: from brmea-mail-1.sun.com ([192.18.98.31])
 by nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0J9W00GAAXV4XS10@nwk-avmta-2.sfbay.sun.com> for psarc@sun.com
 (ORCPT psarc@sun.com); Thu, 07 Dec 2006 08:59:29 -0800 (PST)
Received: from fe-amer-05.sun.com ([192.18.108.179])
	by brmea-mail-1.sun.com (8.13.6+Sun/8.12.9) with ESMTP id kB7GxSx3011549	for
 <psarc@sun.com>; Thu, 07 Dec 2006 09:59:28 -0700 (MST)
Received: from conversion-daemon.mail-amer.sun.com by mail-amer.sun.com
 (Sun Java System Messaging Server 6.2-6.01 (built Apr  3 2006))
 id <0J9W00K01XLSU800@mail-amer.sun.com>
 (original mail from John.Fischer@Sun.COM)
 for psarc@sun.com (ORCPT psarc@sun.com); Thu, 07 Dec 2006 09:59:28 -0700 (MST)
Received: from 129.146.11.154 ([129.146.11.154])
 by mail-amer.sun.com (Sun Java System Messaging Server 6.2-6.01 (built Apr  3
 2006)) with ESMTPSA id <0J9W0057IXV36NH2@mail-amer.sun.com> for psarc@sun.com
 (ORCPT psarc@sun.com); Thu, 07 Dec 2006 09:59:28 -0700 (MST)
Date: Thu, 07 Dec 2006 08:59:27 -0800
From: John Fischer <John.Fischer@sun.com>
Subject: Re: PSARC/2006/666 - 64-bit Python and removal of Python 2.3	from
	Nevada
In-reply-to: <1164923073.61879.96.camel@sr1-umpk-02>
Sender: John.Fischer@sun.com
To: psarc@sun.com
Cc: John Fischer <John.Fischer@sun.com>, Laszlo.Peter@sun.com
Reply-to: John.Fischer@sun.com
Message-id: <1165510766.46581.16.camel@sr1-umpk-02>
MIME-version: 1.0
X-Mailer: Ximian Evolution 1.4.6.324
Content-type: text/plain; charset=ASCII
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.2.0.264296
References: <1164923073.61879.96.camel@sr1-umpk-02>
Status: RO
Content-Length: 795

At PSARC's meeting yesterday this case was approved.  Therefore,
I have updated the IAM file with 'closed approved'.

Thanks,

John

On Thu, 2006-11-30 at 13:44, John Fischer wrote:
> PSARC,
> 
> I am sponsoring this fast track for Laszlo Peter (aka Laca)
> from the JDS product group.  I have set the timeout for the
> case to be Friday December 8th, 2006.
> 
> This project includes:
> 
>     - delivering 64-bit Python interpreter, libraries and modules
>       for Python 2.4: release binding: Patch
>     - removing Python 2.3 from Solaris Nevada: release binding: Minor
>     - fixing the /usr/sfw/bin/python symlink: release binding: Patch
>     - changing the release binding of PSARC/2005/532 to Patch [1]
> 
> The case directory contains the attached proposal.
> 
> Thanks,
> 
> John


