Commit Graph

16929 Commits

Author SHA1 Message Date
Neil Schemenauer a35c688055 Add Vladimir Marangozov's object allocator. It is disabled by default. This
closes SF patch #401229.
2001-02-27 04:45:05 +00:00
Jeremy Hylton 29906eef3a Preliminary support for future nested scopes
compile.h: #define NESTED_SCOPES_DEFAULT 0 for Python 2.1
           __future__ feature name: "nested_scopes"

symtable.h: Add st_nested_scopes slot.  Define flags to track exec and
    import star.

Lib/test/test_scope.py: requires nested scopes

compile.c: Fiddle with error messages.

    Reverse the sense of ste_optimized flag on
    PySymtableEntryObjects.  If it is true, there is an optimization
    conflict.

    Modify get_ref_type to respect st_nested_scopes flags.

    Refactor symtable_load_symbols() into several smaller functions,
    which use struct symbol_info to share variables.  In new function
    symtable_update_flags(), raise an error or warning for import * or
    bare exec that conflicts with nested scopes.  Also, modify handle
    for free variables to respect st_nested_scopes flag.

    In symtable_init() assign st_nested_scopes flag to
    NESTED_SCOPES_DEFAULT (defined in compile.h).

    Add preliminary and often incorrect implementation of
    symtable_check_future().

    Add symtable_lookup() helper for future use.
2001-02-27 04:23:34 +00:00
Martin v. Löwis 2a5130ed20 Document XML changes. 2001-02-27 04:21:58 +00:00
Barry Warsaw 7a5e80e801 Updates to describe function attributes. 2001-02-27 03:36:30 +00:00
Barry Warsaw d4614e8371 Updates to the semantics of function and method attributes. 2001-02-27 03:32:35 +00:00
Andrew M. Kuchling ab354bb9ba Mention setup.py in the instructions
Add note about linuxaudiodev possibly working on BSD
2001-02-27 03:29:52 +00:00
Andrew M. Kuchling ebe3045f3b Update build notes to mention setup.py 2001-02-27 03:24:24 +00:00
Andrew M. Kuchling 9e9bb01cb4 Fix typo 2001-02-27 03:15:00 +00:00
Neil Schemenauer 40417746fa Add missing dependents of graminit.h. 2001-02-27 02:45:36 +00:00
Neil Schemenauer 7cd124c7d2 Generate grammar source files in srcdir. Ignore the error if they cannot
be created (perhaps the source directory is read-only).
2001-02-27 02:19:16 +00:00
Neil Schemenauer acbf9ef784 Don't create the Include directory if building outside of the source
directory.  Closes SF #403930.
2001-02-27 02:15:14 +00:00
Fred Drake 3c823aa4b6 Make sure ConfigParser uses .optionxform() consistently; this affects
.has_option(), .remove_option(), and .set().

This closes SF tracker #232913.
2001-02-26 21:55:34 +00:00
Tim Peters ffc215a279 Add __future__.py to std library, + dull test to verify that assignments
therein are of the proper form.
2001-02-26 21:14:49 +00:00
Fred Drake 32efcdbceb cleanup_helper(): Added missing "void" type for the function, updated
comments to reflect reality.
2001-02-26 20:10:51 +00:00
Fred Drake b60654bc15 The return value from PyObject_ClearWeakRefs() is no longer meaningful,
so make it void.
2001-02-26 18:56:37 +00:00
Barry Warsaw 4f9b13bac8 instancemethod_setattro(): Raise TypeError if an attempt is made to
set a function attribute on a method (either bound or unbound).  This
reverts to Python 2.0 behavior that no attributes of the method are
writable, but provides a more informative error message.
2001-02-26 18:09:15 +00:00
Barry Warsaw c1e100f215 Additional tests for current, PEP described semantics:
- func.__dict__ is None until the first attribute is assigned

- del func.__dict__ is equivalent to func.__dict__ = None

- disallowing assignment to function attribute through unbound method
  (it was always illegal to assign through bound method).

- verifying that setting attribute explicitly on underlying function
  via meth.im_func is okay.
2001-02-26 18:07:26 +00:00
Barry Warsaw 75ee8f54fa main(): Slightly more informative error message when TokenError
occurs.  Also, continue processing.
2001-02-26 04:46:53 +00:00
Barry Warsaw 68d486c8f4 (py-parse-state): Teach python-mode how to scan code which follows
multi-line list comprehensions.
2001-02-24 00:09:17 +00:00
Tim Peters 1e542110f9 Shuffle premature decref; nuke unreachable code block.
Fixes the "debug-build -O test_builtin.py and no test_b2.pyo" crash just
discussed on Python-Dev.
2001-02-23 22:23:53 +00:00
Jack Jansen 5dd7362295 Hide the ProgressBar before raising KeyboardInterrupt. Not doing so resulted in a hang on Carbon. 2001-02-23 22:18:27 +00:00
Jack Jansen be1e569682 Turn on the "multifinder aware" bit. This should always have been on, but was was never a problem that it was off until CarbonLib 1.1 (which requires it, for some reason). 2001-02-23 22:13:07 +00:00
Fred Drake 6fd08baddc Do not hide a failure to create a temporary file; if it fails the work
will not have been done, and applications need to know that.  Also, do
not print a message about it; the exception is the right thing.

