[issue10516] Add list.clear() and list.copy()

2012-03-17 Thread Roundup Robot
Roundup Robot added the comment: New changeset 958a98bf924e by Eli Bendersky in branch 'default': updated whatsnew/3.3.rst with the new methods added to list and bytearray (issue 10516) http://hg.python.org/cpython/rev/958a98bf924e -- nosy: +python-dev

[issue10516] Add list.clear() and list.copy()

2011-03-03 Thread Eli Bendersky
Eli Bendersky added the comment: Committed the bytearray methods in revision 88733. Closing this issue. Will handle wrong exception and MutableSequence ABC method addition in separate issues. -- status: open -> closed ___ Python tracker

[issue10516] Add list.clear() and list.copy()

2011-03-01 Thread Raymond Hettinger
Raymond Hettinger added the comment: > Hmm, shouldn't self.__class__(self) be a > good default implementation of copy()? > > I'd expect any sequence to support this way > of creation from another sequence, even if it's inefficient. The copy() method isn't being proposed for MutableSequence be

[issue10516] Add list.clear() and list.copy()

2011-02-28 Thread Georg Brandl
Georg Brandl added the comment: Hmm, shouldn't self.__class__(self) be a good default implementation of copy()? I'd expect any sequence to support this way of creation from another sequence, even if it's inefficient. -- ___ Python tracker

[issue10516] Add list.clear() and list.copy()

2011-02-28 Thread Raymond Hettinger
Raymond Hettinger added the comment: The patch is fine. Do consider using assertIsNot() in the tests. Then go ahead and apply it. The OverflowError in bytearray.pop() is a bug, please open a separate report for it and make a patch changing it to IndexError. Assign that bug report to me.

[issue10516] Add list.clear() and list.copy()

2011-02-26 Thread Eli Bendersky
Eli Bendersky added the comment: Attaching a patch adding copy() and clear() to bytearrays, with tests and doc. I didn't add the methods to MutableSequence because I have a doubt about it - in particular which exception get raised by .pop if it's empty. Curiously, lists and bytearrays raise d

[issue10516] Add list.clear() and list.copy()

2011-02-25 Thread Raymond Hettinger
Raymond Hettinger added the comment: The ABCs are subset of the methods for the concrete APIs. We've avoided the likes of copy() because it requires knowledge of the constructor's signature -- for example, MutableMapping does not cover copy(). It is okay for Eli to add MutableSequence.clear(

[issue10516] Add list.clear() and list.copy()

2011-02-25 Thread Georg Brandl
Georg Brandl added the comment: No -- but the question is if copy() and clear() mightn't be added to the (mutable) sequence ABC if we make all builtin such sequences implement them. -- ___ Python tracker

[issue10516] Add list.clear() and list.copy()

2011-02-25 Thread Raymond Hettinger
Raymond Hettinger added the comment: Georg, what is the issue? Is there some reason that bytearrays should not be copied or cleared? Is there some reason to prefer the current: dup = b[:] # copy del b[:] # clear -- ___ Python tracker

[issue10516] Add list.clear() and list.copy()

2011-02-25 Thread Boštjan Mejak
Boštjan Mejak added the comment: Right, right. My bad. Can't wait for Python 3.3! ;) -- Added file: http://bugs.python.org/file20887/unnamed ___ Python tracker ___Right, right.

[issue10516] Add list.clear() and list.copy()

2011-02-25 Thread Georg Brandl
Georg Brandl added the comment: Because they got added *after* 3.2 was released? -- ___ Python tracker ___ ___ Python-bugs-list maili

[issue10516] Add list.clear() and list.copy()

2011-02-25 Thread Boštjan Mejak
Boštjan Mejak added the comment: I have installed Python 3.2 final on my Windows machine and I get an exception when doing list.copy or list.clear in the interpreter. Why is that so? -- Added file: http://bugs.python.org/file20886/unnamed ___ Python

[issue10516] Add list.clear() and list.copy()

2011-02-25 Thread Georg Brandl
Georg Brandl added the comment: In any case, this issue can be closed. -- status: open -> closed ___ Python tracker ___ ___ Python-bu

[issue10516] Add list.clear() and list.copy()

2011-02-25 Thread Georg Brandl
Georg Brandl added the comment: Yes, it should be discussed on python-dev. -- ___ Python tracker ___ ___ Python-bugs-list mailing lis

[issue10516] Add list.clear() and list.copy()

2011-02-25 Thread Raymond Hettinger
Raymond Hettinger added the comment: Unless someone raises a controversial and non-trivial issue about adding clear() and copy() to bytearray, there is no need for a python-dev discussion on the subject. Just post a patch to the tracker. -- ___ Py

[issue10516] Add list.clear() and list.copy()

2011-02-25 Thread Eli Bendersky
Eli Bendersky added the comment: On Fri, Feb 25, 2011 at 10:11, Georg Brandl wrote: > > Georg Brandl added the comment: > > Reading "clear and copy are not supported by bytearray": shouldn't they be? Perhaps they should, and it's not a big deal to implement. But I'm not 100% clear on the poli

[issue10516] Add list.clear() and list.copy()

2011-02-25 Thread Georg Brandl
Georg Brandl added the comment: Reading "clear and copy are not supported by bytearray": shouldn't they be? ("sort" probably really makes no sense on bytearrays.) -- ___ Python tracker __

[issue10516] Add list.clear() and list.copy()

2011-02-24 Thread Eli Bendersky
Eli Bendersky added the comment: A slightly revised patch committed in revision 88554: 1. Fixed Éric's whitespace comment 2. Fixed a test in test_descrtut.py which was listing list's methods 3. Moved the change to collections.py onto Lib/collections/__init__.py 4. Added NEWS entry Éric - as I

[issue10516] Add list.clear() and list.copy()

2011-02-23 Thread Raymond Hettinger
Raymond Hettinger added the comment: [Éric Araujo] > +"L.clear() -> None -- remove all items from L"); > It looks like other methods that return None > just omit the “-> type” part. These kind of nitty comments really aren't helpful. It consumes more time to talk about them than they're worth.

