X Tutup
Skip to content

Commit af5b83e

Browse files
committed
README: changed URL format to <URL:...>; added section on Tk.
Makefile.in: run config.status in "make recheck". configure.in: add test for hypot(). config.h.in, configure: since configure.in changed. rest: the usual boring stuff.
1 parent efc8713 commit af5b83e

File tree

8 files changed

+252
-78
lines changed

8 files changed

+252
-78
lines changed

BUGS

Lines changed: 48 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,44 @@ immediately upon receiving the first complaint I usually did not
33
nother to make an entry in this file, unless it was a serious bug
44
(core dump or infinite loop).
55

6-
==> Status indicators: (-) not fixed; (*) fixed; (?) don't know what to do.
6+
==> Status indicators: (-) not fixed; (*) fixed; (?) not sure.
77

88
======================================================================
99
Known BUGS in 1.1.1 and 1.2
1010
---------------------------
1111

12+
(-) C-level coerce() doesn't call __coerce__ when it should (and
13+
similar for __cmp__)
14+
15+
(-) tkinter seems to leave an exception around sometime which breaks
16+
unmarshalling code objects [hard to reproduce, have added a trap to
17+
catch it]
18+
19+
(-) destroying all modules may destroy __builtin__ (or other modules)
20+
while destructors of other modules may still need it [hard to fix --
21+
could maintain a list of all modules in order of importation so we can
22+
destroy them in reverse order??? really hopeless -- would have to
23+
destroy objects in a module in reverse order too...]
24+
25+
(-) [X]DECREF can cause the interpreter to be called recursively (for
26+
__del__ disciplines) -- so list and dict implementation calls doing
27+
DECREF can cause recursive calls to methods of the object being
28+
modified. Other files too. [Only partially fixed -- listobject.c is
29+
still suspect.]
30+
31+
(-) struct module aligns doubles wrongly when compiled with -DDEBUG on
32+
sparc
33+
34+
(-) if __getattr__ prints something, calling repr(x) from cmd line
35+
forgets a newline
36+
37+
(-) doneimport() should be called *before* the Py_AtExit code is called
38+
39+
Environmental bugs
40+
------------------
41+
42+
(-) tkinter doesn't seem to see any declaration of malloc on sunos 4.1.3
43+
1244
(-) arraymodule doesn't compile under Ultrix (FPROTO macro)
1345

1446
(-) Linux uses GNU getopt by default which is broken
@@ -17,53 +49,35 @@ Known BUGS in 1.1.1 and 1.2
1749

1850
(-) "make depend" assumes mkdep exists -- not portable
1951

20-
(-) threadmodule.c leaks LOTS of memory at thread exit
21-
22-
(-) tkinter seems to leave an exception around sometime which breaks
23-
unmarshalling code objects
24-
25-
(-) memory leak (namebuf) in initmodule2
26-
2752
(-) regen calls h2py which isn't defined by default
2853

29-
(-) shared install in Modules still doesn't work for empty list
30-
3154
(-) make libinstall (or similar) references to machdep directory but
3255
doesn't create it
3356

34-
(-) destroying all modules may destroy __builtin__ while destructors
35-
of other modules may still need it
36-
37-
(-) hash() of float values returns suspect values
38-
39-
(-) sockets aren't thread safe (address of static struct returned,
40-
some calls aren't thread safe)
57+
(-) HP doesn't compile out of the box (needs LIBS=-ldld or
58+
LIBS=/usr/lib/libdld.sl)
4159

42-
(-) Everything else that uses err_get() should probably use err_get_tb()
60+
======================================================================
61+
BUGS present in 1.1.1 and fixed in 1.2
62+
--------------------------------------
4363

44-
(-) struct module aligns doubles wrongly when compiled with -DDEBUG on sparc
64+
(*) memory leak (namebuf) in initmodule2
4565

46-
(-) pow(int, int, long) (etc.) dumps core on Linux (and other Intel machines?)
66+
(*) hash() of float values returns bogus values
4767

48-
(-) C-level coerce() doesn't call __coerce__ when it should (and
49-
similar for __cmp__)
68+
(*) pow(int, int, long) does wrong series of DECREF() calls.
5069

51-
(-) DECREF can cause the interpreter to be called recursively (for
52-
__del__ disciplines) -- so list and dict implementation calls doing
53-
DECREF can cause recursive calls to methods of the object being
54-
modified. Other files too. (Only partially fixed.)
70+
(*) flushline() may clear the exception condition so shouldn't be
71+
called before print_error()
5572