This closes SF bug #133717.
2001-02-23 20:04:54 +00:00
Fred Drake 07e6c505ad Minor adjustments, including markup corrections. 2001-02-23 19:15:56 +00:00
Fred Drake 447f545322 Fix extra backslash in example. 2001-02-23 19:13:07 +00:00
Fred Drake 3538c93f1a Another name. 2001-02-23 19:11:45 +00:00
Fred Drake afdc8fc0ad Fix up the markup in some recently-added portions of the text. 2001-02-23 19:10:41 +00:00
Barry Warsaw 22e4182d60 Describe -s a little more generically. 2001-02-23 18:31:40 +00:00
Barry Warsaw 0372af754e symtable_update_free_vars(), symtable_undo_free(),
symtable_enter_scope(): Removed some unnecessary backslashes at the
end of lines.  C != Python. :)
2001-02-23 18:22:59 +00:00
Jeremy Hylton 74b3bc47df Fix for bug 133489: compiler leaks memory
Two different but related problems:

1. PySymtable_Free() must explicitly DECREF(st->st_cur), which should
always point to the global symtable entry.  This entry is setup by the
first enter_scope() call, but there is never a corresponding
exit_scope() call.

Since each entry has a reference to scopes defined within it, the
missing DECREF caused all symtable entries to be leaked.

2. The leak here masked a separate problem with
PySymtableEntry_New().  When the requested entry was found in
st->st_symbols, the entry was returned without doing an INCREF.

And problem c) The ste_children slot was getting two copies of each
child entry, because it was populating the slot on the first and
second passes.  Now only populate on the first pass.
2001-02-23 17:55:27 +00:00
Barry Warsaw 3e13b1e48b Py_Main(): When compiled by Insure (i.e. __INSURE__ is defined), call
the internal API function to release the interned strings as the very
last thing before returning status.  This aids in memory use debugging
because it eliminates a huge source of noise from the reports.  This
is never called during normal (non-debugging) use because releasing
the interned strings slows Python's shutdown and isn't necessary
anyway because the system will always reclaim the memory.
2001-02-23 16:46:39 +00:00
Barry Warsaw a903ad9855 _Py_ReleaseInternedStrings(): Private API function to decref and
release the interned string dictionary.  This is useful for memory
use debugging because it eliminates a huge source of noise from the
reports.  Only defined when INTERN_STRINGS is defined.
2001-02-23 16:40:48 +00:00
Andrew M. Kuchling 8d7f0869ee Patch #103899: Don't compile modules configured in Setup. This seems much
simpler than adding a bazillion switches, but means that the makesetup
    method probably can't ever go away completely.  Oh well...
2001-02-23 16:32:32 +00:00
Andrew M. Kuchling e06337a928 Patch #103937: Attempt to get the BSDDB autodetection right (or at least
less wrong)
2001-02-23 16:27:48 +00:00
Mark Hammond 5edc627f66 Checkin updated version of patch #103933 . As Thomas says, fixes the bugs #131064, #129584, #127722. See the discussion in bug #131064 2001-02-23 11:38:38 +00:00
Tim Peters af449638b6 Patch 103928: Correct zlib freeze settings for Win32. 2001-02-23 03:45:13 +00:00
Fred Drake 19f3c52347 Work around the broken formatting of sys.ps1 prompts in running text.
Move sample sessions to the left margin of the file for consistency;
formatting can adjust the margin if needed.

This closes SF bug #133213.
2001-02-22 23:15:05 +00:00
Fred Drake 2f55b11bf7 cd to the html/ directory to generate the global module index so the links
to the module sections are right.

This was also broken when converting to a flat Makefile.
2001-02-22 23:12:37 +00:00
Fred Drake d27ed858c3 The ACKS file is in the current directory when converted to HTML; this was
broken when converting to a flat Makefile.  ;-(
2001-02-22 23:06:21 +00:00
Fred Drake cb45bfd956 Remove entry for soundex module! 2001-02-22 23:00:20 +00:00
Barry Warsaw eefb107a48 _PyObject_Dump(): If argument is NULL, print "NULL" instead of
crashing.
2001-02-22 22:39:18 +00:00
Guido van Rossum 2da0ea82ba In try_3way_to_rich_compare(), swap the call to default_3way_compare()
and the test for errors, so that an error in the default compare
doesn't go undetected.  This fixes SF Bug #132933 (submitted by
effbot) -- list.sort doesn't detect comparision errors.
2001-02-22 22:18:04 +00:00
Fred Drake 230d17d0d1 Sequence indexes are non-negative, not natural (0 is not a natural number).
Reported by Daniel May <mayds@ecn.purdue.edu>.

De-tabified everywhere.
2001-02-22 21:28:04 +00:00
Fred Drake 7c30de65f4 Remove documentation for the soundex module; the module is no longer
included with Python.
2001-02-22 21:25:20 +00:00
Tim Peters 1c8e1f0654 asin micro-optimization suggested in email. 2001-02-22 19:51:56 +00:00
Tim Peters 15d72703fc Windows: Remove soundex from pythoncore subproject. 2001-02-22 19:51:31 +00:00
Andrew M. Kuchling debc352e9c Mention the removal of soundex.c 2001-02-22 15:53:21 +00:00
Andrew M. Kuchling a1a690fa9c Patch #103926: fix two warnings from Tru64's compiler 2001-02-22 15:52:55 +00:00
Andrew M. Kuchling b995509c2f Remove soundex module, as stated by GvR.
(Fred, I'll leave the doc changes to you, because I don't know if you
     want to delete libsoundex.tex or leave it in.
     Someone else will have to tweak PC/os2vacpp/{config.c,makefile} and
     PCbuild/pythoncore.dsp, both of which refer to soundex.c)
2001-02-22 15:45:46 +00:00
Martin v. Löwis 7edbd4ffb4 Patch #103885: Add dynamic registration and lookup of DOM implementations. 2001-02-22 14:05:50 +00:00