]> granicus.if.org Git - onig/blob - HISTORY
add encoding argument into str_dup()
[onig] / HISTORY
1 History
2
3 2018/01/26: Version 6.7.1
4
5 2018/01/25: disable USE_TRY_IN_MATCH_LIMIT by default
6 2018/01/24: implement mechanism of try-in-match-limit
7 2018/01/24: #76: rename EXPORT to ONIGURUMA_EXPORT
8 2018/01/15: #73: update for automake 1.15.1
9 2018/01/14: #74: update description of README
10 2018/01/10: #72: Correct spelling and grammar in FAQ (English)
11 2017/12/25: remove USE_COMBINATION_EXPLOSION_CHECK codes
12
13 2017/12/11: Version 6.7.0
14
15 2017/12/08: Disable \N and \O on ONIG_SYNTAX_RUBY
16 2017/12/08: add ONIG_SYNTAX_ONIGURUMA (default syntax)
17 2017/12/05: restructure StackType
18 2017/11/13: implement subexp calls (?R), (?&name), (?-n), (?+n) for Perl syntax
19 2017/09/25: use string pool of gperf for Unicode Property lookup function
20 2017/09/16: fix #70: an empty greedy regex and a word boundary (.*\b) fails
21 2017/09/13: remove a stack type STK_POS
22 2017/09/08: fix #69: add a declaration of onig_end()
23 2017/09/07: fix #68: Compilation failure in out-of-source build
24 2017/09/03: [new] hexadecimal codepoint \uHHHH
25
26 2017/08/30: Version 6.6.1
27
28 2017/08/29: fix definition of \X to (?>\O(?:\Y\O)*)
29
30 2017/08/28: Version 6.6.0
31
32 2017/08/26: fix #67: can't compile with Visual Studio 2005
33 2017/08/24: rename Absent clear to Range clear
34 2017/08/21: [new] Extended Grapheme Cluster \X and boundary \y, \Y
35 2017/08/17: fix: invalid index(ctype) value assigned to Unicode Block properties
36 2017/08/16: --enable-crnl-as-line-terminator to be deprecated
37 2017/08/15: [new] ASCII only mode options (?WDSP)
38 2017/08/14: [new] ONIG_OPTION_XXXX_IS_ASCII  options
39 2017/08/11: disable OP_CCLASS_NODE
40 2017/08/11: [spec] Absent clear restore previous range value at backtrack
41 2017/08/07: optimize for simple one char repetition in Absent expression
42 2017/08/07: fix: invalid impl. for reluctant repetition in Absent expression
43 2017/08/04: remove compile switch USE_NAMED_GROUP
44
45 2017/08/03: Version 6.5.0
46
47 2017/07/30: [new] support Absent clear (Absent functions)
48 2017/07/25: abolish configure option: --enable-combination-explosion-check
49 2017/07/23: [new] support Absent functions (?~...)
50 2017/07/14: fix #65: SIZEOF_SIZE_T doesn't exist on certain architecutres
51 2017/07/11: [new] support \O (true anychar)
52 2017/07/10: [new] support \K (keep)
53 2017/07/10: add new node type: NODE_GIMMICK
54 2017/07/07: [new] support \N (no newline)
55 2017/07/05: [new] support \R (general newline)
56 2017/07/05: [new] support if-then-else syntax
57 2017/07/04: [new] support backref validity checker
58
59 2017/07/03: Version 6.4.0
60
61 2017/06/30: fix memory leaks
62 2017/06/29: fix memory leaks
63 2017/06/28: change encoding of doc/XXXX.ja from EUC-JP to UTF-8
64 2017/06/28: update doc/RE, and doc/RE.ja
65 2017/06/26: fix fatal bug of endless repeat check on Windows
66 2017/06/26: PR #62 : add check for return values
67 2017/06/23: [new] support call zero (\g{0})
68 2017/06/23: [new] support relative call by positive number
69 2017/06/23: [new] support relative back-reference by positive number
70 2017/06/15: fix #60 : check value type
71 2017/06/02: change output format for ONIG_DEBUG_COMPILE and ONIG_DEBUG_MATCH
72
73 2017/05/29: Version 6.3.0
74
75 2017/05/24: fix #60 : invalid state(CCS_VALUE) in parse_char_class()
76 2017/05/24: fix #59 : access to invalid address by reg->dmax value
77 2017/05/23: fix invalid increment of start position in onig_scan()
78 2017/05/23: fix #58 : access to invalid address by reg->dmin value
79 2017/05/23: fix #57 : DATA_ENSURE() check must be before data access
80 2017/05/22: fix #56 : return invalid result for codepoint 0xFFFFFFFF
81 2017/05/19: [new] add \o{17777777777} syntax.
82 2017/05/19: fix #55 : Byte value expressed in octal must be smaller than 256
83
84 2017/04/08: Version 6.2.0
85
86 2017/03/15: fix: size in xmemcpy in stack_double (PR #51)
87 2017/02/21: Initialize return value
88 2017/01/03: NEW API: add onig_set_capture_num_limit()
89 2017/01/03: change MemNumType from short int to int
90 2016/12/13: fix: [0-9-a] was not allowed as [0-9\-a]
91 2016/12/13: fix: illegal capture after recursive call
92 2016/12/13: fix: problem with optimization of \z
93 2016/12/13: fix: .* optimization
94 2016/12/13: Set a limit of parser recursion
95 2016/12/12: fix; that warnings are not shown properly
96 2016/12/12: fix: /[a-c#]+\W/ =~ "def#" fails when encoding is UTF-16/32
97 2016/12/12: fix: /[\x{0}-X]/i doesn't match properly when UTF-16/32 is used.
98
99 2016/12/11: Version 6.1.3
100
101 2016/12/11: fix: Syntax error: redirection unexpected (expecting word) #35
102
103 2016/11/07: Version 6.1.2
104
105 2016/10/25: allow word bound, word begin and word end in look-behind.
106 2016/10/19: add ONIG_OPTION_CHECK_VALIDITY_OF_STRING option.
107 2016/10/16: fix use after free node.
108 2016/10/10: fix memory leaks after parsing regexp error.
109 2016/09/22: implement many of is_valid_mbc_string().
110
111 2016/09/02: Version 6.1.1
112
113 2016/08/31: fix segfault /W.?{888}{888}{888}\x00/ (found by libfuzzer)
114 2016/08/31: fix error unmatched close parenthesis for %{(.*?)} #23
115
116 2016/08/29: Version 6.1.0
117
118 2016/08/28: add contributed/libfuzzer-onig.cpp  (thanks hannob)
119 2016/08/28: update LTVERSION 4:0:0
120 2016/08/28: NEW API: onigenc_is_valid_mbc_string().
121 2016/08/27: add is_valid_mbc_string() member into OnigEncodingType.
122 2016/08/27: fix out of bounds read.
123 2016/08/26: fix out of bounds read.
124 2016/08/25: disable USE_INVALID_CODE_SCHEME.
125 2016/08/24: fix out of bounds read.
126 2016/08/23: doc/RE improved.
127 2016/08/22: add onig_scan() into doc/API.
128 2016/08/22: fix bug: Out of bounds read in onig_strcpy() #17
129 2016/08/21: fix bug: infinite loop of backreference and group.
130 2016/08/21: fix out of bounds read in mbc_to_code() #16
131 2016/08/18: doc/RE refinements.
132 2016/08/16: add onig_scan() (NEW API)
133 2016/08/16: reimplement match stack allocation for case too many repeat
134             and too many captures in regexp.
135 2016/08/15: number of captures <= 32767 for bytecode representation.
136 2016/07/17: don't use int_map_backward for thread-safe.
137 2016/07/04: fix case of enclosed option in look-behind.
138 2016/07/04: fix ignore case in look-behind.
139 2016/05/23: fix memory leak in onig_unicode_define_user_property()
140 2016/05/20: declare variables at the top of scope.  (thanks nmaya)
141
142 2016/05/09: Version 6.0.0
143
144 2016/05/05: add NEW API: onig_unicode_define_user_property()
145 2016/05/04: update Unicode data to 8.0.0
146 2016/05/02: change OnigCodePoint type to unsigned int.
147 2016/05/02: add doc/UNICODE_PROPERTIES.
148 2016/04/19: add error code ONIGERR_FAIL_TO_INITIALIZE.
149 2016/04/18: add make_win64/32.bat.
150 2016/04/18: fix bug of uninitialized regex_t value on error.
151 2016/04/16: reimplement Unicode case folding.
152 2016/04/11: update LTVERSION = 3.0.0
153 2016/04/05: remove all THREAD_ macro.
154 2016/04/05: add init member into OnigEncoding. (add onig_initialize())
155 2016/03/28: remove state member of regex.
156 2016/03/25: move source files into src/
157 2016/03/23: rename configre.in to configure.ac.
158 2015/11/17: fix memory leak. (thanks pigzang)
159 2015/07/13: change mail address.
160
161 2014/12/12: Version 5.9.6
162
163 2013/11/27: [impl] add onigenc_end_unicode().  (thanks Takenori Imoto)
164 2013/11/27: [impl] add onig_add_end_call().    (thanks Takenori Imoto)
165
166 2013/10/21: Version 5.9.5
167
168 2013/10/21: [impl] escape warnings for -Wall. (regparse.c)
169 2013/10/21: [bug] fixes an issue on Windows x64. (thanks Anatoliy Belsky)
170                   The issue was discovered in PHP, see https://bugs.php.net/64769.
171 2013/10/21: [impl] remove unused variable. (regcomp.c)
172
173 2013/04/04: Version 5.9.4
174
175 2013/04/04: [dev]  remove Makefile.in from git repository.
176 2013/04/04: [dist] add oniguruma.pc.in file. (for pkg-config)
177                    (thanks Giulio Paci)
178
179 2012/10/26: Version 5.9.3
180
181 2012/10/15: remove warnings "test: =: unary operator expected" in ./configure.
182             (thanks t_okazaki)
183 2012/10/15: fix print_tree ENCLOSE_OPTION bug. (thanks Suraj N. Kurapati)
184
185 2010/01/09: Version 5.9.2
186
187 2010/01/05: [bug]  fix utf16be_code_to_mbc() and utf16le_code_to_mbc().
188 2008/09/16: [bug]  fix memory leaks in parse_exp().
189 2008/08/01: [bug]  fix memory leaks.
190 2008/06/17: [bug]  invalid type of argument was used
191                    in onig_st_lookup_strend().
192 2008/06/16: [bug]  invalid CaseFoldMap entry in ISO-8859-5. 0xdf -> 0xde
193 2008/02/19: [new]  add: onig_reg_init().
194 2008/02/19: [new]  add: onig_free_body().
195 2008/02/19: [new]  add: onig_new_without_alloc().
196 2008/02/19: [API]  rename onig_alloc_init() to onig_reg_init(),
197                    and argument type changed.
198 2008/01/31: [impl] move UTF16_IS_SURROGATE_XXX() to regenc.h.
199 2008/01/30: [bug]  (thanks akr)
200                    fix euctw_islead().
201 2008/01/23: [bug]  update enc/koi8.c.
202
203 2007/12/22: Version 5.9.1
204
205 2007/12/21: [impl] add sprint_byte().
206 2007/11/28: [bug]  (thanks Andy Armstrong)
207                    don't overwrite error code in fetch_name().
208 2007/11/12: [bug]  utf8 mbc length of code 0xfe, 0xff are not 1,
209 2007/10/23: [spec] onig_enc_len() takes three arguments. (not used)
210 2007/10/15: [impl] (thanks Rui Hirokawa)
211                    add check HAVE_STDARG_H.
212 2007/09/07: [API]  rename enc_len() to onig_enc_len() in oniguruma.h.
213 2007/09/04: [API]  remove ONIGENC_ERR_XXXXX.
214 2007/09/03: [API]  add error ONIGERR_INVALID_CODE_POINT_VALUE.
215 2007/09/03: [impl] change error message to "invaid code point value"
216                    for ONIGERR_INVALID_WIDE_CHAR_VALUE.
217 2007/09/03: [bug]  xxx_code_to_mbclen() should return
218                    ONIGERR_INVALID_WIDE_CHAR_VALUE for invalid code point.
219                    ex. /[\x{7fffffff}]/ for ASCII encoding.
220 2007/08/28: [impl] remove "warning: no previous declaration ...".
221 2007/08/21: [impl] remove warnings in enc/mktable.c.
222 2007/08/20: [impl] remove "warning: unused parameter"
223 2007/08/20: [impl] remove "warning: comparison between signed and unsigned".
224 2007/08/06: [impl] remove clear_not_flag_cclass().
225 2007/08/03: [bug]  fix the case of undefined USE_NAMED_GROUP.
226 2007/08/02: [spec] add backref by number.
227 2007/08/01: [API]  add OnigCtype.
228 2007/07/27: [spec] add USE_CASE_FOLD_IS_APPLIED_INSIDE_NEGATIVE_CCLASS.
229 2007/07/24: [impl] define PLATFORM_UNALIGNED_WORD_ACCESS.
230 2007/07/23: [dist] fix doc/FAQ.ja.
231
232 2007/07/14: Version 5.9.0
233
234 2007/07/13: [bug]  add check into onig_reduce_nested_quantifier().
235 2007/06/26: [spec] (thanks K.Takata)
236                    ONIG_OPTION_SINGLELINE: '$' -> '\Z'  (as Perl)
237 2007/06/26: [dist] (thanks K.Takata)
238                    fix documents API and API.ja.
239 2007/06/19: [impl] remove IS_NOT_NULL() check before onig_node_free().
240 2007/06/18: [bug]  (thanks KUBO Takehiro)
241                    WORD_ALIGNMENT_SIZE must be sizeof(OnigCodePoint).
242 2007/06/18: [impl] rename CClassNode flags.
243 2007/06/18: [bug]  initialization miss.
244 2007/06/13: [impl] change node type reference NXXXX.
245 2007/06/11: [impl] add node type bit.
246 2007/06/11: [spec] allow anchor in enclosed repeater. /(\z)*/
247 2007/06/11: [impl] rename node types.
248 2007/06/08: [impl] remove OP_SET_OPTION_PUSH and OP_SET_OPTION from match_at().
249 2007/06/07: [impl] use xvsnprintf().
250 2007/06/06: [tune] don't set qn->next_head_exact for string first byte is zero.
251 2007/06/06: [impl] remove unused variables.
252
253 2007/06/04: Version 5.8.0
254
255 2007/06/04: [impl] add #ifndef vsnprintf into regint.h.
256 2007/05/31: [dist] add configure option '--enable-crnl-as-line-terminator'.
257 2007/05/30: [dist] add sample/crnl.c.
258 2007/05/30: [bug]  should check USE_CRNL_AS_LINE_TERMINATOR case
259                    in onig_search().
260 2007/05/29: [impl] move USE_CRNL_AS_LINE_TERMINATOR into regenc.h.
261 2007/05/29: [impl] should check USE_NEWLINE_AT_END_OF_STRING_HAS_EMPTY_LINE
262                    in forward_search_range() and backward_search_range().
263
264 2007/04/27: Version 5.7.0
265
266 2007/04/20: [spec] add config USE_MATCH_RANGE_IS_COMPLETE_RANGE.
267 2007/04/20: [impl] refactoring in match_at().
268
269 2007/04/12: Version 5.6.1
270
271 2007/04/12: [bug]  must not use UChar in oniguruma.h.
272 2007/04/09: [impl] change STATE_CHECK_BUFF_MAX_SIZE value from 0x8000
273                    to 0x4000. [ruby-core:10883]
274
275 2007/04/04: Version 5.6.0  (mourning for Hideo Takamatsu)
276
277 2007/04/03: [spec] add new notation (?'name'), \k'name', \g'name'.
278 2007/04/03: [impl] remove unused variable.
279 2007/03/26: [impl] add 'void' to function declarations.
280
281 2007/03/06: Version 5.5.3
282
283 2007/03/06: [bug]  add #include <malloc.h> for bcc32.
284                    (In bcc32, alloca() is declared in malloc.h.)
285 2007/03/02: [bug]  invalid optimization for semi-end-buf in onig_search().
286                    ex. /\n\Z/.match("aaaaaaaaaa\n")
287 2007/03/02: [impl] move range > start check position in end_buf process.
288
289 2007/01/09: Version 5.5.2
290
291 2007/01/09: [impl] rename USE_EXTERNAL_LOWER_CASE_CONV_TABLE.
292 2007/01/05: [tune] select_opt_exact_info() didn't work for empty info.
293                    ex. /.a/ make MAP info instead of EXACT info.
294 2006/12/28: [impl] add print_enc_string() for ONIG_DEBUG mode.
295
296 2006/12/22: Version 5.5.1
297
298 2006/12/22: [impl] rename ADD_PAD_TO_SHORT_BYTE_STRING
299                  . to USE_PAD_TO_SHORT_BYTE_CHAR.
300 2006/12/21: [spec] should check too short multibyte char in parse_exp().
301                    add ADD_PAD_TO_SHORT_BYTE_STRING.
302                    ex. /\x00/ in UTF16 should be error.
303
304 2006/12/06: Version 5.5.0
305
306 2006/12/05: [bug]  should add unfold-1 codes from folded code into
307                    onigenc_unicode_get_case_fold_codes_by_str().
308                    (ex. "S" -> "s" -> 0x017f)
309 2006/12/05: [new]  add flag ONIGENC_CASE_FOLD_TURKISH_AZERI and
310                    USE_UNICODE_CASE_FOLD_TURKISH_AZERI. (disabled in default)
311 2006/12/04: [spec] remove ONIGENC_CASE_FOLD_FULL.
312 2006/11/30: [impl] remove unnecessary check in xxx_mbc_case_fold().
313
314 2006/11/29: Version 5.4.0
315
316 2006/11/28: [spec] INTERNAL_ONIGENC_CASE_FOLD_MULTI_CHAR is enabled in
317                    default case fold status.
318 2006/11/28: [spec] rename ONIGENC_CASE_FOLD_MULTI_CHAR to
319                    INTERNAL_ONIGENC_CASE_FOLD_MULTI_CHAR.
320 2006/11/28: [impl] remove USE_UNICODE_CASE_FOLD_MULTI_CHAR.
321 2006/11/28: [impl] remove Fold[123]Table and add FoldTable.
322 2006/11/27: [impl] change tool/unicode_fc.rb to see CaseFolding.txt.
323 2006/11/24: [bug]  should call callback for to[j] <-> to[k] in
324                    onigenc_unicode_apply_all_case_fold().
325
326 2006/11/22: Version 5.3.0
327
328 2006/11/22: [dist] add index_ja.html.
329 2006/11/22: [impl] undef ONIG_ESCAPE_UCHAR_COLLISION in regint.h and regenc.h.
330 2006/11/21: [bug]  invalid array access.
331 2006/11/21: [impl] escape UChar collision from config.h.
332 2006/11/20: [new]  add Hiragana/Katakana properties into Shift_JIS.
333 2006/11/20: [impl] fix CR_Katakana[] values in EUC-JP.
334 2006/11/17: [impl] declare strend hash table functions in regint.h.
335 2006/11/17: [impl] move property list functions to regenc.c.
336 2006/11/17: [new]  add Hiragana/Katakana properties into EUC-JP.
337 2006/11/15: [impl] remove NOT_RUBY from AM_CFLAGS.
338
339 2006/11/14: Version 5.2.0
340
341 2006/11/14: [impl] remove program codes for Ruby.
342 2006/11/14: [impl] reduce program codes for Ruby.
343 2006/11/10: [bug]  0x24, 0x2b, 0x3c, 0x3d, 0x3e, 0x5e, 0x60, 0x7c, 0x7e
344                    should be [:punct:].
345 2006/11/09: [new]  (thanks Byte)
346                    add new character encoding CP1251.
347 2006/11/08: [impl] rename QUALIFIER -> QUANTIFIER.
348
349 2006/11/07: Version 5.1.0
350
351 2006/11/07: [dist] remove test.rb, testconv.rb and testconvu.rb.
352 2006/11/07: [bug]  get_case_fold_codes_by_str() should handle 'Ss' and 'sS'
353                    combination for ess-tsett.
354 2006/11/07: [impl] apply_all_case_fold() doesn't need to return all 
355                    case character combination for multi-character folding.
356                    (ONIGENC_CASE_FOLD_MULTI_CHAR)
357 2006/11/07: [bug]  (thanks Byte)
358                    add { 0xa3, 0xb3 } to CaseFoldMap[] for KOI8-R.
359 2006/11/06: [spec] change ONIG_OPTION_FIND_LONGEST to search all of 
360                    the string range.
361                    add USE_FIND_LONGEST_SEARCH_ALL_OF_RANGE.
362 2006/11/02: [impl] re-implement expand_case_fold_string() for
363                    ONIGENC_CASE_FOLD_MULTI_CHAR.
364 2006/10/30: [impl] add NSTR_DONT_GET_OPTINFO flag.
365 2006/10/30: [impl] (thanks K.Takata)
366                    add THREAD_SYSTEM_INIT and THREAD_SYSTEM_END.
367 2006/10/30: [bug]  (thanks Wolfgang Nadasi-Donner)
368                    invalid offset value was used in STATE_CHECK_BUFF_INIT().
369 2006/10/27: [tune] speed up ONIGENC_MBC_CASE_FOLD() for UTF-16, UTF-32.
370                    (ASCII code check)
371 2006/10/27: [tune] (thanks Kornelius Kalnbach)
372                    String#scan for long string needs long time compare with
373                    old Ruby
374                    by initialization time for combination explosion check
375                    ex. ("test " * 100_000).scan(/\w*\s?/)
376                    change STATE_CHECK_BUFF_MAX_SIZE from 0x8000000 to 0x8000.
377                    reduce initialization area of state_check_buff.
378 2006/10/25: [impl] add DISABLE_CASE_FOLD_MULTI_CHAR().
379
380 2006/10/23: Version 5.0.1
381
382 2006/10/23: [bug]  should fold string in expand_case_fold_string().
383 2006/10/23: [bug]  (thanks Km)
384                    too many case fold/unfold expansion problem.
385                    don't expand and set ambig flag to the string node.
386                    (except ONIGENC_CASE_FOLD_MULTI_CHAR).
387 2006/10/23: [bug]  (thanks K.Takata)
388                    invalid \p{Alnum}, \p{ASCII}, [:alnum:], [:ascii:].
389                    fix OnigEncAsciiCtypeTable[] etc...
390 2006/10/23: [spec] (thanks K.Takata)
391                    add [:word:] POSIX bracket.
392 2006/10/23: [bug]  (thanks K.Takata)
393                    \p{Word} doesn't work.
394 2006/10/20: [impl] don't expand for AMBIG_FLAG string in
395                    expand_case_fold_string().
396
397 2006/10/19: Version 5.0.0
398
399 2006/10/18: [bug]  ONIGENC_GET_CASE_FOLD_CODES_MAX_NUM should be 13.
400 2006/10/18: [impl] remove unused functions.
401 2006/10/18: [dist] update documents.
402 2006/10/18: [API]  move OnigMetaCharTableType to OnigSyntaxType.
403 2006/10/18: [dev]  add too/unicode_fc.rb, unicode_pc.rb.
404 2006/10/18: [dist] remove MANIFEST-RUBY from distribution.
405 2006/10/18: [bug]  return duplicated code in
406                    onigenc_unicode_get_case_fold_codes_by_str().
407 2006/10/18  [API]  remove ONIG_SYN_OP2_CHAR_PROPERTY_PREFIX_IS.
408 2006/10/18: [dev]  add tool/19.
409 2006/10/18: [dist] remove target 19 from Makefile.am.
410 2006/10/17: [dist] add enc/unicode.c to target 19 of win32/Makefile.
411 2006/10/17: [impl] change type for escape VC++ warning.
412 2006/10/17: [API]  rename ONIGENC_CASE_FOLD_NONE to ONIGENC_CASE_FOLD_MIN.
413 2006/10/17: [dist] remove INSTALL-RUBY from distribution.
414 2006/10/17: [dist] update LTVERSION to "2:0:0".
415 2006/10/17: [impl] remove warnings for [make CFLAGS="-g -O2 -Wall"]
416                    in the case USE_UNICODE_PROPERTIES and
417                    USE_UNICODE_CASE_FOLD_MULTI_CHAR are undefined.
418 2006/10/17: [impl] remove warnings for [make CFLAGS="-g -O2 -Wall"].
419 2006/10/17: [impl] re-implement onigenc_unicode_apply_all_case_fold().
420                    multi-char by case folded char-class is treated as
421                    caseless-string (ambig flag on).
422                    enable OP_EXACT1_IC and OP_EXACTN_IC.
423 2006/10/16: [bug]  unfold expand for 1->2, 1->3 folding in
424                    onigenc_unicode_apply_all_case_fold().
425                    add CaseFoldExpand_12[], CaseFoldExpand_13[].
426 2006/10/16: [bug]  (thanks Akinori Musha)
427                    first argument of rb_warn() should be format string.
428 2006/10/16: [impl] add msa.state_check_buff_size initialization
429                    in onig_search().
430 2006/10/16: [spec] re-implement Unicode Caseless Match codes.
431 2006/10/10: [bug]  should call onig_st_free_table() in
432                    onig_free_shared_cclass_table().
433 2006/10/10: [impl] remove OnigCompCaseFoldCodes.
434 2006/10/10: [impl] remove onigenc_ascii_is_mbc_ambiguous() and
435                    onigenc_mbn_is_mbc_ambiguous().
436 2006/10/10: [API]  remove is_mbc_ambiguous() member from OnigEncodingType.
437 2006/10/10: [API]  rename onig_set_default_ambig_flag() to
438                    onig_set_default_case_fold_flag(),
439                    onig_get_default_ambig_flag() to
440                    onig_get_default_case_fold_flag(),
441                    onig_get_ambig_flag() to onig_get_case_fold_flag().
442 2006/10/10: [API]  rename ambig_flag to case_fold_flag.
443 2006/10/10: [API]  rename OnigAmbigType to OnigCaseFoldType.
444 2006/10/10: [impl] rename ONIGENC_IS_CODE_SB_WORD() to IS_CODE_SB_WORD()
445                    and move to regint.h.
446 2006/10/10: [impl] remove OP_WORD_SB and OP_WORD_MB.
447 2006/10/10: [impl] remove OP_EXACT1_IC and OP_EXACTN_IC from match_at().
448 2006/10/10: [impl] should free new_str in expand_case_fold_string().
449 2006/10/06: [dist] add test entries to sample/encode.c.
450 2006/10/06: [impl] re-implement caseless match (case-fold).
451 2006/10/06: [impl] expand string node by case fold variations.
452                    add expand_case_fold_string().
453 2006/10/05: [spec] rename OnigCompAmbigCodeItem to OnigCaseFoldCodeItem.
454 2006/10/05: [spec] add apply_all_case_fold() and get_case_fold_codes_by_str()
455                    to OnigEncodingType.
456 2006/10/05: [spec] remove ambig_flag, get_all_pair_ambig_codes() and
457                    get_all_comp_ambig_codes() member from OnigEncodingType.
458 2006/10/03: [impl] rename mbc_to_normalize() to mbc_case_fold().
459 2006/10/03: [spec] rename ONIGENC_AMBIGUOUS_MATCH_XXX
460                    to ONIGENC_CASE_FOLD_XXX.
461                    rename ONIGENC_CASE_FOLD_COMPOUND
462                    to ONIGENC_CASE_FOLD_MULTI_CHAR.
463 2006/10/02: [impl] remove all ONIG_RUBY_M17N part.
464 2006/09/29: [impl] initialize state_check_buff_size in STATE_CHECK_BUFF_INIT().
465                    make valgrind happy.
466 2006/09/22: [impl] remove parse time ctype values (CTYPE_WORD etc...)
467 2006/09/22: [ruby] enable USE_BACKREF_AT_LEVEL for Ruby mode.
468 2006/09/22: [spec] (thanks Allan Odgaard)
469                    allow upper case letter as the first character
470                    of group name.
471                    fetch_name() and fetch_name_with_level()
472 2006/09/21: [impl] convert to ascii for parameter string in
473                    onig_error_code_to_str().
474                    add enc member into OnigErrorInfo.
475 2006/09/21: [dist] update documents for Unicode Property.
476 2006/09/21: [new]  add Unicode Properties. (enc/unicode.c)
477                    Any, Assigned, C, Cc, L, Lm, Arabic, Greek etc...
478 2006/09/21: [impl] add USE_UNICODE_PROPERTIES into regenc.h.
479 2006/09/21: [impl] remove USE_UNICODE_FULL_RANGE_CTYPE.
480 2006/09/20: [impl] change ONIGENC_CTYPE_XXXX to sequencial values.
481                    add BIT_CTYPE_XXXX bit flags to regenc.h.
482                    update XXXX_CtypeTable[] for BIT_CTYPE_ALNUM.
483 2006/09/19: [memo] move from CVS to Subversion (1.3.2).
484 2006/09/19: [impl] (thanks KOYAMA Tetsuji)
485                    HAVE_STDARG_PROTOTYPES was not defined in Mac OS X
486                    by Xcode 2.4(gcc 4.0.1) problem. [php-dev 1312] etc...
487 2006/09/15: [bug]  (thanks Allan Odgaard)
488                    out of range access in bm_search_notrev().
489                    (p < s)
490 2006/09/13: [impl] add ONIGENC_CTYPE_ENC_EXT flag.
491 2006/09/13: [spec] remove 'Is' prefix check for property name
492                    from fetch_char_property_to_ctype().
493 2006/09/13: [API]  add property_name_to_ctype member to OnigEncodingType.
494 2006/09/12: [spec][ruby] add ONIG_SYN_OP2_ESC_P_BRACE_CHAR_PROPERTY and
495                    ONIG_SYN_OP2_ESC_P_BRACE_CIRCUMFLEX_NOT to OnigSyntaxRuby.
496
497 2006/09/08: Version 4.4.2
498
499 2006/09/08: [test] success in ruby 1.9.0 (2006-08-22) [i686-linux].
500 2006/09/08: [bug]  (thanks K.Takata)
501                    out of range access in bm_search_notrev().
502 2006/09/04: [spec] (thanks K.Takata)
503                    allow look-behind in negative look-behind.
504                    ex. /(?<!(?<=a)b|c)d/
505
506 2006/08/29: Version 4.4.1
507
508 2006/08/29: [test] success in ruby 1.9.0 (2006-08-22) [i686-linux].
509 2006/08/29: [dist] (thanks Seiji Masugata)
510                     add configure option --enable-combination-explosion-check
511
512 2006/08/25: Version 4.4.0
513
514 2006/08/25: [test] success in ruby 1.9.0 (2006-08-22) [i686-linux].
515 2006/08/25: [impl] add_state_check_num() should be enclosed in
516                    ifdef USE_COMBINATION_EXPLOSION_CHECK.
517 2006/08/23: [spec] config USE_COMBINATION_EXPLOSION_CHECK is enabled
518                    in Ruby mode only.
519 2006/08/22: [impl] remove last line comma in enum OpCode.
520 2006/08/22: [impl] remove OP_STATE_CHECK_ANYCHAR_STAR_PEEK_NEXT and
521                    OP_STATE_CHECK_ANYCHAR_ML_STAR_PEEK_NEXT.
522 2006/08/22: [impl] remove OP_BACKREF3.
523
524 2006/08/21: Version 4.3.1
525
526 2006/08/21: [test] success in ruby 1.9.0 (2006-07-28) [i686-linux].
527 2006/08/21: [impl] change stack type values
528                    and re-define STK_MASK_TO_VOID_TARGET etc...
529 2006/08/21: [impl] set repeat_range[].upper to 0x7fffffff as infinite.
530 2006/08/21: [impl] add STATE_CHECK_BUFF_MALLOC_THRESHOLD_SIZE.
531 2006/08/21: [impl] reduce (?:a*){n,m}, (?:a+){n,m} => (?:a*){n,n}, (?:a+){n,n}
532 2006/09/21: [impl] reduce (a*){n,m}, (a+){n,m} => (a*){n,n}, (a+){n,n}
533                    if backreference is not used.
534 2006/08/17: [bug]  should check scan_env.num_call > 0 for backrefed pattern
535                    in combination explosion check.
536
537 2006/08/17: Version 4.3.0
538
539 2006/08/17: [test] success in ruby 1.9.0 (2006-07-28) [i686-linux].
540 2006/08/17: [new]  add config USE_COMBINATION_EXPLOSION_CHECK.
541                    check /(.+)*/, /(\s*foo\s*)*/ etc...
542             [API]  add num_comb_exp_check member in regex_t.
543             [dist] change LTVERSION value to "1:0:0" in configure.in.
544 2006/08/15: [bug]  OP_REPEAT_INC process in match_at().
545                    should check repeat-count >= range-upper and
546                    range-upper may be infinite.
547
548 2006/08/11: Version 4.2.3
549
550 2006/08/11: [test] success in ruby 1.9.0 (2006-07-28) [i686-linux].
551 2006/08/10: [impl] remove double call in set_qualifier().
552 2006/08/10: [impl] remove by_number member in QualifierNode.
553 2006/08/09: [impl] remove a comma at the end of enum ReduceType
554                    for escape warning on Mac OS X.
555 2006/08/07: [impl] remove warning in regcomp.c.
556 2006/08/07: [spec] move definition of USE_BACKREF_AT_LEVEL into NOT_RUBY.
557
558 2006/08/03: Version 4.2.2
559
560 2006/08/03: [test] success in ruby 1.9.0 (2006-07-28) [i686-linux].
561 2006/08/03: [bug]  (thanks Hiroyuki Yamamoto)
562                    segmentation fault in regexec(). (POSIX API)
563 2006/08/02: [bug]  combination of \G in look-ahead/look-behind and other
564                    anchors(\A, \z, \Z) cause invalid result.
565                    ex. /(?!\G)a\z/.match("ba")
566                    start arg. of MATCH_ARG_INIT() should be original
567                    arg. of onig_search().
568
569 2006/07/31: Version 4.2.1
570
571 2006/07/31: [test] success in ruby 1.9.0 (2006-07-28) [i686-linux].
572 2006/07/31: [bug] (thanks Kimura Minoru)
573                    re-implement bm_search_notrev().
574 2006/07/31: [impl] bm_search_notrev() refactoring.
575 2006/07/31: [bug]  (thanks Kimura Minoru)
576                    fix incomplete multibyte string in exact info.
577 2006/07/31: [impl] (thanks Seiji Masugata)
578                    remove cast in va_init_list() for Intel C Compiler.
579
580 2006/07/18: Version 4.2.0
581
582 2006/07/18: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
583 2006/07/18: [new]  (thanks Wolfgang Nadasi-Donner)
584                    add back reference with nest level.
585                    \k<name+n>, \k<name-n>
586 2006/07/11: [impl] change long to unsigned long for ONIG_OPTION_XXX
587                    and ONIG_SYN_XXX number literals.
588
589 2006/07/03: Version 4.1.2
590
591 2006/07/03: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
592 2006/07/03: [spec] (thanks Wolfgang Nadasi-Donner)
593                    allow \G in look-behind.
594                    add ANCHOR_BEGIN_POSITION flag in setup_tree().
595 2006/06/12: [impl] (thanks matz)
596                     fix cast from char* to const char*
597                     in onig_snprintf_with_pattern().
598                     fix cast from char* to const char*
599                     for PopularQStr[] and ReduceQStr[].
600
601 2006/05/22: Version 4.1.1
602
603 2006/05/22: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
604 2006/05/22: [impl] add position string argument to STACK_BASE_CHECK().
605 2006/05/22: [bug]  (thanks NARUSE, Yui)
606                    add STK_NULL_CHECK_END to IS_TO_VOID_TARGET().
607                    ex. core dump in
608                    /(?<pare>\(([^\(\)]++|\g<pare>)*+\))/.match('((a))')
609
610 2006/05/15: Version 4.1.0
611
612 2006/05/15: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
613 2006/05/15: [impl] thread atomic changes for onig_end() and
614                    onig_free_node_list().
615 2006/05/15: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
616 2005/05/15: [dist] update API, API.ja, FAQ, FAQ.ja.
617 2006/05/15: [spec] remove onig_recompile(), onig_recompile_deluxe()
618                    and re_recompile_pattern().
619                    add config USE_RECOMPILE_API.
620 2006/05/15: [impl] improved thread safe implementation of onig_search()
621                    and onig_match().
622
623 2006/05/11: Version 4.0.4
624
625 2006/05/11: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
626 2006/05/11: [bug]  (thanks Yuji Kaneda)
627                    dead-lock in onig_end().              
628 2006/05/11: [dist] update index.html.
629
630 2006/05/08: Version 4.0.3
631
632 2006/05/08: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
633 2006/05/08: [bug]  (thanks Allan Odgaard)
634                    Segmentation fault in backward search.
635                    ex. /^\t.*$/
636 2006/04/18: [dist] update index.html.
637 2006/04/05: [dist] update index.html.
638 2006/03/24: [dist] update doc/RE, doc/RE.ja.
639
640 2006/03/23: Version 4.0.2
641
642 2006/03/22: [test] success in ruby 1.9.0 (2006-03-01) [i686-linux].
643 2006/03/22: [impl] add both of ONIG_OPTION_DONT_CAPTURE_GROUP
644                    and ONIG_OPTION_CAPTURE_GROUP check.
645 2006/03/22: [spec] add error code ONIGERR_INVALID_COMBINATION_OF_OPTIONS.
646 2006/03/22: [impl] remove USE_NAMED_GROUP condition from
647                    ONIG_OPTION_DONT_CAPTURE_GROUP check in parse_effect().
648 2006/03/22: [new]  add API onig_noname_group_capture_is_active().
649 2006/03/01: [spec] rename regex object type from regex_t to OnigRegexType.
650                    add typedef OnigRegexType regex_t
651                    unless ONIG_ESCAPE_REGEX_T_COLLISION is defined.
652 2006/02/27: [spec] change ONIG_MAX_MULTI_BYTE_RANGES_NUM from 1000
653                    to 10000.  (for docdiff program)
654 2006/02/17: [dist] change COPYING year 2005 -> 2006.
655
656 2006/02/07: Version 4.0.1
657
658 2006/02/07: [test] success in ruby 1.9.0 (2005-11-28) [i686-linux].
659 2006/02/07: [bug]  memory leaks in onig_free_shared_cclass_table().
660 2006/02/03: [ruby] add -m 0644 option to install command in "make 19".
661 2006/02/03: [impl] rename ANCHOR_ANYCHAR_STAR_PL to ANCHOR_ANYCHAR_STAR_ML.
662                    change from IS_POSIXLINE() to IS_MULTILINE()
663                    for ANCHOR_ANYCHAR_START/_ML decision
664                    in optimize_node_left().
665 2006/01/26: [dist] update index.html for Oniguruma 2.5.3.
666 2006/01/25: [dist] update URL in index.html.
667
668 2006/01/24: Version 4.0.0
669
670 2006/01/24: [test] success in ruby 1.9.0 (2005-11-28) [i386-cygwin].
671 2006/01/24: [test] success in ruby 1.9.0 (2005-11-28) [i686-linux].
672 2006/01/24: [dist] remove warnings from sample/encode.c.
673 2006/01/24: [dist] change install description in README(.ja).
674 2006/01/24: [dist] remove re.c.XXX.patch from distribution and CVS.
675 2006/01/24: [dist] --- support shared library ---
676                    use GNU libtool/automake.
677                    change configure.in and add Makefile.am, sample/Makefile.am.
678                    add AUTHORS file.
679 2006/01/24: [dist] test programs return exit code -1 when test fails. 
680 2006/01/24: [bug] (thanks KIMURA Koichi)
681                    invalid syntax definition in ONIG_SYNTAX_GREP.
682                    ONIG_SYN_OP_BRACE_INTERVAL
683                    -> ONIG_SYN_OP_ESC_BRACE_INTERVAL
684 2006/01/23: [dist] fix configure.in for onig-config.
685 2006/01/19: [new]  add new config USE_UNICODE_ALL_LINE_TERMINATORS.
686                    (U+000d, U+0085, U+2028, U+2029)
687 2005/12/29: [dist] change pmatch array size to 25 in testconv.rb.
688 2005/12/26: [dist] fix name in test.rb.
689 2005/12/26: [dist] update index.html for 2.5.1.
690
691 2005/11/29: Version 3.9.1
692
693 2005/11/29: [test] success in ruby 1.9.0 (2005-11-28) [i686-linux].
694 2005/11/24: [test] success in ruby 1.9.0 (2005-08-09) [i686-linux].
695 2005/11/21: [test] success in ruby 1.9.0 (2005-11-20) [i386-cygwin].
696 2005/11/21: [bug]  (thanks Allan Odgaard)
697                    utf-8 character comments in extended mode leads 
698                    invalid result.
699                    ex. /(?x)(?<= # <any-utf-8 multibyte char>o\n~) /
700                    fix onigenc_unicode_is_code_ctype() and
701                    utf8_is_code_ctype().
702 2005/11/20: [bug]  (thanks MATSUMOTO Satoshi) (thanks Isao Sonobe)
703                    begin-line anchor and BM search optimization leads
704                    invalid result in UTF-16/32.
705                    fix in set_optimize_exact_info().
706
707 2005/11/20: Version 3.9.0
708
709 2005/11/20: [test] success in ruby 1.9.0 (2005-11-20) [i386-cygwin].
710 2005/11/20: [test] success in ruby 1.9.0 (2005-10-18) [i386-cygwin].
711 2005/11/20: [new]  add new config USE_CRNL_AS_LINE_TERMINATOR.
712                    (!!! NO SUPPORT experimental option !!!)
713 2005/11/15: [bug]  (thanks Allan Odgaard)
714                    tok->escape was not cleared in fetch_token_in_cc().
715                    ex. [\s&&[^\n]] makes wrong result.
716 2005/10/18: [impl] (thanks nobu)
717                    change sjis_mbc_enc_len()
718                    and node_new_cclass_by_codepoint_range() scope to static.
719 2005/09/05: [dist] remove link to MultiFind.
720 2005/09/01: [dist] add link to yagrep.
721
722 2005/08/23: Version 3.8.9
723
724 2005/08/23: [test] success in ruby 1.9.0 (2005-08-09) [i686-linux].
725 2005/08/23: [inst] fix Makefile.in for make ctest/ptest.
726
727 2005/08/23: Version 3.8.8
728
729 2005/08/23: [test] success in ruby 1.9.0 (2005-08-09) [i686-linux].
730 2005/08/23: [impl] split is_code_in_cc() from onig_is_code_in_cc().
731 2005/08/23: [impl] should check DATA_ENSURE() at OP_CCLASS_NODE in match_at().
732 2005/08/23: [impl] (thanks akr)
733                    add ONIG_OPTION_MAXBIT for escape conflict with
734                    Ruby's option.
735 2005/08/22: [impl] escape GCC 4.0 warnings for testc.c.
736 2005/08/22: [bug]  (thanks nobu, matz) [ruby-dev:26840]
737                    UTF-8 0xFE, 0xFF handling bug in code_is_in_cclass_node().
738                    abort on /\S*/ =~ "\xfe"
739 2005/08/22: [impl] escape GCC 4.0 warnings for sample/*.c.
740 2005/08/22: [impl] fix testconvu.rb.
741 2005/08/22: [impl] escape GCC 4.0 warnings.
742
743 2005/08/09: Version 3.8.7
744
745 2005/08/09: [test] success in ruby 1.9.0 (2005-08-09) [i686-linux].
746 2005/08/09: [bug]  (thanks Allan Odgaard)
747                    should not call enc_len() for s == range
748                    in onig_search().
749 2005/08/01: [dist] add mkdir $prefix, mkdir $exec_prefix to make install.
750
751 2005/07/27: Version 3.8.6
752
753 2005/07/27: [test] success in ruby 1.9.0 (2005-07-26) [i686-linux].
754 2005/07/27: [impl] update onig-config.in.
755 2005/07/26: [new]  (thanks Yen-Ju Chen)
756                    add Oniguruma configuration check program.
757                    (onig-config.in)
758
759 2005/07/14: Version 3.8.5
760
761 2005/07/14: [test] success in ruby 1.9.0 (2005-07-14) [i686-linux].
762 2005/07/11: [test] success in ruby 1.9.0 (2005-07-04) [i686-linux].
763 2005/07/11: [bug]  (thanks nobu) [ruby-dev:26505]
764                    invalid handling for /\c\x/ and /\C-\x/.
765                    fix fetch_escaped_value().
766 2005/07/05: [impl] (thanks Alexey Zakhlestine)
767                    escape GCC 4.0 warnings.
768
769 2005/07/01: Version 3.8.4
770
771 2005/07/01: [test] success in ruby 1.9.0 (2005-07-01) [i686-linux].
772 2005/06/30: [test] success in ruby 1.9.0 (2005-06-28) [i686-linux].
773 2005/06/30: [dist] add GB 18030 test to sample/encode.c.
774 2005/06/30: [impl] escape warning of gb18030_left_adjust_char_head().
775 2005/06/30: [new]  (contributed by KUBO Takehiro)
776                    add new character encoding ONIG_ENCODING_GB18030.
777 2005/06/30: [bug]  invalid ctype check for multibyte encodings.
778                    ("graph", "print")
779                    fix onigenc_mb2/4_is_code_ctype(), 
780                    eucjp_is_code_ctype() and sjis_is_code_ctype().
781 2005/06/30: [bug]  invalid conversion from code point to mbc in
782                    onigenc_mb4_code_to_mbc().
783
784 2005/06/28: Version 3.8.3
785
786 2005/06/28: [test] success in ruby 1.9.0 (2005-06-28) [i686-linux].
787 2005/06/27: [test] success in ruby 1.9.0 (2005-05-31) [i686-linux].
788 2005/06/27: [bug]  (thanks Wolfgang Nadasi-Donner)
789                    invalid check for never ending recursion.
790                    lower zero quantifier should be treated as
791                    a non-recursive call alternative.
792                    ex. /(?<bal>[^()]*(\(\g<bal>\)[^()]*)*)/
793 2005/06/15: [impl] add divide_ambig_string_node_sub().
794 2005/06/15: [dist] add a test to sample/encode.c.
795 2005/06/10: [new]  add ONIG_SYNTAX_PERL_NG. (Perl + named group)
796
797 2005/06/01: Version 3.8.2
798
799 2005/06/01: [test] success in ruby 1.9.0 (2005-05-31) [i686-linux].
800 2005/05/31: [dist] add doc/FAQ and doc/FAQ.ja.
801 2005/05/31: [impl] minor change in node_new().
802 2005/05/30: [test] success in ruby 1.9.0 (2005-05-11) [i686-linux].
803 2005/05/30: [bug]  (thanks Allan Odgaard)
804                    FreeNodeList null check should be on thread-atomic
805                    in node_new().
806
807 2005/05/11: Version 3.8.1
808
809 2005/05/11: [test] success in ruby 1.9.0 (2005-05-11) [i386-mswin32].
810 2005/05/11: [dist] update win32/Makefile (make 19).
811 2005/05/11: [test] success in ruby 1.9.0 (2005-05-11) [i686-linux].
812 2005/05/06: [test] success in ruby 1.9.0 (2005-05-06) [i686-linux].
813 2005/05/06: [impl] (thanks nobu) [ruby-core:4815]
814                    add #ifdef USE_VARIABLE_META_CHARS to goto label.
815 2005/04/25: [test] success in ruby 1.9.0 (2005-04-25) [i686-linux].
816 2005/04/25: [impl] change DEFAULT_WARN_FUNCTION and DEFAULT_VERB_WARN_FUNCTION
817                    to onig_rb_warn() and onig_rb_warning().
818
819 2005/04/15: Version 3.8.0
820
821 2005/04/15: [test] success in ruby 1.9.0 (2005-04-14) [i686-linux].
822 2005/04/01: [test] success in ruby 1.9.0 (2005-03-24) [i686-linux].
823 2005/04/01: [impl] (thanks Joe Orton)
824                    (thanks Moriyoshi Koizumi)
825                    many const-ification to many *.[ch] files.
826
827 2005/03/25: Version 3.7.2
828
829 2005/03/25: [test] success in ruby 1.9.0 (2005-03-24) [i686-linux].
830 2005/03/23: [test] success in ruby 1.9.0 (2005-03-20) [i686-linux].
831 2005/03/23: [test] success in ruby 1.9.0 (2005-03-08) [i686-linux].
832 2005/03/23: [new]  add ONIG_SYNTAX_ASIS.
833 2005/03/23: [new]  add ONIG_SYN_OP2_INEFFECTIVE_ESCAPE.
834 2005/03/09: [spec] rename MBCTYPE_XXX to RE_MBCTYPE_XXX. (GNU API)
835 2005/03/08: [test] success in ruby 1.9.0 (2005-03-08) [i686-linux].
836 2005/03/08: [impl] (thanks matz) [ruby-dev:25783]
837                    should not allocate memory for key data in st.c.
838                    move st_*_strend() functions from st.c. fixed some
839                    potential memory leaks.
840                    (imported from Ruby 1.9 2005-03-08)
841
842 2005/03/07: Version 3.7.1
843
844 2005/03/07: [test] success in ruby 1.9.0 (2005-03-07) [i686-linux].
845 2005/03/07: [impl] (thanks Rui Hirokawa)
846                    add ONIG_ESCAPE_UCHAR_COLLISION.
847                    rename UChar to OnigUChar in oniguruma.h.
848 2005/03/07: [impl] remove declarations for Ruby in oniggnu.h.
849 2005/03/05: [bug]  ANCHOR_ANYCHAR_STAR didn't work in onig_search().
850 2005/03/01: [dist] remove oniggnu.h from MANIFEST-RUBY.
851                    remove oniggnu.h from make 19.
852 2005/03/01: [bug]  (thanks matz) [ruby-dev:25778]
853                    uninitialized member (OptEnv.backrefed_status)
854                    was used. 
855
856 2005/02/19: Version 3.7.0
857
858 2005/02/19: [test] success in ruby 1.9.0 (2005-02-19) [i386-cygwin].
859 2005/02/19: [new]  (thanks Minero Aoki)
860                    add onig_region_set().
861 2005/02/19: [API]  change onig_region_init() to extern.
862 2005/02/19: [dist] remove reggnu.c from MANIFEST-RUBY.
863                    remove reggnu.c from make 19.
864 2005/02/19: [dist] update doc/API and doc/API.ja.
865 2005/02/19: [test] success in ruby 1.9.0 (2005-02-19) [i386-cygwin].
866 2005/02/19: [impl] (thanks Alexey Zakhlestine)
867                    change UChar* to const UChar* in oniguruma.h,
868                    regenc.h and regparse.h.
869 2005/02/13: [impl] change UChar* to const UChar* in oniguruma.h and
870                    onigposix.h and st.h.
871 2005/02/12: [test] success in ruby 1.9.0 (2005-02-11) [i386-cygwin].
872 2005/02/12: [bug]  (thanks nobu) [ruby-dev:25676]
873                    type_cclass_hash() fix overrun.
874 2005/02/09: [test] success in ruby 1.9.0 (2005-02-09) [i686-linux].
875 2005/02/09: [spec] add RE_OPTION_FIND_NOT_EMPTY etc.. to oniggnu.h.
876 2005/02/09: [dist] remove hash.c.patch.
877 2005/02/07: [impl] remove re_mbctab, mbctab_ascii etc...
878                    (USE_COMPATIBILITY_FOR_RUBY_EXTENSION_LIBRARY)
879
880 2005/02/04: Version 3.6.0
881
882 2005/02/04: [test] success in ruby 1.9.0 (2005-02-04) [i686-linux].
883 2005/02/01: [bug]  add key_free() call to st_free_table().
884 2005/02/01: [new]  add onig_get_default_ambig_flag() and
885                    onig_set_default_ambig_flag().
886 2005/02/01: [dist] update MANIFEST-RUBY.
887 2005/01/31: [test] success in ruby 1.9.0 (2005-01-29) [i686-linux].
888 2005/01/31: [spec] remove ONIGENC_AMBIGUOUS_MATCH_COMPOUND
889                    from ONIGENC_AMBIGUOUS_MATCH_DEFAULT.
890 2005/01/31: [dist] update Makefile.in (make 19).
891 2005/01/29: [memo] (thanks Kazuo Saito)
892                    Oniguruma 3.5.4 was merged to Ruby 1.9.0.
893 2005/01/28: [impl] (thanks UK-taniyama)
894                    add extern "C" { } directive to oniguruma.h, oniggnu.h
895                    and onigposix.h for C++.
896 2005/01/25: [impl] remove nested function call for xxx_code_to_mbclen().
897                    (euc_kr.c, euc_tw.c, big5.c)
898
899 2005/01/19: Version 3.5.4
900
901 2005/01/19: [test] success in ruby 1.9.0 (2005-01-05) [i686-linux].
902 2005/01/19: [bug]  (thanks Isao Sonobe)
903                    callback function argument name_end of onig_foreach_name()
904                    was wrong.
905                    name key of name table should be null terminated for 
906                    character encoding length.
907                    add strdup_with_null(), rename onig_strdup() to k_strdup().
908                    use e->name_len in i_names().
909 2005/01/17: [impl] (thanks UK-taniyama)
910                    add HAVE_SYS_TYPES_H to config.h.in.
911
912 2005/01/13: Version 3.5.3
913
914 2005/01/13: [test] success in ruby 1.9.0 (2005-01-05) [i686-linux].
915 2005/01/13: [bug]  ignore case match bug.
916                    ex. /s+/iu.match("SSSSS") ==> [4..5]
917                    fix OP_EXACT1_IC, OP_EXACTN_IC process.
918 2005/01/13: [bug]  (thanks Isao Sonobe)
919                    ignore case match bug.
920                    ex. /is/iu.match("ss") fail.
921                    fix str_lower_case_match() etc.
922
923 2005/01/05: Version 3.5.2
924
925 2005/01/05: [test] success in ruby 1.9.0 (2005-01-05) [i686-linux].
926 2005/01/05: [test] success in ruby 1.9.0 (2004-12-16) [i686-linux].
927 2005/01/05: [bug]  (thanks Isao Sonobe)
928                    ignore case match bug.
929                    ex. /s+/iu.match("sssss") ==> [4..5]
930                    fix OP_EXACT1_IC, OP_EXACTN_IC process.
931 2005/01/05: [bug]  (thanks Isao Sonobe)
932                    group name table should be renumbered.
933                    add onig_renumber_name_table().
934 2004/12/24: [dist] remove file onigcmpt200.h.
935
936 2004/12/17: Version 3.5.1
937
938 2004/12/17: [dist] add INSTALL-RUBY to archive.
939 2004/12/16: [test] success in ruby 1.9.0 (2004-12-16) [i686-linux].
940 2004/12/16: [dist] update hash.c.patch.
941 2004/12/15: [bug]  (thanks matz)
942                    char > 127 should be casted to unsigned char. (utf8.c)
943 2004/12/13: [impl] add HAVE_PROTOTYPES and HAVE_STDARG_PROTOTYPES definition
944                    to oniguruma.h in the case __cplusplus.
945 2004/12/06: [dist] update doc/RE and doc/RE.ja.
946 2004/12/03: [impl] (thanks nobu)
947                    st.h fix prototype for C++.
948
949 2004/12/03: Version 3.5.0
950
951 2004/12/02: [test] success in ruby 1.9.0 (2004-12-02) [i686-linux].
952 2004/12/01: [test] success in ruby 1.9.0 (2004-12-01) [i386-mswin32].
953 2004/12/01: [dist] add make targets 19 and 19up to win32/Makefile.
954 2004/12/01: [test] success in ruby 1.9.0 (2004-12-01) [i386-cygwin].
955 2004/12/01: [test] success in ruby 1.9.0 (2004-12-01) [i686-linux].
956 2004/12/01: [impl] double cast for escape warning in Cygwin.
957                   (HashDataType* )((void* )(&e)) in regparse.c
958 2004/12/01: [test] success in ruby 1.9.0 (2004-11-30) [i686-linux].
959 2004/12/01: [tune] change implementation of clear_opt_map_info().
960                    (which was 10-16% cost in gprof result for my test program)
961 2004/12/01: [dist] remove regex.c from distribution files.
962 2004/11/30: [memo] remove targets 16 and 18 from Makefile.in.
963 2004/11/30: [test] success in ruby 1.9.0 (2004-11-30) [i686-linux].
964 2004/11/30: [inst] add "cp -p st.[ch] st.[ch].ruby_orig" to "make 19".
965 2004/11/30: [tune] map_position_value() return 20 if code is 0
966                    and minimum enclen > 1.
967 2004/11/30: [test] success in ruby 1.9.0 (2004-11-29) [i686-linux].
968 2004/11/30: [impl] minor changes for multi-thread in regexec.c and regcomp.c.
969 2004/11/30: [impl] change THREAD_PASS_LIMIT_COUNT value from 10 to 8.
970 2004/11/30: [impl] add THREAD_ATOMIC_XXX to FreeNodeList access in regparse.c
971 2004/11/29: [impl] add USE_MULTI_THREAD_SYSTEM.
972 2004/11/29: [memo] add hash.c.patch to CVS.
973 2004/11/29: [dist] change mail address to 'sndgk393 AT ...'
974 2004/11/29: [dist] add -s option (silent mode) to test.rb.
975 2004/11/29: [tune] change THRESHOLD_RANGE_NUM_FOR_SHARE_CCLASS value
976                    from 20 to 8.
977 2004/11/29: [inst] add make target "19up".
978 2004/11/29: [dist] change Oniguruma Home Page URL.
979 2004/11/29: [impl] remove onig_is_in_code_range_array().
980 2004/11/29: [dist] fix doc/RE and RE.ja (character types).
981 2004/11/26: [dist] fix win32/Makefile.
982 2004/11/26: [dist] fix doc/RE and RE.ja (multibyte character types).
983 2004/11/26: [impl] add onig_free_shared_cclass_table().
984 2004/11/26: [impl] move definition USE_UNICODE_FULL_RANGE_CTYPE to regenc.h.
985 2004/11/26: [impl] add opcode OP_CCLASS_NODE.
986 2004/11/26: [impl] move definition of CClassNode to regint.h.
987 2004/11/26: [impl] add type PointerType in regint.h.
988 2004/11/25: [impl] remove ONIGENC_CTYPE_MOD_NOT.
989 2004/11/25: [impl] rename onig_node_new_cclass_by_codepoint_range to
990                    node_new_cclass_by_codepoint_range.
991 2004/11/25: [impl] remove get_type_cc_node method from OnigEncodingType.
992 2004/11/25: [impl] move implementation of shared char-class from enc/*.c
993                    to regparse.c.
994 2004/11/25: [dist] add hash.c.patch for Ruby 1.9 hash.c change.
995 2004/11/22: [impl] change utf8_get_type_node().
996 2004/11/22: [impl] add ONIGENC_CTYPE_MOD_NOT.
997 2004/11/22: [bug]  (thanks MIYAMUKO Katsuyuki)
998                    ruby make test fail in HP-UX B.11.23 ia64.
999                    should use tok->u.code instead of tok->u.c in
1000                    the case of TK_CODE_POINT.
1001 2004/11/19: [bug]  (thanks Yoshida Masato)
1002                    invalid multibyte code causes segmentation fault.
1003                    ex.  /[\xFF-\xFF]/u
1004 2004/11/19: [bug]  (thanks Yoshida Masato)
1005                    illegal check in char-class range in UTF-8.
1006                    ex.  s = "[\xC2\xA0-\xC3\xBE]"
1007                         p(Regexp.new(s, nil, "u") =~ "\xC3\xBE")
1008 2004/11/18: [impl] add onig_node_new_cclass_by_codepoint_range().
1009 2004/11/18: [impl] remove OnigCodePointRange type. (use OnigCodePoint[].)
1010 2004/11/17: [bug]  (thanks nobu)
1011                    abort in "a".gsub(/a\Z/, "")
1012                    fix ONIGENC_STEP_BACK() argument in onig_search().
1013 2004/11/16: [impl] add key2 member to st_table_entry in st.[ch].
1014                    change API of st for non-null terminated string key.
1015 2004/11/16: [impl] add get_type_cc_node method to OnigEncodingType.
1016 2004/11/15: [impl] add st.h and st.c from Ruby 1.9.
1017                    use st-hash always.
1018 2004/11/12: [impl] change member 'not' of CClassNode to 'flags'.
1019                    add flags FLAG_CCLASS_NOT and FLAG_CCLASS_SHARE.
1020 2004/11/12: [impl] add onig_is_in_code_range_array() to enc/unicode.c.
1021 2004/11/12: [impl] fix CRWord in enc/unicode.c and MBWord in enc/utf8.c.
1022 2004/11/11: [bug]  fix enc/utf8.c.
1023                    size 0 array initializer was compile error in VC++.
1024 2004/11/09: [inst] (thanks Hiroki YAGITA)
1025                    change installed file mode to 0644.
1026 2004/11/09: [bug]  (thanks UK-taniyama)
1027                    wrong definitions GET_RELADDR_INC(), GET_ABSADDR_INC()
1028                    etc... (NOT PLATFORM_UNALIGNED_WORD_ACCESS)
1029 2004/11/09: [impl] type cast in regexec() for remove compile time warning.
1030                    (WIN32, regposix.c)
1031 2004/11/08: [spec] fix Unicode character types.
1032                    0x00ad (soft hyphen) should be [:cntrl:] and [:space:] type.
1033                    [0x0009..0x000d], 0x0085 should be [:print:] type.
1034                    0x00ad should not be [:punct:] type.
1035 2004/11/08: [inst] fix Makefile.in. (for make ctest/ptest/testcu)
1036 2004/11/06: [impl] (thanks Kazuo Saito)
1037                    too many alternatives pattern causes core dump.
1038                    change implementation of onig_node_free().
1039 2004/11/05: [spec] rename ONIGERR_END_PATTERN_AT_BACKSLASH to
1040                    ONIGERR_END_PATTERN_AT_ESCAPE.
1041 2004/11/05: [impl] (thanks matz)
1042                    escape compile time warnings for x86-64 Linux.
1043                    StackIndex type int -> long
1044 2004/11/05: [memo] (thanks Kazuo Saito)
1045                    Oniguruma 3.4.0 was merged to Ruby 1.9.0.
1046
1047 2004/10/30: Version 3.4.0
1048
1049 2004/10/30: [test] success in ruby 1.9.0 (2004-09-24) [i686-linux].
1050 2004/10/30: [new]  add hexadecimal digit char type. (\h, \H)
1051                    syntax: ONIG_SYN_OP2_ESC_H_XDIGIT
1052 2004/10/30: [bug]  (thanks Guy Decoux)
1053                    reluctant infinite repeat bug.
1054                    ex. /^[a-z]{2,}?$/.match("aaa") fail.
1055                    fix OP_REPEAT_INC_NG process in match_at().
1056
1057 2004/10/18: Version 3.3.1
1058
1059 2004/10/18: [test] success in ruby 1.9.0 (2004-09-24) [i686-linux].
1060 2004/10/18: [impl] (thanks Imai Yasumasa)
1061                    enclose #include <sys/types.h> by #ifndef __BORLANDC__.
1062 2004/10/18: [bug]  (thanks Imai Yasumasa)
1063                    memory access violation in select_opt_exact_info().
1064 2004/09/25: [dist] fix doc/API and doc/API.ja.
1065 2004/09/25: [bug]  fix OP_SEMI_END_BUF process in match_at() for
1066                    the case USE_NEWLINE_AT_END_OF_STRING_HAS_EMPTY_LINE
1067                    is not defined.
1068
1069 2004/09/17: Version 3.3.0
1070
1071 2004/09/17: [dist] add COPYING to program source files.
1072 2004/09/17: [test] success in ruby 1.9.0 (2004-07-23) [i686-linux].
1073 2004/09/17: [bug]  (thanks Isao Sonobe)
1074                    memory access violations in xxx_mbc_enc_len(),
1075                    and xxx_mbc_to_normalize() and
1076                    xxx_left_adjust_char_head().
1077                    add string range check in match_at() and onig_search().
1078 2004/09/08: [dist] change mail address format.(kosako AT sofnec ...)
1079
1080 2004/09/04: Version 3.2.9
1081
1082 2004/09/04: [test] success in ruby 1.9.0 (2004-07-23) [i686-linux].
1083 2004/09/04: [bug]  (thanks Bob Kerstetter and Richard Koch)
1084                    search fail in ignore case mode.
1085                    fix str_lower_case_match().
1086 2004/09/04: [inst] (thanks Isao Sonobe)
1087                    clear sample directory in 'make clean'.
1088 2004/09/04: [bug]  fix ONIGENC_AMBIGUOUS_MATCH_COMPOUND/ASCII/NONASCII
1089                    meanings in XXXXX_mbc_to_normalize() and
1090                    XXXXX_is_mbc_ambiguous().
1091 2004/08/28: [bug]  fix ONIGENC_AMBIGUOUS_MATCH_COMPOUND/ASCII/NONASCII
1092                    meanings in iso_8859_XX_mbc_to_normalize() and
1093                    iso_8859_XX_is_mbc_ambiguous().
1094
1095 2004/08/24: Version 3.2.8
1096
1097 2004/08/24: [test] success in ruby 1.9.0 (2004-07-23) [i686-linux].
1098 2004/08/24: [spec] add ONIG_SYN_FIXED_INTERVAL_IS_GREEDY_ONLY.
1099                    /a{n}?/ == /(?:a{n})?/
1100 2004/08/24: [dist] fix doc/RE and doc/RE.ja.
1101 2004/08/24: [bug]  (thanks starfish)
1102                    memory leak in set_optimize_exact_info().
1103
1104 2004/08/21: Version 3.2.7
1105
1106 2004/08/21: [test] success in ruby 1.8.2 (2004-07-28) [i686-linux].
1107                    (1.8.2 preview2)
1108 2004/08/21: [test] success in ruby 1.9.0 (2004-07-23) [i686-linux].
1109 2004/08/21: [bug]  (thanks Isao Sonobe) (thanks kage)
1110                    memory access violation in bm_search_notrev().
1111                    (forgotten to merge from 2.X)
1112
1113 2004/07/24: Version 3.2.6
1114
1115 2004/07/24: [test] success in ruby 1.9.0 (2004-07-23) [i686-linux].
1116 2004/07/24: [test] success in ruby 1.8.2 (2004-07-16) [i686-linux].
1117 2004/07/24: [bug]  fix warnings for regexec.c. (gcc 2.91.66)
1118 2004/07/24: [memo] change version control system from Subversion
1119                    to CVS 1.11.17.
1120 2004/07/20: [bug]  (thanks Isao Sonobe)
1121                    illegal result in negative character class in ignore case
1122                    mode. fix pair-ambig-codes process in parse_exp().
1123                    ex. /[^a]/i.match("A")
1124 2004/07/20: [bug]  (thanks Isao Sonobe)
1125                    undefined bytecode error happens in UTF-16BE etc..
1126                    compile_length_cclass_node() was not consistent with
1127                    compile_cclass_node().
1128
1129 2004/07/01: Version 3.2.5
1130
1131 2004/07/01: [test] success in ruby 1.8.2 (2004-06-23) [i686-linux].
1132 2004/07/01: [new]  add onig_get_syntax_{op,op2,behavior,options}.
1133 2004/07/01: [bug]  (thanks Isao Sonobe)
1134                    invalid result in onig_capture_tree_traverse().
1135                    fix make_capture_history_tree().
1136
1137 2004/06/29: Version 3.2.4
1138
1139 2004/06/29: [test] success in ruby 1.8.2 (2004-06-23) [i686-linux].
1140 2004/06/29: [new]  (thanks Isao Sonobe)
1141                    add onig_number_of_captures().
1142
1143 2004/06/25: Version 3.2.3
1144
1145 2004/06/25: [test] success in ruby 1.8.2 (2004-06-23) [i686-linux].
1146 2004/06/25: [bug]  (thanks Isao Sonobe)
1147                    invalid result in onig_capture_tree_traverse().
1148                    fix make_capture_history_tree().
1149
1150 2004/06/24: Version 3.2.2
1151
1152 2004/06/24: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
1153 2004/06/24: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
1154 2004/06/24: [test] success in ruby 1.8.2 (2004-06-23) [i686-linux].
1155 2004/06/24: [new]  (thanks Isao Sonobe)
1156                    add onig_number_of_capture_histories().
1157 2004/06/24: [bug]  (thanks Isao Sonobe)
1158                    invalid char position match in UTF-16 and UTF-32.
1159                    add onigenc_always_false_is_allowed_reverse_match().
1160
1161 2004/06/17: Version 3.2.1
1162
1163 2004/06/17: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
1164 2004/06/17: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
1165 2004/06/17: [test] success in ruby 1.8.2 (2004-05-18) [i686-linux].
1166 2004/06/17: [impl] should not use OP_REPEAT for (...)? even if target size
1167                    is long.
1168 2004/06/17: [bug]  (thanks nobu) [ruby-dev:23703]
1169                    should use STACK_AT() instead of stkp in OP_REPEAT_INC.
1170                    add IN_VAR_REPEAT flag in setup_tree().
1171 2004/06/16: [impl] change select_opt_exact_info() to use ByteValTable[].
1172 2004/06/16: [impl] change map_position_value() table values.
1173 2004/06/14: [impl] (thanks John Carter)
1174                    RelAddrType, AbsAddrType and LengthType change
1175                    from short int to int type for the very long string match.
1176 2004/06/14: [bug]  (thanks Greg A. Woods)
1177                    fix nmatch argument of regexec() is smaller than 
1178                    reg->num_mem + 1 case. (POSIX API)
1179 2004/06/14: [spec] (thanks Greg A. Woods)
1180                    set pmatch to NULL if nmatch is 0 in regexec(). (POSIX API)
1181
1182 2004/06/10: Version 3.2.0
1183
1184 2004/06/10: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
1185 2004/06/10: [test] success in ruby 1.9.0 (2004-05-27) [i386-mswin32].
1186 2004/06/10: [test] success in ruby 1.8.2 (2004-05-18) [i686-linux].
1187 2004/06/10: [dist] add README.ja.
1188 2004/06/10: [new]  add onig_copy_encoding().
1189 2004/06/10: [API]  add encoding argument to onig_set_meta_char().
1190                    add meta_char_table member to OnigEncodingType.
1191 2004/06/08: [dist] add doc/API.ja.
1192 2004/06/07: [API]  add num_of_elements member to OnigCompileInfo.
1193 2004/05/29: [memo] (thanks Kazuo Saito)
1194                    Oniguruma 3.1.0 was merged to Ruby 1.9.0.
1195 2004/05/26: [impl] rename NST_SIMPLE_REPEAT to NST_STOP_BT_SIMPLE_REPEAT.
1196 2004/05/26: [impl] doesn't need to check that target's simple repeat-ness
1197                    for EFFECT_MEMORY type node in setup_tree().
1198
1199 2004/05/25: Version 3.1.0
1200
1201 2004/05/25: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
1202 2004/05/25: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
1203 2004/05/25: [test] success in ruby 1.9.0 (2004-05-23) [i686-linux].
1204 2004/05/25: [test] success in ruby 1.8.2 (2004-05-18) [i686-linux].
1205 2004/05/25: [bug]  (thanks Masahiro Sakai) [ruby-dev:23560]
1206                    ruby -ruri -ve 'URI::ABS_URI =~
1207                                     "http://example.org/Andr\xC3\xA9"'
1208                    nested STK_REPEAT type stack can't backtrack repeat_stk[].
1209                    add OP_REPEAT_INC_SG and OP_REPEAT_INC_NG_SG.
1210 2004/05/25: [new]  support UTF-32LE. (ONIG_ENCODING_UTF32_LE)
1211 2004/05/25: [new]  support UTF-32BE. (ONIG_ENCODING_UTF32_BE)
1212 2004/05/24: [impl] divide enc/utf16.c to utf16_be.c and utf16_le.c.
1213 2004/05/24: [impl] add enc/unicode.c.
1214 2004/05/24: [API]  change calling sequences of onig_new_deluxe() and
1215                    onig_recompile_deluxe().
1216                    define OnigCompileInfo type.
1217 2004/05/21: [impl] perform ensure process for rb_trap_exec() in match_at().
1218                    add onig_exec_trap() and CHECK_INTERRUPT_IN_MATCH_AT.
1219 2004/05/21: [impl] add regex status check to onig_match().
1220 2004/05/21: [new]  add onig_get_capture_tree() and
1221                    onig_capture_tree_traverse().
1222 2004/05/20: [spec] (thanks Isao Sonobe)
1223                    capture history return capture data tree.
1224                    (see sample/listcap.c)
1225 2004/05/19: [bug]  (thanks Simon Strandgaard)
1226                    Control-C does not work in matching process on Ruby.
1227                    add calling of CHECK_INTERRUPT into match_at().
1228                    ex. /<(?:[^">]+|"[^"]*")+>/.match('<META http-equiv= \
1229                        "Content-Type content="text/html; charset=iso-8859-1">')
1230 2004/05/19: [bug]  (thanks Simon Strandgaard)
1231                    define virtual codepoint values for invalid encoding
1232                    byte 0xfe and 0xff in UTF-8.
1233                    ex. /\w+/u.match("%a\xffb\xfec%") ==> "a"
1234 2004/05/19: [spec] (thanks Simon Strandgaard)
1235                    too big backref number should be treated as a sequence of
1236                    an octal char and number digits.
1237                    ex. /b\3777\c/.match("b\3777\c")
1238 2004/05/17: [spec] rename encoding names "UTF-16 BE" and "UTF-16 LE"
1239                    to "UTF-16BE" and "UTF-16LE".
1240 2004/05/17: [impl] move ismbchar() and mbclen() from oniguruma.h to oniggnu.h.
1241 2004/05/17: [impl] rename onigenc_single_byte_is_allowed_reverse_match() to
1242                    onigenc_always_true_is_allowed_reverse_match().
1243
1244 2004/05/14: Version 3.0.0
1245
1246 2004/05/14: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
1247 2004/05/14: [test] success in ruby 1.9.0 (2004-05-14) [i686-linux].
1248 2004/05/14: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
1249                    (* need to edit parse.y:
1250                        register int c; ---> int c; in yylex())
1251 2004/05/14: [impl] add regext.c.
1252 2004/05/14: [spec] KOI8 is not included in library archive by default setup.
1253 2004/05/14: [impl] implementation changes are completed for all encoding files.
1254 2004/05/12: [impl] add divide_ambig_string_node().
1255                    ambiguous string is divided and normalized before
1256                    optimization and compilation process.
1257 2004/05/11: [dist] remove INSTALL-RUBY from distribution.
1258 2004/04/28: [memo] (thanks Kazuo Saito)
1259                    Oniguruma 2.2.8 was merged to Ruby 1.9.0.
1260 2004/04/26: [spec] change value DEFAULT_MATCH_STACK_LIMIT_SIZE = 0 : unlimited
1261 2004/04/26: [new]  add onig_get_match_stack_limit_size() and
1262                    onig_set_match_stack_limit_size().
1263 2004/04/26: [bug]  add error check to re.c.181.patch and re.c.168.patch.
1264 2004/04/23: [impl] remove ctype_support_level from OnigEncodingType.
1265 2004/04/22: [spec] allow the range from single byte char to multibyte char in
1266                    character class for implementation reason.
1267                    ex. /[a-\xbb\xcc]/ in EUC-JP encoding.
1268 2004/04/21: [impl] remove max_enc_len_by_first_byte() from OnigEncodingType.
1269 2004/04/20: [new]  add onig_copyright().
1270 2004/04/20: [impl] add regversion.c.
1271 2004/04/15: [new]  add onig_get_ambig_flag().
1272 2004/04/14: [bug]  (thanks Isao Sonobe)
1273                    undefined bytecode error happens if ONIG_OPTION_FIND_LONGEST
1274                    is set.
1275                    should finish matching process if find-condition
1276                    is fail at OP_END in match_at().
1277 2004/04/12: [impl] add ambig_flag to regex_t.
1278 2004/04/09: [impl] move onig_set_meta_char() to regsyntax.c.
1279 2004/04/09: [bug]  (thanks HIROSE Masaaki) fix onig_version().
1280 2004/04/08: [impl] add regsyntax.c.
1281 2004/04/07: [new]  support UTF-16 LE. (ONIG_ENCODING_UTF16_LE)
1282 2004/04/05: [impl] add ONIGENC_CTYPE_NEWLINE.
1283 2004/04/05: [memo] (thanks Kazuo Saito)
1284                    Oniguruma 2.2.6 was merged to Ruby 1.9.0.
1285 2004/04/02: [memo] Version 2.2.6 was released.
1286 2004/03/26: [new]  support UTF-16 BE. (ONIG_ENCODING_UTF16_BE)
1287 2004/03/25: [spec] support non 8-bit encodings.
1288 2004/03/16: [memo] 2.X branch for 8-bit encodings only.
1289
1290 2004/03/16: Version 2.2.5
1291
1292 2004/03/16: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
1293 2004/03/16: [test] success in ruby 1.9.0 (2004-02-24) [i686-linux].
1294 2004/03/16: [impl] add property name to error message of
1295                    ONIGERR_INVALID_CHAR_PROPERTY_NAME.
1296 2004/03/16: [spec] allow prefix 'Is' for \p{...} in ONIG_SYNTAX_PERL.
1297                    add syntax op. ONIG_SYN_OP2_CHAR_PROPERTY_PREFIX_IS.
1298 2004/03/15: [dist] add sample/syntax.c.
1299 2004/03/15: [spec] support NOT op. in char property. \p{^...}, \P{^...}.
1300                    add syntax op. ONIG_SYN_OP2_ESC_P_BRACE_CIRCUMFLEX_NOT.
1301 2004/03/15: [spec] rename ONIG_SYN_OP2_ESC_P_CHAR_PROPERTY to
1302                    ONIG_SYN_OP2_ESC_P_BRACE_CHAR_PROPERTY.
1303 2004/03/10: [impl] move ONIGERR_XXX from regenc.h to oniguruma.h,
1304                    rename ONIGERR_XXX to ONIGENCERR_XXX in regenc.h.
1305 2004/03/08: [impl] (thanks eban)
1306                    replace defined(__CYGWIN__) to defined(__GNUC__).
1307 2004/03/08: [bug]  (thanks eban) [ruby-dev:23172]
1308                    need to separate initialization for bcc32.
1309 2004/03/06: [memo] (thanks Kazuo Saito)
1310                    Oniguruma 2.2.4 was merged to Ruby 1.9.0.
1311 2004/03/05: [API]  change second argument type of onig_set_meta_char()
1312                    from unsigned int to OnigCodePoint.
1313 2004/03/05: [dist] (thanks Kazuo Saito)
1314                    add MANIFEST-RUBY.
1315
1316 2004/03/04: Version 2.2.4
1317
1318 2004/03/04: [impl] (thanks Moriyoshi Koizumi)
1319                    fix many warnings in Win32 VC++ with /W3 option.
1320
1321 2004/03/02: Version 2.2.3
1322
1323 2004/03/02: [bug]  (thanks Isao Sonobe)
1324                    return invalid capture region value if capture history
1325                    is used. (OP_MEMORY_END_PUSH_REC bug)
1326                    ex. /\g<p>(?@<p>\(\g<s>\)){0}(?<s>(?:\g<p>)*|){0}/
1327                        .match("((())())")
1328 2004/03/02: [impl] (thanks Kazuo Saito)
1329                    add :nodoc: to onig_stat_print() for RDoc.
1330 2004/03/02: [impl] don't use ONIG_SOURCE_IS_WRAPPED.
1331
1332 2004/02/27: Version 2.2.2
1333
1334 2004/02/27: [impl] fix the position of onig_stat_print().
1335 2004/02/27: [impl] define ONIG_RUBY_DEFINE_GLOBAL_FUNCTION() in regint.h
1336                    for ignored by RDoc.
1337
1338 2004/02/26: Version 2.2.1
1339
1340 2004/02/26: [bug]  [bugs.php.net:#26677] (thanks behrens)
1341                    invalid definition at onig_error_code_to_str()
1342                    in the case of NOT HAVE_STDARG_PROTOTYPES.
1343
1344 2004/02/25: Version 2.2.0
1345
1346 2004/02/25: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
1347 2004/02/24: [test] success in ruby 1.9.0 (2004-02-24) [i686-linux].
1348 2004/02/24: [bug]  undefined IS_BLANK() and IS_GRAPH() was used in
1349                    onigenc_is_code_ctype() in the case of Ruby M17N.
1350 2004/02/24: [new]  support ISO-8859-16. (ONIG_ENCODING_ISO_8859_16)
1351 2004/02/24: [bug]  should not fold match for 0xdf in iso8859_6.c.
1352 2004/02/24: [new]  support ISO-8859-14. (ONIG_ENCODING_ISO_8859_14)
1353 2004/02/23: [new]  support ISO-8859-13. (ONIG_ENCODING_ISO_8859_13)
1354 2004/02/23: [new]  support ISO-8859-10. (ONIG_ENCODING_ISO_8859_10)
1355 2004/02/20: [bug]  fix iso_8859_4_mbc_is_case_ambig().
1356 2004/02/20: [new]  support ISO-8859-9. (ONIG_ENCODING_ISO_8859_9)
1357 2004/02/19: [bug]  correct ctype tables for ISO-8859-3, ISO-8859-4, 
1358                    ISO-8859-6, ISO-8859-7, ISO-8859-8, KOI8_R.
1359 2004/02/18: [bug]  wrong replaced name OnigSyntaxGnuOnigex.
1360 2004/02/17: [spec] check capture status for empty infinite loop.
1361                    [ruby-dev:20224] etc...
1362                    ex. /(?:\1a|())*/.match("a"),
1363                        /(?:()|()|()|(x)|()|())*\2b\5/.match("b")
1364                    add USE_INFINITE_REPEAT_MONOMANIAC_MEM_STATUS_CHECK.
1365                    add OP_NULL_CHECK_END_MEMST, OP_NULL_CHECK_END_MEMST_PUSH.
1366                    add stack type STK_NULL_CHECK_END.
1367 2004/02/13: [impl] add OnigEncodingEUC_CN to enc/euc_kr.c.
1368 2004/02/13: [bug]  (thanks Simon Strandgaard)
1369                    parsing of nested repeat was invalid.
1370                    ex. /ab{2,3}*/ was /(?:a(?:b{2,3}))*/,
1371                        should be /a(?:b{2,3}*)/
1372 2004/02/12: [bug]  (thanks Simon Strandgaard)
1373                    OP_REPEAT_INC_NG process in match_at() is wrong.
1374                    ex. bad match /a.{0,2}?a/ =~ "0aXXXa0"
1375 2004/02/12: [bug]  (thanks Simon Strandgaard)
1376                    wrong fetch after (?x) option.  ex. "(?x)\ta .\n+b"
1377 2004/02/12: [bug]  (thanks Simon Strandgaard)
1378                    [\^] is not a empty char class.
1379 2004/02/09: [new]  add onig_set_syntax_op(), onig_set_syntax_op2(),
1380                    onig_set_syntax_behavior(), onig_set_syntax_options().
1381 2004/02/06: [dist] add a new target 'site' to Makefile.in.
1382 2004/02/06: [dist] add index.html.
1383 2004/02/03: [bug]  oniggnu.h was not installed by 'make install'.
1384
1385 2004/02/02: Version 2.1.0
1386
1387 2004/02/02: [test] success in ruby 1.9.0 (2004-02-02) [i686-linux].
1388 2004/02/02: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
1389 2004/02/02: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
1390 2004/02/02: [new]  support ISO-8859-11. (ONIG_ENCODING_ISO_8859_11)
1391 2004/02/02: [new]  support ISO-8859-5. (ONIG_ENCODING_ISO_8859_5)
1392 2004/02/02: [impl] should check single byte encoding or not in and_cclass()
1393                    and or_cclass().
1394 2004/01/30: [dist] add oniggnu.h.
1395 2004/01/30: [bug]  ISO-8859-7 0xb7 (middle dot) is Punct type.
1396 2004/01/30: [new]  support ISO-8859-8. (ONIG_ENCODING_ISO_8859_8)
1397 2004/01/29: [new]  support ISO-8859-7. (ONIG_ENCODING_ISO_8859_7)
1398 2004/01/29: [new]  support ISO-8859-6. (ONIG_ENCODING_ISO_8859_6)
1399 2004/01/28: [new]  support KOI8-R. (ONIG_ENCODING_KOI8_R)
1400 2004/01/28: [new]  support KOI8. (ONIG_ENCODING_KOI8)
1401 2004/01/27: [dist] rename enc/isotable.c to enc/mktable.c.
1402 2004/01/27: [new]  support ISO-8859-4. (ONIG_ENCODING_ISO_8859_4)
1403 2004/01/26: [new]  support ISO-8859-3. (ONIG_ENCODING_ISO_8859_3)
1404 2004/01/26: [bug]  EncISO_8859_{1,15}_CtypeTable[256] was wrong.
1405                    (0x80 - 0xff is not ASCII)
1406 2004/01/23: [new]  support ISO-8859-2. (ONIG_ENCODING_ISO_8859_2)
1407 2004/01/23: [dist] add enc/isotable.c.
1408 2004/01/22: [new]  support EUC-TW. (ONIG_ENCODING_EUC_TW)
1409 2004/01/22: [bug]  definition of GET_ALIGNMENT_PAD_SIZE() and
1410                    ALIGNMENT_RIGHT() was wrong.
1411                    type casting should be unsigned int, not int.
1412 2004/01/22: [impl] add defined(__x86_64) || defined(__x86_64__)
1413                    to unaligned word access condition. (AMD64 ?)
1414 2004/01/21: [dist] rename enc/eucjp.c to enc/euc_jp.c.
1415 2004/01/21: [new]  support EUC-KR. (ONIG_ENCODING_EUC_KR)
1416 2004/01/20: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
1417 2004/01/20: [dist] change Makefile.in.
1418 2004/01/20: [spec] add \p{...}, \P{...} in char class.
1419 2004/01/20: [new]  character property operators \p{...}, \P{...}.
1420                    supported in ONIG_SYNTAX_JAVA and ONIG_SYNTAX_PERL.
1421 2004/01/19: [spec] allow /a{,n}/ as /a{0,n}/. (but don't allow /a{,}/)
1422 2004/01/19: [dist] rename onigcomp200.h to onigcmpt200.h.
1423 2004/01/19: [dist] update re.c.168.patch. svn add re.c.181.patch.
1424 2004/01/16: [dist] update sample/*.c for new API.
1425 2004/01/16: [dist] add onigcomp200.h. (for old API compatibility)
1426 2004/01/16: [dist] update documents API, RE and RE.ja.
1427 2004/01/16: [spec] change prefix REG_ -> ONIG_, regex_ onig_,
1428                    ENC_ -> ONIGENC, enc_ -> onigenc_.
1429 2004/01/15: [impl] rename ENC_IS_MBC_E_WORD() to ENC_IS_MBC_WORD().
1430                    rename ENC_CTYPE_SUPPORT_LEVEL_SB_ONLY to
1431                    ENC_CTYPE_SUPPORT_LEVEL_SB.
1432 2004/01/14: [impl] rename UNALIGNED_WORD_ACCESS to
1433                    PLATFORM_UNALIGNED_WORD_ACCESS.
1434 2004/01/14: [impl] change MATCH_STACK_LIMIT_SIZE value from 200000 to 500000.
1435 2004/01/13: [impl] remove ENC_CODE_TO_MBC_FIRST(enc,code) in regenc.h.
1436                    remove code_to_mbc_first member in RegCharEncodingType.
1437 2004/01/13: [impl] remove head byte bitset information in cclass->mbuf.
1438 2003/12/26: [impl] change macro name ismb_xxxx() in enc/*.c for
1439                    escape conflict.
1440
1441 2003/12/24: Version 2.0.0
1442
1443 2003/12/24: [spec] ignore case option is effective to numbered char.
1444                    ex. /\x61/i =~ "A"
1445 2003/12/24: [test] success in ruby 1.8.1 (2003-12-24) [i686-linux].
1446 2003/12/24: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
1447 2003/12/24: [test] success in ruby 1.8.0 (2003-08-08) [i386-mswin32].
1448 2003/12/24: [test] success in regex.c compile test on ruby-m17n.
1449                    (but can't make miniruby because re.c patch fail.)
1450 2003/12/24: [bug]  (thanks H.Miyamoto) /[\W]/ was wrong in 1.9.5.
1451 2003/12/22: [spec] implement fold match on UTF-8 encoding.
1452 2003/12/19: [impl] add ctype_support_level and ctype_add_codes() member to
1453                    RegCharEncoding type.
1454 2003/12/19: [impl] add add_ctype_to_cc() in regparse.c.
1455 2003/12/19: [impl] add enc_is_code_ctype() in REG_RUBY_M17N case.
1456 2003/12/19: [impl] change ENC_CODE_TO_MBC() interface.
1457 2003/12/18: [new]  implement fold match. (variable number of char
1458                    match in ignore case mode.)
1459                    ex. German alphabet ess-tsett(U+00DF) match "SS" and "ss".
1460 2003/12/17: [impl] refactoring of encoding system.
1461 2003/12/17: [impl] add enc_init() in regenc.c.
1462 2003/12/17: [new]  support Big5. (REG_ENCODING_BIG5)
1463 2003/12/16: [impl] change CodePoint from unsigned int to unsigned long.
1464 2003/12/16: [new]  support ISO 8859-15. (REG_ENCODING_ISO_8859_15)
1465 2003/12/16: [impl] change P_() macro definition condition for Win32.
1466 2003/12/16: [dist] add sample/encode.c
1467 2003/12/16: [new]  support ISO 8859-1. (REG_ENCODING_ISO_8859_1)
1468 2003/12/15: [impl] rename IS_ENC_XXXX to ENC_IS_XXXX.
1469 2003/12/15: [impl] rename RegDefaultCharEncoding to EncDefaultCharEncoding.
1470 2003/12/15: [impl] divide encoding files. (enc/ascii.c, enc/utf8.c etc...)
1471 2003/12/15: [bug]  unexpected infinite loop in regex_snprintf_with_pattern().
1472                    change local var. type char* to UChar*.
1473 2003/12/15: [impl] remove REG_MBLEN_TABLE[].
1474 2003/12/15: [spec] rename function prefix regex_get_prev_char_head(),
1475                    regex_get_left_adjust_char_head() and
1476                    regex_get_right_adjust_char_head() to enc_xxxxxx().
1477 2003/12/15: [impl] rename function prefixes in regenc.h from regex_ to enc_.
1478 2003/12/12: [impl] remove USE_SBMB_CLASS.
1479 2003/12/12: [impl] rename mb -> mbc, mblen() to enc_len().
1480 2003/12/12: [impl] rename WCINT to CodePoint.
1481 2003/12/11: [impl] delete IS_XXXX() ctype macros from regint.h.
1482 2003/12/11: [impl] add enc->wc_is_ctype() and RegAsciiCtypeTable[256].
1483 2003/12/11: [impl] remove RegAsciiCaseAmbigTable.
1484 2003/12/10: [impl] use ENC_TO_LOWER() for ignore case comparison.
1485 2003/12/08: [impl] *** re-defined RegCharEncoding in oniguruma.h. ***
1486 2003/12/08: [impl] add USE_POSIX_REGION_OPTION to regint.h.
1487 2003/12/08: [impl] add IS_ENC_WORD() to regenc.h.
1488 2003/12/05: [impl] rename IS_CODE_XXXX() to IS_ENC_XXXX().
1489 2003/12/05: [impl] delete IS_CODE_WORD() from regenc.h.
1490 2003/12/04: [spec] rename REG_SYN_OP_BACK_REF to REG_SYN_OP_DECIMAL_BACKREF.
1491 2003/12/04: [spec] add (REG_SYN_OP_ESC_W_WORD | REG_SYN_OP_ESC_B_WORD_BOUND |
1492                    REG_SYN_OP_ESC_LTGT_WORD_BEGIN_END | REG_SYN_OP_BACK_REF)
1493                    to RegSyntaxGrep.
1494 2003/12/04: [spec] remove REG_ENCODING_DEFAULT and REGCODE_DEFAULT.
1495 2003/12/04: [spec] move declarations of regex_get_default_encoding() and
1496                    regex_set_default_encoding() from oniguruma.h to regenc.h.
1497 2003/12/03: [new]  add regex_get_default_encoding() and
1498                    regex_set_default_encoding().
1499 2003/12/03: [spec] REG_ENCODING_DEFAULT meaning is changed.
1500                    (current default value, not initial default value.)
1501 2003/12/03: [spec] REGCODE_XXX is obsoleted. use REG_ENCODING_XXX.
1502 2003/12/02: [memo] alias svnst='svn status | grep -v "^\?"'
1503 2003/12/02: [spec] move regex_set_default_trans_table() declaration
1504                    from oniguruma.h to regenc.h. (obsoleted API)
1505 2003/12/02: [impl] move variables RegDefaultCharEncoding, DefaultTransTable and
1506                    AmbiguityTable to regenc.c.
1507 2003/12/01: [impl] add regex_continuous_sbmb() to regenc.c.
1508 2003/12/01: [dist] add regenc.h and regenc.c.
1509 2003/11/18: [dist] change testconv.rb.
1510 2003/11/18: [bug]  (thanks Masaru Tsuda)
1511                    memory leak in parse_subexp().
1512 2003/11/18: [bug]  (thanks Masaru Tsuda)
1513                    memory leak in names_clear() and parse_char_class().
1514 2003/11/17: [bug]  memory leak in parse_char_class().
1515 2003/11/17: [bug]  (thanks Masaru Tsuda)
1516                    OptExactInfo length should not over OPT_EXACT_MAXLEN.
1517                    (concat_opt_exact_info_str())
1518
1519 2003/11/12: Version 1.9.5
1520
1521 2003/11/12: [test] success in ruby 1.8.0 (2003-08-08) [i386-cygwin].
1522 2003/11/12: [test] success in ruby 1.8.1 (2003-11-11) [i686-linux].
1523 2003/11/12: [spec] add definition of REG_INEFFECTIVE_META_CHAR.
1524 2003/11/11: [dist] add a sample program sample/sql.c.
1525 2003/11/11: [new]  add variable meta character.
1526                    regex_set_meta_char()
1527 2003/11/11: [spec] add syntax op. REG_SYN_OP_VARIABLE_META_CHARS.
1528 2003/11/11: [spec] rename REG_SYN_OP_ESC_CAPITAL_Q_QUOTE to
1529                    REG_SYN_OP2_ESC_CAPITAL_Q_QUOTE,
1530                    REG_SYN_OP_QMARK_GROUP_EFFECT to 
1531                    REG_SYN_OP2_QMARK_GROUP_EFFECT.
1532 2003/11/06: [impl] define THREAD_PASS as rb_thread_schedule() in Ruby mode.
1533 2003/11/05: [spec] add syntax behavior REG_SYN_WARN_REDUNDANT_NESTED_REPEAT.
1534 2003/11/05: [spec] rename REG_SYN_WARN_FOR_CC_OP_NOT_ESCAPED to
1535                    REG_SYN_WARN_CC_OP_NOT_ESCAPED.
1536 2003/11/04: [new]  add regex_set_warn_func() and regex_set_verb_warn_func().
1537 2003/10/30: [new]  add regex_name_to_backref_number().
1538                    (for multiplex definition name, see sample/names.c)
1539 2003/10/30: [spec] add name_end and reg argument to callback function of
1540                    regex_foreach_name().  (see sample/names.c)
1541 2003/10/29: [spec] add syntax behavior REG_SYN_ALLOW_MULTIPLEX_DEFINITION_NAME.
1542                    add error code REGERR_MULTIPLEX_DEFINED_NAME.
1543 2003/10/14: [dist] modify sample/simple.c.
1544 2003/10/03: [bug]  (thanks nobu)  [ruby-dev:21472]
1545                    sub-anchor of optimization map info was wrong
1546                    in concat_left_node_opt_info().
1547                    ex. /^(x?y)/ = "xy" fail. 
1548
1549 2003/09/17: Version 1.9.4
1550
1551 2003/09/17: [spec] change specification of char-class range in ignore case mode
1552                    follows with Ruby 1.8(2003-09-17).
1553                    ex. /[H-c]/i ==> (H-Z, 0x5b-0x60, a-c)/i
1554                                 ==> H-Z, h-z, 0x5b-0x60, a-c, A-C
1555 2003/09/16: [bug]  (thanks Guy Decoux)
1556                    remove env->option == option check in parse_effect().
1557                    change env->option for dynamic option in parse_exp().
1558                    (ex. bad match /(?i)(?-i)a/ =~ "A")
1559 2003/09/12: [spec] rename REG_SYN_ALLOW_RANGE_OP_IN_CC to
1560                    REG_SYN_ALLOW_DOUBLE_RANGE_OP_IN_CC,
1561                    REG_SYN_ESCAPE_IN_CC to REG_SYN_BACKSLASH_ESCAPE_IN_CC.
1562 2003/09/11: [bug]  change to IS_SYNTAX_OP2 at REG_SYN_OP2_ESC_GNU_BUF_ANCHOR.
1563 2003/09/09: [spec] rename REG_SYN_OP2_ESC_M_BAR_META to
1564                    REG_SYN_OP2_ESC_CAPITAL_M_BAR_META,
1565                    REG_SYN_OP_ESC_Q_QUOTE to REG_SYN_OP_ESC_CAPITAL_Q_QUOTE,
1566                    REG_SYN_OP_ESC_SUBEXP to REG_SYN_OP_ESC_LPAREN_SUBEXP,
1567                    REG_SYN_OP_ESC_BUF_ANCHOR to REG_SYN_OP_ESC_AZ_BUF_ANCHOR,
1568                    REG_SYN_OP_ESC_GNU_BUF_ANCHOR to
1569                    REG_SYN_OP2_ESC_GNU_BUF_ANCHOR,
1570                    REG_SYN_OP_ESC_CONTROL_CHAR to REG_SYN_OP_ESC_CONTROL_CHARS,
1571                    REG_SYN_OP_ESC_WORD to REG_SYN_OP_ESC_W_WORD,
1572                    REG_SYN_OP_ESC_WORD_BEGIN_END to
1573                    REG_SYN_OP_ESC_LTGT_WORD_BEGIN_END,
1574                    REG_SYN_OP_ESC_WORD_BOUND to REG_SYN_OP_ESC_B_WORD_BOUND,
1575                    REG_SYN_OP_ESC_WHITE_SPACE to REG_SYN_OP_ESC_S_WHITE_SPACE,
1576                    REG_SYN_OP_ESC_DIGIT to REG_SYN_OP_ESC_D_DIGIT,
1577                    REG_SYN_OP_CC to REG_SYN_OP_BRACKET_CC,
1578                    REG_SYN_OP2_CCLASS_SET to REG_SYN_OP2_CCLASS_SET_OP,
1579                    REG_SYN_CONTEXT_INDEP_OPS to
1580                    REG_SYN_CONTEXT_INDEP_REPEAT_OPS,
1581                    REG_SYN_CONTEXT_INVALID_REPEAT_OPS to
1582                    REG_SYN_CONTEXT_INVALID_REPEAT_OPS.
1583                    add REG_SYN_OP_ESC_CAPITAL_G_BEGIN_ANCHOR.
1584 2003/09/08: [spec] rename REG_SYN_OP_ANYCHAR to REG_SYN_OP_DOT_ANYCHAR,
1585                    REG_SYN_OP_0INF to REG_SYN_OP_ASTERISK_ZERO_INF,
1586                    REG_SYN_OP_ESC_0INF to REG_SYN_OP_ESC_ASTERISK_ZERO_INF,
1587                    REG_SYN_OP_1INF to REG_SYN_OP_PLUS_ONE_INF,
1588                    REG_SYN_OP_ESC_1INF to REG_SYN_OP_ESC_PLUS_ONE_INF,
1589                    REG_SYN_OP_0INF to REG_SYN_OP_QMARK_ZERO_ONE,
1590                    REG_SYN_OP_ESC_0INF to REG_SYN_OP_ESC_QMARK_ZERO_ONE,
1591                    REG_SYN_OP_INTERVAL to REG_SYN_OP_BRACE_INTERVAL,
1592                    REG_SYN_OP_ESC_INTERVAL to REG_SYN_OP_ESC_BRACE_INTERVAL,
1593                    REG_SYN_OP_SUBEXP to REG_SYN_OP_LPAREN_SUBEXP,
1594                    REG_SYN_OP_ALT to REG_SYN_OP_VBAR_ALT,
1595                    REG_SYN_OP_ESC_ALT to REG_SYN_OP_ESC_VBAR_ALT,
1596                    REG_SYN_OP_NON_GREEDY to REG_SYN_OP_QMARK_NON_GREEDY,
1597                    REG_SYN_OP_SUBEXP_EFFECT to REG_SYN_OP_QMARK_GROUP_EFFECT,
1598                    REG_SYN_OP2_POSSESSIVE_{REPEAT,INTERVAL} to
1599                    REG_SYN_OP2_PLUS_POSSESSIVE_{REPEAT,INTERVAL},
1600                    REG_SYN_OP2_SUBEXP_CALL to REG_SYN_OP2_ESC_G_SUBEXP_CALL,
1601                    REG_SYN_OP2_NAMED_GROUP to REG_SYN_OP2_QMARK_LT_NAMED_GROUP
1602                    and REG_SYN_OP2_ESC_K_NAMED_BACKREF.
1603 2003/09/02: [tune] call reduce_nested_qualifier() after disabling capture for
1604                    no-name group in noname_disable_map().
1605                    ex. /(a+)*(?<name>...)/
1606 2003/09/02: [impl] include <stdio.h> is forgotten to erase in regcomp.c.
1607 2003/09/01: [dist] update doc/RE and doc/RE.ja.
1608 2003/08/26: [bug]  (thanks Guy Decoux)
1609                    should not double free node at the case TK_CC_CC_OPEN
1610                    in parse_char_class().  
1611
1612 2003/08/19: Version 1.9.3
1613
1614 2003/08/19: [inst] change re.c.180.patch.
1615 2003/08/19: [impl] rename 'list of captures' to 'capture history'.
1616 2003/08/19: [dist] add doc/RE.ja. (Japanese)
1617 2003/08/19: [new]  add regex_copy_syntax().
1618 2003/08/19: [spec] rename REG_SYN_OP2_ATMARK_LIST_OF_CAPTURES to
1619                    REG_SYN_OP2_ATMARK_CAPTURE_HISTORY.
1620 2003/08/18: [spec] (thanks nobu)
1621                    don't use IMPORT in oniguruma.h and onigposix.h.
1622 2003/08/18: [impl] (thanks nobu) change error output to stdout in testconv.rb. 
1623 2003/08/18: [inst] (thanks nobu) lacked $(srcdir) in Makefile.in.  
1624 2003/08/18: [bug]  REG_MBLEN_TABLE[SJIS][0xFD-0xFF] should be 1.
1625 2003/08/18: [bug]  (thanks nobu) mbctab_sjis[0x80] should be 0.
1626 2003/08/18: [bug]  (thanks nobu)
1627                    single/multi-byte decision was wrong in parse_char_class().
1628                    add regex_wc2mblen().
1629                    should not set fetched to 1 in TK_RAW_BYTE case.
1630 2003/08/18: [bug]  should update BitSet in the case inc_n >= 0
1631                    in add_wc_range_to_buf().
1632 2003/08/13: [bug]  change re.c.180.patch for fix rb_reg_to_s() in re.c.
1633 2003/08/11: [bug]  should clear region->list in regex_region_resize().
1634
1635 2003/08/08: Version 1.9.2
1636
1637 2003/08/08: [test] success in ruby 1.8.0 (2003-08-08) on Windows 2000
1638                    VC++ 6.0 and Cygwin.
1639 2003/08/08: [impl] don't define macro vsnprintf for WIN32 platform,
1640                    because definition is added in win32\win32.h.
1641 2003/08/08: [test] success in ruby 1.8.0 and ruby 1.6.8(2003-08-03) on Linux.
1642 2003/08/08: [dist] change re.c.180.patch and re.c.168.patch.
1643 2003/08/08: [new]  (thanks akr)
1644                    implemented list of captures. (?@...), (?@<name>...)
1645 2003/08/07: [dist] add sample/listcap.c.
1646 2003/08/06: [bug]  OP_MEMORY_END_PUSH_REC case in match_at().
1647                    renewal of mem_start_stk[] should be after
1648                    STACK_PUSH_MEM_END() call.
1649 2003/07/29: [new]  add regex_get_encoding(), regex_get_options() and
1650                    regex_get_syntax().
1651 2003/07/25: [spec] (thanks akr)
1652                    change group(...) to shy-group(?:...) if named group is 
1653                    used in the pattern.
1654                    add REG_SYN_CAPTURE_ONLY_NAMED_GROUP.
1655 2003/07/24: [spec] rename REG_OPTION_CAPTURE_ONLY_NAMED_GROUP to
1656                    REG_OPTION_DONT_CAPTURE_GROUP.
1657                    add REG_OPTION_CAPTURE_GROUP.
1658 2003/07/17: [spec] rename REG_SYN_OP2_NAMED_SUBEXP to REG_SYN_OP2_NAMED_GROUP.
1659 2003/07/17: [spec] add REGERR_EMPTY_GROUP_NAME.
1660 2003/07/17: [spec] rename REGERR_INVALID_SUBEXP_NAME
1661                        to REGERR_INVALID_CHAR_IN_GROUP_NAME.
1662 2003/07/17: [spec] restrict usable chars of group name to alphabet, digit,
1663                    '_' or multibyte-char in fetch_name(). [ruby-dev:20706]
1664 2003/07/16: [impl] minor change of sample/names.c.
1665 2003/07/14: [impl] rename USE_NAMED_SUBEXP to USE_NAMED_GROUP.
1666 2003/07/14: [bug]  add fetch_name() for USE_NAMED_SUBEXP off case.
1667 2003/07/14: [API]  add regex_number_of_names().
1668 2003/07/08: [impl] change error message for undefined group number call.
1669                        'undefined group reference: /(a)\g<2>/'
1670                    --> 'undefined group <2> reference: /(a)\g<2>/'
1671 2003/07/08: [dist] modify doc/RE.
1672 2003/07/07: [impl] OP_SET_OPTION is not needed in compiled code.
1673                    add IS_DYNAMIC_OPTION() to regint.h.
1674 2003/07/07: [spec] called group should not ignore outside option (?i:...).
1675                    ex. /(?i:(?<n>(a)\2)){0}\g<n>/.match("aA")
1676                    add opcode OP_BACKREFN_IC and OP_BACKREF_MULTI_IC.
1677                    set option status to effect memory in optimize_node_left().
1678 2003/07/07: [impl] add opcode OP_ANYCHAR_ML, OP_ANYCHAR_ML_STAR and
1679                    OP_ANYCHAR_ML_START_PEEK_NEXT.
1680 2003/07/07: [bug]  (thanks nobu) REG_MBLEN_TABLE[SJIS][0x80] should be 1. 
1681 2003/07/07: [spec] rename REG_SYN_OP_QUOTE to REG_SYN_OP_ESC_Q_QUOTE.
1682
1683 2003/07/04: Version 1.9.1
1684
1685 2003/07/04: [new]  add REG_OPTION_CAPTURE_ONLY_NAMED_GROUP. (thanks .NET)
1686 2003/07/04: [spec] check mbuf member in the case of
1687                    REG_SYN_NOT_NEWLINE_IN_NEGATIVE_CC in parse_char_class().
1688 2003/07/04: [spec] typo REG_SYN_WARN_FOR_CC_OP_NOT_ESCAPEED.
1689                    should be REG_SYN_WARN_FOR_CC_OP_NOT_ESCAPED.
1690 2003/07/04: [bug]  conflict values on REG_SYN_WARN_FOR_CC_OP_NOT_ESCAPEED and
1691                    REG_SYN_NOT_NEWLINE_IN_NEGATIVE_CC.  (thanks nobu)
1692 2003/07/03: [spec] add REG_SYN_OP_ESC_CONTROL_CHAR flag.
1693 2003/07/03: [spec] remove REG_SYN_OP_ESC_OCTAL3 and REG_SYN_OP_ESC_X_HEX2
1694                    flag from RegSyntaxGnuRegex.
1695 2003/07/03: [spec] remove REG_SYN_OP_NON_GREEDY flag from RegSyntaxGnuRegex.
1696 2003/07/02: [dist] fix doc/RE.
1697 2003/07/01: [impl] add config flag USE_VARIABLE_SYNTAX.
1698                    (turn off variable syntax on Ruby)
1699 2003/07/01: [spec] add syntax behavior REG_SYN_DIFFERENT_LEN_ALT_LOOK_BEHIND.
1700 2003/06/30: [spec] allow different length top-level alternatives
1701                    in look-behind.    ex. (?<=abc|abcd), (?<!a|bc)
1702 2003/06/26: [spec] add option REG_OPTION_NEGATE_SINGLELINE.
1703 2003/06/26: [spec] should default on REG_OPTION_SINGLELINE
1704                    for REG_SYNTAX_PERL and REG_SYNTAX_JAVA.
1705 2003/06/26: [impl] add options member to RegStntaxType.
1706 2003/06/26: [spec] don't change the meaning of '\Z' for REG_OPTION_SINGLELINE.
1707 2003/06/25: [dist] don't use option REG_NEWLINE for sample/posix.c.
1708 2003/06/25: [dist] modify testconv.rb.
1709                    should match and convert double quoted string data.
1710                    ex. x(/\ca/, "\001", 0, 1)
1711 2003/06/25: [impl] add REG_SYN_OP2_ESC_CAPITAL_C_BAR_CONTROL and
1712                    REG_SYN_OP2_ESC_M_BAR_META.
1713 2003/06/25: [impl] add REG_SYN_OP_ESC_OCTAL3 and REG_SYN_OP_ESC_X_HEX2.
1714 2003/06/24: [impl] add REG_SYN_OP2_ESC_V_VTAB. (\v is VTAB)
1715 2003/06/24: [bug]  should invert REG_OPTION_SINGLELINE flag
1716                    in REG_SYN_OP2_OPTION_PERL.
1717 2003/06/24: [impl] add REG_SYN_OP2_OPTION_PERL and REG_SYN_OP2_OPTION_RUBY.
1718                    meaning of (?m) and (?s) are depend on syntax.
1719
1720 2003/06/20: Version 1.9.0
1721
1722 2003/06/20: [spec] \Q...\E is not effective on REG_SYNTAX_RUBY. (thanks akr)
1723 2003/06/19: [inst] rename regex.h to oniguruma.h.
1724 2003/06/18: [impl] change REG_EXTERN setting condition. (__CYGWIN__)
1725 2003/06/18: [bug]  return wrong result UTF-8 case in regex_mb2wc().
1726 2003/06/18: [impl] add REG_SYN_OP2_POSSESSIVE_INTERVAL.  a{n,m}+
1727 2003/06/18: [new]  add REG_SYNTAX_JAVA.
1728 2003/06/18: [spec] add REG_SYN_OP_QUOTE.
1729 2003/06/18: [spec] add op2 member to RegSyntaxType.
1730                    rename some REG_SYN_OP_XXX to REG_SYN_OP2.
1731 2003/06/16: [new]  Perl-like quotation operator \Q, \E.
1732 2003/06/16: [spec] should not control ignore case mode by escaped char.
1733                    ex. /\J/i =~ "j", /[\J]/i =~ "j"    (same as Perl)
1734 2003/06/13: [bug]  modify onigposix.h.
1735 2003/06/13: [bug]  should use -DIMPORT for link with DLL in win32/Makefile.
1736 2003/06/13: [dist] add sample/names.c
1737 2003/06/12: [bug]  range should be from - 1 in not_wc_range_buf().
1738 2003/06/12: [spec] should warn for '-' before '&&' operator in char-class.
1739 2003/06/12: [new]  add REG_SYNTAX_PERL.
1740 2003/06/12: [spec] add syntax behavior REG_SYN_WARN_FOR_CC_OP_NOT_ESCAPEED.
1741 2003/06/12: [spec] invalid POSIX bracket should be error.   ex. [[:upper :]]
1742 2003/06/11: [new]  char-class in char-class (as Java(TM)).
1743 2003/06/11: [spec] change AND operator in char-class from &&[..] to &&. 
1744 2003/06/04: [spec] {n,m}+ should not be possessive operator.
1745                    ex. a{3}+ should be (?:a{3})+
1746 2003/06/03: [bug]  should compare strings with min-length in is_not_included().
1747 2003/06/03: [impl] automatic possessivate optimization.  a*b ==> (?>a*)b
1748                    (thanks Jeffrey E. F. Friedl)
1749 2003/06/02: [impl] remove multibyte-BitSet for OP_CCLASS_MB/OP_CCLASS_MB_NOT.
1750 2003/05/30: [new]  char class intersection operator &&[...] like Java(TM).
1751                    (thanks akr)
1752 2003/05/30: [bug]  should use bbuf_free() for CClassNode in regex_node_free().
1753 2003/05/29: [bug]  wrong usage of syntax REG_SYN_ALLOW_EMPTY_RANGE_IN_CC.
1754                    /[d-a]/ should be error.
1755 2003/05/28: [impl] optimize stop-backtrack compiled code.
1756                    (/(?>a*)/, /(?>\w+)/ etc...)
1757                    add OP_POP opcode.
1758 2003/05/28: [new]  possessive repeat operator. (?+, *+, ++, {n,m}+)
1759 2003/05/27: [spec] '-' at beginning of char-class should be warn only if
1760                    it is start of range.  (ex. /[--a]/)
1761 2003/05/27: [spec] should not warn for right bracket at beginning of pattern.
1762                    ex. /]aaa/
1763 2003/05/27: [spec] change CCEND_ESC_WARN() from VERB_WARNING() to WARNING().
1764 2003/05/27: [spec] /[]aaa/ should be empty char-class error.
1765                    /[]aaa]/ should be warn for 'without backslash'.
1766                    (add char_exist_check() in regparse.c)
1767 2003/05/26: [bug]  OP_REPEAT in recursive subexp call.
1768                    ex. /(?<n>(a|b\g<n>c){3,5})/.match("baaaaca") => "baaaaca"
1769                        was wrong result. (should be "aaaa")
1770 2003/05/26: [impl] add num_call member to regex_t.
1771 2003/05/26: [impl] add repeat_range member to regex_t.
1772                    (for delete upper,lower members from StackType.u.repeat)
1773 2003/05/26: [bug]  change print_names() to external regex_print_names().
1774 2003/05/26: [tune] change OP_NULL_CHECK_END process in match_at().
1775 2003/05/26: [spec] change CCEND_ESC_WARN() from WARNING() to VERB_WARNING().
1776 2003/05/26: [spec] remove POSIXLINE option. (?p:...)
1777                    (be made the same as Ruby.)
1778 2003/05/22: [spec] use OP_NULL_CHECK_XXX only if repeat is infinite.
1779                    prev. /(?:()|()){0,10}\1\2/ =~ ""  ==> FAIL
1780                    now   /(?:()|()){0,10}\1\2/ =~ ""  ==> MATCH
1781
1782 2003/05/22: [impl] change target_empty setting condition in setup_tree().
1783 2003/05/19: [impl] avoid zero length repeat optimization.  (thanks matz)
1784                    /()*/ ==> /()?/, /()+/ ==> /()/ etc...
1785 2003/05/19: [impl] minor changes for gcc -Wall. (-DREG_DEBUG_STATISTICS case)
1786 2003/05/19: [spec] rename regex_foreach_names() to regex_foreach_name().
1787 2003/05/16: [new]  add --with-statistics option to configure.
1788 2003/05/16: [bug]  move RegOpInfo[] definition to regint.h.
1789 2003/05/16: [new]  add regex_version().
1790
1791 2003/05/14: Version 1.8.6
1792
1793 2003/05/14: [bug]  use _vsnprintf() on Win32.
1794 2003/05/14: [spec] define USE_NEWLINE_AT_END_OF_STRING_HAS_EMPTY_LINE.
1795                    (/\n$/ =~ "\n", /\n\Z/ =~ "\n") [ruby-dev:20125]
1796 2003/05/14: [impl] minor changes for gcc -Wall.
1797 2003/05/14: [impl] add string.h check in AC_CHECK_HEADERS().
1798 2003/05/13: [impl] minor changes for gcc -Wall.
1799 2003/05/13: [impl] add regex_snprintf_with_pattern().
1800 2003/05/13: [spec] add warning for char class meta character without escape
1801                    in Ruby mode ('[', '-', ']').
1802 2003/05/13: [impl] define WARNING() and VERB_WARNING() in regint.h.
1803 2003/05/13: [bug]  correct is_code_ascii() for /[[:ascii:]]/.
1804 2003/05/12: [dist] add regular expression document (doc/RE).
1805 2003/05/12: [spec] specification of $(END_LINE) was made the same as Ruby 1.8.
1806                    [ruby-dev:20130]     (thanks matz)
1807 2003/05/12: [memo] shifted to Subversion(version 0.21.0) from CVS.
1808
1809 2003/03/19: Version 1.8.5
1810
1811 2003/03/19: [impl] change REG_EXTERN definition.   (thanks nobu)
1812 2003/03/19: [impl] abbreviation for long error_par in regex_error_code_to_str().
1813 2003/03/18: [dist] change re.c.XXX.patch for GNU regex API changes.
1814 2003/03/18: [spec] change API regex_new(), regex_recompile() and
1815                    regex_error_code_to_str().
1816                    change API re_compile_pattern() and re_recompile_pattern().
1817 2003/03/18: [spec] replace REGERR_END_PATTERN_AT_GROUP_{COMMENT|OPTION} to
1818                    REGERR_END_PATTERN_IN_GROUP.
1819 2003/03/17: [impl] should free err_arg.
1820 2003/03/17: [bug]  mistake(high -> to) in add_wc_range_to_buf().
1821 2003/03/17: [spec] add err_arg argument to regex_new() and regex_recompile().
1822                    for detail error message.  (thanks akr)
1823
1824 2003/03/12: Version 1.8.4
1825
1826 2003/03/12: [tune] use cached value of effect node in get_min_match_length().
1827 2003/03/12: [bug]  escaped alphabet should be TK_RAW_BYTE
1828                    in fetch_token() and fetch_token_in_cc().
1829 2003/03/12: [spec] change named backref and subexp call format.
1830                    backref: \k<name>, call: \g<name>     (thanks akr)
1831 2003/03/11: [inst] add regparse.[ch] in win32/Makefile.
1832 2003/03/11: [bug]  if UNALIGNED_WORD_ACCESS isn't set,
1833                    then compile error in unset_addr_list_fix().  (thanks knu)
1834 2003/03/10: [impl] divide regcomp.c to regcomp.c, regparse.c and regparse.h.
1835 2003/03/10: [bug]  should handle multi-byte code name in fetch_name().
1836 2003/03/10: [spec] remove REGERR_TABLE_FOR_IGNORE_CASE_IS_NOT_SETTED.
1837 2003/03/10: [spec] support POSIX API option REG_NOSUB.
1838                    add comp_options member to POSIX API regex_t.
1839
1840 2003/03/10: Version 1.8.3
1841
1842 2003/03/10: [bug]  can not compile with Ruby 1.6.8.
1843                    (inconsistent st.h with 1.6 and 1.8)
1844                    use hash table on Ruby 1.8 only.
1845 2003/03/10: [spec] forbid to use '\' in group name.
1846 2003/03/08: [impl] remove check_backref_number().
1847 2003/03/08: [bug]  called group in 0-repeat should not be eliminated from
1848                    compile code.  ex. /(?*n)(?<n>){0}/   (thanks akr)
1849                    add is_refered member to QualifierNode.
1850 2003/03/07: [impl] use hash table(st.[ch]) for implementation of name table.
1851                    (enable on Ruby in default)
1852 2003/03/07: [new]  add regex_foreach_names().
1853 2003/03/06: [impl] add member reg->stack_pop_level.
1854 2003/03/06: [impl] add operator OP_MEMORY_START and member reg->backtrack_mem.
1855 2003/03/06: [bug]  if REG_OPTION_FIND_LONGEST or REG_OPTION_NOT_EMPTY,
1856                    should handle backtrack of MEM_END.
1857                    add OP_MEMORY_END_PUSH and OP_MEMORY_END_PUSH_REC.
1858 2003/03/06: [impl] rename OP_MEMORY_END_PUSH to OP_MEMORY_END_MARK.
1859 2003/03/06: [spec] change error messages.
1860 2003/03/06: [tune] add tiny_pop check in STACK_POP.
1861
1862 2003/03/05: Version 1.8.2
1863
1864 2003/03/05: [impl] use cache info in EFFECT_MEMORY case
1865                    in optimize_node_info().
1866 2003/03/05: [impl] add EFFECT_MEMORY node reference count check
1867                    in optimize_node_left().
1868 2003/03/05: [impl] add min-len, max-len, char-len cache in EffectNode.
1869 2003/03/05: [spec] allow to call in look behind. ex. /(?<=(?*a))/
1870 2003/03/05: [bug]  forgotten N_ANCHOR case in check_backref_number(),
1871                    subexp_inf_recursive_check_trav() etc...
1872 2003/03/05: [impl] rename USE_ONIGURUMA_EXTENSION to USE_SBMB_CLASS.
1873 2003/03/04: [impl] add CALL-node info in optimize_node_left().
1874 2003/03/04: [spec] prohibit left recursion of subexp call.   ex. (?<n>|(?*n)a)
1875                    add subexp_inf_recursive_check_trav().
1876 2003/03/04: [spec] rename REG_SYN_STRICT_CHECK_BACKREF_NUMBER
1877                    to REG_SYN_STRICT_CHECK_BACKREF
1878 2003/03/03: [bug]  /(?<n>a(?*n)|)/ isn't infinite recursion.
1879                    fix N_LIST case in subexp_recursive_check(). (thanks akr)
1880 2003/03/03: [bug]  /(?<n>|(?*n))+/ segmentation fault.
1881                    should re-allocate in unset_addr_list_add(). (thanks akr)
1882
1883 2003/03/01: Version 1.8.1
1884
1885 2003/03/01: [bug]  change STACK_GET_MEM_START() and STACK_PUSH_MEM_END().
1886 2003/03/01: [new]  add reg_name_to_group_numbers() to POSIX API.
1887 2003/03/01: [impl] use OP_MEMORY_END_PUSH in callable subexp compiled code
1888                    only if subexp is recursive.
1889 2003/03/01: [spec] rename regex_name_to_backrefs() to
1890                    regex_name_to_group_numbers().
1891 2003/02/28: [impl] use function stack_double() instead of macro.
1892 2003/02/28: [new]  subexp call. (?*name)    (thanks akr)
1893 2003/02/28: [spec] add match stack limit check. (MATCH_STACK_LIMIT_SIZE)
1894 2003/02/28: [impl] check recursive subexp call.
1895 2003/02/28: [impl] add opcode OP_MEMORY_END_PUSH for callable subexp.
1896 2003/02/28: [impl] add opcode OP_CALL, OP_RETURN.
1897                    add stack type STK_CALL_FRAME, STK_RETURN, STK_MEM_END.
1898 2003/02/26: [spec] add new syntax behavior REG_SYN_STRICT_CHECK_BACKREF_NUMBER.
1899                    if it is set, then error /(\1)/, /\1(..)/ etc...
1900 2003/02/26: [spec] if backref number is greater than max group number,
1901                    then return compile error. (REGERR_INVALID_BACKREF_NUMBER)
1902 2003/02/26: [tune] bad implemented N_ALT case in get_min_match_length().
1903 2003/02/26: [dist] auto update testc.c and win32/testc.c in dist target.
1904 2003/02/26: [impl] add -win option to testconv.rb.
1905 2003/02/25: [spec] allow to assign same name to different group.
1906                    add OP_BACKREF_MULTI.
1907 2003/02/24: [impl] reduce redundant repeat of empty target. 
1908                    ex. /()*/ ==> /()?/, /()+/ ==> /()/, /(?:)+/ ==> //
1909 2003/02/24: [impl] change condition in regex_is_allow_reverse_match().
1910 2003/02/24: [impl] convert i(/../, ...) functions in testconv.rb.
1911 2003/02/24: [impl] change name table struct.
1912
1913 2003/02/22: Version 1.8.0
1914
1915 2003/02/22: [new]  named subexp, named back reference.  (thanks akr)
1916                    define: (?<name>...), back-ref: \g<name>
1917 2003/02/22: [impl] use str_node_can_be_split().
1918 2003/02/21: [dist] add sample/posix.c
1919 2003/02/21: [spec] rename some error code symbols.
1920 2003/02/21: [spec] max number of multibyte ranges(255) is small.
1921                    255 --> 1000.   (thanks MoonWolf)
1922 2003/02/20: [new]  supported Basic Regular Expression(BRE) in POSIX API.
1923                    (REG_EXTENDED option: Extended RE)
1924 2003/02/20: [new]  variable syntax.
1925
1926 2003/02/12: Version 1.7.2
1927
1928 2003/02/12: [bug]  mismatch /\?a/i.match('?A').
1929                    check raw value in scan_make_node() and scan_backslash().
1930                    (thanks Nobu)
1931 2003/02/12: [impl] rename 'max_mem' to 'num_mem' in regex_t.
1932 2003/02/12: [impl] rename 'code' to 'enc' in regex_t.
1933 2003/02/12: [spec] remove transtable argument in regex_new and regex_recompile.
1934                    remove transtable member in regex_t.
1935 2003/02/10: [inst] change backup file suffix name from '.orig' to '.ruby_orig'.
1936                    (win32/Makefile)
1937 2003/02/10: [spec] number check in scan_char_class() ignore-case mode.
1938                    ex. /[\x58-\x64]/i
1939 2003/02/10: [impl] don't use OP_MEMORY_END_PUSH (and STK_MEM_END).
1940 2003/02/10: [impl] lift up head_exact value from child qualifier node to parent.
1941 2003/02/10: [tune] change stack type values.
1942 2003/02/10: [dist] add HISTORY.
1943 2003/02/08: [tune] change stack type values.
1944 2003/02/08: [tune] add STACK_BASE_CHECK().
1945 2003/02/08: [tune] add STACK_PUSH_ENSURED().
1946 2003/02/08: [dist] change contents of doc/API.
1947 2003/02/07: [inst] change backup file suffix name from '.orig' to '.ruby_orig'.
1948 2003/02/07: [spec] range in char-class should be same spec. with Ruby
1949                    in ignore-case mode. (ex. /[A-c]/i == /[a-c]/i)
1950                    (thanks MoonWolf)
1951 2003/02/07: [spec] [!--] should be allowed.    (thanks MoonWolf)
1952 2003/02/07: [dist] refresh re.c.180.patch for re.c (2003-02-06).
1953
1954 2003/02/07: Version 1.7.1
1955
1956 2003/02/07: [impl] check first byte of string in ignore-case mode.
1957                    (get_head_exact_node())
1958 2003/02/07: [impl] remove redundant statements in setup_tree().
1959 2003/02/06: [new]  create Win32 DLL.
1960 2003/02/06: [impl] use P_() macro for function prototype.
1961 2003/02/06: [impl] add HAVE_PROTOTYPE, HAVE_STDARG_PROTOTYPES in
1962                    configure.in and config.h.in.
1963 2003/02/06: [spec] /[0-9-a]/ is allowed as usual char '-' and 'a' in Ruby.
1964                    add USE_BETTER_COMPATIBILITY_FOR_ORIGINAL_REGEX in
1965                    regint.h.   (thanks MoonWolf)
1966 2003/02/06: [spec] rename REG_MBCTYPE_XXXX to REG_ENCODING_XXXX in onigposix.h.
1967 2003/02/05: [spec] rename MBCTYPE_XXXX to REG_MBCTYPE_XXXX in onigposix.h.
1968 2003/02/05: [spec] add POSIX API error REG_EONIG_THREAD to onigposix.h.
1969 2003/02/05: [dist] add .cvsignore file.
1970
1971 2003/02/04: Version 1.7
1972
1973 2003/02/04: [bug]  typo miss in regex_region_copy().
1974 2003/02/04: [impl] change THREAD_PASS macro. (regint.h)
1975 2003/02/04: [dist] add API document file doc/API.
1976 2003/02/04: [tune] if sub_anchor has ANCHOR_BEGIN_LINE then 
1977                    set REG_OPTIMIZE_EXACT_BM in set_optimize_exact_info().
1978 2003/02/04: [spec] reimplement regex_clone() and it is obsoleted.
1979 2003/02/04: [bug]  add REGERR_OVER_THREAD_PASS_LIMIT_COUNT
1980                    to regerror.c regposix.c.
1981 2003/02/03: [bug]  Hankaku-Kana may be second byte in Shift_JIS
1982                    regex_is_allow_reverse_match().
1983 2003/02/03: [impl] add optimization type REG_OPTIMIZE_EXACT_BM_NOT_REV.
1984                    remove exact_allow_reverse_match member in regex_t.
1985 2003/02/03: [impl] add exact_allow_reverse_match member in regex_t.
1986 2003/02/03: [impl] compile-search conflict in regex_search() is handled.
1987 2003/02/01: [tune] decrease regex_region_clear() calling from regex_search().
1988 2003/02/01: [tune] remove region argument from match_at().
1989 2003/01/31: [tune] don't use strlen() in regexec() and regcomp().
1990 2003/01/31: [tune] decrease regex_reduce_chain() calling in regex_search().
1991 2003/01/31: [bug]  STRING_CMP() in regexec.c was wrong in ignore-case.
1992 2003/01/31: [impl] convert to lower-case char at string compile time.
1993                    change SBTRANSCMP() in regexec.c.
1994 2003/01/31: [impl] rename TTRANS() to TOLOWER().
1995 2003/01/30: [bug]  .c.o --> .c.obj in win32\Makefile.
1996 2003/01/30: [impl] add -DNOT_RUBY to Makefile.in.
1997                    NOT_RUBY is refered in regint.h for escape double
1998                    including config.h.
1999 2003/01/30: [impl] when string hasn't case ambiguity, don't compile
2000                    to ignore case opcode.
2001 2003/01/29: [impl] add SJIS, UTF-8 test_sb() test.
2002 2003/01/29: [dist] add INSTALL-RUBY file.
2003 2003/01/28: [test] success in Cygwin, Ruby 1.8.0 (2003-01-27).
2004 2003/01/24: [inst] add rback target to Makefile.in.
2005 2003/01/24: [impl] change SBCMP() -> IS_NEWLINE() in match_at().
2006 2003/01/23: [impl] add encoding arg to scan_xxxx_number().
2007 2003/01/23: [impl] rename WCInt to WCINT.
2008 2003/01/22: [bug]  POSIX API regexec() was not thread safe.
2009                    remove region member from POSIX regex_t.
2010             [new]  add search time option REG_OPTION_POSIX_REGION.
2011                    (region argument is treated as regmatch_t[] type)
2012                    speed up regexec().
2013 2003/01/22: [memo] start CVS entry in my box.
2014
2015 2003/01/21: Version 1.6
2016
2017 2003/01/21: [test] Mac OS X 10.1, Ruby 1.8.0 (2003-01-20)
2018 2003/01/20: [impl] add UTF-8 check to test.rb.   (thanks UENO Katsuhiro)
2019 2003/01/18: [impl] change REGION_NOTPOS to REG_REGION_NOTPOS in regex.h.
2020 2003/01/17: [dist] add sample/simple.c.
2021 2003/01/17: [inst] add configure option --with-rubydir.
2022 2003/01/17: [bug]  bad implemeted POSIX API options.
2023                    default:     /./ not match "\n", anchor not match "\n"
2024                    REG_NEWLINE: /./ not match "\n", anchor match "\n"
2025 2003/01/16: [impl] rewrite POSIX API regexec() for speed up.
2026 2003/01/16: [impl] add region member to POSIX regex_t struct.
2027 2003/01/16: [inst] rename library file from 'libregex.a' to 'libonig.a'.
2028 2003/01/15: [dist] add testc.c to distribution file.
2029 2003/01/15: [test] success in 'make rtest/ctest/ptest' on Windows 2000.
2030 2003/01/15: [bug]  change '/' to \' in win32/Makefile.
2031 2003/01/14: [test] success in Ruby make test on Windows 2000.
2032                    VC++6.0, Ruby 1.6.8 (2003-01-12)
2033 2003/01/14: [inst] change Makefile.in and win32/Makefile.
2034 2003/01/11: [inst] changes for Win32 platform. (regint.h, reggnu.c, regcomp.c)
2035 2003/01/11: [dist] add win32 directory. (config.h, Makefile, testc.c)
2036 2003/01/10: [inst] add onigposix.h to install target. (Makefile.in)
2037 2003/01/10: [bug]  lacked a comma in ESTRING[]. (regposerr.c)
2038 2003/01/10: [bug]  local variable name was wrong. buf -> tbuf (regerror())
2039 2003/01/10: [spec] remove REG_RUBY_M17N case from onigposix.h and regposix.c.
2040
2041 2003/01/09: Version 1.5
2042
2043 2003/01/09: [inst] replace Ruby re.c.XXX.patch files. (166 -> 168, 172 -> 180)
2044 2003/01/09: [new]  implement POSIX API.   (thanks knu)
2045                    (onigposix.h, regposix.c, regposerr.c)
2046 2003/01/08: [spec] remove REGERR_END_PATTERN_AFTER_BACKSLASH in regex.h.
2047 2003/01/08: [spec] region arg can be NULL in regex_search() and regex_match().
2048
2049 2003/01/08: Version 1.4
2050
2051 2003/01/08: [inst] add test program converter (test.rb -> testc.c).
2052 2003/01/08: [bug]  move GET_WCINT() from regcomp.c to regint.h.
2053 2003/01/07: [inst] add new test script (test.rb).
2054 2002/12/30: [bug]  wrong merge in multibyte mode (alt_merge_opt_exact_info()).
2055 2002/12/28: [inst] add rtest target to Makefile.in.
2056 2002/12/28: [bug]  /\xfe/.match("\xfe") mismatch in multibyte mode.
2057                    add "raw" flag arg to concat_opt_exact_info_str().
2058 2002/12/25: [bug]  check condition was wrong in alt_merge_opt_map_info().
2059 2002/12/25: [impl] add threshold_len check in regex_search().
2060 2002/12/23: [bug]  prec-read in alternative (/a|(?=z).f/.match("zf") => nil)
2061 2002/12/23: [bug]  \G in alternative (/a|\Gz/.match("bza") => "z").
2062                    add start member in MatchArg. (regexec.c)
2063 2002/12/21: [impl] **** rewrite all optimization process. ****
2064 2002/12/16: [impl] remove node subtype EFFECT_EMPTY.
2065 2002/12/12: [impl] reconstruct node types. (regcomp.c)
2066 2002/12/11: [impl] add regerror.c
2067 2002/12/10: [bug]  [ruby-dev:19042] (thanks Nobu)
2068                    anchor(\G etc...) influenced outside of "|". (/a|\Gb/)
2069 2002/11/30: [bug]  [ruby-dev:18966] (thanks Nobu)
2070                    char-class(\S, [^\s] etc...) optimize map-info was wrong.
2071 2002/11/29: [bug]  infinite loop on NULL-pointer str search (regex_search()).
2072                    (thanks matz)
2073 2002/11/29: [bug]  change static -> extern (regex_chain_reduce()).
2074 2002/11/29: [bug]  change encoding to RegDefaultCharEncoding
2075                    in re_recompile_pattern(). (adapt to re.c)
2076 2002/04/24: [spec] USE_ONIGURUMA_EXTENSION is disabled in default.
2077 2002/04/24: [new]  add searching time option: REG_OPTION_NOTBOL/NOTEOL.
2078                    add searching time option argument to regex_search() and
2079                    regex_match(). (prepare for POSIX API)
2080 2002/04/20: [impl] divide regex.c file into regcomp.c, regexec.c, reggnu.c
2081                    and regint.h.
2082 2002/04/09: [impl] move IS_MULTILINE() to outside of loop in OP_ANYCHAR_STAR.
2083 2002/04/08: [impl] don't use OP_REPEAT operator for '??'.
2084 2002/04/06: [impl] reduce redundant nested repeat operators(?,*,+,??,*?,+?).
2085                    ex. (?:a*)?, (?:a??)* etc..
2086 2002/04/06: [spec] should not warn for /(?:a?)+?/.
2087 2002/04/04: [spec] should allow fixed length alternative and repeat pattern
2088                    in look-behind. ex. /(?<=(a|b){3})/  (thanks Guy Decoux)
2089 2002/04/02: [spec] should warn for /(?:a+)?/ and /(?:a*)??/.  (thanks akr)
2090
2091 2002/04/01: Version 1.3
2092
2093 2002/04/01: [dist] add COPYING.
2094 2002/03/30: [spec] warn redundant nested repeat operator
2095                    in Ruby verbose mode.  ex. (?:a*)?
2096 2002/03/30: [spec] nested repeat operator error check should be 
2097                    same with GNU regex.             (thanks Guy Decoux)
2098 2002/03/30: [new]  add \x{hexadecimal-wide-char}.   (thanks matz)
2099 2002/03/27: [bug]  MBCTYPE_XXX symbol values should be same with GNU regex.
2100 2002/03/27: [impl] add THREAD_ATOMIC to regex_clone(), regex_init(), regex_end().
2101 2002/03/25: [spec] if encoding is utf-8, allow combination of singlebyte and
2102                    multibyte code range in char class.
2103                    (cancelled 2002/04/01: for M17N compatibility)
2104 2002/03/25: [dist] description of the license condition is added to README.
2105 2002/03/23: [bug]  should set all bits of reg->mem_stats,
2106                    if REG_OPTION_FIND_LONGEST or REG_OPTION_NOT_EMPTY.
2107 2002/03/23: [new]  add a new option REG_OPTION_NOT_EMPTY.
2108 2002/03/20: [spec] allow incompleted left brace as an usual char.
2109                    ex. /{/, /({)/, /a{2,3/ etc...
2110 2002/03/20: [impl] serialize integer in bytecode.
2111                    (switch by UNALIGNED_WORD_ACCESS in regex.c)
2112 2002/03/20: [impl] change re_mbcinit() for REG_RUBY_M17N.
2113 2002/03/19: [impl] word alignment of char class multi-byte code ranges.
2114 2002/03/19: [impl] replace OP_EXACTMB4N with OP_EXACTMB3N.
2115 2002/03/19: [bug]  OP_CCLASS_MB_NOT process in matchAt() is wrong.
2116 2002/03/19: [new]  add re_mbctab[] for Ruby extension library compatibility.
2117 2002/03/19: [spec] allow nested repeat operator, if operator is {n,m} type.
2118 2002/03/19: [new]  add REG_IS_PATTERN_ERROR(ecode) in regex.h
2119 2002/03/18: [spec] /[a-b-c]/ should be error.
2120 2002/03/18: [bug]  /[\w-a]/ should be error.        (thanks Guy Decoux)
2121 2002/03/18: [bug]  /[\]/ should be error.           (thanks Guy Decoux)
2122 2002/03/18: [bug]  /()*/ etc.. should not be error. (thanks Guy Decoux)
2123 2002/03/18: [spec] /a{1}*/ should not be error.     (thanks Guy Decoux)
2124 2002/03/18: [bug]  ab{2}{3} was interpreded to (?:a(?:b{2})){3}
2125                    (thanks Guy Decoux)
2126 2002/03/18: [bug]  abort /(?i)*a/ etc...            (thanks Guy Decoux)
2127 2002/03/18: [bug]  abort /a|*/,/a|{1}/ etc...       (thanks Guy Decoux)
2128
2129 2002/03/13: Version 1.2
2130
2131 2002/03/13: [test] success in rubicon/builtin/AllBuiltinTests.rb.
2132                    (thanks rubicon)
2133 2002/03/13: [bug]  OP_EXACTMBN process in matchAt() is wrong.
2134 2002/03/13: [bug]  start argument of BackwardSearchRange() is wrong.
2135 2002/03/12: [spec] change function name style from CamelCase
2136                    to underline_separation. (includes API)
2137 2002/03/12: [bug]  if pattern has nested null-check, cause infinite loop.
2138                    correct STACK_NULL_CHECK() macro. (thanks Guy Decoux)
2139 2002/03/11: [bug]  it is wrong that four numbers to continue as
2140                    an octal value in scanBackSlash(). ex. /\0111/
2141                    (thanks matz)
2142 2002/03/11: [new]  \k (single-byte word char), \K (multi-byte char).
2143 2002/03/09: [inst] add two targets to Makefile.in (166 and 172).
2144 2002/03/09: [spec] decrease REG_MAX_BACKREF_NUM, REG_MAX_REPEAT_NUM
2145                    values.
2146 2002/03/08: [spec] allow use of "\A"(begin-buf) in look-behind.
2147 2002/03/08: [impl] add a new opcode OP_PUSH_IF_PEEK_NEXT.
2148 2002/03/08: [impl] add a new opcode OP_ANYCHAR_STAR_PEEK_NEXT.
2149 2002/03/07: [spec] prohibit use of capture group "(...)"
2150                    in negative look-behind.
2151 2002/03/07: [inst] add configure.in, config.h.in, Makefile.in.
2152 2002/03/07: [impl] call Init_REGEX_STAT() in RegexInit().
2153 2002/03/07: [spec] less length string match with negative look-behind.
2154                    ex. /(?<!XXX)a/.match("Xa").    (thanks Nobu)
2155 2002/03/06: [impl] expand repeated string, if expanded length <= 100.
2156                    ex. /(?:abc){10}/
2157 2002/03/06: [new]  add a symbol REG_TRANSTABLE_USE_DEFAULT in regex.h.
2158 2002/03/06: [impl] rename RegDefaultCharCode to RegDefaultCharEncoding.
2159 2002/03/06: [bug]  if pattern has NULL(\000) char, infinite loop happens 
2160                    in ScanMakeNode(). (beware of strchr(). thanks Nobu)
2161 2002/03/06: [bug]  range argument of ForwardSearchRange() is wrong.
2162                    ex. /\A.a/, /\G.a/ mismatched with "aa". (thanks Nobu)
2163 2002/03/05: [new]  add RegexMatch() API. rename regexMatch() to matchAt().
2164 2002/03/05: [impl] change function definition style.
2165 2002/03/05: [impl] abolish use of macro symbol which name begin with underline.
2166 2002/03/04: [bug]  make up a break-statement in compileTree().
2167                    (compile error on Mac OS X 10.1.3)
2168
2169 2002/03/04: Version 1.1
2170
2171 2002/03/04: [impl] replace STK_BOTTOM with STK_ALT.
2172 2002/03/02: [impl] add new opcode OP_FINISH and new stack type
2173                    STK_BOTTOM for (little bit) speed up STACK_POP.
2174 2002/03/02: [impl] add new opcode OP_EXACT1_IC, OP_EXACTN_IC
2175                    for compile time ignore case check.
2176                    remove opcode OP_EXACT1_RAW, OP_EXACTN_RAW.
2177 2002/03/02: [impl] add OpTime info to statistical data.
2178 2002/02/28: [bug]  sub_anchor($) in ForwardSearch() and BackwardSearch().
2179                    ex. /$\x0az/.match("\nz")
2180 2002/02/28: [new]  look-behind (?<=pattern), (?<!pattern).
2181 2002/02/27: [bug]  use StackIndex instead of StackType* for realloc problem.
2182 2002/02/27: [impl] use m17n_codepoint() as mb2wc() in REG_RUBY_M17N.
2183 2002/02/27: [spec] undefined POSIX bracket /[[:xyz:]]/ should be syntax error.
2184 2002/02/26: [bug]  ex. /$*/, /[a-]/, /((?i)a)b/   (thanks matz)
2185
2186 2002/02/25: Version 1.0 (first release)
2187
2188 --
2189 [bug:  bug fix]
2190 [API:  API change/new/delete]
2191 [new:  new feature]
2192 [spec: specification change]
2193 [impl: implementation change]
2194 [tune: tune for speed up]
2195 [inst: changes for installation]
2196 [dist: distribution change]
2197 [test: test]
2198 [dev:  development]
2199 [memo: memo]
2200 --
2201 <create tag>
2202 svn copy file:///home/kosako/svnreps/svnrep_onig/trunk file:///home/kosako/svnreps/svnrep_onig/tags/5.0.0 -m "ADD TAG: 5.0.0"
2203
2204 <set ignore files by .cvsignore>
2205 svn propset svn:ignore -F .cvsignore .
2206 svn commit -m "..."
2207
2208
2209 <CVS: show all tags>
2210 cvs history -T
2211
2212 <CVS: add tag>
2213 cvs rtag "VERSION_X_X_X" oniguruma
2214
2215
2216 <GNU Autotools: bootstrap>
2217 * write Makefile.am and configure.in.
2218 > aclocal
2219 > libtoolize   or   glibtoolize
2220 > automake --foreign --add-missing
2221 > autoconf
2222 > configure --with-rubydir=... CFLAGS="-O2 -Wall"
2223
2224
2225 <GNU libtool: version management>
2226
2227   VERSION = current:revision:age
2228
2229   current:  interface number (from 0)
2230   revision: implementation number of same interface (from 0)
2231   age:      number of supported previous interfaces
2232             (if current only supported then age == 0)
2233
2234 //END