Add some more feature requests from SF.

This commit is contained in:
Guido van Rossum 2001-08-09 16:53:49 +00:00
parent 9c3933579f
commit e43db125c1
1 changed files with 70 additions and 38 deletions

View File

@ -33,13 +33,13 @@ Core Language / Builtins
uses internally. Apparently mxTools has a sizeof function that uses internally. Apparently mxTools has a sizeof function that
returns the size of the object struct itself. returns the size of the object struct itself.
http://sourceforge.net/bugs/?func=detailbug&bug_id=110835&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110835&group_id=5470
- Add C API functions to help Windows users who are building - Add C API functions to help Windows users who are building
embedded applications where the FILE * structure does not match embedded applications where the FILE * structure does not match
the FILE * the interpreter was compiled with. the FILE * the interpreter was compiled with.
http://sourceforge.net/bugs/?func=detailbug&bug_id=110821&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110821&group_id=5470
See this bug report for a specific suggestion that will allow a See this bug report for a specific suggestion that will allow a
Borland C++ builder application to interact with a python.dll Borland C++ builder application to interact with a python.dll
@ -53,7 +53,7 @@ Core Language / Builtins
current compiler can overflow the C stack if the nesting is too current compiler can overflow the C stack if the nesting is too
deep. deep.
http://sourceforge.net/bugs/?func=detailbug&bug_id=115555&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=115555&group_id=5470
- The buffer interface could be smarter when a buffer object is - The buffer interface could be smarter when a buffer object is
created that depends on another buffer object -- if the created that depends on another buffer object -- if the
@ -61,7 +61,7 @@ Core Language / Builtins
have no base either. It could be argued that the depending have no base either. It could be argued that the depending
object should have the original object as a base. Or not. object should have the original object as a base. Or not.
http://sourceforge.net/bugs/?func=detailbug&bug_id=116405&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=116405&group_id=5470
Standard Library Standard Library
@ -70,19 +70,19 @@ Standard Library
This is a reminder to people that more regression tests are This is a reminder to people that more regression tests are
needed. needed.
http://sourceforge.net/bugs/?func=detailbug&group_id=5470&bug_id=110819 http://sf.net/bugs/?func=detailbug&group_id=5470&bug_id=110819
- The urllib module should support proxies which require - The urllib module should support proxies which require
authenication. See SourceForge bug #110619 for information: authenication. See SourceForge bug #110619 for information:
http://sourceforge.net/bugs/?func=detailbug&bug_id=110619&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110619&group_id=5470
- Use objects with attributes in place of tuples of values for - Use objects with attributes in place of tuples of values for
return values in several places in the library. Two specific return values in several places in the library. Two specific
APIs which could use this treatment include os.stat() and APIs which could use this treatment include os.stat() and
os.statvfs(); see SourceForge bug #111481: os.statvfs(); see SourceForge bug #111481:
http://sourceforge.net/bugs/?func=detailbug&bug_id=111481&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=111481&group_id=5470
which shows very specifically why this approach is better than which shows very specifically why this approach is better than
the tuple approach: additional attributes can be added as needed the tuple approach: additional attributes can be added as needed
@ -93,7 +93,7 @@ Standard Library
boundaries by copying the file over and removing the original. boundaries by copying the file over and removing the original.
Linux is one system that requires this treatment. Linux is one system that requires this treatment.
http://sourceforge.net/bugs/?func=detailbug&bug_id=112317&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=112317&group_id=5470
- signal handling doesn't always work as expected. E.g. if - signal handling doesn't always work as expected. E.g. if
sys.stdin.readline() is interrupted by a (returning) signal sys.stdin.readline() is interrupted by a (returning) signal
@ -102,7 +102,7 @@ Standard Library
changes would have to applied to all places that can do blocking changes would have to applied to all places that can do blocking
interruptable I/O. So it's a big project. interruptable I/O. So it's a big project.
http://sourceforge.net/bugs/?func=detailbug&bug_id=110599&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110599&group_id=5470
- Ensure that all .py files in the std library use 4-space indents and - Ensure that all .py files in the std library use 4-space indents and
no hard tabs. This was actually a PEP200 precondition for the no hard tabs. This was actually a PEP200 precondition for the
@ -110,45 +110,45 @@ Standard Library
tabnanny not complain. Tim Peters will do this now, but, since about tabnanny not complain. Tim Peters will do this now, but, since about
250 files are affected, will wait until after 2.0final is released. 250 files are affected, will wait until after 2.0final is released.
http://sourceforge.net/bugs/?func=detailbug&bug_id=114557&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=114557&group_id=5470
- Port the Python SSL code to Windows. - Port the Python SSL code to Windows.
http://sourceforge.net/bugs/?func=detailbug&bug_id=110683&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110683&group_id=5470
- Extend Windows utime to accept directory paths. - Extend Windows utime to accept directory paths.
http://sourceforge.net/bugs/?func=detailbug&bug_id=114245&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=114245&group_id=5470
- Extend copy.py to class, module & function types. - Extend copy.py to class, module & function types.
http://sourceforge.net/bugs/?func=detailbug&bug_id=114553&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=114553&group_id=5470
- Better checking for bad input to marshal.load*(). - Better checking for bad input to marshal.load*().
http://sourceforge.net/bugs/?func=detailbug&bug_id=114754&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=114754&group_id=5470
- Generalize eval to accept any mapping objects for locals and globals. - Generalize eval to accept any mapping objects for locals and globals.
http://sourceforge.net/bugs/?func=detailbug&bug_id=115126&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=115126&group_id=5470
- Add a portable implementation of time.strptime() that works in - Add a portable implementation of time.strptime() that works in
clearly defined ways on all platforms. clearly defined ways on all platforms.
http://sourceforge.net/bugs/?func=detailbug&bug_id=115146&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=115146&group_id=5470
http://sourceforge.net/bugs/?func=detailbug&bug_id=112244&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=112244&group_id=5470
- rfc822.py should be more lenient than the spec in the types of - rfc822.py should be more lenient than the spec in the types of
address fields it parses. Specifically, an invalid address of address fields it parses. Specifically, an invalid address of
the form "From: Amazon.com <delivers-news2@amazon.com>" should the form "From: Amazon.com <delivers-news2@amazon.com>" should
be parsed correctly. be parsed correctly.
http://sourceforge.net/bugs/?func=detailbug&bug_id=110678&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110678&group_id=5470
- cgi.py's FieldStorage class should be more conservative with - cgi.py's FieldStorage class should be more conservative with
memory in the face of large binary file uploads. memory in the face of large binary file uploads.
http://sourceforge.net/bugs/?func=detailbug&bug_id=110674&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110674&group_id=5470
There are two issues here: first, because There are two issues here: first, because
read_lines_to_outerboundary() uses readline() it is possible read_lines_to_outerboundary() uses readline() it is possible
@ -160,17 +160,17 @@ Standard Library
The second issue was related to the self.lines attribute, which The second issue was related to the self.lines attribute, which
was removed in revision 1.56 of cgi.py (see also): was removed in revision 1.56 of cgi.py (see also):
http://sourceforge.net/bugs/?func=detailbug&bug_id=119806&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=119806&group_id=5470
- urllib should support proxy definitions that contain just the - urllib should support proxy definitions that contain just the
host and port host and port
http://sourceforge.net/bugs/?func=detailbug&bug_id=110849&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110849&group_id=5470
- urlparse should be updated to comply with RFC 2396, which - urlparse should be updated to comply with RFC 2396, which
defines optional parameters for each segment of the page. defines optional parameters for each segment of the page.
http://sourceforge.net/bugs/?func=detailbug&bug_id=110834&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110834&group_id=5470
- The exceptions raised by pickle and cPickle are currently - The exceptions raised by pickle and cPickle are currently
different; these should be unified (probably the exceptions different; these should be unified (probably the exceptions
@ -182,13 +182,13 @@ Standard Library
and then do the usual %HH conversion. But this is not the only and then do the usual %HH conversion. But this is not the only
one! one!
http://sourceforge.net/bugs/?func=detailbug&bug_id=116716&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=116716&group_id=5470
- There should be a way to say that you don't mind if str() or - There should be a way to say that you don't mind if str() or
__str__() return a Unicode string object. Or a different __str__() return a Unicode string object. Or a different
function -- ustr() has been proposed. Or something... function -- ustr() has been proposed. Or something...
http://sourceforge.net/patch/?func=detailpatch&patch_id=101527&group_id=5470 http://sf.net/patch/?func=detailpatch&patch_id=101527&group_id=5470
- A UTF-7 codec. It's not a great encoding, but it's required in - A UTF-7 codec. It's not a great encoding, but it's required in
some places (e.g. IMAP mailbox names with Asian language some places (e.g. IMAP mailbox names with Asian language
@ -198,27 +198,27 @@ Standard Library
- Killing a thread from another thread. Or maybe sending a - Killing a thread from another thread. Or maybe sending a
signal. Or maybe raising an asynchronous exception. signal. Or maybe raising an asynchronous exception.
http://sourceforge.net/bugs/?func=detailbug&bug_id=121115&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=121115&group_id=5470
- The debugger (pdb) should understand packages. - The debugger (pdb) should understand packages.
http://sourceforge.net/bugs/?func=detailbug&bug_id=110631&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110631&group_id=5470
- The cmath library should be rewritten in Python. - The cmath library should be rewritten in Python.
http://sourceforge.net/bugs/?func=detailbug&bug_id=110838&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110838&group_id=5470
- Could use a more comprehensive email module. (But then again, - Could use a more comprehensive email module. (But then again,
that may be better done as a 3rd party project.) that may be better done as a 3rd party project.)
http://sourceforge.net/bugs/?func=detailbug&bug_id=121208&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=121208&group_id=5470
- every built-in function or method (including all core - every built-in function or method (including all core
extensions) that accepts a string, dict, or list, should also extensions) that accepts a string, dict, or list, should also
accept a UserString, UserDict, or UserList. (The latter two accept a UserString, UserDict, or UserList. (The latter two
should more generally accept all mappings, all sequences.) should more generally accept all mappings, all sequences.)
http://sourceforge.net/bugs/?func=detailbug&bug_id=132493&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=132493&group_id=5470
- Fatter math module docs and docstrings. - Fatter math module docs and docstrings.
@ -228,6 +228,38 @@ Standard Library
http://sf.net/tracker/?func=detail&aid=426539&group_id=5470&atid=105470 http://sf.net/tracker/?func=detail&aid=426539&group_id=5470&atid=105470
- Jim Fulton suggested the following:
I wonder if it would be a good idea to have a new kind of
temporary file that stored data in memory unless:
- The data exceeds some size, or
- Somebody asks for a fileno.
Then the cgi module (and other apps) could use this thing in a
uniform way.
http://sf.net/tracker/?func=detail&aid=415692&group_id=5470&atid=355470
- Jim Fulton pointed out that binascii's b2a_base64() function
restricts the length of its input to 57 characters for no good
reason: the code would work for any input size but for this
check. Also, there are situations where it makes sense not to
append a newline, or to append something else than a newline.
Proposal:
- get rid of the input size check
- add an optional argument giving the delimiter string to be
appended, defaulting to "\n"
- possibly special-case None as the delimiter string to avoid
adding the pad bytes too???
http://sf.net/tracker/?func=detail&aid=415694&group_id=5470&atid=355470
Tools Tools
@ -235,26 +267,26 @@ Tools
be done properly, scripts will have to be run in a separate be done properly, scripts will have to be run in a separate
process. process.
http://sourceforge.net/bugs/?func=detailbug&bug_id=110841&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110841&group_id=5470
- Python could use a GUI builder. - Python could use a GUI builder.
http://sourceforge.net/bugs/?func=detailbug&bug_id=110820&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110820&group_id=5470
- IDLE's key bindings should be revised. Some of the advertised - IDLE's key bindings should be revised. Some of the advertised
bindings don't even work! bindings don't even work!
http://sourceforge.net/bugs/?func=detailbug&bug_id=110659&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110659&group_id=5470
- IDLE has deep problems running threaded programs. Re-architect. - IDLE has deep problems running threaded programs. Re-architect.
http://sourceforge.net/bugs/?func=detailbug&bug_id=121963&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=121963&group_id=5470
- Would be nice if IDLE showed which structure was being closed upon - Would be nice if IDLE showed which structure was being closed upon
typing one of "})]". Heck, a string too, for that matter. typing one of "})]". Heck, a string too, for that matter.
The bug report also says something about TAB I didn't grok. The bug report also says something about TAB I didn't grok.
http://sourceforge.net/tracker/?func=detail&aid=404444&group_id=5470&atid=105470 http://sf.net/tracker/?func=detail&aid=404444&group_id=5470&atid=105470
Building and Installing Building and Installing
@ -262,14 +294,14 @@ Building and Installing
- You should be able to configure and build Python with a - You should be able to configure and build Python with a
cross-compiler. cross-compiler.
http://sourceforge.net/bugs/?func=detailbug&bug_id=110836&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=110836&group_id=5470
- Modules/makesetup should make sure the 'config.c' file it - Modules/makesetup should make sure the 'config.c' file it
generates from the various Setup files, is valid C. It currently generates from the various Setup files, is valid C. It currently
accepts module names with characters that are not allowable in accepts module names with characters that are not allowable in
Python or C identifiers. Python or C identifiers.
http://sourceforge.net/bugs/?func=detailbug&bug_id=116326&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=116326&group_id=5470
- There's a name conflict on case insensitive filesystems (in - There's a name conflict on case insensitive filesystems (in
particular Mac OSX) between the directory "Python" and the key particular Mac OSX) between the directory "Python" and the key
@ -278,7 +310,7 @@ Building and Installing
causes the binary to be *installed* as python.exe). What should causes the binary to be *installed* as python.exe). What should
be the solution? be the solution?
http://sourceforge.net/bugs/?func=detailbug&bug_id=122215&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=122215&group_id=5470
- Building from source should not attempt to overwrite the - Building from source should not attempt to overwrite the
Include/graminit.h and Parser/graminit.c files, at least for Include/graminit.h and Parser/graminit.c files, at least for
@ -286,7 +318,7 @@ Building and Installing
or snapshots. Some people find this a problem in unusual build or snapshots. Some people find this a problem in unusual build
environments. environments.
http://sourceforge.net/bugs/?func=detailbug&bug_id=119221&group_id=5470 http://sf.net/bugs/?func=detailbug&bug_id=119221&group_id=5470
- There should be at least an option to build Python as a shared - There should be at least an option to build Python as a shared
library. library.