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