Support for frozen packages, matching the revamped Tools/freeze.
Frozen packages are indicated by a negative size (the code string
is the __import__.py file). A frozen package module has its __path__
set to a string, the package name.
Added support for packages.
We have a whole new module finder that uses the actual Python
parser and scans the bytecode for IMPORT_NAME and IMPORT_FROM.
This requires some support in import.c (that hasn't been checked in).
New command line options for this: -d, -q, -m.
Fred Drake [Wed, 4 Mar 1998 06:33:43 +0000 (06:33 +0000)]
changeit(): Added support for \deprecated{}.
Chunk.__repr__(), main(): Allow Chunk objects to get the buffer, to make the
representation contain text instead of a pair of indexes. This makes debugging
a little easier.
Fred Drake [Wed, 4 Mar 1998 05:36:59 +0000 (05:36 +0000)]
Preliminary LaTeX2HTML 98.1p1 support. Includes patch from Ross Moore to
get some funky quoting of ']' in \item[...] to work right without having to
do really ugly things to the documents themselves.
There are a lot of things relating to indexing that are commented out;
parts need to be examined and dealt with with respect to changes in
LaTeX2HTML internals. I'll work with Ross to see what it takes to make
this sort of stuff reasonable.
Fred Drake [Wed, 4 Mar 1998 05:30:49 +0000 (05:30 +0000)]
Comment out the attempt to get index-related stuff processed in the right
order. LaTeX2HTML just doesn't do things the same way as LaTeX, and this
wasn't the fix.
Simplify the generated HTML for \file{}.
For \samp{}, use "..." instead of `...'; many fonts make that look pretty
bad. ;-(
Of course, I shouldn't have used lseek() to find out the file's
position in new_buffersize(); the correct function to use is ftell().
Thanks to Ben Jackson.
Add a single Python-wide (!) lock on import. Only one thread at a
time can be in PyImport_ImportModuleEx(). Recursive calls from the
same thread are okay.
Potential problems:
- The lock should really be part of the interpreter state rather than
global, but that would require modifying more files, and I first want
to figure out whether this works at all.
- One could argue that the lock should be per module -- however that
would be complicated to implement. We would have to have a linked
list of locks per module name, *or* invent a new object type to
represent a lock, so we can store the locks in the module or in a
separate dictionary. Both seem unwarranted. The one situation where
this can cause problems is when loading a module takes a long time,
e.g. when the module's initialization code interacts with the user --
during that time, no other threads can run. I say, "too bad."
Fred Drake [Tue, 3 Mar 1998 22:02:19 +0000 (22:02 +0000)]
Convert LaTeX support to create a new class of documents. HTML generation
now requires LaTeX2HTML 98.1p1 or newer (& and is still in progress).
This means that doing things to change the formatting of the manuals (at the
"normal user" level, like A4 paper), can happen in just one place, rather
than in each document file.
Instead of 'import mac', use 'import os' -- this way, the path syntax
manipulation routines can be used on non-Mac platforms (e.g. to
manipulate pathnames in a Mac specific archive).
Fred Drake [Fri, 27 Feb 1998 14:54:06 +0000 (14:54 +0000)]
When "declaring" a module using \*modindex{}, and * doesn't start with "ref",
set up the indexsubitem to "(in module #1)" automatically. This reduces the
amount of markup needed in the module docs and, more importantly, makes it
o.k. to leave out in simple sections. \setindexsubitem{} can still be used
to change or reset it.
Fred Drake [Fri, 27 Feb 1998 05:18:28 +0000 (05:18 +0000)]
Use a Python script to create "empty" indexes. This solves Guido's
corrupted file problem and avoids the shell escape interpretation
portability problem. ;-( See comments at top of newind.py for an
explanation.
Guido van Rossum [Thu, 26 Feb 1998 17:25:02 +0000 (17:25 +0000)]
New version of tb_lineno(), this time *not* using try-except, to avoid
disturbing the current exception, and returning tb.tb_lineno, which is
the line number of thr traceback, rather than the current line number.
By Jim Hugunin.