Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 Nov 2006 11:46:04 +0800 (CST)
From:      Xin LI <delphij@FreeBSD.org>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        perky@FreeBSD.org, python@FreeBSD.org
Subject:   ports/105901: [UPDATE] Update python24 to 2.4.4
Message-ID:  <200611270346.kAR3k4E6003593@tarsier.delphij.net>
Resent-Message-ID: <200611270350.kAR3o4BE043048@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         105901
>Category:       ports
>Synopsis:       [UPDATE] Update python24 to 2.4.4
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Mon Nov 27 03:50:04 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Xin LI
>Release:        FreeBSD 6.1-RELEASE-p3 i386
>Organization:
The FreeBSD Project
>Environment:
System: FreeBSD tarsier.delphij.net 6.1-RELEASE-p3 FreeBSD 6.1-RELEASE-p3 #37: Sun Aug 13 03:34:43 CST 2006 delphij@tarsier.delphij.net:/usr/obj/usr/src/sys/TARSIER i386


>Description:
	Python 2.4.4 is a bugfix release of Python 2.4, on October 18, 2006.
>How-To-Repeat:
>Fix:

	Do a s/2.4.3/2.4.4/ s/243/244/g against bsd.python.mk and apply
the attached patch:

--- patch-python24 begins here ---
Index: Makefile
===================================================================
RCS file: /home/ncvs/ports/lang/python24/Makefile,v
retrieving revision 1.155
diff -u -r1.155 Makefile
--- Makefile	13 Oct 2006 07:16:44 -0000	1.155
+++ Makefile	27 Nov 2006 03:28:40 -0000
@@ -6,8 +6,8 @@
 #
 
 PORTNAME=	python24
-PORTVERSION=	2.4.3
-PORTREVISION=	3
+PORTVERSION=	2.4.4
+PORTREVISION=	0
 CATEGORIES=	lang python ipv6
 MASTER_SITES=	${PYTHON_MASTER_SITES}
 MASTER_SITE_SUBDIR=	${PYTHON_MASTER_SITE_SUBDIR}
