summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Another modest speedup in PyObject_GenericGetAttr(): inline the callGuido van Rossum2002-08-191-2/+26
| | | | to _PyType_Lookup().
* Make PyDescr_IsData() a macro. It's too simple to be a function.Guido van Rossum2002-08-192-7/+1
| | | | Should save 4% on slot lookups.
* Check in my ultra-shortlived patch #597220.Michael W. Hudson2002-08-191-3/+3
| | | | | | Move some debugging checks inside Py_DEBUG. They were causing cache misses according to cachegrind.
* Inline call to _PyObject_GetDictPtr() in PyObject_GenericGetAttr().Guido van Rossum2002-08-191-3/+20
| | | | This causes a modest speedup.
* Fix typo in __slots__ of ImmutableSet.Guido van Rossum2002-08-191-1/+1
|
* News about sets. (There's no documentation; if someone wants toGuido van Rossum2002-08-191-0/+7
| | | | convert the doc strings to LaTeX, be my guest.)
* Set classes and their unit tests, from sandbox.Guido van Rossum2002-08-192-0/+1097
|
* Simple but important optimization for descr_check(): instead of theGuido van Rossum2002-08-191-1/+1
| | | | | | | expensive and overly general PyObject_IsInstance(), call PyObject_TypeCheck() which is a macro that often avoids a call, and if it does make a call, calls the much more efficient PyType_IsSubtype(). This saved 6% on a benchmark for slot lookups.
* Fix spelling errors and note the addition of operator.pow()Raymond Hettinger2002-08-191-7/+9
|
* Merged the MacPython thanks list into the general acknowledgements.Jack Jansen2002-08-192-10/+25
| | | | There's really no point in a separate list of thank-you notes.
* Added __pow__(a,b) to the operator module. Completes the pattern ofRaymond Hettinger2002-08-193-0/+23
| | | | | | all operators having a counterpart in the operator module. Closes SF bug #577513.
* SF bug 595919: popenN return only text mode pipesTim Peters2002-08-191-2/+2
| | | | | popen2() and popen3() created text-mode pipes even when binary mode was asked for. This was specific to Windows.
* Add Steve Purcell for unittest.pyRaymond Hettinger2002-08-181-0/+1
|
* Refuse to run if the last bit of the destination path contains a # character.Jack Jansen2002-08-181-1/+4
| | | | | | | | | | | This is a silly workaround for a rather serious bug in MacOSX: if you take a long filename and convert it to an FSSpec the fsspec gets a magic cooky (containing a #, indeed). If you then massage the extension of this fsspec and convert back to a pathname you may end up referring to the same file. This could destroy your sourcefile. The problem only occcurs in MacPython-OS9, not MacPython-OSX (I think). Closes bug #505562.
* Modify splituser() method to allow an @ in the userinfo field.Raymond Hettinger2002-08-181-1/+1
| | | | | | | Jeremy reported that this is not allowed by RFC 2396; however, other tools support unescaped @'s so we should also. Apply SF patch 596581 closing bug 581529.
* OS/2 EMX behaves like Windows where file permissions are concernedAndrew MacIntyre2002-08-181-2/+2
|
* update contact infoAndrew MacIntyre2002-08-181-4/+9
|
* Prep for 2.3:Andrew MacIntyre2002-08-181-34/+39
| | | | | | | | | | | - update DLL version number - add files required for 2.3 (no changes to modules though) - restructure build of pgen.exe NOTE: As I don't have the VACPP compiler, these changes are untested. Apart from slightly re-ordering some file lists, and matching file name casing, I believe these changes are the minimum necessary to build 2.3 with VACPP.
* make port notes currentAndrew MacIntyre2002-08-181-48/+36
|
* Build process updates:Andrew MacIntyre2002-08-181-17/+33
| | | | | | | - the security fixes to tempfile have lead to test_tempfile wanting to create 100 temporary files. as the EMX default is only 40, the number of file handles has been bumped (up to 250). - changes to pgen have required restructuring its build support.
* Get rid of _once(); inlining it takes less code. :-)Guido van Rossum2002-08-172-97/+41
| | | | | | | Also, don't call gettempdir() in the default expression for the 'dir' argument to various functions; use 'dir=None' for the default and insert 'if dir is None: dir = gettemptir()' in the bodies. That way the work done by gettempdir is postponed until needed.
* Patch by Zack W to make test_noinherit() more robust: spawn a PythonGuido van Rossum2002-08-172-28/+48
| | | | | subprocess that does the right checks. This now works on Windows as well.
* Get this to compile again if Py_USING_UNICODE is not defined.Neal Norwitz2002-08-161-1/+1
| | | | com_error() is static in Python/compile.c.
* Drop the number of test files to 100 for all the testsNeal Norwitz2002-08-161-4/+8
|
* Inline fast_cfunction() in new call_function().Jeremy Hylton2002-08-161-55/+33
| | | | | | | | | Also, don't handle METH_OLDARGS on the fast path. All the interesting builtins have been converted to use METH_NOARGS, METH_O, or METH_VARARGS. Result is another 1-2% speedup. If I can cobble together 10 of these, it might make a difference.
* Remove the outdated PLAN.txt file.Guido van Rossum2002-08-161-339/+0
|
* Move body of CALL_FUNCTION opcode into helper function.Jeremy Hylton2002-08-161-54/+56
| | | | | | | This makes the code much easier to ready, because it is at a sane indentation level. On my box this shows a 1-2% speedup, which means nothing, except that I'm not going to worry about the performance effects of the change.
* Squash a few calls to the hideously expensive PyObject_CallObject(o,a)Guido van Rossum2002-08-165-12/+37
| | | | | | | -- replace then with slightly faster PyObject_Call(o,a,NULL). (The difference is that the latter requires a to be a tuple; the former allows other values and wraps them in a tuple if necessary; it involves two more levels of C function calls to accomplish all that.)
* Streamline the fast track for CFunction calls a bit more: there wasGuido van Rossum2002-08-161-5/+2
| | | | | | | nothing special done if keyword arguments were present, so test for that earlier and fall through to the normal case if there are any. This ought to slow down CFunction calls with keyword args, but I don't care; it's a tiny (1%) improvement for pystone.
* Regenerated with PyDoc_STR() around docstrings.Jack Jansen2002-08-1623-2151/+2151
|
* iUse PyDoc_STR() around docstrings.Jack Jansen2002-08-161-1/+1
|
* A nice little speed-up for filter():Guido van Rossum2002-08-161-13/+17
| | | | | | | | | | - Use PyObject_Call() instead of PyEval_CallObject(), saves several layers of calls and checks. - Pre-allocate the argument tuple rather than calling Py_BuildValue() each time round the loop. - For filter(None, seq), avoid an INCREF and a DECREF.
* Fix SF bug 595838 -- buffer in type_new() should not be static. MovedGuido van Rossum2002-08-161-1/+1
| | | | to inner scope, too.
* SF bug 594996: OverflowError in random.randrangeTim Peters2002-08-161-4/+17
| | | | | | Loosened the acceptable 'start' and 'stop' arguments so that any Python (bounded) ints can be used. So, e.g., randrange(-sys.maxint-1, sys.maxint) no longer blows up.
* Newly-relaxed limits on random.randrange(). Also added some info aboutTim Peters2002-08-161-5/+12
| | | | Karatsuba's better cache behavior with extremely large multiplicands.
* Mention warnings about defining None.Guido van Rossum2002-08-161-0/+3
|
* Add warnings for arguments named None. All set. (I could add aGuido van Rossum2002-08-161-1/+9
| | | | | | warning for 'global None', but that's either accompanied by an assignment to None, which will trigger a warning, or not, in which case it's harmless. :-)
* check_events(): This was failing under -O, due to not expecting anyTim Peters2002-08-161-3/+0
| | | | | LINE events when not __debug__. But we get them anyway under -O now, so just stop special-casing non-__debug__ mode.
* Add warning for None used as keyword argument name in function call.Guido van Rossum2002-08-161-0/+1
| | | | | Still to do: function definition arguments (including *None and **None).
* Add warnings for assignment or deletion of variables and attributesGuido van Rossum2002-08-161-0/+27
| | | | | named 'None'. Still to do: function definition parameter lists, and function call keyword arguments.
* Minor cleanup of parsename() and parsestr(): the 'struct compiling *'Guido van Rossum2002-08-161-13/+13
| | | | | | argument should be called 'c', like everywhere else. Renamed a complex variable 'c' to 'z' and moved it inside the only scope where it's used.
* base64.decodestring('') should return '' instead of raising anBarry Warsaw2002-08-152-11/+3
| | | | | exception. The bug fix for SF #430849 wasn't quite right. This closes SF bug #595671. I'll backport this to Python 2.2.
* Fixed the bugs in the constant definitions, and in the code to testJack Jansen2002-08-154-10/+14
| | | | | | them. The FutureWarnings are still there, until a way has been found to say "I know what I'm doing here when I say 0xff000000".
* After generating the Python file with definitions try to run it, soJack Jansen2002-08-1527-0/+54
| | | | we catch errors during the build process in stead of later during runtime.
* Try to cater for a source tree checked out with MacCVS in stead ofJack Jansen2002-08-151-6/+36
| | | | | unix cvs. In this case the resource files are actual resource files in stead of AppleSingle encoded files.
* Illustrating by example one good reason not to trust a proof <wink>.Tim Peters2002-08-151-3/+3
|
* k_mul() comments: In honor of Dijkstra, made the proof that "t3 fits"Tim Peters2002-08-151-34/+37
| | | | | | | rigorous instead of hoping for testing not to turn up counterexamples. Call me heretical, but despite that I'm wholly confident in the proof, and have done it two different ways now, I still put more faith in testing ...
* long_mul(): Simplified exit code. In particular, k_mul() returns aTim Peters2002-08-151-9/+3
| | | | | normalized result, so no point to normalizing it again. The number of test+branches was also excessive.
* This is my patchMichael W. Hudson2002-08-1519-187/+341
| | | | | | | | [ 587993 ] SET_LINENO killer Remove SET_LINENO. Tracing is now supported by inspecting co_lnotab. Many sundry changes to document and adapt to this change.
* Add notes about universal newlines.Guido van Rossum2002-08-151-2/+10
|