[65063] trunk/dports/lang/python26
blb at macports.org
blb at macports.org
Sat Mar 20 12:32:50 PDT 2010
Revision: 65063
http://trac.macports.org/changeset/65063
Author: blb at macports.org
Date: 2010-03-20 12:32:49 -0700 (Sat, 20 Mar 2010)
Log Message:
-----------
lang/python26 - update to 2.6.5, ticket #24139
Modified Paths:
--------------
trunk/dports/lang/python26/Portfile
Removed Paths:
-------------
trunk/dports/lang/python26/files/patch-readlinefix.diff
Modified: trunk/dports/lang/python26/Portfile
===================================================================
--- trunk/dports/lang/python26/Portfile 2010-03-20 18:54:20 UTC (rev 65062)
+++ trunk/dports/lang/python26/Portfile 2010-03-20 19:32:49 UTC (rev 65063)
@@ -4,7 +4,7 @@
PortGroup select 1.0
name python26
-version 2.6.4
+version 2.6.5
set major [lindex [split $version .] 0]
set branch [join [lrange [split ${version} .] 0 1] .]
categories lang
@@ -28,17 +28,15 @@
distname Python-${version}
use_bzip2 yes
-checksums md5 fee5408634a54e721a93531aba37f8c1 \
- sha1 bee572680d1966501247cb2b26e0e51f94d1cd13 \
- rmd160 fd33853842110fa3636dd296f2f27646fd2b151a
+checksums md5 6bef0417e71a1a1737ccf5750420fdb3 \
+ sha1 24c94f5428a8c94c9d0b316e3019fee721fdb5d1 \
+ rmd160 909c6a13749396f2b19fed51821d3e2577b2833b
# patch-Lib-distutils-dist.py.diff comes from
# <http://bugs.python.org/issue1180>
# Setting PYTHONHOME with patch-Mac-IDLE-Makefile.in.diff,
# patch-Mac-Makefile.in.diff, and patch-Mac-PythonLauncher-Makefile.in.diff
# is to work around http://bugs.python.org/issue5766
-# patch-readlinefix.diff comes from
-# <http://bugs.python.org/issue5833>
patchfiles patch-Makefile.pre.in.diff \
patch-setup.py.diff \
patch-Lib-cgi.py.diff \
@@ -47,7 +45,6 @@
patch-Mac-Makefile.in.diff \
patch-Mac-PythonLauncher-Makefile.in.diff \
patch-Mac-Tools-Doc-setup.py.diff \
- patch-readlinefix.diff \
patch-Lib-ctypes-macholib-dyld.py.diff
depends_lib port:gettext port:zlib port:openssl port:tk \
Deleted: trunk/dports/lang/python26/files/patch-readlinefix.diff
===================================================================
--- trunk/dports/lang/python26/files/patch-readlinefix.diff 2010-03-20 18:54:20 UTC (rev 65062)
+++ trunk/dports/lang/python26/files/patch-readlinefix.diff 2010-03-20 19:32:49 UTC (rev 65063)
@@ -1,162 +0,0 @@
---- Modules/readline.c 2008-11-04 12:43:31.000000000 -0800
-+++ Modules/readline.c 2009-04-22 15:50:49.000000000 -0700
-@@ -759,6 +759,10 @@
- static char **
- flex_complete(char *text, int start, int end)
- {
-+#ifdef HAVE_RL_COMPLETION_APPEND_CHARACTER
-+ rl_completion_append_character ='\0';
-+ rl_completion_suppress_append = 0;
-+#endif
- Py_XDECREF(begidx);
- Py_XDECREF(endidx);
- begidx = PyInt_FromLong((long) start);
-@@ -799,11 +803,8 @@
- rl_attempted_completion_function = (CPPFunction *)flex_complete;
- /* Set Python word break characters */
- rl_completer_word_break_characters =
-- strdup(" \t\n`~!@#$%^&*()-=+[{]}\\|;:'\",<>/?");
-+ strdup(" \t\n`!@#%^&*()=+[{]}\\|;:,<>?");
- /* All nonalphanums except '.' */
--#ifdef HAVE_RL_COMPLETION_APPEND_CHARACTER
-- rl_completion_append_character ='\0';
--#endif
-
- begidx = PyInt_FromLong(0L);
- endidx = PyInt_FromLong(0L);
---- Lib/rlcompleter.py 2009-04-22 15:42:38.000000000 -0700
-+++ Lib/rlcompleter.py 2009-04-22 15:43:00.000000000 -0700
-@@ -1,9 +1,10 @@
- """Word completion for GNU readline 2.0.
-
- This requires the latest extension to the readline module. The completer
--completes keywords, built-ins and globals in a selectable namespace (which
--defaults to __main__); when completing NAME.NAME..., it evaluates (!) the
--expression up to the last dot and completes its attributes.
-+completes keywords, built-ins, globals, and file names in a selectable
-+namespace (which defaults to __main__); when completing NAME.NAME...,
-+it evaluates (!) the expression up to the last dot and completes its
-+attributes.
-
- It's very cool to do "import sys" type "sys.", hit the
- completion key (twice), and see the list of names defined by the
-@@ -72,24 +73,34 @@
- self.use_main_ns = 0
- self.namespace = namespace
-
-+ # The cache of matches for a particular text fragment.
-+ self.matches = []
-+
- def complete(self, text, state):
- """Return the next possible completion for 'text'.
-
- This is called successively with state == 0, 1, 2, ... until it
-- returns None. The completion should begin with 'text'.
-+ returns None. The completion should begin with 'text'. Any text
-+ with a period (.) will match as an attribute. Any text that begins
-+ with a single or double quote will match using file name expansion.
-
- """
- if self.use_main_ns:
- self.namespace = __main__.__dict__
-
-+ # For the first call with this set of text, compute all possible
-+ # matches and store them in a member variable. Subsequent calls
-+ # will then iterate through this set of matches.
- if state == 0:
-- if "." in text:
-+ if ('"' in text) or ("'" in text):
-+ self.matches = self.file_matches(text)
-+ elif "." in text:
- self.matches = self.attr_matches(text)
- else:
- self.matches = self.global_matches(text)
-- try:
-+ if state < len(self.matches):
- return self.matches[state]
-- except IndexError:
-+ else:
- return None
-
- def _callable_postfix(self, val, word):
-@@ -129,9 +140,14 @@
-
- """
- import re
-+ import types
-+
-+ # Setup the regular expression for attributes
- m = re.match(r"(\w+(\.\w+)*)\.(\w*)", text)
- if not m:
- return []
-+
-+ # Group 1 is the class name, group 3 is the attribute text
- expr, attr = m.group(1, 3)
- try:
- thisobject = eval(expr, self.namespace)
-@@ -143,9 +159,18 @@
- if "__builtins__" in words:
- words.remove("__builtins__")
-
-- if hasattr(thisobject, '__class__'):
-- words.append('__class__')
-- words.extend(get_class_members(thisobject.__class__))
-+ # If this type is a class instance, use the __class__ member to
-+ # get the dictionary of attributes
-+ if type(thisobject) == types.InstanceType:
-+ if hasattr(thisobject, '__class__'):
-+ words.append('__class__')
-+ words.extend(get_class_members(thisobject.__class__))
-+ elif type(thisobject) == types.ClassType:
-+ words.extend(get_class_members(thisobject))
-+ else:
-+ words.extend(dir(thisobject))
-+
-+ # Build the full matching text from class.attribute matches
- matches = []
- n = len(attr)
- for word in words:
-@@ -155,6 +180,43 @@
- matches.append(word)
- return matches
-
-+ def file_matches(self, text):
-+ """Compute matches when text is a file name.
-+
-+ Expects a leading single or double quote character in the text.
-+ Will expand a leading ~ or ~user to a valid home directory.
-+ Will expand a leading $VAR to an environment variable name."""
-+ import glob
-+ import os
-+
-+ # save the leading quote character so we can re-add it later
-+ quote = text[0]
-+ # strip the leading quote character
-+ path = text[1:]
-+
-+ # expand a tilde (~) or a leading environment variable in the text
-+ path = os.path.expanduser( path )
-+ path = os.path.expandvars( path )
-+
-+ # append the any match character to send to the glob routine
-+ path = path + "*"
-+
-+ # use the glob module to get all of the matches
-+ rawMatches = glob.glob( path )
-+
-+ # re-prefix the text with the quoting character and append the correct
-+ # terminating character depending on the type of match that was found.
-+ # Directories are terminated with '/' and files with an ending quote.
-+ matches = []
-+ for entry in rawMatches:
-+ if os.path.isdir( entry ):
-+ matches.append( quote + entry + os.sep )
-+ elif os.path.isfile( entry ):
-+ matches.append( quote + entry + quote )
-+ else:
-+ matches.append( quote + entry )
-+ return matches
-+
- def get_class_members(klass):
- ret = dir(klass)
- if hasattr(klass,'__bases__'):
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20100320/c864df1c/attachment.html>
More information about the macports-changes
mailing list