range() should have been registered as a Sequence.
Needs to be backported to 2.6, 2.7, and 3.0.
diff --git a/Lib/_abcoll.py b/Lib/_abcoll.py
index eed8762..c7636ec 100644
--- a/Lib/_abcoll.py
+++ b/Lib/_abcoll.py
@@ -546,6 +546,7 @@
Sequence.register(tuple)
Sequence.register(str)
+Sequence.register(range)
class ByteString(Sequence):
diff --git a/Lib/test/test_collections.py b/Lib/test/test_collections.py
index 1127910..c73d89b 100644
--- a/Lib/test/test_collections.py
+++ b/Lib/test/test_collections.py
@@ -406,6 +406,8 @@
for sample in [tuple, list, bytes, str]:
self.failUnless(isinstance(sample(), Sequence))
self.failUnless(issubclass(sample, Sequence))
+ self.failUnless(isinstance(range(10), Sequence))
+ self.failUnless(issubclass(range, Sequence))
self.failUnless(issubclass(str, Sequence))
self.validate_abstract_methods(Sequence, '__contains__', '__iter__', '__len__',
'__getitem__')