[issue10516] Add list.clear() and list.copy()

2011-02-23 Thread Eli Bendersky
Changes by Eli Bendersky : -- nosy: +ncoghlan ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.pytho

[issue10516] Add list.clear() and list.copy()

2011-02-23 Thread Eli Bendersky
Eli Bendersky added the comment: On Thu, Feb 24, 2011 at 05:26, Éric Araujo wrote: > > Éric Araujo added the comment: > > Ray: Eli can just refresh his patch and commit.  Note that the patch program > will prompt you for a file name if it can’t find the file for a diff hunk, so > it should b

[issue10516] Add list.clear() and list.copy()

2011-02-23 Thread Raymond Hettinger
Raymond Hettinger added the comment: Eli doesn't need to post a new patch. I'm sure he will fix any nits in his commit. -- ___ Python tracker ___ _

[issue10516] Add list.clear() and list.copy()

2011-02-23 Thread Éric Araujo
Éric Araujo added the comment: Ray: Eli can just refresh his patch and commit. Note that the patch program will prompt you for a file name if it can’t find the file for a diff hunk, so it should be trivial to apply a patch across a rename. Eli: Would you mind changing two nits before committ

[issue10516] Add list.clear() and list.copy()

2011-02-23 Thread Ray.Allen
Ray.Allen added the comment: Please modify the patch so that it can be applied to current py3k trunk cleanly. (Notice that Lib/collections.py has been changed to a package in #11085). -- ___ Python tracker _

[issue10516] Add list.clear() and list.copy()

2011-02-23 Thread Raymond Hettinger
Raymond Hettinger added the comment: The patch looks great. Please apply it. -- assignee: rhettinger -> eli.bendersky resolution: later -> accepted ___ Python tracker ___ __

[issue10516] Add list.clear() and list.copy()

2011-01-04 Thread Georg Brandl
Changes by Georg Brandl : -- stage: needs patch -> patch review ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe:

[issue10516] Add list.clear() and list.copy()

2011-01-03 Thread Antoine Pitrou
Changes by Antoine Pitrou : -- stage: unit test needed -> needs patch ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubsc

[issue10516] Add list.clear() and list.copy()

2010-12-15 Thread Eli Bendersky
Eli Bendersky added the comment: Updated patch with "versionadded" tag for the new methods -- Added file: http://bugs.python.org/file20056/issue10516.5.patch ___ Python tracker

[issue10516] Add list.clear() and list.copy()

2010-12-10 Thread Ray.Allen
Ray.Allen added the comment: > That's good if it's so... can you explain why list_clear doesn't > guarantee that the list is empty? Why would XDECREF populate the list? > I don't quite understand it. Does this mean that durning the Py_DECREF progress the list may be populated again? It's no

[issue10516] Add list.clear() and list.copy()

2010-12-09 Thread Ray.Allen
Ray.Allen added the comment: eli, you should also add "New in version 3.3" to the doc of the tow new list methods. -- nosy: +ysj.ray ___ Python tracker ___

[issue10516] Add list.clear() and list.copy()

2010-12-06 Thread Éric Araujo
Éric Araujo added the comment: 1) Obviously because they’re mapping methods, not map methods. 2) Again, opening up the file and looking through it for some seconds or minutes would have allowed you to understand it. 3) Again, this is not the right place to discuss this. 4) Again, please do n

