1. 29 Nis, 2003 22 kayıt (commit)
  2. 28 Nis, 2003 5 kayıt (commit)
  3. 27 Nis, 2003 7 kayıt (commit)
    • Brett Cannon's avatar
      Make tests clean up after themselves better. This means: · 4aebbb04
      Brett Cannon yazdı
      * call tearDown when Setup is called
      * shutil.rmtree the root of the created directory instead of just the leaf
        directory
      * set the LANGUAGE environment variable to what it was originally and not
        assume 'en'.
      4aebbb04
    • Gustavo Niemeyer's avatar
      - Included detailed documentation in _sre.c explaining how, when, and why · caf1c9df
      Gustavo Niemeyer yazdı
        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.
      caf1c9df
    • Gustavo Niemeyer's avatar
      Fix for part of the problem mentioned in #725149 by Greg Chapman. · 3646ab98
      Gustavo Niemeyer yazdı
      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.
      3646ab98
    • Gustavo Niemeyer's avatar
      Applied patch #725106, by Greg Chapman, fixing capturing groups · c34f2555
      Gustavo Niemeyer yazdı
      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
      c34f2555
    • Raymond Hettinger's avatar
      9dcbbea8
    • Gustavo Niemeyer's avatar
      Applying patch #726869 by Andrew I MacIntyre, reducing in _sre.c the · c23fb774
      Gustavo Niemeyer yazdı
      recursion limit for certain setups of FreeBSD and OS/2.
      c23fb774
    • Gustavo Niemeyer's avatar
      Applying patch by Neal Norwitz: · 7628f1ff
      Gustavo Niemeyer yazdı
         [#727759] get bzip2 to build on Solaris 8 (old bzip library)
      7628f1ff
  4. 26 Nis, 2003 6 kayıt (commit)