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