56-
(-) HP doesn't compile out of the box (needs LIBS=-ldld or
57-
LIBS=/usr/lib/libdld.sl)
73+
(*) Everything else that uses err_get() should use err_fetch()
5874

59-
(-) something fishy with softspace and print_error (flushline clears
60-
the error)
75+
(*) sockets aren't thread safe (address of static struct returned,
76+
some calls aren't thread safe)
6177

62-
(-) tkinter doesn't seem to see any declaration of malloc on sunos 4.1.3
78+
(*) threadmodule.c leaks LOTS of memory at thread exit
6379

64-
======================================================================
65-
BUGS present in 1.1.1 and fixed in 1.2
66-
--------------------------------------
80+
(*) shared install in Modules still doesn't work for empty list
6781

6882
(*) threadmodule.c leaks 'res' in t_bootstrap
6983

ChangeLog

Lines changed: 65 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,66 @@
1+
Wed Jan 4 18:23:09 1995 Guido van Rossum <guido@voorn.cwi.nl>
2+
3+
* Python/modsupport.c (initmodule2), Include/methodobject.h,
4+
Objects/methodobject.c: introduced METH_FREENAME bit passed to
5+
newmethodobject to indicate that if the object is freed the name
6+
pointer must also be freed (this saves a long standing memory leak
7+
in initmodule2)
8+
9+
* Modules/structmodule.c (struct_pack, struct_unpack): use memcpy
10+
instead of double precision assignment (since a string isn't
11+
always double-aligned, e.g. when debug fields are present in the
12+
object header)
13+
14+
* Objects/floatobject.c (float_hash): changed a constant to avoid
15+
float->long conversion overflow
16+
17+
* Python/bltinmodule.c (builtin_pow): fix coerce() ref count
18+
nightmare (core dumps on Linux)
19+
20+
* Python/pythonrun.c: call flushline() in print_error(), after
21+
fetching the exception info, since flushline() can mask an
22+
exception; move flushline() calls around so they are not between
23+
the detection and printing of the exception
24+
25+
Tue Jan 3 12:55:28 1995 Guido van Rossum <guido@voorn.cwi.nl>
26+
27+
* Modules/config.c.in (getcopyright): Change copyright to include
28+
1995
29+
30+
Mon Jan 2 20:15:39 1995 Guido van Rossum <guido@voorn.cwi.nl>
31+
32+
* Objects/mappingobject.c (mappingremove): don't call
33+
lookmapping() for empty dictionary
34+
35+
* Doc/libsocket.tex (section{Built-in Module \sectcode{socket}}):
36+
documented gethostbyaddr()
37+
38+
* Modules/mpzmodule.c (mpz_power): made it ternary
39+
40+
* Modules/mathmodule.c: only use hypot() if it exists
41+
42+
* Modules/Makefile.pre.in (sharedinstall): fix bug (sh can't loop
43+
over empty list) when $(SHAREDMODS) is empty
44+
45+
sMon Jan 2 19:35:49 1995 Guido van Rossum <guido@voorn.cwi.nl>
46+
47+
* Python/errors.c: added hook for better mac error messages
48+
49+
* Python/pythonrun.c (run_script): removed extraneous fclose() in
50+
case of .pyc file argument
51+
52+
* Include/{object.h,stringobject.h}: changed refcnt and sizes from
53+
unsigned to int (i.e. signed)
54+
55+
* Objects/fileobject.c (newfileobject): use HAVE_FOPENRF instead
56+
of USE_FOPENRF
57+
58+
* Lib/test/test_b1.py: test eval() and execfile() with globals,
59+
locals arguments
60+
61+
* Lib/mhlib.py: added movemessage(), copymessage(), added copy
62+
fallback for refilemessages(), and updated the docs
63+
164
Fri Dec 30 16:19:17 1994 Guido van Rossum <guido@voorn.cwi.nl>
265

366
* Parser/tokenizer.c (tok_nextc): zap tok->buf after freeing
@@ -58,7 +121,7 @@ Tue Dec 13 11:46:03 1994 Guido Van Rossum <guido@tesla>
58121
instead of going through ceval.c:printtraceback()
59122

60123
* Python/modsupport.c: fix vmkvalue() for systems where va_list is
61-
an array; add support for creating lists and dcitionaries; added
124+
an array; add support for creating lists and dictionaries; added
62125
convenience functions for calling functions/methods with format
63126
and argument list
64127

