Jython 2.5.1 Release Notes ========================== The following features have been added and bugs have been repaired for 2.5.1. For a look at the complete roadmap for Jython along iwth links for the PEPs and other information, please look at the `roadmap`_: New Features ------------ - zxJDBC supports the with-statement: connections are committed or rollbacked; cursors are closed - Upgraded to ANTLR 3.1.3 - [ 1859477 ] Dynamically loaded ServletFilters like PyServlet - Built in JSR 223 scripting engine, with LiveTribe JSR 223 implementation for JDK 5 - Jython "-J-classpath cp_args_here" now works as expected for unix shell. Bugs Fixed ---------- - [ 1466 ] wrong handling of append only files - [ 1079 ] fixed regression on issue: twisted.python.threadable module: missing attribute '_RLock' - [ 1461 ] assert statement should lookup AssertionError using getglobal - [ 1425 ] distutils/util.py assumes too much posix - [ 1457 ] Cannot write an array in a file opened in r+b mode. - [ 1382 ] __cmp__ on certain types raises ArrayStoreException - [ 1443 ] Can't update() hashlib.sha1() with array.array('c') - [ 1444 ] Can't zlib.compress() with array.array('c') - [ 1458 ] Builtin codecs aren't available without standard lib - [ 645615 ] cannot import through symbolic links - [ 1366 ] parsing of lamda expression fails - [ 1365 ] continuation lines fail in interactive interpreter - [ 1377 ] Event names shadowed by a field name on Java types leads to a NPE - [ 1381 ] Redundant declarations of interface implementation hides overriden methods - [ 1189 ] MD5 hash is incorrectly calculated when string contains non-latin chars and using python md5 lib - [ 1802339 ] Problem printing unicode when stdout intercepted - [ 1145 ] Jython 2.5 compatibility problem with JSR 223 - [ 1400 ] Evaluating expression via JSR 223 ScriptEngine returns null instead of True/False - [ 1413 ] Array data type (PostgreSQL) is not supported (NPE) - [ 1434 ] Cannot get return code from a process started with os.popen with Jython 2.5 (worked in 2.2) - [ 1391 ] socket.getaddrinfo() breaks ftplib FTP client - [ 1409 ] JSR-233 engine version numbers backwards - [ 1408 ] JSR-223 engine doesn't implement I/O redirection - [ 1393 ] TypeError: _new_impl(): expected 1 args; got 0 - [ 1415 ] ast Node creation fails with no arg constructors - [ 1405 ] Executing __run__.py from .jar throws exception(SystemExit: 0) in main when sys.exit(0) is called - [ 1439 ] Can't write() array.array - [ 1139 ] crashes on isinstance - [ 1430 ] Oracle JDBC Connection close - [ 1406 ] Parsing a simple PEP 342 coroutine crashes Jython 2.5 - [ 1407 ] ClassCastException in plain Python coroutine - [ 1424 ] Relative imports do not work in some cases Jython 2.5.0 Release Notes ========================== The following features have been added for 2.5.0. For a look at the complete roadmap for 2.5 along with links for the PEPs and other information, please look at the `roadmap`_: - yield is always a keyword - int() will now return a long instead of raising OverflowError if a number is too large - list.insert() changed to be consistent with negative slice indexing - list.index() takes optional start, stop arguments. - Dictionaries gained a pop() method and .fromkeys() class method. - dict() constructor takes keyword arguments. - Many type objects are now callable. - PEP 279: enumerate() built-in added. - PEP 218: A Standard Set Datatype - PEP 273: Importing Modules from Zip Archives - PEP 278: Universal Newline Support - PEP 282: logging package - PEP 285: A Boolean Type - PEP 293: Codec Error Handling Callbacks - PEP 302: New Import Hooks - PEP 307: Pickle Enhancements - PEP 324: subprocess module - optparse module - ExposeAnnotations - Move antlr parser in /trunk/sandbox/ast to trunk - Hookup asm compiler to antlr, solidify and add 2.5 features - PEP 289: Generator expressions - PEP 263: Defining Python Source Code Encodings - PEP 318: Function/method decorators - PEP 308: Conditional expressions - PEP 343: 'with' statement - PEP 342: Coroutines via generators - PEP 341: Unified try/except/finally - PEP 352: Exceptions as new-style classes - UpgradeTo25CPythonLib - PEP 292: Simpler String Substitutions - PEP 327: decimal type - UpgradeTo25CPythonLib - Ongoing parser fixes (universal newlines, line numbering, newline handling, interactive interpreter bugs) - PEP 237: Unifying int/long - PEP 357: Allowing Any Object to be Used for Slicing - PEP 309: Partial Function Application - PEP 305: csv module - PEP 338: Executing modules as scripts - unicodedata module - PEP 328: Multi-line and absolute/relative imports - elementtree module -> jython-elementtree - New Java integration (based on new style classes) - cjkcodecs - bz2 module - ReplaceJythonc .. _roadmap: http://wiki.python.org/jython/RoadMap