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 ; 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 ; 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 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 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/vendor-packages as opposed to the default /usr/lib/python/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 ; 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 ; 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 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 , 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