[issue10516] Add list.clear() and list.copy()

2010-12-06 Thread Eric Smith
Changes by Eric Smith : Removed file: http://bugs.python.org/file19959/unnamed ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubs

[issue10516] Add list.clear() and list.copy()

2010-12-06 Thread Boštjan Mejak
Boštjan Mejak added the comment: Why mapp_methods, why not map_methods? Any reason for this? -- Added file: http://bugs.python.org/file19959/unnamed ___ Python tracker ___Why m

[issue10516] Add list.clear() and list.copy()

2010-12-06 Thread Éric Araujo
Changes by Éric Araujo : Removed file: http://bugs.python.org/file19957/unnamed ___ Python tracker ___ ___ Python-bugs-list mailing list Unsub

[issue10516] Add list.clear() and list.copy()

2010-12-06 Thread Éric Araujo
Changes by Éric Araujo : Removed file: http://bugs.python.org/file19954/unnamed ___ Python tracker ___ ___ Python-bugs-list mailing list Unsub

[issue10516] Add list.clear() and list.copy()

2010-12-06 Thread Brian Curtin
Brian Curtin added the comment: No, and please do not clutter this issue with any perceived typo discussions. -- nosy: +brian.curtin ___ Python tracker ___ _

[issue10516] Add list.clear() and list.copy()

2010-12-06 Thread Boštjan Mejak
Boštjan Mejak added the comment: mapp_methods looks like a typo. you know -- mapp_...? isn't map_... correct? -- Added file: http://bugs.python.org/file19957/unnamed ___ Python tracker ___

[issue10516] Add list.clear() and list.copy()

2010-12-06 Thread Georg Brandl
Georg Brandl added the comment: No, he means mapp_methods. Why don't you simply look at the file? -- ___ Python tracker ___ ___ Pyth

[issue10516] Add list.clear() and list.copy()

2010-12-06 Thread Boštjan Mejak
Boštjan Mejak added the comment: mapp_methods ? Don't you mean map_methods ? -- Added file: http://bugs.python.org/file19954/unnamed ___ Python tracker ___mapp_methods ?  

[issue10516] Add list.clear() and list.copy()

2010-12-05 Thread Eli Bendersky
Eli Bendersky added the comment: Boštjan, "a shallow copy": I took this directly from the documentation of dicts, which says: "D.copy() -> a shallow copy of D") As I mentioned in an earlier message, the doc-strings of list and dict methods are inconsistent in more than one way, so I'm go

[issue10516] Add list.clear() and list.copy()

2010-12-05 Thread Terry J. Reedy
Terry J. Reedy added the comment: Objects/dictobject.c -- ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: http

[issue10516] Add list.clear() and list.copy()

2010-12-05 Thread Mark Dickinson
Changes by Mark Dickinson : Removed file: http://bugs.python.org/file19948/unnamed ___ Python tracker ___ ___ Python-bugs-list mailing list Un

[issue10516] Add list.clear() and list.copy()

2010-12-05 Thread Mark Dickinson
Changes by Mark Dickinson : Removed file: http://bugs.python.org/file19947/unnamed ___ Python tracker ___ ___ Python-bugs-list mailing list Un

[issue10516] Add list.clear() and list.copy()

2010-12-05 Thread Boštjan Mejak
Boštjan Mejak added the comment: Can you please help me find the definition of the copy() method of dict in the Python sources? I want to see how that method is defined and compare the definition to the one in Eli's patch. -- Added file: http://bugs.python.org/file19948/unnamed __

[issue10516] Add list.clear() and list.copy()

