Commit Graph

22419 Commits

Author SHA1 Message Date
Neil Schemenauer fd1030e166 pgen now needs pymalloc 2002-04-22 03:05:25 +00:00
Tim Peters 51e7f5caba Moving pymalloc along.
+ Redirect PyMem_{Del, DEL} to the object allocator's free() when
  pymalloc is enabled.  Needed so old extensions can continue to
  mix PyObject_New with PyMem_DEL.

+ This implies that pgen needs to be able to see the PyObject_XYZ
  declarations too.  pgenheaders.h now includes Python.h.  An
  implication is that I expect obmalloc.o needs to get linked into
  pgen on non-Windows boxes.

+ When PYMALLOC_DEBUG is defined, *all* Py memory API functions
  now funnel through the debug allocator wrapper around pymalloc.
  This is the default in a debug build.

+ That caused compile.c to fail:  it indirectly mixed PyMem_Malloc
  with raw platform free() in one place.  This is verbotten.
2002-04-22 02:33:27 +00:00
Steven M. Gava a2bc259dd7 tracking python idle changes:
Provisional fix for writefile() [SF bug # 541730]
2002-04-22 00:42:42 +00:00
Tim Peters 1c6192662d Update the Windows makefile for 2.3. 2002-04-22 00:39:44 +00:00
Steven M. Gava 931625dc77 tracking python idle changes:
Patch #540583: Open MS Help Docs if available.
2002-04-22 00:38:26 +00:00
Neal Norwitz 8ee3cd47a9 #546156, Remove load_false()/load_true(), they are not used 2002-04-21 23:44:34 +00:00
Tim Peters e1682a80fa Py_UniversalNewlineFread(): small speed boost on non-Windows boxes. 2002-04-21 18:15:20 +00:00
Tim Peters 0eca65c4c5 PyUnicode_EncodeUTF8(): tightened the memory asserts a bit, and at least
tried to catch some possible arithmetic overflows in the debug build.
2002-04-21 17:28:06 +00:00
Neal Norwitz 0e0ee598fc #544265, Remove warnings for passing const to free() 2002-04-21 15:03:18 +00:00
Martin v. Löwis 2a7ff35a07 Back out 2.140. 2002-04-21 09:59:45 +00:00
Tim Peters 639295f0a5 Enable universal newlines on Windows. Note that NEWS needs more words! 2002-04-21 07:30:30 +00:00
Tim Peters 058b141ef7 Py_UniversalNewlineFread(): Many changes.
+ Continued looping until n bytes in the buffer have been filled, not
  just when n bytes have been read from the file.  This repairs the
  bug that f.readlines() only sucked up the first 8192 bytes of the file
  on Windows when universal newlines was enabled and f was opened in
  U mode (see Python-Dev -- this was the ultimate cause of the
  test_inspect.py failure).

+ Changed prototye to take a char* buffer (void* doesn't make much sense).

+ Squashed size_t vs int mismatches (in particular, besides the unsigned
  vs signed distinction, size_t may be larger than int).

+ Gets out under all error conditions now (it's possible for fread() to
  suffer an error even if it returns a number larger than 0 -- any
  "short read" is an error or EOF condition).

+ Rearranged and simplified declarations.
2002-04-21 07:29:14 +00:00
Tim Peters ea572b21f8 Assorted code cleanups for readability. Greatly boosted the size of the
test data:  this test fails on WIndows now if universal newlines are
enabled (which they aren't yet, by default).  I don't know whether the
test will also fail on Linux now.
2002-04-21 06:12:02 +00:00
Tim Peters 4a0db06edf Hack around the "2.1.6 Blank lines" bug in a way that the TOC still
displays a recognizable section title (there are extra blanks at the
end of it now, due to the nested anchor, but that's fine).
2002-04-21 04:44:11 +00:00
Tim Peters 7e3d961fc1 PyUnicode_EncodeUTF8: squash compiler wng. The difference of two
pointers is a signed type.  Changing "allocated" to a signed int makes
undetected overflow more likely, but there was no overflow detection
before either.
2002-04-21 03:26:37 +00:00
Tim Peters dc374e034a Give the Help viewer a font-size button. This isn't documented by MS,
but is documented by others on the web, and the defn of the magic flag
needed appears in MS's htmlhelp.h header file.
2002-04-21 02:01:01 +00:00
Tim Peters c8490c70cd Move "everything left one": the TOC now shows each doc directory as a
distinct top-level node.  Before they were all nested under an artificial
top-level node, uselessly chewing up horizontal space, and ensuring that
the only thing the user saw in the TOC upon opening the file was a single
collapsed top-level folder.
2002-04-20 21:34:34 +00:00
Tim Peters 4545407746 Stopped all warnings from the HTML Help Compiler, by generating proper
HTML (or, at least, proper in its view).  The TOC file is now identical
to what the HTML compiler itself generates, except for whitespace and
a glitch identified below.  The pretty-printing done by prechm.py is
pretty much destroyed for now; if you need it pretty-printed, just make
the Help Compiler save the files (it's got its own idea of pretty-
printing anyway).

Glitch:  The title of Ref Man "2.1.6 Blank lines" shows up as a blank
for now.  This is because the relevant entry in ref/index.html contains
nested anchors, and pychm really has no idea what to do with that.  I
hacked it for now to avoid any error messages or worse insanity, and
filed a bug report against the docs.
2002-04-20 20:26:26 +00:00
Neal Norwitz 3d94942000 #546163, fix link problem on Solaris 8 for makedev when using mknod 2002-04-20 13:46:43 +00:00
Martin v. Löwis a4eb14b7a4 Patch #495401: Count number of required bytes for encoding UTF-8 before
allocating the target buffer.
2002-04-20 13:44:01 +00:00
Tim Peters e21095e3c5 Widespread: Used classes in a more natural way. Added convenience
methods to squash code duplication.  Simplified several overly complex
chunks of logic.  Built output strings more with string interpolation
instead of infix '+'.  Added comments.  Exploited recent Python features
(chiefly bool and augmented assignment).
2002-04-20 08:36:42 +00:00
Martin v. Löwis 6af3e2dc31 Forward port of patch # 500311: Work around for buggy https servers.
Fixes #494762.
2002-04-20 07:47:40 +00:00
Jeremy Hylton 954aed8c8d Add test for eval() w/ free variables.
Related to SF bug #505315
2002-04-20 04:51:39 +00:00
Jeremy Hylton 24ea8d3d9c Fix SF bug #505315: Make free and cell vars show up consistently in locals().
PyFrame_FastToLocals() and PyFrame_LocalsToFast() had a return if
f_nlocals was 0.  I think this was a holdover from the pre 2.1 days
when regular locals were the only kind of local variables.

The change makes it possible to use a free variable in eval or exec if
it the variable is also used elsewhere in the same block, which is
what the documentation says.
2002-04-20 04:46:55 +00:00
Tim Peters d9a10509ac Replaced the fiddly 5-tuples with a new Book convenience class, allowing
to reference fields via names instead of meaningless little integers.
This turned up one case where the wrong little integer was being used,
in informative progress output.  Fixed that too.
2002-04-20 03:25:02 +00:00
Tim Peters 8d62ad7ffd Fixed a comment. 2002-04-20 02:56:20 +00:00
Tim Peters 661e49231a All over: get rid of blanks before colons that open code blocks. 2002-04-20 02:39:44 +00:00
Tim Peters 460643b8c5 do_project(): Modernized the code. 2002-04-20 02:37:07 +00:00
Tim Peters 5d5e1930dd Added "What's New" to the 2.2 doc set. 2002-04-20 02:07:58 +00:00
Jeremy Hylton 8d22b0409b Fix com_arglist() and update grammar fragment.
SF bug #522264 reported by Evelyn Mitchell.

The code included a comment about "STAR STAR" which was translated
into the code as the bogus attribute token.STARSTAR.  This name never
caused an attribute error because it was never retrieved.  The code
was based on an old version of the grammar that specified kwargs as
two tokens ('*' '*').  I checked as far back as 2.1 and didn't find
this production.

The fix is simple, because token.DOUBLESTAR is the only token
allowed.  Also update the grammar fragment in com_arglist().

XXX I'll bet lots of other grammar fragments in comments are out of
date, probably in this module and in compile.c.
2002-04-19 22:56:37 +00:00
Martin v. Löwis 2ea2c9d1c3 Patch #546194: Check constants individually. Fixes 534143 on OpenBSD.
Will backport to 2.2.
2002-04-19 21:04:41 +00:00
Tim Peters 4f109c1cf9 Added a stop-list to reduce the size of the full text search index. Fred,
populate the "stop_list" triple-quoted string with your favorite handful
of stop words.
2002-04-19 18:41:46 +00:00
Tim Peters e6b63e685b project_template: use dict interpolation instead of giant tuples. 2002-04-19 18:07:52 +00:00
Tim Peters a905363ce5 + Changed TOC to folder-tree style.
+ Increased size of the window the user sees the first time.
+ Arranged for the display to remember its last size and position.
+ Added a Favorites (bookmarks) tab.
+ Added the "Advanced Search" decorations.
2002-04-19 16:46:43 +00:00
Tim Peters 52cfa33e6e Generates inputs to the Microsoft Help Compiler, which creates compiled
HTML help files (.chm).  Obtained from Robin Dunn's packaging of the
2.2 docs at <http://alldunn.com/python/>, obtained in turn from
Hernán Martínez Foffani's original work at
<http://www.orgmf.com.ar/condor/pytstuff.html>.
2002-04-19 16:09:26 +00:00
Tim Peters 7d4ed0db95 Get the right funny characters in Hernan's name. 2002-04-19 15:59:01 +00:00
Neal Norwitz fdbeb5a4ce #546155, remove posix_int() it is not used 2002-04-19 14:58:40 +00:00
Jeremy Hylton c72737e7b6 Fix SF #544995 (zlib crash on second flush call)
Bug fix by mhammond.

Bug fix candidate for 2.2, not present in 2.1.
2002-04-19 14:37:07 +00:00
Jack Jansen a6aa71deec Oops: we used PyMem_DEL() to clean up objects, and that's a problem since
pymalloc, apparently. Fixed, but this means all bgen-generated modules will
have to be re-generated.

I hope (and expect) that the pymalloc fixes aren't bugfix candidates, because
if they are this is one too.
2002-04-19 14:29:47 +00:00
Martin v. Löwis bbeb1e6d91 Document the build process more precisely. Suggested by Hugh Sasse. 2002-04-19 09:47:23 +00:00
Skip Montanaro 75700db7f0 \idxcode -> \py@idxcode (mimics index stuff in python.sty - problem only
revealed itself when i added index generating lines to doc/doc.tex)
2002-04-19 04:52:44 +00:00
Skip Montanaro 176bda4cde fix duplicate label
add index turds
2002-04-19 04:50:44 +00:00
Fred Drake c55ae4b98c Clean up the use of version numbers in filenames; always use an "abstract"
version number, and explain what it is at the top of the chapter.
This closes SF bug #225003.
2002-04-19 04:04:57 +00:00
Mark Hammond 3b959dbcaf Fix bug 544473 - "Queue module can deadlock".
Use try/finally to ensure all Queue locks remain stable.
Includes test case.  Bugfix candidate.
2002-04-19 00:11:32 +00:00
Tim Peters 08d821582f _PyObject_DebugMallocStats(): Added some potentially expensive internal
consistency checks, enabled only in a debug (Py_DEBUG) build.  Note that
this never gets called automatically unless PYMALLOC_DEBUG is #define'd
too, and the envar PYTHONMALLOCSTATS exists.
2002-04-18 22:25:03 +00:00
Tim Peters 64d80c9f40 PyObject_Malloc: make a tiny bit faster for platforms where malloc(0)
doesn't return NULL.

PyObject_Realloc:  better comment for why we don't call PyObject_Malloc(0).
2002-04-18 21:58:56 +00:00
Tim Peters 3e12071dbe Remove some long-disabled debugging boilerplate. 2002-04-18 21:37:03 +00:00
Tim Peters afb2c80b29 ceval.c/do_raise(): Tighten the test to disallow raising an instance of
a str subclass.

test_descr.py/string_exceptions():  New sub-test.

For 2.3 only.  Guido doesn't want this backported.
2002-04-18 18:06:20 +00:00
Jeremy Hylton 16af557ae9 Remove more out-of-date comments and clarify explanation of visit(). 2002-04-18 16:26:40 +00:00
Jeremy Hylton 3b05c8ee4a Remove out-of-date explanation in doc strings,
as reported by Eric C. Newton.
2002-04-18 16:02:48 +00:00