summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Don't leave bare newlines in long strings -- VC doesn't like that.Guido van Rossum2001-10-181-3/+3
|
* add structseq.c to projectGuido van Rossum2001-10-181-0/+15
|
* SF Patch (but with no patch) 472555 Remove trailing common in enumeration.Tim Peters2001-10-181-1/+1
| | | | | Some AIX compiler didn't like the trailing comma at the end of the why_code enum decl.
* Missing file structseq.c for SF patch #462296Guido van Rossum2001-10-181-0/+284
|
* SF patch #462296: Add attributes to os.stat results; by Nick Mathewson.Guido van Rossum2001-10-1811-240/+814
| | | | | | | | | | | | | | | | | This is a big one, touching lots of files. Some of the platforms aren't tested yet. Briefly, this changes the return value of the os/posix functions stat(), fstat(), statvfs(), fstatvfs(), and the time functions localtime(), gmtime(), and strptime() from tuples into pseudo-sequences. When accessed as a sequence, they behave exactly as before. But they also have attributes like st_mtime or tm_year. The stat return value, moreover, has a few platform-specific attributes that are not available through the sequence interface (because everybody expects the sequence to have a fixed length, these couldn't be added there). If your platform's struct stat doesn't define st_blksize, st_blocks or st_rdev, they won't be accessible from Python either. (Still missing is a documentation update.)
* SF bug [#472347] pydoc and properties.Tim Peters2001-10-182-3/+35
| | | | | | | | | | | | | | | The GUI-mode code to display properties blew up if the property functions (get, set, etc) weren't simply methods (or functions). "The problem" here is really that the generic document() method dispatches to one of .doc{routine, class, module, other}(), but all of those require a different(!) number of arguments. Thus document isn't general-purpose at all: you have to know exactly what kind of thing is it you're going to document first, in order to pass the correct number of arguments to .document for it to pass on. As an expedient hack, just tacked "*ignored" on to the end of the formal argument lists for the .docXXX routines so that .document's caller doesn't have to know in advance which path .document is going to take.
* Shut up warnings for setgroups() on Linux -- you have to #includeGuido van Rossum2001-10-184-10/+18
| | | | <grp.h> it seems. This requires yet another configure test.
* Some minor clarifications for find()'s arguments based on SF bugBarry Warsaw2001-10-181-5/+6
| | | | #463572. Closing.
* Do not expect line number events when running under "python -O".Fred Drake2001-10-181-0/+3
| | | | | The right fix is to generate line number events anyway ;-), but this will have to do for now.
* SRE bug #441409:Fredrik Lundh2001-10-183-4/+16
| | | | | | | | compile should raise error for non-strings SRE bug #432570, 448951: reset group after failed match also bumped version number to 2.2.0
* Add a test for calling a weakref proxy with a dictionary of keyword args.Fred Drake2001-10-181-0/+3
|
* Remove an unnecessary check for NULL.Fred Drake2001-10-181-4/+3
|
* Note stricter tp_compare return value requirements.Guido van Rossum2001-10-181-0/+6
|
* Part 2/2 of SF patch #416704: More robust freeze, by Toby Dickenson.Guido van Rossum2001-10-183-11/+59
| | | | | | | | | | | | | (With slight cosmetic improvements to shorten lines and a grammar fix to a docstring.) This addes -X and -E options to freeze. From the docstring: -X module Like -x, except the module can never be imported by the frozen binary. -E: Freeze will fail if any modules can't be found (that were not excluded using -x or -X).
* Straighten out the exec*() function descriptions a bit, and clarify a fewFred Drake2001-10-181-65/+68
| | | | points in the spawn*() description.
* Squash compiler wng about signed/unsigned mismatch.Tim Peters2001-10-181-1/+1
|
* First part of SF patch #416704: More robust freeze, by Toby Dickenson.Guido van Rossum2001-10-181-5/+23
| | | | | | | This fixes the behavior reported by SF bug #404545, where a file x.y.py could be imported by the statement "import x.y" when there's a frozen package x (I believe even if x.y also exists as a frozen module).
* Fix the frozen bytecode for __hello__ (betcha didn't know that existedGuido van Rossum2001-10-184-5/+43
| | | | | | | | | | :-). Add a test that prevents the __hello__ bytecode from going stale unnoticed again. The test also tests the loophole noted in SF bug #404545. This test will fail right now; I'll check in the fix in a minute.
* Bump version number.Fred Drake2001-10-181-4/+3
| | | | Remove inconsistent use of HTMLDIR.
* Bump release information.Fred Drake2001-10-181-2/+2
|
* Add a note about changes related to the weak reference objects.Fred Drake2001-10-181-0/+4
|
* Make sure we do not core dump when using proxies with the binary slotFred Drake2001-10-181-0/+8
| | | | handlers. This was fixed in Objects/weakrefobject.c 1.2.
* When weakref proxies are involved in binary & ternary slot operations,Fred Drake2001-10-181-15/+28
| | | | | | | | | | | the left-hand operand may not be the proxy in all cases. If it isn't, we end up doing two things: a) unwrapping something that isn't a PyWeakReference (later resulting in a core dump) and b) passing a proxy as the right-hand operand anyway, even though that can't be handled by the actual handler (maybe eventually causing a core dump). This is fixed by always unwrapping all the proxies involved before passing anything to the actual handler.
* SF bug #471720: ThreadingMixIn/TCPServer forgets closeGuido van Rossum2001-10-183-1/+10
| | | | | Solved with a helper method that calls finish_request() and then close_request(). The code is by Max Neunhöffer.
* Reindent __repr__.Martin v. Löwis2001-10-181-11/+11
|
* Add test for local assigned to only in a nested list compJeremy Hylton2001-10-182-0/+19
|
* Fix for SF bug [ #471928 ] global made w/nested list comprehensionsJeremy Hylton2001-10-181-19/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The symbol table pass didn't have an explicit case for the list_iter node which is used only for a nested list comprehension. As a result, the target of the list comprehension was treated as a use instead of an assignment. Fix is to add a case to symtable_node() to handle list_iter. Also, rework and document a couple of the subtler implementation issues in the symbol table pass. The symtable_node() switch statement depends on falling through the last several cases, in order to handle some of the more complicated nodes like atom. Add a comment explaining the behavior before the first fall through case. Add a comment /* fall through */ at the end of case so that it is explicitly marked as such. Move the for_stmt case out of the fall through logic, which simplifies both for_stmt and default. (The default used the local variable start to skip the first three nodes of a for_stmt when it fell through.) Rename the flag argument to symtable_assign() to def_flag and add a comment explaining its use: The third argument to symatble_assign() is a flag to be passed to symtable_add_def() if it is eventually called. The flag is useful to specify the particular type of assignment that should be recorded, e.g. an assignment caused by import.
* Fix SF bug #472234: type(obj) calls type->tp_init (Roeland Rengelink)Guido van Rossum2001-10-183-0/+20
| | | | | The fix is a band-aid: type_call() now makes the same exception for a single-argument call to type() as type_new() was already making.
* Use CXX in LINKCC if CXX is used to build main() and the system requiresMartin v. Löwis2001-10-182-367/+399
| | | | to link a C++ main using the C++ compiler. Fixes #472007.
* Fix typo reported by Michael Soulier.Fred Drake2001-10-181-1/+1
|
* Bump Windows build # for 2.2b1.Tim Peters2001-10-182-2/+4
|
* Function descriptions must end as well as start!Fred Drake2001-10-181-0/+1
|
* Elaborate on types and meaning of the setgroups arguments.Martin v. Löwis2001-10-181-2/+4
|
* Patch to bug #472202: Correctly recognize NetBSD before 199712.Martin v. Löwis2001-10-181-2/+5
|
* Patch #470744: Simplify __repr__ error handling.Martin v. Löwis2001-10-181-16/+4
|
* Expose setgroups. Fixes feature request #468116.Martin v. Löwis2001-10-186-4/+62
|
* Fix error checking done by abstract_issubclass and abstract_isinstance.Neil Schemenauer2001-10-181-44/+61
| | | | | | isinstance() now allows any object as the first argument and a class, a type or something with a __bases__ tuple attribute for the second argument. This closes SF patch #464992.
* Add trivial test cases for RAND_add() and RAND_status().Jeremy Hylton2001-10-181-1/+15
| | | | (The rest of the test cases are trivial, so I don't feel too bad.)
* Expose three OpenSSL API calls for dealing with the PRNG.Jeremy Hylton2001-10-181-0/+67
| | | | | | | | | | | | | | | | | Quoth the OpenSSL RAND_add man page: OpenSSL makes sure that the PRNG state is unique for each thread. On systems that provide /dev/urandom, the randomness device is used to seed the PRNG transparently. However, on all other systems, the application is responsible for seeding the PRNG by calling RAND_add(), RAND_egd(3) or RAND_load_file(3). I decided to expose RAND_add() because it's general and RAND_egd() because it's a useful special case. RAND_load_file() didn't seem to offer much over RAND_add(), so I skipped it. Also supplied RAND_status() which returns true if the PRNG is seeded and false if not.
* test for int and long int overflow (allows operation on 64-bit platforms)Skip Montanaro2001-10-171-2/+11
| | | | closes patch 470254
* Two merges from the mimelib project:Barry Warsaw2001-10-171-0/+34
| | | | | | | | | test_no_semis_header_splitter(): This actually should still split. test_no_split_long_header(): An example of an unsplittable line. test_no_semis_header_splitter(): Test for SF bug # 471918, Generator splitting long headers.
* Two merges from the mimelib project:Barry Warsaw2001-10-171-4/+35
| | | | | | | | _split_header(): Split on folding whitespace if the attempt to split on semi-colons failed. _split_header(): Patch by Matthew Cowles for fixing SF bug # 471918, Generator splitting long headers.
* Protect references to tp_descr_get and tp_dict with the appropriate test:Guido van Rossum2001-10-171-9/+14
| | | | PyType_HasFeature(t, Py_TPFLAGS_HAVE_CLASS).
* Oops. Catching OverflowError from int() doesn't help, since it raisesGuido van Rossum2001-10-171-2/+2
| | | | ValueError on too-large inputs.
* Remove a bunch of stuff that's no longer needed now that update_slot()Guido van Rossum2001-10-171-42/+20
| | | | | | and fixup_slot_dispatchers() always select the proper slot dispatcher. This affects slot_sq_item(), slot_tp_getattro(), and slot_tp_getattr_hook().
* The Python symtable module depends on .h files that setup.py doesn't track.Jeremy Hylton2001-10-172-1/+3
|
* Make sure the output lists are sorted, even if run with -r.Jeremy Hylton2001-10-171-0/+6
|
* Test utility to look for bad stacksize calculations.Jeremy Hylton2001-10-171-0/+43
|
* Vastly improved stacksize calculation.Jeremy Hylton2001-10-171-18/+51
| | | | | | | | | | | | | | | | | | | | | There are now no known cases where the compiler package computes a stack depth lower than the one computed by the builtin compiler. (To achieve this state, we had to fix bugs in both compilers :-). The chief change is to do the depth calculations with respect to basic blocks. The stack effect of block is calculated. Then the flow graph is traversed using breadth-first search to find the max weight path through the graph. Had to fix the StackDepthTracker to calculate the right info for several opcodes: LOAD_ATTR, CALL_FUNCTION (and friends), MAKE_CLOSURE, and DUP_TOPX. XXX Still need to handle free variables in MAKE_CLOSURE. XXX There are still a lot of places where the computed stack depth is larger than for the builtin compiler. These won't cause the interpreter to overflow the frame, but they waste space.
* Handle testlist_safe as if it were testlist.Jeremy Hylton2001-10-171-0/+4
|