[IronPython] Vote for 2.6 features (was Wishlist for next version...)

Dino Viehland dinov at microsoft.com
Thu Nov 13 21:22:35 CET 2008


Thanks for opening those initial bugs Vernon!  I've gone ahead and created the full list of 2.6 feature based upon the 2.6 what's new document.  If anyone sees anything I missed feel free to open the bug and/or respond to this thread.  And please vote on your favorite issues.

19522: 2.6: from __future__ import print_function (PEP 3105)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19522

19521: 2.6: from __future__ import unicode_literals (PEP 3112)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19521

19534: 2.6: with statement available by default
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19534

19535: 2.6: exception handling, "except TypeError as ex" (PEP 3110)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19535

19536: 2.6: Class decorators (PEP 3129)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19536

19537: 2.6: hasattr shouldn't catch all errors, shouldn't catch KeyboardInterrupt / SystemExit
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19537

19538: 2.6: make it legal to provide keyword arguments after a *args argument to a function call.
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19538

19539: 2.6: add getter, setter, deleter to properties
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19539

19540: 2.6: Abstract Base Classes (collections renamed _collections, __subclasscheck__, __instancecheck__) (PEP 3119)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19540

19541: 2.6: add __package__ attribute to modules
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19541

19542: 2.6: implement _multiprocessing
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19542

19543: 2.6: Advanced string formatting (PEP 3101)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19543

19544: 2.6: Byte literals, bytearray (PEP 3112)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19544

19545: 2.6: New io module (implement _fileio module) (PEP 3116)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19545

19546: 2.6: Integer literal support & syntax (support for 0b or 0B binary numbers) (PEP 3127)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19546

19547: 2.6: **kw splatting should support any mapping object
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19547

19548: 2.6: new built-in next(iterator, [default]) returns next item from an iterator
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19548

19551: 2.6: add index, count methods to tuple
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19551

19550: 2.6: improve slicing support for built-in types
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19550

19549: 2.6: update set methods to accept multiple iterables: intersection(), intersection_update(), union(), update(), difference() and difference_update()
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19549

19552: 2.6: floating point features (http://bugs.python.org/issue1635)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19552

19553: 2.6: math module updated for NaN support (http://bugs.python.org/issue1640)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19553

19554: 2.6: floating point to hex support (http://bugs.python.org/issue3008)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19554

19557: 2.6: __hash__ = None support to hide parents hash
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19557

19555: 2.6: deprecate message on Exception objects in favor of args according to PEP 352
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19555

19556: 2.6: GeneratorExit should be a subclass of BaseException
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19556

19558: 2.6: Add gi_code to generator objects pointing to their code object
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19558

19559: 2.6: compile should support keyword arguments
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19559

19560: 2.6: complex(repr(cplx)) should round trip values
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19560

19561: 2.6: str.translate can accept None and do identity translation
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19561

19562: 2.6: __self__ and __func__ on method in addition to im_self and im_func
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19562

19563: 2.6: locals() in class no longer returns free variables
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19563

19564: 2.6: Implement new warnings module (no longer written in Python)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19564

19565: 2.6: implement members of struct that used to be written in Python
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19565

19566: 2.6: Support IRONPYTHONIOENCODING environment variable
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19566

19567: 2.6: Support new functions in cmath (polar, rect, phase, isnan, isinf)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19567

19568: 2.6: support maxlen on deque object
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19568

19569: 2.6: datetime.strftime supports %f format code for microseconds zero padded left to six places
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19569

19571: 2.6: reduce is available in functools
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19571

19572: 2.6: Implement itertools izip_longest, product, combinations, permutations, chain.from_iterable
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19572

19570: 2.6: implement operator.methodcaller
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19570

19574: 2.6: operator.attrgetter accepts dotted names
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19574

19573: 2.6: implement nt.closerange
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19573

19575: 2.6: nt.environ.clear should use unsetenv in addition to clearing the keys
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19575

19576: 2.6: support pickling of random objects
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19576

19577: 2.6: struct support for C99 _Bool type
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19577

19578: 2.6: add sys.float_info, sys.flags, getsizeof, getprofile, gettrace
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19578

19579: 2.6: warnings.formatwarning / showwarning get line optional arg, add warnings.catch_warnings
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19579

19580: 2.6: add future_builtins module
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19580

19581: 2.6: implement _json module (encode_basestring_ascii, scanstring)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19581

19582: 2.6: add ioctl to socket objects
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19582

19583: 2.6: add _winreg.ExpandEnvironmentStrings, DisableReflectionKey(), EnableReflectionKey(), and QueryReflectionKey()
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19583

19584: 2.6: collections.deque.__init__ clears existing contents
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19584

19585: 2.6: object.__init__ should not accept arbitrary arguments (http://bugs.python.org/issue1683368)
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19585

19586: 2.6: __import__ shouldn't allow filenames
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19586

19587: 2.6: socket.error should inherit from IOError
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19587

19588: 2.6: Exception class should warn when accessed using slicing or indexing
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19588

19589: 2.6: warn when comparing objects which don't implement comparisons
    http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19589



From: users-bounces at lists.ironpython.com [mailto:users-bounces at lists.ironpython.com] On Behalf Of Vernon Cole
Sent: Thursday, November 13, 2008 6:13 AM
To: Discussion of IronPython
Subject: Re: [IronPython] Wishlist for next version: from __future__ import print_function

Done.
Everyone go vote:
http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19521
http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=19522
--
Vernon
On Thu, Nov 13, 2008 at 12:30 AM, Curt Hagenlocher <curt at hagenlocher.org<mailto:curt at hagenlocher.org>> wrote:
These sound good.  Can you file them on CodePlex, please?
On Thu, Nov 13, 2008 at 3:32 AM, Vernon Cole <vernondcole at gmail.com<mailto:vernondcole at gmail.com>> wrote:
Some time back contributors to this forum were invited to suggest which Python3k and Python 2.6 functions were most important to implement in the next IronPython.

I downloaded Python 2.6 and Python3.0RC2 today and started hacking at making adodbapi work in Python 3.  (Now that it works in Iron, py3k seems like the next logical thing.)  Conversion to Python2.6 is the first baby step.  Roger Upole has already done some of the work, so I picked up his branch off CVS.

I quickly discovered that the first thing I need for each module is to add:

from __future__ import print_function
from __future__ import unicode_literals

This makes IronPython immediatly error out, of course.

The unicode_literals would be a simple "pass" statement for IronPython, which already defaults that way.
The convertion of "print" from a statement to a function affects every Python program down to "Hello, World". IMHO it would be the most important thing to implement.
--
Vernon Cole

_______________________________________________
Users mailing list
Users at lists.ironpython.com<mailto:Users at lists.ironpython.com>
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com


_______________________________________________
Users mailing list
Users at lists.ironpython.com<mailto:Users at lists.ironpython.com>
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ironpython-users/attachments/20081113/3c92e217/attachment.html>


More information about the Ironpython-users mailing list