@@ -123,7 +186,7 @@ Tue Dec 13 11:46:03 1994 Guido Van Rossum <guido@tesla>
123186
(for QNX); use gethostbyname_r if it exists (since it is
124187
re-entrant); use h_error and hstrerror when they exist; other
125188
changes for re-entrancy; make printable representation more
126-
useful; cosmetic changes in argument lists
189+
useful; cosmetic changes in argument lists; add gethostbyaddr()
127190

128191
* Modules/signalmodule.c: if NSIG undefined, use _SIGMAX + 1
129192

Makefile.in

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
########################################################################
2-
# Copyright 1991, 1992, 1993, 1994 by Stichting Mathematisch Centrum,
3-
# Amsterdam, The Netherlands.
4-
#
2+
# Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam,
3+
# The Netherlands.
4+
#
55
# All Rights Reserved
6-
#
7-
# Permission to use, copy, modify, and distribute this software and its
8-
# documentation for any purpose and without fee is hereby granted,
6+
#
7+
# Permission to use, copy, modify, and distribute this software and its
8+
# documentation for any purpose and without fee is hereby granted,
99
# provided that the above copyright notice appear in all copies and that
10-
# both that copyright notice and this permission notice appear in
10+
# both that copyright notice and this permission notice appear in
1111
# supporting documentation, and that the names of Stichting Mathematisch
1212
# Centrum or CWI not be used in advertising or publicity pertaining to
1313
# distribution of the software without specific, written prior permission.
14-
#
14+
#
1515
# STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO
1616
# THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
1717
# FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE
@@ -183,6 +183,7 @@ config.status: $(srcdir)/configure
183183
# provided the config.status script exists
184184
recheck:
185185
$(SHELL) config.status --recheck
186+
$(SHELL) config.status
186187

187188
# Rebuild the configure script from configure.in; also rebuild config.h.in
188189
autoconf:

README

Lines changed: 53 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -159,12 +159,12 @@ calling python interactively. You need to configure build the GNU
159159
readline library before running the configure script. Its sources are
160160
not distributed with Python; you can ftp them from any GNU mirror
161161
site, or from its home site:
162-
ftp://slc2.ins.cwru.edu/pub/dist/readline-2.0.tar.gz (or a higher
163-
version number -- using version 1.x is not recommended).
162+
<URL:ftp://slc2.ins.cwru.edu/pub/dist/readline-2.0.tar.gz> (or a
163+
higher version number -- using version 1.x is not recommended).
164164

165165
A GPL-free version was posted to comp.sources.misc in volume 31 and is
166-
widely available from FTP archive sites. One URL for it is:
167-
ftp://gatekeeper.dec.com/.b/usenet/comp.sources.misc/volume31/editline/part01.Z
166+
widely available from FTP archive sites, e.g.
167+
<URL:ftp://gatekeeper.dec.com/.b/usenet/comp.sources.misc/volume31/editline/part01.Z>
168168

169169
Pass the Python configure script the option --with-readline=DIRECTORY
170170
where DIRECTORY is the absolute pathname of the directory where you've
@@ -209,8 +209,8 @@ Setup.irix4 file to it).
209209

