0
0
mirror of https://github.com/python/cpython.git synced 2024-12-01 11:15:56 +01:00
Commit Graph

34 Commits

Author SHA1 Message Date
Barry Warsaw
9f00739551 Added a FutureWarning for constructs that will change semantically in
the future.  Changed PEP 237 hex constant warnings from
DeprecationWarning to FutureWarning.  Updated the documentation.
2002-08-14 15:51:29 +00:00
Mark Hammond
a290527376 Excise DL_IMPORT/EXPORT from object.h, and related files. This patch
also adds 'extern' to PyAPI_DATA rather than at each declaration, as
discussed with Tim and Guido.
2002-07-29 13:42:14 +00:00
Martin v. Löwis
14f8b4cfcb Patch #568124: Add doc string macros. 2002-06-13 20:33:02 +00:00
Neal Norwitz
d68f5171eb As discussed on python-dev, add a mechanism to indicate features
that are in the process of deprecation (PendingDeprecationWarning).
Docs could be improved.
2002-05-29 15:54:55 +00:00
Skip Montanaro
995895f023 add comment reminding people about class hierarchy in Doc/lib/libexcs.tex 2002-03-28 20:57:51 +00:00
Martin v. Löwis
cfeb3b6ab8 Patch #50002: Display line information for bad \x escapes:
- recognize "SyntaxError"s by the print_file_and_line attribute.
- add the syntaxerror attributes to all exceptions in compile.c.
Fixes #221791
2002-03-03 21:30:27 +00:00
Jeremy Hylton
05bd787c6c Use PyOS_snprintf instead of sprintf.
Just being sure.  The old code looks like it was safe, but there's no
harm in double-checking.
2001-11-28 20:24:33 +00:00
Fred Drake
bb9fa21cfe weakref.ReferenceError becomes a built-in exception now that weak ref objects
are moving into the core; with these changes, it will be possible for the
exception to be raised without the weakref module ever being imported.
2001-10-05 21:50:08 +00:00
Guido van Rossum
ae347b33be Introduce OverflowWarning -- to be issued when short int operations
are overflowing and a long int operation is substituted.
2001-08-23 02:56:07 +00:00
Tim Peters
6d6c1a35e0 Merge of descr-branch back into trunk. 2001-08-02 04:15:00 +00:00
Guido van Rossum
59d1d2b434 Iterators phase 1. This comprises:
new slot tp_iter in type object, plus new flag Py_TPFLAGS_HAVE_ITER
new C API PyObject_GetIter(), calls tp_iter
new builtin iter(), with two forms: iter(obj), and iter(function, sentinel)
new internal object types iterobject and calliterobject
new exception StopIteration
new opcodes for "for" loops, GET_ITER and FOR_ITER (also supported by dis.py)
new magic number for .pyc files
new special method for instances: __iter__() returns an iterator
iteration over dictionaries: "for x in dict" iterates over the keys
iteration over files: "for x in file" iterates over lines

TODO:

documentation
test suite
decide whether to use a different way to spell iter(function, sentinal)
decide whether "for key in dict" is a good idea
use iterators in map/filter/reduce, min/max, and elsewhere (in/not in?)
speed tuning (make next() a slot tp_next???)
2001-04-20 19:13:02 +00:00
Guido van Rossum
f68d8e52e7 Make some private symbols static. 2001-04-14 17:55:09 +00:00
Fred Drake
9da7f3b4f4 SyntaxError__init__(): Be a little more robust when picking apart the
location information for the SyntaxError -- do not do more than we
    need to, stopping as soon as an exception has been raised.
2001-02-28 21:52:10 +00:00
Tim Peters
5687ffe0c5 SF patch 404928: Support for next Cygwin gcc (2.95.2-8) 2001-02-28 16:44:18 +00:00
Barry Warsaw
9667ed23c5 Leak pluggin', bug fixin' and better documentin'. Specifically,
module__doc__: Document the Warning subclass heirarchy.

make_class(): Added a "goto finally" so that if populate_methods()
fails, the return status will be -1 (failure) instead of 0 (success).

