summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* metaclass(): add tests for metaclasses written in Python: one thatGuido van Rossum2001-08-171-0/+33
| | | | | subclasses type, one that doesn't (the latter isn't fully functional yet).
* type_new(): only defer to the winning metatype if it's different fromGuido van Rossum2001-08-171-8/+12
| | | | | | | | the metatype passed in as an argument. This prevents infinite recursion when a metatype written in Python calls type.__new__() as a "super" call. Also tweaked some comments.
* Stop adding 3 to FD_SETSIZE -- it makes no sense. If it turns out itTim Peters2001-08-161-15/+11
| | | | | actually does <wink>, perhaps an Insure run will catch it. Also removed senseless Windows comment.
* fix_font(): Instead of using a long if/elsif cluster, use a bloodyFred Drake2001-08-161-23/+16
| | | | | dictionary. Added some entries to the dictionary to fix part of SF bug #451556.
* Fix typo reported by Joonas Paalasmaa: dada-->dataFred Drake2001-08-161-1/+1
|
* Re-write the description of the os.spawn*() functions, and cover theFred Drake2001-08-161-17/+51
| | | | | | | whole family instead of just two. This closes SF bug #451630.
* Added a test for module repr truncation when the package name isBarry Warsaw2001-08-161-0/+35
| | | | really long. Closes SF bug #437984.
* classobject.c:instancemethod_descr_get(): when a bound method isGuido van Rossum2001-08-162-1/+6
| | | | | | | assigned to a class variable and then accessed via an instance, it should not be rebound. test_descr.py:methods(): test for the condition above.
* module_repr(): Instead of fixing the maximum buf size to 400,Barry Warsaw2001-08-161-6/+18
| | | | | | | | calculate it on the fly. This way even modules with long package names get an accurate repr instead of a truncated one. The extra malloc/free cost shouldn't be a problem in a repr function. Closes SF bug #437984
* If genpluginprojects is called from fullbuild we set the Python source ↵Jack Jansen2001-08-162-1/+5
| | | | directory to be the same as fullbuild uses (in stead of using the default sys.prefix). This fixes an issue Mark Day raised that you can't use fullbuild with one Python installation to build another one.
* init_sre(): Plug a little leak reported by Insure.Barry Warsaw2001-08-161-2/+5
|
* Link readline module with ncurses in preference to termcap. [Bug ##441580]Andrew M. Kuchling2001-08-161-3/+5
| | | | Remove pointless comment
* [Patch #441691] preprocess() method for Borland C compiler.Andrew M. Kuchling2001-08-161-1/+35
| | | | I have no way of testing this.
* test_descr started breaking in yet another way in the same place.Tim Peters2001-08-161-2/+6
|
* Fix object_repr() to include the module (using the same rules asGuido van Rossum2001-08-161-2/+23
| | | | type_repr() for when to show or not to show it).
* New unit test for the mimetypes module, to avoid future regressions.Fred Drake2001-08-161-0/+42
|
* Another egregious error that copied the encodings info over the suffixFred Drake2001-08-161-1/+1
| | | | info. Caught by the tests that I'm writing now.
* Use (c)StringIO for collecting bytes. Fixes bug #451622.Martin v. Löwis2001-08-161-8/+12
|
* Repair some accidents causing Windows failures:Tim Peters2001-08-162-5/+5
| | | | | | | + test_compare. While None compares less than anything else, it's not always the case that None has the smallest id(). + test_descr. The output of %p (pointer) formats varies across platforms. In particular, on Windows it doesn't produce a leading "0x".
* Fixed a couple of minor formatting nits where lines were > 79 columns wide.Barry Warsaw2001-08-161-2/+4
|
* select_select(): Closing bug #448351 the easy way, i.e. by changingBarry Warsaw2001-08-161-8/+21
| | | | | | | | | | the "#ifdef MS_WINDOWS" to "#ifdef SELECT_USES_HEAP" and by setting SELECT_USES_HEAP when FD_SETSIZE > 1024. The indirection seems useful since this subtly changes the path that "normal" Windows programs take (where Timmie sez FD_SETSIZE = 512). If that's a problem for Windows, he has only one place to change.
* Bad bug: the MimeTypes.readfp() was supposed to take a file object as aFred Drake2001-08-161-2/+2
| | | | | | | | parameter, but did not. This was found because it can create failures elsewhere based on the presence of mime.types files in some common locations the module searches by default. (I will be writing a test for this module shortly!)
* I should add that the previous checkin also added a slightGuido van Rossum2001-08-160-0/+0
| | | | | | | | | | optimization for dynamic classes. If __getattr__ is not found as an attribute on the type, slot_tp_getattro replaces itself with PyObject_GenericGetAttr. This means you can't add a __getattr__ method to a class after the fact -- but you can still *change* a __getattr__ method into a different one. (A similar restriction exists for classic classes.)
* Long time overdue: change sys.path defaults so that people willJust van Rossum2001-08-161-1/+1
| | | | have to do "from PIL import Image" instead of "import Image".
* Use METH_O where possible (two functions). This does not lead to realFred Drake2001-08-161-29/+24
| | | | | performance changes since the affected functions are not expected to be used frequently, but reduces the volume of code.
* Updated to the current state of things (long overdue).Jack Jansen2001-08-161-91/+61
|
* Removed expat from the access paths, it isn't needed.Jack Jansen2001-08-161-0/+0
|
* [Patch #444854 from twburton]Andrew M. Kuchling2001-08-161-1/+4
| | | | Add executable extension, needed to get the program name right on Win32
* [Patch #442530 from twburton]Andrew M. Kuchling2001-08-161-4/+4
| | | | | Provide include_dirs argument to all calls to ._preprocess and ._compile Fix typo: pattern.search(pattern) should be pattern.search(line)
* Patch #427190: Implement and use METH_NOARGS and METH_O.Martin v. Löwis2001-08-1617-552/+430
|
* Fix SF bug #442501: calculate __module__ properly.Guido van Rossum2001-08-161-5/+71
| | | | | | | | | | | | | | | | - type_module(), type_name(): if tp_name contains one or more period, the part before the last period is __module__, the part after that is __name__. Otherwise, for non-heap types, __module__ is "__builtin__". For heap types, __module__ is looked up in tp_defined. - type_new(): heap types have their __module__ set from globals().__name__; a pre-existing __module__ in their dict is not overridden. This is not inherited. - type_repr(): if __module__ exists and is not "__builtin__", it is included in the string representation (just as it already is for classes). For example <type '__main__.C'>.
* Change the type names to xxsublist.<name>.Guido van Rossum2001-08-161-2/+2
|
* The change of type(None).__name__ from 'None' to 'NoneType' broke thisGuido van Rossum2001-08-162-4/+4
| | | | test in a trivial way. Fixed.
* Subtle change to make None.__class__ work:Guido van Rossum2001-08-162-4/+2
| | | | | | | | | - descrobject.c:descr_check(): only believe None means the same as NULL if the type given is None's type. - typeobject.c:wrap_descr_get(): don't "conventiently" default an absent type to the type of the object argument. Let the called function figure it out.
* Oops. Two fixes for SF bug #422004 are not needed. :-)Guido van Rossum2001-08-161-1/+0
|
* Bunchathings:Guido van Rossum2001-08-161-5/+6
| | | | | | | | | | | - initsigs(): Ignore SIGXFZ so writing files beyond the file system size limit won't kill us. - Py_Initialize(): call _Py_ReadyTypes() instead of readying types here. - Py_Initialize(): call _PyImport_FixupExtension() for module "extensions". (SF bug #422004.)
* Add a function _Py_ReadyTypes() which initializes various and sundryGuido van Rossum2001-08-161-4/+21
| | | | | | | | | types -- currently Type, List, None and NotImplemented. To be called from Py_Initialize() instead of accumulating calls there. Also rename type(None) to NoneType and type(NotImplemented) to NotImplementedType -- naming the type identical to the object was confusing.
* Update to MvL's patch #424475 to avoid returning 2 when tp_compareGuido van Rossum2001-08-161-2/+5
| | | | | | returns that. (This fix is also by MvL; checkin it in because I want to make more changes here. I'm still not 100% satisfied -- see comments attached to the patch.)
* No change, just wanted to record more info in the log: after the lastTim Peters2001-08-160-0/+0
| | | | | | | | | checkin, the Wise uninstaller *will* delete the Python DLL from the system directory, but if and only if there wasn't a same-named Python DLL already in the system directory at the time the installer ran. That (no same-named DLL) should be the typical case for most most people (I'm different because I've run perhaps hundreds of 2.2 installs over the last several weeks). IOW, the change was worth making.
* Wise uninstallers never delete the Python DLL from the system directory.Tim Peters2001-08-161-0/+9
| | | | | They should. Added a line that's supposed to fix that -- it doesn't actually work on my box, but checking it in anyway.
* Add tests for overridable operators that have default interpretationsGuido van Rossum2001-08-151-0/+127
| | | | | (__hash__ etc.), in static and dynamic classes, overridden and default.
* - Another big step in the right direction. All the overridableGuido van Rossum2001-08-151-47/+226
| | | | | | | | | | | | | | | | | | | | operators for which a default implementation exist now work, both in dynamic classes and in static classes, overridden or not. This affects __repr__, __str__, __hash__, __contains__, __nonzero__, __cmp__, and the rich comparisons (__lt__ etc.). For dynamic classes, this meant copying a lot of code from classobject! (XXX There are still some holes, because the comparison code in object.c uses PyInstance_Check(), meaning new-style classes don't get the same dispensation. This needs more thinking.) - Add object.__hash__, object.__repr__, object.__str__. The __str__ dispatcher now calls the __repr__ dispatcher, as it should. - For static classes, the tp_compare, tp_richcompare and tp_hash slots are now inherited together, or not at all. (XXX I fear there are still some situations where you can inherit __hash__ when you shouldn't, but mostly it's OK now, and I think there's no way we can get that 100% right.)
* Rewrote Jack's latest change so it does what it intended to do...Just van Rossum2001-08-151-4/+8
|
* Given a class without __cmp__ or __eq__, cmp() of two instances ofGuido van Rossum2001-08-151-0/+8
| | | | | | that class should compare the id() of those instances. Add a test that verifies this. This test currently fails; I believe this is caused by object.c:2.132 (Patch #424475 by loewis).
* A large contribution from Dave Kuhlman describing what each of the slotsFred Drake2001-08-151-6/+385
| | | | | | | | | in the type object is used for, for many of the more commonly used slots. Thanks! (But there is still a lot more to write on this topic.) Markup and organizational changes by your friendly neighborhood documentation czar.
* Dave Kuhlman has contributed a nice improvement to the "Defining New Types"Fred Drake2001-08-151-0/+1
| | | | section of the Extending & Embedding manual -- thanks!
* Remove spurious space before a period.Fred Drake2001-08-151-1/+1
|
* Added comments before recently added/assigned slots in the type object,Fred Drake2001-08-151-0/+6
| | | | | so the backward compatibility issues will be easier to understand. I only added comments indicating additions and assignments back to Python 2.0.
* Add 'state' as a get/set attribute to spamlist. This serves as anGuido van Rossum2001-08-151-1/+12
| | | | example.
* Add 'state' as a read-only attribute to spamdict. This serves as anGuido van Rossum2001-08-151-1/+7
| | | | example.