Ok, so it's not an accepted situation. Thanks for the swift reply.

I logged a bug as we should come back to it after the buffer work is done, rather than tangle with it now. I'll continue with the buffer API changes within the BMP limitations noted. We could pull in more of the relevant 2.7 tests (or even bits of Py3k) avoiding those things that are just artefacts of the implementation differences.

Jeff Allen
On 27/10/2013 03:00, Jim Baker wrote:

On Sat, Oct 26, 2013 at 12:06 PM, Jeff Allen <ja.py@farowl.co.uk> wrote:

As I work on the buffer interface, I make various incidental
improvements, but it would be wrong to tackle this one as an
'incidental'. Should I however attempt to trap non-BMP strings (e.g.
assert(s.isBasicPlane())? Or just continue quietly get it wrong, as in
the following current behaviour:
 >>> s = u"\U00010000a"
 >>> len(s)
2            # good
 >>> s[1]
u'a'        # good
 >>> s.index('a')
2            # oops

That's a bug in the index method! So please fix as you have a chance.

- Jim