blob: b34097130035c8506aba1dba12fb4c4a51a57c5b [file] [log] [blame]
Guido van Rossum9444ce01994-10-20 22:10:23 +00001(*) newgetargs() dumps core in compat mode when NULL is passed in but
2max is >0
3
4(-) stack frame correspondence problem (Jim Roskind)
5
6(-) invent new style (rename1.h) name for newgetargs
7
8(-) make lots of places use newgetargs
9
10(-) no tp_str member in typeobject
11
12(-) getargs has small bugs (e.g. strange error msgs)
13
14(-) sorting class instances broken if no __com__ defined
15
16(-) readline 2.0 on sequent has ^C problem (works only first time)
17
18(-) add explanatory comments to Setup (especially about SGI modules
19like 'cd')
20
21(-) Q3 ftp mail archive
22
23(-) need to add truncate() and ftruncate() to posixmodule.c (Windows:
24chsize(fd, size)
25
26======================================================================
27Release 1.1 (11 Oct 1994)
28======================================================================
29
Guido van Rossumb85ae1a1994-10-06 16:15:09 +000030(*) 2 specific leaks: 1 PYTHONPATH; 2 reading code from .pyc
31
32(-) if __getattr__ prints something, calling repr(x) from cmd line
33forgets a newline
34
35(-) improve performance of list.append/insert etc. by keeping high/low
36watermark instead of realloc'ing each time?
37
38(-) findmethod should cache (also findmember?)
39
40(-) sysget("check_interval") is called before each method call which
41breaks dictlookup caching
42
43(*) core dump on import of ridiculously long module name
44
45(-) core dump on repr / print of deeply nested or recursive object
46
47(*) parsing from string should calculate line numbers
48
49(-) whrandom doc needs update
50
51(-) mpz power is still binary insterad of ternary
52
53(*) design interface to call arbitrary asynchronous routines
54
55(*) whrandom.set...(0,0,0) doesn't generate random numbers
56
57(*) Lance's latest curses additions
58
59(-) Jack's new code:
60 (*) new xxmodule.c
61 (*) mac has type for .pyc files
62 (*) should run .pyc files when passed as command line argument
63
64(*) all new all singing all dancing freeze script
65
66(*) make clean should remove *.so and not Makefile.pre
67
68(-) fix signalmodule.c to re-establish SIGC[H]LD handler
69
Guido van Rossum0a516c91994-09-12 10:58:40 +000070(-) try out Kees Blom's railroad diagram generator
71
Guido van Rossum7522f031994-08-30 12:42:01 +000072(-) redesign error handling (cf. Donald's mail)
73
Guido van Rossum0a516c91994-09-12 10:58:40 +000074(*) do MPW and THINK still not support sys_errlist? Indeed not (neither).
Guido van Rossum7522f031994-08-30 12:42:01 +000075
76(-) does MPW 3.2 need the MPW_881_BUG defined in Parser/acceler.c
77
78(-) rename MPW_3_1 define (which really means 3.x)
79
Guido van Rossum0a516c91994-09-12 10:58:40 +000080(*) incorporate urlparse.py, uu.py
Guido van Rossum7522f031994-08-30 12:42:01 +000081
Guido van Rossum0a516c91994-09-12 10:58:40 +000082(*) rewrite instance __getattr__ etc. to store ptr in class instead of
Guido van Rossum7522f031994-08-30 12:42:01 +000083instance -- also have separate __delattr__
84
85(-) add warning to docs about sys.exc_traceback and sys.last_traceback.
86
87(-) Some stdwin wishes:
88
89 (-) stdwinmodule should keep track of textedit rec's per window
90 (in a chain) so it can unlink them when the window is closed
91 before the te rec
92
93 (-) textedit flashes at return or backspace
94
95 (-) there's no way to show the text caret after a multi-line paste?
96
Guido van Rossum0a516c91994-09-12 10:58:40 +000097(*) termios module
Guido van Rossum7522f031994-08-30 12:42:01 +000098
99(*) put signal patches out separately
100
101(-) latex docs for signal module
102
103(*) More MPW and Mac changes
104
Guido van Rossum0a516c91994-09-12 10:58:40 +0000105(*) Sjoerd's compileall script
Guido van Rossum3d67fee1994-08-17 12:33:50 +0000106
107(-) systematically create /usr/local/lib/python/<machine>-<os>/
108 subdirectories, with a lib/ subdirectory containing the lib*.a
109 files etc.
110
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000111(-) need newer DOS binary (16 bit version doesn't do default args)
112
Guido van Rossum0a516c91994-09-12 10:58:40 +0000113(*) support for dynamically loadable libraries in makesetup and Extensions.
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000114 e.g. add a make rule to build .so files (unfortunately need to figure
115 out what ld option is needed) (more appropriate for makesetup
116 script?)
117
Guido van Rossum0a516c91994-09-12 10:58:40 +0000118(*) Move tkinter into the standard Modules directory; Tkinter c.s. to
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000119 Lib/tkinter etc. (???)
120
121(-) document Tk
122
123(-) class browser
124
125(-) interactive Python GUI (a la NT thingie)
126
Guido van Rossum0a516c91994-09-12 10:58:40 +0000127(*) speedup finddfa (and classify?)
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000128
129(-) more stuff under CVS (demo, extensions)
130
Guido van Rossum0a516c91994-09-12 10:58:40 +0000131(*) Mac port of 1.1
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000132
Guido van Rossum0a516c91994-09-12 10:58:40 +0000133(*) Mac port of STDWIN 0.9.9 to THINK C 6.0
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000134
Guido van Rossum3d67fee1994-08-17 12:33:50 +0000135(-) use const for char * parameters (and many more) where possible
136
137(-) The Great Renaming!
138
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000139(-) redo __xxx__ operators for class instances
140
141(-) document __getattr__, __setattr__
142
143(-) add __delattr__ to class instances
Guido van Rossumfda5fb21994-08-12 13:18:41 +0000144
145(-) many things that take strings should also take arrays of chars
146
Guido van Rossumfda5fb21994-08-12 13:18:41 +0000147(-) add list of existing extensions to FAQ
148
149(-) update "recent additions" chapter in tutorial
150
151(-) rewrite "output formatting" chapter in tutorial
152
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000153(*) pass OPT from environment via configure to Makefile
Guido van Rossumfda5fb21994-08-12 13:18:41 +0000154
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000155(*) version.c should be recompiled for each link
156
157(*) stropmodule should export find/rfind instead of index/rindex
158
159(*) add __getattr__, __setattr__ to class instances
160
161(*) fix pow(x, y, z) for integers
162
163(*) add tuple(seq) to turn any sequence into a tuple
164
165(*) Win32s for PC
166
167(*) integrate NT changes
168
169(*) write a script and add a "Make" rule (perhaps) that changes
Guido van Rossum5552eb71994-08-05 15:51:00 +0000170 #!/usr/local/bin/python to something else in all scripts around.
171
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000172(*) int*int overflow check shouldn't doubles on alpha (cf. John Tromp's mail)
173
174(*) add signal.alarm()
175
176(*) when abort()ing because of unexpected exception, print a message
177 first (Jack)
178
179----------------------------------------------------------------------
180(from BUGS1.0.1)
181----------------------------------------------------------------------
Guido van Rossumfda5fb21994-08-12 13:18:41 +0000182(-) document addpack, urllib, ...
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000183
184(*) import.c from JaapV
185
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000186(*) document os.exec*
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000187
Guido van Rossumfda5fb21994-08-12 13:18:41 +0000188(*) name sunaudiodevmodule.c is too long
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000189
190(*) play with / include SUIT interface
191
Guido van Rossumfda5fb21994-08-12 13:18:41 +0000192(-) make regsub.[g]sub() optionally case insensitive
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000193
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000194======================================================================
195
196(*) ought to use features from autoconf 1.8
197
198(*) errors in __repr__() are handled wrong when called from format
199
Guido van Rossumfda5fb21994-08-12 13:18:41 +0000200(*) long(0x80000000) has wrong value!
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000201
Guido van Rossumfda5fb21994-08-12 13:18:41 +0000202(-) hex(0x80000000) shouldn't have sign (?)
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000203
204(*) need way to set buffering at file open time
205
206(*) need way to force stdout unbuffered
207
Guido van Rossumfda5fb21994-08-12 13:18:41 +0000208(*) restart CVS tree
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000209
210(?) build shared libs for SunOS 4.1.3
211
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000212(-) dynamic linking on the Mac (is this a dream?)
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000213
214(*) X patches from Adrian Phillips
215
216(*) Jaap's freeze script
217
Guido van Rossumb85ae1a1994-10-06 16:15:09 +0000218(-) Incorporate with contrib status:
219 - additions to glmodule by rg3h
220 (*) Jaap's posixfile module (with locking)
221 (*) pthreads interface
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000222
Guido van Rossumb85ae1a1994-10-06 16:15:09 +0000223(-) Later:
224 - put the offending object in IOError and posix.error
225 - make module marshal work with user-defined file-like objects
226 - built-in help?
227 - hierarchical module names?
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000228
229Big plans:
230
231- allow separate interpreters (a la Xt's Applocation Contexts, and Tcl)
232- great renaming
233- complete reflexive nature of the language, e.g. have interfaces et
234create any kind of object
235(*) GUI interface a la Tk
236
237
238======================================================================
239For FAQ:
240
241(*) why don't strings (numbers, tuples, ...) have methods / attributes
242
243(*) why are strings / numbers / tuples immutable
244
245why don't list methods return self
246
247======================================================================
248PM/TODO list after Egypt (from mailing list):
249
250make .pyc files executable (how?)
251
252thread status and improvements (lock stmt; signal/wait)
253
254optional optimizations
255
256pthread migration
257
258(*) test/incorporate new SUIT
259
260shorten excessively long filenames (sunaudiodevmodule.c)
261
262(*) default parameter values
263
264multiple interpreter objects
265
266(*) import shlib bug (irix5.2) (reload, dlclose)
267
268(*) addpack.py
269
270(*) newmodule.c (or other hacks to create new modules, classes, functions
271 etc. from their components)
272
273persistency
274
275new Dbhash.py, dbhash library
276
Guido van Rossumb85ae1a1994-10-06 16:15:09 +0000277(-) reraise; or raise 3rd param for traceback?
278 -or- except type, value, tbackobjec
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000279
Guido van Rossumb85ae1a1994-10-06 16:15:09 +0000280(-) redesign exceptions from scratch?
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000281
Guido van Rossumb85ae1a1994-10-06 16:15:09 +0000282(-) dbm objects miss items(), values() methods
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000283
284(*) jar's new profile
285
Guido van Rossumb85ae1a1994-10-06 16:15:09 +0000286(-) answer q about coerce()
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000287
288(*) reconsider pass [expression] ??? -or- don't print non-interactive
289 exprs -or- option to suppress printing non-None expressions
290
291(*) should be able to hash code objs (add fns to convert between lists/tuples)
292
Guido van Rossumb85ae1a1994-10-06 16:15:09 +0000293(-) describe() ?
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000294
Guido van Rossumb85ae1a1994-10-06 16:15:09 +0000295(-) distribute demo2 with Holmes
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000296
297(*) re-reply on try-continue
298
Guido van Rossumb85ae1a1994-10-06 16:15:09 +0000299(-) classes are too slow
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000300
Guido van Rossumb85ae1a1994-10-06 16:15:09 +0000301(-) add += etc. ?
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000302
303optimize tuple = tuple
304
305allow (a, b) = [1, 2] and [1, 2] = (1, 2) ???
306
307wustl is not un the northwest of the US?
308
309(*) MPW doesn't like \000 in string literals?
310
311MPW patches, unixemu patches
312
313prepare tar files with
314 - mac think projects (*)
315 - mpw makefiles
316 - dos makefiles
317 - mac unixemu lib
318
319explain rules about == vs. 'is' for strings (* by others on the list)
320
321(*) bug in ceval.c DELETE_FAST
322
323(*) possible optimize LOAD_NAME -> LOAD_GLOBAL
324
325get dos python with suit (inesc)
326
327(*) docs for try/continue are wrong and unclear
328
329better hashing fn?
330
331(*) add improved nested indent to python-mode.el
332
333(*) add a section to tutorial on "new" features
334
335rewrite section on formatting in tutorial
336
337======================================================================
338TODO-TOO list:
339
340test for overflow when converting python long to float
341
342lift restrictions on tuple or list in many cases
343
344(*) allow long ints with sensible values for getargs "i"
345
346(*) multiline string literals
347
348what to do about 64-bit int literals (on 64-bit machines) in .pyc
349files? (Currently truncated w/o warning!)
350
351DOCUMENTATION UPDATE! E.g. ref.tex doesn't describe:
352(*) - line joins w/o backslash
353(*) - double-quoted strings; \" in strings
354 - more?
355Should double-check all changes with docs!
356
357(?) Interrupting output still sometimes doesn't call clearerr() properly
358
359sometimes ghost errors when interrupting during debugging in
360'continue' mode?
361
362typing a comment to a primary prompt shouldn't issue a secondary prompt
363
364readline: add hooks to recognize Python syntax and to expand Python
365commands and names
366
367should have absolute pathnames in function objects
368
369in general check that all the exceptions are modernized and that the
370messages aren't giving the same error twice (e.g., stdwinmodule.c!)
371
372- check read/write allowed for file objects
373
374- introduce macros to set/inspect errno for syscalls, to support things
375 like getoserr()
376
377======================================================================
378DOS/Windows Python
379
380(???) command line options?
381
382(*) os.system()
383
384(???) interrupts
385
386(???) wrap
387
388(*) pc module
389
390(*) dospath.py
391
392DOS/Windows Python -- TO DO
393
394(*) memtest from config.h
395
396(*) copy sources back
397
398(*) build DOS version
399
400(*) distribute 386 version
401
402(*) Mac 1.0.1 release?
403======================================================================