Skip to content

Releases: google/re2j

RE2/J 1.7

30 Jun 02:46
Compare
Choose a tag to compare

RE2/J 1.7 brings some performance improvements and bug fixes:

  • avoid locking methods for obtaining instances of RE2 (see #46 and #121). Thank you @charlesmunger!
  • fixed repeat of preferred empty match (see #136 and #137)
  • fixed quoting of codepoints requiring surrogate pairs (see #123 and #143)
  • fixed NullPointerException in Parser#factor (see #149)
  • omitted leading empty matches in Pattern#split (to conform to JDK8+ regexp behavior) and improved performance (see #131, #138)

RE2/J 1.6

08 Mar 21:10
Compare
Choose a tag to compare

A couple of new features in this release:

  • added Pattern.namedGroups(): returns a map of the capturing groups in the pattern, where key is the name and value is the index of the group in the pattern

  • added a series of methods in Matcher to match against UTF-8 bytes

Thank you for the contributions, @j4ckcyw!

RE2/J 1.5

09 Oct 16:40
Compare
Choose a tag to compare

This release adds license headers to each source file, plus some build tool changes to ensure that these headers aren't forgotten in the future.

There are no changes to RE2/J's behavior in this release.

RE2/J 1.4

09 Jun 17:35
Compare
Choose a tag to compare

This is the 1.4 release of RE2/J. Changes from 1.3 include:

  • Added new flag Pattern.LONGEST_MATCH to allow changing hard-coded "longest=false" in Pattern.compile() (9708be1), thank you @mykeul

  • Fix handling of truncated two-digit hex escapes (40caa73, #103)

  • Fix treatment of \Q\E* (26ea890, #92)

  • Fix factoring of common prefixes in alternations (7fce527, #93)

  • Fix zero-width assertions in capture group eval (0a7c5df, #96)

  • Eliminate runtime binary search in simpleCodeFold (83ae537), thank you @mykeul

Thank you @EricEdens for porting the benchmarks to JMH.

Thank you to those listed above and to all the other contributors and bug reporters.

RE2/J 1.3

23 Jul 03:47
Compare
Choose a tag to compare

This is the 1.3 release of RE2/J. Changes from 1.2 include:

  • Named group support (d0ec5a7)
  • Matcher.quoteReplacement is supported (c885755)
  • Add Pattern.equals() and hashCode() (9812767), fixing #55
  • Various memory and performance improvements courtesy of @arnaudroger
  • Use Character.toLowerCase() and toUpperCase instead of UnicodeTables.CASE_RANGES (06d4a72), issue #78, courtesy of @ringw
  • Detect invalid unicode class specification (f6c10c7), fixes #74
  • Attempt to reduce monitor contention on Machine (fc83bf7), issue #85
  • Improve support for GWT projects by including RE2J.gwt.xml and supersourced files to the source jar ( 097e2a1), courtesy of @tjgq

Thank you to those listed above and to all the other contributors and bug reporters.

RE2/J 1.2

02 Apr 17:51
Compare
Choose a tag to compare

Changes since 1.1:

  • use readResolve method to fill in transient re2 field (fixes NPE when using
    deserialized Pattern objects)

  • various javadoc fixes

  • add Matcher.quoteReplacement

  • add StringBuilder overloads of Matcher methods

  • always set input sequence length on Matcher.reset()

RE2/J 1.1

17 Nov 15:01
Compare
Choose a tag to compare

This is a bugfix release of RE2/J. It addresses:

  • a NullPointerException in Pattern deserialization (issue #3)
  • incorrect handling of empty replacement groups (see #13)

RE2/J 1.0

18 Feb 17:21
Compare
Choose a tag to compare

The first binary release of RE2/J.