Antoine Pitrou
c28e2e53ba
In text I/O, optimize scanning for new lines with 1-byte unicode chars
2011-11-13 03:53:42 +01:00
Antoine Pitrou
c1b0bfdb04
Fix memory leak in io.StringIO
2011-11-12 22:34:28 +01:00
Antoine Pitrou
de20b0b50e
Issue #13149 : Speed up append-only StringIO objects.
...
This is very similar to the "lazy strings" idea.
2011-11-10 21:47:38 +01:00
Martin v. Löwis
767046aab1
Replace {Get,Set,Has}AttrString with *AttrId.
2011-10-14 15:35:36 +02:00
Ross Lagerwall
59142db6d3
Issue #12797 : Added custom opener parameter to builtin open() and FileIO.open().
2011-10-31 20:34:46 +02:00
Martin v. Löwis
bd928fef42
Rename _Py_identifier to _Py_IDENTIFIER.
2011-10-14 10:20:37 +02:00
Nadeem Vawda
72d6a13413
Merge #13159 : Replace FileIO's quadratic-time buffer growth algorithm with a linear-time one.
...
Also fix the bz2 module, which suffered from the same problem.
2011-10-13 13:38:14 +02:00
Nadeem Vawda
d41a98bdd9
Issue #13159 : Replace FileIO's quadratic-time buffer growth algorithm with a linear-time one.
...
Also fix the bz2 module, whose classes used the same algorithm.
2011-10-13 13:34:16 +02:00
Antoine Pitrou
6b4883dec0
PEP 3151 / issue #12555 : reworking the OS and IO exception hierarchy.
2011-10-12 02:54:14 +02:00
Victor Stinner
c5af7730e3
Fix FileIO.readall() (new_buffersize()) for large files
...
Truncate the buffer size to PY_SSIZE_T_MAX.
2011-10-11 23:00:31 +02:00
Victor Stinner
a2a6477ba0
Fix io.FileIO.readall() on Windows 64 bits
...
Use Py_off_t type (64 bits) instead of off_t (32 bits).
2011-10-11 22:45:02 +02:00
Victor Stinner
c4f281eba3
Fix misuse of PyUnicode_GET_SIZE, use PyUnicode_GET_LENGTH instead
2011-10-11 22:11:42 +02:00
Martin v. Löwis
afe55bba33
Add API for static strings, primarily good for identifiers.
...
Thanks to Konrad Schöbel and Jasper Schulz for helping with the mass-editing.
2011-10-09 10:38:36 +02:00
Martin v. Löwis
c47adb04b3
Change PyUnicode_KIND to 1,2,4. Drop _KIND_SIZE and _CHARACTER_SIZE.
2011-10-07 20:55:35 +02:00
Charles-François Natali
42c28cdd1d
Issue #13070 : Fix a crash when a TextIOWrapper caught in a reference cycle
...
would be finalized after the reference to its underlying BufferedRWPair's
writer got cleared by the GC.
2011-10-05 19:53:43 +02:00
Antoine Pitrou
1e44fecc52
Issue #13087 : BufferedReader.seek() now always raises UnsupportedOperation
...
if the underlying raw stream is unseekable, even if the seek could be
satisfied using the internal buffer. Patch by John O'Connor.
2011-10-04 12:26:20 +02:00
Charles-François Natali
b619bb27ed
Issue #13070 : Fix a crash when a TextIOWrapper caught in a reference cycle
...
would be finalized after the reference to its underlying BufferedRWPair's
writer got cleared by the GC.
2011-10-05 19:55:56 +02:00
Victor Stinner
e1335c711c
Fix usage og PyUnicode_READY()
2011-10-04 20:53:03 +02:00
Antoine Pitrou
bf009f0bce
Issue #13087 : BufferedReader.seek() now always raises UnsupportedOperation
...
if the underlying raw stream is unseekable, even if the seek could be
satisfied using the internal buffer. Patch by John OConnor.
2011-10-04 12:28:52 +02:00
Victor Stinner
fe9a861e74
fileio_init() checks for failure on conversion to Py_UNICODE*
2011-09-29 23:19:04 +02:00
Victor Stinner
f7b8cb605d
_io.textio: fix character type, use Py_UCS4 instead of Py_UNICODE
2011-09-29 03:28:17 +02:00
Martin v. Löwis
d63a3b8beb
Implement PEP 393.
2011-09-28 07:41:54 +02:00
Benjamin Peterson
6d8f744730
merge 3.2 ( #1616 )
2011-09-06 07:56:47 -04:00
Benjamin Peterson
f22913b8c3
cast to getter
2011-09-06 07:55:34 -04:00
Benjamin Peterson
9fd5374d4e
merge 3.2 ( #12878 )
2011-09-03 09:32:24 -04:00
Benjamin Peterson
f6f3a35447
add a __dict__ descr for IOBase ( closes #12878 )
2011-09-03 09:26:20 -04:00
Antoine Pitrou
e8bb1a0229
Issue #12213 : Fix a buffering bug with interleaved reads and writes that
...
could appear on BufferedRandom streams.
2011-08-20 14:52:04 +02:00
Antoine Pitrou
e05565ec5a
Issue #12213 : Fix a buffering bug with interleaved reads and writes that
...
could appear on BufferedRandom streams.
2011-08-20 14:39:23 +02:00
Antoine Pitrou
d42c1d09e9
Issue #12591 : Allow io.TextIOWrapper to work with raw IO objects (without
...
a read1() method), and add a *write_through* parameter to
mandate unbuffered writes.
2011-07-23 21:50:21 +02:00
Antoine Pitrou
e96ec68101
Issue #12591 : Allow io.TextIOWrapper to work with raw IO objects (without
...
a read1() method), and add an undocumented *write_through* parameter to
mandate unbuffered writes.
2011-07-23 21:46:35 +02:00
Antoine Pitrou
90ce72dd06
Raise ValueError when attempting to set the _CHUNK_SIZE attribute of a TextIOWrapper to a huge value, not TypeError.
2011-07-13 21:08:56 +02:00
Antoine Pitrou
cb4ae815b5
Raise ValueError when attempting to set the _CHUNK_SIZE attribute of a TextIOWrapper to a huge value, not TypeError.
2011-07-13 21:07:49 +02:00
Victor Stinner
d9fc85db7f
(merge 3.2) Issue #9611 , #9015 : FileIO.read() clamps the length to INT_MAX on Windows.
2011-07-05 11:34:18 +02:00
Victor Stinner
c655a726db
Issue #9611 , #9015 : FileIO.read() clamps the length to INT_MAX on Windows.
2011-07-05 11:31:49 +02:00
Victor Stinner
bc93a116eb
Close #12229 : Remove an unused argument of _bufferedreader_peek_unlocked(),
...
io.BufferedReader._peek_unlocked(). Patch written by John O'Connor.
2011-06-01 00:01:24 +02:00
Victor Stinner
b57f108b03
Issue #12175 : BufferedReader.read(-1) now calls raw.readall() if available.
2011-05-26 00:19:38 +02:00
Victor Stinner
e9d44ccb22
Issue #12175 : FileIO.readall() now only reads the file position and size once.
2011-05-26 00:16:44 +02:00
Victor Stinner
d2780aedce
(Merge 3.2) Issue #12175 : RawIOBase.readall() now returns None if read()
...
returns None.
2011-05-25 22:51:16 +02:00
Victor Stinner
988512cfd7
(Merge 3.1) Issue #12175 : RawIOBase.readall() now returns None if read()
...
returns None.
2011-05-25 22:49:15 +02:00
Victor Stinner
a80987f20d
Issue #12175 : RawIOBase.readall() now returns None if read() returns None.
2011-05-25 22:47:16 +02:00
Victor Stinner
af62c7d3de
(Merge 3.2) Issue #12175 : FileIO.readall() now raises a ValueError instead of
...
an IOError if the file is closed.
2011-05-25 22:13:47 +02:00
Victor Stinner
4767114e77
(Merge 3.1) Issue #12175 : FileIO.readall() now raises a ValueError instead of
...
an IOError if the file is closed.
2011-05-25 22:11:55 +02:00
Victor Stinner
b79f28ccbd
Issue #12175 : FileIO.readall() now raises a ValueError instead of an IOError if
...
the file is closed.
2011-05-25 22:09:03 +02:00
Victor Stinner
fd8211372d
Fast path for IncrementalNewlineDecoder.decode() in io.TextIOWrapper.read(-1)
...
Copy/paste code from textiowrapper_read_chunk().
2011-05-25 22:01:33 +02:00
Antoine Pitrou
b89b31a158
Issue #12062 : Fix a flushing bug when doing a certain type of I/O sequence
...
on a file opened in read+write mode (namely: reading, seeking a bit forward,
writing, then seeking before the previous write but still within buffered
data, and writing again).
2011-05-13 00:25:53 +02:00
Antoine Pitrou
00dd182b8e
Issue #12062 : Fix a flushing bug when doing a certain type of I/O sequence
...
on a file opened in read+write mode (namely: reading, seeking a bit forward,
writing, then seeking before the previous write but still within buffered
data, and writing again).
2011-05-13 00:16:28 +02:00
Antoine Pitrou
7c40489180
Issue #12062 : Fix a flushing bug when doing a certain type of I/O sequence
...
on a file opened in read+write mode (namely: reading, seeking a bit forward,
writing, then seeking before the previous write but still within buffered
data, and writing again).
2011-05-13 00:13:33 +02:00
Antoine Pitrou
4e19e11958
Fix compile error under Windows
2011-05-12 02:07:00 +02:00
Antoine Pitrou
3486a98dcd
Issue #9971 : Write an optimized implementation of BufferedReader.readinto().
...
Patch by John O'Connor.
2011-05-12 01:57:53 +02:00
Victor Stinner
b938bcd211
(merge) Issue #11395 : io.FileIO().write() clamps the data length to 32,767
...
bytes on Windows if the file is a TTY to workaround a Windows bug. The Windows
console returns an error (12: not enough space error) on writing into stdout if
stdout mode is binary and the length is greater than 66,000 bytes (or less,
depending on heap usage).
2011-03-20 23:37:55 +01:00