Close #18690: register memoryview with Sequence ABC
diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst
index cf989cf..bd275af 100644
--- a/Doc/library/stdtypes.rst
+++ b/Doc/library/stdtypes.rst
@@ -2458,6 +2458,10 @@
    .. versionchanged:: 3.3
       One-dimensional memoryviews with formats 'B', 'b' or 'c' are now hashable.
 
+   .. versionchanged:: 3.4
+      memoryview is now registered automatically with
+      :class:`collections.abc.Sequence`
+
    :class:`memoryview` has several methods:
 
    .. method:: __eq__(exporter)
diff --git a/Lib/collections/abc.py b/Lib/collections/abc.py
index a8681ea..d19e592 100644
--- a/Lib/collections/abc.py
+++ b/Lib/collections/abc.py
@@ -643,6 +643,7 @@
 Sequence.register(tuple)
 Sequence.register(str)
 Sequence.register(range)
+Sequence.register(memoryview)
 
 
 class ByteString(Sequence):
diff --git a/Lib/test/test_collections.py b/Lib/test/test_collections.py
index 706cc9e..6c733ee 100644
--- a/Lib/test/test_collections.py
+++ b/Lib/test/test_collections.py
@@ -782,6 +782,8 @@
             self.assertTrue(issubclass(sample, Sequence))
         self.assertIsInstance(range(10), Sequence)
         self.assertTrue(issubclass(range, Sequence))
+        self.assertIsInstance(memoryview(b""), Sequence)
+        self.assertTrue(issubclass(memoryview, Sequence))
         self.assertTrue(issubclass(str, Sequence))
         self.validate_abstract_methods(Sequence, '__contains__', '__iter__', '__len__',
             '__getitem__')
diff --git a/Misc/NEWS b/Misc/NEWS
index 71de0bb..f7a118c 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -10,6 +10,9 @@
 Core and Builtins
 -----------------
 
+- Issue #18690: memoryview is now automatically registered with
+  collections.abc.Sequence
+
 - Issue #19078: memoryview now correctly supports the reversed builtin
   (Patch by Claudiu Popa)