2010-12-05 Thread Boštjan Mejak
Boštjan Mejak added the comment: I'm troubled with one little letter: "L.copy() -> list -- a shallow copy of L"); should be "L.copy() -> list -- shallow copy of L"); without the letter 'a', because other sentences also don't say "L.__sizeof__() -- *A* size of L in memory, in bytes"); Plea

[issue10516] Add list.clear() and list.copy()

2010-12-04 Thread Eli Bendersky
Changes by Eli Bendersky : Removed file: http://bugs.python.org/file19943/issue10516.3.patch ___ Python tracker ___ ___ Python-bugs-list maili

[issue10516] Add list.clear() and list.copy()

2010-12-04 Thread Eli Bendersky
Eli Bendersky added the comment: Éric - thanks, it works [attaching updated patch]. However, don't you think the core problem is a Sphinx bug we should report? Raymond - this happens after final 3.2 release (on Feb 05 2011 if it's on schedule), right? -- Added file: http://bugs.pytho

[issue10516] Add list.clear() and list.copy()

2010-12-04 Thread Éric Araujo
Éric Araujo added the comment: Eli, I learned this trick recently: :meth:`!copy`. -- ___ Python tracker ___ ___ Python-bugs-list mail

[issue10516] Add list.clear() and list.copy()

2010-12-04 Thread Raymond Hettinger
Raymond Hettinger added the comment: Nothing will happen on this until 3.2 is done and the py3k branch starts with 3.3 submissions. -- resolution: -> later ___ Python tracker

[issue10516] Add list.clear() and list.copy()

2010-12-04 Thread Eli Bendersky
Changes by Eli Bendersky : Removed file: http://bugs.python.org/file19938/issue10516.2.patch ___ Python tracker ___ ___ Python-bugs-list maili

[issue10516] Add list.clear() and list.copy()

2010-12-04 Thread Eli Bendersky
Changes by Eli Bendersky : Removed file: http://bugs.python.org/file19835/issue10516.1.patch ___ Python tracker ___ ___ Python-bugs-list maili

[issue10516] Add list.clear() and list.copy()

2010-12-04 Thread Eli Bendersky
Eli Bendersky added the comment: Following Éric's suggestion, I'm attaching an updated patch with with the documentation in Doc/library/stdtypes.rst updated with the new methods. There seems to be a slight Sphinx markup problem with this addition. I rewrote note (8) as: :meth:`clear`, :me

[issue10516] Add list.clear() and list.copy()

2010-12-04 Thread Raymond Hettinger
Changes by Raymond Hettinger : -- assignee: -> rhettinger keywords: +easy -patch ___ Python tracker ___ ___ Python-bugs-list mailing

[issue10516] Add list.clear() and list.copy()

2010-12-04 Thread Éric Araujo
Éric Araujo added the comment: Hi Eli, I think the right place is 4.6.4, http://docs.python.org/dev/library/stdtypes#mutable-sequence-types It starts with “List and bytearray objects support additional operations that allow in-place modification of the object”. For methods not supported by by

[issue10516] Add list.clear() and list.copy()

2010-12-04 Thread Eli Bendersky
Eli Bendersky added the comment: Attaching a patch with the following: 1. list.copy() and list.clear() implemented in Objects/listobject.c, with appropriate doc strings (modeled after dict's docstrings) 2. Same methods implemented in collections.UserList 3. Tests added that exercise the method

[issue10516] Add list.clear() and list.copy()

2010-12-04 Thread Boštjan Mejak
Boštjan Mejak added the comment: This is really welcome. It makes Python even more readable. If 'a' is a list object, a[:] is not so obvious at first to a newcomer, but a.copy() is. Also, a.clear() is so perfect and understandable. I wish you could decorate Python versions prior to 3.3 with t

[issue10516] Add list.clear() and list.copy()

2010-12-04 Thread Georg Brandl
Georg Brandl added the comment: Yes, list.copy was also approved IIRC. And it should be a shallow copy, like all other copy methods on builtins. -- ___ Python tracker ___

[issue10516] Add list.clear() and list.copy()

2010-12-04 Thread Eli Bendersky
Eli Bendersky added the comment: Also, where is the *official* place to document list objects and their methods? -- ___ Python tracker ___ __

[issue10516] Add list.clear() and list.copy()

2010-12-04 Thread Eli Bendersky
Eli Bendersky added the comment: Was list.copy() also approved? After all, there are many ways to achieve the same even now: 1. L[:] 2. list(L) 3. import copy and then copy.copy Especially re the last one: list.copy() can be deep or shallow, which one should it be? -- _

[issue10516] Add list.clear() and list.copy()

2010-11-27 Thread Eli Bendersky
Changes by Eli Bendersky : -- Removed message: http://bugs.python.org/msg122522 ___ Python tracker ___ ___ Python-bugs-list mailing li

[issue10516] Add list.clear() and list.copy()

2010-11-27 Thread Eli Bendersky
Changes by Eli Bendersky : Removed file: http://bugs.python.org/file19834/unnamed ___ Python tracker ___ ___ Python-bugs-list mailing list Uns

[issue10516] Add list.clear() and list.copy()

2010-11-27 Thread Eli Bendersky
Eli Bendersky added the comment: Attaching a patch for list.clear(): 1. Implements a new function in Objects/listobject.c named listclear() (to be consistent with the other "method functions") 2. listclear() is registered in list_methods and just calls list_clear(), returning None 3. A docume

[issue10516] Add list.clear() and list.copy()

2010-11-27 Thread Eli Bendersky
Eli Bendersky added the comment: Georg, Thanks. Of course it should be wrapped like the others :-) Xuanji, Yes, I will try to get in something preliminary today. -- ___ Python tracker __

