Commit Graph

34124 Commits

Author SHA1 Message Date
Guido van Rossum d410395ea7 Make sure that writing an array instance returns the number of bytes,
not the number of array elements.
2007-04-12 05:44:49 +00:00
Guido van Rossum aa43ed95cd TextIO improvement:
- 25% speed increse in tell();
- f.seek(0, 1) now maps to f.seek(f.tell(), 0) instead of to f.tell().
2007-04-12 05:24:24 +00:00
Georg Brandl 57b39e0916 Bug #1697782: remove all remaining code that uses types.InstanceType. 2007-04-11 19:24:50 +00:00
Guido van Rossum b5ddcfd2a2 Make array().tofile() work with a new I/O object. 2007-04-11 17:08:28 +00:00
Guido van Rossum d0712817ac Re-enable cleanup code. 2007-04-11 16:32:43 +00:00
Guido van Rossum b9c4c3e455 Speed up next() by disabling snapshot updating then. 2007-04-11 16:07:50 +00:00
Guido van Rossum cba608cadb More efficient implementation of tell(); _read_chunk() doesn't have to
call self.buffer.tell().
2007-04-11 14:19:59 +00:00
Guido van Rossum 0dd32e246c Real pickling for bytes.
Restore complex pickling.
Use cPickle in io.py.
2007-04-11 05:40:58 +00:00
Guido van Rossum 0ad0812edb An example of action-at-a-distance: fix the problems I had in test_io.py
without touching io.py or test_io.py.  The cause of the failure was that
bytes objects didn't pickle right.  As a stop-gap measure, I'm providing
bytes pickling via copy_reg.  Eventually, we should use a more efficient
protocol, e.g. __reduce_ex__ or __getstate__/__setstate__.
2007-04-11 04:37:43 +00:00
Guido van Rossum 9b76da6a8f Checkpoint so I can continue to work on this at a different box.
There is somewhat working (but slow) code supporting seek/tell for text files,
but extensive testing exposes a bug I can't nail down.
2007-04-11 01:09:03 +00:00
Guido van Rossum 8742977b33 truncate() returns the new size and position.
write() returns the number of bytes/characters written/buffered.
FileIO.close() calls self.flush().
Implement readinto() for buffered readers.
Tests th check all these.
Test proper behavior of __enter__/__exit__.
2007-04-10 21:06:59 +00:00
Guido van Rossum 34d69e57e3 Skip large file tests on Windowns and OSX.
Reduce large file size to 2**31 (and a bit).
2007-04-10 20:08:41 +00:00
Guido van Rossum 53807dabf0 Implement long positioning (Unix only, probably).
Etc., etc.
2007-04-10 19:01:47 +00:00
Guido van Rossum cce92b27d6 BufferedIOBase and TextIOBase should derive from IOBase, not from RawIOBase! 2007-04-10 14:41:39 +00:00
Guido van Rossum 141f767d46 More cleanup. Renamed BlockingIO to BlockingIOError.
Removed unused _PyFileIO class.
Changed inheritance structure.
TODO: do the same kinds of things to TextIO.
2007-04-10 00:22:16 +00:00
Guido van Rossum ebea9beab3 Bytes should never equal unicode.
Add tests for str <cmpop> bytes.
2007-04-09 00:49:13 +00:00
Guido van Rossum 343e97ff7f For Make Benefit Glorious Nation of Backwards Compatibility,
bytes objects can now be compared to anything that supports the buffer API.
2007-04-09 00:43:24 +00:00
Guido van Rossum 62cbc8a261 Make sure that a forked child process exits even if it raises an exception. 2007-04-09 00:41:25 +00:00
Guido van Rossum 933520b5ba Fix a place where it's pretty clear that a binary open mode was intended.
(The new I/O library revealed the problem.)
2007-04-09 00:00:23 +00:00
Guido van Rossum 4f0db6e4a1 Cleanup.
Add closed attribute.
Support int argument to open() -- wrapping a file descriptor.
For b/w compat, support readline(n).
Support readlines() and readlines(n).
Flush on __del__.
Added some XXX comments.
2007-04-08 23:59:06 +00:00
Guido van Rossum b04281592e Make it possible to instantiate a _FileIO() with an integer file descriptor
instead of a filename.
Add a 'closed' attribute.
2007-04-08 17:44:42 +00:00
Guido van Rossum b8551ae68f Somehow this contained a bogus reference to "exceptions" which caused
"import exceptions" to behave bizarrely.
2007-04-07 03:14:46 +00:00
Guido van Rossum 756aa93763 A class used as an exception should inherit from Exception.
(Should be backported to 2.6, really.)
2007-04-07 03:04:01 +00:00
Guido van Rossum 9be5597abf Add some backwards compatibility stuff.
This now appears to work when io.open is substituted for the real open
in fileinput.py -- at least the latter's unit tests pass.
2007-04-07 02:59:27 +00:00
Guido van Rossum 76c5d4d72d Checkpoint.
Some cleanup of test_io.py and io.py.
Added seeking to buffered reader and writer, but no tests yet.
2007-04-06 19:10:29 +00:00
Guido van Rossum 186685905c Get rid of duplicate definition of BufferedIOBase. 2007-04-06 18:11:47 +00:00
Guido van Rossum 78892e4613 Added a working Text I/O layer, by Mark Russell.
This is essentially a checkpoint.
2007-04-06 17:31:18 +00:00
Fred Drake 0e074483e7 make the markup match that of the trunk to avoid insane spread of
mystery italics
2007-03-29 23:11:24 +00:00
Guido van Rossum 6b18a5bb32 Fix refcounting bug reported by Amaury Forgeot d'Arc. 2007-03-29 20:49:57 +00:00
Collin Winter 42dae6a89b Make readonly members defined in C throw an AttributeError on modification. This brings them into sync with Python-level attributes. Fixes bug #1687163. 2007-03-28 21:44:53 +00:00
Guido van Rossum d84da1b67a More fixes related to removal of exception slicing. 2007-03-28 21:03:48 +00:00
Guido van Rossum 782ff275b8 Fix errors in bsddb3 tests due to removal of exception slicing.
(There was also a segfault but it disappeared when the tests
stopped erroring out; I presume the segfault is a pre-existing
problem somewhere in a destructor.)
2007-03-28 21:02:43 +00:00
Guido van Rossum cef2098cfa Moving xreload to the sandbox for now. 2007-03-28 00:30:15 +00:00
Guido van Rossum e27dc72308 By default, != returns the opposite of ==, unless the latter returns
NotImplemented.

