Patch from jbalogh fixes issue #2282 (misnamed seekable() method).
diff --git a/Lib/io.py b/Lib/io.py
index 24bf37b..98843d3 100644
--- a/Lib/io.py
+++ b/Lib/io.py
@@ -1203,7 +1203,7 @@
     # were rendered by the decoder after feeding it those bytes.  We
     # use this to reconstruct intermediate decoder states in tell().
 
-    def _seekable(self):
+    def seekable(self):
         return self._seekable
 
     def flush(self):