Commit Graph

3770 Commits

Author SHA1 Message Date
Thomas Wouters dcc6d32ee4 Fix merge glitch. 2006-04-21 11:30:52 +00:00
Thomas Wouters 49fd7fa443 Merge p3yk branch with the trunk up to revision 45595. This breaks a fair
number of tests, all because of the codecs/_multibytecodecs issue described
here (it's not a Py3K issue, just something Py3K discovers):
http://mail.python.org/pipermail/python-dev/2006-April/064051.html

Hye-Shik Chang promised to look for a fix, so no need to fix it here. The
tests that are expected to break are:

test_codecencodings_cn
test_codecencodings_hk
test_codecencodings_jp
test_codecencodings_kr
test_codecencodings_tw
test_codecs
test_multibytecodec

This merge fixes an actual test failure (test_weakref) in this branch,
though, so I believe merging is the right thing to do anyway.
2006-04-21 10:40:58 +00:00
Thomas Wouters 9ada3d6e29 Merge trunk up to 43069, putting re.py back and hopefully making the branch
usable again.
2006-04-21 09:47:09 +00:00
Thomas Wouters a977329b6f Merge part of the trunk changes into the p3yk branch. This merges from 43030
(branch-creation time) up to 43067. 43068 and 43069 contain a little
swapping action between re.py and sre.py, and this mightily confuses svn
merge, so later changes are going in separately.

This merge should break no additional tests.

The last-merged revision is going in a 'last_merge' property on '.' (the
branch directory.) Arbitrarily chosen, really; if there's a BCP for this, I
couldn't find it, but we can easily change it afterwards ;)
2006-04-21 09:43:23 +00:00
Guido van Rossum d858f70617 Fix the problems in this test. Boy this is a painful thing to debug --
it's fundamentally unmaintainable.  Should we throw away pyclbr, or rewrite
it using the AST?
2006-04-21 09:17:15 +00:00
Thomas Wouters 303de6a25b Fix (and add test for) missing check for BaseException subclasses in the C
API.
2006-04-20 22:42:37 +00:00
Guido van Rossum a48a3b42dd Fix test failures for repr.py.
But shouldn't we kill this module?  How many pprint clones do we need?
2006-04-20 16:07:39 +00:00
Thomas Wouters 08a1a9fac7 Use explicit relative import for an, ehm, relative import. 2006-04-18 21:41:36 +00:00
Guido van Rossum 7ea7d90dbe Fix the expected output file; new classes just behave differently...
(There are some other problems with test_class.py that aren't as
easily fixed. :-( )
2006-04-17 23:38:13 +00:00
Thomas Wouters 07519f8712 Fix xrange tests now that xrange() (like many other places) no longer
silently converts floats to integers when expecting integer values.
2006-04-17 13:16:50 +00:00
Thomas Wouters 4cdada9af6 Make test_class work (but still fail) even though class.__dict__ is now a
'dictproxy' (which is a read-only non-dict mapping type that can't be passed
to exec.)

The failures the test finds are behavioural differences between old- and
new-style classes that may or may not be intended.
2006-04-15 09:19:16 +00:00
Thomas Wouters 1034dadf1f Adjust test_enumerate to accomodate for iter() blowing up sooner than
expected, when dealing with new-style broken-iterators.
2006-04-15 09:16:16 +00:00
Thomas Wouters c947123350 Fix tests for PyArg_Parse*; The PyArg_Parse functions no longer (noisily)
convert float arguments to integer-taking format characters, so fix the test
to expect the failure.
2006-04-15 09:15:11 +00:00
Thomas Wouters 725af87d0a - Remove tests for classic class behaviour
- Expect a new-style class tree in the getclasstree test.
2006-04-15 09:13:19 +00:00
Thomas Wouters 1ae9afa829 Fix test_bisect in the same way as test_itertools: iter() blows up a lot
sooner for new-style broken-iterators, expect it to.
2006-04-15 09:12:14 +00:00
Thomas Wouters 34729030a7 Fix the superficial augmented-assignment tests to deal with true division.
Add (equally superficial) >>=/<<= test in the process. Relies on floats that
should be extremely close to the int '6' printing as '6.0', but I believe
that's a valid assumption ;P
2006-04-15 09:10:43 +00:00
Thomas Wouters 8690c4ed3f Fix tests that were trying to make iteration blow up, on broken iterators.
Since the broken iterators are now new-style classes, iter() was able to do
the valid-iterator check sooner (on instantiation instead of on first call),
making the tests blow up sooner than expected.
2006-04-15 09:07:20 +00:00
Thomas Wouters 0725cf2127 Remove tests for classic-class and mixed-classic-class/new-style behaviour.
(New-style class behaviour was already thoroughly tested)
2006-04-15 09:04:57 +00:00
Thomas Wouters 28bc768977 - Fix doctest results to account for classes being new-style, and thus
printing differently.
 - Fix doctest for classic-class behaviour, make it test new-style behaviour
   on an implicitly-new-style class instead.
2006-04-15 09:03:16 +00:00
Neal Norwitz c6fe059512 Use absolute import. (Should this go into 2.5?) 2006-03-24 08:57:54 +00:00
Neal Norwitz bcc0db82dc Get rid of remnants of integer division 2006-03-24 08:14:36 +00:00
Neal Norwitz ed483ba63b String exceptions are gone and so are classic classes. 2006-03-24 08:08:49 +00:00
Neal Norwitz 1e32b6927f Must inherit from Exception now. 2006-03-24 08:02:35 +00:00
Neal Norwitz c3e54b8480 Use *absolute* import now that it is required. (Should this go into 2.5? Hopefully not the bogus comment about using relative imports. That was just to see if anyone was paying attention.) 2006-03-24 07:38:37 +00:00
Neal Norwitz 16d6510425 Use relative import now that it is required. (Should this go into 2.5?) 2006-03-24 07:35:29 +00:00
Neal Norwitz 2a0c7801a5 Use relative import now that it is required. (Should this go into 2.5?) 2006-03-24 07:10:31 +00:00
Neal Norwitz 0fb43762d5 Must inherit from Exception now. 2006-03-24 07:02:16 +00:00
Neal Norwitz ef4f7f0298 Use relative import now that it is required. (Should this go into 2.5?) 2006-03-24 06:59:24 +00:00
Neal Norwitz 914a81841f Get doctest to pass. The problem was int/int -> float now. There
were some cases where an int was assumed.

Also had to change the string of the exception when dividing and int by zero.
Not sure what the best error message should be.  Currently
  5 / 0 yields the message: ZeroDivisionError: float division

That isn't entirely correct.  But I'm not sure what else to do.
2006-03-22 09:20:30 +00:00
Neal Norwitz bd2835c6ae as is a keyword now :-) 2006-03-17 08:54:15 +00:00
Neal Norwitz 7096760b25 Get rid of xreadlines() (methods). 2006-03-17 08:29:44 +00:00
Neal Norwitz d91085598f Remove apply() 2006-03-17 08:00:19 +00:00
Neal Norwitz ce96f69d69 Get rid of a bunch more raw_input references 2006-03-17 06:49:51 +00:00
Neal Norwitz 9e2b9665ae Whoops, input *and* raw_input are slated for removal, and now both are gone. 2006-03-17 06:04:34 +00:00
Neal Norwitz cd65e3fc7d raw_input() -> input(). old input behavior is history (and test_builtin passes again). It was failing due to future division. 2006-03-17 05:59:16 +00:00
Guido van Rossum 45aecf451a Checkpoint. 218 tests are okay; 53 are failing. Done so far:
- all classes are new-style (but ripping out classobject.[ch] isn't done)
- int/int -> float
- all exceptions must derive from BaseException
- absolute import
- 'as' and 'with' are keywords
2006-03-15 04:58:47 +00:00
Nick Coghlan eadee9a744 Fix SF bug #1448804 and ad a test to ensure that all subscript operations continue to be handled correctly 2006-03-13 12:31:58 +00:00
Hye-Shik Chang abb903fd54 Bug #1448490: Fix a bug that ISO-2022 codecs could not handle
SS2 (single-shift 2) escape sequences correctly.
2006-03-13 10:20:08 +00:00
Tim Peters 88ca467ca4 Whitespace normalization. 2006-03-10 23:39:56 +00:00
Tim Peters 922dd7d49d When the new -w option (yay! great idea) reruns a
failed test, first display the name of the test (else
it's not always clear from the output which test is
getting run).
2006-03-10 23:37:10 +00:00
Martin v. Löwis 04824ce8ed Add regrtest -w option. 2006-03-10 21:26:16 +00:00
Martin v. Löwis 4196296605 Update test data to 4.1; disable PRI #29 for now. 2006-03-10 11:59:47 +00:00
Guido van Rossum f669436189 Um, I thought I'd already checked this in.
Anyway, this is the changes to the with-statement
so that __exit__ must return a true value in order
for a pending exception to be ignored.
The PEP (343) is already updated.
2006-03-10 02:28:35 +00:00
Martin v. Löwis 480f1bb67b Update Unicode database to Unicode 4.1. 2006-03-09 23:38:20 +00:00
Georg Brandl d09def36d5 Bug #1442874: handle "<!>", the empty SGML comment 2006-03-09 13:27:14 +00:00
Thomas Heller e317d0e307 Replace the trivial ctypes test (did only an import) with the real test suite. 2006-03-09 07:21:33 +00:00
Neal Norwitz 72c2c062d7 Try to be a bit more consistent on all platforms:
python .
  python < .

both print a message, return non-zero and do not core dump.
2006-03-09 05:58:11 +00:00
Tim Peters e8d09e5818 Whitespace normalization. 2006-03-09 01:15:05 +00:00
Thomas Heller 200af39722 Trivial test for ctypes, more to come 2006-03-08 20:38:11 +00:00
Georg Brandl 533ff6fc06 Patch #1434038: property() now uses the getter's docstring if there is
no "doc" argument given. This makes it possible to legitimately use
property() as a decorator to produce a read-only property.
2006-03-08 18:09:27 +00:00
Tim Peters df44ab7b1c _hotshot hotshot_profiler(): If write_header() returned
an error code, this let `self` leak.  This is a disaster
on Windows, since `self` already points to a newly-opened
file object, and it was impossible for Python code to
close the thing since the only reference to it was in a
blob of leaked C memory.

test_hotshot test_bad_sys_path():  This new test provoked
the C bug above.  This test passed, but left an open
"@test" file behind, which caused a massive cascade of
bogus test failures in later, unrelated tests on Windows.
Changed the test code to remove the @test file it leaves
behind, which relies on the change above to close that
file first.
2006-03-07 23:53:32 +00:00
Guido van Rossum 38fff8c4e4 Checking in the code for PEP 357.
This was mostly written by Travis Oliphant.
I've inspected it all; Neal Norwitz and MvL have also looked at it
(in an earlier incarnation).
2006-03-07 18:50:55 +00:00
Barry Warsaw d3c38ff7f8 SF patch #1443865; gc.get_count() added and optional argument 'generation'
added to gc.collect().  Updated docs, unit test, and NEWS entry.

(Also, fixed a typo in NEWS.)
2006-03-07 09:46:03 +00:00
Neal Norwitz 60da31660c Thanks to Coverity, these were all reported by their Prevent tool.
All of these (except _lsprof.c) should be backported.  Particularly
the hotshot change which validates sys.path.  Can someone backport?
2006-03-07 04:48:24 +00:00
Walter Dörwald ca199432c2 If size is specified, try to read at least size characters.
This is a alternative version of patch #1379332.
2006-03-06 22:39:12 +00:00
Neal Norwitz 5bab0f8872 Backout the last hack and add in this new one.
The failure definitely seems timing related.  This change *seems* to work.
Since the failure isn't doesn't occur consistently, it's hard to tell.

Running these tests on Solaris in this order:
	test_urllibnet test_operator test_cgi \
	test_isinstance test_future test_ast test_logging

generally caused a failure (about 50% of the time) before the sleep.
I couldn't provoke the failure with the sleep.

This should really be cleaned up by using threading.Events or something
so it is not timing dependent and doesn't hang forever on failure.
2006-03-05 02:16:12 +00:00
Neal Norwitz 83cbb24cd4 Oops, urllib may or may not already be loaded. 2006-03-04 23:56:53 +00:00
Neal Norwitz d8cea79bb4 Fix spurious test failure of test_socket_ssl when run in this order:
test_codecmaps_tw test_importhooks test_socket_ssl

I don't completely understand the cause, but there's a lot of import magic
going on and this is the smallest change which fixes the problem.
2006-03-04 23:13:41 +00:00
Neal Norwitz b62c433d71 Remove test for timing (already not built since commented out in setup.py).
Add note to NEWS.
2006-03-04 18:35:47 +00:00
Neal Norwitz 67dfb6f086 I think the test_logging failure on Solaris is timing related. We don't
want to wait forever if we don't receive the last message.  But we also
don't want the test to fail if we shutdown too quickly.  I can't reliably
reproduce this failure, so I'm kinda guessing this is the problem.
We'll see if this band-aid helps.
2006-03-03 21:53:14 +00:00
Neal Norwitz 10be2ea85d SF bug 1442442: LIST_APPEND optimization got lost in the AST merge.
Add it back.
2006-03-03 20:29:11 +00:00
Brett Cannon 4954b384e4 Fix mismatch opening and closing quotes on a string. 2006-03-02 17:47:01 +00:00
Guido van Rossum 5bde08dba3 Fix failure of test_compiler.py when compiling test_contextlib.py.
The culprit was an expression-less yield -- the first apparently in
the standard library.  I added a unit test for this.
Also removed the hack to force compilation of test_with.py.
2006-03-02 04:24:01 +00:00
Martin v. Löwis d9bfeac330 Reformat the exception message by going through a list. 2006-03-01 23:24:34 +00:00
Tim Peters 5ddfe41e84 Whitespace normalization. 2006-03-01 23:02:57 +00:00
Martin v. Löwis 49c5da1d88 Patch #1440601: Add col_offset attribute to AST nodes. 2006-03-01 22:49:05 +00:00
Martin v. Löwis 15bfc3b082 Make failures in test cases print failing source file. 2006-03-01 21:11:49 +00:00
Guido van Rossum a9f068726f Fix a bug in nested() - if one of the sub-context-managers swallows the
exception, it should not be propagated up.  With unit tests.
2006-03-01 17:10:01 +00:00
Tim Peters 1a57296450 Set svn:eol-style to native. 2006-03-01 06:19:04 +00:00
Brett Cannon 6b4ed74791 Fix parsing of exception_hierarchy.txt when a platform-specific exception is
specified.  Hopefully this wll bring warming to Tim's Windows-loving heart.
2006-03-01 06:10:48 +00:00
Brett Cannon bf36409e2a PEP 352 implementation. Creates a new base class, BaseException, which has an
added message attribute compared to the previous version of Exception.  It is
also a new-style class, making all exceptions now new-style.  KeyboardInterrupt
and SystemExit inherit from BaseException directly.  String exceptions now
raise DeprecationWarning.

Applies patch 1104669, and closes bugs 1012952 and 518846.
2006-03-01 04:25:17 +00:00
Guido van Rossum 1a5e21e033 Updates to the with-statement:
- New semantics for __exit__() -- it must re-raise the exception
  if type is not None; the with-statement itself doesn't do this.
  (See the updated PEP for motivation.)

- Added context managers to:
  - file
  - thread.LockType
  - threading.{Lock,RLock,Condition,Semaphore,BoundedSemaphore}
  - decimal.Context

- Added contextlib.py, which defines @contextmanager, nested(), closing().

- Unit tests all around; bot no docs yet.
2006-02-28 21:57:43 +00:00
Neal Norwitz cd8ca8092f Add a note about removing the file once the bug is fixed 2006-02-28 20:40:50 +00:00
Tim Peters dfc240450c Gave README a .txt extension. 2006-02-28 19:05:29 +00:00
Thomas Wouters 34aa7ba114 from __future__ import with_statement addon for 'with', mostly written by
Neal.
2006-02-28 19:02:24 +00:00
Neal Norwitz edc8f1366a Add directory which contains known ref leaks. Some of these are likely to be system dependent (like test_gestalt). 2006-02-28 19:02:05 +00:00
Tim Peters 400cbc3a44 Set EOL style to native. 2006-02-28 18:44:41 +00:00
Tim Peters 710ab3b5f8 Whitespace normalization. 2006-02-28 18:30:36 +00:00
Neal Norwitz 14ca327f99 Instead of printing the exception when you interrupt a test (Ctrl-C),
print the status so far and suppress printing the exception (but still exit).
2006-02-28 18:05:43 +00:00
Neal Norwitz 03bdedd574 Update comments 2006-02-28 17:53:58 +00:00
Jeremy Hylton 7b03bade2b Test case to cover subscription bug from SF 1333982 2006-02-28 17:46:23 +00:00
Thomas Wouters f7f438ba3b SF patch #1438387, PEP 328: relative and absolute imports.
- IMPORT_NAME takes an extra argument from the stack: the relativeness of
   the import. Only passed to __import__ when it's not -1.

 - __import__() takes an optional 5th argument for the same thing; it
   __defaults to -1 (old semantics: try relative, then absolute)

 - 'from . import name' imports name (be it module or regular attribute)
   from the current module's *package*. Likewise, 'from .module import name'
   will import name from a sibling to the current module.

 - Importing from outside a package is not allowed; 'from . import sys' in a
   toplevel module will not work, nor will 'from .. import sys' in a
   (single-level) package.

 - 'from __future__ import absolute_import' will turn on the new semantics
   for import and from-import: imports will be absolute, except for
   from-import with dots.

Includes tests for regular imports and importhooks, parser changes and a
NEWS item, but no compiler-package changes or documentation changes.
2006-02-28 16:09:29 +00:00
Guido van Rossum 7ad94f011e Update the compiler package to compile the with-statement.
Jeremy, please review!
2006-02-28 00:32:16 +00:00
Guido van Rossum c2e20744b2 PEP 343 -- the with-statement.
This was started by Mike Bland and completed by Guido
(with help from Neal).

This still needs a __future__ statement added;
Thomas is working on Michael's patch for that aspect.

There's a small amount of code cleanup and refactoring
in ast.c, compile.c and ceval.c (I fixed the lltrace
behavior when EXT_POP is used -- however I had to make
lltrace a static global).
2006-02-27 22:32:47 +00:00
Neal Norwitz 9aaad88393 Even though we don't currently use unicode or complex numbers in the test,
be complete when when checking types.

Yield cannot be tested outside a function, so add a comment to that effect.
2006-02-27 21:08:23 +00:00
Brett Cannon be66e943c2 Don't filter out OverflowWarning; should be a test failure if it is raised by
the interpreter in 2.5 .
2006-02-27 20:03:56 +00:00
Thomas Wouters dca3b9c797 PEP 308 implementation, including minor refdocs and some testcases. It
breaks the parser module, because it adds the if/else construct as well as
two new grammar rules for backward compatibility. If no one else fixes
parsermodule, I guess I'll go ahead and fix it later this week.

The TeX code was checked with texcheck.py, but not rendered. There is
actually a slight incompatibility:

>>> (x for x in lambda:0)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: iteration over non-sequence

changes into

>>> (x for x in lambda: 0)
  File "<stdin>", line 1
    (x for x in lambda: 0)
                     ^
SyntaxError: invalid syntax

Since there's no way the former version can be useful, it's probably a
bugfix ;)
2006-02-27 00:24:13 +00:00
Martin v. Löwis bd260da900 Generate code to recursively copy an AST into
a tree of Python objects. Expose this through compile().
2006-02-26 19:42:26 +00:00
Guido van Rossum 1968ad32cd - Patch 1433928:
- The copy module now "copies" function objects (as atomic objects).
  - dict.__getitem__ now looks for a __missing__ hook before raising
    KeyError.
  - Added a new type, defaultdict, to the collections module.
    This uses the new __missing__ hook behavior added to dict (see above).
2006-02-25 22:38:04 +00:00
Georg Brandl 418a1ef089 RFE #1436243: make integers in [0..256] preallocated. 2006-02-22 11:30:06 +00:00
Georg Brandl 6a29c323ba Add test for classmethod ./. keyword args. 2006-02-21 22:17:46 +00:00
Tim Peters 42a3deb7b5 Suppress another deprecation warning in the tests. 2006-02-21 03:28:49 +00:00
Tim Peters 32cbc96150 Whitespace normalization. 2006-02-20 21:42:18 +00:00
Georg Brandl 5771310a09 Bug #1101233: fix test_fcntl on netbsd2 platform. 2006-02-20 10:32:02 +00:00
Georg Brandl 8f7c54eaa5 Bug #1413790: zipfile now sanitizes absolute archive names that are
not allowed by the specs.
2006-02-20 08:40:38 +00:00
Tim Peters 4d7cad115d Repair new test failures on Windows due to
implicit assumptions that there's no difference
between text and binary modes.
2006-02-19 21:22:10 +00:00
Marc-André Lemburg fe4b34cc4b Fix the encodings package codec search function to only search
inside its own package. Fixes problem reported in patch #1433198.

Add codec search function for codec test codec.
2006-02-19 15:22:22 +00:00
Georg Brandl c98eeede17 Patch #1215184: FileInput now can be given an opening hook which can
be used to control how files are opened.
2006-02-19 14:57:47 +00:00
Georg Brandl c029f873cb Patch #1212287: fileinput.input() now has a mode parameter for
specifying the file mode input files should be opened with.
2006-02-19 14:12:34 +00:00
Georg Brandl 67e9fb9d7a Patch #1215184: fileinput now has a fileno() function for getting the
current file number.
2006-02-19 13:56:17 +00:00