210210
- On SGI IRIX 4, dynamic loading of extension modules is supported by
211211
the "dl" library by Jack Jansen, which is ftp'able from
212-
ftp://ftp.cwi.nl/pub/dynload/dl-1.6.tar.Z. This is enabled (after
213-
you've ftp'ed and compiled the dl library!) by passing
212+
<URL:ftp://ftp.cwi.nl/pub/dynload/dl-1.6.tar.Z>. This is enabled
213+
(after you've ftp'ed and compiled the dl library!) by passing
214214
--with-sgi-dl=DIRECTORY where DIRECTORY is the absolute pathname of
215215
the dl library. (Don't bother on IRIX 5, it already has dynamic
216216
linking using SunOS style shared libraries.) Support for this feature
@@ -219,9 +219,9 @@ is deprecated.
219219
- Dynamic loading of modules is rumoured to be supported on some other
220220
systems: VAX (Ultrix), Sun3 (SunOS 3.4), Sequent Symmetry (Dynix), and
221221
Atari ST. This is done using a combination of the GNU dynamic loading
222-
package (ftp://ftp.cwi.nl/pub/dynload/dl-dld-1.1.tar.Z) and an
222+
package (<URL:ftp://ftp.cwi.nl/pub/dynload/dl-dld-1.1.tar.Z>) and an
223223
emulation of the SGI dl library mentioned above (the emulation can be
224-
found at ftp://ftp.cwi.nl/pub/dynload/dld-3.2.3.tar.Z). To enable
224+
found at <URL:ftp://ftp.cwi.nl/pub/dynload/dld-3.2.3.tar.Z>). To enable
225225
this, ftp and compile both libraries, then call the configure passing
226226
it the option --with-dl-dld=DL_DIRECTORY,DLD_DIRECTORY where
227227
DL_DIRECTORY is the absolute pathname of the dl emulation library and
@@ -242,6 +242,44 @@ a separate tar file (currently extensions.tar.Z). See the README file
242242
there.
243243

244244

245+
The Tk extension
246+
----------------
247+
248+
Tk (the user interface component of John Ousterhout's Tcl language) is
249+
also usable from Python. Since this requires that you first build and
250+
install Tcl/Tk, the Tk interface is not enabled by default. It
251+
requires Tcl 7.3 and Tk 3.6. For more info about Tk, including
252+
pointers to the source, see John Ousterhout's home page at
253+
<URL:http://playground.sun.com/~ouster/>.
254+
255+
To enable the Python/Tk interface, once you've built and installed
256+
Tcl/Tk, all you need to do is edit two lines in Modules/Setup; search
257+
for the string "Tk". Un-comment one (normally the first) of the lines
258+
beginning with "#tkinter" and un-comment the line beginning with
259+
"#TKPATH". (If you have installed Tcl/Tk in unusual places you will
260+
have to edit the first line as well to fix the -I and -L options.)
261+
See the Build Instructions above for more details.
262+
263+
There is little documentation. Begin with fetching the "Tk Lifesaver"
264+
document, e.g. <URL:ftp://ftp.cwi.nl/pub/python/tkinter-doc.tar.gz> (a
265+
gzipped tar file containing a PostScript file). There are demos in
266+
the Demo/tkinter directory, in the subdirectories guido, matt and www.
267+
268+
Note that there's a Python module called "Tkinter" (capital T) which
269+
lives in Lib/tkinter/Tkinter.py, and a C module called "tkinter"
270+
(lower case t) which lives in Modules/tkintermodule.c. Demos and
271+
normal Tk applications only import the Python Tkinter module -- only
272+
the latter uses the C tkinter module directly. In order to find the C
273+
tkinter module, it must be compiled and linked into the Python
274+
interpreter -- the tkinter line in the Setup file does this. In order
275+
to find the Python Tkinter module, sys.path must be set correctly --
276+
the TKPATH assignment in the Setup file takes care of this, but only
277+
if you install Python properly ("make install libinstall"). (You can
278+
also use dynamic loading for the C tkinter module, in which case you
279+
must manually fix up sys.path or set $PYTHONPATH for the Python
280+
Tkinter module.)
281+
282+
245283
Building for multiple architectures (using the VPATH feature)
246284
-------------------------------------------------------------
247285

@@ -351,11 +389,11 @@ Ftp access
351389
----------
352390

353391
The latest Python source distribution can be ftp'ed from
354-
ftp://ftp.cwi.nl/pub/python/python<version>.tar.gz. You can also find
355-
PostScript of the main Python documentation there, Macintosh and PC
356-
binaries, and the latest STDWIN source distribution (in directory
357-
/pub/stdwin). oFr mirror sites, see the list in the FAQ (Misc/FAQ
358-
this directory).
392+
<URL:ftp://ftp.cwi.nl/pub/python/>. See the INDEX or index.html file
393+
for more information. You can also find PostScript of the main Python
394+
documentation there, Macintosh and PC binaries, and the latest STDWIN
395+
source distribution (in directory /pub/stdwin). oFr mirror sites, see
396+
the list in the FAQ (Misc/FAQ this directory).
359397

360398

361399
Mailing list and Newsgroup
@@ -386,8 +424,8 @@ Copyright Notice
386424
The Python source is copyrighted, but you can freely use and copy it
387425
as long as you don't change or remove the copyright:
388426

389-
Copyright 1991, 1992, 1993, 1994 by Stichting Mathematisch Centrum,
390-
Amsterdam, The Netherlands.
427+
Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam,
428+
The Netherlands.
391429

392430
All Rights Reserved
393431

0 commit comments

Comments
 (0)
X Tutup