Kaydet (Commit) a9916b55 authored tarafından Georg Brandl's avatar Georg Brandl

#2353: raise Py3k warning in file.xreadlines().

üst c76ffca2
......@@ -123,6 +123,13 @@ class TestPy3KWarnings(unittest.TestCase):
with catch_warning() as w:
self.assertWarning(buffer('a'), w, expected)
def test_file_xreadlines(self):
expected = ("f.xreadlines() not supported in 3.x, "
"try 'for line in f' instead")
with file(__file__) as f:
with catch_warning() as w:
self.assertWarning(f.xreadlines(), w, expected)
class TestStdlibRemovals(unittest.TestCase):
......
......@@ -12,6 +12,8 @@ What's New in Python 2.6 beta 1?
Core and Builtins
-----------------
- Issue #2353: file.xreadlines() now emits a Py3k warning.
- Issue #2863: generators now have a ``gen.__name__`` attribute that
equals ``gen.gi_code.co_name``, like ``func.__name___`` that equals
``func.func_code.co_name``. The repr() of a generator now also
......
......@@ -1735,6 +1735,15 @@ file_self(PyFileObject *f)
return (PyObject *)f;
}
static PyObject *
file_xreadlines(PyFileObject *f)
{
if (PyErr_WarnPy3k("f.xreadlines() not supported in 3.x, "
"try 'for line in f' instead", 1) < 0)
return NULL;
return file_self(f);
}
static PyObject *
file_exit(PyObject *f, PyObject *args)
{
......@@ -1850,9 +1859,9 @@ static PyMethodDef file_methods[] = {
#endif
{"tell", (PyCFunction)file_tell, METH_NOARGS, tell_doc},
{"readinto", (PyCFunction)file_readinto, METH_VARARGS, readinto_doc},
{"readlines", (PyCFunction)file_readlines,METH_VARARGS, readlines_doc},
{"xreadlines",(PyCFunction)file_self, METH_NOARGS, xreadlines_doc},
{"writelines",(PyCFunction)file_writelines, METH_O, writelines_doc},
{"readlines", (PyCFunction)file_readlines, METH_VARARGS, readlines_doc},
{"xreadlines",(PyCFunction)file_xreadlines, METH_NOARGS, xreadlines_doc},
{"writelines",(PyCFunction)file_writelines, METH_O, writelines_doc},
{"flush", (PyCFunction)file_flush, METH_NOARGS, flush_doc},
{"close", (PyCFunction)file_close, METH_NOARGS, close_doc},
{"isatty", (PyCFunction)file_isatty, METH_NOARGS, isatty_doc},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment