summaryrefslogtreecommitdiffstats
path: root/Misc/TextMate
diff options
context:
space:
mode:
authorAlexandre Vassalotti <alexandre@peadrop.com>2008-05-15 22:51:26 (GMT)
committerAlexandre Vassalotti <alexandre@peadrop.com>2008-05-15 22:51:26 (GMT)
commita79e33e039530e5ca62f5dc19981cf76f4dcf824 (patch)
tree86e4ab28a152b7556ede0e27ba4310a7293cd0b4 /Misc/TextMate
parent6461e10158db1f1d41dc9449e233551b2889ebb5 (diff)
downloadcpython-a79e33e039530e5ca62f5dc19981cf76f4dcf824.zip
cpython-a79e33e039530e5ca62f5dc19981cf76f4dcf824.tar.gz
cpython-a79e33e039530e5ca62f5dc19981cf76f4dcf824.tar.bz2
Merged revisions 62954-62959,62961,62963-62967,62969-62970,62972-62973,62975-62976,62978-62982,62984,62987-62996 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r62954 | martin.v.loewis | 2008-05-09 16:11:37 -0400 (Fri, 09 May 2008) | 1 line Port to VS 2008. Drop W9x support. ........ r62957 | benjamin.peterson | 2008-05-09 17:30:26 -0400 (Fri, 09 May 2008) | 2 lines In stdtypes.rst, move methods under class directives where applicable ........ r62958 | brett.cannon | 2008-05-09 17:30:36 -0400 (Fri, 09 May 2008) | 2 lines Add a todo list to the module deletion command. ........ r62963 | brett.cannon | 2008-05-09 18:52:28 -0400 (Fri, 09 May 2008) | 2 lines Add support for extension modules in 3.0 deprection command. ........ r62967 | brett.cannon | 2008-05-09 22:25:00 -0400 (Fri, 09 May 2008) | 2 lines Fix some errors in the deprecation warnings for new and user. ........ r62975 | brett.cannon | 2008-05-09 22:54:52 -0400 (Fri, 09 May 2008) | 3 lines Suppress deprecations for packages as well when using test.test_support.import_module(). ........ r62976 | brett.cannon | 2008-05-09 22:57:03 -0400 (Fri, 09 May 2008) | 2 lines Also ignore package deprecations. ........ r62982 | benjamin.peterson | 2008-05-09 23:08:17 -0400 (Fri, 09 May 2008) | 2 lines Add the examples in the json module docstring as a doctest ........ r62992 | martin.v.loewis | 2008-05-10 09:24:09 -0400 (Sat, 10 May 2008) | 2 lines Explicitly refer to current hhp file (2.6a3) ........ r62993 | skip.montanaro | 2008-05-10 10:48:49 -0400 (Sat, 10 May 2008) | 2 lines Note the PyPI-edness of bsddb185 for people who might still need it. ........ r62994 | andrew.kuchling | 2008-05-10 13:36:24 -0400 (Sat, 10 May 2008) | 1 line Docstring typo ........ r62995 | andrew.kuchling | 2008-05-10 13:37:05 -0400 (Sat, 10 May 2008) | 1 line Document the 'line' argument ........ r62996 | andrew.kuchling | 2008-05-10 13:48:45 -0400 (Sat, 10 May 2008) | 1 line #1625509: describe behaviour of import lock ........
Diffstat (limited to 'Misc/TextMate')
-rw-r--r--Misc/TextMate/Python-Dev.tmbundle/Commands/2 to 3 - Module Deletion.tmCommand42
-rw-r--r--Misc/TextMate/Python-Dev.tmbundle/info.plist2
2 files changed, 36 insertions, 8 deletions
diff --git a/Misc/TextMate/Python-Dev.tmbundle/Commands/2 to 3 - Module Deletion.tmCommand b/Misc/TextMate/Python-Dev.tmbundle/Commands/2 to 3 - Module Deletion.tmCommand
index 31b8837..3cfada8 100644
--- a/Misc/TextMate/Python-Dev.tmbundle/Commands/2 to 3 - Module Deletion.tmCommand
+++ b/Misc/TextMate/Python-Dev.tmbundle/Commands/2 to 3 - Module Deletion.tmCommand
@@ -6,24 +6,50 @@
<string>nop</string>
<key>command</key>
<string>#!/usr/bin/python
+"""Generate code to warn about a module's removal in Python 3.0.
-template = """from warnings import warnpy3k
+XXX Not supported:
+- Module's in a package do not have their full name generated.
+- Package's __init__ module; should detect and use the package's name instead.
+
+"""
+py_template = """from warnings import warnpy3k
warnpy3k("the ${1:%s} module has been removed in Python 3.0", stacklevel=2)
-del warnpy3k
-$0"""
+del warnpy3k$0"""
+
+c_template = """
+if (PyErr_WarnPy3k("the ${1:%s} module has been removed in "
+ "Python 3.0", 2) &lt; 0)
+ return;$0"""
+
import imp
import os
file_name = os.path.split(os.environ['TM_FILEPATH'])[1]
-for suffix in (tuple_[0] for tuple_ in imp.get_suffixes()):
- if not file_name.endswith(suffix):
+
+py_suffixes = reversed(sorted((suffix[0] for suffix in imp.get_suffixes() if suffix[2] == imp.PY_SOURCE), key=len))
+c_suffixes = reversed(sorted((os.path.splitext(suffix[0])[0] + '.c'
+ for suffix in imp.get_suffixes() if suffix[2] == imp.C_EXTENSION), key=len))
+
+pairings = ((py_suffixes, py_template), (c_suffixes, c_template))
+
+def create_template(suffixes, template):
+ for suffix in suffixes:
+ if not file_name.endswith(suffix):
+ continue
+ module_name = file_name[:-len(suffix)]
+ return template % module_name
+ else:
+ return None
+
+for template in (create_template(*pair) for pair in pairings):
+ if not template:
continue
- module_name = file_name[:-len(suffix)]
- print (template % module_name),
+ print template,
break
else:
- print (template % "XXX"),</string>
+ print 'XXX Could not generate code.'</string>
<key>input</key>
<string>none</string>
<key>name</key>
diff --git a/Misc/TextMate/Python-Dev.tmbundle/info.plist b/Misc/TextMate/Python-Dev.tmbundle/info.plist
index 2e0ea9a..644bc7e 100644
--- a/Misc/TextMate/Python-Dev.tmbundle/info.plist
+++ b/Misc/TextMate/Python-Dev.tmbundle/info.plist
@@ -22,10 +22,12 @@
<string>Python-Dev</string>
<key>ordering</key>
<array>
+ <string>9519C22B-6AB8-41A1-94F6-079E0B45C147</string>
<string>B545BB1B-A8E1-426C-B50A-426E78B96D38</string>
<string>6EF151E5-7149-4F82-8796-0CC40FE589FA</string>
<string>FD25A8DC-22DC-4ED4-B222-B943C8A9117D</string>
<string>BF336FFF-E14D-4BF1-A156-71CF768AC034</string>
+ <string>EDBB037F-AAE3-4512-863F-D9AA82C9E51E</string>
</array>
<key>uuid</key>
<string>A932ECD1-D43A-4F57-B7FB-A1CEC3B65D20</string>