Commit Graph

3686 Commits

Author SHA1 Message Date
Greg Ward 2e38a50db1 Bastian Kleineidam: fix up any supplied command-line options. 2000-10-14 03:40:20 +00:00
Jeremy Hylton 9c048f9f65 Now supports entire Python 2.0 language and still supports Python
1.5.2.  The compiler generates code for the version of the interpreter
it is run under.

ast.py:
    Print and Printnl add dest attr for extended print
    new node AugAssign for augmented assignments
    new nodes ListComp, ListCompFor, and ListCompIf for list
        comprehensions

pyassem.py:
    add work around for string-Unicode comparison raising UnicodeError
        on comparison of two objects in code object's const table

pycodegen.py:
    define VERSION, the Python major version number
    get magic number using imp.get_magic() instead of hard coding
    implement list comprehensions, extended print, and augmented
        assignment; augmented assignment uses Delegator classes (see
        doc string)
    fix import and tuple unpacking for 1.5.2

transformer.py:
    various changes to support new 2.0 grammar and old 1.5 grammar
    add debug_tree helper than converts and symbol and token numbers
    to their names
2000-10-13 21:58:13 +00:00
Lars Gustäbel 5bad5a4be2 Updated test suite to latest pulldom changes. 2000-10-13 20:54:10 +00:00
Lars Gustäbel ec964d5b21 Moved appendChild calls back to DOMEventStream.
Added SAX2DOM class.
2000-10-13 20:53:27 +00:00
Paul Prescod 4221ff0ee1 Clear siblings, now that they are being set. 2000-10-13 20:11:42 +00:00
Neil Schemenauer 8a00abc0ff Make the regrtest.py -l (findleaks) option considerably less obnoxious.
First, only report garbage that the GC cannot free.  Second, only report
the number of objects found, not their repr().  People can dig deeper on
their own if they find a leak.
2000-10-13 01:32:42 +00:00
Jeremy Hylton 4e1be72e6b Fix SF bug #116263: support for from .. import *
transformer.py: return '*', None from com_import_as_name
pycodegen.py: special case for name == '*'
pyassem.py: fix stack counting for IMPORT_ opcodes
2000-10-12 20:23:23 +00:00
Jeremy Hylton 110941a4ba If the status line is invalid, assume it is a pre-1.0 response. The
msg/headers are empty and the entire response is treated as the body.
2000-10-12 19:58:36 +00:00
Thomas Heller 20d529be26 Recreated after installer source code changes.
This should close SF bug (patch)
http://sourceforge.net/patch/?func=detailpatch&patch_id=101844&group_id=5470
2000-10-12 19:31:13 +00:00
Jeremy Hylton 73574eefe5 two fixes for redirects:
- don't close the fp, since that appears to also close the socket
    - join the original url with the redirect reponse to deal with
      relative redirect URL

wrap two socket ops in try/except to turn them into URLErrors, so that
client code need only catch one exception.

in HTTPError.__del__ only close fp if fp is not None

style changes:
    - use f(*args) instead of apply(f, args)
    - use __super_init instead of super.__init__(self, ...)
2000-10-12 18:54:18 +00:00
Jeremy Hylton 3b0c600394 cosmetic changes only:
use standard Python style for whitespace near = and ()
2000-10-12 17:31:36 +00:00
Guido van Rossum 22d5895dc3 Added a test for the StringIO write() error I just fixed. 2000-10-12 16:46:28 +00:00
Guido van Rossum b636dc67ed [ Bug #116636 ] Bug in StringIO.write()
http://sourceforge.net/bugs/?func=detailbug&bug_id=116636&group_id=5470
bobalex@rsv.ricoh.com

Bug report: If the file position is less than the end of the "file",
and a write is performed extending past then end of the file, the data
string is corrupted.

Solution: in write(), when writing past the end, properly set self.len
when newpos is > self.len.
2000-10-12 16:45:37 +00:00
Guido van Rossum 2e2a70abe4 Anonymous patch to add Darwin 1.2 to the list of BSDs.
Let's hope this is correct (I'm not sure why the sys.platform would be
'Darwin1.2' rather than 'darwin1', which seems to be the convention).

