xref: /netbsd-src/external/bsd/tre/dist/NEWS (revision 63d4abf06d37aace2f9e41a494102a64fe3abddb)
1*63d4abf0SagcVersion 0.8.0
2*63d4abf0Sagc  - Added tre_ prefix to all functions exported from libtre.  This
3*63d4abf0Sagc    changes the binary interface (ABI).  The old source interface
4*63d4abf0Sagc    (API) is still available in <tre/regex.h>.  New programs should
5*63d4abf0Sagc    use <tre/tre.h>.
6*63d4abf0Sagc
7*63d4abf0Sagc  - Visual C++ 6 project files replaced with Visual Studio 2008 files.
8*63d4abf0Sagc
9*63d4abf0Sagc  - Bug fixes.
10*63d4abf0Sagc
11*63d4abf0SagcVersion 0.7.6
12*63d4abf0Sagc  - The license is changed from LGPL to a BSD-style license.  The new
13*63d4abf0Sagc    license is essentially the same as the "2 clause" BSD-style
14*63d4abf0Sagc    license used in NetBSD.  See the file LICENSE for details.
15*63d4abf0Sagc
16*63d4abf0Sagc  - No longer using gnulib due to potential license conflicts.
17*63d4abf0Sagc
18*63d4abf0Sagc  - Bug fixes.
19*63d4abf0Sagc
20*63d4abf0SagcVersion 0.7.5
21*63d4abf0Sagc  - Swedish translation added.
22*63d4abf0Sagc
23*63d4abf0Sagc  - Makefile and source code distribution problems fixed.
24*63d4abf0Sagc
25*63d4abf0Sagc  - Documentation updates.
26*63d4abf0Sagc
27*63d4abf0Sagc  - Adding a "+" or "*" after another repetition operator is now an
28*63d4abf0Sagc    error instead of an application of that operator and gives the
29*63d4abf0Sagc    REG_BADRPT error.  Adding a "?" means matching as few characters
30*63d4abf0Sagc    as possible and is still allowed.
31*63d4abf0Sagc
32*63d4abf0Sagc    This change was made to avoid confusion with "possessive"
33*63d4abf0Sagc    (non-backtracking) quantifiers.  In Java (and .NET?) adding a "+"
34*63d4abf0Sagc    means that the matcher doesn't backtrack over that point.  In
35*63d4abf0Sagc    previous versions of TRE adding a "+" or "*" caused the
36*63d4abf0Sagc    backtracking matcher to backtrack a lot more instead of less.  In
37*63d4abf0Sagc    some cases this caused very slow execution.
38*63d4abf0Sagc
39*63d4abf0Sagc  - New agrep command line option -q (--quiet, --silent).
40*63d4abf0Sagc
41*63d4abf0Sagc  - Bug fixes:
42*63d4abf0Sagc    - agrep now correctly returns exit code 1 when no matches found.
43*63d4abf0Sagc    - Fixed regexp parser bug affecting big-endian 64 bit
44*63d4abf0Sagc      architectures (sparc, ppc).  The bug caused all regexps to match
45*63d4abf0Sagc      an empty string and nothing else.
46*63d4abf0Sagc    - Fixed agrep memory usage problems when reading from pipes.
47*63d4abf0Sagc
48*63d4abf0SagcVersion 0.7.4
49*63d4abf0Sagc
50*63d4abf0Sagc  - TRE now builds cleanly on x86_64 and other 64 bit platforms.
51*63d4abf0Sagc    There was a large number of (basically harmless) compiler warnings
52*63d4abf0Sagc    in previous versions.
53*63d4abf0Sagc
54*63d4abf0Sagc  - Now builds and works on Cygwin and MinGW.  Libtool was updated to
55*63d4abf0Sagc    a version which works on these platforms, and the Makefiles and
56*63d4abf0Sagc    configure scripts were adjusted so that DLLs are now built on
57*63d4abf0Sagc    these platforms.
58*63d4abf0Sagc
59*63d4abf0Sagc  - agrep now handles long command line options on all platforms.
60*63d4abf0Sagc
61*63d4abf0Sagc  - Bug report email address is now tre-general@lists.laurikari.net.
62*63d4abf0Sagc
63*63d4abf0Sagc  - Many bug fixes, including:
64*63d4abf0Sagc    - The RPM spec file now works with recent rpmbuild versions
65*63d4abf0Sagc    - agrep no longer includes record delimiters in records, so for
66*63d4abf0Sagc      example "echo foo | agrep 'foo$'" works as expected.
67*63d4abf0Sagc    - agrep help texts and man page updated.
68*63d4abf0Sagc
69*63d4abf0SagcVersion 0.7.3
70*63d4abf0Sagc  - The license has been changed from GPL to LGPL.
71*63d4abf0Sagc
72*63d4abf0Sagc  - New command line option to agrep: --show-position
73*63d4abf0Sagc
74*63d4abf0Sagc  - New REG_UNGREEDY cflags and 'U' pattern modifier.
75*63d4abf0Sagc
76*63d4abf0Sagc  - Bug fixes.
77*63d4abf0Sagc
78*63d4abf0SagcVersion 0.7.2
79*63d4abf0Sagc  - Bug fixes.
80*63d4abf0Sagc
81*63d4abf0SagcVersion 0.7.1
82*63d4abf0Sagc  - New command line options to agrep: --delimiter-after, --color
83*63d4abf0Sagc
84*63d4abf0Sagc  - Man page for agrep added.
85*63d4abf0Sagc
86*63d4abf0Sagc  - Some bugs fixed.
87*63d4abf0Sagc
88*63d4abf0SagcVersion 0.7.0
89*63d4abf0Sagc  - reguexec() added.
90*63d4abf0Sagc
91*63d4abf0Sagc  - tre_have_backrefs() and tre_have_approx() added.
92*63d4abf0Sagc
93*63d4abf0Sagc  - New syntax: \Q, \E, \x1B, \x{263a}, (?inr-inr), (?inr-inr:regex).
94*63d4abf0Sagc
95*63d4abf0Sagc  - New compilation flag REG_RIGHT_ASSOC.
96*63d4abf0Sagc
97*63d4abf0Sagc  - New execution flags REG_APPROX_MATCHER and REG_BACKTRACKING_MATCHER.
98*63d4abf0Sagc
99*63d4abf0Sagc  - Included Python language bindings contributed by Nikolai SAOUKH.
100*63d4abf0Sagc
101*63d4abf0Sagc  - Several bugs and compilation problems fixed.
102*63d4abf0Sagc
103*63d4abf0SagcVersion 0.6.8
104*63d4abf0Sagc  - Fixed to use iswctype() if found instead of always using
105*63d4abf0Sagc    iswalpha() and friends.  Now [[:blank:]] should work again on
106*63d4abf0Sagc    systems where iswctype() is available.
107*63d4abf0Sagc
108*63d4abf0SagcVersion 0.6.7
109*63d4abf0Sagc  - Fixed the -h (--no-filename) option of agrep to work again.
110*63d4abf0Sagc
111*63d4abf0Sagc  - Added the -y option to agrep.  It does nothing, and exists only
112*63d4abf0Sagc    for compatibility with the non-free version of agrep.
113*63d4abf0Sagc
114*63d4abf0Sagc  - Fixed bugs: handling null bytes in multibyte mode, exponential
115*63d4abf0Sagc    memory usage problem when using lots of macros (e.g. \s or \d) in
116*63d4abf0Sagc    a regexp, and bugs in expanding {m,n} repeats (still!).
117*63d4abf0Sagc
118*63d4abf0Sagc  - wctype() and iswctype() are no longer required for wchar support,
119*63d4abf0Sagc    iswalpha() and friends will be used instead if wctype() and
120*63d4abf0Sagc    iswctype() are not found.
121*63d4abf0Sagc
122*63d4abf0Sagc  - Added support for compiling against libutf8.
123*63d4abf0Sagc
124*63d4abf0Sagc  - Added the tre_config() function to get information about the
125*63d4abf0Sagc    optional features compiled in the TRE library.  Also added
126*63d4abf0Sagc    tre_version().
127*63d4abf0Sagc
128*63d4abf0Sagc  - Some documentation updates.
129*63d4abf0Sagc
130*63d4abf0SagcVersion 0.6.6
131*63d4abf0Sagc  - Fixed bugs which occurred sometimes when "{m,n}" repeats were used
132*63d4abf0Sagc    in conjunction with "*", "+", or "?".
133*63d4abf0Sagc
134*63d4abf0Sagc  - Added the -H (--with-filename) option to agrep.
135*63d4abf0Sagc
136*63d4abf0SagcVersion 0.6.5
137*63d4abf0Sagc  - Fixed bug which occurred whine several "{m,n}" repeats were used
138*63d4abf0Sagc    in one regex.
139*63d4abf0Sagc
140*63d4abf0Sagc  - Fixed several bugs related to REG_NOSUB or NULL pmatch[] arrays
141*63d4abf0Sagc    being used for regexec().
142*63d4abf0Sagc
143*63d4abf0Sagc  - C++ or Fortran compilers no longer checked by the configure
144*63d4abf0Sagc    script.
145*63d4abf0Sagc
146*63d4abf0Sagc  - Some documentation additions.
147*63d4abf0Sagc
148*63d4abf0SagcVersion 0.6.4
149*63d4abf0Sagc  - Fixed bug in handling iterations (like "+" and "*") inside "{m,n}"
150*63d4abf0Sagc    repeats.  This should get rid of performance problems and
151*63d4abf0Sagc    incorrect results with certain regexps involving "{m,n}" repeats.
152*63d4abf0Sagc
153*63d4abf0SagcVersion 0.6.3
154*63d4abf0Sagc  - Fixed back references when REG_NOSUB is used.
155*63d4abf0Sagc
156*63d4abf0Sagc  - Compilation errors and warnings fixed.  Now this should compile on
157*63d4abf0Sagc    systems that don't have wide character support, like OpenBSD, and
158*63d4abf0Sagc    works on 64 bit machines.
159*63d4abf0Sagc
160*63d4abf0SagcVersion 0.6.2
161*63d4abf0Sagc  - Bug fixes.
162*63d4abf0Sagc
163*63d4abf0SagcVersion 0.6.1
164*63d4abf0Sagc  - Bug fixes.
165*63d4abf0Sagc
166*63d4abf0Sagc  - Some documentation updates.
167*63d4abf0Sagc
168*63d4abf0SagcVersion 0.6.0
169*63d4abf0Sagc  - The doc/ directory is now actually included in source
170*63d4abf0Sagc    distributions (oops).
171*63d4abf0Sagc
172*63d4abf0Sagc  - Bug fixes.
173*63d4abf0Sagc
174*63d4abf0Sagc  - alloca() is no longer a requirement.  The configure script still
175*63d4abf0Sagc    looks for it, and it is used if found.
176*63d4abf0Sagc
177*63d4abf0Sagc  - New approximate matching syntax.  The new syntax allows
178*63d4abf0Sagc    approximate matching to be done even using the standard regex API
179*63d4abf0Sagc    (match costs are only available when the regaexec() API is used).
180*63d4abf0Sagc
181*63d4abf0Sagc  - REG_LITERAL implemented.
182*63d4abf0Sagc
183*63d4abf0SagcVersion 0.5.3
184*63d4abf0Sagc  - Bug fixes and compilation fixes.
185*63d4abf0Sagc
186*63d4abf0Sagc  - Best match mode (-B) for agrep.
187*63d4abf0Sagc
188*63d4abf0SagcVersion 0.5.2
189*63d4abf0Sagc  - System ABI support.  TRE is now by default configured to be
190*63d4abf0Sagc    compatible with the system regex binary interface (by including
191*63d4abf0Sagc    the system regex.h and using the definitions there instead of
192*63d4abf0Sagc    TRE's own).  This can be disabled with --disable-system-abi.
193*63d4abf0Sagc
194*63d4abf0Sagc  - Added a pkg-config file `tre.pc'.
195*63d4abf0Sagc
196*63d4abf0Sagc  - Added support for minimal (non-greedy) repetition operators
197*63d4abf0Sagc    "*?", "+?", "??", and "{m,n}?".  They work similarly to the ones
198*63d4abf0Sagc    in Perl, except the number of characters matched is minimized
199*63d4abf0Sagc    instead of the number of repetitions.
200*63d4abf0Sagc
201*63d4abf0Sagc  - Added some documentation in the doc/ subdirectory.
202*63d4abf0Sagc
203*63d4abf0Sagc  - Bug fixes.
204*63d4abf0Sagc
205*63d4abf0SagcVersion 0.5.1
206*63d4abf0Sagc  - Bug fixes.
207*63d4abf0Sagc
208*63d4abf0SagcVersion 0.5.0
209*63d4abf0Sagc  - Approximate matching functions now fill the pmatch[] array of
210*63d4abf0Sagc    submatches if wanted.
211*63d4abf0Sagc
212*63d4abf0Sagc  - Support for back referencing (not for approximate matching).
213*63d4abf0Sagc
214*63d4abf0Sagc  - Changed approximate matching API to be more easily extendible in
215*63d4abf0Sagc    the future.  The match cost is now returned.
216*63d4abf0Sagc
217*63d4abf0Sagc  - Bug fixes.
218*63d4abf0Sagc
219*63d4abf0Sagc  - Windows project files (original versions contributed by Aymeric
220*63d4abf0Sagc    Moizard <jack@atosc.org>, thanks!).
221*63d4abf0Sagc
222*63d4abf0SagcVersion 0.4.1
223*63d4abf0Sagc  - Fixed installed headers.
224*63d4abf0Sagc
225*63d4abf0Sagc  - Fixed compilation problems.
226*63d4abf0Sagc
227*63d4abf0SagcVersion 0.4.0
228*63d4abf0Sagc  - The name of the package changed to TRE.
229*63d4abf0Sagc
230*63d4abf0Sagc  - New API for approximate regexp matching.
231*63d4abf0Sagc
232*63d4abf0Sagc  - New command line utility `agrep' for approximate regexp matching
233*63d4abf0Sagc    in the style of grep.
234*63d4abf0Sagc
235*63d4abf0Sagc  - New translation for Finnish (fi) has been added.
236*63d4abf0Sagc
237*63d4abf0Sagc  - Optimizations in regexec.
238*63d4abf0Sagc
239*63d4abf0Sagc  - Wide character support and multibyte character set support can be
240*63d4abf0Sagc    turned off with --disable-wchar and --disable-multibyte,
241*63d4abf0Sagc    respectively.
242*63d4abf0Sagc
243*63d4abf0Sagc  - Lots of bugfixes.
244