Good catch, this is a bug IMO and we should fix it in 2.6.1 and 3.0rc3.

Mind filing a bug so we can keep track of it?

--Guido

On Tue, Nov 18, 2008 at 1:01 PM, Dino Viehland <[EMAIL PROTECTED]> wrote:
> I've been implementing bytearray for IronPython and I noticed a couple of 
> spots where the non-mutating methods of bytearray return self.
>
> In 2.6 but not in 3.0 RC2:
>
> x = bytearray(b'abc')
> y = x.replace(b'abc', b'bar', 0)
> id(x) == id(y)
>
> In 2.6 and in 3.0 RC2:
>
> t = bytearray()
> for i in range(256): t.append(i)
>
> x = bytearray(b'')
> y = x.translate(t)
> id(x) == id(y)
>
> Given that bytearray always returns a new instance on all of the other 
> methods shouldn't it return a new instance here as well?  I'm just thinking 
> someone could be planning on mutating the result here and not expecting their 
> original bytearray to be mutated.

-- 
--Guido van Rossum (home page: http://www.python.org/~guido/)
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to