Index: distinfo
===================================================================
RCS file: /home/ncvs/ports/lang/python24/distinfo,v
retrieving revision 1.62
diff -u -r1.62 distinfo
--- distinfo	9 Oct 2006 14:29:17 -0000	1.62
+++ distinfo	27 Nov 2006 03:32:49 -0000
@@ -1,3 +1,3 @@
-MD5 (python/Python-2.4.3.tgz) = edf994473a8c1a963aaa71e442b285b7
-SHA256 (python/Python-2.4.3.tgz) = 985a413932f5e31e6280b37da6b285a3a0b2748c6786643989ed9b23de97e2d5
-SIZE (python/Python-2.4.3.tgz) = 9348239
+MD5 (python/Python-2.4.4.tgz) = 82d000617baaef269ad5795c595fdc58
+SHA256 (python/Python-2.4.4.tgz) = 92be6e20cbc3111d9dd0c016d72ef7914c23b879dc52df7ba28df97afbf12e2e
+SIZE (python/Python-2.4.4.tgz) = 9531474
Index: files/patch-CVE-2006-4980
===================================================================
RCS file: files/patch-CVE-2006-4980
diff -N files/patch-CVE-2006-4980
--- files/patch-CVE-2006-4980	8 Oct 2006 06:48:01 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,67 +0,0 @@
---- Objects/unicodeobject.c	2006/08/22 08:09:11	51465
-+++ Objects/unicodeobject.c	2006/08/22 08:25:33	51466
-@@ -1970,7 +1970,28 @@
- 
-     static const char *hexdigit = "0123456789abcdef";
- 
--    repr = PyString_FromStringAndSize(NULL, 2 + 6*size + 1);
-+    /* Initial allocation is based on the longest-possible unichr
-+       escape.
-+
-+       In wide (UTF-32) builds '\U00xxxxxx' is 10 chars per source
-+       unichr, so in this case it's the longest unichr escape. In
-+       narrow (UTF-16) builds this is five chars per source unichr
-+       since there are two unichrs in the surrogate pair, so in narrow
-+       (UTF-16) builds it's not the longest unichr escape.
-+
-+       In wide or narrow builds '\uxxxx' is 6 chars per source unichr,
-+       so in the narrow (UTF-16) build case it's the longest unichr
-+       escape.
-+    */
-+
-+    repr = PyString_FromStringAndSize(NULL,
-+        2
-+#ifdef Py_UNICODE_WIDE
-+        + 10*size
-+#else
-+        + 6*size
-+#endif
-+        + 1);
-     if (repr == NULL)
-         return NULL;
- 
-@@ -1995,15 +2016,6 @@
- #ifdef Py_UNICODE_WIDE
-         /* Map 21-bit characters to '\U00xxxxxx' */
-         else if (ch >= 0x10000) {
--	    int offset = p - PyString_AS_STRING(repr);
--
--	    /* Resize the string if necessary */
--	    if (offset + 12 > PyString_GET_SIZE(repr)) {
--		if (_PyString_Resize(&repr, PyString_GET_SIZE(repr) + 100))
--		    return NULL;
--		p = PyString_AS_STRING(repr) + offset;
--	    }
--
-             *p++ = '\\';
-             *p++ = 'U';
-             *p++ = hexdigit[(ch >> 28) & 0x0000000F];
-@@ -2016,8 +2028,8 @@
-             *p++ = hexdigit[ch & 0x0000000F];
- 	    continue;
-         }
--#endif
--	/* Map UTF-16 surrogate pairs to Unicode \UXXXXXXXX escapes */
-+#else
-+	/* Map UTF-16 surrogate pairs to '\U00xxxxxx' */
- 	else if (ch >= 0xD800 && ch < 0xDC00) {
- 	    Py_UNICODE ch2;
- 	    Py_UCS4 ucs;
-@@ -2042,6 +2054,7 @@
- 	    s--;
- 	    size++;
- 	}
-+#endif
- 
-         /* Map 16-bit characters to '\uxxxx' */
-         if (ch >= 256) {
Index: files/patch-setup.py
===================================================================
RCS file: /home/ncvs/ports/lang/python24/files/patch-setup.py,v
retrieving revision 1.10
diff -u -r1.10 patch-setup.py
--- files/patch-setup.py	13 Oct 2006 07:16:45 -0000	1.10
+++ files/patch-setup.py	27 Nov 2006 03:35:59 -0000
@@ -1,5 +1,5 @@
---- setup.py.orig	Mon Oct  9 22:08:07 2006
-+++ setup.py	Mon Oct  9 22:08:42 2006
+--- setup.py.orig	Mon Nov 27 03:33:44 2006
++++ setup.py	Mon Nov 27 03:35:40 2006
 @@ -15,7 +15,7 @@
  from distutils.command.install_lib import install_lib
  
@@ -9,7 +9,7 @@
  
  def add_dir_to_list(dirlist, dir):
      """Add the directory 'dir' to the list 'dirlist' (at the front) if
-@@ -425,7 +425,7 @@
+@@ -442,7 +442,7 @@
          if self.compiler.find_library_file(lib_dirs, 'readline'):
              readline_libs = ['readline']
              if self.compiler.find_library_file(lib_dirs,
@@ -18,12 +18,12 @@
                  readline_libs.append('ncursesw')
              elif self.compiler.find_library_file(lib_dirs,
                                                   'ncurses'):
-@@ -681,7 +681,7 @@
- 
+@@ -728,7 +728,7 @@
          # Curses support, requiring the System V version of curses, often
          # provided by the ncurses library.
+         panel_library = 'panel'
 -        if (self.compiler.find_library_file(lib_dirs, 'ncursesw')):
 +        if (self.compiler.find_library_file(lib_dirs, 'xxxncursesw')):
              curses_libs = ['ncursesw']
-             exts.append( Extension('_curses', ['_cursesmodule.c'],
-                                    libraries = curses_libs) )
+             # Bug 1464056: If _curses.so links with ncursesw,
+             # _curses_panel.so must link with panelw.
--- patch-python24 ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200611270346.kAR3k4E6003593>