summaryrefslogtreecommitdiffstats
path: root/Python
Commit message (Collapse)AuthorAgeFilesLines
* Style guide & consistency changes. No semantic changes.Tim Peters2004-10-092-29/+41
|
* Trim trailing whitespace.Tim Peters2004-10-091-8/+8
|
* SF patch #1035498: -m option to run a module as a scriptRaymond Hettinger2004-10-071-0/+16
| | | | (Contributed by Nick Coghlan.)
* Finalize the freelist of list objects.Raymond Hettinger2004-10-071-0/+1
|
* Print verbose messages to stderr. Fixes #1036752.Martin v. Löwis2004-10-031-1/+2
|
* Improve error message for augmented assignments to genexps or listcomps.Raymond Hettinger2004-09-291-2/+2
| | | | | Rather than introduce new logic, took the approach of making the message itself more general.
* Fix two erroneous error messages.Raymond Hettinger2004-09-291-2/+2
|
* Replaced a test with an assertion.Raymond Hettinger2004-09-281-3/+1
| | | | (Suggested by Michael Hudson.)
* Fix for SF bug #1029475 : reload() doesn't work with PEP 302 loaders.Phillip J. Eby2004-09-231-4/+10
|
* SF patch #1031667: Fold tuples of constants into a single constantRaymond Hettinger2004-09-222-12/+93
| | | | | | | | Example: >>> import dis >>> dis.dis(compile('1,2,3', '', 'eval')) 0 0 LOAD_CONST 3 ((1, 2, 3)) 3 RETURN_VALUE
* SF bug #1014215: Unspecific errors with metaclassRaymond Hettinger2004-09-161-4/+16
| | | | | | | | | | | | | | High level error message was stomping useful detailed messages from lower level routines. The new approach is to augment string error messages returned by the low level routines. The provides both high and low level information. If the exception value is not a string, no changes are made. To see the improved messages in action, type: import random class R(random): pass class B(bool): pass
* SF patch #1007189, multi-line imports, for instance:Anthony Baxter2004-08-313-826/+897
| | | | | "from blah import (foo, bar baz, bongo)"
* Centralize WITH_TSC processing.Martin v. Löwis2004-08-291-37/+3
|
* Bypass peepholing of code with lineno tables having intervals >= 255.Raymond Hettinger2004-08-251-4/+8
| | | | | | | | Allows the lineno fixup code to remain simple and not have to deal with multibyte codings. * Add an assertion to that effect. * Remove the XXX comment on the subject.
* Fix typo in comment and add clarification.Raymond Hettinger2004-08-251-1/+2
|
* Patch #1015021: Stop claiming that coerce can return None.Martin v. Löwis2004-08-251-4/+4
| | | | Will backport to 2.3.
* Simplify chains of conditional jumps.Raymond Hettinger2004-08-251-2/+25
| | | | (Suggested by Neal Norwitz.)
* Stop producing or using OverflowWarning. PEP 237 thought this wouldTim Peters2004-08-251-1/+3
| | | | | | | happen in 2.3, but nobody noticed it still was getting generated (the warning was disabled by default). OverflowWarning and PyExc_OverflowWarning should be removed for 2.5, and left notes all over saying so.
* Incorporate review comments courtesy of Neal Norwitz:Raymond Hettinger2004-08-241-6/+8
| | | | | | | | | * Perform the code length check earlier. * Eliminate the extra PyMem_Free() upon hitting an EXTENDED_ARG. * Assert that the NOP count used in jump retargeting matches the NOPs eliminated in the final step. * Add an XXX note to indicate that more work is being to done to handle linenotab with intervals > 255.
* SF Patch #1013667: Cleanup Peepholer OutputRaymond Hettinger2004-08-232-36/+102
| | | | | | | | | * Make a pass to eliminate NOPs. Produce code that is more readable, more compact, and a tiny bit faster. Makes the peepholer more flexible in the scope of allowable transformations. * With Guido's okay, bumped up the magic number so that this patch gets widely exercised before the alpha goes out.
* Patch #900727: Add Py_InitializeEx to allow embedding without signals.Martin v. Löwis2004-08-191-2/+10
|
* Move the bytecode optimizer upstream so that its results are saved in pycRaymond Hettinger2004-08-181-3/+6
| | | | | | | | | | | | | | files and not re-optimized upon import. Saves a bit of startup time while still remaining decoupled from the rest of the compiler. As a side benefit, handcoded bytecode is not run through the optimizer when new code objects are created. Hopefully, a handcoder has already created exactly what they want to have run. (Idea suggested by Armin Rigo and Michael Hudson. Initially avoided because of worries about compiler coupling; however, only the nexus point needed to be moved so there won't be a conflict when the AST branch is loaded.)
* This is Mark Russell's patch:Michael W. Hudson2004-08-172-37/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ 1009560 ] Fix @decorator evaluation order From the description: Changes in this patch: - Change Grammar/Grammar to require newlines between adjacent decorators. - Fix order of evaluation of decorators in the C (compile.c) and python (Lib/compiler/pycodegen.py) compilers - Add better order of evaluation check to test_decorators.py (test_eval_order) - Update the decorator documentation in the reference manual (improve description of evaluation order and update syntax description) and the comment: Used Brett's evaluation order (see http://mail.python.org/pipermail/python-dev/2004-August/047835.html) (I'm checking this in for Anthony who was having problems getting SF to talk to him)
* The attached patch fixes FTBFS on GNU/k*BSD. The problem happens on GNU/k*BSDMatthias Klose2004-08-161-0/+10
| | | | | | | | | | because GNU/k*BSD uses gnu pth to provide pthreads, but will also happen on any system that does the same. python fails to build because it doesn't detect gnu pth in pthread emulation. See C comments in patch for details. patch taken from http://bugs.debian.org/264315
* Correct the order of application for decorators. Meant to be bottom-up and notBrett Cannon2004-08-151-1/+4
| | | | top-down. Now matches the PEP.
* Fix incorrect comment for (struct compiling)->c_cellvarsBrett Cannon2004-08-151-1/+1
|
* This is my patch:Michael W. Hudson2004-08-122-2/+34
| | | | | | [ 1005891 ] support --with-tsc on PPC plus a trivial change to settscdump's docstring and a Misc/NEWS entry.
* code_new(): Wouldn't compile on Windows, because of gcc'ism.Tim Peters2004-08-121-1/+1
|
* Fix bugMichael W. Hudson2004-08-121-27/+88
| | | | | | | | | | [ 1005248 ] new.code() not cleanly checking its arguments using the result of new.code() can still destroy the sun, but merely calling the function shouldn't any more. I also rewrote the existing tests of new.code() to use vastly less un-bogus arguments, and added tests for the previous insane behaviours.
* Patch #1005468: Disambiguate "min() or max()" exception string.Martin v. Löwis2004-08-121-3/+4
|
* This was quite a dark bug in my recent in-place string concatenationArmin Rigo2004-08-071-1/+1
| | | | | | hack: it would resize *interned* strings in-place! This occurred because their reference counts do not have their expected value -- stringobject.c hacks them. Mea culpa.
* Subclasses of string can no longer be interned. The semantics ofJeremy Hylton2004-08-071-0/+5
| | | | | | | | | | | interning were not clear here -- a subclass could be mutable, for example -- and had bugs. Explicitly interning a subclass of string via intern() will raise a TypeError. Internal operations that attempt to intern a string subclass will have no effect. Added a few tests to test_builtin that includes the old buggy code and verifies that calls like PyObject_SetAttr() don't fail. Perhaps these tests should have gone in test_string.
* FixMichael W. Hudson2004-08-071-9/+7
| | | | | | | | | [ 991812 ] PyArg_ParseTuple can miss errors with warnings as exceptions as suggested in the report. This is definitely a 2.3 candidate (as are most of the checkins I've made in the last month...)
* SF bug #1004088: big code objects (>64K) may be optimized incorrectlyRaymond Hettinger2004-08-061-0/+5
| | | | Will backport.
* SF patch #980695: efficient string concatenationRaymond Hettinger2004-08-061-2/+91
| | | | (Original patch by Armin Rigo).
* Revert 2.312; turns out interning the file name did do some good (reducingMichael W. Hudson2004-08-041-1/+1
| | | | .pyc size) after all.
* Don't intern the filename of a file being compiled.Michael W. Hudson2004-08-031-1/+1
| | | | | Hard to believe it ever helped anything, and it hurts finding reference leaks.
* Fix for the unfortunate fact that PyDict_GetItem and PyObject_GetItemMichael W. Hudson2004-08-021-2/+4
| | | | | | | have differing refcount semantics. If anyone sees a prettier way to acheive the same ends, then please go for it. I think this is the first time I've ever used Py_XINCREF.
* for some reason, the lack of adherence to Python's C whitespace rulesMichael W. Hudson2004-08-021-2/+2
| | | | must have annoyed me at some point.
* fix for @decorators under a debug build.Anthony Baxter2004-08-021-0/+1
|
* Completed the patch for Bug #215126.Raymond Hettinger2004-08-022-5/+9
| | | | | | | * Fixes an incorrect variable in a PyDict_CheckExact. * Allow general mapping locals arguments for the execfile() function and exec statement. * Add tests.
* PEP-0318, @decorator-style. In Guido's words:Anthony Baxter2004-08-022-1099/+1252
| | | | | "@ seems the syntax that everybody can hate equally" Implementation by Mark Russell, from SF #979728.
* PyImport_ExecCodeModuleEx(): remove module from sys.modules in error cases.Tim Peters2004-08-021-16/+46
| | | | | | | | PyImport_ReloadModule(): restore the module to sys.modules in error cases. load_package(): semantic-neutral refactoring from an earlier stab at this patch; giving it a common error exit made the code easier to follow, so retaining that part. _RemoveModule(): new little utility to delete a key from sys.modules.
* lock_held() docs: Use True/False instead of 1/0. The LaTeX docs wereTim Peters2004-08-011-3/+3
| | | | already correct, so not changed here.
* Trimmed trailing whitespace.Tim Peters2004-08-011-2/+2
|
* Patch #984714: Properly diagnose E_DECODE errors.Martin v. Löwis2004-07-211-0/+3
| | | | Backported to 2.3.
* Check the type of values returned by __int__, __float__, __long__,Neil Schemenauer2004-07-191-2/+20
| | | | | | __oct__, and __hex__. Raise TypeError if an invalid type is returned. Note that PyNumber_Int and PyNumber_Long can still return ints or longs. Fixes SF bug #966618.
* Upgrade None assignment SyntaxWarning to a SyntaxError.Raymond Hettinger2004-07-171-7/+6
|
* optimize_code(): Repaired gross error in new special-casing for None.Tim Peters2004-07-171-1/+2
| | | | | | The preceding case statement was missing a terminating "break" stmt, so fell into the new code by mistake. This caused uncaught out-of-bounds accesses to the "names" tuple, leading to a variety of insane behaviors.
* Treat None as a constant.Raymond Hettinger2004-07-161-4/+20
|