Someone with Darwin please test this!
2000-10-12 16:01:55 +00:00
Barry Warsaw 0157e7aa3e Added some single tuple/list unpacking for JPython regression testing. 2000-10-12 14:45:58 +00:00
Tim Peters cb5b5bac11 A Mystery: I somehow managed to delete the last two lines of my test_math.py
changes.  Here restoring them.
2000-10-12 07:15:55 +00:00
Tim Peters 1d120619d4 Stop raising OverflowError on underflows reported by libm (errno==ERANGE and
libm result is 0).  Cautiously add a few libm exception test cases:
1. That exp(-huge) returns 0 without exception.
2. That exp(+huge) triggers OverflowError.
3. That sqrt(-1) raises ValueError specifically (apparently under glibc linked
   with -lieee, it was raising OverflowError due to an accident of the way
   mathmodule.c's CHECK() macro happened to deal with Infs and NaNs under gcc).
2000-10-12 06:10:25 +00:00
Lars Gustäbel f27f5ab31f Added additional test cases for pulldom modifications. 2000-10-11 22:36:00 +00:00
Lars Gustäbel bc1b5c81a5 Added parent attribute with getters and setters on XMLFilterBase. 2000-10-11 22:35:00 +00:00
Lars Gustäbel d178ba666b Added non-ns start and end element methods.
Moved appendChild calls from DOMEventStream to PullDOM (parser indep).
Removed duplicated sibling pointer setting (duplicated in appendChild).
2000-10-11 22:34:04 +00:00
Fred Drake cb953d72d2 Test the exception-raising for error cases in copy_reg. 2000-10-11 22:17:35 +00:00
Fred Drake 78a6a36964 In the module docstring, clarify that this is used to register pickle
support for extension types, not classes.

pickle():  If the type is a class or if the reduction function is not
           callable, raise a TypeError.

constructor():  If the constructor is not callable, raise TypeError.

This (partially) closes SourceForge patch #101859.
2000-10-11 22:16:45 +00:00
Guido van Rossum 4bbea05c4e Jack Jansen reported that the regression test failed on the Mac where
string.letters was much more than expected.

Solution: explicit is better than implicit; don't rely on
string.letters.
2000-10-11 21:34:53 +00:00
Barry Warsaw 7e3e1c1ece Added test cases for extended printing to an instance. This picked up
a bug in JPython where the instance had to have a flush() method.
2000-10-11 21:26:03 +00:00
Tim Peters cfc4178e84 When the classes in wave.py opened files themselves, their .close() methods
didn't bother to close the files.  This caused the new test_wave test to fail
under Windows, as Windows won't let you delete a file that's open.  Fixed
that by ensuring the wave read & write classes' .close() and __del__ methods
close files that were opened by their constructors.
2000-10-09 23:43:55 +00:00
Guido van Rossum e8d2f5589b The usual. 2000-10-09 22:14:43 +00:00
Guido van Rossum 16b198e10e wave test output 2000-10-09 20:06:50 +00:00
Guido van Rossum a00afc1ead Simple test suite for wave.py by Jean-Claude Rimbault (with some
changes to avoid using assert).
2000-10-09 20:05:59 +00:00
Fred Drake 13a3069c2b Paul Prescod <paul@prescod.net>:
Correct the chaining between siblings.
2000-10-09 20:04:16 +00:00
Guido van Rossum eca576c68b Fix by Jean-Claude Rimbault [ Bug #116271 ] -- the WAVE header was
never written properly because the '4' length indicators for the 's'
format characters were missing.
2000-10-09 20:01:53 +00:00
Fred Drake ebe73025cd Move the test for confirmation that all nodes have been freed into the
driver code, so that each test gets this; it had been done inconsistently.
Remove the lines that set the variables holding dom objects to None; not
needed since the interpreter cleans up locals on function return.
2000-10-09 19:57:39 +00:00
Guido van Rossum 95d53d2bf5 Use python$EXE instead of python, for Darwin. (Patch by Tony
Lownds. (#101816)

[Note: I'm not sure that this is really the right fix.  Surely Darwin
doesn't require you to say "python.exe" everywhere???  Even Windows
doesn't!  Or am I misunderstanding the point?]
2000-10-09 19:34:12 +00:00
Martin v. Löwis 04f4943d13 _exceptions: Format a missing system id as <unknown>.
expatreader: Use the error handler instead of raising exception directly.
2000-10-09 16:45:54 +00:00
Guido van Rossum 46735add5f Fixed leapdays(). From Patch #101841, by Denis S. Otkidach. 2000-10-09 12:42:04 +00:00
Guido van Rossum e9f922f497 Adapt test output to changed error message. 2000-10-08 19:48:46 +00:00
Guido van Rossum ce6292ebf5 Correct output. 2000-10-08 00:21:43 +00:00
Guido van Rossum 923ebe4dc6 It seems our sound cards can't play mulaw data. Use native-format
16-bit signed data instead.  Hope this works for you; it works for me.
2000-10-08 00:20:20 +00:00
Martin v. Löwis 830b37bd74 Don't use string methods to allow sharing this code with PyXML. 2000-10-07 19:03:20 +00:00
Fredrik Lundh 13ac9926ac Fixed too ambitious "nothing to repeat" check. Closes bug #114033. 2000-10-07 17:38:23 +00:00
Fred Drake 5c0b43d1e2 The test is good, but Jim forgot to check in the updated output. 2000-10-07 16:58:11 +00:00
Fred Drake 613f7c4092 Donn Cave <donn@oz.net>:
Generated files for BeOS R5.
2000-10-07 12:25:17 +00:00
Martin v. Löwis a2fda0dfab Record bugs found when comparing the module with DOM Core Level 2. 2000-10-07 12:10:28 +00:00
Fredrik Lundh 025468d246 SRE didn't handle character category followed by hyphen inside a
character class.  Fix provided by Andrew Kuchling.  Closes bug
#116251.
2000-10-07 10:16:19 +00:00
Marc-André Lemburg b96d80201c Updated test with a case which checks for the bug reported in 2000-10-07 08:52:45 +00:00
Tim Peters de49583a0d Possible fix for Skip's bug 116136 (sre recursion limit hit in tokenize.py).
tokenize.py has always used naive regexps for matching string literals,
and that appears to trigger the sre recursion limit on Skip's platform (he
has very long single-line string literals).  Replaced all of tokenize.py's
string regexps with the "unrolled" forms used in IDLE, where they're known to
handle even absurd (multi-megabyte!) string literals without trouble.  See
Friedl's book for explanation (at heart, the naive regexps create a backtracking
choice point for each character in the literal, while the unrolled forms create
none).
2000-10-07 05:09:39 +00:00
Martin v. Löwis 0a84a338f9 Add .toxml test case, as proposed by Alex Martelli in bug report #116244. 2000-10-06 22:42:55 +00:00
Martin v. Löwis 2c8a89cc3f minidom: access attribute value before printing it
correct order of constructor args in createAttributeNS
pulldom: use symbolic names for uri and localnames
         correct usage of createAttribute and setAttributeNode signatures.
2000-10-06 22:36:03 +00:00
Martin v. Löwis 80670bcaba Add a test case for reporting the file name, and for reporting an error
for incomplete input.
2000-10-06 21:13:23 +00:00
Martin v. Löwis 31b485ffb0 In an incremental parser, close the parser after feeding everything. 2000-10-06 21:12:12 +00:00
Martin v. Löwis 5fece7fc1b Don't use a file object as system id; try to propagate the file name to
the InputSource.
2000-10-06 21:11:20 +00:00
Martin v. Löwis 2aa93efda0 Don't report a final chunk for an external entity parser. 2000-10-06 21:10:34 +00:00
Martin v. Löwis ee1dc157d7 Move translation from expat.error to SAXParseException into feed, so that
callers of feed will get a SAXException.
In close, feed the last chunk first before calling endDocument, so that
the parser may report errors before the end of the document. Don't do
anything in a nested parser.
Don't call endDocument in parse; that will be called in close.
Use self._source for finding the SystemID; XML_GetBase will be cleared in
case of an error.
2000-10-06 21:08:59 +00:00
Fred Drake 24c532a512 Fix a couple of typos in docstrings. 2000-10-06 20:28:46 +00:00
Jeremy Hylton e2b7c4dea3 test_linuxaudio:
read the header from the .au file and do a sanity check
    pass only the data to the audio device
    call flush() so that program does not exit until playback is complete
    call all the other methods to verify that they work minimally
    call setparameters with a bunch of bugs arguments

linuxaudiodev.c:
    use explicit O_WRONLY and O_RDONLY instead of 1 and 0
    add a string name to each of the entries in audio_types[]
    add AFMT_A_LAW to the list of known formats
    add x_mode attribute to lad object, stores imode from open call
    test ioctl return value as == -1, not < 0
    in read() method, resize string before return
    add getptr() method, that calls does ioctl on GETIPTR or GETOPTR
        depending on x_mode
    in setparameters() method, do better error checking and raise
        ValueErrors; also use ioctl calls recommended by Open Sound
        System Programmer's Guido (www.opensound.com)
    use PyModule_AddXXX to define names in module
2000-10-06 19:39:55 +00:00
Fred Drake cc773d3b11 __getslice__(): Make this use the constructor form that gets a sequence
as a parameter; this was the only use of the base
                 constructor or surgical alteration of another object's
                 data attribute.

This change simplifies the constructor requirements for subclasses.

This relates to SourceForge bug #115928.
2000-10-06 19:26:01 +00:00
Jim Fulton d1229f5651 Uncommented tests that failed for cStringIO,
Added missing clode to make the clode test test a close. ;)
2000-10-06 19:21:32 +00:00
Tim Peters 6d699ca699 Adding Jeremy's new test_import (SF patch 101709). 2000-10-06 18:46:22 +00:00
Martin v. Löwis 962c9e7f91 Add SAXReaderNotAvailable, and use it to distinguish between an
ImportError, and a missing driver.
2000-10-06 17:41:52 +00:00
Fred Drake 02776adab8 Donn Cave <donn@u.washington.edu>:
Script to regenerate platform-specific modules of constants.

[I moved common paths to variables for easier reading by humans. -- FLD]

This closes SourceForge patch #101781.
2000-10-06 16:11:21 +00:00
Guido van Rossum 00236f38da [ Bug #110677 ] PRIVATE: various minor Tkinter things (PR#388)
http://sourceforge.net/bugs/?func=detailbug&group_id=5470&bug_id=110677

Canvas.CanvasItem & Canvas.Group:
- bind lacks an optional "add" param
- unbind lacks an optional "funcid" param
- tkraise/lower should call self.canvas.tag_XXXX

(markus.oberhumer@jk.uni-linz.ac.at)

Note: I'm *not* fixing "bbox() return value is inconsistent with
Canvas.bbox()" -- it might break existing code.
2000-10-06 00:38:51 +00:00
Tim Peters c54d19043a SF bug 115831 and Ping's SF patch 101751, 0.0**-2.0 returns inf rather than
raise ValueError.  Checked in the patch as far as it went, but also changed
all of ints, longs and floats to raise ZeroDivisionError instead when raising
0 to a negative number.  This is what 754-inspired stds require, as the "true
result" is an infinity obtained from finite operands, i.e. it's a singularity.
Also changed float pow to not be so timid about using its square-and-multiply
algorithm.  Note that what math.pow does is unrelated to what builtin pow
does, and will still vary by platform.
2000-10-06 00:36:09 +00:00
Fred Drake 034c2a9f7a Add support for "import re" -- it uses pre, but user code does not need
to.
2000-10-05 20:42:44 +00:00
Barry Warsaw 293b03f73f translation(): Minor optimization patch which avoids instantiating the
default value's instance unless it's absolutely necessary.
2000-10-05 18:48:12 +00:00
Jeremy Hylton 77249442a5 Fix Bug #115907: encode '=' as '=3D' and not '==' 2000-10-05 17:24:33 +00:00
Trent Mick d68d0a6f5a Fix for test_class.py on Win64. id(self), which on Win64 returns a
PyLong, was used for the return value of a class __hash__ method, which
*must* return a PyInt. Solution: hash() the id(self) value.
2000-10-04 17:50:59 +00:00
Tim Peters d215218178 test_popen2 broke on Windows shortly after 2.0b2 was released. Fixed it. 2000-10-03 23:07:13 +00:00
Martin v. Löwis cf0a1cc417 Support non-namespace elements in *ElementNS of XMLGenerator. 2000-10-03 22:35:29 +00:00
Fredrik Lundh d11b5e54f0 Recompile pattern if (?x) flag was found inside the pattern during the
first scan.  Closes bug #115040.
2000-10-03 19:22:26 +00:00
Guido van Rossum f19a7ac220 Fix a few problems with the _Printer class and the license variable.
1. repr(license) will no longer print to stdout and read from stdin;
you have to use license().  `license` is a short message explaining
this.

2. Use lazy initialization so that startup isn't slowed down by the
search for the LICENSE file.

3. repr(license) actually returns the desired string, rather than
printing to stdout and returning ''.  (Why didn't we think of this
before?)

4. Use the pythonlabs license URL as the license fallback instead of
the CNRI license handle.
2000-10-03 17:11:37 +00:00
Thomas Wouters f2c1be22f2 On some systems (like Solaris), the master end of a tty/pty pair is
apparently not considered a terminal, and so isatty(3) returns false. So we
skip the test for ttyness of the master side and just check the slave side,
which should really be a terminal.
2000-10-03 16:51:08 +00:00
Fredrik Lundh 65d4bc616a Fixed negative lookahead/lookbehind. Closes bug #115618. 2000-10-03 16:29:23 +00:00
Guido van Rossum 5191463276 Undo Ping's change.
CGI scripts should *not* use /usr/bin/env, since on systems that don't
come standard with Python installed, Python isn't on the default $PATH.

Too bad that this breaks on Linux, where Python is in /usr/bin which
is on the default path -- the point is that you must manually edit
your CGI scripts when you install them.
2000-10-03 13:51:09 +00:00
Ka-Ping Yee 099e534fa4 Change first line to #!/usr/bin/env python (really just to test check-in). 2000-10-03 08:32:00 +00:00
Greg Ward da175f4bdd Bump version to 1.0. 2000-10-03 03:48:43 +00:00
Greg Ward 25a309c0a9 Remove some debugging prints. 2000-10-03 03:32:37 +00:00
Greg Ward a9d37835ad Fixed so --no-compile is a negative alias for --compile. 2000-10-03 03:31:52 +00:00
Greg Ward 9216cfe7ba Added a long-winded comment (and commented-out comment to go with out)
about how it would be nice to write absolute paths to the temporary
byte-compilation script, but this doesn't work because it screws up the
trailing-slash trickery done to 'prefix' in build_py's 'byte_compile()'
method.

Fixed to use 'execute()' instead of 'os.remove()' to remove the temporary
script: now it doesn't blow up in dry-run mode!
2000-10-03 03:31:05 +00:00
Jeremy Hylton d52755f41c Provide a clearer error message when urlopen fails because of an
invalid proxy setting.

Minor change to call of unknown_url; always pass data argument
explicitly since data defaults to None.

PEP 42: Add as a feature that urllib handle proxy setting that contain
only the host and port of the proxy.
2000-10-02 23:04:02 +00:00
Fred Drake d254c0095c Remove redundent information from a docstring. 2000-10-02 22:11:47 +00:00
Fred Drake 484d735f1e Delay import of py_compile until needed, since is is only used by the
PyZipFile class.

End sentences in docstrings with periods.

Reformat docstrings to be more similar to those of other modules.
2000-10-02 21:14:52 +00:00
Fred Drake 3944a01713 Do not set Konquerer to be the default browser if $KDEDIR is set -- some
Linux distributions which provide both KDE and Gnome set this environment
variable even if the user is not using KDE.  We do *not* want to start
Konquerer if KDE is not running unless the user actually tells us to!
2000-10-02 03:40:51 +00:00
Greg Ward 0295181fa6 Typo fix. 2000-10-02 02:25:51 +00:00
Greg Ward 73a6c942cd Added the ability to do byte-compilation at build time, currently off
by default (since compiling at install time works just fine).  Details:
  - added 'compile' and 'optimize' options
  - added 'byte_compile()' method
  - changed 'get_outputs()' so it includes bytecode files
A lot of the code added is very similar to code in install_lib.py;
would be nice to factor it out further.
2000-10-02 02:19:04 +00:00
Greg Ward 8161022d4d Added --compile, --optimize options so users have an easy way to
instruct the "install_lib" command from the command-line.
2000-10-02 02:16:04 +00:00
Greg Ward cb9c9aed01 Finished the overhaul of byte-compilation options: there's now a 6-way
choice between (compile, no-compile) * (optimize=0, optimize=1,
optimize=2).  Details:
  - added --no-compile option to complement --compile, which has
    been there for ages
  - changed --optimize (which never worked) to a value option, which
    expects 0, 1, or 2
  - renamed 'bytecompile()' method to 'byte_compile()', and beefed
    it up to handle both 'compile' and 'optimize' options
  - fix '_bytecode_filenames()' to respect the new options
2000-10-02 02:15:08 +00:00
Greg Ward 04cc88df05 Remove the temporary byte-compilation script when we're done with it. 2000-10-02 02:09:55 +00:00
Greg Ward c1acc69018 From 'run()', only call 'bytecompile()' if we actually have
pure Python modules to compile.
2000-10-01 23:50:13 +00:00
Greg Ward f217e2124a Tweaked 'byte_compile()' so it silently skips non-Python files, rather than
blowing up.
2000-10-01 23:49:30 +00:00
Martin v. Löwis 4b6ea798cb Don't rename Tkinter to Tk; closes bug 115714
Subclass Error from Exception.
2000-10-01 17:52:01 +00:00
Barry Warsaw 370a29fe42 Added a zip() test where one of the arguments is an instance whose
class has no __getitem__().  This raises an AttributeError.
2000-10-01 04:28:43 +00:00
Fred Drake cc4adf27f4 Add missing "s" from format string.
This closes SourceForge patch #101714.
2000-09-30 23:59:04 +00:00
Greg Ward 1df6e7b1fc Reduced the 'bytecompile()' method to a one-line wrapper around
'util.byte_compile()'.  Currently just reproduces the existing functionality
-- doesn't use any of the fancy features in the new 'byte_compile()'.
2000-09-30 20:39:09 +00:00
Greg Ward 1297b5ce67 Added 'byte_compile(): an all-singing, all-dancing wrapper around the
standard 'py_compile.compile()' function.  Laundry list of features:
  - handles standard Distutils 'force', 'verbose', 'dry_run' flags
  - handles various levels of optimization: can compile directly in
    this interpreter process, or write a temporary script that is
    then executed by a new interpreter with the appropriate flags
  - can rewrite the source filename by stripping an optional prefix
    and preprending an optional base dir.
2000-09-30 20:37:56 +00:00
Greg Ward 4752769d08 Various docstring tweaks.
Fixed 'subst_vars()' so it actually blows up like the docstring claims
  (and fixed the docstring not to claim it handles ${var}, which it
  doesn't).
2000-09-30 18:49:14 +00:00
Greg Ward b8b263b92f Reformat docstrings. 2000-09-30 18:40:42 +00:00
Greg Ward cb1f4c4d33 Standardized whitespace around function calls. 2000-09-30 18:27:54 +00:00
Greg Ward 963cd2d85d Andrew Kuchling: changed so the '_path_created' dictionary is keyed on
absolute pathnames; this lets it keep working in the face of chdir'ing
around.
2000-09-30 17:47:17 +00:00
Greg Ward 3e6d43801b Fixed 'run()' so it doesn't call 'bytecompile()' if 'install()' returned None. 2000-09-30 17:35:26 +00:00
Greg Ward e564278bfd Expect a tuple (dest_name, copied) from 'copy_file()'. 2000-09-30 17:34:50 +00:00
Greg Ward 3a5a2bd486 Changed 'build_module()' so it returns the result of 'copy_file()'
on the module file -- could be useful for subclasses overriding it.
2000-09-30 17:33:05 +00:00
Greg Ward 0d4a853109 Changed 'copy_file()' so it returns a tuple (dest_name, copied) -- hopefully,
this will please everyone (as if that's possible).
2000-09-30 17:29:35 +00:00
Greg Ward ec84c21ce2 In 'get_platform()', handle so-called POSIX systems that don't have
'uname()' -- specifically NeXTSTEP.
2000-09-30 17:09:39 +00:00
Greg Ward 64d855adca Changed to use the 'sub-commands' machinery:
- added 'sub_commands' class attr
  - added 'has_*()' predicates referenced by the sub-command list
  - rewrote 'run()' so it's a trivial loop over relevant sub-commands
2000-09-30 17:08:12 +00:00
Greg Ward 70b1fd1a99 Moved some things around for better organization. 2000-09-30 17:05:37 +00:00
Martin v. Löwis efffd28c2c Add mimetools testcase. 2000-09-30 17:03:19 +00:00
Martin v. Löwis 25d1692434 Return after writing 7bit or 8bit encodings. Closes bug 115712 2000-09-30 16:52:45 +00:00
Martin v. Löwis af484d5a0c Mention in the module's doc string that other functions of the socket API
appear as methods on socket objects.
2000-09-30 11:34:30 +00:00
Fred Drake 5db246d1fa Always use the same name for the exception defined in this module!
Error reported via email by Pete Shinners <pete@visionart.com>.

Fixed some indentation inconsistencies.
2000-09-29 20:44:48 +00:00
Martin v. Löwis 3f0969f100 Use string functions instead of methods to allow sharing this module with PyXML 2000-09-29 19:00:40 +00:00
Martin v. Löwis 491ded78cc Remove dependency from saxutils when loading xmlreader 2000-09-29 18:59:50 +00:00
Thomas Heller 1dbe9d5247 Removed the extra_dirs and path_file metadata options.
They are unneeded: All this stuff is already done by the
install command which is run by bdist_wininst.

One bug has been fixed:
The root of the fake install tree is install.install_purelib,
not install.install_lib!
They are different if the extra_path option is used in
the setup function.

Rebuild after the changes to wininst.exe.
2000-09-29 11:36:55 +00:00
Thomas Heller 18b9b93df3 Removed the implib_dir instance variable because it is unused.
Removed get_ext_libname() because it is unused.

Fixed get_libraries() to append an '_d' to the python debug
import library. If MSVC is used, do not add 'pythonxx.lib' to
the list of libraries, because this is handled better
by a pragma in config.h.

This should fix bug #115595, but it needs some more testing.
2000-09-28 19:28:35 +00:00
Fred Drake 20af3172ce popen4(): Added for Unix.
Fixed a typo in a docstring.
2000-09-28 19:10:56 +00:00
Fred Drake d75e63a865 popen4(), class Popen4: popen4() support for Unix.
popen2(), popen3():  Reversed order of bufsize and mode parameters to
                     comply with what was here before (Python 1.5.2).

class Popen3:  Factored the __init__() into a more basic initializer and
               a helper method, to allow some re-use by the Popen4 class.
               Use os.dup2() instead of os.dup() to create the proper
               file descriptors in the child process.

This closes SourceForge bug #115330 and partially closes #115353.
2000-09-28 19:07:53 +00:00
Fred Drake 38cb9f1f17 Convert all entries on sys.path to absolute paths, and also update the
__file__ attributes of already-imported modules to be absolute.  This helps
robustify the interpreter against os.chdir() calls from the application.

Only remove setdefaultencoding() from sys if it exists; if this module is
run as a script (since there is a _test() function that gets run), it broke
because the script attempts to remove it again after the import of site
has already done so.  This allows the module to be run as a script again.

makepath():  New function, standardizes all pathname normalization in one
             place.
2000-09-28 16:52:36 +00:00
Fred Drake b4e460ac4b Avoid import of string module; it is only needed for expandvars().
Never assume that os.sep is for the module-specific platform; use the
right separator character directly.
Fix some minor style consistency nits.
2000-09-28 16:25:20 +00:00
Fred Drake c0ab93ef6f Minor style nits. 2000-09-28 16:22:52 +00:00
Fred Drake 22fb839f0c Remove imports of string when string methods will do. 2000-09-28 15:04:39 +00:00
Fred Drake 954383356f Added some tests for the truncate() method; one is commented out because
cStringIO does not get it right (reported as SF bug #115531).

Added test for ValueError when write() is called on a closed StringIO
object.  Commented out because cStringIO does not get it right
(reported as SF bug #115530).
2000-09-28 04:25:33 +00:00
Fred Drake e0a7f4f9d5 Add truncate() method to StringIO objects.
This closes SourceForge bug #115527.
2000-09-28 04:21:06 +00:00
Fred Drake d391a34926 Remove change that had not been saved when the output was generated;
not terribly useful.
Reported by Mark Favas <Mark.Favas@per.dem.csiro.au>.
2000-09-28 04:13:15 +00:00
Fred Drake 8ef6767e00 Regression test for ConfigParser module. 2000-09-27 22:45:25 +00:00
Fred Drake 2a37f9f862 Allow spaces in section names.
Do not expose the __name__ when reporting the list of options available
for a section since that is for internal use.

This closes SourceForge bug #115357.

Additionally, define InterpolationDepthError and MAX_INTERPOLATION_DEPTH.
The exception is raised by get*() when value interpolation cannot be
completed within the defined recursion limit.  The constant is only
informative; changing it will not affect the allowed depth.

Fix the exit from get() so that None is not returned if the depth is met
or exceeded; either return the value of raise InterpolationDepthError.
2000-09-27 22:43:54 +00:00
Marc-André Lemburg 23542dc6eb Updated hash values to match the new encoding (UTF-8) used in the test. 2000-09-27 12:25:14 +00:00
Marc-André Lemburg 67ceca7add Fixed encoding to use an endianness independent format. 2000-09-27 12:24:34 +00:00
Lars Gustäbel 6a7768ae4f Fixed misleading qname in test_xmlgen_ns (reported by loewis). 2000-09-27 08:12:17 +00:00
Greg Ward ef850def44 Bump version to 1.0pre. 2000-09-27 02:26:57 +00:00
Greg Ward 264cf74e1a Remove deprecation warnings on old 'link_*()' methods, ie. they're not
deprecated after all.  But now they're only implemented once, instead
of N times.
2000-09-27 02:24:21 +00:00
Greg Ward 4240648a9d Big patch from Rene Liebscher to simplify the CCompiler API and
implementations.  Details:
  * replace 'link_shared_object()', 'link_shared_lib()', and
    'link_executable()' with 'link()', which is (roughly)
    the union of the three methods it replaces
  * in all implementation classes (UnixCCompiler, MSVCCompiler, etc.),
    ditch the old 'link_*()' methods and replace them with 'link()'
  * in the abstract base class (CCompiler), add the old 'link_*()'
    methods as wrappers around the new 'link()' (they also print
    a warning of the deprecated interface)

Also increases consistency between MSVCCompiler and BCPPCompiler,
hopefully to make it easier to factor out the mythical WindowsCCompiler
class.  Details:
  * use 'self.linker' instead of 'self.link'
  * add ability to compile resource files to BCPPCompiler
  * added (redundant?) 'object_filename()' method to BCPPCompiler
  * only generate a .def file if 'export_symbols' defined
2000-09-27 02:08:14 +00:00
Greg Ward 8b2e4e89bd Bump version to 0.9.4. 2000-09-27 00:17:08 +00:00
Greg Ward 2c08cf0ffa Fix '_set_command_options()' so it only calls 'strtobool()' on strings
(was crashing on any boolean command-line option!).
2000-09-27 00:15:37 +00:00
Barry Warsaw c79dff679f Added an "import xml.parsers.expat" to turn errors due to not having
the parser built into ImportErrors.
2000-09-26 18:00:20 +00:00
Jeremy Hylton d635b1d724 The Usual 2000-09-26 17:32:27 +00:00
Fred Drake 0872e05851 Fix handling of file inputs on Windows; passing them to urllib.urlopen()
caused the drive letter to cause urlopen() to think it was an unrecognized
URL scheme.  This only passes system ids to urlopen() if the file does not
exist.  It works on Windows & Unix.

It should work everywhere else as well.
2000-09-26 17:23:09 +00:00
Marc-André Lemburg 6c8e4c3ee8 Test output data for the Unicode database test suite. 2000-09-26 16:19:27 +00:00
Marc-André Lemburg 6a20ee7dec Added test suite for the complete Unicode database. The test previously
only tested a few cases.
2000-09-26 16:18:58 +00:00
Greg Ward d8f7f81254 Bump version to 0.9.3. 2000-09-26 02:51:09 +00:00
Greg Ward ca4289f7b2 Reformat docstrings.
Standardize whitespace in function calls.
2000-09-26 02:13:49 +00:00
Greg Ward 071ed76732 Standardize whitespace in function calls. 2000-09-26 02:12:31 +00:00
Greg Ward 449f5568b7 Whitespace fix. 2000-09-26 02:03:34 +00:00
Greg Ward a30f7aca08 Reformat docstrings.
Standardize whitespace in function calls.
2000-09-26 02:00:51 +00:00
Greg Ward be86bdea73 Standardize whitespace in function calls. 2000-09-26 01:56:15 +00:00
Greg Ward fd7b91eff9 Standardize whitespace in function calls and docstrings. 2000-09-26 01:52:25 +00:00
Guido van Rossum de33c79fdb HP-UX is another one of those platforms using an alternative lock
structure (same as AIX).
2000-09-26 00:31:18 +00:00
Fred Drake af57431701 Include the version-detecting code to allow PyXML to override the "standard"
xml package.  Require at least PyXML 0.6.1.
2000-09-25 17:30:17 +00:00
Barry Warsaw 38bfc4d0d5 Add a test for SF bug #110621; stripping square brackets off of
addresses with domain literals.
2000-09-25 15:09:28 +00:00
Barry Warsaw 2ea2b1133e AddrlistClass.getdomainliteral(): rfc822 requires that the domain
literal be wrapped in square brackets.  This fix replaces the square
brackets that were previously being stripped off.  Closes SF bug
#110621.
2000-09-25 15:08:27 +00:00
Guido van Rossum 4126736791 When reading the file, option names were not passed through
self.optionxform(), which (in the default case) caused options spelled
with opper case letters in their name to be inaccessible.  Reported by
"Todd R. Palmer" <t2palmer@bellsouth.net> on
activepython@listserv1.ActiveState.com.
2000-09-25 14:42:33 +00:00
Greg Ward 68ded6e6f1 Added 'translate_longopt()' function. 2000-09-25 01:58:31 +00:00
Greg Ward 2f2b6c62ba Change to use the new 'translate_longopt()' function from fancy_getopt, rather
than rolling our own with fancy_getopt's 'longopt_xlate' global.
2000-09-25 01:58:07 +00:00
Greg Ward d644ca2120 Added a bunch of missing "=" signs in the option table.
Removed script options -- don't think they ever worked, weren't
  very well thought through, etc.
2000-09-25 01:53:01 +00:00
Greg Ward af64aed5cf Renamed '--keep-tree' option to '--keep-temp', for consistency
with the bdist_* commands.
2000-09-25 01:51:01 +00:00
Greg Ward 99b032eaf2 Added 'boolean_options' list to support config file parsing. 2000-09-25 01:41:15 +00:00
Greg Ward 817dc098ef Added 'strtobool()' function: convert strings like "yes", "1",
"no", "0", etc. to true/false.
2000-09-25 01:25:06 +00:00
Greg Ward ceb9e226a6 Fixed some bugs and mis-features in handling config files:
* options can now be spelled "foo-bar" or "foo_bar" (handled in
    'parse_config_files()', just after we parse a file)
  * added a "[global]" section so there's a place to set global
    options like verbose/quiet and dry-run
  * respect the "negative alias" dictionary so (eg.) "quiet=1" is
    the same as "verbose=0" (this had to be done twice: once in
    'parse_config_file()' for global options, and once in
    '_set_command_options()' for per-command options)
  * the other half of handling boolean options correctly: allow
    commands to list their boolean options in a 'boolean_options'
    class attribute, and use it to translate strings (like "yes", "1",
    "no", "0", etc) to true or false
2000-09-25 01:23:52 +00:00
Thomas Wouters 84da8aa7e2 Fix inconsistent use of space/tabs. 2000-09-25 00:11:37 +00:00
Martin v. Löwis a13a9dcb9c Use SAX2 namespace support. 2000-09-24 21:54:14 +00:00
Martin v. Löwis 58af43fd76 [Patch 101634]
xml.sax: Fix parse and parseString not to rely on ExpatParser
         Greatly simplify import logic by using __import__
saxutils: Support Unicode strings and files as parameters to
          prepare_input_source
2000-09-24 21:31:06 +00:00
Martin v. Löwis 2066fa023c Find feature names in handler. 2000-09-24 21:17:39 +00:00
Lars Gustäbel 424980fd4d Enabled EntityResolver test again now that pyexpat.c has been fixed. 2000-09-24 20:57:04 +00:00
Lars Gustäbel 3a361f4f8b Fixed another bug. 2000-09-24 20:55:01 +00:00
Lars Gustäbel bb757136b2 Improvements to doco strings.
Tiny bug fix to expatreader.py (endDocument was only called after errors).
2000-09-24 20:38:18 +00:00
Martin v. Löwis 33315b180b Use findfile to locate input and output files. 2000-09-24 20:30:24 +00:00
Lars Gustäbel e292a24589 Added EntityResolver and DTDHandler (patch 101631) with test cases. 2000-09-24 20:19:45 +00:00
Lars Gustäbel 716efea181 Added necessary test input file for test_sax.py 2000-09-24 18:57:26 +00:00
Lars Gustäbel 523b0a6ec8 Added back the InputSource class (patch 101630). 2000-09-24 18:54:49 +00:00
Lars Gustäbel b7536d5860 Added test cases for the InputSource class. 2000-09-24 18:53:56 +00:00
Fredrik Lundh b49f88bfc1 - Improved handling of win32 proxy settings (addresses bug #114256).
The earlier code assumed "protocol=host;protocol=host;..." or "host",
but Windows may also use "protocol=host" (just one entry), as well as
"protocol://host".  This code needs some more work, so I'll leave the
bug open for now.
2000-09-24 18:51:25 +00:00
Lars Gustäbel ab64787dca Added test cases for the Attributes interface. 2000-09-24 18:40:52 +00:00
Lars Gustäbel 32bf12eb8a Updated to final Attributes interface (patch 101632). 2000-09-24 18:39:23 +00:00
Lars Gustäbel e84bf751bb Updated to new SAX method signatures (*NS, patch 101573). 2000-09-24 18:31:37 +00:00
Lars Gustäbel f43cf31f4a Updated to new *NS signatures (patch 101573). 2000-09-24 18:29:24 +00:00
Fredrik Lundh 19f977ba40 - don't hang if group id is followed by whitespace (closes bug #114660) 2000-09-24 14:46:23 +00:00
Lars Gustäbel 96753b3482 Added first start on SAX 2.0 tests. 2000-09-24 12:24:24 +00:00
Lars Gustäbel 358f4da29c Added back missing argument to ignorableWhitespace signature. 2000-09-24 11:06:27 +00:00
Lars Gustäbel fc643c339d Bug fix to namespace handling in XMLGenerator (now adds declarations).
Bug fixes to XMLFilterBase (wrong ignorableWhitespace signature and
did not inherit set*Handler methods from XMLReader.)
2000-09-24 10:53:31 +00:00
Nicholas Riley 9a580c440c Fixes for Python 1.6 compatibility - socket bind and connect get a
tuple instead two arguments.
2000-09-24 06:29:50 +00:00
Nicholas Riley 21afd01ce2 Change for Python 1.6 compatibility - UNIX's 'os' module defines
'spawnv' now, so we check for 'fork' first.
2000-09-24 06:28:47 +00:00
Fred Drake 1f54902e05 Conform to the Python style guide. 2000-09-24 05:21:58 +00:00
Fred Drake ddb486745b Conform more closely with the Python style guide. 2000-09-23 05:32:26 +00:00
Fred Drake 96ea196ea8 Use the public name for the Expat parser; "pyexpat" is deprecated. 2000-09-23 04:49:30 +00:00
Fred Drake 7fbc85c5c5 Rename the public interface from "pyexpat" to "xml.parsers.expat". 2000-09-23 04:47:56 +00:00
Fred Drake 003b9250e3 Add a wrapper around the pyexpat module, making the "public" name of
the module "xml.parsers.expat".
2000-09-23 04:44:43 +00:00
Greg Ward f84fb660cb Split 'run()' up into 'build()', 'install()', and 'bytecompile()' (for
easier extensibility).
2000-09-23 01:20:19 +00:00
Greg Ward 7b87c0e1bb Whitespace tweaks. 2000-09-23 01:10:10 +00:00
Greg Ward 9e3dc4e928 Reformat docstrings.
Standardize use of whitespace on function calls.
2000-09-23 00:59:34 +00:00
Fred Drake d9a8dec135 Maildir.__init__(): Use the correct filter for filenames, so that this
class conforms to the maildir specification.
2000-09-22 18:41:50 +00:00
Neil Schemenauer ef5f2b9dbb - plug a memory leak due to circular lists 2000-09-22 15:30:16 +00:00
Neil Schemenauer d569f23da9 - Replace debugleak flag with findleaks flag. The new SAVEALL GC option is
used to find cyclic garbage produced by tests.
2000-09-22 15:29:28 +00:00
Neil Schemenauer faae266e89 - Add test for new SAVEALL debugging flag
- Use exceptions rather than asserts for failing tests.
- Reorganize tests and produce some output if verbose option is set.
2000-09-22 15:26:20 +00:00
Tim Peters f58a7aafea Implemented new os.startfile function, unique to Windows, exposing a
subset of Win32 ShellExecute's functionality.  Guido wants this because
IDLE's Help -> Docs function currently crashes his machine because of a
conflict between his version of Norton AntiVirus (6.10.20) and MS's
_popen.  Docs for startfile are being mailed to Fred (or just read the
docstring -- it tells the whole story).
Changed webbrowser.py to use os.startfile instead of os.popen on Windows.
Changed IDLE's EditorWindow.py to pass an absolute path for the docs
(hardcoding ShellExecute's "directory" arg to "." as used to be done let
IDLE work, but made the startfile command exceedingly obscure for other
uses -- the MS docs are terrible, of course, & still not sure I
understand it).
Note that Windows Python must link with shell32.lib now!  That's where
ShellExecute lives.
2000-09-22 10:05:54 +00:00
Guido van Rossum 7fa7da861a More whitespace cleanup, to satisfy tabnanny.py. Don't trust -tt! 2000-09-22 09:30:29 +00:00
Guido van Rossum c77593d31a Get rid of the one tab in the file.
Closes Bug #115054.
2000-09-22 09:23:08 +00:00
Fred Drake 7422b6b6a2 White space cleanup, including one item that was an error under -tt. 2000-09-22 05:07:56 +00:00
Greg Ward ab7983939b Tweak what happens when run on non-Windows platforms: set install prefix
as well as scheme, and don't convert all installation paths (that's now
done by the "install" command for us).
2000-09-22 01:32:34 +00:00
Greg Ward 379a02ffa9 Changed all paths in the INSTALL_SCHEMES dict to Unix syntax, and added
'convert_paths()' method to convert them all to the local syntax (backslash
or colon or whatever) at the appropriate time.

Added SCHEME_KEYS to get rid of one hard-coded list of attributes (in
'select_scheme()').

Default 'install_path_file' to true, and never set it false (it's just
there in case some outsider somewhere wants to disable installation of the
.pth file for whatever reason).

Toned down the warning emitted when 'install_path_file' is false, since we
no longer know why it might be false.

Added 'warn_dir' flag to suppress warning when installing to a directory
not in sys.path (again, we never set this false -- it's there for outsiders
to use, specifically the "bdist_*" commands).

Pulled the loop of 'change_root()' calls out to new method 'change_roots()'.

Comment updates/deletions/additions.
2000-09-22 01:31:08 +00:00
Greg Ward 7ec053544c Fix 'convert_path()' so it returns immediately under Unix -- prevents blowing
up when the pathname starts with '/', which is needed when converting
installation directories in the "install" command.
2000-09-22 01:05:43 +00:00
Martin v. Löwis d7bf974af4 Indent _connection_class so that it becomes HTTPS._connection_class. 2000-09-21 22:09:47 +00:00
Fred Drake 265a804af2 Revise the test case for pyexpat to avoid using asserts. Conform better
to the Python style guide, and remove unneeded imports.
2000-09-21 20:32:13 +00:00
Guido van Rossum 9e79a25b8a The minidom.Node class has a debug attribute which, when its _debug
flag is true, is set to a StringIO object that silently collects all
debug messages.  This is triggered by the Node._debug=1 statement at
the top of test_minidom.py.  After the tests, we better delete that
StringIO object to avoid wasting memory.  We also reset the _debug
flag.  (Note that this is an undetectable memory leak, and the memory
doesn't get collected by the cycle-gc either, because it's all
reachable -- it's just useless.)
2000-09-21 20:10:39 +00:00