[issue10516] Add list.clear() and list.copy()

2010-11-27 Thread Xuanji Li
Xuanji Li added the comment: That's good if it's so... can you explain why list_clear doesn't guarantee that the list is empty? Why would XDECREF populate the list? I don't quite understand it. eli: are you writing a patch for this? -- ___ Python

[issue10516] Add list.clear() and list.copy()

2010-11-27 Thread Georg Brandl
Georg Brandl added the comment: Yes, list_clear should be called, but no, it cannot be used directly because a method needs a PyObject* return value. So a wrapper method is needed that looks like listappend() does for list.append(). list_copy() will just look like list_slice() with the index

[issue10516] Add list.clear() and list.copy()

2010-11-27 Thread Eli Bendersky
Eli Bendersky added the comment: > > Hi, I'm also looking at listobject.c also... if we want list.clear() to > behave exactly like del list[], we may be able to just call list_ass_slice > on the list. Similarly for list.copy which should behave like a=l[:] > Note that when executed to do 'del l

[issue10516] Add list.clear() and list.copy()

2010-11-27 Thread Xuanji Li
Xuanji Li added the comment: Hi, I'm also looking at listobject.c also... if we want list.clear() to behave exactly like del list[], we may be able to just call list_ass_slice on the list. Similarly for list.copy which should behave like a=l[:] -- nosy: +xuanji __

[issue10516] Add list.clear() and list.copy()

2010-11-27 Thread Eli Bendersky
Eli Bendersky added the comment: Objects/listobject.c has a static function named list_clear used internally. Is it possible to just expose this function as a clear() method? One problem is that it has this strange comment in the end: /* Never fails; the return value can be ignored.

[issue10516] Add list.clear() and list.copy()

2010-11-27 Thread Eli Bendersky
Changes by Eli Bendersky : -- nosy: +eli.bendersky ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.

[issue10516] Add list.clear() and list.copy()

2010-11-24 Thread Éric Araujo
Changes by Éric Araujo : -- nosy: +eric.araujo ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.pyth

[issue10516] Add list.clear() and list.copy()

2010-11-24 Thread Giampaolo Rodola'
Changes by Giampaolo Rodola' : -- nosy: +giampaolo.rodola ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: http:

[issue10516] Add list.clear() and list.copy()

2010-11-23 Thread Raymond Hettinger
Raymond Hettinger added the comment: Guido approved these both in a thread earlier this year. The reasoning for copy() was the same as for clear(), some folks couldn't cope with: b = a[:] -- nosy: +rhettinger title: Add list.clear() -> Add list.clear() and list.copy() ___

[issue10516] Add list.clear()

2010-11-23 Thread Eric Smith
Eric Smith added the comment: Guido's email is archived at: http://mail.python.org/pipermail/python-ideas/2010-November/008732.html -- nosy: +eric.smith ___ Python tracker ___ _

[issue10516] Add list.clear()

2010-11-23 Thread Terry J. Reedy
New submission from Terry J. Reedy : Add list.clear() method with obvious semantics. Pro: 1. parallel to set/dict/defaultdict/deque.clear(), usable in generic mutable collection function; 2. makes it easier to switch between list and other collection class; 3. current alternatives are not as