3 2007/08/16: Version 4.7.1
5 2007/08/16: [test] success in ruby 1.9.0 (2007-04-06) [i686-linux].
6 2007/07/04: [spec] (thanks K.Takata)
7 ONIG_OPTION_SINGLELINE: '$' -> '\Z' (as Perl)
8 2007/07/04: [dist] (thanks K.Takata)
9 fix documents API and API.ja.
11 2007/06/18: Version 4.7.0
13 2007/06/18: [test] success in ruby 1.9.0 (2007-04-06) [i686-linux].
14 2007/06/18: [bug] (thanks KUBO Takehiro)
15 WORD_ALIGNMENT_SIZE must be sizeof(OnigCodePoint).
16 2007/06/05: [impl] add #ifndef vsnprintf in regint.h.
17 2007/06/05: [bug] should check USE_CRNL_AS_LINE_TERMINATOR case
20 2007/04/12: Version 4.6.2
22 2007/04/09: [impl] change STATE_CHECK_BUFF_MAX_SIZE value from 0x8000
24 2007/03/26: [impl] add 'void' to function declarations.
26 2007/03/06: Version 4.6.1
28 2007/03/06: [test] success in ruby 1.9.0 (2006-10-23) [i686-linux].
29 2007/03/06: [bug] add #include <malloc.h> for bcc32.
30 (In bcc32, alloca() is declared in malloc.h.)
31 2007/03/06: [impl] remove including version.h of Ruby.
32 2007/03/02: [bug] invalid optimization for semi-end-buf in onig_search().
33 ex. /\n\Z/.match("aaaaaaaaaa\n")
34 2007/03/02: [impl] move range > start check position in end_buf process.
36 2007/02/08: Version 4.6.0
38 2007/02/08: [test] success in ruby 1.9.0 (2006-10-23) [i686-linux].
39 2007/01/09: [tune] select_opt_exact_info() didn't work for empty info.
40 ex. /.a/ make MAP info instead of EXACT info.
41 2006/12/29: [impl] add print_enc_string() for ONIG_DEBUG mode.
42 2006/12/22: [spec] should check too short multibyte char in parse_exp().
43 add USE_PAD_TO_SHORT_BYTE_CHAR.
44 ex. /\x00/ in UTF16 should be error.
46 2006/11/17: Version 4.5.1
48 2006/11/17: [test] success in ruby 1.9.0 (2006-10-23) [i686-linux].
49 2006/11/15: [impl] remove CHECK_INTERRUPT.
50 2006/11/10: [bug] 0x24, 0x2b, 0x3c, 0x3d, 0x3e, 0x5e, 0x60, 0x7c, 0x7e
52 2006/11/08: [impl] rename QUALIFIER -> QUANTIFIER.
53 2006/11/07: [bug] (thanks Byte)
54 add 0xa3 <=> 0xb3 to CaseFoldMap[] for KOI8-R.
56 2006/11/06: Version 4.5.0
58 2006/11/06: [test] success in ruby 1.9.0 (2006-10-23) [i686-linux].
59 2006/11/06: [API] remove ONIGENC_AMBIGUOUS_MATCH_COMPOUND.
60 2006/11/06: [spec] change ONIG_OPTION_FIND_LONGEST to search all of
62 add USE_FIND_LONGEST_SEARCH_ALL_OF_RANGE.
64 2006/10/30: Version 4.4.6
66 2006/10/30: [test] success in ruby 1.9.0 (2006-10-23) [i686-linux].
67 2006/10/30: [impl] (thanks K.Takata)
68 add THREAD_SYSTEM_INIT and THREAD_SYSTEM_END.
69 2006/10/30: [bug] (thanks Wolfgang Nadasi-Donner)
70 invalid offset value was used in STATE_CHECK_BUFF_INIT().
72 2006/10/24: Version 4.4.5
74 2006/10/24: [test] success in ruby 1.9.0 (2006-10-23) [i686-linux].
75 2006/10/24: [impl] escape -Wall warning.
76 2006/10/24: [tune] (thanks Kornelius Kalnbach)
77 String#scan for long string needs long time compare with
79 by initialization time for combination explosion check
80 ex. ("test " * 100_000).scan(/\w*\s?/)
81 change STATE_CHECK_BUFF_MAX_SIZE from 0x8000000 to 0x8000.
82 reduce initialization area of state_check_buff.
83 2006/10/16: [bug] (thanks Akinori Musha)
84 first argument of rb_warn() should be format string.
85 2006/10/10: [impl] add msa.state_check_buff_size initialization
87 2006/10/10: [bug] should call onig_st_free_table() in
88 onig_free_shared_cclass_table().
89 2006/10/10: [impl] remove OP_WORD_SB and OP_WORD_MB.
90 2006/09/29: [impl] initialize state_check_buff_size in STATE_CHECK_BUFF_INIT().
92 2006/09/22: [impl] convert to ascii for parameter string in
93 onig_error_code_to_str().
94 add enc member into OnigErrorInfo.
96 2006/09/19: Version 4.4.4
98 2006/09/19: [test] success in ruby 1.9.0 (2006-08-22) [i686-linux].
99 2006/09/19: [impl] (thanks KOYAMA Tetsuji)
100 HAVE_STDARG_PROTOTYPES was not defined in Mac OS X
101 by Xcode 2.4(gcc 4.0.1) problem. [php-dev 1312] etc...
103 2006/09/15: Version 4.4.3
105 2006/09/15: [test] success in ruby 1.9.0 (2006-08-22) [i686-linux].
106 2006/09/15: [bug] (thanks Allan Odgaard)
107 out of range access in bm_search_notrev().
110 2006/09/08: Version 4.4.2
112 2006/09/08: [test] success in ruby 1.9.0 (2006-08-22) [i686-linux].
113 2006/09/08: [bug] (thanks K.Takata)
114 out of range access in bm_search_notrev().
115 2006/09/04: [spec] (thanks K.Takata)
116 allow look-behind in negative look-behind.
117 ex. /(?<!(?<=a)b|c)d/
119 2006/08/29: Version 4.4.1
121 2006/08/29: [test] success in ruby 1.9.0 (2006-08-22) [i686-linux].
122 2006/08/29: [dist] (thanks Seiji Masugata)
123 add configure option --enable-combination-explosion-check
125 2006/08/25: Version 4.4.0
127 2006/08/25: [test] success in ruby 1.9.0 (2006-08-22) [i686-linux].
128 2006/08/25: [impl] add_state_check_num() should be enclosed in
129 ifdef USE_COMBINATION_EXPLOSION_CHECK.
130 2006/08/23: [spec] config USE_COMBINATION_EXPLOSION_CHECK is enabled
132 2006/08/22: [impl] remove last line comma in enum OpCode.
133 2006/08/22: [impl] remove OP_STATE_CHECK_ANYCHAR_STAR_PEEK_NEXT and
134 OP_STATE_CHECK_ANYCHAR_ML_STAR_PEEK_NEXT.
135 2006/08/22: [impl] remove OP_BACKREF3.
137 2006/08/21: Version 4.3.1
139 2006/08/21: [test] success in ruby 1.9.0 (2006-07-28) [i686-linux].
140 2006/08/21: [impl] change stack type values
141 and re-define STK_MASK_TO_VOID_TARGET etc...
142 2006/08/21: [impl] set repeat_range[].upper to 0x7fffffff as infinite.
143 2006/08/21: [impl] add STATE_CHECK_BUFF_MALLOC_THRESHOLD_SIZE.
144 2006/08/21: [impl] reduce (?:a*){n,m}, (?:a+){n,m} => (?:a*){n,n}, (?:a+){n,n}
145 2006/09/21: [impl] reduce (a*){n,m}, (a+){n,m} => (a*){n,n}, (a+){n,n}
146 if backreference is not used.
147 2006/08/17: [bug] should check scan_env.num_call > 0 for backrefed pattern
148 in combination explosion check.
150 2006/08/17: Version 4.3.0
152 2006/08/17: [test] success in ruby 1.9.0 (2006-07-28) [i686-linux].
153 2006/08/17: [new] add config USE_COMBINATION_EXPLOSION_CHECK.
154 check /(.+)*/, /(\s*foo\s*)*/ etc...
155 [API] add num_comb_exp_check member in regex_t.
156 [dist] change LTVERSION value to "1:0:0" in configure.in.
157 2006/08/15: [bug] OP_REPEAT_INC process in match_at().
158 should check repeat-count >= range-upper and
159 range-upper may be infinite.
161 2006/08/11: Version 4.2.3
163 2006/08/11: [test] success in ruby 1.9.0 (2006-07-28) [i686-linux].
164 2006/08/10: [impl] remove double call in set_qualifier().
165 2006/08/10: [impl] remove by_number member in QualifierNode.
166 2006/08/09: [impl] remove a comma at the end of enum ReduceType
167 for escape warning on Mac OS X.
168 2006/08/07: [impl] remove warning in regcomp.c.
169 2006/08/07: [spec] move definition of USE_BACKREF_AT_LEVEL into NOT_RUBY.
171 2006/08/03: Version 4.2.2
173 2006/08/03: [test] success in ruby 1.9.0 (2006-07-28) [i686-linux].
174 2006/08/03: [bug] (thanks Hiroyuki Yamamoto)
175 segmentation fault in regexec(). (POSIX API)
176 2006/08/02: [bug] combination of \G in look-ahead/look-behind and other
177 anchors(\A, \z, \Z) cause invalid result.
178 ex. /(?!\G)a\z/.match("ba")
179 start arg. of MATCH_ARG_INIT() should be original
180 arg. of onig_search().
182 2006/07/31: Version 4.2.1
184 2006/07/31: [test] success in ruby 1.9.0 (2006-07-28) [i686-linux].
185 2006/07/31: [bug] (thanks Kimura Minoru)
186 re-implement bm_search_notrev().
187 2006/07/31: [impl] bm_search_notrev() refactoring.
188 2006/07/31: [bug] (thanks Kimura Minoru)
189 fix incomplete multibyte string in exact info.
190 2006/07/31: [impl] (thanks Seiji Masugata)
191 remove cast in va_init_list() for Intel C Compiler.
193 2006/07/18: Version 4.2.0
195 2006/07/18: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
196 2006/07/18: [new] (thanks Wolfgang Nadasi-Donner)
197 add back reference with nest level.
198 \k<name+n>, \k<name-n>
199 2006/07/11: [impl] change long to unsigned long for ONIG_OPTION_XXX
200 and ONIG_SYN_XXX number literals.
202 2006/07/03: Version 4.1.2
204 2006/07/03: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
205 2006/07/03: [spec] (thanks Wolfgang Nadasi-Donner)
206 allow \G in look-behind.
207 add ANCHOR_BEGIN_POSITION flag in setup_tree().
208 2006/06/12: [impl] (thanks matz)
209 fix cast from char* to const char*
210 in onig_snprintf_with_pattern().
211 fix cast from char* to const char*
212 for PopularQStr[] and ReduceQStr[].
214 2006/05/22: Version 4.1.1
216 2006/05/22: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
217 2006/05/22: [impl] add position string argument to STACK_BASE_CHECK().
218 2006/05/22: [bug] (thanks NARUSE, Yui)
219 add STK_NULL_CHECK_END to IS_TO_VOID_TARGET().
221 /(?<pare>\(([^\(\)]++|\g<pare>)*+\))/.match('((a))')
223 2006/05/15: Version 4.1.0
225 2006/05/15: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
226 2006/05/15: [impl] thread atomic changes for onig_end() and
227 onig_free_node_list().
228 2006/05/15: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
229 2005/05/15: [dist] update API, API.ja, FAQ, FAQ.ja.
230 2006/05/15: [spec] remove onig_recompile(), onig_recompile_deluxe()
231 and re_recompile_pattern().
232 add config USE_RECOMPILE_API.
233 2006/05/15: [impl] improved thread safe implementation of onig_search()
236 2006/05/11: Version 4.0.4
238 2006/05/11: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
239 2006/05/11: [bug] (thanks Yuji Kaneda)
240 dead-lock in onig_end().
241 2006/05/11: [dist] update index.html.
243 2006/05/08: Version 4.0.3
245 2006/05/08: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
246 2006/05/08: [bug] (thanks Allan Odgaard)
247 Segmentation fault in backward search.
249 2006/04/18: [dist] update index.html.
250 2006/04/05: [dist] update index.html.
251 2006/03/24: [dist] update doc/RE, doc/RE.ja.
253 2006/03/23: Version 4.0.2
255 2006/03/22: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
256 2006/03/22: [impl] add both of ONIG_OPTION_DONT_CAPTURE_GROUP
257 and ONIG_OPTION_CAPTURE_GROUP check.
258 2006/03/22: [spec] add error code ONIGERR_INVALID_COMBINATION_OF_OPTIONS.
259 2006/03/22: [impl] remove USE_NAMED_GROUP condition from
260 ONIG_OPTION_DONT_CAPTURE_GROUP check in parse_effect().
261 2006/03/22: [new] add API onig_noname_group_capture_is_active().
262 2006/03/01: [spec] rename regex object type from regex_t to OnigRegexType.
263 add typedef OnigRegexType regex_t
264 unless ONIG_ESCAPE_REGEX_T_COLLISION is defined.
265 2006/02/27: [spec] change ONIG_MAX_MULTI_BYTE_RANGES_NUM from 1000
266 to 10000. (for docdiff program)
267 2006/02/17: [dist] change COPYING year 2005 -> 2006.
269 2006/02/07: Version 4.0.1
271 2006/02/07: [test] success in ruby 1.9.0 (2005-11-28) [i686-linux].
272 2006/02/07: [bug] memory leaks in onig_free_shared_cclass_table().
273 2006/02/03: [ruby] add -m 0644 option to install command in "make 19".
274 2006/02/03: [impl] rename ANCHOR_ANYCHAR_STAR_PL to ANCHOR_ANYCHAR_STAR_ML.
275 change from IS_POSIXLINE() to IS_MULTILINE()
276 for ANCHOR_ANYCHAR_START/_ML decision
277 in optimize_node_left().
278 2006/01/26: [dist] update index.html for Oniguruma 2.5.3.
279 2006/01/25: [dist] update URL in index.html.
281 2006/01/24: Version 4.0.0
283 2006/01/24: [test] success in ruby 1.9.0 (2005-11-28) [i386-cygwin].
284 2006/01/24: [test] success in ruby 1.9.0 (2005-11-28) [i686-linux].
285 2006/01/24: [dist] remove warnings from sample/encode.c.
286 2006/01/24: [dist] change install description in README(.ja).
287 2006/01/24: [dist] remove re.c.XXX.patch from distribution and CVS.
288 2006/01/24: [dist] --- support shared library ---
289 use GNU libtool/automake.
290 change configure.in and add Makefile.am, sample/Makefile.am.
292 2006/01/24: [dist] test programs return exit code -1 when test fails.
293 2006/01/24: [bug] (thanks KIMURA Koichi)
294 invalid syntax definition in ONIG_SYNTAX_GREP.
295 ONIG_SYN_OP_BRACE_INTERVAL
296 -> ONIG_SYN_OP_ESC_BRACE_INTERVAL
297 2006/01/23: [dist] fix configure.in for onig-config.
298 2006/01/19: [new] add new config USE_UNICODE_ALL_LINE_TERMINATORS.
299 (U+000d, U+0085, U+2028, U+2029)
300 2005/12/29: [dist] change pmatch array size to 25 in testconv.rb.
301 2005/12/26: [dist] fix name in test.rb.
302 2005/12/26: [dist] update index.html for 2.5.1.
304 2005/11/29: Version 3.9.1
306 2005/11/29: [test] success in ruby 1.9.0 (2005-11-28) [i686-linux].
307 2005/11/24: [test] success in ruby 1.9.0 (2005-08-09) [i686-linux].
308 2005/11/21: [test] success in ruby 1.9.0 (2005-11-20) [i386-cygwin].
309 2005/11/21: [bug] (thanks Allan Odgaard)
310 utf-8 character comments in extended mode leads
312 ex. /(?x)(?<= # <any-utf-8 multibyte char>o\n~) /
313 fix onigenc_unicode_is_code_ctype() and
314 utf8_is_code_ctype().
315 2005/11/20: [bug] (thanks MATSUMOTO Satoshi) (thanks Isao Sonobe)
316 begin-line anchor and BM search optimization leads
317 invalid result in UTF-16/32.
318 fix in set_optimize_exact_info().
320 2005/11/20: Version 3.9.0
322 2005/11/20: [test] success in ruby 1.9.0 (2005-11-20) [i386-cygwin].
323 2005/11/20: [test] success in ruby 1.9.0 (2005-10-18) [i386-cygwin].
324 2005/11/20: [new] add new config USE_CRNL_AS_LINE_TERMINATOR.
325 (!!! NO SUPPORT experimental option !!!)
326 2005/11/15: [bug] (thanks Allan Odgaard)
327 tok->escape was not cleared in fetch_token_in_cc().
328 ex. [\s&&[^\n]] makes wrong result.
329 2005/10/18: [impl] (thanks nobu)
330 change sjis_mbc_enc_len()
331 and node_new_cclass_by_codepoint_range() scope to static.
332 2005/09/05: [dist] remove link to MultiFind.
333 2005/09/01: [dist] add link to yagrep.
335 2005/08/23: Version 3.8.9
337 2005/08/23: [test] success in ruby 1.9.0 (2005-08-09) [i686-linux].
338 2005/08/23: [inst] fix Makefile.in for make ctest/ptest.
340 2005/08/23: Version 3.8.8
342 2005/08/23: [test] success in ruby 1.9.0 (2005-08-09) [i686-linux].
343 2005/08/23: [impl] split is_code_in_cc() from onig_is_code_in_cc().
344 2005/08/23: [impl] should check DATA_ENSURE() at OP_CCLASS_NODE in match_at().
345 2005/08/23: [impl] (thanks akr)
346 add ONIG_OPTION_MAXBIT for escape conflict with
348 2005/08/22: [impl] escape GCC 4.0 warnings for testc.c.
349 2005/08/22: [bug] (thanks nobu, matz) [ruby-dev:26840]
350 UTF-8 0xFE, 0xFF handling bug in code_is_in_cclass_node().
351 abort on /\S*/ =~ "\xfe"
352 2005/08/22: [impl] escape GCC 4.0 warnings for sample/*.c.
353 2005/08/22: [impl] fix testconvu.rb.
354 2005/08/22: [impl] escape GCC 4.0 warnings.
356 2005/08/09: Version 3.8.7
358 2005/08/09: [test] success in ruby 1.9.0 (2005-08-09) [i686-linux].
359 2005/08/09: [bug] (thanks Allan Odgaard)
360 should not call enc_len() for s == range
362 2005/08/01: [dist] add mkdir $prefix, mkdir $exec_prefix to make install.
364 2005/07/27: Version 3.8.6
366 2005/07/27: [test] success in ruby 1.9.0 (2005-07-26) [i686-linux].
367 2005/07/27: [impl] update onig-config.in.
368 2005/07/26: [new] (thanks Yen-Ju Chen)
369 add Oniguruma configuration check program.
372 2005/07/14: Version 3.8.5
374 2005/07/14: [test] success in ruby 1.9.0 (2005-07-14) [i686-linux].
375 2005/07/11: [test] success in ruby 1.9.0 (2005-07-04) [i686-linux].
376 2005/07/11: [bug] (thanks nobu) [ruby-dev:26505]
377 invalid handling for /\c\x/ and /\C-\x/.
378 fix fetch_escaped_value().
379 2005/07/05: [impl] (thanks Alexey Zakhlestine)
380 escape GCC 4.0 warnings.
382 2005/07/01: Version 3.8.4
384 2005/07/01: [test] success in ruby 1.9.0 (2005-07-01) [i686-linux].
385 2005/06/30: [test] success in ruby 1.9.0 (2005-06-28) [i686-linux].
386 2005/06/30: [dist] add GB 18030 test to sample/encode.c.
387 2005/06/30: [impl] escape warning of gb18030_left_adjust_char_head().
388 2005/06/30: [new] (contributed by KUBO Takehiro)
389 add new character encoding ONIG_ENCODING_GB18030.
390 2005/06/30: [bug] invalid ctype check for multibyte encodings.
392 fix onigenc_mb2/4_is_code_ctype(),
393 eucjp_is_code_ctype() and sjis_is_code_ctype().
394 2005/06/30: [bug] invalid conversion from code point to mbc in
395 onigenc_mb4_code_to_mbc().
397 2005/06/28: Version 3.8.3
399 2005/06/28: [test] success in ruby 1.9.0 (2005-06-28) [i686-linux].
400 2005/06/27: [test] success in ruby 1.9.0 (2005-05-31) [i686-linux].
401 2005/06/27: [bug] (thanks Wolfgang Nadasi-Donner)
402 invalid check for never ending recursion.
403 lower zero quantifier should be treated as
404 a non-recursive call alternative.
405 ex. /(?<bal>[^()]*(\(\g<bal>\)[^()]*)*)/
406 2005/06/15: [impl] add divide_ambig_string_node_sub().
407 2005/06/15: [dist] add a test to sample/encode.c.
408 2005/06/10: [new] add ONIG_SYNTAX_PERL_NG. (Perl + named group)
410 2005/06/01: Version 3.8.2
412 2005/06/01: [test] success in ruby 1.9.0 (2005-05-31) [i686-linux].
413 2005/05/31: [dist] add doc/FAQ and doc/FAQ.ja.
414 2005/05/31: [impl] minor change in node_new().
415 2005/05/30: [test] success in ruby 1.9.0 (2005-05-11) [i686-linux].
416 2005/05/30: [bug] (thanks Allan Odgaard)
417 FreeNodeList null check should be on thread-atomic
420 2005/05/11: Version 3.8.1
422 2005/05/11: [test] success in ruby 1.9.0 (2005-05-11) [i386-mswin32].
423 2005/05/11: [dist] update win32/Makefile (make 19).
424 2005/05/11: [test] success in ruby 1.9.0 (2005-05-11) [i686-linux].
425 2005/05/06: [test] success in ruby 1.9.0 (2005-05-06) [i686-linux].
426 2005/05/06: [impl] (thanks nobu) [ruby-core:4815]
427 add #ifdef USE_VARIABLE_META_CHARS to goto label.
428 2005/04/25: [test] success in ruby 1.9.0 (2005-04-25) [i686-linux].
429 2005/04/25: [impl] change DEFAULT_WARN_FUNCTION and DEFAULT_VERB_WARN_FUNCTION
430 to onig_rb_warn() and onig_rb_warning().
432 2005/04/15: Version 3.8.0
434 2005/04/15: [test] success in ruby 1.9.0 (2005-04-14) [i686-linux].
435 2005/04/01: [test] success in ruby 1.9.0 (2005-03-24) [i686-linux].
436 2005/04/01: [impl] (thanks Joe Orton)
437 (thanks Moriyoshi Koizumi)
438 many const-ification to many *.[ch] files.
440 2005/03/25: Version 3.7.2
442 2005/03/25: [test] success in ruby 1.9.0 (2005-03-24) [i686-linux].
443 2005/03/23: [test] success in ruby 1.9.0 (2005-03-20) [i686-linux].
444 2005/03/23: [test] success in ruby 1.9.0 (2005-03-08) [i686-linux].
445 2005/03/23: [new] add ONIG_SYNTAX_ASIS.
446 2005/03/23: [new] add ONIG_SYN_OP2_INEFFECTIVE_ESCAPE.
447 2005/03/09: [spec] rename MBCTYPE_XXX to RE_MBCTYPE_XXX. (GNU API)
448 2005/03/08: [test] success in ruby 1.9.0 (2005-03-08) [i686-linux].
449 2005/03/08: [impl] (thanks matz) [ruby-dev:25783]
450 should not allocate memory for key data in st.c.
451 move st_*_strend() functions from st.c. fixed some
452 potential memory leaks.
453 (imported from Ruby 1.9 2005-03-08)
455 2005/03/07: Version 3.7.1
457 2005/03/07: [test] success in ruby 1.9.0 (2005-03-07) [i686-linux].
458 2005/03/07: [impl] (thanks Rui Hirokawa)
459 add ONIG_ESCAPE_UCHAR_COLLISION.
460 rename UChar to OnigUChar in oniguruma.h.
461 2005/03/07: [impl] remove declarations for Ruby in oniggnu.h.
462 2005/03/05: [bug] ANCHOR_ANYCHAR_STAR didn't work in onig_search().
463 2005/03/01: [dist] remove oniggnu.h from MANIFEST-RUBY.
464 remove oniggnu.h from make 19.
465 2005/03/01: [bug] (thanks matz) [ruby-dev:25778]
466 uninitialized member (OptEnv.backrefed_status)
469 2005/02/19: Version 3.7.0
471 2005/02/19: [test] success in ruby 1.9.0 (2005-02-19) [i386-cygwin].
472 2005/02/19: [new] (thanks Minero Aoki)
473 add onig_region_set().
474 2005/02/19: [API] change onig_region_init() to extern.
475 2005/02/19: [dist] remove reggnu.c from MANIFEST-RUBY.
476 remove reggnu.c from make 19.
477 2005/02/19: [dist] update doc/API and doc/API.ja.
478 2005/02/19: [test] success in ruby 1.9.0 (2005-02-19) [i386-cygwin].
479 2005/02/19: [impl] (thanks Alexey Zakhlestine)
480 change UChar* to const UChar* in oniguruma.h,
481 regenc.h and regparse.h.
482 2005/02/13: [impl] change UChar* to const UChar* in oniguruma.h and
483 onigposix.h and st.h.
484 2005/02/12: [test] success in ruby 1.9.0 (2005-02-11) [i386-cygwin].
485 2005/02/12: [bug] (thanks nobu) [ruby-dev:25676]
486 type_cclass_hash() fix overrun.
487 2005/02/09: [test] success in ruby 1.9.0 (2005-02-09) [i686-linux].
488 2005/02/09: [spec] add RE_OPTION_FIND_NOT_EMPTY etc.. to oniggnu.h.
489 2005/02/09: [dist] remove hash.c.patch.
490 2005/02/07: [impl] remove re_mbctab, mbctab_ascii etc...
491 (USE_COMPATIBILITY_FOR_RUBY_EXTENSION_LIBRARY)
493 2005/02/04: Version 3.6.0
495 2005/02/04: [test] success in ruby 1.9.0 (2005-02-04) [i686-linux].
496 2005/02/01: [bug] add key_free() call to st_free_table().
497 2005/02/01: [new] add onig_get_default_ambig_flag() and
498 onig_set_default_ambig_flag().
499 2005/02/01: [dist] update MANIFEST-RUBY.
500 2005/01/31: [test] success in ruby 1.9.0 (2005-01-29) [i686-linux].
501 2005/01/31: [spec] remove ONIGENC_AMBIGUOUS_MATCH_COMPOUND
502 from ONIGENC_AMBIGUOUS_MATCH_DEFAULT.
503 2005/01/31: [dist] update Makefile.in (make 19).
504 2005/01/29: [memo] (thanks Kazuo Saito)
505 Oniguruma 3.5.4 was merged to Ruby 1.9.0.
506 2005/01/28: [impl] (thanks UK-taniyama)
507 add extern "C" { } directive to oniguruma.h, oniggnu.h
508 and onigposix.h for C++.
509 2005/01/25: [impl] remove nested function call for xxx_code_to_mbclen().
510 (euc_kr.c, euc_tw.c, big5.c)
512 2005/01/19: Version 3.5.4
514 2005/01/19: [test] success in ruby 1.9.0 (2005-01-05) [i686-linux].
515 2005/01/19: [bug] (thanks Isao Sonobe)
516 callback function argument name_end of onig_foreach_name()
518 name key of name table should be null terminated for
519 character encoding length.
520 add strdup_with_null(), rename onig_strdup() to k_strdup().
521 use e->name_len in i_names().
522 2005/01/17: [impl] (thanks UK-taniyama)
523 add HAVE_SYS_TYPES_H to config.h.in.
525 2005/01/13: Version 3.5.3
527 2005/01/13: [test] success in ruby 1.9.0 (2005-01-05) [i686-linux].
528 2005/01/13: [bug] ignore case match bug.
529 ex. /s+/iu.match("SSSSS") ==> [4..5]
530 fix OP_EXACT1_IC, OP_EXACTN_IC process.
531 2005/01/13: [bug] (thanks Isao Sonobe)
532 ignore case match bug.
533 ex. /is/iu.match("ss") fail.
534 fix str_lower_case_match() etc.
536 2005/01/05: Version 3.5.2
538 2005/01/05: [test] success in ruby 1.9.0 (2005-01-05) [i686-linux].
539 2005/01/05: [test] success in ruby 1.9.0 (2004-12-16) [i686-linux].
540 2005/01/05: [bug] (thanks Isao Sonobe)
541 ignore case match bug.
542 ex. /s+/iu.match("sssss") ==> [4..5]
543 fix OP_EXACT1_IC, OP_EXACTN_IC process.
544 2005/01/05: [bug] (thanks Isao Sonobe)
545 group name table should be renumbered.
546 add onig_renumber_name_table().
547 2004/12/24: [dist] remove file onigcmpt200.h.
549 2004/12/17: Version 3.5.1
551 2004/12/17: [dist] add INSTALL-RUBY to archive.
552 2004/12/16: [test] success in ruby 1.9.0 (2004-12-16) [i686-linux].
553 2004/12/16: [dist] update hash.c.patch.
554 2004/12/15: [bug] (thanks matz)
555 char > 127 should be casted to unsigned char. (utf8.c)
556 2004/12/13: [impl] add HAVE_PROTOTYPES and HAVE_STDARG_PROTOTYPES definition
557 to oniguruma.h in the case __cplusplus.
558 2004/12/06: [dist] update doc/RE and doc/RE.ja.
559 2004/12/03: [impl] (thanks nobu)
560 st.h fix prototype for C++.
562 2004/12/03: Version 3.5.0
564 2004/12/02: [test] success in ruby 1.9.0 (2004-12-02) [i686-linux].
565 2004/12/01: [test] success in ruby 1.9.0 (2004-12-01) [i386-mswin32].
566 2004/12/01: [dist] add make targets 19 and 19up to win32/Makefile.
567 2004/12/01: [test] success in ruby 1.9.0 (2004-12-01) [i386-cygwin].
568 2004/12/01: [test] success in ruby 1.9.0 (2004-12-01) [i686-linux].
569 2004/12/01: [impl] double cast for escape warning in Cygwin.
570 (HashDataType* )((void* )(&e)) in regparse.c
571 2004/12/01: [test] success in ruby 1.9.0 (2004-11-30) [i686-linux].
572 2004/12/01: [tune] change implementation of clear_opt_map_info().
573 (which was 10-16% cost in gprof result for my test program)
574 2004/12/01: [dist] remove regex.c from distribution files.
575 2004/11/30: [memo] remove targets 16 and 18 from Makefile.in.
576 2004/11/30: [test] success in ruby 1.9.0 (2004-11-30) [i686-linux].
577 2004/11/30: [inst] add "cp -p st.[ch] st.[ch].ruby_orig" to "make 19".
578 2004/11/30: [tune] map_position_value() return 20 if code is 0
579 and minimum enclen > 1.
580 2004/11/30: [test] success in ruby 1.9.0 (2004-11-29) [i686-linux].
581 2004/11/30: [impl] minor changes for multi-thread in regexec.c and regcomp.c.
582 2004/11/30: [impl] change THREAD_PASS_LIMIT_COUNT value from 10 to 8.
583 2004/11/30: [impl] add THREAD_ATOMIC_XXX to FreeNodeList access in regparse.c
584 2004/11/29: [impl] add USE_MULTI_THREAD_SYSTEM.
585 2004/11/29: [memo] add hash.c.patch to CVS.
586 2004/11/29: [dist] change mail address to 'sndgk393 AT ...'
587 2004/11/29: [dist] add -s option (silent mode) to test.rb.
588 2004/11/29: [tune] change THRESHOLD_RANGE_NUM_FOR_SHARE_CCLASS value
590 2004/11/29: [inst] add make target "19up".
591 2004/11/29: [dist] change Oniguruma Home Page URL.
592 2004/11/29: [impl] remove onig_is_in_code_range_array().
593 2004/11/29: [dist] fix doc/RE and RE.ja (character types).
594 2004/11/26: [dist] fix win32/Makefile.
595 2004/11/26: [dist] fix doc/RE and RE.ja (multibyte character types).
596 2004/11/26: [impl] add onig_free_shared_cclass_table().
597 2004/11/26: [impl] move definition USE_UNICODE_FULL_RANGE_CTYPE to regenc.h.
598 2004/11/26: [impl] add opcode OP_CCLASS_NODE.
599 2004/11/26: [impl] move definition of CClassNode to regint.h.
600 2004/11/26: [impl] add type PointerType in regint.h.
601 2004/11/25: [impl] remove ONIGENC_CTYPE_MOD_NOT.
602 2004/11/25: [impl] rename onig_node_new_cclass_by_codepoint_range to
603 node_new_cclass_by_codepoint_range.
604 2004/11/25: [impl] remove get_type_cc_node method from OnigEncodingType.
605 2004/11/25: [impl] move implementation of shared char-class from enc/*.c
607 2004/11/25: [dist] add hash.c.patch for Ruby 1.9 hash.c change.
608 2004/11/22: [impl] change utf8_get_type_node().
609 2004/11/22: [impl] add ONIGENC_CTYPE_MOD_NOT.
610 2004/11/22: [bug] (thanks MIYAMUKO Katsuyuki)
611 ruby make test fail in HP-UX B.11.23 ia64.
612 should use tok->u.code instead of tok->u.c in
613 the case of TK_CODE_POINT.
614 2004/11/19: [bug] (thanks Yoshida Masato)
615 invalid multibyte code causes segmentation fault.
617 2004/11/19: [bug] (thanks Yoshida Masato)
618 illegal check in char-class range in UTF-8.
619 ex. s = "[\xC2\xA0-\xC3\xBE]"
620 p(Regexp.new(s, nil, "u") =~ "\xC3\xBE")
621 2004/11/18: [impl] add onig_node_new_cclass_by_codepoint_range().
622 2004/11/18: [impl] remove OnigCodePointRange type. (use OnigCodePoint[].)
623 2004/11/17: [bug] (thanks nobu)
624 abort in "a".gsub(/a\Z/, "")
625 fix ONIGENC_STEP_BACK() argument in onig_search().
626 2004/11/16: [impl] add key2 member to st_table_entry in st.[ch].
627 change API of st for non-null terminated string key.
628 2004/11/16: [impl] add get_type_cc_node method to OnigEncodingType.
629 2004/11/15: [impl] add st.h and st.c from Ruby 1.9.
631 2004/11/12: [impl] change menber 'not' of CClassNode to 'flags'.
632 add flags FLAG_CCLASS_NOT and FLAG_CCLASS_SHARE.
633 2004/11/12: [impl] add onig_is_in_code_range_array() to enc/unicode.c.
634 2004/11/12: [impl] fix CRWord in enc/unicode.c and MBWord in enc/utf8.c.
635 2004/11/11: [bug] fix enc/utf8.c.
636 size 0 array initializer was compile error in VC++.
637 2004/11/09: [inst] (thanks Hiroki YAGITA)
638 change installed file mode to 0644.
639 2004/11/09: [bug] (thanks UK-taniyama)
640 wrong definitions GET_RELADDR_INC(), GET_ABSADDR_INC()
641 etc... (NOT PLATFORM_UNALIGNED_WORD_ACCESS)
642 2004/11/09: [impl] type cast in regexec() for remove compile time warning.
644 2004/11/08: [spec] fix Unicode character types.
645 0x00ad (soft hyphen) should be [:cntrl:] and [:space:] type.
646 [0x0009..0x000d], 0x0085 should be [:print:] type.
647 0x00ad should not be [:punct:] type.
648 2004/11/08: [inst] fix Makefile.in. (for make ctest/ptest/testcu)
649 2004/11/06: [impl] (thanks Kazuo Saito)
650 too many alternatives pattern causes core dump.
651 change implementation of onig_node_free().
652 2004/11/05: [spec] rename ONIGERR_END_PATTERN_AT_BACKSLASH to
653 ONIGERR_END_PATTERN_AT_ESCAPE.
654 2004/11/05: [impl] (thanks matz)
655 escape compile time warnings for x86-64 Linux.
656 StackIndex type int -> long
657 2004/11/05: [memo] (thanks Kazuo Saito)
658 Oniguruma 3.4.0 was merged to Ruby 1.9.0.
660 2004/10/30: Version 3.4.0
662 2004/10/30: [test] success in ruby 1.9.0 (2004-09-24) [i686-linux].
663 2004/10/30: [new] add hexadecimal digit char type. (\h, \H)
664 syntax: ONIG_SYN_OP2_ESC_H_XDIGIT
665 2004/10/30: [bug] (thanks Guy Decoux)
666 reluctant infinite repeat bug.
667 ex. /^[a-z]{2,}?$/.match("aaa") fail.
668 fix OP_REPEAT_INC_NG process in match_at().
670 2004/10/18: Version 3.3.1
672 2004/10/18: [test] success in ruby 1.9.0 (2004-09-24) [i686-linux].
673 2004/10/18: [impl] (thanks Imai Yasumasa)
674 enclose #include <sys/types.h> by #ifndef __BORLANDC__.
675 2004/10/18: [bug] (thanks Imai Yasumasa)
676 memory acess violation in select_opt_exact_info().
677 2004/09/25: [dist] fix doc/API and doc/API.ja.
678 2004/09/25: [bug] fix OP_SEMI_END_BUF process in match_at() for
679 the case USE_NEWLINE_AT_END_OF_STRING_HAS_EMPTY_LINE
682 2004/09/17: Version 3.3.0
684 2004/09/17: [dist] add COPYING to program source files.
685 2004/09/17: [test] success in ruby 1.9.0 (2004-07-23) [i686-linux].
686 2004/09/17: [bug] (thanks Isao Sonobe)
687 memory access violations in xxx_mbc_enc_len(),
688 and xxx_mbc_to_normalize() and
689 xxx_left_adjust_char_head().
690 add string range check in match_at() and onig_search().
691 2004/09/08: [dist] change mail address format.(kosako AT sofnec ...)
693 2004/09/04: Version 3.2.9
695 2004/09/04: [test] success in ruby 1.9.0 (2004-07-23) [i686-linux].
696 2004/09/04: [bug] (thanks Bob Kerstetter and Richard Koch)
697 search fail in ignore case mode.
698 fix str_lower_case_match().
699 2004/09/04: [inst] (thanks Isao Sonobe)
700 clear sample directory in 'make clean'.
701 2004/09/04: [bug] fix ONIGENC_AMBIGUOUS_MATCH_COMPOUND/ASCII/NONASCII
702 meanings in XXXXX_mbc_to_normalize() and
703 XXXXX_is_mbc_ambiguous().
704 2004/08/28: [bug] fix ONIGENC_AMBIGUOUS_MATCH_COMPOUND/ASCII/NONASCII
705 meanings in iso_8859_XX_mbc_to_normalize() and
706 iso_8859_XX_is_mbc_ambiguous().
708 2004/08/24: Version 3.2.8
710 2004/08/24: [test] success in ruby 1.9.0 (2004-07-23) [i686-linux].
711 2004/08/24: [spec] add ONIG_SYN_FIXED_INTERVAL_IS_GREEDY_ONLY.
712 /a{n}?/ == /(?:a{n})?/
713 2004/08/24: [dist] fix doc/RE and doc/RE.ja.
714 2004/08/24: [bug] (thanks starfish)
715 memory leak in set_optimize_exact_info().
717 2004/08/21: Version 3.2.7
719 2004/08/21: [test] success in ruby 1.8.2 (2004-07-28) [i686-linux].
721 2004/08/21: [test] success in ruby 1.9.0 (2004-07-23) [i686-linux].
722 2004/08/21: [bug] (thanks Isao Sonobe) (thanks kage)
723 memory access violation in bm_search_notrev().
724 (forgotten to merge from 2.X)
726 2004/07/24: Version 3.2.6
728 2004/07/24: [test] success in ruby 1.9.0 (2004-07-23) [i686-linux].
729 2004/07/24: [test] success in ruby 1.8.2 (2004-07-16) [i686-linux].
730 2004/07/24: [bug] fix warnings for regexec.c. (gcc 2.91.66)
731 2004/07/24: [memo] change version control system from Subversion
733 2004/07/20: [bug] (thanks Isao Sonobe)
734 illegal result in negative character class in ignore case
735 mode. fix pair-ambig-codes process in parse_exp().
736 ex. /[^a]/i.match("A")
737 2004/07/20: [bug] (thanks Isao Sonobe)
738 undefined bytecode error happens in UTF-16BE etc..
739 compile_length_cclass_node() was not consistent with
740 compile_cclass_node().
742 2004/07/01: Version 3.2.5
744 2004/07/01: [test] success in ruby 1.8.2 (2004-06-23) [i686-linux].
745 2004/07/01: [new] add onig_get_syntax_{op,op2,behavior,options}.
746 2004/07/01: [bug] (thanks Isao Sonobe)
747 invalid result in onig_capture_tree_traverse().
748 fix make_capture_history_tree().
750 2004/06/29: Version 3.2.4
752 2004/06/29: [test] success in ruby 1.8.2 (2004-06-23) [i686-linux].
753 2004/06/29: [new] (thanks Isao Sonobe)
754 add onig_number_of_captures().
756 2004/06/25: Version 3.2.3
758 2004/06/25: [test] success in ruby 1.8.2 (2004-06-23) [i686-linux].
759 2004/06/25: [bug] (thanks Isao Sonobe)
760 invalid result in onig_capture_tree_traverse().
761 fix make_capture_history_tree().
763 2004/06/24: Version 3.2.2
765 2004/06/24: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
766 2004/06/24: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
767 2004/06/24: [test] success in ruby 1.8.2 (2004-06-23) [i686-linux].
768 2004/06/24: [new] (thanks Isao Sonobe)
769 add onig_number_of_capture_histories().
770 2004/06/24: [bug] (thanks Isao Sonobe)
771 invalid char position match in UTF-16 and UTF-32.
772 add onigenc_always_false_is_allowed_reverse_match().
774 2004/06/17: Version 3.2.1
776 2004/06/17: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
777 2004/06/17: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
778 2004/06/17: [test] success in ruby 1.8.2 (2004-05-18) [i686-linux].
779 2004/06/17: [impl] should not use OP_REPEAT for (...)? even if target size
781 2004/06/17: [bug] (thanks nobu) [ruby-dev:23703]
782 should use STACK_AT() instead of stkp in OP_REPEAT_INC.
783 add IN_VAR_REPEAT flag in setup_tree().
784 2004/06/16: [impl] change select_opt_exact_info() to use ByteValTable[].
785 2004/06/16: [impl] change map_position_value() table values.
786 2004/06/14: [impl] (thanks John Carter)
787 RelAddrType, AbsAddrType and LengthType change
788 from short int to int type for the very long string match.
789 2004/06/14: [bug] (thanks Greg A. Woods)
790 fix nmatch argument of regexec() is smaller than
791 reg->num_mem + 1 case. (POSIX API)
792 2004/06/14: [spec] (thanks Greg A. Woods)
793 set pmatch to NULL if nmatch is 0 in regexec(). (POSIX API)
795 2004/06/10: Version 3.2.0
797 2004/06/10: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
798 2004/06/10: [test] success in ruby 1.9.0 (2004-05-27) [i386-mswin32].
799 2004/06/10: [test] success in ruby 1.8.2 (2004-05-18) [i686-linux].
800 2004/06/10: [dist] add README.ja.
801 2004/06/10: [new] add onig_copy_encoding().
802 2004/06/10: [API] add encoding argument to onig_set_meta_char().
803 add meta_char_table member to OnigEncodingType.
804 2004/06/08: [dist] add doc/API.ja.
805 2004/06/07: [API] add num_of_elements member to OnigCompileInfo.
806 2004/05/29: [memo] (thanks Kazuo Saito)
807 Oniguruma 3.1.0 was merged to Ruby 1.9.0.
808 2004/05/26: [impl] rename NST_SIMPLE_REPEAT to NST_STOP_BT_SIMPLE_REPEAT.
809 2004/05/26: [impl] doesn't need to check that target's simple repeat-ness
810 for EFFECT_MEMORY type node in setup_tree().
812 2004/05/25: Version 3.1.0
814 2004/05/25: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
815 2004/05/25: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
816 2004/05/25: [test] success in ruby 1.9.0 (2004-05-23) [i686-linux].
817 2004/05/25: [test] success in ruby 1.8.2 (2004-05-18) [i686-linux].
818 2004/05/25: [bug] (thanks Masahiro Sakai) [ruby-dev:23560]
819 ruby -ruri -ve 'URI::ABS_URI =~
820 "http://example.org/Andr\xC3\xA9"'
821 nested STK_REPEAT type stack can't backtrack repeat_stk[].
822 add OP_REPEAT_INC_SG and OP_REPEAT_INC_NG_SG.
823 2004/05/25: [new] support UTF-32LE. (ONIG_ENCODING_UTF32_LE)
824 2004/05/25: [new] support UTF-32BE. (ONIG_ENCODING_UTF32_BE)
825 2004/05/24: [impl] divide enc/utf16.c to utf16_be.c and utf16_le.c.
826 2004/05/24: [impl] add enc/unicode.c.
827 2004/05/24: [API] change calling sequences of onig_new_deluxe() and
828 onig_recompile_deluxe().
829 define OnigCompileInfo type.
830 2004/05/21: [impl] perform ensure process for rb_trap_exec() in match_at().
831 add onig_exec_trap() and CHECK_INTERRUPT_IN_MATCH_AT.
832 2004/05/21: [impl] add regex status check to onig_match().
833 2004/05/21: [new] add onig_get_capture_tree() and
834 onig_capture_tree_traverse().
835 2004/05/20: [spec] (thanks Isao Sonobe)
836 capture history return capture data tree.
837 (see sample/listcap.c)
838 2004/05/19: [bug] (thanks Simon Strandgaard)
839 Control-C does not work in matching process on Ruby.
840 add calling of CHECK_INTERRUPT into match_at().
841 ex. /<(?:[^">]+|"[^"]*")+>/.match('<META http-equiv= \
842 "Content-Type content="text/html; charset=iso-8859-1">')
843 2004/05/19: [bug] (thanks Simon Strandgaard)
844 define virtual codepoint values for invalid encoding
845 byte 0xfe and 0xff in UTF-8.
846 ex. /\w+/u.match("%a\xffb\xfec%") ==> "a"
847 2004/05/19: [spec] (thanks Simon Strandgaard)
848 too big backref number should be treated as a sequence of
849 an octal char and number digits.
850 ex. /b\3777\c/.match("b\3777\c")
851 2004/05/17: [spec] rename encoding names "UTF-16 BE" and "UTF-16 LE"
852 to "UTF-16BE" and "UTF-16LE".
853 2004/05/17: [impl] move ismbchar() and mbclen() from oniguruma.h to oniggnu.h.
854 2004/05/17: [impl] rename onigenc_single_byte_is_allowed_reverse_match() to
855 onigenc_always_true_is_allowed_reverse_match().
857 2004/05/14: Version 3.0.0
859 2004/05/14: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
860 2004/05/14: [test] success in ruby 1.9.0 (2004-05-14) [i686-linux].
861 2004/05/14: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
862 (* need to edit parse.y:
863 register int c; ---> int c; in yylex())
864 2004/05/14: [impl] add regext.c.
865 2004/05/14: [spec] KOI8 is not included in library archive by default setup.
866 2004/05/14: [impl] implementation changes are completed for all encoding files.
867 2004/05/12: [impl] add divide_ambig_string_node().
868 ambiguous string is divided and normalized before
869 optimization and compilation process.
870 2004/05/11: [dist] remove INSTALL-RUBY from distribution.
871 2004/04/28: [memo] (thanks Kazuo Saito)
872 Oniguruma 2.2.8 was merged to Ruby 1.9.0.
873 2004/04/26: [spec] change value DEFAULT_MATCH_STACK_LIMIT_SIZE = 0 : unlimited
874 2004/04/26: [new] add onig_get_match_stack_limit_size() and
875 onig_set_match_stack_limit_size().
876 2004/04/26: [bug] add error check to re.c.181.patch and re.c.168.patch.
877 2004/04/23: [impl] remove ctype_support_level from OnigEncodingType.
878 2004/04/22: [spec] allow the range from single byte char to multibyte char in
879 character class for implementation reason.
880 ex. /[a-\xbb\xcc]/ in EUC-JP encoding.
881 2004/04/21: [impl] remove max_enc_len_by_first_byte() from OnigEncodingType.
882 2004/04/20: [new] add onig_copyright().
883 2004/04/20: [impl] add regversion.c.
884 2004/04/15: [new] add onig_get_ambig_flag().
885 2004/04/14: [bug] (thanks Isao Sonobe)
886 undefined bytecode error happens if ONIG_OPTION_FIND_LONGEST
888 should finish matching process if find-condition
889 is fail at OP_END in match_at().
890 2004/04/12: [impl] add ambig_flag to regex_t.
891 2004/04/09: [impl] move onig_set_meta_char() to regsyntax.c.
892 2004/04/09: [bug] (thanks HIROSE Masaaki) fix onig_version().
893 2004/04/08: [impl] add regsyntax.c.
894 2004/04/07: [new] support UTF-16 LE. (ONIG_ENCODING_UTF16_LE)
895 2004/04/05: [impl] add ONIGENC_CTYPE_NEWLINE.
896 2004/04/05: [memo] (thanks Kazuo Saito)
897 Oniguruma 2.2.6 was merged to Ruby 1.9.0.
898 2004/04/02: [memo] Version 2.2.6 was released.
899 2004/03/26: [new] support UTF-16 BE. (ONIG_ENCODING_UTF16_BE)
900 2004/03/25: [spec] support non 8-bit encodings.
901 2004/03/16: [memo] 2.X branch for 8-bit encodings only.
903 2004/03/16: Version 2.2.5
905 2004/03/16: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
906 2004/03/16: [test] success in ruby 1.9.0 (2004-02-24) [i686-linux].
907 2004/03/16: [impl] add property name to error message of
908 ONIGERR_INVALID_CHAR_PROPERTY_NAME.
909 2004/03/16: [spec] allow prefix 'Is' for \p{...} in ONIG_SYNTAX_PERL.
910 add syntax op. ONIG_SYN_OP2_CHAR_PROPERTY_PREFIX_IS.
911 2004/03/15: [dist] add sample/syntax.c.
912 2004/03/15: [spec] support NOT op. in char property. \p{^...}, \P{^...}.
913 add syntax op. ONIG_SYN_OP2_ESC_P_BRACE_CIRCUMFLEX_NOT.
914 2004/03/15: [spec] rename ONIG_SYN_OP2_ESC_P_CHAR_PROPERTY to
915 ONIG_SYN_OP2_ESC_P_BRACE_CHAR_PROPERTY.
916 2004/03/10: [impl] move ONIGERR_XXX from regenc.h to oniguruma.h,
917 rename ONIGERR_XXX to ONIGENCERR_XXX in regenc.h.
918 2004/03/08: [impl] (thanks eban)
919 replace defined(__CYGWIN__) to defined(__GNUC__).
920 2004/03/08: [bug] (thanks eban) [ruby-dev:23172]
921 need to separate initialization for bcc32.
922 2004/03/06: [memo] (thanks Kazuo Saito)
923 Oniguruma 2.2.4 was merged to Ruby 1.9.0.
924 2004/03/05: [API] change second argument type of onig_set_meta_char()
925 from unsigned int to OnigCodePoint.
926 2004/03/05: [dist] (thanks Kazuo Saito)
929 2004/03/04: Version 2.2.4
931 2004/03/04: [impl] (thanks Moriyoshi Koizumi)
932 fix many warnings in Win32 VC++ with /W3 option.
934 2004/03/02: Version 2.2.3
936 2004/03/02: [bug] (thanks Isao Sonobe)
937 return invalid capture region value if capture history
938 is used. (OP_MEMORY_END_PUSH_REC bug)
939 ex. /\g<p>(?@<p>\(\g<s>\)){0}(?<s>(?:\g<p>)*|){0}/
941 2004/03/02: [impl] (thanks Kazuo Saito)
942 add :nodoc: to onig_stat_print() for RDoc.
943 2004/03/02: [impl] don't use ONIG_SOURCE_IS_WRAPPED.
945 2004/02/27: Version 2.2.2
947 2004/02/27: [impl] fix the position of onig_stat_print().
948 2004/02/27: [impl] define ONIG_RUBY_DEFINE_GLOBAL_FUNCTION() in regint.h
951 2004/02/26: Version 2.2.1
953 2004/02/26: [bug] [bugs.php.net:#26677] (thanks behrens)
954 invalid definition at onig_error_code_to_str()
955 in the case of NOT HAVE_STDARG_PROTOTYPES.
957 2004/02/25: Version 2.2.0
959 2004/02/25: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
960 2004/02/24: [test] success in ruby 1.9.0 (2004-02-24) [i686-linux].
961 2004/02/24: [bug] undefined IS_BLANK() and IS_GRAPH() was used in
962 onigenc_is_code_ctype() in the case of Ruby M17N.
963 2004/02/24: [new] support ISO-8859-16. (ONIG_ENCODING_ISO_8859_16)
964 2004/02/24: [bug] should not fold match for 0xdf in iso8859_6.c.
965 2004/02/24: [new] support ISO-8859-14. (ONIG_ENCODING_ISO_8859_14)
966 2004/02/23: [new] support ISO-8859-13. (ONIG_ENCODING_ISO_8859_13)
967 2004/02/23: [new] support ISO-8859-10. (ONIG_ENCODING_ISO_8859_10)
968 2004/02/20: [bug] fix iso_8859_4_mbc_is_case_ambig().
969 2004/02/20: [new] support ISO-8859-9. (ONIG_ENCODING_ISO_8859_9)
970 2004/02/19: [bug] correct ctype tables for ISO-8859-3, ISO-8859-4,
971 ISO-8859-6, ISO-8859-7, ISO-8859-8, KOI8_R.
972 2004/02/18: [bug] wrong replaced name OnigSyntaxGnuOnigex.
973 2004/02/17: [spec] check capture status for empty infinite loop.
974 [ruby-dev:20224] etc...
975 ex. /(?:\1a|())*/.match("a"),
976 /(?:()|()|()|(x)|()|())*\2b\5/.match("b")
977 add USE_INFINITE_REPEAT_MONOMANIAC_MEM_STATUS_CHECK.
978 add OP_NULL_CHECK_END_MEMST, OP_NULL_CHECK_END_MEMST_PUSH.
979 add stack type STK_NULL_CHECK_END.
980 2004/02/13: [impl] add OnigEncodingEUC_CN to enc/euc_kr.c.
981 2004/02/13: [bug] (thanks Simon Strandgaard)
982 parsing of nested repeat was invalid.
983 ex. /ab{2,3}*/ was /(?:a(?:b{2,3}))*/,
984 should be /a(?:b{2,3}*)/
985 2004/02/12: [bug] (thanks Simon Strandgaard)
986 OP_REPEAT_INC_NG process in match_at() is wrong.
987 ex. bad match /a.{0,2}?a/ =~ "0aXXXa0"
988 2004/02/12: [bug] (thanks Simon Strandgaard)
989 wrong fetch after (?x) option. ex. "(?x)\ta .\n+b"
990 2004/02/12: [bug] (thanks Simon Strandgaard)
991 [\^] is not a empty char class.
992 2004/02/09: [new] add onig_set_syntax_op(), onig_set_syntax_op2(),
993 onig_set_syntax_behavior(), onig_set_syntax_options().
994 2004/02/06: [dist] add a new target 'site' to Makefile.in.
995 2004/02/06: [dist] add index.html.
996 2004/02/03: [bug] oniggnu.h was not installed by 'make install'.
998 2004/02/02: Version 2.1.0
1000 2004/02/02: [test] success in ruby 1.9.0 (2004-02-02) [i686-linux].
1001 2004/02/02: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
1002 2004/02/02: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
1003 2004/02/02: [new] support ISO-8859-11. (ONIG_ENCODING_ISO_8859_11)
1004 2004/02/02: [new] support ISO-8859-5. (ONIG_ENCODING_ISO_8859_5)
1005 2004/02/02: [impl] should check single byte encoding or not in and_cclass()
1007 2004/01/30: [dist] add oniggnu.h.
1008 2004/01/30: [bug] ISO-8859-7 0xb7 (middle dot) is Punct type.
1009 2004/01/30: [new] support ISO-8859-8. (ONIG_ENCODING_ISO_8859_8)
1010 2004/01/29: [new] support ISO-8859-7. (ONIG_ENCODING_ISO_8859_7)
1011 2004/01/29: [new] support ISO-8859-6. (ONIG_ENCODING_ISO_8859_6)
1012 2004/01/28: [new] support KOI8-R. (ONIG_ENCODING_KOI8_R)
1013 2004/01/28: [new] support KOI8. (ONIG_ENCODING_KOI8)
1014 2004/01/27: [dist] rename enc/isotable.c to enc/mktable.c.
1015 2004/01/27: [new] support ISO-8859-4. (ONIG_ENCODING_ISO_8859_4)
1016 2004/01/26: [new] support ISO-8859-3. (ONIG_ENCODING_ISO_8859_3)
1017 2004/01/26: [bug] EncISO_8859_{1,15}_CtypeTable[256] was wrong.
1018 (0x80 - 0xff is not ASCII)
1019 2004/01/23: [new] support ISO-8859-2. (ONIG_ENCODING_ISO_8859_2)
1020 2004/01/23: [dist] add enc/isotable.c.
1021 2004/01/22: [new] support EUC-TW. (ONIG_ENCODING_EUC_TW)
1022 2004/01/22: [bug] definition of GET_ALIGNMENT_PAD_SIZE() and
1023 ALIGNMENT_RIGHT() was wrong.
1024 type casting should be unsigned int, not int.
1025 2004/01/22: [impl] add defined(__x86_64) || defined(__x86_64__)
1026 to unaligned word access condition. (AMD64 ?)
1027 2004/01/21: [dist] rename enc/eucjp.c to enc/euc_jp.c.
1028 2004/01/21: [new] support EUC-KR. (ONIG_ENCODING_EUC_KR)
1029 2004/01/20: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
1030 2004/01/20: [dist] change Makefile.in.
1031 2004/01/20: [spec] add \p{...}, \P{...} in char class.
1032 2004/01/20: [new] character property operators \p{...}, \P{...}.
1033 supported in ONIG_SYNTAX_JAVA and ONIG_SYNTAX_PERL.
1034 2004/01/19: [spec] allow /a{,n}/ as /a{0,n}/. (but don't allow /a{,}/)
1035 2004/01/19: [dist] rename onigcomp200.h to onigcmpt200.h.
1036 2004/01/19: [dist] update re.c.168.patch. svn add re.c.181.patch.
1037 2004/01/16: [dist] update sample/*.c for new API.
1038 2004/01/16: [dist] add onigcomp200.h. (for old API compatibility)
1039 2004/01/16: [dist] update documents API, RE and RE.ja.
1040 2004/01/16: [spec] change prefix REG_ -> ONIG_, regex_ onig_,
1041 ENC_ -> ONIGENC, enc_ -> onigenc_.
1042 2004/01/15: [impl] rename ENC_IS_MBC_E_WORD() to ENC_IS_MBC_WORD().
1043 rename ENC_CTYPE_SUPPORT_LEVEL_SB_ONLY to
1044 ENC_CTYPE_SUPPORT_LEVEL_SB.
1045 2004/01/14: [impl] rename UNALIGNED_WORD_ACCESS to
1046 PLATFORM_UNALIGNED_WORD_ACCESS.
1047 2004/01/14: [impl] change MATCH_STACK_LIMIT_SIZE value from 200000 to 500000.
1048 2004/01/13: [impl] remove ENC_CODE_TO_MBC_FIRST(enc,code) in regenc.h.
1049 remove code_to_mbc_first member in RegCharEncodingType.
1050 2004/01/13: [impl] remove head byte bitset information in cclass->mbuf.
1051 2003/12/26: [impl] change macro name ismb_xxxx() in enc/*.c for
1054 2003/12/24: Version 2.0.0
1056 2003/12/24: [spec] ignore case option is effective to numbered char.
1058 2003/12/24: [test] success in ruby 1.8.1 (2003-12-24) [i686-linux].
1059 2003/12/24: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
1060 2003/12/24: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
1061 2003/12/24: [test] success in regex.c compile test on ruby-m17n.
1062 (but can't make miniruby because re.c patch fail.)
1063 2003/12/24: [bug] (thanks H.Miyamoto) /[\W]/ was wrong in 1.9.5.
1064 2003/12/22: [spec] implement fold match on UTF-8 encoding.
1065 2003/12/19: [impl] add ctype_support_level and ctype_add_codes() member to
1066 RegCharEncoding type.
1067 2003/12/19: [impl] add add_ctype_to_cc() in regparse.c.
1068 2003/12/19: [impl] add enc_is_code_ctype() in REG_RUBY_M17N case.
1069 2003/12/19: [impl] change ENC_CODE_TO_MBC() interface.
1070 2003/12/18: [new] implement fold match. (variable number of char
1071 match in ignore case mode.)
1072 ex. German alphabet ess-tsett(U+00DF) match "SS" and "ss".
1073 2003/12/17: [impl] refactoring of encoding system.
1074 2003/12/17: [impl] add enc_init() in regenc.c.
1075 2003/12/17: [new] support Big5. (REG_ENCODING_BIG5)
1076 2003/12/16: [impl] change CodePoint from unsigned int to unsigned long.
1077 2003/12/16: [new] support ISO 8859-15. (REG_ENCODING_ISO_8859_15)
1078 2003/12/16: [impl] change P_() macro definition condition for Win32.
1079 2003/12/16: [dist] add sample/encode.c
1080 2003/12/16: [new] support ISO 8859-1. (REG_ENCODING_ISO_8859_1)
1081 2003/12/15: [impl] rename IS_ENC_XXXX to ENC_IS_XXXX.
1082 2003/12/15: [impl] rename RegDefaultCharEncoding to EncDefaultCharEncoding.
1083 2003/12/15: [impl] divide encoding files. (enc/ascii.c, enc/utf8.c etc...)
1084 2003/12/15: [bug] unexpected infinite loop in regex_snprintf_with_pattern().
1085 change local var. type char* to UChar*.
1086 2003/12/15: [impl] remove REG_MBLEN_TABLE[].
1087 2003/12/15: [spec] rename function prefix regex_get_prev_char_head(),
1088 regex_get_left_adjust_char_head() and
1089 regex_get_right_adjust_char_head() to enc_xxxxxx().
1090 2003/12/15: [impl] rename function prefixes in regenc.h from regex_ to enc_.
1091 2003/12/12: [impl] remove USE_SBMB_CLASS.
1092 2003/12/12: [impl] rename mb -> mbc, mblen() to enc_len().
1093 2003/12/12: [impl] rename WCINT to CodePoint.
1094 2003/12/11: [impl] delete IS_XXXX() ctype macros from regint.h.
1095 2003/12/11: [impl] add enc->wc_is_ctype() and RegAsciiCtypeTable[256].
1096 2003/12/11: [impl] remove RegAsciiCaseAmbigTable.
1097 2003/12/10: [impl] use ENC_TO_LOWER() for ignore case comparison.
1098 2003/12/08: [impl] *** re-defined RegCharEncoding in oniguruma.h. ***
1099 2003/12/08: [impl] add USE_POSIX_REGION_OPTION to regint.h.
1100 2003/12/08: [impl] add IS_ENC_WORD() to regenc.h.
1101 2003/12/05: [impl] rename IS_CODE_XXXX() to IS_ENC_XXXX().
1102 2003/12/05: [impl] delete IS_CODE_WORD() from regenc.h.
1103 2003/12/04: [spec] rename REG_SYN_OP_BACK_REF to REG_SYN_OP_DECIMAL_BACKREF.
1104 2003/12/04: [spec] add (REG_SYN_OP_ESC_W_WORD | REG_SYN_OP_ESC_B_WORD_BOUND |
1105 REG_SYN_OP_ESC_LTGT_WORD_BEGIN_END | REG_SYN_OP_BACK_REF)
1107 2003/12/04: [spec] remove REG_ENCODING_DEFAULT and REGCODE_DEFAULT.
1108 2003/12/04: [spec] move declarations of regex_get_default_encoding() and
1109 regex_set_default_encoding() from oniguruma.h to regenc.h.
1110 2003/12/03: [new] add regex_get_default_encoding() and
1111 regex_set_default_encoding().
1112 2003/12/03: [spec] REG_ENCODING_DEFAULT meaning is changed.
1113 (current default value, not initial default value.)
1114 2003/12/03: [spec] REGCODE_XXX is obsoleted. use REG_ENCODING_XXX.
1115 2003/12/02: [memo] alias svnst='svn status | grep -v "^\?"'
1116 2003/12/02: [spec] move regex_set_default_trans_table() declaration
1117 from oniguruma.h to regenc.h. (obsoleted API)
1118 2003/12/02: [impl] move variables RegDefaultCharEncoding, DefaultTransTable and
1119 AmbiguityTable to regenc.c.
1120 2003/12/01: [impl] add regex_continuous_sbmb() to regenc.c.
1121 2003/12/01: [dist] add regenc.h and regenc.c.
1122 2003/11/18: [dist] change testconv.rb.
1123 2003/11/18: [bug] (thanks Masaru Tsuda)
1124 memory leak in parse_subexp().
1125 2003/11/18: [bug] (thanks Masaru Tsuda)
1126 memory leak in names_clear() and parse_char_class().
1127 2003/11/17: [bug] memory leak in parse_char_class().
1128 2003/11/17: [bug] (thanks Masaru Tsuda)
1129 OptExactInfo length should not over OPT_EXACT_MAXLEN.
1130 (concat_opt_exact_info_str())
1132 2003/11/12: Version 1.9.5
1134 2003/11/12: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
1135 2003/11/12: [test] success in ruby 1.8.1 (2003-11-11) [i686-linux].
1136 2003/11/12: [spec] add definition of REG_INEFFECTIVE_META_CHAR.
1137 2003/11/11: [dist] add a sample program sample/sql.c.
1138 2003/11/11: [new] add variable meta character.
1139 regex_set_meta_char()
1140 2003/11/11: [spec] add syntax op. REG_SYN_OP_VARIABLE_META_CHARS.
1141 2003/11/11: [spec] rename REG_SYN_OP_ESC_CAPITAL_Q_QUOTE to
1142 REG_SYN_OP2_ESC_CAPITAL_Q_QUOTE,
1143 REG_SYN_OP_QMARK_GROUP_EFFECT to
1144 REG_SYN_OP2_QMARK_GROUP_EFFECT.
1145 2003/11/06: [impl] define THREAD_PASS as rb_thread_schedule() in Ruby mode.
1146 2003/11/05: [spec] add syntax behavior REG_SYN_WARN_REDUNDANT_NESTED_REPEAT.
1147 2003/11/05: [spec] rename REG_SYN_WARN_FOR_CC_OP_NOT_ESCAPED to
1148 REG_SYN_WARN_CC_OP_NOT_ESCAPED.
1149 2003/11/04: [new] add regex_set_warn_func() and regex_set_verb_warn_func().
1150 2003/10/30: [new] add regex_name_to_backref_number().
1151 (for multiplex definition name, see sample/names.c)
1152 2003/10/30: [spec] add name_end and reg argument to callback function of
1153 regex_foreach_name(). (see sample/names.c)
1154 2003/10/29: [spec] add syntax behavior REG_SYN_ALLOW_MULTIPLEX_DEFINITION_NAME.
1155 add error code REGERR_MULTIPLEX_DEFINED_NAME.
1156 2003/10/14: [dist] modify sample/simple.c.
1157 2003/10/03: [bug] (thanks nobu) [ruby-dev:21472]
1158 sub-anchor of optimization map info was wrong
1159 in concat_left_node_opt_info().
1160 ex. /^(x?y)/ = "xy" fail.
1162 2003/09/17: Version 1.9.4
1164 2003/09/17: [spec] change specification of char-class range in ignore case mode
1165 follows with Ruby 1.8(2003-09-17).
1166 ex. /[H-c]/i ==> (H-Z, 0x5b-0x60, a-c)/i
1167 ==> H-Z, h-z, 0x5b-0x60, a-c, A-C
1168 2003/09/16: [bug] (thanks Guy Decoux)
1169 remove env->option == option check in parse_effect().
1170 change env->option for dynamic option in parse_exp().
1171 (ex. bad match /(?i)(?-i)a/ =~ "A")
1172 2003/09/12: [spec] rename REG_SYN_ALLOW_RANGE_OP_IN_CC to
1173 REG_SYN_ALLOW_DOUBLE_RANGE_OP_IN_CC,
1174 REG_SYN_ESCAPE_IN_CC to REG_SYN_BACKSLASH_ESCAPE_IN_CC.
1175 2003/09/11: [bug] change to IS_SYNTAX_OP2 at REG_SYN_OP2_ESC_GNU_BUF_ANCHOR.
1176 2003/09/09: [spec] rename REG_SYN_OP2_ESC_M_BAR_META to
1177 REG_SYN_OP2_ESC_CAPITAL_M_BAR_META,
1178 REG_SYN_OP_ESC_Q_QUOTE to REG_SYN_OP_ESC_CAPITAL_Q_QUOTE,
1179 REG_SYN_OP_ESC_SUBEXP to REG_SYN_OP_ESC_LPAREN_SUBEXP,
1180 REG_SYN_OP_ESC_BUF_ANCHOR to REG_SYN_OP_ESC_AZ_BUF_ANCHOR,
1181 REG_SYN_OP_ESC_GNU_BUF_ANCHOR to
1182 REG_SYN_OP2_ESC_GNU_BUF_ANCHOR,
1183 REG_SYN_OP_ESC_CONTROL_CHAR to REG_SYN_OP_ESC_CONTROL_CHARS,
1184 REG_SYN_OP_ESC_WORD to REG_SYN_OP_ESC_W_WORD,
1185 REG_SYN_OP_ESC_WORD_BEGIN_END to
1186 REG_SYN_OP_ESC_LTGT_WORD_BEGIN_END,
1187 REG_SYN_OP_ESC_WORD_BOUND to REG_SYN_OP_ESC_B_WORD_BOUND,
1188 REG_SYN_OP_ESC_WHITE_SPACE to REG_SYN_OP_ESC_S_WHITE_SPACE,
1189 REG_SYN_OP_ESC_DIGIT to REG_SYN_OP_ESC_D_DIGIT,
1190 REG_SYN_OP_CC to REG_SYN_OP_BRACKET_CC,
1191 REG_SYN_OP2_CCLASS_SET to REG_SYN_OP2_CCLASS_SET_OP,
1192 REG_SYN_CONTEXT_INDEP_OPS to
1193 REG_SYN_CONTEXT_INDEP_REPEAT_OPS,
1194 REG_SYN_CONTEXT_INVALID_REPEAT_OPS to
1195 REG_SYN_CONTEXT_INVALID_REPEAT_OPS.
1196 add REG_SYN_OP_ESC_CAPITAL_G_BEGIN_ANCHOR.
1197 2003/09/08: [spec] rename REG_SYN_OP_ANYCHAR to REG_SYN_OP_DOT_ANYCHAR,
1198 REG_SYN_OP_0INF to REG_SYN_OP_ASTERISK_ZERO_INF,
1199 REG_SYN_OP_ESC_0INF to REG_SYN_OP_ESC_ASTERISK_ZERO_INF,
1200 REG_SYN_OP_1INF to REG_SYN_OP_PLUS_ONE_INF,
1201 REG_SYN_OP_ESC_1INF to REG_SYN_OP_ESC_PLUS_ONE_INF,
1202 REG_SYN_OP_0INF to REG_SYN_OP_QMARK_ZERO_ONE,
1203 REG_SYN_OP_ESC_0INF to REG_SYN_OP_ESC_QMARK_ZERO_ONE,
1204 REG_SYN_OP_INTERVAL to REG_SYN_OP_BRACE_INTERVAL,
1205 REG_SYN_OP_ESC_INTERVAL to REG_SYN_OP_ESC_BRACE_INTERVAL,
1206 REG_SYN_OP_SUBEXP to REG_SYN_OP_LPAREN_SUBEXP,
1207 REG_SYN_OP_ALT to REG_SYN_OP_VBAR_ALT,
1208 REG_SYN_OP_ESC_ALT to REG_SYN_OP_ESC_VBAR_ALT,
1209 REG_SYN_OP_NON_GREEDY to REG_SYN_OP_QMARK_NON_GREEDY,
1210 REG_SYN_OP_SUBEXP_EFFECT to REG_SYN_OP_QMARK_GROUP_EFFECT,
1211 REG_SYN_OP2_POSSESSIVE_{REPEAT,INTERVAL} to
1212 REG_SYN_OP2_PLUS_POSSESSIVE_{REPEAT,INTERVAL},
1213 REG_SYN_OP2_SUBEXP_CALL to REG_SYN_OP2_ESC_G_SUBEXP_CALL,
1214 REG_SYN_OP2_NAMED_GROUP to REG_SYN_OP2_QMARK_LT_NAMED_GROUP
1215 and REG_SYN_OP2_ESC_K_NAMED_BACKREF.
1216 2003/09/02: [tune] call reduce_nested_qualifier() after disabling capture for
1217 no-name group in noname_disable_map().
1218 ex. /(a+)*(?<name>...)/
1219 2003/09/02: [impl] include <stdio.h> is forgotten to erase in regcomp.c.
1220 2003/09/01: [dist] update doc/RE and doc/RE.ja.
1221 2003/08/26: [bug] (thanks Guy Decoux)
1222 should not double free node at the case TK_CC_CC_OPEN
1223 in parse_char_class().
1225 2003/08/19: Version 1.9.3
1227 2003/08/19: [inst] change re.c.180.patch.
1228 2003/08/19: [impl] rename 'list of captures' to 'capture history'.
1229 2003/08/19: [dist] add doc/RE.ja. (Japanese)
1230 2003/08/19: [new] add regex_copy_syntax().
1231 2003/08/19: [spec] rename REG_SYN_OP2_ATMARK_LIST_OF_CAPTURES to
1232 REG_SYN_OP2_ATMARK_CAPTURE_HISTORY.
1233 2003/08/18: [spec] (thanks nobu)
1234 don't use IMPORT in oniguruma.h and onigposix.h.
1235 2003/08/18: [impl] (thanks nobu) change error output to stdout in testconv.rb.
1236 2003/08/18: [inst] (thanks nobu) lacked $(srcdir) in Makefile.in.
1237 2003/08/18: [bug] REG_MBLEN_TABLE[SJIS][0xFD-0xFF] should be 1.
1238 2003/08/18: [bug] (thanks nobu) mbctab_sjis[0x80] should be 0.
1239 2003/08/18: [bug] (thanks nobu)
1240 single/multi-byte decision was wrong in parse_char_class().
1241 add regex_wc2mblen().
1242 should not set fetched to 1 in TK_RAW_BYTE case.
1243 2003/08/18: [bug] should update BitSet in the case inc_n >= 0
1244 in add_wc_range_to_buf().
1245 2003/08/13: [bug] change re.c.180.patch for fix rb_reg_to_s() in re.c.
1246 2003/08/11: [bug] should clear region->list in regex_region_resize().
1248 2003/08/08: Version 1.9.2
1250 2003/08/08: [test] success in ruby 1.8.0 (2003-08-08) on Windows 2000
1251 VC++ 6.0 and Cygwin.
1252 2003/08/08: [impl] don't define macro vsnprintf for WIN32 platform,
1253 because definition is added in win32\win32.h.
1254 2003/08/08: [test] success in ruby 1.8.0 and ruby 1.6.8(2003-08-03) on Linux.
1255 2003/08/08: [dist] change re.c.180.patch and re.c.168.patch.
1256 2003/08/08: [new] (thanks akr)
1257 implemented list of captures. (?@...), (?@<name>...)
1258 2003/08/07: [dist] add sample/listcap.c.
1259 2003/08/06: [bug] OP_MEMORY_END_PUSH_REC case in match_at().
1260 renewal of mem_start_stk[] should be after
1261 STACK_PUSH_MEM_END() call.
1262 2003/07/29: [new] add regex_get_encoding(), regex_get_options() and
1264 2003/07/25: [spec] (thanks akr)
1265 change group(...) to shy-group(?:...) if named group is
1266 used in the pattern.
1267 add REG_SYN_CAPTURE_ONLY_NAMED_GROUP.
1268 2003/07/24: [spec] rename REG_OPTION_CAPTURE_ONLY_NAMED_GROUP to
1269 REG_OPTION_DONT_CAPTURE_GROUP.
1270 add REG_OPTION_CAPTURE_GROUP.
1271 2003/07/17: [spec] rename REG_SYN_OP2_NAMED_SUBEXP to REG_SYN_OP2_NAMED_GROUP.
1272 2003/07/17: [spec] add REGERR_EMPTY_GROUP_NAME.
1273 2003/07/17: [spec] rename REGERR_INVALID_SUBEXP_NAME
1274 to REGERR_INVALID_CHAR_IN_GROUP_NAME.
1275 2003/07/17: [spec] restrict usable chars of group name to alphabet, digit,
1276 '_' or multibyte-char in fetch_name(). [ruby-dev:20706]
1277 2003/07/16: [impl] minor change of sample/names.c.
1278 2003/07/14: [impl] rename USE_NAMED_SUBEXP to USE_NAMED_GROUP.
1279 2003/07/14: [bug] add fetch_name() for USE_NAMED_SUBEXP off case.
1280 2003/07/14: [API] add regex_number_of_names().
1281 2003/07/08: [impl] change error message for undefined group number call.
1282 'undefined group reference: /(a)\g<2>/'
1283 --> 'undefined group <2> reference: /(a)\g<2>/'
1284 2003/07/08: [dist] modify doc/RE.
1285 2003/07/07: [impl] OP_SET_OPTION is not needed in compiled code.
1286 add IS_DYNAMIC_OPTION() to regint.h.
1287 2003/07/07: [spec] called group should not ignore outside option (?i:...).
1288 ex. /(?i:(?<n>(a)\2)){0}\g<n>/.match("aA")
1289 add opcode OP_BACKREFN_IC and OP_BACKREF_MULTI_IC.
1290 set option status to effect memory in optimize_node_left().
1291 2003/07/07: [impl] add opcode OP_ANYCHAR_ML, OP_ANYCHAR_ML_STAR and
1292 OP_ANYCHAR_ML_START_PEEK_NEXT.
1293 2003/07/07: [bug] (thanks nobu) REG_MBLEN_TABLE[SJIS][0x80] should be 1.
1294 2003/07/07: [spec] rename REG_SYN_OP_QUOTE to REG_SYN_OP_ESC_Q_QUOTE.
1296 2003/07/04: Version 1.9.1
1298 2003/07/04: [new] add REG_OPTION_CAPTURE_ONLY_NAMED_GROUP. (thanks .NET)
1299 2003/07/04: [spec] check mbuf member in the case of
1300 REG_SYN_NOT_NEWLINE_IN_NEGATIVE_CC in parse_char_class().
1301 2003/07/04: [spec] typo REG_SYN_WARN_FOR_CC_OP_NOT_ESCAPEED.
1302 should be REG_SYN_WARN_FOR_CC_OP_NOT_ESCAPED.
1303 2003/07/04: [bug] conflict values on REG_SYN_WARN_FOR_CC_OP_NOT_ESCAPEED and
1304 REG_SYN_NOT_NEWLINE_IN_NEGATIVE_CC. (thanks nobu)
1305 2003/07/03: [spec] add REG_SYN_OP_ESC_CONTROL_CHAR flag.
1306 2003/07/03: [spec] remove REG_SYN_OP_ESC_OCTAL3 and REG_SYN_OP_ESC_X_HEX2
1307 flag from RegSyntaxGnuRegex.
1308 2003/07/03: [spec] remove REG_SYN_OP_NON_GREEDY flag from RegSyntaxGnuRegex.
1309 2003/07/02: [dist] fix doc/RE.
1310 2003/07/01: [impl] add config flag USE_VARIABLE_SYNTAX.
1311 (turn off variable syntax on Ruby)
1312 2003/07/01: [spec] add syntax behavior REG_SYN_DIFFERENT_LEN_ALT_LOOK_BEHIND.
1313 2003/06/30: [spec] allow different length top-level alternatives
1314 in look-behind. ex. (?<=abc|abcd), (?<!a|bc)
1315 2003/06/26: [spec] add option REG_OPTION_NEGATE_SINGLELINE.
1316 2003/06/26: [spec] should default on REG_OPTION_SINGLELINE
1317 for REG_SYNTAX_PERL and REG_SYNTAX_JAVA.
1318 2003/06/26: [impl] add options member to RegStntaxType.
1319 2003/06/26: [spec] don't change the meaning of '\Z' for REG_OPTION_SINGLELINE.
1320 2003/06/25: [dist] don't use option REG_NEWLINE for sample/posix.c.
1321 2003/06/25: [dist] modify testconv.rb.
1322 should match and convert double quoted string data.
1323 ex. x(/\ca/, "\001", 0, 1)
1324 2003/06/25: [impl] add REG_SYN_OP2_ESC_CAPITAL_C_BAR_CONTROL and
1325 REG_SYN_OP2_ESC_M_BAR_META.
1326 2003/06/25: [impl] add REG_SYN_OP_ESC_OCTAL3 and REG_SYN_OP_ESC_X_HEX2.
1327 2003/06/24: [impl] add REG_SYN_OP2_ESC_V_VTAB. (\v is VTAB)
1328 2003/06/24: [bug] should invert REG_OPTION_SINGLELINE flag
1329 in REG_SYN_OP2_OPTION_PERL.
1330 2003/06/24: [impl] add REG_SYN_OP2_OPTION_PERL and REG_SYN_OP2_OPTION_RUBY.
1331 meaning of (?m) and (?s) are depend on syntax.
1333 2003/06/20: Version 1.9.0
1335 2003/06/20: [spec] \Q...\E is not effective on REG_SYNTAX_RUBY. (thanks akr)
1336 2003/06/19: [inst] rename regex.h to oniguruma.h.
1337 2003/06/18: [impl] change REG_EXTERN setting condition. (__CYGWIN__)
1338 2003/06/18: [bug] return wrong result UTF-8 case in regex_mb2wc().
1339 2003/06/18: [impl] add REG_SYN_OP2_POSSESSIVE_INTERVAL. a{n,m}+
1340 2003/06/18: [new] add REG_SYNTAX_JAVA.
1341 2003/06/18: [spec] add REG_SYN_OP_QUOTE.
1342 2003/06/18: [spec] add op2 member to RegSyntaxType.
1343 rename some REG_SYN_OP_XXX to REG_SYN_OP2.
1344 2003/06/16: [new] Perl-like quotation operator \Q, \E.
1345 2003/06/16: [spec] should not control ignore case mode by escaped char.
1346 ex. /\J/i =~ "j", /[\J]/i =~ "j" (same as Perl)
1347 2003/06/13: [bug] modify onigposix.h.
1348 2003/06/13: [bug] should use -DIMPORT for link with DLL in win32/Makefile.
1349 2003/06/13: [dist] add sample/names.c
1350 2003/06/12: [bug] range should be from - 1 in not_wc_range_buf().
1351 2003/06/12: [spec] should warn for '-' before '&&' operator in char-class.
1352 2003/06/12: [new] add REG_SYNTAX_PERL.
1353 2003/06/12: [spec] add syntax behavior REG_SYN_WARN_FOR_CC_OP_NOT_ESCAPEED.
1354 2003/06/12: [spec] invalid POSIX bracket should be error. ex. [[:upper :]]
1355 2003/06/11: [new] char-class in char-class (as Java(TM)).
1356 2003/06/11: [spec] change AND operator in char-class from &&[..] to &&.
1357 2003/06/04: [spec] {n,m}+ should not be possessive operator.
1358 ex. a{3}+ should be (?:a{3})+
1359 2003/06/03: [bug] should compare strings with min-length in is_not_included().
1360 2003/06/03: [impl] automatic possessivate optimization. a*b ==> (?>a*)b
1361 (thanks Jeffrey E. F. Friedl)
1362 2003/06/02: [impl] remove multibyte-BitSet for OP_CCLASS_MB/OP_CCLASS_MB_NOT.
1363 2003/05/30: [new] char class intersection operator &&[...] like Java(TM).
1365 2003/05/30: [bug] should use bbuf_free() for CClassNode in regex_node_free().
1366 2003/05/29: [bug] wrong usage of syntax REG_SYN_ALLOW_EMPTY_RANGE_IN_CC.
1367 /[d-a]/ should be error.
1368 2003/05/28: [impl] optimize stop-backtrack compiled code.
1369 (/(?>a*)/, /(?>\w+)/ etc...)
1371 2003/05/28: [new] possessive repeat operator. (?+, *+, ++, {n,m}+)
1372 2003/05/27: [spec] '-' at beginning of char-class should be warn only if
1373 it is start of range. (ex. /[--a]/)
1374 2003/05/27: [spec] should not warn for right bracket at beginning of pattern.
1376 2003/05/27: [spec] change CCEND_ESC_WARN() from VERB_WARNING() to WARNING().
1377 2003/05/27: [spec] /[]aaa/ should be empty char-class error.
1378 /[]aaa]/ should be warn for 'without backslash'.
1379 (add char_exist_check() in regparse.c)
1380 2003/05/26: [bug] OP_REPEAT in recursive subexp call.
1381 ex. /(?<n>(a|b\g<n>c){3,5})/.match("baaaaca") => "baaaaca"
1382 was wrong result. (should be "aaaa")
1383 2003/05/26: [impl] add num_call member to regex_t.
1384 2003/05/26: [impl] add repeat_range member to regex_t.
1385 (for delete upper,lower members from StackType.u.repeat)
1386 2003/05/26: [bug] change print_names() to external regex_print_names().
1387 2003/05/26: [tune] change OP_NULL_CHECK_END process in match_at().
1388 2003/05/26: [spec] change CCEND_ESC_WARN() from WARNING() to VERB_WARNING().
1389 2003/05/26: [spec] remove POSIXLINE option. (?p:...)
1390 (be made the same as Ruby.)
1391 2003/05/22: [spec] use OP_NULL_CHECK_XXX only if repeat is infinite.
1392 prev. /(?:()|()){0,10}\1\2/ =~ "" ==> FAIL
1393 now /(?:()|()){0,10}\1\2/ =~ "" ==> MATCH
1395 2003/05/22: [impl] change target_empty setting condition in setup_tree().
1396 2003/05/19: [impl] avoid zero length repeat optimization. (thanks matz)
1397 /()*/ ==> /()?/, /()+/ ==> /()/ etc...
1398 2003/05/19: [impl] minor changes for gcc -Wall. (-DREG_DEBUG_STATISTICS case)
1399 2003/05/19: [spec] rename regex_foreach_names() to regex_foreach_name().
1400 2003/05/16: [new] add --with-statistics option to configure.
1401 2003/05/16: [bug] move RegOpInfo[] definition to regint.h.
1402 2003/05/16: [new] add regex_version().
1404 2003/05/14: Version 1.8.6
1406 2003/05/14: [bug] use _vsnprintf() on Win32.
1407 2003/05/14: [spec] define USE_NEWLINE_AT_END_OF_STRING_HAS_EMPTY_LINE.
1408 (/\n$/ =~ "\n", /\n\Z/ =~ "\n") [ruby-dev:20125]
1409 2003/05/14: [impl] minor changes for gcc -Wall.
1410 2003/05/14: [impl] add string.h check in AC_CHECK_HEADERS().
1411 2003/05/13: [impl] minor changes for gcc -Wall.
1412 2003/05/13: [impl] add regex_snprintf_with_pattern().
1413 2003/05/13: [spec] add warning for char class meta character without escape
1414 in Ruby mode ('[', '-', ']').
1415 2003/05/13: [impl] define WARNING() and VERB_WARNING() in regint.h.
1416 2003/05/13: [bug] correct is_code_ascii() for /[[:ascii:]]/.
1417 2003/05/12: [dist] add regular expression document (doc/RE).
1418 2003/05/12: [spec] specification of $(END_LINE) was made the same as Ruby 1.8.
1419 [ruby-dev:20130] (thanks matz)
1420 2003/05/12: [memo] shifted to Subversion(version 0.21.0) from CVS.
1422 2003/03/19: Version 1.8.5
1424 2003/03/19: [impl] change REG_EXTERN definition. (thanks nobu)
1425 2003/03/19: [impl] abbreviation for long error_par in regex_error_code_to_str().
1426 2003/03/18: [dist] change re.c.XXX.patch for GNU regex API changes.
1427 2003/03/18: [spec] change API regex_new(), regex_recompile() and
1428 regex_error_code_to_str().
1429 change API re_compile_pattern() and re_recompile_pattern().
1430 2003/03/18: [spec] replace REGERR_END_PATTERN_AT_GROUP_{COMMENT|OPTION} to
1431 REGERR_END_PATTERN_IN_GROUP.
1432 2003/03/17: [impl] should free err_arg.
1433 2003/03/17: [bug] mistake(high -> to) in add_wc_range_to_buf().
1434 2003/03/17: [spec] add err_arg argument to regex_new() and regex_recompile().
1435 for detail error message. (thanks akr)
1437 2003/03/12: Version 1.8.4
1439 2003/03/12: [tune] use cached value of effect node in get_min_match_length().
1440 2003/03/12: [bug] escaped alphabet should be TK_RAW_BYTE
1441 in fetch_token() and fetch_token_in_cc().
1442 2003/03/12: [spec] change named backref and subexp call format.
1443 backref: \k<name>, call: \g<name> (thanks akr)
1444 2003/03/11: [inst] add regparse.[ch] in win32/Makefile.
1445 2003/03/11: [bug] if UNALIGNED_WORD_ACCESS isn't setted
1446 then compile error in unset_addr_list_fix(). (thanks knu)
1447 2003/03/10: [impl] divide regcomp.c to regcomp.c, regparse.c and regparse.h.
1448 2003/03/10: [bug] should handle multi-byte code name in fetch_name().
1449 2003/03/10: [spec] remove REGERR_TABLE_FOR_IGNORE_CASE_IS_NOT_SETTED.
1450 2003/03/10: [spec] support POSIX API option REG_NOSUB.
1451 add comp_options member to POSIX API regex_t.
1453 2003/03/10: Version 1.8.3
1455 2003/03/10: [bug] can not compile with Ruby 1.6.8.
1456 (inconsistent st.h with 1.6 and 1.8)
1457 use hash table on Ruby 1.8 only.
1458 2003/03/10: [spec] forbid to use '\' in group name.
1459 2003/03/08: [impl] remove check_backref_number().
1460 2003/03/08: [bug] called group in 0-repeat should not be eliminated from
1461 compile code. ex. /(?*n)(?<n>){0}/ (thanks akr)
1462 add is_refered member to QualifierNode.
1463 2003/03/07: [impl] use hash table(st.[ch]) for implementation of name table.
1464 (enable on Ruby in default)
1465 2003/03/07: [new] add regex_foreach_names().
1466 2003/03/06: [impl] add member reg->stack_pop_level.
1467 2003/03/06: [impl] add operator OP_MEMORY_START and member reg->backtrack_mem.
1468 2003/03/06: [bug] if REG_OPTION_FIND_LONGEST or REG_OPTION_NOT_EMPTY,
1469 should handle backtrack of MEM_END.
1470 add OP_MEMORY_END_PUSH and OP_MEMORY_END_PUSH_REC.
1471 2003/03/06: [impl] rename OP_MEMORY_END_PUSH to OP_MEMORY_END_MARK.
1472 2003/03/06: [spec] change error messages.
1473 2003/03/06: [tune] add tiny_pop check in STACK_POP.
1475 2003/03/05: Version 1.8.2
1477 2003/03/05: [impl] use cache info in EFFECT_MEMORY case
1478 in optimize_node_info().
1479 2003/03/05: [impl] add EFFECT_MEMORY node reference count check
1480 in optimize_node_left().
1481 2003/03/05: [impl] add min-len, max-len, char-len cache in EffectNode.
1482 2003/03/05: [spec] allow to call in look behind. ex. /(?<=(?*a))/
1483 2003/03/05: [bug] forgotten N_ANCHOR case in check_backref_number(),
1484 subexp_inf_recursive_check_trav() etc...
1485 2003/03/05: [impl] rename USE_ONIGURUMA_EXTENSION to USE_SBMB_CLASS.
1486 2003/03/04: [impl] add CALL-node info in optimize_node_left().
1487 2003/03/04: [spec] prohibit left recursion of subexp call. ex. (?<n>|(?*n)a)
1488 add subexp_inf_recursive_check_trav().
1489 2003/03/04: [spec] rename REG_SYN_STRICT_CHECK_BACKREF_NUMBER
1490 to REG_SYN_STRICT_CHECK_BACKREF
1491 2003/03/03: [bug] /(?<n>a(?*n)|)/ isn't infinite recursion.
1492 fix N_LIST case in subexp_recursive_check(). (thanks akr)
1493 2003/03/03: [bug] /(?<n>|(?*n))+/ segmentation fault.
1494 should re-allocate in unset_addr_list_add(). (thanks akr)
1496 2003/03/01: Version 1.8.1
1498 2003/03/01: [bug] change STACK_GET_MEM_START() and STACK_PUSH_MEM_END().
1499 2003/03/01: [new] add reg_name_to_group_numbers() to POSIX API.
1500 2003/03/01: [impl] use OP_MEMORY_END_PUSH in callable subexp compiled code
1501 only if subexp is recursive.
1502 2003/03/01: [spec] rename regex_name_to_backrefs() to
1503 regex_name_to_group_numbers().
1504 2003/02/28: [impl] use function stack_double() instead of macro.
1505 2003/02/28: [new] subexp call. (?*name) (thanks akr)
1506 2003/02/28: [spec] add match stack limit check. (MATCH_STACK_LIMIT_SIZE)
1507 2003/02/28: [impl] check recursive subexp call.
1508 2003/02/28: [impl] add opcode OP_MEMORY_END_PUSH for callable subexp.
1509 2003/02/28: [impl] add opcode OP_CALL, OP_RETURN.
1510 add stack type STK_CALL_FRAME, STK_RETURN, STK_MEM_END.
1511 2003/02/26: [spec] add new syntax behavior REG_SYN_STRICT_CHECK_BACKREF_NUMBER.
1512 if it is setted, then error /(\1)/, /\1(..)/ etc...
1513 2003/02/26: [spec] if backref number is greater than max group number,
1514 then return compile error. (REGERR_INVALID_BACKREF_NUMBER)
1515 2003/02/26: [tune] bad implemented N_ALT case in get_min_match_length().
1516 2003/02/26: [dist] auto update testc.c and win32/testc.c in dist target.
1517 2003/02/26: [impl] add -win option to testconv.rb.
1518 2003/02/25: [spec] allow to assign same name to different group.
1519 add OP_BACKREF_MULTI.
1520 2003/02/24: [impl] reduce redundant repeat of empty target.
1521 ex. /()*/ ==> /()?/, /()+/ ==> /()/, /(?:)+/ ==> //
1522 2003/02/24: [impl] change condition in regex_is_allow_reverse_match().
1523 2003/02/24: [impl] convert i(/../, ...) functions in testconv.rb.
1524 2003/02/24: [impl] change name table struct.
1526 2003/02/22: Version 1.8.0
1528 2003/02/22: [new] named subexp, named back reference. (thanks akr)
1529 define: (?<name>...), back-ref: \g<name>
1530 2003/02/22: [impl] use str_node_can_be_split().
1531 2003/02/21: [dist] add sample/posix.c
1532 2003/02/21: [spec] rename some error code symbols.
1533 2003/02/21: [spec] max number of multibyte ranges(255) is small.
1534 255 --> 1000. (thanks MoonWolf)
1535 2003/02/20: [new] supported Basic Regular Expression(BRE) in POSIX API.
1536 (REG_EXTENDED option: Extended RE)
1537 2003/02/20: [new] variable syntax.
1539 2003/02/12: Version 1.7.2
1541 2003/02/12: [bug] mismatch /\?a/i.match('?A').
1542 check raw value in scan_make_node() and scan_backslash().
1544 2003/02/12: [impl] rename 'max_mem' to 'num_mem' in regex_t.
1545 2003/02/12: [impl] rename 'code' to 'enc' in regex_t.
1546 2003/02/12: [spec] remove transtable argument in regex_new and regex_recompile.
1547 remove transtable member in regex_t.
1548 2003/02/10: [inst] change backup file suffix name from '.orig' to '.ruby_orig'.
1550 2003/02/10: [spec] number check in scan_char_class() ignore-case mode.
1552 2003/02/10: [impl] don't use OP_MEMORY_END_PUSH (and STK_MEM_END).
1553 2003/02/10: [impl] lift up head_exact value from child qualifier node to parent.
1554 2003/02/10: [tune] change stack type values.
1555 2003/02/10: [dist] add HISTORY.
1556 2003/02/08: [tune] change stack type values.
1557 2003/02/08: [tune] add STACK_BASE_CHECK().
1558 2003/02/08: [tune] add STACK_PUSH_ENSURED().
1559 2003/02/08: [dist] change contents of doc/API.
1560 2003/02/07: [inst] change backup file suffix name from '.orig' to '.ruby_orig'.
1561 2003/02/07: [spec] range in char-class should be same spec. with Ruby
1562 in ignore-case mode. (ex. /[A-c]/i == /[a-c]/i)
1564 2003/02/07: [spec] [!--] should be allowed. (thanks MoonWolf)
1565 2003/02/07: [dist] refresh re.c.180.patch for re.c (2003-02-06).
1567 2003/02/07: Version 1.7.1
1569 2003/02/07: [impl] check first byte of string in ignore-case mode.
1570 (get_head_exact_node())
1571 2003/02/07: [impl] remove redundant statements in setup_tree().
1572 2003/02/06: [new] create Win32 DLL.
1573 2003/02/06: [impl] use P_() macro for function prototype.
1574 2003/02/06: [impl] add HAVE_PROTOTYPE, HAVE_STDARG_PROTOTYPES in
1575 configure.in and config.h.in.
1576 2003/02/06: [spec] /[0-9-a]/ is allowed as usual char '-' and 'a' in Ruby.
1577 add USE_BETTER_COMPATIBILITY_FOR_ORIGINAL_REGEX in
1578 regint.h. (thanks MoonWolf)
1579 2003/02/06: [spec] rename REG_MBCTYPE_XXXX to REG_ENCODING_XXXX in onigposix.h.
1580 2003/02/05: [spec] rename MBCTYPE_XXXX to REG_MBCTYPE_XXXX in onigposix.h.
1581 2003/02/05: [spec] add POSIX API error REG_EONIG_THREAD to onigposix.h.
1582 2003/02/05: [dist] add .cvsignore file.
1584 2003/02/04: Version 1.7
1586 2003/02/04: [bug] typo miss in regex_region_copy().
1587 2003/02/04: [impl] change THREAD_PASS macro. (regint.h)
1588 2003/02/04: [dist] add API document file doc/API.
1589 2003/02/04: [tune] if sub_anchor has ANCHOR_BEGIN_LINE then
1590 set REG_OPTIMIZE_EXACT_BM in set_optimize_exact_info().
1591 2003/02/04: [spec] reimplement regex_clone() and it is obsoleted.
1592 2003/02/04: [bug] add REGERR_OVER_THREAD_PASS_LIMIT_COUNT
1593 to regerror.c regposix.c.
1594 2003/02/03: [bug] Hankaku-Kana may be second byte in Shift_JIS
1595 regex_is_allow_reverse_match().
1596 2003/02/03: [impl] add optimization type REG_OPTIMIZE_EXACT_BM_NOT_REV.
1597 remove exact_allow_reverse_match member in regex_t.
1598 2003/02/03: [impl] add exact_allow_reverse_match member in regex_t.
1599 2003/02/03: [impl] compile-search conflict in regex_search() is handled.
1600 2003/02/01: [tune] decrease regex_region_clear() calling from regex_search().
1601 2003/02/01: [tune] remove region argument from match_at().
1602 2003/01/31: [tune] don't use strlen() in regexec() and regcomp().
1603 2003/01/31: [tune] decrease regex_reduce_chain() calling in regex_search().
1604 2003/01/31: [bug] STRING_CMP() in regexec.c was wrong in ignore-case.
1605 2003/01/31: [impl] convert to lower-case char at string compile time.
1606 change SBTRANSCMP() in regexec.c.
1607 2003/01/31: [impl] rename TTRANS() to TOLOWER().
1608 2003/01/30: [bug] .c.o --> .c.obj in win32\Makefile.
1609 2003/01/30: [impl] add -DNOT_RUBY to Makefile.in.
1610 NOT_RUBY is refered in regint.h for escape double
1612 2003/01/30: [impl] when string hasn't case ambiguity, don't compile
1613 to ignore case opcode.
1614 2003/01/29: [impl] add SJIS, UTF-8 test_sb() test.
1615 2003/01/29: [dist] add INSTALL-RUBY file.
1616 2003/01/28: [test] success in Cygwin, Ruby 1.8.0 (2003-01-27).
1617 2003/01/24: [inst] add rback target to Makefile.in.
1618 2003/01/24: [impl] change SBCMP() -> IS_NEWLINE() in match_at().
1619 2003/01/23: [impl] add encoding arg to scan_xxxx_number().
1620 2003/01/23: [impl] rename WCInt to WCINT.
1621 2003/01/22: [bug] POSIX API regexec() was not thread safe.
1622 remove region member from POSIX regex_t.
1623 [new] add search time option REG_OPTION_POSIX_REGION.
1624 (region argument is treated as regmatch_t[] type)
1626 2003/01/22: [memo] start CVS entry in my box.
1628 2003/01/21: Version 1.6
1630 2003/01/21: [test] Mac OS X 10.1, Ruby 1.8.0 (2003-01-20)
1631 2003/01/20: [impl] add UTF-8 check to test.rb. (thanks UENO Katsuhiro)
1632 2003/01/18: [impl] change REGION_NOTPOS to REG_REGION_NOTPOS in regex.h.
1633 2003/01/17: [dist] add sample/simple.c.
1634 2003/01/17: [inst] add configure option --with-rubydir.
1635 2003/01/17: [bug] bad implemeted POSIX API options.
1636 default: /./ not match "\n", anchor not match "\n"
1637 REG_NEWLINE: /./ not match "\n", anchor match "\n"
1638 2003/01/16: [impl] rewrite POSIX API regexec() for speed up.
1639 2003/01/16: [impl] add region member to POSIX regex_t struct.
1640 2003/01/16: [inst] rename library file from 'libregex.a' to 'libonig.a'.
1641 2003/01/15: [dist] add testc.c to distribution file.
1642 2003/01/15: [test] success in 'make rtest/ctest/ptest' on Windows 2000.
1643 2003/01/15: [bug] change '/' to \' in win32/Makefile.
1644 2003/01/14: [test] success in Ruby make test on Windows 2000.
1645 VC++6.0, Ruby 1.6.8 (2003-01-12)
1646 2003/01/14: [inst] change Makefile.in and win32/Makefile.
1647 2003/01/11: [inst] changes for Win32 platform. (regint.h, reggnu.c, regcomp.c)
1648 2003/01/11: [dist] add win32 directory. (config.h, Makefile, testc.c)
1649 2003/01/10: [inst] add onigposix.h to install target. (Makefile.in)
1650 2003/01/10: [bug] lacked a comma in ESTRING[]. (regposerr.c)
1651 2003/01/10: [bug] local variable name was wrong. buf -> tbuf (regerror())
1652 2003/01/10: [spec] remove REG_RUBY_M17N case from onigposix.h and regposix.c.
1654 2003/01/09: Version 1.5
1656 2003/01/09: [inst] replace Ruby re.c.XXX.patch files. (166 -> 168, 172 -> 180)
1657 2003/01/09: [new] implement POSIX API. (thanks knu)
1658 (onigposix.h, regposix.c, regposerr.c)
1659 2003/01/08: [spec] remove REGERR_END_PATTERN_AFTER_BACKSLASH in regex.h.
1660 2003/01/08: [spec] region arg can be NULL in regex_search() and regex_match().
1662 2003/01/08: Version 1.4
1664 2003/01/08: [inst] add test program converter (test.rb -> testc.c).
1665 2003/01/08: [bug] move GET_WCINT() from regcomp.c to regint.h.
1666 2003/01/07: [inst] add new test script (test.rb).
1667 2002/12/30: [bug] wrong merge in multibyte mode (alt_merge_opt_exact_info()).
1668 2002/12/28: [inst] add rtest target to Makefile.in.
1669 2002/12/28: [bug] /\xfe/.match("\xfe") mismatch in multibyte mode.
1670 add "raw" flag arg to concat_opt_exact_info_str().
1671 2002/12/25: [bug] check condition was wrong in alt_merge_opt_map_info().
1672 2002/12/25: [impl] add threshold_len check in regex_search().
1673 2002/12/23: [bug] prec-read in alternative (/a|(?=z).f/.match("zf") => nil)
1674 2002/12/23: [bug] \G in alternative (/a|\Gz/.match("bza") => "z").
1675 add start member in MatchArg. (regexec.c)
1676 2002/12/21: [impl] **** rewrite all optimization process. ****
1677 2002/12/16: [impl] remove node subtype EFFECT_EMPTY.
1678 2002/12/12: [impl] reconstruct node types. (regcomp.c)
1679 2002/12/11: [impl] add regerror.c
1680 2002/12/10: [bug] [ruby-dev:19042] (thanks Nobu)
1681 anchor(\G etc...) influenced outside of "|". (/a|\Gb/)
1682 2002/11/30: [bug] [ruby-dev:18966] (thanks Nobu)
1683 char-class(\S, [^\s] etc...) optimize map-info was wrong.
1684 2002/11/29: [bug] infinite loop on NULL-pointer str search (regex_search()).
1686 2002/11/29: [bug] change static -> extern (regex_chain_reduce()).
1687 2002/11/29: [bug] change encoding to RegDefaultCharEncoding
1688 in re_recompile_pattern(). (adapt to re.c)
1689 2002/04/24: [spec] USE_ONIGURUMA_EXTENSION is disabled in default.
1690 2002/04/24: [new] add searching time option: REG_OPTION_NOTBOL/NOTEOL.
1691 add searching time option argument to regex_search() and
1692 regex_match(). (prepare for POSIX API)
1693 2002/04/20: [impl] divide regex.c file into regcomp.c, regexec.c, reggnu.c
1695 2002/04/09: [impl] move IS_MULTILINE() to outside of loop in OP_ANYCHAR_STAR.
1696 2002/04/08: [impl] don't use OP_REPEAT operator for '??'.
1697 2002/04/06: [impl] reduce redundant nested repeat operators(?,*,+,??,*?,+?).
1698 ex. (?:a*)?, (?:a??)* etc..
1699 2002/04/06: [spec] should not warn for /(?:a?)+?/.
1700 2002/04/04: [spec] should allow fixed length alternative and repeat pattern
1701 in look-behind. ex. /(?<=(a|b){3})/ (thanks Guy Decoux)
1702 2002/04/02: [spec] should warn for /(?:a+)?/ and /(?:a*)??/. (thanks akr)
1704 2002/04/01: Version 1.3
1706 2002/04/01: [dist] add COPYING.
1707 2002/03/30: [spec] warn redundant nested repeat operator
1708 in Ruby verbose mode. ex. (?:a*)?
1709 2002/03/30: [spec] nested repeat operator error check should be
1710 same with GNU regex. (thanks Guy Decoux)
1711 2002/03/30: [new] add \x{hexadecimal-wide-char}. (thanks matz)
1712 2002/03/27: [bug] MBCTYPE_XXX symbol values should be same with GNU regex.
1713 2002/03/27: [impl] add THREAD_ATOMIC to regex_clone(), regex_init(), regex_end().
1714 2002/03/25: [spec] if encoding is utf-8, allow combination of singlebyte and
1715 multibyte code range in char class.
1716 (cancelled 2002/04/01: for M17N compatibility)
1717 2002/03/25: [dist] description of the license condition is added to README.
1718 2002/03/23: [bug] should set all bits of reg->mem_stats,
1719 if REG_OPTION_FIND_LONGEST or REG_OPTION_NOT_EMPTY.
1720 2002/03/23: [new] add a new option REG_OPTION_NOT_EMPTY.
1721 2002/03/20: [spec] allow incompleted left brace as an usual char.
1722 ex. /{/, /({)/, /a{2,3/ etc...
1723 2002/03/20: [impl] serialize integer in bytecode.
1724 (switch by UNALIGNED_WORD_ACCESS in regex.c)
1725 2002/03/20: [impl] change re_mbcinit() for REG_RUBY_M17N.
1726 2002/03/19: [impl] word alignment of char class multi-byte code ranges.
1727 2002/03/19: [impl] replace OP_EXACTMB4N with OP_EXACTMB3N.
1728 2002/03/19: [bug] OP_CCLASS_MB_NOT process in matchAt() is wrong.
1729 2002/03/19: [new] add re_mbctab[] for Ruby extension library compatibility.
1730 2002/03/19: [spec] allow nested repeat operator, if operator is {n,m} type.
1731 2002/03/19: [new] add REG_IS_PATTERN_ERROR(ecode) in regex.h
1732 2002/03/18: [spec] /[a-b-c]/ should be error.
1733 2002/03/18: [bug] /[\w-a]/ should be error. (thanks Guy Decoux)
1734 2002/03/18: [bug] /[\]/ should be error. (thanks Guy Decoux)
1735 2002/03/18: [bug] /()*/ etc.. should not be error. (thanks Guy Decoux)
1736 2002/03/18: [spec] /a{1}*/ should not be error. (thanks Guy Decoux)
1737 2002/03/18: [bug] ab{2}{3} was interpreded to (?:a(?:b{2})){3}
1739 2002/03/18: [bug] abort /(?i)*a/ etc... (thanks Guy Decoux)
1740 2002/03/18: [bug] abort /a|*/,/a|{1}/ etc... (thanks Guy Decoux)
1742 2002/03/13: Version 1.2
1744 2002/03/13: [test] success in rubicon/builtin/AllBuiltinTests.rb.
1746 2002/03/13: [bug] OP_EXACTMBN process in matchAt() is wrong.
1747 2002/03/13: [bug] start argument of BackwardSearchRange() is wrong.
1748 2002/03/12: [spec] change function name style from CamelCase
1749 to underline_separation. (includes API)
1750 2002/03/12: [bug] if pattern has nested null-check, cause infinite loop.
1751 correct STACK_NULL_CHECK() macro. (thanks Guy Decoux)
1752 2002/03/11: [bug] it is wrong that four numbers to continue as
1753 an octal value in scanBackSlash(). ex. /\0111/
1755 2002/03/11: [new] \k (single-byte word char), \K (multi-byte char).
1756 2002/03/09: [inst] add two targets to Makefile.in (166 and 172).
1757 2002/03/09: [spec] decrease REG_MAX_BACKREF_NUM, REG_MAX_REPEAT_NUM
1759 2002/03/08: [spec] allow use of "\A"(begin-buf) in look-behind.
1760 2002/03/08: [impl] add a new opcode OP_PUSH_IF_PEEK_NEXT.
1761 2002/03/08: [impl] add a new opcode OP_ANYCHAR_STAR_PEEK_NEXT.
1762 2002/03/07: [spec] prohibit use of capture group "(...)"
1763 in negative look-behind.
1764 2002/03/07: [inst] add configure.in, config.h.in, Makefile.in.
1765 2002/03/07: [impl] call Init_REGEX_STAT() in RegexInit().
1766 2002/03/07: [spec] less length string match with negative look-behind.
1767 ex. /(?<!XXX)a/.match("Xa"). (thanks Nobu)
1768 2002/03/06: [impl] expand repeated string, if expanded length <= 100.
1770 2002/03/06: [new] add a symbol REG_TRANSTABLE_USE_DEFAULT in regex.h.
1771 2002/03/06: [impl] rename RegDefaultCharCode to RegDefaultCharEncoding.
1772 2002/03/06: [bug] if pattern has NULL(\000) char, infinite loop happens
1773 in ScanMakeNode(). (beware of strchr(). thanks Nobu)
1774 2002/03/06: [bug] range argument of ForwardSearchRange() is wrong.
1775 ex. /\A.a/, /\G.a/ mismatched with "aa". (thanks Nobu)
1776 2002/03/05: [new] add RegexMatch() API. rename regexMatch() to matchAt().
1777 2002/03/05: [impl] change function definition style.
1778 2002/03/05: [impl] abolish use of macro symbol which name begin with underline.
1779 2002/03/04: [bug] make up a break-statement in compileTree().
1780 (compile error on Mac OS X 10.1.3)
1782 2002/03/04: Version 1.1
1784 2002/03/04: [impl] replace STK_BOTTOM with STK_ALT.
1785 2002/03/02: [impl] add new opcode OP_FINISH and new stack type
1786 STK_BOTTOM for (little bit) speed up STACK_POP.
1787 2002/03/02: [impl] add new opcode OP_EXACT1_IC, OP_EXACTN_IC
1788 for compile time ignore case check.
1789 remove opcode OP_EXACT1_RAW, OP_EXACTN_RAW.
1790 2002/03/02: [impl] add OpTime info to statistical data.
1791 2002/02/28: [bug] sub_anchor($) in ForwardSearch() and BackwardSearch().
1792 ex. /$\x0az/.match("\nz")
1793 2002/02/28: [new] look-behind (?<=pattern), (?<!pattern).
1794 2002/02/27: [bug] use StackIndex instead of StackType* for realloc problem.
1795 2002/02/27: [impl] use m17n_codepoint() as mb2wc() in REG_RUBY_M17N.
1796 2002/02/27: [spec] undefined POSIX bracket /[[:xyz:]]/ should be syntax error.
1797 2002/02/26: [bug] ex. /$*/, /[a-]/, /((?i)a)b/ (thanks matz)
1799 2002/02/25: Version 1.0 (first release)
1803 [API: API change/new/delete]
1805 [spec: specification change]
1806 [impl: implementation change]
1807 [tune: tune for speed up]
1808 [inst: changes for installation]
1809 [dist: distribution change]
1813 <CVS: show all tags>
1817 cvs rtag "VERSION_X_X_X" oniguruma
1820 <GNU Autotools: bootstrap>
1821 * write Makefile.am and configure.in.
1824 > automake --foreign --add-missing
1826 > configure --with-rubydir=... CFLAGS="-O2 -Wall"
1829 <GNU libtool: version management>
1831 VERSION = current:revision:age
1833 current: interface number (from 0)
1834 revision: implementation number of same interface (from 0)
1835 age: number of supported previous interfaces
1836 (if current only supported then age == 0)