blob: 6e46244e89a0768304b52547343c229781d9b175 [file] [log] [blame]
Guido van Rossum3d67fee1994-08-17 12:33:50 +00001
2(-) systematically create /usr/local/lib/python/<machine>-<os>/
3 subdirectories, with a lib/ subdirectory containing the lib*.a
4 files etc.
5
Guido van Rossumc561e5d1994-08-23 13:52:46 +00006(-) need newer DOS binary (16 bit version doesn't do default args)
7
8(-) support for dynamically loadable libraries in makesetup and Extensions.
9 e.g. add a make rule to build .so files (unfortunately need to figure
10 out what ld option is needed) (more appropriate for makesetup
11 script?)
12
13(-) Move tkinter into the standard Modules directory; Tkinter c.s. to
14 Lib/tkinter etc. (???)
15
16(-) document Tk
17
18(-) class browser
19
20(-) interactive Python GUI (a la NT thingie)
21
22(-) speedup finddfa (and classify?)
23
24(-) more stuff under CVS (demo, extensions)
25
26(-) Mac port of 1.1
27
28(-) Mac port of STDWIN 0.9.9 to THINK C 6.0
29
Guido van Rossum3d67fee1994-08-17 12:33:50 +000030(-) use const for char * parameters (and many more) where possible
31
32(-) The Great Renaming!
33
Guido van Rossumc561e5d1994-08-23 13:52:46 +000034(-) redo __xxx__ operators for class instances
35
36(-) document __getattr__, __setattr__
37
38(-) add __delattr__ to class instances
Guido van Rossumfda5fb21994-08-12 13:18:41 +000039
40(-) many things that take strings should also take arrays of chars
41
Guido van Rossumfda5fb21994-08-12 13:18:41 +000042(-) add list of existing extensions to FAQ
43
44(-) update "recent additions" chapter in tutorial
45
46(-) rewrite "output formatting" chapter in tutorial
47
Guido van Rossumc561e5d1994-08-23 13:52:46 +000048(*) pass OPT from environment via configure to Makefile
Guido van Rossumfda5fb21994-08-12 13:18:41 +000049
Guido van Rossumc561e5d1994-08-23 13:52:46 +000050(*) version.c should be recompiled for each link
51
52(*) stropmodule should export find/rfind instead of index/rindex
53
54(*) add __getattr__, __setattr__ to class instances
55
56(*) fix pow(x, y, z) for integers
57
58(*) add tuple(seq) to turn any sequence into a tuple
59
60(*) Win32s for PC
61
62(*) integrate NT changes
63
64(*) write a script and add a "Make" rule (perhaps) that changes
Guido van Rossum5552eb71994-08-05 15:51:00 +000065 #!/usr/local/bin/python to something else in all scripts around.
66
Guido van Rossum433c8ad1994-08-01 12:07:07 +000067(*) int*int overflow check shouldn't doubles on alpha (cf. John Tromp's mail)
68
69(*) add signal.alarm()
70
71(*) when abort()ing because of unexpected exception, print a message
72 first (Jack)
73
74----------------------------------------------------------------------
75(from BUGS1.0.1)
76----------------------------------------------------------------------
Guido van Rossumfda5fb21994-08-12 13:18:41 +000077(-) document addpack, urllib, ...
Guido van Rossum433c8ad1994-08-01 12:07:07 +000078
79(*) import.c from JaapV
80
Guido van Rossumc561e5d1994-08-23 13:52:46 +000081(*) document os.exec*
Guido van Rossum433c8ad1994-08-01 12:07:07 +000082
Guido van Rossumfda5fb21994-08-12 13:18:41 +000083(*) name sunaudiodevmodule.c is too long
Guido van Rossum433c8ad1994-08-01 12:07:07 +000084
85(*) play with / include SUIT interface
86
Guido van Rossumfda5fb21994-08-12 13:18:41 +000087(-) make regsub.[g]sub() optionally case insensitive
Guido van Rossum433c8ad1994-08-01 12:07:07 +000088
Guido van Rossum433c8ad1994-08-01 12:07:07 +000089======================================================================
90
91(*) ought to use features from autoconf 1.8
92
93(*) errors in __repr__() are handled wrong when called from format
94
Guido van Rossumfda5fb21994-08-12 13:18:41 +000095(*) long(0x80000000) has wrong value!
Guido van Rossum433c8ad1994-08-01 12:07:07 +000096
Guido van Rossumfda5fb21994-08-12 13:18:41 +000097(-) hex(0x80000000) shouldn't have sign (?)
Guido van Rossum433c8ad1994-08-01 12:07:07 +000098
99(*) need way to set buffering at file open time
100
101(*) need way to force stdout unbuffered
102
Guido van Rossumfda5fb21994-08-12 13:18:41 +0000103(*) restart CVS tree
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000104
105(?) build shared libs for SunOS 4.1.3
106
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000107(-) dynamic linking on the Mac (is this a dream?)
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000108
109(*) X patches from Adrian Phillips
110
111(*) Jaap's freeze script
112
113Incorporate with contrib status:
114- additions to glmodule by rg3h
115(*) Jaap's posixfile module (with locking)
116(*) pthreads interface
117
118Later:
119- put the offending object in IOError and posix.error
120- make module marshal work with user-defined file-like objects
121- built-in help?
122- hierarchical module names?
123
124Big plans:
125
126- allow separate interpreters (a la Xt's Applocation Contexts, and Tcl)
127- great renaming
128- complete reflexive nature of the language, e.g. have interfaces et
129create any kind of object
130(*) GUI interface a la Tk
131
132
133======================================================================
134For FAQ:
135
136(*) why don't strings (numbers, tuples, ...) have methods / attributes
137
138(*) why are strings / numbers / tuples immutable
139
140why don't list methods return self
141
142======================================================================
143PM/TODO list after Egypt (from mailing list):
144
145make .pyc files executable (how?)
146
147thread status and improvements (lock stmt; signal/wait)
148
149optional optimizations
150
151pthread migration
152
153(*) test/incorporate new SUIT
154
155shorten excessively long filenames (sunaudiodevmodule.c)
156
157(*) default parameter values
158
159multiple interpreter objects
160
161(*) import shlib bug (irix5.2) (reload, dlclose)
162
163(*) addpack.py
164
165(*) newmodule.c (or other hacks to create new modules, classes, functions
166 etc. from their components)
167
168persistency
169
170new Dbhash.py, dbhash library
171
172reraise; or raise 3rd param for traceback?
173-or- except type, value, tbackobjec
174
175redesign exceptions from scratch?
176
177dbm objects miss items(), values() methods
178
179(*) jar's new profile
180
181answer q about coerce()
182
183(*) reconsider pass [expression] ??? -or- don't print non-interactive
184 exprs -or- option to suppress printing non-None expressions
185
186(*) should be able to hash code objs (add fns to convert between lists/tuples)
187
188describe() ?
189
190distribute demo2 with Holmes
191
192(*) re-reply on try-continue
193
194classes are too slow
195
196add += etc. ?
197
198optimize tuple = tuple
199
200allow (a, b) = [1, 2] and [1, 2] = (1, 2) ???
201
202wustl is not un the northwest of the US?
203
204(*) MPW doesn't like \000 in string literals?
205
206MPW patches, unixemu patches
207
208prepare tar files with
209 - mac think projects (*)
210 - mpw makefiles
211 - dos makefiles
212 - mac unixemu lib
213
214explain rules about == vs. 'is' for strings (* by others on the list)
215
216(*) bug in ceval.c DELETE_FAST
217
218(*) possible optimize LOAD_NAME -> LOAD_GLOBAL
219
220get dos python with suit (inesc)
221
222(*) docs for try/continue are wrong and unclear
223
224better hashing fn?
225
226(*) add improved nested indent to python-mode.el
227
228(*) add a section to tutorial on "new" features
229
230rewrite section on formatting in tutorial
231
232======================================================================
233TODO-TOO list:
234
235test for overflow when converting python long to float
236
237lift restrictions on tuple or list in many cases
238
239(*) allow long ints with sensible values for getargs "i"
240
241(*) multiline string literals
242
243what to do about 64-bit int literals (on 64-bit machines) in .pyc
244files? (Currently truncated w/o warning!)
245
246DOCUMENTATION UPDATE! E.g. ref.tex doesn't describe:
247(*) - line joins w/o backslash
248(*) - double-quoted strings; \" in strings
249 - more?
250Should double-check all changes with docs!
251
252(?) Interrupting output still sometimes doesn't call clearerr() properly
253
254sometimes ghost errors when interrupting during debugging in
255'continue' mode?
256
257typing a comment to a primary prompt shouldn't issue a secondary prompt
258
259readline: add hooks to recognize Python syntax and to expand Python
260commands and names
261
262should have absolute pathnames in function objects
263
264in general check that all the exceptions are modernized and that the
265messages aren't giving the same error twice (e.g., stdwinmodule.c!)
266
267- check read/write allowed for file objects
268
269- introduce macros to set/inspect errno for syscalls, to support things
270 like getoserr()
271
272======================================================================
273DOS/Windows Python
274
275(???) command line options?
276
277(*) os.system()
278
279(???) interrupts
280
281(???) wrap
282
283(*) pc module
284
285(*) dospath.py
286
287DOS/Windows Python -- TO DO
288
289(*) memtest from config.h
290
291(*) copy sources back
292
293(*) build DOS version
294
295(*) distribute 386 version
296
297(*) Mac 1.0.1 release?
298======================================================================