fini_exceptions(): When decref'ing the static pointers to the
exception classes, clear out their dictionaries too.  This breaks a
cycle from class->dict->method->class and allows the classes with
unbound methods to be reclaimed.  This plugs a large memory leak in a
common Py_Initialize()/dosomething/Py_Finalize() loop.
2001-01-23 16:08:34 +00:00
Guido van Rossum
d0977cd670 Add definitions for standard warning category classes (PyExc_Warning
etc.).
2000-12-15 21:58:29 +00:00
Fred Drake
661ea26b3d Ka-Ping Yee <ping@lfw.org>:
Changes to error messages to increase consistency & clarity.

This (mostly) closes SourceForge patch #101839.
2000-10-24 19:57:45 +00:00
Fred Drake
04e654a63c Remove a couple of warnings turned up by "gcc -Wall". 2000-08-18 19:53:25 +00:00
Barry Warsaw
87bec35d74 SyntaxError__classinit__(): Slight reorg for simplicity. 2000-08-18 05:05:37 +00:00
Barry Warsaw
77c9f50422 SyntaxError__str__(): Fix two memory problems discovered by Insure.
First, the allocated buffer was never freed after using it to create
the PyString object.  Second, it was possible that have_filename would
be false (meaning that filename was not a PyString object), but that
the code would still try to PyString_GET_SIZE() it.
2000-08-16 19:43:17 +00:00
Fred Drake
185a29b08f my_basename(): Removes the leading path components from a path name,
returning a pointer to the start of the file's "base" name;
	similar to os.path.basename().

SyntaxError__str__():  Use my_basename() to keep the length of the
	file name included in the exception message short.
2000-08-15 16:20:36 +00:00
Fred Drake
1aba577093 SyntaxError__str__(): Do more formatting of the exception here, rather
than depending on the site that raises the exception.  If the
	filename and lineno attributes are set on the exception object,
	use them to augment the message displayed.

This is part of what is needed to close SoruceForge bug #110628
(Jitterbug PR#278).
2000-08-15 15:46:16 +00:00
Mark Hammond
557a044f74 Fix the parent of WindowsError - both the comments in this source file, and the previous exceptions.py have WindowsError as a sub-class of OSError. 2000-08-15 00:37:32 +00:00
Thomas Wouters
0452d1f316 Fix two instances of empty argument lists, and fix style
('PyObject** x' -> 'PyObject **x')
2000-07-22 18:45:06 +00:00
Thomas Wouters
7e47402264 Spelling fixes supplied by Rob W. W. Hooft. All these are fixes in either
comments, docstrings or error messages. I fixed two minor things in
test_winreg.py ("didn't" -> "Didn't" and "Didnt" -> "Didn't").

There is a minor style issue involved: Guido seems to have preferred English
grammar (behaviour, honour) in a couple places. This patch changes that to
American, which is the more prominent style in the source. I prefer English
myself, so if English is preferred, I'd be happy to supply a patch myself ;)
2000-07-16 12:04:32 +00:00
Jeremy Hylton
03657cfdb0 replace PyXXX_Length calls with PyXXX_Size calls 2000-07-12 13:05:33 +00:00
Tim Peters
bf26e07049 Worm around MSVC6 error on single string literal > 2Kb. 2000-07-12 04:02:10 +00:00
Fred Drake
85f363990c Create two new exceptions: IndentationError and TabError. These are
used for indentation related errors.  This patch includes Ping's
improvements for indentation-related error messages.

Closes SourceForge patches #100734 and #100856.
2000-07-11 17:53:00 +00:00
Barry Warsaw
b78165566e Exception__str__(): In case 1, be sure to decref the tmp local
variable.  This crushes another memory leak.  Slight rewrite
included.
2000-07-09 22:27:10 +00:00
Barry Warsaw
7dfeb42939 EnvironmentError__init__(): The two case clauses were missing
`break's.  This first missing break caused a memory leak when case 3
fell through case 2 in the following example:

import os
os.chmod('/missing', 0600)
2000-07-09 04:56:25 +00:00
Barry Warsaw
8fcaa92c5f init_exceptions(): Decref `doc' so it doesn't leak. 2000-07-01 04:45:52 +00:00
Jeremy Hylton
4e542a3d99 replace constant 1 with symbolic constant METH_VARARGS
another typo caught by Rob Hooft
2000-06-30 04:59:59 +00:00
Jeremy Hylton
2d15d9d869 mark SyntaxError__str__ as METH_VARARGS 2000-06-20 18:36:26 +00:00
Barry Warsaw
675ac285ae The standard exception classes. Moved here from ../Modules/_exceptions.c 2000-05-26 19:05:16 +00:00