(Is this worth backporting to 2.6?  It seems so useful...!)
2007-03-27 22:37:34 +00:00
Guido van Rossum a4335b1e6b Looks like this file wasn't checked in. 2007-03-27 22:34:34 +00:00
Collin Winter e33761dcaa Fix two bugs related to the remove of exception subscripting. 2007-03-27 04:55:27 +00:00
Collin Winter 3e81ec8c7c Address some XXXs from Neal Norwitz. 2007-03-23 22:46:49 +00:00
Brett Cannon ca477b2280 When removing indexing/slicing on exceptions some places were changed
inappropriately from ``e[0]`` to ``e.message`` instead of ``e.args[0]``.  The
reason it needs to be the last option is the dichotomy of 'message' and 'args':
'message' can be the empty string but args[0] can have a value if more than one
argument was passed.
2007-03-21 22:26:20 +00:00
Guido van Rossum 3a38362592 Fix refleak in compiler.
(A symbol table entry was leaked every time a class was compiled.)
2007-03-21 21:26:58 +00:00
Collin Winter 390d29ca74 Remove isCallable() and sequenceIncludes() from the operator module. 2007-03-21 20:10:51 +00:00
Neal Norwitz 7d71fb8132 Little fixes:
* make some module variables static to prevent name pollution
 * Add some comments to clarify what's going on and some XXXs to address
 * Add a space after "for" before (
 * exc_value and tb can be NULL in some cases
 * Get working on Windows (I think)
2007-03-21 04:45:04 +00:00
Collin Winter 670e692134 Patch #1680961: remove sys.exitfunc and replace it with a private C API. Also, reimplement atexit in C so it can take advantage of this private API. 2007-03-21 02:57:17 +00:00
Collin Winter 450ee81b22 Use the local python binary to build the docs, not whatever 'python' is on the PATH (which is probably Python 2.x, and we need 3.x). 2007-03-21 02:14:12 +00:00
Collin Winter 65d09d4ee9 Run 2to3 over Doc/tools/. 2007-03-21 02:11:39 +00:00
Guido van Rossum 89df245607 Make test_socket_ssl.py pass by fixing some code that was
incorrectly assuming that err.message was the Py3k way of
writing err[0] in 2.x.  The correct spelling is err.args[0].
2007-03-19 22:26:27 +00:00
Guido van Rossum 7cba8508af Use input() now that it is available. 2007-03-19 22:23:59 +00:00
Georg Brandl e66c8c7c12 "from ... import x" should not be a syntax error... make
import_stmt accept ELLIPSes and DOTs.
2007-03-19 18:56:50 +00:00
Guido van Rossum d16e81aabe Fix the compiler package w.r.t. the new metaclass syntax.
(It is still broken w.r.t. the new nonlocal keyword.)

Remove a series of debug prints I accidentally left in test_ast.py.
2007-03-19 17:56:01 +00:00
Georg Brandl 801dd73653 NEWS item for PEP 3115. 2007-03-18 20:18:31 +00:00
Georg Brandl d35e970b58 Refactor astgen.py with 2to3. 2007-03-18 19:52:24 +00:00