Jython 2.5.2 Release Notes
The following features have been added and bugs have been repaired for 2.5.2. For a look at the complete roadmap for Jython along with links for the PEPs and other information, please look at the roadmap:
Bugs Fixed
- [ 1614 ] minidom chunks the character input on multi-line values
- [ 1615 ] Can't invoke Java method that takes a variable number of arguments with zero arguments
- [ 1605 ] float preference over PyComplex as arg to __call__ breaks logic
- [ 1586 ] weakref reference count leak when kwargs are used
- [ 1601 ] Can't serialize PyCode object
- [ 1551 ] Java objects cannot be copied by the copy module
- [ 1375 ] XML SAX: attrs.get((None, 'attr')) gives NPE
- [ 1488 ] sax JyInputSourceWrapper does not support unicode strings
- [ 1510 ] minidom is not parsing comment information correctly
- [ 1549 ] Wrapping an InputStream with a PyFile wrongly carries out line-ending translation.
- [ 1583 ] xml.dom.Node.data returns bytestrings of decoded unicode
- [ 1515 ] modjy sometimes adds None to the sys.path
- [ 1507 ] modjy crashes if any query string parameters are not set with '='
- [ 1473 ] modjy servlet doesn't import site-packages by default
- [ 1474 ] modjy servlet doesn't call atexit handlers
- [ 1225 ] socket.getservbyname/port() not yet supported
- [ 1532 ] Cannot use docstring when defining class
- [ 1530 ] BoolOp in multiple assign causes VerifyError
- [ 1478 ] defaultdict & weakref.WeakKeyDictionary [TypeError: first argument must be callable]
- [ 1487 ] Import of module with latin-1 chars fails on utf-8 file encoding
- [ 1449 ] Ellipsis comparison different from Python 2.5 to Jython 2.5
- [ 1493 ] tarfile.extractall() throws "AttributeError: 'module' object has no attribute 'chown'" when called by root
- [ 1470 ] os.mkdir Errno difference from cpython
- [ 1496 ] fix os.listdir errno for non-existing dirs
- [ 1499 ] PostgreSQL datahandler should return Decimals instead of floats for NUMERIC/DECIMAL columns
- [ 1477 ] os.setpgrp and posix.setpgrp fail with TypeError
- [ 1396 ] Assigning os module funcs as class attributes incompatible with CPython
- [ 1504 ] Inheriting twice from the same Java interface causes MRO problems
- [ 1511 ] PySet doesn't support Java serialization
- [ 1426 ] JSR 223 Bindings changes not taking effect and leaking between threads; unnecessary synchronization
- [ 1548 ] Parentheses in CLASSPATH cause errors in jython.bat
- [ 1576 ] files opened in 'a+' mode not readable
- [ 1563 ] unicode() for Java objects working differently in 2.2 and 2.5
- [ 1566 ] os.popen(cmd).read() returns rn as newline on Windows with Jython 2.5
- [ 1517 ] TypeError: get_referrers
- [ 1502 ] string-escape codec incorrect
- [ 1534 ] new style object __dict__[name] ignored
- [ 1479 ] xml parser file lock
- [ 1582 ] com.ziclix.python.sql.PyConnection leaks memory
- [ 1520 ] os.listdir doesn't return unicode when requested
- [ 1483 ] optparse std module dies on non-ASCII unicode data
- [ 1390 ] ihooks fails due to unimplemented methods in imp module
- [ 1456 ] sys.trace/profile attributes cause: AttributeError: write-only attr: trace in PyAMF
- [ 1385 ] generator.throw uncaught on new generator doesn't stop the generator
- [ 1596 ] SynchronizedCallable does not report that it is callable [suggested fix]
- [ 1557 ] jython.bat doesn't work in 4nt
- [ 1567 ] [Windows] Wildcard Parameter * gets expanded to filename
- [ 1594 ] Glob patterns like .txt processed incorrectly on startup
- [ 1356 ] [Windows] test_subprocess test_communicate_pipe_buf fails
- [ 1595 ] [patch] CachedJarsPackageManager cannot write cache for packages in jar over 64k
- [ 1522 ] repeated execution of external python scripts causing PermGen out of memory exception
- Fix runtime issues during exitfuncs triggered via SystemRestart (such as during Django or Pylons development mode reloading)
- Fix pickling of collections.defaultdict objects
- Fix the cmath module to accept objects implementing the __float__ method
- Add google indexer (by Yin Wang and Steve Yegge)
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 with 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
