27158 Commits

Author SHA1 Message Date
Gustavo Niemeyer
caf1c9dfe7 - Included detailed documentation in _sre.c explaining how, when, and why
to use LASTMARK_SAVE()/LASTMARK_RESTORE(), based on the discussion
  in patch #712900.

- Cleaned up LASTMARK_SAVE()/LASTMARK_RESTORE() usage, based on the
  established rules.

- Moved the upper part of the just commited patch (relative to bug #725106)
  to outside the for() loop of BRANCH OP. There's no need to mark_save()
  in every loop iteration.
2003-04-27 14:42:54 +00:00
Gustavo Niemeyer
3646ab98af Fix for part of the problem mentioned in #725149 by Greg Chapman.
This problem is related to a wrong behavior from mark_save/restore(),
which don't restore the mark_stack_base before restoring the marks.
Greg's suggestion was to change the asserts, which happen to be
the only recursive ops that can continue the loop, but the problem would
happen to any operation with the same behavior. So, rather than
hardcoding this into asserts, I have changed mark_save/restore() to
always restore the stackbase before restoring the marks.

Both solutions should fix these two cases, presented by Greg:

>>> re.match('(a)(?:(?=(b)*)c)*', 'abb').groups()
('b', None)
>>> re.match('(a)((?!(b)*))*', 'abb').groups()
('b', None, None)

The rest of the bug and patch in #725149 must be discussed further.
2003-04-27 13:25:21 +00:00
Gustavo Niemeyer
c34f2555bd Applied patch #725106, by Greg Chapman, fixing capturing groups
within repeats of alternatives. The only change to the original
patch was to convert the tests to the new test_re.py file.

This patch fixes cases like:

>>> re.match('((a)|b)*', 'abc').groups()
('b', '')

Which is wrong (it's impossible to match the empty string),
and incompatible with other regex systems, like the following
examples show:

% perl -e '"abc" =~ /^((a)|b)*/; print "$1 $2\n";'
b a

% echo "abc" | sed -r -e "s/^((a)|b)*/\1 \2|/"
b a|c
2003-04-27 12:34:14 +00:00
Raymond Hettinger
9dcbbea878 Factor out common boilerplate for test_support 2003-04-27 07:54:23 +00:00
Gustavo Niemeyer
c23fb77477 Applying patch #726869 by Andrew I MacIntyre, reducing in _sre.c the
recursion limit for certain setups of FreeBSD and OS/2.
2003-04-27 06:58:54 +00:00
Gustavo Niemeyer
7628f1ffff Applying patch by Neal Norwitz:
[#727759] get bzip2 to build on Solaris 8 (old bzip library)
2003-04-27 06:25:24 +00:00
Tim Peters
965697fc4b Clarified new text about math exceptions.
Bugfix candidate.
2003-04-26 15:11:08 +00:00
Tim Peters
4931130f12 A start on news for 2.3b2. 2003-04-26 14:53:01 +00:00
Tim Peters
579bed7300 Rewrote. As reported on c.l.py, when the test suite is run via
"import test.autotest", temp_imp failed because the import lock was
still held at the test's end (the test assumed it wouldn't be), and
then a RuntimeError got raised at the end of the entire suite run because
test_imp cleared the import lock as a side effect of trying to test that
the import lock wasn't held (but a legitimate import is in progress,
so the lock should be held, and the import machinery complained when it
found that the lock was unexpectedly cleareed).

Also removed the unittest scaffolding.  It didn't buy anything here, and
the test was raising regrtest's TestFailed instead of using the unittest
failure-reporting mechanisms.
2003-04-26 14:31:24 +00:00
Skip Montanaro
5118341530 Add note about platform-specific behavior arising from discussion on bug
711019.
2003-04-26 02:59:00 +00:00
Tim Peters
8b7beb631b Use os.walk() to find files to delete. 2003-04-26 00:53:24 +00:00
Fred Drake
2f36b3e205 Version updates for Python 2.3. 2003-04-26 00:52:30 +00:00
Guido van Rossum
ecf0f02518 Merge back from r23b1-branch 2003-04-26 00:21:31 +00:00
Guido van Rossum
fa1eddfb21 Update version number and release date. 2003-04-25 19:19:52 +00:00
Guido van Rossum
c2f77dddf3 New feature: when saving a file, keep the eol convention of the
original.  New files are written using the eol convention of the
platform, given by os.linesep.  All files are read and written in
binary mode.
2003-04-25 18:36:31 +00:00
Fred Drake
9635268ea9 organizational and markup cleansing 2003-04-25 18:02:34 +00:00
Kurt B. Kaiser
9a90e70b32 Update for release into Python
NEWS.txt idlever.py
2003-04-25 17:48:08 +00:00
Fred Drake
c440af5495 Updated information on package metadata to reflect recent additions.
This is a modified form of SF patch #718027 (mostly markup changes).
2003-04-25 16:43:28 +00:00
Kurt B. Kaiser
40f19e3fd5 Update for 2.3b1
Modified Files:
	NEWS.txt CREDITS.txt INSTALL.txt setup.cfg
2003-04-25 16:37:31 +00:00
Fred Drake
d198f38505 - add availability statements for some of the new APIs
- lots of general cleanup
2003-04-25 16:16:02 +00:00
Skip Montanaro
5ba0054e69 final bit of tests converted from test_sre 2003-04-25 16:00:14 +00:00
Skip Montanaro
9593792da3 test_sre is dead! long live test_re! 2003-04-25 15:59:12 +00:00
Skip Montanaro
35b9ff3683 deleted more tests which were either already in test_re or that I migrated
in the last revison
2003-04-25 15:41:19 +00:00
Skip Montanaro
1e703c6278 more tests converted from test_sre 2003-04-25 15:40:28 +00:00
Fred Drake
53e5b71bbc Add modified versions of the examples from Sean Reifschneider
(SF patch #545480).
2003-04-25 15:27:33 +00:00
Guido van Rossum
b016752d8b Fix a copy-paste error: the paragraph about inet_ntop's use was copied
literally from inet_pton.
2003-04-25 15:26:58 +00:00
Skip Montanaro
bf7ad96d36 Remove tests which were migrated to test_re.py. There are still more tests
to migrate.
2003-04-25 15:17:03 +00:00
Skip Montanaro
5d0136e297 reflect csv's change back to a module. Document the new sniffer api. 2003-04-25 15:14:49 +00:00
Fred Drake
9f48045ec0 Use a simpler \note instead of a "See also" section to refer to the
os.walk() generator.
2003-04-25 15:12:47 +00:00
Guido van Rossum
f4001eed3b Skip testing inet_ntop() an inet_pton() if they aren't defined.
This makes the test pass on Windows again (and on other platforms
that don't have these).
2003-04-25 15:11:23 +00:00
Guido van Rossum
51735b0569 Fix the tests on Windows, by writing the test data file in binary
mode.

XXX I'm not convinced that this is the right solution -- arguably,
on Windows, the _fileobject class should honor the mode argument
and do newline translation.  But it's never done that so I think
there's no urgent need to fix this today.
2003-04-25 15:01:05 +00:00
Neal Norwitz
6eb502f267 Add versionadded for has_ipv6 attribute 2003-04-25 14:53:48 +00:00
Neal Norwitz
cabf56f8b4 Fix markup 2003-04-25 14:52:41 +00:00
Fred Drake
2194a4eede markup adjustments 2003-04-25 14:50:06 +00:00
Skip Montanaro
1448d4719c rework Sniffer api significantly 2003-04-25 14:47:16 +00:00
Skip Montanaro
48816c6f04 some sniffer tests 2003-04-25 14:43:14 +00:00
Skip Montanaro
2726fcd4b6 more tests from test_sre 2003-04-25 14:31:54 +00:00
Fred Drake
7c852f33a2 Attempt to deal with some obvious errors in the code. These were all
due to using a single module-level namespace where multiple namespaces
were used before.

There *really* need to be tests for the sniffer stuff.  This could
have been avoided.

Skip, please review, and add sniffer tests!
2003-04-25 14:27:00 +00:00
Guido van Rossum
376e636f18 New version from Vinaj, should solve the threading problems (hopefully). 2003-04-25 14:22:00 +00:00
Skip Montanaro
7d9963fea8 copy a few tests from test_sre 2003-04-25 14:12:40 +00:00
Walter Dörwald
dbcede5d66 Port test_bool.py to PyUnit. From SF patch #662807. 2003-04-25 10:22:01 +00:00
Brett Cannon
74bfd70e92 Complete rewrite of module. Only has tests using temporary files; net tests
should go in test_urllibnet.py .

Still need to write tests for _urlopener usage and urlretrieve.
2003-04-25 09:39:47 +00:00
Tim Peters
c4e0940042 New generator os.walk() does a bit more than os.path.walk() does, and
seems much easier to use.  Code, docs, NEWS, and additions to test_os.py
(testing this sucker is a bitch!).
2003-04-25 07:11:48 +00:00
Guido van Rossum
e7adda9035 Move socket news to 2.3b1 section! And mention has_ipv6. 2003-04-25 05:52:37 +00:00
Guido van Rossum
47dfa4a89a Patch by Jp Calderone:
- The socket module now provides the functions inet_pton and inet_ntop
  for converting between string and packed representation of IP addresses.
  See SF patch #658327.

This still needs a bit of work in the doc area, because it is not
available on all platforms (especially not on Windows).
2003-04-25 05:48:32 +00:00
Guido van Rossum
45f4130029 test_re is no longer needed 2003-04-25 01:44:40 +00:00
Guido van Rossum
46144be02c Fix test_limitations(). The match there is *expected* to raise
RuntimeError.
2003-04-25 01:40:11 +00:00
Andrew M. Kuchling
f8d0c075b2 [Patch #628208] Document the allow_none argument 2003-04-25 00:29:31 +00:00
Andrew M. Kuchling
0b85203954 [Patch #628208] Test the 'nil' extension 2003-04-25 00:27:24 +00:00
Andrew M. Kuchling
a4c2b7485b [Patch #628208] Add optional support for the 'nil' extension 2003-04-25 00:26:51 +00:00