3922
Comment: subprocess=done, source encodings should come w/ the new parser/compiler alpha
|
3922
target new style exceptions for alpha
|
Deletions are marked like this. | Additions are marked like this. |
Line 16: | Line 16: |
* [http://www.python.org/dev/peps/pep-0352/ PEP 352]: Exceptions as new-style classes | |
Line 43: | Line 44: |
* [http://www.python.org/dev/peps/pep-0352/ PEP 352]: Exceptions as new-style classes |
This is a specific list of the features needed to make releases towards Jython 2.5. The first alpha will be made once Jython supports all CPython 2.5 language level features. After the alphas have stabilized, all the library and Jython-only features will be completed in the beta series of releases. Once all the features are present in the betas, we'll go into release candidate mode until 2.5 is finally released.
Just because a feature is in the beta list, that doesn't mean it can't land before the alpha release. It only means it isn't necessary before the alpha. Actually since all of the alpha features are dependent on the new compiler and parser, the beta tasks can be a good starting point. PEPs 292, 305, 324 and 327 should be doable with trunk as can the template removal tasks and bugtests migration at the end of the list.
Alpha
- Move antlr parser in /trunk/sandbox/ast to trunk
- Translate summer of code compiler to Java and hook up to antlr
[http://www.python.org/doc/2.4/whatsnew/node4.html PEP 289]: Generator expressions
[http://www.python.org/dev/peps/pep-0263 PEP 263]: Defining Python Source Code Encodings
[http://www.python.org/doc/2.4/whatsnew/node6.html PEP 318]: Function/method decorators
[http://www.python.org/peps/pep-0308.html PEP 308]: Conditional expressions
[http://www.python.org/dev/peps/pep-0343/ PEP 343]: 'with' statement
[http://www.python.org/doc/2.5/whatsnew/pep-342.html PEP 342]: Coroutines via generators
[http://www.python.org/dev/peps/pep-0341/ PEP 341]: Unified try/except/finally
[http://www.python.org/dev/peps/pep-0352/ PEP 352]: Exceptions as new-style classes
- Upgrade to 2.5 CPythonLib
Done
- yield is always a keyword.
[http://www.python.org/dev/peps/pep-0279/ PEP 279]: enumerate() built-in added.
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.
[http://www.python.org/dev/peps/pep-0218/ PEP 218]: A Standard Set Datatype
[http://www.python.org/dev/peps/pep-0273 PEP 273]: Importing Modules from Zip Archives
[http://www.python.org/dev/peps/pep-0278 PEP 278]: Universal Newline Support
[http://www.python.org/dev/peps/pep-0282/ PEP 282]: logging package
[http://www.python.org/dev/peps/pep-0285 PEP 285]: A Boolean Type
[http://www.python.org/peps/pep-0293.html PEP 293]: Codec Error Handling Callbacks
[http://www.python.org/dev/peps/pep-0302/ PEP 302]: New Import Hooks
[http://www.python.org/doc/2.4/whatsnew/node8.html PEP 324]: subprocess module
[http://www.python.org/doc/2.3/whatsnew/node18.html#SECTION0001820000000000000000 optparse module]
Beta
[http://www.python.org/dev/peps/pep-0307 PEP 307]: Pickle Enhancements
[http://www.python.org/dev/peps/pep-0237/ PEP 237]: Unifying int/long
[http://www.python.org/doc/2.4/whatsnew/node5.html PEP 292]: Simpler String Substitutions
[http://www.python.org/dev/peps/pep-0328/ PEP 328]: Multi-line and absolute/relative imports
[http://www.python.org/doc/2.5/whatsnew/pep-357.html PEP 357]: Allowing Any Object to be Used for Slicing
[http://www.python.org/dev/peps/pep-0309/ PEP 309]: Partial Function Application
[http://www.python.org/dev/peps/pep-0338/ PEP 338]: Executing modules as scripts
[http://www.python.org/doc/2.3/whatsnew/node14.html PEP 305]: csv module
[http://www.python.org/doc/2.4/whatsnew/node9.html PEP 327]: decimal type
[http://www.python.org/doc/2.4/whatsnew/node7.html PEP 322]: Reverse iteration
- Import Python from the classpath