1Mon May  5 00:42:35 2014  SHIBATA Hiroshi  <shibata.hiroshi@gmail.com>
2
3	* ext/psych/yaml/config.h: ditto.
4
5	* ext/psych/yaml/scanner.c: ditto.
6
7	* ext/psych/yaml/yaml_private.h: ditto.
8
9Thu May  8 02:01:51 2014  Kenta Murata  <mrkn@mrkn.jp>
10
11	* ext/bigdecimal/bigdecimal.c (BigDecimal_initialize): Insert GC guard.
12
13	* ext/bigdecimal/bigdecimal.c (BigDecimal_global_new): ditto.
14
15Thu May  8 01:51:19 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16
17	* ext/openssl/ossl_pkey.c (ossl_pkey_verify): as EVP_VerifyFinal()
18	  finalizes only a copy of the digest context, the context must be
19	  cleaned up after initialization by EVP_MD_CTX_cleanup() or a
20	  memory leak will occur.  [ruby-core:62038] [Bug #9743]
21
22Wed Apr 30 16:39:43 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23
24	* ext/readline/extconf.rb (rl_hook_func_t): check pointer type.
25	  [ruby-dev:48089] [Bug #9702]
26
27Wed Apr 30 16:37:16 2014  NAKAMURA Usaku  <usa@ruby-lang.org>
28
29	* win32/win32.c (rb_w32_accept, open_ifs_socket, socketpair_internal):
30	  reset inherit flag of socket to avoid unintentional inheritance of
31	  socket.  note that the return value of SetHandleInformation() is not
32	  verified intentionally because old Windows may return an error.
33	  [Bug #9688] [ruby-core:61754]
34
35Wed Apr 30 16:33:57 2014  Eric Wong  <e@80x24.org>
36
37	* time.c (time_mload): freeze and preserve marshal-loaded time zone
38	* test/ruby/test_time.rb: add test for GC on loaded object
39	  [Bug #9652]
40
41Wed Apr 30 16:15:09 2014  Kohei Suzuki  <eagletmt@gmail.com>
42
43	* vm_method.c (rb_method_entry_get_without_cache): me->klass is 0
44	  for a method aliased in a module.  [ruby-core:61636] [Bug #9663]
45
46Wed Apr 30 16:15:09 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47
48	* vm_method.c (rb_method_entry_get_without_cache): get rid of
49	  infinite recursion at aliases in a subclass and a superclass.
50	  return actually defined class for other than singleton class.
51	  [ruby-core:60431] [Bug #9475]
52
53Wed Apr 30 16:09:18 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
54
55	* vm_insnhelper.c (vm_callee_setup_arg): turn a macro into an
56	  inline function.
57
58Wed Apr 30 15:04:25 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
59
60	* ext/readline/extconf.rb: fix typo, `$defs` not `$DEFS`.
61	  [ruby-core:61756] [Bug #9578]
62
63Mon Mar 31 00:57:39 2014  James Edward Gray II  <james@graysoftinc.com>
64
65	* lib/csv.rb: Fixed a broken regular expression that was causing
66	  CSV to miss escaping some special meaning characters when used
67	  in parsing.
68	  Reported by David Unric
69	  [ruby-core:54986] [Bug #8405]
70
71Mon Mar 31 00:48:12 2014  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
72
73	* test/ruby/envutil.rb (assert_no_memory_leak): increase default value
74	  of `limit` keyword argument.
75	  assert_no_memory_leak occasionally fails with limit=1.5.
76
77Mon Mar 31 00:15:45 2014  Shota Fukumori  <her@sorah.jp>
78
79	* vm_eval.c (eval_string_with_cref): Unify to use NIL_P.
80
81Mon Mar 31 00:15:45 2014  Shota Fukumori  <her@sorah.jp>
82
83	* vm_eval.c (eval_string_with_cref): Use file path even if scope is
84	  given. Related to [ruby-core:56099] [Bug #8662] and r42103.
85
86Mon Mar 31 00:02:04 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
87
88	* parse.y (yycompile): store file name as String to keep the encoding.
89
90	* parse.y (rb_parser_compile_string_path, rb_parser_compile_file_path):
91	  new functions to pass file name as a String.
92
93	* parse.y (gettable_gen): return a copy of the original file name, not
94	  a copy in filesystem encoding.
95
96	* vm_eval.c (eval_string_with_cref): use Qundef instead of "(eval)".
97
98Sun Mar 30 23:49:21 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
99
100	* ext/openssl/ossl.c (ossl_make_error): check NULL for unknown
101	  error reasons with old OpenSSL, and insert a colon iff formatted
102	  message is not empty.
103
104Thu Mar 20 21:13:18 2014  Eric Wong  <e@80x24.org>
105
106	* variable.c (rb_const_set): delete existing entry on redefinition
107	  [Bug #9645]
108	* test/ruby/test_const.rb (test_redefinition): test for leak
109
110Thu Mar 20 20:44:17 2014  Kazuki Tsujimoto  <kazuki@callcc.net>
111
112	* test/fiddle/test_c_struct_entry.rb,
113	  test/fiddle/test_c_union_entity.rb,
114	  test/fiddle/test_cparser.rb, test/fiddle/test_func.rb,
115	  test/fiddle/test_handle.rb, test/fiddle/test_import.rb,
116	  test/fiddle/test_pointer.rb: don't run test if the system
117	  don't support fiddle.
118
119Sun Mar 16 00:57:20 2014  Kazuki Tsujimoto  <kazuki@callcc.net>
120
121	* ext/.document: remove refinement from documentable directories.
122
123Mon Mar  3 01:43:30 2014  Charlie Somerville  <charliesome@ruby-lang.org>
124
125	* eval_error.c (warn_printf): use rb_vsprintf instead so ruby specific
126	  extensions like PRIsVALUE can be used in format strings
127	* eval_error.c (error_print): use warn_print_str (alias for
128	  rb_write_error_str) to print a string value instead of using
129	  RSTRING_PTR and RSTRING_LEN manually
130	* eval.c (setup_exception): use PRIsVALUE instead of %s and RSTRING_PTR
131
132Mon Mar  3 01:32:14 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
133
134	* ext/readline/extconf.rb (rl_hook_func_t): define as Function for
135	  very old readline versions.  [ruby-core:61209] [Bug #9578]
136
137Mon Mar  3 01:32:14 2014  Tanaka Akira  <akr@fsij.org>
138
139	* ext/readline/readline.c (Init_readline): Use rl_hook_func_t instead
140	  of Function to support readline-6.3.  (rl_hook_func_t is available
141	  since readline-4.2.)
142	  Reported by Dmitry Medvinsky.  [ruby-core:61141] [Bug #9578]
143
144Mon Mar  3 01:25:28 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
145
146	* eval.c (setup_exception): preserve errinfo across calling #to_s
147	  method on the exception.  [ruby-core:61091] [Bug #9568]
148
149Mon Mar  3 01:00:00 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
150
151	* numeric.c (ruby_num_interval_step_size): check signs and get rid
152	  of implementation dependent behavior of negative division.
153	  [ruby-core:61106] [Bug #9570]
154
155Mon Mar  3 00:43:33 2014  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
156
157	(merged partially from r42781)
158	* test/ruby/test_numeric.rb (assert_step): introduce assert_step.
159
160Mon Mar  3 00:24:38 2014  Zachary Scott  <e@zzak.io>
161
162	* README.EXT.ja: [DOC] Fix typo "macro macro" @utenmiki [Fixes GH-551]
163	  https://github.com/ruby/ruby/pull/551
164
165Sat Feb 22 22:11:58 2014  NAKAMURA Usaku  <usa@ruby-lang.org>
166
167	* ext/io/console/console.c (console_dev): need read access for conout$
168	  because some functions need it.  [Bug#9554]
169
170Sat Feb 22 14:01:42 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
171
172	* iseq.c (iseq_load): keep type_map to get rid of memory leak.
173	  based on a patch by Eric Wong at [ruby-core:59699].  [Bug #9399]
174
175Sat Feb 22 13:56:38 2014  Charlie Somerville  <charliesome@ruby-lang.org>
176
177	* compile.c (iseq_build_from_ary_body): Use :blockptr instead of :block
178	  as hash key when loading serialized instruction sequences from arrays.
179	  [Bug #9455] [ruby-core:60146]
180
181Sat Feb 22 13:04:54 2014  Shugo Maeda  <shugo@ruby-lang.org>
182
183	* ext/socket/init.c (wait_connectable): break if the socket is
184	  writable to avoid infinite loops on FreeBSD and other platforms
185	  which conforms to SUSv3.  This problem cannot be reproduced with
186	  loopback interfaces, so it's hard to write test code.
187	  rsock_connect() and wait_connectable() are overly complicated, so
188	  they should be refactored, but I commit this fix as a workaround
189	  for the release of Ruby 1.9.3 scheduled on Feb 24.
190	  [ruby-core:60940] [Bug #9547]
191
192Sat Feb 22 12:55:24 2014  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
193
194	(merged partially from r42927)
195	* lib/rubygems/core_ext/kernel_require.rb: Backport a fix for concurrent
196	  requires. [ruby-core:58918] [Backport #9224]
197	  see also https://github.com/rubygems/rubygems/pull/833
198
199Sat Feb 22 11:50:52 2014  Eric Wong  <e@80x24.org>
200
201	* ext/socket/ancdata.c (bsock_sendmsg_internal): only retry on error
202	  (bsock_recvmsg_internal): ditto
203	* test/socket/test_unix.rb: test above for infinite loop
204
205Sat Feb 22 11:44:50 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
206
207	* class.c (rb_mod_init_copy): do nothing if copying self.
208	  [ruby-dev:47989] [Bug #9535]
209
210	* hash.c (rb_hash_initialize_copy): ditto.
211
212Thu Feb 20 02:14:18 2014  Zachary Scott  <e@zzak.io>
213
214	* ext/openssl/lib/openssl/buffering.rb: Fix warning in copyright
215
216Thu Feb 20 02:14:18 2014  Zachary Scott  <e@zzak.io>
217
218	* ext/openssl/lib/openssl/buffering.rb: [DOC] Fix HEREDOC comment for
219	  OpenSSL::Buffering which breaks overview because of RDoc bug
220
221Thu Feb 20 02:04:09 2014  Eric Hodel  <drbrain@segment7.net>
222
223	* ext/.document:  Add syslog/lib to documentable items. [Bug #9228]
224
225Thu Feb 20 01:54:08 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
226
227	* vm_insnhelper.c (vm_search_super_method): when super called in a
228	  bound UnboundMethod generated from a module, no superclass is
229	  found since the current defined class is the module, then call
230	  method_missing in that case.  [ruby-core:59619] [Bug #9377]
231
232Thu Feb 20 01:33:06 2014  Eric Hodel  <drbrain@segment7.net>
233
234	* lib/optparse.rb:  The Integer acceptable now allows binary and
235	  hexadecimal numbers per the documentation.  [ruby-trunk - Bug #8865]
236
237	  DecimalInteger, OctalInteger, DecimalNumeric now validate their input
238	  before converting to a number.  [ruby-trunk - Bug #8865]
239
240	* test/optparse/test_acceptable.rb:  Tests for the above, tests for all
241	  numeric acceptables for existing behavior.
242
243Thu Feb 20 01:23:36 2014  Aaron Pfeifer  <aaron.pfeifer@gmail.com>
244
245	* thread.c (terminate_atfork_i): fix locking mutexes not unlocked in
246	  forks when not tracked in thread.  [ruby-core:55102] [Bug #8433]
247
248Tue Feb 18 23:48:03 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
249
250	* test/ruby/envutil.rb (assert_separately): require envutil in the
251	  child process too.
252
253Tue Feb 18 22:38:01 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
254
255	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_separately):
256	  specify the encoding of source.
257
258Mon Feb 17 02:00:36 2014  Tanaka Akira  <akr@fsij.org>
259
260	* lib/open-uri.rb: Make proxy disabling working again.
261	  Fixed by Christophe Philemotte.   [ruby-core:59650] [Bug #9385]
262
263Mon Feb 17 01:57:45 2014  Benoit Daloze  <eregontp@gmail.com>
264
265	* range.c (Range#size): [DOC] improve description and add examples.
266	  Patch by @skade. [Fixes GH-501]
267
268Mon Feb 17 01:51:49 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
269
270	* lib/webrick/htmlutils.rb (WEBrick::HTMLUtils#escape): replace HTML
271	  meta chars even in non-ascii string.  [Bug #8425] [ruby-core:55052]
272
273	* lib/webrick/httputils.rb (WEBrick::HTTPUtils#{_escape,_unescape}):
274	  fix %-escape encodings.  [Bug #8425] [ruby-core:55052]
275
276Mon Feb 17 01:51:49 2014  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
277
278	* test/webrick/test_htmlutils.rb: add test for WEBrick::HTMLUtils.
279
280Mon Feb 17 01:41:59 2014  Masaki Matsushita  <glass.saga@gmail.com>
281
282	* array.c (rb_hash_rehash): use hash_alloc() instead of rb_hash_new().
283	  [Bug #9187]
284
285Mon Feb 17 01:41:59 2014  Masaki Matsushita  <glass.saga@gmail.com>
286
287	* hash.c (rb_hash_rehash): make temporary st_table under the control
288	  of GC. [Bug #9187]
289
290	* test/ruby/test_hash.rb: add a test for above.
291
292Mon Feb 17 01:41:59 2014  Masaki Matsushita  <glass.saga@gmail.com>
293
294	* hash.c (rb_hash_rehash): fix to free new st_table when exception
295	  is raised in do_hash(). [Bug #9187]
296
297Mon Feb 17 01:18:04 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
298
299	* eval.c (rb_mod_s_constants): return its own constants for other
300	  than Module itself.  [ruby-core:59763] [Bug #9413]
301
302Mon Feb 17 01:16:00 2014  Eric Wong <e@80x24.org>
303
304	* ext/json/generator/depend: add build dependencies for json extension
305	  [Bug #9374] [ruby-core:59609]
306	* ext/json/parser/depend: ditto
307
308Mon Feb 17 01:12:57 2014  Yusuke Endoh  <mame@tsg.ne.jp>
309
310	* ext/fiddle/closure.c: use sizeof(*pcl) for correct sizeof value.
311	  [ruby-core:57599] [Bug #8978].
312
313Mon Feb 17 01:12:57 2014  Aaron Patterson <aaron@tenderlovemaking.com>
314
315	* ext/fiddle/closure.c: use sizeof(*pcl) for correct sizeof value.
316	  [ruby-core:57599] [Bug #8978].  Thanks mame!
317
318Mon Feb 17 01:09:52 2014  Eric Wong <e@80x24.org>
319
320	* benchmark/driver: avoid large alloc in driver process
321	  [ruby-core:59869] [Bug #9430]
322
323Mon Feb 17 00:59:40 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
324
325	* thread_pthread.c (rb_thread_create_timer_thread): fix for platforms
326	  where PTHREAD_STACK_MIN is a dynamic value and not a compile-time
327	  constant.  [ruby-dev:47911] [Bug #9436]
328
329Mon Feb 17 00:59:40 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
330
331	* thread_pthread.c (rb_thread_create_timer_thread): expand timer
332	  thread stack size to get rid of segfault on FreeBSD/powerpc64.
333	  based on the patch by Steve Wills at [ruby-core:59923].
334	  [ruby-core:56590] [Bug #8783]
335
336Mon Feb 17 00:45:44 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
337
338	* string.c (rb_str_modify_expand): enable capacity and disable
339	  association with packed objects when setting capa, so that
340	  pack("p") string fails to unpack properly after modified.
341
342Sun Feb 16 01:36:57 2014  Aaron Patterson <aaron@tenderlovemaking.com>
343
344	* ext/psych/yaml/emitter.c: merge libyaml 0.1.5
345	* ext/psych/yaml/loader.c: ditto
346	* ext/psych/yaml/parser.c: ditto
347	* ext/psych/yaml/reader.c: ditto
348	* ext/psych/yaml/scanner.c: ditto
349	* ext/psych/yaml/writer.c: ditto
350	* ext/psych/yaml/yaml_private.h: ditto
351
352Sun Feb 16 01:02:32 2014  Zachary Scott  <e@zzak.io>
353
354	* lib/racc/rdoc/grammar.en.rdoc: [DOC] Correct grammar and typos
355	  Patch by Giorgos Tsiftsis [Bug #9429] [ci skip]
356
357Sun Feb 16 01:00:45 2014  Zachary Scott  <e@zzak.io>
358
359	* lib/open-uri.rb: [DOC] use lower case version of core classes, same
360	  as commit r44878, based on patch by Jonathan Jackson [Bug #9483]
361
362Sun Feb 16 01:00:45 2014  Zachary Scott  <e@zzak.io>
363
364	* ext/ripper/lib/ripper/lexer.rb: [DOC] use lower case version of core
365	  classes when referring to return value, since we aren't directly
366	  talking about the class. Patch by Jonathan Jackson [Bug #9483]
367
368Sun Feb 16 00:57:13 2014  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
369
370	* variable.c: [DOC] adding extra example in docs.
371	  patched by Steve Klabnik. [Bug #9210]
372
373Sun Feb 16 00:54:50 2014  Tanaka Akira  <akr@fsij.org>
374
375	* lib/resolv.rb (Resolv::DNS::Resource::TXT#data): Return concatenated
376	  string.
377	  Patch by Ryan Brunner.  [ruby-core:58220] [Bug #9093]
378
379Sun Feb 16 00:50:59 2014  Zachary Scott  <e@zzak.io>
380
381	* ext/openssl/ossl_pkey_dh.c: Fixed typo by Sandor Szuecs [Bug #9243]
382
383Sun Feb 16 00:47:36 2014  Zachary Scott  <e@zzak.io>
384
385	* lib/xmlrpc/client.rb: [DOC] Remove note about SSL package on RAA
386	  Since RAA has been deprecated, and the SSL package has been replaced
387	  with net/https this statement is entirely false and should be
388	  deleted. [Bug #9152]
389
390Sun Feb 16 00:44:51 2014  Zachary Scott  <e@zzak.io>
391
392	* lib/net/smtp.rb: [DOC] Remove dead link to RAA by Giorgos Tsiftsis
393	  Fixes the following bugs: [Bug #9152] [Bug #9268] [Bug #9394]
394	* lib/open-uri.rb: ditto
395
396Sun Feb 16 00:27:04 2014  Masaki Matsushita  <glass.saga@gmail.com>
397
398	* hash.c (rb_hash_assoc): revert r42224. table->type->compare is
399	  called only if hashes are matched.
400
401	* test/ruby/test_hash.rb: add a test to check using #== to compare.
402
403Sun Feb 16 00:27:04 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
404
405	* hash.c (rb_hash_initialize_copy): copy st_table type even if empty.
406	  [ruby-core:56256] [Bug #8703]
407
408Sun Feb 16 00:27:04 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
409
410	* hash.c (rb_hash_initialize_copy): clear old table before copy new
411	  table.
412
413Sun Feb 16 00:27:04 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
414
415	* hash.c (rb_hash_assoc): aggregate object can be initialized only
416	  with link time constants.
417
418Sun Feb 16 00:27:04 2014  Masaki Matsushita  <glass.saga@gmail.com>
419
420	* hash.c (rb_hash_assoc): performance improvement by replacing
421	  compare function in RHASH(hash)->ntbl->type temporarily.
422
423Sun Feb 16 00:01:16 2014  Tanaka Akira  <akr@fsij.org>
424
425	* lib/resolv.rb: Ignore name servers which cause EAFNOSUPPORT on
426	  socket creation.
427	  Reported by Bjoern Rennhak.  [ruby-core:60442] [Bug #9477]
428
429Sat Feb 15 23:58:31 2014  Tanaka Akira  <akr@fsij.org>
430
431	* lib/resolv.rb (Resolv::DNS::Message::MessageDecoder): Raise
432	  DecodeError if no data before the limit.
433	  Reported by Will Bryant.  [ruby-core:60557] [Bug #9498]
434
435Sat Feb 15 23:46:31 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
436
437	* parse.y (IDSET_ATTRSET_FOR_INTERN): fix off-by-one bug.
438
439	* parse.y (rb_enc_symname_type): junk ID succeeded by '=' is also
440	  attrset ID.  [ruby-core:60668] [Bug #8756]
441
442Sat Feb 15 23:42:04 2014  Richo Healy  <richo@psych0tik.net>
443
444	* test/ruby/test_struct.rb: Add regression test for question marks and
445	  bangs in struct members. [Closes GH-468]
446
447Sat Feb 15 23:26:31 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
448
449	* struct.c (new_struct): fix warning message, class name and encoding.
450
451Sat Feb 15 16:08:26 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
452
453	* struct.c (make_struct): avoid inadvertent symbol creation.
454	  (rb_struct_aref): ditto.
455	  (rb_struct_aset): ditto.
456
457Sat Feb 15 15:32:46 2014  Shugo Maeda  <shugo@ruby-lang.org>
458
459	* vm_insnhelper.c (vm_call_method): should check ci->me->flag of
460	  a refining method in case the method is private.
461	  [ruby-core:60111] [Bug #9452]
462
463	* vm_method.c (make_method_entry_refined): set me->flag of a refined
464	  method entry to NOEX_PUBLIC in case the original method is private
465	  and it is refined as a public method.  The original flag is stored
466	  in me->def->body.orig_me, so it's OK to make a refined method
467	  entry public.  [ruby-core:60111] [Bug #9452]
468
469	* test/ruby/test_refinement.rb: related tests.
470
471Tue Feb 11 23:21:02 2014  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
472
473	* test/ruby/test_struct.rb (test_struct_question_mark): add a testcase
474	  for Struct attribute with question mark. the patch was originally
475	  written by Eric Wong [ruby-core:59095] [Backport #9248]
476
477Tue Feb 11 23:21:02 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
478
479	* parse.y (rb_id_attrset, intern_str): allow junk attrset ID for
480	  Struct.
481
482	* parse.y (rb_id_attrset): fix inconsistency with literals, allow
483	  ID_ATTRSET and return it itself, but ID_JUNK cannot make ID_ATTRSET.
484	  and raise a NameError instead of rb_bug() for invalid argument.
485
486Tue Feb 11 23:21:02 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
487
488	* parse.y (rb_enc_symname_type): allow ID_ATTRSET for ID_INSTANCE,
489	  ID_GLOBAL, ID_CLASS, ID_JUNK too.  [Bug #8756]
490
491Tue Feb 11 23:21:02 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
492
493	* parse.y (rb_id_attrset): allow other than ID_ATTRSET.
494
495	* parse.y (intern_str): ditto.  try stem ID for ID_INSTANCE,
496	  ID_GLOBAL, ID_CLASS, ID_JUNK too.  [Bug #8756]
497
498Tue Feb 11 23:21:02 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
499
500	* parse.y (rb_id_attrset): check if the argument is valid type as an
501	  attribute.
502
503Tue Feb 11 00:26:19 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
504
505	* file.c (GetLastError): already defined in windows.h on nowadays
506	  cygwin, and caused the confliction with the system provided
507	  definition on cygwin64.  by @kou1okada [Fixes GH-433].
508
509Mon Feb 10 01:15:10 2014  Kouhei Sutou  <kou@cozmixng.org>
510
511	* ext/socket/raddrinfo.c (nogvl_getaddrinfo): Fix indent.
512
513Mon Feb 10 01:15:10 2014  Kouhei Sutou  <kou@cozmixng.org>
514
515	* ext/socket/raddrinfo.c (nogvl_getaddrinfo): Add missing return
516	  value assignment.
517
518Mon Feb 10 01:15:10 2014  NARUSE, Yui  <naruse@ruby-lang.org>
519
520	* ext/socket/raddrinfo.c (nogvl_getaddrinfo): work around for Ubuntu
521	  13.04's getaddrinfo issue with mdns4. [ruby-list:49420]
522
523Mon Feb 10 00:42:12 2014  Masaki Matsushita  <glass.saga@gmail.com>
524
525	* ext/thread/thread.c (rb_szqueue_clear): notify SZQUEUE_WAITERS
526	  on SizedQueue#clear. [ruby-core:59462] [Bug #9342]
527
528	* test/thread/test_queue.rb: add test. the patch is from
529	  Justin Collins.
530
531Mon Feb 10 00:27:33 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
532
533	* parse.y (local_push_gen, local_pop_gen): save cmdarg_stack to
534	  isolate command argument state from outer scope.
535	  [ruby-core:59342] [Bug #9308]
536
537Mon Feb 10 00:02:18 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
538
539	* dir.c (glob_helper): don't skip current directories if FNM_DOTMATCH
540	  is given.  [ruby-core:53108] [Bug #8006]
541
542Wed Feb  5 23:39:36 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
543
544	* parse.y (intern_str): sigil only names are junk, at least one
545	  identifier character is needed.  [ruby-dev:47723] [Bug #8928]
546
547	* parse.y (rb_enc_symname_type): fix out of bound access.
548
549Wed Feb  5 22:54:52 2014  Kazuki Tsujimoto  <kazuki@callcc.net>
550
551	* time.c (get_timeval, get_new_timeval): use rb_obj_class()
552	  instead of CLASS_OF() because CLASS_OF() may return
553	  a singleton class.
554
555Sun Feb 2 05:48:42 2014  Eric Wong <e@80x24.org>
556
557	* io.c (rb_io_syswrite): add RB_GC_GUARD
558	  [Bug #9472][ruby-core:60407]
559
560Fri Jan 31 00:51:50 2014  Shugo Maeda  <shugo@ruby-lang.org>
561
562	* configure.in: use $@ instead of $(.TARGET) because .TARGET is not
563	  supported by GNU make.
564
565Fri Jan 31 00:49:41 2014  Yamashita Yuu  <yamashita@geishatokyo.com>
566
567	* ext/openssl/ossl_ssl.c (Init_ossl_ssl): Declare a constant
568	  `OP_MSIE_SSLV2_RSA_PADDING` only if the macro is defined.  The
569	  `SSL_OP_MSIE_SSLV2_RSA_PADDING` has been removed from latest
570	  snapshot of OpenSSL 1.0.1.  [Fixes GH-488]
571
572Thu Jan 23 21:08:16 2014  Shota Fukumori  <her@sorah.jp>
573
574	* vm_insnhelper.c (check_match): Fix SEGV with VM_CHECKMATCH_TYPE_CASE
575	  and class of `pattern` has `method_missing`
576	  [Bug #8882] [ruby-core:58606]
577
578Mon Jan 20 01:02:18 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
579
580	* ext/bigdecimal/bigdecimal.c (CLASS_NAME): macro to wrap
581	  depending on PRIsVALUE for 1.9.  [Backport #9406]
582
583	* ext/bigdecimal/bigdecimal.c (DECIMAL_SIZE_OF_BITS): fallback
584	  definition for 2.1 or older.  [ruby-core:59750] [Backport #9406]
585
586Sun Jan 12 22:46:49 2014  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
587
588	patch inspired from r44260 on trunk. [ruby-core:58652] [Bug #9168]
589
590	* gc.c (run_finalizer): clear th->errinfo before invoke finalizer and
591	  restore afterward.
592
593	* test/ruby/test_gc.rb (test_exception_in_finalizer): add test for
594	  above.
595
596	* vm_trace.c (rb_threadptr_exec_event_hooks_orig): clear th->errinfo
597	  before invoke hook.
598
599Sun Jan 12 16:07:52 2014  vo.x (Vit Ondruch)  <vondruch@redhat.com>
600
601	* tool/rbinstall.rb (Gem::Specification#collect): make stable
602	  Gem::Specification.files in default .gemspecs the different order of
603	  "files" in .gemspec files makes them different therefore possibly
604	  conflicting in multilib scenario.  patch by vo.x (Vit Ondruch) at
605	  [ruby-core:57544] [Bug #8623].
606
607Sun Jan 12 16:01:54 2014  Tanaka Akira  <akr@fsij.org>
608
609	* test/openssl/test_cipher.rb (test_aes_gcm_wrong_tag): Don't use
610	  String#succ because it can make modified (wrong) auth_tag longer
611	  than 16 bytes.  The longer auth_tag makes that
612	  EVP_CIPHER_CTX_ctrl (and internally aes_gcm_ctrl) fail.
613	  [ruby-core:55143] [Bug #8439] reported by Vit Ondruch.
614
615Sun Jan 12 15:33:11 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
616
617	* util.c (ruby_qsort): fix potential stack overflow on a large
618	  machine.  based on the patch by Conrad Irwin <conrad.irwin AT
619	  gmail.com> at [ruby-core:51816].  [Bug #7772]
620
621Sun Jan 12 15:17:00 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
622
623	* ext/tk/tkutil/tkutil.c: use rb_sprintf(), rb_id2str(), and
624	  rb_intern_str() instead of rb_intern() and RSTRING_PTR() with
625	  RB_GC_GUARD(), to prevent temporary objects from GC.
626	  [ruby-core:39000] [Bug #5199]
627
628Tue Jan  7 01:16:34 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
629
630	* proc.c (mnew_from_me): keep iclass as-is, to make inheritance
631	  chain consistent.  [ruby-core:59358] [Bug #9315]
632
633	* proc.c (method_owner): return the original defined_class from
634	  prepended iclass, instead.
635
636Tue Jan  7 01:16:34 2014  Nobuyoshi Nakada  <nobu@ruby-lang.org>
637
638	* vm_insnhelper.c (vm_search_super_method): direct superclass of a
639	  module is found when super called in a Method object generated a
640	  method defined in a module, call method_missing in that case.
641	  [ruby-core:59358] [Bug #9315]
642
643Fri Jan  3 22:25:23 2014  Aman Gupta <ruby@tmm1.net>
644
645	* test/net/imap/cacert.pem: generate new CA cert, since the last one
646	  expired. [Bug #9341] [ruby-core:59459]
647	* test/net/imap/server.crt: new server cert signed with updated CA.
648	* test/net/imap/Makefile: add `make regen_certs` to automate this
649	  process.
650
651Wed Dec 25 00:46:44 2013  Eric Hodel  <drbrain@segment7.net>
652
653	* lib/net/smtp.rb (Net::SMTP#critical):  Always return a
654	  Net::SMTP::Response.  Patch by Pawel Veselov.
655	  [ruby-trunk - Bug #9125]
656	* test/net/smtp/test_smtp.rb:  Test for the above.
657
658Wed Dec 25 00:18:19 2013  Tanaka Akira  <akr@fsij.org>
659
660	* ext/socket/lib/socket.rb: Don't test $! in "ensure" clause because
661	  it may be set before the body.
662	  Reported by ko1 and mrkn.  [ruby-core:59088] [Bug #9247]
663
664	* lib/cgi/core.rb: Ditto.
665
666	* lib/drb/ssl.rb: Ditto.
667
668Tue Dec 24 00:18:14 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
669
670	* lib/mkmf.rb (configuration): strip destdir part from prefix to get
671	  rid of duplication.  a patch by arton at [ruby-core:58859].
672	  [ruby-core:58856] [Bug #9213]
673
674Mon Dec 23 22:37:01 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
675
676	* proc.c (mnew_from_me): method by respond_to_missing? should be
677	  owned by the original class.
678
679Sun Dec 22 22:56:06 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
680
681	* proc.c (mnew_from_me): achieve the original defined_class from
682	  prepended iclass, to fix inherited owner.
683
684	* proc.c (method_owner): return the defined class, but not the
685	  class which the method object is created from.
686
687Sun Dec 22 22:56:06 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
688
689	* proc.c (method_owner): return the class where alias is defined, not
690	  the class original method is defined.
691
692	* vm_method.c (rb_method_entry_make, rb_alias): store the originally
693	  defined class in me.  [Bug #7993] [Bug #7842] [Bug #9236]
694
695	* vm_method.c (rb_method_entry_get_without_cache): cache included
696	  module but not iclass.
697
698Sun Dec 22 00:07:09 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
699
700	* insns.def: Fix optimization bug of Float#/ [Bug #9238]
701
702Sat Dec 21 23:13:55 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
703
704	* eval_jump.c (rb_exec_end_proc): unlink and free procs data before
705	  calling for each procs.  [Bug #9110]
706
707Sat Dec 21 23:13:55 2013  Masaki Matsushita  <glass.saga@gmail.com>
708
709	* eval_jump.c (rb_exec_end_proc): fix double free or corruption error
710	  when reentering by callcc. [ruby-core:58329] [Bug #9110]
711
712	* test/ruby/test_beginendblock.rb: test for above.
713
714Sat Dec 21 22:55:03 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
715
716	* lib/resolv.rb (Resolv::Hosts#lazy_initialize): should not
717	  consider encodings in hosts file.  [ruby-core:59239] [Bug #9273]
718
719	* lib/resolv.rb (Resolv::Config.parse_resolv_conf): ditto.
720
721Sat Dec 21 22:51:51 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
722
723	* win32/Makefile.sub (fake.rb): fixed wrong RUBY_PLATFORM, to correctly
724	  install win32.h.
725	  [ruby-core:58801][Bug #9199] reported by arton.
726
727Sat Dec 21 16:16:56 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
728
729	* gc.c (finalize_deferred): flush all deferred finalizers while other
730	  finalizers can get ready to run newly by lazy sweep.
731	  [ruby-core:58833] [Bug #9205]
732
733Sat Dec 21 16:07:00 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
734
735	* ruby_atomic.h (ATOMIC_PTR_EXCHANGE): atomic exchange function for
736	  a generic pointer.
737
738Sat Dec 21 15:50:13 2013  Masaki Matsushita  <glass.saga@gmail.com>
739
740	* ruby_atomic.h: remove duplicate definisions between ATOMIC_XXX
741	  and ATOMIC_SIZE_XXX.
742
743Sat Dec 21 15:50:13 2013  Masaki Matsushita  <glass.saga@gmail.com>
744
745	* ruby_atomic.h: define ATOMIC_SIZE_CAS() with
746	  __atomic_compare_exchange_n() and refactoring.
747
748Sat Dec 21 15:50:13 2013  Masaki Matsushita  <glass.saga@gmail.com>
749
750	* ruby_atomic.h: use __atomic builtin functions supported by GCC.
751	  __sync family are legacy functions now and it is recommended
752	  that new code use the __atomic functions.
753	  http://gcc.gnu.org/onlinedocs/gcc/_005f_005fatomic-Builtins.html
754
755	* configure.in: check existence of __atomic functions.
756
757Sat Dec 21 15:37:11 2013  Naohisa Goto  <ngotogenome@gmail.com>
758
759	* ruby_atomic.h (ATOMIC_SIZE_CAS): fix compile error on Solaris
760	  since r43460.
761
762Sat Dec 21 15:37:11 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
763
764	* ruby_atomic.h (ATOMIC_SIZE_CAS): new macro, compare and swap size_t.
765
766Sat Dec 21 15:37:11 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
767
768	* ruby_atomic.h (rb_w32_atomic_cas): call InterlockedCompareExchange
769	  directly.
770
771	* ruby_atomic.h (ATOMIC_CAS): fix missing function call.
772
773Sat Dec 21 15:37:11 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
774
775	* ruby_atomic.h (ATOMIC_CAS): suppress C4022 and C4047 warnings in
776	  VC6.  only InterlockedCompareExchange is declared using PVOID.
777
778Sat Dec 21 14:54:37 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
779
780	* ext/bigdecimal/lib/bigdecimal/util.rb: [DOC] remove example of
781	  Rational#to_d without argument. [Bug #8958]
782
783Sat Dec 21 14:54:37 2013  Zachary Scott  <e@zzak.io>
784
785	* ext/bigdecimal/lib/bigdecimal/util.rb: [DOC] +precision+ is required
786
787Sat Dec 21 14:54:37 2013  Zachary Scott  <e@zzak.io>
788
789	* ext/bigdecimal/lib/bigdecimal/util.rb: [DOC] Document the required
790	  +precision+ argument for Rational#to_d [Bug #8958]
791
792Sat Dec 21 03:46:14 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
793
794	* ext/date/date_strptime.c (date__strptime_internal): unset
795	  case-insensitive flag for [:alpha:], which already implies both
796	  cases, to get rid of backtrack explosion.  [ruby-core:58984]
797	  [Bug #9221]
798
799Sat Dec 21 03:46:14 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
800
801	* ext/date/date_parse.c (parse_time): unset case-insensitive flag
802	  for [:alpha:], which already implies both cases, to get rid of
803	  backtrack explosion.  [ruby-core:58876] [Bug #9221]
804
805Fri Dec 13 00:23:01 2013  NARUSE, Yui  <naruse@ruby-lang.org>
806
807	* enumerator.c (enumerator_with_index): try to convert given offset to
808	  integer. fix bug introduced in r39594.
809
810Mon Dec  2 23:31:00 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
811
812	* enumerator.c (enumerator_with_index): should not store local variable
813	  address to memoise the arguments.  it is invalidated after the return.
814	  [ruby-core:58692] [Bug #9178]
815
816Mon Dec  2 23:16:50 2013  Eric Hodel  <drbrain@segment7.net>
817
818	* enumerator.c (enumerator_with_index):  Restore handling of a nil memo
819	  from r39594.
820
821Mon Dec  2 22:53:05 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
822
823	* file.c (rb_readlink): fix buffer overflow on a long symlink. since
824	  rb_str_modify_expand() expands from its length but not its capacity,
825	  need to set the length properly for each expansion.
826	  [ruby-core:58592] [Bug #9157]
827
828Fri Nov 29 00:31:46 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
829
830	* common.mk (Doxyfile): tool/file2lastrev.rb needs running with
831	  BASERUBY since r43617.  [ruby-dev:47823] [Bug #9169]
832
833Fri Nov 22 13:18:28 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
834
835	* util.c (ruby_strtod): BigMath requires more precision.
836
837Fri Nov 22 12:46:08 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
838
839	* util.c (ruby_strtod): ignore too long fraction part, which does not
840	  affect the result.
841
842Wed Nov 20 15:20:00 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
843
844	* test/ruby/test_thread.rb (test_mutex_unlock_on_trap): extend waiting
845	  time to invocation of signal handler from 0.01 sec to 0.2 sec.
846	  RubyCI report error on mswin. reported by @unak
847
848Wed Nov 13 11:57:01 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
849
850	* lib/rubygems: Update to RubyGems 2.0.14. [ruby-core:58300]
851	  [Backport #9104]
852	  the patch is provided by drbrain (Eric Hodel).
853
854Tue Nov 12 23:41:43 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
855
856	* load.c (rb_feature_p): deal with default loadable suffixes.
857
858	* load.c (load_lock): initialize statically linked extensions.
859
860	* load.c (search_required, rb_require_safe): deal with statically
861	  linked extensions.
862
863	* load.c (ruby_init_ext): defer initialization of statically linked
864	  extensions until required actually.  [Bug #8883]
865
866Tue Nov 12 23:41:43 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
867
868	* load.c (ruby_init_ext): share feature names between frame name and
869	  provided features.
870
871Tue Nov 12 23:33:08 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
872
873	* tool/rbinstall.rb (Gem::Specification.load): obtain spec date from
874	  VCS for the case using git, RUBY_RELEASE_DATE is the last resort.
875	  probably fixes [Bug #9085].
876
877Tue Nov 12 23:24:35 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
878
879	* configure.in (RUNRUBY): append -- only after runruby.rb, not
880	  cross-compiling baseruby, so that $(RUN_OPT) can be command line
881	  options.  [ruby-dev:47703] [Bug #8893]
882
883Tue Nov 12 23:24:35 2013  Masaki Matsushita  <glass.saga@gmail.com>
884
885	(partially merged from r42862)
886	* common.mk: use RUNRUBY instead of MINIRUBY because MINIRUBY can't
887	  require extension libraries. The patch is from nobu
888	  (Nobuyoshi Nakada).
889
890Mon Nov 11 23:54:51 2013  Tanaka Akira  <akr@fsij.org>
891
892	* ext/socket/init.c (cloexec_accept): Fix a compile error on
893	  Debian GNU/kFreeBSD.  Consider HAVE_ACCEPT4 is defined
894	  but SOCK_CLOEXEC is not defined.
895
896Mon Nov 11 22:14:37 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
897
898	* include/ruby/win32.h (rb_infinity_float): suppress overflow in
899	  constant arithmetic warnings.  [ruby-core:57981] [Bug #9044]
900
901Mon Nov 11 22:14:37 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
902
903	* win32/Makefile.sub (config.h): VC 2013 supports C99 mathematics
904	  functions.  [ruby-core:57981] [Bug #9044]
905
906Thu Oct 31 22:28:04 2013  Martin Bosslet  <Martin.Bosslet@gmail.com>
907
908	* test/openssl/test_pkey_ec.rb: Skip tests for "Oakley" curves as
909	  they are not suitable for ECDSA.
910	  [ruby-core:54881] [Bug #8384]
911
912Thu Oct 31 22:28:04 2013  Martin Bosslet  <Martin.Bosslet@gmail.com>
913
914	* ext/openssl/ossl_pkey_ec.c: Ensure compatibility to builds of
915	  OpenSSL with OPENSSL_NO_EC2M defined, but OPENSSL_NO_EC not
916	  defined.
917	* test/openssl/test_pkey_ec.rb: Iterate over built-in curves
918	  (and assert their non-emptiness!) instead of hard-coding them, as
919	  this may cause problems with respect to the different availability
920	  of individual curves in individual OpenSSL builds.
921	  [ruby-core:54881] [Bug #8384]
922
923	  Thanks to Vit Ondruch for providing the patch!
924
925Sun Oct 27 01:04:28 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
926
927	* lib/rubygems: Update to RubyGems 2.0.13. [ruby-core:58031]
928	  [Backport #9052]
929	  the patch is provided by drbrain (Eric Hodel).
930
931Sat Oct 26 16:04:36 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
932
933	* gc.c (gc_prof_set_heap_info): fix compile error when
934	  GC_PROFILE_MORE_DETAIL != 0.
935	  the patch is provided by ko1 (Koichi Sasada).
936
937Thu Oct 24 23:27:12 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
938
939	* lib/rubygems: Update to RubyGems 2.0.12. [ruby-core:57818]
940	  [Backport #9014]
941	  the patch is provided by drbrain (Eric Hodel).
942
943Thu Oct 24 22:49:28 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
944
945	* parse.y: Remove +(binary) and -(binary) special cases
946	  [Feature #9048]
947
948Thu Oct 24 22:36:56 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
949
950	* encoding.c (load_encoding): should preserve outer errinfo, so that
951	  expected exception may not be lost.  [ruby-core:57949] [Bug #9038]
952
953Fri Oct 18 02:10:00 2013  Shugo Maeda  <shugo@ruby-lang.org>
954
955	* vm_insnhelper.c (vm_call_method): set ci->me to 0 when the
956	  original method of a refined method is undef to avoid SEGV.
957
958	* vm_method.c (rb_method_entry_without_refinements): return 0 when
959	  the original method of a refined method is undef to avoid SEGV.
960
961	* test/ruby/test_refinement.rb: related test.
962
963Fri Oct 18 02:05:45 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
964
965	* win32/file.c (rb_file_expand_path_internal): fix memory leaks at
966	  a non-absolute home exception.
967
968Thu Oct 10 01:14:37 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
969
970	* compar.c (cmp_eq): fail if recursion.  [ruby-core:57736] [Bug #9003]
971
972	* thread.c (rb_exec_recursive_paired_outer): new function which is
973	  combinnation of paired and outer variants.
974
975Thu Oct 10 01:07:37 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
976
977	* lib/tempfile.rb (Tempfile#unlink): finalizer is no longer needed
978	  after unlinking.  patched by by normalperson (Eric Wong) at
979	  [ruby-core:56521] [Bug #8768]
980
981Thu Oct 10 00:58:39 2013  Benoit Daloze  <eregontp@gmail.com>
982
983	* test/ruby/test_array.rb (test_count): add a test case for #count
984	  with an argument. See Bug #8654.
985
986Thu Oct 10 00:58:39 2013  Benoit Daloze  <eregontp@gmail.com>
987
988	* array.c (rb_ary_count): check length to avoid SEGV
989	  while iterating. Remove other pointer loop when arg is given.
990
991	* test/ruby/test_array.rb (test_count): add test for bug.
992	  [ruby-core:56072] [Bug #8654]
993
994Thu Oct 10 00:58:39 2013  Masaki Matsushita  <glass.saga@gmail.com>
995
996	* array.c (rb_ary_count): iterate items appropriately.
997	  [Bug #8654]
998
999Thu Oct 10 00:44:28 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1000
1001	* process.c (rb_fork_internal): remove cloexec setting on pipes
1002	  created by rb_cloexec_pipe.  patch by normalperson (Eric Wong) at
1003	  [ruby-core:56523].  [Bug #8769]
1004
1005Thu Oct 10 00:24:01 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
1006
1007	* cont.c: disable FIBER_USE_NATIVE on GNU/Hurd because it doesn't
1008	  support a combination getcontext() and threads. Patch by
1009	  Gabriele Giacone (1o5g4r8o@gmail.com). [Bug #8990][ruby-core:57685]
1010
1011Mon Oct  7 21:03:54 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1012
1013	* configure.in, win32/Makefile.sub (FIBER_USE_NATIVE): move conditions
1014	  from cont.c
1015
1016Thu Oct 10 00:17:56 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
1017
1018	* test/dl/test_base.rb: {libc, libm} detection now handle GNU/Hurd
1019	  correctly. Patch by Gabriele Giacone (1o5g4r8o@gmail.com).
1020	  [Bug #8937][ruby-core:57311]
1021	* test/fiddle/helper.rb: ditto.
1022
1023Thu Oct 10 00:00:30 2013  Tanaka Akira  <akr@fsij.org>
1024
1025	* lib/time.rb (Time.strptime): Time.strptime('0', '%s') returns local
1026	  time Time object as Ruby 2.0 and before.
1027
1028Thu Oct 10 00:00:30 2013  Tanaka Akira  <akr@fsij.org>
1029
1030	* lib/time.rb (Time.strptime): Use :offset.
1031	  Patch by Felipe Contreras.  [ruby-core:57694]
1032
1033Wed Oct  9 23:32:37 2013  Koichi Sasada  <ko1@atdot.net>
1034
1035	* gc.c (rb_gc_disable): do rest_sweep() before disable GC.
1036	  This fix may solve a failure of
1037	  TestTracepointObj#test_tracks_objspace_events
1038	  [test/-ext-/tracepoint/test_tracepoint.rb:43].
1039
1040Sat Oct  5 02:14:56 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1041
1042	* io.c (rb_io_close_read): duplex IO should wait its child process
1043	  even after close_read.
1044
1045Sat Oct  5 02:14:56 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1046
1047	* io.c (rb_io_close_read): keep fptr in write_io to be discarded, to
1048	  fix freed pointer access when it is in use by other threads, and get
1049	  rid of potential memory/fd leak.
1050
1051Sat Oct  5 01:59:50 2013  Shugo Maeda  <shugo@ruby-lang.org>
1052
1053	* vm_method.c (rb_undef): raise a NameError if the original method
1054	  of a refined method is not defined.
1055
1056	* vm_insnhelper.c (rb_method_entry_eq): added NULL check to avoid SEGV.
1057
1058	* test/ruby/test_refinement.rb: related test.
1059
1060Sat Oct  5 00:16:33 2013  NARUSE, Yui  <naruse@ruby-lang.org>
1061
1062	* process.c (rb_daemon): daemon(3) is implemented with fork(2).
1063	  Therefore it needs rb_thread_atfork(). (and revert r41903)
1064
1065Sat Oct  5 00:16:33 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1066
1067	* process.c (fork_daemon): kill the other threads all and abandon the
1068	  kept mutexes.
1069
1070Sat Oct  5 00:16:33 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1071
1072	* process.c (fork_daemon): kill the other threads all and abandon the
1073	  kept mutexes.
1074
1075Tue Oct  1 00:28:40 2013  SHIBATA Hiroshi  <shibata.hiroshi@gmail.com>
1076
1077	* tool/make-snapshot: Fix order of priority for option parameter.
1078
1079Sat Sep 28 21:40:40 2013  Kenichi Kamiya  <kachick1@gmail.com>
1080
1081	* random.c (rb_random_ulong_limited): coerce before check negative.
1082	  [Fixes GH-379]
1083
1084Fri Sep 27 01:24:20 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
1085
1086	* lib/rubygems: Update to Rubygems 2.0.10. [ruby-core:57360]
1087	  [Backport #8950]
1088	  the patch is provided by drbrain (Eric Hodel).
1089	  this update contains a security fix for CVE-2013-4363.
1090
1091Fri Sep 27 01:11:21 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1092
1093	* parse.y (lambda): adjust position to the beginning of the block.
1094
1095Fri Sep 27 01:02:59 2013  NARUSE, Yui  <naruse@ruby-lang.org>
1096
1097	* lib/uri/generic.rb (URI::Generic.find_proxy): return nil if
1098	  http_proxy environment variable is empty string.
1099	  [ruby-core:57140] [Bug #8898]
1100
1101Fri Sep 27 00:58:57 2013  Zachary Scott  <e@zzak.io>
1102
1103	* lib/gserver.rb: [DOC] correct gserver.rb license [Bug #8913]
1104
1105Sun Sep 15 23:15:32 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
1106
1107	* lib/rubygems: Update to Rubygems 2.0.9. [ruby-core:57183]
1108	  [Backport #8908]
1109	  the patch is provided by drbrain (Eric Hodel).
1110
1111Sun Sep 15 22:59:04 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1112
1113	* tool/rbinstall.rb (Gem::Specification#initialize): default date to
1114	  RUBY_RELEASE_DATE.  [ruby-core:57072] [Bug #8878]
1115
1116	* tool/rbinstall.rb (Gem::Specification#to_ruby): add date.
1117
1118Sun Sep 15 22:55:44 2013  Zachary Scott  <e@zzak.io>
1119
1120	* hash.c (rb_hash_aset): [DOC] Document key dup patch by @kachick
1121	  [Fixes GH-382] https://github.com/ruby/ruby/pull/382
1122
1123Sun Sep 15 22:03:01 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1124
1125	* vsnprintf.c (MAXEXP, MAXFRACT): calculate depending on constants in
1126	  float.h.
1127
1128	* vsnprintf.c (BSD_vfprintf): limit length for cvt() to get rid of
1129	  buffer overflow.  [ruby-core:57023] [Bug #8864]
1130
1131	* vsnprintf.c (exponent): make expbuf size more precise.
1132
1133Sat Sep 14 00:01:20 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
1134
1135	* lib/rubygems: Update to RubyGems 2.0.8. [ruby-core:57155]
1136	  [Backport #8900]
1137	  the patch is provided by drbrain (Eric Hodel).
1138	  this update contains a security fix for CVE-2013-4287.
1139
1140Fri Sep 13 23:20:29 2013  Kenichi Kamiya  <kachick1@gmail.com>
1141
1142	* object.c (Init_Object): undef Module#prepend_features on Class, as
1143	  well as Module#append_features.  [Fixes GH-376]
1144
1145	* test_class.rb: Added test for above. And ensure type checking
1146	  on similar methods as module_function.
1147
1148Fri Sep 13 23:16:12 2013  Zachary Scott  <e@zzak.io>
1149
1150	* enumerator.c: [DOC] Remove reference to Enumerator::Lazy#cycle
1151	  Patch by @kachick [Fixes GH-372]
1152	  https://github.com/ruby/ruby/pull/372
1153
1154Fri Sep 13 22:40:28 2013  Koichi Sasada  <ko1@atdot.net>
1155
1156	* vm_insnhelper.c (vm_search_super_method): use ci->argc instead of
1157	  ci->orig_argc. ci->argc can be changed by splat arguments.
1158	  [ruby-list:49575]
1159	  This fix should be applied to Ruby 2.0.0 series.
1160
1161	* test/ruby/test_super.rb: add a test for above.
1162
1163Fri Sep 13 01:44:54 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
1164
1165	* thread.c (rb_mutex_unlock): Mutex#unlock no longer raise
1166	  an exception even if uses on trap. [Bug #8891]
1167
1168Fri Sep 13 01:09:59 2013  Shota Fukumori  <sorah@tubusu.net>
1169
1170	* vm_backtrace.c (vm_backtrace_to_ary): Ignore the second argument if
1171	  it is nil. [Bug #8884] [ruby-core:57094]
1172
1173	* test/ruby/test_backtrace.rb (test_caller_with_nil_length):
1174	  Test for above.
1175
1176Fri Sep 13 00:57:54 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1177
1178	* class.c (method_entry_i): should exclude refined methods from
1179	  instance method list.  [ruby-core:57080] [Bug #8881]
1180
1181Fri Sep 13 00:33:09 2013  Charlie Somerville  <charliesome@ruby-lang.org>
1182
1183	* vm_eval.c (vm_call0): fix prototype, the id parameter should be of
1184	  type ID, not VALUE
1185
1186	* vm_insnhelper.c (check_match): the rb_funcall family of functions
1187	  does not care about refinements. We need to use
1188	  rb_method_entry_with_refinements instead to call === with
1189	  refinements. Thanks to Jon Conley for reporting this bug.
1190	  [ruby-core:57051] [Bug #8872]
1191
1192	* test/ruby/test_refinement.rb: add test
1193
1194Fri Sep 13 00:18:55 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1195
1196	* enumerator.c (lazy_zip_func): fix non-single argument.  fix
1197	  out-of-bound access and pack multiple yielded values.
1198	  [ruby-core:56383] [Bug #8735]
1199
1200Thu Sep 12 01:44:01 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1201
1202	* string.c (str_gsub): use BEG(0) for whole matched position not
1203	  return value from rb_reg_search(), for \K matching.
1204	  [ruby-dev:47694] [Bug #8856]
1205
1206Thu Sep 12 01:34:07 2013  Charlie Somerville  <charliesome@ruby-lang.org>
1207
1208	* object.c (rb_class_inherited_p): allow iclasses to be tested for
1209	  inheritance. [Bug #8686] [ruby-core:56174]
1210
1211	* test/ruby/test_method.rb: add test
1212
1213Thu Sep 12 01:18:44 2013  Michal Rokos  <michal@rokos.cz>
1214
1215	* configure.in (sys/pstat.h): fix missing header check for
1216	  missing/setproctitle.c on HP-UX.  [ruby-core:56644] [Bug #8792]
1217
1218Thu Sep 12 01:02:56 2013  Benoit Daloze  <eregontp@gmail.com>
1219
1220	* test/ruby/test_time.rb: use the in_timezone() helper
1221	  and define it at the top with other helpers.
1222
1223Thu Sep 12 01:02:56 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1224
1225	* time.c (time_mload): ignore auxiliary data, offset and zone, if
1226	  invalid.  [ruby-core:56648] [Bug #8795]
1227
1228Thu Sep 12 00:22:22 2013  Kazuki Tsujimoto  <kazuki@callcc.net>
1229
1230	* variable.c (classname): the name of class that has
1231	  non class id should not be nil. This bug was introduced
1232	  in r36577.
1233
1234	* test/thread/test_cv.rb: test for change.
1235
1236Thu Aug 29 21:51:33 2013  Eric Hodel  <drbrain@segment7.net>
1237
1238	* ext/zlib/zlib.c (zstream_run):  Fix handling of deflate streams that
1239	  need a dictionary but are being decompressed by Zlib::Inflate.inflate
1240	  (which has no option to set a dictionary).  Now Zlib::NeedDict is
1241	  raised instead of crashing.  [ruby-trunk - Bug #8829]
1242	* test/zlib/test_zlib.rb (TestZlibInflate):  Test for the above.
1243
1244Thu Aug 29 21:28:56 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1245
1246	* vm_insnhelper.c (vm_call_method): a method entry refers the based
1247	  class/module, so should search superclass from the origin i-class
1248	  where the entry belongs to, to get rid of infinite loop when zsuper
1249	  in a prepended class/module.  [ruby-core:54105] [Bug #8238]
1250
1251Fri Aug 23 01:16:00 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1252
1253	* ext/date/date_parse.c (rfc2822_cb): check if wday is given, since it
1254	  can be omitted.
1255
1256Fri Aug 23 00:55:02 2013  Tanaka Akira  <akr@fsij.org>
1257
1258	* gc.c (getrusage_time): Fallback clock_gettime to getrusage when
1259	  clock_gettime fails.
1260	  Reported by Eric Saxby.  [ruby-core:56762] [Bug #8805]
1261	  
1262Sat Aug 17 00:42:12 2013  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
1263
1264	* parse.y: fix build error with bison-3.0.
1265
1266Sat Aug 17 00:39:20 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
1267
1268	* test/webrick/test_cgi.rb (TestWEBrickCGI#{start_cgi_server,test_cgi}):
1269	  mswin is not only mswin32 but also mswin64. [Bug #8746]
1270
1271Sat Aug 17 00:36:24 2013  Charlie Somerville  <charliesome@ruby-lang.org>
1272
1273	* test/openssl/test_ssl.rb: Fix test for CVE-2013-4073.
1274	  Patch by Antonio Terceiro. [Bug #8750] [ruby-core:56437]
1275
1276Sat Aug 17 00:32:17 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
1277
1278	* lib/rubygems: update to RubyGems 2.0.7. the patch by drbrain.
1279	  [ruby-core:56633] [Backport #8787]
1280
1281Sat Aug 10 23:59:47 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
1282
1283	* test/coverage/test_coverage.rb (TestCoverage#test_big_code): use `1'
1284	  instead of `p' to get rid of a side effect.
1285	  Kernel#p without any argument seems to do nothing, but flushes stdout.
1286	  and, if stdout is redirected to file, fsync() will be called on
1287	  Windows.  so, when running test-all on Windows with redirection, such
1288	  as CI environment, this test took a lot of time.
1289
1290Sun Aug  4 22:42:16 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
1291
1292	* win32/win32.c (wrename): use MoveFileExW instead of MoveFileW,
1293	  because the latter fails on cross device file move of some
1294	  environments.
1295	  fix [ruby-core:53492] [Bug #8109]
1296	  reported by mitchellh (Mitchell Hashimoto)
1297
1298Sat Aug  3 23:02:09 2013  Tanaka Akira  <akr@fsij.org>
1299
1300	* ext/extmk.rb (extmake): Invoke Logging::log_close in a ensure
1301	  clause.
1302
1303Sat Aug  3 23:02:09 2013  Tanaka Akira  <akr@fsij.org>
1304
1305	* ext/extmk.rb (extmake): Use Logging.open to switch stdout and
1306	  stderr.  Delay Logging::log_close until the failure message is
1307	  written.  Write the failure message only if log file is opened.
1308
1309	* lib/mkmf.rb (Logging.log_opened?): New method.
1310
1311	  [ruby-dev:47215] [Bug #8209]
1312
1313Sat Aug  3 22:46:19 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1314
1315	* lib/mkmf.rb (xsystem): expand environment variable in all macros not
1316	  expanded with RbConfig.  [Bug #8702]
1317
1318	* test/mkmf/test_framework.rb (create_framework): replace all $@ not
1319	  only once.
1320
1321Sat Aug  3 22:40:57 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1322
1323	* lib/mkmf.rb (have_framework): allow header file to check.
1324	  [ruby-core:55745] [Bug #8593]
1325
1326Sat Aug  3 22:24:44 2013  Shota Fukumori  <her@sorah.jp>
1327
1328	* lib/uri/common.rb (URI.decode_www_form_component):
1329	  Don't raise error when str includes multibyte characters.
1330
1331Sun Jul 28 22:00:10 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1332
1333	* rational.c (f_round_common): Rational is expected to be returned by
1334	  Rational#*, but mathn.rb breaks that assumption.  [ruby-core:56177]
1335	  [Bug #8687]
1336
1337Sun Jul 28 21:50:34 2013  Masaki Matsushita  <glass.saga@gmail.com>
1338
1339	* io.c (io_getpartial): use rb_str_locktmp_ensure().
1340	  [ruby-core:56121] [Bug #8669]
1341
1342	* io.c (rb_io_sysread): ditto.
1343
1344	* test/ruby/test_io.rb: add tests for above.
1345
1346Sun Jul 28 21:50:34 2013  Masaki Matsushita  <glass.saga@gmail.com>
1347
1348	* string.c: add internal API rb_str_locktmp_ensure().
1349
1350	* io.c (io_fread): use rb_str_locktmp_ensure().
1351	  [ruby-core:56121] [Bug #8669]
1352
1353	* test/ruby/test_io.rb: add a test for above.
1354
1355Sun Jul 28 21:44:57 2013  Eric Hodel  <drbrain@segment7.net>
1356
1357	* ext/openssl/ossl_asn1.c (asn1time_to_time):  Implement YYMMDDhhmmZ
1358	  format for ASN.1 UTCTime.  [ruby-trunk - Bug #8664]
1359	* test/openssl/test_asn1.rb:  Test for the above.
1360
1361Fri Jul 26 00:38:58 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
1362
1363	* lib/rubygems: Update to RubyGems 2.0.6. [ruby-core:56160]
1364	  [Backport #8682]
1365
1366Wed Jul 24 22:35:32 2013  NARUSE, Yui  <naruse@ruby-lang.org>
1367
1368	* lib/uri/generic.rb (find_proxy): raise BadURIError if the URI is
1369	  a relative URI. [Bug #8645]
1370
1371Wed Jul 24 01:13:02 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
1372
1373	* include/ruby/intern.h (rb_f_lambde): restore the declaration of
1374	  rb_f_lambda() for backword compatibility. and mark it as deprecated.
1375
1376Tue Jul 23 01:36:43 2013  Zachary Scott  <e@zzak.io>
1377
1378	* lib/rubygems/psych_additions.rb: Ignore Psych docs here
1379
1380Tue Jul 23 01:34:00 2013  Koichi Sasada  <ko1@atdot.net>
1381
1382	* test/test_tracer.rb: catch up recent rubygems changes.
1383
1384Tue Jul 23 01:28:54 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
1385
1386	* lib/rubygems: Update to RubyGems 2.0.5.
1387	  The patch provided by drbrain (Eric Hodel). [ruby-core:55896]
1388	  [Backport #8617]
1389
1390	* test/rubygems:  Tests for the above.
1391
1392Tue Jul 23 00:00:27 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1393
1394	* vm_eval.c (eval_string_with_cref): use the given file name unless
1395	  eval even if scope is given.  additional fix for [Bug #8436].
1396	  based on the patch by srawlins at [ruby-core:56099] [Bug #8662].
1397
1398Sat Jul 20 23:49:33 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
1399
1400	* test/drb/drbtest.rb (Drb{Core,Ary}#teardown): retry Process.kill
1401	  if it fails with Errno::EPERM on Windows (workaround).
1402	  [ruby-dev:47245] [Bug #8251]
1403
1404Sat Jul 20 23:31:11 2013  Aman Gupta  <tmm1@ruby-lang.org>
1405
1406	* iseq.c (iseq_location_setup): re-use existing string when iseq has
1407	  the same path and absolute_path. [Bug #8149]
1408
1409Sun Jul 14 00:18:08 2013  Zachary Scott  <e@zzak.io>
1410
1411	* sprintf.c: Fix typo patch by @hynkle [Fixes GH-357]
1412	  https://github.com/ruby/ruby/pull/357
1413
1414Sun Jul 14 00:17:07 2013  Zachary Scott  <zachary@zacharyscott.net>
1415
1416	* man/ri.1: Incorrect use of .Dd macro [Bug #8620] by Tristan Hill
1417
1418Sun Jul 14 00:15:26 2013  Zachary Scott  <zachary@zacharyscott.net>
1419
1420	* lib/logger.rb: Use :call-seq: for method signature rdoc
1421
1422Sun Jul 14 00:13:01 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
1423
1424	* test/net/http/test_http.rb (TestNetHTTP_v1_2#test_get,
1425	  TestNetHTTP_v1_2_chunked#test_get): shouldn't check
1426	  HttpResponse#decode_content if Zlib is not available.
1427	  ko1 complained via IRC.
1428
1429Sat Jul 13 23:50:00 2013  Tadayoshi Funaba  <tadf@dotrb.org>
1430
1431	* ext/date/date_core.c: fixed coding error [ruby-core:55337].
1432	  reported by Riley Lynch.
1433
1434Sat Jul 13 23:50:00 2013  Tadayoshi Funaba  <tadf@dotrb.org>
1435
1436	* ext/date/date_core.c: fixed a bug [ruby-core:55295].  reported
1437	  by Riley Lynch.
1438
1439Sat Jul 13 23:41:25 2013  Tadayoshi Funaba  <tadf@dotrb.org>
1440
1441	* ext/date/date_parse.c (date_zone_to_diff): [ruby-core:55831].
1442
1443Sat Jul 13 23:34:13 2013  Akinori MUSHA  <knu@iDaemons.org>
1444
1445	* object.c: Fix rdoc for Kernel#<=>. [Fix GH-352]
1446
1447Sat Jul 13 23:29:51 2013  Akinori MUSHA  <knu@iDaemons.org>
1448
1449	* lib/fileutils.rb (FileUtils#mode_to_s): Define mode_to_s() also
1450	  as singleton method, or FileUtils.chmod fails in verbose mode.
1451
1452Sat Jul 13 23:27:12 2013  Akinori MUSHA  <knu@iDaemons.org>
1453
1454	* lib/fileutils.rb (FileUtils#chown, FileUtils#chown_R): If user
1455	  and group are both nil, print ":".
1456
1457Sat Jul 13 23:16:49 2013  Tanaka Akira  <akr@fsij.org>
1458
1459	* bignum.c (bigrsh_bang): Fix bignum digits overrun.
1460
1461Sat Jul 13 23:16:49 2013  Tanaka Akira  <akr@fsij.org>
1462
1463	* bignum.c (biglsh_bang): Fix bignum digits under-run.
1464
1465Sat Jul 13 22:45:10 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1466
1467	* configure.in (RUBY_DTRACE_POSTPROCESS): dtrace version SUN D 1.11
1468	  introduces a check in the dtrace compiler to ensure that probes
1469	  actually exist. If there are no probes, then the -G step will
1470	  fail. As this test is only being used to determine whether -G is
1471	  necessary (for instance, on OSX it is not), adding a real probe to
1472	  the conftest allows it to succeed on newer versions of dtrace.
1473	  Patch by Eric Saxby <sax AT livinginthepast.org> at
1474	  [ruby-core:55826].  [Fix GH-351], [Bug #8606].
1475
1476Sat Jul 13 22:41:20 2013  Martin Bosslet  <Martin.Bosslet@gmail.com>
1477
1478	* test/openssl/test_x509crl.rb: Remove unused variable.
1479	  [ruby-core:53501] [Bug #8114]
1480
1481	  Thanks, Vipul Amler, for pointing this out!
1482
1483Sun Jul  7 02:00:41 2013  Martin Bosslet  <Martin.Bosslet@gmail.com>
1484
1485	* lib/openssl/ssl.rb: Fix SSL client connection crash for SAN marked
1486	  critical.
1487	  The patch for CVE-2013-4073 caused SSL crash when a SSL server returns
1488	  the certificate that has critical SAN value.  X509 extension could
1489	  include 2 or 3 elements in it:
1490
1491	  [id, criticality, octet_string] if critical,
1492	  [id, octet_string] if not.
1493
1494	  Making sure to pick the last element of X509 extension and use it as
1495	  SAN value.
1496	  [ruby-core:55685] [Bug #8575]
1497
1498	  Thank you @nahi for providing the patch!
1499
1500Sun Jul  7 01:58:25 2013  Akinori MUSHA  <knu@iDaemons.org>
1501
1502	* lib/fileutils.rb (FileUtils#symbolic_modes_to_i): Fix the wrong
1503	  character class [+-=], which happened to match all desired
1504	  characters but also match undesired characters.
1505
1506Sun Jul  7 01:54:44 2013  Akinori MUSHA  <knu@iDaemons.org>
1507
1508	* lib/fileutils.rb (FileUtils#chown, FileUtils#chown_R): Fix the
1509	  wrong output message when user is nil, which should be "chown
1510	  :group file" instead of "chown group file".
1511
1512Fri Jul  5 00:55:05 2013  NARUSE, Yui  <naruse@ruby-lang.org>
1513
1514	* regcomp.c (): Merge Onigmo 5.13.5 23b523076d6f1161.
1515
1516	  * [bug]  (thanks Akinori MUSHA and Ippei Obayashi)
1517	           Fix a renumbering bug in condition regexp with a named
1518	           capture. [Bug #8583]
1519	  * [spec] (thanks Akinori MUSHA)
1520	    Allow ENCLOSE_OPTION in look-behind.
1521
1522Wed Jul  3 23:31:26 2013  Shota Fukumori  <sorah@cookpad.com>
1523
1524	* lib/mkmf.rb (try_config): Fix to not replace $LDFLAGS with $libs
1525	  (1.9.3 behavior) [ruby-core:55752] [Bug #8595]
1526
1527Tue Jul  2 03:06:38 2013  Kenta Murata  <mrkn@mrkn.jp>
1528
1529	* ext/bigdecimal/bigdecimal.c (BigMath_s_exp): Fix for the cases when
1530	  the argument x is not a BigDecimal.
1531	  This change is based on the patch made by Heesob Park and Garth Snyder.
1532	  [Bug #6862] [ruby-core:47145]
1533	  [Fix GH-332] https://github.com/ruby/ruby/pull/332
1534
1535Fri Jun 28 02:20:13 2013  Aman Gupta  <ruby@tmm1.net>
1536
1537	* compile.c (iseq_add_mark_object): Use new rb_iseq_add_mark_object().
1538
1539	* insns.def (setinlinecache): Ditto.
1540
1541	* iseq.c (rb_iseq_add_mark_object): New function to allocate
1542	  iseq->mark_ary on demand. [Bug #8142]
1543
1544	* iseq.h (rb_iseq_add_mark_object): Ditto.
1545
1546	* iseq.c (prepare_iseq_build): Avoid allocating mark_ary until needed.
1547
1548	* iseq.c (rb_iseq_build_for_ruby2cext): Ditto.
1549
1550Thu Jun 27 20:10:56 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
1551
1552	* ext/openssl/lib/openssl/ssl.rb (verify_certificate_identity): fix
1553	  hostname verification. Patched by nahi.
1554
1555	* test/openssl/test_ssl.rb (test_verify_certificate_identity): test for
1556	  above.
1557
1558
1559Thu Jun 27 13:16:40 2013  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
1560
1561	* test/rubygems/test_gem_installer.rb (test_install_extension_flat):
1562	  use ruby in build directory in case ruby is not installed.
1563	  [ruby-core:53265] [Bug #8058]
1564
1565Wed Jun 26 23:05:34 2013  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
1566
1567	* test/ruby/test_io.rb (TestIO#test_write_32bit_boundary): skip if
1568	  writing a file is slow.
1569	  [ruby-core:55541] [Bug #8519]
1570
1571Wed Jun 26 22:42:36 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1572
1573	* lib/mkmf.rb: should use expanded values for header directories
1574	  unless extmk.  patch by vo.x (Vit Ondruch) at [ruby-core:55653]
1575	  [Bug #8115], rhbz#921650.
1576
1577Wed Jun 26 02:25:52 2013  Akinori MUSHA  <knu@iDaemons.org>
1578
1579	* lib/rubygems/ext/builder.rb (Gem::Ext::Builder.make): Pass
1580	  DESTDIR via command line to override what's in MAKEFLAGS.  This
1581	  fixes an installation problem under a package building
1582	  environment where DESTDIR is specified in the (parent) command
1583	  line. [Fixes GH-327]
1584
1585Tue Jun 25 00:12:19 2013  Zachary Scott  <zachary@zacharyscott.net>
1586
1587	* array.c: Return value in Array overview example found by @PragTob
1588	  [Fix GH-336] https://github.com/ruby/ruby/pull/336
1589
1590Tue Jun 25 00:11:46 2013  Zachary Scott  <zachary@zacharyscott.net>
1591
1592	* array.c (rb_ary_zip): typo by @PragTob [Fix GH-337]
1593	  https://github.com/ruby/ruby/pull/337
1594
1595Tue Jun 25 00:10:54 2013  Zachary Scott  <zachary@zacharyscott.net>
1596
1597	* win32/README.win32: grammar typo by @blankenshipz [Fix GH-334]
1598	  https://github.com/ruby/ruby/pull/334
1599
1600Sun Jun 23 00:03:18 2013  Charlie Somerville  <charliesome@ruby-lang.org>
1601
1602	* ext/etc/etc.c (etc_getpwnam): use PRIsVALUE in format string instead
1603	  of %s and RSTRING_PTR
1604
1605	* ext/etc/etc.c (etc_getgrnam): ditto
1606
1607Sat Jun 22 00:54:41 2013  Eric Hodel  <drbrain@segment7.net>
1608
1609	* lib/rubygems:  Update to RubyGems 2.0.3
1610
1611	* test/rubygems:  Tests for the above.
1612
1613	* NEWS:  Added RubyGems 2.0.3 note.
1614
1615Wed Jun 19 04:20:31 2013  Charlie Somerville  <charliesome@ruby-lang.org>
1616
1617	* vm_insnhelper.c (vm_call_method): ensure methods of type
1618	  VM_METHOD_TYPE_ATTR_SET are called with 1 argument
1619
1620	* test/ruby/test_module.rb (class TestModule): add test
1621
1622	[ruby-core:55543] [Bug #8540]
1623
1624Wed Jun 19 03:54:04 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1625
1626	* defs/id.def (predefined): add "idProc".
1627
1628	* proc.c (mnew, mproc, mlambda): use predefined IDs.
1629
1630	* vm.c (Init_VM): ditto.
1631
1632Wed Jun 19 03:54:04 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1633
1634	* include/ruby/intern.h (rb_block_lambda): add declaration instead of
1635	  deprecated rb_f_lambda.
1636
1637Wed Jun 19 03:24:07 2013  Kazuki Tsujimoto  <kazuki@callcc.net>
1638
1639	* include/ruby/ruby.h, vm_eval.c (rb_funcall_with_block):
1640	  new function to invoke a method with a block passed
1641	  as an argument.
1642
1643	* string.c (sym_call): use the above function to avoid
1644	  a block sharing. [ruby-dev:47438] [Bug #8531]
1645
1646	* vm_insnhelper.c (vm_yield_with_cfunc): don't set block
1647	  in the frame.
1648
1649	* test/ruby/test_symbol.rb (TestSymbol#test_block_given_to_proc):
1650	  run related tests.
1651
1652Wed Jun 19 03:06:57 2013  Kazuki Tsujimoto  <kazuki@callcc.net>
1653
1654	* test/ruby/test_proc.rb (TestProc#test_block_given_method_to_proc):
1655	  run test for r41359.
1656
1657Wed Jun 19 03:06:57 2013  Kazuki Tsujimoto  <kazuki@callcc.net>
1658
1659	* include/ruby/intern.h, proc.c (rb_method_call_with_block):
1660	  new function to invoke a Method object with a block passed
1661	  as an argument.
1662
1663	* proc.c (bmcall): use the above function to avoid a block sharing.
1664	  [ruby-core:54626] [Bug #8341]
1665
1666	* test/ruby/test_proc.rb (TestProc#test_block_persist_between_calls):
1667	  run related tests.
1668
1669Tue Jun 18 02:49:20 2013  NARUSE, Yui  <naruse@ruby-lang.org>
1670
1671	* test/ruby/envutil.rb (assert_separately): stop_auto_run of
1672	  Test::Unit::Runner to prevent auto runner use ARGV.
1673
1674	* test/ruby/envutil.rb (assert_separately): add $: to separate process.
1675
1676	* test/ruby/envutil.rb (assert_separately): fail if stderr is not
1677	  empty and ignore_stderr is false.
1678
1679Tue Jun 18 02:21:54 2013  NARUSE, Yui  <naruse@ruby-lang.org>
1680
1681	* test/ruby/envutil.rb (EnvUtil.with_default_external): add for
1682	  changing Encoding.default_external without warnings.
1683
1684	* test/ruby/envutil.rb (EnvUtil.with_default_internal): ditto.
1685
1686	* test/ruby/test_io_m17n.rb: use above with_default_external.
1687
1688Tue Jun 18 00:43:27 2013  Zachary Scott  <zachary@zacharyscott.net>
1689
1690	* vm_backtrace.c: Update rdoc for Backtrace#label with @_ko1
1691
1692Tue Jun 18 00:34:57 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
1693
1694merge revision(s) 41347: [Backport #5048] [Backport #5465] [Backport #8319]
1695
1696        * ext/tk/extconf.rb: support s390x (Thanks to bkabrda) [Bug #5465]
1697
1698	* ext/tk/extconf.rb: apply [Bug #5048]
1699
1700	* ext/tk/lib/tk/canvas.rb,ext/tk/sample/demos-{en,jp}/{tree.rb,widget}:
1701	  fix bug (Thanks to zzak) [ruby-trunk - Bug #8319]
1702
1703Sun Jun 16 01:56:54 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1704
1705	* array.c (FL_SET_EMBED): shared object is frozen even when get
1706	  unshared.
1707
1708	* array.c (rb_ary_modify): ARY_SET_CAPA needs unshared array.
1709
1710Sun Jun 16 01:32:26 2013  TAKANO Mitsuhiro <tak@no32.tk>
1711
1712	* insns.def: fix condition.
1713
1714Sun Jun 16 01:22:35 2013  Eric Hodel  <drbrain@segment7.net>
1715
1716	* ext/socket/extconf.rb:  Enable RFC 3542 IPV6 socket options for OS X
1717	  10.7+.  [ruby-trunk - Bug #8517]
1718
1719Sun Jun 16 01:11:10 2013  Koichi Sasada  <ko1@atdot.net>
1720
1721	* compile.c (rb_iseq_compile_node): fix location of a `trace'
1722	  instruction (b_return event).
1723	  [ruby-core:55305] [ruby-trunk - Bug #8489]
1724	  (need a backport to 2.0.0?)
1725
1726	* test/ruby/test_settracefunc.rb: add a test.
1727
1728Sun Jun 16 00:30:56 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1729
1730	* vm_eval.c (eval_string_with_cref): propagate absolute path from the
1731	  binding if it is given explicitly.  patch by Gat (Dawid Janczak) at
1732	  [ruby-core:55123]. [Bug #8436]
1733
1734Wed Jun 12 23:41:21 2013  NARUSE, Yui  <naruse@ruby-lang.org>
1735
1736	* vm_insnhelper.c (vm_yield_setup_block_args): partially revert r41019.
1737	  The code is not useless.
1738
1739Wed Jun 12 23:41:21 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1740
1741	* vm_insnhelper.c (vm_yield_setup_block_args): split single parameter
1742	  if any keyword arguments exist, and then extract keyword arguments.
1743	  [ruby-core:55203] [Bug #8463]
1744
1745Wed Jun 12 23:05:41 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1746
1747	* io.c (io_getc): fix 7bit coderange condition, check if ascii read
1748	  data instead of read length. [ruby-core:55444] [Bug #8516]
1749
1750Sun Jun  9 02:27:07 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1751
1752	* lib/mkmf.rb (install_dirs, with_destdir): prefix with DESTDIR
1753	  directories to install only unless bundled extension libraries.
1754	  [ruby-core:53502] [Bug #8115]
1755
1756Sun Jun  9 02:17:16 2013  Charlie Somerville  <charliesome@ruby-lang.org>
1757
1758	* class.c (include_modules_at): invalidate method cache if included
1759	  module contains constants
1760
1761	* test/ruby/test_module.rb: add test
1762
1763Sun Jun  9 01:59:39 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
1764
1765merge revision 40783 (partially): [Backport #8413]
1766
1767	* win32/Makefile.sub: fix a typo in config.h.
1768
1769Sun Jun  9 01:38:55 2013  Charlie Somerville  <charliesome@ruby-lang.org>
1770
1771	* intern.h: remove dangling rb_class_init_copy declaration
1772	  [ruby-core:55120] [Bug #8434]
1773
1774Sun Jun  9 01:30:57 2013  Shugo Maeda  <shugo@ruby-lang.org>
1775
1776	* lib/net/imap.rb (capability_response): should ignore trailing
1777	  spaces.  Thanks, Peter Kovacs.  [ruby-core:55024] [Bug #8415]
1778
1779	* test/net/imap/test_imap_response_parser.rb: related test.
1780
1781Wed Jun  5 00:38:46 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1782
1783	* ext/zlib/zlib.c (gzfile_read, gzfile_read_all, gzfile_getc),
1784	  (gzreader_gets): check EOF.  [ruby-core:55220] [Bug #8467]
1785
1786Wed Jun  5 00:32:18 2013  Tanaka Akira  <akr@fsij.org>
1787
1788	* test/ruby/test_require.rb: Remove temporally files in the tests.
1789
1790	* test/ruby/test_rubyoptions.rb: Ditto.
1791
1792	* test/logger/test_logger.rb: Ditto.
1793
1794	* test/psych/test_psych.rb: Ditto.
1795
1796	* test/readline/test_readline.rb: Ditto.
1797
1798	* test/syslog/test_syslog_logger.rb: Ditto.
1799
1800	* test/webrick/test_httpauth.rb: Ditto.
1801
1802	* test/zlib/test_zlib.rb: Ditto.
1803
1804Wed Jun  5 00:08:55 2013  Yusuke Endoh  <mame@tsg.ne.jp>
1805
1806	* dir.c (bracket): fix copy-paste error.  When the first and last
1807	  characters of fnmatch range have different length, fnmatch may
1808	  have wrongly matched a path that does not really match.
1809	  Coverity Scan found this bug.
1810
1811Wed Jun  5 00:04:12 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1812
1813	* string.c (rb_str_quote_unprintable): check if argument is a string.
1814
1815Tue Jun  4 23:42:18 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1816
1817	* load.c (loaded_feature_path): fix invalid read by index underflow.
1818	  the beginning of name is also a boundary as well as just after '/'.
1819
1820Tue Jun  4 23:32:12 2013  Charlie Somerville  <charliesome@ruby-lang.org>
1821
1822	* variable.c (set_const_visibility): use rb_frame_this_func() instead
1823	  of rb_frame_callee() for getting the name of the called method
1824
1825	* test/ruby/test_module.rb: add test for private_constant with no args
1826
1827Tue Jun  4 23:27:24 2013  Yusuke Endoh  <mame@tsg.ne.jp>
1828
1829	* vm_insnhelper.c (vm_callee_setup_keyword_arg,
1830	  vm_callee_setup_arg_complex): consider a hash argument for keyword
1831	  only when the number of arguments is more than the expected
1832	  mandatory parameters.  [ruby-core:53199] [ruby-trunk - Bug #8040]
1833
1834	* test/ruby/test_keyword.rb: update a test for above.
1835
1836Tue Jun  4 00:46:05 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1837
1838	* win32/win32.c (setup_overlapped, finish_overlapped): extract from
1839	  rb_w32_read() and rb_w32_write().
1840
1841Tue Jun  4 00:02:45 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1842
1843	* vm_core.h (rb_vm_tag): move jmpbuf between tag and prev so ensure to
1844	  be accessible.
1845
1846Tue Jun  4 00:02:45 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1847
1848	* eval_intern.h (TH_PUSH_TAG): ensure jmpbuf to be accessible before
1849	  pushing tag to get rid of unaccessible tag by stack overflow.
1850
1851Mon Jun  3 23:22:58 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1852
1853	* compile.c (iseq_compile_each): forward anonymous and first keyword
1854	  rest argument one.  [ruby-core:55033] [Bug #8416].
1855
1856Sun Jun  2 22:39:24 2013  Zachary Scott  <zachary@zacharyscott.net>
1857
1858	* range.c: Fix rdoc on Range#bsearch [Bug #8242] [ruby-core:54143]
1859
1860Mon May 20 04:00:48 2013  Zachary Scott  <zachary@zacharyscott.net>
1861
1862	* lib/yaml.rb: YAML documentation from #8344 [Bug #8355]
1863
1864Wed May 15 23:22:09 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
1865
1866	* include/ruby/intern.h: should include sys/time.h for struct timeval
1867	  if it exists. [ruby-list:49363]
1868
1869Tue May 14 20:21:41 2013  Eric Hodel  <drbrain@segment7.net>
1870
1871	* lib/rubygems/config_file.rb:  Lazily load .gem/credentials to only
1872	  check permissions when necessary.  RubyGems bug #465
1873	* test/rubygems/test_gem_config_file.rb:  Test for the above.
1874
1875	* test/rubygems/test_gem_commands_push_command.rb:  Remove duplicated
1876	  test.
1877
1878Tue May 14 20:11:00 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
1879
1880	* ext/dl/lib/dl/func.rb (DL::Function#call): check tainted when
1881	  $SAFE > 0.
1882	* ext/fiddle/function.c (function_call): check tainted when $SAFE > 0.
1883	* test/fiddle/test_func.rb (module Fiddle): add test for above.
1884
1885
1886Sun May 12 22:42:25 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
1887
1888	* signal.c (rb_f_kill): fixes typo. s/HAS_KILLPG/HAVE_KILLPG/.
1889
1890Sun May 12 04:23:06 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1891
1892	* parse.y (parser_peek_variable_name): treat invalid global, class,
1893	  and instance variable names as mere strings rather than errors.
1894	  [ruby-core:54885] [Bug #8375]
1895
1896Sun May 12 04:23:06 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1897
1898	* parse.y (parser_yylex): fail if $, @, @@ are not followed by a valid
1899	  name character.  [ruby-core:54846] [Bug #8375].
1900
1901Sun May 12 02:50:30 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1902
1903	* configure.in (RUBY_RM_RECURSIVE): this hack is needed by only
1904	  autoconf 2.69 or earlier on darwin.
1905
1906Sun May 12 02:50:30 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1907
1908	* configure.in (rm, shvar_to_cpp, unexpand_shvar): local is not
1909	  available on old shells.
1910
1911	* configure.in (shvar_to_cpp): escape quotes for old shells.
1912	  [Bug #7959] [Bug #8071]
1913
1914Thu May  9 23:39:47 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1915
1916	* class.c (rb_mod_included_modules): should not include non-modules.
1917	  [ruby-core:53158] [Bug #8025]
1918
1919Thu May  9 23:39:47 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1920
1921	* class.c (rb_mod_included_modules): should not include the original
1922	  module itself.  [ruby-core:53158] [Bug #8025]
1923
1924Wed May  8 23:07:19 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1925
1926	* insns.def (defined): use vm_search_superclass() like as normal super
1927	  call.  based on a patch <https://gist.github.com/wanabe/5520026> by
1928	  wanabe.
1929
1930	* vm_insnhelper.c (vm_search_superclass): return error but not raise
1931	  exceptions.
1932
1933	* vm_insnhelper.c (vm_search_super_method): check the result of
1934	  vm_search_superclass and raise exceptions on error.
1935
1936Wed May  8 23:07:19 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1937
1938	* insns.def (defined): get method entry from the method top level
1939	  frame, not block frame.  [ruby-core:54769] [Bug #8367]
1940
1941Wed May  8 01:18:41 2013  Tanaka Akira  <akr@fsij.org>
1942
1943	* internal.h (MUL_OVERFLOW_SIGNED_INTEGER_P): New macro.
1944	  (MUL_OVERFLOW_FIXNUM_P): Ditto.
1945	  (MUL_OVERFLOW_LONG_P): Ditto.
1946
1947	* array.c (rb_ary_product): Don't overflow on signed integer
1948	  multiplication.
1949
1950	* numeric.c (fix_mul): Ditto.
1951	  (int_pow): Ditto.
1952
1953	* rational.c (f_imul): Ditto.
1954
1955	* insns.def (opt_mult): Ditto.
1956
1957	* thread.c (sleep_timeval): Don't overflow on signed integer addition.
1958
1959	* bignum.c (rb_int2big): Don't overflow on signed integer negation.
1960	  (rb_big2ulong): Ditto.
1961	  (rb_big2long): Ditto.
1962	  (rb_big2ull): Ditto.
1963	  (rb_big2ll): Ditto.
1964
1965Tue May  7 20:13:12 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
1966
1967	* test/ruby/test_thread.rb (invoke_rec): extend timeout 10 -> 50 sec,
1968	  to investigate test failure on rubyci.
1969	  http://a.mrkn.jp/~mrkn/chkbuild/mountain_lion/ruby-2.0.0-m64-o0/log/20130507T052909Z.log.html.gz
1970
1971Sat May  4 23:48:56 2013  Zachary Scott  <zachary@zacharyscott.net>
1972
1973	* doc/security.rdoc: Add note about reporting security vulns
1974
1975Sat May  4 23:44:54 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1976
1977	* object.c (rb_obj_is_kind_of): skip prepending modules.
1978	  [ruby-core:54742] [Bug #8357]
1979
1980	* object.c (rb_class_inherited_p): ditto.
1981	  [ruby-core:54736] [Bug #8357]
1982
1983Thu May  2 23:39:45 2013  Tanaka Akira  <akr@fsij.org>
1984
1985	* thread.c (double2timeval): convert the infinity to TIME_MAX to avoid
1986	  SEGV by Thread.new {}.join(Float::INFINITY) on
1987	  Debian GNU/Linux (amd64).
1988
1989Thu May  2 00:30:00 2013  Tanaka Akira  <akr@fsij.org>
1990
1991	* thread_pthread.c (ruby_init_stack): Add STACK_GROW_DIR_DETECTION.
1992	  This fixes a compilation failure while cross-compiling for Tensilica
1993	  Xtensa Processor.
1994
1995Thu May  2 00:19:46 2013  Tanaka Akira  <akr@fsij.org>
1996
1997	* dir.c (dir_set_pos): Fix a compilation error when seekdir() is not
1998	  exist.
1999
2000Thu May  2 00:16:36 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2001
2002	* README.EXT: correct method name to be used.  [Bug #7982]
2003
2004	* README.EXT.ja: add notes too.
2005
2006Thu May  2 00:16:36 2013  Zachary Scott  <zachary@zacharyscott.net>
2007
2008	* README.EXT: Copy note from r40505 for rb_sprintf() [Bug #7982]
2009
2010Thu May  2 00:16:36 2013  Zachary Scott  <zachary@zacharyscott.net>
2011
2012	* README.EXT: Update note from r40504, by Jeremy Evans [Bug #7982]
2013
2014Thu May  2 00:16:36 2013  Zachary Scott  <zachary@zacharyscott.net>
2015
2016	* README.EXT: Add note to warn use of %i in Exceptions [Bug #7982]
2017
2018Wed May  1 23:35:18 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2019
2020	* io.c (rb_io_ext_int_to_encs, parse_mode_enc): bom-prefixed name is
2021	  not a real encoding name, just a fallback.  so the proper conversion
2022	  should take place even if if the internal encoding is equal to the
2023	  bom-prefixed name, unless actual encoding is equal to the internal
2024	  encoding.  [ruby-core:54563] [Bug #8323]
2025
2026	* io.c (io_set_encoding_by_bom): reset extenal encoding if no BOM
2027	  found.  [ruby-core:54569]
2028
2029Sat Apr 27 02:12:14 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2030
2031	* io.c (rb_fd_fix_cloexec): use rb_update_max_fd().
2032
2033Sat Apr 27 02:12:14 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2034
2035	* io.c (rb_update_max_fd): use ATOMIC_CAS because this function
2036	  is used from timer thread too.
2037
2038Sat Apr 27 01:57:43 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
2039
2040	* configure.in: use quadrigraphs. workaround for autoconf 2.64.
2041	  a patch provided by Hessob Park. [ruby-core:53157] [Backport #8020]
2042
2043Sat Apr 27 00:39:28 2013  NARUSE, Yui  <naruse@ruby-lang.org>
2044
2045	* string.c (rb_str_inspect): refix r40413, on Ruby 1.9 usual character
2046	  escape uses hex/Unicode escapes, so fix to use Unicode escape on
2047	  Unicode strings and hex on others. [ruby-core:54458] [Bug #8290]
2048
2049Sat Apr 27 00:39:28 2013  Akinori MUSHA  <knu@iDaemons.org>
2050
2051	* test/ruby/test_module.rb
2052	  (TestModule#test_const_get_invalid_name)
2053	  (test_const_defined_invalid_name): Fix expected values.
2054
2055Sat Apr 27 00:39:28 2013  Akinori MUSHA  <knu@iDaemons.org>
2056
2057	* string.c (rb_str_inspect): NUL should not be represented as "\0"
2058	  when octal digits may follow.  [ruby-core:54458] [Bug #8290]
2059
2060Fri Apr 26 23:48:58 2013  Tanaka Akira  <akr@fsij.org>
2061
2062	* thread_pthread.c (ruby_init_stack): Add STACK_GROW_DIR_DETECTION.
2063	  This fixes a compilation failure while cross-compiling for ARM.
2064
2065Fri Apr 26 23:32:09 2013  Kouhei Sutou  <kou@cozmixng.org>
2066
2067	* lib/rss/atom.rb (RSS::Atom::Entry): Fix indent of document comment.
2068
2069Fri Apr 26 23:32:09 2013  Kouhei Sutou  <kou@cozmixng.org>
2070
2071	* lib/rss/maker.rb (RSS::Maker): Fix indent of document comment.
2072
2073Fri Apr 26 23:32:09 2013  Zachary Scott  <zachary@zacharyscott.net>
2074
2075	* lib/rss/atom.rb: Documentation for RSS::Atom based on a patch by
2076	  Michael Denomy
2077	* lib/rss/maker.rb: Documentation for RSS::Maker also by @mdenomy
2078
2079Thu Apr 25 00:40:41 2013  Zachary Scott  <zachary@zacharyscott.net>
2080
2081	* numeric.c: Fix wiki link on Float imprecision in overview, patched
2082	  by Makoto Kishimoto [Bug #8304] [ruby-dev:47280]
2083
2084Thu Apr 25 00:39:16 2013  Zachary Scott  <zachary@zacharyscott.net>
2085
2086	* string.c: Document String#setbyte return value by @gjmurakami-10gen
2087	  [Fixes GH-294]
2088
2089Thu Apr 25 00:38:06 2013  Zachary Scott  <zachary@zacharyscott.net>
2090
2091	* ext/socket/lib/socket.rb: Doc typos by @vipulnsward [Fixes GH-292]
2092
2093Tue Apr 23 23:06:43 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2094
2095	* vm_method.c (rb_mod_public_method): fix visibility on anonymous
2096	  module. set visibility of singleton method, not method in base
2097	  class.  [ruby-core:54404] [Bug #8284]
2098
2099Tue Apr 23 22:33:16 2013  Shugo Maeda  <shugo@ruby-lang.org>
2100
2101	* lib/net/imap.rb (getacl_response): parse the mailbox of an ACL
2102	  response correctly.  [ruby-core:54365] [Bug #8281]
2103
2104Sun Apr 21 00:14:36 2013  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
2105
2106	* test/ruby/test_require.rb (TestRequire#test_require_nonascii_path):
2107	  RUBY_PLATFORM should escape as Regexp,
2108	  because RUBY_PLATFORM may contain '.'.
2109
2110Sun Apr 21 00:14:36 2013  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
2111
2112	* test/ruby/test_require.rb (TestRequire#test_require_nonascii_path):
2113	  fix load path for encoding to run the test as stand-alone.
2114
2115Sun Apr 21 00:14:36 2013  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
2116
2117	* load.c (features_index_add): use rb_str_subseq() to specify C string
2118	  position properly to fix require non ascii path.
2119	  [ruby-core:53733] [Bug #8165]
2120
2121	* test/ruby/test_require.rb (TestRequire#test_require_nonascii_path):
2122	  a test for the above.
2123
2124Sun Apr 21 00:13:24 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2125
2126	* load.c (rb_feature_p), vm_core.h (rb_vm_struct): turn
2127	  loaded_features_index into st_table.  patches by tmm1 (Aman Gupta)
2128	  in [ruby-core:53251] and [ruby-core:53274] [Bug #8048]
2129
2130Sun Apr 21 00:13:24 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2131
2132	* load.c (features_index_add_single, rb_feature_p): store single index
2133	  as Fixnum to reduce the number of arrays for the indexes.  based on
2134	  the patch by tmm1 (Aman Gupta) in [ruby-core:53216] [Bug #8048].
2135
2136Sat Apr 20 23:32:06 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2137
2138	* dir.c (glob_helper): should skip dot directories only for recursion,
2139	  but should not if matching to the given pattern.  [ruby-core:54387]
2140	  [Bug #8283]
2141
2142Sat Apr 20 02:37:33 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2143
2144	* ext/curses/curses.c (Init_curses): fix implementation function,
2145	  crmode should be same as cbreak.  [ruby-core:54013] [Bug #8222]
2146
2147Sat Apr 20 02:09:46 2013  Martin Bosslet  <Martin.Bosslet@gmail.com>
2148
2149	* ext/openssl/ossl_ssl.c: Correct shutdown behavior w.r.t GC.
2150
2151	* test/openssl/test_ssl.rb: Add tests to verify correct behavior.
2152
2153	[Bug #8240] Patch provided by Shugo Maeda. Thanks!
2154
2155Sat Apr 20 01:56:32 2013  Yuki Yugui Sonoda  <yugui@google.com>
2156
2157	* thread_pthread.c (ruby_init_stack): Avoid using uninitialized value.
2158	  stackaddr and size are not set if get_stack() fails.
2159
2160Sat Apr 20 01:47:31 2013  Yuki Yugui Sonoda  <yugui@google.com>
2161
2162	* thread_pthread.c: Fixes wrong scopes of #if USE_SLEEPY_TIMER_THREAD
2163	  .. #endif sections.  This fixes a build error on NativeClient.
2164
2165Sat Apr 20 01:31:38 2013  NARUSE, Yui  <naruse@ruby-lang.org>
2166
2167	* Merge Onigmo 5.13.4 f22cf2e566712cace60d17f84d63119d7c5764ee.
2168	  [bug] fix problem with optimization of \z (Issue #16) [Bug #8210]
2169
2170Sat Apr 20 01:18:20 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2171
2172	* vm_insnhelper.c (vm_callee_setup_keyword_arg): non-symbol key is not
2173	  a keyword argument, keep it as a positional argument.
2174
2175Sat Apr 20 01:14:08 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2176
2177	* thread.c (rb_mutex_synchronize_m): yield no block params.  patch by
2178	  splattael (Peter Suschlik) in [ruby-core:53773] [Bug #8097].
2179	  fix GH-266.
2180
2181Sat Apr 20 00:41:10 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2182
2183	* compile.c (iseq_compile_each): append keyword hash to argument array
2184	  to splat if needed.  [ruby-core:54094] [Bug #8236]
2185
2186Sat Apr 20 00:31:57 2013  Kouhei Sutou  <kou@cozmixng.org>
2187
2188	* README.EXT.ja (Data_Wrap_Struct): Remove a description about
2189	  orphan argument. Oh, I renamed the argument name without
2190	  changing description at r36180... Sorry....
2191	  Patch by Makoto Kishimoto. Thanks!!! [ruby-dev:47269] [Bug #8292]
2192	* README.EXT.ja (Data_Make_Struct): Add a sample code that describes
2193	  how it works.
2194	  Patch by Makoto Kishimoto. Thanks!!! [ruby-dev:47269] [Bug #8292]
2195
2196Tue Apr 16 01:30:47 2013  Kenta Murata  <mrkn@mrkn.jp>
2197
2198	* configure.in: set ac_cv_prog_cxx if CXX is supplied.
2199
2200Tue Apr 16 01:30:47 2013  Kenta Murata  <mrkn@mrkn.jp>
2201
2202	* configure.in: Fix c++ compiler auto-selection not only for
2203	  Darwin 11.x, but also the other versions of Darwin.
2204
2205Tue Apr 16 00:27:56 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2206
2207	* compile.c (iseq_compile_each): fix of defined? with empty
2208	  expression.  [ruby-core:53999] [Bug #8220]
2209
2210Mon Apr 15 00:25:00 2013  Tanaka Akira  <akr@fsij.org>
2211
2212	* time.c (num_exact): use to_r method only if to_int method is
2213	  available.
2214	  [ruby-core:53764] [Bug #8173] reported by Hiro Asari.
2215
2216Mon Apr 15 00:22:09 2013  Shota Fukumori  <her@sorah.jp>
2217
2218	* ext/objspace/objspace.c: Fix typo in doc. Patch by Sho Hashimoto.
2219	  [Bug #8116] [ruby-dev:47177]
2220
2221Mon Apr 15 00:15:04 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2222
2223	* class.c (HAVE_METACLASS_P): should check FL_SINGLETON flag before get
2224	  instance variable to get rid of wrong warning about __attached__.
2225	  [ruby-core:53839] [Bug #8188]
2226
2227Mon Apr 15 00:13:13 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
2228
2229	* win32/file.c (code_page): use cp1252 instead of cp20127 as US-ASCII.
2230	  fix [ruby-core:53079] [Bug #7996]
2231	  reported and patched by mmeltner (Michael Meltner).
2232
2233Mon Apr 15 00:07:31 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2234
2235	* include/ruby/io.h: undef POSIX compliant names on AIX, which are no
2236	  longer needed.  patch suggested by edelsohn (David Edelsohn) in
2237	  [ruby-core:53815].  [Bug #8174]
2238
2239Mon Apr 15 00:07:31 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2240
2241	* include/ruby/io.h: rename SVR3,4 member names as POSIX compliant,
2242	  to get rid of conflict on AIX.  [ruby-core:53765] [Bug #8174]
2243
2244Sun Apr 14 23:49:48 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2245
2246	* lib/mkmf.rb (configuration): not include all CFLAGS in CXXFLAGS, to
2247	  use different set than C for C++.  [ruby-core:45273] [Bug #6504]
2248
2249Sun Apr 14 23:43:06 2013  NARUSE, Yui  <naruse@ruby-lang.org>
2250
2251	* ext/fiddle/closure.c (initialize): check mprotect's return value.
2252	  If mprotect is failed because of PaX or something, its function call
2253	  will cause SEGV.
2254	  http://c5664.rubyci.org/~chkbuild/ruby-trunk/log/20130401T210301Z.diff.html.gz
2255
2256Sun Apr 14 23:19:55 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2257
2258	* lib/mkmf.rb (MAIN_DOES_NOTHING): ensure symbols for tests to be
2259	  preserved.  [ruby-core:53745] [Bug #8169]
2260
2261Sun Apr 14 23:19:55 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2262
2263	* lib/mkmf.rb (MAIN_DOES_NOTHING): force to refer symbols for tests
2264	  to be preserved.  [ruby-core:53745] [Bug #8169]
2265
2266Sun Apr 14 03:00:51 2013  Naohisa Goto  <ngotogenome@gmail.com>
2267
2268	* configure.in (AC_CHECK_HEADERS): atomic.h for Solaris atomic_ops.
2269
2270	* ruby_atomic.h: Skip using Solaris10 atomic_ops on Solaris 9 or
2271	  earlier if atomic.h is not available. [ruby-dev:47229] [Bug #8228]
2272
2273Sun Apr 14 02:32:45 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2274
2275	* time.c (GetTimeval): check if already initialized instance.
2276
2277	* time.c (GetNewTimeval): check if newly created instance.
2278
2279	* time.c (time_init_0, time_init_1, time_init_copy, time_mload): must
2280	  be newly created instance.  [ruby-core:53436] [Bug #8099]
2281
2282Sun Apr 14 02:13:25 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
2283
2284	* vm_eval.c (check_funcall_respond_to): preserve passed_block, which
2285	  is modified in vm_call0_body() via vm_call0(), and caused a bug of
2286	  rb_check_funcall() by false negative result of rb_block_given_p().
2287	  re-fix [ruby-core:53650] [Bug #8153].
2288	  [ruby-core:53653] [Bug #8154]
2289
2290Fri Apr 12 04:16:30 2013  Naohisa Goto  <ngotogenome@gmail.com>
2291
2292	* marshal.c (marshal_dump, marshal_load): workaround for segv on
2293	  Intel Solaris compiled with Oracle SolarisStudio 12.3.
2294	  Partly revert r38174. [ruby-core:52042] [Bug #7805]
2295
2296Fri Apr 12 04:12:42 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2297
2298	* string.c (rb_str_conv_enc_opts): convert with one converter, instead
2299	  of re-creating converters for each buffer expansion.
2300
2301Fri Apr 12 03:48:25 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2302
2303	* lib/mkmf.rb (find_library): fix to format message.
2304	  [ruby-core:53568] [Bug #8130]
2305
2306Fri Apr 12 03:44:45 2013  Narihiro Nakamura  <authornari@gmail.com>
2307
2308	* proc.c (bm_free): need to clean up the mark flag of a free and
2309	  unlinked method entry. [Bug #8100] [ruby-core:53439]
2310
2311Fri Apr 12 02:27:42 2013  NARUSE, Yui  <naruse@ruby-lang.org>
2312
2313	* addr2line.c: use more generic type:
2314	  * u_char -> unsigned char
2315	  * u_short -> unsigned short
2316	  * u_int -> unsigned int
2317	  * u_long -> unsigned long
2318	  * quad_t -> int64_t
2319	  * u_quad_t -> uint64_t
2320
2321	* addr2line.c (imax): inline is defined by configure.
2322
2323Fri Apr 12 02:27:42 2013  Naohisa Goto  <ngotogenome@gmail.com>
2324
2325	* addr2line.c: quad_t and u_quad_t is not available on Solaris.
2326	  __inline is not available with old compilers on Solaris.
2327	  [ruby-dev:47229] [Bug #8227]
2328
2329Fri Apr 12 02:27:42 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2330
2331	* addr2line.c (putce): suppress unused return value warning.
2332
2333Fri Apr 12 02:27:42 2013  NARUSE, Yui  <naruse@ruby-lang.org>
2334
2335	* addr2line.c (kprintf): added from FreeBSD libstand's printf.
2336	  this is consided as async signal safe function.
2337
2338	* addr2line.c (rb_dump_backtrace_with_lines): use kfprintf.
2339	  [Bug #8144] [ruby-core:53632]
2340
2341Fri Apr 12 02:27:42 2013  NARUSE, Yui  <naruse@ruby-lang.org>
2342
2343	* addr2line.c (rb_dump_backtrace_with_lines): output line at once.
2344
2345Fri Apr 12 02:10:09 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2346
2347	* vm_method.c (rb_export_method): directly override the flag of method
2348	  defined in prepending class too, not adding zsuper entry.
2349	  [ruby-core:53106] [Bug #8005]
2350
2351Fri Apr 12 01:57:52 2013  Eric Hodel  <drbrain@segment7.net>
2352
2353	* lib/fileutils.rb:  Revert r34669 which altered the way
2354	  metaprogramming in FileUtils occurred.  [ruby-trunk - Bug #7958]
2355
2356	* test/fileutils/visibility_tests.rb:  Refactored tests of FileUtils
2357	  options modules to expose bug found in #7958
2358	* test/fileutils/test_dryrun.rb:  ditto.
2359	* test/fileutils/test_nowrite.rb:  ditto.
2360	* test/fileutils/test_verbose.rb:  ditto.
2361
2362Fri Apr 12 01:28:46 2013  Luis Lavena  <luislavena@gmail.com>
2363
2364	* win32/file.c (get_user_from_path):  add internal function that retrieves
2365	  username from supplied path (refactored).
2366	* win32/file.c (rb_file_expand_path_internal):  refactor expansion of user
2367	  home to use get_user_from_path and cover dir_string corner cases.
2368	  [ruby-core:53168] [Bug #8034]
2369
2370Fri Apr 12 01:28:46 2013  Luis Lavena  <luislavena@gmail.com>
2371
2372	* win32/file.c (rb_file_expand_path_internal):  Expand home directory when
2373	  used as second parameter (dir_string).  [ruby-core:53168] [Bug #8034]
2374	* test/ruby/test_file_exhaustive.rb: add test to verify.
2375
2376Mon Apr  8 00:10:59 2013  Narihiro Nakamura  <authornari@gmail.com>
2377
2378	* gc.c: Fix unlimited memory growth with large values of
2379	  RUBY_FREE_MIN. patched by tmm1(Aman Gupta).
2380	  [Bug #8095] [ruby-core:53405]
2381
2382Sun Apr  7 22:27:12 2013  Narihiro Nakamura  <authornari@gmail.com>
2383
2384	* gc.c: Avoid unnecessary heap growth. patched by tmm1(Aman Gupta).
2385	  [Bug #8093] [ruby-core:53393]
2386
2387Sun Apr  7 03:01:49 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2388
2389	* parse.y (simple_re_meta): escape all closing characters, not only
2390	  round parenthesis.  [ruby-core:53578] [Bug #8133]
2391
2392Sun Apr  7 02:54:40 2013  Narihiro Nakamura  <authornari@gmail.com>
2393
2394	* gc.c: Improve accuracy of objspace_live_num() and
2395	  allocated/freed counters. patched by tmm1(Aman Gupta).
2396	  [Bug #8092] [ruby-core:53392]
2397
2398Fri Apr  5 00:54:08 2013  NARUSE, Yui  <naruse@ruby-lang.org>
2399
2400	* ext/openssl/ossl_bn.c (ossl_bn_initialize): fix can't create from bn.
2401
2402Thu Apr  4 02:27:12 2013  Tanaka Akira  <akr@fsij.org>
2403
2404	* lib/resolv-replace.rb (TCPSocket#initialize): resolve the 3rd
2405	  argument only if non-nil value is given.
2406	  [ruby-dev:47150] [ruby-trunk - Bug #8054] reported and analyzed by
2407	  mrkn.
2408
2409Thu Apr  4 02:24:59 2013  NARUSE, Yui  <naruse@ruby-lang.org>
2410
2411	* Merge Onigmo d4bad41e16e3eccd97ccce6f1f96712e557c4518.
2412	  fix lookbehind assertion fails with /m mode enabled. [Bug #8023]
2413	  fix \Z matches where it shouldn't. [Bug #8001]
2414
2415Thu Apr  4 02:11:30 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2416
2417	* marshal.c (w_extended): check for prepended object.
2418	  [ruby-core:53206] [Bug #8043]
2419
2420Wed Mar 27 03:02:30 2013  NARUSE, Yui  <naruse@ruby-lang.org>
2421
2422	* vm_exec.c: Correct predefined macro name. This typo is introduced by
2423	  r36534 and should be backported to ruby_2_0_0.
2424
2425Wed Mar 27 02:58:44 2013  NARUSE, Yui  <naruse@ruby-lang.org>
2426
2427	* Merge Onigmo 0fe387da2fee089254f6b04990541c731a26757f
2428	  v5.13.3 [Bug#7972] [Bug#7974]
2429
2430Wed Mar 27 02:53:53 2013  Kouhei Sutou  <kou@cozmixng.org>
2431
2432	* lib/rexml/document.rb: move entity_expansion_text_limit accessor to ...
2433	* lib/rexml/rexml.rb: ... here to make rexml/text independent from
2434	  REXML::Document. It causes circular require.
2435	* lib/rexml/document.rb (REXML::Document.entity_expansion_text_limit):
2436	  deprecated.
2437	* lib/rexml/document.rb (REXML::Document.entity_expansion_text_limit=):
2438	  deprecated.
2439	* lib/rexml/text.rb: add missing require "rexml/rexml" for
2440	  REXML.entity_expansion_text_limit.
2441	  Reported by Robert Ulejczyk. Thanks!!! [ruby-core:52895] [Bug #7961]
2442
2443Wed Mar 27 02:50:45 2013  Shugo Maeda  <shugo@ruby-lang.org>
2444
2445	* object.c (Init_Object): remove Module#used, which has been
2446	  introduced in Ruby 2.0 by mistake.  [Bug #7916] [ruby-core:52719]
2447
2448Mon Mar 25 02:02:15 2013  Tadayoshi Funaba  <tadf@dotrb.org>
2449
2450	* complex.c: edited rdoc.
2451	* rational.c: ditto.
2452
2453Mon Mar 25 02:02:15 2013  Tadayoshi Funaba  <tadf@dotrb.org>
2454
2455	* complex.c: described syntax of string form.
2456	* rational.c: ditto.
2457
2458Mon Mar 25 01:26:26 2013  Zachary Scott  <zachary@zacharyscott.net>
2459
2460	* lib/webrick/httpproxy.rb: Fix typos in HTTPProxyServer [Bug #8013]
2461	  Patch by Nobuhiro IMAI [ruby-core:53127]
2462
2463Mon Mar 25 01:09:48 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2464
2465	* compile.c (iseq_compile_each): pass keyword arguments to zsuper,
2466	  with current values.  [ruby-core:53114] [Bug #8008]
2467
2468Mon Mar 25 01:05:15 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2469
2470	* ext/objspace/objspace.c (count_nodes): count also newly added nodes,
2471	  and fix key for unknown node.  patch by tmm1 (Aman Gupta) in
2472	  [ruby-core:53130] [Bug #8014]
2473
2474Mon Mar 25 01:00:03 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2475
2476	* class.c (rb_prepend_module): check redefinition of built-in optimized
2477	  methods.  [ruby-dev:47124] [Bug #7983]
2478
2479	* vm.c (rb_vm_check_redefinition_by_prepend): ditto.
2480
2481Mon Mar 25 00:51:57 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2482
2483	* Makefile.in (miniruby, ruby): move MAINLIBC because linker arguments
2484	  must appear after object files with newer versions of gcc.  patch by
2485	  tmm1 (Aman Gupta) in [ruby-core:53121] [Bug #8009]
2486
2487Mon Mar 25 00:47:04 2013  Koichi Sasada  <ko1@atdot.net>
2488
2489	* iseq.c (iseq_data_to_ary): fix condition.
2490	  r34303 introduces a bug to avoid all line information from
2491	  a result of ISeq#to_a. This is a regression problem from 2.0.0p0.
2492
2493	* test/ruby/test_iseq.rb: add a test of lines after ISeq#to_a.
2494
2495Mon Mar 25 00:41:23 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2496
2497	* tool/mkconfig.rb: reconstruct comma separated list values.  a
2498	  command line to Windows batch file is split not only by spaces
2499	  and equal signs but also by commas and semicolons.
2500
2501Wed Mar 20 23:21:14 2013  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
2502
2503	* test/rubygems/test_gem_installer.rb (test_install_extension_flat):
2504	  use ruby in build directory in case ruby is not installed.
2505	  [ruby-core:53265] [Bug #8058]
2506
2507Wed Mar 20 23:17:33 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
2508
2509	* test/win32ole/test_err_in_callback.rb (TestErrInCallBack#setup):
2510	  allow using different root for source and build directories.
2511	  this may fixes a minor problem of r39834.
2512
2513Wed Mar 20 23:17:33 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
2514
2515	* test/win32ole/test_err_in_callback.rb (TestErrInCallBack#setup): use
2516	  relative path to get rid of "too long commandline" error.
2517
2518Wed Mar 20 23:17:33 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
2519
2520	* test/win32ole/test_err_in_callback.rb
2521	  (TestErrInCallBack#test_err_in_callback): shouldn't create a file in
2522	  the top of build directory.
2523
2524Wed Mar 20 23:08:40 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2525
2526	* include/ruby/missing.h: removed __linux__. it's unnecessary.
2527
2528Wed Mar 20 23:03:27 2013  Tanaka Akira  <akr@fsij.org>
2529
2530	* configure.in: move OS specific header/function knowledge before
2531	  automatic header tests.
2532
2533Wed Mar 20 23:01:42 2013  Tanaka Akira  <akr@fsij.org>
2534
2535	* configure.in: move header files check to the beginning of
2536	  "header and library section".
2537	  test rlim_t with sys/types.h and sys/time.h for MirOS BSD.
2538	  sys/types.h and sys/time.h is gurded by #ifdef and the above move
2539	  is required for this change.
2540
2541Wed Mar 20 22:57:27 2013  Tanaka Akira  <akr@fsij.org>
2542
2543	* configure.in: move the test for -march=i486 just after
2544	  RUBY_UNIVERSAL_ARCH/RUBY_DEFAULT_ARCH.
2545
2546Wed Mar 20 22:56:07 2013  Tanaka Akira  <akr@fsij.org>
2547
2548	* configure.in: change CFLAGS temporally to test
2549	  ARCH_FLAG="-march=i486".
2550
2551Wed Mar 20 22:54:33 2013  Tanaka Akira  <akr@fsij.org>
2552
2553	* configure.in: don't define ARCH_FLAG="-march=i486" if it causes
2554	  compilation problem.
2555
2556Wed Mar 20 22:36:41 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2557
2558	* thread.c: disabled _FORTIFY_SOURCE for avoid to hit glibc bug.
2559	  [Bug #8080] [ruby-core:53349]
2560	* test/ruby/test_io.rb (TestIO#test_io_select_with_many_files):
2561	  test for the above.
2562
2563Wed Mar 20 22:34:52 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2564
2565	* include/ruby/missing.h (__syscall): moved to...
2566	* io.c: here. because __syscall() is only used from io.c.
2567
2568	* include/ruby/missing.h: move "#include <sys/type.h>" to ....
2569	* include/ruby/intern.h: here. because it was introduced for
2570	  fixing NFDBITS issue. [ruby-core:05179].
2571
2572Wed Mar 20 22:33:26 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2573
2574	* include/ruby/missing.h (struct timespec): include <sys/time.h>
2575
2576Wed Mar 20 22:33:26 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2577
2578	* configure.in: check struct timeval exist or not.
2579	* include/ruby/missing.h (struct timeval): check HAVE_STRUCT_TIMEVAL
2580	  properly. and don't include sys/time.h if struct timeval exist.
2581
2582	* file.c: include sys/time.h explicitly.
2583	* random.c: ditto.
2584	* thread_pthread.c: ditto.
2585	* time.c: ditto.
2586	* ext/date/date_strftime.c: ditto.
2587
2588Mon Mar 18 00:12:28 2013  Eric Hodel  <drbrain@segment7.net>
2589
2590	* lib/rubygems/commands/setup_command.rb:  Don't delete non-rubygems
2591	  files when installing RubyGems.
2592	* test/rubygems/test_gem_commands_setup_command.rb:  Test for the
2593	  above.
2594
2595	* lib/rubygems/ext/ext_conf_builder.rb:  Use full path to siteconf.rb
2596	  in case the extconf.rb changes directories (like memcached does).
2597
2598	* lib/rubygems/package.rb:  Remove double slash from path.
2599	* test/rubygems/test_gem_package.rb:  Test for the above.
2600	* test/rubygems/test_gem_package_old.rb:  ditto.
2601
2602	* lib/rubygems/source.rb:  Revert automatic HTTPS upgrade
2603	* lib/rubygems/spec_fetcher.rb:  ditto.
2604	* test/rubygems/test_gem_remote_fetcher.rb:  ditto.
2605	* test/rubygems/test_gem_source.rb:  ditto.
2606	* test/rubygems/test_gem_spec_fetcher.rb:  ditto.
2607
2608Mon Mar 18 00:11:33 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2609
2610	* lib/rubygems/ext/ext_conf_builder.rb (Gem::Ext::ExtConfBuilder.build):
2611	  it is impossible to predict which file will be installed to where,
2612	  by the arguments, so use intermediate destination directory always.
2613	  [Bug #7698]
2614
2615Mon Mar 18 00:11:33 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2616
2617	* lib/rubygems/ext/ext_conf_builder.rb (Gem::Ext::ExtConfBuilder.build):
2618	  it is impossible to predict which file will be installed to where,
2619	  by the arguments, so use intermediate destination directory always.
2620	  [Bug #7698]
2621
2622Mon Mar 18 00:05:50 2013  Eric Hodel  <drbrain@segment7.net>
2623
2624	* lib/rubygems/commands/setup_command.rb:  Install .pem files.
2625	* test/rubygems/test_gem_commands_setup_command.rb:  Test for the
2626	  above.
2627
2628	* lib/rubygems/spec_fetcher.rb:  Test HTTPS upgrade with URI::HTTPS,
2629	  not URI::HTTP.  Fixes bug in automatic HTTPS upgrade.
2630	* test/rubygems/test_gem_spec_fetcher.rb:  Test for the above.
2631
2632	* lib/rubygems.rb:  Version 2.0.2
2633
2634	* lib/rubygems/test_utilities.rb:  Ensure scheme and uri class match.
2635
2636Mon Mar 18 00:03:27 2013  Eric Hodel  <drbrain@segment7.net>
2637
2638	* test/rubygems/test_require.rb:  Fix tests when 'a.rb' exists.
2639	  [ruby-trunk - Bug #7749]
2640
2641Mon Mar 18 00:02:27 2013  Eric Hodel  <drbrain@segment7.net>
2642
2643	* lib/rubygems.rb:  Allow specification of directory permissions.
2644	  [ruby-trunk - Bug #7713]
2645	* test/rubygems/test_gem.rb:  Test for the above.
2646
2647Mon Mar 18 00:00:32 2013  Eric Hodel  <drbrain@segment7.net>
2648
2649	* test/rubygems/test_gem_spec_fetcher.rb:  Removed unused variable.
2650
2651Mon Mar 18 00:00:32 2013  Eric Hodel  <drbrain@segment7.net>
2652
2653	* lib/rubygems/commands/query_command.rb:  Only fetch remote specs when
2654	  showing details.  [ruby-trunk - Bug #8019]  RubyGems bug #487
2655	* lib/rubygems/remote_fetcher.rb:  ditto.
2656	* lib/rubygems/security/policy.rb:  ditto.
2657	* test/rubygems/test_gem_commands_query_command.rb:  Test for the
2658	  above.
2659
2660	* lib/rubygems/security.rb:  Make OpenSSL optional for RubyGems.
2661	* lib/rubygems/commands/cert_command.rb:  ditto.
2662
2663	* lib/rubygems/config_file.rb:  Display file with YAML error, not
2664	  ~/.gemrc
2665
2666	* lib/rubygems/remote_fetcher.rb:  Only create gem subdirectories when
2667	  installing gems.
2668	* lib/rubygems/dependency_resolver.rb:  ditto.
2669	* lib/rubygems/test_utilities.rb:  ditto.
2670	* test/rubygems/test_gem_commands_fetch_command.rb:  Test for the
2671	  above.
2672
2673	* lib/rubygems/spec_fetcher.rb:  Only try to upgrade
2674	  http://rubygems.org to HTTPS
2675	* test/rubygems/test_gem_spec_fetcher.rb:  Test for the above.
2676
2677	* lib/rubygems.rb:  Update win_platform? check for JRuby compatibility.
2678
2679	* test/rubygems/test_gem_installer.rb:  Update for Ruby 1.9.2
2680	  compatibility
2681
2682Sun Mar 17 23:53:19 2013  Eric Hodel  <drbrain@segment7.net>
2683
2684	* lib/rubygems.rb:  Bump version to 2.0.1 for upcoming bugfix release
2685
2686	* lib/rubygems/ext/ext_conf_builder.rb:  Restore ruby 1.8 compatibility
2687	  for [Bug #7698]
2688	* test/rubygems/test_gem_installer.rb:  Ditto.
2689
2690	* lib/rubygems/package.rb:  Restore ruby 1.8 compatibility.
2691
2692	* test/rubygems/test_gem_dependency_installer.rb:  Fix warnings
2693
2694Sun Mar 17 23:36:05 2013  Eric Hodel  <drbrain@segment7.net>
2695
2696	* lib/rubygems/available_set.rb:  Undent for style
2697
2698	* lib/rubygems/dependency_installer.rb:  Pick latest prerelease gem to
2699	  install.  Fixes RubyGems bug #468.
2700	* test/rubygems/test_gem_dependency_installer.rb:  Test for the above.
2701
2702	* lib/rubygems/dependency_installer.rb:  Don't display "Done installing
2703	  documentation" if documentation will not be installed.
2704	* lib/rubygems/rdoc.rb:  ditto
2705
2706	* lib/rubygems/dependency_list.rb:  Use Array#concat for Ruby 1.x
2707	  performance.
2708
2709	* lib/rubygems/installer.rb:  Use formatted program name when comparing
2710	  executables.  RubyGems pull request #471
2711	* test/rubygems/test_gem_installer.rb:  Test for the above.
2712
2713	* lib/rubygems/package.rb:  Use more explicit feature check to work
2714	  around JRuby bug #552
2715
2716	* lib/rubygems/ssl_certs/GeoTrust_Global_CA.pem:  Added GeoTrust root
2717	  certificate.
2718
2719	* test/rubygems/test_gem_source_list.rb:  Use "example" instead of real
2720	  hostname
2721
2722Sun Mar 17 23:28:44 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2723
2724	* lib/rubygems/ext/ext_conf_builder.rb (Gem::Ext::ExtConfBuilder.build):
2725	  clear DESTDIR so RUBYARCHDIR and RUBYLIBDIR are not be overrdden.
2726	  [Bug #7698]
2727
2728Sun Mar 17 23:26:31 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2729
2730	* lib/rubygems/ext/ext_conf_builder.rb (Gem::Ext::ExtConfBuilder.build):
2731	  fix for unusal cases again.  install to a temporary directory once
2732	  and move instaled files to the destination directory, if it is same
2733	  as the current directory.  [Bug #7698]
2734
2735Sun Mar 17 23:22:22 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2736
2737	* lib/rubygems/ext/ext_conf_builder.rb
2738	  (Gem::Ext::ExtConfBuilder.hack_for_obsolete_style_gems): remove
2739	  circular dependencies in install-so too.  [ruby-core:52882]
2740	  [Bug #7698]
2741
2742Sun Mar 17 23:19:34 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2743
2744	* lib/rubygems/ext/ext_conf_builder.rb (Gem::Ext::ExtConfBuilder.build):
2745	  revert use of temporary directory for build, to work some buggy
2746	  extconf.rb which cannot build outside the source directory.
2747	  [ruby-core:53056] [Bug #7698]
2748
2749Sun Mar 17 23:11:35 2013  Eric Hodel  <drbrain@segment7.net>
2750
2751	* lib/rubygems/ext/builder.rb:  Fix incompatibilities when installing
2752	  extensions.  Patch by Nobu.
2753	  [ruby-trunk - Bug #7698] [ruby-trunk - Bug #7971]
2754	* lib/rubygems/ext/ext_conf_builder.rb:  ditto.
2755	* lib/rubygems/installer.rb:  ditto.
2756	* test/rubygems/test_gem_ext_ext_conf_builder.rb:  Test for the above.
2757	* test/rubygems/test_gem_installer.rb:  ditto.
2758
2759	* lib/rubygems/commands/sources_command.rb:  Prefer HTTPS over HTTP.
2760	* lib/rubygems/defaults.rb:  ditto
2761	* lib/rubygems/dependency_resolver.rb:  Ditto.
2762	* lib/rubygems/source.rb:  ditto.
2763	* lib/rubygems/spec_fetcher.rb:  ditto.
2764	* lib/rubygems/specification.rb:  ditto.
2765	* lib/rubygems/test_utilities.rb:  ditto.
2766	* test/rubygems/test_gem.rb:  Test for the above.
2767	* test/rubygems/test_gem_commands_sources_command.rb:  ditto.
2768	* test/rubygems/test_gem_dependency_resolver_api_set.rb:  ditto.
2769	* test/rubygems/test_gem_remote_fetcher.rb:  ditto.
2770	* test/rubygems/test_gem_source.rb:  ditto.
2771	* test/rubygems/test_gem_spec_fetcher.rb:  ditto.
2772
2773Tue Mar 12 00:56:19 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2774
2775	* test/thread/test_queue.rb (TestQueue#test_thr_kill): reduce
2776	  iterations from 2000 to 250. When running on uniprocessor
2777	  systems, every th.kill needs TIME_QUANTUM_USEC time (i.e.
2778	  100msec on posix systems). Because, "r.read 1" is 3 steps
2779	  operations that 1) release GVL 2) read 3) acquire gvl and
2780	  (1) invoke context switch to main thread. and then, main
2781	  thread's th.kill resume (1), but not (2). Thus read interrupt
2782	  need TIME_QUANTUM_USEC. Then maximum iteration is 30sec/100msec
2783	  = 300.
2784
2785Tue Mar 12 00:53:34 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2786
2787	* process.c (setup_communication_pipe): remove unused function.
2788	  it was unintentionally added r39683.
2789
2790Tue Mar 12 00:53:34 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2791
2792	* thread_pthread.c (ARRAY_SIZE): new.
2793	* thread_pthread.c (gvl_acquire_common): use low priority
2794	  notification for avoiding timer thread interval confusion.
2795	  If we use timer_thread_pipe[1], every gvl_yield() request
2796	  one more gvl_yield(). It lead to thread starvation.
2797	  [Bug #7999] [ruby-core:53095]
2798	* thread_pthread.c (rb_reserved_fd_p): adds timer_thread_pipe_low
2799	  to reserved fds.
2800
2801Tue Mar 12 00:53:34 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2802
2803	* thread_pthread.c (rb_thread_wakeup_timer_thread_fd): add fd
2804	  argument and remove hardcoded dependency of timer_thread_pipe[1].
2805	* thread_pthread.c (consume_communication_pipe): add fd argument.
2806	* thread_pthread.c (close_communication_pipe): ditto.
2807
2808	* thread_pthread.c (timer_thread_sleep): adjust the above changes.
2809
2810	* thread_pthread.c (setup_communication_pipe_internal): factor
2811	  out pipe initialize logic.
2812
2813Tue Mar 12 00:53:34 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2814
2815	* thread_pthread.c (rb_thread_create_timer_thread): factor out
2816	  creating communication pipe logic into separate function.
2817	* thread_pthread.c (setup_communication_pipe): new helper function.
2818	* thread_pthread.c (set_nonblock): moves a definition before
2819	  setup_communication_pipe.
2820
2821Tue Mar 12 00:53:34 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2822
2823	* thread_pthread.c (consume_communication_pipe): retry when
2824	  read returned CCP_READ_BUFF_SIZE.
2825
2826Tue Mar 12 00:53:34 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2827
2828	* thread_pthread.c (set_nonblock): new helper function for set
2829	  O_NONBLOCK.
2830	* thread_pthread.c (rb_thread_create_timer_thread): set O_NONBLOCK
2831	  to timer_thread_pipe[0] too.
2832
2833Tue Mar 12 00:51:23 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2834
2835	* thread_pthread.c (timer_thread_sleep): use poll() instead of
2836	  select(). select doesn't work if timer_thread_pipe[0] is
2837	  greater than FD_SETSIZE.
2838	* thread_pthread.c (USE_SLEEPY_TIMER_THREAD): add a dependency
2839	  against poll.
2840
2841Tue Mar 12 00:51:23 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2842
2843	* thread_pthread.c (USE_SLEEPY_TIMER_THREAD): use more accurate
2844	  ifdef condtions.
2845
2846Mon Mar 11 01:16:12 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2847
2848	* configure.in (unexpand_shvar): get rid of non-portable shell
2849	  behavior on OpenBSD, so no extra quotes.  [Bug #7959]
2850
2851Mon Mar 11 01:12:50 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2852
2853	* parse.y (IS_LABEL_POSSIBLE): allow labels for keyword arguments just
2854	  after method definition without a parenthesis.  [ruby-core:52820]
2855	  [Bug #7942]
2856
2857Mon Mar 11 01:09:23 2013  Zachary Scott  <zachary@zacharyscott.net>
2858
2859	* error.c: clarify reason for sleep in SignalException example
2860
2861Mon Mar 11 01:09:23 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2862
2863	* error.c: clarify a document of SignalException. Process.kill()
2864	  doesn't have any guarantee when signal will be delivered.
2865	  [Bug #7951] [ruby-core:52864]
2866
2867Mon Mar 11 01:04:54 2013  NARUSE, Yui  <naruse@ruby-lang.org>
2868
2869	* string.c (str_byte_substr): don't set coderange if it's not known.
2870	  [Bug #7954] [ruby-dev:47108]
2871
2872Mon Mar 11 00:58:30 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2873
2874	* common.mk (realclean-local): miniprelude.c is made by srcs, so it
2875	  should not removed by distclean but by realclean.  [Bug #6807]
2876
2877Mon Mar 11 00:54:30 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2878
2879	* enc/depend (ARFLAGS): VisualC++ linker does not allow spaces between
2880	  output option and the output file name.  [Bug #7950]
2881
2882	* enc/depend (RANLIB): set default command to do nothing, or make the
2883	  entire line a label on Windows.
2884
2885Mon Mar 11 00:50:21 2013  Zachary Scott  <zachary@zacharyscott.net>
2886
2887	* thread.c: Document Thread::new, clean up ::fork and mention calling
2888	  super if subclassing Thread
2889
2890Mon Mar 11 00:47:47 2013  Akinori MUSHA  <knu@iDaemons.org>
2891
2892	* configure.in (unexpand_shvar): Use the numeric comparison
2893	  operator instead of '==' which is a ksh extention. [Bug #7941]
2894
2895Sun Mar 10 00:01:07 2013  Tadayoshi Funaba  <tadf@dotrb.org>
2896
2897	* ext/date/date_core.c: [ruby-core:52303]
2898
2899Sat Mar  9 23:55:42 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2900
2901	* random.c (rb_random_ulong_limited): limit is inclusive, but generic
2902	  rand method should return a number less than it, so increase for the
2903	  difference.  [ruby-core:52779] [Bug #7935]
2904
2905Sat Mar  9 23:51:58 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2906
2907	* random.c (rb_random_ulong_limited): fix error message for negative
2908	  value.  [ruby-dev:47061] [Bug #7903]
2909
2910Sat Mar  9 23:41:11 2013  Zachary Scott  <zachary@zacharyscott.net>
2911
2912	* thread.c: Document ThreadGroup::Default
2913
2914Sat Mar  9 23:31:46 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2915
2916	* vm_insnhelper.c (vm_call_method): block level control frame does not
2917	  have method entry, so obtain the method entry from method top-level
2918	  control frame to be compared with refined method entry.
2919	  [ruby-core:52750] [Bug #7925]
2920
2921Sat Mar  9 23:15:06 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2922
2923	* signal.c (sigsegv): suppress unused result warning. Because
2924	  write(2) is marked __warn_unused_result__ on Linux glibc.
2925
2926Sat Mar  9 23:08:43 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2927
2928	* compile.c (iseq_set_arguments): no keyword check if any keyword rest
2929	  argument exists, even unnamed.  [ruby-core:52744] [Bug #7922]
2930
2931Sat Mar  9 22:50:28 2013  Zachary Scott  <zachary@zacharyscott.net>
2932
2933	* array.c: Document #<=> return values and formatting
2934	* bignum.c: ditto
2935	* file.c: ditto
2936	* object.c: ditto
2937	* numeric.c: ditto
2938	* rational.c: ditto
2939	* string.c: ditto
2940	* time.c: ditto
2941
2942Sat Mar  9 22:45:01 2013  Zachary Scott  <zachary@zacharyscott.net>
2943
2944	* array.c (rb_ary_diff, rb_ary_and, rb_ary_or): Document return order
2945	  [RubySpec #7803]
2946
2947Sat Mar  9 22:38:26 2013  Zachary Scott  <zachary@zacharyscott.net>
2948
2949	* object.c (rb_obj_comp): Documenting Object#<=> return values
2950	  Patch by Stefan Rusterholz
2951
2952Sat Mar  9 22:35:22 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2953
2954	* dir.c (file_s_fnmatch, fnmatch_brace): encoding-incompatible pattern
2955	  and string do not match, instead of exception.  [ruby-dev:47069]
2956	  [Bug #7911]
2957
2958Sat Mar  9 22:18:43 2013  NARUSE, Yui  <naruse@ruby-lang.org>
2959
2960	* test/test_rbconfig.rb (TestRbConfig): fix r39372.
2961	  It must see RbConfig::CONFIG instead of CONFIG.
2962
2963Sat Mar  9 22:18:43 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2964
2965	* test/test_rbconfig.rb (TestRbConfig): skip user defined values by
2966	  configuration options.  [Bug #7902]
2967
2968Sat Mar  9 22:07:53 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
2969
2970	* lib/rexml/document.rb (REXML::Document.entity_expansion_text_limit):
2971	  fix a typo in comment in r39384.
2972
2973Sat Mar  9 21:52:19 2013  Zachary Scott  <zachary@zacharyscott.net>
2974
2975	* numeric.c: Examples and formatting for Numeric and Float
2976	  Based on a patch by Zach Morek and Oren K of newhaven.rb
2977	  [Github documenting-ruby/ruby#5]
2978
2979Sat Mar  9 21:46:41 2013  Eric Hodel  <drbrain@segment7.net>
2980
2981	* doc/globals.rdoc:  Document what setting $DEBUG does.
2982
2983	* doc/globals.rdoc:  Added pointer to $-d for full documentation.
2984
2985Sat Mar  9 21:45:38 2013  Eric Hodel  <drbrain@segment7.net>
2986
2987	* doc/globals.rdoc:  Document what setting $VERBOSE does.  [Bug #7899]
2988
2989	* doc/globals.rdoc:  Added pointer to $-w and $-v for full
2990	  documentation.
2991
2992Sat Mar  9 21:29:45 2013  Naohisa Goto  <ngotogenome@gmail.com>
2993
2994	* signal.c (ruby_abort): fix typo in r39354 [Bug #5014]
2995
2996Sat Mar  9 21:29:45 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2997
2998	* signal.c (check_stack_overflow): extract duplicated code and get rid
2999	  of declaration-after-statement.  [Bug #5014]
3000
3001Sat Mar  9 21:29:45 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3002
3003	* signal.c (sigsegv): avoid to use async signal unsafe functions
3004	  when nested sigsegv is happen.
3005	  [Bug #5014] [ruby-dev:44082]
3006
3007Sat Mar  9 21:25:45 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3008
3009	* file.c (rb_group_member): added an error check. SUS says,
3010	  getgroups(small_value) may return EINVAL.
3011
3012Sat Mar  9 21:23:36 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3013
3014	* process.c (RB_MAX_GROUPS): moved to
3015	* internal.h (RB_MAX_GROUPS): here.
3016
3017	* file.c (rb_group_member): use RB_MAX_GROUPS instead of
3018	  RUBY_GROUP_MAX. They are the same.
3019
3020Sat Mar  9 21:15:39 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3021
3022	* file.c (access_internal): removed.
3023	* file.c (rb_file_readable_real): use access() instead of
3024	  access_internal().
3025	* file.c (rb_file_writable_real): ditto.
3026	* file.c (rb_file_executable_real): ditto.
3027
3028Wed Mar  6 22:13:38 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
3029
3030merge revision(s) 39297: [Backport #8032]
3031
3032	* tool/mkconfig.rb: clear exec_prefix which may differ from prefix,
3033	  before expanding rubyarchdir to remove prefix.
3034
3035Tue Mar  5 01:20:39 2013  NARUSE, Yui  <naruse@ruby-lang.org>
3036
3037	* tool/merger.rb: add interaction when only ChangeLog is modified.
3038
3039Tue Mar  5 01:03:16 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3040
3041	* file.c (rb_group_member): get rid of NGROUPS dependency.
3042	  [Bug #7886] [ruby-core:52537]
3043
3044Tue Mar  5 00:16:56 2013  Eric Hodel  <drbrain@segment7.net>
3045
3046	* ext/openssl/ossl.c (class OpenSSL):  Use only inner parenthesis in
3047	  create_extension examples.
3048
3049Tue Mar  5 00:16:56 2013  Eric Hodel  <drbrain@segment7.net>
3050
3051	* ext/openssl/ossl.c (class OpenSSL):  Fixed ExtensionFactory example.
3052	  Patch by Richard Bradley.  [ruby-trunk - Bug #7551]
3053
3054Mon Mar  4 23:53:18 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
3055
3056	(merge r39291)
3057	* configure.in (opt-dir): remove debug print.
3058
3059Mon Mar  4 23:42:34 2013  Zachary Scott  <zachary@zacharyscott.net>
3060
3061	* ext/psych/lib/psych/y.rb: Document Kernel#y by Adam Stankiewicz
3062	  [Github tenderlove/psych#127]
3063
3064Mon Mar  4 23:37:14 2013  NARUSE, Yui  <naruse@ruby-lang.org>
3065
3066	* tool/mkconfig.rb: remove prefix from rubyarchdir.
3067	  r39267 expands variables, it changes expansion timing,
3068	  breaks RbConfig::CONFIG["includedir"] and building
3069	  extension libraries with installed ruby.
3070
3071Sun Mar  3 02:45:13 2013  Kazuki Tsujimoto  <kazuki@callcc.net>
3072
3073	* vm.c (ENV_IN_HEAP_P): fix off-by-one error.
3074
3075Sun Mar  3 02:39:01 2013  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
3076
3077	* test/ruby/test_thread.rb: fixed typo
3078	  patched by Hiroki Matsue via https://github.com/ruby/ruby/pull/248
3079
3080Sun Mar  3 02:22:56 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3081
3082	* class.c (include_modules_at): detect cyclic prepend with original
3083	  method table.  [ruby-core:52205] [Bug #7841]
3084
3085Sun Mar  3 02:16:24 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3086
3087	* vm_method.c: call method_removed hook on called class, not on
3088	  prepending iclass.  [ruby-core:52207] [Bug #7843]
3089
3090Sun Mar  3 01:57:50 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3091
3092	* configure.in (warnflags): disable -Werror by default unless
3093	  development.  [ruby-core:52131] [Bug #7830]
3094
3095Wed Feb 27 00:20:43 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3096
3097	* test/ruby/test_process.rb (test_setsid): Added a workaround for
3098	  MacOS X. Patch by nagachika. [Bug #7826] [ruby-core:52126]
3099
3100Sun Feb 24 15:16:00 2013  Eric Hodel  <drbrain@segment7.net>
3101
3102	* lib/net/http.rb:  Removed duplicate Accept-Encoding in Net::HTTP#get.
3103	  [ruby-trunk - Bug #7924]
3104	* test/net/http/test_http.rb:  Test for the above.
3105
3106Wed Feb 20 14:23:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3107
3108	* thread.c: Grammar for #backtrace_locations and ::handle_interrupt
3109
3110Fri Feb 22 11:10:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3111
3112	* enum.c (Enumerable#chunk: Improved examples, grammar, and formatting
3113	  Patch by Dan Bernier and Rich Bruchal of newhaven.rb
3114	  [Backport #7926]
3115
3116Fri Feb 22 02:33:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3117
3118	* lib/abbrev.rb: Add words parameter to Abbrev::abbrev
3119	  Patch by Devin Weaver [Backport #7927]
3120
3121Wed Feb 20 13:37:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3122
3123	* ext/pty/pty.c: Documentation for the PTY module [Backport #7928]
3124
3125Wed Feb 20 12:18:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3126
3127	* object.c: Document Data class by Matthew Mongeau [Backport #7929]
3128
3129Wed Feb 20 11:50:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3130
3131	* lib/mutex_m.rb: Add rdoc for Mutex_m module [Backport #7930]
3132
3133Tue Feb 19 12:30:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3134
3135	* object.c: rdoc formatting for Kernel#Array() [Backport #7931]
3136	* array.c: Add rdoc for Array() method to Creating Arrays section
3137
3138Sat Feb 23 16:51:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3139
3140	* thread.c: Documentation for Thread#backtrace_locations
3141	  [Backport #7932]
3142
3143Sat Feb 23 16:05:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3144
3145	* vm.c: Typo in ObjectSpace::WeakMap overview [Backport #7933]
3146
3147Sat Feb 23 16:00:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3148
3149	* thread.c: Improved rdoc for ::handle_interrupt, ::pending_interrupt?
3150	  and #pending_interrupt? [Backport #7934]
3151
3152Sat Feb 23 14:19:51 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3153
3154	* include/ruby/ruby.h (HAVE_RB_SCAN_ARGS_OPTIONAL_HASH): for
3155	  rb_scan_args() optional hash feature.  [Bug #7861]
3156
3157Sat Feb 23 13:03:22 2013  Akinori MUSHA  <knu@iDaemons.org>
3158
3159	* lib/ipaddr.rb (IPAddr#in6_addr): Fix a typo with the closing
3160	  parenthesis.
3161
3162Sat Feb 23 13:03:22 2013  Akinori MUSHA  <knu@iDaemons.org>
3163
3164	* lib/ipaddr.rb (IPAddr#in6_addr): Fix the parser so that it can
3165	  recognize IPv6 addresses with only one edge 16-bit piece
3166	  compressed, like [::2:3:4:5:6:7:8] or [1:2:3:4:5:6:7::].
3167	  [Bug #7477]
3168
3169Sat Feb 23 13:00:49 2013  Akinori MUSHA  <knu@iDaemons.org>
3170
3171	* configure.in (LIBRUBY_DLDFLAGS): Fix a bug where --with-opt-dir
3172	  options given were not reflected to LIBRUBY_DLDFLAGS on many
3173	  platforms including Linux and other GNU-based systems, NetBSD,
3174	  AIX and BeOS.
3175
3176Sat Feb 23 13:00:07 2013  Akinori MUSHA  <knu@iDaemons.org>
3177
3178	* configure.in: Fix a bug introduced in r38342 that the cflagspat
3179	  substitution is messed up by the way CFLAGS and optflags are
3180	  modified, which affected FreeBSD and NetBSD/amd64 when
3181	  configured to use libexecinfo.  This bug resulted in CFLAGS and
3182	  CXXFLAGS in RbConfig::CONFIG having warnflags expanded in them,
3183	  forcing third-party C/C++ extensions to follow what warnflags
3184	  demands, like ANSI/ISO-C90 conformance.  ref [Bug #7101]
3185
3186Sat Feb 23 12:58:32 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3187
3188	* lib/mkmf.rb: remove extra topdir in VPATH, which was in
3189	  win32/Makefile.sub for some reason and moved from there.
3190	  [ruby-dev:46998] [Bug #7864]
3191
3192Tue Feb 23 12:07:00 2013  Kenta MURATA  <mrkn@mrkn.jp>
3193
3194	* backport r39321 from trunk. [ruby-core:51777] [Bug #7761]
3195
3196	* ext/bigdecimal/bigdecimal.gemspec: bump to 1.2.0.
3197	  [ruby-core:51777] [Bug #7761]
3198
3199Sat Feb 23 08:57:46 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3200
3201	* backport r39410 from trunk
3202
3203	* doc/NEWS-*: Update NEWS from their respective branches
3204
3205Sat Feb 23 08:14:43 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3206
3207	* backport r39400-r39407 from trunk.
3208
3209	* NEWS: many additions
3210
3211	* object.c: Add doc for Module.prepended
3212
3213Sat Feb 23 06:07:04 2013  Eric Hodel  <drbrain@segment7.net>
3214
3215	* lib/rubygems/installer.rb (build_extensions):  Create extension
3216	  install destination before building extension.  Patch by Kenta Murata.
3217	  [ruby-trunk - Bug #7897]
3218	* test/rubygems/test_gem_installer.rb:  Test for the above.
3219
3220Sat Feb 23 04:34:44 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3221
3222	* NEWS: pending_interrupt? is both instance and singleton method
3223
3224Sat Feb 23 02:49:10 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3225
3226	* NEWS: Add Thread#pending_interrupt? and Thread.handle_interrupt
3227
3228Fri Feb 22 19:22:05 2013  Aaron Patterson <aaron@tenderlovemaking.com>
3229
3230	* lib/rexml/document.rb (REXML::Document.entity_expansion_text_limit):
3231	  new attribute to read/write entity expansion text limit.  the default
3232	  limit is 10Kb.
3233
3234	* lib/rexml/text.rb (REXML::Text.unnormalize): check above attribute.
3235
3236Thu Feb 21 05:03:38 2013  Eric Hodel  <drbrain@segment7.net>
3237
3238	* lib/rubygems/commands/update_command.rb:  Create the installer after
3239	  options are processed.  [ruby-trunk - Bug #7779]
3240	* test/rubygems/test_gem_commands_update_command.rb:  Test for the
3241	  above.
3242
3243Thu Feb 21 04:54:14 2013  Eric Hodel  <drbrain@segment7.net>
3244
3245	* lib/rubygems/installer.rb:  Use gsub instead of gsub! to avoid
3246	  altering @bin_dir.  Fixes tests on windows.  [ruby-trunk - Bug #7885]
3247
3248Thu Feb 21 03:16:37 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3249
3250	* NEWS: Floats are frozen too
3251
3252Thu Feb 21 03:10:53 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3253
3254	* NEWS: Add that Fixnums and Bignums are frozen
3255
3256Wed Feb 20 17:02:12 2013  Koichi Sasada  <ko1@atdot.net>
3257
3258	* vm_eval.c (vm_call0_body): check interrupts after method dispatch
3259	  from C methods. [Bug #7878]
3260
3261Wed Feb 20 08:05:25 2013 Nobuyoshi Nakada  <nobu@ruby-lang.org>
3262
3263	* compar.c (rb_invcmp): compare by inversed comparison, with preventing
3264	  from infinite recursion.  [ruby-core:52305] [Bug #7870]
3265
3266	* string.c (rb_str_cmp_m), time.c (time_cmp): get rid of infinite
3267	  recursion.
3268
3269Tue Feb 19 15:49:58 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3270
3271	* configure.in (unexpand_shvar): regularize a shell variable by
3272	  unexpanding shell variables in it.
3273
3274	* configure.in (shvar_to_cpp): do not substitute exec_prefix itself
3275	  with RUBY_EXEC_PREFIX, which cause recursive definition.
3276	  [ruby-core:52296] [Bug #7860]
3277
3278	* configure.in: unexpand arch sitearch and exec_prefix values, so
3279	  directly specified bindir, libdir, rubyprefix, etc can be properly
3280	  substituted.  [ruby-core:52296] [Bug #7860]
3281
3282Tue Feb 19 14:08:46 2013  Eric Hodel  <drbrain@segment7.net>
3283
3284	* backport r39307 from trunk.  [Bug #7880]
3285
3286	* lib/rubygems/installer.rb:  Fixed placement of executables with
3287	  --user-install.  [ruby-trunk - Bug #7779]
3288
3289	* test/rubygems/test_gem_installer.rb:  Test for above.
3290
3291Tue Feb 19 13:57:26 2013  Eric Hodel  <drbrain@segment7.net>
3292
3293	* backport r39247 from trunk. [Bug #7853]
3294
3295	* lib/rdoc.rb:  Update to release version of 4.0.0
3296
3297	* lib/rubygems.rb:  Update to release version of 2.0.0
3298
3299Tue Feb 19 12:25:27 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3300
3301	* win32/Makefile.sub (config.status): site and vendor directories
3302	  should use sitearch, not arch.  [ruby-dev:46964] [Bug #7823]
3303
3304Tue Feb 19 07:51:01 2013  Koichi Sasada  <ko1@atdot.net>
3305
3306	* backport r39275 from trunk. [ruby-dev:46994] [Bug #7774]
3307
3308	* proc.c (rb_binding_new_with_cfp): create binding object even if
3309	  the frame is IFUNC. But return a ruby-level binding to keep
3310	  compatibility.
3311	  This patch fix degradation introduced from r39067.
3312	  [Bug #7774] [ruby-dev:46960]
3313
3314	* test/ruby/test_settracefunc.rb: add a test.
3315
3316Sat Feb 16 20:43:43 2013  Koichi Sasada  <ko1@atdot.net>
3317
3318	* backport r39276 from trunk. [ruby-dev:46997] [Bug #7825]
3319
3320	* vm.c (rb_thread_mark): mark a working Proc of bmethod
3321	  (a method defined by define_method) even if the method was removed.
3322	  We could not trace working Proc object which represents the body
3323	  of bmethod if the method was removed (alias/undef/overridden).
3324	  Simply, it was mark miss.
3325	  This patch by Kazuki Tsujimoto. [Bug #7825]
3326
3327	  NOTE: We can brush up this marking because we do not need to mark
3328	  `me' on each living control frame. We need to mark `me's
3329	  only if `me' was free'ed. This is future work after Ruby 2.0.0.
3330
3331	* test/ruby/test_method.rb: add a test.
3332
3333Fri Feb 15 00:49:32 2013  Eric Hodel  <drbrain@segment7.net>
3334
3335	* lib/net/http.rb:  Removed OpenSSL dependency from Net::HTTP.
3336
3337	* test/net/http/test_http.rb:  Remove Zlib dependency from tests.
3338	* test/net/http/test_http_request.rb:  ditto.
3339
3340Fri Feb 15 00:49:32 2013  Eric Hodel  <drbrain@segment7.net>
3341
3342	* lib/net/http:  Do not handle Content-Encoding when the user sets
3343	  Accept-Encoding.  This allows users to handle Content-Encoding for
3344	  themselves.  This restores backwards-compatibility with Ruby 1.x.
3345	  [ruby-trunk - Bug #7831]
3346	* lib/net/http/generic_request.rb:  ditto.
3347	* lib/net/http/response.rb:  ditto
3348	* test/net/http/test_http.rb:  Test for the above.
3349	* test/net/http/test_http_request.rb:  ditto.
3350	* test/net/http/test_httpresponse.rb:  ditto.
3351
3352Thu Feb 14 13:17:10 2013  Zachary Scott  <zachary@zacharyscott.net>
3353
3354	* Backport r39168 Warning about TracePoint events to 2.0.0
3355	  [ruby-core:52073] [Bug #7815]
3356
3357	* vm_trace.c: note about TracePoint events set
3358
3359Thu Feb 14 07:04:13 2013  Eric Hodel  <drbrain@segment7.net>
3360
3361	* Backport r39213 from trunk [ruby-trunk - Bug #7383]
3362
3363	* lib/rubygems.rb:  Return BINARY strings from Gem.gzip and Gem.gunzip.
3364	  Fixes intermittent test failures.  RubyGems issue #450 by Jeremey
3365	  Kemper.
3366	* test/rubygems/test_gem.rb:  Test for the above.
3367
3368Thu Feb 14 07:01:12 2013  Eric Hodel  <drbrain@segment7.net>
3369
3370	* Backport part of r39166 from trunk [ruby-trunk - Bug #7809]
3371
3372	* lib/rubygems/package.rb:  Include checksums.yaml.gz signatures for
3373	  verification.
3374	* test/rubygems/test_gem_package.rb:  Test for the above.
3375
3376Wed Feb 13 15:34:21 2013  NARUSE, Yui  <naruse@ruby-lang.org>
3377
3378	* ext/json: merge JSON 1.7.7.
3379	  This includes security fix. [CVE-2013-0269]
3380	  https://github.com/flori/json/commit/d0a62f3ced7560daba2ad546d83f0479a5ae2cf2
3381	  https://groups.google.com/d/topic/rubyonrails-security/4_YvCpLzL58/discussion
3382
3383Sat Feb  9 21:13:35 2013  Kazuki Tsujimoto  <kazuki@callcc.net>
3384
3385	* backport r39167 from trunk. [ruby-core:52059] [Bug #7812]
3386
3387	* BSDL: update copyright notice for 2013.
3388
3389Fri Feb  8 19:56:54 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
3390
3391	* array.c (rb_ary_dup): reverted r39004.  see [Bug #7768], and
3392	  release manager finally decided to revert it.
3393
3394Fri Feb  8 16:09:45 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3395
3396	* eval.c (rb_ensure): preserve errinfo across ensure proc before
3397	  JUMP_TAG().  [ruby-core:52022] [Bug #7802]
3398
3399Fri Feb  8 16:08:28 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3400
3401	* test/ruby/envutil.rb (assert_separately): check also terminating
3402	  signal not only if core dumped.
3403
3404Fri Feb  8 13:12:04 2013  Eric Hodel  <drbrain@segment7.net>
3405
3406	* lib/rdoc/generator/darkfish.rb:  Set encoding on output template to
3407	  user-specified encoding.
3408	* test/rdoc/test_rdoc_generator_darkfish.rb:  Test for above.
3409
3410	* lib/rdoc.rb:  Bump version
3411
3412Fri Feb  8 11:53:33 2013  Eric Hodel  <drbrain@segment7.net>
3413
3414	* lib/rubygems/security/policy.rb:  Raise proper exceptions when
3415	  verifying unsigned gems (instead of crashing).
3416	* test/rubygems/test_gem_security_policy.rb:  Tests for the above.
3417
3418Fri Feb  8 10:44:44 2013  Eric Hodel  <drbrain@segment7.net>
3419
3420	* test/rubygems/test_gem_dependency_installer.rb:  Improve coverage of
3421	  --install-dir feature of gem install.
3422
3423Fri Feb  8 10:11:09 2013  Eric Hodel  <drbrain@segment7.net>
3424
3425	* lib/rubygems/config_file.rb:  Add missing require for
3426	  user_interaction.rb
3427
3428	* lib/rubygems/dependency_installer.rb:  Minor refactor for clarity.
3429
3430Fri Feb  8 09:35:17 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3431
3432	* lib/mkmf.rb (MakeMakefile#configuration): set all ruby names.
3433	  hdrdir now needs RUBY_VERSION_NAME.
3434
3435Fri Feb  8 08:58:26 2013  Eric Hodel  <drbrain@segment7.net>
3436
3437	* lib/rubygems/package/old.rb:  Fix loading old format gems on ruby
3438	  1.8.  This commit is only so trunk and rubygems master have the same
3439	  code.
3440
3441Fri Feb  8 08:53:27 2013  Aaron Patterson <aaron@tenderlovemaking.com>
3442
3443	* ext/psych/lib/psych/visitors/yaml_tree.rb: fixing string quotation
3444	  when dumping Ruby strings. Thanks Ingy
3445
3446	* test/psych/test_psych.rb: appropriate tests.
3447
3448	* test/psych/test_yaml.rb: ditto
3449
3450Fri Feb  8 08:50:42 2013  Aaron Patterson <aaron@tenderlovemaking.com>
3451
3452	* ext/psych/lib/psych/visitors/yaml_tree.rb: change output reference
3453	  ids to be sequential numbers.
3454
3455Fri Feb  8 07:47:56 2013  Eric Hodel  <drbrain@segment7.net>
3456
3457	* lib/rubygems/package/old.rb:  Disallow installation of old-format
3458	  gems when a security policy is active.
3459	* test/rubygems/test_gem_package_old.rb:  Test for above.
3460
3461Fri Feb  8 07:34:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3462
3463	* lib/net/http.rb (HTTP.post_form): Fix module scope in documentation
3464	  Patch by David Albert [Bug #7794] [ruby-core:51955]
3465
3466Fri Feb  8 07:33:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3467
3468	* compar.c (cmp_equal): Document ignored exception and return false
3469	  By Makoto Kishimoto [Bug #7790] [ruby-dev:46925] [ruby-dev:46910]
3470
3471Fri Feb  8 07:17:00 2013  Eric Hodel  <drbrain@segment7.net>
3472
3473	* lib/rubygems/dependency_installer.rb:  Only install local gems if
3474	  they end in '.gem'.  Fixes github rubygems issue #407.
3475	* test/rubygems/test_gem_dependency_installer.rb:  Test for the above.
3476
3477Fri Feb  8 00:02:48 2013  Tanaka Akira  <akr@fsij.org>
3478
3479	* process.c (obj2gid): use getgrnam_r() only if getgrnam_r() and
3480	  _SC_GETGR_R_SIZE_MAX is available.
3481	  MirOS BSD (MirBSD 10 GENERIC#1382 i386) have getgrnam_r() but
3482	  no _SC_GETGR_R_SIZE_MAX.
3483	  (obj2uid): use getpwnam_r() only if getpwnam_r() and
3484	  _SC_GETPW_R_SIZE_MAX is available.
3485	  This is consistency for obj2gid.
3486	  MirOS BSD have neither getpwnam_r() nor _SC_GETPW_R_SIZE_MAX.
3487
3488Thu Feb  7 22:01:18 2013  Tanaka Akira  <akr@fsij.org>
3489
3490	* configure.in: define linker for shared library on MirOS BSD.
3491
3492Thu Feb  7 21:09:23 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
3493
3494	* test/rubygems/test_gem_config_file.rb
3495	  (TestGemConfigFile#test_check_credentials_permissions): skip on
3496	  Windows. see [Bug #7784] [ruby-core:51864] and r39070.
3497
3498Thu Feb  7 20:52:40 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
3499
3500	* win32/Makefile.sub (config.status): added variables which were
3501	  missing at r39130.
3502
3503Thu Feb  7 15:33:17 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3504
3505	* lib/mkmf.rb (MakeMakefile#merge_libs): insert following reversal
3506	  ordered elements just after the duplicated element, not overwriting
3507	  successive elements.  [ruby-core:50314] [Bug #7467]
3508
3509Thu Feb  7 14:56:15 2013  Eric Hodel  <drbrain@segment7.net>
3510
3511	* lib/rubygems/package.rb:  Ensure digests are generated for signing.
3512	* test/rubygems/test_gem_package.rb:  Test for the above.
3513
3514	* lib/rubygems/security/policy.rb:  Ensure digests are present when
3515	  verifying a gem and match the number of signatures bidirectionally.
3516	* test/rubygems/test_gem_security_policy.rb:  Test for the above.
3517
3518	* lib/rubygems.rb:  Documentation improvements (by zzak)
3519
3520Thu Feb  7 05:52:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3521
3522	* doc/pty/README: Remove static documentation file
3523	* ext/pty/pty.c: Add License to PTY module overview
3524
3525Thu Feb  7 02:31:10 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3526
3527	* vm_insnhelper.c: attr_writer should return its argument [Bug #7773]
3528
3529	* test/ruby/test_basicinstructions.rb: Test for above
3530
3531Thu Feb  7 01:35:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3532
3533	* doc/security.rdoc: Link to japanese version of CVE page patch by
3534	  nagachika
3535
3536Wed Feb  6 23:30:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3537
3538	* doc/pty/README.expect: Removed static documentation file
3539	* ext/pty/lib/expect.rb: Documentation for IO#expect
3540
3541Wed Feb  6 22:25:00 2013  Charlie Somerville  <charlie@charliesomerville.com>
3542
3543	* hash.c (env_reject_bang): hide keys array from ObjectSpace
3544	* hash.c (env_select_bang): ditto
3545
3546Wed Feb  6 17:33:01 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3547
3548	* configure.in (multiarch): add option to move architecture dependent
3549	  directories.  [Feature #6111]
3550
3551	* template/ruby.pc.in: add arch dependent paths.
3552
3553	* configure.in (rubyarchhdrdir, sitearchhdrdir, vendorarchhdrdir): add
3554	  options to customize architecture dependent header directories.
3555
3556	* configure.in (rubyarchprefix, sitearchdir, vendorarchdir): add
3557	  options to customize architecture dependent library directories.
3558
3559	* template/ruby.pc.in, tool/mkconfig.rb, tool/rbinstall.rb: use
3560	  configured values.
3561
3562	* tool/mkconfig.rb: expand rubyarchdir to extract prefix.
3563
3564	* configure.in (RUBY_VERSION_NAME), template/ruby.pc.in: add
3565	  substitution and define.
3566
3567	* configure.in, version.c: parametric architecture name for paths.
3568
3569	* configure.in (shvar_to_cpp): convert sh variable references
3570	  by replacing with string literal forms in cpp.
3571
3572Wed Feb  6 17:05:26 2013  Eric Hodel  <drbrain@segment7.net>
3573
3574	* lib/rdoc:  Import RDoc 4.0.0.rc.2
3575
3576Mon Feb  4 02:22:49 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3577
3578	* test/ruby/test_process.rb (test_setsid): ensure to call
3579	  Process.wait(). Reported by George Koehler. Thanks.
3580
3581Mon Feb  4 02:18:00 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3582
3583	* test/ruby/test_process.rb (test_setsid): skip when platform is
3584	  OpenBSD. Contributed from George Koehler.
3585	  [Bug #7789] [ruby-core:51889]
3586
3587Wed Feb  6 13:35:20 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3588
3589	* proc.c (rb_method_entry_location, rb_{mod,obj}_method_location): new
3590	  functions to obtain source location of method definition.
3591
3592	* vm_method.c (rb_obj_respond_to): show the location of old style
3593	  respond_to? method.
3594
3595Wed Feb  6 13:03:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3596
3597	* doc/security.rdoc: Add link to CVEs on ruby-lang.org/en/security
3598
3599Wed Feb  6 12:49:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3600
3601	* NEWS: Add note about removal of CSV::load and CSV::dump from r39077
3602
3603Wed Feb  6 05:57:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3604
3605	* lib/racc/parser.rb: Hide copyright notice from Racc doc
3606
3607Wed Feb  6 05:50:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3608
3609	* doc/rubygems/*: Removed outdated documentation files
3610	* lib/rubygems/LICENSE.txt: Include license file
3611	* lib/rubygems.rb: Move Gem module documentation so rdoc can parse it
3612	  and link to LICENSE.txt
3613	* lib/rubygems/*: Hide useless documentation from Gem module rdoc
3614
3615Wed Feb  6 03:45:19 2013  Zachary Scott  <zachary@zacharyscott.net>
3616
3617	* doc/security.rdoc: Remove documentation for unsafe CSV.load which
3618	  was deleted in r39077
3619
3620Wed Feb  6 03:27:19 2013  James Edward Gray II  <james@graysoftinc.com>
3621
3622	* lib/csv.rb: Remove the dangerous serialization feature.
3623
3624Wed Feb  6 00:56:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3625
3626	* lib/irb.rb: Remove example from restrictions, it works [Github #246]
3627	  Based on patch by Ryunosuke SATO
3628
3629Wed Feb  6 00:46:53 2013  Kazuki Tsujimoto  <kazuki@callcc.net>
3630
3631	* vm.c (rb_vm_stack_to_heap): call rb_vm_get_binding_creatable_next_cfp
3632	  instead of rb_vm_get_ruby_level_next_cfp to prevent a segfault by
3633	  calling Kernel#callcc. See r39067 for more details.
3634	  [ruby-dev:46908] [ruby-trunk - Bug #7774]
3635
3636	* test/ruby/test_settracefunc.rb: add a test.
3637
3638Tue Feb  5 18:48:00 2013  Charlie Somerville  <charlie@charliesomerville.com>
3639
3640	* doc/security.rdoc: add regex, eval and drb sections
3641
3642Tue Feb  5 17:24:02 2013  Eric Hodel  <drbrain@segment7.net>
3643
3644	* lib/rdoc/servlet.rb:  Fixed root search paths, filesystem paths
3645	  instead of HTTP paths were returned.
3646	* test/rdoc/test_rdoc_servlet.rb:  Test for above.
3647
3648Tue Feb  5 16:37:00 2013  Eric Hodel  <drbrain@segment7.net>
3649
3650	* lib/rubygems/config_file.rb:  Ignore permissions check on windows.
3651	  Windows writes 0600 file as 0644 permissions making the check
3652	  useless.
3653
3654Tue Feb  5 16:25:25 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3655
3656	* vm_method.c (rb_obj_respond_to): drop optional include_all flag if
3657	  respond_to? method is defined in old style.  [Bug #7722]
3658
3659Tue Feb 05 15:04:34 2013  Koichi Sasada  <ko1@atdot.net>
3660
3661	* proc.c (rb_binding_new_with_cfp): permit to create binding object
3662	  of IFUNC frame.
3663	  When `rb_binding_new_with_cfp()' is called, VM finds out the first
3664	  normal (has iseq) frame and create a binding object of this frame
3665	  and create Env objects. `ep's of related frames are updated
3666	  (`ep's point Env object managed spaces).
3667	  However, `ep' of skipped IFUNC frame was not updated and
3668	  old invalid `ep' was remained. It causes serious problems.
3669	  To solve this issue, permit IFUNC to create binding.
3670	  (Maybe there is no problem on it)
3671	  [ruby-dev:46908] [ruby-trunk - Bug #7774]
3672
3673	* test/ruby/test_settracefunc.rb: add a test.
3674
3675	* vm.c (rb_vm_get_binding_creatable_next_cfp), vm_core.h: added.
3676
3677	* vm_trace.c: fix to use `rb_vm_get_binding_creatable_next_cfp()'.
3678
3679Tue Feb  5 14:43:15 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3680
3681	* lib/matrix.rb: Fix error message, patch by pypypy [Bug #7777]
3682
3683Tue Feb  5 14:36:04 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3684
3685	* numeric.c (fix_pow): Handle special cases when base is 0, -1 or +1
3686	  [Bug #5713] [Bug #5715]
3687
3688	* rational.c (nurat_expt): ditto
3689
3690Tue Feb  5 13:27:53 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3691
3692	* ext/io/console/console.c (rawmode_opt): use default values by `stty
3693	  raw`.
3694
3695Tue Feb  5 12:50:47 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3696
3697	* range.c: Use div instead of / for bsearch
3698
3699	* test/ruby/test_range.rb: Test showing bug when requiring mathn
3700
3701Tue Feb  5 12:48:38 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3702
3703	* enumerator.c: Use to_enum for Enumerable methods returning
3704	  Enumerators.
3705	  This makes Lazy#cycle no longer needed, so it was removed.
3706	  Make Enumerator#chunk and slice_before return lazy Enumerators.
3707	  [Bug #7715]
3708
3709	* internal.h: Remove ref to rb_enum_cycle_size; no longer needed
3710
3711	* enum.c: Make enum_cycle_size static.
3712
3713	* test/ruby/test_lazy_enumerator.rb: Test for above
3714
3715Tue Feb  5 12:48:10 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3716
3717	* enumerator.c: Finalize and document Lazy.new. [Bug #7248]
3718	  Add Lazy#to_enum and simplify Lazy#size.
3719
3720	* test/ruby/test_lazy_enumerator.rb: tests for above
3721
3722Tue Feb  5 11:35:35 2013  Eric Hodel  <drbrain@segment7.net>
3723
3724	* lib/rubygems/commands/push_command.rb:  Fixed credential download for
3725	  `gem push --host`
3726	* lib/rubygems/gemcutter_utilities.rb:  ditto.
3727	* test/rubygems/test_gem_commands_push_command.rb:  Test for the above.
3728	* test/rubygems/test_gem_gemcutter_utilities.rb:  ditto.
3729
3730	* lib/rubygems/config_file.rb:  Abort if the `gem push` credentials
3731	  file has insecure permissions.
3732	* test/rubygems/test_gem_config_file.rb:  Test for the above.
3733
3734	* lib/rubygems/ext/builder.rb:  Do not look for Gemfile, Isolate, etc.
3735	  while building gem extensions.
3736
3737	* lib/rubygems/package.rb:  Unset spec and files list if a gem's
3738	  signatures cannot be verified.
3739	* test/rubygems/test_gem_package.rb:  Test for the above.
3740
3741	* lib/rubygems/specification.rb:  Reduce use of eval.
3742	* lib/rubygems/test_case.rb:  ditto.
3743
3744	* test/rubygems/test_gem_specification.rb:  Test setting
3745	  specification_version for legacy gems.  Dup Gem.ruby before
3746	  untainting in case it's frozen.
3747
3748	* lib/rubygems.rb:  Reduce use of eval.  Only read files when looking
3749	  for Gemfile, Isolate, etc.
3750	* test/rubygems/test_gem.rb:  Test for the above.
3751
3752Tue Feb  5 10:15:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3753
3754	* doc/security.rdoc: Wrap security guide at 80 columns
3755
3756Tue Feb  5 10:15:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3757
3758	* doc/security.rdoc: Grammatical error on security guide
3759	  Patch by Josh Bassett [Github fixes #245]
3760
3761Tue Feb  5 10:00:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3762
3763	* lib/racc/parser.rb: Update #do_parse and #yyparse from upstream
3764	  See [Github tenderlove/racc@7d954b5]
3765
3766Tue Feb  5 09:55:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3767
3768	* lib/racc: Merge Racc documentation downstream, add grammar ref file
3769
3770Tue Feb  5 08:03:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3771
3772	* lib/irb.rb, lib/irb/ext/save-history.rb: Add documentation on how to
3773	  enabled irb history [ruby-core:51347] [Bug #7679]
3774
3775Tue Feb  5 07:35:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3776
3777	* lib/irb.rb, lib/irb/context.rb: Add documentation on how to enable
3778	  auto-indentation and autocompletion using irbrc and irb_context
3779	  [ruby-core:51209] [Bug #7642] and [ruby-core:51348] [Bug #7680]
3780
3781Tue Feb  5 05:20:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3782
3783	* doc/standard_library.rdoc: Document list of libraries and extensions
3784	  and their purpose or short description
3785	* lib/README: Remove lib/README in favor of doc/standard_library.rdoc
3786
3787Tue Feb  5 04:40:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3788
3789	* ext/json/lib/json.rb: Move module overview definition for rdoc
3790
3791Tue Feb  5 03:00:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3792
3793	* lib/tracer.rb: Move class overview definition and reformat
3794
3795Mon Feb  4 15:10:10 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3796
3797	* ext/io/console/console.c (rawmode_opt): initialize options for the
3798	  case all options are not given.
3799
3800Mon Feb  4 12:44:13 2013  Koichi Sasada  <ko1@atdot.net>
3801
3802	* vm_dump.c (control_frame_dump): capitalize prefix of `ep'
3803	  if `ep' points an env object.
3804
3805Mon Feb  4 04:20:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3806
3807	* lib/English.rb: Add English module for RDoc to parse, then
3808	  remove_const to avoid confusion. Include full list of aliases and
3809	  their associated global variable.
3810
3811Mon Feb  4 02:40:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3812
3813	* lib/yaml.rb (YAML::EngineManager): Documentation for #yamler and
3814	  #yamler= for using the removed Syck gem as the YAML::ENGINE
3815
3816Sun Feb  3 16:54:27 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3817
3818	* ext/io/console/io-console.gemspec: bump.  [Bug #7762]
3819
3820	* test/io/console/test_io_console.rb (test_stringio_getch): use more
3821	  descriptive assertions.
3822
3823	* ext/io/console/console.c (rawmode_opt): min is minimum characters,
3824	  not tenths.
3825
3826Sun Feb  3 16:13:00 2013  Charlie Somerville  <charlie@charliesomerville.com>
3827
3828	* doc/security.rdoc: add first cut at a Ruby security document
3829
3830Sun Feb  3 10:25:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3831
3832	* random.c: Document range argument for Kernel#rand.
3833	  [ruby-core:51794] [Bug #7770]
3834
3835Sun Feb  3 10:00:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3836
3837	* numeric.c: Document Float constants [ruby-core:51484] [Bug #7709]
3838
3839Sun Feb  3 09:38:44 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3840
3841	* lib/profiler.rb (PROFILE_CALL_PROC, PROFILE_RETURN_PROC): add b_call
3842	  and b_return to profile block calls.
3843
3844	* lib/profiler.rb (PROFILE_CALL_PROC, PROFILE_RETURN_PROC): split
3845	  PROFILE_PROC for call and return events.
3846
3847Sat Feb  2 14:32:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3848
3849	* lib/minitest/mock.rb, lib/minitest/hell.rb: nodoc top-level module
3850
3851Sat Feb  2 14:05:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3852
3853	* lib/debug.rb: Documentation for DEBUGGER__ class methods based on
3854	  patch by Vincent Batts [ruby-core:51253]
3855
3856Sat Feb  2 13:37:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3857
3858	* lib/net/smtp.rb: Fix rdoc title for Net::SMTP
3859
3860Sat Feb  2 13:32:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3861
3862	* lib/net/pop.rb: Fix rdoc title for Net::POP3
3863
3864Sat Feb  2 13:00:11 2013  Yusuke Endoh  <mame@tsg.ne.jp>
3865
3866	* lib/gserver.rb (GServer#start): fix a timing issue.  patch from
3867	  Charles Nutter.  [Bug #7081]
3868
3869Sat Feb  2 12:36:54 2013  Yusuke Endoh  <mame@tsg.ne.jp>
3870
3871	* lib/fileutils.rb (copy_entry, wrap_traverse): preserve attributes of
3872	  directories on FileUtils.cp_r.  The fix was proposed by Jan
3873	  Wedekind.  [Bug #7246]
3874
3875	* test/fileutils/test_fileutils.rb: add a test for above.
3876
3877Sat Feb  2 12:30:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3878
3879	* lib/uri/ftp.rb (URI::FTP.new2): nodoc method from r39013 [Bug #7301]
3880
3881Sat Feb  2 12:15:36 2013  Yusuke Endoh  <mame@tsg.ne.jp>
3882
3883	* lib/uri/ftp.rb (URI::FTP.new2): remove the rdoc because it is not
3884	  well tested yet.  [Bug #7301]
3885
3886Sat Feb  2 12:07:41 2013  Yusuke Endoh  <mame@tsg.ne.jp>
3887
3888	* ChangeLog: Forgot to add a reference to the ChangeLog of the
3889	  previous commit.
3890
3891Sat Feb  2 12:05:18 2013  Yusuke Endoh  <mame@tsg.ne.jp>
3892
3893	* lib/fileutils.rb: chmod/chmod_R with a string mode (e.g., "+x")
3894	  caused error in verbose mode.  [Bug #7373]
3895
3896	* test/fileutils/test_fileutils.rb: add a test for above.
3897
3898Sat Feb  2 11:44:42 2013  Yusuke Endoh  <mame@tsg.ne.jp>
3899
3900	* lib/English.rb: Remove some confusing words from rdoc.  [Bug #7406]
3901
3902Sat Feb  2 10:17:12 2013  Kazuki Tsujimoto  <kazuki@callcc.net>
3903
3904	* NEWS: add keyword arguments.
3905
3906Sat Feb  2 07:45:44 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3907
3908	* proc.c (proc_curry): Fix arity check [Bug #5747]
3909
3910	* test/ruby/test_proc.rb: Test for above
3911
3912Sat Feb  2 07:44:15 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3913
3914	* proc.c: Add {*}_min_max_arity and refactor.
3915	  [Bug #7765]
3916
3917	* test/ruby/test_proc.rb: Fix wrong test
3918
3919Fri Feb  2 00:46:00 2013  Charlie Somerville  <charlie@charliesomerville.com>
3920
3921	* marshal.c: add security considerations to marshal overview, refer to
3922	  overview from Marshal.load documentation [#7759]
3923
3924Fri Feb  1 23:04:00 2013  Charlie Somerville  <charlie@charliesomerville.com>
3925
3926	* array.c (rb_ary_dup): make returned array the same class as the original
3927	  array [Bug #7768] [ruby-core:51792]
3928	* test/ruby/test_array.rb (class TestArray): add test
3929
3930Fri Feb  1 16:35:34 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3931
3932	* marshal.c (r_object0): prohibit setting instance variables of
3933	  existing class/module.
3934
3935Fri Feb  1 14:34:29 2013  Shugo Maeda  <shugo@ruby-lang.org>
3936
3937	* ext/readline/extconf.rb, ext/readline/readline.c: check
3938	  RL_PROMPT_START_IGNORE and RL_PROMPT_END_IGNORE directly in
3939	  readline.c.  Patch by Zachary Scott.  [Bug #7397] [ruby-core:49561]
3940
3941Thu Jan 31 21:55:00 2013  Charlie Somerville  <charlie@charliesomerville.com>
3942
3943	* marshal.c (marshal_load): Add documentation warning against using
3944	  Marshal.load on untrusted data [Bug #7759] [ruby-core:51765]
3945
3946Thu Jan 31 16:33:27 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3947
3948	* parse.y (local_push_gen): no assigned but unused variable warnings
3949	  in eval as well as -e.  [Feature #7730] [ruby-core:51580]
3950
3951Wed Jan 30 12:30:08 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3952
3953	* test/ruby/test_signal.rb (test_trap_puts): Fix typo. "sync"
3954	  should be "STDOUT.sync".
3955
3956Thu Jan 31 15:39:00 2013  Zachary Scott  <zachary@zacharyscott.net>
3957
3958	* string.c (rb_str_aset_m): Documentation for String#[]= fix
3959	  Raises an IndexError if Regexp match is out of range.
3960	  Github fixes #243 Patch by Dmtiriy Budnik
3961
3962Thu Jan 31 13:54:44 2013  Shugo Maeda  <shugo@ruby-lang.org>
3963
3964	* ext/socket/raddrinfo.c (rsock_unix_sockaddr_len): return
3965	  sizeof(sa_family_t) if path is empty.  see "Autobind Feature" in
3966	  unix(7) for details.
3967
3968	* ext/socket/lib/socket.rb (unix_socket_abstract_name?): treat an
3969	  empty path as an abstract name.
3970
3971	* test/socket/test_unix.rb: related test.
3972
3973Wed Jan 30 20:58:50 2013  Tanaka Akira  <akr@fsij.org>
3974
3975	* ext/socket/basicsocket.c (bsock_getsockname): ignore truncated
3976	  part of socket address.
3977	  (bsock_getpeername): ditto.
3978	  (bsock_local_address): ditto.
3979	  (bsock_remote_address): ditto.
3980
3981	* ext/socket/unixsocket.c (unix_path): ditto.
3982	  (unix_addr): ditto.
3983	  (unix_peeraddr): ditto.
3984
3985	* ext/socket/init.c (cloexec_accept): ditto.
3986
3987Wed Jan 30 17:08:20 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3988
3989	* include/ruby/win32.h (fstat): revert r37337, which uses _fstati64()
3990	  instead of fstati64() on mingw32.  [Bug #7276]
3991
3992Wed Jan 30 15:26:37 2013  Shugo Maeda  <shugo@ruby-lang.org>
3993
3994	* ext/socket/unixsocket.c (rsock_init_unixsock): use rb_inspect()
3995	  because rb_sys_fail_str() fails if its argument contains NUL.
3996
3997	* test/socket/test_unix.rb: related test.
3998
3999Wed Jan 30 15:21:30 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4000
4001	* vm_dump.c (rb_vm_bugreport): show the most important message, Crash
4002	  Report log information, first.
4003
4004Wed Jan 30 15:00:05 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4005
4006	* array.c (rb_ary_bsearch): Raise TypeError on bad return from block
4007
4008	* range.c (range_bsearch): ditto
4009
4010	* test/ruby/test_array.rb (class): Test for above
4011
4012	* test/ruby/test_range.rb (class): ditto
4013
4014Wed Jan 30 14:46:28 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4015
4016	* range.c: Restrict bsearch to integers [#7728]
4017
4018	* test/ruby/test_range.rb: Test for above
4019
4020Wed Jan 30 14:10:52 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4021
4022	* array.c (rb_ary_bsearch): Return enumerator if no block [#7725]
4023
4024	* range.c (range_bsearch): ditto
4025
4026	* test/ruby/test_array.rb: Test for above
4027
4028	* test/ruby/test_range.rb: ditto
4029
4030Wed Jan 30 13:53:43 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4031
4032	* lib/matrix.rb: Take conjugate for inner product
4033	  [rubyspec:5a01ad5719f2] [ruby-dev:46101]
4034
4035Wed Jan 30 13:22:05 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4036
4037	* parse.y (local_push_gen): warn assigned but unused variables also in
4038	  toplevel, except for -e option.  [Feature #7730] [ruby-core:51580]
4039
4040Wed Jan 30 13:17:53 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4041
4042	* cont.c (cont_restore_thread): svar should be separate per fibers.
4043	  [ruby-core:51331] [Bug #7678]
4044
4045Wed Jan 30 07:15:04 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4046
4047	* re.c (reg_operand): Simplify and reuse error handling [Bug #7539]
4048
4049	* test/ruby/test_regexp.rb: Test for above
4050
4051Wed Jan 30 07:00:16 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4052
4053	* object.c: Improve error for failed implicit conversions [Bug #7539]
4054
4055	* error.c: Adapt rdoc
4056
4057	* test/ruby/test_object.rb: Test for above
4058
4059Tue Jan 29 21:40:12 2013  Tanaka Akira  <akr@fsij.org>
4060
4061	* lib/net/http/generic_request.rb (encode_multipart_form_data): remove
4062	  tempfile explicitly.
4063
4064Tue Jan 29 19:27:18 2013  Benoit Daloze  <eregontp@gmail.com>
4065
4066	* array.c: Improve documentation about
4067	  comparison by hash for concerned methods. [ruby-core:51266]
4068
4069Tue Jan 29 17:03:28 2013  Koichi Sasada  <ko1@atdot.net>
4070
4071	* vm_backtrace.c: fix issue of rb_debug_inspector_open().
4072	  The order of making binding should be stack (frame) top to bottom.
4073	  [Bug #7635]
4074	  And also fix issue of collecting klass. Collecting klass is same
4075	  as TracePoint#defined_class.
4076	  (previous version, it returns T_ICLASS (internal objects).
4077
4078	* test/-ext-/debug/test_debug.rb: add a test.
4079
4080	* ext/-test-/debug/extconf.rb, init.c, inspector.c: ditto.
4081
4082	* vm_backtrace.c: remove magic number and add enum CALLER_BINDING_*.
4083
4084	* vm_backtrace.c, include/ruby/debug.h: add new C api (experimental)
4085	  rb_debug_inspector_frame_self_get().
4086
4087	* vm.c, vm_core.h, vm_trace.c: move decl. of
4088	  rb_vm_control_frame_id_and_class() and constify first parameter.
4089
4090Tue Jan 29 16:50:58 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4091
4092	* vm_trace.c (rb_tracepoint_enable, rb_tracepoint_disable): check safe
4093	  level as well as set_trace_func.
4094
4095	* vm_trace.c (set_trace_func, thread_{add,set}_trace_func_m): check
4096	  safe level as well as 1.8.
4097
4098Tue Jan 29 16:49:19 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4099
4100	* proc.c (rb_mod_method_arity): return original arity of the method if
4101	  aliased because of visibility change, like as Method#arity.
4102
4103Tue Jan 29 12:05:18 2013  Tanaka Akira  <akr@fsij.org>
4104
4105	* test/ruby/test_marshal.rb: remove temporally files early.
4106
4107	* test/ruby/test_process.rb: ditto.
4108
4109	* test/psych/test_exception.rb: ditto.
4110
4111Tue Jan 29 09:26:20 2013  Shugo Maeda  <shugo@ruby-lang.org>
4112
4113	* ext/socket/socket.c (sock_s_pack_sockaddr_un): calculate the
4114	  correct address length of an abstract socket.
4115
4116	* test/socket/test_unix.rb: related test.
4117
4118Mon Jan 28 18:02:16 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4119
4120	* vm_backtrace.c (rb_debug_inspector_frame_{class,binding,iseq}_get):
4121	  use long as index as well as RARRAY_LEN().
4122
4123Mon Jan 28 17:51:38 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4124
4125	* test/ruby/envutil.rb (assert_separately): imply no core dump.
4126
4127Mon Jan 28 12:32:31 2013  Tanaka Akira  <akr@fsij.org>
4128
4129	* ext/fcntl/fcntl.c: update document.  use "file descriptor" instead
4130	  of "file handle" because it is not used other Ruby documents and
4131	  it is confusing with Windows file handle.
4132	  correct F_DUPFD behavior.
4133
4134Sat Jan 26 22:39:12 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4135
4136	* marshal.c (w_object): dump instance variables of the result of
4137	  marshal_dump not the original object.  [ruby-core:51163] [Bug #7627]
4138
4139	* complex.c (nucomp_marshal_dump): need to copy instance variables.
4140
4141	* rational.c (nurat_marshal_dump): ditto.
4142
4143Sat Jan 26 13:35:56 2013  Eric Hodel  <drbrain@segment7.net>
4144
4145	* ext/fcntl/fcntl.c:  Document Fcntl constants
4146
4147Sat Jan 26 12:54:40 2013  Eric Hodel  <drbrain@segment7.net>
4148
4149	* hash.c (rb_env_size):  Restored documentation for ENV.size
4150
4151	* lib/drb/drb.rb:  Documented DRb::DRb#run.
4152
4153	* lib/erb.rb (class ERB):  Improved documentation of ERb.
4154
4155	* transcode.c:  Documented Encoding::Converter constants.
4156
4157Sat Jan 26 10:09:57 2013  Eric Hodel  <drbrain@segment7.net>
4158
4159	* lib/webrick/accesslog.rb:  Improved WEBrick documentation.
4160	* lib/webrick/cgi.rb:  ditto.
4161	* lib/webrick/config.rb:  ditto.
4162	* lib/webrick/cookie.rb:  ditto.
4163	* lib/webrick/httpauth/authenticator.rb:  ditto.
4164	* lib/webrick/httpauth/basicauth.rb:  ditto.
4165	* lib/webrick/httpauth/digestauth.rb:  ditto.
4166	* lib/webrick/httpproxy.rb:  ditto.
4167	* lib/webrick/httprequest.rb:  ditto.
4168	* lib/webrick/httpresponse.rb:  ditto.
4169	* lib/webrick/https.rb:  ditto.
4170	* lib/webrick/httpserver.rb:  ditto.
4171	* lib/webrick/httpservlet/cgihandler.rb:  ditto.
4172	* lib/webrick/httpservlet/filehandler.rb:  ditto.
4173	* lib/webrick/httpservlet/prochandler.rb:  ditto.
4174	* lib/webrick/httputils.rb:  ditto.
4175	* lib/webrick/httpversion.rb:  ditto.
4176	* lib/webrick/log.rb:  ditto.
4177	* lib/webrick/server.rb:  ditto.
4178	* lib/webrick/ssl.rb:  ditto.
4179	* lib/webrick/utils.rb:  ditto.
4180	* lib/webrick/version.rb:  ditto.
4181
4182Sat Jan 26 08:29:33 2013  Shugo Maeda  <shugo@ruby-lang.org>
4183
4184	* ext/socket/raddrinfo (rsock_unix_sockaddr_len): renamed from
4185	  rsock_unixpath_len, because it returns not the length of the path,
4186	  but the length of a socket address for the path.
4187
4188Sat Jan 26 01:12:23 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4189
4190	* test/ruby/test_io.rb (test_ioctl_linux): skip if a platform is
4191	  not x86 because linux ioctl request number depend on cpu arch.
4192	  At least, alpha, mips, sparc and ppc have a different number.
4193	  [Bug #7718] [ruby-core:51544]
4194
4195Fri Jan 25 19:14:24 2013  Masaki Suketa <masaki.suketa@nifty.ne.jp>
4196
4197	* ext/win32ole/win32ole.c: use TlsAlloc instead of __declspec(thread)
4198	  to avoid SEGV if win32ole.so loaded with LoadLibrary in Windows
4199	  XP or earlier.
4200
4201Fri Jan 25 16:47:31 2013  Shugo Maeda  <shugo@ruby-lang.org>
4202
4203	* ext/socket/raddrinfo.c (rsock_unixpath_len, init_unix_addrinfo),
4204	  ext/socket/unixsocket.c (unixsock_connect_internal,
4205	  rsock_init_unixsock): calculate the correct address length of
4206	  an abstract socket.  Without this fix, sizeof(struct sockaddr_un)
4207	  is specified as the length of an abstract socket for bind(2) or
4208	  connect(2), so the address of the socket is filled with extra NUL
4209	  characters.  See unix(7) for details.
4210
4211	* ext/socket/lib/socket.rb (unix_server_socket): don't access the
4212	  file system if the platform is Linux and path starts with NUL,
4213	  which means that the socket is an abstract socket.
4214
4215	* test/socket/test_unix.rb: related test.
4216
4217Fri Jan 25 13:02:27 2013  Eric Hodel  <drbrain@segment7.net>
4218
4219	* lib/drb/drb.rb:  Updated documentation based on patch from Vincent
4220	  Batts.  [ruby-trunk - Bug #7714]
4221	* lib/drb/ssl.rb:  ditto.
4222
4223Fri Jan 25 12:23:29 2013  Eric Hodel  <drbrain@segment7.net>
4224
4225	* lib/drb/drb.rb:  Improved documentation by adding or hiding methods.
4226	* lib/drb/eq.rb:  ditto.
4227	* lib/drb/extserv.rb:  ditto.
4228	* lib/drb/gw.rb:  ditto.
4229	* lib/drb/invokemethod.rb:  ditto.
4230	* lib/drb/observer.rb:  ditto.
4231	* lib/drb/ssl.rb:  ditto.
4232	* lib/drb/timeridconv.rb:  ditto.
4233	* lib/drb/unix.rb:  ditto.
4234
4235	* sample/drb/gw_cu.rb:  Fixed bug in DRb gateway sample.
4236
4237Fri Jan 25 12:01:56 2013  Koichi Sasada  <ko1@atdot.net>
4238
4239	* vm_core.h: modify a comment about rb_iseq_t::local_size.
4240	  A patch by davidbalbert (David Albert) [Bug #6750]
4241
4242Fri Jan 25 10:36:31 2013  Eric Hodel  <drbrain@segment7.net>
4243
4244	* lib/mkmf.rb:  Documented MakeMakefile constants.  Hide implementation
4245	  details from RDoc
4246
4247Fri Jan 25 10:04:07 2013  Eric Hodel  <drbrain@segment7.net>
4248
4249	* lib/rubygems/compatibility.rb:  Hide compatibility shims from RDoc
4250
4251	* lib/rubygems/config_file.rb:  Hide RbConfig use from RDoc
4252
4253	* lib/rubygems/test_case.rb:  Added note to use realpath when 1.8
4254	  support is dropped.
4255
4256Fri Jan 25 09:14:43 2013  Eric Hodel  <drbrain@segment7.net>
4257
4258	* lib/rdoc/generator/darkfish.rb:  Fixed debug message.  RDoc bug #174
4259	  by Thomas Leitner.
4260
4261	* lib/rdoc/store.rb:  Fixed deletion of ri attribute data when a class
4262	  was loaded then saved.  RDoc bug #171 by Thomas Leitner.
4263	* test/rdoc/test_rdoc_store.rb:  Test for above.
4264
4265Thu Jan 24 19:55:25 2013  Shota Fukumori  <her@sorah.jp>
4266
4267	* NEWS (yaml): Write about bundled libyaml.
4268
4269Thu Jan 24 16:54:34 2013  Eric Hodel  <drbrain@segment7.net>
4270
4271	* doc/syntax/calling_methods.rdoc:  Added a Method Lookup section.
4272	* doc/syntax/refinements.rdoc (Method Lookup):  Clarified that
4273	  refinement methods are looked up in classes, not instances.
4274
4275Thu Jan 24 16:49:17 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4276
4277	* enum.c (enum_zip): Fix error message
4278
4279	* array.c (take_items): Same, for Array#zip
4280
4281Thu Jan 24 16:47:26 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4282
4283	* enumerator.c (lazy_zip): raise error for bad arguments
4284	  [Bug #7706]
4285
4286Thu Jan 24 16:05:08 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4287
4288	* enumerator.c: Optimize Lazy#zip when passed only arrays
4289	  [Bug #7706]
4290
4291Thu Jan 24 15:21:17 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4292
4293	* enumerator.c: Fix state handling for Lazy#zip,{drop_take}{_while}
4294	  [bug #7696] [bug #7691]
4295
4296Thu Jan 24 11:43:47 2013  Narihiro Nakamura  <authornari@gmail.com>
4297
4298	* eval.c (f_current_dirname): Add documentation about "__dir__
4299	  returns always an absolute path". [Bug #7729]
4300
4301Thu Jan 24 10:28:30 2013  Eric Hodel  <drbrain@segment7.net>
4302
4303	* NEWS (RDoc):  Added mention of page support and markdown support.
4304
4305Thu Jan 24 09:40:13 2013  Eric Hodel  <drbrain@segment7.net>
4306
4307	* doc/syntax/refinements.rdoc:  Added refinements document based on
4308	  the specification from the wiki.
4309	* doc/syntax.rdoc:  Added link to refinements document.
4310
4311Wed Jan 23 16:29:09 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4312
4313	* win32/win32.c (rb_w32_spawn, rb_w32_aspawn_flags): fix missing
4314	  initialization.  pointed out by phasis68 (Heesob Park) at
4315	  [ruby-core:51579].  [Bug #7721]
4316
4317Wed Jan 23 16:18:04 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4318
4319	* lib/mkmf.rb (MakeMakefile#try_constant): fix for large unsigned.
4320
4321	* lib/mkmf.rb (MakeMakefile#try_constant): fix for larger constants.
4322
4323	* test/mkmf/test_constant.rb: tests for try_constant.
4324	  TODO: define check_constant and use it.
4325
4326Wed Jan 23 13:35:37 2013  Koichi Sasada  <ko1@atdot.net>
4327
4328	* thread_pthread.c (ruby_init_stack): ignore `STACK_END_ADDRESS'
4329	  if Ruby interpreter is running on co-routine.
4330	  [Feature #2294]
4331	  https://bugs.ruby-lang.org/issues/2294#note-18
4332
4333Wed Jan 23 12:28:22 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4334
4335	* win32/win32.c (rb_w32_spawn, rb_w32_aspawn_flags): check the results
4336	  of acp_to_wstr() which can return NULL.  [ruby-core:51557] [Bug #7721]
4337
4338Wed Jan 23 10:40:49 2013  Eric Hodel  <drbrain@segment7.net>
4339
4340	* doc/syntax/assignment.rdoc (Implicit Array Assignment):  Clarify
4341	  that "left-hand side" means "of the assignment".  Suggested by Jorge
4342	  Dias.
4343	* doc/syntax/assignment.rdoc (Multiple Assignment):  ditto.
4344
4345Wed Jan 23 10:34:47 2013  Eric Hodel  <drbrain@segment7.net>
4346
4347	* doc/syntax/assignment.rdoc (Local Variables and Methods):  Fixed
4348	  example showing caching of a method's results into a local variable.
4349	  Added not about using an explicit receiver to call a method that
4350	  matches a local variable.  Suggested by markov_twain on twitter.
4351
4352Wed Jan 23 10:20:08 2013  Eric Hodel  <drbrain@segment7.net>
4353
4354	* lib/README:  Fixed typo.  Patch by Pradeep Sahoo.
4355	  Fixes #240 on github
4356
4357Wed Jan 23 09:53:39 2013  Eric Hodel  <drbrain@segment7.net>
4358
4359	* lib/rdoc/servlet.rb:  Fixed display of site and home documentation.
4360	  Fixes rdoc issue #170 by Thomas Leitner.
4361	* test/rdoc/test_rdoc_servlet.rb:  Test for above.
4362
4363	* lib/rdoc/code_object.rb:  Split #initialize_visibility from
4364	  #initialize for reuse when loading a stored object.
4365	  Fixes rdoc issue #171 by Thomas Leitner.
4366
4367	* lib/rdoc/any_method.rb:  Initialize visibility for #display?  For
4368	  rdoc issue #171
4369	* lib/rdoc/attr.rb:  ditto.
4370	* lib/rdoc/class_module.rb:  ditto.
4371	* lib/rdoc/top_level.rb:  ditto.
4372	* test/rdoc/test_rdoc_any_method.rb:  Test for above.
4373	* test/rdoc/test_rdoc_attr.rb:  ditto.
4374	* test/rdoc/test_rdoc_class_module.rb:  ditto.
4375	* test/rdoc/test_rdoc_constant.rb:  ditto.
4376	* test/rdoc/test_rdoc_top_level.rb:  ditto.
4377
4378Wed Jan 23 06:43:26 2013  Eric Hodel  <drbrain@segment7.net>
4379
4380	* lib/rubygems/test_case.rb:  Use Dir.tmpdir for rubygems tests instead
4381	  of ./tmp/test.  Fixes [ruby-trunk - Bug #7717]
4382
4383Tue Jan 22 22:58:03 2013  Akinori MUSHA  <knu@iDaemons.org>
4384
4385	* misc/ruby-electric.el (ruby-electric-curlies): Fix the bug where
4386	  an open curly inserted in a string is always replaced with a
4387	  hash sign.
4388
4389Mon Jan 21 15:41:33 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4390
4391	* tool/mkconfig.rb: BASERUBY is transient at core build.
4392
4393Mon Jan 21 13:51:21 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4394
4395	* lib/mkmf.rb ($extmk): traverse parent directories for the case
4396	  srcdir is a symlink.
4397
4398Sun Jan 20 23:55:37 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4399
4400	* marshal.c (w_object, r_object0): separate respond_to checks and
4401	  calling, and get back to the old behavior for 2.0.  [Bug #7564]
4402
4403Sun Jan 20 22:24:28 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4404
4405	* tool/vpath.rb (VPath#def_options): hack for msys make, which
4406	  converts a command line argument to non-msys command seems like a
4407	  path list automagically.  [Bug #7710] [ruby-core:51489]
4408
4409Sat Jan 19 11:35:00 2013  Zachary Scott  <zachary@zacharyscott.net>
4410
4411	* struct.c (Struct.new): Document Struct.new with block
4412	  Patch by Hiroyuki Iwatsuki [Bug #7674]
4413
4414Sat Jan 19 09:52:46 2013  Eric Hodel  <drbrain@segment7.net>
4415
4416	* doc/syntax/miscellaneous.rdoc:  Added section on defined?
4417
4418Sat Jan 19 09:27:31 2013  Eric Hodel  <drbrain@segment7.net>
4419
4420	* doc/syntax/assignment.rdoc (Local Variables and Methods):  Made it
4421	  more clear that local variables are created by the parser, not
4422	  execution.  Thanks to John Hawthorn.
4423
4424Sat Jan 19 09:15:58 2013  Eric Hodel  <drbrain@segment7.net>
4425
4426	* doc/syntax/assignment.rdoc:  Improved links
4427	* doc/syntax/methods.rdoc:  ditto.
4428
4429	* doc/syntax.rdoc:  Added link to assignment document
4430
4431Sat Jan 19 08:47:33 2013  Eric Hodel  <drbrain@segment7.net>
4432
4433	* doc/syntax/assignment.rdoc:  Added a syntax document on assignment.
4434
4435Fri Jan 18 14:11:01 2013  Eric Hodel  <drbrain@segment7.net>
4436
4437	* doc/syntax/methods.rdoc:  Added Array Decomposition.
4438
4439Fri Jan 18 12:54:21 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4440
4441	* tool/rbinstall.rb (gem): Gem.ensure_gem_subdirectories makes
4442	  subdirectories group-writable, so make them with $dir_mode.
4443
4444Fri Jan 18 11:24:33 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4445
4446	* ext/win32ole/win32ole.c (ole_initialize): uninitialize OLE at thread
4447	  ends.  [Bug #2618] [ruby-core:27634]
4448
4449	* ext/win32ole/win32ole.c (ole_initialize): initialize OLE for each
4450	  threads.  [Bug #2618] [ruby-core:27634]
4451
4452Thu Jan 17 22:10:35 2013  Kouhei Sutou  <kou@cozmixng.org>
4453
4454	* lib/rubygems/ext/builder.rb (Gem::Ext::Builder.make): Remove
4455	  .time dependency from *.rb install target. It causes needless
4456	  *.rb install. [Bug #7698] [ruby-core:51437]
4457	  Reported by Tadashi Saito. Thanks!!!
4458	* test/rubygems/test_gem_installer.rb
4459	  (TestGemInstaller#test_install_extension_and_script): Add a test
4460	  for the above change.
4461
4462Thu Jan 17 21:08:20 2013  Kouhei Sutou  <kou@cozmixng.org>
4463
4464	* eval.c: Fix a typo in ruby_finalize() documentation.
4465
4466Thu Jan 17 20:28:18 2013  Benoit Daloze  <eregontp@gmail.com>
4467
4468	* object.c: Typo in Kernel#hash documentation.
4469	  Patch by zed_0xff [Github Fixes #237]
4470
4471Thu Jan 17 10:48:56 2013  Aaron Patterson <aaron@tenderlovemaking.com>
4472
4473	* ext/psych/lib/psych/scalar_scanner.rb: use constants rather than
4474	  calculating Inf and NaN.
4475
4476Thu Jan 17 10:21:05 2013  Eric Hodel  <drbrain@segment7.net>
4477
4478	* doc/syntax/miscellaneous.rdoc:  Added Ending an Expression and
4479	  indentation.
4480
4481Thu Jan 17 09:30:21 2013  Eric Hodel  <drbrain@segment7.net>
4482
4483	* lib/rubygems/installer.rb:  Untaint string when checking output
4484	  for $SAFE=1
4485
4486	* lib/rubygems/specification.rb:  Keep previously loaded specs as
4487	  active.  This prevents double loading when refreshing the gem list.
4488	* test/rubygems/test_gem.rb:  Test for above
4489
4490	* lib/rubygems.rb:  Bump version to 2.0.0.rc.2
4491
4492Thu Jan 17 09:08:37 2013  Eric Hodel  <drbrain@segment7.net>
4493
4494	* doc/syntax/control_expressions.rdoc:  Added ? : ternary if
4495
4496Thu Jan 17 08:36:04 2013  Eric Hodel  <drbrain@segment7.net>
4497
4498	* doc/syntax/miscellaneous.rdoc:  Added documentation for alias, undef,
4499	  BEGIN, END.
4500	* doc/syntax/modules_and_classes.rdoc (Constants):  Fixed unwrapped
4501	  paragraph with trailing whitespace.
4502	* doc/syntax/modules_and_classes.rdoc (Scope):  Added section pointing
4503	  to alias and undef documentation.
4504	* doc/syntax.rdoc:  Added link to miscellaneous section.
4505
4506Thu Jan 17 07:50:26 2013  Eric Hodel  <drbrain@segment7.net>
4507
4508	* doc/syntax/control_expressions.rdoc (Flip-Flop):  Added a section on
4509	  the flip-flop.
4510
4511Thu Jan 17 06:59:51 2013  Eric Hodel  <drbrain@segment7.net>
4512
4513	* doc/syntax/control_expressions.rdoc (if Expressions):  Fixed markup
4514	  error.  Fixes #235 on github by FlyingFoX.
4515
4516Thu Jan 17 06:53:58 2013  Eric Hodel  <drbrain@segment7.net>
4517
4518	* doc/syntax/literals.rdoc (Strings):  Fixed typo.  Fixes #236 on
4519	  github by Doug Yun.
4520
4521Wed Jan 16 18:45:46 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4522
4523	* ext/win32ole/lib/win32ole.rb: use TracePoint to hook all thread
4524	  creation not only by Thread.new and to get rid of interference with
4525	  svar scope.  [Bug #7681] [ruby-core:51365]
4526
4527Wed Jan 16 09:35:53 2013  Eric Hodel  <drbrain@segment7.net>
4528
4529	* .document:  Removed extra space
4530	* lib/irb/lc/.document:  Hide help-message
4531	* lib/minitest/.document:  Hide README.txt
4532	* lib/rake/lib/.document:  Hide project.rake
4533	* lib/rdoc/generator/template/json_index/.document:  Hide JavaScript
4534	  files
4535	* lib/rubygems/ssl_certs/.document:  Hide PEM files.
4536
4537Wed Jan 16 03:54:28 2013  Eric Hodel  <drbrain@segment7.net>
4538
4539	* doc/syntax/control_expressions.rdoc:  Omit optional "then" for if and
4540	  unless expressions.  Improved description of "a if a = 0.zero?"
4541	  NameError.  Note that "do" for for loop is optional.
4542
4543Wed Jan 16 03:28:47 2013  Eric Hodel  <drbrain@segment7.net>
4544
4545	* doc/syntax/calling_methods.rdoc:  Link to defining methods.
4546	* doc/syntax/methods.rdoc:  Link to calling methods, fixed typo.
4547
4548Wed Jan 16 03:15:00 2013  Eric Hodel  <drbrain@segment7.net>
4549
4550	* doc/syntax/methods.rdoc:  Fixed link
4551	* doc/syntax/modules_and_classes.rdoc:  Fixed link
4552	* doc/syntax.rdoc:  Updated with links to the recently added pages
4553
4554Wed Jan 16 03:05:50 2013  Eric Hodel  <drbrain@segment7.net>
4555
4556	* doc/syntax/control_expressions.rdoc (redo Statement):  Added note
4557	  about retry.
4558	* doc/syntax/exceptions.rdoc:  Added retry statement
4559
4560Tue Jan 15 23:12:34 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4561
4562	* tool/vpath.rb (VPath#list): default separator to PATH_SEPARATOR from
4563	  configure.in for make, not same name constant of File for use in ruby.
4564
4565Tue Jan 15 22:30:04 2013  Keiju Ishitsuka  <keiju@ishitsuka.com>
4566
4567	* lib/irb/ext/save-history.rb: identify rightly a status of a
4568	  history file that already exists [Bug #7694]. Thanks Nobuhiro IMAI
4569	  for this patch.
4570
4571Tue Jan 15 15:55:28 2013  Eric Hodel  <drbrain@segment7.net>
4572
4573	* doc/syntax/control_expressions.rdoc:  Added description of control
4574	  expressions in ruby.
4575
4576Tue Jan 15 13:33:00 2013  Eric Hodel  <drbrain@segment7.net>
4577
4578	* doc/syntax/methods.rdoc (Method Names):  Added method names including
4579	  operator methods.
4580	* doc/syntax/methods.rdoc (Return Values):  Added note that assignment
4581	  methods ignore return values.
4582	* doc/syntax/precedence.rdoc:  Added document describing precedence.
4583
4584Tue Jan 15 11:49:31 2013  Eric Hodel  <drbrain@segment7.net>
4585
4586	* doc/syntax/methods.rdoc (Block Argument):  Added section on block
4587	  argument.  Thanks to Andy Lindeman.
4588
4589Tue Jan 15 10:54:59 2013  Eric Hodel  <drbrain@segment7.net>
4590
4591	* doc/syntax/calling_methods.rdoc (Arguments):  Added improved
4592	  introduction to arguments including passing style and lazy
4593	  evaluation.  Thanks to Matt Aimonetti.
4594	* doc/syntax/calling_methods.rdoc (Positional Arguments):  Added
4595	  description for sending a message to a method with *arguments
4596	* doc/syntax/calling_methods.rdoc (Default Positional Arguments):
4597	  Added description.  Thanks to Andy Lindeman.
4598	* doc/syntax/calling_methods.rdoc (Block Local Arguments):
4599	  Added description of block locals.  Thanks to Justin Collins.
4600	* doc/syntax/calling_methods.rdoc (Hash to Keyword Arguments):  Added
4601	  section describing ** operator.  Thanks  to Justin Collins.
4602
4603Tue Jan 15 10:40:18 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4604
4605	* test_lazy_enumerator: Test that map & flat_map also require a block
4606
4607Tue Jan 15 09:22:47 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4608
4609	* thread_pthread.c (gvl_init): Reset gvl.wait_yield explicitly when
4610	  fork()ing. Patch by Apollon Oikonomopoulos. Thanks!
4611	  [Bug #7693][ruby-core:51424]
4612
4613Tue Jan 15 09:27:56 2013  Eric Hodel  <drbrain@segment7.net>
4614
4615	* doc/syntax/calling_methods.rdoc (Receiver):  Added :: as pointed out
4616	  by Tony Arcieri
4617	* doc/syntax/calling_methods.rdoc (Block Argument):  Fixed { } block
4618	  examples as pointed out by David Copeland.
4619
4620Tue Jan 15 09:10:29 2013  Eric Hodel  <drbrain@segment7.net>
4621
4622	* doc/syntax/methods.rdoc (Array/Hash Argument):  Moved above Keyword
4623	  Arguments
4624	* doc/syntax/methods.rdoc (Keyword Arguments):  Described ** for
4625	  gathering arbitrary keyword arguments.
4626
4627Tue Jan 15 08:56:37 2013  Eric Hodel  <drbrain@segment7.net>
4628
4629	* doc/syntax/calling_methods.rdoc:  Added document describing method
4630	  calls.
4631
4632Tue Jan 15 07:39:21 2013  Eric Hodel  <drbrain@segment7.net>
4633
4634	* lib/rdoc/top_level.rb:  Fixed extension trimming for page names in
4635	  RDoc HTML output.  [ruby-trunk - Bug #7673]
4636	* test/rdoc/test_rdoc_top_level.rb:  Test for above.
4637
4638Mon Jan 14 23:06:41 2013  Keiju Ishitsuka  <keiju@ishitsuka.com>
4639
4640	* lib/irb/ext/save-history.rb: outputs its history to
4641	  owner-only-readable file and change the permission of a file that
4642	  already exists [Bug #7694]. Thanks Nobuhiro IMAI for bug reports.
4643
4644Mon Jan 14 17:12:48 2013  Shugo Maeda  <shugo@ruby-lang.org>
4645
4646	* enumerator.c (lazy_flat_map_func): flat_map should call each only
4647	  when the value of a block returns a forcable object.
4648	  [ruby-core:51401] [Bug #7690]
4649
4650	* enumerator.c (lazy_flat_map): add documentation.
4651
4652	* test/ruby/test_lazy_enumerator.rb: related test.
4653
4654Mon Jan 14 16:42:28 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4655
4656	* enumerator.c: Require block for Lazy#{take|drop}_while [Bug #7692]
4657
4658Mon Jan 14 14:41:00 2013  Kenta Murata  <mrkn@mrkn.jp>
4659
4660	* ext/bigdecimal/bigdecimal.c (BigDecimal_to_s): use CRuby style.
4661
4662Mon Jan 14 14:39:00 2013  Kenta Murata  <mrkn@mrkn.jp>
4663
4664	* ext/bigdecimal/bigdecimal.c: use `RB_TYPE_P(x, t)` instead of
4665	  `TYPE(x) == t`.
4666
4667Mon Jan 14 10:18:56 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4668
4669	* enumerator.c: Fix size for Enumerator::Lazy#flat_map
4670
4671Mon Jan 14 07:12:52 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4672
4673	* lib/matrix/lup_decomposition: Fix bugs with LUP Decomposition of
4674	  rectangular matrices. [rubyspec:ba849801a85]
4675
4676Mon Jan 14 06:46:53 2013  NARUSE, Yui  <naruse@ruby-lang.org>
4677
4678	* regparse.c (add_ctype_to_cc): don't check dup warn on adding
4679	  negative ctype to cclass. [Bug #7471] [ruby-core:50344]
4680
4681Mon Jan 14 06:06:03 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4682
4683	* lib/matrix/eigenvalue_decomposition: Backport bugfix of Jama 1.0.3
4684	  [rubyspec:df87040be371]
4685
4686Sun Jan 13 16:45:00 2013  Zachary Scott <zachary@zacharyscott.net>
4687
4688	* ext/psych/yaml/scanner.c: Fix typos, patch by James Dabbs
4689	  [Github tenderlove/psych#118]
4690
4691Sun Jan 13 15:00:00 2013  Kenta Murata  <mrkn@mrkn.jp>
4692
4693	* ext/bigdecimal/bigdecimal.c (BigDecimal_sub):
4694	  need to specify precision for converting Rational and Float.
4695	  [ruby-dev:46544] [Bug #7404]
4696
4697	* ext/bigdecimal/bigdecimal.c (BigDecimal_mult): ditto.
4698
4699	* ext/bigdecimal/bigdecimal.c (BigDecimal_divide): ditto.
4700
4701	* ext/bigdecimal/bigdecimal.c (BigDecimal_DoDivmod): ditto.
4702
4703	* ext/bigdecimal/bigdecimal.c (BigDecimal_divremain): ditto.
4704
4705	* test/bigdecimal/test_bigdecimal.rb: add tests for the above fixes.
4706
4707Sun Jan 13 14:48:55 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
4708
4709	* lib/matrix/eigenvalue_decomposition: Fix eigensystem with complex
4710	  eigenvectors. Patch by pypypy567.
4711	  [Bug #7208] [ruby-dev:46251] [rubyspec:242f8e55bd]
4712
4713	* lib/matrix/lup_decomposition.rb: Fix error for rectangular matrices
4714	  [bug#7620] [ruby-core:51118] [rubyspec:41f833ee2]
4715
4716Sun Jan 13 14:06:00 2013  Zachary Scott  <zachary@zacharyscott.net>
4717
4718	* lib/irb.rb, lib/prime.rb: Typos in overview
4719	  Patch by Ershad K [Github Fixes #234]
4720
4721Sun Jan 13 13:40:00 2013  Zachary Scott  <zachary@zacharyscott.net>
4722
4723	* lib/open3.rb : Typo in Open3 overview. Patch by zed_0xff
4724	  [Github Fixes #233]
4725
4726Sat Jan 12 17:42:00 2013  Kenta Murata  <mrkn@cookpad.com>
4727
4728	* numeric.c (do_coerce): fix for the exceptions which the coerce
4729	  method raises.  The optimization done by r38756 is preserved.
4730	  [Bug #7645] [ruby-core:51213]
4731
4732Sat Jan 12 16:12:46 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4733
4734	* win32/setup.mak (-runtime-): see msvcrt from link header on mswin
4735	  instead of running testing executable file, for cross compiling.
4736
4737Sat Jan 12 08:58:47 2013  Aaron Patterson <aaron@tenderlovemaking.com>
4738
4739	* ext/psych/lib/psych/visitors/to_ruby.rb: merge key values that
4740	  contain something besides a hash should be left in tact.
4741
4742	* test/psych/test_merge_keys.rb: test for change
4743
4744Sat Jan 12 07:52:47 2013  Masaki Suketa <masaki.suketa@nifty.ne.jp>
4745
4746	* ext/win32ole/win32ole.c (ole_set_byref): support VT_UI8|VT_BYREF,
4747	  VT_I8|VT_BYREF in cygwin and mingw.
4748
4749	* ext/win32ole/win32ole.c (ole_variant2val): ditto.
4750
4751	* test/win32ole/test_win32ole_variant.rb (test_s_new_with_i8_byref):
4752	  ditto.
4753
4754	* test/win32ole/test_win32ole_variant.rb (test_s_new_with_ui8_byref):
4755	  ditto.
4756
4757Sat Jan 12 02:45:00 2013  Zachary Scott  <zachary@zacharyscott.net>
4758
4759	* man/ruby.1 (options): include --*-encoding from r38784
4760
4761Fri Jan 11 23:34:48 2013  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
4762
4763	* ruby.c (usage): sort --*-encoding in help. (same order of -E)
4764
4765Fri Jan 11 16:56:29 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4766
4767	* tool/mkconfig.rb: use configured libdir value to fix
4768	  --enable-load-relative on systems where libdir is not default value,
4769	  overridden in config.site files.  [ruby-core:47267] [Bug #6903]
4770
4771Fri Jan 11 11:59:32 2013  NARUSE, Yui  <naruse@ruby-lang.org>
4772
4773	* string.c (dispose_string): use rb_str_free for freeing string in
4774	  parse.y. by Sokolov Yura <funny.falcon@gmail.com>
4775	  https://github.com/ruby/ruby/pull/87 fix GH-87
4776
4777Fri Jan 11 09:56:22 2013  Shugo Maeda  <shugo@ruby-lang.org>
4778
4779	* insns.def (defineclass): private constants should not be accessed
4780	  by scoped module definitions.  The bug was introduced in r38495.
4781
4782	* test/ruby/test_module.rb: related test.
4783
4784Fri Jan 11 02:11:59 2013  Shugo Maeda  <shugo@ruby-lang.org>
4785
4786	* lib/rbconfig/obsolete.rb (respond_to_missing?): use send because
4787	  RbConfig.respond_to_missing? is now private.
4788
4789Thu Jan 10 22:00:58 2013  Koichi Sasada  <ko1@atdot.net>
4790
4791	* vm_core.h (VM_DEBUG_BP_CHECK): set 0 as default.
4792	  This flag specifies checking BP consistency on each frame popping.
4793	  Now, we don't have any trouble on it, so I remove it.
4794	  If you feel any bugs about VM execution, then set it to 1.
4795
4796Thu Jan 10 21:03:05 2013 TAKANO `takano32' Mitsuhiro <tak@no32.tk>
4797
4798	* cont.c: define FIBER_USE_NATIVE as 0 in ia64.
4799
4800Thu Jan 10 19:39:05 2013  TAKANO `takano32' Mitsuhiro <tak@no32.tk>
4801
4802	* thread.c: fix RB_GC_SAVE_MACHINE_REGISTER_STACK define for ia64.
4803
4804Thu Jan 10 17:45:39 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4805
4806	* Makefile.in, win32/Makefile.sub ($(MKFILES)): continue if Makefile
4807	  unchanged.
4808
4809Thu Jan 10 16:31:20 2013  Shugo Maeda  <shugo@ruby-lang.org>
4810
4811	* vm_insnhelper.c (vm_search_super_method): raise a TypeError
4812	  instead of a NotImplementedError if self is not an instance of the
4813	  current class.  [ruby-dev:39772] [Bug #2402]
4814
4815Thu Jan 10 16:47:18 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4816
4817	* ext/tk/extconf.rb (find_tcltk_header): use have_header instead of
4818	  try_cpp, which is incredibly slow with VC.
4819
4820Thu Jan 10 15:55:28 2013  Shugo Maeda  <shugo@ruby-lang.org>
4821
4822	* numeric.c (do_coerce): remove an unused variable.
4823
4824Thu Jan 10 15:35:55 2013  Shugo Maeda  <shugo@ruby-lang.org>
4825
4826	* tool/gen_dummy_probes.rb: remove comments in probes.d to fix the
4827	  compilation error introduced by r38755.
4828
4829Thu Jan 10 11:15:04 2013  Kenta Murata  <mrkn@cookpad.com>
4830
4831	* numeric.c (do_coerce): speed optimization by using rb_check_funcall
4832	  instead of rb_rescue + rb_funcall.
4833	  This fix is based on the patch by Benoit Daloze.
4834	  [Bug #7645] [ruby-core:51213]
4835
4836Thu Jan 10 11:15:04 2013  Aaron Patterson <aaron@tenderlovemaking.com>
4837
4838	* probes.d: updating probes to be more symmetrical, adding
4839	  documentation.
4840
4841	* load.c: ditto
4842
4843Thu Jan 10 04:23:07 2013  Aaron Patterson <aaron@tenderlovemaking.com>
4844
4845	* ext/psych/lib/psych/scalar_scanner.rb: strip trailing dots from
4846	  floats so that Float() will not raise an exception.
4847
4848	* test/psych/test_numeric.rb: test to ensure "1." can be loaded
4849
4850	* test/psych/test_string.rb: make sure "1." can round trip
4851
4852Thu Jan 10 03:38:40 2013  Aaron Patterson <aaron@tenderlovemaking.com>
4853
4854	* ext/psych/lib/psych/visitors/yaml_tree.rb: ascii only binary strings
4855	  will be dumped as unicode.  Thanks Paul Kunysch!
4856
4857	* test/psych/test_string.rb: appropriate test
4858
4859Thu Jan 10 03:29:55 2013  Koichi Sasada  <ko1@atdot.net>
4860
4861	* compile.c (compile_array_): modify wrong optimization.
4862	  A script "[print(1)]; print(2)" should output "12".
4863	  However, the compiler had eliminated "[print(1)]" expression
4864	  because it is void expression (unused array).
4865	  Of course, side-effect should be remained.
4866	  This issue is reported by Masaya Tarui.
4867
4868	* bootstraptest/test_literal.rb: add a test.
4869
4870Wed Jan  9 22:07:42 2013  Masaki Matsushita  <glass.saga@gmail.com>
4871
4872	* load.c (load_lock): if thread shield is destroyed and there is no
4873	  waiting thread, insert new thread shield into load_table.
4874	  [Bug #7530] [ruby-core:50645]
4875
4876Wed Jan  9 21:43:32 2013  Masaki Matsushita  <glass.saga@gmail.com>
4877
4878	* load.c (load_lock): revert r38744. it should acquire new thread
4879	  shield.
4880
4881Wed Jan  9 15:40:18 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4882
4883	* vm.c (th_init, ruby_thread_init): initialize root_svar with Qnil,
4884	  since lep_svar_place() expects uninitialized svar to be nil, not 0.
4885
4886Wed Jan  9 13:20:23 2013  Masaki Matsushita  <glass.saga@gmail.com>
4887
4888	* test/ruby/test_require.rb: improve test for r38744.
4889	  fix to use Tempfile instead of temporary file in current directory.
4890	  the patch is from nobu (Nobuyoshi Nakada).
4891
4892Wed Jan  9 09:53:23 2013  Masaki Matsushita  <glass.saga@gmail.com>
4893
4894	* load.c (load_lock): fix not to delete thread shield twice.
4895	  it may break the shield locked by another thread.
4896	  [Bug #7530] [ruby-core:50645]
4897
4898	* test/ruby/test_require.rb: a test for above.
4899
4900Wed Jan  9 02:13:22 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4901
4902	* include/ruby/ruby.h (RBasic): to be aligned on a VALUE size
4903	  boundary.  [Bug #7647]
4904
4905Tue Jan  8 14:41:41 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4906
4907	* vm_core.h (rb_iseq_t): move flip_cnt from struct iseq_compile_data,
4908	  because it has same life span as enclosing iseq.  [Bug #7671]
4909	  [ruby-core:51296]
4910
4911Mon Jan  7 23:43:00 2013  Kenta Murata  <mrkn@mrkn.jp>
4912
4913	* ext/bigdecimal/bigdecimal.c (rmpd_power_by_big_decimal):
4914	  add RB_GC_GUARD to prevent the intermediate object is GCed too early.
4915	  This patch was made by Yusuke Endoh.  [Bug #7044] [ruby-core:47632]
4916
4917	* test/bigdecimal/test_bigdecimal.rb: add a reproduction test for
4918	  the issue [Bug #7044]
4919
4920Mon Jan  7 21:40:36 2013  Shugo Maeda  <shugo@ruby-lang.org>
4921
4922	* vm_method.c (Init_eval_method): main.public and main.private
4923	  should be private.
4924
4925	* proc.c (Init_Proc): main.define_method should be private.
4926
4927	* test/ruby/test_module.rb: related test.
4928
4929Mon Jan  7 20:48:47 2013  Shugo Maeda  <shugo@ruby-lang.org>
4930
4931	* eval.c (Init_eval): main.include should be private.
4932	  [ruby-core:51293] [Bug #7670]
4933
4934	* test/ruby/test_module.rb (test_top_include_is_private): a new test
4935	  for the above change.
4936
4937Mon Jan  7 20:29:50 2013  Shugo Maeda  <shugo@ruby-lang.org>
4938
4939	* NEWS: remove description about `require "refinement"'.
4940
4941Mon Jan  7 20:15:49 2013  Shugo Maeda  <shugo@ruby-lang.org>
4942
4943	* eval.c (Init_eval): enable Refinements by default.
4944	  [ruby-core:51286] [Bug #7667]
4945
4946	* eval.c (rb_mod_refine, top_using): show a warning when
4947	  Module#refine or main.using is called at the first time.
4948
4949	* ext/refinement/*: removed the extension library "refinement".
4950
4951	* test/ruby/test_refinement.rb: fix for the above changes.
4952
4953Mon Jan  7 17:34:22 2013  Koichi Sasada  <ko1@atdot.net>
4954
4955	* include/ruby/ruby.h (RUBY_EVENT_SPECIFIED_LINE): make it special.
4956	  This flag is not contained by RUBY_EVENT_TRACEPOINT_ALL.
4957	  This event is experimental one. It is possible to remove/rename
4958	  flag name after 2.0.1.
4959
4960	* vm_trace.c (get_event_id): return :line if SPECIFIED_LINE was
4961	  occurred. `:specified_line' never been returned.
4962
4963Mon Jan  7 15:42:10 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4964
4965	* parse.y (f_kwrest): allow bare kwrest_mark as valid syntax.  its
4966	  semantics is still undefined.  [Bug #7662] [ruby-core:51269]
4967
4968Mon Jan  7 15:31:58 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4969
4970	* parse.y (f_kwrest): reject duplicated kwrest argument name.
4971
4972Mon Jan  7 15:24:10 2013  Koichi Sasada  <ko1@atdot.net>
4973
4974	* vm_trace.c (rb_threadptr_exec_event_hooks_orig): pop tag before
4975	  JUMP_TAG() if frame is `finish' frame.
4976	  Without this patch, there is an inconsistency between control
4977	  frame stack and tags stack.
4978	  [Bug #7668]
4979
4980	* test/ruby/test_settracefunc.rb: add a test for above.
4981
4982Mon Jan  7 15:21:48 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
4983
4984	* Makefile.in, common.mk (fake, yes-fake, no-make): these dependencies
4985	  are not platform dependent.
4986
4987	* win32/Makefile.sub ($(arch)-fake.rb): workaround.
4988
4989Mon Jan  7 12:09:24 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4990
4991	* vm_insnhelper.c (vm_callee_setup_arg_complex, vm_yield_setup_block_args):
4992	  set keyrest hash after making rest array, so that the last element
4993	  will not be overwritten.  [ruby-core:51278] [Bug #7665]
4994
4995Mon Jan  7 09:37:24 2013  Koichi Sasada  <ko1@atdot.net>
4996
4997	* NEWS: add a NEWS entry about RubyVM.
4998
4999Sun Jan  6 19:06:57 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
5000
5001	* win32/Makefile.sub: Fix build with VC.
5002	  Patch by Charlie Savage. Fixes [ruby-core:51261]
5003
5004Sun Jan  6 18:43:48 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
5005
5006	* bootstraptest/test_io.rb: add a test for [ruby-dev:46834].
5007
5008	* io.c (rb_cloexec_fcntl_dupfd) Use an emulation with dup(2) when
5009	  fcntl(2) and/or F_DUPFD is unavailable.
5010	  Suggested by akr.
5011
5012	* configure.in (HAVE_FCNTL): NativeClient does not provide fcntl(2).
5013
5014Sun Jan  6 11:11:26 2013  Eric Hodel  <drbrain@segment7.net>
5015
5016	* doc/syntax/modules_and_classes.rdoc:  Fixed typo.
5017
5018Sun Jan  6 05:35:18 2013  Eric Hodel  <drbrain@segment7.net>
5019
5020	* doc/syntax/modules_and_classes.rdoc:  Added singleton classes
5021	  documentation.
5022
5023Sun Jan  6 02:22:00 2013  Zachary Scott  <zachary@zacharyscott.net>
5024
5025	* lib/webrick/httpservlet/abstract.rb (WEBrick::HTTPServlet): Typo in
5026	  example. Patch by shlensky [Fixes #232 on github]
5027
5028Sat Jan  5 21:15:10 2013  NARUSE, Yui  <naruse@ruby-lang.org>
5029
5030	* lib/net/http/generic_request.rb:
5031	  Amazon ECA API and GTE/1.3 disallow requests whose host has port
5032	  number if its port number equals to default port number of the
5033	  scheme. [Bug #7650]
5034
5035Sat Jan  5 13:58:59 2013  Eric Hodel  <drbrain@segment7.net>
5036
5037	* doc/syntax/modules_and_classes.rdoc:  Improved description of methods
5038	  on a module or class as suggested by Tobias Buhlmann
5039
5040Sat Jan  5 13:38:07 2013  Masaki Matsushita  <glass.saga@gmail.com>
5041
5042	* string.c (rb_str_enumerate_lines): fix invalid byte sequence error
5043	  when a separator is passed. The patch is from yoshidam (Yoshida
5044	  Masato).
5045	  [Bug #7646] [ruby-dev:46827]
5046
5047	* test/ruby/test_string.rb: a test for above.
5048
5049Sat Jan  5 12:25:42 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5050
5051	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_in_out_err):
5052	  check stdout and stderr both.
5053
5054Sat Jan  5 10:21:54 2013  Eric Hodel  <drbrain@segment7.net>
5055
5056	* doc/syntax/modules_and_classes.rdoc:  Added documentation of syntax
5057	  for Modules and Classes.
5058	* doc/syntax/methods.rdoc:  Moved some text to the Modules and
5059	  Classes syntax document.
5060
5061Sat Jan  5 08:38:27 2013  Eric Hodel  <drbrain@segment7.net>
5062
5063	* doc/syntax/methods.rdoc:  Added return values and scope sections,
5064	  slightly modified from the original patch.  Fixes #227 from github by
5065	  Dave Brown.
5066
5067Sat Jan  5 08:21:41 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5068
5069	* io.c (rb_cloexec_fcntl_dupfd): improve #ifdef condition.
5070	* io.c (rb_maygvl_fd_fix_cloexec): ditto.
5071
5072Sat Jan  5 07:54:59 2013  Eric Hodel  <drbrain@segment7.net>
5073
5074	* lib/rubygems/commands/cleanup_command.rb:  Clean all possible gems
5075	  using multiple passes.  Fixes RubyGems bug #422.  Refactored for
5076	  maintainability.
5077	* test/rubygems/test_gem_commands_cleanup_command.rb:  Test for above.
5078
5079Sat Jan  5 05:04:39 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5080
5081	* gc.c (vm_xrealloc): add a few comment why we avoid realloc(ptr,0).
5082
5083Fri Jan  4 20:17:06 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
5084
5085	* Makefile.in (RBCONFIG): Moved from common.mk in order to use the
5086	  variable in Makefile.in.
5087
5088	* win32/Makefile.sub (RBCONFIG): Ditto.
5089
5090Fri Jan  4 19:45:50 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
5091
5092	* common.mk (run, parse): Use BTESTRUBY instead of MINIRUBY to handle
5093	  cross-compiling cases, e.g. NativeClient.
5094
5095Fri Jan  4 17:58:16 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
5096
5097	* common.mk (yes-btest): btest depends on also $(arch)-fake.rb and
5098	  rbconfig.rb on building for NativeClient.
5099
5100	* Makefile.in (fake): Avoid generating $(arch)-fake.rb unless cross
5101	  compiling.
5102
5103	* configure.in (CROSS_COMPILING): New substitution.
5104
5105Fri Jan  4 16:26:45 2013  Eric Hodel  <drbrain@segment7.net>
5106
5107	* lib/rubygems/doctor.rb:  Process directories in order in case the
5108	  filesystem doesn't.  [ruby-trunk - Bug #7618]
5109
5110	  Process specifications before other directories in case of bugs.
5111	* test/rubygems/test_gem_doctor.rb:  Test for above.
5112
5113	* lib/rubygems.rb:  Updated version.
5114
5115	* test/rubygems/test_require.rb:  Fixed double require of
5116	  benchmark.rb.  RubyGems bug #420.
5117
5118	* test/rubygems/test_gem_commands_check_command.rb:  Fixed unused
5119	  variable warnings.
5120	* test/rubygems/test_gem_commands_query_command.rb:  ditto
5121	* test/rubygems/test_gem_installer.rb:  ditto
5122
5123Fri Jan  4 15:05:25 2013  Eric Hodel  <drbrain@segment7.net>
5124
5125	* lib/rdoc/cross_reference.rb:  Fixed matching of C#=== or #===.  RDoc
5126	  bug #164
5127	* test/rdoc/test_rdoc_cross_reference.rb:  Test for above.
5128
5129	* lib/rdoc/parser/changelog.rb:  Fixed parsing of dates.  RDoc bug #165
5130	* test/rdoc/test_rdoc_parser_changelog.rb:  Test for above.
5131
5132	* lib/rdoc/parser.rb:  Fixed parsing multibyte files with incomplete
5133	  characters at byte 1024.  [ruby-trunk - Bug #6393]
5134	  Fixed handling of -E.  [ruby-trunk - Bug #6392]
5135	* test/rdoc/test_rdoc_options.rb:  Test for above.
5136	* test/rdoc/test_rdoc_parser.rb:  ditto.
5137	* test/rdoc/test_rdoc_parser_c.rb:  ditto.
5138	* test/rdoc/test_rdoc_parser_changelog.rb:  ditto.
5139	* test/rdoc/test_rdoc_parser_markdown.rb:  ditto.
5140	* test/rdoc/test_rdoc_parser_rd.rb:  ditto.
5141	* test/rdoc/test_rdoc_rdoc.rb:  ditto.
5142
5143	* lib/rdoc/tom_doc.rb:  Fixed parsing of [] in TomDoc arguments list.
5144	  RDoc bug #167
5145	* test/rdoc/test_rdoc_tom_doc.rb:  Test for above.
5146
5147	* lib/rdoc.rb:  Update version.
5148
5149Fri Jan  4 11:51:00 2013  Zachary Scott  <zachary@zacharyscott.net>
5150
5151	* lib/forwardable.rb: Fix rdoc parameters for ::def_single_delegator.
5152	  Patch by Vladimir Andrijevik [Github Fixes #230]
5153
5154Fri Jan  4 00:35:11 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
5155
5156	Fix failures on btest for NativeClient.
5157	* bootstraptest/runner.rb (nacl?): New method to distinguish NaCl
5158	  cross build.
5159
5160	* bootstraptest/test_io.rb: Skip unsupported operations.
5161
5162	* bootstraptest/test_literal.rb: ditto.
5163
5164Fri Jan  4 00:29:40 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
5165
5166	* io.c (rb_cloexec_fcntl_dupfd): Fix failures in
5167	  bootstrap_test/test_io.rb.  NativeClient does not support F_DUPFD
5168	  but supports dup2(2).
5169
5170Thu Jan  3 17:46:50 2013  Kouhei Sutou  <kou@cozmixng.org>
5171
5172	* lib/rexml/element.rb (REXML::Elements#add): Remove too much
5173	  "elements" in document. Sorry...
5174
5175Thu Jan  3 17:42:32 2013  Kouhei Sutou  <kou@cozmixng.org>
5176
5177	* lib/rexml/element.rb (REXML::Elements#each): Add missing
5178	  "elements" in document. [ruby-talk:402713]
5179	  Reported by Wesley Rishel. Thanks!!!
5180
5181Thu Jan  3 15:13:00 2013  Zachary Scott  <zachary@zacharyscott.net>
5182
5183	* ext/psych/lib/psych.rb (Psych.load): Return value of
5184	  Psych::SyntaxError.message should be same as example.
5185	  Patch by Ippei Obayashi [ruby-core:51193] [Bug #7636]
5186
5187Thu Jan  3 14:58:00 2013  Zachary Scott  <zachary@zacharyscott.net>
5188
5189	* lib/forwardable.rb (SingleForwardable): Fix example in overview
5190	  Patch by Vladimir Andrijevik [Github Fixes #231]
5191
5192Thu Jan  3 14:32:47 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
5193
5194	* configure.in (OBJCOPY):  Fixes build error for NativeClient.
5195	  Avoid disabling OBJCOPY for NativeClient.
5196
5197	* thread_pthread.c (rb_reserved_fd_p): USE_SLEEPY_TIMER_THREAD is
5198	  always defined.  Fixes compilation error for NativeClient.
5199
5200Wed Jan 02 03:09:00 2013  Zachary Scott  <zachary@zacharyscott.net>
5201
5202	* ext/zlib/zlib.c (Zlib::GzipReader): Fix typo by zed_0xff
5203	  [Fixes Github #229]
5204
5205Wed Jan 02 02:29:00 2013  Zachary Scott  <zachary@zacharyscott.net>
5206
5207	* hash.c (rb_hash_update): Revert documentation from r38672
5208	  See: https://github.com/ruby/ruby/pull/228#issuecomment-11791013
5209
5210Wed Jan 02 02:16:00 2013  Zachary Scott  <zachary@zacharyscott.net>
5211
5212	* hash.c (rb_hash_update): Documentation for Hash#merge and shallow
5213	  copies Patch by Yorick Peterse [Fixes Github #228]
5214
5215Mon Dec 31 15:10:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5216
5217	* vm_backtrace.c: Add documentation for Kernel#caller_locations,
5218	  Kernel#caller, and Thread::Backtrace::Location
5219
5220Mon Dec 31 13:05:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5221
5222	* test/ruby/test_backtrace.rb: Add test for r37957 [Feature #7434]
5223
5224Sun Dec 30 23:33:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5225
5226	* parse.y (simple_re_meta): escaped closing parenthesis has different
5227	  meaning.  [Bug #7610] [ruby-core:51088]
5228
5229Sun Dec 30 12:09:47 2012  Charlie Somerville  <charlie@charliesomerville.com>
5230
5231	* configure.in: use 4 argument form of AC_CHECK_HEADERS to force
5232	  autoconf to use compiler's result
5233
5234Sun Dec 30 10:58:04 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
5235
5236	* test/ruby/test_keyword.rb: add a test for passing hash
5237	  as a last argument. [ruby-dev:46712] [Bug #7529]
5238
5239Sun Dec 30 10:51:29 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
5240
5241	* vm_insnhelper.c: set keyword hash on Proc/block calls.
5242	  [ruby-core:51172] [Bug #7630]
5243
5244	* test/ruby/test_keyword.rb: add tests for above.
5245
5246Sat Dec 29 21:57:11 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
5247
5248	* lib/irb/completion.rb: treat rightly completion for symbol on irb
5249	  [Bug #7632].
5250
5251Sat Dec 29 21:51:30 2012  Shugo Maeda  <shugo@ruby-lang.org>
5252
5253	* ext/curses/curses.c (window_cury, window_curx, window_maxy,
5254	  window_maxx, window_begy, window_begx): use RB_UNUSED_VAR()
5255	  to suppress unused-but-set-variable warnings.
5256
5257Sat Dec 29 16:45:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5258
5259	* iseq.c (RubyVM::InstructionSequence): rdoc formatting
5260
5261Sat Dec 29 15:28:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5262
5263	* iseq.c (RubyVM::InstructionSequence):	Add rdoc for new iseq features
5264	  added from r38085, this includes ::of, #path, #absolute_path,
5265	  #label, #base_label, #first_lineno, and #inspect
5266
5267Sat Dec 29 14:06:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5268
5269	* iseq.c (rb_iseq_line_trace_all, rb_iseq_line_trace_specify): Add
5270	  rdoc for experimental C level api of iseq, from r38076
5271
5272Sat Dec 29 11:37:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5273
5274	* object.c (rb_obj_clone): attach clone to its singleton class during
5275	  cloning singleton class so that singleton_method_added will be called
5276	  on it.  based on the patch by shiba (satoshi shiba)[Bug #5283] in
5277	  [ruby-dev:44477].  [Bug #5283]
5278
5279Sat Dec 29 10:10:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5280
5281	* configure.in (crt_externs.h): use standard macro AC_CHECK_HEADERS.
5282
5283Fri Dec 28 23:12:44 2012  Charlie Somerville  <charlie@charliesomerville.com>
5284
5285	* configure.in: check for the whether crt_externs.h is present when compiling
5286	  for darwin (this header is missing in the iOS SDK)
5287	* eval_intern.h: check HAVE_CRT_EXTERNS_H before including crt_externs.h, if
5288	  not defined, include missing/crt_externs.h instead
5289	* hash.c: ditto
5290	* missing/setproctitle.c: ditto
5291	* missing/crt_externs.h: declare _NSGetEnviron() function and define environ
5292	  for iOS
5293
5294Fri Dec 28 21:40:36 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
5295
5296	* lib/irb/context.rb: IRB::Context#new: Check from JobManager
5297	  inside IRB namespace [Bug #7628]. Thanks rafaelfranca for bug
5298	  report and its patch.
5299
5300Fri Dec 28 17:06:17 2012  Akinori MUSHA  <knu@iDaemons.org>
5301
5302	* misc/ruby-electric.el (ruby-electric-curlies): Automatically
5303	  indent closing curly brackets when
5304	  ruby-electric-newline-before-closing-bracket is true.
5305
5306Fri Dec 28 11:50:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5307
5308	* vm_insnhelper.c (vm_yield_setup_block_args): pass single argument to
5309	  single optional parameter unchanged without splatting.  [Bug #7621]
5310	  [ruby-dev:46801]
5311
5312Fri Dec 28 11:17:47 2012  Shugo Maeda  <shugo@ruby-lang.org>
5313
5314	* proc.c (method_eq): fix the documentation to refer to owner.
5315	  [ruby-core:51105] [Bug #7613]
5316
5317	* test/ruby/test_method.rb (test_alias_onwer): new test to confirm
5318	  that `a == b' returns false if owners of a and b are different.
5319
5320Fri Dec 28 07:07:43 2012  NARUSE, Yui  <naruse@ruby-lang.org>
5321
5322	* def/id.def: use split(/^/) instead of String#lines to support
5323	  Ruby 1.8.5 as BASERUBY.
5324
5325Thu Dec 27 21:56:56 2012  NARUSE, Yui  <naruse@ruby-lang.org>
5326
5327	* variable.c (rb_mod_remove_const): fix segv caused by r38558.
5328
5329Tue Dec 28 01:13:48 2012  James Edward Gray II  <james@graysoftinc.com>
5330
5331	* lib/csv.rb: Added more Hash methods to CSV::Row.
5332
5333Thu Dec 27 23:27:15 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
5334
5335	* lib/irb/ruby-lex.rb: make lex_state to EXPR_END when next token
5336	  is an operator after SYMBEG [Bug #6378].
5337
5338Thu Dec 27 21:30:21 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
5339
5340	* lib/irb/ruby-lex.rb: allow to handle recursive heredocs on
5341	  irb[Bug #5648].
5342
5343Thu Dec 27 20:45:29 2012  Masaki Matsushita  <glass.saga@gmail.com>
5344
5345	* ext/stringio/stringio.c (strio_getline): fix not to raise TypeError
5346	  when limit is nil.
5347	  [Bug #7232] [ruby-core:48531]
5348
5349	* test/stringio/test_stringio.rb: a test for above.
5350
5351Thu Dec 27 21:08:23 2012  Charlie Somerville  <charlie@charliesomerville.com>
5352
5353	* vm_core.h (VM_DEFINECLASS_TYPE): explicit cast to enum type to avoid 64->32
5354	  shorten warning
5355
5356Thu Dec 27 20:11:29 2012  Masaki Matsushita  <glass.saga@gmail.com>
5357
5358	* ext/stringio/stringio.c (strio_ungetc): raise IOError instead of RuntimeError
5359	  if the string is frozen.
5360	  [Bug #7231] [ruby-core:48530]
5361
5362	* ext/stringio/stringio.c (strio_ungetbyte): ditto.
5363
5364	* test/stringio/test_stringio.rb: a test for above.
5365
5366Wed Dec 26 23:55:18 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
5367
5368	* lib/irb/context.rb: fix IRB::Inspector#keys_with_inspector [Bug #7598]
5369
5370Wed Dec 26 23:26:15 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
5371
5372	* lib/irb/context.rb: IRB::Context#use_readline= has been obsolete
5373	  [Bug #6339].
5374
5375Wed Dec 26 21:32:46 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
5376
5377	* lib/irb/context.rb: make a correct prompt from
5378	  IRB.conf[:IRB_NAME] on irb [Bug #6338]. Patched by sho-h.
5379
5380Wed Dec 26 21:09:19 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
5381
5382	* lib/irb/ext/math-mode.rb: make not able to change math-mode
5383	  after irb starting [Bug #6302]. Patched by sho-h.
5384
5385Wed Dec 26 12:52:36 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
5386
5387	* lib/irb/init.rb: change default debug level for
5388	  irb[ruby-dev:46805], [Bug #6301].
5389
5390Wed Dec 26 11:54:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5391
5392	* configure.in: enable -fPIE when checking -pie for fixing
5393	  OpenBSD build error. Patch by George Koehler. Thank you!
5394	  [Bug #7606] [ruby-core:51082]
5395
5396Wed Dec 26 07:31:24 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5397
5398	* string.c (rb_enc_cr_str_copy_for_substr): empty string is always
5399	  valid or 7bit.
5400
5401	* string.c (rb_str_enumerate_lines, rb_str_chop): reduce duplicated
5402	  code.
5403
5404	* string.c (rb_str_enumerate_chars): prevent shared copy from GC.
5405
5406Wed Dec 26 01:31:16 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
5407
5408	* lib/irb/init.rb, lib/irb/context.rb: fix conf.debug_level=
5409	  [Bug #6301] and fix irb command option: -- irb_debug_level for irb.
5410
5411Wed Dec 26 00:59:18 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
5412
5413	* lib/irb/ruby-lex.rb: improve RubyLex performance for large files
5414	  [Bug #5202]. Patch by ryanmelt.
5415
5416Tue Dec 25 22:21:06 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
5417
5418	* lib/irb/output-method.rb: raise right exception when
5419	  IRB::OutputMethod#print don't defined [Bug #6657].
5420
5421Tue Dec 25 22:06:33 2012  Koichi Sasada  <ko1@atdot.net>
5422
5423	* vm_trace.c (rb_threadptr_exec_event_hooks_and_pop_frame):
5424	  pop a frame before JUMP_TAG() if exception occurred.
5425	  This change fix bug of Ruby 1.9.
5426	  [ruby-core:51128] [ruby-trunk - Bug #7624]
5427
5428	* vm_core.h (EXEC_EVENT_HOOK_AND_POP_FRAME): add to use
5429	  `rb_threadptr_exec_event_hooks_and_pop_frame()'.
5430
5431	* vm.c (vm_exec): use EXEC_EVENT_HOOK_AND_POP_FRAME() while
5432	  exception handling. While exception handling, if an exception
5433	  is raised in hooks, need to pop current frame and raise this
5434	  raised exception by hook.
5435
5436	* test/ruby/test_settracefunc.rb: add a test.
5437
5438Tue Dec 25 21:08:53 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
5439
5440	* lib/irb/init.rb, lib/irb/lc/ja/error.rb, lib/irb/lc/error.rb:
5441	  raise exception when illegal RC_NAME_GENERATOR defined [Bug #6455].
5442
5443Tue Dec 25 19:22:17 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
5444
5445	* lib/irb/workspace.rb: define method to private on top-level irb
5446	  [Bug #5776]. Patch by davidbalbert.
5447
5448Tue Dec 25 19:09:51 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
5449
5450	* bignum.c, include/ruby/intern.h (rb_big_eql): exported.
5451
5452	* thread.c (recursive_check): object_id maybe a Bignum, not Fixnum on
5453	  LLP64.  see also r38493 and r38548.
5454	  reported by Heesob Park at [ruby-core:51083] [Bug #7607], and patched
5455	  by shirosaki at [ruby-core:51095]
5456
5457Tue Dec 25 18:53:35 2012  Koichi Sasada  <ko1@atdot.net>
5458
5459	* vm_core.h, eval_intern.h (CHECK_STACK_OVERFLOW): move
5460	  CHECK_STACK_OVERFLOW() to vm_core.h and rename to
5461	  CHECK_VM_STACK_OVERFLOW().
5462	  This change is only move and rename.
5463
5464	* tool/instruction.rb: catch up above changes.
5465
5466	* vm.c, vm_insnhelper.c: ditto.
5467
5468	* vm_insnhelper.c (vm_stackoverflow): add a function to unify
5469	  raising vm stackoverflow exception.
5470
5471Tue Dec 25 16:16:54 2012  Koichi Sasada  <ko1@atdot.net>
5472
5473	* vm_core.h (RUBY_VM_THREAD_VM_STACK_SIZE): change default
5474	  VM stack size (128 KB or  256 KB -> 512 KB or 1024 KB).
5475	  This re-sizing corrects smaller value introduced at r38478.
5476	  Newer value is same VM stack size of Ruby 1.9.
5477	  [ruby-dev:46797] [ruby-trunk - Bug #7603]
5478
5479Tue Dec 25 13:38:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5480
5481	* error.c (compile_err_append, compile_warn_print, warn_print): use
5482	  rb_write_error_str() instead of writing to rb_stderr directly.
5483
5484	* io.c (rb_write_error_str): a stopgap measure not to unblock GVL.
5485	  warning from require seems to still have race condition errors.
5486
5487Tue Dec 25 00:59:29 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5488
5489	* node.h (NODE_OP_CDECL), compile.c (iseq_compile_each),
5490	  parse.y (stmt, arg): allow scoped constant op-assignment.
5491	  [ruby-core:40154] [Bug #5449]
5492
5493Mon Dec 24 04:56:48 2012  NARUSE, Yui  <naruse@ruby-lang.org>
5494
5495	* lib/net/http/generic_request.rb (Net::HTTPGenericRequest):
5496	  set content-length to zero on empty post requests
5497	  by Gregory Ostermayr <gregory.ostermayr@gmail.com>
5498	  https://github.com/ruby/ruby/pull/201 fix GH-201
5499
5500Sun Dec 23 19:09:16 2012  Koichi Sasada  <ko1@atdot.net>
5501
5502	* thread.c: rename methods:
5503	    from Thread.async_interrupt_timing to Thread.handle_interrupt,
5504	    from Thread.async_interrupted? to Thread.pending_interrupt?.
5505	  Also rename option from `defer' to `never'.
5506	  [ruby-core:51074] [ruby-trunk - Feature #6762]
5507
5508	* vm_core.c, thread.c: rename functions and data structure
5509	  `async_errinfo' to `pending_interrupt'.
5510
5511	* thread.c: add global variables sym_immediate, sym_on_blocking and
5512	  sym_never.
5513
5514	* cont.c, process.c, vm.c, signal.c: ditto.
5515
5516	* lib/sync.rb, lib/thread.rb: catch up this renaming.
5517
5518	* test/ruby/test_thread.rb: ditto.
5519
5520Sun Dec 23 17:57:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5521
5522	* lib/profiler.rb (Profiler__::PROFILE_PROC, print_profile): store
5523	  profile data per threads for concurrent-execution.
5524	  [ruby-core:22046] [Bug #1152]
5525
5526	* lib/profiler.rb (Profiler__::Wrapper): support calling singleton
5527	  methods of an instance of BasicObject.
5528
5529	* lib/profiler.rb (Profiler__::PROFILE_PROC): use TracePoint.
5530
5531Sun Dec 23 16:13:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5532
5533	* lib/erb.rb: typos for ERB::new link
5534
5535Sun Dec 23 16:06:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5536
5537	* lib/erb.rb: Document ERB::new trim_mode '-' for lines ending in -%>
5538	  [ruby-core:51084] [Bug #7608]
5539
5540Sun Dec 23 15:25:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5541
5542	* lib/irb/ruby-lex.rb: Add handling for %i and %I quoting to irb
5543	  Patch by flori [ruby-core:49550] [Bug #7392] [Github Issue #157]
5544
5545Sun Dec 23 15:05:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5546
5547	* vm_eval.c (rb_check_funcall_with_hook): rb_check_funcall with hook
5548	  which is called before calling method_missing or target method.
5549
5550	* marshal.c (w_object, r_object0): use rb_check_funcall_with_hook
5551	  instead of respond_to? and call.
5552
5553Sun Dec 23 14:52:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5554
5555	* re.c (rb_reg_eqq): doc: #=== is not a synonym for #=~, added example
5556	  [ruby-dev:46746] [Bug #7571]
5557
5558Sun Dec 23 14:35:13 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5559
5560	* thread.c (BLOCKING_REGION): if fail_if_interrupted is false ignore
5561	  the result of blocking_region_begin(), since it always is true in
5562	  that case.  suppress "uninitialized" warnings.
5563
5564Sun Dec 23 09:34:07 2012  Eric Hodel  <drbrain@segment7.net>
5565
5566	* lib/rubygems/commands/check_command.rb:  Added --doctor and --dry-run
5567	  options to clean up after failed uninstallation.
5568	* test/rubygems/test_gem_commands_check_command.rb:  Test for above.
5569
5570	* lib/rubygems/commands/push_command.rb:  Allow pushes from RubyGems
5571	  2.0.0.preview3
5572
5573	* lib/rubygems/commands/update_command.rb:  Use Gem.ruby_version
5574
5575	* lib/rubygems/dependency.rb:  Update style.
5576
5577	* lib/rubygems/installer.rb:  Ensure installed gem specifications will
5578	  be useable.  Refactor.
5579	* test/rubygems/test_gem_installer.rb:  ditto.
5580
5581	* lib/rubygems/validator.rb:  Fixed bug with unreadable files.
5582
5583	* lib/rubygems.rb:  Fixed broken methods.
5584	* test/rubygems/test_gem.rb:  Test for above.
5585
5586	* test/rubygems/test_gem_commands_push_command.rb:  Fixed overridden
5587	  Gem.latest_rubygems_version
5588
5589Sun Dec 23 01:52:01 2012  Akinori MUSHA  <knu@iDaemons.org>
5590
5591	* io.c (rb_io_lines, rb_io_bytes, rb_io_chars, rb_io_codepoints):
5592	  Deprecate IO#{lines,bytes,chars,codepoints} and those of ARGF.
5593	  [Feature #6670]
5594
5595	* ext/stringio/stringio.c (strio_lines, strio_bytes, strio_chars)
5596	  (strio_codepoints): Deprecate
5597	  StringIO#{lines,bytes,chars,codepoints}. [Feature #6670]
5598
5599	* ext/zlib/zlib.c (rb_gzreader_lines, rb_gzreader_bytes):
5600	  Deprecate Zlib::GzipReader#{lines,bytes}. [Feature #6670]
5601
5602Sat Dec 23 01:35:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5603
5604	* lib/optparse.rb: Documentation for OptionParser to remove 'shadowed
5605	  outer local variable' from example and make obvious ARGV with
5606	  non-option arguments.
5607	  Patch by Marcus Stollsteimer [ruby-core:47460] [Bug #6997]
5608
5609Sat Dec 23 00:08:00 2012  Kenta Murata  <mrkn@mrkn.jp>
5610
5611	* include/ruby/intern.h: add the prototype declaration of
5612	  rb_num_coerce_bit.
5613
5614	* numeric.c (rb_num_coerce_bit): the new coerce function for bitwise
5615	  binary operation.
5616
5617	* bignum.c (rb_big_and): use coerce to convert the argument, which isn't
5618	  a Fixnum nor a Bignum, to the corresponding Integer object so that
5619	  bitwise operations can support Integer-mimic objects.
5620	  [Bug #1792] [ruby-core:39491]
5621
5622	* bignum.c (rb_big_or): ditto.
5623
5624	* bignum.c (rb_big_xor): ditto.
5625
5626	* numeric.c (bit_coerce): ditto.
5627
5628	* numeric.c (fix_and): ditto.
5629
5630	* numeric.c (fix_or): ditto.
5631
5632	* numeric.c (fix_xor): ditto.
5633
5634	* test/ruby/test_integer.rb: add tests for the above changes.
5635
5636	* test/ruby/test_bignum.rb: ditto.
5637
5638Sun Dec 23 00:04:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5639
5640	* internal.h (QUOTE, QUOTE_ID): quote unprintable chars in strings and
5641	  IDs. [Bug #7574] [ruby-dev:46749]
5642
5643	* string.c (rb_str_quote_unprintable): ditto.
5644
5645Sat Dec 22 23:59:18 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5646
5647	* error.c (rb_compile_error, rb_compile_warn, rb_compile_warning),
5648	  (rb_warn, rb_warning): support PRIsVALUE.
5649
5650Sat Dec 22 22:04:58 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
5651
5652	* cont.c (rb_fiber_start): unify conditions.
5653
5654Sat Dec 22 21:47:55 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5655
5656	* io.c (rb_io_wait_writable): use rb_thread_check_ints() instead
5657	  of rb_thread_fd_writable().
5658	* io.c (rb_io_wait_readable): ditto.
5659
5660Sat Dec 22 20:31:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5661
5662	* object.c (rb_mod_const_get): symbol cannot be nested constant name.
5663
5664Sat Dec 22 19:26:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5665
5666	* object.c (rb_mod_const_get): check more strictly.  [ruby-dev:46748]
5667	  [Bug #7573]
5668
5669Wed Dec 19 02:34:48 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
5670
5671	* cont.c (rb_fiber_start): in case of jump with TAG_FATAL,
5672	  enqueue error into async_errinfo_queue, because you cannot call
5673	  TH_TAG_JUMP() in this function. [ruby-dev:45218]  [Bug #5993]
5674
5675	* thread.c (rb_threadptr_execute_interrupts): now INT2FIX(TAG_FATAL)
5676	  can be popped from async_errinfo_queue.
5677
5678	* vm.c (rb_vm_make_jump_tag_but_local_jump): revert r38441.
5679	  rb_vm_make_jump_tag_but_local_jump() shouldn't return exception
5680	  in case of state == TAG_FATAL.
5681
5682	* test/ruby/test_fiber.rb (test_exit_in_fiber): fix a test to illuminate
5683	  Thread.exit should terminate current Thread.
5684
5685Sat Dec 22 13:15:08 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
5686
5687	* gc.c (obj_id_to_ref): add a macro to treat Bignum object id.
5688	  This follows the change r38493.
5689
5690	* gc.c (id2ref): fix for working fine with Bignum object id on x64
5691	  Windows.
5692	* gc.c (wmap_finalize): ditto.
5693
5694Sat Dec 22 11:30:21 2012  Masaki Matsushita  <glass.saga@gmail.com>
5695
5696	* struct.c (make_struct): remove junk ID check to allow members who
5697	  have junk name like "foo\000".
5698	* test/ruby/test_struct.rb: Test for above.
5699	  [Bug #7575] [ruby-dev:46750]
5700
5701Sat Dec 22 05:34:54 2012  Eric Hodel  <drbrain@segment7.net>
5702
5703	* lib/net/http.rb:  Requests may be created with a URI which sets the
5704	  Host header.  Responses contain the requested URI for easier redirect
5705	  following.  [ruby-trunk - Feature #6482]
5706	* lib/net/http/generic_request.rb:  ditto.
5707	* lib/net/http/response.rb:  ditto.
5708	* NEWS (net/http):  Updated for above.
5709	* test/net/http/test_http.rb:  Tests for above.
5710	* test/net/http/test_http.rb:  ditto.
5711	* test/net/http/test_httpresponse.rb:  ditto.
5712
5713Sat Dec 22 02:35:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5714
5715	* lib/irb/slex.rb(#match): Typo, should be D_DETAIL
5716	  [ruby-core:51071] [Bug#7600]
5717
5718Sat Dec 22 02:29:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5719
5720	* lib/irb/input-method.rb, lib/irb.rb: Typo in
5721	  InputMethod#readable_atfer_eof? to #readable_after_eof?
5722	  [ruby-core:51069] [Bug #7599]
5723
5724Sat Dec 22 02:19:38 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5725
5726	* vm_dump.c (rb_vm_bugreport): revert r38533.
5727	* addr2line.c (fill_lines): add ELF sanity check.
5728	  [Bug #7597] [ruby-dev:46786]
5729
5730Sat Dec 22 02:05:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5731
5732	* lib/irb/inspector.rb, lib/irb/context.rb: Move IRB::INSPECTORS and
5733	  class methods to IRB::Inspector [ruby-core:51067][Bug #7598]
5734
5735Sat Dec 22 00:28:46 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
5736
5737	* object.c (rb_obj_hash): shouldn't assume object_id can be long.
5738	  based on a patch by Heesob Park at [ruby-core:51060].
5739	  cf. [Backport #7454]
5740
5741Fri Dec 21 23:15:25 2012  Kouhei Sutou  <kou@cozmixng.org>
5742
5743	* ext/fiddle/lib/fiddle/struct.rb (Fiddle::CStructEntity#set_ctypes):
5744	  CPtr -> Pointer.
5745	* test/fiddle/test_c_struct_entry.rb
5746	  (Fiddle::TestCStructEntity#test_aref_pointer):
5747	  Added the test for the above.
5748
5749Fri Dec 21 23:12:05 2012  Kouhei Sutou  <kou@cozmixng.org>
5750
5751	* ext/fiddle/lib/fiddle/struct.rb (Fiddle::CStructEntity#set_ctypes):
5752	  CPtr -> Pointer.
5753	* test/fiddle/test_c_struct_entry.rb
5754	  (Fiddle::TestCStructEntity#test_aref_pointer_array):
5755	  Added the test for the above.
5756
5757Fri Dec 21 22:43:36 2012  Kouhei Sutou  <kou@cozmixng.org>
5758
5759	* ext/fiddle/lib/fiddle/import.rb (Fiddle::Importer#sizeof):
5760	  CPtr -> Pointer.
5761	* test/fiddle/test_import.rb (Fiddle::TestImport#test_sizeof):
5762	  Added the test for the above.
5763
5764Fri Dec 21 22:34:17 2012  Koichi Sasada  <ko1@atdot.net>
5765
5766	* test/ruby/test_iseq.rb: disable a test which checks features
5767	  removed at r38532.
5768
5769Fri Dec 21 22:02:00 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
5770
5771	* win32/{dir.h,win32.c} (rb_w32_readdir): removed old rb_w32_readdir()
5772	  and renamed from rb_w32_readdir_with_enc().
5773	  [ruby-core:24864] [Feature #1927]
5774
5775	* dir.c (READDIR): follow above change.
5776
5777Fri Dec 21 21:12:54 2012  Masaya Tarui  <tarui@ruby-lang.org>
5778
5779	* vm_dump.c (rb_vm_bugreport): commentout addr2line call temporarily
5780	  in order to avoid segv. anyone can fix addr2line?
5781	  [Bug #7597] [ruby-dev:46786]
5782
5783Fri Dec 21 20:38:28 2012  Koichi Sasada  <ko1@atdot.net>
5784
5785	* iseq.c (Init_ISeq): remove definition of the following methods:
5786	  ISeq#line_trace_all and ISeq#line_trace_specify because they are
5787	  half baked.
5788	  C APIs are remained as experimental. These functions will be
5789	  renamed, removed their parameters may be changed.
5790	  You can use these methods by C exts. Please give us your comments.
5791
5792Fri Dec 21 20:21:04 2012  Koichi Sasada  <ko1@atdot.net>
5793
5794	* vm_trace.c (tracepoint_new): add code to support specified thread.
5795	  But not tested and this feature is not supported officially.
5796
5797Fri Dec 21 19:37:15 2012  Koichi Sasada  <ko1@atdot.net>
5798
5799	* ruby.c (process_options): need to acquire env from TOPLEVEL_BINDING
5800	  each time.
5801	  `bind->env' may update after `eval()'.
5802	   [Bug #7536]
5803
5804Fri Dec 21 18:46:50 2012  Koichi Sasada  <ko1@atdot.net>
5805
5806	* include/ruby/debug.h, vm_core.h: define rb_trace_arg_t at
5807	  include/ruby/debug.h (move from vm_core.h).
5808
5809Fri Dec 21 17:48:15 2012  Koichi Sasada  <ko1@atdot.net>
5810
5811	* vm_core.h, vm_trace.c: fix multi-threading bug for tracing.
5812	  Move `trace_arg' from rb_tp_t::trace_arg to rb_thread_t::trace_arg.
5813	  `trace_arg' may changed by multiple threads.
5814	  rb_thread_t::trace_arg can represent rb_thread_t::trace_running
5815	  (null or non-null) and rb_thread_t::trace_running is removed.
5816	  After that, `rb_tp_t' is not needed to check tracing or not
5817	  (A running thread knows tracing or not). This is why I remove
5818	  tp_attr_check_active() and make new function get_trace_arg().
5819
5820	  And this modification disable to work the following code:
5821	    TracePoint.trace{|tp|
5822	      Thread.new{p tp.event} # access `tp' from other threads.
5823	    }
5824	  I believe nobody mix threads at trace procedure.
5825	  This is current limitation.
5826	  [Bug #7590]
5827
5828	* cont.c (fiber_switch, rb_cont_call): use rb_thread_t::trace_arg
5829	  instead of rb_thread_t::trace_running.
5830
5831	* test/ruby/test_settracefunc.rb: add a multi-threading test.
5832
5833Fri Dec 21 16:38:08 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5834
5835	* template/id.h.tmpl (ID2ATTRSET): compile time constant macro for
5836	  ID_ATTRSET.
5837
5838	* defs/id.def (KeywordError): check duplication.
5839
5840	* defs/id.def: support for other scope IDs,
5841	  ID_{INSTANCE,GLOBAL,CONST,CLASS}.
5842
5843Fri Dec 21 14:45:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5844
5845	* lib/irb.rb, lib/irb/*: Documentation for IRB
5846
5847Fri Dec 21 11:31:02 2012  Eric Hodel  <drbrain@segment7.net>
5848
5849	* lib/rake/*:  Updated to rake 0.9.6
5850	* doc/rake/*:  ditto
5851	* test/rake/*:  ditto
5852
5853Fri Dec 21 08:56:34 2012  Masaya Tarui  <tarui@ruby-lang.org>
5854
5855	* vm_trace.c (rb_suppress_tracing): remove unused variable 'vm_tracing'
5856
5857Fri Dec 21 01:01:45 2012  Masaya Tarui  <tarui@ruby-lang.org>
5858
5859	* lib/irb/completion.rb (CompletionProc): support completion of
5860	  instance variables. [ruby-dev:46710] [Bug #7520]
5861
5862Thu Dec 20 20:58:25 2012  Masaya Tarui  <tarui@ruby-lang.org>
5863
5864	* vm_trace.c (rb_suppress_tracing): bugfix for vm->trace_running
5865	  counter. And if tracing is already true, vm_trace_running ops is
5866	  skipped to control overflow.
5867
5868Thu Dec 20 18:29:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5869
5870	* include/ruby/ruby.h (RTEST, NIL_P): make bare expressions without
5871	  outermost parentheses.
5872
5873Thu Dec 20 17:29:00 2012  Shugo Maeda  <shugo@ruby-lang.org>
5874
5875	* NEWS: fix the description for Refinements.
5876
5877Thu Dec 20 16:53:59 2012  Shugo Maeda  <shugo@ruby-lang.org>
5878
5879	* vm_core.h (rb_vm_defineclass_type_t),
5880	  compile.c (iseq_compile_each), insns.def (defineclass): change the
5881	  meaning of the third operand of defineclass as follows:
5882	    lower 3bits: the type of the defineclass
5883	                   0 = class, 1 = singleton class, 2 = module
5884	    4th bit: a flag represents whether the defineclass is scoped
5885	               0 = not scoped (e.g., class Foo)
5886		       1 = scoped (e.g., class Bar::Baz)
5887	    5th bit: a flag represents whether the superclass is specified
5888	               0 = not specified (e.g., class Foo)
5889	               1 = specified (e.g., class Bar < Foo)
5890	  If the superclass is specified and is not a class, a TypeError
5891	  should be raised.  [ruby-dev:46747] [Bug #7572]
5892
5893	* test/ruby/test_class.rb: related test.
5894
5895Thu Dec 20 16:52:37 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
5896
5897	* NEWS: announce AEAD encryption support in the OpenSSL extension.
5898
5899Thu Dec 20 16:40:13 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
5900
5901	* gc.c (nonspecial_obj_id): VALUE is not compatible with Fixnum on
5902	  LLP64 platform, such as 64bit Windows.
5903	  reported by Heesob Park at [ruby-core:50255] [Bug #7454], and the
5904	  fix is suggested by akr.
5905
5906Thu Dec 20 16:39:04 2012  Martin Bosslet  <Martin.Bosslet@gmail.com>
5907
5908	* ext/openssl/ossl_cipher.c: fix errors for installations that do not
5909	  feature Authenticated Encryption.
5910	* ext/openssl/extconf.rb: detect presence of EVP_CTRL_GCM_GET_TAG to
5911	  determine whether Authenticated Encryption can be used.
5912	  [Feature #6980] [ruby-core:47426]
5913
5914Thu Dec 20 15:55:46 2012  Martin Bosslet  <Martin.Bosslet@gmail.com>
5915
5916	* ext/openssl/ossl.c: do not use FIPS_mode_set if not available.
5917	* test/openssl/utils.rb: revise comment about setting FIPS mode to
5918	  false.
5919	* test/openssl/test_fips.rb: remove tests that cause errors on
5920	  ruby-ci.
5921	  [Feature #6946] [ruby-core:47345]
5922
5923Thu Dec 20 15:22:59 2012  Eric Hodel  <drbrain@segment7.net>
5924
5925	* lib/rdoc/parser/ruby.rb:  Ignore methods defined on constants to
5926	  prevent modules with the names of constants from appearing in the
5927	  documentation.
5928	* test/rdoc/test_rdoc_parser_ruby.rb:  Test for the above.
5929
5930Thu Dec 20 15:00:33 2012  Martin Bosslet  <Martin.Bosslet@gmail.com>
5931
5932	* ext/openssl/ossl_cipher.c: add support for Authenticated Encryption
5933	  with Associated Data (AEAD) for OpenSSL versions that support the
5934	  GCM encryption mode. It's the only mode supported for now by OpenSSL
5935	  itself. Add Cipher#authenticated? to detect whether a chosen mode
5936	  does support Authenticated Encryption.
5937	* test/openssl/test_cipher.rb: add tests for Authenticated Encryption.
5938	  [Feature #6980] [ruby-core:47426] Thank you, Stephen Touset for
5939	  providing a patch!
5940
5941Thu Dec 20 12:56:53 2012  Eric Hodel  <drbrain@segment7.net>
5942
5943	* lib/rdoc/markup/to_html.rb (class RDoc):  Added current heading and
5944	  top links to headings.
5945	* lib/rdoc/generator/template/darkfish/rdoc.css:  ditto
5946	* test/rdoc/test_rdoc_generator_markup.rb:  Test for above
5947	* test/rdoc/test_rdoc_markup_to_html.rb:  ditto
5948
5949	* test/rdoc/test_rdoc_comment.rb:  Removed trailing whitespace.
5950
5951Thu Dec 20 11:05:26 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5952
5953	* test/ruby/envutil.rb (assert_valid_syntax): move from
5954	  test_syntax.rb.
5955
5956	* test/ruby/envutil.rb (assert_normal_exit): validate syntax before
5957	  running because this assertion passes even if the code fails by
5958	  SyntaxError.
5959
5960Thu Dec 20 10:29:58 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
5961
5962	* test/openssl/test_pkey_dh.rb: revert special treatment of
5963	  FIPS-capable installations since FIPS mode is now disabled for the
5964	  tests.
5965
5966Thu Dec 20 10:23:12 2012  Martin Bosslet  <Martin.Bosslet@gmail.com>
5967
5968	* ext/openssl/ossl.c: add OpenSSL.fips_mode= to allow enabling FIPS
5969	  mode manually.
5970	* test/openssl/utils.rb: turn off FIPS mode for tests. This prevents
5971	  OpenSSL installations with FIPS mode enabled by default from raising
5972	  FIPS-related errors during the tests.
5973	* test/openssl/test_fips.rb: add tests for FIPS-capable OpenSSL
5974	  installations.
5975	  [Feature #6946] [ruby-core:47345]
5976
5977Thu Dec 20 06:59:52 2012  Koichi Sasada  <ko1@atdot.net>
5978
5979	* vm.c: support variable VM/Machine stack sizes.
5980	  Specified by the following environment variables:
5981	    - RUBY_THREAD_VM_STACK_SIZE: vm stack size used at thread creation.
5982	      default: 128KB (32bit CPU) or 256KB (64bit CPU).
5983	    - RUBY_THREAD_MACHINE_STACK_SIZE: machine stack size used at thread
5984	      creation. default: 512KB or 1024KB.
5985	    - RUBY_FIBER_VM_STACK_SIZE: vm stack size used at fiber creation.
5986	      default: 64KB or 128KB.
5987	    - RUBY_FIBER_MACHINE_STACK_SIZE: machine stack size used at fiber
5988	      creation. default: 256KB or 256KB.
5989	  This values are specified at launched timing. You can not change
5990	  these values at running time.
5991	  Environ variables are only *hints* because:
5992	    - They are aligned to 4KB.
5993	    - They have minimum values (depend on OSs).
5994	    - Machine stack settings are ignored by some OSs.
5995	  Default values especially fiber stack sizes are increased.
5996	  This change affect Fiber's behavior:
5997	    (1) You can run more complex program on a Fiber.
5998	    (2) You can not make many (thousands) Fibers because of
5999	        lack of address space (on 32bit CPU).
6000	  If (2) bothers you,
6001	    (a) Use 64bit CPU with big memory, or
6002	    (b) Specify RUBY_FIBER_(VM|MACHINE)_STACK_SIZE correctly.
6003	  You need to choose correct stack size carefully. These values
6004	  are completely rely on systems (OS/compiler and so on).
6005	  [Feature #4614], [Bug #7212]
6006
6007	* vm_core.h (rb_vm_t::default_params): add to record above settings.
6008
6009	* vm.c (RubyVM::DEFAULT_PARAMS): add new constant to see
6010	  above setting.
6011
6012	* thread_pthread.c: support RUBY_THREAD_MACHINE_STACK_SIZE.
6013
6014	* cont.c: support RUBY_FIBER_(VM|MACHINE)_STACK_SIZE.
6015
6016	* test/ruby/test_fiber.rb: add tests for above.
6017
6018	* test/ruby/test_thread.rb: ditto.
6019
6020Thu Dec 20 06:25:44 2012  Koichi Sasada  <ko1@atdot.net>
6021
6022	* test/ruby/test_fiber.rb: remove a strange single quote character.
6023	  With this character, this script exits by SyntaxError.
6024
6025Thu Dec 20 01:03:00 2012  Zachary Scott  <zachary@zacharyscott>
6026
6027	* ext/.document: Add missing ext modules to .document
6028	  Patch by Ryunosuke SATO [Fixes Github #224]
6029
6030Wed Dec 19 23:52:16 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
6031
6032	* ruby.c (load_file_internal): use original C string as the filename
6033	  for parser.
6034	  reported by whiteleaf at [ruby-list:49085] [ruby-dev:46738]
6035	  [Bug #7562]
6036
6037Wed Dec 19 23:36:12 2012  Naohisa Goto  <ngotogenome@gmail.com>
6038
6039	* marshal.c (marshal_dump, marshal_load): fix SEGV during make rdoc
6040	  and test failure in TestMarshal#test_gc and test_context_switch
6041	  on SPARC Solaris 10 compiled with Oracle Solaris Studio 12.3.
6042	  [Bug #7591] [ruby-dev:46772]
6043
6044Wed Dec 19 19:34:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6045
6046	* object.c (rb_mod_const_get): nul byte is invalid as constant name.
6047
6048Wed Dec 19 17:54:18 2012  Masaya Tarui  <tarui@ruby-lang.org>
6049
6050	* vm_trace.c (rb_threadptr_exec_event_hooks): get rid of race
6051	  condition. [Bug #7589] [ruby-dev:46763]
6052
6053Wed Dec 19 16:30:28 2012  Eric Hodel  <drbrain@segment7.net>
6054
6055	* doc/syntax/literals.rdoc:  Added 0d decimal format.  Thanks Nobu!
6056
6057Wed Dec 19 16:19:36 2012  Eric Hodel  <drbrain@segment7.net>
6058
6059	* doc/syntax/methods.rdoc:  Fixed typo.  Thanks to Josh Susser.
6060
6061Wed Dec 19 16:18:22 2012  Eric Hodel  <drbrain@segment7.net>
6062
6063	* lib/rubygems/commands/query_command.rb:  Refactored to improve
6064	  maintainability.
6065	* test/rubygems/test_gem_commands_query_command.rb:  Note default gems
6066	  in gem list details.
6067
6068	* lib/rubygems/uninstaller.rb:  Detect all gems for uninstallation.
6069	  This allows duplicate installs of default gems to be removed.
6070	* lib/rubygems/specification.rb:  Allow use of ::each_spec.
6071	* lib/rubygems/test_case.rb:  Added install_default_gems.
6072	* test/rubygems/test_gem_commands_uninstall_command.rb:  Moved test
6073	  down to the uninstaller tests.
6074	* test/rubygems/test_gem_uninstaller.rb:  Test for uninstallation of
6075	  default gems and duplicate default gems.
6076
6077Wed Dec 19 15:23:50 2012  Eric Hodel  <drbrain@segment7.net>
6078
6079	* doc/syntax/methods.rdoc:  Add () around keyword arguments example for
6080	  consistency.  Thanks to Josh Susser.
6081
6082Wed Dec 19 01:51:24 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
6083
6084	* vm.c (rb_vm_jump_tag_but_local_jump): remove unnecessary 2nd
6085	  argument.
6086
6087	* load.c (rb_load_internal): ditto.
6088
6089	* eval_intern.h (rb_vm_jump_tag_but_local_jump): ditto.
6090
6091Tue Dec 18 18:57:58 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6092
6093	* io.c (rb_io_wait_writable): don't use rb_thread_wait_fd()
6094	  because it is for waiting until io readable.
6095
6096	* io.c (rb_io_wait_writable): always use rb_thread_fd_writable()
6097	  instead of bare rb_wait_for_single_fd(). we shouldn't ignore
6098	  return value.
6099	* io.c (rb_io_wait_readable): ditto. always use rb_thread_wait_fd().
6100
6101Tue Dec 18 18:55:33 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6102
6103	* thread.c (rb_thread_wait_fd_rw): fix infinite loop bug.
6104	  rb_wait_for_single_fd() never return positive number.
6105
6106Tue Dec 18 17:24:40 2012  Eric Hodel  <drbrain@segment7.net>
6107
6108	* lib/rdoc/encoding.rb:  Do not remove #! line from document when
6109	  setting encoding.  This allows ruby executables to be parsed as ruby
6110	  files.
6111	* test/rdoc/test_rdoc_encoding.rb:  Test for above.
6112
6113	* lib/rdoc/parser.rb:  Set the parser file name of ruby executables
6114	  correctly.
6115	* test/rdoc/test_rdoc_parser.rb:  Test for above.
6116
6117Tue Dec 18 16:46:15 2012  Eric Hodel  <drbrain@segment7.net>
6118
6119	* doc/syntax/literals.rdoc:  Used simplified heredoc example that
6120	  doesn't include method definition.  Added heredoc with backticks.
6121
6122Tue Dec 18 16:38:51 2012  Eric Hodel  <drbrain@segment7.net>
6123
6124	* lib/rdoc/store.rb:  Work around RDoc stores from older versions of
6125	  RDoc.
6126	* test/rdoc/test_rdoc_store.rb:  Test for above.
6127
6128Tue Dec 18 16:31:20 2012  Eric Hodel  <drbrain@segment7.net>
6129
6130	* lib/rdoc/ruby_lex.rb:  Return a TkHEREDOC instead of a TkSTRING when
6131	  the heredoc identifier is followed by a line-end.  This allows proper
6132	  display of some HEREDOCs in source view.
6133	* lib/rdoc/ruby_token.rb:  Added TkHEREDOC
6134	* test/rdoc/test_rdoc_ruby_lex.rb:  Test for above.
6135
6136Tue Dec 18 09:45:14 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
6137
6138	* vm.c (rb_vm_make_jump_tag_but_local_jump): take care of the case
6139	  TAG_JUMP() with TAG_FATAL (ex. rb_fatal()). [ruby-core:50917]
6140	  [Bug #7570]
6141
6142	* test/ruby/test_fiber.rb (test_fatal_in_fiber): add a test for above.
6143
6144	* ext/-test-/fatal/extconf.rb, ext/-test-/fatal/rb_fatal.c: ditto.
6145
6146Tue Dec 18 13:17:00 2012  Zachary Scott  <zachary@zacharyscott.net>
6147
6148	* vm_trace.c (tracepoint_attr_defined_class): Clean up rdoc for
6149	  TracePoint#defined_class
6150
6151Tue Dec 18 12:15:59 2012  Eric Hodel  <drbrain@segment7.net>
6152
6153	* lib/rubygems/specification.rb:  Fixed ruby output of requirements
6154	  with multiple version specifiers.
6155	* test/rubygems/test_gem_ext_cmake_builder.rb:  Only look for specific
6156	  lines in cmake output.  Should fix [ruby-trunk - Bug #7579]
6157
6158Tue Dec 18 11:45:26 2012  Eric Hodel  <drbrain@segment7.net>
6159
6160	* doc/syntax/literals.rdoc:  Added 0o octal integers.
6161
6162Tue Dec 18 12:28:52 2012  Martin Bosslet  <Martin.Bosslet@gmail.com>
6163
6164	* test/openssl/test_ssl.rb: Use :TLSv1_2_client explicitly in
6165	  test_tls_v1_2 to prevent upstream bug.
6166	  [Bug #7197] [ruby-dev:46240]
6167
6168Tue Dec 18 11:52:34 2012  Martin Bosslet  <Martin.Bosslet@gmail.com>
6169
6170	* ext/openssl/lib/ssl.rb: Enable insertion of empty fragments as a
6171	  countermeasure for the BEAST attack by default. The default options
6172	  of OpenSSL::SSL:SSLContext are now:
6173	  OpenSSL::SSL::OP_ALL & ~OpenSSL::SSL::OP_DONT_INSERT_EMPTY_FRAGMENTS
6174	  [Bug #5353] [ruby-core:39673]
6175
6176	* test/openssl/test_ssl.rb: Adapt tests to new SSLContext default.
6177
6178	* NEWS: Announce the new default.
6179
6180Tue Dec 18 06:36:12 2012  Koichi Sasada  <ko1@atdot.net>
6181
6182	* method.h: remove `VM_METHOD_TYPE_CFUNC_FRAMELESS' method type.
6183	  This method type is for optimized CFUNC such as Fixnum#+ and so on.
6184	  This feature is half-baked and no way to use them.
6185	  [Background]
6186	  Now, VM has opt_plus instructions to optimize `+' methods for
6187	  some Classes (such as Fixnum, Float (flonum)). We call this
6188	  type of instructions as `specialized instructions'.
6189	  This simple technique improve simple program dramatically.
6190	  However, we can make specialized instructions for only several
6191	  types (classes) and selectors (method names) because a large
6192	  instruction will be slow. In other words, this technique has no
6193	  extensibility.
6194	  To overcome this problem, VM_METHOD_TYPE_CFUNC_FRAMELESS was
6195	  introduced (r37198). This type is a variant of CFUNC, but called
6196	  their functions directly without building a method frame.
6197	  Any CFUNC method can be defined as frameless methods if a method
6198	  is not needed to make method frame. Frameless methods are faster
6199	  as specialized instructions (a bit slower, but no need to care).
6200	  No problem described at
6201	  http://charlie.bz/blog/why-do-singleton-methods-make-ruby-slow
6202	  because this technique doesn't see class, but see method body
6203	  itself. Alias is also no problem.
6204	  [Problem]
6205	  However, we can't set frameless method type for polymorphic methods
6206	  such as Array#[]. Necessity for method frame depends on which
6207	  parameter type. For example, Fixnum#+ needs method frame if
6208	  coerce is needed. Current VM_METHOD_TYPE_CFUNC_FRAMELESS is not
6209	  flexible and need more tuning to introduce it.
6210	  Expected behavior of frameless method type may be:
6211	    result = optimized_cfunc(params); /* call optimized cfunc */
6212	    if (result == Qundef) { result = normal_cfunc(); }
6213	  This is why I say this feature is half-baked.
6214	  We need to learn primitive method in Smalltalk more.
6215	  (I heard this name at RubyConf Taiwan this month. Thanks!)
6216	  [Conclusion]
6217	  I remove this feature and consider again.
6218	  This feature goes to next minor (2.1?).
6219	  Nobody may use this feature and there is no compatibility issue.
6220
6221	* proc.c (rb_method_entry_arity): ditto.
6222
6223	* vm_eval.c, vm_insnhelper.c, vm_method.c: ditto.
6224
6225Tue Dec 18 04:58:22 2012  Koichi Sasada  <ko1@atdot.net>
6226
6227	* vm_trace.c (fill_id_and_klass): TracePoint#defined_class returns
6228	  singleton class. `set_trace_func' passed attached class (which is
6229	  attached/modified by singleton class) by 6th block parameter if it
6230	  is singleton class. Previous behavior follows this spec.
6231	  However, this method named `defined_class' should return singleton
6232	  class directly because singleton methods are defined in singleton
6233	  class. There are no compatible issue because TracePoint is introduced
6234	  after 2.0.
6235	  But compatibility with `set_trace_func' is broken. This means that
6236	  you can not replace all `set_trace_func' code with TracePoint
6237	  without consideration of this behavior.
6238	  [Bug #7554]
6239
6240	* test/ruby/test_settracefunc.rb: change a test to catch up
6241	  an above change.
6242
6243Tue Dec 18 03:03:10 2012  Aaron Patterson <aaron@tenderlovemaking.com>
6244
6245	* ext/psych/lib/psych/visitors/to_ruby.rb: speed up node mapping so
6246	  common cases are evaluated first.  Thanks Kevin Menard!
6247
6248Tue Dec 18 02:35:00 2012  Zachary Scott  <zachary@zacharyscott.net>
6249
6250	* lib/optparse.rb: Remove 'developer documentation' section from rdoc
6251	  Patch by Marcus Stollsteimer [ruby-core:50526][Bug #7504]
6252
6253Tue Dec 18 02:35:00 2012  Zachary Scott  <zachary@zacharyscott.net>
6254
6255	* lib/matrix.rb (#lup): typo in example [ruby-core:50946][Bug #7582]
6256
6257Mon Dec 17 18:03:34 2012  Charlie Somerville  <charlie@charliesomerville.com>
6258
6259	* class.c (rewrite_cref_stack, clone_method): rewrite a method's cref
6260	  stack when cloning into a new class to allow lexical const lookup to
6261	  work as expected [ruby-core:47834] [Bug #7107]
6262	* test/ruby/test_class.rb (class TestClass): related test
6263
6264Mon Dec 17 13:56:55 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6265
6266	* io.c (io_flush_buffer_sync2): avoid to return 0. because
6267	  rb_thread_call_without_gvl2 uses 0 internally.
6268	* io.c (io_flush_buffer_async2): adapt the above.
6269
6270Mon Dec 17 12:05:32 2012  Eric Hodel  <drbrain@segment7.net>
6271
6272	* doc/syntax/methods.rdoc:  Added a description of singleton methods.
6273
6274Mon Dec 17 11:35:57 2012  Eric Hodel  <drbrain@segment7.net>
6275
6276	* doc/.document:  Added doc/syntax
6277
6278Mon Dec 17 11:25:32 2012  Eric Hodel  <drbrain@segment7.net>
6279
6280	* doc/syntax.rdoc:  Added syntax guide table of contents
6281	* doc/syntax/exceptions.rdoc:  Syntax guide for exceptions
6282	* doc/syntax/literals.rdoc:  Syntax guide for literals
6283	* doc/syntax/methods.rdoc:  Syntax guide for methods
6284
6285Mon Dec 17 07:59:40 2012  Eric Hodel  <drbrain@segment7.net>
6286
6287	* lib/rubygems.rb:  Updated VERSION
6288
6289	* test/rubygems/test_gem_installer.rb:  Fixed ambiguous first argument
6290	  warning.
6291
6292	* test/rubygems/test_gem_rdoc.rb:  RDoc generation depends on installed
6293	  version of RDoc.
6294
6295Sun Dec 16 02:04:41 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6296
6297	* signal.c (rb_sigaltstack_size): cast sysconf() return value
6298	  explicitly. Fix compile error on Mac OS X.
6299
6300Sun Dec 16 00:39:43 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
6301
6302	* cont.c (rb_fiber_start): don't enqueue Qnil to async_errinfo_queue.
6303	  rb_vm_make_jump_tag_but_local_jump() could return Qnil (ex. when
6304	  finished by Thread.exit). [ruby-dev:45218] [Bug #5993]
6305
6306	* test/ruby/test_fiber.rb (test_exit_in_fiber): add test for it.
6307
6308Sat Dec 15 23:56:51 2012  Naohisa Goto  <ngotogenome@gmail.com>
6309
6310	* ext/fiddle/pointer.c (rb_fiddle_ptr2cptr): fix error message
6311	  forgotten to be changed from DL to Fiddle.
6312
6313Sat Dec 15 23:14:32 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6314
6315	* signal.c (default_handler): remove rb_register_sigaltstack()
6316	  call. sigaltstack was already registered when creating threads.
6317
6318Sat Dec 15 23:08:56 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6319
6320	* signal.c (rb_sigaltstack_size): new. calculate stack size for
6321	  sigsegv handler. enlarge value when x86 or x86_64 on Linux.
6322	  Linux has very small MINSIGSTKSZ size (2048 bytes) and
6323	  our sigsegv routine need 5KiB at least. [Bug #7141]
6324	* internal.h: add declaration of rb_sigaltstack_size().
6325	* vm_core.h: remove ALT_STACK_SIZE definition.
6326
6327	* signal.c (rb_register_sigaltstack): replace ALT_STACK_SIZE with
6328	  rb_sigaltstack_size();
6329	* gc.c (Init_heap): ditto.
6330	* vm.c (th_init): ditto.
6331
6332Sat Dec 15 18:24:21 2012  Tadayoshi Funaba  <tadf@dotrb.org>
6333
6334	* rational.c (f_round_common): should check overflow.
6335
6336Sat Dec 15 18:00:00 2012  Tadayoshi Funaba  <tadf@dotrb.org>
6337
6338	* rational.c (float_rationalize): reduced.
6339
6340Sat Dec 15 14:18:44 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6341
6342	* io.c (finish_writeconv): uses rb_write_internal2 if
6343	  fptr->write_lock have.
6344
6345Sat Dec 15 13:57:08 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6346
6347	* thread.c (rb_mutex_owned_p): remove static.
6348	* io.c (io_flush_buffer): don't hold mutex if already have.
6349	  Now recursive lock may occur when following scenario.
6350	  fptr_finalize -> finish_writeconv_sync -> finish_writeconv
6351	  -> io_fflush.
6352
6353Sat Dec 15 13:38:30 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6354
6355	* io.c (io_flush_buffer): uses io_flush_buffer_async2 instead of
6356	  io_flush_buffer_async.
6357	* io.c (io_flush_buffer_async2): new helper function for
6358	  io_flush_buffer. It uses rb_thread_call_without_gvl2() instead
6359	  of rb_thread_io_blocking_region.
6360	* io.c (io_flush_buffer_sync2): new helper function for
6361	  io_flush_buffer_async2.
6362
6363Sat Dec 15 13:04:26 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6364
6365	* io.c (internal_write_func2): new helper function for rb_write_internal2().
6366	* io.c (rb_write_internal2): new function. it uses
6367	  rb_thread_call_without_gvl2() instead of rb_thread_io_blocking_region().
6368	* io.c (rb_binwrite_string): uses rb_write_internal2 instead of
6369	  rb_write_internal. [Bug #7134]
6370
6371Sat Dec 15 12:55:29 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6372
6373	* io.c (rb_io_wait_writable): add to call rb_thread_wait_fd()
6374	  likes rb_io_wait_readable.
6375
6376Sat Dec 15 11:54:50 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6377
6378	* io.c (rb_io_wait_writable): don't call rb_thread_fd_writable()
6379	  when EINTR. EINTR mean signal interrupt was happen. We don't
6380	  need any wait.
6381
6382Sat Dec 15 11:53:36 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6383
6384	* thread.c (rb_thread_wait_fd_rw): remove silly rb_thread_alone()
6385	  check.
6386
6387Sat Dec 15 10:22:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6388
6389	* thread.c (rb_thread_polling): revert but deprecate.
6390
6391	* include/ruby/intern.h (rb_thread_polling): deprecate.
6392
6393Sat Dec 15 08:37:01 2012  Masaya Tarui  <tarui@ruby-lang.org>
6394
6395	* test/rubygems/test_gem_ext_cmake_builder.rb (test_self_build):
6396	  get rid of false positive.
6397
6398Sat Dec 15 08:05:56 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6399
6400	* test/ruby/test_thread.rb (test_uninitialized, test_backtrace,
6401	test_thread_timer_and_interrupt, test_thread_join_in_trap,
6402	test_thread_join_current, test_thread_join_main_thread,
6403	test_main_thread_status_at_exit, test_thread_status_in_trap,
6404	test_thread_status_raise_after_kill, test_mutex_owned,
6405	test_mutex_owned2): move these tests from TestThreadGroup class
6406	  to TestThread because they are not thread group tests.
6407
6408	* test/ruby/test_thread.rb (test_thread_status_raise_after_kill):
6409	  add t.join.
6410
6411	* test/ruby/test_threadgroup.rb: new file. moved ThreadGroup test
6412	  from test_thread.rb.
6413
6414Sat Dec 15 08:02:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6415
6416	* test/ruby/test_thread.rb (TestThread::Thread::new.): remove
6417	  th.abort_on_exception change. Test template shouldn't change
6418	  global flag. It prevent to test a normal case.
6419
6420Sat Dec 15 06:15:14 2012  Eric Hodel  <drbrain@segment7.net>
6421
6422	* configure.in (HAVE_GCC_ATOMIC_BUILTINS):  Set -march=i486 to enable
6423	  __sync_val_compare_and_swap.  Patch by KOSAKI Motohiro.
6424	  [ruby-trunk - Bug #7485]
6425
6426Sat Dec 15 03:42:34 2012  Naohisa Goto  <ngotogenome@gmail.com>
6427
6428	* ext/.document: add fiddle/pointer.c, fiddle/handle.c, and
6429	  fiddle/win32/lib as documentation.
6430
6431Sat Dec 15 03:06:40 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6432
6433	* file.c (rb_file_flock): use rb_thread_wait_for() instead of
6434	  rb_thread_polling(). When getting EAGAIN, we need to wait a
6435	  while even if no multi threading.
6436	* thread.c (sleep_for_polling, rb_thread_polling) removed.
6437
6438Sat Dec 15 00:03:31 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6439
6440	* signal.c (rb_f_kill): remove rb_thread_polling() because this
6441	  has no good effect and makes meaningless 100ms delay. 1)
6442	  when sending signal to another process, waiting has just silly.
6443	  2) when sending signal to current process, 100ms is often not
6444	  enough time to wait. It depend on kernel behavior. And,
6445	  rb_thread_polling() doesn't make sense anyway. When rb_thread_alone()
6446	  is true, it doesn't wait at all and Process.kill() users don't
6447	  expect threading changes Process.kill() behavior. [Bug #7560]
6448
6449Fri Dec 14 17:10:57 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6450
6451	* parse.y (parser_params): parser_tokline to track the line number at
6452	  which token started.  [ruby-dev:46737] [Bug #7559]
6453
6454	* parse.y (fcall): operation with starting line number.
6455
6456	* parse.y (command, primary, method_call): point method name line.
6457
6458	* parse.y (gettable_gen): return token line for __LINE__.
6459
6460Fri Dec 14 16:56:59 2012  Shugo Maeda  <shugo@ruby-lang.org>
6461
6462	* vm_insnhelper.c (vm_call_super_method): remove volatile introduced
6463	  in r38365.
6464
6465	* vm_insnhelper.c (vm_call_method): use __forceinline to prevent
6466	  VC++ to make vm_call_general and vm_call_super_method as the same
6467	  method.  Thanks, Heesob Park.  [Bug #7556] [ruby-core:50867]
6468
6469Fri Dec 14 14:59:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6470
6471	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_separately):
6472	  take file and line by using caller_locations if not given.
6473
6474	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_separately):
6475	  count assertions in separated tests.
6476
6477Fri Dec 14 14:16:42 2012  Eric Hodel  <drbrain@segment7.net>
6478
6479	* lib/rdoc/rubygems_hook.rb:  Fixed generation of documentation.
6480	  Disabled rdoc generation by default to match RubyGems defaults.
6481	  Reduced diff with RubyGems::RDoc.
6482	* test/rdoc/test_rdoc_rubygems_hook.rb:  Tests for the above.
6483	* test/rubygems/test_gem_rdoc.rb:  ditto.
6484
6485	* lib/rdoc/store.rb:  Removed useless variable assignment
6486
6487Fri Dec 14 13:58:40 2012  Eric Hodel  <drbrain@segment7.net>
6488
6489	* lib/rubygems/commands/rdoc_command.rb:  When overwriting
6490	  documentation, remove existing documentation first.
6491
6492	* lib/rubygems/server.rb:  Fixed documentation links.
6493	* test/rubygems/test_gem_server.rb:  Test for the above.
6494
6495	* lib/rubygems/rdoc.rb:  Reduced diff with RDoc::RubyGemsHook
6496	* test/rubygems/test_gem_rdoc.rb:  ditto
6497
6498Fri Dec 14 04:08:05 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6499
6500	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_separately):
6501	  added to execute given test source on separate process,
6502	  catch its resulted exception and raise it on main process.
6503
6504Fri Dec 14 07:43:44 2012  Aaron Patterson <aaron@tenderlovemaking.com>
6505
6506	* ext/psych/lib/psych/visitors/yaml_tree.rb: quote strings that begin
6507	  with non-word characters.  Thanks Alex Tambellini!
6508	* test/psych/test_yaml.rb: appropriate test case
6509
6510Thu Dec 13 23:14:17 2012  Shugo Maeda  <shugo@ruby-lang.org>
6511
6512	* vm_insnhelper.c (vm_call_super_method): a workaround for the
6513	  failure of TestRefinement#test_refine_recursion in Windows.
6514	  See [ruby-core:50871] for details.
6515
6516Thu Dec 13 23:10:52  Charlie Somerville  <charlie@charliesomerville.com>
6517
6518	* object.c (Init_Object): use rb_mod_init_copy for Class#initialize_copy
6519	* class.c (rb_class_init_copy): rename to class_init_copy_check, performs type
6520	  checks on arguments to prevent reinitialization of initialized class
6521	  [ruby-core:50869] [Bug #7557]
6522	* class.c (rb_mod_init_copy): use class_init_copy_check if receiver is T_CLASS
6523	* test/ruby/test_class.rb (class TestClass): related test
6524
6525Thu Dec 13 16:53:10 2012  Eric Hodel  <drbrain@segment7.net>
6526
6527	* lib/rdoc/class_module.rb:  Fixed duplicate comments for classes and
6528	  modules from C.
6529	* test/rdoc/test_rdoc_class_module.rb:  Test for the above.
6530
6531	* lib/rdoc/parser/c.rb:  Reload C variable names to allow proper
6532	  updates of an ri store for C files.
6533	* lib/rdoc/rdoc.rb:  ditto.
6534	* lib/rdoc/store.rb:  ditto.
6535	* test/rdoc/test_rdoc_parser_c.rb:  Test for the above.
6536	* test/rdoc/test_rdoc_store.rb:  ditto.
6537
6538Thu Dec 13 14:20:00 2012  Zachary Scott  <zachary@zacharyscott.net>
6539
6540	* lib/irb*: merge doc from doc/irb/ird.rd and improve overall
6541	  documentation of IRB
6542	* doc/irb/irb.rd: remove stale documentation
6543
6544Thu Dec 13 14:10:00 2012  Shugo Maeda  <shugo@ruby-lang.org>
6545
6546	* marshal.c (r_entry0): don't taint classes and modules because
6547	  Marshal.load just returns the dumped classes and modules.
6548	  [Bug #7325] [ruby-core:49198]
6549
6550	* test/ruby/test_marshal.rb: related test.
6551
6552Thu Dec 13 14:10:13 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
6553
6554	* test/ruby/test_require.rb (TestRequire#test_loaded_features_encoding):
6555	  need to check compatibility, not equality of encodings.
6556
6557Thu Dec 13 14:02:15 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
6558
6559	* file.c (rb_file_join): check encoding compatibility before joining
6560	  strings.
6561
6562Thu Dec 13 13:06:27 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6563
6564	* proc.c (umethod_bind): allow another form of method transplanting
6565	  from a module via UnboundMethod.  [ruby-core:34267][Feature #4254]
6566
6567Thu Dec 13 12:07:25 2012  Shugo Maeda  <shugo@ruby-lang.org>
6568
6569	* include/ruby/ruby.h (RB_UNUSED_VAR): new macro to suppress
6570	  warnings for unused variables.
6571
6572	* ext/bigdecimal/bigdecimal.c (ENTER): use RB_UNUSED_VAR() to
6573	  suppress annoying warnings by -Wunused-but-set-variable in gcc 4.6.
6574
6575Thu Dec 13 11:22:33 2012  Koichi Sasada  <ko1@atdot.net>
6576
6577	* method.h: remove "VM_METHOD_TYPE__MAX" from rb_method_type_t.
6578	  rb_method_type_t is not a number and "_MAX" causes misunderstanding.
6579
6580	* proc.c (rb_method_entry_arity): ditto.
6581
6582	* vm_eval.c (vm_call0_body): ditto.
6583
6584	* vm_insnhelper.c (vm_call_method): ditto.
6585
6586Wed Dec 12 21:40:45 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6587
6588	* lib/tmpdir.rb (Dir::Tmpname#create): deal with a prefix name which
6589	  starts with tilde as a plain name, not expanding as home directory.
6590	  [ruby-core:50793] [Bug #7547]
6591
6592Wed Dec 12 19:48:59 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6593
6594	* ext/json: merge JSON 1.7.5.
6595	  fix tests and other fixes.
6596
6597Wed Dec 12 18:30:29 2012  Shugo Maeda  <shugo@ruby-lang.org>
6598
6599	* class.c (rb_prepend_module): move refined methods from the origin
6600	  of a class to the class, because refinements should have priority
6601	  over prepended modules.
6602
6603	* test/ruby/test_refinement.rb: related test.
6604
6605Wed Dec 12 18:27:09 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6606
6607	* time.c (zone_str): lookup or insert by using st_update() at once.
6608
6609Wed Dec 12 15:30:11 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6610
6611	* configure.in: add -fno-omit-frame-pointer if libexecinfo is used.
6612	  At least on FreeBSD ruby will crash on getting C backtrace
6613	  when it is compiled with other than -O0.
6614
6615	* vm_dump.c: enable backtrace on FreeBSD even if with optimizations.
6616
6617Wed Dec 12 16:08:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6618
6619	* test/rdoc/test_rdoc_rdoc.rb (TestRDocRDoc#test_normalized_file_list_non_file_directory):
6620	  use File::NULL for portability if possible.
6621
6622Wed Dec 12 16:07:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6623
6624	* method.h (rb_method_flag_t): name a magic number for NOEX_SAFE and
6625	  NOEX_WITH as NOEX_SAFE_SHIFT_OFFSET.
6626
6627	* method.h (rb_method_type_t, method_optimized_type): C89 forbids a
6628	  comma after the last element in enum.
6629
6630	* proc.c (rb_method_entry_arity), vm_eval.c (vm_call0_body),
6631	  vm_insnhelper.c (vm_call_method): add VM_METHOD_TYPE__MAX case.
6632
6633Wed Dec 12 14:16:35 2012  Eric Hodel  <drbrain@segment7.net>
6634
6635	* lib/rdoc/class_module.rb:  Added RDoc::ClassModule#documented? which
6636	  checks comment_location.  Hide RDoc::ClassModule#comment=.
6637	* test/rdoc/test_rdoc_class_module.rb:  Test for above.
6638
6639	* lib/rdoc/generator/template/darkfish/_sidebar_table_of_contents.rhtml:
6640	  Fix display of the table of contents in the sidebar.
6641
6642	* lib/rdoc/generator/template/darkfish/table_of_contents.rhtml:
6643	  Use #comment_location when displaying classes or modules.
6644
6645	* test/rdoc/test_rdoc_store.rb:  Use comment_location.
6646
6647Wed Dec 12 13:40:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6648
6649	* vm_insnhelper.c (vm_getivar): no uninitialized instance variables
6650	  warnings for non-object if attr method.
6651
6652Wed Dec 12 06:43:37 2012  Benoit Daloze  <eregontp@gmail.com>
6653
6654	* iseq.c (rb_iseq_parameters): fix limit for optional arguments.
6655
6656	* test/ruby/test_keyword.rb: tests for above.
6657
6658	* vm_core.h (struct rb_iseq_struct): update documentation
6659	  with keyword arguments. [Bug #7540] [ruby-core:50735]
6660
6661Wed Dec 12 03:45:41 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6662
6663	* vm.c (vm_exec): pass exceptions while handling an exception.
6664
6665	* vm_trace.c (rb_threadptr_exec_event_hooks): propagate exceptions.
6666	  revert r38293 partially.
6667
6668Wed Dec 12 03:09:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6669
6670	* sample/test.rb (Progress#initialize): add --verbose option and show
6671	  messages in one line unless --verbose is given.
6672
6673Wed Dec 12 01:47:02 2012  Shugo Maeda  <shugo@ruby-lang.org>
6674
6675	* eval.c (rb_using_refinement): make the method table of an iclass
6676	  for a refinement that of the refinement, not that of the origin of
6677	  the refinement, which is set by rb_include_class_new().  This
6678	  change is needed to make module prepend into a refinement work
6679	  properly.
6680
6681	* test/ruby/test_refinement.rb: related test.
6682
6683Wed Dec 12 01:05:04 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6684
6685	* tool/make-snapshot: add --disable-rubygem to both MINIRUBY and RUBY.
6686	  On making miniprelude.c, it seems use MINIRUBY. this fixes #7541
6687	  but rubygems also needs to be fixed for older rubies.
6688
6689Wed Dec 12 00:32:11 2012  Naohisa Goto  <ngotogenome@gmail.com>
6690
6691	* test/dl/test_func.rb (test_name_with_block, test_bind, test_qsort1):
6692	  call unbind to release the callback closure because maximum number
6693	  of callbacks is limited to DL::MAX_CALLBACK (== 5) with pure DL
6694	  without Fiddle.
6695
6696Wed Dec 12 00:13:34 2012  Naohisa Goto  <ngotogenome@gmail.com>
6697
6698	* ext/dl/lib/dl/func.rb (DL::Function#unbind, #bound?): suppress
6699	  NoMethodError when Fiddle is available. [ruby-core:50756] [Bug #7543]
6700	* test/dl/test_func.rb (test_bound*, test_unbind*): tests for the above.
6701
6702Tue Dec 11 19:38:37 2012  Naohisa Goto  <ngotogenome@gmail.com>
6703
6704	* ext/fiddle/function.c (Fiddle::Function.new): new keyword argument
6705	  :name to set the name attribute.
6706	* ext/fiddle/lib/fiddle/import.rb (import_function, bind_function):
6707	  set function name by using the :name keyword argument.
6708	  Re-fixes r38243. [ruby-core:50566]
6709	* test/fiddle/test_function.rb (test_name): test for the :name keyword
6710	  argument and Fiddle::Function#name.
6711
6712Tue Dec 11 16:57:33 2012  Eric Hodel  <drbrain@segment7.net>
6713
6714	* common.mk:  Added --pages-dir to rdoc creation.  Now doc/ items show
6715	  up at top-level.
6716	* .document:  Moved doc/* entries to doc/.document
6717	* doc/.document:  ditto
6718
6719Tue Dec 11 16:44:37 2012  Eric Hodel  <drbrain@segment7.net>
6720
6721	* lib/rdoc/options.rb:  Added --page-dir option for moving pages in
6722	  doc/ to the top-level.
6723	* lib/rdoc/rdoc.rb:  ditto.
6724	* test/rdoc/test_rdoc_options.rb:  Test for the above.
6725	* test/rdoc/test_rdoc_rdoc.rb:  ditto.
6726
6727Tue Dec 11 15:24:05 2012  Eric Hodel  <drbrain@segment7.net>
6728
6729	* ext/pathname/lib/pathname.rb:  Hide private methods from RDoc.
6730
6731Tue Dec 11 15:11:29 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6732
6733	* tool/make-snapshot (BASERUBY): add --disable-gem to avoid load gems.
6734	  [Bug #7541] [ruby-core:50736]
6735
6736Tue Dec 11 12:00:19 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6737
6738	* ext/dl/win32/extconf.rb: Fix typo
6739	  by Santiago Pastorino <santiago@wyeworks.com>
6740	  https://github.com/ruby/ruby/pull/221 fix GH-221
6741
6742Tue Dec 11 01:53:37 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
6743
6744	* lib/matrix: alias {row|column}_size to {row|column}_count and use
6745	  the latter.
6746	  [Bug #7369] [ruby-core:49409]
6747
6748Tue Dec 11 00:26:58 2012  Shugo Maeda  <shugo@ruby-lang.org>
6749
6750	* fix the behavior when a module is included into a refinement.
6751	  This change is a little tricky, so it might be better to prohibit
6752	  module inclusion to refinements.
6753
6754	* include/ruby/ruby.h (RMODULE_INCLUDED_INTO_REFINEMENT): new flag
6755	  to represent that a module (iclass) is included into a refinement.
6756
6757	* class.c (include_modules_at): set RMODULE_INCLUDED_INTO_REFINEMENT
6758	  if klass is a refinement.
6759
6760	* eval.c (rb_mod_refine): set the superclass of a refinement to the
6761	  refined class for super.
6762
6763	* eval.c (rb_using_refinement): skip the above superclass (the
6764	  refined class) when creating iclasses for refinements.  Otherwise,
6765	  `using Refinement1; using Refinement2' creates iclasses:
6766	  <Refinement2> -> <RefinedClass> -> <Refinement1> -> RefinedClass,
6767	  where <Module> is an iclass for Module, so RefinedClass is
6768	  searched before Refinement1.  The correct iclasses should be
6769	  <Refinement2> -> <Refinement1> -> RefinedClass.
6770
6771	* vm_insnhelper.c (vm_search_normal_superclass): if klass is an
6772	  iclass for a refinement, use the refinement's superclass instead
6773	  of the iclass's superclass.  Otherwise, multiple refinements are
6774	  searched by super.  For example, if a refinement Refinement2
6775	  includes a module M (i.e., Refinement2 -> <M> -> RefinedClass,
6776	  and if refinements iclasses are <Refinement2> -> <M>' ->
6777	  <Refinement1> -> RefinedClass, then super in <Refinement2> should
6778	  use Refinement2's superclass <M> instead of <Refinement2>'s
6779	  superclass <M>'.
6780
6781	* vm_insnhelper.c (vm_search_super_method): do not raise a
6782	  NotImplementError if current_defined_class is a module included
6783	  into a refinement.  Because of the change of
6784	  vm_search_normal_superclass(), the receiver might not be an
6785	  instance of the module('s iclass).
6786
6787	* test/ruby/test_refinement.rb: related test.
6788
6789Mon Dec 10 18:35:25 2012  Shugo Maeda  <shugo@ruby-lang.org>
6790
6791	* vm_method.c (rb_method_entry_without_refinements): use
6792	  rb_resolve_refined_method() to search superclasses if
6793	  me->def->orig_me is 0.  This change fixes make test-all
6794	  TESTS="json ruby/test_refinement.rb".
6795
6796	* test/ruby/test_refinement.rb: related test.
6797
6798Mon Dec 10 17:59:07 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
6799
6800	* ext/fiddle/win32/*: library ports from DL to Fiddle.
6801
6802	* ext/dl/win32/extconf.rb: check fiddle.  often case dl compiled prior
6803	  to fiddle, so this change is no meaning.  in most cases, simply
6804	  fiddle/win32 overwrite dl/win32.
6805
6806Mon Dec 10 15:23:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6807
6808	* vm_trace.c (rb_threadptr_exec_event_hooks): exceptions in event
6809	  hooks should not propagate outside.
6810
6811Mon Dec 10 15:11:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6812
6813	* compile.c (iseq_compile_each): count flip-flop state in local iseq
6814	  not in each iseqs, so that the keys can be other than hidden
6815	  strings.  [ruby-core:47253] [Bug #6899]
6816
6817	* vm_insnhelper.c (lep_svar_get, lep_svar_set, vm_getspecial): store
6818	  flip-flop states in an array instead of a hash.
6819
6820	* iseq.c (set_relation): main iseq also can has local scope.
6821
6822Mon Dec 10 10:36:12 2012  Narihiro Nakamura  <authornari@gmail.com>
6823
6824	* lib/irb/magic-file.rb: set a encoding, which is detected from
6825	  the file to read, to the internal encoding.
6826	  [Bug #4281][ruby-dev:43036]
6827
6828Mon Dec 10 09:40:19 2012  Eric Hodel  <drbrain@segment7.net>
6829
6830	* lib/rubygems/ext/cmake_builder.rb:  Added a builder for cmake.
6831	* lib/rubygems/ext.rb:  ditto.
6832	* lib/rubygems/installer.rb:  ditto.
6833	* test/rubygems/test_gem_ext_cmake_builder.rb:  Test for above.
6834
6835Mon Dec 10 09:13:08 2012  Eric Hodel  <drbrain@segment7.net>
6836
6837	* lib/rubygems/package.rb:  Omit directories when packaging gems like
6838	  RubyGems 1.8.x
6839	* test/rubygems/test_gem_package.rb:  Test for above.
6840
6841Sun Dec  9 17:36:59 2012  Shugo Maeda  <shugo@ruby-lang.org>
6842
6843	* vm_insnhelper.c (vm_call_opt_send): Kernel#send should not use
6844	  refinements.
6845
6846	* proc.c (mnew): Kernel#method, Kernel#public_method,
6847	  Module#instance_method, and Module#public_instance_method should
6848	  not use refinements.
6849
6850	* vm_method.c (rb_method_boundp): Kernel#respond_to? should not use
6851	  refinements.
6852
6853	* test/ruby/test_refinement.rb: related test.
6854
6855Sun Dec  9 06:19:04 2012  Eric Hodel  <drbrain@segment7.net>
6856
6857	* lib/rdoc/markdown/entities.rb:  Added documentation.
6858
6859	* lib/rdoc/parser/ruby.rb:  Updated style
6860
6861	* lib/rdoc/ruby_lex.rb:  Parse characters up to \u{FFFFF}
6862	* test/rdoc/test_rdoc_ruby_lex.rb:  Test for above.
6863
6864Sat Dec  8 22:38:35 2012  Shugo Maeda  <shugo@ruby-lang.org>
6865
6866	* eval.c (rb_mod_refine): don't override Module#include.  It's
6867	  unnecessary now because refinements are activated only in refine
6868	  blocks.
6869
6870Sat Dec  8 22:33:26 2012  Shugo Maeda  <shugo@ruby-lang.org>
6871
6872	* eval.c: remove Module#refinements.
6873
6874	* test/ruby/test_refinement.rb: remove tests for Module#refinements.
6875
6876Sat Dec  8 13:17:55 2012  Shugo Maeda  <shugo@ruby-lang.org>
6877
6878	* eval.c (top_using): raise a RuntimeError if using is called in a
6879	  module definition or a method definition.
6880
6881	* test/ruby/test_refinement.rb: related test.
6882
6883Sat Dec  8 15:01:35 2012  Eric Hodel  <drbrain@segment7.net>
6884
6885	* lib/rubygems/commands/cleanup_command.rb:  Skip default gems when
6886	  cleaning up.
6887	* test/rubygems/test_gem_commands_cleanup_command.rb:  Test for above.
6888
6889	* lib/rubygems/commands/query_command.rb:  Fixed listing remote gems.
6890
6891	* lib/rubygems/dependency_installer.rb:  Ignore non-files when looking
6892	  for local gems.
6893	* test/rubygems/test_gem_dependency_installer.rb:  Test for above.
6894
6895	* lib/rubygems/uninstaller.rb:  The user must confirm uninstalling gems
6896	  that have dependencies.
6897	* test/rubygems/test_gem_uninstaller.rb:  Test for above.
6898
6899	* lib/rubygems.rb (module Gem):  Updated version.
6900
6901	* test/rubygems/*.pem:  Updated to run in FIPS mode.
6902	* test/rubygems/test_gem_security.rb:  ditto.
6903	* test/rubygems/test_gem_security_signer.rb:  ditto.
6904
6905Sat Dec  8 12:34:01 2012  Shugo Maeda  <shugo@ruby-lang.org>
6906
6907	* vm_insnhelper.c (vm_search_normal_superclass): super in a
6908	  refinement always uses the refined class as its superclass.
6909
6910	* test/ruby/test_refinement.rb: related test.
6911
6912Sat Dec  8 11:59:59 2012  Shugo Maeda  <shugo@ruby-lang.org>
6913
6914	* eval.c (rb_mod_refine): raise an ArgumentError if a given
6915	  block is of a Proc object.
6916
6917	* vm_insnhelper.c (vm_call_method): store refined methods in inline
6918	  cache to improve performance.  It's safe now because blocks cannot
6919	  be yielded with different refinements in the new specification.
6920
6921	* test/ruby/test_refinement.rb: related test.
6922
6923Sat Dec  8 11:17:53 2012  Shugo Maeda  <shugo@ruby-lang.org>
6924
6925	* eval.c (rb_mod_refine), vm_eval.c (rb_yield_refine_block):
6926	  Module#refine activates all refinements defined in that module
6927	  only in a given block.
6928
6929	* string.c (sym_to_proc, sym_call): don't use refinements.
6930
6931	* test/ruby/test_refinement.rb: related test.
6932
6933Sat Dec  8 09:24:42 2012  Eric Hodel  <drbrain@segment7.net>
6934
6935	* ext/openssl/ossl_x509name.c:  Completed documentation for
6936	  OpenSSL::X509::Name.
6937
6938Sat Dec  8 07:57:12 2012  Koichi Sasada  <ko1@atdot.net>
6939
6940	* ext/objspace/objspace.c (iow_size): return size of internal object
6941	  for ObjectSpace.memsize_of().
6942
6943	* test/objspace/test_objspace.rb: add a test.
6944
6945Tue Dec 08 02:39:23 2012  James Edward Gray II  <james@graysoftinc.com>
6946
6947	* lib/csv.rb: A fix for row comparison by Stephen Wattam.  [Bug #7528]
6948
6949Sat Dec  8 01:27:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6950
6951	* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): no need to
6952	  check all reports.
6953
6954Sat Dec  8 00:10:34 2012  Shugo Maeda  <shugo@ruby-lang.org>
6955
6956	* vm_eval.c (yield_under, eval_under): do not activate refinements
6957	  of the receiver in module_eval and instance_eval.
6958
6959	* eval.c (ruby_Init_refinement): undef Class#refine.
6960
6961	* eval.c (ruby_Init_refinement): remove Module#using.
6962
6963	* eval.c (ruby_Init_refinement): main.using should be private.
6964
6965	* eval.c (rb_mod_refine): the argument of Module#refine should not
6966	  be a module.
6967
6968	* insns.def (defineclass): do not activate refinements in a class or
6969	  module.
6970
6971Fri Dec  7 23:42:11 2012  Shugo Maeda  <shugo@ruby-lang.org>
6972
6973	* ext/refinement/refinement.c: include ruby/ruby.h instead of the
6974	  declaration of rb_warn().
6975
6976Fri Dec  7 16:07:00 2012  Zachary Scott  <zachary@zacharyscott.net>
6977
6978	* doc/etc.rd: Removed stale documentation file
6979	* ext/etc/etc.c:  Merged documentation from doc/etc.rd and updated
6980	  rdoc, added documentation for Etc::Passwd and Etc::Group
6981
6982Fri Dec  7 16:00:57 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
6983
6984	* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): no need to
6985	  retry skipped test.  this fix makes 40% faster the whole test-all
6986	  with -j5 on Windows.
6987
6988Fri Dec  7 14:22:29 2012  Eric Hodel  <drbrain@segment7.net>
6989
6990	* lib/rdoc/markup/to_joined_paragraph.rb:  Completed documentation
6991	* lib/rdoc/parser/c.rb:  ditto
6992	* lib/rdoc/parser/changelog.rb:  ditto
6993	* lib/rdoc/servlet.rb:  ditto
6994	* lib/rdoc/store.rb:  ditto
6995
6996	* lib/rdoc/store.rb:  Improved HTML error page.  Completed
6997	  documentation
6998
6999	* lib/rdoc/parser/ruby.rb:  Fixed bug attaching a comment to A::B = 42
7000	* test/rdoc/test_rdoc_parser_ruby.rb:  Test for above
7001
7002	* test/rdoc/test_rdoc_comment.rb:  Removed garbage
7003
7004Fri Dec  7 14:03:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7005
7006	* lib/timeout.rb (Timeout#timeout): since async_interrupt_timing
7007	  re-raises a deferred exception, replace the timeout exception with
7008	  Timeout::Error after it.  [Bug #7503]
7009
7010Fri Dec  7 13:07:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7011
7012	* doc/forwardable.rd: Remove stale documentation file
7013	* lib/forwardable.rb: Merge documentation from doc/forwardable.rd
7014
7015Fri Dec  7 09:47:35 2012  NARUSE, Yui  <naruse@ruby-lang.org>
7016
7017	* time.c (time_mdump): dump timezone string to private instance variable
7018	  on marshaling.
7019
7020	* time.c (time_mload): load timezone string from private instance
7021	  variable named 'zone'.
7022
7023Fri Dec  7 01:15:07 2012  Naohisa Goto  <ngotogenome@gmail.com>
7024
7025	* ext/fiddle/lib/fiddle/function.rb (Fiddle::Function#name): new
7026	  attribute needed to switch Win32::Registry from DL to Fiddle.
7027
7028	* ext/fiddle/lib/fiddle/import.rb (import_function, bind_function):
7029	  set function name to the returned Fiddle::Function object.
7030
7031Fri Dec  7 00:11:44 2012  Shugo Maeda  <shugo@ruby-lang.org>
7032
7033	* test/ruby/test_refinement.rb: fix some tests to use neither
7034	  Module#using nor Module#module_eval.
7035
7036Thu Dec  6 23:27:50 2012  Shugo Maeda  <shugo@ruby-lang.org>
7037
7038	* eval.c (ruby_Init_refinement): a new function to enable
7039	  Refinements with a warning "Refinements are experimental...".
7040
7041	* ext/refinement/refinement.c, ext/refinement/extconf.rb: a new
7042	  extension library to enable Refinements.
7043
7044Thu Dec  6 18:23:05 2012  Shugo Maeda  <shugo@ruby-lang.org>
7045
7046	* revised r37993 to avoid SEGV/ILL in tests.  In r37993, a method
7047	  entry with VM_METHOD_TYPE_REFINED holds only the original method
7048	  definition, so ci->me is set to a method entry allocated in the
7049	  stack, and it causes SEGV/ILL.  In this commit, a method entry
7050	  with VM_METHOD_TYPE_REFINED holds the whole original method entry.
7051	  Furthermore, rb_thread_mark() is changed to mark cfp->klass to
7052	  avoid GC for iclasses created by copy_refinement_iclass().
7053
7054	* vm_method.c (rb_method_entry_make): add a method entry with
7055	  VM_METHOD_TYPE_REFINED to the class refined by the refinement if
7056	  the target module is a refinement.  When a method entry with
7057	  VM_METHOD_TYPE_UNDEF is invoked by vm_call_method(), a method with
7058	  the same name is searched in refinements.  If such a method is
7059	  found, the method is invoked.  Otherwise, the original method in
7060	  the refined class (rb_method_definition_t::body.orig_me) is
7061	  invoked.  This change is made to simplify the normal method lookup
7062	  and to improve the performance of normal method calls.
7063
7064	* vm_method.c (EXPR1, search_method, rb_method_entry),
7065	  vm_eval.c (rb_call0, rb_search_method_entry): do not use
7066	  refinements for method lookup.
7067
7068	* vm_insnhelper.c (vm_call_method): search methods in refinements if
7069	  ci->me is VM_METHOD_TYPE_REFINED.  If the method is called by
7070	  super (i.e., ci->call == vm_call_super_method), skip the same
7071	  method entry as the current method to avoid infinite call of the
7072	  same method.
7073
7074	* class.c (include_modules_at): add a refined method entry for each
7075	  method defined in a module included in a refinement.
7076
7077	* class.c (rb_prepend_module): set an empty table to
7078	  RCLASS_M_TBL(klass) to add refined method entries, because
7079	  refinements should have priority over prepended modules.
7080
7081	* proc.c (mnew): use rb_method_entry_with_refinements() to get
7082	  a refined method.
7083
7084	* vm.c (rb_thread_mark): mark cfp->klass for iclasses created by
7085	  copy_refinement_iclass().
7086
7087	* vm.c (Init_VM), cont.c (fiber_init): initialize th->cfp->klass.
7088
7089	* test/ruby/test_refinement.rb (test_inline_method_cache): do not skip
7090	  the test because it should pass successfully.
7091
7092	* test/ruby/test_refinement.rb (test_redefine_refined_method): new
7093	  test for the case a refined method is redefined.
7094
7095Thu Dec  6 17:29:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7096
7097	* parse.y (parser_here_document): flush string content between new
7098	  line and :string_embexpr.  [ruby-core:48703] [Bug #7255]
7099
7100Thu Dec  6 16:35:21 2012  Eric Hodel  <drbrain@segment7.net>
7101
7102	* test/rake/helper.rb:  Load envutil correctly.  Removed useless rescue
7103	  for signal propagation tests
7104	* lib/rake/file_utils.rb:  Prefer the built ruby.
7105	* test/rake/test_rake_functional.rb:  ditto
7106
7107Thu Dec  6 15:20:34 2012  Eric Hodel  <drbrain@segment7.net>
7108
7109	* lib/rdoc/context.rb:  Don't warn for duplicate methods while loading.
7110	* test/rdoc/test_rdoc_context.rb:  Test for above.
7111
7112Thu Dec  6 14:26:22 2012  Eric Hodel  <drbrain@segment7.net>
7113
7114	* lib/rubygems/command_manager.rb:  Removed string concatenation
7115	  syntax.  [Bug #6265]
7116	* lib/rubygems/commands/install_command.rb:  ditto
7117	* lib/rubygems/commands/uninstall_command.rb:  ditto
7118	* lib/rubygems/indexer.rb:  ditto
7119	* lib/rubygems/security/policy.rb:  ditto
7120	* lib/rubygems/security.rb:  ditto
7121	* lib/rubygems/uninstaller.rb:  ditto
7122	* test/rubygems/test_gem_commands_cert_command.rb:  ditto
7123	* test/rubygems/test_gem_package.rb:  ditto
7124	* test/rubygems/test_gem_security.rb:  ditto
7125	* test/rubygems/test_gem_security_policy.rb:  ditto
7126
7127Thu Dec  6 14:10:08 2012  Eric Hodel  <drbrain@segment7.net>
7128
7129	* lib/rubygems/package.rb:  Set rubygems_version before validation.
7130	  Fixes issue with bundler.
7131	* test/rubygems/test_gem_package.rb:  Test for above.
7132
7133	* lib/rubygems/remote_fetcher.rb:  Only update the cache when we have
7134	  permission.  [ruby-trunk - Bug #7509]
7135	* lib/rubygems/source.rb (class Gem):  ditto
7136	* test/rubygems/test_gem_remote_fetcher.rb:  Test for above.
7137	* lib/rubygems/test_utilities.rb:  ditto
7138
7139	* lib/rubygems/specification.rb:  Derive base_dir properly for default
7140	  gems.  [ruby-trunk - Bug #7496]
7141	* test/rubygems/test_gem_specification.rb:  Test for above.
7142
7143	* lib/rubygems.rb:  Untaint Dir.pwd when searching for gemdeps files
7144	  for operation under $SAFE=1
7145
7146Thu Dec 06 12:07:11 2012  Koichi Sasada  <ko1@atdot.net>
7147
7148	* vm_trace.c: TracePoint#enable should not cause an error
7149	  when it is already enabled. TracePoint#disable is too.
7150	  [ruby-core:50561] [ruby-trunk - Bug #7513]
7151
7152	* test/ruby/test_settracefunc.rb: add tests.
7153
7154Thu Dec  6 07:19:58 2012  Eric Hodel  <drbrain@segment7.net>
7155
7156	* lib/rdoc*:  Improved display of ChangeLog files as HTML.
7157	* test/rdoc*:  Test for above.
7158
7159Thu Dec  6 04:34:19 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7160
7161	* thread.c (rb_uninterruptible): helper function for providing
7162	  temporary async_interrupt_timing(Object => :defer)
7163
7164	* io.c (rb_f_p): use rb_uninterruptible.
7165	* io.c (rb_f_p_internal): helper function for rb_f_p().
7166	* io.c (struct rb_f_p_arg): new struct for rb_f_p_internal.
7167
7168	* test/ruby/test_thread.rb (test_async_interrupt_and_p): test for
7169	  the above.
7170
7171Thu Dec  6 04:27:10 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7172
7173	* io.c (io_binwrite): check interrupt before io issue.
7174	* test/ruby/test_thread.rb (test_async_interrupt_and_io):
7175	  test for the above.
7176
7177Thu Dec  6 01:10:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7178
7179	* vm_eval.c (rb_method_call_status): use Qundef as no self instead of
7180	  the current self.
7181
7182	* vm_eval.c (send_internal): public_send does not consider how it is
7183	  called, as mentioned in r14173.  patched by charliesome (Charlie
7184	  Somerville).  [ruby-core:50489] [Bug #7499]
7185
7186Wed Dec  5 23:50:23 2012  Narihiro Nakamura  <authornari@gmail.com>
7187
7188	* gc.c (getrusage_time): uses clock_gettime() with
7189	  CLOCK_PROCESS_CPUTIME_ID when available, which provides a 1ns
7190	  precision on linux. [ruby-core:50495] [Bug #7500]
7191	  patched by Aman Gupta.
7192
7193Wed Dec  5 22:46:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7194
7195	* vm.c (rb_vm_make_proc): save the proc made from the given block so
7196	  that it will not get collected.  [ruby-core:50545] [Bug #7507]
7197
7198Wed Dec  5 22:13:57 2012  Naohisa Goto  <ngotogenome@gmail.com>
7199
7200	* ext/dl/lib/dl/func.rb (DL::Function#bind): When Fiddle is used,
7201	  @ptr should be updated. This fixes SEGV raised in DL::Function#call
7202	  after calling DL::Function#bind. [Bug #7516] [ruby-dev:46708]
7203
7204	* test/dl/test_func.rb (test_bind): test for the above
7205
7206Wed Dec  5 18:53:00 2012  Masaya Tarui  <tarui@ruby-lang.org>
7207
7208	* thread.c (rb_thread_s_async_interrupt_timing): have to check ints
7209	  before jumping out.
7210	* test/ruby/test_thread.rb (test_async_interrupt_with_return): add test
7211	  rescue has to catch a queued async exception at the time of return.
7212	* test/ruby/test_thread.rb (test_async_interrupt_with_break): add test
7213	  rescue has to catch a queued async exception at the time of break.
7214
7215Wed Dec  5 16:54:28 2012  Koichi Sasada  <ko1@atdot.net>
7216
7217	* test/ruby/memory_status.rb: suppress warning.
7218	  A patch from NAKAMURA Usaku.
7219
7220Wed Dec  5 16:06:54 2012  Eric Hodel  <drbrain@segment7.net>
7221
7222	* lib/rdoc/parser/changelog.rb:  Parse more ChangeLog file variations.
7223	* test/rdoc/test_rdoc_parser_changelog.rb:  Test for above.
7224
7225Wed Dec  5 12:17:11 2012  Naohisa Goto  <ngotogenome@gmail.com>
7226
7227	* ext/dl/lib/dl/func.rb (DL::Function#initialize, DL::Function#bind):
7228	  ABI should be set by using CFunc#calltype even when Fiddle is used.
7229	  When Fiddle is used and a block is given, name should not be ignored.
7230	  [ruby-core:50562] [Bug #7514]
7231
7232	* ext/dl/lib/dl/import.rb (DL::Importer#bind_function): should respect
7233	  abi and name when Fiddle is used.
7234
7235	* test/dl/test_func.rb (test_name_with_block): test for "name" method
7236	  with giving a block.
7237
7238Wed Dec  5 11:55:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7239
7240	* doc/shell.rd, doc/shell.rd.ja: Removed stale doc files
7241	* lib/shell.rb, lib/shell/*: Merge and updates docs from doc/shell.rd*
7242
7243Wed Dec  5 11:42:38 2012  Koichi Sasada  <ko1@atdot.net>
7244
7245	* test/ruby/test_settracefunc.rb: disable trace.
7246
7247Wed Dec  5 11:37:37 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7248
7249	* lib/mkmf.rb (MakeMakefile#macro_defined?): use clearly different
7250	  strings from conflict markers.
7251
7252Wed Dec  5 04:25:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7253
7254	* lib/README: Add rdoc modeline directive and formatting libs
7255
7256Wed Dec  5 04:04:02 2012  Masaya Tarui  <tarui@ruby-lang.org>
7257
7258	* test/ruby/test_thread.rb (test_async_interrupt_blocking): bugfix
7259	  about deferred check
7260
7261Wed Dec  5 03:35:37 2012  Masaya Tarui  <tarui@ruby-lang.org>
7262
7263	* vm_core.h (RUBY_VM_CHECK_INTS_BLOCKING): check async queue everytime.
7264	* thread.c (sleep_forever): check RUBY_VM_CHECK_INTS_BLOCKING first.
7265	* thread.c (sleep_timeval): ditto.
7266	* test/ruby/test_thread.rb (test_async_interrupt_blocking): add a test
7267	  exceptions are correctly deferred and raised on :on_blocking context.
7268
7269Wed Dec  5 02:36:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7270
7271	* common.mk, defs/id.def, template/id.c.tmpl: generate id.c as well as id.h.
7272
7273Wed Dec  5 00:56:21 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7274
7275	* thread.c (rb_mutex_owned_p): new method that return current
7276	  thread have the target mutex or not. [Feature #7505] [ruby-dev:46697]
7277	* test/ruby/test_thread.rb (test_mutex_owned, test_mutex_owned2):
7278	  test for the above.
7279	* NEWS: new for the above.
7280
7281Wed Dec  5 00:05:47 2012  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
7282
7283	* lib/erb.rb (make_compiler, add_put_cmd, add_insert_cmd): extract
7284	  methods.
7285
7286Tue Dec  4 18:21:04 2012  Naohisa Goto  <ngotogenome@gmail.com>
7287
7288	* test/ruby/memory_status.rb (Memory): use fiddle/types if available.
7289
7290	* test/ruby/memory_status.rb (Memory::Win32): :stdcall is needed on
7291	  x86 WIN32. This commit partly reverts r38054.
7292
7293Tue Dec  4 18:05:58 2012  Naohisa Goto  <ngotogenome@gmail.com>
7294
7295	* ext/fiddle/lib/fiddle/types.rb: copied from ext/dl/lib/dl/types.rb
7296	  and modified for Fiddle, needed for migration from DL to Fiddle.
7297
7298Tue Dec  4 17:57:09 2012  Naohisa Goto  <ngotogenome@gmail.com>
7299
7300	* ext/fiddle/lib/fiddle/import.rb (import_function, bind_function):
7301	  should respect call_type for migration from DL to Fiddle.
7302	  [Bug #7484] [ruby-core:50405]
7303
7304Tue Dec  4 16:54:00 2012  Eric Hodel  <drbrain@segment7.net>
7305
7306	* .document:  Added ChangeLog and doc/ChangeLog-* as documentation
7307
7308Tue Dec  4 16:47:46 2012  Eric Hodel  <drbrain@segment7.net>
7309
7310	* lib/rdoc/parser/changelog.rb:  Added a ChangeLog parser to RDoc.
7311	* lib/rdoc/parser.rb:  ditto
7312	* test/rdoc/test_rdoc_parser_changelog.rb:  Test for above.
7313
7314Tue Dec  4 16:23:32 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7315
7316	* marshal.c (path2class, path2module): use PRIsVALUE.
7317
7318	* marshal.c (w_object, marshal_dump, marshal_load): use
7319	  rb_check_funcall if possible.
7320
7321	* marshal.c (w_object, marshal_dump, r_object0, marshal_load): use
7322	  RB_GC_GUARD() (directly or indirectly) instead of volatile.
7323
7324	* variable.c (rb_path_to_class): prevent the argument from GC.
7325
7326Tue Dec 04 13:55:07 2012  Koichi Sasada  <ko1@atdot.net>
7327
7328	* vm_opts.h: enable optimization - operand unification.
7329	  Operand unification technique enable to combine
7330	  an instruction and specific operands and make new
7331	  instruction.
7332
7333	* defs/opt_operand.def: add several configuration
7334	  of operand unification.
7335
7336	* insns.def: use `int' instead to suppress warning.
7337
7338Mon Dec  3 17:58:53 2012  NARUSE, Yui  <naruse@ruby-lang.org>
7339
7340	* parse.y: replace parser->enc with current_enc.
7341
7342Tue Dec  4 08:33:46 2012  Eric Hodel  <drbrain@segment7.net>
7343
7344	* README.EXT:  Converted to RDoc format
7345	* README.EXT.ja:  ditto
7346
7347Tue Dec  4 08:32:10 2012  Eric Hodel  <drbrain@segment7.net>
7348
7349	* lib/rdoc/ri/driver.rb:  Fixed ri page display for files with
7350	  extensions.
7351	* test/rdoc/test_rdoc_ri_driver.rb:  Test for above
7352
7353Tue Dec  4 04:11:50 2012  Eric Hodel  <drbrain@segment7.net>
7354
7355	* .document:  Add NEWS for `ri ruby:NEWS`
7356	* NEWS:  Set format as rdoc
7357	* doc/NEWS-1.8.7:  ditto
7358	* doc/NEWS-1.9.1:  ditto
7359	* doc/NEWS-1.9.2:  ditto
7360	* doc/NEWS-1.9.3:  ditto
7361
7362Mon Dec  3 20:37:22 2012  Koichi Sasada  <ko1@atdot.net>
7363
7364	* vm_exec.c: check VM_COLLECT_USAGE_DETAILS.
7365
7366Mon Dec  3 20:28:02 2012  Koichi Sasada  <ko1@atdot.net>
7367
7368	* compile.c (iseq_specialized_instruction):
7369	  change condition of using `opt_send_simple'.
7370	  More method invocations can be simple.
7371
7372Mon Dec  3 20:03:38 2012  Koichi Sasada  <ko1@atdot.net>
7373
7374	* test/ruby/test_objectspace.rb: skip RuntimeError
7375	  which says a message "can't modify frozen File".
7376	  Is that correct behavior?
7377
7378Mon Dec 03 20:00:19 2012  Koichi Sasada  <ko1@atdot.net>
7379
7380	* vm_exec.c: vm_analysis_insn should be static.
7381
7382Mon Dec  3 19:10:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7383
7384	* random.c (Init_Random), rational.c (Init_Rational): make marshal
7385	  methods private.  [Feature #6539]
7386
7387Mon Dec  3 18:29:27 2012  Koichi Sasada  <ko1@atdot.net>
7388
7389	* iseq.h: iseq_catch_table_entry::catch_type should be
7390	  Fixnum because they are pushed into Array in a compiler.
7391	  [Bug #7502]
7392
7393	* test/ruby/test_objectspace.rb: add a test of this issue.
7394
7395Mon Dec  3 18:25:16 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7396
7397	* template/id.h.tmpl (preserved_ids): "empty?" is not an attribute name.
7398
7399Mon Dec  3 16:23:09 2012  Koichi Sasada  <ko1@atdot.net>
7400
7401	* vm_backtrace.c (vm_backtrace_to_ary): check negative size (2nd arg).
7402
7403Mon Dec  3 15:50:33 2012  Akinori MUSHA  <knu@iDaemons.org>
7404
7405	* misc/ruby-additional.el (ruby-mode-set-encoding): Unbreak by
7406	  fixing a typo, s/set/setq/.
7407
7408Mon Dec  3 14:14:19 2012  Koichi Sasada  <ko1@atdot.net>
7409
7410	* compile.c (iseq_compile_each): joke shouldn't use id.h defined ids.
7411
7412	* id.c (Init_id): ditto.
7413
7414	* common.mk: fix dependency.
7415
7416Mon Dec  3 12:43:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7417
7418	* misc/ruby-mode.el (ruby-block-end-re, ruby-delimiter)
7419	  (ruby-mode-syntax-table, ruby-parse-partial, ruby-beginning-of-indent):
7420	  merge from Emacs.
7421
7422	* misc/ruby-mode.el (ruby-calculate-indent): fix indentation of
7423	  argument lines in parentheses.  [Bug #5140]
7424
7425Mon Dec  3 07:52:41 2012  Eric Hodel  <drbrain@segment7.net>
7426
7427	* lib/rdoc/parser.rb:  Improved modeline support.  Patch by nobu.
7428	* test/rdoc/test_rdoc_parser.rb:  Test for above.
7429
7430Sun Dec  3 00:06:00 2012  Kenta Murata  <mrkn@mrkn.jp>
7431
7432	* ext/bigdecimal/bigdecimal.c (BigDecimal_new): stop checking string
7433	  taintness.  [Bug #5508] [ruby-core:40510]
7434
7435Sun Dec  2 19:26:47 2012  Masaya Tarui  <tarui@ruby-lang.org>
7436
7437	* thread.c (RB_GC_SAVE_MACHINE_CONTEXT, rb_gc_save_machine_context):
7438	  extract rb_gc_save_machine_context to RB_GC_SAVE_MACHINE_CONTEXT.
7439	  NOTE: machine_regs and machine_stack_end must be set in current scope.
7440
7441Sun Dec  2 18:46:24 2012  Koichi Sasada  <ko1@atdot.net>
7442
7443	* array.c, enum.c, insns.def, io.c, numeric.c, parse.y, process.c,
7444	  range.c: use prepared IDs.
7445	  A patch from charliesome (Charlie Somerville).
7446	  [Bug #7495]
7447
7448	* common.mk: add dependency to id.h.
7449
7450	* common.mk: replace ID_H_INCLUDES with id.h.
7451
7452Sun Dec  2 16:48:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7453
7454	* lib/weakref.rb (rdoc): Clean up usage, add example,
7455	  note ArgumentError on WeakRef.new
7456
7457Sun Dec  2 16:45:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7458
7459	* gc.c (WeakMap): Add doc for internal reference, use lib/weakref.rb
7460
7461Sun Dec  2 07:24:23 2012  Eric Hodel  <drbrain@segment7.net>
7462
7463	* lib/rdoc/parser.rb:  Parse files with a -*- rdoc -*- modeline
7464	* test/rdoc/test_rdoc_parser.rb:  Test for above
7465
7466Sun Dec  2 06:02:00 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7467
7468	* gc.h (SET_MACHINE_STACK_END): add volatile for preventing
7469	  harmful optimization.  [ruby-dev:46665] [Bug #7468]
7470
7471Sun Dec  2 05:01:58 2012  Koichi Sasada  <ko1@atdot.net>
7472
7473	* iseq.c (rb_iseq_line_trace_each): iterate `line' event only.
7474
7475	* test/ruby/test_iseq.rb: add a test for this change.
7476
7477Sun Dec  2 02:46:04 2012  Koichi Sasada  <ko1@atdot.net>
7478
7479	* vm_trace.c: add TracePoint#inspect.
7480
7481	* test/ruby/test_settracefunc.rb: add a test for this change.
7482
7483Sat Dec  1 21:18:19 2012  Koichi Sasada  <ko1@atdot.net>
7484
7485	* test/ruby/test_backtrace.rb: add a test for
7486	  Thread::Backtrace::Location#inspect.
7487	  BTW, tests for `caller_locations' are not enough.
7488	  Any volunteers are welcome.
7489
7490Sat Dec  1 21:06:58 2012  Koichi Sasada  <ko1@atdot.net>
7491
7492	* vm_backtrace.c (location_inspect_m): add
7493	  Thread::Backtrace::Location#inspect.
7494	  It same as loc_obj.to_s.inspect.
7495
7496Sat Dec  1 19:24:09 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7497
7498	* io.c (rb_io_puts): recurse for the argument itself, not converted
7499	  array elements.  [ruby-core:42444] [Bug #5986]
7500
7501Sat Dec  1 19:01:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7502
7503	* marshal.c (w_object, r_object0): call private marshal methods.
7504	  [Feature #6539]
7505
7506Sat Dec  1 18:52:22 2012  Eric Hodel  <drbrain@segment7.net>
7507
7508	* lib/rubygems/commands/cleanup_command.rb:  Fix cleanup command for
7509	  multiple gems.  [ruby-trunk - #7481] by Kouhei Sutou
7510	* test/rubygems/test_gem_commands_cleanup_command.rb:  Test for above.
7511	* lib/rubygems.rb:  Autoload Gem::Source to prevent test failures
7512
7513Sat Dec  1 18:17:00 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7514
7515	* complex.c (Init_Complex), time.c (Init_Time): make marshal methods
7516	  private.  [Feature #6539]
7517
7518	* object.c (Init_Object): make remove_instance_variable public.
7519	  [Feature #6539]
7520
7521	* id.c (Init_id), template/id.h.tmpl: add initialize_{copy,clone,dup}
7522	  and respond_to_missing?.
7523
7524	* vm_method.c (rb_method_entry_make): make above methods private.
7525	  [Feature #6539]
7526
7527Sat Dec  1 16:40:22 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7528
7529	* test/ruby/test_thread.rb: move ConditionVariable related test
7530	  into test/thread/test_cv.rb.
7531	* test/thread/test_cv.rb: new file.
7532	* test/thread/test_cv.rb (test_condvar_empty_signal): new tests.
7533	* test/thread/test_cv.rb (test_condvar_empty_broadcast): ditto.
7534
7535Sat Dec  1 15:14:25 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7536
7537	* test/ruby/test_thread.rb (test_cv_wait_deadlock): enable
7538	  cv deadlock test.
7539
7540Sat Dec  1 14:23:33 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7541
7542	* lib/thread.rb (ConditionVariable): use hash instead of array for
7543	  @waiters.
7544	* test/thread/test_queue.rb (test_sized_queue_and_wakeup): remove
7545	  a test because @waiters no longer have a chance to duplicated. Now it's
7546	  a hash.
7547
7548Sat Dec  1 17:16:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7549
7550	* misc/ruby-electric.el (ruby-electric-curlies): use kill-region
7551	  instead of interactive command delete-backward-char.
7552
7553Sat Dec  1 17:12:55 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7554
7555	* misc/inf-ruby.el (inferior-ruby-mode): fix the
7556	  compilation-shell-minor-mode configuration.  a patch by
7557	  j2petkov (Jean-Christophe Petkovich) in [ruby-core:46518].
7558	  [Bug #6742]
7559
7560Sat Dec  1 15:05:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7561
7562	* dir.c (glob_helper): use NAMLEN() to tell the length of d_name
7563	  instead of strlen(), which can access beyond the boundary.
7564
7565Sat Dec  1 13:48:13 2012  Eric Hodel  <drbrain@segment7.net>
7566
7567	* lib/rubygems/specification.rb:  Don't add default gems to $LOAD_PATH
7568	  as they are already there.
7569
7570Sat Dec  1 12:22:17 2012  Kouhei Sutou  <kou@cozmixng.org>
7571
7572	* re-added r38053 that is reverted by r38061. Problems by r38053
7573	  are resolved by r38096. r38096 removed GEM_SKIP configuration.
7574
7575	  The below is ChangeLog of r38053:
7576
7577	* defs/default_gems: Add base directory column.
7578
7579	* tool/rbinstall.rb:
7580	  - Install .gemspecs of default gem to
7581	    #{GEM_HOME}/specifications/default/.
7582	  - Update files parameter of .gemspecs by relative path from
7583	    library directory.
7584
7585Sat Dec  1 11:09:12 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7586
7587	* variable.c (rb_class_path_no_cache): add a function to get the class
7588	  path without caching the computed path. Some classes are frozen, and
7589	  will raise an exception without this.
7590
7591	* probes.d (cmethod-entry, cmethod-return): separate cmethods from
7592	  regular methods to match set trace func.
7593
7594	* probes_helper.h: refactor macros.  Fix probes to avoid calling
7595	  #inspect when profiling.
7596
7597	* insns.def: update for use with new macros.
7598
7599	* vm_eval.c: ditto
7600
7601	* vm_insnhelper.c: ditto
7602
7603	* test/dtrace/test_singleton_function.rb: fix test for new output.
7604
7605	* test/dtrace/test_cmethod.rb: test the cmethod probes.
7606
7607Sat Dec  1 09:44:16 2012  Eric Hodel  <drbrain@segment7.net>
7608
7609	* test/rdoc/test_rdoc_options.rb:  Windows drive letters are
7610	  case-insensitive.
7611
7612Sat Dec  1 09:42:13 2012  Eric Hodel  <drbrain@segment7.net>
7613
7614	* lib/rubygems.rb:  Search for gem deps file up the directory tree.
7615	* test/rubygems/test_gem.rb:  Test for above.
7616
7617Sat Dec  1 09:33:32 2012  Eric Hodel  <drbrain@segment7.net>
7618
7619	* test/runner.rb:  Set GEM_HOME, GEM_PATH and GEM_SKIP to empty set.
7620	  With default_gem support in RubyGems GEM_SKIP prevents loading of
7621	  built-in gems.
7622
7623Sat Dec  1 07:16:17 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
7624
7625	* compile.c (ADD_CATCH_ENTRY): add a cast to fix SEGV with x64 mingw
7626	  on Windows 8. Without cast, 0 might be non zero value at higher bits
7627	  in rb_ary_new3().
7628	  [ruby-core:50258] [Bug #7456]
7629
7630Sat Dec  1 04:07:57 2012  NARUSE, Yui  <naruse@ruby-lang.org>
7631
7632	* parse.y (parser.utf8): remove unused property.
7633
7634	* parse.y (UTF8_ENC): remove unused macro.
7635
7636	* parse.y (parser_tokadd_utf8): use rb_utf8_encoding() directly.
7637
7638Sat Dec  1 03:49:45 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7639
7640	* lib/sync.rb (Sync_m#sync_synchronize): add Thread.async_interrupt_timing
7641	  for protecting from async interrupt.
7642	* lib/sync.rb (Sync_m#sync_lock): ditto.
7643
7644Sat Dec  1 03:38:04 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7645
7646	* lib/thread.rb (ConditionVariable#broadcast): s/RuntimeError/StandardError/
7647	* lib/thread.rb (ConditionVariable#signal): ditto.
7648
7649Sat Dec  1 03:29:52 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7650
7651	* lib/thread.rb (SizedQueue#pop): rewrite by using ConditionVariable.
7652	* lib/thread.rb (SizedQueue#push): ditto.
7653	* lib/thread.rb (SizedQueue#max): ditto.
7654	* lib/thread.rb (Queue#pop): ditto.
7655	* lib/thread.rb (Queue#push): ditto.
7656
7657	* lib/thread.rb (SizedQueue#num_waiting): adopt the above changes.
7658	* lib/thread.rb (SizedQueue#initialize): ditto.
7659	* lib/thread.rb (Queue#num_waiting): ditto.
7660	* lib/thread.rb (Queue#initialize): ditto.
7661	* test/thread/test_queue.rb (test_sized_queue_and_wakeup): ditto.
7662
7663Sat Dec  1 03:45:47 2012  Koichi Sasada  <ko1@atdot.net>
7664
7665	* thread.c (Thread.async_interrupt_timing): fix RDoc.
7666	  :never is not used any more.
7667
7668Sat Dec  1 02:56:19 2012  Koichi Sasada  <ko1@atdot.net>
7669
7670	* iseq.c: add RubyVM::InstructionSequence (ISeq) inspection methods.
7671	  * ISeq#path returns path of this ISeq written.
7672	  * ISeq#absolute_path returns absolute path.
7673	  * ISeq#label returns label (method name and so on).
7674	  * ISeq#base_label returns base label (see Thread::Backtrace::Location).
7675	  * ISeq#first_lineno returns first line number of this ISeq.
7676	  * ISeq.of(obj) returns ISeq object which obj (Proc or Method)
7677	    is contains.
7678
7679	* test/ruby/test_iseq.rb: add tests.
7680
7681Sat Dec  1 02:58:51 2012  Eric Hodel  <drbrain@segment7.net>
7682
7683	* include/ruby/ruby.h (rb_event_flag_t):  Maintain integer precision
7684	  for clang error (VALUE aka unsigned long vs unsigned int)
7685
7686Sat Dec  1 02:53:18 2012  Eric Hodel  <drbrain@segment7.net>
7687
7688	* test/rubygems/test_gem_dependency_installer.rb:  Use Gem.read_binary
7689	  instead of File.binread for ruby 1.8 compatibility in the rubygems
7690	  source repository.  Updates r38075
7691
7692Sat Dec  1 02:33:20 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7693
7694	* thread.c (rb_threadptr_interrupt_mask, async_interrupt_timing_func):
7695	  merge into them into rb_thread_s_async_interrupt_timing.
7696	* thread.c (rb_thread_s_async_interrupt_timing): ditto.
7697
7698Sat Dec  1 02:11:47 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7699
7700	* thread.c (rb_threadptr_interrupt_mask): add argument check.
7701	* thread.c (async_interrupt_timing_arg_check_i): helper function
7702	  for the above.
7703	* test/ruby/test_thread.rb (test_async_interrupt_timing_invalid_argument):
7704	  test for the above.
7705
7706Sat Dec  1 01:19:34 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7707
7708	* lib/thread.rb (ConditionVariable#broadcast): protect from
7709	  async interrupt by using Thread.async_interrupt_timing.
7710	* lib/thread.rb (ConditionVariable#signal): ditto.
7711	* lib/thread.rb (ConditionVariable#wait): ditto.
7712
7713Sat Dec  1 02:04:23 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
7714
7715	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_in_out_err):
7716	  raise if assert_in_out_err misused.
7717
7718Sat Dec  1 02:08:16 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
7719
7720	* test/rdoc/test_rdoc_rubygems_hook.rb
7721	  (TestRDocRubygemsHook#test_setup_unwritable): 1. check the existence
7722	  of the file(directory) before touch it.  2. remove test
7723	  file(directory) after the test.  see [ruby-core:50388].
7724
7725Sat Dec  1 01:51:06 2012  Koichi Sasada  <ko1@atdot.net>
7726
7727	[EXPERIMENTAL]
7728	* iseq.c: add following two methods.
7729	  * ISeq#line_trace_all returns all line traces (line numbers)
7730	  * ISeq#line_trace_specify(pos, set) set `pos'th line event to
7731	    specified_line event (if set is true).
7732	  These features are introduced for debuggers (mainly to make
7733	  breakpoint).
7734
7735	* iseq.h: add decl. of C APIs.
7736
7737	* test/ruby/test_iseq.rb: add tests.
7738
7739	* vm_trace.c: add `specified_line' event.
7740
7741	* include/ruby/ruby.h: ditto.
7742
7743Sat Dec  1 01:49:52 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
7744
7745	* test/rubygems/test_gem_dependency_installer.rb: gems are of course
7746	  binary files, so use a binary reading method when reading it.
7747	  see [ruby-core:50388].
7748
7749Sat Dec  1 01:21:07 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
7750
7751	* lib/rubygems/command.rb (Gem::Command#get_all_gem_names_and_versions):
7752	  who assumes that the pathname of a gem never contains ':' ?
7753	  yes, on Unixen pathnames can contain ':', and on Windows they almost
7754	  certainly contain ':'.  see [ruby-core:50388].
7755
7756	* lib/rubygems/requirement.rb (Gem::Requirement::PATTERN_RAW): extract
7757	  the regexp to match the version specifier from PATTERN to use in
7758	  above method.
7759
7760Sat Dec  1 00:48:19 2012  Naohisa Goto  <ngotogenome@gmail.com>
7761
7762	* ext/fiddle/extconf.rb, ext/fiddle/function.c
7763	  (Fiddle::Function::STDCALL): FFI_STDCALL is not a macro, but an
7764	  enumeration. [ruby-core:50398] [Bug #7483]
7765
7766Sat Dec  1 00:08:55 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
7767
7768	* test/rubygems/test_gem_installer.rb
7769	  (TestGemInstaller#test_check_executable_overwrite_other_non_gem):
7770	  on Windows, rubygems always generate a wrapper .bat file when
7771	  installing a file into bin, so testing no-overwrite a wrapper file
7772	  and a non-wrapper file is nonsense.  see [ruby-core:50388].
7773
7774Fri Nov 30 23:39:58 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
7775
7776	* test/rubygems/test_gem_installer.rb
7777	  (TestGemInstaller#test_check_executable_overwrite_default_bin_dir):
7778	  if the executable to be overwritten was generated by rubygems, the
7779	  error message differs from the only copied one's.
7780	  see [ruby-core:50388].
7781
7782Fri Nov 30 23:27:26 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
7783
7784	* test/rubygems/test_gem_ext_ext_conf_builder.rb
7785	  (TestGemExtExtConfBuilder::test_class_make): reading with binary mode
7786	  of course introduce \r on Windows.  see [ruby-core:50388].
7787
7788Fri Nov 30 23:11:37 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
7789
7790	* lib/rubygems/specification.rb
7791	  (Gem::Specification.validate_permissions): don't check executability
7792	  of the source on Windows.  they will be wrapped to .bat files when
7793	  installing.  see [ruby-core:50388].
7794
7795Fri Nov 30 22:44:14 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7796
7797	* vm_core.h (rb_vm_struct): add thread_destruct_lock field.
7798	* thread.c (Init_Thread): ditto.
7799	* thread.c (rb_vm_gvl_destroy): ditto.
7800
7801	* thread.c (thread_start_func_2): make sure vm->running_thread
7802	  don't point to dead thread.
7803	* thread.c (timer_thread_function): close a race against thread
7804	  destruction. [Bug #4911][ruby-dev:43859]
7805
7806	* vm_core.h (rb_thread_set_current): reset running time of
7807	  current thread instead of previous thread. We no longer
7808	  assume previous running thread still live.
7809
7810Fri Nov 30 21:57:43 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
7811
7812	* revert r38053 because it causes too many test failures.
7813	  if you've already installed r38053 or later, remove the installed
7814	  lib/ruby/gems/2.0.0 directory and reinstall this revision or later.
7815
7816Fri Nov 30 21:07:56 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
7817
7818	* lib/test/unit/parallel.rb (Test::Unit::Worker.run): wrap LoadError
7819	  because it's Gem::LoadError sometimes.  see [Bug #6882]
7820
7821Fri Nov 30 20:47:44 2012  Koichi Sasada  <ko1@atdot.net>
7822
7823	* thread.c: TracePoint#self returns invoking/exiting thread object
7824	  at thread_begin/end event.
7825
7826	* test/ruby/test_settracefunc.rb: fix test.
7827
7828Fri Nov 30 19:55:17 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
7829
7830	* test/ruby/memory_status.rb (Memory::Win32): use fiddle instead of dl,
7831	  but I doubt fiddle is not compatible with dl. (if you are interested,
7832	  see the diff.)  [ruby-core:50194] [Bug #7443]
7833
7834Fri Nov 30 19:37:44 2012  Kouhei Sutou  <kou@cozmixng.org>
7835
7836	* defs/default_gems: Add base directory column.
7837
7838	* tool/rbinstall.rb:
7839	  - Install .gemspecs of default gem to
7840	    #{GEM_HOME}/specifications/default/.
7841	  - Update files parameter of .gemspecs by relative path from
7842	    library directory.
7843
7844Fri Nov 30 19:30:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7845
7846	* vm_trace.c:
7847	  tracepoint_attr_return_value (TracePoint#return_value):
7848	    include `:b_return` for method doc
7849	  tracepoint_enable_m, tracepoint_disable_m (#enable/#disable):
7850	    don't have block argument, document block scope
7851
7852Fri Nov 30 18:52:56 2012  Koichi Sasada  <ko1@atdot.net>
7853
7854	* vm_trace.c (tracepoint_disable_m, tracepoint_enable_m):
7855	  fix block parameter.
7856	  No argument should be given to a block which is passed
7857	  to TracePoint#enable (and disable).
7858
7859Fri Nov 30 18:23:26 2012  Koichi Sasada  <ko1@atdot.net>
7860
7861	* thread.c: rename Thread.control_interrupt
7862	  to Thread.async_interrupt_timing.
7863	  The option name `:never' is also changed to  `:defer'.
7864	  [ruby-core:50375] [ruby-trunk - Feature #6762]
7865
7866	* thread.c: remove Thread.check_interrupt.
7867	  This method is difficult to understand by name.
7868
7869	* thread.c: add Thread.async_interrupted?.
7870	  This method check any deferred async interrupts.
7871
7872	* test/ruby/test_thread.rb: change tests for above.
7873
7874Fri Nov 30 18:24:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7875
7876	* vm_trace.c: Documentation for TracePoint API
7877	  [ruby-core:47243] [Feature #6895]
7878
7879Fri Nov 30 17:43:50 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7880
7881	* string.c (rb_str_cmp_m): try to compare with to_str result if
7882	  possible before calling <=> method.  [ruby-core:49279] [Bug #7342]
7883
7884	* string.c (rb_str_cmp_m): use rb_check_funcall instead of respond_to
7885	  and call.
7886
7887	* string.c (rb_str_cmp_m): return fixed value, one of -1,0,+1 always.
7888
7889Fri Nov 30 16:19:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7890
7891	* vm_dump.c (rb_vm_bugreport): get rid of calling methods in sigsegv
7892	  handler.  based on a patch by charliesome (Charlie Somerville)
7893	  [ruby-core:49573] [Bug #7402]
7894
7895Fri Nov 30 16:05:44 2012  Eric Hodel  <drbrain@segment7.net>
7896
7897	* NEWS:  Added RubyGems 2.0.0
7898
7899Fri Nov 30 15:24:37 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7900
7901	* parse.y (parser_yylex): fix false usage of local variable, it cannot
7902	  appear in fname state [ruby-core:49659] [Bug #7408]
7903
7904Fri Nov 30 15:20:12 2012  Eric Hodel  <drbrain@segment7.net>
7905
7906	* lib/rubygems/package.rb:  Load YAML for building gems.
7907	* test/rubygems/test_gem_commands_contents_command.rb:  Sort expected
7908	  output of default gem contents.  Re-fixes r38004 and r38005.
7909
7910Fri Nov 30 15:15:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7911
7912	* vm_trace.c (set_trace_func): Formatting of params and events
7913
7914Fri Nov 30 14:45:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7915
7916	* lib/net/http.rb: Net::HTTP::Patch to list of HTTP Request Classes
7917	  Patch by Ryunosuke SATO [Fixes #217 on github]
7918
7919Fri Nov 30 14:05:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7920
7921	* lib/cgi.rb: CGI example for HTML generation
7922	  Patch by Marcus Stollsteimer [ruby-core:50303] [Bug #7465]
7923
7924Fri Nov 30 13:52:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7925
7926	* time.c: Documentation improvements, grammar and formatting
7927	  Patch by Bernd Homuth [ruby-core:49203] [Bug #7326]
7928
7929Fri Nov 30 13:48:33 2012  Eric Hodel  <drbrain@segment7.net>
7930
7931	* lib/rdoc.rb:  Set version to 4.0.0.preview2
7932	* lib/rubygems.rb:  Set version to 2.0.0.preview2
7933
7934Fri Nov 30 13:11:53 2012  Eric Hodel  <drbrain@segment7.net>
7935
7936	* lib/rubygems/commands/setup_command.rb:  Remove old files on install
7937	  of RubyGems.  (not by rbinstall.rb).
7938	* test/rubygems/test_gem_commands_setup_command.rb:  Test for above.
7939
7940Fri Nov 30 12:47:59 2012  Akinori MUSHA  <knu@iDaemons.org>
7941
7942	* lib/abbrev.rb (Abbrev#abbrev): A fixed string prefix pattern
7943	  should only match the beginning of each word, not the beginning
7944	  of every line in it.
7945
7946	* lib/abbrev.rb (Abbrev#abbrev): Stop using a regexp that causes a
7947	  false warning. [Bug #7471]
7948
7949Fri Nov 30 12:30:55 2012  Akinori MUSHA  <knu@iDaemons.org>
7950
7951	* test/test_abbrev.rb: Add tests for lib/abbrev.rb.
7952
7953Fri Nov 30 12:27:51 2012  Eric Hodel  <drbrain@segment7.net>
7954
7955	* lib/rubygems/spec_fetcher.rb:  Allow prerelease spec fetching to fail
7956	  for bundler.
7957	* test/rubygems/test_gem_spec_fetcher.rb:  Test for above.
7958
7959Fri Nov 30 12:20:53 2012  Eric Hodel  <drbrain@segment7.net>
7960
7961	* lib/rake/backtrace.rb:  Removed duplication in
7962	  Rake::Backtrace::SUPPRESSED_PATHS
7963	* test/rake/test_rake_backtrace.rb:  Skip tests when tmpdir is in the
7964	  suppressed pattern.
7965
7966Fri Nov 30 11:07:45 2012  Shugo Maeda  <shugo@ruby-lang.org>
7967
7968	* revert r37993 to avoid SEGV in tests.
7969
7970Fri Nov 30 10:38:54 2012  Eric Hodel  <drbrain@segment7.net>
7971
7972	* lib/rdoc/ri/driver.rb:  Relaxed matching for pages to be more
7973	  user-friendly.
7974	* test/rdoc/test_rdoc_ri_driver.rb:   Test for above.
7975
7976Fri Nov 30 09:50:16 2012  Eric Hodel  <drbrain@segment7.net>
7977
7978	* lib/rdoc/markdown.rb:  Fixed warnings with -w
7979
7980Fri Nov 30 09:38:22 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7981
7982	* include/ruby/ruby.h (RB_GC_GUARD_PTR): add note.
7983
7984	* vm_backtrace.c (backtrace_to_str_ary): use RB_GC_GUARD() instead of
7985	  RB_GC_GUARD_PTR() which has no effect.
7986	  (backtrace_to_location_ary): ditto.
7987	  (vm_backtrace_to_ary): ditto.
7988
7989Fri Nov 30 09:22:52 2012  Eric Hodel  <drbrain@segment7.net>
7990
7991	* lib/rubygems/commands/contents_command.rb:  Sort output from command.
7992	  Replaces r38004, r38005
7993	* test/rubygems/test_gem_commands_contents_command.rb:  ditto.
7994
7995	* lib/rubygems/defaults.rb:  Use Gem.path_separator for jruby support.
7996	* lib/rubygems/path_support.rb:  ditto
7997
7998Fri Nov 30 08:34:03 2012  Eric Hodel  <drbrain@segment7.net>
7999
8000	* lib/rdoc/generator/darkfish.rb:  Silenced warning
8001	* test/rdoc/test_rdoc_rdoc.rb:  ditto
8002
8003	* lib/rdoc/markup/parser.rb:  Use byteslice when available for
8004	  performance
8005	* test/rdoc/test_rdoc_markup_parser.rb:  Test for above
8006	* lib/rdoc/test_case.rb:  ditto
8007
8008	* lib/rdoc/parser/ruby.rb:  Fixed bug parsing yield({})
8009	* test/rdoc/test_rdoc_parser_ruby.rb (end):
8010
8011	* lib/rdoc/rubygems_hook.rb:  Skip default gems.  Display generator
8012	  name properly.
8013	* test/rdoc/test_rdoc_rubygems_hook.rb:  Test for above
8014
8015	* lib/rdoc/servlet.rb:  Fixed typo.
8016
8017Fri Nov 30 08:09:56 2012  Narihiro Nakamura  <authornari@gmail.com>
8018
8019	* gc.c : remove a unused function.
8020
8021Fri Nov 30 07:46:42 2012  Narihiro Nakamura  <authornari@gmail.com>
8022
8023	* gc.c (rb_objspace_call_finalizer): finalize_deferred may free up
8024	  a object which is reachable from a part after this function,
8025	  e.g. ruby_vm_destruct(). [ruby-dev:46647] [Bug #7452]
8026
8027	* test/ruby/test_gc.rb (test_finalizing_main_thread): add a test
8028	  for above.
8029
8030Fri Nov 30 07:43:44 2012  Koichi Sasada  <ko1@atdot.net>
8031
8032	* thread.c (rb_thread_interrupted): avoid warning of
8033	  implicit conversion.
8034
8035	* thread.c (rb_threadptr_execute_interrupts): ditto.
8036
8037Fri Nov 30 07:34:28 2012  Koichi Sasada  <ko1@atdot.net>
8038
8039	* vm_backtrace.c: add GC guards.
8040
8041Fri Nov 30 07:21:33 2012  Koichi Sasada  <ko1@atdot.net>
8042
8043	[EXPERIMENTAL: NEED DISCUSS]
8044	* vm_trace.c: add events
8045	  * :thread_begin - hook at thread beginning.
8046	  * :thread_end - hook at thread ending.
8047	  * :b_call - hook at block enter.
8048	  * :b_return - hook at block leave.
8049	  This change slow down block invocation.
8050	  Please try and give us feedback until 2.0 code freeze.
8051
8052	* include/ruby/ruby.h: ditto.
8053
8054	* compile.c (rb_iseq_compile_node): ditto.
8055
8056	* insns.def: ditto.
8057
8058	* thread.c: ditto.
8059
8060	* vm.c: ditto.
8061
8062	* include/ruby/debug.h: add a comment.
8063
8064	* test/ruby/test_settracefunc.rb: add a tests.
8065
8066Fri Nov 30 06:56:30 2012  Ryan Davis  <ryand-ruby@zenspider.com>
8067
8068	* test/minitest/*: Imported minitest 4.3.2 (r8027)
8069
8070Fri Nov 30 04:16:29 2012  Eric Hodel  <drbrain@segment7.net>
8071
8072	* lib/rake/*:  Updated to rake 0.9.5
8073	* test/rake/*:  ditto.
8074	* NEWS:  ditto.
8075
8076Fri Nov 30 02:53:47 2012  Aaron Patterson <aaron@tenderlovemaking.com>
8077
8078	* vm.c: add a return hook when a method raises an exception.
8079
8080	* probes_helper.h: look up klass and method if none are provided.
8081
8082	* eval.c: update macro usage.
8083
8084	* vm_eval.c: ditto.
8085
8086	* vm_insnhelper.c: ditto.
8087
8088	* test/dtrace/test_function_entry.rb: test for change.
8089
8090Fri Nov 30 02:27:12 2012  NARUSE, Yui  <naruse@ruby-lang.org>
8091
8092	* compile.c (compile_array_): refix r37991 remove assertion:
8093	  it is true only if type == COMPILE_ARRAY_TYPE_HASH.
8094	  [ruby-dev:46658] [Bug #7466]
8095
8096	* vm.c (m_core_hash_from_ary): add assertion instead of above.
8097
8098	* vm.c (m_core_hash_merge_ary): ditto.
8099
8100Thu Nov 29 19:15:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8101
8102	* compile.c (compile_array_): hash elements must be paired even for
8103	  literal elements.  [ruby-dev:46658] [Bug #7466]
8104
8105Thu Nov 29 22:39:35 2012  Naohisa Goto  <ngotogenome@gmail.com>
8106
8107	* ext/openssl/ossl_ssl.c (ssl_npn_encode_protocol_i): fix byte order
8108	  issue on big-endian architecture [ruby-core:50292] [Bug #7463]
8109
8110Thu Nov 29 22:23:31 2012  Hiroshi Nakamura  <nahi@ruby-lang.org>
8111
8112	* test/openssl/test_cipher.rb (test_ctr_if_exists): add CTR mode test
8113	  if underlying OpenSSL supports it. See #4408
8114
8115Thu Nov 29 21:42:16 2012  Shugo Maeda  <shugo@ruby-lang.org>
8116
8117	* vm_method.c (rb_method_entry_make): add a method entry with
8118	  VM_METHOD_TYPE_REFINED to the class refined by the refinement if
8119	  the target module is a refinement.  When a method entry with
8120	  VM_METHOD_TYPE_UNDEF is invoked by vm_call_method(), a method with
8121	  the same name is searched in refinements.  If such a method is
8122	  found, the method is invoked.  Otherwise, the original method in
8123	  the refined class (rb_method_definition_t::body.orig_def) is
8124	  invoked.  This change is made to simplify the normal method lookup
8125	  and to improve the performance of normal method calls.
8126
8127	* vm_method.c (EXPR1, search_method, rb_method_entry),
8128	  vm_eval.c (rb_call0, rb_search_method_entry): do not use
8129	  refinements for method lookup.
8130
8131	* vm_insnhelper.c (vm_call_method): search methods in refinements if
8132	  ci->me is VM_METHOD_TYPE_REFINED.  If the method is called by
8133	  super (i.e., ci->call == vm_call_super_method), skip the same
8134	  method entry as the current method to avoid infinite call of the
8135	  same method.
8136
8137	* class.c (include_modules_at): add a refined method entry for each
8138	  method defined in a module included in a refinement.
8139
8140	* class.c (rb_prepend_module): set an empty table to
8141	  RCLASS_M_TBL(klass) to add refined method entries, because
8142	  refinements should have priority over prepended modules.
8143
8144	* proc.c (mnew): use rb_method_entry_with_refinements() to get
8145	  a refined method.
8146
8147	* test/ruby/test_refinement.rb (test_inline_method_cache): do not skip
8148	  the test because it should pass successfully.
8149
8150	* test/ruby/test_refinement.rb (test_redefine_refined_method): new
8151	  test for the case a refined method is redefined.
8152
8153Thu Nov 29 17:45:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8154
8155	* variable.c (rb_const_set): show namespace in warning messages.
8156	  [Feature #7190]
8157
8158Thu Nov 29 17:31:53 2012  NARUSE, Yui  <naruse@ruby-lang.org>
8159
8160	* lib/rubygems.rb (Gem.load_yaml): return if Kernel#gem is not defined
8161	  yet. This causes crash if test-all requires libraries in a certain
8162	  order. A simple reproducible code is
8163	  ruby --disable-gem -e'require"yaml";require"minitest/autorun"'
8164
8165Thu Nov 29 17:19:26 2012  Eric Hodel  <drbrain@segment7.net>
8166
8167	* lib/tracer.rb:  Updated to match removal of custom_require from
8168	  RubyGems.
8169	* test/test_tracer.rb:  ditto.  Improved failure message if the test
8170	  fails
8171
8172Thu Nov 29 17:15:00 2012  Zachary Scott  <zachary@zacharyscott.net>
8173
8174	* gc.c: Documentation for GC, GC::Profiler, ObjectSpace, and
8175	  ObjectSpace::WeakMap [ruby-core:50245] [Bug #7449]
8176
8177Thu Nov 29 17:12:26 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8178
8179	* tool/generic_erb.rb, tool/id2token.rb: add --path-separator option
8180	  for mingw where make and built ruby live in different world.
8181
8182	* tool/vpath.rb: extract from tool/instruction.rb.
8183
8184Thu Nov 29 17:11:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8185
8186	* test/io/wait/test_io_wait.rb (TestIOWait#fill_pipe):
8187	  Errno::EWOULDBLOCK may not be the same as Errno::EAGAIN.  patch by
8188	  phasis68 (Heesob Park) at [ruby-core:49894].  [Bug #7420]
8189
8190Thu Nov 29 17:03:38 2012  Eric Hodel  <drbrain@segment7.net>
8191
8192	* lib/rubygems/test_case.rb:  Determine path to certificates to avoid
8193	  build-dir problems.
8194	* test/rubygems/test_gem_security_signer.rb:  Use predetermined paths
8195	  to avoid build-dir problems.
8196
8197Thu Nov 29 16:18:14 2012  Eric Hodel  <drbrain@segment7.net>
8198
8199	* lib/rubygems/test_case.rb:  Disable loading of keys and certificates
8200	  outside rubygems or ruby tests as the files are not available (or
8201	  necessary).
8202
8203Thu Nov 29 16:14:41 2012  Koichi Sasada  <ko1@atdot.net>
8204
8205	* vm_backtrace.c (rb_debug_inspector_open): use RARRAY_LENINT() for
8206	  int variable.
8207
8208Thu Nov 29 15:59:55 2012  Koichi Sasada  <ko1@atdot.net>
8209
8210	* include/ruby/debug.h: add rb_debug_inspector_* APIs.
8211
8212	* vm_backtrace.c: ditto.
8213
8214	* common.mk: add dependency from vm_backtrace.o to
8215	  include/ruby/debug.h.
8216
8217	* proc.c (rb_binding_new_with_cfp): constify.
8218
8219	* vm.c (rb_vm_get_ruby_level_next_cfp): constify.
8220
8221	* vm_core.h, vm_trace.c: move decls.
8222
8223Thu Nov 29 15:56:14 2012  NARUSE, Yui  <naruse@ruby-lang.org>
8224
8225	* lib/rdoc/test_case.rb (RDoc::TestCase#verbose_capture_io):
8226	  defined for asserts of warnings.
8227
8228	* test/rdoc: use verbose_capture_io on asserts of warnings.
8229	  they failed when tests was run with RUBYOPT=-W0.
8230
8231Thu Nov 29 15:53:38 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
8232
8233	* ext/psych/extconf.rb: added --enable-bundled-libyaml option.  this
8234	  enforces using bundled libyaml.
8235
8236Thu Nov 29 15:51:54 2012  Eric Hodel  <drbrain@segment7.net>
8237
8238	* lib/rubygems*:  Updated to RubyGems 2.0
8239	* test/rubygems*:  ditto.
8240
8241	* common.mk (prelude):  Updated for RubyGems 2.0 source rearrangement.
8242
8243	* tool/change_maker.rb:  Allow invalid UTF-8 characters in source
8244	  files.
8245
8246Thu Nov 29 15:38:14 2012  Koichi Sasada  <ko1@atdot.net>
8247
8248	* include/ruby/debug.h: provide rb_tracearg_*() APIs,
8249	  instead of rb_tracepoint_attr_*().
8250	  These APIs are for debuggers/profilers.
8251	  They will be explained in another docs sometime.
8252
8253	* vm_trace.c: ditto.
8254
8255Thu Nov 29 15:10:45 2012  NARUSE, Yui  <naruse@ruby-lang.org>
8256
8257	* test/minitest/test_minitest_unit.rb: restore orig_verbose only
8258	  if it is set. This broke rdoc's tests.
8259	  http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20121129T050102Z.diff.html.gz
8260
8261Thu Nov 29 14:56:30 2012  Koichi Sasada  <ko1@atdot.net>
8262
8263	* vm_trace.c (rb_tracepoint_attr_method_id):
8264	  rename TracePoint#id to TracePoint#method_id.
8265
8266	* include/ruby/debug.h: ditto.
8267
8268	* test/ruby/test_settracefunc.rb: ditto,
8269
8270Thu Nov 29 14:49:10 2012  Koichi Sasada  <ko1@atdot.net>
8271
8272	* vm_trace.c (rb_tracepoint_attr_defined_class):
8273	  rename TracePoint#klass to TracePoint#defined_class.
8274	  [ruby-core:50187] Re: [ruby-trunk - Feature #6895]
8275
8276	* include/ruby/debug.h: ditto.
8277
8278	* test/ruby/test_settracefunc.rb: ditto.
8279
8280Thu Nov 29 14:27:57 2012  Koichi Sasada  <ko1@atdot.net>
8281
8282	* gc.c (gc_stat): prepare Symbol objects at first time
8283	  to make it fast.
8284
8285Thu Nov 29 14:02:15 2012  Koichi Sasada  <ko1@atdot.net>
8286
8287	* gc.c (gc_stat): GC.stat supports new information
8288	  * total_allocated_object: total allocated object number.
8289	  * total_freed_object: total freed object number.
8290	  Above two numbers are only accumulated and they will
8291	  overflow (return to 0). Please use them as a hint.
8292
8293Thu Nov 29 12:13:54 2012  Ryan Davis  <ryand-ruby@zenspider.com>
8294
8295	* lib/minitest/*: Imported minitest 4.3.2 (r8026)
8296	* test/minitest/*: ditto
8297
8298Thu Nov 29 11:06:06 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8299
8300	* thread.c (thread_start_func_2): remove unused code. When
8301	  th->safe_level == 4, th->errinfo never be thrown. So, to
8302	  create new exception makes no sense.
8303
8304Thu Nov 29 10:29:53 2012  Koichi Sasada  <ko1@atdot.net>
8305
8306	* vm_backtrace.c: same as a last patch.
8307
8308Thu Nov 29 10:24:25 2012  Koichi Sasada  <ko1@atdot.net>
8309
8310	* vm_backtrace.c: use `long' for return values of `NUM2LONG()'.
8311
8312Thu Nov 29 09:52:08 2012  NARUSE, Yui  <naruse@ruby-lang.org>
8313
8314	* thread.c (do_select): suppress warning (uninitialized value warning)
8315	  with UNINITIALIZED_VAR().
8316
8317Thu Nov 29 09:36:09 2012  Koichi Sasada  <ko1@atdot.net>
8318
8319	* eval.c (ruby_cleanup): delay THREAD_KILLED timing.
8320	  It should be located just before rb_thread_terminate_all().
8321
8322Thu Nov 29 09:10:17 2012  Koichi Sasada  <ko1@atdot.net>
8323
8324	* vm_backtrace.c (vm_backtrace_to_ary): support range argument
8325	  like Array#[].
8326	  [ruby-core:50092] [ruby-trunk - Feature #7434]
8327	  Test and document is not available. Please help us.
8328
8329Thu Nov 29 06:46:33 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8330
8331	* thread.c (thread_start_func_2): small cleanups.
8332
8333Thu Nov 29 06:37:08 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8334
8335	* thread.c (thread_start_func_2): remove unused code.
8336	  this function never be used for main thread.
8337
8338Thu Nov 29 06:27:55 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8339
8340	* thread.c (thread_start_func_2): remove unused code.
8341	  errinfo = th->errinfo; and errinfo = rb_errinfo(); are
8342	  the same.
8343
8344Thu Nov 29 05:26:32 2012  Koichi Sasada  <ko1@atdot.net>
8345
8346	* vm_backtrace.c (backtrace_to_str_ary2): rename to backtrace_to_str_ary.
8347
8348	* vm_backtrace.c (rb_backtrace_to_str_ary): use `backtrace_to_str_ary()'.
8349
8350	* vm_backtrace.c (backtrace_to_frame_ary): rename to
8351	  backtrace_to_location_ary.
8352
8353Thu Nov 29 05:19:25 2012  Aaron Patterson <aaron@tenderlovemaking.com>
8354
8355	* probes.d: Change function-entry probe to method-entry.
8356	* insns.def: ditto
8357	* probes_helper.h: ditto
8358	* test/dtrace/test_function_entry.rb: ditto
8359	* test/dtrace/test_singleton_function.rb: ditto
8360	* vm.c: ditto
8361	* vm_eval.c: ditto
8362	* vm_insnhelper.c: ditto
8363
8364Thu Nov 29 04:45:17 2012  Koichi Sasada  <ko1@atdot.net>
8365
8366	* vm_backtrace.c: rename Class name from
8367	  ::RubyVM::Backtrace and ::RubyVM::Backtrace::Location
8368	  to ::Thread::Backtrace and ::Thread::Backtrace::Location.
8369
8370Wed Nov 28 23:52:02 2012  Masaya Tarui  <tarui@ruby-lang.org>
8371
8372	* NEWS (Thread) remove incompatible changes about trap.
8373
8374Wed Nov 28 23:39:01 2012  Koichi Sasada  <ko1@atdot.net>
8375
8376	* thread.c (rb_mutex_sleep): fix to allow spurious wakeup.
8377	  [ruby-dev:46654] [ruby-trunk - Bug #7455]
8378
8379	* NEWS: write about spurious wakeup.
8380
8381Wed Nov 28 22:57:23 2012  Koichi Sasada  <ko1@atdot.net>
8382
8383	* thread_win32.c: catch up latest change of BLOCKING_REGION.
8384
8385Wed Nov 28 22:54:21 2012  Koichi Sasada  <ko1@atdot.net>
8386
8387	* vm_insnhelper.c (vm_call_method): fix undefined behavior.
8388	  Should not access scope local variable from outer scope.
8389
8390Wed Nov 28 22:20:55 2012  Masaya Tarui  <tarui@ruby-lang.org>
8391
8392	* test/ruby/test_thread.rb (test_thread_status_in_trap): change test for
8393	  thread status in trap. now can accept Thread#join and Thread#value in trap.
8394
8395Wed Nov 28 21:58:47 2012  Koichi Sasada  <ko1@atdot.net>
8396
8397	* include/ruby/thread.h (rb_thread_call_without_gvl2): change
8398	  meaning of function.
8399	  This function is called with same parameters of
8400	  `rb_thread_call_without_gvl()'.
8401	  However, if interrupts are detected, then return immediately.
8402
8403	* thread.c: implement `rb_thread_call_without_gvl2()'.
8404
8405Wed Nov 28 21:31:21 2012  Masaya Tarui  <tarui@ruby-lang.org>
8406
8407	* thread.c (thread_join_sleep): check spurious wakeup by itself for
8408	corresponding status change in trap context.
8409	* vm_core.h (struct rb_thread_struct): add rb_thread_list_t and use as join_list for
8410	reentry by trap context.
8411	* thread.c (thread_start_func_2): ditto.
8412	* thread.c (remove_from_join_list): ditto.
8413	* thread.c (rb_thread_atfork): ditto.
8414	* thread.c (thread_join): ditto. & remove trap handler check.
8415	* thread.c (sleep_forever): add argument : spurious_check.
8416	* thread.c (sleep_timeval): ditto.
8417	* thread.c (rb_thread_sleep_forever): set spurious_check.
8418	* thread.c (rb_thread_sleep_deadly): ditto.
8419	* thread.c (sleep_for_polling): ditto.
8420	* thread.c (rb_thread_wait_for): ditto.
8421	* thread.c (sleep_wait_for_interrupt): bypass spurious_check.
8422
8423Wed Nov 28 21:23:18 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8424
8425	* ext/psych/yaml/emitter.c (yaml_emitter_write_indicator): constify.
8426
8427	* ext/psych/yaml/emitter.c (yaml_emitter_write_block_scalar_hints):
8428	  ditto.
8429
8430	* ext/psych/extconf.rb: mingw32 also needs macros for win32, not
8431	  only mswin32.
8432
8433	* ext/psych/extconf.rb: compile sources in the source directory
8434	  without copying by using VPATH.
8435
8436Wed Nov 28 21:18:57 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8437
8438	* lib/mkmf.rb (MakeMakefile#each_compile_rules): splat $(*VPATH*) for
8439	  each VPATH elements.
8440
8441Wed Nov 28 16:40:14 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8442
8443	* vm_core.h (enum rb_thread_status): remove THREAD_TO_KILL
8444	* vm_core.h (struct rb_thread_struct): add to_kill field
8445	* thread.c (terminate_i): convert THREAD_TO_KILL to to_kill.
8446	* thread.c (rb_threadptr_to_kill): ditto.
8447	* thread.c (rb_thread_kill): ditto.
8448	* thread.c (rb_thread_wakeup_alive): ditto.
8449	* thread.c (thread_list_i): ditto.
8450	* thread.c (static const char): ditto.
8451	* thread.c (thread_status_name): ditto.
8452	* thread.c (rb_thread_status): ditto.
8453	* thread.c (rb_thread_inspect): ditto.
8454	* vm_backtrace.c (thread_backtrace_to_ary): ditto.
8455
8456	* thread.c (rb_threadptr_execute_interrupts): fix thread status
8457	  overwritten issue. [Bug #7450] [ruby-core:50249]
8458
8459	* test/ruby/test_thread.rb (test_hread_status_raise_after_kill):
8460	  test for the above.
8461	* test/ruby/test_thread.rb (test_thread_status_in_trap): test for
8462	  thread status in trap.
8463	* test/ruby/test_thread.rb (test_status_and_stop_p): remove
8464	  Thread.control_interrupt unsafe test. Thread#kill no longer
8465	  changes thread status. Instead of, Thread#kill receiver changes
8466	  their own status when receiving kill signal.
8467
8468Wed Nov 28 16:21:46 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8469
8470	* thread.c (struct rb_mutex_struct): add allow_trap field.
8471	* internal.h (rb_mutex_allow_trap): added.
8472	* thread.c (rb_mutex_lock, rb_mutex_unlock): check mutex->allow_trap.
8473	* thread.c (mutex_sleep): remove trap check because it uses
8474	  rb_mutex_lock and rb_mutex_unlock internally.
8475	* thread.c (rb_mutex_allow_trap): new helper function for the above.
8476
8477	* io.c (io_binwrite): mark fptr->write_lock as writable in trap.
8478
8479	* test/ruby/test_signal.rb (test_trap_puts): test for the above.
8480
8481Wed Nov 28 16:59:12 2012  Koichi Sasada  <ko1@atdot.net>
8482
8483	* proc.c: remove Proc#== and Proc#eql?.
8484	  Proc objects compared with their object ids.
8485	  [Bug #4559]
8486
8487	* test/ruby/test_proc.rb: remove related test.
8488
8489Wed Nov 28 16:41:04 2012  Eric Hodel  <drbrain@segment7.net>
8490
8491	* lib/rdoc/servlet.rb:  Add support for serving documentation from a
8492	  subdirectory.
8493	* lib/rdoc/generator/darkfish.rb:  ditto
8494	* test/rdoc/test_rdoc_servlet.rb:  Test for above
8495	* test/rdoc/test_rdoc_servlet.rb:  ditto
8496
8497Wed Nov 28 15:37:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
8498
8499	* configure.in: fix r37924: run only on i[3-6]86-linux.
8500
8501Wed Nov 28 15:31:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8502
8503	* io.c (FMODE_SYNCWRITE): removed unused macro.
8504
8505Wed Nov 28 15:19:25 2012  Naohisa Goto  <ngotogenome@gmail.com>
8506
8507	* configure.in: revert r37911, r37906 and r37904 which break build
8508	  with non-gcc and/or non-IA32 compilers, e.g. Solaris Studio,
8509	  Fujitsu C Compiler. [ruby-dev:46646] [Bug #7451]
8510
8511Wed Nov 28 14:50:55 2012  Koichi Sasada  <ko1@atdot.net>
8512
8513	* ext/psych/extconf.rb: copy sources into build directory,
8514	  not into srcdir.
8515
8516Wed Nov 28 14:34:06 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8517
8518	* thread.c (rb_mutex_lock): moved trap context check from
8519	  rb_mutex_trylock because try_lock have no change to make
8520	  a deadlock.
8521	* thread.c (rb_mutex_trylock): ditto.
8522	* NEWS: news for the above.
8523
8524Wed Nov 28 13:39:54 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8525
8526	* thread.c (thread_s_new): uses main_thread->status instead of
8527	  th->inhibit_thread_creation for preventing thread creation.
8528	* vm_core.h (rb_vm_struct): remove inhibit_thread_creation field.
8529	* thread.c (rb_thread_terminate_all): ditto.
8530
8531Wed Nov 28 13:27:29 2012  Aaron Patterson <aaron@tenderlovemaking.com>
8532
8533	* ext/psych/extconf.rb: use embedded libyaml if no system libyaml is
8534	  found. [ruby-core:49463]
8535	* ext/psych/lib/psych.rb: updating to psych 2.0.0
8536	* ext/psych/lib/psych/deprecated.rb: updated docs
8537	* ext/psych/psych.gemspec: updated to psych 2.0.0
8538	* ext/psych/psych.h: fixing header file include for rename
8539	* ext/psych/psych_emitter.c: renamed to avoid libyaml conflict.
8540	* ext/psych/psych_emitter.h: ditto
8541	* ext/psych/psych_parser.c: ditto
8542	* ext/psych/psych_parser.h: ditto
8543	* ext/psych/psych_to_ruby.c: ditto
8544	* ext/psych/psych_to_ruby.h: ditto
8545	* ext/psych/psych_yaml_tree.c: ditto
8546	* ext/psych/psych_yaml_tree.h: ditto
8547	* ext/psych/yaml/LICENSE: embedding libyaml 0.1.4
8548	* ext/psych/yaml/api.c: ditto
8549	* ext/psych/yaml/config.h: ditto
8550	* ext/psych/yaml/dumper.c: ditto
8551	* ext/psych/yaml/emitter.c: ditto
8552	* ext/psych/yaml/loader.c: ditto
8553	* ext/psych/yaml/parser.c: ditto
8554	* ext/psych/yaml/reader.c: ditto
8555	* ext/psych/yaml/scanner.c: ditto
8556	* ext/psych/yaml/writer.c: ditto
8557	* ext/psych/yaml/yaml.h: ditto
8558	* ext/psych/yaml/yaml_private.h: ditto
8559
8560Wed Nov 28 12:54:59 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8561
8562	* thread.c (thread_join): A trap handler check was moved from
8563	  thread_join_m because Thread#value should be raised an exception
8564	  too.
8565	* thread.c (thread_join_m): remove trap handler check.
8566	* test/ruby/test_thread.rb (test_thread_join_in_trap): add test
8567	  for thread#value.
8568	* NEWS: documentation fix for the above.
8569
8570Wed Nov 28 11:07:00 2012  Zachary Scott  <zachary@zacharyscott.net>
8571
8572	* ext/fiddle/closure.c: Documentation for Fiddle
8573	* ext/fiddle/lib/fiddle/import.rb: ditto
8574	* ext/fiddle/lib/fiddle/value.rb: ditto
8575	* ext/fiddle/lib/fiddle/pack.rb: ditto
8576	* ext/fiddle/lib/fiddle/cparser.rb: ditto
8577	* ext/fiddle/lib/fiddle/struct.rb: ditto
8578	* ext/fiddle/lib/fiddle/function.rb: ditto
8579
8580Wed Nov 28 09:15:51 2012  Ryan Davis  <ryand-ruby@zenspider.com>
8581
8582	* ext/strscan/strscan.c: Added #charpos for multibyte string position.
8583	* test/strscan/test_stringscanner.rb: ditto
8584
8585Wed Nov 28 09:00:34 2012  Aaron Patterson <aaron@tenderlovemaking.com>
8586
8587	* ext/fiddle/fiddle.c: adding alignment constants for compatibility
8588	  with DL.
8589	* ext/fiddle/fiddle.h: ditto
8590	* ext/fiddle/lib/fiddle/cparser.rb: importing the C parser for DL
8591	  backwards compatibility.
8592	* ext/fiddle/lib/fiddle/import.rb: importing the import DSL for DL
8593	  backwards compatibility.
8594	* ext/fiddle/lib/fiddle/pack.rb: importing structure pack for DL
8595	  backwards compatibility.
8596	* ext/fiddle/lib/fiddle/value.rb: ditto
8597	* ext/fiddle/lib/fiddle/struct.rb: importing struct DSL for DL backwards
8598	  compatibility.
8599	* test/dl/test_c_struct_entry.rb: importing tests
8600	* test/dl/test_c_union_entity.rb: ditto
8601	* test/dl/test_cparser.rb: ditto
8602	* test/dl/test_import.rb: ditto
8603	* test/fiddle/test_c_struct_entry.rb: ditto
8604	* test/fiddle/test_c_union_entity.rb: ditto
8605	* test/fiddle/test_cparser.rb: ditto
8606	* test/fiddle/test_import.rb: ditto
8607
8608Wed Nov 28 08:56:00 2012  Zachary Scott <zachary@zacharyscott.net>
8609
8610	* doc/globals.rdoc: Add documentation file for magic globals
8611	[ruby-core:29048] [Bug #3022]
8612
8613Wed Nov 28 08:55:00 2012  Zachary Scott <zachary@zacharyscott.net>
8614
8615	* .document: Add README's to be included with docs
8616
8617Wed Nov 28 08:26:00 2012  Zachary Scott <zachary@zacharyscott.net>
8618
8619	* ext/dl/lib/dl.rb: Deprecation notice for DL
8620
8621Wed Nov 28 08:25:00 2012  Zachary Scott <zachary@zacharyscott.net>
8622
8623	* ext/fiddle/closure.c: Documentation for Fiddle
8624	* ext/fiddle/pointer.c: ditto
8625	* ext/fiddle/function.c: ditto
8626	* ext/fiddle/lib/fiddle.rb: ditto
8627	* ext/fiddle/fiddle.c: ditto
8628	* ext/fiddle/handle.c: ditto
8629
8630Wed Nov 28 04:53:40 2012  Aaron Patterson <aaron@tenderlovemaking.com>
8631
8632	* ext/fiddle/handle.c: Make Fiddle independent of DL, copy DL::Handle
8633	  to Fiddle::Handle.
8634	* ext/fiddle/pointer.c: Make Fiddle independent of DL, copy
8635	  DL::Pointer to Fiddle::Pointer.
8636	* test/fiddle/test_func.rb: relevant tests
8637	* test/fiddle/test_handle.rb: ditto
8638	* test/fiddle/test_pointer.rb: ditto
8639	* ext/dl/lib/dl/struct.rb: use Fiddle::Pointer if available
8640	* ext/fiddle/extconf.rb: check for dlfcn.h
8641	* ext/fiddle/fiddle.c: add constants for sizeof() things
8642	* ext/fiddle/fiddle.h: include dlfcn.h
8643	* ext/fiddle/function.c: expose a C function for creating new
8644	  Fiddle::Function objects.
8645	* ext/fiddle/lib/fiddle.rb: include constants for dl backwards compat
8646	* ext/fiddle/lib/fiddle/function.rb: read the pointer from the
8647	  function for dl backwards compat.
8648	* test/dl/test_callback.rb: check the addresses of the pointers rather
8649	  than their types.
8650	* test/fiddle/helper.rb: remove dependency on dl
8651	* test/fiddle/test_closure.rb: ditto
8652	* test/fiddle/test_fiddle.rb: ditto
8653
8654Wed Nov 28 03:03:28 2012  NARUSE, Yui  <naruse@ruby-lang.org>
8655
8656	* configure.in (opt-dir): don't use non portable flag -E of sed.
8657
8658Wed Nov 28 02:55:35 2012  NARUSE, Yui  <naruse@ruby-lang.org>
8659
8660	* configure.in (ARCH_FLAG): __sync_val_compare_and_swap_4 needs
8661	  -march=$target_cpu on at least linux gcc 4.1.
8662	  patched by KOSAKI Motohiro
8663
8664Tue Nov 27 22:03:09 2012  Akinori MUSHA  <knu@iDaemons.org>
8665
8666	* string.c (rb_str_enumerate_chars, rb_str_enumerate_codepoints)
8667	  (rb_str_enumerate_lines): Dummy initialization of ary has been
8668	  replaced with UNINITIALIZED_VAR().
8669
8670Tue Nov 27 21:29:00 2012  Kenta Murata  <mrkn@mrkn.jp>
8671
8672	* bignum.c (bigdivrem): optimize the way to retry calculation of
8673	  bigdivrem so that the calculation is started from the point where
8674	  the last interruption was occurred.
8675
8676	* bignum.c (bigdivrem1): ditto.
8677
8678	* test/ruby/test_bignum.rb: add a test case for rb_bigdivrem in the
8679	  case that an interruption is occurred during bigdivrem1 is running.
8680
8681Tue Nov 27 19:56:43 2012  Koichi Sasada  <ko1@atdot.net>
8682
8683	* vm.c (rb_vm_make_env_object): make Proc object if Env is possible
8684	  to point block.
8685	  [ruby-core:41038] [ruby-trunk - Bug #5634]
8686
8687	* vm.c (rb_vm_make_proc): No need to make Proc object here.
8688
8689	* bootstraptest/test_proc.rb: add tests.
8690
8691Tue Nov 27 18:51:06 2012  Naohisa Goto  <ngotogenome@gmail.com>
8692
8693	* ruby_atomic.h (ATOMIC_CAS): added for Solaris and other platforms.
8694	* ruby_atomic.h, signal.c (NEED_RUBY_ATOMIC_OPS): renamed from
8695	  NEED_RUBY_ATOMIC_EXCHANGE.
8696	* signal.c (ruby_atomic_compare_and_swap): naive, non-atomic
8697	  compare-and-swap implementation only used for platforms without
8698	  valid support for atomic operations.
8699
8700Tue Nov 27 17:43:46 2012  Eric Hodel  <drbrain@segment7.net>
8701
8702	* lib/rdoc/*:  Added --root option for building documentation outside
8703	  the source directory.
8704	* test/rdoc/*:  ditto
8705	* common.mk (rdoc):  Added --root to rdoc rule
8706
8707Tue Nov 27 16:24:45 2012  Eric Hodel  <drbrain@segment7.net>
8708
8709	* test/rdoc/test_rdoc_ri_paths.rb:  Fixed duplicate path bug which
8710	  caused windows failures.
8711
8712Tue Nov 27 16:06:00 2012  Eric Hodel  <drbrain@segment7.net>
8713
8714	* test/rdoc/test_rdoc_generator_darkfish.rb:  Updated tests for windows
8715	* test/rdoc/test_rdoc_options.rb:  ditto
8716	* test/rdoc/test_rdoc_parser.rb:  ditto
8717	* test/rdoc/test_rdoc_rdoc.rb:  ditto
8718	* test/rdoc/test_rdoc_ri_driver.rb:  ditto
8719	* test/rdoc/test_rdoc_servlet.rb:  ditto
8720
8721Tue Nov 27 15:13:51 2012  Eric Hodel  <drbrain@segment7.net>
8722
8723	* common.mk (rdoc):  Set --debug for rdoc generation in case of bugs
8724
8725Tue Nov 27 14:56:45 2012  Eric Hodel  <drbrain@segment7.net>
8726
8727	* lib/rdoc/rubygems_hook.rb:  Updated for (upcoming) RubyGems 2
8728	  import.
8729	* test/rdoc/test_rdoc_rubygems_hook.rb:  ditto
8730
8731Tue Nov 27 13:59:29 2012  Narihiro Nakamura  <authornari@gmail.com>
8732
8733	* NEWS: add improvements of the garbage collector.
8734
8735Tue Nov 27 13:27:46 2012  Eric Hodel  <drbrain@segment7.net>
8736
8737	* lib/rdoc*:  Updated to RDoc 4.0 (pre-release)
8738	* bin/rdoc:  ditto
8739	* test/rdoc*:  ditto
8740	* NEWS:  Updated with RDoc 4.0 information
8741
8742Tue Nov 27 12:17:11 2012  Koichi Sasada  <ko1@atdot.net>
8743
8744	* thread.c (rb_thread_terminate_all): retry broadcast only when
8745	  an exception is raised.
8746
8747Tue Nov 27 12:02:25 2012  Koichi Sasada  <ko1@atdot.net>
8748
8749	* thread.c (rb_thread_terminate_all): broadcast terminate event
8750	  not only an interrupt exception but any exceptions.
8751
8752Tue Nov 27 10:55:09 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8753
8754	* eval.c (ruby_cleanup): set thread status to THREAD_KILLED
8755	  for preventing thr.raise.
8756	* test/ruby/test_thread.rb (test_main_thread_status_at_exit):
8757	  test for the above.
8758
8759Tue Nov 27 10:31:29 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8760
8761	* thread.c (rb_thread_terminate_all): suppress a warning.
8762
8763Tue Nov 27 09:29:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8764
8765	* thread.c (thread_join): raises ThreadError if target thread
8766	  is a main thread.
8767	* test/ruby/test_thread.rb (test_thread_join_main_thread):
8768	  test for the above.
8769	* NEWS: news for the above.
8770
8771Tue Nov 27 09:24:47 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8772
8773	* thread.c (thread_join): raises ThreadError if target thread
8774	  is a current thread.
8775	* test/ruby/test_thread.rb (test_thread_join_current):
8776	  test for the above.
8777	* NEWS: news for the above.
8778
8779Tue Nov 27 09:59:16 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8780
8781	* ext/extmk.rb (extmake): close mkmf.log for each libraries so that
8782	  failure messages are not mixed.
8783
8784Tue Nov 27 09:58:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8785
8786	* ext/digest/*/extconf.rb, ext/openssl/extconf.rb: get git rid of
8787	  post-1.8 feature require_relative for cross compilation.
8788	  [ruby-core:50160] [Bug #7439]
8789
8790Tue Nov 27 09:17:59 2012  Koichi Sasada  <ko1@atdot.net>
8791
8792	* NEWS: add TracePoint.
8793
8794Tue Nov 27 08:16:03 2012  Koichi Sasada  <ko1@atdot.net>
8795
8796	* vm_trace.c: rename TracePoint#file and TracePoint#line
8797	  to TracePoint#path and TracePoint#lineno respectively.
8798	  They are consistent to RubyVM::Backtrace::Location.
8799
8800	* include/ruby/debug.h: ditto.
8801
8802	* vm_core.h: ditto.
8803
8804	* test/ruby/test_settracefunc.rb: ditto.
8805
8806Tue Nov 27 08:04:26 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8807
8808	* thread.c (rb_thread_terminate_all): broadcast eTerminateSignal
8809	  again when Ctrl-C was pressed. [Feature #1952] [ruby-dev:39107]
8810
8811Tue Nov 27 07:58:03 2012  Koichi Sasada  <ko1@atdot.net>
8812
8813	* vm_core.h: add members to rb_trace_arg_t:
8814	  * `klass_solved' represents klass and id is checked.
8815	  * `line' represents line calculated from cfp.
8816	  * `file' represents line calculated from cfp.
8817
8818	* vm_trace.c: fix to use above data structures.
8819	  No need to calculate klass and id, line and file
8820	  pairs for each trace points.
8821
8822Tue Nov 27 07:47:09 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8823
8824	* thread.c (rb_thread_terminate_all): add RUBY_VM_CHECK_INTS_BLOCKING().
8825	  Otherwise the loop in this function behave as busy loop because
8826	  native_sleep() return immediately when RUBY_VM_INTERRUPTED() is true.
8827
8828Tue Nov 27 04:12:49 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8829
8830	* ext/extmk.rb (extmake): git rid of post-1.8 features for cross
8831	  compilation.  [ruby-core:50160] [Bug #7439]
8832
8833Tue Nov 27 00:13:41 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8834
8835	* thread.c (rb_mutex_trylock, rb_mutex_unlock, mutex_sleep):
8836	  raises ThreadError if called from trap handler as Thread#join.
8837	* NEWS: news for the above.
8838
8839Mon Nov 26 23:55:33 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8840
8841	* NEWS: update for Thread#join incompatible change.
8842
8843Mon Nov 26 22:44:24 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8844
8845	* thread.c (rb_thread_terminate_all): use native_sleep() instead
8846	  of rb_thread_schedule(). Otherwise, it consume 100% cpu meaninglessly.
8847	  [Bug #5368] [ruby-dev:44546]
8848	* thread.c (thread_start_func_2): last sub-thread wakes up main thread.
8849
8850Mon Nov 26 21:16:04 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8851
8852	* vm_core.h (RUBY_VM_SET_TIMER_INTERRUPT, RUBY_VM_SET_INTERRUPT)
8853	(RUBY_VM_SET_FINALIZER_INTERRUPT, RUBY_VM_SET_TRAP_INTERRUPT)
8854	(RUBY_VM_INTERRUPTED): use enum symbol instead of immediate value.
8855	* thread.c (thread_join_m, rb_threadptr_execute_interrupts): ditto.
8856	* signal.c (signal_exec): ditto.
8857
8858Mon Nov 26 20:23:20 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8859
8860	* thread.c (thread_join_m): use th->interrupt_mask instead of
8861	  th->in_trap.
8862
8863	* vm_core.h (struct rb_thread_struct): remove in_trap member.
8864	* signal.c (signal_exec): ditto.
8865	* thread.c (thread_create_core): ditto.
8866	* thread.c (Init_Thread): ditto.
8867
8868Mon Nov 26 20:23:49 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
8869
8870	* test/ruby/test_argf.rb (TestArgf#test_chars): since marshal data is
8871	  binary, shouldn't pass via text mode.  use base64 encoded data.
8872
8873Mon Nov 26 19:45:18 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8874
8875	* ruby_atomic.h (ATOMIC_CAS): new macro for compare-and-exchange.
8876
8877	* vm_core.h (struct rb_thread_struct): add interrupt_mask member.
8878	* thread.c (thread_create_core, Init_Thread): initialize
8879	  th->thread_mask.
8880
8881	* vm_core.h (RUBY_VM_INTERRUPTED_ANY): new macro for avoiding
8882	  bare th->interrupt_flag.
8883	* vm_core.h (RUBY_VM_INTERRUPTED, RUBY_VM_INTERRUPTED): check
8884	  th->interrupt_mask.
8885	* thread.c (set_unblock_function, rb_thread_schedule): replace
8886	  th->interrupt_flag with RUBY_VM_INTERRUPTED_ANY()
8887
8888	* signal.c (signal_exec): set up thread->interrupt_mask for
8889	  preventing recursive trap handler.
8890	* vm_core.h (RUBY_VM_CHECK_INTS, RUBY_VM_CHECK_INTS_BLOCKING): ditto.
8891
8892	* thread.c (rb_threadptr_execute_interrupts):
8893	  don't process interrupt if it is masked.
8894	  [Bug #6009] [ruby-core:42524]
8895
8896Mon Nov 26 19:43:42 2012  Koichi Sasada  <ko1@atdot.net>
8897
8898	* iseq.c (make_compile_option_value): add trace_instruction option.
8899	  a patch by davidbalbert (David Albert).
8900	  [Bug #6786]
8901
8902Mon Nov 26 19:10:53 2012  Koichi Sasada  <ko1@atdot.net>
8903
8904	* bootstraptest/test_thread.rb: try to `join' each 100
8905	  threads.
8906	  This benchmark seems consuming long time on travis-ci
8907	  several times (and make `failure').
8908
8909Mon Nov 26 18:22:56 2012  Koichi Sasada  <ko1@atdot.net>
8910
8911	* common.mk: specify label `built-ruby'.
8912
8913	* benchmark/driver.rb: quote path.
8914
8915Mon Nov 26 18:26:28 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8916
8917	* signal.c (signal_exec): add volatile to make sure setjmp safe.
8918
8919Mon Nov 26 18:19:47 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8920
8921	* signal.c (signal_exec): suppress "warning: variable 'signum'
8922	  might be clobbered by 'longjmp' or 'vfork'" warning.
8923
8924Mon Nov 26 18:15:47 2012  Koichi Sasada  <ko1@atdot.net>
8925
8926	* benchmark/driver.rb: accept multiple `-e'.
8927	  You don't need to use `;' separation character.
8928	  [ruby-core:50139] [ruby-trunk - Bug #7380]
8929
8930Mon Nov 26 17:10:04 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8931
8932	* string.c (rb_str_enumerate_chars, rb_str_enumerate_codepoints)
8933	(rb_str_enumerate_lines): suppress "may be used uninitialized in
8934	  this function" warning.
8935
8936Mon Nov 26 17:00:12 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8937
8938	* vm_core.h (rb_thread_struct): added 'in_trap' member for marking
8939	  running trap handler.
8940	* signal.c (signal_exec): turn on in_trap when running trap.
8941	* thread.c (Init_Thread, thread_create_core): initialize in_trap
8942	  when creating new threads.
8943	* thread.c (thread_join_m): raise ThreadError when running trap
8944	  handler.Bug [#6416][ruby-core:44956]
8945	* test/ruby/test_thread.rb (test_thread_join_in_trap): new test
8946	  for the above.
8947
8948Mon Nov 26 16:36:13 2012  NARUSE, Yui  <naruse@ruby-lang.org>
8949
8950	* io.c (argf_each_codepoint): add missing ARGF#codepoints [Bug #7438]
8951
8952Mon Nov 26 15:50:29 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8953
8954	* bignum.c (bigdivrem): restart calculation when bigdivrem1 was
8955	  interrupted by signal. Otherwise, ruby script may see a garbage
8956	  value.
8957
8958Mon Nov 26 15:33:02 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8959
8960	* bignum.c (big_div_struct): added volatile to 'stop' member.
8961	  Otherwise, "if (bds->stop)" check in bigdivrem1 don't read
8962	  memory and ignore interrupt.
8963	* bignum.c (bigdivrem, rb_big_stop): ditto.
8964
8965Mon Nov 26 12:11:09 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8966
8967	* win32/Makefile.sub (DLNOBJ): missing in r37821.
8968
8969Mon Nov 26 10:50:19 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
8970
8971	* test/ruby/test_process.rb (test_setsid): added a few wait for
8972	  preventing that Process.getsid(io.pid) makes Errno::ESRCH.
8973
8974Sun Nov 25 22:34:00 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
8975
8976	* array.c (ary_resize_smaller): new function to resize array.
8977
8978	* array.c (rb_ary_delete): refactoring to extract a function.
8979
8980	* array.c (rb_ary_delete_same): refactoring.
8981	  It renames function, reduces duplicated code and removes unused
8982	  code.
8983
8984	* gc.c (wmap_final_func): follow the above change.
8985
8986	* internal.h (rb_ary_delete_same): ditto.
8987
8988Sun Nov 25 22:27:33 2012  Benoit Daloze  <eregontp@gmail.com>
8989
8990	* array.c: fixes for the updated documentation in r35858:
8991	  Typos and #take/#drop accept to take/drop 0 elements.
8992
8993Sun Nov 25 19:43:29 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
8994
8995	* NEWS: add a news about iconv.
8996
8997Sun Nov 25 03:49:23 2012  Akinori MUSHA  <knu@iDaemons.org>
8998
8999	* lib/set.rb, test/test_set.rb: Move tests embedded in lib/set.rb
9000	  to test/test_set.rb.
9001
9002Sun Nov 25 03:44:50 2012  Akinori MUSHA  <knu@iDaemons.org>
9003
9004	* string.c (rb_str_each_line, rb_str_lines): String#lines now
9005	  returns an array instead of an enumerator.  Passing a block is
9006	  deprecated but still supported for backwards compatibility.
9007	  Based on the patch by yhara. [Feature #6670]
9008
9009	* string.c (rb_str_each_char, rb_str_chars): Ditto for
9010	  String#chars.
9011
9012	* string.c (rb_str_each_codepoint, rb_str_codepoints): Ditto for
9013	  String#codepoints.
9014
9015	* string.c (rb_str_each_byte, rb_str_bytes): Ditto for
9016	  String#bytes.
9017
9018	* NEWS: Add notes for the above changes.
9019
9020Sun Nov 25 02:07:37 2012  Akinori MUSHA  <knu@iDaemons.org>
9021
9022	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_warning)
9023	  (Test::Unit::Assertions#assert_warn), test/ruby/envutil.rb,
9024	  test/ruby/test_enumerator.rb, test/ruby/test_io_m17n.rb,
9025	  test/ruby/test_regexp.rb, test/ruby/test_syntax.rb:
9026	  assert_warn() and assert_warning() are reversed.
9027
9028Sat Nov 24 21:08:50 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
9029
9030	* gc.c (wmap_final_func): rename variables to clarify the meaning.
9031	  In wmap2obj the key is WeakRef and the value is referenced object.
9032	  In obj2wmap the key is referenced object and the value is an array
9033	  of WeakRef.
9034
9035	* gc.c (wmap_finalize): ditto.
9036	  [ruby-core:49044] [Bug #7304]
9037
9038Sat Nov 24 21:01:55 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
9039
9040	* array.c (rb_ary_delete_same_obj): new function for WeakRef.
9041	  This deletes same objects as item argument in the array.
9042
9043	* internal.h (rb_ary_delete_same_obj): add a declaration.
9044
9045	* gc.c (wmap_final_func): remove WeakRef object reference from the
9046	  array. rb_ary_delete() is not usable because it uses rb_equal() to
9047	  compare object references.
9048
9049	* gc.c (wmap_finalize): remove recycled object references from weak
9050	  map hash properly. How to get object reference from object id was
9051	  wrong. st_delete() doesn't work properly if key and value arguments
9052	  are same. The key of obj2wmap is referenced object and the value of
9053	  obj2wmap is WeakRef array.
9054
9055	* gc.c (wmap_aset): obj2wmap should contain WeakRef array in the
9056	  definition.
9057
9058	* test/test_weakref.rb
9059	  (TestWeakRef#test_not_reference_different_object,
9060	   TestWeakRef#test_weakref_finalize): add tests for above.
9061	  [ruby-core:49044] [Bug #7304]
9062
9063Sat Nov 24 19:44:41 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9064
9065	* ext/nkf/nkf-utf8/nkf.c (unicode_iconv_combine): returning flags are
9066	  nkf_char.
9067
9068Sat Nov 24 19:29:18 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9069
9070	* test/ruby/test_rubyoptions.rb (test_usage, test_usage_long):
9071	  reduced, renamed.
9072
9073Sat Nov 24 13:10:14 2012  Koichi Sasada  <ko1@atdot.net>
9074
9075	* vm_trace.c (rb_tracepoint_attr_raised_exception): should not check
9076	  value before event checking.
9077
9078	* vm_trace.c (rb_tracepoint_attr_return_value): ditto.
9079
9080	* test/ruby/test_settracefunc.rb: add tests for TracePoint#return_value
9081	  and TracePoint#raised_exception.
9082
9083Sat Nov 24 12:47:27 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
9084
9085	* test/ruby/test_process.rb (TestProcess#test_setsid): "./ruby-trunk"
9086	  doesn't work on all environments. EnvUtil.rubybin would be suitable.
9087
9088Sat Nov 24 12:28:04 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
9089
9090	* array.c (rb_ary_aref): fix Segmentation fault at TestArray#test_aref
9091	  on x64 mingw. Variable argument of rb_scan_args() should be a pointer
9092	  (VALUE *), but 0 of variable argument seems not equal to null pointer
9093	  on x64 mingw.
9094
9095Sat Nov 24 11:47:14 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9096
9097	* process.c (proc_getsid): adds new method for getting session id.
9098	  Contributed from fumiyas (Fumiyasu SATOH). Thank you!
9099	  [Feature #6757] [ruby-dev:45977]
9100	* configure.in: adds getsid check.
9101	* test/ruby/test_process.rb (TestProcess#test_setsid): new test
9102	  for the above.
9103	* NEWS: news for the above.
9104
9105Sat Nov 24 10:59:14 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9106
9107	* thread.c (thread_create_core): don't use th->thread_id before
9108	  initialized.
9109
9110Sat Nov 24 00:00:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9111
9112	* ruby.c (proc_options, process_options, ruby_process_options): take
9113	  care of the case argc is 0, and check if argv has NULL.
9114	  [ruby-core:49889] [Bug #7423]
9115
9116Sat Nov 24 00:00:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9117
9118	* configure.in (--disable-dln): option to disable dynamic linking
9119	  feature.  [ruby-core:37676] [Feature #4946]
9120
9121Fri Nov 23 23:44:41 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9122
9123	* lib/mkmf.rb (MakeMakefile#pkg_config): strip all white spaces for
9124	  mingw64+MSYS pkg-config which erroneously emits extra newlines.
9125	  [ruby-core:47998] [Bug #7163]
9126
9127Fri Nov 23 17:31:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9128
9129	* ruby.c (usage): wrap description lines if options are too long.
9130
9131Fri Nov 23 11:13:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9132
9133	* test/ruby/test_rubyoptions.rb (TestRubyOptions#test_usage2): refine
9134	  assertion.
9135
9136	* test/ruby/test_rubyoptions.rb (TestRubyOptions#test_usage2): now
9137	  --help option is for modern terminals.
9138
9139Fri Nov 23 10:45:00 2012  Zachary Scott  <zachary@zacharyscott.net>
9140
9141	* ext/socket/ipsocket.c (IPSocket#peeraddr): Fix example
9142	  [ruby-core:46429] [Bug #6732]
9143
9144Fri Nov 23 02:40:00 2012  Zachary Scott  <zachary@zacharyscott.net>
9145
9146	* lib/cgi/core.rb: Documentation for CGI#header alias
9147	  Based on a patch by Marcus Stollsteimer
9148	  [ruby-core:49585] [Bug #7405]
9149
9150Thu Nov 22 23:48:10 2012  Narihiro Nakamura  <authornari@gmail.com>
9151
9152	* gc.c (is_swept_object): extract from is_dead_object().
9153
9154	* gc.c (rb_gcdebug_print_obj_condition): add the function for debug.
9155	  This function shows some conditions of given object (e.g.,
9156	  marked, in heap, swept).
9157
9158	* gc.c (rb_gcdebug_sentinel): add the function for debug.
9159	  This function allow check to inadvertently free up an object.
9160
9161Thu Nov 22 23:45:18 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
9162
9163	* array.c (rb_ary_shared_with_p): fix cache validity check.
9164	  If #pop or #shift has been called against $: or $", the array will
9165	  be still shared with the snapshot. We check array length for cache
9166	  validity.
9167	  [ruby-core:49518] [Bug #7383]
9168
9169	* test/ruby/test_require.rb
9170	  (TestRequire#test_require_with_array_pop,
9171	   TestRequire#test_require_with_array_shift): add tests for above.
9172
9173Thu Nov 22 21:48:48 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9174
9175	* common.mk, win32/Makefile.sub (probes.dmyh): now be made in current
9176	  (=build) directory if build from the repository.
9177
9178Thu Nov 22 21:34:51 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9179
9180	* test/ruby/test_rubyoptions.rb: added a test.
9181
9182Thu Nov 22 20:32:07 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9183
9184	* complex.c (string_to_c_strict, string_to_c): check NUL.
9185	* rational.c (string_to_r_strict, string_to_r): ditto.
9186
9187Thu Nov 22 20:21:45 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9188
9189	* Makefile.in (.dmyh.h): removed $(VPATH). GNU make don't
9190	  recognize suffix rule with VPATH.
9191
9192Thu Nov 22 18:11:27 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9193
9194	* common.mk, Makefile.in, win32/Makefile.sub (.dmyh.h): nmake merges
9195	  explicit rules for same target, but not merges explicit rules and
9196	  implicit rules -- always explicit rules win.  So, need to add an
9197	  explicit rule for probes.h.  [Bug #7421] [ruby-core:49839]
9198
9199Thu Nov 22 18:01:28 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9200
9201	* Makefile.in (probes.o): add -C to ignore #include in probes.d.
9202
9203	* probes.d: include vm_opts.h instead of vm_core.h.
9204
9205	* vm_opts.h (VM_COLLECT_USAGE_DETAILS): move definition from vm_core.h.
9206
9207Thu Nov 22 17:45:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9208
9209	* ext/nkf/nkf-utf8: Merge b0a6577a521d1bba5e19853f95d5c4b9be1072b5.
9210	  Support JIS X 0213 and some bugfixes.
9211
9212Thu Nov 22 17:39:37 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9213
9214	* tool/gen_dummy_probes.rb: don't change #include, #if and #endif
9215	  lines. [Bug #7370]
9216
9217Thu Nov 22 16:58:26 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9218
9219	* Makefile.in: run preprocessor when making probe.h
9220	* probes.d: define probe insn and insn__operand only when
9221	  VM_COLLECT_USAGE_DETAILS is 1. [Bug #7370]
9222
9223Thu Nov 22 16:20:49 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9224
9225	* vm.c: Don't define vm_collect_usage_operand() and
9226	  static void vm_collect_usage_insn() when disabling
9227	  VM_COLLECT_USAGE_DETAILS. (refix r37796)
9228
9229Thu Nov 22 15:26:02 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9230
9231	* vm_insnhelper.h: partly revert r37631 (DTrace support).
9232	  "vm usage information is always collected, so uncomment the
9233	  functions." causes performance impact. [Bug #7370]
9234	  Off course this revert disables related probes.
9235
9236Thu Nov 22 14:14:36 2012  Akinori MUSHA  <knu@iDaemons.org>
9237
9238	* re.c (rb_memsearch_ss): Apply performance improvement to short
9239	  byte array search for platforms without memmem(3).
9240	  [Feature #6311] [ruby-dev:45530]
9241
9242Thu Nov 22 12:52:19 2012  Akinori MUSHA  <knu@iDaemons.org>
9243
9244	* test/ruby/test_string.rb (TestString#test_index): Add some
9245	  corner cases to tests for String#index, which might fail if ruby
9246	  directly used a buggy memmem(3) implementation.
9247
9248Thu Nov 22 08:06:42 2012  Narihiro Nakamura  <authornari@gmail.com>
9249
9250	* test/ruby/test_gc.rb (test_profiler_clear): fix wrong method
9251	  calls [Bug #7419] [ruby-core:49828].
9252
9253Thu Nov 22 02:22:33 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9254
9255	* NEWS: edited (order etc).
9256
9257Wed Nov 21 22:52:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9258
9259	* ext/io/wait/wait.c (io_wait_readable): add alias wait_readable.
9260
9261	* ext/io/wait/wait.c (io_wait_writable): this is easier to use than
9262	  IO.select for a single IO object and is immune to the
9263	  limitations/inefficiency of select() on platforms where poll/ppoll
9264	  is available.  patched by Eric Wong.  [Feature #4646]
9265
9266Wed Nov 21 22:27:52 2012  Narihiro Nakamura  <authornari@gmail.com>
9267
9268	* gc.c (garbage_collect): remove a duplicative probe.
9269
9270Wed Nov 21 22:08:48 2012  Narihiro Nakamura  <authornari@gmail.com>
9271
9272	* gc.c (gc_profile_clear): realloc profile records if its size is
9273	  higher than the threshold, GC_PROFILE_RECORD_DEFAULT_SIZE * 2.
9274
9275Wed Nov 21 21:53:29 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9276
9277	* complex.c (nucomp_to_c): added.
9278
9279Wed Nov 21 21:35:38 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9280
9281	* include/ruby/util.h: removed extra semicolon in definition of
9282	  macro.
9283	* compile.c: ditto.
9284	* cont.c: ditto.
9285	* math.c: ditto.
9286	* node.c: ditto.
9287	* parse.y: ditto.
9288
9289Wed Nov 21 18:46:37 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9290
9291	* rational.c (read_digits): due to a bit tighter rb_cstr_to_inum().
9292
9293Wed Nov 21 16:13:37 2012  Koichi Sasada  <ko1@atdot.net>
9294
9295	* benchmark/bm_so_nsieve_bits.rb: add an encoding pragma because
9296	  this benchmark using strings (literals) as binary sequence.
9297	  Now, they are UTF-8 strings. [ruby-dev:46578]
9298
9299Wed Nov 21 00:57:43 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9300
9301	* file.c (Init_File): null device definition uses rb_define_const
9302	  instead of rb_file_const.
9303
9304Wed Nov 21 00:28:18 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9305
9306	* test/ruby/test_m17n_comb.rb (test_str_crypt): Use RbConfig to get
9307	  libc's directory. Patched by Vit Ondruch [ruby-core:49763] [Bug #7312]
9308
9309Tue Nov 20 23:28:26 2012  Masaki Matsushita  <glass.saga@gmail.com>
9310
9311	* marshal.c: add marshal readahead. marshalized Array, Hash and Struct
9312	  have size at least number of its elements, marshal readahead will
9313	  read the certain readable length and buffer when it needs more bytes.
9314	  marshal readahead prevents many calls to IO#getbyte and IO#read,
9315	  then it enables performance improvement.
9316	  [ruby-dev:45637] [Feature #6440]
9317
9318Tue Nov 20 22:35:02 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9319
9320	* Makefile.in (.d.h): replace char * to const char * because somehow
9321	  current dtrace removes const of function declaration in probes.d.
9322
9323Tue Nov 20 21:41:04 2012  Koichi Sasada  <ko1@atdot.net>
9324
9325	* include/ruby/debug.h: introduced.
9326	  Debugging/profiling features will be located.
9327
9328	* vm_trace.c: expose C-level TracePoint APIs.
9329	  Note that they are experimental.
9330
9331	* vm_trace.c, include/ruby/debug.h: rename `rb_hook_flag_t'
9332	  to `rb_event_hook_flag_t'.
9333	  Macro names `RUBY_HOOK_FLAG_*' are also renamed to
9334	  `RUBY_EVENT_HOOK_FLAG_*'.
9335
9336	* debug.h, vm_debug.h: rename debug.h to vm_debug.h.
9337
9338	* common.mk: ditto.
9339
9340	* debug.c, main.c, vm_core.h: ditto.
9341
9342Tue Nov 20 21:12:37 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9343
9344	* configure.in (RUBY_DTRACE_AVAILABLE): only check dtrace availability.
9345
9346	* configure.in (RUBY_DTRACE_POSTPROCESS): restore.
9347
9348Tue Nov 20 21:22:44 2012  Masaki Suketa <masaki.suketa@nifty.ne.jp>
9349
9350	* test/win32ole/test_win32ole_type.rb (test_implemented_ole_types):
9351	  IShellDispatch6 bundled in Windows 8. Thanks to phasis68 (Heesob
9352	  Park).  [ruby-core:49580][Bug #7403]
9353
9354Tue Nov 20 21:06:41 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9355
9356	* complex.c: some improvements.
9357	* rational.c: ditto.
9358
9359Tue Nov 20 21:01:16 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9360
9361	* common.mk (incs): BSD make cannot deal with non-prefixed dependency
9362	  and prefixed target.
9363
9364Tue Nov 20 20:10:23 2012  Yusuke Endoh  <mame@tsg.ne.jp>
9365
9366	* array.c (rb_ary_bsearch): fix rdoc bug (O(n log n) -> O(log n)).
9367	  Patch by Charlie Somerville.  [ruby-core:49661] [Bug #7409]
9368
9369	* range.c (range_bsearch): ditto.
9370
9371Tue Nov 20 19:02:44 2012  Koichi Sasada  <ko1@atdot.net>
9372
9373	* vm_trace.c: rename and add TracePoint APIs.
9374	  (1) TracePoint.new(...){...} creates a new trace point
9375	      but does not make it enable.
9376	  (2) TracePoint.trace(...){...} creates a new trace point
9377	      and enable it (same as old behavior).
9378	  (3) TracePoint#enable make it enable (renamed from TracePoint#retrace).
9379	      If block given, when enable only in block.
9380	  (4) TracePoint#disable make it disable (renamed from TracePoint#untrace).
9381	      If block given, when disable only in block.
9382	  (5) TracePoint#enabled? returns this trace is enable or not.
9383	  [Feature #6895]
9384
9385	* test/ruby/test_settracefunc.rb: add tests.
9386
9387Tue Nov 20 18:35:05 2012  Koichi Sasada  <ko1@atdot.net>
9388
9389	* vm_trace.c: add two methods:
9390	  (1) TracePoint#return_value which returns return
9391	      value on the :return and :c_return event.
9392	  (2) TracePoint#raised_exception which returns raised exception
9393	      value on the :raise event.
9394	  Each methods raise RuntimeError if it is called at unsupported
9395	  event.
9396	  Please review and give us feedback until next preview
9397	  release (Dec/2012) of Ruby 2.0.0.
9398	  [Feature #6895]
9399
9400	* insns.def, vm.c, vm_eval.c, vm_insnhelper.c, eval.c, thread.c:
9401	  ditto.
9402
9403	* vm_trace.c, vm_core.h: move definition of rb_trace_arg_t from
9404	  vm_trace.c to vm_core.h.
9405	  Caller fills rb_trace_arg_t and pass the pointer of this variable.
9406
9407	* test/ruby/test_settracefunc.rb: fix tests to test this change.
9408
9409Tue Nov 20 17:31:12 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9410
9411	* configure.in: fix dtrace didn't work on darwin.
9412
9413	* configure.in (RUBY_DTRACE_AVAILABLE): unify RUBY_DTRACE_POSTPROCESS
9414	  and RUBY_DTRACE_BSD_BROKEN.
9415
9416Tue Nov 20 15:20:00 2012  Zachary Scott  <zachary@zacharyscott.net>
9417
9418	* file.c (File.extname): Documentation for extname on dotfiles and
9419	files ending with a dot. Also, added example for this.
9420	[ruby-core:47852] [Bug #7112]
9421
9422Tue Nov 20 14:19:20 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9423
9424	* test/ruby/test_signal.rb (TestSignal#test_signame): fix windows
9425	  test failure. Process.kill on windows can't send a signal to
9426	  another process.
9427
9428Tue Nov 20 13:58:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9429
9430	* io.c (Init_IO): moved all rb_file_const() into file.c.
9431	* file.c (Init_File): replace with rb_file_const() with
9432	  rb_define_const() because RDoc don't care rb_file_const.
9433	  [Bug #5530]
9434
9435Tue Nov 20 12:35:00 2012  Zachary Scott  <zachary@zacharyscott.net>
9436
9437	* ruby.c (usage_msg): Fix typo [ruby-core:49205] [Bug #7327]
9438
9439Tue Nov 20 12:35:00 2012  Zachary Scott  <zachary@zacharyscott.net>
9440
9441	* file.c (File::NULL): Document File::NULL constant
9442	  [ruby-core:49384] [Bug #7365]
9443
9444Tue Nov 20 12:05:15 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9445
9446	* win32/win32.c (rb_w32_read): Windows 8 fixed one of a bug of console
9447	  API.
9448	  based on the patch by Heesob Park at [ruby-core:49479] [Bug #7379]
9449
9450Tue Nov 20 11:14:33 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9451
9452	* configure.in (--enable-dtrace): always call RUBY_DTRACE_BSD_BROKEN
9453	  for portability.
9454	  As the note, FreeBSD 8 has DTrace as the optional
9455	  feature (it is enabled by the build option), but doesn't have USDT.
9456	  FreeBSD 9 has USDT but they are still optional. FreeBSD 10 will
9457	  enable them by default.
9458	  The variable $rb_cv_prog_dtrace_g is "yes" only on FreeBSD 9 with
9459	  optional DTrace or FreeBSD 10. If it is "no", you cannot know
9460	  whether it doesn't need -G or DTrace is disabled. (by checking
9461	  error code, you can know)
9462
9463Mon Nov 19 22:55:48 2012  Naohisa Goto  <ngotogenome@gmail.com>
9464
9465	* configure.in (--enable-dtrace): change help message
9466
9467Tue Nov 20 11:05:00 2012  Zachary Scott  <zachary@zacharyscott.net>
9468
9469	* lib/tracer.rb (Tracer.trace_func): printf to stdout
9470	  Patch by Michal Fojtik [ruby-core:45219] [Bug #6490]
9471
9472Mon Nov 19 21:24:18 2012  Naohisa Goto  <ngotogenome@gmail.com>
9473
9474	* vm_dump.c: not to include probes.h because the code does not depend
9475	  on it.
9476	* common.mk (vm_dump.$(OBJEXT)): remove dependency on probes.h
9477
9478Tue Nov 20 10:14:22 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9479
9480	* thread.c (rb_thread_s_check_interrupt): removed redundant
9481	  GET_THREAD().
9482
9483Tue Nov 20 10:12:46 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9484
9485	* thread.c (rb_threadptr_async_errinfo_active_p): added a small
9486	  comment.
9487
9488Tue Nov 20 10:05:56 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9489
9490	* thread.c (rb_thread_blocking_region_end): replaced GET_THREAD()
9491	  with ruby_thread_from_native(). We don't have GVL here.
9492
9493Tue Nov 20 09:56:15 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9494
9495	* thread.c (rb_threadptr_execute_interrupts) removed.
9496	* thread.c (rb_threadptr_execute_interrupts_common) renamed to
9497	  rb_threadptr_execute_interrupts. I.e. unified
9498	  rb_threadptr_execute_interrupts and rb_threadptr_execute_interrupts_common.
9499	* thread.c (rb_thread_schedule, rb_thread_execute_interrupts) s/_common//.
9500
9501Tue Nov 20 09:48:34 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9502
9503	* signal.c (rb_get_next_signal): removed pointless signal
9504	  disabling. pthread_sigmask() only changes current thread
9505	  mask.
9506
9507Tue Nov 20 09:36:55 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9508
9509	* signal.c (install_sighandler): added comments why we need
9510	  rb_disable_interrupt().
9511
9512Tue Nov 20 09:31:33 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9513
9514	* signal.c (rb_disable_interrupt, rb_enable_interrupt): removed
9515	  USE_TRAP_MASK.
9516	* signal.c (trap_arg, trap_ensure): removed.
9517	* signal.c (trap, sig_trap): removed pointless signal disabling.
9518	  We don't need it because we no longer run trap handler on signal
9519	  handler context.
9520
9521Tue Nov 20 09:20:49 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9522
9523	* prelude.rb: Moved Mutex#synchronize to
9524	* thread.c (rb_mutex_synchronize_m): here. [Bug #4266]
9525
9526Tue Nov 20 08:36:15 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9527
9528	* signal.c (sig_signame): implements Signal.signame method
9529	[Feature #5613]
9530	* test/ruby/test_signal.rb (test_signame): adds test for above
9531	* NEWS: add an item about above
9532
9533Mon Nov 19 16:30:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9534
9535	* struct.c (rb_struct_each_pair): yield associated pairs so that
9536	  an unsplat argument can get both, for consistency with Hash,
9537	  OpenStruct, and etc.  [ruby-dev:46533] [Bug #7382]
9538
9539Mon Nov 19 16:17:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9540
9541	* configure.in (LIBS): libelf is need on only FreeBSD.
9542
9543Mon Nov 19 16:08:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9544
9545	* common.mk (RUBYLIB): purelib option in runruby.rb is deprecated
9546	  since r28841, so set to an empty list to get rid of a bogus path in
9547	  child processes, which caused an insecure operation exception in
9548	  test/ruby/test_encoding.rb:test_unsafe.
9549
9550Mon Nov 19 15:40:50 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
9551
9552	* .travis.yml (script): add OPTS=-v, requested by @_ko1.
9553
9554Mon Nov 19 15:09:07 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9555
9556	* configure.in: fix didn't enable_dtrace=yes on auto.
9557
9558	* configure.in: see enable_dtrace for adding libelf on FreeBSD.
9559
9560	* common.mk: VPATH is not needed.
9561
9562Mon Nov 19 14:55:51 2012  Koichi Sasada  <ko1@atdot.net>
9563
9564	* thread.c: add `Thread#backtrace_locations' method.
9565	  This method is similar to `caller_locations' method for
9566	  specific method.
9567	  And fix to accept `level' and `n' parameters for `Thread#backtrace'
9568	  and `Thread#backtrace_locations'.
9569	  `caller' (and `caller_locations') do not return `caller' method
9570	  frame.
9571	  However, `Thread#backtrace' (and `Thread#backtrace_locations')
9572	  return `Thread#backtrace' method frame itself
9573	  if `Thread.current.backtrace' was called.
9574
9575	* vm_backtrace.c: ditto.
9576
9577	* internal.h: ditto.
9578
9579	* test/ruby/test_backtrace.rb: add tests.
9580
9581Mon Nov 19 14:54:32 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9582
9583	* Makefile.in, common.mk (probes.h): moved to common.mk and changed to
9584	  see $(srcdir).
9585
9586	* common.mk (probes.dmyh): now created it on $(srcdir) always.
9587
9588	* win32/Makefile.sub (.SUFFIXES): removed common suffix.
9589
9590Mon Nov 19 10:00:10 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9591
9592	* Makefile.in (.SUFFIX): bsdmake needs .SUFFIX is defined before use.
9593
9594	* common.mk: fix path of probes.dmyh.
9595
9596	* common.mk (vm_dump.o): depend probes.h.
9597
9598	* configure.in: FreeBSD's USDT requires libelf.
9599
9600Mon Nov 19 01:11:59 2012  Naohisa Goto  <ngotogenome@gmail.com>
9601
9602	* vm_core.h, probes_helper.h (RUBY_DTRACE_FUNC_ENTRY_HOOK,
9603	  RUBY_DTRACE_FUNC_RETURN_HOOK): move from vm_core.h to new file
9604	  probes_helper.h for narrowing dependency to probes.h.
9605	* common.mk (VM_CORE_H_INCLUDES): remove dependency to probes.h.
9606	* common.mk (vm.$(OBJEXT)): add dependency to probes_helper.h.
9607	* vm.c, vm_insnhelper.c: include probes_helper.h.
9608
9609Sun Nov 18 16:33:00 2012  Naohisa Goto  <ngotogenome@gmail.com>
9610
9611	* configure.in, Makefile.in, common.mk: support DTrace on Solaris 10,
9612	  based on r26235 by Yugui. On Solaris 10, low optimization level
9613	  may also be needed, e.g. optflags="-xO1" or "-xO0" with Oracle
9614	  SolarisStudio 12.3 cc.
9615
9616	* configure.in (--enable-dtrace): new option to enable/disable
9617	  DTrace support. By default, trying to enable if dtrace command
9618	  is found on the system. It is disabled when cross compiling.
9619
9620	* configure.in (RUBY_DTRACE_POSTPROCESS): new macro. checks whether
9621	  the dtrace on the system needs postprocessing with "dtrace -G".
9622	  The postprocessing is needed on Solaris 10 and other platforms.
9623
9624	* configure.in (RUBY_DTRACE_BSD_BROKEN): new macro. checks whether
9625	  the dtrace supports USDT.
9626
9627	* configure.in (DTRACE): move after RUBY_DTRACE_POSTPROCESS.
9628
9629	* configure.in (LD): On Solaris, /usr/ccs/bin/ld is preferred.
9630
9631	* configure.in, Makefile.in, common.mk (DTRACE_OBJ): new macro for
9632	  DTrace probe object generated by postprocessing with "dtrace -G".
9633
9634	* Makefile.in, common.mk (probes.$(OBJEXT)): DTrace probe object
9635	  generated by the postprocessing. New file probes.stamp is for
9636	  rebuilding related objects that may be modified by "dtrace -G".
9637
9638	* configure.in, Makefile.in, common.mk (DTRACE_GLOMMED_OBJ): new
9639	  macro for DTrace static library hacks.
9640
9641	* configure.in, Makefile.in (LIBRUBY_A_OBJS): ditto.
9642
9643	* Makefile.in, common.mk (ruby-glommed.$(OBJEXT)): new target with
9644	  rule for DTrace static library hacks.
9645
9646	* common.mk (DTRACE_DEPENDENT_OBJS): objects depended on probes.h.
9647
9648Sun Nov 18 09:31:47 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9649
9650	* complex.c (read_comp): mathn compliant.
9651	* rational.c (read_num): ditto.
9652
9653Sun Nov 18 02:50:12 2012  Luis Lavena <luislavena@gmail.com>
9654
9655	* win32/file.c (replace_to_long_name): correct logic around wildcard
9656	  characters detection and ensure wide-chars are used as pattern.
9657	  [ruby-core:49451] [Bug #7374]
9658
9659Sun Nov 18 02:02:46 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9660
9661	* complex.c (read_comp): modified handling of polar form.
9662
9663Sun Nov 18 00:50:44 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9664
9665	* complex.c (read_comp): fixed handling of polar form.
9666
9667Sun Nov 18 00:14:46 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9668
9669	* complex.c (string_to_c_strict, string_to_c): rewrote without regexp.
9670	* rational.c (string_to_r_strict, string_to_r): ditto.
9671
9672Sat Nov 17 23:53:05 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9673
9674	* complex.c (make_patterns): should not accept extra sign.
9675
9676Sat Nov 17 21:45:12  Luis Lavena  <luislavena@gmail.com>
9677
9678	* win32/file.c (replace_to_long_name): skip expansion for all wildcard
9679	  characters.
9680	  [ruby-core:49451] [Bug #7374]
9681
9682	* test/ruby/test_file_exhaustive.rb: add more assertions to test.
9683
9684Sat Nov 17 12:14:50 2012  Aaron Patterson <aaron@tenderlovemaking.com>
9685
9686	* ext/psych/lib/psych/visitors/yaml_tree.rb: use literal YAML style
9687	  when emitting multi-line strings. Thanks @atambo
9688
9689	* test/psych/test_yaml.rb: test for change.
9690
9691Sat Nov 17 12:03:41 2012  Aaron Patterson <aaron@tenderlovemaking.com>
9692
9693	* ext/psych/lib/psych/scalar_scanner.rb: avoid raising exceptions when
9694	  parsing Floats and Integers. Thanks riffraff [ruby-core:44426]
9695	* test/psych/test_numeric.rb: associated test
9696
9697Sat Nov 17 11:34:31 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
9698
9699	* st.c (st_update): pass the key in st_table so that we can free
9700	  memory of the key in st_table when deleting.
9701	  [ruby-core:49220] [Bug #7330]
9702
9703	* test/-ext-/st/test_update.rb
9704	  (Bug::StTable#test_pass_objects_in_st_table): add a test.
9705
9706Sat Nov 17 11:26:36 2012  Aaron Patterson <aaron@tenderlovemaking.com>
9707
9708	* ext/psych/lib/psych/core_ext.rb: move Kernel#y so that it can
9709	  manually be required as 'psych/y'.
9710
9711	* ext/psych/lib/psych/y.rb: ditto
9712
9713Sat Nov 17 08:13:48 2012  Benoit Daloze  <eregontp@gmail.com>
9714
9715	* lib/abbrev.rb: fix r37113. Correct examples, fix style
9716	  and show explicit dependency (require 'abbrev').
9717
9718Sat Nov 17 07:35:15 2012  Luis Lavena  <luislavena@gmail.com>
9719
9720	* win32/file.c (replace_to_long_name): skip automatic path expansion
9721	  when wildcard character is used.  [ruby-core:49451] [Bug #7374]
9722
9723	* test/ruby/test_file_exhaustive.rb: add a test for above.
9724
9725Sat Nov 17 00:50:23 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
9726
9727	* marshal.c (w_object): add flonum to arg->data to keep reference index
9728	  consistency. [ruby-core:49323] [Bug #7348]
9729
9730	* test/ruby/test_marshal.rb: add a test for above.
9731
9732Sat Nov 17 00:40:25 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9733
9734	* common.mk (incs): dist files need probes.dmyh.
9735
9736	* common.mk (probes.dmyh): depends on generator script.
9737
9738	* Makefile.in, common.mk, configure.in, win32/Makefile.sub (probes.h):
9739	  select generating with dtrace or copying dummy file by suffix rules.
9740
9741Fri Nov 16 19:24:10 2012  Koichi Sasada  <ko1@atdot.net>
9742
9743	* thread.c (rb_thread_call_without_gvl2): change the parameter of
9744	  `func' from `int *skip_interrupt' to `VALUE *flags'.
9745	  If (flags & RUBY_CALL_WO_GVL_FLAG_SKIP_CHECK_INTS) is not zero,
9746	  then skip checking interrupt.
9747	  [ruby-core:46547]
9748
9749	* include/ruby/thread.h: ditto.
9750
9751Fri Nov 16 18:59:05 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9752
9753	* Makefile.in (no-dtrace-probes.h): dmyprobes.h is in srcdir.
9754
9755	* common.mk (dmyprobes.h): ditto.
9756
9757Fri Nov 16 17:57:15 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9758
9759	* Makefile.in (probes.h): split build commands for dtrace-available
9760	  and unavailable platforms.
9761
9762	* Makefile.in (incs): probes.h is a platform dependent file, so it
9763	  cannot be a part of prereq target.  move it to all-incs.
9764
9765	* configure.in (DTRACE): move after AC_PROG_CC since cross_compiling
9766	  is set in it.
9767
9768	* configure.in (DTRACE): ignore non-prefixed version if
9769	  cross-compiling.
9770
9771	* Makefile.in, win32/Makefile.sub (probes.h): fix copying dmyprobes.h
9772	  path when outplace-build.
9773
9774Fri Nov 16 15:27:36 2012  Masaki Matsushita  <glass.saga@gmail.com>
9775
9776	* lib/net/pop.rb (POP3.certs): fix typo in comment.
9777	  patch from no6v (Nobuhiro IMAI) <nov@yo.rim.or.jp>.
9778	  [ruby-dev:46519] [Bug #7355]
9779
9780Fri Nov 16 12:36:47 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9781
9782	* test/rake/helper.rb (Rake::TestCase#setup): revert r37669.
9783	  @orig_PWD should be the original pwd.
9784
9785	* test/rake/test_*.rb: don't use @orig_PWD to load libraries.
9786	  It should be specified with relative path from the file.
9787
9788Fri Nov 16 10:22:52 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9789
9790	* test/rake/helper.rb (Rake::TestCase#setup): @orig_PWD shouldn't be
9791	  Dir.pwd when the build directory is different from source directory.
9792
9793Fri Nov 16 09:41:08 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9794
9795	* lib/rake/version.rb:  workaround fix to build. see #7366
9796	  [ruby-dev:46522]
9797
9798Fri Nov 16 07:23:18 2012  Eric Hodel  <drbrain@segment7.net>
9799
9800	* lib/rake*:  Updated to rake 0.9.4
9801	  http://rake.rubyforge.org/doc/release_notes/rake-0_9_4_rdoc.html for
9802	  a list of changes in 0.9.4.
9803
9804	* test/rake*:  ditto
9805
9806	* NEWS:  ditto
9807
9808Fri Nov 16 06:58:52 2012  Eric Hodel  <drbrain@segment7.net>
9809
9810	* lib/rake*:  Updated to rake 0.9.3.  See
9811	  http://rake.rubyforge.org/doc/release_notes/rake-0_9_3_rdoc.html for
9812	  a list of changes in 0.9.3.
9813
9814	* test/rake*:  ditto
9815
9816	* bin/rake:  ditto
9817
9818	* NEWS:  ditto
9819
9820Thu Nov 15 22:39:32 2012  Yusuke Endoh  <mame@tsg.ne.jp>
9821
9822	* range.c (range_bsearch): fix some bugs: a documentation bug, a wrong
9823	  condition, missed break in switch/case, and workaround for GCC
9824	  optimization. See [ruby-core:49364] in detail.  A great patch from
9825	  Heesob Park. [Bug #7352] [Feature #4766]
9826
9827	* array.c (rb_ary_bsearch): fix similar bug (missed break).
9828
9829	* test/ruby/test_range.rb: add two test cases for above.
9830
9831Thu Nov 15 22:41:57 2012  Koichi Sasada  <ko1@atdot.net>
9832
9833	* vm_exec.h (GENTRY): GENTRY should be pointer size.
9834	  A patch by yoshidam (Yoshida Masato) [Bug #7332].
9835
9836Thu Nov 15 13:20:00 2012  Zachary Scott  <zachary@zacharyscott.net>
9837
9838	* man/erb.1: Fix grammar and copyright dates
9839	* man/goruby.1: ditto
9840	* man/irb.1: ditto
9841	* man/rake.1: ditto
9842	* man/ri.1: ditto
9843	* man/ruby.1: ditto
9844	  Patch by Arthur Gunn
9845	  [Fixes Github #210]
9846
9847Thu Nov 15 11:35:00 2012  Zachary Scott  <zachary@zacharyscott.net>
9848
9849	* man/ruby.1: Grammar edits for man page
9850	  Based on a patch by Michael Endsley [Fixes Github #183]
9851
9852Thu Nov 15 00:47:20 2012  Yusuke Endoh  <mame@tsg.ne.jp>
9853
9854	* array.c (rb_ary_bsearch): add Array#bsearch for binary search.
9855	  [ruby-core:36390] [Feature #4766]
9856
9857	* test/ruby/test_array.rb: add a test for above.
9858
9859	* range.c (range_bsearch): add Range#bsearch for binary search.
9860	  [ruby-core:36390] [Feature #4766]
9861
9862	* test/ruby/test_range.rb: add a test for above
9863
9864	* NEWS: added the two new methods.
9865
9866Wed Nov 14 13:25:00 2012  Zachary Scott  <zachary@zacharyscott.net>
9867
9868	* lib/fileutils.rb (chmod): Add "X" to modes, convert format to table
9869	  [ruby-core:48965] [Bug #7288]
9870
9871Wed Nov 14 11:51:00 2012  Zachary Scott  <zachary@zacharyscott.net>
9872
9873	* lib/csv.rb (init_comments): Document private method #init_comments.
9874	  Based on a patch from Vincent Batts [ruby-core:49172] [Bug #7319]
9875
9876Wed Nov 14 00:54:00 2012  Kenta Murata  <mrkn@mrkn.jp>
9877
9878	* Makefile.in (probes.h): create from probes.d
9879
9880Tue Nov 13 18:44:01 2012  Koichi Sasada  <ko1@atdot.net>
9881
9882	* vm_insnhelper.c (vm_call_cfunc_with_frame): don't use ci after
9883	  EXEC_EVENT_HOOK because ci can be overridden.
9884
9885	* vm_eval.c: ditto.
9886
9887	* method.h: change invoker's parameters types.
9888
9889	* vm_method.c (call_cfunc_invoker_func): ditto.
9890
9891Tue Nov 13 18:01:54 2012  Shugo Maeda  <shugo@ruby-lang.org>
9892
9893	* eval.c (rb_mod_using): raise an ArgumentError if cyclic using is
9894	  detected.  based on the patch by Charlie Somerville.
9895	  [ruby-core:49092] Bug #7308
9896
9897	* test/ruby/test_refinement.rb: related test.
9898
9899Tue Nov 13 17:40:04 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9900
9901	* common.mk (vm_insnhelper.c): this target is useless and causes
9902	  ruby always need rebuild.
9903
9904Tue Nov 13 17:35:49 2012  Koichi Sasada  <ko1@atdot.net>
9905
9906	* compile.c (insn_data_to_s_detail): remove debug lines.
9907
9908Tue Nov 13 17:28:47 2012  Koichi Sasada  <ko1@atdot.net>
9909
9910	* vm_insnhelper.c (vm_caller_setup_args): save and restore
9911	  ci->argc and ci->blockptr before and after method invocations
9912	  because these method dispatches can override call_info.
9913
9914	* bootstraptest/test_method.rb: add tests for this fix.
9915
9916Tue Nov 13 16:38:02 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9917
9918	* common.mk (dmyprobes.h): always create for make dist.
9919
9920	* Makefile.in (probes.h): create or copy dmyprobes.h
9921
9922	* win32/Makefile.sub: only do copy dmyprobes.h.
9923
9924Tue Nov 13 15:37:21 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9925
9926	* Makefile.in (.SUFFIX): .SUFFIX is needed here for .d.h on bsd make.
9927
9928Tue Nov 13 15:34:35 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9929
9930	* common.mk Makefile.in win32/Makefile.sub (.d.h): it's not common.
9931
9932Tue Nov 13 12:27:11 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9933
9934	* configure.in: disable dtrace because it doesn't work on FreeBSD.
9935
9936	* common.mk (clean-local): rm probes.h.
9937
9938	* common.mk (parse.o): depend $(PROBES_H_INCLUDES).
9939
9940	* common.mk (.d.h): moved from Makefile.in and use BASERUBY.
9941
9942	* tool/gen_dummy_probes.rb: reimplemented with ruby because sed is not
9943	  available on Windows Microsoft VC++ environment.
9944
9945Tue Nov 13 12:30:26 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9946
9947	* win32/README.win32: added mention about build directory.  currently
9948	  we can not build ruby in win32 directory.  this problem is reported
9949	  by Masahiro Kitajima <katonbo@katontech.com>.
9950
9951Tue Nov 13 11:03:47 2012  Masaki Matsushita  <glass.saga@gmail.com>
9952
9953	* re.c (rb_memsearch_ss): performance improvement by using memmem(3) if
9954	  possible. [ruby-dev:45530] [Feature #6311]
9955
9956	* configure.in: check existence of memmem(3) and that it is not broken.
9957
9958Tue Nov 13 06:50:02 2012  Aaron Patterson <aaron@tenderlovemaking.com>
9959
9960	* probes.d: add DTrace probe declarations. [ruby-core:27448]
9961
9962	* array.c (empty_ary_alloc, ary_new): added array create DTrace probe.
9963
9964	* compile.c (rb_insns_name): allowing DTrace probes to access
9965	  instruction sequence name.
9966
9967	* Makefile.in: translate probes.d file to appropriate header file.
9968
9969	* common.mk: declare dependencies on the DTrace header.
9970
9971	* configure.in: add a test for existence of DTrace.
9972
9973	* eval.c (setup_exception): add a probe for when an exception is
9974	  raised.
9975
9976	* gc.c: Add DTrace probes for mark begin and end, and sweep begin and
9977	  end.
9978
9979	* hash.c (empty_hash_alloc): Add a probe for hash allocation.
9980
9981	* insns.def: Add probes for function entry and return.
9982
9983	* internal.h: function declaration for compile.c change.
9984
9985	* load.c (rb_f_load): add probes for `load` entry and exit, require
9986	  entry and exit, and wrapping search_required for load path search.
9987
9988	* object.c (rb_obj_alloc): added a probe for general object creation.
9989
9990	* parse.y (yycompile0): added a probe around parse and compile phase.
9991
9992	* string.c (empty_str_alloc, str_new): DTrace probes for string
9993	  allocation.
9994
9995	* test/dtrace/*: tests for DTrace probes.
9996
9997	* vm.c (vm_invoke_proc): add probes for function return on exception
9998	  raise, hash create, and instruction sequence execution.
9999
10000	* vm_core.h: add probe declarations for function entry and exit.
10001
10002	* vm_dump.c: add probes header file.
10003
10004	* vm_eval.c (vm_call0_cfunc, vm_call0_cfunc_with_frame): add probe on
10005	  function entry and return.
10006
10007	* vm_exec.c: expose instruction number to instruction name function.
10008
10009	* vm_insnhelper.c: add function entry and exit probes for cfunc
10010	  methods.
10011
10012	* vm_insnhelper.h: vm usage information is always collected, so
10013	  uncomment the functions.
10014
10015Mon Nov 12 19:14:50 2012  Akinori MUSHA  <knu@iDaemons.org>
10016
10017	* configure.in (isinf, isnan): isinf() and isnan() are macros on
10018	  DragonFly which cannot be found by AC_REPLACE_FUNCS().  This
10019	  workaround enforces the fact that they exist on DragonFly.
10020
10021Mon Nov 12 15:59:38 2012  Shugo Maeda  <shugo@ruby-lang.org>
10022
10023	* vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo),
10024	  vm_insnhelper.c (vm_search_method): revert r37616 because it's too
10025	  slow.  [ruby-dev:46477]
10026
10027	* test/ruby/test_refinement.rb (test_inline_method_cache): skip
10028	  the test until the bug is fixed efficiently.
10029
10030Mon Nov 12 14:28:01 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10031
10032	* win32/mkexports.rb (each_export): skip garbage generated by VS2012's
10033	  nmake.
10034	  reported and patched by Yoshida Masato at [Bug #7333] [ruby-dev:46484]
10035
10036Sun Nov 11 18:58:55 2012  Tadayoshi Funaba  <tadf@dotrb.org>
10037
10038	* test/date/test_date_{parse,strptime}.rb: changed the format of
10039	  some extra messages.
10040
10041Sun Nov 11 18:41:34 2012  Tadayoshi Funaba  <tadf@dotrb.org>
10042
10043	* ext/date/date_parse.c (date__parse): revised the tight parser
10044	  (about handling of apostrophes).
10045
10046Sun Nov 11 15:39:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10047
10048	* hash.c (rb_hash_s_create): just warn for wrong elements now.
10049	  [ruby-dev:46440] [Bug #7300]
10050
10051	* hash.c (rb_hash_s_create): refine error messages.
10052
10053	* error.c (rb_builtin_class_name): share for above.
10054
10055Sun Nov 11 15:12:18 2012  Shugo Maeda  <shugo@ruby-lang.org>
10056
10057	* eval.c (top_using): remove Kernel#using, and add main.using instead.
10058
10059	* test/ruby/test_refinement.rb: related test.
10060
10061Sun Nov 11 13:41:01 2012  Shugo Maeda  <shugo@ruby-lang.org>
10062
10063	* eval.c (rb_using_refinement, rb_mod_using, f_using): clear method
10064	  cache only when using is called explicitly.
10065
10066	* test/ruby/test_refinement.rb: related test.
10067
10068Sun Nov 11 12:56:34 2012  Masaki Matsushita  <glass.saga@gmail.com>
10069
10070	* lib/pstore.rb (PStore): fix not to replace ThreadError raised in
10071	  #transaction block with PStore::Error.
10072	  [ruby-core:39238] [Bug #5269]
10073
10074Sun Nov 11 11:36:19 2012  Shugo Maeda  <shugo@ruby-lang.org>
10075
10076	* vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo):
10077	  add a new field for inline method cache.
10078
10079	* vm_insnhelper.c (vm_search_method): check rb_call_info_t::refinements
10080	  not to confuse inline method cache when module_eval is used with
10081	  refinements.
10082
10083	* test/ruby/test_refinement.rb: related test.
10084
10085Sun Nov 11 08:45:45 2012  Martin Duerst  <duerst@it.aoyama.ac.jp>
10086
10087	* ruby.c: removed a comma before "before"
10088
10089Sat Nov 10 23:02:31 2012  Narihiro Nakamura  <authornari@gmail.com>
10090
10091	* gc.c: move immutable fields from struct heaps_slot and struct
10092	  sorted_heaps_slot into struct heaps_header.
10093	  Based on a patch from Sokolov Yura [Feature #6199][ruby-core:43592]
10094
10095Sat Nov 10 19:28:16 2012  Tadayoshi Funaba  <tadf@dotrb.org>
10096
10097	* complex.c: modified doc.
10098	* rational.c: ditto.
10099
10100Sat Nov 10 18:20:10 2012  Tadayoshi Funaba  <tadf@dotrb.org>
10101
10102	* ext/date/date_parse.c: edited about era.
10103
10104Sat Nov 10 12:13:41 2012  Kouhei Sutou  <kou@cozmixng.org>
10105
10106	* tool/rbinstall.rb: Don't install *.gemspec under lib/.
10107	  [ruby-core:48966] [Bug #7289]
10108	  Reported by Vit Ondruch. Thanks!!!
10109
10110Sat Nov 10 00:49:26 2012  Naohisa Goto  <ngotogenome@gmail.com>
10111
10112	* ruby_atomic.h: renamed from atomic.h to avoid header file name
10113	  conflict on Solaris 10. [ruby-dev:46414] [Bug #7287]
10114
10115	* gc.c, signal.c, vm_core.h, common.mk: reflect the rename from
10116	  atomic.h to ruby_atomic.h.
10117
10118Sat Nov 10 00:46:57 2012  Naohisa Goto  <ngotogenome@gmail.com>
10119
10120	* atomic.h: Revert r37491 which is a temporary workaround.
10121
10122Sat Nov 10 00:33:31 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10123
10124	* siphash.h: check configure macros before include newer headers.
10125
10126Fri Nov  9 23:33:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10127
10128	* lib/erb.rb (ERB#run, ERB#result): eval under isolated bindings for
10129	  safe concurrent use.  [ruby-core:47638] [Bug #7046]
10130
10131Fri Nov  9 23:05:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10132
10133	* random.c (BYTE_ORDER): define using configured WORDS_BIGENDIAN.
10134
10135	* siphash.c (sip_init_state): use union to suppress warnings by gcc
10136	  4.7.
10137
10138Fri Nov  9 19:40:03 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10139
10140	* array.c (rb_ary_splice): fix r37583 doesn't consider the case when
10141	  beg > array length.
10142
10143Fri Nov  9 16:11:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10144
10145	* random.c (rb_memhash): use siphash.
10146
10147Fri Nov  9 16:08:46 2012  Sokolov Yura funny-falcon  <funny.falcon@gmail.com>
10148
10149	* array.c: speedup Array#unshift by using space in shared array.
10150	  [Feature #6638]
10151	  - when array owns its shared array (ARY_SHARED_NUM == 1), and there
10152	    is enough space then try unshift values directly into shared
10153	    array.
10154	  - when resulting array is big (~>64 items) then make it shared with
10155	    enough room for future #unshifts, and then insert into shared
10156	    array.
10157
10158	* array.c (rb_ary_splice): use shared array in rb_ary_slice.
10159	  [Feature #6638]
10160	  - use ary_ensure_room_for_push when rb_ary_slice used to add at the
10161	    end of array, cause rb_ary_concat use rb_ary_slice.
10162
10163	* array.c (ary_ensure_room_for_push): make array really suitable for
10164	  queue.  [Feature #6638]
10165	  when array is shared (which happens after Array#shift), and
10166	  ARY_SHARED_NUM == 1 (which is very often when array used as queue),
10167	  then make rb_ary_push push directly into shared array.
10168
10169	* array.c (rb_ary_modify): steal shared array's container when
10170	  ARY_SHARED_NUM == 1.  [Feature #6638]
10171	  - Do not allocate new memory in rb_ary_modify when ARY_SHARED_NUM == 1
10172	    and length almost same.
10173	  - Store ARY_CAPA instead of RARRAY_LEN in ary_make_shared, to make
10174	    it useful.
10175	  - Fix rb_ary_sort_bang accordantly.
10176
10177Fri Nov  9 16:00:00 2012  Zachary Scott  <zzak@zacharyscott.net>
10178
10179	* ext/bigdecimal/bigdecimal.c: Documentation for BigDecimal
10180	  Based on a patch from Vincent Batts [ruby-core:49047] [Bug #7305]
10181
10182Fri Nov  9 15:25:42 2012  Akinori MUSHA  <knu@iDaemons.org>
10183
10184	* lib/shellwords.rb (Shellwords#shellescape): Add back my original
10185	  real world example with some enhancement.
10186
10187	* lib/shellwords.rb (Shellwords#shelljoin): Undo part of the
10188	  previous rdoc change.  This new example using a string-only
10189	  array was not in line with the description.
10190
10191Fri Nov  9 12:58:13 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10192
10193	* string.c (rb_str_crypt): crypt(3) may return NULL.
10194	  Latest glibc (2.16?) crypt(3) actually returns NULL. [Bug #7312]
10195
10196Fri Nov  9 12:07:06 2012  Akinori MUSHA  <knu@iDaemons.org>
10197
10198	* include/ruby/ruby.h (alloca), eval_intern.h (alloca), gc.c
10199	  (alloca): Make alloca() globally available by moving the
10200	  ultimate ifdef's to ruby/ruby.h.  Gcc hides its builtin alloca()
10201	  when compiling with -ansi, and linking thus fails on platforms
10202	  that lack their own alloca() implementation in libc, which
10203	  include OpenBSD and some ports of NetBSD.  We use alloca()
10204	  everywhere including from within third party C extensions, so
10205	  alloca() must be made globally available. [Bug #7307]
10206
10207	* addr2line.c (alloca): Replace the alloca() part with the
10208	  ultimate ifdef's. [Bug #7307]
10209
10210Fri Nov  9 09:30:00 2012  Zachary Scott  <zachary@zacharyscott.net>
10211
10212	* io.c (IO#new):
10213	  Fix indentation from r37444
10214	  [ruby-core:48052] [Bug #7179]
10215
10216Fri Nov  9 07:36:00 2012  Kenta Murata  <mrkn@mrkn.jp>
10217
10218	* bignum.c (bigmul0): enable big_mul_toom3.
10219	  [ruby-core:48552] [Bug #7242]
10220
10221	* bignum.c (bigmul1_toom3): fix incorrect calculation.
10222	  the patch is made by Heesob Park.
10223	  [ruby-core:48552] [Bug #7242]
10224
10225Fri Nov  9 05:33:00 2012  Kenta Murata  <mrkn@mrkn.jp>
10226
10227	* bignum.c (bigmul0): disable big_mul_toom3 temporarily.
10228	  [ruby-core:48552] [Bug #7242]
10229
10230	* test/ruby/test_bignum.rb (test_mul_large_numbers):
10231	  add a test for bigmul1_toom3 suggested in [Bug #7242].
10232
10233Thu Nov  8 21:57:59 2012  Masaki Matsushita  <glass.saga@gmail.com>
10234
10235	* re.c (rb_memsearch): performance improvement by using memchr().
10236	  [ruby-dev:45397] [Feature #6173]
10237
10238Thu Nov  8 19:02:50 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10239
10240	* lib/net/protocol.rb (Net::InternetMessageIO#each_crlf_line):
10241	  treat \r as newline as mame pointed. [ruby-dev:46425] [Bug #7278]
10242
10243Thu Nov  8 11:32:11 2012  Akinori MUSHA  <knu@iDaemons.org>
10244
10245	* configure.in (--with-opt-dir): Avoid nesting of double quotes
10246	  inside backquotes, since some traditional shells like PD KSH
10247	  (which OpenBSD's /bin/sh bases on) fail to parse them.
10248
10249Thu Nov  8 09:34:00 2012  Kenta Murata  <mrkn@cookpad.com>
10250
10251	* numeric.c: Add a caution that the results of the comparing
10252	  operations of two NaNs are undefined.
10253	  [#1720] [ruby-dev:38725] [ruby-core:36966]
10254
10255Thu Nov  8 04:45:21 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
10256
10257	* include/ruby/intern.h: Restore rb_enumeratorize as it was before
10258	  r37497 and introduce rb_enumeratorize_with_size instead. [#7302]
10259
10260	* enumerator.c: ditto.
10261
10262Wed Nov  7 15:22:37 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10263
10264	* numeric.c (ruby_float_step): fix r37514: it yielded with NaN
10265	  if the unit is infinity.
10266
10267Wed Nov  7 15:46:12 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
10268
10269	* lib/webrick.rb: fix typo. reported by Rohit Arondekar.
10270	  https://github.com/ruby/ruby/pull/211
10271
10272Wed Nov  7 15:34:12 2012  Takeyuki FUJIOKA  <xibbar@ruby-lang.org>
10273
10274	* lib/cgi/core.rb: alias CGI#http_header to CGI#header.
10275
10276Wed Nov  7 12:49:39 2012  Shugo Maeda  <shugo@ruby-lang.org>
10277
10278	* eval.c (rb_mod_refine): set RMODULE_IS_REFINEMENT to a created
10279	  refinement module, and don't override method_added.
10280
10281	* vm_method.c (rb_method_entry_make): check redefinition of
10282	  optimized methods when a method is added to a refinement module.
10283	  [ruby-core:48970] [Bug #7290]
10284
10285	* test/ruby/test_refinement.rb: related test.
10286
10287Wed Nov  7 11:48:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10288
10289	* misc/ruby-additional.el (ruby-mode-set-encoding): now encoding needs
10290	  to be set always explicitly actually.  [Feature #6679]
10291
10292Wed Nov  7 09:15:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10293
10294	* object.c (rb_mod_const_get): avoid inadvertent symbol creation.
10295
10296Wed Nov  7 07:52:50 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10297
10298	* enum.c (rb_enum_cycle_size): prefix with rb.
10299
10300Wed Nov  7 04:32:15 2012  Luis Lavena  <luislavena@gmail.com>
10301
10302	* test/ruby/test_file_exhaustive.rb: Remove FIXME skip on Windows
10303	  specific test because the test in question was already fixed.
10304
10305Wed Nov  7 03:45:12 2012  Luis Lavena  <luislavena@gmail.com>
10306
10307	* ext/zlib/extconf.rb: Recognize zlibwapi as linking library.
10308	  Patch by Daniel Berger.
10309
10310	  [ruby-core:44979] [Feature #6421]
10311
10312Wed Nov  7 02:06:40 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
10313
10314	* enumerator.c: New method #size; constructor accepts size.
10315	                Have #to_enum accept a block
10316	                Warn when using deprecated form of constructor
10317	                Support #size for enumerators created from enumerators
10318	                Support for lazy.{map|flat_map|...}.size.
10319
10320	* include/ruby/intern.h: RETURN_SIZED_ENUMERATOR for support of
10321	  sized enumerators.
10322
10323	* array.c: Support for various enumerator.size.
10324
10325	* enum.c: ditto.
10326
10327	* hash.c: ditto.
10328
10329	* numeric.c: ditto.
10330
10331	* range.c: ditto.
10332
10333	* string.c: ditto.
10334
10335	* struct.c: ditto.
10336
10337	* vm_eval.c: ditto.
10338
10339Tue Nov  6 20:40:28 2012  Aaron Patterson <aaron@tenderlovemaking.com>
10340
10341	* object.c (rb_mod_const_get): Fix constant missing exception class
10342	  and message to maintain backwards compatibility. Constant search
10343	  should start at Object when constant starts with '::'
10344
10345	* test/ruby/test_module.rb: test for fixes
10346
10347Tue Nov  6 16:50:00 2012  Masaki Matsushita  <glass.saga@gmail.com>
10348
10349	* lib/tempfile.rb (Tempfile#inspect): fix confusing #inspect.
10350	  previous Tempfile#inspect says it is a File, but actually
10351	  it is not a File.
10352
10353	    t = Tempfile.new("foo") #=> #<File:/tmp/foo20121106-31970-1ffbum0>
10354	    t.is_a? File #=> false
10355
10356	  now Tempfile#inspect returns like:
10357
10358	    t = Tempfile.new("foo")
10359	    #=> #<Tempfile:/tmp/foo20121106-31970-1ffbum0>
10360
10361	  [ruby-core:47544] [Bug #7027]
10362
10363Tue Nov  6 16:22:30 2012  Naohisa Goto  <ngotogenome@gmail.com>
10364
10365	* atomic.h: add #include <sys/atomic.h> for the workaround of
10366	  header file name conflict of atomic.h with /usr/include/atomic.h
10367	  on Solaris 10. [ruby-dev:46414] [Bug #7287]
10368
10369Tue Nov  6 14:38:00 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10370
10371	* test/win32ole/test_win32ole.rb: now source encoding is UTF-8, so
10372	  binary strings in old scripts are dangerous.
10373
10374Tue Nov  6 14:25:09 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10375
10376	* lib/net/protocol.rb (Net::InternetMessageIO#each_crlf_line):
10377	  don't use /n in universal regexp. [ruby-dev:46394] [Bug #7278]
10378
10379Tue Nov  6 09:42:26 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10380
10381	* string.c (rb_str_b): Add String#b, returning a copied string
10382	  whose encoding is ASCII-8BIT. [ruby-dev:45992] [Feature #6767]
10383
10384Tue Nov  6 09:37:57 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10385
10386	* ruby.c (load_file_internal): set default source encoding as
10387	  UTF-8 instead of US-ASCII. [ruby-core:46021] [Feature #6679]
10388
10389	* parse.y (parser_initialize): set default parser encoding as
10390	  UTF-8 instead of US-ASCII.
10391
10392Tue Nov  6 05:48:06 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
10393
10394	* test/ruby/test_require.rb
10395	  (TestRequire#test_require_to_path_redefined_in_load_path,
10396	   TestRequire#test_require_to_str_redefined_in_load_path):
10397	  Suppress method redefined warning when test-all with RUBYOPT=-w.
10398
10399Thu Nov  8 00:24:14 2012  Akinori MUSHA  <knu@iDaemons.org>
10400
10401	* ext/curses/view.rb: Do not fail if the file to view is shorter
10402	  than the screen height.
10403
10404Mon Nov  5 11:40:00 2012  Mark Somerville  <mark@scottishclmibs.com>
10405
10406	* thread_pthread.c (rb_reserved_fd_p): fix typo in macro check
10407	  that prevented the ifdef ever being true.
10408	  [Bug #7281] [ruby-core:48940]
10409
10410Mon Nov  5 23:28:57 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
10411
10412	* file.c (rb_get_path_check_to_string): extract from
10413	  rb_get_path_check(). We change the spec not to call to_path of
10414	  String object.
10415
10416	* file.c (rb_get_path_check_convert): extract from rb_get_path_check().
10417
10418	* file.c (rb_get_path_check): follow the above change.
10419
10420	* file.c (rb_file_expand_path_fast): remove check_expand_path_args().
10421	  Instead we call it in load.c.
10422
10423	* file.c (rb_find_file_ext_safe): use rb_get_expanded_load_path() to
10424	  reduce expand cost.
10425
10426	* file.c (rb_find_file_safe): ditto.
10427
10428	* internal.h (rb_get_expanded_load_path): add a declaration.
10429
10430	* internal.h (rb_get_path_check_to_string, rb_get_path_check_convert):
10431	  add declarations.
10432
10433	* load.c (rb_construct_expanded_load_path): fix for compatibility.
10434	  Same checks in rb_get_path_check() are added. We don't replace
10435	  $LOAD_PATH and ensure that String object of $LOAD_PATH are frozen.
10436	  We don't freeze non String object and expand it every time. We add
10437	  arguments for expanding load path partially and checking if load path
10438	  have relative paths or non String objects.
10439
10440	* load.c (load_path_getcwd): get current working directory for checking
10441	  if it's changed when getting load path.
10442
10443	* load.c (rb_get_expanded_load_path): fix for rebuilding cache properly.
10444	  We check if current working directory is changed and rebuild expanded
10445	  load path cache. We expand paths which start with ~ (User HOME) and
10446	  non String objects every time for compatibility. We make this
10447	  accessible from other source files.
10448
10449	* load.c (rb_feature_provided): call rb_get_path() since we changed
10450	  rb_file_expand_path_fast() not to call it.
10451
10452	* load.c (Init_load): initialize vm->load_path_check_cache.
10453
10454	* vm.c (rb_vm_mark): mark vm->load_path_check_cache for GC.
10455
10456	* vm_core.h (rb_vm_struct): add vm->load_path_check_cache to store data
10457	  to check load path cache validity.
10458
10459	* test/ruby/test_require.rb (TestRequire): add tests for require
10460	  compatibility related to cached expanded load path.
10461	  [ruby-core:47970] [Bug #7158]
10462
10463Mon Nov  5 23:26:05 2012  Greg Price  <price@mit.edu>
10464
10465	* load.c (rb_get_expanded_load_path): cache the expanded load
10466	  path.  This saves 4KB of allocation and some stats for every
10467	  element of the load path (so nearly a MB in my Rails app)
10468	  on every require.
10469
10470	* load.c (rb_construct_expanded_load_path): ensure that $LOAD_PATH
10471	  entries are frozen strings.  The user must mutate $LOAD_PATH
10472	  itself rather than its individual entries.
10473
10474	* vm_core.h (rb_vm_struct): add fields.
10475
10476	* vm.c (rb_vm_mark): mark new fields.
10477
10478	* ruby.c (process_options): modify $LOAD_PATH directly rather than
10479	  its elements.
10480	  Patch by Greg Price.
10481	  [ruby-core:47970] [Bug #7158]
10482
10483Mon Nov  5 23:24:42 2012  Greg Price  <price@mit.edu>
10484
10485	* load.c (rb_feature_p, rb_provide_feature): index $LOADED_FEATURES
10486	  so that require isn't so slow.
10487
10488	* load.c (rb_provide_feature, get_loaded_features_index): ensure
10489	  that $LOADED_FEATURES entries are frozen strings.  The user
10490	  must mutate $LOADED_FEATURES itself rather than its individual
10491	  entries.
10492
10493	* load.c (reset_loaded_features_snapshot): add a new function to reset
10494	  vm->loaded_features_snapshot.
10495
10496	* load.c (get_loaded_features_index_raw): add a new function to get
10497	  the loaded-features index.
10498
10499	* load.c (features_index_add_single): add a new function to add to the
10500	  loaded-features index a single feature.
10501
10502	* load.c (features_index_add): add a new function to add to the
10503	  loaded-features index all the required entries for `feature`.
10504
10505	* vm_core.h (rb_vm_struct): add fields.
10506
10507	* vm.c (rb_vm_mark): mark new fields.
10508
10509	* include/ruby/intern.h (rb_hash_clear): declare function.
10510
10511	* hash.c (rb_hash_clear): make function non-static.
10512	  Patch by Greg Price.
10513	  [ruby-core:47970] [Bug #7158]
10514
10515Mon Nov  5 23:23:51 2012  Greg Price  <price@mit.edu>
10516
10517	* array.c (rb_ary_shared_with_p): new function.
10518	  Expose whether two arrays are shared (read-only, C only).
10519
10520	* include/ruby/intern.h (rb_ary_shared_with_p): declare.
10521	  Patch by Greg Price.
10522	  [ruby-core:47970] [Bug #7158]
10523
10524Mon Nov  5 23:21:14 2012  Greg Price  <price@mit.edu>
10525
10526	* load.c (loaded_feature_path): clarify and briefly comment
10527	  function.  These clarifications have no effect on the behavior
10528	  of the function.
10529
10530	* load.c (rb_feature_p): explain the search loop.  Especially
10531	  useful because the logic is complicated as described in the
10532	  second paragraph.
10533	  Patch by Greg Price.
10534	  [ruby-core:47970] [Bug #7158]
10535
10536Mon Nov  5 22:45:03 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
10537
10538	* ext/dl/win32/lib/Win32API.rb (Win32API#call): use 64bit pointer for x64
10539	  Windows. This would fix
10540	  TestSecureRandom#test_s_random_bytes_without_openssl error.
10541	  [ruby-core:47451] [Bug #6990]
10542
10543Mon Nov  5 22:09:26 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
10544
10545	* cygwin/GNUmakefile.in (uncommon.mk): link *.res.o.
10546	  EXTOBJES is defined in uncommon.mk. *.res.o setting should be below
10547	  uncommon.mk.
10548	  [ruby-core:48858] [Bug #7277]
10549
10550Mon Nov  5 11:35:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
10551
10552	* thread_pthread.c (native_thread_init, native_thread_destroy):
10553	  removed HAVE_PTHREAD_CONDATTR_INIT check because this silly
10554	  #ifdef makes use-uninitialized-var issue and (2) native_cond_initialize()
10555	  already have a right platform and caller don't need any additional care.
10556	  [Bug #6825]
10557
10558Mon Nov  5 10:57:59 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10559
10560	* lib/cgi/core.rb: check if Tempfile is defined before use it.
10561
10562	* lib/cgi/core.rb: remove tempfiles only if tempfiles exist
10563
10564Mon Nov  5 12:17:00 2012  Zachary Scott  <zachary@zacharyscott.net>
10565
10566	* lib/uri/http.rb (URI::HTTP.build): Fix example
10567	  Patch by Carina C. Zona
10568	  [Fixes #209 Github]
10569
10570Mon Nov  5 09:55:05 2012  Takeyuki FUJIOKA  <xibbar@ruby-lang.org>
10571
10572	* lib/cgi/core.rb: remove tempfile more early.
10573
10574Sun Nov  4 20:29:46 2012  Takeyuki FUJIOKA  <xibbar@ruby-lang.org>
10575
10576	* lib/cgi.rb, lib/cgi/*/rb: rename CGI#header to CGI#http_header,
10577	  add and update HTML5 tag generator.  [Bug #7110]
10578	  Patch provided by Marcus Stollsteimer, thank you !
10579
10580Sun Nov  4 11:47:39 2012  Masaki Matsushita  <glass.saga@gmail.com>
10581
10582	* lib/fileutils.rb (module FileUtils): repatch [ruby-core:39622]
10583	  [Feature #5337]. improve performance of FileUtils.compare_stream.
10584	  [ruby-core:47545] [Feature #7028]
10585
10586Sun Nov  4 11:27:54 2012  Masaki Matsushita  <glass.saga@gmail.com>
10587
10588	* array.c (recursive_equal): fix to return true when self and other
10589	  are resized to same size and the current index become out of
10590	  range.
10591
10592	* test/ruby/test_array.rb: add a test for the above.
10593
10594Sun Nov  4 10:19:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10595
10596	* dir.c (file_s_fnmatch): match with expanding braces if FNM_EXTGLOB
10597	  is set.  [ruby-core:40037] [Feature #5422]
10598
10599Sat Nov  3 23:38:15 2012  Tadayoshi Funaba  <tadf@dotrb.org>
10600
10601	* complex.c: modified doc.
10602	* rational.c: ditto.
10603
10604Sat Nov  3 22:38:55 2012  Tadayoshi Funaba  <tadf@dotrb.org>
10605
10606	* ext/date/date_core.c: modified doc.
10607
10608Sat Nov  3 18:35:55 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
10609
10610	* vm.c (rb_vm_rewrite_ep_in_errinfo, vm_rewrite_ep_in_errinfo):
10611	  merge code and remove `rb_vm_rewrite_ep_in_errinfo'.
10612
10613Sat Nov  3 18:15:24 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
10614
10615	* vm.c, proc.c: avoid unnecessary `rb_vm_rewrite_ep_in_errinfo'
10616	  calls.
10617
10618Sat Nov  3 17:53:43 2012  Kouhei Sutou  <kou@cozmixng.org>
10619
10620	* bin/testrb: Use only Test::Unit::AutoRunner in test-unit gem
10621	  compatible API to be available by both test/unit bundled in Ruby
10622	  and test-unit gem.
10623	* lib/test/unit.rb (Test::Unit::AutoRunner): Move codes from testrb.
10624
10625Sat Nov  3 14:56:21 2012  Tadayoshi Funaba  <tadf@dotrb.org>
10626
10627	* ext/date/date_parse.c (parse_eu): should capture apostrophe too.
10628
10629Sat Nov  3 14:46:15 2012  Tadayoshi Funaba  <tadf@dotrb.org>
10630
10631	* ext/date/date_parse.c (date__parse): revised the tight parser.
10632
10633Sat Nov  3 14:43:42 2012  Kouhei Sutou  <kou@cozmixng.org>
10634
10635	* lib/rexml/xmldecl.rb (REXML::XMLDecl#content): Add missing \A
10636	  and \z.
10637
10638Sat Nov  3 14:42:55 2012  Kouhei Sutou  <kou@cozmixng.org>
10639
10640	* lib/rexml/output.rb (REXML::Output#initialize): Use normalized
10641	  encoding name.
10642
10643Sat Nov  3 14:41:17 2012  Kouhei Sutou  <kou@cozmixng.org>
10644
10645	* lib/rexml/output.rb (REXML::Output): Don't output BOM in middle
10646	  of the output string.
10647	* test/rexml/test_document.rb: Add a test for the above change.
10648
10649Sat Nov  3 14:09:55 2012  Kouhei Sutou  <kou@cozmixng.org>
10650
10651	* NEWS: Add an item about REXML::Document#write.
10652
10653Sat Nov  3 13:46:49 2012  Kouhei Sutou  <kou@cozmixng.org>
10654
10655	* test/rexml/test_document.rb: Fix tests that expect encoding name
10656	  isn't normalized.
10657
10658Sat Nov  3 13:26:00 2012  Zachary Scott  <zachary@zacharyscott.net>
10659
10660	* dir.c (Dir#glob):
10661	  Documentation for pattern section, backslash subsection
10662	  Patch by Eric Bouchut
10663	  [ruby-core:48528] [Bug #7230]
10664
10665Sat Nov  3 13:26:00 2012  Zachary Scott  <zachary@zacharyscott.net>
10666
10667	* io.c (IO#new):
10668	  Documentation for IO#open modes and formatting
10669	  [ruby-core:48052] [Bug #7179]
10670
10671Sat Nov  3 13:01:02 2012  Kouhei Sutou  <kou@cozmixng.org>
10672
10673	* test/rexml/test_encoding.rb (EncodingTester#test_in_different_out):
10674	  Fix a test that expects encoding in XML declaration is changed by
10675	  Output's encoding. It is dropped feature.
10676
10677Sat Nov  3 12:49:45 2012  Kouhei Sutou  <kou@cozmixng.org>
10678
10679	* lib/rexml/document.rb (REXML::Document#write): Document encoding
10680	  option. Now different encoding between XML file's encoding and
10681	  XML declaration's encoding is support.
10682	  [Feature #4872] (work in progress)
10683	* lib/rexml/xmldecl.rb (REXML::XMLDecl#write): Always use XMLDecl's
10684	  encoding.
10685	* test/rexml/test_document.rb: Update tests for the above change.
10686
10687Sat Nov  3 12:18:35 2012  Masaki Matsushita  <glass.saga@gmail.com>
10688
10689	* array.c (recursive_equal): fix not to make invalid pointers when
10690	  self and other are resized to same size in #== of their elements.
10691	  [ruby-dev:46373] [Feature #6177]
10692
10693Sat Nov  3 12:06:15 2012  Kouhei Sutou  <kou@cozmixng.org>
10694
10695	* test/rexml/test_xml_declaration.rb (TestXmlDeclaration#test_*):
10696	  Remove needless prefix from test names.
10697
10698Sat Nov  3 12:04:52 2012  Kouhei Sutou  <kou@cozmixng.org>
10699
10700	* test/rexml/test_xml_declaration_parent_child.rb: Rename to ...
10701	* test/rexml/test_xml_declaration.rb: ... this.
10702
10703Sat Nov  3 11:43:00 2012  Zachary Scott  <zachary@zacharyscott.net>
10704
10705	* hash.c (rb_hash_delete): Correct grammar
10706	  Patch by Glenn Oppegard
10707	  [Fixes #208 Github]
10708
10709Sat Nov  3 11:28:28 2012  Narihiro Nakamura  <authornari@gmail.com>
10710
10711	* NEWS: add a news about GC::Profiler.raw_data.
10712
10713Sat Nov  3 11:01:32 2012  Narihiro Nakamura  <authornari@gmail.com>
10714
10715	* NEWS: add a news about rb_newobj_of() and NEWOBJ_OF().
10716
10717Sat Nov  3 10:17:41 2012  Narihiro Nakamura  <authornari@gmail.com>
10718
10719	* eval.c (f_current_dirname): add the new method for Kernel.
10720	  This method almost same as File.dirname(__FILE__). One
10721	  different behavior is it returns nil when __FILE__ returns nil.
10722	  [Feature #3346]
10723
10724	* NEWS:  ditto
10725
10726	* test/ruby/test_method.rb: related test.
10727
10728Sat Nov  3 09:03:34 2012  Shugo Maeda  <shugo@ruby-lang.org>
10729
10730	* test/ruby/test_refinement.rb (test_new_method_by_send,
10731	  test_new_method_by_method_object): add tests for Kernel#send and
10732	  Kernel#method with refinements.
10733
10734	* test/ruby/test_refinement.rb (test_symbol_to_proc): add a test
10735	  calling a proc created by Symbol#to_proc outside the scope where
10736	  a refinement is closed over.
10737
10738Sat Nov  3 04:14:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10739
10740	* vm.c (rb_vm_rewrite_ep_in_errinfo): rewrite all catch points in
10741	  errinfo, not only the topmost frame.  based on the patch by
10742	  ktsj (Kazuki Tsujimoto) in [ruby-dev:45656]. [Bug #6460]
10743
10744Fri Nov  2 20:11:17 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10745
10746	* lib/mkmf.rb (MakeMakefile#timestamp_file): remove @ which looks like
10747	  configure variables.
10748
10749	* lib/mkmf.rb (MakeMakefile#timestamp_file): use .-. instead of !, a
10750	  special character of NMAKE and BSD make.  [Bug #7265]
10751
10752Fri Nov  2 17:55:39 2012  Shota Fukumori  <sorah@tubusu.net>
10753
10754	* lib/test/unit.rb (_run_parallel): Delete status line before showing
10755	  results. Patch by Hiroshi Shirosaki. [Bug #6897] [ruby-core:47250]
10756
10757	* lib/test/unit.rb (_run_parallel): Fix strange result when disabled retrying.
10758	  Patch by Hiroshi Shirosaki. [Bug #6897] [ruby-core:47250]
10759
10760Fri Nov  2 17:52:12 2012  Shugo Maeda  <shugo@ruby-lang.org>
10761
10762	* object.c (rb_mod_to_s): Module#{to_s,inspect}, when invoked on
10763	  a refinement, returns a string in the format #<refinement:C@M>,
10764	  where C is a refined class and M is a module at which the refinement
10765	  is defined.
10766
10767	* eval.c (rb_mod_refine): store information on a refinement for the
10768	  above change.
10769
10770	* test/ruby/test_refinement.rb: related test.
10771
10772Fri Nov  2 16:57:52 2012  Shota Fukumori  <sorah@tubusu.net>
10773
10774	* vm_dump.c (rb_vm_bugreport): Because of many log directories,
10775	  making directory lists readable.
10776
10777Fri Nov  2 16:44:00 2012  Kenta Murata  <mrkn@mrkn.jp>
10778
10779	* vm_dump.c (rb_vm_bugreport): add ~/Library/Logs/DiagnosticReports
10780	  in the locations list of crash reports.
10781
10782Fri Nov  2 14:52:52 2012  Masaki Matsushita  <glass.saga@gmail.com>
10783
10784	* array.c (recursive_equal): performance improvement by avoiding
10785	  overhead to call rb_ary_elt().
10786	  [ruby-dev:45412] [Feature #6177]
10787
10788Fri Nov  2 14:47:53 2012  Shugo Maeda  <shugo@ruby-lang.org>
10789
10790	* string.c (sym_to_proc, sym_call): A Proc created by Symbol#to_proc
10791	  should close over the current refinements.
10792	  [ruby-dev:46345] [Bug #7261]
10793
10794	* vm_eval.c (rb_call0, rb_search_method_entry,
10795	  rb_funcall_passing_block_with_refinements): add a new argument
10796	  `refinements' for the above changes.
10797
10798	* test/ruby/test_refinement.rb: related test.
10799
10800Fri Nov  2 08:24:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10801
10802	* proc.c (top_define_method): new method, main.define_method.
10803	  [ruby-core:45715] [Feature #6609]
10804
10805	* eval.c (top_include): fix a warning message, main is not a class or
10806	  module.
10807
10808Fri Nov  2 04:41:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10809
10810	* lib/mkmf.rb (MakeMakefile#timestamp_file): use ! instead of %, a GNU
10811	  make special character.
10812
10813Fri Nov  2 04:40:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10814
10815	* test/ruby/test_process.rb (test_execopts_preserve_env_on_exec_failure):
10816	  use never existing file in the current temporary directory.
10817
10818Fri Nov  2 04:23:20 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10819
10820	* tool/merger.rb: add feature to tag preview/rc.
10821
10822Fri Nov  2 03:23:37 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10823
10824	* lib/mkmf.rb: fix for if config["libdir"] is nil.
10825
10826Thu Nov  1 23:06:01 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10827
10828	* tool/make-snapshot: fix wrong regexp for releasing preview.
10829	  patched by mame.
10830
10831Thu Nov  1 22:27:11 2012  Koichi Sasada <ko1@atdot.net>
10832
10833	* NEWS: add a news about objspace,
10834	  ObjectSpace.reachable_objects_from.
10835
10836Thu Nov  1 21:57:00 2012  Kenta Murata  <mrkn@mrkn.jp>
10837
10838	* ext/bigdecimal/bigdecimal.c (BigDecimal_new),
10839	  test/bigdecimal/test_bigdecimal.rb:
10840	  Fix exception message of BigDecimal constructor with a Float.
10841
10842Thu Nov  1 21:52:20 2012  Kenta Murata  <mrkn@mrkn.jp>
10843
10844	* ext/bigdecimal/bigdecimal.c (BigDecimal_add),
10845	  test/bigdecimal/test_bigdecimal.rb:
10846	  need to specify precision for converting Rational and Float.
10847	  [ruby-core:48045] [Bug #7176]
10848
10849Thu Nov  1 21:42:20 2012  Yusuke Endoh  <mame@tsg.ne.jp>
10850
10851	* test/ruby/test_process.rb: Revert r37404.  My ubuntu box has
10852	  actually the directory named "/nonexistent"...  Sorry.
10853
10854Thu Nov  1 21:28:28 2012  Yusuke Endoh  <mame@tsg.ne.jp>
10855
10856	* test/ruby/test_process.rb: Process.exec raised EACCES on Linux
10857	  3.5.0-17-generic.  This is a temporal fix to rescue that exception.
10858	  Needs kosaki's review.
10859
10860Thu Nov  1 21:19:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10861
10862	* iseq.c (set_relation): parent_iseq need to be set regardless iseq
10863	  type.  fix r37397.
10864
10865Thu Nov  1 19:47:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10866
10867	* thread_pthread.c (RUBY_STACK_MIN): may not a compile time constant.
10868	  fix r37079.  [ruby-dev:46322] [Bug #7247]
10869
10870Thu Nov  1 16:44:36 2012  Shugo Maeda  <shugo@ruby-lang.org>
10871
10872	* NEWS: add note for Module#refine, Module#refinements,
10873	  Module#using, and Kernel#using.
10874
10875Thu Nov  1 14:41:47 2012  Shugo Maeda  <shugo@ruby-lang.org>
10876
10877	* eval.c (rb_using_module): using should be used indirectly.
10878	  [ruby-dev:46326] [Feature #7251]
10879
10880Wed Oct 31 18:17:38 2012  Narihiro Nakamura  <authornari@gmail.com>
10881
10882	* gc.c (gc_profile_record): don't define unused variables when
10883	  GC_PROFILE_MORE_DETAIL is 0.
10884
10885Wed Oct 31 18:10:53 2012  Narihiro Nakamura  <authornari@gmail.com>
10886
10887	* gc.c (gc_prof_mark_timer_stop): count is not initialized.
10888
10889Wed Oct 31 09:28:24 2012  Eric Hodel  <drbrain@segment7.net>
10890
10891	* thread.c (rb_thread_call_without_gvl2):  Note that ubf() may or may
10892	  not be called with the GVL.  Hinted that rb_thread_call_with_gvl()
10893	  can be used to access ruby functionality.
10894
10895Wed Oct 31 09:06:54 2012  Eric Hodel  <drbrain@segment7.net>
10896
10897	* thread.c (rb_thread_call_without_gvl2):  Update documentation to
10898	  natural English.
10899	* thread.c (rb_thread_call_with_gvl):  ditto.
10900
10901Wed Oct 31 02:53:07 2012  Aaron Patterson <aaron@tenderlovemaking.com>
10902
10903	* ext/dl/lib/dl/struct.rb: fix strange require order. [ruby-dev:45702]
10904
10905	* ext/dl/lib/dl/value.rb: ditto
10906
10907	* test/dl/test_c_struct_entry.rb: remove strange require order from
10908	  tests.
10909
10910	* test/dl/test_c_union_entity.rb: ditto
10911
10912Tue Oct 30 23:59:32 2012  Shugo Maeda  <shugo@ruby-lang.org>
10913
10914	* eval.c (rb_mod_refine): fix the error message when no block is
10915	  given.  [ruby-dev:46319] [Bug #7244]
10916
10917	* test/ruby/test_refinement.rb: related test.
10918
10919Tue Oct 30 19:27:48 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10920
10921	* process.c (redirect_dup2): set standard handles when new fd is stdio,
10922	  because if there is no allocated console at the moment Windows does
10923	  not automatically associate it for child process's standard handle.
10924	  this is adhoc workaround.
10925	  reported by Martin Thiede at [ruby-core:48542] [Bug #7239].
10926
10927	* io.c (rb_cloexec_dup2): ditto.
10928
10929Tue Oct 30 03:08:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10930
10931	* lib/rbconfig/obsolete.rb (Config): re-introduce warnings for a
10932	  lame-duck.  [ruby-core:46836] [Bug #6809]
10933
10934Tue Oct 30 02:20:10 2012  Aaron Patterson <aaron@tenderlovemaking.com>
10935
10936	* thread.c: added Thread#thread_variable_(get|set),
10937	  Thread#thread_variable?, and Thread#thread_variables for operating
10938	  on variables that are local to threads. [ruby-core:47790]
10939
10940	* vm.c: ditto
10941
10942	* test/ruby/test_thread.rb: tests for thread variables.
10943
10944Mon Oct 29 18:22:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10945
10946	* ext/stringio/stringio.c (strio_close): close separately per each
10947	  instances, as well as IO.
10948
10949Mon Oct 29 10:22:00 2012  Aaron Patterson <aaron@tenderlovemaking.com>
10950
10951	* ext/psych/lib/psych/handlers/recorder.rb: added a class for
10952	  recording YAML parse and emit events.
10953
10954	* ext/psych/lib/psych/handler.rb: adding a list of events so that
10955	  handler classes can more easily be meta-programmed.
10956
10957	* test/psych/handlers/test_recorder.rb: tests for the change.
10958
10959Mon Oct 29 05:48:52 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
10960
10961	* lib/ostruct.rb: Add [] and []=, base on a patch by Thomas Sawyer.
10962	  Also accept {Open}Struct as argument to new.
10963	  Add #eql?, #hash & #each_pair
10964	  Protect new_ostruct_member
10965
10966Mon Oct 29 03:20:58 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
10967
10968	* lib/matrix.rb: Fix determinant_e [ruby-dev:46305] [Bug #7228]
10969
10970Sun Oct 28 23:52:25 2012  Kouhei Sutou  <kou@cozmixng.org>
10971
10972	* test/rexml/test_document.rb: Add tests for parsing XML encoded
10973	  by UTF-8 with BOM.
10974
10975Sun Oct 28 23:47:09 2012  Kouhei Sutou  <kou@cozmixng.org>
10976
10977	* lib/rexml/source.rb: Move encoding detection code to base class.
10978	* lib/rexml/encoding.rb: Remove needless encoding detection code.
10979
10980Sun Oct 28 21:40:13 2012  Kouhei Sutou  <kou@cozmixng.org>
10981
10982	* lib/rexml/parsers/baseparser.rb: Fix a bug that UTF-8 is used
10983	  for UTF-16XX encoded XML that doesn't have encoding="UTF-16" in
10984	  XML declaration.
10985	* test/rexml/test_document.rb: Add tests for the above change.
10986
10987Sun Oct 28 21:37:34 2012  Kouhei Sutou  <kou@cozmixng.org>
10988
10989	* test/rexml/test_document.rb: Group tests that they parse
10990	  UTF-16XX encoded XML that has encoding="UTF-16" in XML declaration.
10991
10992Sun Oct 28 21:25:11 2012  Kouhei Sutou  <kou@cozmixng.org>
10993
10994	* lib/rexml/source.rb (REXML::IOSource#initialize): Reduce
10995	  @line_break initialize code. It should be done only in #encoding=.
10996	* lib/rexml/parsers/baseparser.rb: Don't set UTF-16 encoding to
10997	  source by encoding="UTF-16" in XML declaration because UTF-16XX
10998	  source encoding should be set in Source#initialize or
10999	  IOSource#initialize. They should handle BOM. Parser should not
11000	  consider about it.
11001
11002Sun Oct 28 21:18:37 2012  Kouhei Sutou  <kou@cozmixng.org>
11003
11004	* test/rexml/test_document.rb: Add tests for parsing XML encoded
11005	  by UTF-16 with BOM.
11006
11007Sun Oct 28 19:12:11 2012  Tadayoshi Funaba  <tadf@dotrb.org>
11008
11009	* ext/date/date_parse.c (iso8601_{ext,bas}_time): should not match
11010	  empty string.
11011
11012Sun Oct 28 18:51:33 2012  Tadayoshi Funaba  <tadf@dotrb.org>
11013
11014	* ext/date/date_parse.c (date__parse): revised the tight parser.
11015
11016Sun Oct 28 15:41:50 2012  Kouhei Sutou  <kou@cozmixng.org>
11017
11018	* lib/rexml/document.rb (REXML::Document#write): Add :encoding option
11019	  to support custom XML encoding.
11020	  [Feature #4872] (work in progress)
11021	* test/rexml/test_document.rb: Add tests for the above change.
11022
11023Sun Oct 28 15:00:19 2012  Kouhei Sutou  <kou@cozmixng.org>
11024
11025	* lib/rexml/document.rb (REXML::Document#write): Remove needless
11026	  indent in document.
11027
11028Sun Oct 28 14:59:14 2012  Kouhei Sutou  <kou@cozmixng.org>
11029
11030	* lib/rexml/document.rb (REXML::Document#write): Accept options
11031	  Hash as argument.
11032	* test/rexml/test_document.rb: Add tests for the above change.
11033
11034Sun Oct 28 14:09:44 2012  Kouhei Sutou  <kou@cozmixng.org>
11035
11036	* lib/rexml/document.rb (REXML::Document#write): Fix wrong usage
11037	  in document.
11038
11039Sun Oct 28 14:03:48 2012  Kouhei Sutou  <kou@cozmixng.org>
11040
11041	* lib/rexml/document.rb (REXML::Document#write): Fix wrong method
11042	  names in document.
11043
11044Sun Oct 28 10:12:15 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11045
11046	* ext/psych/lib/psych/visitors/yaml_tree.rb: `tree` should return the
11047	  same thing on every call.
11048
11049	* test/psych/visitors/test_yaml_tree.rb: related test.
11050
11051Sun Oct 28 10:05:03 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11052
11053	* ext/psych/lib/psych/visitors/yaml_tree.rb: YAML Tree object should
11054	  be able to take an emitter object as it's output.
11055
11056	* test/psych/visitors/test_yaml_tree.rb: related test.
11057
11058Sun Oct 28 08:23:16 2012  Koichi Sasada  <ko1@atdot.net>
11059
11060	* bignum.c (bignew_1): Bignum instances are frozen.
11061	  Feature #3222
11062
11063	* include/ruby/ruby.h: Fixnum instances are also frozen.
11064
11065	* class.c (singleton_class_of): check Bignum before
11066	  singleton checking.
11067
11068	* test/ruby/test_bignum.rb: add a test.
11069
11070	* test/ruby/test_fixnum.rb: ditto.
11071
11072	* test/ruby/marshaltestlib.rb, test/ruby/test_eval.rb,
11073	  test/ruby/test_object.rb: catch up above changes.
11074
11075Sun Oct 28 04:38:06 2012  Koichi Sasada  <ko1@atdot.net>
11076
11077	* vm.c (vm_define_method): remove type and frozen checking.
11078	  Checking is done in `rb_singleton_class()'.
11079
11080Sun Oct 28 00:49:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11081
11082	* parse.y (assign_in_cond): warn for static content object assignments
11083	  in conditional statements.  [ruby-dev:43083] [Feature #4299]
11084
11085Sat Oct 27 23:33:41 2012  Benoit Daloze  <eregontp@gmail.com>
11086
11087	* gc.c (gc_profile_result, gc_profile_report): use internal structures
11088	  to avoid allocations and progressively print the output for #report.
11089	  [ruby-core:47163] [Bug #6865]
11090
11091Sat Oct 27 11:01:10 2012  Koichi Sasada  <ko1@atdot.net>
11092
11093	* numeric.c (rb_float_new_in_heap), include/ruby/ruby.h:
11094	  make all Float objects frozen.
11095	  [ruby-dev:46081] [ruby-trunk - Feature #6936]
11096	  Most part of patch by NARUSE, Yui  <naruse@ruby-lang.org>.
11097
11098	* class.c (singleton_class_of): raise TypeError when
11099	  trying to define a singleton method on Float objects.
11100
11101	* vm.c (vm_define_method): ditto.
11102
11103	* test/ruby/marshaltestlib.rb: catch up above changes.
11104
11105	* test/ruby/test_class.rb: ditto.
11106
11107	* test/test_pp.rb: ditto.
11108
11109Sat Oct 27 10:50:53 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11110
11111	* object.c (rb_mod_const_get): make sure the constant name is
11112	  converted to a string before searching. [ruby-core:48405]
11113
11114Sat Oct 27 10:12:13 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
11115
11116	* iseq.c (rb_iseq_compile_with_option): Instead of testing
11117	  respond_to, just check if the argument is actually a file,
11118	  because by calling user-defined gets something weired can
11119	  happen.  Patch by Glass_saga. [ruby-dev:40202] [Bug #2861]
11120
11121	* parse.y (ripper_initialize): ditto.
11122
11123Sat Oct 27 10:07:57 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11124
11125	* parse.y (enum lex_state_e): [EXPERIMENTAL] lex_state as bit field /
11126	  IS_lex_state() macro.  based on the patch by Dave B in
11127	  [ruby-core:23503].  [Feature #1493]
11128
11129Sat Oct 27 10:05:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11130
11131	* include/ruby/win32.h (fstat): use _fstati64() instead of fstati64()
11132	  on mingw32.
11133
11134Sat Oct 27 06:28:33 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11135
11136	* object.c (rb_mod_const_get): const_get accepts qualified constant
11137	  strings.  e.g. Object.const_get("Foo::Bar::Baz") [ruby-core:41404]
11138
11139	* test/ruby/test_module.rb: tests for new behavior
11140
11141Fri Oct 26 13:24:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11142
11143	* parse.y (literal_concat_gen): merge fixed strings across
11144	  concatenated literals, after an interpolation.
11145
11146Thu Oct 25 17:48:54 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11147
11148	* win32/win32.c (has_redirection): should use shell (cmd.exe) when
11149	  the commandline contains '&'.
11150	  reported by Roger Pack at [ruby-core:47912] [Bug #7143], and
11151	  patched by Heesob Park at [ruby-core:47931].
11152
11153Thu Oct 25 15:00:08 2012  Koichi Sasada  <ko1@atdot.net>
11154
11155	* include/ruby/ruby.h, class.c: remove (revert)
11156	  `rb_add_method_cfunc_frameless()' API.
11157	  This API is not mature to become an official API.
11158	  For example, we can not use this API with
11159	  `rb_define_private_method()'.
11160
11161	* method.h, vm_method.c (rb_add_method_cfunc_frameless): removed.
11162
11163Thu Oct 25 13:35:07 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11164
11165	* tool/mkconfig.rb: remove string literal concatenation.
11166
11167Wed Oct 24 18:49:16 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11168
11169	* ext/objspace/objspace.c (type2sym, count_objects_size): use enum
11170	  instead of size_t which may be larger than actual values.
11171
11172Wed Oct 24 17:41:24 2012  Koichi Sasada  <ko1@atdot.net>
11173
11174	* benchmark/driver.rb: add `-x' or `--exclude' option
11175	  to specify exclude benchmark name pattern.
11176	  You can specify "-x foo" if you want to exclude the benchmarks
11177	  if the name of benchmark contains `foo'.
11178
11179Wed Oct 24 11:57:24 2012  Narihiro Nakamura  <authornari@gmail.com>
11180
11181	* gc.c (gc_prepare_free_objects): rename to match the behavior of
11182	  this function.
11183
11184Wed Oct 24 11:55:19 2012  Koichi Sasada  <ko1@atdot.net>
11185
11186	* ext/objspace/objspace.c (reachable_object_from_i): change data
11187	  structure of the result of reachable objects. Keys of table
11188	  contains object_id of each reachable objects. Value of table
11189	  is an object itself or an instance of InternalObjectWrapper.
11190	  To avoid duplication, we use st_table and object_id keys.
11191
11192	* ext/objspace/objspace.c (type2sym): bug fix.
11193	  Should use `i' instead of `type'.
11194
11195Wed Oct 24 10:33:09 2012  Koichi Sasada  <ko1@atdot.net>
11196
11197	* gc.c (garbage_collect, gc_marks): move the location of
11198	  clear and restore rb_objspace_t::mark_func_data
11199	  from garbage_collect() to gc_marks().
11200
11201Wed Oct 24 10:17:45 2012  Koichi Sasada  <ko1@atdot.net>
11202
11203	* ext/objspace/objspace.c (Init_objspace): add a new method
11204	  `ObjectSpace::InternalObjectWrapper#internal_object_id' which returns
11205	  an object id of a wrapped internal object.
11206
11207Wed Oct 24 08:55:04 2012  Koichi Sasada  <ko1@atdot.net>
11208
11209	* ext/objspace/objspace.c (ObjectSpace.reachable_objects_from):
11210	  internal object support.
11211	  If given object `obj' has references to internal objects
11212	  (such as T_NODE objects), then this method returns instances of
11213	  `ObjectSpace::InternalObjectWrapper' instead of that internal objects.
11214	  This instance contains a reference to an internal object and you can
11215	  check the type of internal object using
11216	  `ObjectSpace::InternalObjectWrapper#type' method.
11217	  Rdoc of `InternalObjectWrapper' is not prepared yet.
11218
11219	* gc.c (rb_objspace_reachable_objects_from), gc.h: change
11220	  an interface of 'rb_objspace_reachable_objects_from()'
11221
11222	* gc.c, gc.h: add two APIs
11223	  - rb_objspace_markable_object_p(obj): check markable or not.
11224	  - rb_objspace_internal_object_p(obj): check internal or not.
11225
11226Wed Oct 24 05:52:36 2012  Koichi Sasada  <ko1@atdot.net>
11227
11228	* vm_insnhelper.c (vm_call_method): remove `default' and
11229	  add a case for `VM_METHOD_TYPE_UNDEF'.
11230
11231Wed Oct 24 05:41:18 2012  Koichi Sasada  <ko1@atdot.net>
11232
11233	* eval_error.c (error_print), vm_eval.c (eval_string_with_cref),
11234	  vm_trace.c (rb_suppress_tracing): use TH_PUSH_TAG() instead of
11235	  PUSH_TAG().
11236
11237Wed Oct 24 05:17:52 2012  Koichi Sasada  <ko1@atdot.net>
11238
11239	* vm_eval.c (vm_call0_body): remove RUBY_VM_CHECK_INTS()
11240	  after method invocation using rb_call0().
11241
11242	* vm_eval.c (vm_call0_body): remove default section on top of
11243	  switch statement and add cases for `VM_METHOD_TYPE_CFUNC_FRAMELESS'
11244	  and `VM_METHOD_TYPE_UNDEF'.
11245
11246	* vm_eval.c (vm_call0_body): remove useless brackets.
11247
11248Tue Oct 23 22:34:49 2012  Koichi Sasada  <ko1@atdot.net>
11249
11250	* thread.c (thread_raise_m):  check interrupts after Thread#raise
11251	  if a target thread is the current thread because the behavior
11252	  of Thread.current.raise is expected to perform same as
11253	  Kernel.raise (by rubyspec).
11254
11255Tue Oct 23 17:08:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11256
11257	* ruby.c (usage, process_options): show more info in --help.
11258	  [EXPERIMENTAL] [ruby-core:48072] [Bug #7184]
11259
11260Tue Oct 23 14:20:43 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11261
11262	* misc/ruby-electric.el using variable `last-command-event' instead of
11263	  obsolete `last-command-char', so that work with Emacs trunk.
11264	  a patch by Victor Deryagin <vderyagin AT gmail.com>.
11265
11266Tue Oct 23 14:06:47 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11267
11268	* configure.in (visibility_option): visibility attribute is not
11269	  available before GCC 4, so do not use -fvisibility option in that
11270	  case.  [ruby-core:48147] [Bug #7205]
11271
11272Tue Oct 23 12:57:29 2012  Koichi Sasada  <ko1@atdot.net>
11273
11274	* vm_core.h, vm_insnhelper.c, vm_eval.c (OPT_CALL_CFUNC_WITHOUT_FRAME):
11275	  add a new optimization and its macro `OPT_CALL_CFUNC_WITHOUT_FRAME'.
11276	  This optimization makes all cfunc method calls `frameless', which
11277	  is faster than ordinal cfunc method call.
11278	  If `frame' is needed (for example, it calls another method with
11279	  `rb_funcall()'), then build a frame. In other words, this
11280	  optimization delays frame building.
11281	  However, to delay the frame building, we need additional overheads:
11282	    (1) Store the last call information.
11283	    (2) Check the delayed frame building before the frame is needed.
11284	    (3) Overhead to build a delayed frame.
11285	  rb_thread_t::passed_ci is storage of delayed cfunc call information.
11286	  (1) is lightweight because it is only 1 assignment to `passed_ci'.
11287	  To achieve (2), we modify GET_THREAD() to check `passed_ci' every
11288	  time. It causes 10% overhead on my environment.
11289	  This optimization only works for cfunc methods which do not need
11290	  their `frame'.
11291	  After evaluation on my environment, this optimization does not
11292	  effective every time. Because of this evaluation results, this
11293	  optimization is disabled at default.
11294
11295	* vm_insnhelper.c, vm.c: add VM_PROFILE* macros to measure behaviour
11296	  of VM internals. I will extend this feature.
11297
11298	* vm_method.c, method.h: change parameters of the `invoker' function.
11299	  Receive `func' pointer as the first parameter.
11300
11301Tue Oct 23 06:21:05 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11302
11303	* ext/psych/parser.c: just get the constant defined in Ruby.
11304
11305	* ext/psych/lib/psych/syntax_error.rb: Psych::SyntaxError now inherits
11306	  from StandardError rather than SyntaxError.  Thanks Eric Hodel!
11307
11308	* test/psych/test_exception.rb: tests for change.
11309
11310Tue Oct 23 06:17:36 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11311
11312	* ext/psych/lib/psych/scalar_scanner.rb: Cache symbols while
11313	  tokenizing.  Thanks Kevin Menard!
11314
11315Tue Oct 23 06:15:40 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11316
11317	* ext/psych/lib/psych/scalar_scanner.rb: Updated the RegExp to catch
11318	  Strings earlier in the tokenization process.  Thanks Kevin Menard!
11319
11320Tue Oct 23 06:12:39 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11321
11322	* ext/psych/lib/psych/visitors/to_ruby.rb: Handle nil tags specially
11323	  to avoid slow method_missing calls.  Thanks Kevin Menard!
11324
11325Tue Oct 23 06:07:57 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11326
11327	* ext/psych/lib/psych/scalar_scanner.rb: Ignore bad timestamps.  If
11328	  something looks like a timestamp but has an invalid component, treat
11329	  it as a string instead of throwing an ArgumentError.
11330	  Thanks Rhett Sutphin!
11331
11332	* test/psych/test_scalar_scanner.rb: appropriate tests.
11333
11334Tue Oct 23 06:04:07 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11335
11336	* ext/psych/lib/psych/scalar_scanner.rb: Fix scalar_scanner to
11337	  understand strings starting with an underscore and containing only
11338	  digits.  Thanks Kelley Reynolds.
11339
11340	* test/psych/test_scalar_scanner.rb: test for fix
11341
11342Tue Oct 23 06:00:41 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11343
11344	* ext/psych/lib/psych.rb: Changed comment in psych.rb to update new
11345	  home page for libyaml.  Thanks to Carolyn Ann.
11346
11347Sun Oct 21 19:12:59 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
11348
11349	* vm_core.h (rb_vm_t::trace_running): add a new field
11350	  `trace_running' to store vm global tracing status.
11351
11352	* vm_trace.c: fix SEGV bug. event_hook was free'd
11353	  even when the hook is still used in another thread.
11354	  [ruby-dev:46141] [Bug #7032]
11355
11356Sun Oct 21 19:12:42 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
11357
11358	* vm_core.h (rb_vm_t::trace_flag): remove `trace_flag'
11359	  which is no longer used.
11360
11361Sun Oct 21 18:34:27 2012  Tadayoshi Funaba  <tadf@dotrb.org>
11362
11363	* ext/date/date_parse.c (date__parse): uses more tight parser if
11364	  defined TIGHT_PARSER.  now inactivated; because it introduces
11365	  incompatibilities and it is a bit slow.
11366
11367Sat Oct 20 15:35:06 2012  Narihiro Nakamura  <authornari@gmail.com>
11368
11369	* include/ruby/ruby.h: add C APIs.
11370	  VALUE rb_newobj_of(VALUE klass, VALUE flags)
11371	  #define NEWOBJ_OF(obj,type,klass,flags)
11372	  These allow to change a allocation strategy depending on klass
11373	  or flags.
11374
11375	* gc.c: ditto
11376
11377	* array.c: use new C API.
11378	* bignum.c: ditto
11379	* class.c: ditto
11380	* complex.c: ditto
11381	* ext/socket/ancdata.c: ditto
11382	* ext/socket/option.c: ditto
11383	* hash.c: ditto
11384	* io.c: ditto
11385	* marshal.c: ditto
11386	* numeric.c: ditto
11387	* object.c: ditto
11388	* random.c: ditto
11389	* range.c: ditto
11390	* rational.c: ditto
11391	* re.c: ditto
11392	* string.c: ditto
11393	* struct.c: ditto
11394	  [Feature #7177][Feature #7047]
11395
11396Sat Oct 20 12:50:00 2012  Zachary Scott	<zachary@zacharyscott.net>
11397
11398	* ext/socket/socket.c: Documentation for Socket
11399	  Based on a patch by David Albert
11400	  [Bug #7105] [ruby-core:47828]
11401
11402Sat Oct 20 11:00:00 2012  Zachary Scott	<zachary@zacharyscott.net>
11403
11404	* lib/open-uri.rb: Documentation for OpenURI
11405
11406Sat Oct 20 06:18:34 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11407
11408	* hash.c (initialize_copy): unset the default proc if there isn't one
11409	  for the target hash, call to_hash, check frozen status.
11410
11411Fri Oct 19 22:22:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11412
11413	* vm.c (rb_vm_jump_tag_but_local_jump): pass through thrown objects.
11414	  [ruby-dev:46234] [Bug #7185]
11415
11416	* vm_eval.c (rb_eval_cmd): if state is non-zero, val should be nil and
11417	  rb_vm_jump_tag_but_local_jump() just jump tag.
11418
11419Fri Oct 19 22:11:55 2012  Benoit Daloze  <eregontp@gmail.com>
11420
11421	* pack.c (pack_unpack): set encoding of the
11422	  'H','h','B' and 'B' modifiers to US-ASCII.
11423
11424	* test/ruby/test_pack.rb: tests for the above.
11425	  [ruby-core:47653][Bug #7050]
11426
11427	* test/test_securerandom.rb: tests for SecureRandom.hex
11428	  from tenderlove. [ruby-core:46792][Bug #6799]
11429
11430Fri Oct 19 19:29:11 2012  Koichi Sasada  <ko1@atdot.net>
11431
11432	* method.h (rb_method_cfunc_t::invoker): add new field (func ptr)
11433	  `invoker'. `invoker' function invoke cfunc body
11434	  (rb_method_cfunc_t::func).
11435	  `invoker' is set at method definition timing.
11436	  With this change, the big `switch' (branch) in `call_cfunc()'
11437	  is no longer needed.
11438	  However, the performance benefit is only a bit.
11439
11440	* vm_core.h (rb_call_info_t::aux::func): add a new field to store
11441	  cfunc body function pointer.
11442
11443	* vm_method.c (call_cfunc_invoker_func): add a new function which
11444	  returns a suitable invoke function.
11445
11446	* vm_method.c (setup_method_cfunc_struct): added.
11447
11448	* vm_method.c (rb_add_method): fix to set `invoker'.
11449
11450	* vm_eval.c (vm_call0_body): catch up above changes.
11451
11452	* vm_insnhelper.c (call_cfunc): removed.
11453
11454	* vm_insnhelper.c (vm_call_cfunc): fix to call cfunc body
11455	  with `invoker' function.
11456
11457Fri Oct 19 16:55:58 2012  Koichi Sasada  <ko1@atdot.net>
11458
11459	* eval.c, vm_eval.c: use TH_PUSH_TAG() instead of PUSH_TAG().
11460
11461Fri Oct 19 11:13:55 2012  Koichi Sasada  <ko1@atdot.net>
11462
11463	* benchmark/driver.rb: remove unexpected `output'.
11464	  (commit miss)
11465
11466Fri Oct 19 10:24:03 2012  Koichi Sasada  <ko1@atdot.net>
11467
11468	* vm_insnhelper.c (vm_search_method): remove needless local variable.
11469
11470Fri Oct 19 10:22:26 2012  Koichi Sasada  <ko1@atdot.net>
11471
11472	* benchmark/bmx_temp.rb: removed.
11473	  This file should not be in repository.
11474
11475Fri Oct 19 10:20:10 2012  Koichi Sasada  <ko1@atdot.net>
11476
11477	* benchmark/driver.rb: add new option `--ruby-arg [ARG]'
11478	  which is passed as a launch parameter for each ruby's execution.
11479	  ($ ruby [ARG] [File])
11480
11481Thu Oct 18 18:42:35 2012  Koichi Sasada  <ko1@atdot.net>
11482
11483	* insns.def (opt_send_simple): move the location of
11484	  `opt_send_simple' to the place near `send' definition.
11485	  (to take care about icache locality).
11486
11487Thu Oct 18 18:29:25 2012  Koichi Sasada  <ko1@atdot.net>
11488
11489	* insns.def (send): remove unused condition.
11490	  This condition will be true after r37258.
11491
11492	* vm_insnhelper.c (vm_caller_setup_args): remove `UNLIKELY' on
11493	  checking blockiseq (it seems `LIKELY').
11494
11495Thu Oct 18 17:31:58 2012  Koichi Sasada  <ko1@atdot.net>
11496
11497	* insns.def (opt_send_simple): introduce new instruction used
11498	  when no need to care about block and splat.
11499
11500	* compile.c: use the `opt_send_simple' instruction.
11501
11502Thu Oct 18 16:44:07 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11503
11504	* vm_method.c (rb_add_method_cfunc, rb_add_method_cfunc_frameless):
11505	  check arity earlier at definition time.
11506
11507Thu Oct 18 15:11:31 2012  Koichi Sasada  <ko1@atdot.net>
11508
11509	* vm_insnhelper.c: add `inline' keyword to several functions.
11510	  Compilers (gcc) are conservative than I expected.
11511
11512Thu Oct 18 15:01:15 2012  Koichi Sasada  <ko1@atdot.net>
11513
11514	* include/ruby/ruby.h: add a decl. of
11515	  `rb_define_frameless_method()'.
11516
11517Thu Oct 18 14:31:17 2012  Koichi Sasada  <ko1@atdot.net>
11518
11519	* compile.c (new_callinfo): set a temporary index of callinfo
11520	  (used in `iseq_set_sequence()') to rb_call_info_t::aux::index.
11521	  rb_call_info_t::argc is initialized by same value of
11522	  rb_call_info_t::orig_argc.
11523
11524Thu Oct 18 14:11:08 2012  Koichi Sasada  <ko1@atdot.net>
11525
11526	* class.c (rb_define_frameless_method): rename from
11527	  rb_define_method_fast(). Defined method with this C API
11528	  does not make a method frame. It is bit lightweight than
11529	  ordinal C functions. Now only 0 or 1 argc are permitted.
11530
11531	* method.h (VM_METHOD_TYPE_CFUNC_FRAMELESS): rename macro name
11532	  from VM_METHOD_TYPE_CFUNC_FAST.
11533
11534	* vm_insnhelper.c, vm_method.c: rename related functions.
11535
11536	* proc.c (rb_method_entry_arity): catch up above changes.
11537
11538Thu Oct 18 10:30:34 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11539
11540	* parse.y (assignable_gen): fail if yyerror occurred.  fix a bug in
11541	  r36973.
11542
11543Thu Oct 18 09:23:03 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11544
11545	* hash.c (initialize_copy): duping should rehash the hash.
11546
11547	* test/ruby/test_hash.rb: added a test to ensure rehash.
11548
11549Wed Oct 17 21:16:47 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
11550
11551	* common.mk (WPROGRAM): need same dependencies as PROGRAM.
11552
11553	* cygwin/GNUmakefile.in (uncommon.mk): move include position
11554	  below WPROGRAM definition to be defined in uncommon.mk.
11555
11556	* ext/extmk.rb (all, static): fix make rubyw.exe failure with make -jN.
11557	  If make of ruby.exe and rubyw.exe run in parallel, link dll and link
11558	  exe run in parallel, which causes link failure on mingw. To fix this,
11559	  we make ruby.exe and rubyw.exe in one make process.
11560	  [ruby-core:48007] [Bug #7165]
11561
11562Wed Oct 17 16:25:34 2012  Koichi Sasada  <ko1@atdot.net>
11563
11564	* benchmark/bm_vm2_method_missing.rb: add a benchmark to measure
11565	  performance of invoking `method_missing'.
11566
11567Wed Oct 17 16:23:17 2012  Koichi Sasada  <ko1@atdot.net>
11568
11569	* vm_insnhelper.c (vm_getivar): fix to use `aux.index' instead of
11570	  `aux.opt_pc'.
11571
11572Wed Oct 17 16:03:54 2012  Koichi Sasada  <ko1@atdot.net>
11573
11574	* vm_insnhelper.c (vm_call_method_missing): make a refactoring
11575	  about method_missing process. Use `vm_call_method()' to invoke
11576	  `method_missing' method instead of `rb_funcall2()'.
11577	  In `vm_call_method()', set fastpath to `vm_call_method_missing()'
11578	  if it can be cached.
11579
11580	* vm_core.h (rb_call_info_t): add new field
11581	  `rb_call_info_t::aux::missing_reason' to pass the reason to
11582	  `vm_call_method_missing()'.
11583
11584Wed Oct 17 15:33:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11585
11586	* configure.in (opt-dir): allow multiple directories separated by
11587	  $PATH_SEPARATOR as well as dir_config in mkmf.rb. [ruby-core:47868]
11588	  [Bug #7120]
11589
11590Wed Oct 17 15:08:13 2012  Shugo Maeda  <shugo@ruby-lang.org>
11591
11592	* lib/net/imap.rb: fix Net::IMAP::ResponseParser to accept
11593	  message/delivery-status ([ruby-core:47920] [Bug #7146]),
11594	  message/rfc822 attachments ([ruby-core:47921] [Bug #7147]), and
11595	  (BODY ("MIXED")) ([ruby-core:47951] [Bug #7153]).
11596	  patched by Tony Arkles.
11597
11598	* test/net/imap/test_imap_response_parser.rb: related test.
11599
11600Wed Oct 17 11:04:48 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11601
11602	* test/ruby/test_hash.rb (TestHash#test_dup_equality): added a new test
11603	  to show the problem of r37232.
11604
11605Wed Oct 17 10:48:40 2012  Shugo Maeda  <shugo@ruby-lang.org>
11606
11607	* vm_insnhelper.c (vm_search_method): fix a build error that occurs
11608	  when OPT_INLINE_METHOD_CACHE is 0.
11609
11610Wed Oct 17 08:46:47 2012  Koichi Sasada  <ko1@atdot.net>
11611
11612	* benchmark/bm_vm2_dstr.rb: add a benchmark to measure
11613	  performance of dynamic generated string ("foo#{bar}baz").
11614
11615Wed Oct 17 08:32:46 2012  Koichi Sasada  <ko1@atdot.net>
11616
11617	* compile.c (compile_dstr_fragments): use `putobject' instead of
11618	  `putstring' for all of strings used by NODE_DSTR because
11619	  ruby users can not grab this string.
11620	  For example, the string object of "baz" in "foo#{bar}baz"
11621	  is located by `putobject' (users can not touch "baz" object
11622	  directly). This change reduces GC pressure.
11623	  This improvement is suggested by Aaron Patterson.
11624
11625Wed Oct 17 08:02:57 2012  Koichi Sasada  <ko1@atdot.net>
11626
11627	* thread.c (rb_threadptr_interrupt_mask): fix to check interrupt
11628	  after interrupt_mask changed.
11629
11630Wed Oct 17 06:42:47 2012  Koichi Sasada  <ko1@atdot.net>
11631
11632	* vm_insnhelper.c (vm_call_method): fix to return value immediately.
11633	  Remove CHECK_INTS() after that method dispatch.
11634
11635Wed Oct 17 06:25:56 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11636
11637	* hash.c (initialize_copy): copy the underlying st_table on dup,
11638	  rather than copying the hash key by key. [ruby-core:48009]
11639
11640	* test/ruby/test_hash.rb: relevant tests for initialize_copy
11641
11642Wed Oct 17 06:17:44 2012  Koichi Sasada  <ko1@atdot.net>
11643
11644	* vm_insnhelper.c (vm_call_iseq_setup_2): separate tailcall and normal
11645	  method frame setup functions.
11646	  Add checking interrupts at the tailcall setup function.
11647
11648Wed Oct 17 05:35:37 2012  Koichi Sasada  <ko1@atdot.net>
11649
11650	* benchmark/bm_vm1_yield.rb: add a benchmark to measure `yield'
11651	  (invoke empty block) performance.
11652
11653	* benchmark/bm_vm2_method_with_block.rb: add a benchmark to measure
11654	  method invocation with empty block.
11655
11656Wed Oct 17 05:05:07 2012  Koichi Sasada  <ko1@atdot.net>
11657
11658	* vm_insnhelper.c (vm_invoke_block): vm_caller_setup_args() can skip
11659	  when splat flag is not set.
11660
11661Wed Oct 17 01:53:47 2012  Koichi Sasada  <ko1@atdot.net>
11662
11663	* vm_insnhelper.c (vm_getivar, vm_setivar): support index inline cache
11664	  with rb_call_info_t to speedup `attr' getter and setter.
11665	  Cached index is stored in rb_call_info_t::aux::index.
11666	  `index' == 0 means not cached. `index' > 0 means cached and cached
11667	  index is `index - 1'.
11668
11669	* insns.def ((get|set)instancevariable): use new wrapper functions
11670	  vm_(get|set)instancevariable() defined in vm_insnhelper.c.
11671
11672	* vm_core.h (rb_call_info_t::aux): introduce new union data because
11673	  opt_pc can share with index.
11674
11675Tue Oct 16 22:24:44 2012  Koichi Sasada  <ko1@atdot.net>
11676
11677	* benchmark/driver.rb (show_results): Show speedup ratio
11678	  with first executables score at last of results
11679	  if two or more executables are given.
11680
11681Tue Oct 16 21:59:01 2012  Koichi Sasada  <ko1@atdot.net>
11682
11683	* benchmark/driver.rb: some refactoring.
11684	  (1) Remove `average differential'.
11685	      In this benchmark driver, We should not care about `average'.
11686	      We use fastest score because this score should not include
11687	      any disturbances (affections of background process, etc).
11688	      If you care about timing affect, I recommend `median'
11689	      score with more than 5 examinations rather than simple
11690	      `average' score (`average' score was affected by error scores).
11691	  (2) Show log file name.
11692	  (3) Change default directory from './' to driver's directory.
11693
11694Tue Oct 16 14:56:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11695
11696	* file.c (rb_file_join): need to check again after any conversion run.
11697	  [ruby-core:48012] [Bug #7168]
11698
11699Tue Oct 16 12:52:14 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
11700
11701	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_file):
11702	  rename from file_assertion.
11703
11704Tue Oct 16 11:30:18 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11705
11706	* file.c (rb_file_join): hide the result under construction until
11707	  return.
11708
11709	* file.c (rb_file_join): check nul-byte only for strings, since
11710	  FilePathStringValue() does it.  [ruby-core:48012] [Bug #7168]
11711
11712	* file.c (rb_file_join): path names must be ASCII-compatible.
11713	  [ruby-core:48012] [Bug #7168]
11714
11715	* file.c (check_path_encoding): new function to ensure path name
11716	  encoding to be ASCII-compatible.
11717
11718Tue Oct 16 09:40:04 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11719
11720	* test/ruby/test_regexp.rb
11721	  (TextRegexp#test_raw_hyphen_and_tk_char_type_after_range): use
11722	  Regexp.new instead of literal to ignore a parser warning.
11723
11724Tue Oct 16 09:30:30 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11725
11726	* test/ruby/test_regexp.rb
11727	  (TextRegexp#test_raw_hyphen_and_tk_char_type_after_range): ignoring
11728	  warnings are already set in setup method.
11729
11730Tue Oct 16 06:44:06 2012  Koichi Sasada  <ko1@atdot.net>
11731
11732	* vm_insnhelper.c (VM_CALLEE_SETUP_ARG): fix wrong condition.
11733
11734Tue Oct 16 06:29:18 2012  Koichi Sasada  <ko1@atdot.net>
11735
11736	* vm_insnhelper.c (vm_call_method): disable CI_SET_FASTPATH() if
11737	  this method call needs splat argument because cached functions
11738	  (vm_call_attrset, vm_call_ivar, vm_call_cfunc_fast_(unary|binary))
11739	  do not check an arity.
11740
11741	* bootstraptest/test_method.rb: add a test to check an above issue.
11742
11743Tue Oct 16 06:15:44 2012  Koichi Sasada  <ko1@atdot.net>
11744
11745	* method.h: introduce new method type VM_METHOD_TYPE_CFUNC_FAST.
11746	  This method is similar to VM_METHOD_TYPE_CFUNC methods, but
11747	  called cfunc without building new frame (does not push new control
11748	  frame). If error is occurred in cfunc, the backtrace only shows
11749	  caller frame and upper.
11750	  This kind of methods can be added by rb_define_method_fast().
11751	  This feature is similar to specialized instructions (opt_plus, etc),
11752	  but more flexible (but a bit slower).
11753
11754	* class.c (rb_define_method_fast): added.
11755	  Maybe it will be renamed soon.
11756
11757	* vm_insnhelper.c (vm_call_method): support method type
11758	  VM_METHOD_TYPE_CFUNC_FAST.
11759
11760	* proc.c (rb_method_entry_arity): catch up new method type.
11761
11762	* vm_method.c (rb_add_method_cfunc_fast): added.
11763
11764Tue Oct 16 02:32:29 2012  Koichi Sasada  <ko1@atdot.net>
11765
11766	* vm_insnhelper.h (CI_SET_FASTPATH): add new parameter `enabled'.
11767	  If `enable' is 0 then CI_SET_FASTPATH() doesn't work.
11768	  And add new configuration option OPT_CALL_FASTPATH. If this macro
11769	  was defined by 0, then CI_SET_FASTPATH() doesn't work any more.
11770
11771	* vm_insnhelper.c (vm_call_method): Pass `0' for `enabled' parameter
11772	  of CI_SET_FASTPATH if this method is protected.
11773
11774Tue Oct 16 02:17:35 2012  Koichi Sasada  <ko1@atdot.net>
11775
11776	* vm_core.h (VM_CALL_*): rename VM_CALL_*_BIT
11777	  to VM_CALL_* (remove `_BIT' suffix).
11778	  Add comments on each macros.
11779	  Remove unused macro VM_CALL_TAILRECURSION_BIT.
11780
11781	* compile.c, iseq.c, insns.def, vm_insnhelper.c: ditto.
11782
11783Mon Oct 15 22:14:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11784
11785	* test/ruby/envutil.rb (Test::Unit::Assertions#file_assertion):
11786	  rewrite file assertions.
11787
11788Mon Oct 15 09:41:17 2012  Koichi Sasada  <ko1@atdot.net>
11789
11790	* vm_insnhelper.c (VM_CALLEE_SETUP_ARG): skip CI_SET_FASTPATH() if
11791	  it was called from vm_yield_setup_args().
11792
11793Mon Oct 15 05:20:13 2012  Koichi Sasada  <ko1@atdot.net>
11794
11795	* vm_insnhelper.h CI_SET_FASTPATH: introduce new macro
11796	  `CI_SET_FASTPATH(ci, func)'. This macro set `ci->call' as `func'.
11797	  `func' (ci->call) is called at the last of `send'
11798	  (and `invokesuper') instruction.
11799	  `CI_SET_FASTPATH' does not set `ci->call' when the method
11800	  (stored in `ci->me') is `protected'.
11801
11802	* vm_insnhelper.c (vm_call_method): use `CI_SET_FASTPATH'.
11803	  After several checking (visibility, argc checking), the result of
11804	  checking can be reused until re-definition of this method
11805	  with inline method cache.
11806
11807	  Note that this optimization is now experimental.
11808	  If you find any problem about it, please tell us.
11809
11810Mon Oct 15 04:51:55 2012  Koichi Sasada  <ko1@atdot.net>
11811
11812	* vm_insnhelper.c: refactoring.
11813	  - move all `call' related functions to the last of file.
11814	  - make functions for respective method types in vm_call_method().
11815	    (all functions have same function parameters)
11816
11817	* vm_core.h: add `opt_pc' field in `rb_call_info_t'
11818	  as temporal variable.
11819
11820	* vm_eval.c (vm_call0_body): catch up above changes.
11821
11822Mon Oct 15 03:51:46 2012  Koichi Sasada  <ko1@atdot.net>
11823
11824	* benchmark/bm_vm1_attr_ivar(_set).rb: added (for method dispatch speed).
11825
11826	* benchmark/bm_vm1_float_simple.rb: added (for flonum/float).
11827
11828Mon Oct 15 02:51:16 2012  Koichi Sasada  <ko1@atdot.net>
11829
11830	* vm_eval.c (vm_call0_body): add new function.
11831	  `vm_call0()' makes call_info struct and calls `vm_call0_body()'
11832	  with this struct. In near future, `vm_call0()' will be removed
11833	  because all of `vm_call0()' users setup call_info struct by itself.
11834
11835Mon Oct 15 01:38:06 2012  Koichi Sasada  <ko1@atdot.net>
11836
11837	* insns.def (send, invokesuper, invokeblock, opt_*), vm_core.h:
11838	  use only a `ci' (rb_call_info_t) parameter instead of using
11839	  parameters such as `op_id', 'op_argc', `blockiseq' and flag.
11840	  These information are stored in rb_call_info_t at the compile
11841	  time.
11842	  This technique simplifies parameter passing at related
11843	  function calls (~10% speedups for simple method invocation at
11844	  my machine).
11845	  `rb_call_info_t' also has new function pointer variable `call'.
11846	  This `call' variable enables to customize method (block)
11847	  invocation process for each place. However, it always call
11848	  `vm_call_general()' at this changes.
11849	  `rb_call_info_t' also has temporary variables for method
11850	  (block) invocation.
11851
11852	* vm_core.h, compile.c, insns.def: introduce VM_CALL_ARGS_SKIP_SETUP
11853	  VM_CALL macro.  This flag indicates that this call can skip
11854	  caller_setup (block arg and splat arg).
11855
11856	* compile.c: catch up above changes.
11857
11858	* iseq.c: catch up above changes (especially for TS_CALLINFO).
11859
11860	* tool/instruction.rb: catch up above changes.
11861
11862	* vm_insnhelper.c, vm_insnhelper.h: ditto. Macros and functions
11863	  parameters are changed.
11864
11865	* vm_eval.c (vm_call0): ditto (it will be rewritten soon).
11866
11867Sun Oct 14 12:30:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11868
11869	* ruby.c (rb_f_sub, rb_f_gsub): pass the given block.
11870	  [ruby-core:47967] [Bug #7157]
11871
11872Sat Oct 13 23:15:39 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11873
11874	* regparse.c (parse_char_class): should match with a hyphen after a
11875	  range in a character class.
11876
11877	* test/ruby/test_regexp.rb (TestRegexp#test_char_class): fixed wrong
11878	  test.
11879
11880	* test/ruby/test_regexp.rb (TestRegexp#check): now can accept the
11881	  error message.
11882
11883	* test/ruby/test_regexp.rb
11884	  (TextRegexp#test_raw_hyphen_and_tk_char_type_after_range): renamed
11885	  because the previous name was wrong.
11886
11887	* test/ruby/test_regexp.rb
11888	  (TextRegexp#test_raw_hyphen_and_tk_char_type_after_range): added
11889	  more test pattern.
11890
11891Sat Oct 13 03:01:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11892
11893	* file.c (realpath_rec): prevent link from GC while link_names refers
11894	  the content.
11895
11896Sat Oct 13 01:37:48 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11897
11898	* test/ruby/test_regexp.rb
11899	  (TestRegexp#test_raw_hyphen_and_type_char_after_range): added new
11900	  test. ref [ruby-core:47115] [Backport #6853]
11901
11902Fri Oct 12 21:55:08 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
11903
11904	* include/ruby/win32.h (rb_w32_pow): set floating point precision
11905	  for mingw-w64 x86 pow(). This improves the precision of pow() on
11906	  Windows XP for TestFloat#test_round_with_precision failure.
11907	  [ruby-core:47911] [Bug #7142]
11908
11909Fri Oct 12 21:37:25 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
11910
11911	* test/webrick/test_cgi.rb (TestWEBrickCGI#test_cgi): skip a test
11912	  depending on locale on Windows. ENV[] doesn't work properly if
11913	  console code page is not equal to file system encoding.
11914	  [ruby-core:47910] [Bug #7140]
11915
11916Fri Oct 12 20:40:29 2012  Tanaka Akira  <akr@fsij.org>
11917
11918	* process.c (posix_sh_cmds): the command name of colon is ":".
11919
11920Fri Oct 12 18:18:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11921
11922	* file.c (rb_get_path_check): path name must not contain NUL bytes.
11923
11924Fri Oct 12 16:06:20 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11925
11926	* tool/merger.rb: now can merge revision(s) without --ticket again.
11927
11928Fri Oct 12 14:10:41 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11929
11930	* lib/mkmf.rb (dir_config, init_mkmf): use configured libdir value as
11931	  default library path.  [ruby-core:43726] [Bug #6207]
11932
11933Fri Oct 12 05:25:00 2012  Zachary Scott	<zzak@ruby-lang.org>
11934
11935	* lib/timeout.rb (timeout):
11936	  Remove paragraph on wrong implementation detail.
11937	  [ruby-core:47739] [Bug #7088]
11938
11939Thu Oct 11 23:09:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11940
11941	* string.c (rb_str_sub{seq,pos,str}, rb_str_each_{line,codepoint}):
11942	  prevent String copies from GC.  [ruby-core:47881] [Bug #7135]
11943
11944Thu Oct 11 07:40:50 2012  NARUSE, Yui  <naruse@ruby-lang.org>
11945
11946	* iseq.c (insn_operand_intern): cast op to rb_call_info_t* before
11947	  compare with iseq->callinfo_entries whose type is rb_call_info_t*.
11948
11949Thu Oct 11 03:37:08 2012  Koichi Sasada  <ko1@atdot.net>
11950
11951	* bootstraptest/test_block.rb: add tests for block with super.
11952
11953Thu Oct 11 02:54:07 2012  Koichi Sasada  <ko1@atdot.net>
11954
11955	* vm_dump.c: fix debug prints to catch up recent changes
11956	  such as VM data structures.
11957
11958Thu Oct 11 02:50:34 2012  Koichi Sasada  <ko1@atdot.net>
11959
11960	* iseq.c (insn_operand_intern): add support disasm TS_CALLINFO
11961	  operands.
11962
11963Wed Oct 10 15:12:48 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11964
11965	* test/ruby/test_process.rb (TestProcess#test_execopts_gid): skip on
11966	  windows because the platform does not have Process.group method.
11967	  patched by Jon Forums in [ruby-core:47878] [Bug #7133].
11968
11969Tue Oct  9 23:18:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11970
11971	* test/ruby/envutil.rb (assert_file, assert_file_not): more
11972	  descriptive assertions for File predicates.
11973
11974Tue Oct  9 18:01:37 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11975
11976	* array.c (rb_ary_sample): use rb_random_ulong_limited, since
11977	  precision of long may be larger than double.
11978
11979	* random.c (rb_random_ulong_limited): new function to return a random
11980	  value from 0 upto limit as unsigned long, similarly to
11981	  rb_genrand_ulong_limited but with arbitrary RNG object.
11982
11983Tue Oct  9 17:13:27 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11984
11985	* process.c (rb_execarg_addopt, rb_execarg_run_options): add :uid and
11986	  :gid options.  [ruby-core:47414] [Feature #6975]
11987
11988Tue Oct  9 14:36:11 2012  Koichi Sasada  <ko1@atdot.net>
11989
11990	* iseq.c (iseq_free): fix memory leak.
11991	  rb_iseq_t::callinfo_entries should be freed.
11992
11993Tue Oct  9 14:28:18 2012  Koichi Sasada  <ko1@atdot.net>
11994
11995	* vm_core.h (rb_call_info_t): add new type `rb_call_info_t'.
11996	  This data structure contains information including inline method
11997	  cache. After that, `struct iseq_inline_cache_entry' does not
11998	  need to contain inline cache for method invocation.
11999	  Other information will be added to this data structure.
12000
12001	* vm_core.h (rb_iseq_t): add `callinfo_entries' and `callinfo_size'
12002	  members to `rb_iseq_t'.
12003
12004	* insns.def, compile.c: Use CALL_INFO instead of IC.
12005
12006	* tool/instruction.rb: support CALL_INFO as operand type.
12007
12008	* vm_insnhelper.c, vm_insnhelper.h: ditto.
12009
12010Sun Oct  7 23:54:33 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
12011
12012	* ext/zlib/zlib.c (zstream_run_func): don't call inflate() when
12013	  z->stream.avail_in == 0. it return Z_BUF_ERROR.
12014	  but deflate() could be called with z->stream->avail_in == 0 because
12015	  it has hidden buffer in z->stream->state (opaque structure).
12016	  fix for gem install error. [ruby-dev:46149] [Bug #7040]
12017
12018Mon Oct  8 23:55:41 2012  Shugo Maeda  <shugo@ruby-lang.org>
12019
12020	* eval.c (rb_mod_refinements): new method Module#refinements.
12021
12022	* test/ruby/test_refinement.rb: add new tests for the above changes.
12023
12024Mon Oct  8 23:02:19 2012  Shugo Maeda  <shugo@ruby-lang.org>
12025
12026	* eval.c, gc.c, iseq.c, node.h, vm_insnhelper.c, vm_insnhelper.h,
12027	  vm_method.c: rename omod and overlaid modules to refinements.
12028
12029	* eval.c (hidden_identity_hash_new): renamed from identity_hash_new.
12030
12031Sun Oct  7 04:50:00 2012  Zachary Scott  <zzak@ruby-lang.org>
12032
12033	* lib/abbrev.rb: Documentation examples for Abbrev.
12034	  [ruby-core:47442] [Bug #6985]
12035
12036Sun Oct  7 04:50:00 2012  Zachary Scott  <zzak@ruby-lang.org>
12037
12038	* thread.c (rb_thread_aref):
12039	  Grammar in Thread documentation.
12040	  Patch by Steve Klabnik [ruby-core:47799] [Bug #7099]
12041
12042Sun Oct  7 04:37:00 2012  Zachary Scott  <zzak@ruby-lang.org>
12043
12044	* string.c (rb_str_match):
12045	  Clarify behavior for captured strings and local variable assignment
12046	  Patch by Marcus Stollsteimer [ruby-core:47668] [Bug #7062]
12047
12048Sat Oct  6 18:31:36 2012  Shugo Maeda  <shugo@ruby-lang.org>
12049
12050	* vm_opts.h (OPT_GLOBAL_METHOD_CACHE): new build option to
12051	  enable/disable global method caching. [ruby-dev:46203] [Bug #7111]
12052
12053	* vm_method.c (rb_method_entry_get_with_omod): don't use global
12054	  method cache if OPT_GLOBAL_METHOD_CACHE is 0.
12055
12056Sat Oct  6 16:32:04 2012  Shugo Maeda  <shugo@ruby-lang.org>
12057
12058	* vm_method.c (search_method): check omod only once for performance.
12059
12060Sat Oct  6 09:42:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12061
12062	* enc/encdb.c, enc/utf_16_32.h (ENC_DUMMY_UNICODE): endian-less wide
12063	  UTF encodings are dummy but Unicode.
12064
12065	* encoding.c (rb_encdb_set_unicode): set Unicode flag.
12066
12067	* template/encdb.h.tmpl: allow ENC_DUMMY variants.
12068
12069	* encoding.c (rb_enc_unicode_p): oniguruma provides Unicode flag.
12070
12071Fri Oct  5 17:18:42 JST 2012  TAKANO Mitsuhiro  <tak@no32.tk>
12072
12073	* template/Doxyfile.tmpl: remove SHOW_DIRECTORIES and
12074	  HTML_ALIGN_MEMBERS lines. They have been obsolete in
12075	  Doxygen version 1.8.2.
12076
12077Fri Oct  5 15:26:18 2012  Koichi Sasada  <ko1@atdot.net>
12078
12079	* ext/objspace/objspace.c: add ObjectSpace#reachable_objects_from.
12080	  This method returns an array of objects referenced by given object.
12081	  If given object is special objects such as true/false/nil/Fixnum etc
12082	  then it returns nil. See rdoc for details.
12083	  [ruby-core:39772]
12084
12085	* test/objspace/test_objspace.rb: add a test for this method.
12086
12087	* gc.c: add rb_objspace_reachable_objects_from().
12088	  To make this function, add several member `mark_func_data'
12089	  to rb_objspace_t.  If mark_func_data is not null, then
12090	  gc_mark() calls mark_func_data::mark_func.
12091
12092	* gc.h: export rb_objspace_reachable_objects_from().
12093
12094Thu Oct  4 23:40:04 2012  Narihiro Nakamura  <authornari@gmail.com>
12095
12096	* gc.c (init_heap): call init_mark_stack before to allocate
12097	  altstack. This change avoid the stack overflow at the signal
12098	  handler on 32bit, but I don't understand reason... [Feature #7095]
12099
12100Thu Oct  4 22:39:27 2012  Koichi Sasada  <ko1@atdot.net>
12101
12102	* insns.def (getlocal, setlocal): remove old getlocal/setlocal
12103	  instructions and rename getdaynmic/setdynamic instructions
12104	  to getlocal/setlocal.
12105
12106	* compile.c: ditto.
12107
12108	* iseq.c: remove TS_DINDEX.
12109
12110	* vm_exec.h (dindex_t): remove type definition of `dindex_t'.
12111
12112	* tool/instruction.rb: ditto.
12113
12114Thu Oct  4 21:44:17 2012  Koichi Sasada  <ko1@atdot.net>
12115
12116	* vm.c (vm_analysis_insn|operand|register): use st_insert
12117	  instead of using rb_hash_aset() because rb_hash_aset()
12118	  check $SAFE.
12119
12120Thu Oct  4 21:15:26 2012  Koichi Sasada  <ko1@atdot.net>
12121
12122	* vm.c (VM_COLLECT_USAGE_DETAILS): make new VM usage analysis
12123	  hooks (old macro name is COLLECT_USAGE_ANALYSIS).
12124	  This feature is only for VM developers.  (I'm not sure I can use
12125	  `VM developers' (the plural form) in this sentence).
12126	  If VM_COLLECT_USAGE_DETAILS is not 0, VM enables the following
12127	  usage collection features:
12128	    (1) instruction: collect instruction usages.
12129	    (2) operand: collect operand usages.
12130	    (3) register: collect register usages.
12131	  The results are stored in
12132	    RubyVM::USAGE_ANALYSIS_INSN for (1, 2),
12133	    RubyVM::USAGE_ANALYSIS_INSN_BIGRAM for (1) and
12134	    RubyVM::USAGE_ANALYSIS_REGS for (3).
12135	  You can stop collecting usages with
12136	    RubyVM::USAGE_ANALYSIS_INSN_STOP(),
12137	    RubyVM::USAGE_ANALYSIS_OPERAND_STOP(),
12138	    RubyVM::USAGE_ANALYSIS_REGISTER_STOP()
12139	  for (1), (2), (3) respectively.
12140	  You can also change the hook functions by setting
12141	  C level global variables
12142	    `ruby_vm_collect_usage_func_(insn|operand|register)'
12143	  for (1), (2), (3) respectively.
12144	  See codes for more details.
12145
12146	* tool/instruction.rb: fix macro names.
12147
12148	* iseq.c (insn_operand_intern): make it export (used in vm.c).
12149	  fix to skip several processes if not needed (pointer is 0).
12150
12151	* vm_dump.c: move codes for collection features to vm.c.
12152
12153	* vm_exec.h: rename macro and function names.
12154
12155	* vm_insnhelper.h: ditto.
12156
12157Thu Oct  4 18:59:14 2012  Koichi Sasada  <ko1@atdot.net>
12158
12159	* test/ruby/test_settracefunc.rb (test_tracepoint):
12160	  remove unused test case.
12161	  (this test case is redefined by newer tests)
12162
12163Thu Oct  4 17:24:51 2012  Narihiro Nakamura  <authornari@gmail.com>
12164
12165	* gc.c (rb_objspace_call_finalizer): call gc_mark_stacked_objects
12166	  at suitable point.
12167
12168Thu Oct  4 16:31:29 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12169
12170	* gc.c (rb_objspace_call_finalizer): mark self-referencing finalizers
12171	  before run finalizers, to fix SEGV from btest on 32bit.
12172
12173	* gc.c (gc_mark_stacked_objects): extract from gc_marks().
12174
12175Thu Oct  4 11:43:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12176
12177	* thread_pthread.c (ruby_init_stack): round stack limit to page size
12178	  boundary to calculate stack size more precisely.  [ruby-dev:46174]
12179	  [Bug #7084]
12180
12181Wed Oct  3 19:51:57 2012  Narihiro Nakamura  <authornari@gmail.com>
12182
12183	* gc.c: Use the non-recursive marking instead of recursion. The
12184	  recursion marking of CRuby needs checking stack overflow and the
12185	  fail-safe system, but these systems not good at partial points,
12186	  for example, marking deep tree structures. [ruby-dev:46184]
12187	  [Feature #7095]
12188
12189	* configure.in (GC_MARK_STACKFRAME_WORD): removed. It's used by
12190	  checking stack overflow of marking.
12191
12192	* win32/Makefile.sub (GC_MARK_STACKFRAME_WORD): ditto.
12193
12194Wed Oct  3 15:33:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12195
12196	* thread_pthread.c (ruby_init_stack): use getrlimit() for the main
12197	  thread on Mac OS X, since pthread_get_stack{addr,size}_np()
12198	  return the default value always, but not the ulimit value.
12199	  [ruby-dev:46174] [Bug #7084]
12200
12201Wed Oct  3 11:43:15 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12202
12203	* io.c (rb_io_reopen): improvement to accept optional arguments.
12204	  a patch by Glass_saga (Masaki Matsushita) in [ruby-core:47806].
12205	  [Feature #7103]
12206
12207Wed Oct  3 04:36:11 2012  Eric Hodel  <drbrain@segment7.net>
12208
12209	* ext/openssl/ossl_x509store.c (ossl_x509store_add_file):  Added
12210	  documentation
12211	* ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths):
12212	  ditto
12213	* ext/openssl/ossl_x509store.c (ossl_x509store_add_cert):  ditto
12214
12215Wed Oct  3 02:23:37 2012  Shugo Maeda  <shugo@ruby-lang.org>
12216
12217	* error.c (exc_to_s, name_err_to_s, name_err_mesg_to_str): do not
12218	  taint messages.
12219
12220Tue Oct  2 16:47:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12221
12222	* eval.c (identity_hash_new): hide internal hashes for refinements.
12223
12224	* eval.c (rb_mod_refine): no default value.
12225
12226Mon Oct  1 22:54:02 2012  Shugo Maeda  <shugo@ruby-lang.org>
12227
12228	* eval.c (identity_hash_new): new function to create a new identity
12229	  hash.
12230
12231	* eval.c (rb_overlay_module, rb_mod_using, rb_mod_refine): use
12232	  identity_hash_new().
12233
12234Mon Oct  1 02:34:53 2012  Akinori MUSHA  <knu@iDaemons.org>
12235
12236	* configure.in (--with-opt-dir): Make this also work on DLDFLAGS
12237	  so LIBRUBY_SO links fine with libexecinfo installed in a
12238	  non-system directory.
12239
12240Sun Sep 30 23:32:00 2012  Kenta Murata  <mrkn@mrkn.jp>
12241
12242	* vm_dump.c (rb_vm_bugreport): add /Library/Logs/DiagnosticReports
12243	  in the list of locations of crash reports.
12244
12245Sun Sep 30 21:18:03 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12246
12247	* string.c (rb_str_concat): use memcpy to copy a string which contains
12248	  NUL characters. [ruby-core:47751] [Bug #7090]
12249
12250Sat Sep 29 19:41:53 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
12251
12252	* test/ruby/envutil.rb (EnvUtil#invoke_ruby): kill child process
12253	  before Timeout::Error is raised. rmdir of mktmpdir fails with
12254	  EACCES if child process is alive on Windows.
12255
12256	* test/thread/test_queue.rb (TestQueue): increase timeout.
12257	  This test takes long time on Windows XP.
12258
12259Sat Sep 29 19:41:33 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
12260
12261	* test/net/http/test_http.rb (TestNetHTTP#test_proxy_address):
12262	  clear environment variables. If http_proxy environment variable was
12263	  set, the test failed.
12264
12265	* test/net/http/test_http.rb (TestNetHTTP#test_proxy_port): ditto.
12266
12267Sat Sep 29 19:41:11 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
12268
12269	* test/drb/drbtest.rb (DRbCore#teardown):
12270	  Use Process.kill :KILL on Windows because Process.kill :INT silently
12271	  fails on Windows 7 and raises EINVAL on Windows XP for spawned
12272	  process with new_pgroup: false.
12273
12274	* test/drb/drbtest.rb (DRbAry#teardown): ditto.
12275
12276Sat Sep 29 19:40:32 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
12277
12278	* test/ruby/test_unicode_escape.rb (TestUnicodeEscape#test_basic):
12279	  set script encoding to work with LANG=C. It would work on both
12280	  Windows and Unix. Refix of r37051.
12281
12282Sat Sep 29 11:21:06 2012  Shugo Maeda  <shugo@ruby-lang.org>
12283
12284	* vm_insnhelper.c (rb_vm_using_modules): use using_modules before
12285	  klass to fix method lookup order, and use klass even if klass is
12286	  not a module to make refinements in class_eval invoked on classes
12287	  work.
12288
12289	* eval.c (rb_using_module): accept a class as the second argument.
12290
12291	* eval.c (rb_mod_using, f_using): raise a TypeError if the argument
12292	  is not a module.
12293
12294	* test/ruby/test_refinement.rb: add new tests for the above changes.
12295
12296Sat Sep 29 02:18:57 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
12297
12298	* test/ruby/test_unicode_escape.rb (TestUnicodeEscape#test_basic):
12299	  Use ruby only on Windows since the test fails on Unix with LANG=C.
12300	  [ruby-core:47709] [Bug #7076]
12301
12302Fri Sep 28 22:19:31 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
12303
12304	* test/ruby/test_unicode_escape.rb (TestUnicodeEscape#test_basic):
12305	  echo command doesn't work properly against non-ascii character on
12306	  Windows with chcp 437. Instead we use ruby.
12307	  [ruby-core:47709] [Bug #7076]
12308
12309Fri Sep 28 17:54:31 2012  Koichi Sasada  <ko1@atdot.net>
12310
12311	* vm_insnhelper.c (vm_setup_method): refactoring.
12312	  Remove src_argc and use iseq->arg_size directly.
12313
12314Fri Sep 28 17:26:27 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12315
12316	* lib/rubygems/installer.rb (check_that_user_bin_dir_is_in_path):
12317	  test_generate_bin_bindir_with_user_install_warning(TestGemInstaller)
12318	  fails on Windows with msys bash. It makes comparing paths
12319	  case-insensitive.
12320	  pick from upstream to fix a failure of test-all [ruby-core:47711]
12321	 https://github.com/rubygems/rubygems/commit/c474edb2f3704206f04da1c8c6cf9fb079d84abe
12322
12323Fri Sep 28 15:44:45 2012  Shugo Maeda  <shugo@ruby-lang.org>
12324
12325	* vm_method.c (search_method): copy refinement iclasses to search
12326	  superclasses correctly.
12327
12328	* test/ruby/test_refinement.rb: related test.
12329
12330Fri Sep 28 15:15:41 2012  Koichi Sasada  <ko1@atdot.net>
12331
12332	* insns.def (opt_checkenv): remove unused instruction `opt_checkenv'.
12333
12334	* compile.c (iseq_compile_each): ditto.
12335
12336	* node.h: remove unused node `NODE_OPTBLOCK'.
12337
12338	* ext/objspace/objspace.c, gc.c (gc_mark_children): ditto.
12339
12340Fri Sep 28 13:14:34 2012  Koichi Sasada  <ko1@atdot.net>
12341
12342	* vm_core.h: now VM_DEBUG_BP_CHECK should be 1.
12343
12344Fri Sep 28 12:51:54 2012  Koichi Sasada  <ko1@atdot.net>
12345
12346	* vm_core.h: remove rb_control_frame_t::bp (bp: base pointer).
12347	  `bp' can be calculate by `sp' (stack pointer) of previous frame.
12348	  Now, `bp_check' field is remained for debug.  You can eliminate
12349	  this field by setting  VM_DEBUG_BP_CHECK as 0.
12350
12351	* vm_insnhelper.c (vm_base_ptr): add `vm_base_ptr(cfp).
12352	  This function calculates base pointer from cfp.
12353
12354	* vm_insnhelper.c (vm_setup_method): push `recv' value on top of
12355	  value stack (before method parameters).
12356	  This change is for keeping consistency with normal method dispatch.
12357
12358	* insns.def: fix to use vm_base_ptr().
12359
12360	* vm.c (vm_exec): ditto.
12361
12362	* vm_dump.c: remove `bp' related dumps.
12363
12364	* cont.c (fiber_init): fix to check VM_DEBUG_BP_CHECK.
12365
12366Fri Sep 28 10:40:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12367
12368	* io.c (rb_io_reopen): accept File::Constants as well as mode string.
12369	  based on the patch by Glass_saga (Masaki Matsushita) in
12370	  [ruby-core:47694].  [Feature #7067]
12371
12372Thu Sep 27 18:36:51 2012  Shugo Maeda  <shugo@ruby-lang.org>
12373
12374	* eval.c (rb_overlay_module, rb_mod_refine): accept a module as the
12375	  argument of Module#refine.
12376
12377	* vm_method.c (search_method): if klass is an iclass, lookup the
12378	  original module of the iclass in omod in order to allow
12379	  refinements of modules.
12380
12381	* test/ruby/test_refinement.rb: add tests for the above changes.
12382
12383Thu Sep 27 18:12:20 2012  Aaron Patterson <aaron@tenderlovemaking.com>
12384
12385	* ext/syslog/lib/syslog/logger.rb: add a formatter to the
12386	  Syslog::Logger object. [Bug #7065]
12387	* test/syslog/test_syslog_logger.rb: ditto.
12388
12389Wed Sep 26 16:39:57 2012  Koichi Sasada  <ko1@atdot.net>
12390
12391	* insns.def: add new instruction `opt_empty_p' for optimize `empty?'
12392	  method.  Apply a patch proposed at [ruby-dev:46120]
12393	  [ruby-trunk - Feature #6972] by Glass_saga (Masaki Matsushita).
12394
12395	* compile.c (iseq_specialized_instruction), vm.c, vm_insnhelper.h:
12396	  ditto.
12397
12398	* id.c, template/id.h.tmpl: ditto.
12399
12400	* test/ruby/test_optimization.rb: test for this changes.
12401
12402Tue Sep 25 09:59:26 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12403
12404	* insns.def (invokesuper): klass in cfp is not valid in at_exit and
12405	  END blocks.  [ruby-core:47680] [Bug #7064]
12406
12407Tue Sep 25 08:11:11 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12408
12409	* iseq.c (rb_iseq_defined_string): the index of defined_strings must
12410	  be the value of type - 1.
12411
12412Mon Sep 24 17:36:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12413
12414	* compile.c (defined_expr), insns.def (defined): share single frozen
12415	  strings.  [EXPERIMENTAL] [ruby-core:47558][Feature #7035]
12416
12417	* iseq.c (rb_iseq_defined_string): make expression strings.
12418
12419Mon Sep 24 11:22:36 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12420
12421	* tool/merger.rb: add --ticket option to add ticket number.
12422
12423Sun Sep 23 21:51:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12424
12425	* lib/mkmf.rb (String#unspace): unescape with backslashes.  normal
12426	  makes need to escape spaces with backslashes.  nmake is not the
12427	  case.  [Bug #7036]
12428
12429	* lib/mkmf.rb (create_makefile): use timestamp file dependencies for
12430	  directories.
12431
12432	* lib/mkmf.rb: unexpand macros.
12433
12434	* lib/mkmf.rb (LIBPATHFLAG): no needs to escape library path here.
12435
12436	* lib/mkmf.rb (MakeMakefile#configuration): make prefix paths
12437	  internal to deal with in Makefile.
12438
12439	* lib/mkmf.rb (MakeMakefile#mkintpath): not a global function now.
12440
12441Sun Sep 23 02:33:37 2012  Benoit Daloze  <eregontp@gmail.com>
12442
12443	* complex.c: Fix examples of r36993.
12444	  Keep the simple definition, mathematics define the result.
12445	  Based on patch by Robin Dupret. Fixes #188 on github.
12446
12447Sat Sep 22 07:15:00 2012  Zachary Scott  <zzak@ruby-lang.org>
12448
12449	* ext/ripper/lib/ripper.rb:
12450	  Match sample output to Ripper.sexp from current trunk version.
12451	  [Bug #6929]
12452
12453Thu Sep 20 23:05:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12454
12455	* thread_pthread.c (native_cond_initialize): destroy condattr
12456	  after using it. Patch by Stanislav Sedov. Thank you.
12457	  [Bug #7041] [ruby-core:47619]
12458
12459Thu Sep 20 22:53:02 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12460
12461	* thread_pthread.c (native_cond_initialize): clean up #ifdef condition.
12462
12463Thu Sep 20 16:42:44 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12464
12465	* lib/drb/ssl.rb (DRb::DRbSSLSocket::SSLConfig::DEFAULT): add
12466	  SSLTmpDhCallback for configuration option.
12467
12468	* lib/drb/ssl.rb (setup_ssl_context): copy the value of tmp_dh_callback.
12469
12470	* test/drb/ut_array_drbssl.rb: set tmp_dh_callback to suppress warning.
12471
12472	* test/drb/ut_drb_drbssl.rb: ditto.
12473
12474Thu Sep 20 10:56:08 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
12475
12476	* test/drb/ut_drb.rb: revert a part of r36987, and get rid of a warning
12477	  with another method.  if the substitution is removed, the ExtSrv
12478	  object will be GC'ed and some tests will be blocked.
12479
12480Thu Sep 20 07:20:00 2012  Zachary Scott  <zzak@ruby-lang.org>
12481
12482	* complex.c: Examples for Complex Documentation.
12483	  Patch by Robin Dupret.
12484	  Fixes #184 on github.
12485
12486Thu Sep 20 07:15:00 2012  Zachary Scott  <zzak@ruby-lang.org>
12487
12488	* ext/ripper/lib/ripper.rb: Documentation for Ripper.
12489	  +:void_stmt+ is meaningless
12490	  [Bug #6929] [ruby-core:47507]
12491
12492Thu Sep 20 07:05:00 2012  Zachary Scott  <zzak@ruby-lang.org>
12493
12494	* lib/csv.rb (Object#CSV, Array#to_csv, String#parse_csv):
12495	  Examples and documentation for CSV.
12496	  [Bug #6880] [ruby-core:47218]
12497
12498Thu Sep 20 00:42:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12499
12500	* array.c (take_items), enum.c (enum_zip): raise TypeError at
12501	  non-enumerable objects, not NoMethodError.  [ruby-dev:46145]
12502	  [Bug #7038]
12503
12504	* vm_eval.c (rb_check_block_call): check_funcall variant with block
12505	  function.
12506
12507Tue Sep 18 17:51:29 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12508
12509	* ext/openssl/ossl_ssl.c (ossl_sslctx_attrs): add npn_select_db to
12510	  suppress warning: instance variable @npn_select_cb not initialized
12511
12512Sun Sep 16 17:47:00 2012  Eric Hodel  <drbrain@segment7.net>
12513
12514	* tool/change_maker.rb:  Update svn detection for subversion 1.7's
12515	  single .svn directory.
12516
12517Sun Sep 16 11:39:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12518
12519	* io.c (io_set_read_length): if the read length equals to the buffer
12520	  string size then nothing to do.  or ensure the string modifiable
12521	  before setting the length only when the former is shorter.  based on
12522	  the patch in [ruby-core:47541] by Hiroshi Shirosaki.
12523	  [ruby-core:46586] [Bug #6764]
12524
12525Sun Sep 16 08:57:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12526
12527	* configure.in (strict_warnflags): separate strict flags from
12528	  warnflags only for core.  [ruby-dev:46105]
12529
12530Sun Sep 16 08:16:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12531
12532	* .editorconfig: add.  [ruby-core:47548] [Feature #7030]
12533
12534Sat Sep 15 01:56:40 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12535
12536	* ext/nkf/nkf-utf8/nkf.c: Merge upstream: 50a383c84.
12537	  [ruby-dev:46128] [Bug #7005]
12538
12539Sat Sep 15 00:20:04 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12540
12541	* ext/nkf/nkf.c (rb_nkf_convert): suppress warning.
12542
12543Fri Sep 14 04:05:00 2012  Zachary Scott  <zzak@ruby-lang.org>
12544
12545	* array.c (rb_ary_diff, rb_ary_uniq):
12546	  Enhance documentation for array uniqueness
12547	  Based on a patch by Robin Dupret
12548	  [Bug #6872] [ruby-core:47209]
12549
12550Fri Sep 14 03:30:00 2012  Zachary Scott  <zzak@ruby-lang.org>
12551
12552	* array.c (rb_ary_select):
12553	  Update documentation for Array#select
12554	* enum.c (enum_find_all, enum_reject):
12555	  Update documentation for Enumerable#find_all and Enumerable#reject
12556	  Based on a patch by Jeff Saracco
12557	  [Bug #6908] [ruby-core:47285] [Fixes #166 on github]
12558
12559Fri Sep 14 00:20:00 2012  Zachary Scott  <zzak@ruby-lang.org>
12560
12561	* signal.c (rb_f_kill):
12562	  Update documentation for Process.kill to reflect kill(2)
12563	  Patch by Richo Healey
12564
12565Thu Sep 13 21:40:49 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
12566
12567	* lib/securerandom.rb (SecureRandom.random_bytes):
12568	  Use 64bit value as pointer for Windows x64 to fix SystemCallError.
12569
12570	* lib/securerandom.rb (SecureRandom.lastWin32ErrorMessage):
12571	  Set proper encoding to avoid invalid byte sequence error.
12572	  [ruby-core:47451] [Bug #6990]
12573
12574Thu Sep 13 11:20:00 2012  Zachary Scott  <zzak@ruby-lang.org>
12575
12576	* lib/optparse.rb: Remove unreachable email address from documentation
12577	  [Bug #6996] [ruby-core:47459]
12578
12579Thu Sep 13 11:20:00 2012  Zachary Scott  <zzak@ruby-lang.org>
12580
12581	* lib/xmlrpc.rb: Documentation for XMLRPC
12582	* lib/xmlrpc/datetime.rb: ditto.
12583	* lib/xmlrpc/parser.rb: ditto.
12584	* lib/xmlrpc/client.rb: ditto.
12585	* lib/xmlrpc/utils.rb: ditto.
12586	* lib/xmlrpc/README.rdoc: ditto.
12587	* lib/xmlrpc/create.rb: ditto.
12588	* lib/xmlrpc/base64.rb: ditto.
12589	* lib/xmlrpc/config.rb: ditto.
12590	* lib/xmlrpc/httpserver.rb: ditto.
12591	* lib/xmlrpc/server.rb: ditto.
12592	* lib/xmlrpc/marshal.rb: ditto.
12593	* lib/xmlrpc/README.txt: ditto.
12594	  [Bug #6909] [ruby-core:47286]
12595
12596Thu Sep 13 10:22:11 2012  Takashi Toyoshima  <toyoshim@gmail.com>
12597
12598	* configure.in: Don't use PIE on Haiku because loader support is not
12599	  enough.
12600
12601Thu Sep 13 08:20:00 2012  Zachary Scott  <zzak@ruby-lang.org>
12602
12603	* lib/shellwords.rb: Documentation for Shellwords.
12604
12605Thu Sep 13 08:00:00 2012  Zachary Scott  <zzak@ruby-lang.org>
12606
12607	* ext/ripper/lib/ripper.rb: Documentation for Ripper.
12608	* ext/ripper/lib/ripper/lexer.rb: ditto.
12609	* ext/ripper/lib/ripper/sexp.rb: ditto.
12610	* ext/ripper/lib/ripper/filter.rb: ditto.
12611	* ext/ripper/lib/ripper/core.rb: ditto.
12612	  [Bug #6929] [ruby-core:47309]
12613
12614Wed Sep 12 22:59:07 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12615
12616	* vm_insnhelper.c (vm_method_missing, vm_call_method): reuse arguments
12617	  on the VM stack and get rid of ALLOCA.
12618
12619Wed Sep 12 22:45::00 2012  Zachary Scott  <zzak@ruby-lang.org>
12620
12621	* ext/pathname/lib/pathname.rb: Documentation for Pathname.
12622	* ext/pathname/pathname.c: ditto.
12623	  [Bug #6947] [ruby-core:47354]
12624
12625Mon Sep 10 10:19:34 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
12626
12627	* enc/depend: fixed wrong change in a part of r34802.
12628
12629Sun Sep  9 22:02:50 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12630
12631	* ext/socket/basicsocket.c (rsock_bsock_send):
12632	  avoid unnecessary select() calls before doing I/O
12633	  Patch by Eric Wong. [Feature #4538] [ruby-core:35586]
12634	* ext/socket/init.c (rsock_s_recvfrom): ditto.
12635	* ext/socket/init.c (rsock_s_accept): ditto.
12636	* ext/socket/udpsocket.c (udp_send): ditto.
12637	* io.c (io_fflush): ditto.
12638	* io.c (io_binwrite): ditto.
12639	* io.c (rb_io_syswrite): ditto.
12640
12641Mon Sep 10 01:38:51 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12642
12643	* io.c (nogvl_close, maygvl_close, nogvl_fclose, maygvl_fclose):
12644	  suppress integer <-> pointer cast warnings.
12645	  [Feature #4570] [ruby-core:35711]
12646
12647Mon Sep 10 01:36:00 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12648
12649	* io.c (rb_io_close): notify fd close before releasing gvl.
12650	* io.c (fptr_finalize): modify fptr->mode before releasing gvl.
12651	  remove unnecessary rb_thread_fd_close().
12652	  [Feature #4570] [ruby-core:35711]
12653
12654Mon Sep 10 00:16:34 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12655
12656	* process.c: exec() requires to be single threaded also on Haiku.
12657	  by Takashi Toyoshima <toyoshim@gmail.com>
12658	  https://github.com/ruby/ruby/pull/178
12659
12660Sun Sep  9 21:21:15 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12661
12662	* lib/thread.rb (Queue#pop): Fixed double registration issue when
12663	  mutex.sleep is interrupted. [Bug #5258] [ruby-dev:44448]
12664	* lib/thread.rb (SizedQueue#push): ditto.
12665
12666	* test/thread/test_queue.rb (test_sized_queue_and_wakeup,
12667	test_queue_pop_interrupt, test_sized_queue_pop_interrupt,
12668	test_sized_queue_push_interrupt): new tests.
12669
12670Sun Sep  9 20:20:31 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12671
12672	* lib/sync.rb (Sync_m#sync_lock): Fixed wakeup/raise unsafe code.
12673	  Patched by Masaki Matsushita. [Bug #5355] [ruby-dev:44521]
12674
12675	* test/thread/test_sync.rb (test_sync_lock_and_wakeup,
12676	  test_sync_upgrade_and_wakeup, test_sync_lock_and_raise):
12677	  new test.
12678
12679Sun Sep  9 18:39:46 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12680
12681	* include/ruby/intern.h (rb_thread_blocking_region): Added
12682	  a comment of recommended alternative way.
12683
12684Sun Sep  9 18:37:05 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12685
12686	* lib/sync.rb (Sync_m): Removed RCS_ID.
12687
12688Sun Sep  9 18:21:03 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12689
12690	* test/ruby/test_io.rb (test_advise_pipe): new test to check
12691	  io.advise() against anonymous io object don't make crash.
12692	  made by Eric Wong. [Bug #6081] [ruby-core:42880]
12693
12694Sun Sep  9 16:47:12 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12695
12696	* io.c (nogvl_close, maygvl_close, nogvl_fclose, maygvl_fclose):
12697	  new functions.
12698	* io.c (fptr_finalize): release GVL if possible.
12699	  Patched by Eric Wong. [Feature #4570] [ruby-core:35711]
12700
12701Sun Sep  9 16:08:48 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12702
12703	* io.c (io_bufread): removed unnecessary rb_thread_wait_fd().
12704	  Patch by Eric Wong. [Bug #6629] [ruby-core:45789]
12705	* io.c (rb_io_sysread): ditto.
12706	* io.c (copy_stream_fallback_body): ditto.
12707
12708Sun Sep  9 15:21:52 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12709
12710	* thread.c (rb_mutex_lock): stop multiple threads use
12711	  pthread_cond_timedwait() concurrently. [Bug #6278] [ruby-core:44275]
12712
12713Sat Sep  8 18:52:22 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12714
12715	* internal.h (struct rb_classext_struct): move allocator function into
12716	  rb_classext_t from ordinary method table.  [ruby-dev:46121]
12717	  [Feature #6993]
12718
12719	* object.c (rb_obj_alloc): call allocator function directly.
12720
12721	* vm_method.c (rb_define_alloc_func, rb_undef_alloc_func)
12722	  (rb_get_alloc_func): use allocator function in rb_classext_t.
12723
12724Fri Sep  7 01:21:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12725
12726	* ext/extmk.rb (extmake), lib/mkmf.rb (have_framework): fix splitting
12727	  options with an argument, not using NUL as special character.
12728	  [ruby-core:47447] [Bug #6987]
12729
12730Thu Sep  6 14:49:49 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12731
12732	* .gdbinit (rp): FLONUM support.
12733
12734	* include/ruby/ruby.h (ruby_special_consts): define FLONUM constants
12735	  always, so that they are available from gdb.
12736
12737	* include/ruby/ruby.h (RB_FLOAT_TYPE_P): merge FLONUM and non-FLONUM
12738	  versions.  inline TYPE() comparison and FLONUM_P() should be
12739	  optimized away on non-FLONUM.
12740
12741Thu Sep  6 08:20:55 2012  Ryan Davis  <ryand-ruby@zenspider.com>
12742
12743	* lib/minitest/*: Imported minitest 3.4.0 (r7762)
12744	* test/minitest/*: ditto
12745
12746Wed Sep  5 19:20:53 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
12747
12748	* parse.y (rb_warn4S): renamed from rb_warn4(), because the case in
12749	  r36911 takes a string.
12750
12751	* parse.y (rb_warn4S): use ripper_warnS() for ripper.
12752
12753	* parse.y (ripper_warnS): now it is used.
12754
12755Wed Sep  5 15:51:52 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
12756
12757	* .travis.yml (notifications): [experimental] update notification
12758	  template.
12759
12760Wed Sep  5 15:21:12 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12761
12762	* parse.y (rb_warn4): added as a rb_warn variant to warn with explicit
12763	  source file name and line in parse.y.
12764
12765	* parse.y (warn_unused_var): use rb_warn4 to suppress warning on ripper.
12766
12767Wed Sep  5 13:30:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12768
12769	* dir.c (glob_make_pattern): names under recursive need to be single
12770	  basenames to match for each name.  [ruby-core:47418] [Bug #6977]
12771
12772Tue Sep  4 20:55:17 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
12773
12774	* test/ruby/envutil.rb (EnvUtil#invoke_ruby): show Timeout::Error
12775	  instead of IOError if the timeout has expired.
12776
12777	* test/test_pstore.rb
12778	  (PStoreTest#test_pstore_files_are_accessed_as_binary_files):
12779	  increase timeout because this test is slow on Windows.
12780	  [ruby-core:47402] [Bug #6965]
12781
12782Tue Sep  4 11:28:57 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
12783
12784	* vm_eval.c (ruby_eval_string_from_file_protect): initializer
12785	  element is not computable at load time.
12786
12787Tue Sep  4 07:48:35 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
12788
12789	* test/openssl/test_asn1_rb:
12790	  test/openssl/test_ssl_session.rb:
12791	  test/openssl/test_x509name.rb:
12792	  test/openssl/test_buffering.rb:
12793	  test/openssl/test_x509cert.rb:
12794	  test/openssl/test_ssl.rb: Refactor code that leads to warnings on
12795	  Ruby CI.
12796
12797Tue Sep  4 07:02:56 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
12798
12799	* test/openssl/utils.rb: Use DSS1 as DSA signature digest for all
12800	  OpenSSL versions < 1.0.0.
12801	  [Feature #6946] [ruby-core:47405]
12802
12803Mon Sep  3 21:22:37 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12804
12805	* include/ruby/ruby.h (rb_float_value): suppress warnings.
12806	  [ruby-core:47406][Bug #6971]
12807
12808Mon Sep  3 14:49:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12809
12810	* lib/matrix.rb (Vector#magnitude): accumulate squares of absolute
12811	  values to fix for complex vector.  [ruby-dev:46100] [Bug #6966]
12812
12813Mon Sep  3 10:09:36 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
12814
12815	* ext/openssl/extconf.rb: Detect OpenSSL_FIPS macro
12816	  ext/openssl/ossl.c: Expose OpenSSL::OPENSSL_FIPS constant to
12817	  indicate whether OpenSSL runs in FIPS mode.
12818	  test/openssl/test_pkey_dh.rb: Generate 256 bit keys for
12819	  non-FIPS installations to improve test performance (e.g. for
12820	  rubyci).
12821	  test/openssl/utils.rb: Replace DSS1 as certificate signature
12822	  digest with SHA1 for FIPS installations when using DSA by
12823	  introducing TestUtils::DSA_SIGNATURE_DIGEST.
12824	  test/openssl/test_x509cert.rb:
12825	  test/openssl/test_x509crl.rb:
12826	  test/openssl/test_x509req.rb: Use DSA_SIGNATURE_DIGEST
12827	  NEWS: Introduce OpenSSL::OPENSSL_FIPS
12828
12829	  These changes allow running the OpenSSL tests in FIPS mode
12830	  while keeping a high performance for non-FIPS installations.
12831	  Introduction of OpenSSL::OPENSSL_FIPS allows for applications
12832	  to react to special requirements when using OpenSSL in FIPS mode.
12833	  [Feature #6946] [ruby-core:47345]
12834
12835Sun Sep  2 21:46:28 2012  Martin Bosslet <Martin.Bosslet@googlemail.com>
12836
12837	* test/openssl/utils.rb: Use a cached DH key instead of generating a
12838	  new one each time.
12839
12840Sun Sep  2 05:41:28 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12841
12842	* lib/webrick/ssl.rb (WEBrick::Config::SSL): add new key
12843	  SSLTmpDhCallback to set SSLContext#tmp_dh_callback.
12844
12845	* lib/webrick/ssl.rb (WEBrick::GenericServer#setup_ssl_context):
12846	  follow above.
12847
12848Sat Sep  1 18:50:50 2012  Akinori MUSHA  <knu@iDaemons.org>
12849
12850	* lib/set.rb (#initialize_copy, #eql): Use instance_variable_get
12851	  instead of instance_eval.
12852
12853Fri Aug 31 21:47:56 2012  Kouhei Sutou  <kou@cozmixng.org>
12854
12855	* lib/test/unit/test-unit.gemspec: Make test/unit default gem.
12856	  [Feature #6875] [ruby-dev:46051]
12857
12858Fri Aug 31 18:35:02 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
12859
12860	* ext/openssl/extconf.rb: Check existence of OPENSSL_NPN_NEGOTIATED.
12861	  ext/ossl_ssl.c: Support Next Protocol Negotiation. Protocols to be
12862	  advertised by the server can be set in the SSLContext by using
12863	  SSLContext#npn_protocols=, protocol selection on the client is
12864	  supported by providing a selection callback with
12865	  SSLContext#npn_select_cb. The protocol that was finally negotiated
12866	  is available through SSL#npn_protocol.
12867	  test/openssl/test_ssl.rb: Add tests for Next Protocol Negotiation.
12868	  NEWS: add news about NPN support.
12869	  [Feature #6503] [ruby-core:45272]
12870
12871Fri Aug 31 17:38:43 2012  Akinori MUSHA  <knu@iDaemons.org>
12872
12873	* lib/set.rb (Set#{each,reject!,select!}, SortedSet#each): Pass
12874	  the original block through instead of creating one that only
12875	  yields the passed argument.
12876
12877Fri Aug 31 16:23:20 2012  Akinori MUSHA  <knu@iDaemons.org>
12878
12879	* lib/ipaddr.rb: Introduce several new error classes where only
12880	  ArgumentError and StandardError were used.  IPAddr::Error is
12881	  their common ancestor class that inherits from ArgumentError for
12882	  backward compatibility.  Submitted by Jon Daniel.  Fixes #173 on
12883	  GitHub.
12884
12885Fri Aug 31 14:51:27 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
12886
12887	* test/bigdecimal/test_bigdecimal.rb (TestBigDecimal#test_to_f): added
12888	  for previous commit.
12889
12890Fri Aug 31 14:32:05 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
12891
12892	* ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): use self's sign to
12893	  determine 0.0 and Inf's sign instead of internal double value's.
12894	  Reported by phasis68 (Heesob Park) at [ruby-core:47381] [Bug #6955]
12895
12896Fri Aug 31 14:31:17 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12897
12898	* template/id.h.tmpl, tool/id2token.rb: make id.h independent from
12899	  parse.h, and make parse.c dependent on it instead.
12900
12901Fri Aug 31 14:27:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12902
12903	* lib/mkmf.rb (create_makefile): fix race conditions at install-ext.
12904	  target files need to depend on destination directory timestamp
12905	  files, not phony targets.
12906
12907Fri Aug 31 14:03:45 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12908
12909	* vm_trace.c (clean_hooks): do not access freed memory.
12910
12911	* vm_trace.c (rb_threadptr_exec_event_hooks): fix uninitialized state
12912	  when no events is executed.
12913
12914Thu Aug 30 18:21:51 2012  Tanaka Akira  <akr@fsij.org>
12915
12916	* io.c (rb_io_close): call rb_last_status_clear.
12917
12918Thu Aug 30 16:17:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12919
12920	* ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): check underflow since
12921	  strtod() sets errno to ERANGE at underflow too.  [ruby-core:47342]
12922	  [Bug #6944]
12923
12924Thu Aug 30 12:44:43 2012  Akinori MUSHA  <knu@iDaemons.org>
12925
12926	* lib/set.rb (Set#{<,>,<=,>=}): Define comparison operators as
12927	  shorthand for the {proper_}{subset?,superset?} methods (finally).
12928	  Given a push by Alexander E. Fischer.
12929
12930Thu Aug 30 09:21:01 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12931
12932	* lib/uri/ftp.rb (URI::FTP#initialize): raise InvalidURIError if "//"
12933	  is not present [ruby-core:47344] [Bug #6945]
12934
12935Thu Aug 30 07:45:12 2012  Luis Lavena  <luislavena@gmail.com>
12936
12937	* test/ruby/test_file_exhaustive.rb: fix test introduced in r36811 for
12938	  posix environments where HOME is not defined.  [ruby-core:47322]
12939
12940Wed Aug 29 23:42:59 2012  Tanaka Akira  <akr@fsij.org>
12941
12942	* internal.h (rb_last_status_clear): declared.
12943
12944	* process.c (rb_last_status_clear): exported.
12945	  (rb_f_system): call rb_last_status_clear.
12946
12947	* io.c (rb_f_backquote): call rb_last_status_clear.
12948
12949Wed Aug 29 22:01:15 2012  Tanaka Akira  <akr@fsij.org>
12950
12951	* process.c (rb_f_system): check failures of waitpid.
12952	  [ruby-talk:398687]
12953
12954Wed Aug 29 15:03:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12955
12956	* configure.in (LIBDIR_BASENAME): use configured libdir value to fix
12957	  --enable-load-relative on systems where libdir is not default value,
12958	  overridden in config.site files.  [ruby-core:47267] [Bug #6903]
12959
12960	* ruby.c (ruby_init_loadpath_safe): ditto.
12961
12962Wed Aug 29 14:34:41 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12963
12964	* addr2line.c: SIZE_MAX is defined in stdint.h, so r36755 breaks
12965	  32bit FreeBSD. [ruby-core:47360] [Bug #6948]
12966
12967Wed Aug 29 04:50:04 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
12968
12969	* test/openssl/utils.rb
12970	  test/openssl/test_pair.rb
12971	  test/openssl/test_pkey_dh.rb: Use 1024 bit DH parameters to satisfy
12972	  OpenSSL FIPS requirements. Patch by Vit Ondruch.
12973	  [Bug #6938] [ruby-core:47326]
12974
12975Tue Aug 28 22:31:49 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
12976
12977	* insns.def (checkmatch): suppress warnings. [ruby-core:47339]
12978	  [Bug #6930]
12979
12980Tue Aug 28 20:03:54 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12981
12982	* configure.in: Fixing Haiku R1/alpha3 build with gcc-4.4.4.
12983	  - omit ANSI standard flags to compile socket extension where
12984	    anonymous union is required.
12985	  - remove redundant -be flags.
12986	  by Takashi Toyoshima <toyoshim@gmail.com>
12987	  https://github.com/ruby/ruby/pull/168
12988
12989Tue Aug 28 11:32:37 2012  Yuki Yugui Sonoda  <yugui@google.com>
12990
12991	* nacl/GNUmakefile.in (.rbconfig.time): r36828 was incomplete.
12992	  It did not run correctly on clean build.
12993
12994Tue Aug 28 09:25:20 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
12995
12996	* win32/Makefile.sub (Makefile): make to depend on common.mk, to
12997	  stop and force to re-run make process when common.mk is changed.
12998
12999Mon Aug 27 20:19:49 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
13000
13001	* test/etc/test_etc.rb (TestEtc#test_getgrgid): fix for non unique GID.
13002	  No unixen systems guarantee that GID is unique. Etc.getgrgid would
13003	  not return the first entry in the order of Etc.group for shared GID.
13004	  [ruby-core:47312] [Bug #6935]
13005
13006Mon Aug 27 18:19:36 2012  Koichi Sasada  <ko1@atdot.net>
13007
13008	* include/ruby/ruby.h (rb_float_value): optimize it.
13009	  This technique was pointed by shinichiro.hamaji
13010	  <http://shinh.skr.jp/m/?date=20120825#p02>.
13011
13012Mon Aug 27 15:08:25 2012  Yuki Yugui Sonoda  <yugui@google.com>
13013
13014	* common.mk (vm_trace.o): Added a missing dependency.
13015
13016Sun Aug 26 09:29:32 2012  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
13017
13018	* nacl/GNUmakefile.in (package): make package should install
13019	  example.html for nacl build
13020
13021	Patch by Takashi Toyoshima <toyoshim AT gmail.com>.
13022
13023Sun Aug 26 09:22:33 2012  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
13024
13025	* nacl/GNUmakefile.in (CC, LD, NM, AR, AS, RANLIB, OBJDUMP, OBJCOPY)
13026	  Rewrites these variables instead of PATH.
13027	  NaCl port uses a toolchain which is specified by NACL_SDK_ROOT
13028	  environment variable. Originally, NaCl build added the toolchain
13029	  under the NACL_SDK_ROOT to the PATH. But updating PATH doesn't work
13030	  on Mac.
13031	  (RBCONFIG): Replaces configs with the variable updates above.
13032
13033	* configure.in: Thus it is no longer necessary to check $PATH.
13034
13035	Based on a patch by Takashi Toyoshima <toyoshim AT gmail.com>.
13036
13037Sun Aug 26 16:53:00 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13038
13039	* insns.def (checkmatch): suppress warnings.  [ruby-core:47310]
13040	  [Bug #6930]
13041
13042	* vm_core.h (VM_FRAME_TYPE_FINISH_P): ditto.
13043
13044Fri Aug 24 15:42:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13045
13046	* lib/mkmf.rb (create_makefile): use timestamp for destination
13047	  directories to make them before making or copying files there.
13048	  [ruby-dev:46067] [Bug #6904]
13049
13050Fri Aug 24 12:40:15 2012  Luis Lavena  <luislavena@gmail.com>
13051
13052	* configure.in (mingw): add shlwapi to the list of dependency
13053	  libs for Windows.
13054	* win32/Makefile.sub (EXTSOLIBS): ditto.
13055
13056	* internal.h: declare internal functions rb_w32_init_file,
13057	  rb_file_expand_path_internal and rb_file_expand_path_fast.
13058
13059	* file.c (Init_File): invoke Windows initialization rb_w32_init_file
13060
13061	* win32/file.c (rb_file_load_path_internal): new function.
13062	  Windows-specific implementation that replaces file_expand_path.
13063	  [Bug #6836][ruby-core:46996]
13064
13065	* win32/file.c (rb_w32_init_file): new function. Initialize codepage
13066	  cache for faster conversion encodings lookup.
13067
13068	* file.c (file_expand_path): rename to rb_file_expand_path_internal.
13069	  Conditionally exclude from Windows.
13070
13071	* file.c (rb_file_expand_path_fast): new function. delegates to
13072	  rb_file_expand_path_internal without performing a hit to the
13073	  filesystem.
13074
13075	* file.c (file_expand_path_1): use rb_file_expand_path_internal without
13076	  path expansion (used by require).
13077	* file.c (rb_find_file_ext_safe): ditto.
13078	* file.c (rb_find_file_safe): ditto.
13079
13080	* load.c (rb_get_expanded_load_path): use rb_file_expand_path_fast.
13081	* load.c (rb_feature_provided): ditto.
13082
13083	* file.c (rb_file_expand_path): use rb_file_expand_path_internal with
13084	  path expansion.
13085	* file.c (rb_file_absolute_path): ditto.
13086
13087	* test/ruby/test_file_exhaustive.rb: new tests to exercise
13088	  rb_file_expand_path_internal implementation and compliance with
13089	  existing behaviors.
13090
13091Fri Aug 24 07:35:24 2012  Eric Hodel  <drbrain@segment7.net>
13092
13093	* lib/net/http/backward.rb (class Net):  Restored Net::HTTPSession to
13094	  fix backwards-compatibility with ancient Net::HTTP.  [Bug #6889]
13095
13096Thu Aug 23 20:58:55 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
13097
13098	* common.mk: support `make id.h` without `rm .id.h.time` after
13099	  `rm id.h`.
13100
13101Thu Aug 23 20:48:45 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13102
13103	* test/ruby/test_fixnum.rb (TestFixnum#test_singleton_method): new test.
13104
13105	* test/ruby/test_bignum.rb (TestBignum#test_singleton_method): ditto.
13106
13107	* test/ruby/test_float.rb (TestFloat#test_singleton_method): ditto.
13108
13109	* test/ruby/test_symbol.rb (TestSymbol#test_singleton_method): ditto.
13110
13111Thu Aug 23 20:34:32 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13112
13113	* class.c (singleton_class_of): flonum can't have singleton class.
13114
13115	* vm.c (vm_define_method): flonum can't have singleton method.
13116
13117Thu Aug 23 19:18:33 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13118
13119	* common.mk (win32/*): macro RUBY_H_INCLUDES is not defined there,
13120	  so need to move dependency rules under the definition of it.
13121
13122Thu Aug 23 19:16:20 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13123
13124	* win32/Makefile.sub: refactoring.  remove unused rules, and update
13125	  some rules which are not used usually to fit current macros.
13126
13127Thu Aug 23 16:46:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13128
13129	* file.c (rb_find_file_ext_safe, rb_find_file_safe): default to
13130	  US-ASCII for encdb and transdb.
13131
13132	* load.c (search_required): keep encoding of feature name.  set
13133	  loading path to filesystem encoding.  [Bug #6377][ruby-core:44750]
13134
13135	* ruby.c (add_modules, require_libraries): assume default external
13136	  encoding as well as ARGV.
13137
13138Thu Aug 23 16:20:04 2012  Koichi Sasada  <ko1@atdot.net>
13139
13140	* include/ruby/ruby.h: introduce flonum technique for
13141	  64bit CPU environment (sizeof(double) == sizeof(VALUE)).
13142	  flonum technique enables to avoid double object creation
13143	  if the double value d is in range about between
13144	  1.72723e-77 < |d| <= 1.15792e+77 or 0.0.
13145	  flonum Float value is immediate and their lowest two bits
13146	  are b10.
13147	  If flonum is activated, then USE_FLONUM macro is 1.
13148	  I'll write detailed in this technique on
13149	  https://bugs.ruby-lang.org/projects/ruby-trunk/wiki/Flonum_tech
13150
13151	* benchmark/bmx_temp.rb: add an benchmark for simple
13152	  Float calculation.
13153
13154	* gc.c (id2ref, rb_obj_id): add flonum Float support.
13155
13156	* include/ruby/intern.h: move decl of rb_float_new(double)
13157	  to include/ruby/ruby.h.
13158
13159	* insns.def, vm.c, vm_insnhelper.c: add flonum optimization
13160	  and simplify source code.
13161
13162	* vm_insnhelper.h (FLONUM_2_P): added.
13163
13164	* marshal.c: support flonum output.
13165
13166	* numeric.c (rb_float_new_in_heap): added.
13167
13168	* parse.y: support flonum.
13169
13170	* random.c: ditto.
13171
13172Thu Aug 23 16:12:40 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13173
13174	* lib/mkmf.rb (create_makefile): add dependency to header files when
13175	  depend files don't exist.  now we can remove simple (and often
13176	  wrong) depend files in most cases.
13177
13178Thu Aug 23 16:02:20 2012  Koichi Sasada  <ko1@atdot.net>
13179
13180	* ext/date/depend: add dependency to $(ruby_headers).
13181
13182Thu Aug 23 12:51:39 2012  Shugo Maeda  <shugo@ruby-lang.org>
13183
13184	* insns.def (invokesuper): reverted r36640 partially to make super
13185	  in a thread work correctly. [ruby-core:47284] [Bug #6907]
13186
13187	* test/ruby/test_super.rb: related test.
13188
13189Thu Aug 23 12:30:20 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13190
13191	* win32/configure.bat: support --with(out)?-ext(ensions) options.
13192
13193Thu Aug 23 11:52:04 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13194
13195	* configure.in: Fixing Haiku build.
13196	  - -lbe is not required for linking
13197	  - stack protector doesn't work for now because of the default gcc's
13198	    bug
13199	  by Takashi Toyoshima <toyoshim@gmail.com>
13200	  https://github.com/ruby/ruby/pull/167
13201
13202	* signal.c (ruby_signal): haiku doesn't have SIGBUS.
13203
13204Thu Aug 23 11:32:44 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13205
13206	* test/open-uri/test_open-uri.rb (TestOpenURI#test_read_timeout): this
13207	  test expects that the server thread will be killed in sleep, but 0.01
13208	  sec is too short to reach there.
13209
13210Thu Aug 23 10:49:28 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13211
13212	* configure.in: use the value of --with-opt-dir on building ruby
13213	  itself. [ruby-dev:46064] [Bug #6900]
13214
13215Thu Aug 23 10:36:35 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13216
13217	* common.mk (ID_H_TARGET): revert a part of r36724 and r36751.  they
13218	  break mswin build from clean source.
13219
13220Thu Aug 23 02:37:35 2012  Aaron Patterson <aaron@tenderlovemaking.com>
13221
13222	* ext/syck: removed. Fixes [ruby-core:43360]
13223
13224	* test/syck: removed.
13225
13226	* lib/yaml.rb: only require psych, show a warning if people try to set
13227	  the engine to syck.
13228
13229Thu Aug 23 01:46:53 2012  Aaron Patterson <aaron@tenderlovemaking.com>
13230
13231	* insns.def: search up the cf stack for an object that is an instance
13232	  of the recipient class.  Fixes [ruby-core:47186]
13233
13234	* test/ruby/test_super.rb: related test.
13235
13236Wed Aug 22 19:46:24 2012  Tadayoshi Funaba  <tadf@dotrb.org>
13237
13238	* ext/date/date_core.c: [ruby-core:47266].
13239
13240Wed Aug 22 19:41:19 2012  Tadayoshi Funaba  <tadf@dotrb.org>
13241
13242	* ext/date/date_core.c: [ruby-core:47226].
13243
13244Wed Aug 22 16:57:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13245
13246	* lib/mkmf.rb (configuration): extract least ruby headers list as
13247	  ruby_headers, so depend files can use default dependency
13248	  explicitly.
13249
13250Wed Aug 22 15:27:50 2012  Koichi Sasada  <ko1@atdot.net>
13251
13252	* vm_insnhelper.c (vm_setup_method): fix last commit of
13253	  vm_insnhelper.c (r36771). [ruby-dev:46065] [Bug #6901]
13254	  Should not disable tail call opt on FINISH_FRAME.
13255	  This flag should be propagated correctly.
13256
13257Wed Aug 22 14:05:23 2012  Koichi Sasada  <ko1@atdot.net>
13258
13259	* vm_trace.c: support TracePoint. [ruby-trunk - Feature #6895]
13260
13261	* test/ruby/test_settracefunc.rb: add tests for above.
13262
13263	* proc.c (rb_binding_new_with_cfp): add an internal function.
13264
13265	* vm.c (rb_vm_control_frame_id_and_class): add an internal function.
13266
13267	* vm_trace.c: add rb_add_event_hook2() and rb_thread_add_event_hook2().
13268	  Give us the good name for them!
13269
13270Wed Aug 22 11:38:16 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
13271
13272	* .travis.yml (before_script): Turned out that make -j is broken.
13273
13274Wed Aug 22 11:23:35 2012  Shugo Maeda  <shugo@ruby-lang.org>
13275
13276	* vm_insnhelper.c (vm_setup_method): should not enable tail call
13277	  optimization for frames with VM_FRAME_FLAG_FINISH.
13278	  [ruby-dev:46065] [Bug #6901]
13279
13280Wed Aug 22 11:20:47 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13281
13282	* lib/rubygems/test_case.rb: run test with psych if exist.
13283
13284Thu Aug 16 12:09:51 2012  Yuki Yugui Sonoda  <yugui@google.com>
13285
13286	* nacl/pepper_main.c (init_loadpath): Pushes the correct load path on
13287	  other architectures than x86_64. Fixes #6873.
13288
13289Wed Aug 15 19:37:33 2012  Yuki Yugui Sonoda  <yugui@google.com>
13290
13291	* configure.in (ac_cv_func_shutdown): shutdown(2) has a dummy
13292	  implementation but has no declaration and does not work in
13293	  NativeClient SDK pepper_20.
13294
13295Wed Aug 15 19:29:29 2012  Yuki Yugui Sonoda  <yugui@google.com>
13296
13297	* common.mk (vm_backtrace.o): Added missing dependencies.
13298
13299	* ext/nkf/depend (nkf.o): ditto.
13300
13301	* ext/ripper/depend (ripper.o) ditto.
13302
13303Wed Aug 22 07:27:00 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13304
13305	* lib/cgi/util.rb (CGI.escapeHTML): use &#39;
13306	  [ruby-core:47221] [Bug #6861]
13307
13308Tue Aug 21 21:59:22 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
13309
13310	* lib/observer.rb: fix typo. https://github.com/ruby/ruby/pull/162 by
13311	  unsymbol (Philip Cunningham).
13312
13313Tue Aug 21 20:30:06 2012  Benoit Daloze  <eregontp@gmail.com>
13314
13315	* test/fileutils/test_fileutils.rb (TestFileUtils#teardown):
13316	  do not assume cwd is TMPROOT and never remove current directory.
13317	  [ruby-core:47224][Bug #6884]
13318
13319Tue Aug 21 17:29:56 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13320
13321	* addr2line.c (fill_lines): need check and cast of the file size of
13322	  target binary because there are some platforms which off_t > size_t.
13323
13324Tue Aug 21 17:07:58 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
13325
13326	* .travis.yml (compiler): [experimental] clang support.
13327
13328Tue Aug 21 15:44:27 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13329
13330	* ext/dl/lib/dl/func.rb (DL::Function#bind): fixes an error in
13331	  test/dl/test_import.rb (DL::TestImport#test_carried_function)
13332	  introduced by r36718.
13333	  the instance of the anonymous class which wraps the block should have
13334	  same methods and instance variables of self.
13335
13336Tue Aug 21 14:29:22 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13337
13338	* win32/Makefile.sub (scriptbin.mk): no need to include twice.
13339
13340Tue Aug 21 10:52:08 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13341
13342	* test/unit/test.rb (Test::Unit::ProxyError): new exception class to
13343	  wrap exceptions raised in workers in parallel test mode.
13344
13345	* test/unit/parallel.rb (Test::Unit::Worker#puke): use above wrapper
13346	  exception.
13347	  [Bug #6882] [ruby-dev:46054]
13348
13349Tue Aug 21 10:40:06 2012  Koichi Sasada  <ko1@atdot.net>
13350
13351	* test_continuation.rb (tracing_with_thread_set_trace_func):
13352	  fix to use Thread#set_trace_func(nil), not set_trace_func(nil).
13353
13354Tue Aug 21 09:32:41 2012  Ryan Davis  <ryand-ruby@zenspider.com>
13355
13356	* lib/minitest/*: Imported minitest 3.3.0 (r7676)
13357	* test/minitest/*: ditto
13358
13359Tue Aug 21 09:05:32 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13360
13361	* test/testunit/tests_for_parallel/ptest_forth.rb: added a test case
13362	  which causes an error.
13363
13364	* test/testunit/test_parallel.rb: follow above change.
13365	  see [Bug #6882]
13366
13367Tue Aug 21 05:43:00 2012  James Edward Gray II  <james@graysoftinc.com>
13368
13369	* lib/csv.rb: Fixes #161 on github
13370	* lib/csv.rb: You can now specify a pattern for :skip_lines.
13371	  Matching lines will not be passed to the CSV parser.
13372	* lib/csv.rb: Patch by Christian Schwartz.
13373
13374Tue Aug 21 05:25:41 2012  Eric Hodel  <drbrain@segment7.net>
13375
13376	* re.c (rb_reg_initialize_m): Forgot to update output for or'd-options
13377	  example.
13378
13379Tue Aug 21 05:18:03 2012  Eric Hodel  <drbrain@segment7.net>
13380
13381	* re.c (rb_reg_initialize_m): Update example to show that regexp
13382	  options use | an not || to avoid confusion.
13383
13384Mon Aug 20 23:02:27 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13385
13386	* parse.y: more descriptive token names in syntax error messages.
13387
13388Mon Aug 20 20:36:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13389
13390	* vm_insnhelper.c (vm_call_method): follow iclasses as klass in cfp
13391	  but not included modules.  [ruby-core:47241] [Bug #6891]
13392
13393	* vm_insnhelper.c (vm_call_bmethod): pass defined_class to follow
13394	  proper ancestors.  [ruby-core:47241] [Bug #6891]
13395
13396Mon Aug 20 11:40:27 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
13397
13398	* common.mk: fix failed to make with -j2.
13399	  https://gist.github.com/3397935
13400
13401Mon Aug 20 10:51:01 2012  Shota Fukumori  <sorah@tubusu.net>
13402
13403	* lib/test/unit.rb, lib/test/unit/parallel.rb:
13404	  generate error message (String) in parallel.rb instead of
13405	  marshalling Exception. Fixes [Bug #6882] [ruby-dev:46054]
13406
13407Sun Aug 19 01:24:32 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
13408
13409	* enum.c: fix docs. https://github.com/ruby/ruby/pull/129 by
13410	  richardkmichael (Richard Michael).
13411
13412Sun Aug 19 00:47:26 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
13413
13414	* lib/fileutils.rb: fix typo.
13415	  https://github.com/ruby/ruby/pull/155 by simonc (Simon COURTOIS).
13416
13417Sat Aug 18 09:57:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13418
13419	* enc/depend: fix inplace-build condition.  enc.mk is generated with
13420	  setting $srcdir to enc, but pwd is still top build directory.
13421	  [ruby-core:47236] [Bug #6888]
13422
13423Fri Aug 17 23:28:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13424
13425	* object.c (rb_any_to_s, rb_obj_inspect): preserve encodings of class
13426	  name and instance variable names.
13427
13428Fri Aug 17 12:39:33 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13429
13430	* ext/dl/lib/dl/func.rb (DL::Function#bind): allow to return/break from
13431	  the callback method. (Fiddle already allows it.)
13432	  [Bug #6389] [ruby-dev:45604]
13433
13434Thu Aug 16 19:54:24 2012  Koichi Sasada  <ko1@atdot.net>
13435
13436	* vm_trace.c, vm_core.h: simplify tracing mechanism.
13437
13438	  (1) add rb_hook_list_t data structure which includes
13439	      hooks, events (flag) and `need_clean' flag.
13440	      If the last flag is true, then clean the hooks list.
13441	      In other words, deleted hooks are contained by `hooks'.
13442	      Cleanup process should run before traversing the list.
13443	  (2) Change check mechanism
13444	      See EXEC_EVENT_HOOK() in vm_core.h.
13445	  (3) Add `raw' hooks APIs
13446	      Normal hooks are guarded from exception by rb_protect().
13447	      However, this protection is overhead for too simple
13448	      functions which never cause exceptions.  `raw' hooks
13449	      are executed without protection and faster.
13450	      Now, we only provide registration APIs.  All `raw'
13451	      hooks are kicked under protection (same as normal hooks).
13452
13453	* include/ruby/ruby.h: remove internal data definition and
13454	  macros.
13455
13456	* internal.h (ruby_suppress_tracing), vm_trace.c: rename
13457	  ruby_suppress_tracing() to rb_suppress_tracing()
13458	  and remove unused function parameter.
13459
13460	* parse.y: fix to use renamed rb_suppress_tracing().
13461
13462	* thread.c (thread_create_core): no need to set RUBY_VM_VM.
13463
13464	* vm.c (mark_event_hooks): move definition to vm_trace.c.
13465
13466	* vm.c (ruby_vm_event_flags): add a global variable.
13467	  This global variable represents all of Threads and VM's
13468	  event masks (T1#events | T2#events | ... | VM#events).
13469	  You can check the possibility kick trace func or not
13470	  with ruby_vm_event_flags.
13471	  ruby_vm_event_flags is maintained by vm_trace.c.
13472
13473	* cont.c (fiber_switch, rb_cont_call): restore tracing status.
13474	  [Feature #4347]
13475
13476	* test/ruby/test_continuation.rb: ditto.
13477
13478Thu Aug 16 19:15:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13479
13480	* object.c (rb_class_initialize): forbid inheriting uninitialized
13481	  class.  another class tree not based on BasicObject cannot exist.
13482	  [ruby-core:47148][Bug #6863]
13483
13484Thu Aug 16 11:52:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13485
13486	* test/-ext-/test_printf.rb (Test_SPrintf#test_{taint,untrust}): use
13487	  plain object so that the results of to_s and inspect are infected.
13488	  [ruby-dev:46053] [Bug #6881]
13489
13490Thu Aug 16 09:46:07 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13491
13492	* strftime.c: remove unnecessary macros to check traditional C.
13493	  https://github.com/ruby/ruby/pull/46 by lateau (Daehyub Kim).
13494
13495	* vsnprintf.c: remove K&R.
13496
13497Wed Aug 15 20:47:49 2012  Benoit Daloze  <eregontp@gmail.com>
13498
13499	* object.c (rb_obj_inspect): Kernel#inspect: do not call #to_s. A class
13500	  can now benefit from the nice default #inspect even if it defines #to_s.
13501	  Also, there is no more unexpected change in #inspect result.
13502
13503	* NEWS: Add note about the change.
13504
13505	* bignum.c, io.c, numeric.c, object.c, proc.c, vm.c (Init_*):
13506	  Adapt internal structures (by aliasing #inspect to #to_s) so they
13507	  don't rely on the removed behavior (#inspect calling overridden #to_s).
13508
13509	* test/ruby/test_object.rb (test_inspect): add tests for Kernel#inspect.
13510
13511	* lib/pp.rb (class PP): do not call #to_s anymore, as #inspect
13512	  no more does (mame).
13513
13514	* test/test_pp.rb (class PPInspectTest): remove related assertion (mame).
13515	  [ruby-core:43238][Feature #6130]
13516
13517	* test/drb/drbtest.rb (DRbCore#teardown, DRbAry#teardown):
13518	  adapt DRb tests with the new change (shirosaki).
13519	  [ruby-core:47182][Bug #6866]
13520
13521Wed Aug 15 18:05:37 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13522
13523	* lib/test/unit.rb (Test::Unit::Runner#failed): need to delete the
13524	  status line if the status is skipped and -q is specified.
13525
13526Wed Aug 15 16:26:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13527
13528	* sprintf.c (ruby__sfvextra): the result should be infected by the
13529	  given strings.
13530
13531	* sprintf.c (ruby__sfvwrite): set buffer length and exclude
13532	  uninitialized garbage to get correct coderange.
13533
13534Wed Aug 15 16:20:09 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13535
13536	* common.mk (ID_H_TARGET): make timestamp file of id.h so that the
13537	  header will not be remade repetitively.
13538
13539Wed Aug 15 11:39:53 2012  Koichi Sasada  <ko1@atdot.net>
13540
13541	* vm_trace.c: separate trace_func related functions from
13542	  thread.c.
13543
13544	* thread.c: ditto.
13545
13546	* common.mk: add vm_trace.o.
13547
13548	* inits.c: call Init_vm_trace().
13549
13550Tue Aug 14 16:25:46 2012  Shugo Maeda  <shugo@ruby-lang.org>
13551
13552	* test/erb/test_erb.rb (test_html_escape): add assertions for the
13553	  cases where the argument is not a String.
13554
13555Tue Aug 14 16:03:31 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13556
13557	* win32/win32.c (check_valid_dir): reject "..." as directory name.
13558	  [Bug #6851]
13559
13560Tue Aug 14 16:02:51 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13561
13562	* test/ruby/test_file_exhaustive.rb
13563	  (TestFileExhaustive#test_stat_dotted_prefix): added.
13564
13565Tue Aug 14 15:39:09 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13566
13567	* test/ruby/test_file_exhaustive.rb
13568	  (TestFileExhaustive#test_stat_drive_root): added.
13569
13570Tue Aug 14 10:38:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13571
13572	* lib/erb.rb (ERB::Util.html_escape): fix r36687: call to_s before
13573	  passing it to CGI.escapeHTML.
13574
13575Mon Aug 13 13:13:19 2012  Shugo Maeda  <shugo@ruby-lang.org>
13576
13577	* lib/erb.rb (ERB::Util.html_escape): use CGI.escapeHTML to escape
13578	  single quotes. [ruby-core:47138] [Bug #6861]
13579
13580Sun Aug 12 11:57:20 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
13581
13582	* vm.c (invoke_block_from_c): fix unintentional block passing.
13583	  [ruby-dev:45071] [Bug #5832]
13584
13585Fri Aug 10 08:41:28 2012  Eric Hodel  <drbrain@segment7.net>
13586
13587	* gc.c (gc_malloc_allocated_size):  RDoc does not process macros, so
13588	  mention this method is only available when ruby is built with
13589	  CALC_EXACT_MALLOC_SIZE
13590	* gc.c (gc_malloc_allocations):  ditto
13591
13592Thu Aug  9 23:46:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13593
13594	* tool/mkrunnable.rb: see build_os instead of target arch for
13595	  cross-compiling.
13596
13597	* configure.in (MINIRUBY): use real path for include path.
13598
13599	* template/fake.rb.in (builddir): remove duplications
13600
13601Thu Aug  9 20:03:11 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
13602
13603	* test/ruby/test_file_exhaustive.rb
13604	  (TestFileExhaustive#test_stat_special_file): add a test.
13605	  GetFileAttributesExW fails to get attributes of special files
13606	  such as pagefile.sys.
13607
13608	* win32/win32.c (check_valid_dir): for performance, check the path
13609	  by FindFirstFileW only if the path contains "..."
13610
13611	* win32/win32.c (winnt_stat): use GetFileAttributesExW instead of
13612	  FindFirstFileW since GetFileAttributesExW is faster.
13613	  Based on the patch by Dusan D. Majkic.
13614	  [ruby-core:47083] [Feature #6845]
13615
13616Thu Aug  9 18:33:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13617
13618	* ruby.c (proc_options): show version only once even if -v and
13619	  --version are given together.
13620	  http://twitter.com/d6rkaiz/status/233491797085671424
13621
13622Thu Aug  9 12:37:22 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
13623
13624	* test/openssl/test_config.rb (OpenSSL#test_constants): skip this
13625	  test if platform is Mac OS X or Windows. [Bug #6830]
13626
13627Wed Aug  8 22:51:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13628
13629	* vm_eval.c (eval_under): singletons other than special constants
13630	  don't need cref-scope hack.
13631
13632Wed Aug  8 22:45:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13633
13634	* common.mk (.y.h): split from .y.c rule to manage dependency on
13635	  parse.h.  [ruby-core:46741] [Bug #6789]
13636
13637	* common.mk (id.h): keep old file unless changed.
13638
13639Wed Aug  8 17:11:20 2012  Koichi Sasada  <ko1@atdot.net>
13640
13641	* compile.c (ADD_INSNL): make ADD_INSNL as alias of ADD_INSN1.
13642
13643Wed Aug  8 17:08:14 2012  Koichi Sasada  <ko1@atdot.net>
13644
13645	* bootstrap/test_exception.rb: fix a last committed test.
13646
13647Wed Aug  8 16:27:58 2012  Koichi Sasada  <ko1@atdot.net>
13648
13649	* compile.c, insns.def (checkmatch):
13650	  remove checkincludearray instruction and
13651	  add new instruction checkmatch.
13652	  This change is to solve
13653	  [Bug #4438] "rescue args type check omitted".
13654
13655	* iseq.c: increment ISEQ_MAJOR_VERSION because removal of
13656	  checkincludearray instruction.
13657
13658	* vm_core.h: add several definitions for
13659	  the checkmatch instruction.
13660
13661	* vm_insnhelper.c (check_match): added.
13662
13663	* bootstraptest/test_exception.rb: add a test.
13664
13665	* test/ruby/test_exception.rb: ditto.
13666
13667Wed Aug  8 05:51:20 2012  Eric Hodel  <drbrain@segment7.net>
13668
13669	* proc.c (method_clone):  Added documentation.  Patch by Robin Dupret.
13670	  Fixes #152 on github.
13671
13672Tue Aug  7 20:19:29 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13673
13674	* ext/readline/readline.c (Init_readline): rl_catch_signals=0 returns
13675	  back. Without this, on FreeBSD9 and readline 6.2 irb can't catch ^C.
13676	  [Bug #5423]
13677
13678Tue Aug  7 20:12:39 2012  Koichi Sasada  <ko1@atdot.net>
13679
13680	* vm_exec.c, insns.def (leave): solve problems on
13681	  OPT_CALL_THREADED_CODE.
13682	  Catch up finish frame structure on OPT_CALL_THREADED_CODE.
13683
13684	* vm_core.h: add rb_thread_t#retval for temporary space on
13685	  OPT_CALL_THREADED_CODE.
13686
13687	* vm.c (th_init): clear rb_thread_t#retval as Qundef.
13688
13689	* vm_dump.c (rb_vmdebug_debug_print_pre): fix debug print format.
13690
13691Tue Aug  7 11:58:27 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13692
13693	* test/ruby/test_require.rb (TestRequire#test_require_twice): added.
13694
13695Tue Aug  7 11:35:37 2012  Shugo Maeda  <shugo@ruby-lang.org>
13696
13697	* vm_method.c (rb_redefine_opt_method): use RCLASS_ORIGIN to avoid
13698	  SEGV when a module-prepended class is refined.
13699
13700Tue Aug  7 10:46:37 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13701
13702	* test/ruby/test_file_exhaustive.rb
13703	  (TestFileExhaustive#test_expand_path*): refactoring.  split the method
13704	  into some chunks of the same kind of tests.
13705
13706Tue Aug  7 00:31:09 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13707
13708	* class.c (rb_special_singleton_class_of): utility function.
13709
13710	* vm_eval.c (eval_under): special deal for class variable scope with
13711	  instance_eval.
13712
13713	* vm_eval.c (rb_obj_instance_eval, rb_obj_instance_exec): allow method
13714	  definition in instance_eval of special constants.  [ruby-core:28324]
13715	  [Bug #2788]
13716
13717Tue Aug  7 00:23:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13718
13719	* variable.c (CVAR_LOOKUP): split into helper functions.
13720
13721Mon Aug  6 19:15:11 2012  Masaki Suketa <masaki.suketa@nifty.ne.jp>
13722
13723	* test/win32ole/test_win32ole_variant.rb: setting WIN32OLE.locale
13724	  to pass some assertion.  Thanks to Hiroshi Shirosaki.
13725	  [ruby-core:46873][Bug #6814]
13726
13727Mon Aug  6 15:54:50 2012  Shugo Maeda  <shugo@ruby-lang.org>
13728
13729	* internal.h, class.c, eval.c, insns.def: find the appropriate
13730	  receiver for super called in instance_eval.  If such a receiver is
13731	  not found, raise NoMethodError. [ruby-dev:39772] [Bug #2402]
13732
13733Mon Aug  6 14:54:38 2012  Shugo Maeda  <shugo@ruby-lang.org>
13734
13735	* include/ruby/ruby.h, eval.c, vm_insnhelper.c: fix typo.
13736
13737Mon Aug  6 13:13:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13738
13739	* vm_eval.c (vm_call_super): since cfp->klass is always class or
13740	  iclass, no search from method entry.
13741
13742	* insns.def (defined): now should use klass in the current control
13743	  frame to search superclass, not me->klass.  reported by naruse.
13744
13745Mon Aug  6 11:19:19 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13746
13747	* test/etc/test_etc.rb (TestEtc#test_getpwuid): `s' is never set to nil.
13748
13749Mon Aug  6 11:08:48 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13750
13751	* test/syslog/test_syslog_logger.rb: skip unless Syslog module is
13752	  available.
13753
13754Mon Aug  6 00:40:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13755
13756	* ext/bigdecimal/bigdecimal.c (BigMath_s_log): fix format specifier.
13757
13758Mon Aug  6 00:39:24 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13759
13760	* include/ruby/ruby.h (NUM2ULONG): optimize by inline as well as
13761	  NUM2LONG, and cast to unsigned long explicitly for the platforms
13762	  where SIZEOF_VALUE is larger than SIZEOF_LONG.
13763
13764	* include/ruby/ruby.h (NUM2SSIZET): fix type to cast.
13765
13766Sun Aug  5 21:10:36 2012  Narihiro Nakamura  <authornari@gmail.com>
13767
13768	* gc.c : if ENABLE_VM_OBJSPACE is 1, rest_sweep is not defined.
13769	  remove unused declarations. [ruby-core:47004] [Bug #6837]
13770
13771Sun Aug  5 19:31:57 2012  Narihiro Nakamura  <authornari@gmail.com>
13772
13773	* gc.c: just move functions and so on. I don't touch any internal
13774	  implementation.
13775
13776Sun Aug  5 13:22:29 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13777
13778	* configure.in: use gcc-4.2 prior to clang, gcc, and cc if exist for
13779	  the use of Snow Leopard's old clang. see also r36594, r36610, r36611.
13780
13781Sun Aug  5 06:55:10 2012  Tadayoshi Funaba  <tadf@dotrb.org>
13782
13783	* ext/date/date_{core,strftime}.c: [ruby-core:46990].
13784
13785Sat Aug  4 22:56:20 2012  Narihiro Nakamura  <authornari@gmail.com>
13786
13787	* gc.c: use inline functions instead of macros, and close up
13788	  related codes for the profiler.
13789
13790Sat Aug  4 20:37:56 2012  Narihiro Nakamura  <authornari@gmail.com>
13791
13792	* gc.c (gc_mark_children): use gc_mark_ptr instead of marking
13793	  a object directly.
13794
13795Sat Aug  4 10:02:03 2012  Shugo Maeda  <shugo@ruby-lang.org>
13796
13797	* test/ruby/test_alias.rb (test_super_in_aliased_module_method):
13798	  add a test case for [ruby-dev:46028], which fails in 1.8.
13799
13800Sat Aug  4 01:56:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13801
13802	* vm_insnhelper.c (vm_search_normal_superclass): no longer needs
13803	  receiver, klass is always unique in the ancestors now.
13804
13805Sat Aug  4 01:27:40 2012  Shugo Maeda  <shugo@ruby-lang.org>
13806
13807	* insns.def (invokesuper): reverted r36612 so that super in an
13808	  aliased method will not call the same method.
13809
13810Fri Aug  3 19:26:10 2012  Shugo Maeda  <shugo@ruby-lang.org>
13811
13812	* insns.def (invokesuper): don't skip the same class.  instead, use
13813	  rb_method_entry_get_with_omod() to avoid infinite loop when
13814	  super is used with refinements. [ruby-core:30450] [Bug #3351]
13815
13816Fri Aug  3 19:21:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13817
13818	* configure.in: use clang prior to gcc only when self-compiling on
13819	  darwin.  search default compilers on other platforms.  [Bug #6816]
13820
13821Fri Aug  3 17:25:49 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13822
13823	* configure.in: move RUBY_MINGW32 after AC_PROG_CC.
13824	  RUBY_MINGW32 uses AC_TRY_CPP and it sets CC and CPP. [Bug #6816]
13825
13826	* configure.in: don't use AC_PROG_CC in AS_CASE.
13827
13828Fri Aug  3 17:21:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13829
13830	* test/runner.rb: get rid of loading previously installed gems.
13831	  [ruby-dev:46025]
13832
13833Fri Aug  3 16:40:01 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
13834
13835	* .travis.yml (notifications): [experimental] IRC notifications.
13836
13837Thu Aug  2 20:32:29 2012  Shugo Maeda  <shugo@ruby-lang.org>
13838
13839	* eval.c (rb_mod_using): new method Module#using. [experimental]
13840
13841	* eval.c (rb_mod_refine): new method Module#refine. [experimental]
13842
13843	* eval.c (f_using): new method Kernel#using. [experimental]
13844
13845Thu Aug  2 20:08:02 2012  Shugo Maeda  <shugo@ruby-lang.org>
13846
13847	* class.c, insns.def, method.h, proc.c, vm.c, vm_core.h, vm_eval.c,
13848	  vm_insnhelper.c, vm_insnhelper.h, vm_method.c: add klass to
13849	  rb_control_frame_t to implement super correctly.
13850
13851Thu Aug  2 13:23:08 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13852
13853	* configure.in (AC_PROG_CC): AC_PROG_CC tries clang at first on
13854	  darwin. [Bug #6816]
13855
13856Thu Aug  2 11:39:25 2012  Narihiro Nakamura  <authornari@gmail.com>
13857
13858	* gc.c: return true or false. Patch by Dirkjan Bussink. [Bug #6821]
13859
13860	* test/ruby/test_gc.rb: add test-case for this bug.
13861
13862Thu Aug  2 10:51:12 2012  Martin Bosslet  <Martin.Bosslet@gmail.com>
13863
13864	* ext/openssl/lib/openssl/digest.rb
13865	  test/openssl/test_digest.rb: Add Digest module function to OpenSSL
13866	  module and test it. Patch provided by Eric Hodel.
13867	  [ruby-core:46908][Feature #6819]
13868
13869Wed Aug  1 22:29:12 2012  Benoit Daloze  <eregontp@gmail.com>
13870
13871	* ext/digest/digest.c (hexencode_str_new): return an ASCII string
13872
13873	* test/digest: tests for all kind of digests encodings
13874	  [ruby-core:46792][Bug #6799]
13875
13876Wed Aug  1 05:50:53 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
13877
13878	* test/ruby/test_rubyoptions.rb (TestRubyOptions#test_encoding):
13879	  Fix test_encoding failure on Windows.
13880	  With chcp 65001, 1252 and 437, test_encoding failed. Test result
13881	  depends on locale because LANG environment variable doesn't affect
13882	  locale on Windows.
13883	  [ruby-core:46872] [Bug #6813]
13884
13885Wed Aug  1 00:33:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13886
13887	* class.c (include_class_new): fix duplication of prepended module.
13888	  since m_tbl of prepended module is always zero, copy from its
13889	  copy iclass of original.
13890
13891Tue Jul 31 18:22:34 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13892
13893	* variable.c (classname): tell if found name is permanent.  search
13894	  tmp_classpath only if class id is set.  [ruby-core:42865][Bug #6078]
13895
13896	* variable.c (rb_class_path): duplicate found temporary path.
13897
13898	* variable.c (rb_set_class_path_string, rb_set_class_path): set class
13899	  id to find classpath.
13900
13901Tue Jul 31 10:36:12 2012  Aaron Patterson <aaron@tenderlovemaking.com>
13902
13903	* ext/psych/lib/psych.rb: updated to released version.
13904
13905	* ext/psych/psych.gemspec: ditto
13906
13907Tue Jul 31 06:18:06 2012  Eric Hodel  <drbrain@segment7.net>
13908
13909	* time.c (time_sec):  Remove extra wording about leap seconds and refer
13910	  directly to Wikipedia's leap second page for further information.
13911	  [Bug #6749]
13912
13913Mon Jul 30 23:01:47 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13914
13915	* lib/rubygems/platform.rb (Gem::Platform#initialize): Support pattern
13916	  like x86_64-netbsd6.99.7.
13917
13918Mon Jul 30 21:00:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13919
13920	* variable.c (find_class_path): no retry when preferred is given.
13921
13922	* variable.c (classname): if classid is set try it to find full
13923	  qualified class path, and then try arbitrary class path.  try
13924	  tmp_classpath at last even if enclosing namespace is anonymous.
13925	  fix r36574.  [ruby-core:42865][Bug #6078]
13926
13927	* variable.c (rb_set_class_path_string, rb_set_class_path): set
13928	  tmp_classpath instead of classpath if the name is not permanent.
13929
13930Mon Jul 30 14:24:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13931
13932	* variable.c: store anonymous class path in tmp_classpath but not in
13933	  classpath.  [ruby-core:42865][Bug #6078]
13934
13935Mon Jul 30 13:11:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13936
13937	* configure.in (DLDFLAGS): on Darwin, deprecate -flat_namespace to get
13938	  rid of huge imported symbols table.
13939
13940	* configure.in (LIBRUBY_RELATIVE): libruby_so is not made when
13941	  disable-shared, so no absolute path is used for it and executable
13942	  file is runnable anywhere.
13943
13944Mon Jul 30 01:30:10 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
13945
13946	* common.mk: add a dependency. [ruby-core:46741] [Bug #6789]
13947
13948Sun Jul 29 15:44:47 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
13949
13950	* thread.c (thread_create_core): hide th->async_errinfo_mask_stack from
13951	  ObjectSpace.each_object. refix of r36539.
13952
13953Sun Jul 29 23:57:27 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13954
13955	* ext/socket/option.c (inet_ntop): use rb_w32_inet_ntop, instead of
13956	  inet_ntop directly, which is unavailable on older version Windows.
13957
13958	* win32/win32.c (rb_w32_inet_ntop): type should be const.
13959
13960Sun Jul 29 14:20:34 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
13961
13962	* thread.c (Init_Thread): does not need to set klass
13963	  explicitly.
13964
13965Sun Jul 29 06:21:04 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
13966
13967	* win32/win32.c: suppress warning redeclared on mingw64.
13968	  *_s functions are declared if MINGW_HAS_SECURE_API is defined.
13969	  Follow up r36556.
13970
13971Sun Jul 29 00:28:46 2012  Narihiro Nakamura  <authornari@gmail.com>
13972
13973	* gc.c: remove unused initialization.
13974
13975Sat Jul 28 16:26:09 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
13976
13977	* win32/win32.c (gmtime_r): use _gmtime64_s() with x86_64-w64-mingw32.
13978
13979	* win32/win32.c (localtime_r): use _localtime64_s() with
13980	  x86_64-w64-mingw32. Since FileTimeToSystemTime() seems not work with
13981	  large value under x64. Mingw-w64 doesn't have these declaration.
13982	  [ruby-core:46780] [Bug #6794]
13983
13984Fri Jul 27 18:25:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13985
13986	* io.c (rb_io_check_io): make public.
13987
13988	* process.c (check_exec_redirect): try conversion to IO on redirect
13989	  parameters.  [ruby-core:44181] [Bug #6269]
13990
13991Fri Jul 27 17:58:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13992
13993	* configure.in (RUBY_CPPOUTFILE): get rid of variable conflict so
13994	  CPPFLAGS is not duplicated.  [ruby-core:43097] [Bug #6119]
13995
13996Fri Jul 27 12:12:36 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13997
13998	* win32/mkexports.rb: should not export DllMain().
13999	  reported by luis at [ruby-core:46743] [Bug #6790], solved by
14000	  Heesob Park, and confirmed by nobu.
14001
14002Thu Jul 26 14:51:29 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
14003
14004	* test/net/http/test_https.rb (TestNetHTTPS#test_session_reuse):
14005	  localhost is not (always) 127.0.0.1.  Don't expect that.
14006
14007Thu Jul 26 07:18:38 2012    <kanemoto@ruby-lang.org>
14008
14009	* ext/json/fbuffer/fbuffer.h: avoid compilation error on AIX by
14010	   -ansi -std=iso9899:199409 (r36038). [ruby-core:46744] [Bug #6791].
14011
14012Thu Jul 26 00:42:23 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
14013
14014	* thread.c (thread_create_core, Init_Thread): hide
14015	  th->async_errinfo_queue and th->async_errinfo_mask_stack from
14016	  ObjectSpace.each_object.
14017
14018Wed Jul 25 17:41:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14019
14020	* complex.c, rational.c: compatible marshal loader for compatibilities
14021	  with 1.8.  [ruby-core:45775] [Bug #6625]
14022
14023Wed Jul 25 17:17:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14024
14025	* atomic.h: prefer GCC atomic builtins than Windows APIs, if possible,
14026	  since they are generic.
14027
14028Wed Jul 25 11:16:57 2012  Eric Hodel  <drbrain@segment7.net>
14029
14030	* lib/net/.document:  Removed.  All files in net/ should be included in
14031	  RDoc.
14032
14033Wed Jul 25 10:00:23 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14034
14035	* test/testunit/test_redefinition.rb: broken class/method names.
14036
14037Wed Jul 25 09:26:32 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14038
14039	* lib/cgi/html.rb: Use << instead of +=.
14040	  `a += b` is syntax sugar of `a = a + b`; it creates a new string
14041	  object. `a << b` is concatenation and doesn't create new object.
14042
14043Wed Jul 25 09:16:26 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14044
14045	* lib/cgi/html.rb (element_init): suppress redefine warning.
14046	  Don't define methods if they are already defined.
14047
14048Wed Jul 25 09:05:38 2012  Eric Hodel  <drbrain@segment7.net>
14049
14050	* lib/net/http.rb:  Added SSL session reuse across connections for a
14051	  single instance to speed up connection.  [Feature #5341]
14052	* NEWS:  ditto
14053	* test/net/http/test_https.rb:  Tests for #5341
14054
14055Wed Jul 25 06:54:24 2012  Eric Hodel  <drbrain@segment7.net>
14056
14057	* doc/re.rdoc:  Fix spelling
14058
14059Wed Jul 25 06:49:12 2012  Eric Hodel  <drbrain@segment7.net>
14060
14061	* re.c (rb_reg_s_last_match):  Update $~ to reference Regexp
14062	  documentation about "special global variables".  [Bug #6723]
14063
14064Wed Jul 25 06:28:56 2012  Eric Hodel  <drbrain@segment7.net>
14065
14066	* iseq.c:  Added documentation.  Patch by David Albert.  [Bug #6785]
14067
14068Wed Jul 25 03:05:06 2012  Aaron Patterson <aaron@tenderlovemaking.com>
14069
14070	* parse.y: added symbols and qsymbols productions for %i and %I
14071	  support. %i{ .. } returns a list of symbols without interpolation,
14072	  %I{ .. } returns a list of symbols with interpolation.  Thanks to
14073	  Josh Susser for inspiration of this feature. [Feature #4985]
14074
14075	* ext/ripper/eventids2.c: added ripper events for %i and %I.
14076
14077	* test/ripper/test_parser_events.rb: ripper tests
14078
14079	* test/ripper/test_scanner_events.rb: ditto
14080
14081	* test/ruby/test_array.rb: test for %i and %I behavior
14082
14083Tue Jul 24 23:34:43 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
14084
14085	* include/ruby/win32.h (rb_w32_pow): add new function.
14086	  We use powl() instead of broken pow() for x64-mingw32. This workaround
14087	  fixes test failures related to floating point numeric.
14088	  [ruby-core:46686] [Bug #6784]
14089
14090Tue Jul 24 15:01:24 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14091
14092	* win32/win32.c (rb_w32_socket, rb_w32_socketpair): remember the family
14093	  in the high word of socklist value.
14094
14095	* win32/win32.c (overlapped_socket_io, recvmsg, sendmsg, setfl): follow
14096	  above changes.
14097
14098	* win32/win32.c (rb_w32_getsockname): set remembered family to the
14099	  argument when OS's function fails.
14100
14101Tue Jul 24 12:35:13 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14102
14103	* test/ruby/test_dir_m17n.rb: remove a garbage.
14104
14105	* test/ruby/test_dir_m17n.rb: convert from ascii-8bit to other encoding
14106	  with 8bit bytes always fails.
14107
14108Tue Jul 24 12:32:18 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14109
14110	* test/ruby/test_dir_m17n.rb: sorry, typo.
14111
14112Tue Jul 24 12:13:26 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14113
14114	* test/ruby/test_dir_m17n.rb: refactoring. RE should be in the left side
14115	  of the =~ operator, and compare the result with nil is meaningless.
14116
14117Tue Jul 24 11:35:20 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14118
14119	* test/ruby/test_pack.rb (test_pack_unpack_M): was redefined
14120	  accidentally.
14121
14122Tue Jul 24 09:31:18 2012  Eric Hodel  <drbrain@segment7.net>
14123
14124	* lib/rubygems:  Updated to RubyGems 1.8.24, a bugfix release.
14125
14126Tue Jul 24 08:30:15 2012  Luis Lavena  <luislavena@gmail.com>
14127
14128	* test/ruby/test_dir_m17n.rb (create_and_check_raw_file_name): add new
14129	  helper method to ease encoding testing. Patch by Oleg Sukhodolsky.
14130	  [ruby-core:46589][Bug #6765]
14131
14132	* test/ruby/test_dir_m17n.rb (test_filename_extutf8): use filesystem
14133	  encoding when reading entries and comparing.
14134
14135	* test/ruby/test_dir_m17n.rb (test_filename_utf8_raw_name): removed.
14136
14137	* test/ruby/test_dir_m17n.rb (test_filename_utf8_raw_jp_name): split test.
14138
14139Tue Jul 24 08:09:30 2012  Luis Lavena  <luislavena@gmail.com>
14140
14141	* test/win32ole/test_win32ole_method.rb (is_ruby64?): Correct platform
14142	  used to identify mingw-w64 (x64-mingw32). Patch by Hiroshi Shirosaki.
14143	  [ruby-core:46651][Bug #6782]
14144
14145Tue Jul 24 07:22:58 2012  Eric Hodel  <drbrain@segment7.net>
14146
14147	* time.c (time_sec):  Updated description of leap seconds for accuracy.
14148	  Based on patch by Marcus Stollsteimer.  [Bug #6749]
14149
14150Tue Jul 24 07:03:11 2012  Eric Hodel  <drbrain@segment7.net>
14151
14152	* string.c (rb_str_sub):  Fixed wording of documentation to match the
14153	  replacement operation.  Minor cleanup of markup.  [Bug #6719]
14154	* string.c (rb_str_sub_bang):  Minor wording change for clarity, minor
14155	  cleanup of markup.
14156
14157Mon Jul 23 23:58:40 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14158
14159	* enc/Makefile.in (TARGET_NAME, TARGET_ENTRY): needed for EXTDLDFLAGS
14160	  on some platforms.  [ruby-core:46600] [Bug #6768]
14161
14162	* enc/depend: no longer needs tweaking DLDFLAGS for TARGET names.
14163
14164Mon Jul 23 22:48:19 2012  Tanaka Akira  <akr@fsij.org>
14165
14166	* lib/open-uri.rb: use respond_to? to test Tempfile.
14167	  [ruby-dev:45995] [Bug #6781] reported by hsbt (Hiroshi SHIBATA).
14168
14169Mon Jul 23 14:43:34 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14170
14171	* configure.in (LIBPATHENV): LIBPATH is used on AIX, but not
14172	  SHLIB_PATH which was carelessly copied from HP/UX.  suggested by
14173	  Perry Smith at [ruby-core:46397].  [Bug #6728]
14174
14175Mon Jul 23 01:55:08 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
14176
14177	* test/uri/test_generic.rb (URI#test_find_proxy): add tests with
14178	  empty *_proxy env variables.
14179
14180Mon Jul 23 01:47:26 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
14181
14182	* test/uri/test_generic.rb (URI#with_env): unset proxy related env
14183	  variables.  [Bug #6774]
14184
14185	* test/uri/test_generic.rb (URI#test_find_proxy): fix failures
14186	  when proxy related env variables already set.  [Bug #6774]
14187
14188Sun Jul 22 23:58:48 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14189
14190	* thread.c (rb_threadptr_execute_interrupts_common): increase
14191	  running_time_us on THREAD_TO_KILL like on THREAD_RUNNABLE.
14192	  This cause not to switch from a thread which is to be killed
14193	  on FreeBSD and Mac OS X. see also the test.
14194	  This issue maybe exist for long time but happens after r36430.
14195
14196Sat Jul 21 06:21:45 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14197
14198	* lib/net/http.rb: fixes for r36476. [Feature #6546]
14199	 http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20120720T030101Z.diff.html.gz
14200
14201	* lib/net/http.rb (Net::HTTP.newobj): return back for compatibility.
14202
14203	* lib/net/http.rb (Net::HTTP.new): set default_port if proxy port is
14204	  not given.
14205
14206	* lib/net/http.rb (Net::HTTP#initialize): ditto.
14207
14208	* lib/net/http.rb (Net::HTTP#proxy?): return true or false.
14209
14210	* lib/net/http.rb (Net::HTTP#proxy_address): check proxy_uri is not nil.
14211
14212	* lib/net/http.rb (Net::HTTP#proxy_port): ditto.
14213
14214Sat Jul 21 23:12:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14215
14216	* thread_pthread.c (ruby_init_stack): STACK_GROW_DIR_DETECTION is
14217	  necessary on platforms with unknown stack direction.  [Bug #6761]
14218
14219Sat Jul 21 15:13:42 2012  Shota Fukumori  <sorah@tubusu.net>
14220
14221	* lib/test/unit/testcase.rb (method_added): refactoring.
14222
14223Sat Jul 21 14:06:41 2012  Shota Fukumori  <sorah@tubusu.net>
14224
14225	* lib/test/unit/testcase.rb: warn when test_* method is redefined.
14226	  Patch by mame (Yusuke Endoh). [Feature #2643] [ruby-core:27790]
14227
14228	* test/testunit/test_redefinition.rb: Test for above.
14229
14230	* test/testunit/test4test_redefinition.rb: Ditto.
14231
14232Sat Jul 21 08:41:14 2012  Eric Hodel  <drbrain@segment7.net>
14233
14234	* lib/logger.rb:  Updated example in Logger comment to match other
14235	  examples and fixed a bug.  Patch by Marcus Stollsteimer.
14236	  [Bug #6759]
14237
14238Fri Jul 20 17:20:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14239
14240	* random.c (rb_random_real): refine error message.
14241
14242Fri Jul 20 11:03:17 2012  Eric Hodel  <drbrain@segment7.net>
14243
14244	* NEWS:  Updated net/http for automatic proxy detection (#6546) and
14245	  automatic gzip and deflate compression (#6492, #6494).
14246
14247Fri Jul 20 10:55:38 2012  Eric Hodel  <drbrain@segment7.net>
14248
14249	* lib/net/http.rb:  Net::HTTP now automatically detects and uses
14250	  proxies from the environment.  A proxy may also be specified as
14251	  before.
14252
14253	  Net::HTTP::Proxy still creates anonymous classes, but these classes
14254	  are only used to store configuration information.  When an HTTP
14255	  instance is created the configuration is now copied.
14256
14257	  Additionally, Net::HTTP::ProxyDelta is no longer used by Net::HTTP
14258
14259	  [Feature #6546]
14260	* lib/open-uri.rb:  Moved URI::Generic#find_proxy to uri/generic.
14261	* lib/uri/generic.rb:  Imported find_proxy from open-uri.
14262	* test/open-uri/test_open-uri.rb:  Moved proxy-discovery tests to URI.
14263	* test/uri/test_generic.rb:  Imported proxy-discovery tests from
14264	  open-uri.
14265	* test/net/http/test_http.rb:  Added tests for proxy behavior.
14266
14267Fri Jul 20 09:34:11 2012  Eric Hodel  <drbrain@segment7.net>
14268
14269	* test/socket/test_socket.rb:  Ignore IPv6 unique local addresses on OS
14270	  X (iCloud Back to my Mac addresses) for test_udp_socket since they do
14271	  not act as loopback addresses.  [Bug #6692]
14272
14273Fri Jul 20 09:32:14 2012  Eric Hodel  <drbrain@segment7.net>
14274
14275	* ext/socket/raddrinfo.c (addrinfo_ipv6_unique_local_p):  Added
14276	  Addrinfo#ipv6_unique_local? to detect RFC 4193 unique local
14277	  addresses.  Part of #6692
14278	* ext/socket/rubysocket.h:  Add IN6_IS_ADDR_UNIQUE_LOCAL macro if
14279	  missing.
14280	* test/socket/test_addrinfo.rb:  Test for ipv6_unique_local?
14281
14282Fri Jul 20 07:40:32 2012  Eric Hodel  <drbrain@segment7.net>
14283
14284	* lib/net/http/response.rb:  Automatically inflate gzip and
14285	  deflate-encoded response bodies.  [Feature #6942]
14286	* lib/net/http/generic_request.rb:  Automatically accept gzip and
14287	  deflate content-encoding for requests.  [Feature #6494]
14288	* lib/net/http/request.rb:  Updated documentation for #6494.
14289	* lib/net/http.rb:  Updated documentation for #6492 and #6494, removed
14290	  Content-Encoding handling now present in Net::HTTPResponse.
14291	* test/net/http/test_httpresponse.rb:  Tests for #6492
14292	* test/net/http/test_http_request.rb:  Tests for #6494
14293	* test/open-uri/test_open-uri.rb (test_content_encoding):  Updated test
14294	  for automatic content-encoding handling.
14295
14296Fri Jul 20 03:42:54 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14297
14298	* thread_pthread.c: use #ifdef, not #if.
14299
14300Thu Jul 19 15:08:40 2012  Koichi Sasada  <ko1@atdot.net>
14301
14302	* thread.c (rb_thread_s_control_interrupt,
14303	            rb_thread_s_check_interrupt): added for
14304	  Thread.control_interrupt and Thread.check_interrupt.
14305	  See details on rdoc.
14306	  I'll make an ticket for this feature.
14307
14308	* test/ruby/test_thread.rb: add a test for Thread.control_interrupt.
14309
14310	* thread.c (rb_threadptr_raise): make a new exception object
14311	  even if argc is 0.
14312
14313	* thread.c (rb_thread_kill): kill thread immediately if target thread
14314	  is current thread.
14315
14316	* vm_core.h (RUBY_VM_CHECK_INTS_BLOCKING): added.
14317	  CHECK_INTS while/after blocking operation.
14318
14319	* vm_core.h (RUBY_VM_CHECK_INTS): require rb_thread_t ptr.
14320
14321	* cont.c (fiber_switch): use replaced RUBY_VM_CHECK_INTS().
14322
14323	* eval.c (ruby_cleanup): ditto.
14324
14325	* insns.def: ditto.
14326
14327	* process.c (rb_waitpid): ditto.
14328
14329	* vm_eval.c (vm_call0): ditto.
14330
14331	* vm_insnhelper.c (vm_call_method): ditto.
14332
14333Thu Jul 19 22:46:48 2012  Tanaka Akira  <akr@fsij.org>
14334
14335	* test/ruby/test_io.rb: remove temporally files early.
14336
14337Thu Jul 19 15:38:35 2012  Shugo Maeda  <shugo@ruby-lang.org>
14338
14339	* variable.c (rb_mod_class_variables): return inherited variables
14340	  except when the optional argument is set to false.
14341	  [ruby-dev:44034] [Bug #4971]
14342
14343	* variable.c (rb_mod_constants): fix typo in documentation.
14344
14345Thu Jul 19 14:30:43 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14346
14347	* internal.h: move mark function declarations that should be private.
14348
14349Thu Jul 19 14:18:22 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14350
14351	* ext/socket/init.c (rsock_init_sock): need to update max fd on all
14352	  platforms.
14353
14354Thu Jul 19 14:15:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14355
14356	* thread.c (rb_gc_mark_threads): remove deprecated function.
14357
14358Thu Jul 19 13:28:03 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14359
14360	* test/net/http/test_http.rb (TestNetHTTPLocalBind#test_bind_to_local*):
14361	  re-enable the tests because now it's OK on windows.
14362
14363Thu Jul 19 13:26:25 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14364
14365	* ext/socket/extconf.rb: now enable IPv6 by default on mswin.
14366
14367Thu Jul 19 09:33:46 2012  Aaron Patterson <aaron@tenderlovemaking.com>
14368
14369	* ext/psych/emitter.c (initialize): allow a configuration object to be
14370	  passed to the constructor so that mutation isn't required after
14371	  instantiation.
14372
14373	* ext/psych/lib/psych/handler.rb: add configuration object
14374
14375	* ext/psych/lib/psych/visitors/emitter.rb: use configuration object if
14376	  extra configuration is present.
14377
14378Thu Jul 19 08:20:25 2012  Tanaka Akira  <akr@fsij.org>
14379
14380	* test/ruby/test_file.rb: remove temporally files early.
14381
14382Thu Jul 19 07:37:41 2012  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
14383
14384	* test/drb/drbtest.rb: fixed: can't delete unix domain sockets problem.
14385
14386Thu Jul 19 03:41:20 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
14387
14388	* bignum.c: Added #include <strings.h> for ffs(). Patch by Perry
14389	  Smith. Thank you. [Bug #6748]
14390
14391Thu Jul 19 01:56:02 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
14392
14393	* include/ruby/intern.h (rb_num_zerodiv): Added NORETURN.
14394	  Patched by Xi Wang. [Bug #6736]
14395
14396Wed Jul 18 23:57:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14397
14398	* pack.c (pack_pack): round down too long uuencode width.  folding
14399	  width in uuencode format cannot be longer than 63 bytes.
14400
14401Wed Jul 18 23:04:18 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14402
14403	* ext/dbm/dbm.c (fdbm_empty_p): fix wrong condition introduced in r36438.
14404
14405	* ext/sdbm/init.c (fsdbm_empty_p): ditto.
14406
14407Wed Jul 18 23:08:57 2012  Tanaka Akira  <akr@fsij.org>
14408
14409	* test/ruby/test_beginendblock.rb: remove temporally files early.
14410
14411Wed Jul 18 22:43:02 2012  Tanaka Akira  <akr@fsij.org>
14412
14413	* test/ruby/test_autoload.rb: remove temporally files early.
14414
14415Wed Jul 18 21:59:46 2012  Tanaka Akira  <akr@fsij.org>
14416
14417	* test/ruby/test_argf.rb: use temporally directory.
14418
14419Wed Jul 18 19:41:19 2012  Tanaka Akira  <akr@fsij.org>
14420
14421	* test/openssl/test_config.rb: remove temporally files early.
14422
14423Wed Jul 18 17:45:26 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14424
14425	* error.c (rb_builtin_type_name): map by index.
14426
14427Wed Jul 18 16:17:40 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14428
14429	* lib/mkmf.rb (have_framework): get rid of separating -framework
14430	  option and its argument and dealing with the argument as a library
14431	  or an object name.  if $LDFLAGS were an array...
14432
14433Wed Jul 18 16:09:10 2012  Shugo Maeda  <shugo@ruby-lang.org>
14434
14435	* ext/curses/extconf.rb: support PDCurses.  patched by Luis Lavena.
14436	  [ruby-core:46485] [Feature #6735]
14437
14438Wed Jul 18 15:50:25 2012  Shugo Maeda  <shugo@ruby-lang.org>
14439
14440	* parse.y (primary): allow an empty grouped expression as the
14441	  operand of the not operator (e.g., not ()).
14442	  [ruby-core:45976] [Bug #6674]
14443
14444	* parse.y (parser_yylex): show no warning for a grouped expression
14445	  as the operand of the not operator (e.g., not (a)) or as an
14446	  argument of a method call without parentheses (e.g., foo (a)).
14447	  [ruby-core:39050] [Bug #5214]
14448
14449Wed Jul 18 15:33:21 2012  Koichi Sasada  <ko1@atdot.net>
14450
14451	* thread.c (rb_thread_call_without_gvl2): added.
14452	  it can skip last CHECK_INTS.  See document for more details.
14453	  Document about it was updated a bit.
14454
14455	* include/ruby/thread.h (decl. of rb_thread_call_without_gvl2): added.
14456
14457	* thread.c (rb_thread_call_with_gvl): remove "EXPERIMENTAL!"
14458	  warning from a document.
14459
14460Wed Jul 18 14:53:21 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14461
14462	* configure.in (EXTDLDFLAGS): split options for each extension
14463	  libraries, and unused in ruby.pc.  [Bug #6734]
14464
14465	* lib/mkmf.rb (MakeMakefile#configuration): add EXTDLDFLAGS.
14466
14467Wed Jul 18 14:47:23 2012  Koichi Sasada  <ko1@atdot.net>
14468
14469	* thread.c: fix last commit miss.
14470
14471Wed Jul 18 14:16:51 2012  Koichi Sasada  <ko1@atdot.net>
14472
14473	* thread.c (rb_threadptr_async_errinfo_*): manage async errors queue.
14474	  Async events such as an exception throwed by Thread#raise,
14475	  Thread#kill and thread termination (after main thread termination)
14476	  will be queued to th->async_errinfo_queue.
14477	  - clear: clear the queue.
14478	  - enque: enque err object into queue.
14479	  - deque: deque err object from queue.
14480	  - active_p: return 1 if the queue should be checked.
14481	  rb_thread_t#thrown_errinfo was removed.
14482
14483	* vm_core.h: add declarations of rb_threadptr_async_errinfo_*.
14484	  remove rb_thread_t#thrown_errinfo field and
14485	  add rb_thread_t#async_errinfo_queue (queue body: Array),
14486	      rb_thread_t#async_errinfo_queue_checked (flag),
14487	      rb_thread_t#async_errinfo_mask_stack(Array, not used yet).
14488
14489	* vm.c (rb_thread_mark): fix a mark function.
14490
14491	* cont.c (rb_fiber_start): enque an error.
14492
14493	* process.c (after_fork): clear async errinfo queue.
14494
14495Wed Jul 18 14:25:55 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
14496
14497	* pack.c: (ditto) bitwise operations are not char.  Apply explicit
14498	  casts on them.
14499
14500Wed Jul 18 12:59:50 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
14501
14502	* encoding.c (load_encoding): explicit cast  to suppress  warning.
14503	  Though the  cast truncates some bits, from  heuristic analysis I
14504	  believe it is OK to do so here.
14505
14506	* bignum.c (rb_cstr_to_inum): ditto.
14507
14508Wed Jul 18 12:55:54 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14509
14510	* lib/benchmark.rb: Fix Benchmark.benchmark output with an empty
14511	  caption.  patched by Benoit Daloze. [ruby-core:45719] [Bug #6610]
14512
14513Wed Jul 18 10:00:54 2012  Eric Hodel  <drbrain@segment7.net>
14514
14515	* lib/debug.rb:  Added toplevel documentation.  Based on patch by Oscar
14516	  Del Ben.  [Bug #6743], fixes #146 on github.
14517
14518Wed Jul 18 09:33:59 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14519
14520	* test/win32ole/test_win32ole_event.rb (TestWIN32OLE_EVENT): use
14521	  standard skip method to skip tests.
14522
14523Wed Jul 18 09:26:45 2012  Eric Hodel  <drbrain@segment7.net>
14524
14525	* lib/logger.rb:  Updated typos and output to match modern Logger
14526	  output.  Patch by Marcus Stollsteimer.  [Bug #6738]
14527
14528Wed Jul 18 07:59:29 2012  Takeyuki FUJIOKA  <xibbar@ruby-lang.org>
14529
14530	* lib/cgi/util.rb (CGI.escapeHTML,unescapeHTML): Add &apos; for HTML5
14531	  escaping.
14532	  [Feature #6620]
14533
14534Tue Jul 17 22:17:13 2012  Tanaka Akira  <akr@fsij.org>
14535
14536	* lib/open-uri.rb: call io.close! for Tempfile.
14537
14538Tue Jul 17 16:41:32 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14539
14540	* proc.c (rb_proc_arity): return normal value (not -n-1) if it is not
14541	  a labmda, or it is a labmda and no arg_opts. [Bug #5694]
14542
14543Tue Jul 17 03:56:34 2012  Aaron Patterson <aaron@tenderlovemaking.com>
14544
14545	* ext/psych/lib/psych/visitors/to_ruby.rb: strings with YAML anchors
14546	  are properly referenced. Patched by Joe Rafaniello via Github:
14547	    https://github.com/tenderlove/psych/pull/69
14548	* ext/psych/lib/psych/visitors/yaml_tree.rb: ditto
14549	* test/psych/test_alias_and_anchor.rb: test for change
14550
14551Mon Jul 16 23:20:24 2012  Tanaka Akira  <akr@fsij.org>
14552
14553	* bignum.c (rb_integer_float_cmp): use FIXNUM_MIN and FIXNUM_MAX,
14554	  instead of LONG_MIN and LONG_MAX.
14555
14556Mon Jul 16 22:50:41 2012  Tanaka Akira  <akr@fsij.org>
14557
14558	* numeric.c (flo_to_s): use the exponential form if the integer part
14559	  is longer than or equal DBL_DIG.
14560	  [ruby-dev:45960] [ruby-trunk - Bug #6741]
14561
14562Mon Jul 16 22:01:00 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
14563
14564	* ext/readline/readline.c: fixed docs. [Bug #6740][ruby-core:46501]
14565	  patched by Nobuhiro IMAI.
14566
14567Mon Jul 16 19:24:01 2012  Tanaka Akira  <akr@fsij.org>
14568
14569	* bignum.c (rb_integer_float_eq): new function.
14570	  (rb_big_eq): use rb_integer_float_eq.
14571
14572	* internal.h (rb_integer_float_eq): declared.
14573
14574	* numeric.c (flo_eq): use rb_integer_float_eq.
14575	  (fix_equal): ditto.
14576
14577Mon Jul 16 19:02:31 2012  Tanaka Akira  <akr@fsij.org>
14578
14579	* bignum.c (rb_integer_float_cmp): rename a local variable.
14580
14581Mon Jul 16 18:40:26 2012  Tanaka Akira  <akr@fsij.org>
14582
14583	* bignum.c (rb_integer_float_cmp): renamed from rb_big_float_cmp.
14584
14585	* internal.h: follow the above change.
14586
14587	* numeric.c: ditto.
14588
14589Mon Jul 16 17:57:54 2012  Tanaka Akira  <akr@fsij.org>
14590
14591	* bignum.c (rb_big_float_cmp): compare an integer and float precisely.
14592	  [ruby-core:31376] [Bug #3589] reported by Tomasz Wegrzanowski.
14593
14594Mon Jul 16 17:29:45 2012  Tanaka Akira  <akr@fsij.org>
14595
14596	* bignum.c (rb_big_float_cmp): support fixnum for argument x.
14597
14598	* numeric.c (fix_equal): use rb_big_float_cmp.
14599	  (fix_cmp): ditto.
14600	  (fix_gt): ditto.
14601	  (fix_ge): ditto.
14602	  (fix_lt): ditto.
14603	  (fix_le): ditto.
14604	  (flo_eq): ditto.
14605	  (flo_cmp): use rb_big_float_cmp for fixnum argument.
14606	  (flo_gt): ditto.
14607	  (flo_ge): ditto.
14608	  (flo_lt): ditto.
14609	  (flo_le): ditto.
14610
14611Mon Jul 16 17:05:53 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
14612
14613	* test/fileutils/test_fileutils.rb: add test for FileUtils#uptodate?
14614
14615Mon Jul 16 16:56:12 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
14616
14617	* lib/fileutils.rb (FileUtils.uptodate?): remove useless parameter.
14618	  patched by Oscar Del Ben.[Bug #6708][ruby-core:46256]
14619
14620Mon Jul 16 15:37:56 2012  Tanaka Akira  <akr@fsij.org>
14621
14622	* bignum.c (rb_big_eq): use rb_big_float_cmp.
14623
14624Mon Jul 16 15:00:45 2012  Tanaka Akira  <akr@fsij.org>
14625
14626	* internal.h (rb_big_float_cmp): declared.
14627
14628	* bignum.c (rb_big_float_cmp): extracted from rb_big_cmp and big_op.
14629	  (rb_big_cmp): use rb_big_float_cmp.
14630	  (big_op): ditto.
14631
14632	* numeric.c (flo_cmp): use rb_big_float_cmp.
14633	  (flo_gt): ditto.
14634	  (flo_ge): ditto.
14635	  (flo_lt): ditto.
14636	  (flo_le): ditto.
14637
14638Mon Jul 16 14:14:21 2012  Tanaka Akira  <akr@fsij.org>
14639
14640	* bignum.c (enum big_op_t): new type.
14641	  (big_op): use enum big_op_t.
14642	  (big_gt): ditto.
14643	  (big_ge): ditto.
14644	  (big_lt): ditto.
14645	  (big_le): ditto.
14646
14647Sat Jul 14 18:18:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14648
14649	* array.c (rb_get_values_at): fill with nil out of range.
14650	  [ruby-core:43678] [Bug #6203]
14651
14652Sat Jul 14 17:17:55 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
14653
14654	* cont.c (cont_restore_0): improve docs. [Bug #6706][ruby-core:46243]
14655	  patched by Oscar Del Ben via https://github.com/ruby/ruby/pull/140
14656
14657Sat Jul 14 17:08:13 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14658
14659	* hash.c (rb_hash_s_create): raise an exception, when input elements
14660	  are not one or two elements arrays.  [ruby-core:39945] [Bug #5406]
14661
14662Sat Jul 14 16:16:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14663
14664	* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): use
14665	  Array#uniq!.
14666
14667	* lib/test/unit.rb (Test::Unit::Runner#deal): deal tasks to workers.
14668
14669	* lib/test/unit.rb (Test::Unit::Runner#quit_workers): close and kill
14670	  all workers.
14671
14672	* lib/test/unit.rb (Test::Unit::Runner#delete_worker): delete dead
14673	  worker from working set.
14674
14675	* lib/test/unit.rb (Test::Unit::Runner#launch_worker): add new worker
14676	  to working set.
14677
14678	* lib/test/unit.rb (Test::Unit::Runner#launch_worker): extract.
14679
14680	* lib/test/unit.rb (Test::Unit::Runner#start_watchdog): extract.
14681
14682	* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): move
14683	  initializations with nothing to release outside begin/ensure.
14684
14685Sat Jul 14 16:04:24 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14686
14687	* array.c (rb_ary_join): should not infected by separator if it is not
14688	  used.  [ruby-core:42161][Bug #5902]
14689
14690Sat Jul 14 02:31:55 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14691
14692	* include/ruby/intern.h (rb_thread_blocking_region): fix declarations
14693	  prototypes without arguments in C++ have different meanings than C.
14694
14695Thu Jul 12 12:32:26 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14696
14697	* test/runner.rb: skip default gems to get rid of loading old versions
14698	  before installation.
14699
14700Thu Jul 12 11:44:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14701
14702	* string.c (rb_str_new_frozen): since the result object should have
14703	  same tainted/untrusted bits with the original object, return new
14704	  object if the shared object unmatch.  [ruby-core:39745][Bug #5374]
14705
14706Thu Jul 12 10:46:39 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14707
14708	* test/net/http/test_http.rb (TestNetHTTPLocalBind#test_bind_to_local*):
14709	  cannot cross between network interfaces on Windows, so skip this test
14710	  until we find better test.
14711
14712Thu Jul 12 08:48:33 2012  Ryan Davis  <ryand-ruby@zenspider.com>
14713
14714	* lib/minitest/*: Imported minitest 3.2.0 (r7598)
14715	* test/minitest/*: ditto
14716
14717Thu Jul 12 05:11:41 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14718
14719	* insns.def (defined): use method entry and id in cfp for proper
14720	  superclass, since klass in iseq is shared by dynamically defined
14721	  methods from the same block.  [ruby-core:45831][Bug #6644]
14722
14723Thu Jul 12 01:49:07 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14724
14725	* lib/net/http.rb (Net::HTTP#connect): use local_host and local_port
14726	  if specified. patched by Ricardo Amorim [Feature #6617]
14727
14728Wed Jul 11 17:36:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14729
14730	* ext/extmk.rb: append ENCOBJS to DLDOBJS but not EXTSOLIBS which is
14731	  not a target, to compile enc/encinit.c.
14732
14733Wed Jul 11 12:38:20 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14734
14735	* ext/openssl/ossl_pkey_ec.c (ossl_ec_point_mul): nonstatic initializer
14736	  of an aggregate type is a C99ism.
14737
14738	* ext/openssl/ossl_pkey_ec.c (ossl_ec_point_mul): get rid of VC++
14739	  warnings.
14740
14741Mon Jul  9 16:11:30 2012  Yuki Yugui Sonoda  <yugui@google.com>
14742
14743	* vm_eval.c (rb_eval_string_from_file,
14744	  rb_eval_string_from_file_protect): new functions to replace
14745	  rb_compile_main_from_string() and ruby_eval_main().
14746
14747	* nacl/pepper_ruby.c: Follows the change in vm_eval.c
14748
14749Mon Jul  9 14:05:42 2012  Yuki Yugui Sonoda  <yugui@google.com>
14750
14751	Reverts a half of r36079. As we discussed on ruby-dev@ and IRC,
14752	we do not need to disclose intermediate representation of program.
14753	The program embedding CRuby should use rb_eval_string family.
14754	* include/ruby/ruby.h (ruby_opaque_t): removed.
14755	  (ruby_compile_main_from_file, ruby_compile_main_from_string,
14756	   ruby_eval_main): removed.
14757
14758	* eval.c (ruby_eval_main_internal): became ruby_exec_internal() again.
14759	  (ruby_eval_main): removed.
14760
14761	* ruby.c (PREPARE_PARSE_MAIN) reverted.
14762	  (parse_and_compile_main, ruby_compile_main_from_file,
14763	   ruby_compile_main_from_string): removed
14764
14765Wed Jul 11 10:16:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14766
14767	* include/ruby.h (HAVE_RUBY_THREAD_H): to show ruby/thread.h to be
14768	  available.  fixup of r36355.
14769
14770Wed Jul 11 03:26:47 2012  Eric Hodel  <drbrain@segment7.net>
14771
14772	* ext/zlib/zlib.c:  Added streaming support to inflate processing.
14773	  This allows zlib streams to be processed without huge memory growth.
14774	  [Feature #6612]
14775	* NEWS:  ditto
14776	* ext/zlib/zlib.c (zstream_expand_buffer):  Uses rb_yield when a block
14777	  is given for streaming support.  Refactored to use
14778	  zstream_expand_buffer_into to remove duplicate code.
14779	* ext/zlib/zlib.c (zstream_expand_buffer_protect):  Added wrapper
14780	  function to pass jump state back through GVL-free section to allow
14781	  zstream clean-up before terminating the ruby call.
14782	* ext/zlib/zlib.c (zstream_expand_buffer_without_gvl):  Acquire GVL to
14783	  yield processed chunk of output stream.
14784	* ext/zlib/zlib.c (zstream_detach_buffer):  When a block is given,
14785	  returns Qnil mid-stream and yields the output buffer at the end of
14786	  the stream.
14787	* test/zlib/test_zlib.rb:  Updated tests
14788
14789Tue Jul 10 22:57:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14790
14791	* include/ruby/thread.h: new header file for thread stuff.
14792
14793	* thread.c (rb_thread_call_without_gvl): export.  [Feature#4328]
14794	  returns void* instead of VALUE.  [Feature #5543]
14795
14796	* thread.c (rb_thread_blocking_region): deprecate.  [ruby-core:46295]
14797
14798Tue Jul 10 10:48:59 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14799
14800	* include/ruby/win32.h (NT, NtInitialize): removed unused old macros.
14801
14802Tue Jul 10 10:43:37 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14803
14804	* configure.in: removed --enable/disable-win95 options. (see r36342)
14805
14806Tue Jul 10 00:44:41 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
14807
14808	* include/ruby/ruby.h: Removed RUBY_GLOBAL_SETUP completely. It is
14809	  no meaning definition since r24894.
14810	* main.c: ditto.
14811	* nacl/pepper_main.c: ditto.
14812
14813Mon Jul  9 23:59:36 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
14814
14815	* dln.c: Simplify and make consistent an ifdef for Mac OS X.
14816	* ext/socket/rubysocket.h: ditto.
14817	* ext/tk/stubs.c: ditto.
14818	* io.c: ditto.
14819	* process.c: ditto.
14820	* signal.c: ditto.
14821	* vm_dump.c: ditto.
14822
14823Mon Jul  9 17:37:35 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14824
14825	* win32/win32.c (win95_stat): removed unnecessary macro.
14826
14827Mon Jul  9 17:22:16 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14828
14829	* win32/configure.bat, win32/setup.mak, win32/Makefile.sub: omitted
14830	  Win9x support.  removed --enable/disable-win95 options.
14831
14832	* include/ruby/win32.h, file.c, win32/win32.c: ditto.
14833
14834	* win32/README.win32: ditto.
14835
14836Mon Jul  9 13:28:34 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14837
14838	* configure.in (DLDFLAGS): use TARGET_ENTRY to specify an entry point
14839	  instead of TARGET which may contain non-identifier characters.
14840
14841	* lib/mkmf.rb (create_makefile): add TARGET_NAME which is the first
14842	  part consists of only word characters.  [ruby-core:46248][Bug #6709]
14843
14844Sun Jul  8 07:36:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14845
14846	* parse.y (shadowing_lvar_gen, warn_unused_var): no warnings for
14847	  variables starting with _.  [ruby-core:46160][Feature #6693]
14848
14849Sat Jul  7 23:07:30 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
14850
14851	* test/csv/test_features.rb: add require for Tempfile.
14852	* test/csv/test_serialization.rb: ditto.
14853
14854Fri Jul  6 06:49:50 2012  Eric Hodel  <drbrain@segment7.net>
14855
14856	* array.c (rb_ary_aref):  Added a description of the behavior of
14857	  index positioning.  [Bug #6680]
14858	* array.c (rb_ary_aset):  ditto.  Reordered sentences for clarity.
14859	* string.c (rb_str_aref_m):  Added a description of the behavior of
14860	  index positioning
14861
14862Fri Jul  6 05:38:44 2012  Eric Hodel  <drbrain@segment7.net>
14863
14864	* string.c (rb_str_bytesize):  Improve documentation.  Patch by Oscar
14865	  Del Ben from github issue #138.
14866	* string.c (rb_str_empty):  ditto.
14867	* string.c (rb_str_times):  ditto.
14868	* string.c (rb_str_dump):  ditto.
14869	* string.c (rb_str_center):  ditto.
14870
14871Fri Jul  6 04:05:59 2012  Eric Hodel  <drbrain@segment7.net>
14872
14873	* ext/zlib/zlib.c (zstream_expand_buffer_without_gvl):  Use
14874	  ruby_xrealloc() to avoid crash with CALC_EXACT_MALLOC_SIZE.
14875
14876Thu Jul  5 17:32:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14877
14878	* internal.h: move ThreadShield declarations from intern.h.
14879
14880Thu Jul  5 16:00:24 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14881
14882	* thread.c (ThreadShield): rename from Barrier.
14883
14884Thu Jul  5 15:14:50 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14885
14886	* bootstraptest/runner.rb (show_progress): refine error output. do not
14887	  count non-empty error message, but just warn.
14888
14889	* bootstraptest/runner.rb (error): show errors immediately if tty.
14890
14891Thu Jul  5 12:28:11 2012  Akinori MUSHA  <knu@iDaemons.org>
14892
14893	* test/net/http/test_httpresponses.rb: Add a test file for
14894	  Net::HTTPResponses and put a test case for the previous bug.
14895
14896Thu Jul  5 06:33:52 2012  Mark Dodwell <mark@mkdynamic.co.uk>
14897
14898	* lib/net/http/responses.rb: Fix 4xx classes to inherit correctly
14899	  from Net::HTTPClientError. [Bug #6700]
14900
14901Wed Jul  4 21:55:35 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14902
14903	* ruby.c (proc_options): warn only if -K and -w option is specified.
14904	  see also r36274 [Feature #5206]
14905
14906Wed Jul  4 21:41:44 2012  Naohisa Goto  <ngotogenome@gmail.com>
14907
14908	* gc.c, atomic.h (ATOMIC_SIZE_*): moved from gc.c to atomic.h
14909	  [ruby-dev:45909]
14910
14911Wed Jul  4 19:13:15 2012  Masaki Suketa <masaki.suketa@nifty.ne.jp>
14912
14913	* test/win32ole/test_win32ole.rb (test_s_codepage_changed):
14914	  FileSystemObject only supports ANSI or UTF-16LE encoding.
14915	  Patch by h.shirosaki (Hiroshi Shirosaki) [ruby-trunk - Bug #6650]
14916
14917Wed Jul  4 11:52:12 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14918
14919	* gc.c (ATOMIC_SIZE_*): 64bit Windows support.
14920
14921Wed Jul  4 11:11:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14922
14923	* eval.c (rb_frame_callee, rb_f_callee_name): fix to return the
14924	  called id.  this longstanding bug has been caused and blocked by
14925	  the structure of old rb_control_frame_t and rb_iseq_t.
14926
14927	* vm_insnhelper.c (vm_push_frame): set proper method entry.
14928
14929Wed Jul  4 08:29:31 2012  Eric Hodel  <drbrain@segment7.net>
14930
14931	* array.c (rb_ary_aref):  Updated documentation to indicate the
14932	  starting index is an index into the array or string.  Updated
14933	  examples to show behavior of indexes at the end of an array or
14934	  string.  Based on patch by Marcus Stollsteimer.  [Bug #6680]
14935	* array.c (rb_ary_aset):  ditto.
14936	* string.c (rb_str_aref):  ditto.  Also added descriptive argument
14937	  names to call-seq section.
14938
14939Wed Jul  4 07:05:59 2012  Eric Hodel  <drbrain@segment7.net>
14940
14941	* test/zlib/test_zlib.rb (test_inflate_partial_input):  Added test for
14942	  inflating incomplete zlib streams.
14943
14944Tue Jul  3 23:14:16 2012  Naohisa Goto  <ngotogenome@gmail.com>
14945
14946	* gc.c (ATOMIC_SIZE_EXCHANGE): fix function name on Solaris [Bug #6689]
14947	  [ruby-dev:45904]
14948
14949Tue Jul  3 16:07:49 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14950
14951	* gc.c (vm_malloc_fixup, vm_xrealloc, vm_xfree, after_gc_sweep): use
14952	  atomic operations to update malloc_params.
14953
14954Tue Jul  3 14:50:16 2012  Eric Hodel  <drbrain@segment7.net>
14955
14956	* ext/zlib/zlib.c (zstream_run_func):  Don't exit run loop for buffer
14957	  error.  [Feature #6615]
14958	* ext/zlib/zlib.c:  Fix style to match existing functions.
14959
14960Tue Jul  3 12:05:51 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14961
14962	* ext/dl/cfunc.c (rb_dlcfunc_call): also needed the workaround for VC8
14963	  for x64.  [ruby-dev:45875] [Bug #6676]
14964	  reported by aves_ramphastos (Seigo Ishigane)
14965
14966Tue Jul  3 11:56:46 2012  Eric Hodel  <drbrain@segment7.net>
14967
14968	* ext/zlib/zlib.c (zstream_detach_buffer):  Refactored tainting of
14969	  output string, moving it from the callee to zstream_detach_buffer.
14970	* ext/zlib/zlib.c (rb_zstream_finish):  ditto
14971	* ext/zlib/zlib.c (rb_zstream_flush_next_out):  ditto
14972	* ext/zlib/zlib.c (rb_deflate_deflate):  ditto
14973	* ext/zlib/zlib.c (rb_deflate_flush):  ditto
14974	* ext/zlib/zlib.c (rb_inflate_inflate):  ditto
14975
14976Tue Jul  3 11:16:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14977
14978	* common.mk (runnable): make symbolic links to run in build directory.
14979
14980Tue Jul  3 10:46:06 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14981
14982	* ruby.c (proc_options): warn if -K option is specified. [Feature #5206]
14983
14984Tue Jul  3 06:12:13 2012  Eric Hodel  <drbrain@segment7.net>
14985
14986	* object.c (Init_Object):  Added RDoc location pointers for
14987	  Kernel#methods, Kernel#protected_methods, Kernel#private_methods and
14988	  Kernel#public_methods.  [Bug #6666]
14989
14990Tue Jul  3 06:02:54 2012  Eric Hodel  <drbrain@segment7.net>
14991
14992	* ext/zlib/zlib.c (zstream_run):  Process zlib streams without GVL.
14993	  [Feature #6615]
14994	* NEWS:  ditto.
14995
14996Mon Jul  2 22:13:04 2012  Tanaka Akira  <akr@fsij.org>
14997
14998	* thread.c (rb_thread_aref): add explanation for why Thread#[] and
14999	  Thread#[]= are fiber-local and not thread-local.
15000	  reported by Julien A.  [ruby-core:41606] [ruby-trunk - Bug #5750]
15001
15002Mon Jul  2 21:25:55 2012  Tanaka Akira  <akr@fsij.org>
15003
15004	* time.c (timew_out_of_timet_range): specialization for
15005	  SIZEOF_TIME_T == SIZEOF_INT64_T.
15006
15007Mon Jul  2 17:06:32 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15008
15009	* class.c (rb_include_module): include modules after the origin.
15010
15011	* class.c (include_modules_at): skip prepended modules.
15012
15013	* class.c (rb_prepend_module): now basic.klass in ICLASS refers the
15014	  old original class/module.  [ruby-dev:45868][Bug #6662]
15015
15016	* class.c (rb_mod_ancestors): ditto.
15017
15018	* vm_method.c (search_method): search method entry from the origin
15019	  iclass.
15020
15021Mon Jul  2 05:54:58 2012  Tadayoshi Funaba  <tadf@dotrb.org>
15022
15023	* ext/date/date_core.c: [ruby-core:46058].
15024
15025Mon Jul  2 05:35:43 2012  Tadayoshi Funaba  <tadf@dotrb.org>
15026
15027	* ext/date/date_core.c (d_lite_marshal_load): accepts old dump.
15028
15029Mon Jul  2 03:21:53 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
15030
15031	* README.EXT.ja: fixed args of have_struct_member() ,
15032	  create_makefile() same as r35977. however, mkmf.rb include
15033	  no Japanese-docs, so Appendix C was not removed. [Bug #6597]
15034
15035Fri Jun 29 05:08:41 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15036
15037	* lib/test/unit/parallel.rb: workaround fix for rubygems.
15038	  RubyGems can't find rake if the source directory is not equal to
15039	  the directory which is running the test. [Bug #6604]
15040
15041Thu Jun 28 20:33:15 2012  Luis Lavena  <luislavena@gmail.com>
15042
15043	* test/win32ole/test_win32ole.rb (test_s_codepage_changed):
15044	  FileSystemObject only supports ANSI or UTF-16LE encoding.
15045	  Patch by bosko (Bosko Ivanisevic) [ruby-trunk - Bug #6650]
15046
15047Thu Jun 28 09:27:09 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
15048
15049	* class.c (class_instance_method_list): consider prepended Class/Module
15050	  when recur != 0. [ruby-dev:45863] [Bug #6660]
15051
15052	* test/ruby/test_module.rb (test_prepend_instance_methods_false): add
15053	  a test for it.
15054
15055
15056Thu Jun 28 06:12:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15057
15058	* class.c (rb_mod_ancestors): fix ancestors order.
15059	  [ruby-core:45919][Bug #6658] [ruby-dev:45861][Bug #6659]
15060
15061Wed Jun 27 21:28:59 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
15062
15063	* lib/racc/parser.rb: NotImplementError is not exist.
15064
15065	* lib/irb/output-method.rb (IRB::OutputMethod#print): ditto.
15066
15067Wed Jun 27 21:31:13 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15068
15069	* class.c (rb_prepend_module): ancestors of prepending module also
15070	  should be included.  [ruby-core:45914][Bug #6654]
15071
15072Wed Jun 27 21:01:32 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15073
15074	* class.c (class_instance_method_list): m_tbl in prepended
15075	  class/module is NULL.  [ruby-core:45915][Bug #6655]
15076
15077Wed Jun 27 16:48:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15078
15079	* class.c (rb_prepend_module): prepend module into another module.
15080
15081	* eval.c (rb_mod_prepend): new method Module#prepend.  [Feature #1102]
15082
15083Wed Jun 27 09:15:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15084
15085	* io.c (is_popen_fork): check if fork and raise NotImplementedError if
15086	  unavailable.
15087
15088	* io.c (rb_io_s_popen): allow environment variables hash and exec
15089	  options as flat parameters, not in an array arguments.
15090	  [Feature#6651] [EXPERIMENTAL]
15091
15092	* process.c (rb_execarg_extract_options): extract exec options, but no
15093	  exceptions on non-exec options and returns them as a Hash.
15094
15095	* process.c (rb_execarg_setenv): set environment variables.
15096
15097Tue Jun 26 16:57:14 2012  Koichi Sasada  <ko1@atdot.net>
15098
15099	* thread_pthread.c (register_cached_thread_and_wait):
15100	  return immediately if malloc() failed.
15101	  [ruby-core:43960] [ruby-trunk - Bug #6235]
15102
15103	* thread_pthread.c (USE_THREAD_CACHE): check already defined or not.
15104
15105Tue Jun 26 10:01:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15106
15107	* io.c (rb_io_s_popen): revert r36213 "popen: shell commands with
15108	  envvar" because it disabled to let single command bypass shell.
15109
15110Mon Jun 25 17:49:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15111
15112	* class.c (rb_mix_module): revert Module#mix.
15113
15114Mon Jun 25 16:57:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15115
15116	* proc.c (rb_mod_define_method): allow method transplanting from a
15117	  module to either class or module.  [ruby-core:34267][Feature #4254]
15118
15119Mon Jun 25 11:34:45 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
15120
15121	* internal.h: use rb_pid_t instead of pid_t because of there is no
15122	  definition of pid_t here on Windows.
15123
15124Mon Jun 25 00:25:01 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
15125
15126	* configure.in (for stack end address): remove human68k specific
15127	  check. It is no longer supported.
15128
15129Sun Jun 24 23:02:17 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15130
15131	* io.c (pipe_open): merge win32 code using spawnv().
15132
15133Sun Jun 24 22:53:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15134
15135	* process.c (check_exec_fds): separate check_exec_fds_1() since
15136	  nonstatic initializer of an aggregate type is not allowed by C89.
15137
15138Sun Jun 24 07:47:17 2012  Tanaka Akira  <akr@fsij.org>
15139
15140	* internal.h (rb_execarg): options field removed.
15141
15142	* process.c: follow the rb_execarg change.
15143
15144Sat Jun 23 23:48:21 2012  Tanaka Akira  <akr@fsij.org>
15145
15146	* process.c (proc_spawn_cmd): unused variable removed to suppress a
15147	  warning.
15148	  (save_env): ditto.
15149
15150	  [ruby-core:45797] reported by Luis Lavena.
15151
15152Sat Jun 23 23:19:31 2012  Tanaka Akira  <akr@fsij.org>
15153
15154	* internal.h (rb_execarg): add new_pgroup_given and new_pgroup_flag
15155	  fields.
15156
15157	* process.c (EXEC_OPTION_NEW_PGROUP): removed.
15158	  (proc_spawn_cmd): take a struct rb_execarg argument.
15159	  use the new fields.
15160	  (rb_execarg_addopt): use the new fields.
15161	  (rb_spawn_process): follow the proc_spawn_cmd change.
15162
15163	  [ruby-core:45794] [ruby-trunk - Bug #6633] reported by Luis Lavena.
15164
15165Sat Jun 23 20:26:36 2012  Tanaka Akira  <akr@fsij.org>
15166
15167	* internal.h (rb_execarg): add fd_dup2, fd_close, fd_open,
15168	  fd_dup2_child fields.
15169
15170	* process.c (EXEC_OPTION_DUP2): removed.
15171	  (EXEC_OPTION_CLOSE): removed.
15172	  (EXEC_OPTION_OPEN): removed.
15173	  (EXEC_OPTION_DUP2_CHILD): removed.
15174	  (mark_exec_arg): mark the new fields.
15175	  (check_exec_redirect1): change condition for default option.
15176	  (check_exec_redirect): take a struct rb_execarg argument.
15177	  use the new fields.
15178	  (rb_execarg_addopt): follow the check_exec_redirect change.
15179	  (check_exec_fds): use the new fields.
15180	  (save_redirect_fd): ditto.
15181
15182Sat Jun 23 19:01:18 2012  Tanaka Akira  <akr@fsij.org>
15183
15184	* process.c (rb_execarg_fixup): fix envopts condition.
15185
15186Sat Jun 23 18:44:13 2012  Tanaka Akira  <akr@fsij.org>
15187
15188	* process.c (check_exec_redirect1): extracted from
15189	  check_exec_redirect.
15190
15191Sat Jun 23 17:22:02 2012  Tanaka Akira  <akr@fsij.org>
15192
15193	* process.c (save_env): don't use EXEC_OPTION_UNSETENV_OTHERS.
15194	  (rb_execarg_run_options): ditto.
15195
15196Sat Jun 23 17:04:08 2012  Tanaka Akira  <akr@fsij.org>
15197
15198	* internal.h (rb_execarg): add env_modification field.
15199
15200	* process.c (EXEC_OPTION_ENV): removed.
15201	  (mark_exec_arg): mark env_modification field.
15202	  (rb_exec_fillarg): update the new field, instead of options array.
15203	  (rb_execarg_fixup): use the new field.
15204	  (save_env): ditto.
15205	  (rb_execarg_run_options): ditto.
15206
15207Sat Jun 23 16:27:01 2012  Tanaka Akira  <akr@fsij.org>
15208
15209	* internal.h (rb_execarg): add rlimit_limits field.
15210
15211	* process.c (EXEC_OPTION_RLIMIT): removed.
15212	  (mark_exec_arg): mark rlimit_limits field.
15213	  (rb_execarg_addopt): update the new fields, instead of options array.
15214	  (run_exec_rlimit): use the new field.
15215	  (rb_execarg_run_options): clear sarg using MEMZERO.  use the new
15216	  field.
15217
15218Sat Jun 23 14:29:25 2012  Tanaka Akira  <akr@fsij.org>
15219
15220	* internal.h (rb_execarg): add chdir_given and chdir_dir fields.
15221
15222	* process.c (EXEC_OPTION_CHDIR): removed.
15223	  (mark_exec_arg): mark chdir_dir field.
15224	  (rb_execarg_addopt): update the new fields, instead of options array.
15225	  (rb_execarg_run_options): use the new fields.
15226
15227Sat Jun 23 13:20:47 2012  Tanaka Akira  <akr@fsij.org>
15228
15229	* internal.h (rb_execarg): add close_others_given, close_others_do and
15230	  close_others_maxhint fields.
15231
15232	* process.c (EXEC_OPTION_CLOSE_OTHERS): removed.
15233	  (rb_execarg_addopt): update the new fields, instead of options array.
15234	  (check_exec_fds): take eargp as an argument.  update the
15235	  close_others_maxhint field.
15236	  (rb_execarg_fixup): follow the argument change of check_exec_fds.
15237	  (rb_execarg_run_options): use the new fields.
15238
15239Sat Jun 23 10:41:59 2012  Tanaka Akira  <akr@fsij.org>
15240
15241	* internal.h (rb_execarg): add unsetenv_others_given and
15242	  unsetenv_others_do fields.
15243
15244	* process.c (EXEC_OPTION_UNSETENV_OTHERS): removed.
15245	  (rb_execarg_addopt): update the new fields, instead of options array.
15246	  (rb_execarg_fixup): use the new fields.
15247
15248Sat Jun 23 09:35:47 2012  Tanaka Akira  <akr@fsij.org>
15249
15250	* process.c: use the variable name "soptions" for sargp->options.
15251
15252Sat Jun 23 09:17:49 2012  Tanaka Akira  <akr@fsij.org>
15253
15254	* process.c: use the name "sargp" for struct rb_execarg variables
15255	  consistently for saving process attributes.
15256
15257	* io.c: ditto.
15258
15259Sat Jun 23 07:59:57 2012  Tanaka Akira  <akr@fsij.org>
15260
15261	* process.c: use the name "eargp" for struct rb_execarg variables
15262	  consistently except for saving process attributes.
15263
15264	* io.c: ditto.
15265
15266	* ext/pty/pty.c: ditto.
15267
15268Wed Jun 20 18:27:03 2012  Yuki Yugui Sonoda  <yugui@google.com>
15269
15270	* common.mk: Add missing dependencies.
15271
15272Fri Jun 22 20:27:39 2012  Tanaka Akira  <akr@fsij.org>
15273
15274	* internal.h (rb_execarg): add pgroup_given and pgroup_pgid fields.
15275
15276	* process.c (EXEC_OPTION_PGROUP): removed.
15277	  (rb_execarg_addopt): update the new fields, instead of options array.
15278	  (run_exec_pgroup): take a struct rb_execarg argument.  refer the new
15279	  fields.
15280	  (rb_execarg_run_options): follow run_exec_pgroup change.
15281
15282Fri Jun 22 18:48:51 2012  Kouhei Sutou  <kou@cozmixng.org>
15283
15284	* README.EXT, README.EXT.ja: use "sval" for the third argument
15285	  name of Data_Wrap_Struct().
15286	  Suggested by @satoh_fumiyasu. Thanks!!!
15287
15288Fri Jun 22 18:04:26 2012  Koichi Sasada  <ko1@atdot.net>
15289
15290	* iseq.c, vm_eval.c: set th->base_block properly.
15291	  th->base_block is information for (a) parsing, (b) compiling
15292	  and (c) setting up the frame to execute the program passed by
15293	  `eval' method.  For example, (1) parser need to know up-level
15294	  variables to detect it is variable or method without paren.
15295	  Befor (a), (b) and (c), VM set th->base_block by passed bindng
15296	  (or previous frame information).  After execute (a), (b) and (c),
15297	  VM should clear th->base_block.  However, if (a), (b) or (c)
15298	  raises an exception, then th->base_block is not cleared.
15299	  Problem is that the uncleared value th->balo_block is used for
15300	  irrelevant iseq compilation.  It causes SEGV or critical error.
15301	  I tried to solve this problem: to clear them before exception,
15302	  but finally I found out that it is difficult to do it (Ruby
15303	  program can be run in many places).
15304	  Because of this background, I set th->base_block before
15305	  compiling iseq and restore it after compiling.
15306	  Basically, th->base_block is dirty hack (similar to global
15307	  variable) and this patch is also dirty.
15308
15309	* bootstraptest/test_eval.rb: add a test for above.
15310
15311	* internal.h: remove unused decl.
15312
15313	* iseq.c (rb_iseq_compile_with_option): add base_block parameter.
15314	  set th->base_block before compilation and restore it after
15315	  compilation.
15316
15317	* ruby.c (require_libraries): pass 0 as base_block instead of
15318	  setting th->base_block
15319
15320	* tool/compile_prelude.rb (prelude_eval): apply above changes.
15321
15322	* vm.c, vm_eval.c: ditto.
15323
15324	* vm_core.h: add comments.
15325
15326Fri Jun 22 18:19:38 2012  Tanaka Akira  <akr@fsij.org>
15327
15328	* process.c: pass struct rb_execarg value instead of its options
15329	  field for saving process attribute changing functions.
15330	  (save_redirect_fd): take a struct rb_execarg argument.
15331	  (run_exec_dup2): ditto.
15332	  (run_exec_close): ditto.
15333	  (run_exec_open): ditto.
15334	  (run_exec_dup2_child): ditto.
15335	  (run_exec_pgroup): ditto.
15336	  (run_exec_rlimit): ditto.
15337	  (save_env): ditto.
15338	  (rb_execarg_run_options): follow the above functions change.
15339
15340Fri Jun 22 17:55:48 2012  Koichi Sasada  <ko1@atdot.net>
15341
15342	* test/ruby/test_backtrace.rb: decrease recursion depth
15343	  to reduce consuming stack size.
15344
15345Fri Jun 22 13:36:50 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15346
15347	* random.c (random_init, random_load): cannot initialize frozen object
15348	  again, nor with tainted/untrusted object.  [Bug #6540]
15349
15350Fri Jun 22 13:32:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15351
15352	* error.c (rb_check_copyable): new function, to ensure the target is
15353	  not frozen and the source is not tainted nor untrusted.
15354
15355Fri Jun 22 05:55:20 2012  Eric Hodel  <drbrain@segment7.net>
15356
15357	* eval.c (ruby_cleanup):  Fixed typo.  Patch by Trever Dawe.
15358	  Fixes #131 (github).  [ruby-trunk - Bug #6619]
15359
15360Thu Jun 21 21:16:58 2012  Tanaka Akira  <akr@fsij.org>
15361
15362	* process.c (rb_execarg_addopt): take a VALUE argument instead of
15363	  struct rb_execarg.
15364	  (rb_exec_arg_addopt): follow the rb_execarg_addopt change.
15365	  (check_exec_options_i): ditto.
15366
15367	* io.c (pipe_open): follow the rb_execarg_addopt change.
15368
15369	* internal.h (rb_execarg_addopt): follow the definition change.
15370
15371Thu Jun 21 20:34:19 2012  Tanaka Akira  <akr@fsij.org>
15372
15373	* process.c (rb_exec_fillarg): take a VALUE argument instead of
15374	  struct rb_execarg.
15375	  (rb_check_exec_options): ditto.
15376	  (check_exec_options_i): ditto.
15377
15378Thu Jun 21 19:48:05 2012  Tanaka Akira  <akr@fsij.org>
15379
15380	* process.c (rb_exec_async_signal_safe): use rb_execarg_run_options
15381	  instead of rb_run_exec_options_err.
15382	  (rb_spawn_process): ditto.
15383
15384Thu Jun 21 19:02:43 2012  Tanaka Akira  <akr@fsij.org>
15385
15386	* process.c (rb_exec_fillarg): take a VALUE argument instead of
15387	  struct rb_execarg.
15388	  (rb_execarg_init): follow the rb_exec_fillarg change.
15389
15390Thu Jun 21 18:36:43 2012  Tanaka Akira  <akr@fsij.org>
15391
15392	* process.c (rb_execarg_init): take a VALUE argument instead of
15393	  struct rb_execarg.
15394	  (rb_execarg_new): follow the rb_execarg_init change.
15395	  (rb_exec_arg_init): ditto.
15396
15397	* internal.h (rb_execarg_init): follow the definition change.
15398
15399Thu Jun 21 17:20:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15400
15401	* parse.y (new_args_tail_gen): fix GC problem of keyword rest
15402	  argument.  the wrapped struct should be bound to the wrapping node
15403	  before assignment of child nodes, to get rid of the case the
15404	  children are referred by only the struct pointer which is not a
15405	  subject of GC.  [ruby-core:45744]
15406
15407Thu Jun 21 07:06:52 2012  Koichi Sasada  <ko1@atdot.net>
15408
15409	* error.c (err_append): rename err_append() to compile_err_append()
15410	  and move definition body.  err_append() is used only by compiling.
15411
15412Thu Jun 21 06:21:54 2012  Tanaka Akira  <akr@fsij.org>
15413
15414	* process.c (rb_execarg_fixup): take a VALUE argument instead of
15415	  struct rb_execarg.
15416
15417	* internal.h (rb_execarg_fixup): follow the definition change.
15418
15419	* io.c (pipe_open): follow rb_execarg_fixup change.
15420
15421	* ext/pty/pty.c (establishShell): ditto.
15422
15423Wed Jun 20 21:25:37 2012  Tanaka Akira  <akr@fsij.org>
15424
15425	* internal.h (struct rb_execarg): add umask_given and umask_mask
15426	  fields.
15427
15428	* process.c (STATIC_ASSERT): removed.
15429	  (rb_execarg_addopt): follow the rb_execarg change.
15430	  (rb_execarg_run_options): ditto.
15431
15432Wed Jun 20 20:38:23 2012  Tanaka Akira  <akr@fsij.org>
15433
15434	* internal.h (struct rb_execarg) moved and renamed from
15435	  struct rb_exec_arg in intern.h.
15436
15437	* include/ruby/intern.h (struct rb_exec_arg): refer Data object which
15438	  contains struct rb_execarg.
15439
15440	* process.c: use struct rb_execarg instead of struct rb_exec_arg
15441	  except functions declared in intern.h.
15442	  (rb_exec_arg_addopt): extract a pointer to struct rb_execarg from
15443	  struct rb_exec_arg.
15444	  (rb_exec_arg_init): ditto.
15445	  (rb_exec_arg_fixup): ditto.
15446	  (rb_run_exec_options_err): ditto.
15447	  (rb_run_exec_options): ditto.
15448	  (rb_exec_err): ditto.
15449	  (rb_exec): ditto.
15450
15451	* io.c: use struct rb_execarg instead of struct rb_exec_arg.
15452
15453	* ext/pty/pty.c: ditto.
15454
15455Wed Jun 20 19:13:25 2012  Tanaka Akira  <akr@fsij.org>
15456
15457	* internal.h (rb_execarg_new): declared.
15458	  (rb_execarg_get): ditto.
15459
15460	* process.c (mark_exec_arg): new function.
15461	  (free_exec_arg): ditto.
15462	  (memsize_exec_arg): ditto.
15463	  (exec_arg_data_type): defined.
15464	  (rb_execarg_new): new function.
15465	  (rb_execarg_get): ditto.
15466	  (rb_f_exec): use rb_execarg_new.
15467	  (rb_spawn_internal): ditto.
15468	  (rb_f_spawn): ditto.
15469
15470	* io.c (pipe_open_v): use rb_execarg_new.
15471	  (pipe_open_s): ditto.
15472
15473	* ext/pty/pty.c (establishShell): use rb_execarg_new.
15474
15475Wed Jun 20 16:36:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15476
15477	* missing/setproctitle.c (environ): use (*_NSGetEnviron()) instead of
15478	  environ on Darwin for namespace cleanness, same as [ruby-core:00537].
15479	  [ruby-core:45615] [Bug #6576]
15480
15481Wed Jun 20 11:33:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15482
15483	* process.c (rb_execarg_addopt): always make Fixnum, and ignore higher
15484	  bits in too large umask value.
15485
15486Wed Jun 20 11:24:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15487
15488	* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): deal with
15489	  sudden-death of workers.
15490
15491Mon Jun 18 20:34:20 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
15492
15493	* time.c (init_leap_second_info): fix non-ANSI function declaration.
15494
15495Mon Jun 18 20:29:04 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
15496
15497	* ruby.c (rb_f_sub): use ansi style declaration.
15498	* ruby.c (rb_f_gsub): ditto.
15499	* ruby.c (rb_f_chomp): ditto.
15500
15501Mon Jun 18 20:26:23 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
15502
15503	* random.c (rb_random_int32): get rid of "warning: constant 0x100000000
15504	  is so big it is long" warning.
15505
15506Mon Jun 18 20:07:23 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
15507
15508	* dir.c (dir_initialize): get rid of "unused return: argc = rb_scan_args()"
15509	  warning.
15510
15511Mon Jun 18 19:31:20 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
15512
15513	* include/ruby/missing.h: include math.h before checking INFINITY
15514	  and NAN. Otherwise, strange macro redefinition will occur.
15515
15516Mon Jun 18 19:12:37 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
15517
15518	* array.c (ary_reverse): use ansi style declaration.
15519
15520Tue Jun 19 18:43:50 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15521
15522	* include/ruby/backward/rubysig.h: fix visibility.  [Bug #6607]
15523
15524Tue Jun 19 17:51:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15525
15526	* process.c (rb_execarg_run_options): do not call any methods in the
15527	  async-signal-safe function.  mask has been checked with NUM2MODET()
15528	  already and converted with LONG2NUM().
15529
15530Tue Jun 19 11:59:56 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15531
15532	* ext/readline/readline.c (Init_readline): don't set 0 to
15533	  rl_catch_signals and rl_catch_sigwinch. [Bug #5423]
15534
15535Tue Jun 19 11:52:59 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15536
15537	* ext/readline/readline.c (readline_s_get_special_prefixes): suppress
15538	  warning: uninitialized instance variable.
15539
15540Tue Jun 19 11:43:16 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15541
15542	* ext/readline/readline.c (readline_getc): fix editline compatibility
15543	  broken by r36123. [Bug #6601]
15544
15545Mon Jun 18 17:10:08 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15546
15547	* string.c (rb_str_subpos): split from rb_str_substr.  returns
15548	  adjusted position for substring.
15549
15550Mon Jun 18 10:42:57 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15551
15552	* ext/readline/readline.c (readline_getc): deal with ESC just followed
15553	  by ASCII as meta prefix in incremental search mode.  based on the
15554	  patch from rctay (Tay Ray Chuan) at [ruby-core:45682].  [Bug #6601]
15555
15556Sun Jun 17 22:23:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15557
15558	* dir.c (rb_file_directory_p): move documentation for Dir.exist? from
15559	  file.c so that the proper description will be shown instead of the
15560	  documentation of File.directory?.  [ruby-core:45685]
15561
15562Sun Jun 17 16:21:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15563
15564	* thread_win32.h (rb_thread_lock_t): make a union for USE_WIN32_MUTEX.
15565	  this internal is used only in thread_win32.c, but has to be complete
15566	  to define rb_thread_t.
15567
15568	* thread_win32.c (native_mutex_lock, native_mutex_destroy): fix for
15569	  USE_WIN32_MUTEX.
15570
15571	* thread_win32.c (native_cond_timedwait_ms): rename reserved pattern
15572	  name.  user defined symbols should not start with __.
15573
15574Sat Jun 16 19:24:01 2012  Tadayoshi Funaba  <tadf@dotrb.org>
15575
15576	* ext/date/date_core.c: define date_sg_t.
15577
15578Sat Jun 16 18:46:57 2012  Tadayoshi Funaba  <tadf@dotrb.org>
15579
15580	* ext/date/date_tmx.h: offset in struct tmx_funcs is now int.
15581	* ext/date/date_strftime.c: ditto.
15582	* ext/date/date_core.c: ditto.
15583
15584Sat Jun 16 18:31:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15585
15586	* eval.c (ruby_setup): set running state in the normal case before
15587	  popping a tag.
15588
15589Sat Jun 16 07:46:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15590
15591	* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): format workers
15592	  results in the parent.
15593
15594Sat Jun 16 07:12:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15595
15596	* tool/runruby.rb (File.realpath): return real path of expanded path.
15597	  [Bug #6598]
15598
15599Sat Jun 16 07:12:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15600
15601	* bootstraptest/runner.rb (main): ignore -j option for compatibility
15602	  with test/unit.
15603
15604Sat Jun 16 07:11:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15605
15606	* lib/test/unit.rb (Test::Unit::Runner#puke): modify only result and
15607	  drop useless reports, not override entirely.
15608
15609	* lib/test/unit/parallel.rb (Test::Unit::Worker#_run_suite): report
15610	  unformatted results.  formatting messages is not a workers task.
15611
15612	* lib/test/unit/parallel.rb (Test::Unit::Worker#puke): store raw
15613	  results.
15614
15615Sat Jun 16 01:27:14 2012  Aaron Patterson <aaron@tenderlovemaking.com>
15616
15617	* ext/psych/lib/psych.rb: bumping psych to 1.3.3
15618	* ext/psych/psych.gemspec: ditto
15619
15620Fri Jun 15 20:54:28 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
15621
15622	* vm_backtrace.c (backtrace_collect): rename from backtreace_collect.
15623
15624Fri Jun 15 19:22:13 2012  Koichi Sasada  <ko1@atdot.net>
15625
15626	* vm_core.h: remove VM_FRAME_MAGIC_FINISH (finish frame type).
15627	  Before this commit:
15628	    `finish frame' was place holder which indicates that VM loop
15629	    needs to return function.
15630	    If a C method calls a Ruby methods (a method written by Ruby),
15631	    then VM loop will be (re-)invoked.  When the Ruby method returns,
15632	    then also VM loop should be escaped.  `finish frame' has only
15633	    one instruction `finish', which returns VM loop function.
15634	    VM loop function executes `finish' instruction, then VM loop
15635	    function returns itself.
15636	    With such mechanism, `leave' instruction (which returns one
15637	    frame from current scope) doesn't need to check that this `leave'
15638	    should also return from VM loop function.
15639	    Strictly, one branch can be removed from `leave' instruction.
15640	  Consideration:
15641	    However, pushing the `finish frame' needs costs because
15642	    it needs several memory accesses.  The number of pushing
15643	    `finish frame' is greater than I had assumed.  Of course,
15644	    pushing `finish frame' consumes additional control frame.
15645	    Moreover, recent processors has good branch prediction,
15646	    with which we can ignore such trivial checking.
15647	  After this commit:
15648	    Finally, I decide to remove `finish frame' and `finish'
15649	    instruction.  Some parts of VM depend on `finish frame',
15650	    so the new frame flag VM_FRAME_FLAG_FINISH is introduced.
15651	    If this frame should escape from VM function loop, then
15652	    the result of VM_FRAME_TYPE_FINISH_P(cfp) is true.
15653	    `leave' instruction checks this flag every time.
15654	    I measured performance on it.  However on my environments,
15655	    it improves some benchmarks and slows some benchmarks down.
15656	    Maybe it is because of C compiler optimization parameters.
15657	    I'll re-visit here if this cause problems.
15658
15659	* insns.def (leave, finish): remove finish instruction.
15660
15661	* vm.c, vm_eval.c, vm_exec.c, vm_backtrace.c, vm_dump.c:
15662	  apply above changes.
15663
15664Fri Jun 15 19:11:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15665
15666	* lib/test/unit.rb (Test::Unit::Runner#puke): always add skipped
15667	  results to the report for parallel test.  [Bug #6595]
15668
15669Fri Jun 15 09:01:35 2012  Yuki Yugui Sonoda  <yugui@google.com>
15670
15671	* nacl/pepper_main.c: Removed an unnecessary and erroneous inclusion.
15672
15673Thu Jun 14 22:59:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15674
15675	* configure.in (RUBY_CPPOUTFILE): check if output is really sent to
15676	  specified file to tell if -o option works.  [ruby-dev:45742]
15677	  [Bug#6591]
15678
15679	* configure.in (RUBY_CPPOUTFILE): check if output file is actually
15680	  created.  [ruby-dev:45742] [Bug#6591]
15681
15682Thu Jun 14 22:10:50 2012  Tanaka Akira  <akr@fsij.org>
15683
15684	* process.c (proc_exec_sh): don't strip leading spaces of the script.
15685
15686Thu Jun 14 15:54:02 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
15687
15688	* file.c (rb_file_s_basename, rb_file_s_dirname): documentation fix.
15689	  File.basename and File.dirname support File::ALT_SEPARATOR.
15690
15691Thu Jun 14 11:10:10 2012  Yuki Yugui Sonoda  <yugui@google.com>
15692
15693	* nacl/pepper_main.c: Applies the new embedding API to pepper_ruby.
15694
15695Thu Jun 14 10:44:41 2012  Yuki Yugui Sonoda  <yugui@google.com>
15696
15697	* include/ruby/ruby.h: Grouped APIs for embedding CRuby interpreter.
15698	  (ruby_setup, ruby_compile_main_from_file,
15699	  ruby_compile_main_from_string, ruby_eval_main,
15700	  ruby_set_script_name): new APIs to embed CRuby.
15701	  (ruby_opaque_t) Opaque pointer to an internal data, to NODE or iseq
15702	  in particular.
15703
15704	* eval.c (ruby_setup): Similar to ruby_init but returns an error code
15705	  instead of exit(3) on error.
15706	  (ruby_eval_main): Similar to ruby_exec_node but returns the
15707	  evaluation result.
15708	  (ruby_eval_main_internal): renamed from ruby_exec_internal.
15709
15710	* ruby.c (toplevel_context): new helper function.
15711	  (PREPARE_EVAL_MAIN): moved.
15712	  (process_options): refactored with new functions.
15713	  (parse_and_compile_main) new helper function.
15714	  (ruby_compile_main_from_file, ruby_compile_main_from_string) new API
15715	  (ruby_set_script_name): new API.
15716
15717
15718Thu Jun 14 10:39:48 2012  Yuki Yugui Sonoda  <yugui@google.com>
15719
15720	* eval.c: Add doxygen comments.
15721
15722	* ruby.c: ditto.
15723
15724	* thread_pthread.c: ditto
15725
15726	* version.c: ditto.
15727
15728	* vm_core.h: ditto.
15729
15730Thu Jun 14 10:16:07 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15731
15732	* configure.in: revert r36071 and add NetBSD to blacklist of -ansi.
15733
15734Thu Jun 14 07:59:12 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15735
15736	* thread_pthread.c (get_stack): Linux is the only OS which includes
15737	  the size of guard page into the stack size.
15738
15739Thu Jun 14 06:21:00 2012  Eric Hodel  <drbrain@segment7.net>
15740
15741	* lib/drb/drb.rb:  Replace broken links to the English DRb book.
15742	  Patch by Zachary Scott.  [ruby-trunk - Bug #6544]
15743
15744Thu Jun 14 06:17:47 2012  Eric Hodel  <drbrain@segment7.net>
15745
15746	* lib/observer.rb:  Update broken link to the Programming Ruby book.
15747	  Patch by Zachary Scott.  [ruby-trunk - Bug #6536]
15748	* lib/drb/drb.rb:  ditto.
15749
15750Thu Jun 14 05:23:05 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15751
15752	* regparse.c (PFETCH_READY): suppress Wunused-but-set-variable.
15753
15754	* regparse.c (is_onechar_cclass): restructured to clarify that c is
15755	  used iff found == 1.
15756
15757Thu Jun 14 02:54:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15758
15759	* configure.in: use -fbuiltin with -ansi -std=iso9899:199409.
15760	  This prevents errors introduced by disabling builtin functions,
15761	  which is the sub-effect of -ansi/-std.
15762	  Now NetBSD can use -ansi -std=iso9899:199409.
15763	  Maybe mingw, cygwin and darwin can also.
15764
15765Thu Jun 14 02:53:30 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15766
15767	* Makefile.in: don't remove macros. now name2ctype uses macros.
15768
15769	* tool/enc-unicode.rb: add comment why it uses Hash#index.
15770
15771	* enc/unicode/{name2ctype.kwd,name2ctype.src,name2ctype.h.blt}:
15772	  update to follow the current name2ctype.h.
15773	  FYI current Unicode version is 6.1.
15774
15775Thu Jun 14 00:16:59 2012  Akinori MUSHA  <knu@iDaemons.org>
15776
15777	* lib/net/http/responses.rb, lib/webrick/httpstatus.rb: Add HTTP
15778	  response codes added in RFCs 2817 and 4918.  [ruby-core:45547]
15779	  [Feature #6569]
15780
15781	* lib/net/http/responses.rb: Rename Net::HTTPMultipleChoice to
15782	  Net::HTTPMultipleChoices, leaving the former as alias to the
15783	  latter for backward compatibility.  [ruby-core:45547]
15784	  [Feature #6569]
15785
15786	* lib/net/http/responses.rb: Add comments about unused,
15787	  still-in-draft and private extension response codes.
15788	  [ruby-core:45547] [Feature #6569]
15789
15790Wed Jun 13 22:44:32 2012  Naohisa Goto  <ngotogenome@gmail.com>
15791
15792	* test/dl/test_func.rb (test_qsort1, test_qsort2): use TYPE_SIZE_T
15793	  for size_t variables. [ruby-dev:45733] [Bug #6584]
15794
15795Wed Jun 13 22:18:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15796
15797	* configure.in: remove -ansi and -std options for lgamma_r() and
15798	  finite().
15799
15800Wed Jun 13 21:46:34 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15801
15802	* configure.in: cygwin does not provide some declarations in strict
15803	  ANSI mode.
15804
15805Wed Jun 13 20:19:59 2012  Tanaka Akira  <akr@fsij.org>
15806
15807	* process.c (rb_fork_internal): move a variable declaration.
15808
15809Wed Jun 13 17:54:38 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
15810
15811	* regparse.c (PFETCH_READY):  this  line was to  suppress warning,
15812	  but  did emit  warnings if  -Wuninitialized was  set.  Assigning
15813	  NULL instead if pfetch_prev should suffice the situation.
15814
15815Wed Jun 13 17:51:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15816
15817	* configure.in: cygwin needs C99 for some stuff, e.g.,
15818	  pthread_attr_setstacksize, sched_yield.
15819
15820Wed Jun 13 17:50:43 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15821
15822	* Makefile.in (.c.i): add warnflags to make the result consistent with
15823	  compilation.
15824
15825Wed Jun 13 15:12:07 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
15826
15827	* configure.in: On Windows  platforms, system provided headers are
15828	  VC++ optimized.  That is, C++ habits are often contaminated into
15829	  various  headers.  Most  frequent  situation is  the  use of  //
15830	  comments.  We bypass ANSI  C mode for them.  Otherwise extension
15831	  libs cannot include those headers.
15832
15833Wed Jun 13 13:39:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15834
15835	* include/ruby/win32.h: get rid of C99 style one line comments.
15836
15837Wed Jun 13 13:39:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15838
15839	* encoding.c (enc_alias_internal): use strdup defined as macro.
15840
15841Wed Jun 13 10:20:27 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15842
15843	* process.c (rb_exec_fillarg): get rid of SIZE_T_MAX which may need
15844	  more headers.
15845
15846	* process.c (rb_exec_fillarg): fix array element size.  "continue" and
15847	  "readonly" exceeded the size.
15848
15849	* process.c (rb_exec_fillarg): use shell if the first word is reserved
15850	  or special built-in name.
15851	 http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html
15852
15853	* process.c (rb_exec_fillarg): treat '=' only in the first word.  if
15854	  the first word does not contain '=', it is the command name and
15855	  environment assignments cannot be anymore.
15856
15857Tue Jun 12 23:45:36 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15858
15859	* lib/mkmf.rb: add dummy clean-static target to prevent errors for the
15860	  case real clean-static target doesn't exist.
15861
15862Tue Jun 12 22:49:42 2012  Naohisa Goto  <ngotogenome@gmail.com>
15863
15864	* process.c (rb_exec_arg_fixup): fix compile error
15865
15866Tue Jun 12 21:40:13 2012  Tanaka Akira  <akr@fsij.org>
15867
15868	* process.c (rb_exec_fillarg): treat '=' character as a meta
15869	  character to detect assignments preceding command name.
15870
15871Tue Jun 12 20:29:19 2012  Tanaka Akira  <akr@fsij.org>
15872
15873	* include/ruby/intern.h (rb_exec_arg_init): deprecated.
15874	  (rb_exec_arg_addopt): ditto.
15875	  (rb_exec_arg_fixup): ditto.
15876	  (rb_run_exec_options): ditto.
15877	  (rb_run_exec_options_err): ditto.
15878
15879	* internal.h (rb_execarg_init): declared.
15880	  (rb_execarg_addopt): ditto.
15881	  (rb_execarg_fixup): ditto.
15882	  (rb_execarg_run_options): ditto.
15883
15884	* process.c: call rb_execarg_addopt, rb_execarg_fixup,
15885	  rb_execarg_run_options, rb_execarg_init.
15886	  (rb_execarg_addopt): renamed from rb_exec_arg_addopt.
15887	  (rb_exec_arg_addopt): stub to call rb_execarg_addopt.
15888	  (rb_execarg_init): renamed from rb_exec_arg_init.
15889	  (rb_exec_arg_init): stub to call rb_execarg_init.
15890	  (rb_execarg_fixup): renamed from rb_exec_arg_fixup.
15891	  (rb_exec_arg_fixup): stub to call rb_execarg_fixup.
15892	  (rb_execarg_run_options): renamed from rb_run_exec_options_err.
15893	  (rb_run_exec_options_err): stub to call rb_execarg_run_options.
15894	  (rb_run_exec_options): call rb_execarg_run_options.
15895
15896	* io.c: call rb_execarg_addopt, rb_execarg_fixup,
15897	  rb_execarg_run_options, rb_execarg_init.
15898
15899	* ext/pty/pty.c (establishShell): call rb_execarg_init and
15900	  rb_execarg_fixup.
15901
15902Tue Jun 12 18:39:59 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
15903
15904	* configure.in: enable strict ANSI mode by default in case of GCC,
15905	  requested by _ko1.
15906
15907Tue Jun 12 06:40:23 2012  Tanaka Akira  <akr@fsij.org>
15908
15909	* process.c (rb_exec_fillarg): detect '#' as a meta character.
15910
15911Mon Jun 11 22:15:44 2012  Tanaka Akira  <akr@fsij.org>
15912
15913	* include/ruby/intern.h (rb_proc_exec_n): deprecated.
15914	  (rb_exec): ditto.
15915	  (rb_exec_err): ditto.
15916	  (rb_fork): ditto.
15917	  (rb_fork_err): ditto.
15918
15919Mon Jun 11 18:49:52 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15920
15921	* configure.in: on checking libexecinfo, don't specify /use/local.
15922	  On FreeBSD people must specify --with-opt-dir or --with-execinfo-dir.
15923
15924Mon Jun 11 12:14:37 2012  Koichi Sasada  <ko1@atdot.net>
15925
15926	* vm_core.h: remove lfp (local frame pointer) and rename
15927	  dfp (dynamic frame pointer) to ep (environment pointer).
15928	  This change make VM `normal' (similar to other interpreters).
15929	  Before this commit:
15930	    Each frame has two env pointers lfp and dfp.  lfp points
15931	    local environment which is method/class/toplevel frame.
15932	    lfp[0] is block pointer.
15933	    dfp is block local frame. dfp[0] points previous (parent)
15934	    environment pointer.
15935	    lfp == dfp when frame is method/class/toplevel.
15936	    You can get lfp from dfp by traversing previous environment
15937	    pointers.
15938	  After this commit:
15939	    Each frame has only `ep' to point respective environment.
15940	    If there is parent environment, then ep[0] points parent
15941	    environment (as dfp).  If there are no more environment,
15942	    then ep[0] points block pointer (as lfp).  We call such ep
15943	    as `LEP' (local EP).  We add some macros to get LEP and to
15944	    detect LEP or not.
15945	    In short, we replace dfp and lfp with ep and LEP.
15946	  rb_block_t and rb_binding_t member `lfp' and `dfp' are removed
15947	  and member `ep' is added.
15948	  rename rb_thread_t's member `local_lfp' and `local_svar' to
15949	  `root_lep' and `root_svar'.
15950	  (VM_EP_PREV_EP(ep)): get previous environment pointer.  This macro
15951	    assume that ep is not LEP.
15952	  (VM_EP_BLOCK_PTR(ep)): get block pointer.  This macro assume
15953	    that ep is LEP.
15954	  (VM_EP_LEP_P(ep)): detect ep is LEP or not.
15955	  (VM_ENVVAL_BLOCK_PTR(ptr)): make block pointer.
15956	  (VM_ENVVAL_BLOCK_PTR_P(v)): detect v is block pointer.
15957	  (VM_ENVVAL_PREV_EP_PTR(ptr)): make prev environment pointer.
15958	  (VM_ENVVAL_PREV_EP_PTR_P(v)): detect v is prev env pointer.
15959
15960	* vm.c: apply above changes.
15961	  (VM_EP_LEP(ep)): get LEP.
15962	  (VM_CF_LEP(cfp)): get LEP of cfp->ep.
15963	  (VM_CF_PREV_EP(cfp)): utility function VM_EP_PREV_EP(cfp->ep).
15964	  (VM_CF_BLOCK_PTR(cfp)): utility function VM_EP_BLOCK_PTR(cfp->ep).
15965
15966	* vm.c, vm_eval.c, vm_insnhelper.c, vm_insnhelper.h, insns.def:
15967	  apply above changes.
15968
15969	* cont.c: ditto.
15970
15971	* eval.c, eval_intern.h: ditto.
15972
15973	* proc.c: ditto.
15974
15975	* thread.c: ditto.
15976
15977	* vm_dump.c: ditto.
15978
15979	* vm_exec.h: fix function name (on vm debug mode).
15980
15981Mon Jun 11 11:52:18 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
15982
15983	* compile.c (iseq_set_sequence): nonstatic initializer of an
15984	  aggregate type is a C99ism.
15985
15986	* compile.c (enum compile_array_type_t): comma at the end of enum
15987	  list is a C99ism.
15988
15989	* vm_backtrace.c (enum LOCATION_TYPE): ditto.
15990
15991Mon Jun 11 06:31:33 2012  Tanaka Akira  <akr@fsij.org>
15992
15993	* process.c (rb_proc_exec_n): revert the function removed at r35889.
15994
15995Mon Jun 11 06:20:50 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15996
15997	* thread_pthread.c (rb_thread_create_timer_thread): assign return
15998	  value to the variable err.
15999
16000Mon Jun 11 06:17:06 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16001
16002	* thread_pthread.c (native_cond_initialize): fix typo in r36022.
16003	  this cause a failure on FreeBSD 8.2 amd64.
16004	 http://fbsd.rubyci.org/~chkbuild/ruby-trunk/log/20120610T130201Z.diff.html.gz
16005
16006Mon Jun 11 05:21:57 2012  Koichi Sasada  <ko1@atdot.net>
16007
16008	* .gdbinit (SDR): add SDR function.  It's only for VM debugging.
16009
16010Sun Jun 10 21:50:45 2012  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
16011
16012	* nacl/nacl_config.rb: Fixed for 32bit hosts.
16013
16014Sun Jun 10 20:23:14 2012  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
16015
16016	Fixes threading on NativeClient.
16017
16018	* thread_pthread.c (timer_thread_sleep): Extracted out a function from
16019	  thread_timer(). Added an alternative implementation for platforms
16020	  that lacks select(2) or pipe(2).
16021	  (rb_thread_create_timer_thread, native_cond_initialize,
16022	  native_cond_destroy): Replaced wrong HAVE_XXX checks.
16023
16024	* configure.in (pthread_attr_init): New check.
16025
16026Sun Jun 10 21:30:11 2012  Tanaka Akira  <akr@fsij.org>
16027
16028	* process.c (rb_exec_without_timer_thread): renamed from rb_exec_err.
16029	  (rb_exec_err): new stub function to call
16030	  rb_exec_without_timer_thread.
16031	  (rb_f_exec): call rb_exec_without_timer_thread.
16032	  (rb_exec): call rb_exec_without_timer_thread.
16033
16034Sun Jun 10 21:13:10 2012  Tanaka Akira  <akr@fsij.org>
16035
16036	* process.c (rb_fork): call rb_fork_internal instead of rb_fork_err.
16037
16038Sun Jun 10 20:55:59 2012  Tanaka Akira  <akr@fsij.org>
16039
16040	* process.c (rb_fork_ruby): call rb_fork_internal directly.
16041
16042Sun Jun 10 20:19:40 2012  Tanaka Akira  <akr@fsij.org>
16043
16044	* process.c (rb_fork_ruby): new function.
16045	  (rb_f_fork): use rb_fork_ruby instead of rb_fork.
16046	  (rb_daemon): ditto.
16047
16048	* io.c (pipe_open): use rb_fork_ruby instead of rb_fork.
16049
16050	* internal.h (rb_fork_ruby): declared.
16051
16052Sun Jun 10 18:58:16 2012  Akinori MUSHA  <knu@iDaemons.org>
16053
16054	* lib/net/http/response.rb: Remove a duplicated rdoc and leave a
16055	  pointer.
16056
16057	* lib/net/http/responses.rb: Add RFC numbers to base on.
16058
16059Sun Jun 10 18:31:42 2012  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
16060
16061	* configure.in (RUBY_NACL): Warns if $PATH does not contain the path
16062	  to NativeClient SDK. PATH variable redefinition in GNUmakefile does
16063	  not work for GNU make 3.81.
16064
16065Sun Jun 10 17:54:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16066
16067	* gc.h (IS_STACK_DIR_UPPER): utility macro.
16068
16069	* thread_pthread.c (get_stack): seems stack size does not include
16070	  guard size on Mac OS X.
16071
16072	* thread_pthread.c (ruby_init_stack): adjust stack size for offset of
16073	  addr from the bottom.
16074
16075Sun Jun 10 15:49:47 2012  Tanaka Akira  <akr@fsij.org>
16076
16077	* process.c (retry_fork): call after_fork except in a child process.
16078	  (rb_fork_internal): restrict after_fork call condition.
16079
16080Sun Jun 10 14:19:33 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16081
16082	* configure.in: NetBSD 6 adds libexecinfo but it only works on amd64.
16083	 http://www.mail-archive.com/source-changes-full@netbsd.org/msg38729.html
16084
16085Sun Jun 10 12:43:23 2012  Tanaka Akira  <akr@fsij.org>
16086
16087	* process.c (rb_f_exec): call rb_exec_async_signal_safe except on
16088	  Mac OS X.  cf. the comment in before_exec_non_async_signal_safe.
16089
16090Sun Jun 10 12:15:18 2012  Tanaka Akira  <akr@fsij.org>
16091
16092	* io.c (popen_exec): don't call rb_thread_atfork_before_exec.  use
16093	  rb_exec_async_signal_safe instead of rb_exec_err.
16094	  (pipe_open): use rb_fork_async_signal_safe instead of rb_fork_err.
16095
16096Sun Jun 10 11:44:57 2012  Tanaka Akira  <akr@fsij.org>
16097
16098	* process.c (rb_fork_internal): call after_fork only unless
16099	  chfunc_is_async_signal_safe.
16100
16101Sun Jun 10 11:33:01 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
16102
16103	* ext/openssl/ossl_pkey_ec.c
16104	  test/openssl/test_pkey_ec.rb: Add support for EC_POINT_mul.
16105	  Patch provided by Sambasiva Suda. Thanks!
16106	  [ruby-core:44408][ruby-trunk - Feature #6310]
16107
16108Sun Jun 10 10:48:15 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
16109
16110	* lib/openssl/ssl.rb: Use a simple random number to generate the
16111	  session id. MD5, as was used before, causes problems when
16112	  using a FIPS version of OpenSSL. Issue was found by Jared
16113	  Jennings, thank you!
16114	  [ruby-trunk - Bug #6137]
16115
16116Sun Jun 10 10:27:34 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
16117
16118	* NEWS: Add note about the new private key export behavior.
16119
16120Sun Jun 10 10:24:51 2012  Tanaka Akira  <akr@fsij.org>
16121
16122	* process.c (rb_exec_async_signal_safe): exported.
16123
16124	* ext/pty/extconf.rb: modify $INCFLAGS to include internal.h
16125
16126	* ext/pty/pty.c: include internal.h.
16127	  (chfunc): don't call rb_thread_atfork_before_exec.  use
16128	  rb_exec_async_signal_safe instead of rb_f_exec.
16129	  (establishShell): set up earg.  use rb_fork_async_signal_safe
16130	  instead of rb_fork_err.
16131
16132	* internal.h (rb_exec_async_signal_safe): declared.
16133	  (rb_fork_async_signal_safe): declared.
16134
16135Sun Jun 10 10:21:37 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
16136
16137	* ext/openssl/ossl.c
16138	  ext/openssl/ossl_pkey_rsa.c
16139	  ext/openssl/ossl_pkey_dsa.c
16140	  ext/openssl/ossl_pkey_ec.c: Forbid export passwords that are less
16141	  than four characters long, as OpenSSL itself does not allow this.
16142	  Issue found by Eric Hodel.
16143	* ext/openssl/ossl_pkey_ec.c: Add export as an alias of to_pem,
16144	  following the PKey interface contract.
16145	* test/openssl/test_pkey_dsa.rb
16146	  test/openssl/test_pkey_rsa.rb
16147	  test/openssl/test_pkey_ec.rb: Add tests that assert correct
16148	  behaviour when dealing with passwords that are less than four
16149	  characters long.
16150	  [ruby-core: 42281][ruby-trunk - Bug #5951]
16151
16152Sun Jun 10 10:14:26 2012  Tanaka Akira  <akr@fsij.org>
16153
16154	* process.c (rb_f_exec): use rb_exec_arg_prepare.
16155
16156Sun Jun 10 06:43:51 2012  Tanaka Akira  <akr@fsij.org>
16157
16158	* process.c: split after_exec into async-signal-safe part and rest.
16159	  (after_exec_async_signal_safe): extracted from after_exec.
16160	  (after_exec_non_async_signal_safe): ditto.
16161	  (after_exec): call them.
16162	  (rb_exec_async_signal_safe): call after_exec_async_signal_safe.
16163	  (rb_exec_err): call after_exec_non_async_signal_safe instead of
16164	  after_exec.
16165
16166Sun Jun 10 06:21:10 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
16167
16168	* NEWS: document new features of Ruby OpenSSL.
16169
16170Sun Jun 10 03:09:41 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
16171
16172	* ext/openssl/ossl.c: Fix error in example. Patch by David Albert.
16173
16174	  Add/extend existing documentation. Examples now also cover RSA
16175	  signatures and PBKDF2.
16176	  [ruby-core: 45154][ruby-trunk - Bug #6475]
16177
16178
16179Sun Jun 10 01:41:45 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
16180
16181	* ext/openssl/ossl_ssl.c: Introduce SSLContext#renegotiation_cb and
16182	  remove SSLContext#disable_client_renegotiation and related
16183	  functionality introduced in r35797. The new callback approach
16184	  gives clients maximum flexibility to decide on their own what to
16185	  do on renegotiation attempts.
16186	  Add documentation for SSL module and SSLError.
16187	* test/openssl/test_ssl.rb: Add a test for
16188	  SSLContext#renegotiation_cb.
16189
16190Sun Jun 10 01:37:18 2012  Tanaka Akira  <akr@fsij.org>
16191
16192	* process.c (rb_fork_internal): initialize exc.
16193
16194Sun Jun 10 00:19:25 2012  Tanaka Akira  <akr@fsij.org>
16195
16196	* process.c: don't use non async-signal-safe functions in a child
16197	  process before exec, for invoking a command.
16198	  (rb_exec_atfork): call rb_exec_async_signal_safe only.
16199	  (retry_fork): take chfunc_is_async_signal_safe argument.  call
16200	  before_fork and after_fork only unless chfunc_is_async_signal_safe.
16201	  (send_child_error): take chfunc_is_async_signal_safe argument.
16202	  send an exception only unless chfunc_is_async_signal_safe.
16203	  (recv_child_error): take chfunc_is_async_signal_safe argument.
16204	  receive an exception only unless chfunc_is_async_signal_safe.
16205	  (rb_fork_internal): renamed from rb_fork_err and take
16206	  chfunc_is_async_signal_safe argument.
16207	  use rb_protect only unless chfunc_is_async_signal_safe.
16208	  (rb_fork_err): call rb_fork_internal with false as
16209	  chfunc_is_async_signal_safe.
16210	  (rb_fork_async_signal_safe): call rb_fork_internal with true as
16211	  chfunc_is_async_signal_safe.
16212	  (rb_spawn_process): call rb_fork_async_signal_safe instead of
16213	  rb_fork_err.
16214
16215Sat Jun  9 23:57:03 2012  Tanaka Akira  <akr@fsij.org>
16216
16217	* process.c (rb_fork_err): rewrite a complex "if" statement.
16218
16219Sat Jun  9 23:44:29 2012  Tanaka Akira  <akr@fsij.org>
16220
16221	* process.c (before_exec_async_signal_safe): extracted from
16222	  before_exec.
16223	  (before_exec_non_async_signal_safe): ditto.
16224	  (before_exec): call before_exec_async_signal_safe and
16225	  before_exec_non_async_signal_safe.
16226	  (rb_exec_async_signal_safe): call before_exec_async_signal_safe.
16227	  (rb_exec_err): call before_exec_non_async_signal_safe instead of
16228	  before_exec.
16229
16230Sat Jun  9 23:36:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16231
16232	* iseq.c (iseq_load, insn_operand_intern, rb_iseq_disasm)
16233	  (rb_iseq_parameters): use rb_id2str() instead of rb_id2name() to
16234	  keep encoding.
16235
16236	* string.c (rb_str_symname_p): new function that checks if the string
16237	  is valid as a symbol name.  split from sym_inspect().
16238
16239Sat Jun  9 22:27:05 2012  Tanaka Akira  <akr@fsij.org>
16240
16241	* process.c (retry_fork): rewrite a complex "for" statement by
16242	  simple statements.
16243
16244Sat Jun  9 21:50:04 2012  Tanaka Akira  <akr@fsij.org>
16245
16246	* process.c (retry_fork): extracted from rb_fork_err.
16247	  (send_child_error): ditto.
16248	  (recv_child_error): ditto.
16249
16250Sat Jun  9 17:21:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16251
16252	* iseq.c (iseq_load): type is a symbol, and invalid as ID in common.
16253
16254Sat Jun  9 10:57:14 2012  Tanaka Akira  <akr@fsij.org>
16255
16256	* process.c (rb_exec_async_signal_safe): extracted from rb_exec_err.
16257
16258Sat Jun  9 09:31:07 2012  Tanaka Akira  <akr@fsij.org>
16259
16260	* process.c: simplified because close_others option is always
16261	  enabled by default.
16262	  (rb_f_exec): don't need to set the option.
16263	  (rb_exec_arg_prepare): don't need to set the option.  don't need
16264	  default_close_others argument.
16265	  (rb_spawn_internal): don't need to give default_close_others
16266	  argument for rb_exec_arg_prepare.  don't need default_close_others
16267	  argument.
16268	  (rb_spawn_err): don't need to give default_close_others
16269	  argument for rb_spawn_internal.
16270	  (rb_spawn): don't need to give default_close_others
16271	  argument for rb_spawn_internal.
16272	  (rb_f_system): don't need to give default_close_others argument for
16273	  rb_spawn_internal.
16274	  (rb_f_spawn): don't need to give default_close_others argument for
16275	  rb_exec_arg_prepare.
16276
16277Sat Jun  9 09:00:58 2012  Tanaka Akira  <akr@fsij.org>
16278
16279	* process.c (rb_proc_exec): call before_exec() here addition to
16280	  rb_exec_err.
16281
16282Sat Jun  9 08:30:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16283
16284	* thread_pthread.c (ruby_init_stack): use stack info if possible.
16285
16286Sat Jun  9 08:21:32 2012  Eric Hodel  <drbrain@segment7.net>
16287
16288	* README.EXT (prepare extconf.rb):  Added note to see MakeMakefile for
16289	  documentation of extconf.rb functions.  Patch by Zachary Scott.
16290	  [ruby-trunk - Feature #6522]
16291	* README.EXT (Appendix C):  Removed in favor of MakeMakefile.
16292	  Patch by Zachary Scott.
16293	* lib/mkmf.rb:  Merged documentation from README.EXT Appendix C.  Patch
16294	  by Zachary Scott.
16295
16296Sat Jun  9 08:16:47 2012  Eric Hodel  <drbrain@segment7.net>
16297
16298	* doc/re.rdoc:  Completed wording in the description of the =~ operator.
16299	  [ruby-trunk - Bug #6529]
16300
16301Sat Jun  9 08:09:38 2012  Eric Hodel  <drbrain@segment7.net>
16302
16303	* string.c (rb_str_start_with):  Removed "p" from start_with? examples
16304	  to match other String method examples.  [ruby-trunk - Bug #6553]
16305	* string.c (rb_str_end_with):  Updated end_with? to use code markup
16306	  instead of italic.
16307
16308Sat Jun  9 07:56:03 2012  Eric Hodel  <drbrain@segment7.net>
16309
16310	* lib/benchmark.rb:  Updated formatting of Benchmark documentation for
16311	  consistency.  [ruby-trunk - Bug #6533]
16312
16313Sat Jun  9 07:46:26 2012  Eric Hodel  <drbrain@segment7.net>
16314
16315	* lib/delegate.rb:  Added documentation for Delegator#!.  Patch by
16316	  Zachary Scott.  [ruby-trunk - Feature #6534]
16317
16318Sat Jun  9 07:39:50 2012  Eric Hodel  <drbrain@segment7.net>
16319
16320	* lib/net/http/responses.rb:  Add RFC 6585 response codes.  Patch by
16321	  Sangil Jung.  [ruby-trunk - Feature #6480]
16322	* lib/net/http/response.rb:  ditto
16323	* lib/net/http.rb:  ditto
16324	* lib/webrick/httpstatus.rb:  ditto
16325
16326Sat Jun  9 01:24:28 2012  Tanaka Akira  <akr@fsij.org>
16327
16328	* process.c (rb_exec_err): before_exec() call moved from proc_exec_cmd
16329	  and proc_exec_sh.
16330	  (rb_proc_exec): ditto.
16331
16332Sat Jun  9 01:11:07 2012  Tanaka Akira  <akr@fsij.org>
16333
16334	* include/ruby/intern.h (rb_exec_arg_init): declaration changed to
16335	  return a value.
16336
16337	* process.c (rb_exec_arg_init): return a value.
16338
16339Fri Jun  8 23:44:14 2012  Tanaka Akira  <akr@fsij.org>
16340
16341	* process.c: don't check the availability of FD_CLOEXEC.  It should
16342	  be available if fork() is available.
16343
16344	* io.c: ditto.
16345
16346Fri Jun  8 22:39:32 2012  Tanaka Akira  <akr@fsij.org>
16347
16348	* process.c (rb_fork_err): revert r35955.  The condition needs !chfunc
16349	  to close ep[0] and ep[1].  The catched exception is re-raised
16350	  immediately after that if status is not NULL.
16351
16352Fri Jun  8 19:43:33 2012  Tanaka Akira  <akr@fsij.org>
16353
16354	* process.c (rb_exec_err): after_exec() call moved from proc_exec_cmd
16355	  and proc_exec_sh.
16356	  (rb_proc_exec): ditto.
16357
16358Fri Jun  8 19:00:59 2012  Tanaka Akira  <akr@fsij.org>
16359
16360	* process.c (ARGV_COUNT): unused macro removed.
16361	  (ARGV_SIZE): ditto.
16362	  (ALLOC_ARGV): ditto.
16363	  (ALLOC_ARGV_WITH_STR): ditto.
16364
16365Fri Jun  8 16:19:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16366
16367	* test/runner.rb (src_testdir): expand real path so that
16368	  TestGem#test_self_find_files does not fail by aliased load path when
16369	  srcdir contains a symbolic link.
16370
16371	* tool/runruby.rb (srcdir): ditto.
16372
16373Fri Jun  8 12:04:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16374
16375	* process.c (rb_fork_err): error state in the child process is prior
16376	  to exceptions in proc_syswait().
16377
16378	* process.c (rb_fork_err): determine status on errors.
16379
16380	* ext/pty/pty.c (establishShell): reraise exception if something
16381	  raised during sleep.
16382
16383	* ext/pty/pty.c (establishShell): now needs status to protect from
16384	  exceptions in rb_fork_err().
16385
16386Thu Jun  7 22:13:05 2012  Tanaka Akira  <akr@fsij.org>
16387
16388	* process.c (rb_fork_err): Fix the condition to use rb_protect.
16389
16390Thu Jun  7 20:29:12 2012  Tanaka Akira  <akr@fsij.org>
16391
16392	* include/ruby/intern.h: rb_exec_arg and related stuff moved back from
16393	  internal.h
16394
16395Thu Jun  7 15:53:03 2012  Koichi Sasada  <ko1@atdot.net>
16396
16397	* .gdbinit: add function `trace_machine_instructions' to trace
16398	  in native machine assemble.
16399	  See https://bugs.ruby-lang.org/projects/ruby-trunk/wiki/MachineInstructionsTraceWithGDB
16400	  for more details.
16401
16402Wed Jun  6 21:31:21 2012  Tanaka Akira  <akr@fsij.org>
16403
16404	* process.c (proc_exec_cmd) renamed from proc_exec_v.
16405	  (proc_exec_sh): renamed from rb_proc_exec_e.
16406	  (proc_spawn_cmd_internal): renamed from proc_spawn_v.
16407	  (proc_spawn_cmd): renamed from proc_spawn_n.
16408	  (proc_spawn_sh): renamed from proc_spawn.
16409
16410Wed Jun  6 21:18:47 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16411
16412	* process.c (try_with_sh): please take care of the macro defined by
16413	  you.
16414
16415Wed Jun  6 20:45:08 2012  Tanaka Akira  <akr@fsij.org>
16416
16417	* process.c (proc_exec_v): don't call dln_find_exe_r here because it
16418	  is not async-signal-safe and proc_exec_v is called in a child
16419	  process.
16420	  command_abspath field of rb_exec_arg.
16421	  (rb_exec_fillarg): call dln_find_exe_r and set command_abspath.
16422	  (rb_exec_err): Give the absolute path of the invoking command for
16423	  proc_exec_v, instead of the command name.
16424
16425	* internal.h: add command_abspath field for rb_exec_arg.
16426
16427Wed Jun  6 20:08:01 2012  Tanaka Akira  <akr@fsij.org>
16428
16429	* process.c (try_with_sh): take envp argument.
16430	  (exec_with_sh): ditto.  use it for execve.
16431	  (proc_exec_v): provide envp for try_with_sh.
16432
16433Wed Jun  6 13:25:04 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16434
16435	* win32/win32.c, include/ruby/win32.h (rb_w32_wrap_io_handle): new API.
16436	  this API wraps an I/O handle (HANDLE or SOCKET) and returns fd.
16437	  the second parameter should be combination of O_*, for example,
16438	  O_RDWR | O_BINARY | O_NOINHERIT.
16439
16440	* win32/win32.c, include/ruby/win32.h (rb_w32_unwrap_io_handle): new
16441	  API.  this API unwraps an I/O handle and close the fd (not closes
16442	  the handle itself).
16443
16444	[Feature #4906] [ruby-core:37227]
16445
16446Wed Jun  6 13:18:26 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16447
16448	* win32/win32.c (rb_w32_close): of course, console handle is not socket.
16449
16450Wed Jun  6 12:37:43 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16451
16452	* process.c (rb_run_exec_options_err): allocate a temporary buffer for
16453	  run_exec_dup2() for restoring fds on non-fork environments.
16454
16455Wed Jun  6 09:45:21 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16456
16457	* test/dl/test_c_{struct_entry,union_entity}.rb: sorry, typos.
16458
16459Wed Jun  6 05:27:54 2012  Tanaka Akira  <akr@fsij.org>
16460
16461	* process.c (rb_exec_fillarg): check use_shell field before accessing
16462	  a union field.
16463
16464Wed Jun  6 04:58:44 2012  Tanaka Akira  <akr@fsij.org>
16465
16466	* process.c (rb_spawn_process): prog variable is not used for Unix.
16467
16468Wed Jun  6 00:20:37 2012  Tanaka Akira  <akr@fsij.org>
16469
16470	* internal.h (rb_exec_arg_init): change return type to void.
16471
16472	* process.c (rb_exec_arg_init): don't return a value.
16473	  (rb_exec_arg_prepare): ditto.
16474	  (rb_spawn_process): don't take the prog argument.  extract the
16475	  information from earg.
16476	  (rb_spawn_internal): follow rb_spawn_process change.
16477	  (rb_f_spawn): ditto.
16478
16479	* io.c (pipe_open): don't take the prog argument.  extract the
16480	  information from eargp.
16481	  (pipe_open_v): follow pipe_open change.
16482	  (pipe_open_s): ditto.
16483
16484Tue Jun  5 23:51:33 2012  Tanaka Akira  <akr@fsij.org>
16485
16486	* internal.h (rb_exec_arg): use union to represent command invocation
16487	  with/without shell.
16488
16489	* process.c: follow the rb_exec_arg change.
16490
16491	* io.c (pipe_open): ditto.
16492
16493Tue Jun  5 22:28:46 2012  Tanaka Akira  <akr@fsij.org>
16494
16495	* internal.h: rb_exec_arg and related stuff moved from intern.h
16496
16497	* include/ruby/intern.h (rb_proc_exec_n): removed.
16498
16499Tue Jun  5 21:57:22 2012  Tanaka Akira  <akr@fsij.org>
16500
16501	* process.c (rb_exec_arg_fixup): allocate a temporary buffer for
16502	  run_exec_dup2 here because it should be async-signal-safe.
16503	  (run_exec_dup2): use the temporary buffer.
16504	  (run_exec_dup2_tmpbuf_size): new function.
16505
16506	* include/ruby/intern.h (rb_exec_arg): add dup2_tmpbuf field.
16507
16508Tue Jun  5 20:13:15 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16509
16510	* object.c (rb_obj_init_copy): should check if trusted too.
16511
16512Tue Jun  5 19:59:13 2012  Tanaka Akira  <akr@fsij.org>
16513
16514	* process.c (strtok): declaration removed because it is not used.
16515
16516Tue Jun  5 19:33:51 2012  Tanaka Akira  <akr@fsij.org>
16517
16518	* process.c (proc_spawn): don't detect simple command line here
16519	  because rb_exec_fillarg already did.
16520
16521Tue Jun  5 19:21:10 2012  Tanaka Akira  <akr@fsij.org>
16522
16523	* process.c (rb_exec_fillarg): bail out a loop eagerly.
16524
16525Tue Jun  5 19:15:14 2012  Tanaka Akira  <akr@fsij.org>
16526
16527	* process.c: add comments about async-signal-safe.
16528
16529	* io.c: ditto.
16530
16531Tue Jun  5 09:25:10 2012  Eric Hodel  <drbrain@segment7.net>
16532
16533	* io.c:  Edited documentation for IO and File open and new and
16534	  Kernel#open for consistency and clarity.
16535
16536Mon Jun  4 21:53:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16537
16538	* win32/win32.c (rb_w32_sysinit): let the system not display the
16539	  critical-error-handler message box and the Windows Error Reporting
16540	  dialog.  [ruby-core:45389] [Bug #6535]
16541
16542Mon Jun  4 19:36:25 2012  Tanaka Akira  <akr@fsij.org>
16543
16544	* process.c (rb_exec_fillarg): allocate one more element before
16545	  beginning in argv_str for try_with_sh.
16546
16547	* internal.h (ARGVSTR2ARGC): adjust for the above change.
16548	  (ARGVSTR2ARGV): ditto.
16549
16550Mon Jun  4 19:17:06 2012  Tanaka Akira  <akr@fsij.org>
16551
16552	* internal.h (ARGVSTR2ARGC): defined.
16553	  (ARGVSTR2ARGV): defined.
16554
16555	* process.c (proc_exec_v): use ARGVSTR2ARGV.
16556	  (rb_spawn_process): use ARGVSTR2ARGC and ARGVSTR2ARGV.
16557
16558	* io.c (pipe_open): use ARGVSTR2ARGV.
16559
16560Mon Jun  4 16:13:00 2012  Koichi Sasada  <ko1@atdot.net>
16561
16562	* vm_insnhelper.h: remove magical code "lfp[0] & 0x02".
16563	  Current VM doesn't use this bit.
16564
16565	* vm_core.h (RUBY_VM_GET_BLOCK_PTR): added.
16566
16567	* eval.c (rb_block_given_p): use RUBY_VM_GET_BLOCK_PTR().
16568
16569	* vm_eval.c (rb_f_block_given_p): ditto.
16570
16571Mon Jun  4 15:39:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16572
16573	* win32/win32.c (constat_apply): apply VT100 functions.
16574	  [ruby-core:44958] [Feature #6418]
16575
16576	* win32/win32.c (constat_parse): parse some VT100 escape sequence.
16577
16578Mon Jun  4 14:06:12 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16579
16580	* process.c (rb_exec_err): should preserve errno.
16581
16582Mon Jun  4 13:10:11 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16583
16584	* test/dl/test_c_{struct_entry,union_entity}.rb: broken require.
16585
16586Mon Jun  4 12:01:21 2012  Koichi Sasada  <ko1@atdot.net>
16587
16588	* test/ruby/test_backtrace.rb: fix test.
16589	  Windows path includes `:' character.
16590
16591Mon Jun  4 11:42:39 2012  Koichi Sasada  <ko1@atdot.net>
16592
16593	* vm_core.h (rb_location_t): fix type and field name.
16594	  (1) rename rb_location_t to rb_iseq_location_t.
16595	  (2) rename field names of rb_iseq_location_t to adjust
16596	      RubyVM::Backtrace::Location methods.
16597	      (2-1) filename -> path
16598	      (2-2) filepath -> absolute_path
16599	      (2-3) basename -> base_label
16600	      (2-4) name -> label
16601	  (3) rename filed name rb_iseq_location_t#line_no to
16602	      rb_iseq_location_t#first_lineno to clear purpose of this field.
16603	  (4) The field names rb_binding_t#(filename|line_no) are also renamed
16604	      to rb_binding_t#(path|first_lineno).
16605
16606	* compile.c: apply above changes.
16607
16608	* iseq.c: ditto.
16609
16610	* proc.c: ditto.
16611
16612	* vm*.c: ditto.
16613
16614Mon Jun  4 11:40:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16615
16616	* marshal.c (r_object0): also load TYPE_USRMARSHAL, TYPE_DATA using
16617	  compatible loader.
16618
16619Mon Jun  4 11:33:42 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16620
16621	* process.c (rb_run_exec_options_err): restore save_env() call for
16622	  non-fork environments.
16623
16624	* process.c (rb_exec_err): restore environments after the failure of
16625	  exec to fix [ruby-core:44093] [Bug #6249] on non-fork environments
16626
16627Mon Jun  4 10:42:04 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16628
16629	* io.c (pipe_open): follow up changes in r35889.
16630
16631	* process.c (proc_spawn_n): now uses char ** instead of VALUE *.
16632
16633	* process.c (rb_spawn_process): prog is now VALUE of String, not char *.
16634
16635Mon Jun  4 06:12:43 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16636
16637	* marshal.c (r_object0): remove old warning for _alloc.
16638
16639Mon Jun  4 04:24:06 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16640
16641	* marshal.c: experimental test aborted.
16642	* complex.c: ditto.
16643	* rational.c: ditto.
16644	* include/ruby/intern.h: ditto.
16645
16646Mon Jun  4 00:45:18 2012  Tanaka Akira  <akr@fsij.org>
16647
16648	* process.c (rb_spawn_process): fix for Windows.  not tested.
16649
16650Mon Jun  4 00:11:51 2012  Tanaka Akira  <akr@fsij.org>
16651
16652	* process.c (rb_proc_exec_e): don't use ISSPACE().  \f, \r and \v
16653	  are not word separator in Bourne shell.
16654
16655Sun Jun  3 23:47:30 2012  Tanaka Akira  <akr@fsij.org>
16656
16657	* include/ruby/intern.h (rb_exec_arg): remove argc and argv fields.
16658	  add use_shell, argv_str and argv_buf fields.
16659
16660	* process.c (rb_proc_exec_e): don't split shell command line arguments
16661	  here to avoid memory allocation in a child process.
16662	  (rb_exec_fillarg): split shell command line arguments here.
16663	  (proc_exec_v): takes argv_str argument instead of argv.
16664	  (rb_proc_exec_ne): removed.
16665	  (rb_proc_exec_n): removed.
16666	  (rb_run_exec_options_err): don't initialize the removed fields.
16667	  (rb_exec_err): don't initialize the removed fields.
16668	  call proc_exec_v directly instead of rb_proc_exec_ne.
16669	  (rb_spawn_process): use use_shell field.
16670
16671Sun Jun  3 21:53:00 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16672
16673	* GPL: update text of GPLv2. [ruby-core:44488] [Bug #6328]
16674	  http://www.gnu.org/licenses/gpl-2.0.txt
16675
16676Sun Jun  3 21:22:52 2012  Tanaka Akira  <akr@fsij.org>
16677
16678	* process.c (rb_exec_getargs): remove rb_exec_arg argument.
16679
16680Sun Jun  3 21:14:26 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16681
16682	* marshal.c: calls directly rb_{Complex,Rational}_marshal_load().
16683	  But now disabled. [experimental]
16684	* complex.c: followed the above.
16685	* rational.c: ditto.
16686	* include/ruby/intern.h: ditto.
16687
16688Sun Jun  3 21:18:17 2012  Tanaka Akira  <akr@fsij.org>
16689
16690	* process.c (rb_check_argv): use rb_str_new_frozen instead of
16691	  rb_str_new4.
16692
16693Sun Jun  3 20:10:52 2012  Tanaka Akira  <akr@fsij.org>
16694
16695	* process.c (rb_proc_exec_e): extended version of rb_proc_exec() to
16696	  call execle().
16697	  (rb_proc_exec): use rb_proc_exec_e().
16698	  (rb_exec_err): use rb_proc_exec_e().
16699
16700Sun Jun  3 19:47:18 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16701
16702	* thread.c (vm_living_thread_num): suppress a warning.
16703
16704Sun Jun  3 17:23:52 2012  Tanaka Akira  <akr@fsij.org>
16705
16706	* use execve() to preserve environment variables when exec method is
16707	  failed.  [ruby-core:44093] [ruby-trunk - Bug #6249]
16708
16709	* include/ruby/intern.h (rb_exec_arg): add envp_str and envp_buf field
16710	  to store envp of execve().
16711
16712	* process.c (proc_exec_v): takes envp_str as an argument and use it
16713	  for execve().
16714	  (rb_proc_exec_ne): extended version of rb_proc_exec_n().
16715	  (rb_proc_exec_n): use rb_proc_exec_ne().
16716	  (rb_proc_exec): follow proc_exec_v() change.
16717	  (fill_envp_buf_i): new function.
16718	  (rb_exec_arg_fixup): set up envp_str and envp_buf.
16719	  (save_env_i): removed.
16720	  (save_env): removed.
16721	  (rb_run_exec_options_err): don't modify environment variables.
16722	  (rb_exec_err): use rb_proc_exec_ne().
16723
16724Sun Jun  3 16:33:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16725
16726	* marshal.c: revert r35879 "now marshal_{load|dump} are external."
16727
16728	* complex.c (nucomp_marshal__{dump,load}): should use rb_marshal_{dump,load}.
16729
16730	* rational.c (nurat_marshal__{dump,load}): ditto.
16731
16732Sun Jun  3 14:13:58 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16733
16734	* ext/date/date_core.c: checks whether the object is frozen or not.
16735
16736Sun Jun  3 14:00:51 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16737
16738	* complex.c: wrote Complex#_dump and Complex::load.  But now
16739	  disabled (due to compatibility) [experimental].
16740
16741	* rational.c: wrote Rational#_dump and Rational::load. ditto.
16742
16743Sun Jun  3 10:23:32 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16744
16745	* complex.c (nucomp_marshal_load): [ruby-core:45394]
16746	* rational.c (nurat_marshal_load): ditto.
16747
16748Sun Jun  3 03:15:46 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16749
16750	* regparse.c (onig_number_of_names): suppress a warning.
16751
16752Sun Jun  3 01:36:52 2012  Koichi Sasada  <ko1@atdot.net>
16753
16754	* vm_backtrace.c: change names.
16755	  (1) Class name: RubyVM::FrameInfo -> RubyVM::Backtrace::Location.
16756	  (2) Method name: RubyVM::FrameInfo.caller ->
16757	      Kernel.caller_locations.
16758	  (3) Instance methods of
16759	      RubyVM::FrameInfo (RubyVM::Backtrace::Location)
16760	      (3-1) name -> label
16761	      (3-2) basename -> base_label (basename is confusing with
16762		    File.basename)
16763	      (3-3) line_no -> lineno (We have already similar name
16764		    File#lineno, commented by kou [ruby-dev:45686]).
16765	      (3-4) filename -> path.
16766	      (3-5) filepath -> absolute_path.
16767	      (3-5) iseq -> removed (we will make other APIs to access iseq
16768		    and other information of frame for debugging).
16769
16770	* test/ruby/test_backtrace.rb: apply above changes.
16771	  And apply comment from kou [ruby-dev:45686].
16772
16773Sun Jun  3 00:49:11 2012  Koichi Sasada  <ko1@atdot.net>
16774
16775	* common.mk: fix to build vm_backtrace.c only itself (vm_backtrace.c
16776	  is no longer included from vm.c).  I hope this separation reduce
16777	  compile time of vm.c.
16778
16779	* internal.h: ditto.
16780
16781	* vm.c, vm_core.h, vm_dump.c, vm_eval.c: ditto.
16782
16783	* vm_eval.c: some functions (callee, etc) moved to vm_backtrace.c.
16784
16785Sun Jun  3 00:20:53 2012  Koichi Sasada  <ko1@atdot.net>
16786
16787	* vm_backtrace.c: added.  Separate backtrace related functions to
16788	  this file.
16789
16790	* vm.c, common.mk: ditto.
16791
16792Sat Jun  2 18:09:02 2012  Akinori MUSHA  <knu@iDaemons.org>
16793
16794	* lib/ipaddr.rb: Inhibit zero-filled octets in an IPv4 address in
16795	  all platforms. [ruby-dev:45671]
16796
16797	* lib/ipaddr.rb: Allow the x:x:x:x:x:x:d.d.d.d form not limited to
16798	  IPv4 mapped/compatible addresses.  This change also makes it
16799	  possible for the parser to understand IPv4 mapped and compatible
16800	  IPv6 addresses in non-compressed form.
16801
16802	* lib/ipaddr.rb: Stop exposing IPSocket.valid*? methods which were
16803	  only usable on non-IPv6-ready platforms.
16804
16805Sat Jun  2 16:59:00 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16806
16807	* string.c (rb_enc_cr_str_buf_cat): don't reset coderange as unknown.
16808	  the condition 'ptr_a8 && str_cr != ENC_CODERANGE_7BIT' means not
16809	  unknown, str is also ASCII-8BIT because str_encindex == ptr_encindex,
16810	  and nont (str_cr == ENC_CODERANGE_UNKNOWN) and
16811	  str_cr != ENC_CODERANGE_7BIT means str_cr is valid because ASCII-8BIT
16812	  can't be broken. [ruby-dev:45688] [Bug #6509]
16813
16814Sat Jun  2 07:04:48 2012  Eric Hodel  <drbrain@segment7.net>
16815
16816	* doc/re.rdoc (Performance):  Replaced incorrect example of reducing
16817	  backtracking through anchoring with reduced backtracking through a
16818	  range.  [ruby-trunk - Bug #6525]
16819
16820Sat Jun  2 06:34:15 2012  Eric Hodel  <drbrain@segment7.net>
16821
16822	* doc/re.rdoc (Performance):  Removed useless sample output from final
16823	  performance example and switched from #match to #=~ for consistency.
16824	  [ruby-trunk - Bug #6524]
16825
16826Fri Jun  1 09:30:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16827
16828	* object.c (class_or_module_required): extract check for class or
16829	  module.
16830
16831Fri Jun  1 08:50:47 2012  Eric Hodel  <drbrain@segment7.net>
16832
16833	* array.c:  Updated Array documentation formatting.  Patch by Zachary
16834	  Scott.  [ruby-trunk - Feature #6517]
16835
16836Fri Jun  1 06:57:10 2012  Eric Hodel  <drbrain@segment7.net>
16837
16838	* ext/dl/lib/dl/struct.rb (DL::CStructEntity#set_ctypes):  Refactored
16839	  #set_ctypes using newer ruby features to simplify its implementation.
16840	* test/dl/test_c_struct_entry.rb (class DL):  Test to verify
16841	  refactoring.
16842
16843Fri Jun  1 06:40:25 2012  Eric Hodel  <drbrain@segment7.net>
16844
16845	* object.c (Init_Object):  Restored Kernel documentation based on
16846	  Pickaxe book documentation.  Patch by Zachary Scott.
16847	  [ruby-trunk - Feature #6521]
16848
16849Fri Jun  1 06:29:42 2012  Eric Hodel  <drbrain@segment7.net>
16850
16851	* object.c (rb_equal):  Let Object be a link in #=== documentation.
16852	  Patch by Zachary Scott.  [ruby-trunk - Feature #6518]
16853
16854Thu May 31 09:27:06 2012  Eric Hodel  <drbrain@segment7.net>
16855
16856	* ext/dl/lib/dl/struct.rb (DL::CStructEntity::size):  Refactored ::size
16857	  to remove unused variables and simplify using newer ruby features.
16858	* test/dl/test_c_struct_entry.rb:  Test to validate refactoring
16859
16860Thu May 31 08:40:34 2012  Eric Hodel  <drbrain@segment7.net>
16861
16862	* ext/dl/lib/dl/struct.rb (DL::CUnionEntity#set_ctypes):  Refactored
16863	  #set_types to reuse DL::CUnionEntity::size
16864	* test/dl/test_c_union_entity.rb:  Added test
16865
16866Thu May 31 08:20:14 2012  Eric Hodel  <drbrain@segment7.net>
16867
16868	* ext/dl/lib/dl/struct.rb (DL::CUnionEntity::size):  Fixed ::size to
16869	  return the size of the union.
16870	* test/dl/test_c_union_entity.rb:  Test for DL::CUnionEntity::size
16871
16872Thu May 31 07:45:43 2012  Eric Hodel  <drbrain@segment7.net>
16873
16874	* ext/dl:  Added documentation.  Patch by Vincent Batts.
16875	  [ruby-trunk - Bug #6496]
16876
16877Wed May 30 16:30:00 2012  Kenta Murata  <mrkn@cookpad.com>
16878
16879	* ext/bigdecimal/lib/bigdecimal/jacobian.rb,
16880	  ext/bigdecimal/lib/bigdecimal/newton.rb:
16881	  fix documentation comments.
16882	  Patch by alperakgun from github.com/shyouhei/ruby/pull/8
16883
16884Wed May 30 16:20:00 2012  Kenta Murata  <mrkn@cookpad.com>
16885
16886	* ext/bigdecimal/lib/bigdecimal/jacobian.rb (Jacobian#dfdxi):
16887	  fix jacobian to get stuck in an infinite loop when a solution is not
16888	  found due to forget to increment nRetry counter.
16889	  Patch by alperakgun from github.com/shyouhei/ruby/pull/8
16890
16891Wed May 30 10:58:31 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16892
16893	* time.c (utc_offset_arg): utc offset can be precision in seconds.
16894	  e.g. old Europe/Lisbon (c.f. [ruby-dev:40066])
16895
16896Wed May 30 06:20:29 2012  Eric Hodel  <drbrain@segment7.net>
16897
16898	* error.c (exc_set_backtrace):  Updated documentation to indicate
16899	  set_backtrace allows a string as well as an array of strings.
16900	  [ruby-trunk - Bug #6501]
16901
16902Tue May 29 17:28:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16903
16904	* strftime.c (rb_strftime_with_timespec): support GNU extension triple
16905	  colons modifier.  [EXPERIMENTAL]
16906
16907	* strftime.c (rb_strftime_with_timespec): check conversion with locale
16908	  modifier.
16909
16910	* strftime.c (rb_strftime_with_timespec): colons are valid only for
16911	  'z' and must come just before it.
16912
16913Mon May 28 16:56:55 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16914
16915	* lib/test/unit.rb (Test::Unit::Runner#_prepare_run): StatusLineOutput
16916	  needs job_status to be :replace.
16917
16918Mon May 28 13:35:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16919
16920	* common.mk (do-install-*): fix dependencies.  based on the patch by
16921	  nagachika at [ruby-dev:45683].  [Bug #6506]
16922
16923Mon May 28 12:03:04 2012  Narihiro Nakamura  <authornari@gmail.com>
16924
16925	* gc.c (obj_free): doesn't free a method table if it doesn't
16926	  exist. [ruby-dev:44436]
16927	* test/ruby/test_gc.rb (class TestGc): added the test case for
16928	  this issue.
16929
16930Sun May 27 23:37:48 2012  Koichi Sasada  <ko1@atdot.net>
16931
16932	* benchmark/bm_vm1_lvar_init.rb: added.
16933	  This benchmark measures a initialize time of non-used variable.
16934
16935	* benchmark/bm_vm1_lvar_set.rb: added.
16936	  This benchmark measures a local variables initialization time.
16937
16938	* benchmark/bm_vm2_bigarray.rb: added.
16939	  This benchmark mesures a big array literal creation time.
16940
16941	* benchmark/bm_vm2_bighash.rb: added.
16942	  This benchmark mesures a big hash literal creation time.
16943
16944	* benchmark/bm*: change notation "i=0" to "i = 0".
16945
16946Sun May 27 13:33:26 2012  Koichi Sasada  <ko1@atdot.net>
16947
16948	* benchmark/driver.rb: fix to continue benchmarks when
16949	  an error is occurred.
16950
16951Sun May 27 11:27:50 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16952
16953	* lib/test/unit.rb (Test::Unit::Runner#_prepare_run): fix operator
16954	  precedence, so that platform and TERM should be counted.
16955
16956Sun May 27 10:02:33 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16957
16958	* ext/date/date_strftime.c: allows %Ok and %Ol.
16959
16960Sun May 27 09:29:20 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16961
16962	* ext/date/date_core.c: modified doc.
16963
16964Sat May 26 19:04:34 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16965
16966	* ext/date/date_core.c: added description.
16967
16968Sat May 26 18:14:57 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16969
16970	* ext/date/date_strftime.c: reduced the code.
16971
16972Sat May 26 18:08:59 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16973
16974	* time.c: modified doc.
16975	* ext/date/date_core.c: ditto.
16976
16977Sat May 26 17:05:45 2012  Koichi Sasada  <ko1@atdot.net>
16978
16979	* vm.c (backtrace_*): change type of lev and n from size_t to int.
16980	  Also set type of rb_backtrace_t#backtrace_size to int.
16981	  A patch from nobu.
16982
16983	* vm_eval.c: ditto.
16984
16985Sat May 26 16:26:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16986
16987	* file.c (realpath_rec): UNC prefix does not end with path separator,
16988	  so new separator is needed after it.
16989
16990Sat May 26 15:29:22 2012  Koichi Sasada  <ko1@atdot.net>
16991
16992	* test/ruby/test_backtrace.rb (test_caller_lev):
16993	  decrease recursion size.
16994
16995Sat May 26 13:50:48 2012  Koichi Sasada  <ko1@atdot.net>
16996
16997	* NEWS: add Kernel#caller's second argument.
16998
16999Sat May 26 13:40:29 2012  Koichi Sasada  <ko1@atdot.net>
17000
17001	* vm.c (RubyVM::FrameInfo): add a class to access each frame
17002	  information.  You don't need to parse strings from caller().
17003	  FrameInfo has the following methods:
17004	    FrameInfo#name: method name, class name, etc with decorations.
17005	    FrameInfo#basename: name without decorations.
17006	    FrameInfo#line_no: line number.
17007	    FrameInfo#filename: file name.
17008	    FrameInfo#filepath: full filepath.
17009	    FrameInfo#iseq: iseq if it is iseq frame (defined by ruby script)
17010	    FrameInfo#to_s: return caller() method style string.
17011	  RubyVM::FrameInfo.caller(n, lev) returns array of FrameInfo objects.
17012	  The name "RubyVM::FrameInfo.caller" is long and ambiguous (it is
17013	  confusing with Kernel::caller() method), we need to change the name
17014	  before Ruby 2.0 release. Good names or comments are welcome.
17015
17016	* test/ruby/test_backtrace.rb: add a test for above change.
17017
17018Sat May 26 12:18:09 2012  Koichi Sasada  <ko1@atdot.net>
17019
17020	* vm.c (frame_info_to_str): add `break'.
17021
17022	* vm.c (backtrace_object): remove lev and n parameter.
17023	  backtrace_object always returns all of backtrace information.
17024
17025	* vm.c (rb_backtrace_to_str_ary): fix to use backtrace_object().
17026	  This change improve performance of caller(lev, n).
17027
17028	* benchmark/bm_vm3_backtrace.rb: added to check above improvement.
17029	  FYI: measurement on my laptop, 1.9.3p229 needs 5.125 sec,
17030	  and current trunk only needs 0.299sec.
17031
17032Sat May 26 11:05:09 2012  Koichi Sasada  <ko1@atdot.net>
17033
17034	* vm.c (rb_frame_info_t): keep previous ISEQ frame info for CFUNC
17035	  frame info.  And fix to cache a calculated line_no of ISEQ frame
17036	  info.
17037
17038Sat May 26 09:54:53 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
17039
17040	* ext/openssl/ossl_ssl.c: Allow disabling client-side renegotiation.
17041	* test/openssl/test_ssl.rb: Simple tests for this.
17042
17043	  Client-side renegotiation is still considered problematic, even
17044	  when used in the context of secure renegotiation (RI, RFC 5746).
17045	  The changes allow users to either completely disable client
17046	  renegotiation on the server, or to specify a maximum number of
17047	  handshakes allowed in total. The number of total handshakes is
17048	  counted in a callback set as SSL_set_info_callback. If the
17049	  maximum number of handshakes is exceeded an error will be raised
17050	  We do not support renegotiation in the OpenSSL extension, therefore
17051	  this feature can only be tested externally.
17052	  The feature is opt-in, the default setting will be to allow
17053	  unlimited client renegotiation, as was the case before.
17054
17055Fri May 25 23:38:58 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
17056
17057	* test/openssl/test_ssl.rb: Clarify the intention of errors to be
17058	  expected. Two errors are possible when connection is refused due
17059	  to a protocol version that was explicitly disallowed,
17060	  OpenSSL::SSL::SSLError or Errno::ECONNRESET, depending on the
17061	  OpenSSL version in use.
17062
17063Fri May 25 22:19:40 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
17064
17065	* ext/openssl/ossl_ssl.c: Revert r35583
17066	* test/openssl/test_ssl.rb: Handle ECONNRESET in code instead to avoid
17067	  the test failing in Ruby CI [1]
17068
17069	[1] http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20120507T190102Z.log.html.gz#test-all
17070
17071Fri May 25 19:51:36 2012  Koichi Sasada  <ko1@atdot.net>
17072
17073	* vm_eval.c (rb_f_caller): caller() method accepts second optional
17074	  argument `n' which specify how many frames should return.
17075	  For example, `caller(0, 1)' returns only one frame information
17076	  which calls caller() method.  If there are less than n frame
17077	  information, then all frame information are returned.  If n is 0,
17078	  then always return [].
17079	  This fix is part of [ruby-dev:42345] [Ruby 1.9-Feature#3917].
17080	  However, performance and features are not enough.
17081	  RDoc is also not available.
17082
17083	* test/ruby/test_backtrace.rb: add a test for above.
17084
17085Fri May 25 17:05:07 2012  Koichi Sasada  <ko1@atdot.net>
17086
17087	* vm.c (oldbt_init, vm_backtrace_str_ary): arg->data should
17088	  be initialized before calling `backtrace_each()'.
17089
17090Fri May 25 16:11:27 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
17091
17092	* trunk/ext/-test-/printf/printf.c: change function names because of
17093	  conflict with msvcrt.  fixed build error of mswin.
17094
17095Fri May 25 10:52:52 2012  Koichi Sasada  <ko1@atdot.net>
17096
17097	* vm.c: refactoring backtrace related functions.
17098	  (1) unify similar functions (rb_backtrace_each() and
17099	      backtrace_object()).  backtrace_each() is a unified function.
17100	      variation:
17101	      a) backtrace_object(): create backtrace object.
17102	      b) vm_backtrace_str_ary(): create bt as an array of string.
17103	      c) vm_backtrace_print(): print backtrace to specified file.
17104	      d) rb_backtrace_print_as_bugreport(): print backtrace on
17105	                                            bugreport style.
17106	  (2) remove rb_backtrace_each().  Use backtrace_each() instead.
17107	  (3) change the type of lev parameter to size_t.
17108	      a) lev == 0 means current frame (exception, etc use it).
17109	      b) lev == 1 means upper frame (caller(0) use it).
17110
17111	* vm_core.h, vm_dump.c, vm_eval.c: ditto.
17112
17113	* vm.c (backtrace_object(), vm_backtrace_str_ary()): fix to return a
17114	  correct size of caller(lev) array.
17115	  Let n be a "caller(0).size" then ln as caller(lev).size should be
17116	  (n - lev).  However, the previous implementation returns a wrong
17117	  size array (ln > n - lev).  [ruby-dev:45673]
17118
17119	* test/ruby/test_backtrace.rb: add tests for backtrace.
17120
17121Fri May 25 08:51:39 2012  Eric Hodel  <drbrain@segment7.net>
17122
17123	* enum.c (enum_count):  Enumerable#count no longer uses #size when
17124	  counting elements.  Patch by Nobuhiro IMAI.  [ruby-trunk - Bug #6473]
17125
17126Fri May 25 01:15:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17127
17128	* sprintf.c (ruby__sfvextra): [EXPERIMENTAL] use inspect instead of
17129	  to_s if plus flag is given.
17130
17131	* vsnprintf.c (BSD_vfprintf): pass sign flag.
17132
17133Fri May 25 00:37:22 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17134
17135	* test/rubygems/test_gem_indexer.rb (setup, teardown): save @tempdir
17136	  to remove it properly.  [Bug #5348]
17137
17138Thu May 24 23:36:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17139
17140	* vsnprintf.c (BSD_vfprintf): [EXPERIMENTAL] object representation in
17141	  rb_enc_vsprintf(). [Feature #5896]
17142
17143Thu May 24 15:33:01 2012  Koichi Sasada  <ko1@atdot.net>
17144
17145	* vm_method.c (rb_method_defined_by): removed.
17146	  nobu pointed out that rb_method_basic_definition_p() is enough
17147	  for last commit.
17148
17149	* error.c, eval_error.c: change for above.
17150
17151Thu May 24 14:30:13 2012  Koichi Sasada  <ko1@atdot.net>
17152
17153	* vm.c: add RubyVM::Backtrace object (btobj).
17154	  Backtrace information contains an array consists of location
17155	  information for each frames by string.
17156	  RubyVM::Backtrace object is lightweight backtrace information,
17157	  which contains complete information to generate traditional style
17158	  backtrace (an array of strings) with faster generation.
17159	  If someone accesses to backtrace information via
17160	  Exception#backtrace, then convert a RubyVM::Backtrace object to
17161	  traditional style backtrace.
17162	  This change causes incompatibility on marshal dumped binary
17163	  of Exception.  If you have any trouble on it, please tell us
17164	  before Ruby 2.0 release.
17165	  Note that RubyVM::Backtrace object should not expose Ruby level.
17166
17167	* error.c, eval.c, vm_eval.c: ditto.
17168
17169	* internal.h: ditto.
17170
17171	* eval_error.c: fix to skip "set_backtrace" method invocation in
17172	  creating an exception object if it call a normal set_backtrace
17173	  method (defined by core).
17174
17175	* test/ruby/test_settracefunc.rb: fix for above change.
17176
17177	* vm_method.c (rb_method_defined_by): added.  This function
17178	  checks that the given object responds with the given method
17179	  by the given cfunc.
17180
17181	* benchmark/bm_vm2_raise1.rb, benchmark/bm_vm2_raise2.rb:
17182	  add to measure exception creation speed. raise1 create
17183	  exception objects from shallow stack frame.  raise2 create
17184	  exception objects from deep stack frame.
17185
17186Thu May 24 12:07:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17187
17188	* io.c (io_strip_bom): check EOF.  [Bug #6487][ruby-core:45203]
17189
17190Wed May 23 22:06:14 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17191
17192	* lib/net/http/header.rb (Net::HTTPHeader#range): fix broken parser of
17193	  HTTP Range request. Old one can't parse invalid specs and multiple
17194	  specs correctly.
17195
17196Wed May 23 10:18:54 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
17197
17198	* win32/win32.c (finish_overlapped_socket, overlapped_socket_io):
17199	  replace ECONNABORTED to EPIPE in send, sendto and sendmsg to improve
17200	  BSD socket compatibility.  this change removes a failure on the test
17201	  of net/ftp.
17202
17203Wed May 23 05:35:58 2012  Eric Hodel  <drbrain@segment7.net>
17204
17205	* lib/net/http.rb:  Broke up Net::HTTP into individual files.
17206	  [ruby-trunk - Feature #6435]
17207	* lib/net/http/backward.rb:  ditto.
17208	* lib/net/http/response.rb:  ditto.
17209	* lib/net/http/exceptions.rb:  ditto.
17210	* lib/net/http/responses.rb:  ditto.
17211	* lib/net/http/generic_request.rb:  ditto.
17212	* lib/net/http/header.rb:  ditto.
17213	* lib/net/http/request.rb:  ditto.
17214	* lib/net/http/proxy_delta.rb:  ditto.
17215	* lib/net/http/requests.rb:  ditto.
17216
17217Wed May 23 05:15:11 2012  Eric Hodel  <drbrain@segment7.net>
17218
17219	* class.c (rb_mod_init_copy):  Clear the cached inspect string of a
17220	  dup'd anonymous module or class.  [ruby-trunk - Bug #6454]
17221	* test/ruby/test_module.rb (class TestModule):  ditto
17222
17223Tue May 22 16:49:15 2012  Koichi Sasada  <ko1@atdot.net>
17224
17225	* vm_core.h: add a data type rb_location_t to store iseq location
17226	  information.
17227	  rb_location_t#filename, filepath, name and line_no was moved from
17228	  rb_iseq_t.  rb_location_t#basename is a new field which is
17229	  similar to `name' field without any decoration.
17230	  `name' field contains some decoration such as `block in foo'.
17231	  `basename' only contains `foo'.
17232	  rb_iseq_t contains memory object of rb_location_t.
17233
17234	* iseq.c: setup rb_location_t for each rb_iseq_t memory objects.
17235
17236	* compile.c, proc.c, vm.c, vm_dump.c, vm_eval.c, vm_insnhelper.c,
17237	  vm_method.c: support about it.
17238
17239Tue May 22 00:45:05 2012  Yusuke Endoh  <mame@tsg.ne.jp>
17240
17241	* struct.c (rb_struct_members): Refactoring.  As Struct#members had
17242	  returned an array of String, the old code was needed to convert
17243	  Symbols to Strings.  But it is almost unnecessary because the
17244	  method now returns an array of Symbols.  A patch by Masaki
17245	  Matsushita <glass.saga at gmail dot com>  [Feature #6218]
17246	  [ruby-dev:45451]
17247
17248Mon May 21 19:20:25 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17249
17250	* lib/net/ftp.rb (Net::FTP#retrbinary): close only if conn is not nil
17251	  because transfercmd may fail and return nil.
17252
17253	* lib/net/ftp.rb (Net::FTP#retrlines): ditto.
17254
17255Mon May 21 15:10:28 2012  Akinori MUSHA  <knu@iDaemons.org>
17256
17257	* ext/syslog/syslog.c: Classify constants and macros into several
17258	  sub-modules. (Syslog::Priority, Syslog::Level, Syslog::Option
17259	  and Syslog::Macros)
17260
17261	* ext/syslog/syslog.c (mSyslog_inspect): Use rb_sprintf().
17262
17263	* ext/syslog/syslog.c (mSyslog_inspect): Make sure self is a
17264	  module before calling rb_class2name().
17265
17266Mon May 21 12:44:11 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
17267
17268	* .travis.yml (install): It seems tcl/tk is skipped in Travis
17269	  CI. Trying to fix the situation.
17270
17271Mon May 21 12:11:25 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17272
17273	* enc/depend (ENCOBJS): add dependencies.
17274
17275	* enc/make_encmake.rb (target_encodings): extract dependencies.
17276
17277Mon May 21 11:26:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17278
17279	* lib/net/ftp.rb (Net::FTP#transfercmd): rescue shutdown.
17280
17281Sun May 20 23:00:11 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17282
17283	* ext/extmk.rb (extmake): reopen $stdout to NULL, since setting
17284	  $stdout cannot affect child processes.
17285
17286Sun May 20 21:36:39 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17287
17288	* enc/shift_jis.c (code_to_mbclen): return
17289	  ONIGERR_INVALID_CODE_POINT_VALUE if the code is invalid.
17290
17291	* string.c (tr_next): increment character until the code
17292	  is a valid character. [ruby-dev:45652] [Bug #6450]
17293
17294Sun May 20 12:25:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17295
17296	* Makefile.in (LIBRUBY_SO): link EXTSOLIBS too.
17297
17298	* ext/extmk.rb (mf.macro): use EXTSOLIBS instead of SOLIBS to get rid
17299	  of discard libraries needed by default.  [Bug #6462]
17300
17301Sat May 19 19:04:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17302
17303	* ext/extmk.rb (command_output): ENCOBJS is needed for all linked
17304	  ruby, if --disable-shared and --with-static-linked-ext.
17305
17306	* ext/extmk.rb (command_output): dmyext is needed as DLDOBJS if no
17307	  static linked extensions.
17308
17309	* Makefile.in, common.mk (PROGRAM): no extension libraries.
17310
17311	* common.mk (build-ext): pass macros for libruby.so.
17312
17313	* ext/extmk.rb (command_output): link extension libraries and encoding
17314	  libraries into libruby.so, not ruby executable.
17315
17316	* ext/extmk.rb (command_output): fold long macro lines.
17317
17318	* Makefile.in (LIBEXT): add macro.
17319
17320	* configure.in (ENCOBJS, EXTOBJS): use LIBEXT, not hardcoded suffix.
17321
17322	* Makefile.in (LIBRUBY_A): fix typo.  re-applying r35242.
17323
17324Sat May 19 04:46:53 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
17325
17326	* ext/openssl/extconf.rb: Use Logging::message instead of message.
17327	* ext/zlib/extconf.rb: ditto.
17328
17329Fri May 18 18:13:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17330
17331	* lib/mkmf.rb (MakeMakefile#configuration): keep space at end of
17332	  OUTFLAG and COUTFLAG.  [ruby-dev:45650]
17333
17334Fri May 18 17:39:42 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
17335
17336	* thread_pthread.c (rb_thread_create_timer_thread): Added error
17337	  check when failing fcntl(). [Bug #6147] [ruby-dev:45364]
17338
17339Fri May 18 17:41:00 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17340
17341	* ext/extmk.rb (extmake): link archives only, skip script only
17342	  extension libraries.
17343
17344Fri May 18 17:25:33 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
17345
17346	* cont.c: bump up fiber machine stack size when running on 64bit
17347	  arch. [Bug #6344] [ruby-dev:45554]
17348
17349Fri May 18 15:20:56 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17350
17351	* lib/uri/generic.rb (URI::Generic.build): duplicate args before adding
17352	  new items. (don't change arguments)
17353
17354	* lib/uri/generic.rb (URI::Generic.build): use URI::Generic::COMPONENT
17355	  if this method is called from URI::Generic.
17356
17357	* lib/uri/generic.rb (URI::Generic.build2): escape only if the item is
17358	  a String.
17359
17360	* lib/uri/generic.rb (URI::Generic.build2): use DEFAULT_PARSER because
17361	  it doesn't have parser method. [Bug #6420]
17362
17363Fri May 18 15:54:07 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
17364
17365	* ext/zlib/extconf.rb: Use an exception instead of bare puts.
17366
17367Fri May 18 15:53:05 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
17368
17369	* ext/psych/extconf.rb: Use an exception instead of bare abort.
17370
17371Fri May 18 15:51:32 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
17372
17373	* ext/fiddle/extconf.rb: Use an exception instead of bare abort.
17374
17375Fri May 18 15:49:35 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
17376
17377	* ext/readline/extconf.rb: Use an exception instead of bare exit.
17378
17379Fri May 18 15:38:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
17380
17381	* ext/ripper/extconf.rb: Use an exception instead of bare
17382	  Logging.message.
17383
17384Fri May 18 15:23:06 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
17385
17386	* ext/openssl/extconf.rb: Clarify a message when hit Apple
17387	  OpenSSL issue.
17388
17389Fri May 18 15:14:32 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
17390
17391	* ext/extmk.rb: Show a message when extconf.rb raised an exception.
17392	* ext/openssl/extconf.rb: Use exception raising instead of message
17393	  and/or abort. We want to display error message to console _and_
17394	  logging into mkmf.log.
17395
17396Fri May 18 06:14:07 2012  Eric Hodel  <drbrain@segment7.net>
17397
17398	* ext/syslog/lib/syslog/logger.rb:  Added Syslog::Logger which was
17399	  ported from the SyslogLogger gem.  [ruby-trunk - Feature #5096]
17400	* NEWS:  ditto.
17401	* test/syslog/test_syslog_logger.rb:  ditto.
17402
17403Fri May 18 01:28:21 2012  Aaron Patterson <aaron@tenderlovemaking.com>
17404
17405	* ext/psych/parser.c (transcode_string): fix encoding index names.
17406	  Thanks markizko for reporting.
17407
17408Thu May 17 23:03:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17409
17410	* configure.in: fix function name to be checked, to initialize
17411	  rb_thread_cond_t properly.
17412
17413	* thread_pthread.c (native_cond_initialize, native_cond_destroy):
17414	  fix macro name.
17415
17416Thu May 17 12:53:07 2012  Yuki Yugui Sonoda  <yugui@google.com>
17417
17418	* thread.c, thread_pthread.c: Moved pthread-specific preprocessor
17419	  hacks to thread_pthread.c
17420
17421Thu May 17 12:18:47 2012  Yuki Yugui Sonoda  <yugui@google.com>
17422
17423	* io.c: Fix a mistake on merging the patch in the previous commit.
17424
17425Thu May 17 11:33:07 2012  Yuki Yugui Sonoda  <yugui@google.com>
17426
17427	Imports Ruby's port to NativeClient (a.k.a NaCl).
17428	Patch by Google Inc. [ruby-core:45073].
17429
17430	* configure.in (RUBY_NACL): New M4 func to configure variables for
17431	  NaCl.
17432	  (RUBY_NACL_CHECK_PEPPER_TYPES): New M4 func to check the old names
17433	  of Pepper interface types.
17434	  (BTESTRUBY): New variable to specify which ruby should be run on
17435	  "make btest". NaCl can run the built binary by sel_ldr, but it need
17436	  rbconfig.rb. So this variable is distinguished from $MINIRUBY.
17437
17438	* thread_pthread.c: Disabled some features on NaCl.
17439
17440	* io.c: ditto.
17441
17442	* process.c: ditto.
17443
17444	* signal.c: ditto.
17445
17446	* file.c: ditto.
17447
17448	* missing/flock.c: ditto.
17449
17450	* nacl/pepper_main.c: An example implementation of Pepper application
17451	  that embeds Ruby.
17452
17453	* nacl/example.html: An example of web page that uses the Pepper
17454	  application.
17455
17456	* nacl/nacl-config.rb: Detects variants of NaCl SDK.
17457
17458	* nacl/GNUmakefile.in: Makefile template for NaCl specific build
17459	  process.
17460
17461	* nacl/package.rb: script for packaging a NaCl-Ruby embedding
17462	  application.
17463
17464	* nacl/reate_nmf.rb: Wrapper script of create_nmf.py
17465
17466	* dln.c (dln_load): Added a hack to call on NaCl.
17467
17468	* util.c (ruby_getcwd): Path to the current directory is not available
17469	  on NaCl.
17470
17471Thu May 17 10:54:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17472
17473	* ext/tk/extconf.rb: add -l options to $libs not $LDFLAGS,
17474	  to be passed to EXTLIBS in exts.mk.
17475
17476	* enc/encinit.c.erb: use %-lines to adjust indent in the generated file.
17477
17478	* lib/mkmf.rb (MakeMakefile#have_framework): combine -framework option
17479	  and its argument with an equal sign not to be separated in merge_libs.
17480
17481	* ext/tk/extconf.rb: ditto.
17482
17483	* ext/extmk.rb: EXTLDFLAGS also needs to be passed.
17484
17485Wed May 16 15:44:22 2012  Yuki Yugui Sonoda  <yugui@google.com>
17486
17487	* configure.in: Fix an unbalanced quote.
17488
17489Wed May 16 15:43:10 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
17490
17491	* ext/extmk.rb (exts.mk): use double quotes instead of single quotes
17492	  for commandline because it's not recognized as quotes on Windows.
17493
17494Wed May 16 15:15:55 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17495
17496	* configure.in (LD): enclose with single quotes but not double quotes
17497	  not to expand command substitution.
17498
17499Wed May 16 14:19:51 2012  Yuki Yugui Sonoda  <yugui@google.com>
17500
17501	Supports static linking of extensions and encodings again.
17502	Fixes --with-static-linked-ext.
17503
17504	Patch by Google Inc. [ruby-core:45073].
17505
17506	* Makefile.in (ENCOBJS, EXTOBJS): New variables to specify static
17507	  linked libraries. Also reintroduces extinit.o, introduces encinit.o
17508	  introduces encinit.o
17509
17510	* common.mk: Builds static libraries rather than shared objects if
17511	  specified.
17512
17513	* configure.in (LD): new substitution.
17514
17515	* enc/depend: Supports static linked libraries
17516	  (libencs, libenc, libtrans): New target.
17517
17518	* enc/encinit.c.erb: new template to generate the initialization of
17519	  statically linked encodings.
17520
17521	* enc/make_encmake.rb (--module): new flag to specify whether static
17522	  or dynamic.
17523
17524	* transcode_data.h (TRANS_INIT): New macro to get rid of the name
17525	  collision of encoding initializers and transcoder initializers.
17526
17527	* ext/extmk.rb: Fixes the behavior on $extstatic is true.
17528
17529	* lib/mkmf.rb (clean-static): new target to clean up static linked
17530	  libraries.
17531
17532	* ruby.c (process_options): New initializes statically linked
17533	  encodings here.
17534
17535Wed May 16 14:30:43 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
17536
17537	* io.c: fixed a merge mistake of r33878, reported by nobu via IRC.
17538
17539Wed May 16 06:59:41 2012  Tadayoshi Funaba  <tadf@dotrb.org>
17540
17541	* ext/date/date_strftime.c: should also be aware of flags on
17542	  complex specifier.
17543
17544Wed May 16 05:11:29 2012  Aaron Patterson <aaron@tenderlovemaking.com>
17545
17546	* ext/psych/lib/psych/visitors/to_ruby.rb: fix a bug with string
17547	  subclass dumping and loading.
17548
17549	* test/psych/test_array.rb: pertinent tests
17550
17551	* test/psych/test_string.rb: ditto
17552
17553Wed May 16 01:31:21 2012  Aaron Patterson <aaron@tenderlovemaking.com>
17554
17555	* ext/psych/lib/psych/visitors/to_ruby.rb: convert omap tagged maps to
17556	  Psych::Omap objects rather than hashes. [Bug #6425]
17557
17558	* test/psych/test_omap.rb: pertinent test.
17559
17560Wed May 16 01:15:45 2012  Aaron Patterson <aaron@tenderlovemaking.com>
17561
17562	* ext/psych/lib/psych/visitors/yaml_tree.rb: keep a reference to
17563	  custom coders so that GC does not impact dumped yaml reference ids.
17564
17565Tue May 15 23:59:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17566
17567	* lib/test/unit.rb (Test::Unit::Options#setup_options): add --color option.
17568
17569	* lib/test/unit.rb (Test::Unit::Runner#_prepare_run): defer color code
17570	  initialization to regard --color option.
17571
17572Mon May 14 16:28:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17573
17574	* parse.y (f_arglist): should reset lexical states after empty
17575	  argument list with no parenthesis as well as parenthesized list,
17576	  so that reserved name method definition work.  [ruby-dev:45626]
17577	  [Bug #6403]
17578
17579Mon May 14 00:14:24 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
17580
17581	* enumerator.c (lazy_take_func, lazy_take): multiple calls of
17582	  force/to_a method to Enumerator::Lazy#take should return same
17583	  results. [ruby-dev:45634] [Bug #6428]
17584
17585	* test/ruby/test_lazy_enumerator.rb (test_take_recycle): add test for
17586	  above.
17587
17588Sun May 13 23:38:31 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
17589
17590	* test/ruby/test_io.rb (test_flush_in_finalizer1): don't use IO.for_fd
17591	  to close IO objects. it create IO object with already closed fd, and
17592	  cause occasional Errno::EBADF in following tests. [ruby-core:45020]
17593	  [Bug #6228]
17594
17595Sun May 13 23:32:16 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
17596
17597	* test/ruby/test_io.rb (TestIO): revert r35631. it broke the intent of
17598	  test_flush_in_finalizer1.  [ruby-core:43951] [Bug #6228]
17599
17600Sun May 13 22:46:36 2012  Tanaka Akira  <akr@fsij.org>
17601
17602	* ext/etc/etc.c (passwd_ensure): move endpwent() call from
17603	  passwd_iterate to close /etc/passwd on exception.
17604	  (group_ensure): move endgrent() call from group_iterate to close
17605	  /etc/group on exception.
17606
17607Sun May 13 18:10:43 2012  Tadayoshi Funaba  <tadf@dotrb.org>
17608
17609	* ext/date/date_strftime.c: removed unused code and changed the style.
17610
17611Sun May 13 17:37:56 2012  Tadayoshi Funaba  <tadf@dotrb.org>
17612
17613	* ext/date/date_strftime.c: refactored.
17614
17615Sun May 13 06:40:12 2012  Luis Lavena  <luislavena@gmail.com>
17616
17617	* test/ruby/test_io.rb (class TestIO):  Disable GC during IO tests to
17618	  avoid file descriptors being GC'ed. Suggestion by Tomoyuki Chikanaga
17619	  [ruby-core:43951][Bug #6228]
17620
17621Sat May 12 07:00:16 2012  Eric Hodel  <drbrain@segment7.net>
17622
17623	* ext/sdbm/init.c:  Added documentation.  Patch by Justin Collins,
17624	  cleanup by Zachary Scott.  [ruby-trunk - #6410]
17625
17626Sat May 12 06:02:03 2012  Eric Hodel  <drbrain@segment7.net>
17627
17628	* lib/fileutils.rb (cp_r):  Fixed cp_r example.  Patch by TJ Koblentz
17629	  from pull request #114.  [ruby-trunk - Bug #6411]
17630
17631Sat May 12 05:23:06 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17632
17633	* thread.c (rb_threadptr_execute_interrupts_common):
17634	  test_signal_requiring of test/ruby/test_signal.rb fail if the sub
17635	  process is killed on waiting IO in lex_io_gets in rb_load_file in
17636	  rb_load_internal in require.
17637	  This is because
17638	  (1) the process receive the killing signal in
17639	      rb_thread_io_blocking_region in rb_read_internal in lex_io_gets.
17640	  (2) set th->errinfo as INT2FIX(TAG_FATAL) at
17641	      rb_threadptr_execute_interrupts_common.
17642	  (3) escape rb_load_file in rb_load_internal and jump to EXEC_TAG()
17643	      without set loaded as TRUE.
17644	  (4) call first rb_exc_raise(GET_THREAD()->errinfo); because loaded
17645	      is FALSE as above. this errinfo should be an exception object
17646	      but this is INT2FIX(TAG_FATAL).
17647	  Don't call first rb_exc_raise if GET_THREAD()->errinfo is Fixnum.
17648
17649Fri May 11 14:23:11 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17650
17651	* parse.y (primary): begin/end block should be isolated from outside.
17652	  [ruby-dev:45631][Bug #6419]
17653
17654Fri May 11 14:09:47 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17655
17656	* ext/bigdecimal/bigdecimal.c (PUSH): to prevent VALUE from GC,
17657	  must not cast it to unsigned long, which may be shorter than
17658	  VALUE, and the result can be mere garbage.
17659
17660Fri May 11 09:51:07 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17661
17662	* lib/test/unit.rb (Test::Unit::Runner#failed): no unnecessary
17663	  newlines if no reports to be displayed.
17664
17665Thu May 10 10:55:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17666
17667	* test/minitest/test_minitest_mock.rb: Correct requiring path to
17668	  metametameta.rb.
17669
17670	* test/minitest/test_minitest_unit.rb: Correct requiring path to
17671	  metametameta.rb.
17672
17673Thu May 10 10:18:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17674
17675	* parse.y (lex_state_name): returns name for lex_state_e, for debug
17676	  use.
17677
17678Wed May  9 16:36:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17679
17680	* lib/mkmf.rb (MakeMakefile#pkg_config): check if libs resulted from
17681	  pkg-config works actually.
17682
17683Wed May  9 16:01:38 2012  Shugo Maeda  <shugo@ruby-lang.org>
17684
17685	* lib/net/imap.rb (decode_utf7, encode_utf7): refactored by
17686	  Nobuyoshi Nakada, to use String#encode.
17687
17688Wed May  9 13:26:25 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17689
17690	* test/rubygems/test_gem_remote_fetcher.rb: skip OpenSSL dependent
17691	  tests if not available.
17692
17693Wed May  9 08:09:38 2012  Ryan Davis  <ryand-ruby@zenspider.com>
17694
17695	* lib/minitest/*: Imported minitest 3.0.0 (r7435)
17696	* test/minitest/*: ditto
17697	* test/rubygems/*: Imported fixes for buggy use of assert_match
17698	  and deprecated assert_block
17699	UNBUNCH YOUR PANTIES. THE TESTS DO NOT RUN CLEAN ON OSX.
17700
17701Wed May  9 06:28:59 2012  Eric Hodel  <drbrain@segment7.net>
17702
17703	* re.c (rb_reg_equal):  Removed incorrect example for Regexp#== with
17704	  "n" option.  [ruby-talk - Bug #6415]
17705
17706Wed May  9 06:23:33 2012  Tadayoshi Funaba  <tadf@dotrb.org>
17707
17708	* ext/date/date_core.c: reverted.
17709
17710Wed May  9 04:31:26 2012  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
17711
17712	* lib/rinda/ring.rb (lookup_ring_any): fix Rinda::RingFinger.primary
17713	  hungs forever. [ruby-talk:395364]
17714
17715Tue May  8 21:09:00 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
17716
17717	* include/ruby/win32.h (FD_SET): change function to macro.
17718	  To avoid buffer overflow when smaller FD_SETSIZE is used in ext
17719	  libraries.
17720
17721	* win32/win32.c (rb_w32_fdset): this function is not used anymore.
17722	  But we leave this for compatibility.
17723
17724	* win32/win32.c (rb_w32_select_with_thread): fix SEGV when smaller
17725	  FD_SETSIZE is used in ext libraries. Dereference of fd_set pointer
17726	  causes SEGV.
17727
17728	* test/-ext-/win32/test_fd_setsize.rb(TestFdSetSize): add tests for
17729	  above.
17730	* ext/-test-/win32/fd_setsize/depend: ditto.
17731	* ext/-test-/win32/fd_setsize/extconf.rb: ditto.
17732	* ext/-test-/win32/fd_setsize/fd_setsize.c: ditto.
17733
17734	  [ruby-core:44588] [Bug #6352]
17735
17736Tue May  8 20:44:46 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
17737
17738	* io.c (io_unread): fix IO#pos with mode 'r' bug on Windows.
17739	  If the end of reading buffer is CR, io_unread() needs to unread one
17740	  more byte.
17741	  [ruby-core:44874] [Bug #6401]
17742
17743	* test/ruby/test_io_m17n.rb (TestIO_M17N#test_pos_with_buffer_end_cr):
17744	  add a test for above.
17745
17746Tue May  8 13:38:17 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
17747
17748	* ext/date/date_core.c: improving introduction in Date/DateTime
17749	  documentation. patched by Daniel Kaufman via Github.
17750		https://github.com/ruby/ruby/pull/110
17751
17752Tue May  8 13:36:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17753
17754	* configure.in (POSTLINK): default to : command to get rid of flag
17755	  only command, since BSD make does not work with it.
17756
17757Tue May  8 13:35:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17758
17759	* lib/test/unit.rb (MiniTest#run_test): remove exact trace and get rid
17760	  of IndexError, which could caused by modified $@ sometimes.
17761
17762Tue May  8 11:21:27 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
17763
17764	* test/minitest/metametameta.rb (MetaMetaMetaTestCase#assert_report):
17765	  support drive letter on Windows.  yes, the original code is metameta.
17766
17767Tue May  8 08:54:48 2012  Eric Hodel  <drbrain@segment7.net>
17768
17769	* lib/abbrev.rb:  Fixed typo in abbrev pattern documentation.  Based on
17770	  patch by Mark Rushakoff.  [ruby-trunk - #6346]
17771
17772Tue May  8 07:44:18 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17773
17774	* ext/openssl/ossl_ssl.c (ossl_start_ssl): remove useless rb_sys_fail
17775	  before ossl_raise. this cause a test failure on Linux.
17776	 http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20120507T190102Z.log.html.gz
17777
17778Tue May  8 05:35:18 2012  Eric Hodel  <drbrain@segment7.net>
17779
17780	* object.c (Init_Object):  Added reference to variable.c where
17781	  public_constant and private_constant documentation lives.  [#6381]
17782
17783Tue May  8 04:47:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17784
17785	* lib/test/unit.rb (Test::Unit::Runner#output): prefer local output to
17786	  get rid of unexpected side effect in test/minitest/metametameta.rb.
17787
17788	* lib/test/unit.rb (MiniTest#run_test): show the running test in $0.
17789
17790	* lib/test/unit.rb (Test::Unit::StatusLineOutput): new class to output
17791	  in status line.
17792
17793	* test/testunit/test_hideskip.rb (TestHideSkip#test_hideskip):
17794	  MiniTest#puke now reports Skipped messages only if verbose mode.
17795
17796	* test/testunit/test_sorting.rb (TestTestUnitSorting#test_sorting):
17797	  ditto.
17798
17799	* lib/test/unit.rb (Test::Unit::Runner#puke): modify only result and
17800	  drop useless reports, not override entirely.
17801
17802	* bootstraptest/runner.rb (exec_test, show_progress): show rotators
17803	  and pass/fail counts.
17804
17805	* sample/test.rb (PROGRESS): refine output.
17806
17807Tue May  8 02:34:26 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17808
17809	* lib/minitest/unit.rb (assert_match): refix of r35563.
17810	  r35563 breaks the intention of the original change.
17811	 https://github.com/seattlerb/minitest/commit/68858105b2eb11c85105ffac5f32b662c59397f3
17812	* lib/minitest/unit.rb (refute_match): ditto.
17813
17814Mon May  7 21:19:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17815
17816	* ext/json: Merge JSON 1.7.1.
17817	 https://github.com/flori/json/commit/e5b9a9465c1159fae533bca320d950b772bcb4ac
17818
17819Mon May  7 22:54:22 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
17820
17821	* ext/openssl/ossl_ssl.c: add support for option flags
17822	  OpenSSL::SSL::OP_NO_TLSv1_1
17823	  OpenSSL::SSL::OP_NO_TLSv1_2
17824	  to allow blocking specific TLS versions. Thanks to Justin Guyett for
17825	  pointing this out to me.
17826	* test/openssl/test_ssl.rb: add tests to assert correct behavior when
17827	  blocking certain versions of TLS/SSL both on server and client side.
17828	  Also refactored tests to reduce boilerplate code a little.
17829	* test/openssl/utils.rb: rescue Errno::ECONNRESET for tests where
17830	  client rejects the connection because a forbidden protocol version
17831	  was used.
17832
17833Mon May  7 20:14:15 2012  Tanaka Akira  <akr@fsij.org>
17834
17835	* lib/securerandom.rb (random_bytes): call to_int method for the
17836	  argument at first.
17837
17838Mon May  7 17:54:12 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17839
17840	* lib/minitest/unit.rb (assert_match): replace matcher only if both
17841	  matcher and obj are String. fix r35541. [Bug #6405]
17842	  DON'T COMMIT IF YOU CAN'T RUN TEST.
17843	  FIX AS SOON AS POSSIBLE YOU BREAK TESTS.
17844	  patched by ayumin.
17845	  https://github.com/seattlerb/minitest/pull/124
17846
17847	* lib/minitest/unit.rb (refute_match): ditto.
17848
17849Mon May  7 13:41:00 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17850
17851	* Makefile.in (PROGRAM), configure.in (POSTLINK): sign built program
17852	  using RUBY_CODESIGN identity.
17853
17854Mon May  7 13:03:55 2012  Shugo Maeda  <shugo@ruby-lang.org>
17855
17856	* lib/net/imap.rb (body_type_attachment): parse body type
17857	  "ATTACHMENT". [ruby-core:44849] [Bug #6397]
17858
17859Mon May  7 10:49:36 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17860
17861	* ext/bigdecimal/bigdecimal.c (Init_bigdecimal): define IDs before
17862	  they are used. [ruby-core:44900] [Bug #6406]
17863
17864Mon May  7 10:27:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17865
17866	* ext/digest/rmd160/rmd160.c (RMD160_Update): fix for huge data.
17867
17868Mon May  7 10:23:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17869
17870	* test/fileutils/fileasserts.rb: use assert_equal, assert_match, and so on.
17871
17872	* test/ruby/enc/test_utf16.rb, test/ruby/enc/test_utf32.rb,
17873	  test/ruby/test_io_m17n.rb (assert_str_equal): ditto.
17874
17875	* test/rubygems/test_gem_remote_fetcher.rb
17876	  (assert_data_from_{server,proxy}): ditto.
17877
17878	* test/test_pstore.rb (test_thread_safe): ditto.
17879
17880Mon May  7 10:16:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17881
17882	* test/rubygems/test_gem_installer.rb (TestGemInstaller#test_dir): fix
17883	  argument order.  expected value must come first.
17884
17885Mon May  7 09:14:11 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
17886
17887	* ext/openssl/ossl_ssl.c: support TLSv1.1 & TLSv1.2. Add
17888	  SSLContext#version to inspect the version that was negotiated for
17889	  a given connection.
17890	* ext/openssl/extconf.rb: detect TLS 1.1 & 1.2 support.
17891	* test/openssl/test_ssl.rb: add tests for TLS 1.1 & 1.2 given they
17892	  are supported by the native OpenSSL being used.
17893
17894Sun May  6 21:34:29 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17895
17896	* io.c (io_encoding_set): suppress warnings. [ruby-dev:45627]
17897	  this tmp1 is not required after r35538.
17898
17899	* addr2line.c: suppress warnings.
17900
17901Sun May  6 18:39:39 2012  Koichi Sasada  <ko1@atdot.net>
17902
17903	* compile.c (iseq_compile_each): remove unused variable `size'.
17904
17905Sun May  6 14:50:03 2012  Tanaka Akira  <akr@fsij.org>
17906
17907	* lib/securerandom.rb: show actual read length in an error message.
17908
17909Sat May  5 06:43:10 2012  Ryan Davis  <ryand-ruby@zenspider.com>
17910
17911	* lib/minitest/*: Imported minitest 2.12.1 (r7323)
17912	* test/minitest/*: ditto
17913
17914Sat May  5 01:47:33 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17915
17916	* test/zlib/test_zlib.rb (test_inflate): add a test for Zlib.inflate.
17917	  patched by headius (Charles Nutter). [ruby-core:44859] [Bug #6398]
17918
17919	* test/zlib/test_zlib.rb (test_deflate): add a test for Zlib.deflate.
17920
17921Sat May  5 00:53:55 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17922
17923	* io.c (parse_mode_enc): remove warnings 'Ignoring internal encoding'.
17924	  [ruby-core:44455] [Bug #6324]
17925
17926	* io.c (io_encoding_set): ditto.
17927
17928Fri May  4 07:19:02 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17929
17930	* lib/rdoc/parser.rb (RDoc.binary?): fix wrong regexp.
17931	  [ruby-core:44798] [Bug #6393]
17932
17933Fri May  4 01:33:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17934
17935	* lib/rdoc/parser.rb (RDoc.alias_extension): a real file is irrelevant
17936	  to aliasing.  [ruby-core:44796][Bug #6392]
17937
17938	* lib/rdoc/parser.rb (RDoc.zip?): non-existent file will not be a zip
17939	  file.
17940
17941	* lib/rdoc/parser.rb (RDoc.can_parse_by_name): accept aliased
17942	  extension file names.
17943
17944	* lib/rdoc/parser.rb (RDoc.binary?): binary read data may have
17945	  incomplete multibyte sequence.  [ruby-core:44798][Bug #6393]
17946
17947Wed May  2 23:55:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17948
17949	* lib/test/unit.rb (Test::Unit::RequireFiles#non_options): expand
17950	  real path to get rid of loading same files via symlinks.
17951
17952Wed May  2 23:26:04 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
17953
17954	* cont.c (rb_fiber_m_transfer): improve sample code in Fiber#transfer
17955	  documentation. emphasize the difference between transfer and resume.
17956
17957Wed May  2 23:21:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17958
17959	* parse.y (parser_yylex): allow spaces between lambda arrow and
17960	  parenthesis.  [ruby-dev:45605][Feature #6390]
17961
17962Wed May  2 19:06:30 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
17963
17964	* cont.c (rb_fiber_m_transfer): Improved Fiber documentation.
17965	  patched by Anuj Dutta. [ruby-core:44540][Bug #6343]
17966
17967Wed May  2 13:06:37 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17968
17969	* README, README.ja: reformatted using rdoc markup.  based on the
17970	  patches by zzak (Zachary Scott) in [Feature #6388].
17971
17972	* README, README.ja: updated the author's mail address.
17973
17974Wed May  2 09:46:09 2012  Kouji Takao  <kouji@takao7.net>
17975
17976	* ext/readline/readline.c (Readline.special_prefixes=)
17977	  (Readline.special_prefixes): new function. An original patch was
17978	  created by nagachika. [Feature #5784]
17979
17980Tue May  1 22:18:45 2012  Kouji Takao  <kouji@takao7.net>
17981
17982	* ext/readline/readline.c (Readline.pre_input_hook)
17983	  (Readline.insert_text, Readline.redisplay): new function. An
17984	  original patch was created by nagachika. [Feature #5785]
17985
17986Tue May  1 15:46:48 2012  Koichi Sasada  <ko1@atdot.net>
17987
17988	* common.mk: "$(Q)-..." doesn't work on nmake.
17989
17990Tue May  1 15:32:10 2012  Koichi Sasada  <ko1@atdot.net>
17991
17992	* common.mk: replace '@' prefix to '$(Q)' to control build
17993	  process outputs.
17994
17995Tue May  1 14:17:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17996
17997	* ext/openssl/deprecation.rb (OpenSSL.check_func): check if header is
17998	  available for macro compatibility.
17999
18000Tue May  1 10:53:54 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
18001
18002	* test/ruby/test_settracefunc.rb: ignore traces from another threads
18003	  because Kernel.set_trace_func affects other threads.
18004
18005Tue May  1 06:04:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18006
18007	* ext/digest/sha2/sha2.c (REVERSE32): explicitly cast since unsigned
18008	  long may be larger than sha2_word32.
18009
18010	* ext/digest/sha2/sha2.c (SHA{256,512,384}_{Final,End}): should clear
18011	  whole content, not pointer size.
18012
18013	* ext/digest/*/extconf.rb: use pkg_config to use same library with
18014	  openssl.  [ruby-core:44755][Bug #6379]
18015
18016	* ext/openssl/deprecation.rb: extract check for broken Apple OpenSSL.
18017
18018Tue May  1 05:02:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18019
18020	* configure.in (optflags): disable unsafe optimizations.
18021	  [ruby-core:44679][Bug #6370]
18022
18023Mon Apr 30 23:36:49 2012  Tanaka Akira  <akr@fsij.org>
18024
18025	* lib/fileutils.rb (copy_metadata): use File.lchown and File.lchmod to
18026	  update meta data of symlinks.
18027
18028Mon Apr 30 23:05:53 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18029
18030	* test/ruby/test_continuation.rb (tracing_with_set_trace_func): don't
18031	  call Continuation from other threads. [ruby-dev:45596] [Bug #6382]
18032
18033Mon Apr 30 20:10:04 2012  Tanaka Akira  <akr@fsij.org>
18034
18035	* ext/zlib/extconf.rb: detect z_crc_t type which will be defined
18036	  since zlib-1.2.7.
18037
18038	* ext/zlib/zlib.c (rb_zlib_crc_table): use z_crc_t if available.
18039
18040Mon Apr 30 09:02:15 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
18041
18042	* ext/openssl/lib/openssl/ssl.rb: add hostname to "hostname does not
18043	  match server cert." error. patched by Wes Morgan via Github.
18044	  https://github.com/ruby/ruby/pull/122
18045
18046Mon Apr 30 04:43:53 2012  Aaron Patterson <aaron@tenderlovemaking.com>
18047
18048	* ext/psych/lib/psych/json/yaml_events.rb: implicit styles should not
18049	  be changeable for JSON events.
18050
18051Sun Apr 29 06:12:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18052
18053	* parse.y (assoc, parser_yylex): add syntax to splat keyword hash.
18054	  [ruby-core:44591][Feature #6353]
18055
18056	* compile.c (compile_array_): generate keyword splat insns.
18057
18058	* vm.c (m_core_hash_merge_kwd): merge keyword hash into intermediate
18059	  hash.  leftward argument is prior currently.
18060
18061Fri Apr 27 12:34:23 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
18062
18063	* ext/dl/cfunc.c (rb_dlcfunc_call): should convert a Bignum value to
18064	  unsigned long long on Win64.
18065	  [ruby-core:44636][Bug #6364] reported by raylinn@gmail.com (ray linn)
18066
18067Fri Apr 27 10:58:17 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18068
18069	* test/readline/test_readline.rb (setup): avoid affected by user's
18070	  inputrc file.  [ruby-dev:45584][Bug #6357]
18071
18072Fri Apr 27 01:45:05 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18073
18074	* thread.c (rb_threadptr_execute_interrupts_common):
18075	  handle timer_interrupt only on the first loop for the case to avoid
18076	  the infinite loop like following case:
18077	  * there is 2 Ruby threads (3 pthreads)
18078	  (1) main thread is waiting at gvl_yield:112 (native_cond_wait)
18079	  (2) sub thread works
18080	  (3) sub thread waits at gvl_yield:133 (native_mutex_unlock)
18081	  (4) main thread works
18082	  (5) main thread goes to gvl_acquire_common
18083	  (6) main thread call rb_wakeup_timer_thread
18084	  (7) timer thread set timer interrupt to the main thread
18085	  (8) main thread works
18086	  (9) main thread waits at gvl_acquire_common:64 (native_cond_wait)
18087	  (10) sub tread works
18088	  (11) set sub thread as the current thread
18089	  (12) run Ruby thread
18090	  (13) ...100ms
18091	  (14) sub thread goes to rb_threadptr_execute_interrupts_common
18092	  (15) sub thread call rb_thread_schedule_limits
18093	  (16) sub thread call gvl_release_common
18094	  (17) sub threads waits at gvl_yield:121 (native_cond_wait)
18095	  (18) main threads works
18096	  (19) main thread back to gvl_yield
18097	  (20) set main thread as the current thread
18098	  (21) main thread call gvl_yield
18099	  (22) main thread waits at gvl_yield:112 (native_cond_wait)
18100	  As described above, the main thread can't escape from
18101	  rb_threadptr_execute_interrupts_common.
18102	  See extended memo: http://bugs.ruby-lang.org/projects/ruby-trunk/wiki/R35480_ExtendedMemo
18103
18104Fri Apr 27 07:15:07 2012  Tanaka Akira  <akr@fsij.org>
18105
18106	* ext/socket/socket.c (sock_s_pack_sockaddr_un): support the longest
18107	  path in sockaddr_un, really.
18108	  reported by nagachika.
18109	 http://d.hatena.ne.jp/nagachika/20120426/ruby_trunk_changes_35474_35476
18110
18111Thu Apr 26 12:28:06 2012  Tanaka Akira  <akr@fsij.org>
18112
18113	* ext/socket/raddrinfo.c (init_unix_addrinfo): support the longest
18114	  path in sockaddr_un.
18115	  (inspect_sockaddr): ditto.
18116	  (addrinfo_mdump): ditto.
18117	  (addrinfo_mload): ditto.
18118	  (rsock_unixpath_str): new function.
18119	  (rsock_unixpath): removed.
18120	  (rsock_unixaddr): use rsock_unixpath_str.
18121
18122	* ext/socket/socket.c (sock_s_pack_sockaddr_un): support the longest
18123	  path in sockaddr_un.
18124	  (sock_s_unpack_sockaddr_un): ditto.
18125	  (sock_s_gethostbyaddr): unused variable removed.
18126
18127	* ext/socket/unixsocket.c (rsock_init_unixsock): support the longest
18128	  path in sockaddr_un.
18129
18130	* ext/socket/rubysocket.h (rsock_unixpath_str): declared.
18131	  (rsock_unixpath): removed.
18132
18133	* test/socket/test_unix.rb: comment out test_nul because abstract unix
18134	  sockets may contain NULs.
18135
18136Thu Apr 26 01:32:33 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18137
18138	* test/optparse/test_summary.rb (test_summary_containing_space): add
18139	  test for r35467. OptionParser#to_a shouldn't split banner by spaces.
18140
18141Wed Apr 25 23:02:46 2012  Tanaka Akira  <akr@fsij.org>
18142
18143	* ext/socket/raddrinfo.c (init_unix_addrinfo): refine error message
18144	  format.
18145	  (addrinfo_mload): show more information on "too long AF_UNIX path"
18146	  error.
18147	  (addrinfo_unix_path): ditto for "too short AF_UNIX address" and
18148	  "too long AF_UNIX address" error.
18149
18150Wed Apr 25 05:46:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18151
18152	* lib/optparse.rb (OptionParser#to_a): split for each lines.
18153	  [ruby-dev:45568][Bug #6348]
18154
18155Tue Apr 24 21:57:53 2012  Tanaka Akira  <akr@fsij.org>
18156
18157	* ext/socket/raddrinfo.c (init_unix_addrinfo): show actual path length
18158	  when it is too long for Unix socket.
18159
18160	* ext/socket/unixsocket.c (rsock_init_unixsock): ditto.
18161
18162	* ext/socket/socket.c (sock_s_pack_sockaddr_un): ditto.
18163
18164Tue Apr 24 21:43:58 2012  Yusuke Endoh  <mame@tsg.ne.jp>
18165
18166	* lib/net/smtp.rb (check_continue): raise an error with an explanatory
18167	  message.  [ruby-core:35854] [Feature #4598]
18168
18169Tue Apr 24 21:11:31 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18170
18171	* lib/optparse.rb (OptionParser#to_a): should split by end-of-line,
18172	  and MUST TEST IT, MUST RUN THE TEST, MUST VERIFY BEFORE BACKPORT.
18173	  [ruby-dev:45568][Bug #6348]
18174
18175Tue Apr 24 19:59:31 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
18176
18177	* enc/euc_jp.c: added EUC-JP-2004 and its alias EUC-JISX0213.
18178	  [ruby-dev:45571] [Feature #6349]
18179	  Requested by Kyouhei Yanagita <yanagi@shakenbu.org>.
18180
18181	* enc/trans/japanese_euc.trans: ditto.
18182
18183	* enc/trans/JIS/JISX0213-[12]%UCS@{BMP,SIP}.src: JIS X 0213:2004 ->
18184	  Unicode mapping table from NetBSD.
18185
18186	* enc/trans/JIS/UCS@{BMP,SIP}%JISX0213-[12].src: Unicode -> JIS X
18187	  0213:2004 mapping table from NetBSD.
18188
18189	* tool/transcode-tblgen.rb: added SIP support.
18190
18191	* test/ruby/test_transcode.rb: tests of above changes.
18192
18193Tue Apr 24 18:12:13 2012  Koichi Sasada  <ko1@atdot.net>
18194
18195	* compile.c: fix to output warning when the same literals
18196	  are available as a condition of same case clause.
18197	  And remove information ('#n') because we can find duplicated
18198	  condition with explicit line numbers.
18199	  [ruby-core:38343] [Ruby 1.9 - Bug #5068]
18200
18201	* test/ruby/test_syntax.rb: add a test for above.
18202
18203Tue Apr 24 17:03:51 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
18204
18205	* win32/win32.c (waitpid): need to check the return value of
18206	  FindChildSlotByHandle() before passing poll_child_status().
18207	  this fixed a SEGV in test-all.  reported by ko1 via IRC.
18208
18209Tue Apr 24 16:04:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18210
18211	* parse.y (parser_yylex): EXPR_BEG by keywords is a start point of
18212	  commands.  [ruby-dev:45563][Bug #6347]
18213
18214	* parse.y (superclass): ditto for superclass.
18215
18216	* parse.y (parser_parse_string, parser_here_document): ditto for
18217	  string interpolation.
18218
18219	* parse.y (parser_yylex): ditto for singleton class.
18220
18221Tue Apr 24 15:51:41 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18222
18223	* lib/optparse.rb (OptionParser#to_a): should split by end-of-line
18224	  [ruby-dev:45568][Bug #6348]
18225
18226	* lib/optparse.rb (OptionParser#to_a): String#to_a is no longer
18227	  defined.  [ruby-dev:45568][Bug #6348]
18228
18229Tue Apr 24 12:46:50 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
18230
18231	* hash.c, object.c, struct.c, lib/ostruct.rb: add to_h methods.
18232	  [Feature #6276]
18233
18234Tue Apr 24 10:54:34 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
18235
18236	* test/drb/drbtest.rb ({DRbCore,DRbAry}#teardown): cannot pass SIGTERM
18237	  to another process on Windows, so use SIGINT instead.
18238
18239Tue Apr 24 00:25:39 2012  Yusuke Endoh  <mame@tsg.ne.jp>
18240
18241	* thread.c (rb_check_deadlock): refine an error message of deadlock
18242	  detection.  [ruby-core:44336] [Bug #6288]
18243
18244Tue Apr 24 00:14:42 2012  Yusuke Endoh  <mame@tsg.ne.jp>
18245
18246	* parse.y (primary): remove wrong "fixpos" that caused incorrect
18247	  source_location of blocks.  [ruby-core:42232] [Bug #5930]
18248
18249	* test/ruby/test_proc.rb: add a test for above.
18250
18251Mon Apr 23 22:56:08 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18252
18253	* ext/iconv: deprecated.  [Feature #6322]
18254
18255Mon Apr 23 22:07:00 2012  Tanaka Akira  <akr@fsij.org>
18256
18257	* test/socket/test_unix.rb (bound_unix_socket): make temporary
18258	  filename shorter for less possibility of Unix socket path over
18259	  107 bytes when TMPDIR has long path.
18260
18261Mon Apr 23 20:35:49 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
18262
18263	* win32/win32.c (szInternalCmds, internal_match, internal_cmd_match):
18264	  get rid of a segmentation fault with GCC 4.7.0.
18265	  reported by raylinn@gmail.com (ray linn) at [ruby-core:44505]
18266	  [Bug #6333], and patched by mame.
18267
18268	* test/ruby/test_system.rb (TestSystem#test_system): test for it.
18269
18270Mon Apr 23 20:11:02 2012  Tanaka Akira  <akr@fsij.org>
18271
18272	* lib/drb/ssl.rb: generate 1024 bits RSA key instead of 512 bits.
18273	  OpenSSL 1.0.1 rejects 512 bits RSA key for TLS1.2 with SHA512.
18274	 http://rt.openssl.org/Ticket/Display.html?id=2769&user=guest&pass=guest
18275	  reported by Bohuslav Kabrda.
18276	  [ruby-core:43844] [ruby-trunk - Bug #6221]
18277
18278Mon Apr 23 19:54:33 2012  Tanaka Akira  <akr@fsij.org>
18279
18280	* test/drb/drbtest.rb: rescue Errno::ESRCH for Process.kill.
18281	  reported by NARUSE, Yui.  [ruby-dev:45551]
18282
18283Mon Apr 23 14:16:45 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18284
18285	* .gdbinit (rb_ps_vm): follow st_table's packing change.
18286
18287Mon Apr 23 10:43:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18288
18289	* configure.in: disable rubygems not to load rbconfig.rb before
18290	  fake.rb.  [ruby-core:44492][Bug #6329]
18291
18292Sun Apr 22 20:26:06 2012  Tanaka Akira  <akr@fsij.org>
18293
18294	* lib/drb/extservm.rb (DRb::ExtServManager): don't use /bin/sh to
18295	  invoke service subprocess.  mark detach threads for clean up.
18296
18297	* test/drb/drbtest.rb: clean up the service subprocess in teardown.
18298
18299	* test/drb/test_drb.rb: set @service_name for teardown.
18300
18301	* test/drb/test_drbunix.rb: ditto.
18302
18303	* test/drb/test_drbssl.rb: ditto.
18304
18305	[ruby-dev:45547]
18306
18307Sun Apr 22 07:51:29 2012  Tanaka Akira  <akr@fsij.org>
18308
18309	* lib/drb/ssl.rb: close accepted TCP socket if SSL accept is failed.
18310	  [ruby-dev:45541]
18311
18312Sat Apr 21 14:36:49 2012  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
18313
18314	* test/rinda/test_rinda.rb: fix sticks on some tests problem
18315	  [Bug #6272]
18316
18317Fri Apr 20 12:24:04 2012  Eric Hodel  <drbrain@segment7.net>
18318
18319	* lib/rubygems/ssl_certs/AddTrustExternalCARoot.pem:  Removed to avoid
18320	  conflict with ca-bundle.pem
18321	* lib/rubygems/ssl_certs/VerisignClass3PublicPrimaryCertificationAuthority-G2.pem:
18322	  ditto.
18323	* lib/rubygems/ssl_certs/Entrust_net-Secure-Server-Certification-Authority.pem:
18324	  ditto.
18325
18326Fri Apr 20 08:07:06 2012  Eric Hodel  <drbrain@segment7.net>
18327
18328	* lib/rubygems:  Update to RubyGems 1.8.23 which contains security
18329	  fixes:
18330
18331	  RubyGems now disallows redirection from HTTPS to HTTP.
18332
18333	  RubyGems now verifies SSL connections.
18334
18335	  See https://github.com/rubygems/rubygems/blob/1.8/History.txt for
18336	  changes since 1.8.22.
18337	* test/rubygems:  ditto.
18338
18339Thu Apr 19 16:33:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18340
18341	* strftime.c (rb_strftime_with_timespec): fix carry-up bug and
18342	  overwrite '+' with '-' if negative offset less than a hour.
18343	  [ruby-core:44447][Bug #6323]
18344
18345Thu Apr 19 09:39:57 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18346
18347	* ext/-test-/win32/dln/extconf.rb: need import library for ordinal
18348	  entry even on mingw.  [ruby-core:44441][Bug #6320]
18349
18350Thu Apr 19 09:35:15 2012  Eric Hodel  <drbrain@segment7.net>
18351
18352	* random.c (random_init):  Clarify that the default seed is
18353	  Random.new_seed, not zero.  Based on patch by Roger Pack.
18354	  [ruby-trunk - Bug #6313]
18355	* random.c (rb_f_srand):  ditto.
18356
18357Thu Apr 19 08:59:02 2012  Eric Hodel  <drbrain@segment7.net>
18358
18359	* ext/curses/curses.c (window_nodelay):  Fixed call-seq of nodelay to
18360	  include the '='.
18361
18362	  Improved description window.nodelay=.
18363
18364Thu Apr 19 08:47:54 2012  Eric Hodel  <drbrain@segment7.net>
18365
18366	* io.c (io_readpartial):  Document the output buffer parameter is
18367	  overwritten with the read contents even when non-empty.
18368	  Patch by yu nobuoka.  [ruby-trunk - Bug #6285]
18369	* io.c (io_read_nonblock):  ditto.
18370	* io.c (io_read):  ditto.
18371	* io.c (rb_io_sysread):  ditto.
18372	* io.c (argf_read):  ditto.
18373	* io.c (argf_readpartial):  ditto.
18374	* ext/stringio/stringio.c (strio_read):  ditto.
18375	* test/ruby/test_argf.rb (class TestArgf):  Add test for existing
18376	  behavior of read outbuf.
18377	* test/ruby/test_io.rb (class TestIO):  ditto.
18378	* test/stringio/test_stringio.rb (class TestStringIO):  ditto.
18379
18380Wed Apr 18 22:58:55 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18381
18382	* configure.in (DOT, DOXYGEN): use AC_CHECK_PROGS instead of
18383	  AC_CHECK_PROG which needs the third argument.  [ruby-core:44433]
18384	  [Bug #6316]
18385
18386	* configure.in (PKG_CONFIG): fix condition to skip older version
18387	  of pkg-config.  continue in backticks does not affect outside.
18388
18389Wed Apr 18 13:59:40 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
18390
18391	* win32/file.c (INVALID_FILE_ATTRIBUTES): define for old SDK.
18392
18393Wed Apr 18 10:22:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18394
18395	* strftime.c (rb_strftime_with_timespec): add an interim digit for
18396	  the timezone offset which is less than an hour.
18397
18398Wed Apr 18 09:58:29 2012  Eric Hodel  <drbrain@segment7.net>
18399
18400	* lib/rubygems/version.rb:  Fixed init_with warning by calling into
18401	  yaml_initialize (for syck) from psych's init_with
18402
18403Wed Apr 18 09:03:43 2012  Eric Hodel  <drbrain@segment7.net>
18404
18405	* lib/rubygems:  Update to RubyGems 1.8.22 plus r33517 and r35337 which
18406	  were ported to the rubygems git repository.
18407
18408	  See https://github.com/rubygems/rubygems/blob/1.8/History.txt for
18409	  changes since 1.8.11.
18410
18411	* test/rubygems:  ditto.
18412
18413Tue Apr 17 22:18:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18414
18415	* strftime.c (rb_strftime_with_timespec): fix padding of time zone
18416	  offset.  [ruby-dev:43287][Bug #4458]
18417
18418Tue Apr 17 13:11:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18419
18420	* dln.c (rb_w32_check_imported): skip ordinal entries.  based on a
18421	  patch by phasis68 (Heesob Park) at [ruby-core:44381].
18422	  [ruby-core:44371][Bug #6303]
18423
18424Mon Apr 16 18:22:14 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18425
18426	* spec/default.mspec: expand relative path for ruby_exe which uses
18427	  them with Dir.chdir; it breaks relative paths, for example
18428	  core/kernel/exec_spec.rb.
18429
18430Mon Apr 16 16:22:40 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18431
18432	* win32/win32.c (gmtime_r, localtime_r): POSIX compliant reentrant
18433	  versions.
18434
18435	* configure.in (RUBY_MSVCRT_VERSION): define on mingw too.
18436
18437	* win32/Makefile.sub (config.h): prefix RT_VER with RUBY and make
18438	  more descriptive to get rid of potential conflict.
18439
18440Mon Apr 16 15:19:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18441
18442	* configure.in (NO_RUBY_VENDOR_LIB): fix missing comma.
18443
18444Mon Apr 16 12:17:12 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
18445
18446	* lib/matrix.rb (hermitian?): Bug fix, patch by George Koehler
18447	  [Bug #6290] [rubyspec:4b9573d7613]
18448
18449Mon Apr 16 09:42:50 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
18450
18451	* lib/rubygems/remote_fetcher.rb (Gem::RemoteFetcher#download): should
18452	  use File.identical? to check the identity of the files.
18453	  this fixed an error of a test on Windows.
18454
18455Sat Apr 14 12:55:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18456
18457	* configure.in (UNREACHABLE): gcc 4.4 eliminates unreachable code
18458	  if -O3 is given.
18459
18460	* win32/win32.c (child_result): dropped colon.
18461
18462Sat Apr 14 10:45:18 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18463
18464	* lib/webrick/server.rb (WEBrick::GenericServer#start):
18465	  partially revert r35315.
18466
18467	* test/webrick/test_server.rb (test_start_exception):
18468	  received signal is delivered to the main thread, so it is needed to
18469	  emulate it. patched by Eric Hodel. [ruby-core:44348] [Feature #6236]
18470
18471Sat Apr 14 09:35:45 2012  Eric Hodel  <drbrain@segment7.net>
18472
18473	* variable.c (trace_ev):  Removed "not reached" comment as this line is
18474	  reached.
18475	* variable.c (rb_obj_remove_instance_variable):  Replaced "not reached"
18476	  comment with the UNREACHABLE macro.
18477	* variable.c (rb_mod_const_missing):  ditto.
18478	* variable.c (rb_mod_remove_cvar):  ditto.
18479	* enum.c (first_i):  ditto.
18480	* string.c (rb_str_aref):  ditto.
18481	* string.c (str_byte_aref):  ditto.
18482	* string.c (rb_to_id):  ditto.
18483	* io.c (rb_io_fmode_modestr):  ditto.
18484	* io.c (rb_io_oflags_modestr):  ditto.
18485	* pack.c (num2i32):  ditto.
18486	* vm_eval.c (rb_method_missing):  ditto.
18487	* vm_eval.c (rb_f_throw):  ditto.
18488	* dir.c (dir_read):  ditto.
18489	* win32/win32.c (child_result):  ditto.
18490	* struct.c (rb_struct_getmember):  ditto.
18491	* struct.c (rb_struct_set):  ditto.
18492	* struct.c (rb_struct_aref_id):  ditto.
18493	* eval.c (rb_f_raise):  ditto.
18494	* process.c (rb_f_exit_bang):  ditto.
18495	* process.c (rb_f_exit):  ditto.
18496	* process.c (rb_f_abort):  ditto.
18497	* ext/-test-/iter/break.c (iter_break_value):  ditto.
18498	* ext/pty/pty.c (pty_check):  ditto.
18499	* ext/openssl/ossl_pkey.c (ossl_pkey_new):  ditto.
18500	* ext/readline/readline.c (rb_remove_history):  ditto.
18501	* ext/stringio/stringio.c (strio_unimpl):  ditto.
18502	* numeric.c (num_sadded):  ditto.
18503	* numeric.c (num_init_copy):  ditto.
18504	* numeric.c (rb_num2ll):  ditto.
18505	* numeric.c (rb_num2ull):  ditto.
18506	* vm_insnhelper.c (call_cfunc):  ditto.
18507	* ruby.c (opt_W_getter):  ditto.
18508	* bignum.c (rb_big_coerce):  ditto.
18509	* file.c (rb_f_test):  ditto.
18510
18511Sat Apr 14 08:38:20 2012  Eric Hodel  <drbrain@segment7.net>
18512
18513	* encoding.c (rb_enc_codepoint_len):  Use UNREACHABLE to avoid "control
18514	  reaches end of non-void function" warnings.  [ruby-trunk - Bug #6066]
18515	* re.c (name_to_backref_number):  ditto.
18516	* object.c (rb_Float):  ditto.
18517	* io.c (io_readpartial):  ditto.
18518	* io.c (io_read_nonblock):  ditto.
18519	* pack.c (rb_uv_to_utf8):  ditto.
18520	* proc.c (rb_method_entry_arity):  ditto.
18521	* vm_method.c (rb_f_notimplement):  ditto.
18522	* struct.c (rb_struct_aset_id):  ditto.
18523	* class.c (rb_scan_args):  ditto.
18524	* process.c (rlimit_resource_type):  ditto.
18525	* process.c (rlimit_resource_value):  ditto.
18526	* process.c (p_uid_switch):  ditto.
18527	* process.c (p_gid_switch):  ditto.
18528	* ext/digest/digest.c (rb_digest_instance_update):  ditto.
18529	* ext/digest/digest.c (rb_digest_instance_finish):  ditto.
18530	* ext/digest/digest.c (rb_digest_instance_reset):  ditto.
18531	* ext/digest/digest.c (rb_digest_instance_block_length):  ditto.
18532	* ext/bigdecimal/bigdecimal.c (BigDecimalCmp):  ditto.
18533	* ext/dl/handle.c (rb_dlhandle_close):  ditto.
18534	* ext/tk/tcltklib.c (pending_exception_check0):  ditto.
18535	* ext/tk/tcltklib.c (pending_exception_check1):  ditto.
18536	* ext/tk/tcltklib.c (ip_cancel_eval_core):  ditto.
18537	* ext/tk/tcltklib.c (lib_get_reltype_name):  ditto.
18538	* ext/tk/tcltklib.c (create_dummy_encoding_for_tk_core):  ditto.
18539	* ext/tk/tkutil/tkutil.c (tk_hash_kv):  ditto.
18540	* ext/openssl/ossl_ssl.c (ossl_ssl_session_reused):  ditto.
18541	* ext/openssl/ossl_pkey_ec.c (ossl_ec_key_dsa_verify_asn1):  ditto.
18542	* ext/openssl/ossl_pkey_ec.c (ossl_ec_point_is_at_infinit):  ditto.
18543	* ext/openssl/ossl_pkey_ec.c (ossl_ec_point_is_on_curve):  ditto.
18544	* ext/fiddle/conversions.c (generic_to_value):  ditto.
18545	* ext/socket/raddrinfo.c (rsock_io_socket_addrinfo):  ditto.
18546	* ext/socket/socket.c (sock_s_getnameinfo):  ditto.
18547	* ext/ripper/eventids2.c (ripper_token2eventid):  ditto.
18548	* cont.c (return_fiber):  ditto.
18549	* dmydln.c (dln_load):  ditto.
18550	* vm_insnhelper.c (vm_search_normal_superclass):  ditto.
18551	* bignum.c (big_fdiv):  ditto.
18552	* marshal.c (r_symlink):  ditto.
18553	* marshal.c (r_symbol):  ditto.
18554
18555Fri Apr 13 17:12:09 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18556
18557	* hash.c (inspect_i): keep string's coderange.
18558
18559Fri Apr 13 15:26:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18560
18561	* hash.c (rb_hash_aset, rb_hash_update, rb_hash_update_by): use
18562	  st_update() to reduce evaluation of hash values.
18563
18564Fri Apr 13 15:17:36 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18565
18566	* lib/webrick/server.rb (WEBrick::GenericServer#stop): fix r35303;
18567	  this method is to deny new connections, not shutdown yet.
18568
18569	* lib/webrick/server.rb (WEBrick::GenericServer#start):
18570	  re-raise exception only when the exception is Interrupt (^C).
18571
18572Thu Apr 12 19:51:45 2012  Tadayoshi Funaba  <tadf@dotrb.org>
18573
18574	* ext/date/date_core.c: added some notes.
18575
18576Wed Apr 11 17:16:49 2012  Koichi Sasada  <ko1@atdot.net>
18577
18578	* compile.c (compile_array, compile_array_):
18579	  Divide big array (or hash) literals into several blocks and
18580	  concatenate them.  There was a problem that a big array (hash)
18581	  literal causes SystemStackError exception (stack overflow)
18582	  because VM push all contents of the literal onto VM stack to
18583	  make an array (or hash).  To solve this issue, we make several
18584	  arrays (hashes) and concatenate them to make a big array (hash)
18585	  object.  [ruby-dev:37701] [Bug #982]
18586
18587	* compile.c (iseq_compile_each, setup_args): use modified
18588	  compile_array.
18589
18590	* vm.c (m_core_hash_from_ary, m_core_hash_merge_ary,
18591	  m_core_hash_merge_ptr): added for above change.
18592
18593	* id.c (Init_id), parse.y: add core method ids.
18594
18595	* bootstraptest/test_literal.rb: add simple tests.
18596
18597	* bootstraptest/test_eval.rb: remove rescue clause to catch
18598	  SystemStackError exception.
18599
18600	* test/ruby/test_literal.rb: add tests to check no stack overflow.
18601
18602Thu Apr 12 07:10:37 2012  Eric Hodel  <drbrain@segment7.net>
18603
18604	* lib/uri/generic.rb (module URI):  URI now downcases the scheme to
18605	  follow RFC 2396 section 3.1.  [ruby-trunk - Feature #4551]
18606	* test/uri/test_generic.rb (class URI):  Test for above
18607
18608Thu Apr 12 06:15:44 2012  Eric Hodel  <drbrain@segment7.net>
18609
18610	* lib/net/protocol.rb (module Net):  Added ReadTimeout to match
18611	  OpenTimeout.  ReadTimeout is now raised by rbuf_fill instead of
18612	  Timeout::Error to help users distinguish what type of timeout
18613	  occurred.  [ruby-trunk - Feature #6088]
18614	* lib/net/pop.rb (module Net):  Updated documentation for ReadTimeout
18615	  and OpenTimeout.
18616	* lib/net/http.rb (module Net):  ditto
18617	* lib/net/smtp.rb (module Net):  ditto
18618	* lib/net/telnet.rb (module Net):  Net::ReadTimeout is now raised in
18619	  waitfor to match Net::Protocol.
18620	* test/net/http/test_http.rb:  Updated Timeout::Error expectation to
18621	  Net::ReadTimeout.
18622	* test/net/ftp/test_ftp.rb:  ditto
18623
18624Thu Apr 12 05:27:01 2012  Eric Hodel  <drbrain@segment7.net>
18625
18626	* lib/webrick/server.rb (module WEBrick::GenericServer):  A server
18627	  will now continue only when a StandardError subclass is raised.  For
18628	  other exception types the error will be logged at the fatal level and
18629	  the server will safely stop.  Based on a patch by Alex Young.
18630	  [ruby-trunk - Feature #6236]
18631	* test/webrick/test_server.rb:  Test for new exception handling
18632	  behavior.  Join the server thread instead of busy-waiting for it to
18633	  shut down to remove race conditions.
18634
18635Thu Apr 12 03:50:44 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18636
18637	* lib/test/unit.rb (Test::Unit:Runner::Worker#_run_suites):
18638	  call GC.start before running the test suites.
18639
18640Wed Apr 11 22:31:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18641
18642	* parse.y (rb_check_id_cstr): new function to check if ID is
18643	  registered with NUL-terminated C string.
18644
18645	* sprintf.c (rb_str_format): avoid inadvertent symbol creation.
18646
18647Wed Apr 11 20:28:36 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
18648
18649	* io.c (rb_io_eof): use eof() instead of io_fillbuf(). It's because
18650	  io_unread() doesn't work properly when reading CRLF with read(length)
18651	  and mode 'r'.
18652	  [ruby-core:44189][Bug #6271]
18653
18654	* test/ruby/test_io_m17n.rb (TestIO_M17N#test_read_crlf_and_eof):
18655	  test for above.
18656
18657Wed Apr 11 07:38:33 2012  Eric Hodel  <drbrain@segment7.net>
18658
18659	* ext/digest/sha2/lib/sha2.rb (Digest#block_length):  Fixed method name
18660	  in documentation examples.  Patch by naleski via
18661	  https://github.com/ruby/ruby/pull/115
18662
18663Wed Apr 11 07:33:13 2012  Eric Hodel  <drbrain@segment7.net>
18664
18665	* pack.c (pack_pack):  Warn when an invalid character is found in the
18666	  format string when $VERBOSE is true.  [ruby-trunk - Feature #5219]
18667	* pack.c (pack_unpack):  ditto
18668	* test/ruby/test_pack.rb (class TestPack):  Test for warnings on
18669	  invalid format characters.
18670
18671Wed Apr 11 06:11:10 2012  Eric Hodel  <drbrain@segment7.net>
18672
18673	* string.c (rb_str_tr):  Documented use of \ to escape characters.
18674	  [ruby-trunk - Bug #6161]
18675	* string.c (rb_str_count):  ditto
18676
18677Wed Apr 11 05:14:51 2012  Eric Hodel  <drbrain@segment7.net>
18678
18679	* lib/abbrev.rb:  Clarified that Abbrev.abbrev returns a Hash instead
18680	  of an Array.  Patch by Andrei Bocan.  [ruby-trunk - Bug #6107]
18681
18682Wed Apr 11 03:02:24 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
18683
18684	* ext/ripper/lib/ripper/sexp.rb: fix spelling. patched by
18685	  Jonathan Hinkle via https://github.com/ruby/ruby/pull/116
18686
18687Tue Apr 10 19:07:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18688
18689	* error.c (rb_enc_raise): new function to raise an exception with
18690	  the message in the given encoding.  patched by now (Nikolai
18691	  Weibull) at [ruby-core:41160].  [Feature #5650]
18692
18693Tue Apr 10 18:19:32 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18694
18695	* lib/net/http.rb (Net::HTTP#send_request_with_body_stream):
18696	  use IO.copy_stream for requests using body_stream.
18697	  patched by Eric Wong. [ruby-core:40898] [Feature #5605]
18698
18699Tue Apr 10 16:53:21 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18700
18701	* thread_pthread.c: add prototype declarations for older Mac OS X.
18702	  [ruby-core:43376][Bug #6170]
18703
18704Tue Apr 10 15:35:21 2012  Koichi Sasada  <ko1@atdot.net>
18705
18706	* compile.c (iseq_set_sequence): show a hint if there are duplicated
18707	  "when" clauses.  [ruby-core:41502] [ruby-trunk - Feature #5716]
18708
18709Tue Apr 10 09:57:00 2012  Eric Hodel  <drbrain@segment7.net>
18710
18711	* string.c (rb_str_split_m):  Documented behavior of split on the empty
18712	  string.  [ruby-trunk - Feature #3575]
18713
18714Tue Apr 10 09:48:31 2012  Eric Hodel  <drbrain@segment7.net>
18715
18716	* ext/zlib/zlib.c (rb_deflate_s_deflate):  Fixed ruby example replacing
18717	  NO_FLUSH with FINISH.  [ruby-trunk - Bug #6273]
18718
18719Mon Apr  9 23:10:26 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18720
18721	* win32/win32.c (isUNCRoot, winnt_stat): support long UNC.
18722	  [ruby-core:30623][Feature #3399]
18723
18724Mon Apr  9 15:16:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18725
18726	* parse.y (string_content, parser_yylex): count brace nesting to
18727	  dispatch embexpr_end.  [ruby-core:43775][Bug #6211]
18728
18729Mon Apr  9 13:06:58 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
18730
18731	* hash.c (rb_hash_set_default_proc): Accept nil, patch by Run Paint
18732	  [Feature #4234]
18733
18734	* test/ruby/test_hash.rb: test for above.
18735
18736Mon Apr  9 08:01:15 2012  Tadayoshi Funaba  <tadf@dotrb.org>
18737
18738	* ext/date/date_strftime.c: gets the value with range() consistently.
18739	* ext/date/date_strftime.c (range): now just replaces the given item.
18740
18741Mon Apr  9 06:58:01 2012  Tadayoshi Funaba  <tadf@dotrb.org>
18742
18743	* complex.c (nucomp_expt): [ruby-core:44170].
18744
18745Mon Apr  9 02:52:03 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18746
18747	* complex.c (nucomp_expt): the result of f_complex_new2 may be a fixnum
18748	  with mathn. [ruby-core:44170] [Bug #6267]
18749
18750Sun Apr  8 22:46:01 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18751
18752	* ext/json/generator/generator.c (generate_json_bignum):
18753	  add RB_GC_GUARD.
18754	 http://fb.rubyci.org/~chkbuild/ruby-trunk/log/20120407T210301Z.diff.html.gz
18755
18756Sun Apr  8 07:26:40 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18757
18758	* lib/webrick/utils.rb (WEBrick::Utils::TimeoutHandler): get keys
18759	  and fetch values from it to prevent @timeout_info's error
18760	  "can't add a new key into hash during iteration".
18761
18762Sun Apr  8 06:51:57 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18763
18764	* io.c (io_unread): cast as long the value for extra_max.
18765	  [ruby-core:44137] [Bug #6257]
18766
18767Sun Apr  8 06:46:48 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18768
18769	* lib/webrick/httpresponse.rb (WEBrick::HTTPResponse#send_body_io):
18770	  use readpartial to get data even if the response is streaming data and
18771	  each data is smaller than @buffer_size.
18772	  patched by yu nobuoka. [ruby-dev:45471] [Bug #6230]
18773
18774Sat Apr  7 22:35:36 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
18775
18776	* include/ruby/win32.h (rb_w32_aspawn_flags): add the declaration of
18777	  new function.
18778
18779	* process.c (enum): add EXEC_OPTION_PGROUP and move the position
18780	  above for the usage in proc_spawn_n().
18781
18782	* process.c (proc_spawn_n): add an argument to pass new option
18783	  `new_pgroup`. The option specifies CREATE_NEW_PROCESS_GROUP flag to
18784	  CreateProcessW(). This flag is necessary for the usage of
18785	  Process.kill on the subprocess on Windows.
18786
18787	* process.c (rb_exec_arg_addopt): ditto.
18788
18789	* process.c (rb_spawn_process): ditto.
18790
18791	* process.c (documentation for rb_f_spawn): add documentation for new
18792	  option `new_pgroup` of spawn.
18793
18794	* test/ruby/test_process.rb (TestProcess#test_execopts_new_pgroup):
18795	  add tests for option `new_pgroup`.
18796
18797	* test/ruby/test_thread.rb
18798	  (TestThreadGroup#test_thread_timer_and_interrupt):
18799	  add option `new_pgroup: true` to spawn on Windows. It's needed for
18800	  Process.kill on a subprocess.
18801
18802	* win32/win32.c (CreateChild): add an argument to pass
18803	  dwCreationFlags of CreateProcessW().
18804
18805	* win32/win32.c (rb_w32_spawn): ditto.
18806
18807	* win32/win32.c (rb_w32_aspawn_flags): add new function to pass
18808	  dwCreationFlags.
18809
18810	* win32/win32.c (rb_w32_aspawn): refactor to move the content to
18811	  rb_w32_aspawn_flags().
18812	  [ruby-core:43245][Bug #6131]
18813
18814Sat Apr  7 22:32:00 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
18815
18816	* test/ruby/test_thread.rb
18817	  (TestThreadGroup#test_thread_timer_and_interrupt): skip on Windows.
18818	  Process.kill cannot kill a subprocess if CREATE_NEW_PROCESS_GROUP
18819	  flag is not specified in a call to CreateProcessW().
18820
18821	* win32/win32.c (CreateChild): revert the usage of
18822	  CREATE_NEW_PROCESS_GROUP flag for compatibility.
18823	  [ruby-core:43245][Bug #6131]
18824
18825Sat Apr  7 10:28:40 2012  Aaron Patterson <aaron@tenderlovemaking.com>
18826
18827	* ext/psych/lib/psych.rb: bumping up psych version to match release.
18828	* ext/psych/psych.gemspec: ditto
18829
18830Sat Apr  7 02:07:00 2012  Aaron Patterson <aaron@tenderlovemaking.com>
18831
18832	* ext/psych/parser.c: fall back to any encoding if the external
18833	  encoding is wrong.  [ruby-core:44163]
18834	* test/psych/test_encoding.rb: fix test
18835
18836Fri Apr  6 16:24:24 2012  Martin Duerst  <duerst@it.aoyama.ac.jp>
18837
18838	* struct.c (documentation for rb_struct_members_m):
18839	  fix 'array of strings' to 'array of symbols'
18840	  [ruby-core:44152][Bug #6264]
18841
18842Fri Apr  6 14:27:04 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
18843
18844	* Makefile.in ($(LIBRUBY_A)): fix typo.
18845
18846Thu Apr  5 13:26:15 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18847
18848	* missing/alloca.c (xmalloc, xfree): use ruby version, not
18849	  depending on RUBY_LIB_PREFIX.  [ruby-dev:45492][Bug #6255]
18850
18851Wed Apr  4 13:06:39 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18852
18853	* lib/ftp/ftp.rb (Net::FTP#close): restore original read_timeout.
18854
18855Wed Apr  4 10:33:31 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18856
18857	* lib/ftp/ftp.rb (Net::FTP#close): ignore exceptions from shutdown and
18858	  read on closing.
18859
18860Wed Apr  4 01:48:35 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18861
18862	* lib/ftp/ftp.rb (Net::FTP#close): close socket more gracefully.
18863
18864	* lib/ftp/ftp.rb (Net::BufferedSocket#shutdown): added.
18865
18866	* test/net/ftp/test_ftp.rb (FTPTest#create_ftp_server): wait socket
18867	  with shutdown and read.
18868
18869Tue Apr  3 19:00:52 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
18870
18871	* test/net/ftp/test_ftp.rb (FTPTest#create_ftp_server): should wait
18872	  a little before closing socket because if the client call
18873	  Net::FTP#getmultiline the socket is suddenly closed by the server in
18874	  the getline loop.
18875
18876Tue Apr  3 18:33:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18877
18878	* process.c (setreuid, setregid): suppress warnings.
18879	  [ruby-core:43374][Bug #6169]
18880
18881Tue Apr  3 10:18:27 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18882
18883	* enumerator.c (inspect_enumerator): suppress uninitialized
18884	  instance variable warnings.  [ruby-dev:45449][Bug #6214]
18885	  patched by no6v (Nobuhiro IMAI).
18886
18887Mon Apr  2 13:25:08 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18888
18889	* lib/optparse/ac.rb: autoconf-like options.
18890
18891Mon Apr  2 10:34:00 2012  eregon  <eregontp@gmail.com>
18892
18893	* string.c (rb_str_start_with, rb_str_end_with): raise an error if
18894	  an argument is not convertible to a String.
18895	  [ruby-core:40623][Bug #5536]
18896
18897Mon Apr  2 03:35:25 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18898
18899	* lib/webrick/server.rb (WEBrick::GenericServer): close socket only if
18900	  the socket is not closed yet.
18901
18902Sun Apr  1 23:03:18 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18903
18904	* lib/net/ftp.rb (Net::BufferedSocket): should delegate send() to @io
18905	  for Net::FTP#abort and Net::FTP#status.
18906
18907Sun Apr  1 00:41:56 2012  Shugo Maeda  <shugo@ruby-lang.org>
18908
18909	* lib/net/ftp.rb: fixed the domain name in examples.
18910
18911Sat Mar 31 21:39:45 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18912
18913	* lib/webrick/utils.rb (WEBrick::Utils::TimeoutHandler): dup to prevent
18914	  @timeout_info's "can't add a new key into hash during iteration".
18915
18916Sat Mar 31 14:22:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18917
18918	* hash.c (hash_default_value): extract from rb_hash_aref(), to be
18919	  shared with rb_hash_shift(), so that overriding Hash#default
18920	  will be respected.
18921
18922Sat Mar 31 14:16:02 2012  Sokolov Yura (funny-falcon)  <funny.falcon@gmail.com>
18923
18924	* hash.c: do not allocate st_table when it is not necessary.
18925
18926Sat Mar 31 13:42:39 2012  Shugo Maeda  <shugo@ruby-lang.org>
18927
18928	* lib/net/ftp.rb (read_timeout=, open_timeout=): supported timeout.
18929
18930Sat Mar 31 13:20:40 2012  Sokolov Yura (funny-falcon)  <funny.falcon@gmail.com>
18931
18932	* hash.c: remove unnecessary checks for Qundef in hash iterations.
18933	  since hash use st_foreach_check for iterations, such checks are
18934	  needless.
18935
18936Sat Mar 31 12:05:01 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
18937
18938	* ext/openssl/ossl_x509cert.c: Fix doc typo.
18939
18940Sat Mar 31 10:13:24 2012  Sokolov Yura (funny-falcon)  <funny.falcon@gmail.com>
18941
18942	* st.c (st_foreach_check, st_foreach): remove ancient check.  This
18943	  check are from initial ordered hash commit when first entry were
18944	  created with entry->fore = entry->back = entry.
18945
18946	* st.c (st_delete): use real_entries in st_delete for packed tables
18947
18948Sat Mar 31 07:53:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18949
18950	* st.c (st_foreach_check): remove the entry by replacing with never
18951	  when ST_DELETE.
18952
18953	* hash.c (st_foreach_safe): since table is not for VALUE, Qundef is
18954	  not special value, so use 0 instead.  therefore this function can be
18955	  applied to only st_table which 0 is invalid as keys, e.g., IDs.
18956
18957	* hash.c: Qundef cannot be passed from st_foreach_check().
18958
18959	* hash.c, marshal.c, object.c, variable.c: fix callback argument types
18960	  of iterators.
18961
18962Thu Mar 29 23:50:15 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18963
18964	* st.c (st_update): pass pointer to key to the callback function.
18965
18966Thu Mar 29 16:36:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18967
18968	* st.c (st_update): add existing parameter to the callback function.
18969
18970Thu Mar 29 16:35:32 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18971
18972	* lib/test/unit.rb (terminal_width, del_status_line, put_status):
18973	  extract as methods.
18974
18975Thu Mar 29 10:20:18 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
18976
18977	* ext/openssl/ossl_pkcs7.c: fix crash when parsing garbage data.
18978	* test/openssl/test_pkcs7.rb: assert correct behavior for it.
18979	  Thanks to Matt Venables for reporting the issue.
18980	  [ruby-core:43250][Bug #6134]
18981
18982Thu Mar 29 10:16:05 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
18983
18984	* thread_win32.c (TIME_QUANTUM_USEC): 10ms(= old setting) [experimental]
18985	  cf. [Bug #6098]
18986
18987Thu Mar 29 10:12:12 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
18988
18989	* thread.c (rb_threadptr_execute_interrupts_common): use defined
18990	  TIME_QUANTUM_USEC instead of a magic number.  there is no meanings
18991	  to use different values for checking interval of interruption and
18992	  thread switching limits.
18993	  cf. [Bug #6098]
18994
18995Thu Mar 29 09:26:17 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
18996
18997	* test/openssl/test_x509cert.rb: exclude test that fails when issuing
18998	  a certificate with RSA signature and DSS1 digest for earlier
18999	  OpenSSL versions when used in conjunction with OpenSSL 1.0.1.
19000	  Thanks, Vit Ondruch, for reporting the issue.
19001	  [ruby-core:42949][Bug #6089]
19002
19003Thu Mar 29 08:25:35 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
19004
19005	* NEWS: add note about unified behavior of encoding nil values in
19006	  instances of OpenSSL::ASN1::ASN1Data.
19007
19008Thu Mar 29 07:45:36 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
19009
19010	* ext/openssl/ossl_asn1.c: raise TypeError when trying to encode nil
19011	  values for Primitive instances.
19012	* test/openssl/test_asn1.rb: Assert consistent behavior when
19013	  encoding nil values: Primitives raise TypeError, Constructives
19014	  raise NoMethodError.
19015	  Fixes [ruby-core:43009][Bug #6102]
19016
19017Wed Mar 28 16:39:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19018
19019	* process.c (obj2uid, obj2gid): allow strings as input user/group id.
19020	  [ruby-core:40923][Feature #5610]
19021
19022Wed Mar 28 15:06:18 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19023
19024	* marshal.c (r_symreal): default to ASCII-8BIT for non-ascii symbols,
19025	  otherwise it should be converted to US-ASCII in rb_intern_str() if
19026	  possible.  [ruby-core:43762][Bug #6209]
19027
19028Wed Mar 28 08:44:24 2012  Aaron Patterson <aaron@tenderlovemaking.com>
19029
19030	* ext/psych/lib/psych.rb: updating version to match gem
19031	* ext/psych/psych.gemspec: ditto
19032	* ext/psych/lib/psych/visitors/to_ruby.rb: fixing deprecation warning
19033
19034Tue Mar 27 23:44:11 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
19035
19036	* io.c (io_unread): fixed memory leak.  report by nagachika via IRC.
19037
19038Tue Mar 27 22:44:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19039
19040	* configure.in (verconf.h): separate load path specific stuff from
19041	  config.h.
19042
19043Tue Mar 27 22:43:40 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19044
19045	* win32/Makefile.sub: fix config.h path to include.
19046
19047Tue Mar 27 17:08:08 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
19048
19049	* win32/win32.c (check_if_dir): fix memory leak.
19050
19051Tue Mar 27 13:13:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19052
19053	* string.c (str_new_empty): should copy also the encoding as an
19054	  empty substring.  [ruby-dev:45441][Bug #6206]
19055
19056Mon Mar 26 23:43:04 2012  Shugo Maeda  <shugo@ruby-lang.org>
19057
19058	* lib/net/ftp.rb (parse227, parse228, parse229): don't use $~.
19059
19060Mon Mar 26 23:34:40 2012  Shugo Maeda  <shugo@ruby-lang.org>
19061
19062	* lib/net/ftp.rb (parse227, parse228, parse229): don't use local
19063	  variables defined by named capture for other Ruby implementations
19064	  such as Rubinius.
19065
19066Mon Mar 26 23:19:03 2012  Shugo Maeda  <shugo@ruby-lang.org>
19067
19068	* lib/net/ftp.rb (parse_pasv_port): refactored.
19069
19070Mon Mar 26 19:49:49 2012  Shugo Maeda  <shugo@ruby-lang.org>
19071
19072	* test/net/ftp/test_ftp.rb: add the test, which was forgotten in the
19073	  previous commit.
19074
19075Mon Mar 26 19:37:27 2012  Shugo Maeda  <shugo@ruby-lang.org>
19076
19077	* lib/net/ftp.rb (parse227, parse228, parse229): refactored.
19078
19079Mon Mar 26 11:46:23 2012  Shugo Maeda  <shugo@ruby-lang.org>
19080
19081	* enumerator.c (inspect_enumerator): show method arguments of
19082	  lazy enumerators correctly.
19083
19084Mon Mar 26 13:51:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19085
19086	* win32/win32.c (check_if_dir, check_if_wdir): fix for Visual C++
19087	  not to use S_ISDIR().  [Feature #2408][ruby-core:26925]
19088
19089	* ruby.c (load_file_internal): ditto.
19090
19091Mon Mar 26 11:46:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19092
19093	* ruby.c (load_file_internal): bail out if the script is a directory.
19094	  [Feature #2408][ruby-core:26925]
19095
19096	* win32/win32.c (rb_w32_open, rb_w32_wopen): check if the file is a
19097	  directory when access denied, to set errno to EISDIR.
19098
19099Sun Mar 25 18:13:14 2012  NARUSE, Yui  <naruse@ruby-lang.org>
19100
19101	* string.c (tr_setup_table): fix multiple non latin argument for
19102	  non latin (over 256 characters) tr-like methods.
19103	  [ruby-core:43371] [Bug #6167]
19104
19105Sun Mar 25 00:46:06 2012  Shugo Maeda  <shugo@ruby-lang.org>
19106
19107	* enumerator (lazy_initialize): set the instance variable "receiver"
19108	  to include the receiver to the return value of inspect on a lazy
19109	  enumerator directly created by Enumerator::Lazy.new.
19110
19111	* enumerator (RETURN_LAZY): don't set the instance variable "receiver".
19112
19113Sat Mar 24 23:59:00 2012  Shugo Maeda  <shugo@ruby-lang.org>
19114
19115	* enumerator (enumerator_inspect): include the original receiver and
19116	  method name of Enumerator::Lazy in the result of inspect.
19117	  [ruby-core:43345] [Bug #6159]
19118
19119	* enumerator (InitVM_Enumerator): don't use rb_define_alias for
19120	  some methods such as collect in order to make rb_frame_this_func()
19121	  return the correct method names.
19122
19123Sat Mar 24 22:22:18 2012  Sambasiva Rao Suda  <sambasivarao@gmail.org>
19124
19125	* time.c (time_init_1): Time.new will accept seconds as string or
19126	  int.  [ruby-core:43569][Bug #6193]
19127
19128Fri Mar 23 15:12:12 2012  Martin Duerst  <duerst@it.aoyama.ac.jp>
19129
19130	* transcode.c (documentation for str_encode): Explain
19131	  that transcoding to the same encoding is a no-op
19132	  (i.e. no exceptions, no replacements,...).
19133	  [ruby-core:43557][Bug #6190]
19134
19135Fri Mar 23 13:19:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19136
19137	* bignum.c (rb_str_to_inum): must be ASCII compatible encoding as
19138	  well as String#hex and String#oct.  [ruby-core:43566][Bug #6192]
19139
19140	* string.c (rb_must_asciicompat): check if ASCII compatible.
19141
19142Thu Mar 22 23:14:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19143
19144	* transcode.c (str_encode_bang, encoded_dup): if nothing was
19145	  transcoded, just set encoding but leave coderange unchanged as
19146	  force_encoding.  [ruby-core:43557][Bug #6190]
19147
19148Thu Mar 22 22:30:44 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
19149
19150	* io.c (static int io_fflush): add the definition.
19151	  Use it in set_binary_mode_with_seek_cur().
19152
19153	* io.c (set_binary_mode_with_seek_cur): refactoring to split the
19154	  content into io_unread(). Fix the possibility of buffer overflow.
19155
19156	* io.c (io_unread): add new implementation for Windows. Previous one
19157	  caused invalid cursor position using IO#pos with OS text mode. New
19158	  one fixes the bug.
19159
19160	* test/ruby/test_io_m17n.rb
19161	  (TestIO_M17N#test_pos_dont_move_cursor_position): add a test for
19162	  above bug.
19163	  [ruby-core:43497] [Bug #6179]
19164
19165Thu Mar 22 19:55:08 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19166
19167	* win32/win32.c (rb_w32_fstat, rb_w32_fstati64): convert FILETIME
19168	  to time_t directly, not to be affected by TZ unnecessarily.
19169
19170	* win32/win32.c (unixtime_to_filetime): convert time_t to FILETIME
19171	  simply.
19172
19173Thu Mar 22 13:43:31 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19174
19175	* ext/openssl/ossl_pkey_rsa.c (rsa_generate): fix argument type.
19176	  [Bug #6094]
19177
19178Thu Mar 22 11:14:10 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
19179
19180	* test/ruby/test_io.rb (TestIO#test_pos_with_getc): updated.
19181	  see [ruby-core:43550]
19182
19183Wed Mar 21 17:57:57 2012  NARUSE, Yui  <naruse@ruby-lang.org>
19184
19185	* regcomp.c: Merge Onigmo 3d855b30d574536d3ae600260208c6624ae4791c.
19186	  [Bug#6143] [Bug#6144] [Bug#6145]
19187
19188Wed Mar 21 17:01:55 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
19189
19190	* test/ruby/test_io.rb (TestIO#test_pos_with_getc): added.
19191	  see [Bug #6179][ruby-core:43518]
19192
19193Mon Mar 19 17:18:51 2012  Shugo Maeda  <shugo@ruby-lang.org>
19194
19195	* enumerator.c (lazy_flat_map_func): convert the block value to
19196	  Array if it doesn't respond to each.  [ruby-core:43334]
19197	  [Bug #6155]
19198
19199Mon Mar 19 16:34:14 2012  Shugo Maeda  <shugo@ruby-lang.org>
19200
19201	* enum.c (zip_i): variadic argument needs explicit cast on the
19202	  platforms where VALUE is longer than int.
19203
19204Mon Mar 19 15:36:41 2012  Shugo Maeda  <shugo@ruby-lang.org>
19205
19206	* enumerator.c (enumerable_lazy): add an example of take and first
19207	  to the documentation.  [ruby-core:43344] [Bug #6158]
19208	  add the description of the behavior when a block is given to zip
19209	  or cycle.
19210
19211Mon Mar 19 15:20:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19212
19213	* compile.c (iseq_specialized_instruction): DRY and replace chain
19214	  of if-else with switch for special instructions.  based on a
19215	  patch by Vasfed.  https://github.com/ruby/ruby/pull/105
19216
19217Mon Mar 19 15:05:54 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
19218
19219	* test/test_pty.rb: same as r29280, skip tests when PTY allocation
19220	  failed (that's not our fault).
19221
19222Sun Mar 18 23:21:17 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19223
19224	* gc.c (aligned_free): fix condition for free.  memalign() and
19225	  posix_memalign() are not defined together normally.
19226
19227Sun Mar 18 18:31:45 2012  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
19228
19229	* gc.c (aligned_malloc, aligned_free): added fallback implementations
19230	  for platforms like OSX Leopard.
19231
19232Sun Mar 18 17:17:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19233
19234	* bignum.c (rb_big_pow): estimate result bit size more precisely.
19235	  [ruby-core:30735][Feature #3429]
19236
19237Sun Mar 18 17:17:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19238
19239	* gc.c (free_method_entry_i): method entry may be in
19240	  unlinked_method_entry_list.  [ruby-core:43383][Bug #6171]
19241
19242Sun Mar 18 15:27:31 2012  Tanaka Akira  <akr@fsij.org>
19243
19244	* compile.c: typo fix by Run Paint Run Run.
19245	  [ruby-core:28368] [Bug #2824]
19246
19247Sun Mar 18 10:01:02 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
19248
19249	* lib/profiler.rb: support calling singleton methods of
19250	  an instance of BasicObject.
19251
19252Sat Mar 17 06:56:58 2012  Eric Hodel  <drbrain@segment7.net>
19253
19254	* object.c:  Fix indentation of Class#inherited example.
19255
19256Sat Mar 17 01:46:05 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
19257
19258	* string.c (trnext): fix bug with string ending with '\\'.
19259	  [ruby-dev:45374][Bug #6160]
19260
19261	* test/ruby/test_string.rb (TestString#test_delete): test for
19262	  above.
19263
19264Fri Mar 16 20:06:24 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19265
19266	* string.c (trnext): should advance char-wise.
19267	  [ruby-core:43335][Bug #6156]
19268
19269Fri Mar 16 17:42:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19270
19271	* parse.y (block_append_gen): fix unreachable warning line number.
19272	  should warn at the code, not jump.
19273
19274Fri Mar 16 17:33:08 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19275
19276	* enum.c (enum_take): allocate buffer array before iteration, as well
19277	  as enum_first did.
19278
19279	* enum.c (enum_first): remove duplication.
19280
19281Fri Mar 16 14:43:18 2012  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
19282
19283	* load.c (ruby_init_ext): don't free the given pointer itself.
19284	  It is not guaranteed even that the pointer is on heap.
19285
19286Fri Mar 16 14:37:57 2012  Shugo Maeda  <shugo@ruby-lang.org>
19287
19288	* vm_eval.c (rb_mod_module_eval): fix the documentation of
19289	  class_eval to mention class variable lookup.  [ruby-core:40649]
19290	  [Bug #5544]
19291
19292Fri Mar 16 14:27:11 2012  Shugo Maeda  <shugo@ruby-lang.org>
19293
19294	* vm_eval.c (rb_mod_module_eval): fix the documentation of
19295	  class_eval to mention constant lookup.  [ruby-core:41718]
19296	  [Bug #5777]
19297
19298Fri Mar 16 14:10:45 2012  Shugo Maeda  <shugo@ruby-lang.org>
19299
19300	* lib/net/imap.rb (initialize): raise Net::IMAP::Error when the
19301	  connection is closed without a greeting response.
19302	  [ruby-core:40938] [Bug #5616]
19303
19304Fri Mar 16 13:50:12 2012  Shugo Maeda  <shugo@ruby-lang.org>
19305
19306	* lib/net/imap.rb (rfc822_text): ignore [] after RFC822.
19307	  [ruby-core:40945] [Bug #5620]
19308
19309Fri Mar 16 12:00:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19310
19311	* vm_insnhelper.c (argument_error): use line number at the beginning
19312	  of lambda, not the first code of its body.
19313	  [ruby-core:43314][Bug #6151]
19314
19315	* iseq.c (rb_iseq_first_lineno): constified.
19316
19317Fri Mar 16 11:20:07 2012  Shugo Maeda  <shugo@ruby-lang.org>
19318
19319	* enumerator.c (lazy_take): don't enumerate an extra value.
19320	  [ruby-dev:45370] [Bug #6152]
19321
19322Fri Mar 16 06:30:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19323
19324	* enumerator.c (lazy_zip_func): variadic argument needs explicit cast
19325	  on the platforms where VALUE is longer than int.
19326
19327	* enumerator.c (lazy_init_iterator): no need to check overflow twice.
19328
19329Fri Mar 16 05:47:09 2012  Eric Hodel  <drbrain@segment7.net>
19330
19331	* enumerator.c (lazy_init_iterator):  Fix type error (int vs long).
19332
19333Thu Mar 15 23:13:36 2012  Shugo Maeda  <shugo@ruby-lang.org>
19334
19335	* enum.c (rb_enum_values_pack): rename from enum_values_pack, and
19336	  remove static.
19337
19338	* enumerator.c (lazy_init_iterator, lazy_init_yielder,
19339	  lazy_select_func, lazy_reject_func, lazy_grep_func): handle
19340	  multiple values correctly.
19341
19342	* enumerator.c (lazy_grep): change the behavior when a block is
19343	  given, to be consistent with Enumerable#grep.
19344
19345Thu Mar 15 19:12:31 2012  Shugo Maeda  <shugo@ruby-lang.org>
19346
19347	* enumerator.c (lazy_zip): rescue StopIteration returned by
19348	  Enumerator#next.
19349
19350Thu Mar 15 18:19:53 2012  Shugo Maeda  <shugo@ruby-lang.org>
19351
19352	* enumerator.c (lazy_zip, lazy_cycle): Enumerator::Lazy#{zip,cycle}
19353	  should be eager when a block is given, to be consistent with
19354	  Enumerable#{zip,cycle}.
19355
19356Thu Mar 15 17:45:27 2012  Shugo Maeda  <shugo@ruby-lang.org>
19357
19358	* enumerator.c (InitVM_Enumerator): renamed Enumerable::Lazy to
19359	  Enumerator::Lazy.
19360
19361Thu Mar 15 16:37:38 2012  Shugo Maeda  <shugo@ruby-lang.org>
19362
19363	* enumerator.c (enumerable_lazy): added cycle to the documentation.
19364
19365Thu Mar 15 15:37:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19366
19367	* parse.y (parser_yylex): fix warning line number.
19368
19369Thu Mar 15 15:19:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19370
19371	* enumerator.c (lazy_cycle): check argument number overflow before
19372	  creating temporary array.
19373
19374Thu Mar 15 15:04:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19375
19376	* util.c (ruby_strtod): no need to check same digit for hexdigit
19377	  twice.  [ruby-dev:45363][Bug #6146]
19378
19379	* parse.y (sym_check_asciionly): check ascii compatibility before
19380	  scanning for code range.
19381
19382	* parse.y (intern_str): set to us-ascii if ascii only.
19383	  [ruby-dev:45363][Bug #6146]
19384
19385	* file.c (ruby_enc_find_basename): allow NULL as alllen.
19386	  [ruby-dev:45363][Bug #6146]
19387
19388Thu Mar 15 14:49:31 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19389
19390	* string.c (rb_str_conv_enc_opts): default to original encoding.
19391
19392Thu Mar 15 13:47:17 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
19393
19394	* hash.c (env_str_new, rb_f_getenv, env_fetch): use rb_str_conv_enc()
19395	  instead of rb_str_encode() to simplify the code.
19396
19397Thu Mar 15 12:44:50 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
19398
19399	* win32/win32.c, include/ruby/win32.h (rb_w32_ugetenv): new API to
19400	  accept and to return UTF-8 strings.
19401
19402	* win32/win32.c (rb_w32_getenv): follow above change.
19403
19404	* win32/win32.c (rb_w32_get_environ): returns UTF-8 environment area.
19405
19406	* hash.c (env_str_new, rb_f_getenv, env_fetch): follow above changes.
19407	  [Bug #5570] [ruby-core:40737]
19408
19409Thu Mar 15 10:57:27 2012  Shugo Maeda  <shugo@ruby-lang.org>
19410
19411	* enumerator.c (lazy_cycle): add Enumerable::Lazy#cycle.
19412
19413Thu Mar 15 10:31:40 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19414
19415	* test/ruby/test_arity.rb (TestArity#err_mess): use assert_raise.
19416
19417Thu Mar 15 07:03:52 2012  Eric Hodel  <drbrain@segment7.net>
19418
19419	* vm_eval.c (check_funcall):  Raise ArgumentError if respond_to?
19420	  requires more than three arguments. [Bug #6000]
19421
19422	* test/ruby/test_object.rb (class TestObject):  Test for respond_to?
19423	  requiring more than three arguments.
19424
19425Thu Mar 15 06:08:06 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
19426
19427	* include/ruby/intern.h: Add rb_check_arity, rb_error_arity [#6085]
19428
19429	* array.c: Use rb_check_arity / rb_error_arity
19430
19431	* class.c: ditto
19432
19433	* enumerator.c: ditto
19434
19435	* eval.c: ditto
19436
19437	* file.c: ditto
19438
19439	* hash.c: ditto
19440
19441	* numeric.c: ditto
19442
19443	* proc.c: ditto
19444
19445	* process.c: ditto
19446
19447	* random.c: ditto
19448
19449	* re.c: ditto
19450
19451	* signal.c: ditto
19452
19453	* string.c: ditto
19454
19455	* struct.c: ditto
19456
19457	* transcode.c: ditto
19458
19459	* vm_eval.c: ditto
19460
19461	* vm_insnhelper.c: ditto & implementation of rb_error_arity
19462
19463	* test/ruby/test_arity.rb: tests for above
19464
19465Thu Mar 15 06:08:05 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
19466
19467	* vm_insnhelper.c: improve number of arguments error in case of
19468	  optional parameters (issue #6085)
19469
19470	* include/ruby/intern.h: define UNLIMITED_ARGUMENTS
19471
19472	* test/ruby/test_arity.rb:  test for above
19473
19474Thu Mar 15 00:58:04 2012  Shugo Maeda  <shugo@ruby-lang.org>
19475
19476	* enumerator.c (enumerable_lazy): fix the documentation of
19477	  Enumerable#lazy.
19478
19479Wed Mar 14 22:01:06 2012  Shugo Maeda  <shugo@ruby-lang.org>
19480
19481	* enumerator.c (lazy_init_iterator): break when Qundef is returned
19482	  to make obj.drop(3).take(2) work properly.
19483
19484	* enumerator.c (lazy_take_while): add Enumerable::Lazy#take_while.
19485
19486	* enumerator.c (lazy_drop): add Enumerable::Lazy#drop.
19487
19488	* enumerator.c (lazy_drop_while): add Enumerable::Lazy#drop_while.
19489
19490	* enumerator.c (InitVM_Enumerator): add Enumerable::Lazy#force as an
19491	  alias of to_a.
19492
19493Wed Mar 14 19:28:40 2012  Shugo Maeda  <shugo@ruby-lang.org>
19494
19495	* enumerator.c (lazy_take): add Enumerable::Lazy#take.
19496
19497Wed Mar 14 18:40:36 2012  Shugo Maeda  <shugo@ruby-lang.org>
19498
19499	* enumerator.c: use long for array indices.
19500
19501Wed Mar 14 18:25:18 2012  Shugo Maeda  <shugo@ruby-lang.org>
19502
19503	* enumerator.c: moved the comment of StopIteration.
19504
19505Wed Mar 14 17:55:29 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
19506
19507	* numeric.c (flodivmod): must go through the same pass if HAVE_FMOD or
19508	  not.  this is a bugfix of r35013.
19509
19510Wed Mar 14 16:41:55 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
19511
19512	* test/test_tmpdir.rb (TestTmpdir#test_world_writable): skip on Windows.
19513
19514Wed Mar 14 15:09:23 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
19515
19516	* numeric.c: fix flodivmod for cornercases [Bug #6044]
19517	  add ruby_float_mod
19518
19519	* insns.def (opt_mod): use ruby_float_mod
19520
19521	* internal.h: declare ruby_float_mod
19522
19523	* test/ruby/test_float.rb: tests for above
19524
19525	* test/ruby/envutil.rb: create helper assert_is_minus_zero
19526
19527Wed Mar 14 10:44:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19528
19529	* enumerator.c (lazy_grep_func): should use === instead of =~, as
19530	  well as Enumerable#grep
19531
19532Wed Mar 14 08:15:54 2012  Shugo Maeda  <shugo@ruby-lang.org>
19533
19534	* enumerator.c (lazy_flat_map_func): use each for non-Array objects.
19535
19536Wed Mar 14 08:06:35 2012  Shugo Maeda  <shugo@ruby-lang.org>
19537
19538	* enumerator.c (lazy_zip): add Enumerable::Lazy#zip.
19539
19540	* enumerator.c (lazy_lazy): just returns self.
19541
19542Wed Mar 14 07:48:36 2012  Tadayoshi Funaba  <tadf@dotrb.org>
19543
19544	* ext/date/date_core.c (datetime_s_now): [ruby-core:43256].
19545
19546Tue Mar 13 22:00:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19547
19548	* compile.c (iseq_set_arguments): keyword rest arg without keyword args.
19549
19550	* node.c (dump_node): dump kw_rest_arg too.
19551
19552	* parse.y (block_param, f_arg): more kwrest patterns.
19553	  [ruby-core:42455][Bug #5989]
19554
19555	* parse.y (new_args_gen): no extra kw_rest_arg if no keyword rest arg.
19556
19557Tue Mar 13 15:17:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19558
19559	* parse.y (block_param, f_args): add rules for the case arguments
19560	  begin with kwrest.  [ruby-core:42455][Bug #5989]
19561
19562Tue Mar 13 12:37:53 2012  NARUSE, Yui  <naruse@ruby-lang.org>
19563
19564	* io.c (io_encoding_set): always warn if external encoding and internal
19565	  encoding are identical. [ruby-core:40727] [Bug #5568]
19566
19567Tue Mar 13 12:37:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19568
19569	* gc.c: add ObjectSpace::WeakMap.  [ruby-dev:44565][Bug #5350]
19570
19571	* lib/weakref.rb: use WeakMap instead of _id2ref.
19572
19573Tue Mar 13 10:59:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19574
19575	* tool/rbinstall.rb (prepare): skip if basedir is not defined.
19576	  [ruby-core:39135][Bug #5238]
19577
19578	* tool/rbinstall.rb (CONFIG.[]): check for mandatory
19579	  configurations.
19580
19581Tue Mar 13 00:09:18 2012  Shugo Maeda  <shugo@ruby-lang.org>
19582
19583	* enumerator.c (enumerable_lazy): added documentation.
19584
19585Mon Mar 12 20:19:25 2012  Tanaka Akira  <akr@fsij.org>
19586
19587	* lib/tmpdir.rb (Dir::tmpdir): test the current directory suitable for
19588	  temporary directory.
19589
19590Mon Mar 12 20:08:16 2012  Tanaka Akira  <akr@fsij.org>
19591
19592	* lib/fileutils.rb (fu_have_symlink?): specify TypeError for rescue
19593	  clause.
19594
19595Mon Mar 12 19:23:13 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19596
19597	* encoding.c (rb_find_encoding): new function find encoding from
19598	  arbitrary object as a pointer to rb_encoding, and return NULL if
19599	  not found.
19600
19601	* io.c (io_encoding_set): just warn unsupported encodings, but not
19602	  exception.  [ruby-core:40726] [Bug #5567]
19603
19604Mon Mar 12 19:03:32 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19605
19606	* vm_method.c (Init_eval_method): respond_to? and
19607	  respond_to_missing? are public.
19608
19609Mon Mar 12 14:56:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19610
19611	* node.h (NEW_YIELD), parse.y (new_yield_gen): array-values flags
19612	  has been already obsolete.  patch by Thomas Enebo.
19613	  [ruby-core:41929][Bug #5847]
19614
19615Mon Mar 12 12:44:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19616
19617	* vm_method.c (Init_eval_method): copy basic methods to Exception.
19618	  [ruby-core:40287][Bug #5473]
19619
19620Mon Mar 12 10:13:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19621
19622	* eval_jump.c (rb_exec_end_proc): remember the latest exit status.
19623	  [ruby-core:43173][Bug #5218]
19624
19625Mon Mar 12 07:33:12 2012  Tanaka Akira  <akr@fsij.org>
19626
19627	* lib/tmpdir.rb: update document for changing
19628	  FileUtils.remove_entry_secure to FileUtils.remove_entry.
19629
19630	* NEWS: add incompatibility note for lib/tmpdir.rb.
19631
19632Mon Mar 12 07:19:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19633
19634	* lib/tmpdir.rb (Dir.tmpdir): should not use world-writable but
19635	  non-sticky directory.
19636
19637	* lib/tmpdir.rb (Dir.mktmpdir): check the parent directory.
19638
19639Mon Mar 12 07:04:11 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19640
19641	* random.c (Init_Random): removed rb_Random_DEFAULT and register as
19642	  mark-object instead of global variable.
19643
19644Mon Mar 12 07:03:32 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19645
19646	* random.c (random_s_rand): ensure default PRNG is re-initialized
19647	  after fork.  patched by Eric Wong.  [ruby-core:41209][Bug #5661]
19648
19649Sun Mar 11 23:57:29 2012  NARUSE, Yui  <naruse@ruby-lang.org>
19650
19651	* pack.c (pack_unpack): when unpack('M') occurs an illegal byte
19652	  sequence, output the "=" character and the following character in
19653	  the decoded data without any transformation.
19654	  [ruby-dev:44875] [Bug #5635]
19655
19656Sun Mar 11 22:32:43 2012  NARUSE, Yui  <naruse@ruby-lang.org>
19657
19658	* ext/json: Merge 164a75c8bd2007d32c4d7665d53140d8fc126dcd.
19659	  [ruby-core:41917] [Bug #5846]
19660
19661Sun Mar 11 17:10:04 2012  Shota Fukumori  <sorah@tubusu.net>
19662
19663	* lib/test/unit.rb: Put error message into STDERR if failed to launch
19664	  worker (job) process. [ruby-dev:44802] [Bug #5577]
19665
19666	* lib/test/unit/parallel.rb: If failed to increment_io, exit with code
19667	  2. [ruby-dev:44802] [Bug #5577]
19668
19669Sun Mar 11 15:46:45 2012  Shota Fukumori  <sorah@tubusu.net>
19670
19671	* io.c: fix rdoc of `IO.binwrite` to show same as `IO.write` except
19672	  it opens file with mode "wb:ASCII-8BIT". [Bug #5782] [ruby-core:42592]
19673
19674Sat Mar 10 23:52:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19675
19676	* st.c: pack tables also generic keys.  patched by Sokolov Yura at
19677	  https://github.com/ruby/ruby/pull/84
19678
19679	* st.c: add st_foreach_check for fixing iteration over packed table
19680	  and st_delete_safe.  patched by Sokolov Yura at
19681	  https://github.com/ruby/ruby/pull/84
19682
19683	* st.c: fix packed num_entries on delete_safe.  patched by Sokolov
19684	  Yura at https://github.com/ruby/ruby/pull/84
19685
19686Fri Mar  9 14:29:32 2012  Shugo Maeda  <shugo@ruby-lang.org>
19687
19688	* enumerator.c (lazy_flat_map): add Enumerable::Lazy#flat_map.
19689
19690Fri Mar  9 06:29:22 2012  Aaron Patterson <aaron@tenderlovemaking.com>
19691
19692	* ext/psych/lib/psych.rb (load, parse): stop parsing or loading after
19693	  the first document has been parsed.
19694
19695	* test/psych/test_stream.rb: pertinent tests.
19696
19697Fri Mar  9 06:17:05 2012  Aaron Patterson <aaron@tenderlovemaking.com>
19698
19699	* ext/psych/lib/psych.rb (parse_stream, load_stream): if a block is
19700	  given, documents will be yielded to the block as they are parsed.
19701	  [ruby-core:42404] [Bug #5978]
19702
19703	* ext/psych/lib/psych/handlers/document_stream.rb: add a handler that
19704	  yields documents as they are parsed
19705
19706	* test/psych/test_stream.rb: corresponding tests.
19707
19708Fri Mar  9 00:35:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19709
19710	* enumerator.c (lazy_initialize, enumerable_lazy): no additional
19711	  arguments.
19712
19713Fri Mar  9 00:30:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19714
19715	* enumerator.c: add Enumerable#lazy. based on the patch by
19716	  Innokenty Mikhailov at <https://github.com/ruby/ruby/pull/101>
19717	  [ruby-core:37164] [Feature #4890]
19718
19719Fri Mar  9 00:25:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19720
19721	* enumerator.c (enumerator_each, generator_each): pass arguments to
19722	  the block with yielder.
19723
19724Fri Mar  9 00:25:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19725
19726	* array.c (rb_ary_cat): new function to concat objects into array.
19727
19728Thu Mar  8 16:44:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19729
19730	* .gdbinit (rb_numtable_entry): update for recent refactoring of
19731	  st_table.
19732
19733Wed Mar  7 22:41:50 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
19734
19735	* lib/xmlrpc/client.rb (module XMLRPC): fix typo.
19736
19737	* test/xmlrpc/test_client.rb (test_async_call): add test for
19738	  XMLRPC::Client#call_async to check above fix.
19739
19740Wed Mar  7 16:30:24 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19741
19742	* error.c (rb_load_fail): should honor encoding.
19743
19744	* load.c (load_failed): ditto.
19745
19746Wed Mar  7 12:26:25 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19747
19748	* error.c (rb_load_fail): use path as a string, not char*.
19749
19750	* internal.h: (rb_load_fail): moved from ruby/intern.h.
19751
19752	* ruby.c (load_file_internal): fname cannot be NULL.
19753
19754Wed Mar  7 08:32:43 2012  Aaron Patterson <aaron@tenderlovemaking.com>
19755
19756	* error.c (rb_loaderror_with_path): Adding the missing file as an
19757	  instance variable to the LoadError exception.
19758	  [ruby-core:39079]
19759
19760	* load.c: call rb_loaderror_with_path so that the missing path is
19761	  added to the exception.
19762
19763	* ruby.c: call rb_loaderror rather than raising our own LoadError
19764	  exception.
19765
19766	* include/ruby/intern.h: add declaration for rb_loaderror_with_path.
19767
19768	* test/ruby/test_require.rb: add supporting test for LoadError#path
19769	  method.
19770
19771Wed Mar  7 08:28:00 2012  Aaron Patterson <aaron@tenderlovemaking.com>
19772
19773	* lib/xmlrpc/parser.rb: support i8 types. Thanks Stas Kelvich!
19774	  [ruby-core:29246] [Feature #3090]
19775
19776	* test/xmlrpc/test_client.rb: supporting test
19777
19778Wed Mar  7 07:43:29 2012  Aaron Patterson <aaron@tenderlovemaking.com>
19779
19780	* lib/xmlrpc/client.rb: assume servers that do not send a Content-Type
19781	  header are sending 'text/xml'. Thanks Nathan Leavitt!
19782	  [ruby-core:41204] [Bug #5660]
19783
19784	* test/xmlrpc/test_client.rb: supporting test
19785
19786Wed Mar  7 07:39:28 2012  Aaron Patterson <aaron@tenderlovemaking.com>
19787
19788	* test/xmlrpc/test_client.rb: adding a test for performing an XMLRPC
19789	  call.
19790	* test/xmlrpc/data/blog.xml: supporting XML document for the response.
19791
19792Tue Mar  6 16:24:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19793
19794	* parse.y (parser_tokadd_string): escape simple regexp meta
19795	  character terminators.
19796
19797Tue Mar  6 10:11:43 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19798
19799	* ext/io/console/console.c (set_rawmode): clear ECHOE and ECHOK
19800	  bits too.
19801
19802	* ext/io/console/console.c (echo_p): ignore ECHOE and ECHOK bits.
19803	  [ruby-dev:45309] [Bug #6116]
19804
19805	* ext/io/console/console.c (console_raw): fix rdoc.
19806
19807	* ext/io/console/console.c (console_set_echo): mentioned about
19808	  platform dependency.
19809
19810Tue Mar  6 07:18:10 2012  Aaron Patterson <aaron@tenderlovemaking.com>
19811
19812	* lib/xmlrpc/client.rb: switch net/http post2 calls to modern
19813	  `request_post` methods.
19814
19815Tue Mar  6 02:31:20 2012  Aaron Patterson <aaron@tenderlovemaking.com>
19816
19817	* ext/psych/lib/psych/core_ext.rb: only extend Kernel if IRB is loaded
19818	  in order to stop method pollution.
19819
19820Tue Mar  6 01:34:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19821
19822	* parse.y (block_call): rules for block_call after block_call.
19823	  based on a patch by pasberth https://github.com/ruby/ruby/pull/102
19824	  [ruby-dev:45308][Bug #6115]
19825
19826Tue Mar  6 01:24:13 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19827
19828	* parse.y (block_command, block_call): simplified rules.
19829
19830Mon Mar  5 18:28:35 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
19831
19832	* test/ruby/test_regexp.rb (TestRegexp#test_source): fix typo.
19833	* test/ruby/test_regexp.rb (TestRegexp#test_equal): ditto.
19834
19835Mon Mar  5 17:11:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19836
19837	* ext/syck/lib/syck/rubytypes.rb (Exception.yaml_new): fix bug
19838	  that causes YAML serialization problem for Exception.
19839	  Exception#initialize doesn't use visible instance variable for
19840	  the exception message, so call the method with the message.
19841	  patched by Jingwen Owen Ou <jingweno AT gmail.com>.
19842	  http://github.com/ruby/ruby/pull/41
19843
19844Mon Mar  5 16:50:22 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
19845
19846	* test/ruby/test_sleep.rb (TestSleep#test_sleep_5sec): syntax error.
19847
19848	* test/ruby/test_sleep.rb (TestSleep#test_sleep_5sec): call uname
19849	  only on linux because it's a workaround for linux only.
19850
19851Mon Mar  5 12:44:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19852
19853	* st.c (unpack_entries): chain entries directly.  based on a patch
19854	  by Sokolov Yura <funny.falcon AT gmail.com>.
19855
19856	* st.c (unpack_entries): use union instead of casted pointer.
19857	  patched by Sokolov Yura <funny.falcon AT gmail.com>.
19858
19859	* st.c: use PACKED_ENT and FIND_ENTRY.  patched by Sokolov
19860	  Yura <funny.falcon AT gmail.com>.
19861
19862	* st.c (unpack_entries): reallocate bins if packed array size
19863	  is not same as initial bins size.  based on a patch by
19864	  Sokolov Yura <funny.falcon AT gmail.com>.
19865
19866Mon Mar  5 11:51:48 2012  NARUSE, Yui  <naruse@ruby-lang.org>
19867
19868	* ext/bigdecimal/lib/bigdecimal/math.rb: remove description about
19869	  BigMath#log. patched by Sho Hashimoto [ruby-dev:45307] [Bug #6112]
19870
19871	* string.c (str_byteslice): fix typo.
19872
19873Sun Mar  4 23:21:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19874
19875	* parse.y (parser_tokadd_string): regexp engine doesn't need
19876	  terminators to be escaped.  [ruby-core:40364][Bug #5484]
19877
19878Sat Mar  3 22:51:46 2012  Tanaka Akira  <akr@fsij.org>
19879
19880	* process.c (rb_run_exec_options_err): chdir at last to interpret
19881	  relative pathnames from the current directory of the parent process.
19882
19883Sat Mar  3 12:20:44 2012  Tadayoshi Funaba  <tadf@dotrb.org>
19884
19885	* ext/date/date_strftime.c: reassigned some variables.
19886
19887Sat Mar  3 12:12:16 2012  Tadayoshi Funaba  <tadf@dotrb.org>
19888
19889	* ext/date/date_{parse,strptime}.c: [ruby-dev:45303].
19890
19891Sat Mar  3 10:09:21 2012  Aaron Patterson <aaron@tenderlovemaking.com>
19892
19893	* lib/xmlrpc/client.rb (initialize): net/http defaults to 1_2 in 1.8+,
19894	  so we can safely remove the call to enable it.
19895
19896Sat Mar  3 08:42:25 2012  Aaron Patterson <aaron@tenderlovemaking.com>
19897
19898	* lib/xmlrpc/client.rb (new2): use URI for uri parsing.
19899	* test/xmlrpc/test_client.rb: test that query params are passed to the
19900	  client constructor.
19901
19902Sat Mar  3 08:20:10 2012  Aaron Patterson <aaron@tenderlovemaking.com>
19903
19904	* lib/xmlrpc/client.rb (new2): raises an ArgumentError on bad
19905	  arguments.
19906	* test/xmlrpc/test_client.rb: tests for bad uris
19907
19908Sat Mar  3 08:08:11 2012  Aaron Patterson <aaron@tenderlovemaking.com>
19909
19910	* lib/xmlrpc/client.rb (new2): fix custom port specification when an
19911	  SSL uri is used.
19912	* test/xmlrpc/test_client.rb: tests for XMLRPC::Client.new2
19913
19914Sat Mar  3 08:03:29 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19915
19916	* ext/syck/rubyext.c (mktime_do): use ISDIGIT().
19917	  [ruby-core:43060] [Bug #6108]
19918
19919	* ext/syck/token.c (sycklex_yaml_utf8): cast as unsigned char.
19920	  [ruby-core:43060] [Bug #6108]
19921
19922Sat Mar  3 06:57:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19923
19924	* configure.in (ruby_pc): make configurable.  [Bug #6051]
19925
19926Fri Mar  2 17:49:03 2012  Hiroshi Nakamura  <nahi@ruby-lang.org>
19927
19928	* .travis.yml (branches): Enable TravisCI for ruby_1_9_3.
19929
19930Fri Mar  2 17:13:33 2012  Hiroshi Nakamura  <nahi@ruby-lang.org>
19931
19932	* test/ruby/test_array.rb (test_combination2): Make the test case for
19933	  [ruby-core:29240] more descriptive.
19934	  cf. http://bugs.jruby.org/6518
19935
19936Fri Mar  2 16:37:11 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19937
19938	* file.c (file_expand_path): use wcscasecmp().
19939
19940Fri Mar  2 16:36:31 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19941
19942	* thread_pthread.c (native_cond_timeout): cast explicitly to suppress
19943	  a warning.
19944
19945Fri Mar  2 16:35:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19946
19947	* io.c (pipe_open): cmd is no longer used if fork is available.
19948
19949Thu Mar  1 16:13:18 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19950
19951	* internal.h (rb_file_const, rb_file_load_ok): moved functions for
19952	  internal use only.
19953
19954Thu Mar  1 15:40:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19955
19956	* win32/makedirs.bat: new command to make intermediate
19957	  directories, and not to report any errors if the directory
19958	  already exists.
19959
19960	* win32/Makefile.sub (MAKEDIRS): enable command extensions.
19961
19962Thu Mar  1 01:25:43 2012  NARUSE, Yui  <naruse@ruby-lang.org>
19963
19964	* regparse.c (is_onechar_cclass): optimize character class
19965	  Merge Onigmo 27278c12e6674043cc8affca6507e20e119a86ee.
19966
19967	* regparse.c (is_onechar_cclass): [bug] unexpected match occurs when a
19968	  char class contains no char
19969
19970	* enc/unicode.c (init_case_fold_table): define the sizes of case
19971	  folding tables in casefold.h
19972
19973Wed Feb 29 16:11:34 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
19974
19975	* win32/Makefile.sub (MAKEDIRS): use mkdir of cmd.exe instead of ruby.
19976	  [Bug #6103] [ruby-core:43012]
19977
19978	* win32/README.win32: added a notice about command extension of cmd.exe.
19979
19980Wed Feb 29 15:39:39 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
19981
19982	* test/ruby/test_io.rb (TestIO#test_readpartial_locktmp): skip on
19983	  windows because of the platform restriction.
19984
19985Wed Feb 29 15:38:50 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
19986
19987	* test/ruby/memory_status.rb (Memory): syntax error.
19988
19989Wed Feb 29 13:06:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19990
19991	* test/ruby/memory_status.rb: use /proc/self/status if it is in
19992	  the expected format.
19993
19994Wed Feb 29 06:14:51 2012  Tadayoshi Funaba  <tadf@dotrb.org>
19995
19996	* ext/date/date_core.c: reverted r34825.
19997
19998Tue Feb 28 23:20:01 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
19999
20000	* Makefile.in (PLATFORM_DIR): add a variable for `win32` directory.
20001	* Makefile.in (clean-platform): add new target.
20002	  It cleans `win32` directory.
20003
20004	* common.mk (clean): add a dependency for `win32` directory.
20005	* common.mk (distclean): ditto.
20006	* common.mk (distclean-platform): add new target.
20007	  It cleans `win32` directory.
20008	* common.mk ($(PLATFORM_D)): add new target to make `win32` directory.
20009	* common.mk (win32/win32.$(OBJEXT)): move win32.o into `win32`
20010	  directory.
20011	* common.mk (win32/file.$(OBJEXT)): add new target for win32/file.c.
20012
20013	* configure.in: move win32.o into `win32` directory and add
20014	  win32/file.o to MISSING.
20015
20016	* file.c (file_load_ok, rb_file_load_ok): replace static
20017	  file_load_ok() with public rb_file_load_ok().
20018	  It's to link Windows implementation in win32/file.c.
20019	* file.c (rb_find_file_ext_safe): ditto.
20020	* file.c (rb_find_file_safe): ditto.
20021
20022	* win32/file.c (rb_file_load_ok): new file. Add Windows specific
20023	  optimized implementation of rb_file_load_ok(). We created a
20024	  separated file to avoid too many #ifdef macro which is unreadable.
20025
20026	* win32/Makefile.sub (PLATFORM_DIR): add a variable for `win32`
20027	  directory.
20028	* win32/Makefile.sub (MISSING): move win32.obj into `win32`
20029	  directory and add win32/file.obj to MISSING.
20030	* win32/Makefile.sub (MAKEDIRS): replace MINIRUBY with BASERUBY.
20031	  It's because miniruby doesn't exist when making `win32` directory.
20032	* win32/Makefile.sub (clean-platform): add new target to clean `win32`
20033	  directory.
20034	* win32/Makefile.sub ({$(srcdir)}.c{}.obj): make it not match
20035	  win32/file.c to build properly.
20036	* win32/Makefile.sub (win32/win32.$(OBJEXT)): move win32.obj into
20037	 `win32` directory.
20038
20039	  Patch created with Luis Lavena.
20040	  [ruby-core:42480] [Feature #5999]
20041
20042Tue Feb 28 20:27:25 2012  Tadayoshi Funaba  <tadf@dotrb.org>
20043
20044	* ext/date/date_core.c: [ruby-core:42998]
20045
20046Tue Feb 28 18:47:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20047
20048	* io.c (io_binwrite, rb_io_syswrite): use shared frozen source
20049	  strings.
20050
20051	* io.c (io_fread, io_getpartial, rb_io_sysread): set buffer size
20052	  after check if readable, which can cause thread switch.
20053	  [ruby-dev:45297][Bug #6099]
20054
20055Tue Feb 28 17:16:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20056
20057	* lib/time.rb (Time#xmlschema): use strftime specifiers instead of
20058	  fractional exponential calculation which yields undesirable
20059	  result.  [ruby-core:42997][Bug #6100]
20060
20061Tue Feb 28 14:15:29 2012  Eric Hodel  <drbrain@segment7.net>
20062
20063	* lib/net/protocol.rb: Add OpenTimeout subclass of Timeout::Error
20064	* lib/net/pop.rb:  Modernize Timeout usage.  Patch by Eric Wong.
20065	  Use Net::OpenTimeout instead of Timeout::Error.  [Bug #5765]
20066	* lib/net/http.rb:  ditto
20067	* lib/net/smtp.rb:  ditto
20068	* lib/net/telnet.rb:  ditto
20069
20070Tue Feb 28 13:51:12 2012  Eric Hodel  <drbrain@segment7.net>
20071
20072	* lib/net/http.rb:  Retry HTTP requests for additional network errors.
20073	  Introduce OpenTimeout subclass of Timeout::Error.  [Bug #6001]
20074	* test/net/http/test_http.rb:  Reduce timeout to 0.01s for faster test
20075	* test/net/http/test_https.rb:  ditto
20076
20077Tue Feb 28 11:44:49 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20078
20079	* configure.in (debugflags): check if -ggdb is accepted.
20080	  [ruby-core:42875][Bug #6080]
20081
20082Tue Feb 28 10:28:51 2012  Aaron Patterson <aaron@tenderlovemaking.com>
20083
20084	* ext/psych/lib/psych.rb: default open YAML files with utf8 external
20085	  encoding. [ruby-core:42967]
20086	* test/psych/test_tainted.rb: ditto
20087
20088Mon Feb 27 23:46:09 2012  Yukihiro Matsumoto  <matz@ruby-lang.org>
20089
20090	* parse.y (opt_bv_decl): allow newline at the end.  [ruby-dev:45292]
20091
20092Mon Feb 27 20:43:05 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
20093
20094	* io.c (rb_io_set_pos): add rdoc about textmode.
20095
20096	* test/ruby/test_io.rb (TestIO#test_setpos): use binmode.
20097
20098Mon Feb 27 17:00:15 2012  Akinori MUSHA  <knu@iDaemons.org>
20099
20100	* string.c (rb_str_crypt): Update rdoc and state that this
20101	  function is system dependent.  Reviewed by nobu, thanks to
20102	  @takai.
20103
20104Mon Feb 27 17:03:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20105
20106	* ext/bigdecimal/bigdecimal.c (GetVpValueWithPrec): since methods
20107	  can be overridden, so should not make an assumption on the type
20108	  of results.  [ruby-core:42969][Bug #6093]
20109
20110Mon Feb 27 10:54:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20111
20112	* lib/mkmf.rb (try_cppflags, try_cflags, try_ldflags): replace the
20113	  target flags if the given flag is accepted.
20114
20115Mon Feb 27 10:53:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20116
20117	* test/rubygems/test_gem_specification.rb (test_self_from_yaml_syck_default_key_bug):
20118	  ignore the test for too old versions.
20119
20120Mon Feb 27 10:53:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20121
20122	* lib/test/unit.rb (Test::Unit::Runner#puke): skips with no
20123	  messages should be trivial.
20124
20125Mon Feb 27 10:50:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20126
20127	* io.c, process.c, time.c, ext: use rb_sys_fail_str instead of
20128	  rb_sys_fail.
20129
20130Mon Feb 27 10:48:49 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20131
20132	* ext/openssl/extconf.rb: suppress useless deprecation warnings
20133	  from OpenSSL added by Apple.
20134
20135Sun Feb 26 23:29:49 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20136
20137	* regparse.c (add_code_range_to_buf0): wrong condition of duplicated
20138	  warnings.
20139
20140Sun Feb 26 11:26:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20141
20142	* compile.c (iseq_compile_each): call on special object instead of
20143	  self.  since stabby lambda is a syntax, so it should not be
20144	  affected by the context.  [ruby-core:42349][Bug #5966]
20145
20146	* insns.def (send): no special deal for FCALL.  self should be put
20147	  on TOS instead.
20148
20149Sun Feb 26 05:35:43 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20150
20151	* error.c (report_bug): use buf and snprintf to avoid consuming stack.
20152	  [ruby-dev:45272] [Bug #6058]
20153
20154Sat Feb 25 17:41:19 2012  Tanaka Akira  <akr@fsij.org>
20155
20156	* ext/dbm/extconf.rb (headers): try ambiguous headers at last.
20157
20158Sat Feb 25 17:07:15 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20159
20160	* lib/fileutils.rb: use chomp(?/) instead of sub to optimize and avoid
20161	  to regexping invalid string.
20162
20163Sat Feb 25 16:18:24 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20164
20165	* complex.c (nucomp_marshal_load): raise error on invalid data.
20166	  reported by John Firebaugh [ruby-core:42860] [Bug #6076]
20167
20168Sat Feb 25 14:46:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20169
20170	* ext/dl/dl.c (Init_dl): support intrinsic types, size_t, ptrdiff_t
20171	  and intptr_t.  [ruby-core:42460][Feature #5992]
20172
20173	* ext/fiddle/fiddle.c (Init_fiddle): ditto.
20174
20175	* ext/dl/lib/dl/cparser.rb (DL::CParser#parse_ctype): ditto.
20176
20177Sat Feb 25 11:08:28 2012  Tanaka Akira  <akr@fsij.org>
20178
20179	* ext/curses/curses.c (Init_curses): use rb_define_const once for
20180	  Curses::VERSION.
20181
20182	* ext/dbm/dbm.c (Init_dbm): ditto for DBM::VERSION.
20183
20184Sat Feb 25 10:34:22 2012  Tanaka Akira  <akr@fsij.org>
20185
20186	* ext/curses/curses.c (Init_curses): make Curses::VERSION
20187	  understandable without context.
20188
20189	* ext/dbm/dbm.c (Init_dbm): ditto for DBM::VERSION.
20190
20191Sat Feb 25 07:53:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20192
20193	* parse.y (parser_tokadd_string): insert a backslash only if
20194	  quoted by single quotes.  [ruby-dev:45281] [Bug #6069]
20195
20196Sat Feb 25 07:53:49 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20197
20198	* dir.c (dir_inspect), io.c (rb_io_inspect): keep encoding of path.
20199	  [Bug #6072]
20200
20201Sat Feb 25 07:53:40 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20202
20203	* dir.c (dir_initialize): keep path in original encoding.
20204
20205	* error.c (syserr_initialize): prefer the encoding of message over
20206	  locale.  [ruby-dev:45279][Bug #6071]
20207
20208Sat Feb 25 06:55:29 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20209
20210	* file.c (utime_internal): fix a variable missed to replace.
20211	  [ruby-core:42864] [Bug #6077]
20212
20213Fri Feb 24 18:21:55 2012  Hiroshi Nakamura  <nahi@ruby-lang.org>
20214
20215	* test/zlib/test_zlib.rb (TestZlibGzipReader#test_encoding): Add
20216	  encoding testcases for GzipReader#read.  read() emits
20217	  Encoding.default_external in contrast to read(size) emits BINARY.
20218	  See also: http://bugs.jruby.org/6208
20219
20220Fri Feb 24 17:56:39 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
20221
20222	* test/ruby/test_literal.rb (TestRubyLiteral#test_special_const):
20223	  test for https://bugs.php.net/bug.php?id=61095
20224
20225Fri Feb 24 16:48:29 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20226
20227	* dir.c, file.c, io.c (rb_sys_fail_path): use rb_sys_fail_str.
20228
20229	* error.c: new functions to deal exceptions with string instances.
20230
20231	* dir.c, file.c, io.c: use rb_sys_fail_path.
20232
20233Fri Feb 24 15:49:07 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20234
20235	* configure.in (__builtin_unreachable): check for clang.
20236	  [ruby-core:42849]
20237
20238	* include/ruby/ruby.h (UNREACHABLE): fallback definition.
20239
20240Fri Feb 24 13:54:33 2012  Aaron Patterson <aaron@tenderlovemaking.com>
20241
20242	* ext/psych/parser.c: prevent a memory leak by protecting calls to
20243	  handler callbacks.
20244	* test/psych/test_parser.rb: test to demonstrate leak.
20245
20246Fri Feb 24 12:07:34 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
20247
20248	* lib/net/http.rb: Fix documentation. Patched from Florian Mhun
20249	  via http://github.com/ruby/ruby/pull/96
20250
20251Fri Feb 24 11:48:07 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
20252
20253	* string.c (rb_str_prepend): Fix documentation for String#prepend.
20254	  Patched from Franck Verrot via http://github.com/ruby/ruby/pull/98
20255	  and Andrew Horsman via http://github.com/ruby/ruby/pull/55
20256
20257Fri Feb 24 10:08:33 2012  Eric Hodel  <drbrain@segment7.net>
20258
20259	* lib/net/http.rb (Net::HTTP#transport_request):  Fix infinite loop
20260	  upon EOFError or Errno::ECONNRESET where count is reset to 0.
20261	* test/net/http/test_http.rb (class TestNetHTTPKeepAlive):  Test for
20262	  above.
20263
20264Fri Feb 24 09:05:40 2012  Eric Hodel  <drbrain@segment7.net>
20265
20266	* complex.c (Init_Complex):  Document Complex::I.  Patch by Sylvain
20267	  Daubert.  [Feature #5623]
20268
20269Fri Feb 24 08:52:09 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20270
20271	* parse.y (parser_tokadd_string, parser_yylex): insert a backslash
20272	  if the next character is non-ascii.  [ruby-dev:45278] [Bug #6069]
20273
20274Fri Feb 24 08:13:20 2012  Eric Hodel  <drbrain@segment7.net>
20275
20276	* lib/profiler.rb:  Add Profiler documentation by Gonzalo Rodriguez.
20277	  [Bug #5816]
20278
20279Fri Feb 24 08:08:38 2012  Aaron Patterson <aaron@tenderlovemaking.com>
20280
20281	* ext/psych/parser.c: set parser encoding based on the YAML input
20282	  rather than user configuration.
20283	* test/psych/test_encoding.rb: corresponding tests.
20284	* test/psych/test_parser.rb: ditto
20285	* test/psych/test_tainted.rb: ditto
20286
20287Fri Feb 24 08:02:52 2012  Eric Hodel  <drbrain@segment7.net>
20288
20289	* hash.c (Init_Hash):  Add section on how objects are used as Hash keys
20290	  and how to use custom classes as Hash keys.
20291
20292Fri Feb 24 07:36:11 2012  Eric Hodel  <drbrain@segment7.net>
20293
20294	* object.c (rb_obj_eql):  Improve equality documentation by adding an
20295	  example of equal? vs == and recommending eql? be aliased to == when
20296	  overridden.
20297
20298Fri Feb 24 07:21:15 2012  Eric Hodel  <drbrain@segment7.net>
20299
20300	* object.c (rb_obj_hash):  Added note that the hash value is not
20301	  deterministic on Marc-Andre's suggestion.  Expanded description of
20302	  the purpose of the hash method.  [Bug #6068]
20303
20304Thu Feb 23 23:01:21 2012  Tanaka Akira  <akr@fsij.org>
20305
20306	* ext/dbm/extconf.rb: unused macro removed.
20307
20308Thu Feb 23 22:26:53 2012  Tanaka Akira  <akr@fsij.org>
20309
20310	* test/test_curses.rb: new file.
20311
20312Thu Feb 23 19:57:56 2012  Tanaka Akira  <akr@fsij.org>
20313
20314	* ext/curses/rain.rb: trap SIGHUP, SIGINT, SIGQUIT and SIGTERM only.
20315
20316Thu Feb 23 19:56:48 2012  Tanaka Akira  <akr@fsij.org>
20317
20318	* signal.c (sig_trap): show signal name on error.
20319
20320Thu Feb 23 12:21:48 2012  Tanaka Akira  <akr@fsij.org>
20321
20322	* ext/dbm/extconf.rb: use DBM_SUFFIX only to detect header of
20323	  Berkeley DB.
20324
20325Thu Feb 23 10:00:18 2012  Eric Hodel  <drbrain@segment7.net>
20326
20327	* io.c (rb_io_f_sync):  Fix double-negative typo.  [ruby-trunk - #5837]
20328
20329Thu Feb 23 09:57:21 2012  Eric Hodel  <drbrain@segment7.net>
20330
20331	* load.c (rb_f_require):  Add note to require for scope of items in the
20332	  loaded file.  [ruby-trunk - #5910]
20333
20334Thu Feb 23 03:58:08 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
20335
20336	* lib/ostruct.rb (delete_field): Bug fix so previous value is
20337	  returned. Patch by Nick Recobra [Bug #6063]
20338
20339Thu Feb 23 02:33:00 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20340
20341	* io.c (rb_io_extract_modeenc): fail only if conflicting
20342	  text/binary modes given explicitly.  [ruby-dev:45268][Bug #6055]
20343
20344Wed Feb 22 23:27:08 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20345
20346	* test/iconv/test_option.rb: enabled.  [ruby-core:42802][Bug #6061]
20347
20348Wed Feb 22 21:45:56 2012  Tanaka Akira  <akr@fsij.org>
20349
20350	* ext/curses/curses.c: use defined() to suppress a warning.
20351
20352Wed Feb 22 21:44:29 2012  Tanaka Akira  <akr@fsij.org>
20353
20354	* ext/curses/extconf.rb: refactored.
20355
20356Wed Feb 22 20:42:28 2012  Tanaka Akira  <akr@fsij.org>
20357
20358	* ext/curses/extconf.rb: try to distinguish curses_version is a
20359	  function or variable.
20360
20361	* ext/curses/curses.c (Init_curses): refine Curses::VERSION.
20362
20363Wed Feb 22 19:47:03 2012  Tanaka Akira  <akr@fsij.org>
20364
20365	* ext/curses/extconf.rb: show the chosen header and library.
20366
20367Wed Feb 22 19:22:31 2012  Tadayoshi Funaba  <tadf@dotrb.org>
20368
20369	* reverted 34739 for test/date.
20370
20371Wed Feb 22 19:08:55 2012  Tanaka Akira  <akr@fsij.org>
20372
20373	* ext/curses/extconf.rb: refactored.
20374
20375Wed Feb 22 18:44:41 2012  Shota Fukumori  <sorah@tubusu.net>
20376
20377	* lib/test/unit.rb (setup_options): add option "--retry" as opposite
20378	  for "--no-retry"
20379
20380Wed Feb 22 18:34:02 2012  Shota Fukumori  <sorah@tubusu.net>
20381
20382	* lib/test/unit.rb (setup_options): add option "--show-skip" to
20383	  cancel "--hide-skip" (-q)
20384
20385Wed Feb 22 17:36:22 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20386
20387	* io.c (rb_io_s_foreach): argument check before making Enumerator.
20388	  [ruby-dev:31525]
20389
20390Wed Feb 22 17:07:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20391
20392	* io.c (rb_io_s_foreach): return enumerator including keyword
20393	  arguments.  [ruby-dev:45267][Bug #6054]
20394
20395Wed Feb 22 12:15:16 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20396
20397	* configure.in: allow llvm-gcc because it work fine with r34278.
20398
20399Wed Feb 22 10:57:08 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20400
20401	* regparse.c (fetch_token): don't use // comment.
20402
20403Wed Feb 22 10:32:11 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20404
20405	* test/mkmf/test_framework.rb: try CoreFoundation framework, than
20406	  Cocoa which is dependent on QuickTime SDK which has separated
20407	  since Xcode 4.3.
20408
20409Wed Feb 22 10:18:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20410
20411	* common.mk (test-all, test-ruby): more dependencies.
20412
20413Wed Feb 22 06:48:55 2012  Eric Hodel  <drbrain@segment7.net>
20414
20415	* file.c (rb_f_test):  Fix formatting of Kernel#test rdoc.
20416
20417Wed Feb 22 06:12:15 2012  Tanaka Akira  <akr@fsij.org>
20418
20419	* ext/dbm/extconf.rb: check DBM_SUFFIX for Mac OS X.
20420	  Its ndbm.h doesn't include db.h.
20421
20422Wed Feb 22 06:02:42 2012  Tanaka Akira  <akr@fsij.org>
20423
20424	* ext/dbm/dbm.c (fdbm_initialize): disable Berkeley DB error messages.
20425
20426	* ext/dbm/extconf.rb: check DBC type for above.
20427
20428	[ruby-dev:45269]
20429
20430Tue Feb 21 20:23:47 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20431
20432	* hash.c (rb_any_hash): treat Qundef like as other special constants.
20433
20434	* hash.c (hash_foreach_iter): fix signature.
20435
20436Tue Feb 21 19:39:34 2012  Tanaka Akira  <akr@fsij.org>
20437
20438	* ext/curses/curses.c (Init_curses): use curses_version() for
20439	  Curses::VERSION.
20440
20441Tue Feb 21 18:21:25 2012  Narihiro Nakamura  <authornari@gmail.com>
20442
20443	* gc.c : remove gc_clear_mark_on_sweep_slots() and use
20444	  rest_sweep() instead of it, because some dead objects might be
20445	  marked in next the mark phase by false pointers.
20446	  [ruby-core:42672]
20447
20448Tue Feb 21 16:08:17 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20449
20450	* proc.c (rb_hash_proc): get wrapped pointer properly.  [Bug #6048]
20451
20452Tue Feb 21 14:41:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20453
20454	* template/ruby.pc.in: added rubylibprefix, {rubylib,vendor,site}dir
20455	  and {ruby,vendor,site}archdir.  [ruby-core:42766][Feature #6052]
20456
20457Tue Feb 21 09:13:25 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
20458
20459	* proc.c (method_hash, proc_hash): Fix {Unbound}Method#hash
20460	  [Bug #6048]. Isolate hash computation for proc
20461
20462	* internal.h: Declaration for above
20463
20464	* vm_method.c (rb_method_definition_hash): Computation for
20465	  hash part of a method definition
20466
20467	* method.h: Declaration for above
20468
20469	* test/ruby/test_method.rb: Test for above
20470
20471Tue Feb 21 02:56:15 2012  Yukihiro Matsumoto  <matz@ruby-lang.org>
20472
20473	* enumerator.c (enumerator_rewind): update the documentation.
20474	  fixed: #6053
20475
20476Mon Feb 20 23:38:35 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
20477
20478	* enc/depend: ignore mktable.c because it's not encoding library.
20479	  [ruby-core:42760] [Bug #6049]
20480
20481Mon Feb 20 21:40:53 2012  Tanaka Akira  <akr@fsij.org>
20482
20483	* ext/curses/extconf.rb: fold too long lines.
20484
20485Mon Feb 20 21:16:48 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
20486
20487	* lib/fileutils.rb: revert a line modified accidentally at r34669.
20488	  This fixes mingw test errors in TestDir_M17N.
20489	  [ruby-core:42728] [Feature #4970]
20490
20491Mon Feb 20 21:09:27 2012  Tanaka Akira  <akr@fsij.org>
20492
20493	* ext/curses/curses.c (Init_curses): define Curses::VERSION.
20494
20495Mon Feb 20 21:08:00 2012  Tanaka Akira  <akr@fsij.org>
20496
20497	* ext/curses/extconf.rb: restore $libs and $defs for each
20498	  header/library choice.
20499
20500Mon Feb 20 19:57:26 2012  Tanaka Akira  <akr@fsij.org>
20501
20502	* ext/dbm/extconf.rb: weaken header/library consistency check if db is
20503	  "ndbm".  It seems several (possibly historical) distributions
20504	  provide libndbm.  However the content of libndbm vary: Berkeley DB,
20505	  GDBM or even 4.3BSD NDBM.  (Mandriva, Tru64 UNIX, OpenSuSE,
20506	  SCO OpenServer, ...)
20507	  "ndbm" is not searched automatically now (dblib doesn't contain it)
20508	  but configure --with-dbm-type=ndbm choose libndbm and ndbm.h.
20509
20510Mon Feb 20 19:15:57 2012  Tanaka Akira  <akr@fsij.org>
20511
20512	* ext/dbm/extconf.rb: refine variable names.
20513
20514Mon Feb 20 15:50:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20515
20516	* configure.in: check if -fstack-protector is really available.
20517
20518Sun Feb 19 23:43:38 2012  Tanaka Akira  <akr@fsij.org>
20519
20520	* ext/dbm/extconf.rb: show header and library found.
20521
20522Sun Feb 19 23:01:01 2012  Tanaka Akira  <akr@fsij.org>
20523
20524	* ext/dbm/dbm.c (Init_dbm): refine DBM::VERSION definition.
20525
20526	* ext/dbm/extconf.rb: provide RUBYDBM_GDBM_HEADER macro.
20527
20528Sun Feb 19 17:07:27 2012  Tanaka Akira  <akr@fsij.org>
20529
20530	* test/dbm/test_dbm.rb (test_dbmfile_suffix): check pag and dir is
20531	  empty for 4.3BSD ndbm.
20532
20533Sun Feb 19 03:00:30 2012  Tanaka Akira  <akr@fsij.org>
20534
20535	* test/dbm/test_dbm.rb (test_dbmfile_suffix): check magic numbers.
20536
20537Sun Feb 19 01:05:41 2012  Tanaka Akira  <akr@fsij.org>
20538
20539	* ext/dbm/extconf.rb: detect GDBM's ndbm.h by testing dbm_clearerr is
20540	  an empty macro.
20541
20542Sun Feb 19 00:25:55 2012  Tanaka Akira  <akr@fsij.org>
20543
20544	* ext/dbm/extconf.rb: don't choose 'dbm' if _GDB_H_ is defined which
20545	  is available since GDBM 1.9 because 'gdbm_compat' is appropriate
20546	  choice since GDBM 1.8.1.
20547
20548Sat Feb 18 23:27:00 2012  Kenta Murata  <mrkn@mrkn.jp>
20549
20550	* random.c: remove a duplicated comment.
20551
20552Sat Feb 18 18:43:13 2012  Tanaka Akira  <akr@fsij.org>
20553
20554	* ext/dbm/extconf.rb (dblib): prefer recent GDBM over older GDBM.
20555	  (have_declared_libvar): new function to check a declared variable
20556	  exists in a library.
20557	  (have_undeclared_libvar): renamed from renamed from have_libvar.
20558	  (headers.db_check2): check that GDBM version variable if GDBM header
20559	  is chosen.
20560
20561	* ext/dbm/dbm.c (Init_dbm): use HAVE_DECLARED_LIBVAR_GDBM_VERSION and
20562	  HAVE_UNDECLARED_LIBVAR_GDBM_VERSION macro.
20563
20564Sat Feb 18 13:53:01 2012  Tanaka Akira  <akr@fsij.org>
20565
20566	* test/dbm/test_dbm.rb (test_dbmfile_suffix): DBM::VERSION should
20567	  be Berkeley DB if foo.db is created by DBM.open.
20568
20569Sat Feb 18 13:40:37 2012  Tanaka Akira  <akr@fsij.org>
20570
20571	* test/dbm/test_dbm.rb (test_dbmfile_suffix): test dbm file suffix.
20572
20573Sat Feb 18 12:50:59 2012  Tanaka Akira  <akr@fsij.org>
20574
20575	* ext/dbm/dbm.c (DBM::VERSION): define it by detecting _GDBM_H_ or
20576	  _DBM_IOERR.
20577
20578Sat Feb 18 07:52:45 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20579
20580	* tool/enc-unicode.rb: don't use 1.9 feature on tools.
20581
20582Sat Feb 18 02:48:39 2012  Aaron Patterson <aaron@tenderlovemaking.com>
20583
20584	* lib/fileutils.rb: refactored FileUtil methods to use the
20585	  `define_command` API.  Patch from 7rans <transfire@gmail.com>
20586	* test/fileutils/test_dryrun.rb: corresponding test refactoring
20587	* test/fileutils/test_nowrite.rb: ditto
20588	* test/fileutils/test_verbose.rb: ditto
20589
20590Fri Feb 17 21:39:36 2012  Tanaka Akira  <akr@fsij.org>
20591
20592	* ext/dbm/extconf.rb: remove dbm.
20593
20594Fri Feb 17 21:18:39 2012  Tanaka Akira  <akr@fsij.org>
20595
20596	* ext/dbm/extconf.rb: refine header/library mismatch detection.
20597	  check only for ndbm.h except libc.  check _GDBM_H_ for gdbm.
20598	  check _DBM_IOERR for the original ndbm.
20599
20600Fri Feb 17 20:30:44 2012  Tanaka Akira  <akr@fsij.org>
20601
20602	* ext/dbm/extconf.rb: don't check libdbm.  It is not a ndbm
20603	  implementation.  (libdbm in Version 7 Unix is database library
20604	  for single database per process.)
20605
20606Fri Feb 17 15:38:53 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20607
20608	* Merge Onigmo-5.13.1. [ruby-dev:45057] [Feature #5820]
20609	  https://github.com/k-takata/Onigmo
20610	  cp reg{comp,enc,error,exec,parse,syntax}.c reg{enc,int,parse}.h
20611	  cp oniguruma.h
20612	  cp tool/enc-unicode.rb
20613	  cp -r enc/
20614
20615Fri Feb 17 15:20:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20616
20617	* enum.c (enum_each_slice): arrays to be yielded can be newly
20618	  created in the block.
20619
20620	* enum.c: move work variables to objects not to let called blocks
20621	  access stack area out of scope.  [Bug #5801]
20622
20623Fri Feb 17 12:35:55 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20624
20625	* tool/merger.rb: remove borders from the commit message which is used
20626	  when the commit doesn't change ChangeLog.
20627
20628Fri Feb 17 11:50:11 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20629
20630	* common.mk (btest, btest-ruby, test-sample test-knownbugs)
20631	  (test-all, test-ruby): depend on prog.
20632
20633Fri Feb 17 09:56:22 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20634
20635	* lib/mkmf.rb (create_header): log the content of header.
20636
20637Fri Feb 17 09:44:55 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20638
20639	* tool/transcode-tblgen.rb (import_ucm): don't use \h because the
20640	  script should work with ruby 1.8.
20641
20642	* tool/enc-unicode.rb: ditto.
20643
20644Fri Feb 17 07:33:29 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20645
20646	* enum.c (id_lshift): use constant ID.
20647
20648Fri Feb 17 07:30:53 2012  Tanaka Akira  <akr@fsij.org>
20649
20650	* ext/dbm/extconf.rb: refactored to split too long conditions.
20651
20652Fri Feb 17 00:23:25 2012  Tanaka Akira  <akr@fsij.org>
20653
20654	* test/dbm/test_dbm.rb: fix skip condition for libgdbm 1.8.0 or prior.
20655	  reported by Bohuslav Kabrda.
20656	  [ruby-core:42685] [ruby-trunk - Bug #6036]
20657
20658Fri Feb 17 00:04:21 2012  Tanaka Akira  <akr@fsij.org>
20659
20660	* ext/dbm/extconf.rb: check _DB_H_ macro unavailable except
20661	  Berkeley DB library.
20662
20663Thu Feb 16 05:41:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20664
20665	* insns.def (splatarray): make new array if flag is set.
20666
20667	* compile.c (iseq_compile_each): make new array with
20668	  splat. [ruby-core:21901][Feature #1125]
20669
20670Thu Feb 16 00:14:04 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
20671
20672	* lib/abbrev.rb (Array#abbrev): add missing '"' in documentation.
20673
20674Wed Feb 15 22:20:19 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
20675
20676	* cont.c (rb_fiber_reset_root_local_storage): add a new function to
20677	  restore rb_thread_t::local_storage.
20678
20679	* cont.c (rb_obj_is_fiber): add a new function to tell finalizer to
20680	  prevent fibers from destroy.
20681
20682	* gc.c (rb_objspace_call_finalizer): don't sweep fibers at finalizing
20683	  objspace.
20684
20685	* internal.h (rb_fiber_reset_root_local_storage, rb_obj_is_fiber):
20686	  add prototypes.
20687
20688	* vm.c (ruby_vm_destruct): reset main thread's local_storage before
20689	  free main thread. rb_thread_t::local_storage is replaced by fiber's
20690	  local storage when forked from fiber, and it should be already freed
20691	  when the fiber was destroyed. [ruby-core:41456] [Bug #5700]
20692
20693	* test/ruby/test_fiber.rb (test_fork_from_fiber): add test for fork
20694	  from fiber.
20695
20696Wed Feb 15 19:57:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20697
20698	* ext/fiddle/closure.c (callback): deal with unsigned integers.
20699	  [ruby-core:42458][Bug #5991][Bug #6022]
20700
20701	* ext/fiddle/conversions.c (value_to_generic, generic_to_value):
20702	  ditto.
20703
20704	* ext/fiddle/closure.c (callback): same as r34506.
20705
20706Wed Feb 15 17:41:31 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20707
20708	* io.c (io_strsetbuf): call rb_str_modify to make str independent
20709	  before calling rb_str_set_len for r34580.
20710
20711Wed Feb 15 12:30:10 2012  Eric Hodel  <drbrain@segment7.net>
20712
20713	* ext/zlib/zlib.c (Init_zlib):  Added Zlib::TEXT and note that
20714	  Zlib::ASCII is deprecated in zlib 1.2.3 and newer.
20715
20716Wed Feb 15 12:24:40 2012  Eric Hodel  <drbrain@segment7.net>
20717
20718	* ext/zlib/zlib.c:  Move constant descriptions to constants.  Remove
20719	  extra comment block at the top of Init_zlib().
20720
20721Wed Feb 15 12:30:46 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
20722
20723	* lib/ostruct.rb: Create getters and setters after dup.
20724	  [Bug #6028] [rubyspecs:0380bcc]
20725
20726Wed Feb 15 10:59:52 2012  Narihiro Nakamura  <authornari@gmail.com>
20727
20728	* gc.c (HEAP_BITMAP_LIMIT): HEAP_BITMAP_LIMIT is computed on the
20729	  basis of HEAP_SIZE because it must covers a whole heap block.
20730	  [ruby-trunk - Bug #6006]
20731
20732Wed Feb 15 09:27:45 2012  Eric Hodel  <drbrain@segment7.net>
20733
20734	* ext/zlib/zlib.c (Init_zlib):  Added Zlib::FIXED and Zlib::RLE
20735	  strategies.
20736	* NEWS:  Add note about the new Zlib constants.
20737
20738Wed Feb 15 09:11:36 2012  Eric Hodel  <drbrain@segment7.net>
20739
20740	* ext/zlib/zlib.c:  Improve documentation.  [ruby-trunk - Bug #5948]
20741
20742Wed Feb 15 07:28:54 2012  Eric Hodel  <drbrain@segment7.net>
20743
20744	* encoding.c (Init_Encoding):  Add IO example of internal and external
20745	  encoding.  Fixed a typo in the force_encoding example.  [#5949]
20746
20747Wed Feb 15 06:58:21 2012  Eric Hodel  <drbrain@segment7.net>
20748
20749	* encoding.c (Init_Encoding):  Add Encoding documentation.
20750	  [ruby-trunk - Bug #5949]
20751	* encoding.c (rb_set_default_external):  Fix typo in documentation.
20752
20753Tue Feb 14 20:22:11 2012  Narihiro Nakamura  <authornari@gmail.com>
20754
20755	* gc.c (CEILDIV): rename to a appropriate name.
20756
20757Tue Feb 14 18:07:20 2012  Narihiro Nakamura  <authornari@gmail.com>
20758
20759	* gc.c (assign_heap_slot): SEGV happens cause on 64-bit platform
20760	  sometime there should be `objs-=2` instead of `objs--`.
20761	  [Bug #6006]
20762	  patched by Sokolov Yura. https://github.com/ruby/ruby/pull/92
20763
20764Tue Feb 14 16:00:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20765
20766	* io.c (io_setstrbuf): cut down the buffer if longer.
20767
20768Tue Feb 14 15:06:37 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20769
20770	* lib/test/unit/assertions.rb (build_message): skip escaped
20771	  question marks.
20772
20773Tue Feb 14 12:10:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20774
20775	* variable.c (autoload_const_set, autoload_require): fix
20776	  signatures.
20777
20778Tue Feb 14 05:23:40 2012  Eric Hodel  <drbrain@segment7.net>
20779
20780	* process.c (proc_wait):  Change typo "SystemError" to
20781	  "SystemCallError".  [ruby-trunk - Bug #5962]
20782	* process.c (proc_wait2):  ditto
20783
20784Tue Feb 14 05:18:24 2012  Eric Hodel  <drbrain@segment7.net>
20785
20786	* enumerator.c:  Document use of Enumerator.new for creating a lazy
20787	  enumeration for filtering/chaining.  [ruby-trunk - Feature #707]
20788
20789Mon Feb 13 23:01:50 2012  Akinori MUSHA  <knu@iDaemons.org>
20790
20791	* vm_method.c (rb_method_boundp):
20792	  obj.respond_to?(:a_protected_method) should return false because
20793	  calling a protected method may cause NoMethodError if called
20794	  from outside the class inheritance tree.  Kernel#respond_to? is
20795	  mostly used to test if it is safe to call a method, so the false
20796	  positive should be avoided. [ruby-dev:40461] [ruby-dev:41739]
20797	  [ruby-dev:41837]
20798
20799Mon Feb 13 21:52:06 2012  Narihiro Nakamura  <authornari@gmail.com>
20800
20801	* gc.c (HEAP_OBJ_LIMIT, HEAP_BITMAP_LIMIT): HEAP_OBJ_LIMIT used
20802	  `sizeof(struct heaps_slot)` while heap is currently allocated
20803	  with `struct heaps_header`.
20804	  HEAP_BITMAP_LIMIT were calculated from
20805	  `HEAP_OBJ_LIMIT/sizeof(uintptr_t)` - one Byte for each object,
20806	  not one Bit. [Bug #6006]
20807	  patched by Sokolov Yura. https://github.com/ruby/ruby/pull/92
20808
20809Mon Feb 13 18:30:32 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20810
20811	* io.c (io_setstrbuf): defer resizing buffer string until data is
20812	  read actually.
20813
20814Mon Feb 13 10:24:39 2012  Loren Segal  <lsegal@soen.ca>
20815
20816	* io.c (Init_IO): use directive hack to make ARGF documentable
20817	  in other tools.  [ruby-core:42515][Bug #6007]
20818
20819Sun Feb 12 20:43:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20820
20821	* include/ruby/ruby.h (rb_event_hook_func_t): add argument names.
20822
20823Sun Feb 12 16:30:23 2012  Akinori MUSHA  <knu@iDaemons.org>
20824
20825	* tool/merger.rb (#default_merge_branch): Add support for
20826	  Subversion 1.7 which adopted a whole new working directory
20827	  structure.
20828
20829Sun Feb 12 15:14:41 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
20830
20831	* benchmark/driver.rb: suppress unused/shadowing variable warnings.
20832
20833Sun Feb 12 03:14:40 2012  Eric Hodel  <drbrain@segment7.net>
20834
20835	* vm_eval.c (check_funcall):  Call respond_to? with matching arity for
20836	  legacy single-argument implementations.  [ruby-trunk - Bug #6000]
20837
20838Sat Feb 11 12:04:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20839
20840	* compile.c (defined_expr): guard the whole expression.
20841	  [ruby-dev:45021][Bug#5786]
20842
20843Sat Feb 11 08:34:42 2012  Eric Hodel  <drbrain@segment7.net>
20844
20845	* ext/zlib/zlib.c (rb_inflate_add_dictionary):  Added
20846	  Zlib::Inflate#add_dictionary to allow users to pre-specify
20847	  for using during #inflate.  [ruby-trunk - Feature #5937]
20848
20849Sat Feb 11 08:23:02 2012  Eric Hodel  <drbrain@segment7.net>
20850
20851	* ext/zlib/zlib.c (do_inflate):  Inflate more data if buffered data
20852	  exists.  Allows Zlib::Inflate#set_dictionary to work.
20853	  [ruby-trunk - Bug #5929]
20854
20855Sat Feb 11 06:00:48 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20856
20857	* dir.c (fnmatch): The * needs to be escaped to avoid formatting in
20858	  fnmatch comment.
20859	  patched by @dalton. https://github.com/ruby/ruby/pull/91
20860
20861Fri Feb 10 03:41:31 2012  Aaron Patterson <aaron@tenderlovemaking.com>
20862
20863	* ext/psych/parser.c: removed external encoding setter, allow parser
20864	  to be reused.
20865	* ext/psych/lib/psych/parser.rb: added external encoding setter.
20866	* test/psych/test_parser.rb: test parser reuse
20867
20868Fri Feb 10 01:30:41 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20869
20870	* ext/dl/dl.h (ALIGN_OF): use offsetof().
20871
20872	* ext/dl/dl.h (DLALIGN): round up at once and get rid of overflow.
20873
20874Fri Feb 10 00:47:07 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20875
20876	* test/ruby/envutil.rb (assert_no_memory_leak): new assertion to
20877	  check memory leak by invoking child ruby process and watch its
20878	  memory size.
20879
20880Thu Feb  9 23:41:44 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
20881
20882	* test/pathname/test_pathname.rb (test_binread): add assertion to
20883	  check encoding.
20884
20885Thu Feb  9 16:48:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20886
20887	* ext/dl/dl.c (Init_dl): fix mangled document.
20888
20889Thu Feb  9 16:10:34 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
20890
20891	* test/ruby/memory_status.rb (Memory::Win32): 64bit support.
20892
20893Thu Feb  9 16:08:55 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
20894
20895	* ext/dl/lib/value.rb (DL::ValueUtil.{unsigned_value,signed_value}):
20896	  currently pack/unpack does not accept "q!" and "Q!".
20897
20898Thu Feb  9 16:01:29 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
20899
20900	* ext/fiddle/conversions.c (value_to_generic): src is not guaranteed as
20901	  a Bignum if the type is LONG_LONG.  it may be a Fixnum if the value
20902	  is small.
20903
20904Thu Feb  9 11:32:36 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
20905
20906	* ext/dl/lib/types.rb: Win64 support.
20907
20908Thu Feb  9 04:12:29 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20909
20910	* test/pathname/test_pathname.rb: not read but binread.
20911	  patched by Benoit Daloze, [ruby-core:42440] [Bug #5984]
20912
20913Wed Feb  8 22:29:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20914
20915	* string.c (rb_str_modify_expand): fix memory leak.
20916
20917Wed Feb  8 14:06:59 2012  Hiroshi Nakamura  <nahi@ruby-lang.org>
20918
20919	* ext/openssl/ossl_ssl.c: Add SSL constants and allow to unset SSL
20920	  option to prevent BEAST attack. See [Bug #5353].
20921
20922	  In OpenSSL, OP_DONT_INSERT_EMPTY_FRAGMENTS is used to prevent
20923	  TLS-CBC-IV vulnerability described at
20924	  http://www.openssl.org/~bodo/tls-cbc.txt
20925	  It's known issue of TLSv1/SSLv3 but it attracts lots of attention
20926	  these days as BEAST attack. (CVE-2011-3389)
20927
20928	  Until now ossl sets OP_ALL at SSLContext allocation and call
20929	  SSL_CTX_set_options at connection.  SSL_CTX_set_options updates the
20930	  value by using |= so bits set by OP_ALL cannot be unset afterwards.
20931
20932	  This commit changes to call SSL_CTX_set_options only 1 time for each
20933	  SSLContext. It sets the specified value if SSLContext#options= are
20934	  called and sets OP_ALL if not.
20935
20936	  To help users to unset bits in OP_ALL, this commit also adds several
20937	  constant to SSL such as
20938	  OpenSSL::SSL::OP_DONT_INSERT_EMPTY_FRAGMENTS.  These constants were
20939	  not exposed in Ruby because there's no way to unset bits in OP_ALL
20940	  before.
20941
20942	  Following is an example to enable 0/n split for BEAST prevention.
20943
20944	    ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS
20945
20946	* test/openssl/test_ssl.rb: Test above option exists.
20947
20948Wed Feb 8 13:12:02 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
20949
20950	* ext/openssl/ossl_x509name.c: Use the numerical representation of
20951	  unrecognized OIDs instead of the sn "UNDEF".
20952
20953	* test/openssl/test_x509name.rb: Add tests for the fixed behavior.
20954
20955	  Patch provided by Paul Kehrer, thank you!
20956	  [ruby-core:41769] [Feature #5787]
20957
20958Wed Feb  8 09:49:58 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20959
20960	* tool/merger.rb: don't abort, update first.
20961
20962Wed Feb 8 09:47:33 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
20963
20964	* ext/openssl/ossl_asn1.c: Call INT2NUM only once for GeneralString.
20965	  Thanks to Mantas Mikulenas for noticing and providing a patch!
20966	  [ruby-core:42358] [Bug #5972]
20967
20968Wed Feb 8 09:19:00 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
20969
20970	* ext/openssl/ossl_cipher.c: Add warning about key as IV.
20971
20972Tue Feb  7 20:08:12 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
20973
20974	* error.c (exc_inspect): Fix typo. patch from Trent Ogren
20975	  via https://github.com/ruby/ruby/pull/90
20976
20977Tue Feb  7 19:37:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20978
20979	* st.c: refactor packed entries using structs.
20980
20981Tue Feb  7 14:52:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20982
20983	* st.c (st_update): table can be unpacked in the callback.
20984
20985	* st.c (st_foreach): should not yield same pair when checking
20986	  after unpacking.
20987
20988Mon Feb  6 21:55:13 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20989
20990	* tool/merger.rb: abort if the working directory is dirty.
20991
20992	* tool/merger.rb: update the working directory after commit.
20993
20994Mon Feb  6 00:16:27 2012  NARUSE, Yui  <naruse@ruby-lang.org>
20995
20996	* encoding.c (rb_enc_compatible): return ASCII-8BIT even if 2nd string
20997	  is ascii only string. [ruby-core:42354] [Bug #5968]
20998
20999Fri Feb  3 07:16:47 2012  Eric Hodel  <drbrain@segment7.net>
21000
21001	* lib/webrick.rb:  Moved proxy rewriting to WEBrick::HTTPProxy.
21002	* lib/webrick/httpproxy.rb:  Add examples of creating a proxy server
21003	  and response rewriting using HTTPProxy.
21004
21005Fri Feb  3 06:53:22 2012  Eric Hodel  <drbrain@segment7.net>
21006
21007	* ext/openssl/ossl_x509store.c:  Add class documentation for
21008	  OpenSSL::X509::Store
21009
21010Thu Feb  2 22:28:13 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
21011
21012	* test/net/http/test_https_proxy.rb
21013	  (HTTPSProxyTest#test_https_proxy_authentication):
21014	  add workaround to avoid to hang up without openssl.
21015	  see [ruby-dev:45021][Bug #5786]
21016
21017	* test/resolv/test_dns.rb (TestResolvDNS#test_query_ipv4_address):
21018	  ditto.
21019
21020Thu Feb  2 21:48:18 2012  Kouhei Sutou  <kou@cozmixng.org>
21021
21022	* lib/rexml/parsers/baseparser.rb: use meaningful names.
21023
21024Thu Feb  2 21:38:52 2012  Kouhei Sutou  <kou@cozmixng.org>
21025
21026	* lib/rexml/parsers/baseparser.rb, test/rexml/test_namespace.rb:
21027	  fix the default xml namespace URI validation.
21028	  [ruby-dev:45169] [Bug #5956]
21029	  Reported by Miho Hiramatsu. Thanks!!!
21030
21031Thu Feb  2 17:51:02 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21032
21033	* io.c (argf_next_argv): reset ARGF.next_p on ARGV.replace.
21034	  r34409 breaks replacing ARGV.
21035	  [ruby-dev:45160] [Bug #5952]
21036
21037Thu Feb  2 16:21:01 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
21038
21039	* test/net/http/test_http.rb (TestNetHTTPKeepAlive#*): remove debug
21040	  output.
21041
21042Thu Feb  2 01:24:34 2012  Yusuke Endoh  <mame@tsg.ne.jp>
21043
21044	* parse.y (debug_lines, coverage): set file path encoding for coverage
21045	  result.  [ruby-dev:44950]
21046
21047Wed Feb  1 14:38:31 2012  Akinori MUSHA  <knu@iDaemons.org>
21048
21049	* lib/tempfile.rb (Tempfile#unlink, Tempfile::Remover#call): Just
21050	  call File.unlink and ignore ENOENT because existence check
21051	  before unlinking does not help in terms of race condition.
21052
21053	* lib/tempfile.rb (Tempfile#unlink, Tempfile::Remover#call): My
21054	  comment about thread safeness is obsolete.
21055
21056Wed Feb  1 09:50:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21057
21058	* doc/re.rdoc (Repetition): fix typo.  reported by Ori Avtalion
21059	  and patched by Zachary Scott.  [Bug #5947]
21060
21061Wed Feb  1 06:38:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21062
21063	* io.c (argf_close): skip stdin, which should be readable again.
21064	  [ruby-dev:45160] [Bug #5952]
21065
21066	* io.c (argf_readlines): reinitialize after all read to be
21067	  readable again.
21068
21069Tue Jan 31 21:27:43 2012  Narihiro Nakamura  <authornari@gmail.com>
21070
21071	* configure.in (HEAP_ALIGN_LOG): HEAP_ALIGN_LOG should be page
21072	  size in OpenBSD. [ruby-core:42158][Bug #5901]
21073
21074	* gc.c : avoid to redefine.
21075
21076Tue Jan 31 14:27:22 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21077
21078	* test/ruby/envutil.rb (EnvUtil.invoke_ruby): yield also child pid
21079	  in block form.
21080
21081Mon Jan 30 19:08:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21082
21083	* vm_eval.c (vm_call0): should pass block to enumerators.  patched
21084	  by Kazuki Tsujimoto.  [ruby-dev:44961][Bug #5731]
21085
21086	* vm_eval.c (method_missing), vm_insnhelper.c (vm_call_method):
21087	  ditto.  patched by satoshi shiba.
21088
21089Mon Jan 30 12:31:05 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
21090
21091	* file.c (append_fspath): need to set the encoding to result always.
21092
21093Mon Jan 30 10:38:37 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
21094
21095	* test/irb/test_completion.rb: skip if cannot load irb/completion
21096	  (maybe readline does not exist).
21097
21098Sun Jan 29 22:47:19 2012  Yutaka Kanemoto  <kanemoto@ruby-lang.org>
21099
21100	* tool/config.{guess,sub}: updated to automake-1.11.2.
21101
21102Sun Jan 29 12:17:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21103
21104	* ext/readline/readline.c (readline_attempted_completion_function):
21105	  respect encodings.  [Bug #5941]
21106
21107Sat Jan 28 09:33:33 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
21108
21109	* win32/win32.c (rb_w32_read): fix an issue that $stdin.read doesn't
21110	  terminate by CTRL-C on Windows.
21111	  [ruby-dev:45149] [Bug #5812]
21112
21113Sat Jan 28 08:18:11 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
21114
21115	* test/ruby/test_thread.rb
21116	  (TestThreadGroup#test_thread_timer_and_interrupt): skip exit status
21117	  assertion because we cannot get signal status on Windows.
21118
21119	* win32/win32.c (CreateChild): create process group to receive the
21120	  signal by GenerateConsoleCtrlEvent().
21121
21122	* win32/win32.c (kill): use CTRL_BREAK_EVENT instead of CTRL_C_EVENT
21123	  if a process group is specified. CTRL_C_EVENT signal cannot be
21124	  generated for process groups for the specification.
21125	  [ruby-dev:45149] [Bug #5812]
21126
21127Sat Jan 28 07:46:03 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
21128
21129	* thread_win32.c (rb_w32_wait_events_blocking): use
21130	  ruby_thread_from_native() instead of GET_THREAD() because
21131	  GET_THREAD() doesn't always return the current thread and
21132	  WaitForMultipleObjects() at rb_w32_read() doesn't return by
21133	  Thread#kill. This fixes TestQueue#test_thr_kill failure on
21134	  Windows.
21135
21136	* thread_win32.c (rb_w32_wait_events): use ruby_thread_from_native()
21137	  instead of GET_THREAD() for consistency with the above change.
21138
21139	* thread_win32.c (rb_w32_sleep): ditto.
21140
21141	* thread_win32.c (rb_w32_Sleep): ditto.
21142	  [ruby-dev:45149] [Bug #5812]
21143
21144Sat Jan 28 07:28:48 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
21145
21146	* test/zlib/test_zlib.rb (TestZlibGzipReader#test_reader_wrap): set
21147	  binmode explicitly for fixing test error on Windows. This is consistent
21148	  with r34243.
21149	  [ruby-dev:45149] [Bug #5812]
21150
21151Sat Jan 28 05:53:34 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21152
21153	* lib/irb/completion.rb (IRB::InputCompletor::CompletionProc):
21154	  ignore non-string name modules.  [ruby-core:42244][Bug #5938]
21155
21156Fri Jan 27 16:31:45 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21157
21158	* gc.c (HEAP_ALIGN, HEAP_ALIGN_MASK): DRY, let compiler calculate
21159	  from HEAP_ALIGN_LOG.
21160
21161Thu Jan 26 11:03:37 2012  Eric Hodel  <drbrain@segment7.net>
21162
21163	* lib/matrix.rb:  Clean up extra whitespace in output documentation.
21164
21165Thu Jan 26 03:24:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21166
21167	* ext/io/console/console.c (io_getch): default delegating method
21168	  for StringIO.  https://github.com/nobu/io-console/issues/4
21169
21170	* ext/stringio/stringio.c: moved some methods to hidden modules.
21171
21172Wed Jan 25 13:27:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21173
21174	* file.c (rb_file_s_basename): ignore non-ascii extension in
21175	  different encoding, which cannot match.
21176
21177	* file.c (rmext): no extension to strip if empty string.
21178
21179	* file.c (rb_enc_path_next, rb_enc_path_skip_prefix)
21180	  (rb_enc_path_last_separator, rb_enc_path_end)
21181	  (ruby_enc_find_basename, ruby_enc_find_extname): encoding-aware
21182	  path handling functions.
21183
21184	* file.c (rb_home_dir, file_expand_path, rb_realpath_internal)
21185	  (rb_file_s_basename, rb_file_dirname, rb_file_s_extname)
21186	  (rb_file_join): should respect the encodings of arguments than
21187	  file system encoding.  [ruby-dev:45145] [Bug #5919]
21188
21189	* dir.c (check_dirname, ruby_glob0): ditto.
21190
21191	* ext/pathname/pathname.c (path_sub_ext): ditto.
21192
21193Tue Jan 24 14:20:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21194
21195	* vm.c (rb_iter_break_value): new function to break a block with
21196	  the value.  [ruby-dev:45132] [Feature #5895]
21197
21198Tue Jan 24 12:58:41 2012  Yukihiro Matsumoto  <matz@ruby-lang.org>
21199
21200	* object.c (rb_Hash): add Kernel#Hash conversion method like
21201	  Array() or Float().  a patch from Run Paint Run Run.  Fix #3131
21202
21203Tue Jan 24 11:38:05 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21204
21205	* lib/uri/common.rb (URI.encode_www_form_component): initialize on
21206	  requiring to support JRuby, which runs parallel multithreads.
21207	  [ruby-core:42222] [Bug #5925]
21208
21209	* lib/uri/common.rb (URI.decode_www_form_component): initialize on
21210
21211Mon Jan 23 20:33:11 2012  Jason Kay  <geniture@me.com>
21212
21213	* lib/net/http.rb (Net::HTTP#connect): Writing entire packet at
21214	  once to avoid incomplete transmission.  Current code using
21215	  writeline was causing sub-optimal conversing with a proxy due to
21216	  the connect tunnel request headers being split over multiple
21217	  packets. The modification I made allows the connect request to
21218	  be written as one packet, avoiding problems and optimizing the
21219	  conversation.
21220
21221	  https://github.com/ruby/ruby/pull/72
21222	  [Feature #5460]
21223
21224Mon Jan 23 17:06:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21225
21226	* lib/uri/mailto.rb (URI::MailTo.build): follow Array#to_s change of
21227	  Ruby 1.9; use Array#join. [Bug #5840]
21228
21229Mon Jan 23 16:42:28 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21230
21231	* io.c (extract_binmode): raise an exception if binmode/textmode
21232	  is specified with both vmode and opthash.
21233	  [ruby-core:42199] [Bug #5918]
21234
21235Mon Jan 23 16:35:27 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21236
21237	* io.c (rb_io_extract_modeenc): set ASCII-8BIT if binmode is specified
21238	  with opthash. [ruby-core:42197] [Bug #5917]
21239
21240Mon Jan 23 10:08:00 2012  Kenta Murata  <mrkn@cookpad.com>
21241
21242	* test/cgi/test_cgi_util.rb (test_cgi_escape_preserve_encoding):
21243	  add a test for CGI::escape to preserve encoding.
21244
21245	* test/cgi/test_cgi_util.rb (test_cgi_unescape_preserve_encoding):
21246	  add a test for CGI::unescape to preserve encoding.
21247
21248Mon Jan 23 00:45:34 2012  Akinori MUSHA  <knu@iDaemons.org>
21249
21250	* misc/rdoc-mode.el (rdoc-imenu-create-index): Add imenu support
21251	  to rdoc-mode.
21252
21253	* misc/rdoc-mode.el (rdoc-mode): Fix regexp patterns containing
21254	  "\s " where CR/LF is not supposed to match.
21255
21256Sun Jan 22 15:41:26 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21257
21258	* parse.y (rb_intern3): split to registration check and new
21259	  registration.
21260
21261	* parse.y (rb_intern_str): make interned string shared with the
21262	  given string.
21263
21264	* parse.y (rb_intern3, rb_intern_str): check the coderange first.
21265
21266Sat Jan 21 22:21:07 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21267
21268	* include/ruby/ruby.h (FIXNUM_P): simple flag should be int.
21269
21270Sat Jan 21 21:51:19 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21271
21272	* encoding.c (rb_enc_compatible): fix segv on symbols.
21273	  [ruby-core:42204] [Bug #5921]
21274
21275Sat Jan 21 11:43:45 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21276
21277	* dir.c (dir_chdir, check_dirname): get rid of optimization-out.
21278
21279Fri Jan 20 20:47:37 2012  Kenta Murata  <mrkn@cookpad.com>
21280
21281	* lib/cgi/util.rb (CGI.escape): support a string with invalid byte
21282	  sequence.  [Bug #5913]
21283
21284	* test/cgi/test_cgi_util.rb
21285	  (test_cgi_escape_with_invalid_byte_sequence): test for the above
21286	  change.
21287
21288Fri Jan 20 17:37:37 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21289
21290	* vm.c (vm_exec): remove workaround for LLVM because r34278 fixes it.
21291
21292	* vm_insnhelper.c (vm_call_cfunc): ditto.
21293
21294Fri Jan 20 14:31:43 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21295
21296	* lib/net/http.rb (Net::HTTP#transport_request): retry a idempotent
21297	  request automatically. [ruby-dev:45030] [Bug #5790]
21298	  [ruby-core:41821] [Bug #5813]
21299
21300	* lib/net/http.rb (Net::HTTP#keep_alive_timeout=): added to specify
21301	  the second to reconnect the TCP connection on Keep-Alive.
21302	  The default value is 2 second because current servers uses 2 sec.
21303	  http://ftp-admin.blogspot.com/2009/09/keepalivetimeout2.html
21304
21305	* lib/net/http.rb (Net::HTTP#begin_transport): reconnect TCP
21306	  connection on keep-alive timeout.
21307
21308Thu Jan 19 07:53:09 2012  Tadayoshi Funaba  <tadf@dotrb.org>
21309
21310	* ext/date/date_strptime.c: moved detector of leftover.
21311
21312Thu Jan 19 07:10:47 2012  Tadayoshi Funaba  <tadf@dotrb.org>
21313
21314	* ext/date/date_parse.c: [ruby-core:42173].
21315
21316Wed Jan 18 18:11:02 2012  Akinori MUSHA  <knu@iDaemons.org>
21317
21318	* misc/rdoc-mode.el (rdoc-mode): Add provide so that requiring
21319	  this library succeeds.
21320
21321Wed Jan 18 18:06:45 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21322
21323	* ext/curses/curses.c (cWindow, cMouseEvent): made typed data.
21324
21325Wed Jan 18 12:49:15 2012  Aaron Patterson <aaron@tenderlovemaking.com>
21326
21327	* ext/psych/lib/psych/visitors/to_ruby.rb: Added support for loading
21328	  subclasses of String with ivars
21329	* ext/psych/lib/psych/visitors/yaml_tree.rb: Added support for dumping
21330	  subclasses of String with ivars
21331	* test/psych/test_string.rb: corresponding tests
21332
21333Wed Jan 18 10:39:47 2012  Aaron Patterson <aaron@tenderlovemaking.com>
21334
21335	* ext/psych/lib/psych/visitors/to_ruby.rb: Added ability to load array
21336	  subclasses with ivars.
21337	* ext/psych/lib/psych/visitors/yaml_tree.rb: Added ability to dump
21338	  array subclasses with ivars.
21339	* test/psych/test_array.rb: corresponding tests
21340
21341Tue Jan 17 17:18:41 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21342
21343	* configure.in (SPT_TYPE): enable as SPT_REUSEARGV on Darwin.
21344
21345	* missing/setproctitle.c (ruby_init_setproctitle): changed prefix.
21346
21347Tue Jan 17 12:32:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21348
21349	* gc.c (aligned_malloc, aligned_free): covered missing defined
21350	  operators and fixes for cygwin.
21351
21352Tue Jan 17 10:54:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21353
21354	* st.c (do_hash): it's the time to remove cast to unsigned int.
21355
21356Tue Jan 17 07:30:12 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21357
21358	* st.c (unpack_entries): Fix r34310: on unpacking, the position of
21359	  a hash must be do_hash-ed value.
21360
21361	* st.c (add_packed_direct): ditto.
21362
21363Mon Jan 16 16:41:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21364
21365	* lib/optparse.rb (Regexp): fix incorrect options when casting to
21366	  a Regexp, and suppress encoding option warnings.
21367	  https://github.com/ruby/ruby/pull/82
21368
21369Mon Jan 16 11:22:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21370
21371	* win32/win32.c (rb_chsize): no need to get the current file size.
21372
21373Mon Jan 16 00:41:33 2012  Sokolov Yura  <funny.falcon@gmail.com>
21374
21375	* st.c: st use function instead of macro.  In my current
21376	  environment (Ubuntu 11.04 32bit gcc-4.5.2) it gives 4%
21377	  performance improvement.
21378
21379	  https://github.com/ruby/ruby/pull/77
21380
21381Sun Jan 15 14:09:48 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21382
21383	* object.c (rb_inspect): raise the result is not compatible with
21384	  the default external encoding. [ruby-core:42095] [Bug #5848]
21385	  If the default external encoding is ASCII compatible, the encoding of
21386	  inspected result must be compatible with it.
21387	  If the default external encoding is ASCII incompatible,
21388	  the result must be ASCII only.
21389
21390Sun Jan 15 13:21:50 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21391
21392	* ext/json/parser/parser.rl (json_string_unescape): workaround fix
21393	  for over optimization of GCC 4.7. [ruby-core:42085] [Bug #5888]
21394	  http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51862
21395
21396Sat Jan 14 22:24:09 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21397
21398	* ext/dl/callback/mkcallback.rb (gencallback): suppress unused
21399	  variables.
21400
21401Sat Jan 14 21:56:43 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21402
21403	* iseq.c (iseq_data_to_ary): check line info table boundary.  line
21404	  number 0 means no line number info is needed.  [ruby-dev:45130]
21405	  [Bug #5894]
21406
21407Sat Jan 14 18:24:13 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21408
21409	* error.c (exc_equal): clear rb_thread_t::errinfo when ignore
21410	  an exception under rb_protect(). [ruby-core:41979] [Bug #5865]
21411
21412Sat Jan 14 12:02:55 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21413
21414	* sprintf.c (rb_enc_vsprintf): relaxed the restriction.  since the
21415	  implementation deeply depends on plain char, so wchar_t based
21416	  encodings are not supported.
21417
21418Sat Jan 14 12:00:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21419
21420	* error.c (exc_equal): ignore exceptions during implicit
21421	  conversion.  [ruby-core:41979] [Bug #5865]
21422
21423Sat Jan 14 05:58:54 2012  Eric Hodel  <drbrain@segment7.net>
21424
21425	* io.c (rb_io_s_read):  Fix formatting of open_args comment.  Reported
21426	  by Adam Prescott.
21427
21428Fri Jan 13 18:41:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21429
21430	* sprintf.c (rb_enc_vsprintf): can be used for ASCII compatible
21431	  encodings only.
21432
21433Fri Jan 13 18:29:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21434
21435	* thread.c (rb_mutex_unlock_th): simplified.
21436
21437	* thread.c (rb_barrier_waiting): fix potential overflows.
21438
21439Fri Jan 13 17:23:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21440
21441	* load.c (load_unlock): update loading table at once.
21442
21443Fri Jan 13 16:44:45 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21444
21445	* error.c (exc_equal): try implicit conversion for delegator.
21446	  [ruby-core:41979] [Bug #5865]
21447
21448Fri Jan 13 03:46:53 2012  Akinori MUSHA  <knu@iDaemons.org>
21449
21450	* lib/shellwords.rb (Shellwords#shellescape): shellescape() now
21451	  stringifies the given object using to_s.
21452
21453	* lib/shellwords.rb (Shellwords#shelljoin): shelljoin() accepts
21454	  non-string objects in the given array, each of which is
21455	  stringified using to_s.
21456
21457	* lib/shellwords.rb: Fix rdoc markups.
21458
21459Fri Jan 13 03:38:36 2012  Akinori MUSHA  <knu@iDaemons.org>
21460
21461	* lib/shellwords.rb (Shellwords#shellsplit): Fix a bug where
21462	  consecutive backslashes in double quotes are all removed except
21463	  the one at the tail.
21464
21465Fri Jan 13 03:28:00 2012  Luis Lavena  <luislavena@gmail.com>
21466
21467	* ext/socket/extconf.rb (if ipv6): only define _WIN32_WINNT if was not
21468	  previously defined. This solve warnings with multiple defines in
21469	  command line with GCC 4.6.1
21470
21471Thu Jan 12 18:44:31 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21472
21473	* lib/mkmf.rb: fix r33904 and revert r33905.  initialize global
21474	  variables with init_mkmf before initializing constants.
21475	  [ruby-dev:45124] [Bug #5879]
21476
21477Thu Jan 12 13:51:00 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21478
21479	* cont.c (cont_restore_0): prevent optimizing out `sp'. sp is used for
21480	  reserving a memory space with ALLOCA_N for restoring machine stack
21481	  stored in cont->machine_stack, but clang optimized out it (and
21482	  maybe #5851 is also caused by this).
21483	  This affected TestContinuation#test_check_localvars.
21484
21485	* cont.c (cont_restore_1): revert workaround introduced in r32201.
21486
21487Thu Jan 12 02:14:43 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21488
21489	* object.c: Added examples for Object#is_a? and
21490	  Object#instance_of? patched from Manoj Kumar.
21491	  [Bug #5880] [ruby-core:42057]
21492
21493Thu Jan 12 00:57:48 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
21494
21495	* lib/mkmf.rb: verbose-mode can use by RM, RMDIRS, etc.
21496	  (e.g. make V=1 realclean)
21497
21498Wed Jan 11 23:40:21 2012  Naohisa Goto  <ngoto@gen-info.osaka-u.ac.jp>
21499
21500	* string.c (rb_str_concat): set array element after definition
21501	  to fix compile error with Fujitsu C Compiler 5.6 on Solaris 10
21502	  on Sparc.  [Bug #5878] [ruby-dev:45123]
21503
21504Wed Jan 11 22:52:51 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21505
21506	* gc.c (ruby_mimmalloc): don't set allocated size to header.
21507	  ruby_mimmalloc() doesn't increment allocated_size/allocations and
21508	  decrement them in ruby_xfree() cause inconsistency.
21509
21510	* gc.c (ruby_xfree): don't decrement allocated_size/allocations if
21511	  allocated size record is 0.
21512
21513Wed Jan 11 22:36:43 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21514
21515	* test/readline/test_readline.rb (test_completion_proc_empty_result):
21516	  ensure clearance of Readline's line_buffer after the test.
21517
21518Tue Jan 10 21:57:38 2012  Hiroshi Shirosaki <h.shirosaki@gmail.com>
21519
21520	* ext/dbm/dbm.c (Init_dbm): fix a build error on mswin32.
21521	  use `extern __declspec(dllimport)` for dll link with VC.
21522	  [ruby-core:41996] [Bug #5869]
21523
21524Tue Jan 10 15:31:55 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21525
21526	* vm.c (vm_exec): refix r34162; suppress warning and add description.
21527
21528Tue Jan 10 15:13:58 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21529
21530	* ext/readline/readline.c (readline_attempted_completion_function):
21531	  use rb_memerror().
21532
21533Tue Jan 10 12:49:42 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21534
21535	* gc.c: in fact, i686-linux doesn't need to define _XOPEN_SOURCE 600.
21536
21537Tue Jan 10 12:44:11 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21538
21539	* gc.c (ruby_mimmalloc): defined for objects need not rb_objspace,
21540	  but should return pointer suitable for ruby_xfree;
21541	  main vm and main thread.
21542	  patched by Sokolov Yura. https://github.com/ruby/ruby/pull/79
21543
21544	* internal.h: ditto.
21545
21546	* vm.c (Init_BareVM): use ruby_mimmalloc.
21547
21548	* ext/dl/cfunc.c: #include <ruby/util.h>.
21549
21550	* ext/syslog/syslog.c: use xfree because it is allocated by
21551	  ruby_strdup.
21552
21553Tue Jan 10 12:13:56 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
21554
21555	* ext/readline/readline.c (readline_attempted_completion_function):
21556	  fix compile error.
21557
21558Tue Jan 10 10:41:11 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21559
21560	* ext/readline/readline.c (readline_attempted_completion_function):
21561	  empty completion result does not mean memory error.
21562
21563Tue Jan 10 02:19:22 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21564
21565	* test/ruby/test_io.rb (test_autoclose_true_closed_by_finalizer,
21566	  test_autoclose_true_closed_by_finalizer): skip if IO objects are
21567	  not recycled yet. [ruby-dev:45098] [Bug #5850]
21568
21569Tue Jan 10 00:41:28 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21570
21571	* lib/tempfile.rb (Tempfile#_close): clear @tempfile and @data[1] even
21572	  when exception is raised at @tempfile.close. [ruby-dev:45113]
21573
21574	* lib/tempfile.rb (Tempfile#unlink): fix a typo.
21575
21576Tue Jan 10 00:32:17 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21577
21578	* gc.c (run_finalizer): clear rb_thread_t::errinfo when ignore
21579	  an exception under rb_protect(). [ruby-dev:45113]
21580
21581Mon Jan  9 23:37:43 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21582
21583	* ext/readline/readline.c (readline_attempted_completion_function):
21584	  fix typos.
21585
21586Mon Jan  9 20:55:34 2012  Narihiro Nakamura  <authornari@gmail.com>
21587
21588	* gc.c : don't embed struct heaps_slot to a heap block because it
21589	  can causes copy-on-write of memory page on heap block when its
21590	  free_next is rewritten.
21591
21592Mon Jan  9 20:26:33 2012  Tanaka Akira  <akr@fsij.org>
21593
21594	* ext/pathname/pathname.c (path_entries): add document suggested by
21595	  the thread [ruby-core:41959] [Bug #5859].
21596
21597Mon Jan  9 20:14:13 2012  Tanaka Akira  <akr@fsij.org>
21598
21599	* ext/socket/lib/socket.rb (family_addrinfo): don't require protocol
21600	  equality.  For example, protocol 0 and IPPROTO_TCP is not problem
21601	  for TCP.
21602
21603Mon Jan  9 20:08:52 2012  Tanaka Akira  <akr@fsij.org>
21604
21605	* ext/socket/lib/socket.rb (family_addrinfo): return the given
21606	  addrinfo object.
21607	  Patch by Ippei Obayashi.  [ruby-dev:45095] [Bug #5845]
21608
21609Mon Jan  9 19:40:20 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
21610
21611	* test/zlib/test_zlib.rb (TestZlibGzipWriter#test_writer_wrap): set
21612	  binmode explicitly.
21613
21614Mon Jan  9 14:42:41 2012  Narihiro Nakamura  <authornari@gmail.com>
21615
21616	* gc.c: free_slots is changed Singly linked list. clear
21617	  free_slots before sweep.
21618
21619Mon Jan  9 07:46:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21620
21621	* gc.c: i686-linux needs to define _XOPEN_SOURCE 600 for posix_memalign.
21622
21623Mon Jan  9 04:24:59 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21624
21625	* gc.c (rb_objspace_free): global_List is allocated with xmalloc.
21626	  patched by Sokolov Yura.  https://github.com/ruby/ruby/pull/78
21627
21628	* dln_find.c: remove useless replacement of free.
21629
21630	* ext/readline/readline.c (readline_attempted_completion_function):
21631	  strings for readline must allocated with malloc.
21632
21633	* process.c (run_exec_dup2): use free; see also r20950.
21634
21635	* re.c (onig_new_with_source): use malloc for oniguruma.
21636
21637	* vm.c (ruby_vm_destruct): use free for VMs.
21638
21639	* vm.c (thread_free): use free for threads.
21640
21641Mon Jan  9 04:24:59 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21642
21643	* dln_find.c: remove useless replacement of free.
21644
21645	* ext/readline/readline.c (filename_completion_proc_call):
21646	  matches should use xfree.
21647
21648	* ext/readline/readline.c (username_completion_proc_call): ditto.
21649
21650Mon Jan  9 01:12:35 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21651
21652	* numeric.c (rb_enc_uint_char): raise RangeError when added codepoint
21653	  is invalid. [Feature #5855] [Bug #5863] [Bug #5864]
21654
21655	* string.c (rb_str_concat): ditto.
21656
21657	* string.c (rb_str_concat): set encoding as ASCII-8BIT when the string
21658	  is US-ASCII and the argument is an integer greater than 127.
21659
21660	* regenc.c (onigenc_mb2_code_to_mbclen): rearrange error code.
21661
21662	* enc/euc_jp.c (code_to_mbclen): ditto.
21663
21664	* enc/shift_jis.c (code_to_mbclen): ditto.
21665
21666Sun Jan  8 20:31:45 2012  Narihiro Nakamura  <narihiro@netlab.jp>
21667
21668	* gc.c : consider header bytes which are used by malloc.
21669
21670Sun Jan  8 11:54:43 2012  Narihiro Nakamura  <authornari@gmail.com>
21671
21672	* gc.c (aligned_free): support MinGW. Patch by Hiroshi Shirosaki.
21673
21674Sun Jan  8 11:43:05 2012  Narihiro Nakamura  <authornari@gmail.com>
21675
21676	* gc.c (slot_sweep): add a assertion instead of a debug print.
21677
21678Sun Jan  8 01:18:19 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21679
21680	* test/-ext-/old_thread_select/test_old_thread_select.rb:
21681	  avoid platform bug. [Bug #5858] [ruby-dev:45108]
21682
21683Sun Jan  8 00:46:34 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
21684
21685	* gc.c: get rid of implicit narrowing conversion.
21686
21687Sun Jan  8 00:10:10 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21688
21689	* configure.in: check posix_memalign(3) and memalign(3).
21690
21691	* gc.c (aligned_malloc): use configure's result instead of
21692	  _POSIX_C_SOURCE and _XOPEN_SOURCE because they can't be used
21693	  to check availability at least on FreeBSD.
21694
21695Sat Jan  7 22:25:50 2012  Narihiro Nakamura  <authornari@gmail.com>
21696
21697	* gc.c: use Bitmap Marking algorithm to avoid copy-on-write of
21698	  memory pages. See [ruby-dev:45085] [Feature #5839]
21699	  [ruby-core:41916].
21700
21701	* include/ruby/ruby.h : FL_MARK rename to FL_RESERVED1.
21702
21703	* node.h : ditto.
21704
21705	* debug.c : ditto.
21706
21707	* object.c (rb_obj_clone): FL_MARK move to a bitmap.
21708
21709	* class.c (rb_singleton_class_clone): ditto.
21710
21711Sat Jan  7 00:47:07 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21712
21713	* configure.in: always define CANONICALIZATION_FOR_MATHN.
21714	  [ruby-dev:45100] [Bug #5852]
21715
21716Fri Jan  6 23:11:20 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21717
21718	* include/ruby/version.h: RUBY_API_VERSION 2.0.0
21719
21720Fri Jan  6 12:24:11 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21721
21722	* object.c (rb_inspect): raises Encoding::CompatibilityError if the
21723	  result is incompatible with the default external encoding.
21724	  [ruby-core:41931] [Bug #5848]
21725
21726Thu Jan  5 15:26:15 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
21727
21728	* win32/win32.c (check_valid_dir): strict checking of root.
21729	  GetDriveType() succeeds with non root directory as the argument,
21730	  even if MSDN says that the API needs the root directory.
21731	  this patch fixes a failure of test/ruby/test_file_exhaustive.rb.
21732
21733Thu Jan  5 12:15:55 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21734
21735	* file.c (rb_file_join): separator is appended by array length - 1
21736	  times. patched by Benoit Daloze [ruby-core:41901] [Bug #5841]
21737
21738Thu Jan  5 11:47:54 2012  NARUSE, Yui  <naruse@ruby-lang.org>
21739
21740	* lib/uri/common.rb (URI::Parser#initialize_regexp):
21741	  use \A \z instead of ^ $. [Bug #5843]
21742
21743Wed Jan  4 17:55:53 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21744
21745	* array.c (rb_ary_sample): add example for Array#sample
21746	  based on patch from https://github.com/ruby/ruby/pull/74
21747
21748Wed Jan  4 14:24:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21749
21750	* string.c (str_nth_len): count ascii-only run at the end.  this
21751	  bug appears only when single-byte-optimization is disabled due
21752	  to unknown coderange.  [ruby-core:41896] [Bug #5836]
21753
21754Wed Jan  4 11:32:07 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
21755
21756	* win32/win32.c (check_valid_dir): special case for a root directory.
21757	  Reported by Masateru OKAMOTO at [Bug #5819].
21758
21759Wed Jan  4 00:19:54 2012  Kouhei Sutou  <kou@cozmixng.org>
21760
21761	* lib/rexml/parsers/baseparser.rb: use private instead of _xxx
21762	  method name. This is Ruby code not Python code.
21763	  refs #5696
21764
21765Tue Jan  3 23:57:37 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21766
21767	* lib/rexml/parsers/baseparser.rb: rexml BaseParser uses
21768	  instance_eval unnecessarily on listener add.
21769	  patch from Charles Nutter. [Bug #5696] [ruby-core:41437]
21770
21771Tue Jan  3 20:44:13 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21772
21773	* README: add comment for Git user. patch from Arun Agrawal.
21774	* README.ja: ditto.
21775
21776Tue Jan  3 15:58:22 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21777
21778	* thread.c: changed documentation for "thread-local" variables.
21779	  patch from Julien Ammous.
21780
21781Tue Jan  3 15:50:12 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21782
21783	* process.c: Fix typo. patch from Aviv Ben-Yosef.
21784
21785Tue Jan  3 13:43:37 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
21786
21787	* tool/merger.rb: allow r0123 style revision number.
21788
21789Tue Jan  3 11:17:55 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
21790
21791	* tool/merger.rb (#version_up): version.h date should be Japanese
21792	  locale date.
21793
21794Mon Jan  2 22:08:00 2012  Akinori MUSHA  <knu@iDaemons.org>
21795
21796	* tool/file2lastrev.rb (VCS::detect): Add support for Subversion
21797	  1.7 which adopted a whole new working directory structure.
21798
21799	* tool/file2lastrev.rb (VCS::detect): Simply use .each instead of
21800	  .sort.reverse_each which looks too arbitrary.  If you want SVN
21801	  to be tried first, then you just have to register it first as it
21802	  is right now.
21803
21804Mon Jan  2 20:53:36 2012  Tanaka Akira  <akr@fsij.org>
21805
21806	* lib/securerandom.rb (random_bytes): use IO#read instead of
21807	  IO#readpartial to make the intent more clear.
21808
21809Mon Jan  2 15:26:39 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
21810
21811	* test/ruby/test_object.rb (test_send_with_block): add a normal case.
21812
21813Mon Jan  2 15:18:54 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
21814
21815	* test/ruby/test_object.rb (test_send_with_block): moved from
21816	  bootstraptest/test_flow.rb.
21817
21818Mon Jan  2 15:10:11 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
21819
21820	* lib/test/unit/parallel.rb: use pack("m0") instead of
21821	  pack("m").gsub("\n","").
21822	* lib/test/unit.rb (Test::Unit::Runner::Worker#run): ditto.
21823
21824Mon Jan  2 15:05:09 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
21825
21826	* lib/test/unit.rb (Test::Unit::Runner::Worker#run): use
21827	  File.basename with suffix instead of gsub.
21828
21829Mon Jan  2 14:55:28 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
21830
21831	* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): find may
21832	  return nil and nil can not dup.
21833
21834Sun Jan  1 12:23:10 2012  Akinori MUSHA  <knu@iDaemons.org>
21835
21836	* lib/shellwords.rb (Shellwords#shellescape): Drop the //n flag
21837	  that only causes warnings with no real effect.  [Bug #5637]
21838
21839Sat Dec 31 06:28:37 2011  NARUSE, Yui  <naruse@ruby-lang.org>
21840
21841	* thread.c (rb_barrier_waiting): save the number of waiting threads
21842	  in RBASIC()->flags. [ruby-dev:45002] [Bug #5768]
21843
21844	* thread.c (rb_barrier_wait): increment and decrement around
21845	  rb_mutex_lock, and use rb_barrier_waiting().
21846
21847	* thread.c (rb_barrier_release): use rb_barrier_waiting().
21848
21849	* thread.c (rb_barrier_destroy): ditto.
21850
21851Mon Dec 26 17:20:10 2011  NARUSE, Yui  <naruse@ruby-lang.org>
21852
21853	* vm.c (vm_exec): add guard to prevent optimization for LLVM clang.
21854
21855Fri Dec 30 17:01:12 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21856
21857	* vm_eval.c (rb_f_send): fix obj.send() documentation issue.
21858	 [Bug #5125] [ruby-core:38633]
21859
21860Thu Dec 29 22:36:16 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21861
21862	* lib/test/unit.rb (Test::Unit::Runner::Worker#_run_parallels): fix
21863	  premature exit when all workers' status are :ready or :prepare.
21864	  [ruby-dev:45061] [Bug #5822]
21865
21866Thu Dec 29 01:51:13 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21867
21868	* include/ruby/ruby.h: fix #error pragma. LLP64 platform is supported.
21869
21870	* include/ruby/st.h: ditto.
21871
21872Wed Dec 28 11:22:45 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21873
21874	* lib/fileutils.rb (FileUtils::Entry_#entries): use utility method
21875	  instead of typoed regexp.  [ruby-core:41829] [Bug #5817]
21876
21877Wed Dec 28 02:08:04 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21878
21879	* vm_insnhelper.c (unknown_keyword_error): add GC guard to prevent
21880	  intermediate object from GC.
21881
21882Tue Dec 27 22:34:54 2011  Shota Fukumori  <sorah@tubusu.net>
21883
21884	* lib/test/unit.rb (Worker#close): "closing IO if IO is closed"
21885	  should be "closing IO if IO isn't closed"
21886
21887Tue Dec 27 22:04:27 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21888
21889	* st.c (st_update): new function to lookup the given key and
21890	  update the value.  [ruby-dev:44998]
21891
21892Tue Dec 27 21:17:33 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21893
21894	* node.h (rb_args_info): change pre_args_num and post_args_num as
21895	  int, to match with rb_iseq_t.
21896
21897	* parse.y (new_args_gen): check overflow.
21898
21899Mon Dec 26 22:38:35 2011  Yusuke Endoh  <mame@tsg.ne.jp>
21900
21901	* vm_insnhelper.c (unknown_keyword_error): make it kind a error
21902	  message when unknown keyword is given.  It require more work.
21903	  See [ruby-core:40518] and [ruby-core:40541] in detail.
21904
21905Mon Dec 26 22:31:07 2011  Yusuke Endoh  <mame@tsg.ne.jp>
21906
21907	* vm_core.h (struct rb_iseq_struct), compile.c (iseq_set_arguments),
21908	  iseq.c (rb_iseq_parameters), vm_insnhelper.c
21909	  (vm_callee_setup_arg_complex): support Method#parameters for keyword
21910	  arguments.  The provisional spec is what Benoit Daloze proposed.
21911	  [ruby-core:40541]
21912
21913	* test/ruby/test_keyword.rb: add a test for above.
21914
21915Mon Dec 26 22:15:27 2011  Yusuke Endoh  <mame@tsg.ne.jp>
21916
21917	* vm_core.h (struct rb_iseq_struct), compile.c (iseq_set_arguments,
21918	  iseq_compile_each), vm_insnhelper.c (vm_callee_setup_arg_complex):
21919	  implement keyword arguments.  See [ruby-core:40290]
21920	  The feature is promised to be included in 2.0, but the detail spec
21921	  is still under discussion; this commit is a springboard for further
21922	  discussion.  Please try it and give us feedback.
21923	  This commit includes fixes for some problems reported by Benoit
21924	  Daloze <eregontp AT gmail.com> [ruby-core:40518] and Marc-Andre
21925	  Lafortune <ruby-core-mailing-list AT marc-andre.ca>
21926	  [ruby-core:41772].
21927
21928	* iseq.c (iseq_free, prepare_iseq_build): bookkeeping.
21929
21930	* test/ruby/test_keyword.rb: add tests for keyword arguments.
21931
21932	* test/ripper/dummyparser.rb (class DummyParser): temporal fix for
21933	  ripper test.
21934
21935Mon Dec 26 22:00:17 2011  Yusuke Endoh  <mame@tsg.ne.jp>
21936
21937	* node.h, node.c, parse.y: implement a parser part for keyword
21938	  arguments.
21939	  This is a preparation for keyword argument (see [ruby-core:40290]).
21940
21941	* gc.c (gc_mark_children): bookkeeping.
21942
21943Mon Dec 26 21:03:18 2011  Yusuke Endoh  <mame@tsg.ne.jp>
21944
21945	* node.h, parse.y (new_args_gen), compile.c (iseq_set_arguments): use
21946	  struct rb_args_info instead of NODEs.
21947	  This is a preparation for keyword argument (see [ruby-core:40290]).
21948
21949	* node.c (dump_node), gc.c (gc_mark_children, obj_free): bookkeeping.
21950
21951Mon Dec 26 20:59:51 2011  Yusuke Endoh  <mame@tsg.ne.jp>
21952
21953	* node.h, parse.y (lambda, f_larglist): remove NEW_LAMBDA hack.
21954	  This is a preparation for keyword argument (see [ruby-core:40290]).
21955
21956Mon Dec 26 22:01:19 2011  Hiroshi Shirosaki <h.shirosaki@gmail.com>
21957
21958	* io.c (rb_sys_fail_path): move the definition.
21959	  Move above for using it in set_binary_mode_with_seek_cur().
21960
21961	* io.c (set_binary_mode_with_seek_cur): fix improper seek cursor.
21962	  Seeking file cursor with setting binary mode has possibility to
21963	  cause infinite loop. Fixed the bug and refined error handling.
21964	  Introduced at r34043.
21965
21966	  And cleanups as below.
21967	  Remove unnecessary parentheses of `fptr`.
21968	  Use return value of setmode().
21969
21970	* test/ruby/test_io_m17n.rb
21971	  (TestIO_M17N#test_seek_with_setting_binmode): add a test for above.
21972	  [ruby-core:41671] [Bug #5714]
21973
21974Mon Dec 26 17:01:14 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21975
21976	* common.mk (LIBRUBY_A): depends on main.o since r33774.
21977	  [ruby-core:41786] [Bug #5796]
21978
21979Mon Dec 26 13:07:08 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
21980
21981	* test/ruby/test_io.rb (TestIO#test_autoclose): Tempfile.new doesn't
21982	  accept the block argument.
21983
21984Mon Dec 26 13:06:52 2011  Shota Fukumori  <sorah@tubusu.net>
21985
21986	* lib/test/unit.rb: Avoid zombie processes on "--separate" option
21987	  added at r34121.
21988
21989Mon Dec 26 04:01:23 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
21990
21991	* ext/openssl/ossl_cipher.c: Update and complete documentation.
21992
21993Sun Dec 25 23:16:11 2011  Shota Fukumori  <sorah@tubusu.net>
21994
21995	* test/testunit/test_parallel.rb (test_separate): Test for "--separate"
21996	  option (r34121)
21997
21998Sun Dec 25 22:39:49 2011  Shota Fukumori  <sorah@tubusu.net>
21999
22000	* lib/test/unit.rb (_run_parallel):
22001	  New option "--separate" for test/unit; when running tests with this
22002	  option, a job process will be restarted after one test file has done.
22003	  This means all test files will run with separated process.
22004
22005	* lib/test/unit/parallel.rb: Fix for above. Now parallel.rb puts
22006	  "ready!" for first ready, "ready" for afters.
22007
22008Sun Dec 25 00:02:15 2011  Luis Lavena  <luislavena@gmail.com>
22009
22010	* configure.in: change --with-ntver to --with-winnt-ver to be more
22011	  descriptive in the context. [ruby-core:41794]
22012
22013Sat Dec 24 23:25:15 2011  Luis Lavena  <luislavena@gmail.com>
22014
22015	* configure.in: add --with-ntver option to match win32/configure.bat
22016	  functionality. Set 0x0501 as default. [ruby-core:35010]
22017	  [ruby-core:35035]
22018
22019Sat Dec 24 12:38:53 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22020
22021	* proc.c (proc_call): get rid of optimization-out by clang.
22022
22023	* proc.c (rb_proc_call, rb_proc_call_with_block): ditto.
22024
22025Sat Dec 24 10:56:32 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22026
22027	* ext/readline/readline.c (readline_readline): check if outstream
22028	  is closed to get rid of a bug of readline 6.  [ruby-dev:45043]
22029	  [Bug #5803]
22030
22031Sat Dec 24 06:59:49 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22032
22033	* test/readline/test_readline.rb (test_line_buffer__point): use
22034	  lambda not to exit entire method by "return".  or "next" for
22035	  proc.  [ruby-dev:45042] [Bug #5802]
22036
22037Sat Dec 24 01:20:39 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
22038
22039	* vm_eval.c (send_internal): PASS_PASSED_BLOCK_TH must be placed
22040	  just before calling rb_call0.
22041
22042	* bootstraptest/test_flow.rb: add a test for above.
22043
22044Sat Dec 24 00:55:16 2011  Tanaka Akira  <akr@fsij.org>
22045
22046	* lib/tempfile.rb (Tempfile#initialize): warn if a block is given.
22047
22048Fri Dec 23 16:14:30 2011  TAKAO Kouji  <kouji@takao7.net>
22049
22050	* ext/readline/readline.c (readline_attempted_completion_function):
22051	  in Readline module with GNU Readline 6 case, Readline module
22052	  resets completion_append_character to " ", after it executes
22053	  completion. So, Readline module stores
22054	  completion_append_character, and Readline module always sets it
22055	  after Readline module executes completion. [ruby-dev:43456]
22056	  [Feature #4635]
22057
22058Fri Dec 23 15:59:05 2011  TAKAO Kouji  <kouji@takao7.net>
22059
22060	* ext/readline/readline.c (Init_readline): libedit check
22061	  rl_getc_function only when rl_initialize() is called, and
22062	  using_history() call rl_initialize(). This assignment should be
22063	  placed before using_history(). [ruby-core:40641] [Bug #5539]
22064
22065Fri Dec 23 10:14:47 2011  Tanaka Akira  <akr@fsij.org>
22066
22067	* test/thread/test_queue.rb (test_thr_kill): show the number of loop
22068	  run when the test failed.
22069
22070Fri Dec 23 09:23:48 2011  Tanaka Akira  <akr@fsij.org>
22071
22072	* test/test_pty.rb (test_pty_check_default): call PTY.check until
22073	  "cat" command is finished.
22074
22075Fri Dec 23 06:03:00 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
22076
22077	* common.mk: add "check succeeded" message.
22078
22079	* README, README.ja: follow above change.
22080
22081Fri Dec 23 06:00:39 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
22082
22083	* ext/bigdecimal/bigdecimal.h: add satisfy cc-mode comment.
22084	* util.c: ditto.
22085
22086Fri Dec 23 00:08:25 2011  Tanaka Akira  <akr@fsij.org>
22087
22088	* test/test_pty.rb (test_pty_check_default): "cat" may not terminated
22089	  in the 0.1 second.
22090
22091Thu Dec 22 23:37:25 2011  Tanaka Akira  <akr@fsij.org>
22092
22093	* test/ruby/test_thread.rb (test_condvar_timed_wait): don't test the
22094	  maximum sleep time.  Ruby is not a real-time system.
22095
22096Thu Dec 22 22:37:45 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
22097
22098	* thread_pthread.c (ping_signal_thread_list): remove return value.
22099	* thread_pthread.c (check_signal_thread_list): add a new function to
22100	  check if signal thread list is empty.
22101	* thread_pthread.c (thread_timer): check signal thread list after
22102	  timer_thread_function(). main thread might be added into signal thread
22103	  list during timer_thread_function().
22104
22105Thu Dec 22 00:40:24 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
22106
22107	* ext/bigdecimal/bigdecimal.c (VpMult, VpCtoV, VpSqrt): remove assigned
22108	  but unused variables.
22109
22110Wed Dec 21 18:28:22 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22111
22112	* common.mk (newline.c, miniprelude.c): revert r33949 because the change
22113	  broke mswin build, and the changer said no reason about the change.
22114	  [ruby-dev:45016] [Bug #5783]
22115
22116Wed Dec 21 12:35:24 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22117
22118	* ext/bigdecimal/bigdecimal.c (BigDecimal_s_allocate): follow
22119	  Allocation Framework.  [Bug #5775]
22120
22121Wed Dec 21 02:25:36 2011  Aaron Patterson <aaron@tenderlovemaking.com>
22122
22123	* ext/psych/emitter.c: fixing clang warnings. Thanks Joey!
22124
22125Wed Dec 21 01:06:00 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
22126
22127	* ext/bigdecimal/README: Update redmine.ruby-lang.org to bugs.ruby-lang.org
22128	* ext/socket/ancdata.c: ditto
22129	* test/-ext-/wait_for_single_fd/test_wait_for_single_fd.rb: ditto
22130	* test/syck/test_yaml.rb: ditto
22131	* doc/ChangeLog-1.9.3: ditto
22132
22133Tue Dec 20 23:50:12 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
22134
22135	* PStore content update perf optimization. Patch by Masaki Matsushita.
22136	  See #5248.
22137
22138	* lib/pstore.rb (save_data):
22139
22140	  * Delete inadequate Marshal check.
22141
22142	  * Deferred file truncation: when writing the new content, truncate
22143	    the saved file to the data size after writing the data, instead of
22144	    truncating whole bytes before writing data.
22145
22146	  * Deferred MD5 calculation: when comparing MD5 hash to check the
22147	    content modification, calculate MD5 hash of new data iif the
22148	    content length is differ from the old one.
22149
22150	  * Compare content size with String#bytesize instead of String#size.
22151
22152Tue Dec 20 21:00:30 2011  Tadayoshi Funaba  <tadf@dotrb.org>
22153
22154	* ext/date/date_core.c: uses to_integer instead.
22155	* test/date/test_switch_hitter.rb: added a test.
22156
22157Tue Dec 20 15:04:18 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
22158
22159	* Make sure to clear $! when ignoring an exception
22160
22161	* ext/openssl/ossl.c (ossl_pem_passwd_cb0, ossl_verify_cb):
22162	  pem_passwd_cb and verify_cb ignores the exception raised in a
22163	  callback proc so it should clear $! for subsequent execution.
22164
22165	  That's said, both subsequent processes for pem_passwd_cb and
22166	  verify_cb raises another exception before leaking $! to Ruby world.
22167	  We cannot test this fix in Ruby land.
22168
22169	* test/openssl/test_pkey_rsa.rb
22170	  (test_read_private_key_pem_pw_exception): Test for pem_passwd_cb +
22171	  exception.
22172
22173Tue Dec 20 11:49:13 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22174
22175	* test/date/test_date_base.rb (test_jd): tests for
22176	  [ruby-dev:45008].
22177
22178Tue Dec 20 10:20:48 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22179
22180	* ext/date/date_core.c (wholenum): fix the type of the return value.
22181
22182Tue Dec 20 05:03:24 2011  Eric Hodel  <drbrain@segment7.net>
22183
22184	* README.ja:  Update redmine.ruby-lang.org to bugs.ruby-lang.org
22185	* README:  ditto
22186	* common.mk:  ditto
22187	* man/erb.1:  ditto
22188	* man/irb.1:  ditto
22189	* man/ri.1:  ditto
22190	* man/ruby.1:  ditto
22191	* sparc.c:  ditto
22192	* tool/install-sh:  ditto
22193
22194Tue Dec 20 02:15:18 2011  Tadayoshi Funaba  <tadf@dotrb.org>
22195
22196	* ext/date/date_core.c:  [ruby-dev:45008].
22197
22198Sun Dec 18 18:52:37 2011  Naohisa Goto  <ngotogenome@gmail.com>
22199
22200	* vm.c (vm_define_method): improve guard of iseq from GC.  Fix
22201	  failure or segmentation fault in test_singleton_method(TestGc)
22202	  on sparc Solaris10 compiled with Oracle Solaris Studio 12.2.
22203	  [Bug #5762] [ruby-dev:45000] [Bug #4178]
22204
22205Sun Dec 18 14:34:31 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22206
22207	* ext/bigdecimal/bigdecimal.c (Init_bigdecimal): does not follow
22208	  allocation framework right now.  [ruby-core:41710] [Bug #5773]
22209
22210Sun Dec 18 12:42:48 2011  Aaron Patterson <aaron@tenderlovemaking.com>
22211
22212	* ext/psych/lib/psych/visitors/to_ruby.rb: BigDecimals can be restored
22213	  from YAML.
22214	* ext/psych/lib/psych/visitors/yaml_tree.rb: BigDecimals can be dumped
22215	  to YAML.
22216	* test/psych/test_numeric.rb: tests for BigDecimal serialization
22217
22218Sun Dec 18 12:03:13 2011  Aaron Patterson <aaron@tenderlovemaking.com>
22219
22220	* ext/psych/lib/psych/scalar_scanner.rb: Strings that look like dates
22221	  should be treated as strings and not dates.
22222
22223	* test/psych/test_scalar_scanner.rb: corresponding tests.
22224
22225Sun Dec 18 09:43:21 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
22226
22227	* test/thread/test_queue.rb (test_thr_kill): extend timeout.
22228	  this test takes a long time at slow machine.
22229
22230Sun Dec 18 09:36:51 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
22231
22232	* test/ruby/envutil.rb (invoke_ruby): remove :timeout option before
22233	  pass it to Kernel#spawn.
22234
22235Fri Dec 16 17:18:38 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22236
22237	* README, README.ja: 'make check' is preferable to 'make test'.
22238
22239Thu Dec 15 23:16:13 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
22240
22241	* error.c (builtin_type_name): don't return pointer to the buffer of
22242	  temporary String object.
22243
22244Thu Dec 15 17:56:58 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22245
22246	* io.c (argf_type): make typed data.
22247
22248Thu Dec 15 17:40:28 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22249
22250	* error.c (rb_check_type): fix typo.
22251
22252Thu Dec 15 14:48:35 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22253
22254	* ext/strscan/strscan.c: use typed data with
22255	  onig_region_memsize().
22256
22257Thu Dec 15 14:33:33 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22258
22259	* error.c (rb_check_typeddata): refine error message with
22260	  including expected struct name.
22261
22262Thu Dec 15 13:15:51 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22263
22264	* regcomp.c (onig_region_memsize): implemented for memsize_of().
22265
22266	* ext/objspace/objspace.c (memsize_of): use it.
22267
22268Thu Dec 15 10:44:54 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22269
22270	* array.c (rb_ary_reject_bang, rb_ary_delete_if): update rdoc.
22271	  documentation from Thomas Leitner <t_leitner AT gmx.at> in
22272	  [ruby-core:41616].  [Bug #5752]
22273
22274Thu Dec 15 10:10:43 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22275
22276	* test/ruby/test_require.rb (test_race_exception): get rid of
22277	  not-guaranteed timing issue.  [ruby-core:41655] [Bug #5754]
22278
22279Wed Dec 14 21:58:42 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22280
22281	* test/ruby/test_io_m17n.rb
22282	  (TestIO_M17N#test_{read_with_binmode_and_get[cs]}): only for Windows.
22283
22284Wed Dec 14 19:57:23 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22285
22286	* common.mk,Makefile.in,win32/Makefile.sub (ECHO1): move platform
22287	  specific hack from common.mk to Makefile.in (and win32/Makefile.sub).
22288	  [Bug #5711]
22289
22290	* lib/mkmf.rb: we can generate Makefile as we like.
22291
22292Wed Dec 14 19:22:33 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22293
22294	* win32/win32.c, include/ruby/win32.h (rb_w32_fd_is_text): new function.
22295
22296	* win32/win32.c (init_stdhandle): set default mode of stdin as binmode.
22297
22298	* io.c (set_binary_mode_with_seek_cur): new function to replace
22299	  SET_BINARY_MODE_WITH_SEEK_CUR macro.  now returns previous mode of the
22300	  fd and take care of LF in rbuf.
22301
22302	* io.c (do_writeconv): set text mode when needed.
22303
22304	* io.c (io_read): need to change the mode of the IO to binmode
22305	  temporally when the length for IO#read, because IO#read with length
22306	  must behave so.
22307
22308	* test/ruby/test_io_m17n.rb (TestIO_M17N#test_{read_with_length,
22309	  read_with_length_binmode,get[cs]_and_read_with_binmode,
22310	  read_with_binmode_and_get[cs],read_write_with_binmode}): tests for
22311	  above changes.
22312
22313	all patches are written by Hiroshi Shirosaki. [ruby-core:41496]
22314	[Feature #5714]
22315
22316Wed Dec 14 15:28:31 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22317
22318	* transcode.c (str_encode): about the extension of :fallback
22319	  option since 1.9.3.
22320
22321Wed Dec 14 12:19:59 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22322
22323	* load.c (load_unlock): release loading barrier and then remove it
22324	  from loading_table if it is not in-use.  [Bug #5754]
22325
22326	* thread.c (rb_barrier_release, rb_barrier_destroy): return
22327	  whether any other threads are waiting on it.
22328
22329Wed Dec 14 11:23:45 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22330
22331	* thread_pthread.c (ubf_select): call rb_thread_wakeup_timer_thread()
22332	  only when it is not timer_thread. [Bug #5757] [ruby-dev:44985]
22333	  patched by Tomoyuki Chikanaga.
22334
22335Wed Dec 14 10:20:08 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22336
22337	* load.c (load_lock): delete the loading barrier if it has been
22338	  destroyed.
22339
22340	* thread.c (rb_barrier_wait): return nil for recursive lock
22341	  instead of false, to distinguish it from destroyed barrier.
22342
22343Wed Dec 14 01:24:55 2011  okkez  <okkez000@gmail.com>
22344
22345	* thread_pthread.c (rb_thread_create_timer_thread): fix memory
22346	  leak. [ruby-dev:44904] [Bug #5688]
22347
22348Wed Dec 14 00:01:15 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22349
22350	* parse.y (primary): point method name line.  [ruby-core:40936]
22351	  [Bug #5614]
22352
22353Tue Dec 13 23:43:48 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
22354
22355	* error.c (name_err_mesg_to_str): clear rb_thread_t::errinfo when
22356	  ignore exception under rb_protect(). [ruby-core:41612] [Bug #5755]
22357
22358	* test/ruby/test_exception.rb (test_exception_in_name_error_to_str):
22359	  add a corresponding test.
22360
22361Tue Dec 13 16:13:29 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22362
22363	* load.c (load_unlock): all threads requiring one file should
22364	  share same loading barrier, so it must be kept alive while those
22365	  are waiting on it.  [ruby-core:41618] [Bug #5754]
22366
22367Tue Dec 13 07:30:14 2011  Aaron Patterson <aaron@tenderlovemaking.com>
22368
22369	* lib/webrick/httpresponse.rb (setup_header): 1xx responses
22370	  are allowed to have Keep-Alive connections.
22371
22372	* test/webrick/test_httpresponse.rb: corresponding test.
22373
22374Tue Dec 13 07:13:28 2011  Aaron Patterson <aaron@tenderlovemaking.com>
22375
22376	* lib/webrick/httpresponse.rb (setup_header): 204 and 304 responses
22377	  are allowed to have a Keep-Alive connection. [ruby-core:41581]
22378
22379	* test/webrick/test_httpresponse.rb: corresponding test.
22380
22381Tue Dec 13 06:29:39 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22382
22383	* parse.y (parser_magic_comment): should pass the proper value.
22384	  [ruby-dev:44984][Bug #5753]
22385
22386Tue Dec 13 05:50:07 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22387
22388	* vm_insnhelper.c (vm_yield_setup_block_args): splat single
22389	  argument if optional arguments are defined not only mandatory or
22390	  post arguments.  [ruby-core:41557] [Bug #5730]
22391
22392Mon Dec 12 22:35:39 2011  Shugo Maeda  <shugo@ruby-lang.org>
22393
22394	* parse.y (stmt_or_begin): changed the error message for BEGIN not
22395	  at toplevel.  [ruby-dev:44963] [Bug #5738]
22396
22397Mon Dec 12 17:29:01 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22398
22399	* README: Fixed SupportedPlatforms URL in the README.
22400	  patched by eMxyzptlk. https://github.com/ruby/ruby/pull/62
22401
22402Mon Dec 12 17:26:51 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22403
22404	* load.c (rb_feature_p): lazy assigned load_path searched in
22405	  loading_table were not expanded, but all features, pushed to
22406	  loading table, are expanded.  a patch by Yura Sokolov
22407	  <funny.falcon AT gmail.com> in [ruby-core:41545]. [Bug #5727]
22408
22409Mon Dec 12 15:41:03 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22410
22411	* ext/stringio/stringio.c (strio_truncate): fix typo.  patched by
22412	  Nick Howard <ndh AT baroquebobcat.com>.
22413	  https://github.com/ruby/ruby/pull/65
22414
22415Sun Dec 11 12:19:17 2011  Shugo Maeda  <shugo@ruby-lang.org>
22416
22417	* lib/net/imap.rb: includes the sequence number of UID in a error
22418	  message.  suggested by art lussos.
22419	  [ruby-core:41413] [Feature #5692]
22420
22421Sun Dec 11 11:42:10 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
22422
22423	* ext/syslog/syslog.c: fix a typo. [ruby-core:41585] [Bug #5740]
22424
22425Sun Dec 11 10:48:16 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22426
22427	* error.c (exit_initialize): deal with true and false as well as
22428	  Kernel#exit.  [ruby-dev:44951] [Bug #5728]
22429
22430Sun Dec 11 10:37:47 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22431
22432	* object.c (rb_check_to_int): new function to convert a VALUE to
22433	  an Integer if possible, but returns nil instead of raising an
22434	  exception otherwise.
22435
22436Sun Dec 11 10:34:39 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22437
22438	* process.c (rb_exit_status_code): extract from rb_f_exit_bang and
22439	  rb_f_exit.  assume 0 to be success in Kernel#exit! too.
22440
22441Fri Dec  9 19:24:31 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22442
22443	* enc/trans/iso-8859-16-tbl.rb: add ISO-8859-16 converter.
22444
22445	* enc/trans/single_byte.trans: ditto.
22446
22447Fri Dec  9 14:28:40 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22448
22449	* file.c (file_path_convert): don't convert it when the path string is
22450	  ascii only. [ruby-core:41556] [Bug #5733]
22451	  tests are contributed by nobu.
22452
22453Fri Dec  9 08:00:15 2011  Luis Lavena  <luislavena@gmail.com>
22454
22455	* include/ruby/win32.h: undef stat to silence mingw-w64 stat
22456	  redefinition warnings (GCC 4.6.3).
22457
22458Thu Dec  8 23:38:24 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
22459
22460	* variable.c (set_const_visibility): clear inline-cache when constant's
22461	  visibility is modified. [ruby-dev:44929]
22462
22463	* test/ruby/test_module.rb (test_private_constants_clear_inlinecache):
22464	  add test for it.
22465
22466Thu Dec  8 23:26:11 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22467
22468	* ext/extmk.rb (extract_makefile): should sort after map, not before
22469	  it.  in this case there is no difference, but we should write better
22470	  code.  this bad smell was caught by nagachika.
22471
22472Thu Dec  8 22:31:13 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22473
22474	* ext/extmk.rb (extract_makefile): need to sort the array of current
22475	  srcs before comparing to the sorted old srcs.
22476	  fixed the problem that the configuring stage of exts were always
22477	  run, introduced at r33801.
22478
22479Thu Dec  8 13:26:24 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22480
22481	* test/rexml/test_order.rb (OrderTester#test_more_ordering): use
22482	  Zlib::GzipReader.open instead of Zlib::GzipReader.new with File.new.
22483	  fixed a test error on Windows introduced at r33946.
22484
22485Thu Dec  8 13:11:26 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22486
22487	* test/ruby/test_process.rb (TestProcess#test_sete[gu]id): silently
22488	  skip if not implemented such functions (such as, on Windows).
22489	  fixed test errors on Windows introduced at r33953.
22490
22491Thu Dec  8 12:57:50 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22492
22493	* ext/socket/extconf.rb: forgotten to define HAVE_SOCKETPAIR for
22494	  windows.
22495	  fixed test errors on Windows introduced at r33947.
22496
22497Thu Dec  8 12:11:06 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22498
22499	* configure.in (RUBY_WERROR_FLAG): append all warning flags which
22500	  are enabled to compile, so that printf format modifiers properly
22501	  fail.  [ruby-core:41351] [Bug #5679]
22502
22503Thu Dec  8 07:20:15 2011  Eric Hodel  <drbrain@segment7.net>
22504
22505	* doc/re.rdoc:  Document difference between match and =~, options with
22506	  Regexp.new and global variables.  Patch by Sylvain Daubert.
22507	  [Ruby 1.9 - Bug #5709]
22508
22509Thu Dec  8 06:53:10 2011  Eric Hodel  <drbrain@segment7.net>
22510
22511	* doc/re.rdoc:  Fix example code to match documentation.  Patch by
22512	  Jarno Lamberg.  [Ruby 1.9 - Bug #5624]
22513
22514Wed Dec  7 19:04:22 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22515
22516	* configure.in (rpath): fix typo in the help string.  a patch from
22517	  Yuji Yamano <yyamano AT kt.rim.or.jp> in [ruby-list:48568].
22518
22519Wed Dec  7 18:55:56 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22520
22521	* vm.c (vm_set_top_stack, vm_set_eval_stack): check for stack
22522	  overflow with stack_max before push new frame. [ruby-core:41520]
22523	  [Bug #5720]
22524
22525	* vm.c (vm_set_main_stack): no stack overflow chances after
22526	  vm_set_eval_stack().
22527
22528Wed Dec  7 09:58:15 2011  Eric Hodel  <drbrain@segment7.net>
22529
22530	* ext/bigdecimal/bigdecimal.c:  Document +@, -@, hash, INFINITY, Nan.
22531	  Patch by Sylvain Daubert.  [Ruby 1.9 - Feature #5622]
22532
22533Wed Dec  7 09:48:00 2011  Eric Hodel  <drbrain@segment7.net>
22534
22535	* io.c (Init_IO):  Mention io/console methods.  [Ruby 1.9 - Bug #5602]
22536	* ext/io/console/console.c:  Mention that io/console must be required
22537	  similar to lib/time.rb
22538
22539Wed Dec  7 08:04:31 2011  Aaron Patterson <aaron@tenderlovemaking.com>
22540
22541	* ext/psych/lib/psych.rb (module Psych): parse and load methods take
22542	  an optional file name that is used when raising Psych::SyntaxError
22543	  exceptions
22544	* ext/psych/lib/psych/syntax_error.rb (module Psych): allow nil file
22545	  names and handle nil file names in the exception message
22546	* test/psych/test_exception.rb (module Psych): Tests for changes.
22547
22548Tue Dec  6 18:26:33 2011  Tanaka Akira  <akr@fsij.org>
22549
22550	* ext/dbm/dbm.c: use db_version() instead of DB_VERSION_STRING to
22551	  detect runtime Berkeley DB version.
22552	  use dpversion instead of _QDBM_VERSION to detect runtime QDBM
22553	  version.
22554	  [ruby-dev:44948]
22555
22556Tue Dec  6 12:30:41 2011  Tanaka Akira  <akr@fsij.org>
22557
22558	* ext/dbm/extconf.rb: detect gdbm_version in libgdbm.
22559
22560	* ext/dbm/dbm.c: make DBM::VERSION more informative for gdbm, qdbm and
22561	  Berkeley DB 1.x.  [ruby-dev:44944]
22562
22563Tue Dec  6 07:26:37 2011  Eric Hodel  <drbrain@segment7.net>
22564
22565	* range.c:  Improve documentation for Range.  Patch by Chris Zetter.
22566	  [Ruby 1.9 - Bug #5656]
22567
22568Mon Dec  5 19:08:04 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22569
22570	* regparse.c (PFETCH_READY): separate gcc specific trick.
22571
22572Mon Dec  5 19:01:59 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22573
22574	* process.c (proc_seteuid_m): fix argument.
22575
22576	* test/ruby/test_process.rb (test_geteuid): fix typo.
22577
22578	* test/ruby/test_process.rb (test_getegid, test_set[eg]uid): add.
22579
22580Mon Dec  5 18:56:55 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22581
22582	* bignum.c (big_rshift), compile.c (validate_label,
22583	  iseq_build_from_ary_exception), cont.c (cont_capture), dir.c
22584	  (dir_open_dir), gc.c (objspace_each_objects), io.c (pipe_open)
22585	  (rb_io_advise), parse.y (parser_compile_string)
22586	  (rb_parser_compile_file), proc.c (binding_free), process.c
22587	  (rb_proc_exec_n, rb_seteuid_core, proc_setegid, rb_setegid_core)
22588	  (p_uid_exchange, p_gid_exchange), regparse.c (strdup_with_null),
22589	  signal.c (sig_dfl), vm.c (rb_iseq_eval, rb_iseq_eval_main),
22590	  vm_insnhelper.c (vm_expandarray): suppress
22591	  unused-but-set-variable warnings.
22592
22593	* class.c (rb_obj_methods), compile.c (iseq_compile_each),
22594	  iseq.c(iseq_load, rb_iseq_parameters), pack.c (pack_pack),
22595	  regcomp.c (is_not_included, update_string_node_case_fold),
22596	  transcode.c (rb_econv_open0, make_replacement),
22597	  vm_eval.c (raise_method_missing): remove unused variable.
22598
22599	* signal.c (reserved_signal_p): static.
22600
22601Mon Dec  5 14:27:23 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22602
22603	* include/ruby/{subst.h,win32.h}, ext/socket/rubysocket.h: revert
22604	  r33876.  [ruby-core:41475] [Bug #5706]
22605
22606	* ext/socket/extconf.rb: the alternative hack for [Bug #5675].
22607
22608Mon Dec  5 10:18:45 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22609
22610	* ext/zlib/zlib.c (rb_gzreader_initialize): revert a part of r33937.
22611	  1st, to change the mode of an IO is very sensitive problem, so
22612	  the maintainer of this library should judge it.
22613	  2nd, usually Zlib::GzipReader.new is not called directly.  #initialize
22614	  is called via .open, and in the method the I/O is opened in binary
22615	  mode, so there is no problem without changing the mode in #initialize.
22616
22617Sun Dec  4 22:53:12 2011  Tanaka Akira  <akr@fsij.org>
22618
22619	* lib/tempfile.rb: don't use lock directory.  [ruby-dev:39197]
22620
22621Sun Dec  4 22:34:43 2011  Tanaka Akira  <akr@fsij.org>
22622
22623	* lib/tempfile.rb (Tempfile::MAX_TRY): remove unused constant.
22624
22625Sun Dec  4 12:11:28 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
22626
22627	* lib/pp.rb: fix rdoc.
22628
22629Sun Dec  4 12:03:16 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22630
22631	* lib/delegate.rb (Delegator#methods): Kernel#methods receives
22632	  zero or one argument. [ruby-core:37118] [Bug #4882]
22633
22634Sun Dec  4 10:15:00 2011  Luis Lavena  <luislavena@gmail.com>
22635
22636	* ext/zlib/zlib.c (rb_gzreader_initialize): use binary mode by default
22637	  under Windows. Patch by Hiroshi Shirosaki. [ruby-core:40706]
22638	  [Feature #5562]
22639
22640	* include/ruby/encoding.h (void rb_econv_binmode): define NEWLINE
22641	  decorator.
22642
22643	* io.c (rb_cloexec_fcntl_dupfd): Introduce NEED_READCONV and
22644	  NEED_WRITECONV to replace universal newline decorator by CRLF only
22645	  when required to improve file reading and writing under Windows.
22646	  Patch by Hiroshi Shirosaki. [ruby-core:40706] [Feature #5562]
22647	* io.c (do_writeconv): adjust binary mode if required.
22648	* io.c (read_all, appendline, swallow, rb_io_getline_1): ditto.
22649	* io.c (io_getc, rb_io_each_codepoint, rb_io_ungetc): ditto.
22650	* io.c (rb_io_binmode, rb_io_ascii8bit_binmode): ditto.
22651	* io.c (rb_io_extract_modeenc, rb_sysopen): ditto.
22652	* io.c (pipe_open, prep_stdio, io_encoding_set): ditto.
22653	* io.c (rb_io_s_pipe, copy_stream_body): ditto.
22654
22655	* test/ruby/test_io_m17n.rb (EOT): add test for pipe and stdin in
22656	  binary mode.
22657
22658	* win32/win32.c (init_stdhandle): remove O_BINARY from stdhandle
22659	  initialization.
22660	* win32/win32.c (rb_w32_write): use FTEXT mode accordingly.
22661
22662Sat Dec  3 20:49:16 2011  Yusuke Endoh  <mame@tsg.ne.jp>
22663
22664	* variable.c (set_const_visibility): print a warning when no argument
22665	  is passwd to Module#private_constant.  [ruby-list:48558]
22666
22667	* vm_method.c (set_method_visibility): ditto for
22668	  Module#private_class_method.
22669
22670Sat Dec  3 20:43:14 2011  Yusuke Endoh  <mame@tsg.ne.jp>
22671
22672	* variable.c (set_const_visibility): Module#private_constant has
22673	  changed the visibility of only the first argument.  Now it changes
22674	  all of them.  [ruby-list:48558]
22675
22676	* test/ruby/test_module.rb: add a test for above.
22677
22678Sat Dec  3 07:17:29 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22679
22680	* Makefile.in (CFLAGS): append ARCH_FLAG.
22681
22682	* configure.in (ARCH_FLAG): exclude from CFLAGS.
22683
22684	* configure.in (UNIVERSAL_INTS): include short int.  fix for
22685	  test/mkmf.
22686
22687Fri Dec  2 15:48:08 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22688
22689	* ext/bigdecimal/bigdecimal.c (VpAllocReal): reduce extra frac.
22690
22691Fri Dec  2 15:41:24 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22692
22693	* configure.in: check whether -pie or -Wl,-pie is valid as
22694	  LDFLAGS.  [ruby-core:41438] [Bug#5697]
22695
22696	* configure.in: use $linker_flag for LDFLAGS option which is not
22697	  limited to particular platforms.
22698
22699Thu Dec  1 23:21:58 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
22700
22701	* thread_pthread.c (thread_timer): call prctl(PR_SET_NAME) only if
22702	  PR_SET_NAME is available.
22703
22704Thu Dec  1 22:31:16 2011  Tanaka Akira  <akr@fsij.org>
22705
22706	* io.c (linux_get_maxfd): change local variable name.
22707
22708Thu Dec  1 16:59:24 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22709
22710	* ext/socket/extconf.rb: add arguments for macro calls.
22711	  [ruby-core:41370] [Bug#5681]
22712
22713Thu Dec  1 16:20:16 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22714
22715	* lib/mkmf.rb (MakeMakefile#try_func): fix broken patch at r33834.
22716
22717Thu Dec  1 14:43:17 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22718
22719	* ext/bigdecimal/bigdecimal.h (Real): suppress false warning from
22720	  clang.  [ruby-core:41418] [Bug#5693]
22721
22722Thu Dec  1 10:31:55 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22723
22724	* configure.in (LDFLAGS): -fstack-protector is always needed to
22725	  link static library created with it.  [ruby-core:41387]
22726	  [Bug#5686]
22727
22728Thu Dec  1 07:03:51 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22729
22730	* configure.in: add sys/prctl.h test.
22731	* thread_pthread.c (thread_timer): call prctl(PR_SET_NAME) to change
22732	  thread name. It may help to debug.
22733
22734Wed Nov 30 23:35:45 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22735
22736	* variable.c (rb_path2class): don't raise NameError when the middle
22737	  constant of the path is not defined but defined on toplevel.
22738	  [ruby-core:41410] [Bug #5691]
22739
22740Wed Nov 30 20:02:02 2011  Martin Duerst  <duerst@it.aoyama.ac.jp>
22741
22742	* transcode.c: Simplified rb_econv_binmode, avoided a warning on cygwin.
22743
22744Wed Nov 30 08:57:07 2011  Eric Hodel  <drbrain@segment7.net>
22745
22746	* lib/mkmf.rb:  Use MakeMakefile's rm_f to avoid conflict with Rake or
22747	  FileUtils.
22748	* test/ruby/test_module.rb:  Hide MakeMakefile's inclusion in Object
22749
22750Wed Nov 30 09:12:43 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22751
22752	* lib/rdoc/encoding.rb (RDoc::Encoding.read_file): fixup newline chars
22753	  on Windows.
22754	  see https://github.com/rdoc/rdoc/issues/87
22755
22756	* test/rdoc/test_rdoc_markup_pre_process.rb
22757	  (TestRDocMarkupPreProcess#test_include_file,
22758	  TestRDocMarkupPreProcess#test_include_file_encoding_incompatible):
22759	  follow above change.
22760
22761Wed Nov 30 09:09:37 2011  Aaron Patterson <aaron@tenderlovemaking.com>
22762
22763	* ext/psych/parser.c (parse): parse method can take an option file
22764	  name for use in exception messages.
22765	* test/psych/test_parser.rb: corresponding tests.
22766
22767Tue Nov 29 09:07:59 2011  Eric Hodel  <drbrain@segment7.net>
22768
22769	* lib/mkmf.rb:  Fix indentations of constants at end of module.
22770	  Document some constants.
22771
22772Tue Nov 29 09:58:23 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22773
22774	* io.c (rb_write_error2): suppress unused variable warning.
22775
22776Tue Nov 29 07:45:26 2011  Eric Hodel  <drbrain@segment7.net>
22777
22778	* lib/mkmf.rb:  Wrap comments to 78 columns and clean up formatting.
22779
22780Tue Nov 29 05:54:18 2011  Eric Hodel  <drbrain@segment7.net>
22781
22782	* lib/mkmf.rb:  Wrap mkmf.rb in module MakeMakefile to clean up Object
22783	  documentation.  [Ruby 1.9 - Feature #5658]
22784	* ext/extmk.rb:  Use MakeMakefile::CONFIG instead of Object::CONFIG
22785	* test/mkmf/base.rb:  ditto
22786
22787Tue Nov 29 00:08:57 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
22788
22789	* common.mk (INSTRUBY_ARGS): added --mantype to apply mdoc2man.rb
22790	  to man pages.  Fixes #5598.
22791	  (do-install-nodoc, do-install-local, do-install-man,
22792	  dont-install-nodoc, dont-install-local, dont-install-man):
22793	  No longer needs --mantype.
22794
22795	  Reported by Rainer Orth <ro AT cebitec.uni-bielefeld.de>,
22796	  patch by George Koehler <xkernigh AT netscape.net>.
22797
22798Mon Nov 28 22:26:31 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22799
22800	* test/rake/test_rake_directory_task.rb
22801	  (TestRakeDirectoryTask#test_directory_win32): shouldn't create any
22802	  file/directory on root directory.  create on @tempdir (= Dir.pwd).
22803	  see https://github.com/jimweirich/rake/issues/91
22804
22805Mon Nov 28 12:57:29 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22806
22807	* io.c (rb_write_error2): fwrite() returns ssize_t.
22808
22809Mon Nov 28 12:47:19 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22810
22811	* parse.y (nodetype, nodeline): static.  these functions are for
22812	  debugging, and not intend to be public.
22813
22814Mon Nov 28 12:37:54 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22815
22816	* gc.c (initial_params): static.  it seems to be forgotten at r33501.
22817
22818Mon Nov 28 12:32:24 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22819
22820	* include/ruby/win32.h, win32/win32.c (GetCurrentThreadHandle): remove
22821	  unused old API.
22822
22823Mon Nov 28 12:29:20 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22824
22825	* win32/mkexports.rb (Exports#initialize): remove old symbol name.
22826
22827Mon Nov 28 12:15:28 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22828
22829	* win32/mkexports.rb (Exports#read_substitution): need to read
22830	  from subst.h too.  [Bug #5675]
22831
22832Mon Nov 28 11:46:35 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22833
22834	* io.c (rb_io_flush): release GVL during fsync() on Windows.
22835
22836Mon Nov 28 11:00:25 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22837
22838	* include/ruby/subst.h: typo of r33876.
22839
22840Mon Nov 28 10:36:00 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22841
22842	* include/ruby/subst.h: moved Windows specific substitutions from
22843	  win32.h.
22844
22845	* ext/socket/rubysocket.h: include ruby/subst.h.  [Bug #5675]
22846
22847Mon Nov 28 10:20:58 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22848
22849	* win32/{Makeilfe.sub,win32.c} (FILE_COUNT, FILE_READPTR): move the
22850	  definitions from config.h to win32.c.  I dared to have left such
22851	  macros, for other future compiler support.
22852	  [ruby-core:41313] [Bug #5674]
22853
22854Mon Nov 28 09:28:30 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22855
22856	* win32/win32.c (rb_w32_uchmod): typo.  [Bug#5671] [ruby-dev:44898]
22857
22858	* test/ruby/test_file.rb (TestFile#test_chmod_m17n): test of above bug.
22859
22860Sun Nov 27 21:25:33 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22861
22862	* configure.in: added -fno-strict-overflow. it suppress annoying
22863	  -Wstrict-overflow warning.
22864
22865Sun Nov 27 20:58:02 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22866
22867	* io.c (rb_write_error2): get rid of warning on linux. fwrite
22868	  of glibc is tagged __attribute__ ((__warn_unused_result__))
22869	  if _FORTIFY_SOURCE != 0.
22870	* vm_dump.c (rb_vm_bugreport): ditto.
22871
22872Sun Nov 27 19:09:02 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22873
22874	* configure.in (stack_protector): disable on mingw.  [Bug#5676]
22875
22876	* Makefile.in (DLDFLAGS): also needs -fstack-protector.
22877	  [Bug#5676]
22878
22879Sun Nov 27 14:13:33 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22880
22881	* configure.in: add -fstack-protector into XLDFLAGS as well as
22882	  XCFLAGS if stack-protector is used.
22883
22884Sun Nov 27 13:09:25 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22885
22886	* configure.in: workaround to avoid MacOS X build error.
22887	  Maybe autoconf 2.61 is slightly buggy. [ruby-core:41316]
22888
22889Sun Nov 27 04:57:11 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22890
22891	* configure.in (--no-undefined): r33840 breaks FreeBSD and DragonFly
22892	  with gcc 4.4 or later. Their environ is in /usr/libexec/ld-elf.so.1,
22893	  so it will be false negative.
22894
22895Sun Nov 27 04:55:45 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22896
22897	* lib/net/http.rb (Net::HTTP::SSL_IVNAMES): rerefix 33701.
22898	  SSL_ATTRIBUTES stores names for set_params, they are symbol.
22899	  SSL_IVNAMES stores instance variable names.
22900
22901Sun Nov 27 00:16:07 2011  Tanaka Akira  <akr@fsij.org>
22902
22903	* io.c (copy_stream_body): use 0666 for permission argument for open.
22904	  [ruby-core:40865]
22905
22906Sat Nov 26 23:01:38 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
22907
22908	* test/openssl/test_engine.rb: remove side effect of generic engine
22909	  load by explicitly loading software-based "openssl" engine for
22910	  all tests.
22911
22912Sat Nov 26 20:41:48 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22913
22914	* lib/net/http.rb (Net::HTTP.get_response): enable use_ssl
22915	  if given URI object is https.
22916	  patched by Mark Ferlatte [ruby-core:40665] [Bug #5545]
22917
22918	* lib/net/http.rb (Net::HTTP.post_form): ditto.
22919
22920Sat Nov 26 20:01:18 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22921
22922	* lib/net/http.rb (Net::HTTP::SSL_ATTRIBUTES): refix 33701.
22923	  store instance variable symbol names.
22924
22925Sat Nov 26 15:40:25 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
22926
22927	* .travis.yml (script): should be ./configure
22928
22929Sat Nov 26 15:39:18 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
22930
22931	* .travis.yml (before_script): wrong name, sorry.
22932
22933Sat Nov 26 15:31:34 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
22934
22935	* .travis.yml (before-script): autoconf required.
22936
22937Sat Nov 26 15:24:05 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
22938
22939	* .travis.yml: Travis enable.
22940
22941Sat Nov 26 10:47:50 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
22942
22943	* ext/openssl/extconf.rb: remove checks for available functions.
22944	* ext/openssl/missing.h: ditto.
22945	  Thanks, Tim Mooney for reporting this!
22946	  [Bug #5432] [ruby-core:40088]
22947
22948Sat Nov 26 10:22:28 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
22949
22950	* ext/openssl/ossl_ssl.c: add comment on where to find implementation
22951	  of OpenSSL::SSL::SSLSocket#session.
22952
22953Sat Nov 26 05:00:25 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22954
22955	* configure.in (--no-undefined): RUBY_TRY_CFLAGS does nothing for
22956	  linker flags.  use RUBY_TRY_LDFLAGS.
22957
22958Fri Nov 25 11:37:07 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22959
22960	* io.c (ioctl_narg_len, linux_iocparm_len): reinstantiate linux
22961	  specific narg length calculation.
22962	* test/ruby/test_io.rb (test_ioctl_linux2): add new test for old and
22963	  unstructured ioctl.
22964
22965Fri Nov 25 10:39:14 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22966
22967	* Makefile.in (EXTLDFLAGS): export it.
22968	* configure.in: add --no-undefined if --enable-shared is specified.
22969	  Gentoo enabled this option long time. Also, export EXTLDFALGS.
22970
22971Fri Nov 25 08:48:35 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22972
22973	* configure.in: turn on PIE if --enable-shared is not specified.
22974
22975Fri Nov 25 08:05:07 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22976
22977	* configure.in: add -fstack-protector. It help to protect us from
22978	  stack smashing attack.
22979
22980Fri Nov 25 08:03:28 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22981
22982	* configure.in: add -D_FORTIFY_SOURCE=2. It provide some compile
22983	  time and runtime check for security.
22984
22985Fri Nov 25 08:00:23 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22986
22987	* lib/mkmf.rb: get rid of warnings of mkmf.rb if -Wmissing-declarations
22988	  and/or -Wold-style-definition warnings if specified.
22989	  Patch by Nikolai Weibull. Thank you! [Bug #5459] [ruby-core:40200]
22990
22991Fri Nov 25 07:46:09 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22992
22993	* configure.in: add -Wall always.
22994
22995Thu Nov 24 20:02:40 2011  Tanaka Akira  <akr@fsij.org>
22996
22997	* test/openssl/test_engine.rb: use IO#reopen to restore stderr.
22998
22999Thu Nov 24 19:59:56 2011  Tanaka Akira  <akr@fsij.org>
23000
23001	* io.c (rb_io_reopen): re-initialize buffering mode for stdout and
23002	  stderr.
23003
23004Thu Nov 24 11:12:48 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23005
23006	* io.c (rb_io_fsync,rb_io_fdatasync): release GVL during fsync().
23007	  fsync() and fdatasync() may take a long time on slow disks and/or
23008	  if there is much dirty data.
23009	  Patch by Eric Wong. [Feature #5665] [ruby-core:41247]
23010
23011Thu Nov 24 10:05:02 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
23012
23013	* test/openssl/test_engine.rb: Suppress output from 'openssl'
23014	  engine's RC4 cipher.
23015	  [Bug #5633] [ruby-core:41026]
23016
23017Thu Nov 24 08:05:02 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
23018
23019	* ext/openssl/ossl_pkey_dsa.c: remove redundant colon from error
23020	  message.
23021	* ext/openssl/ossl_ssl.c: ditto.
23022	* ext/openssl/ossl_pkey_rsa: ditto.
23023	  patched by Eric Hodel [Bug #5604] [ruby-core:40896]
23024
23025Wed Nov 23 20:03:43 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23026
23027	* io.c (ioctl_narg_len): don't use _IOC_SIZE macro on Linux.
23028	  On Linux some constants for ioctl(2) doesn't include the size of
23029	  its return value and 16bit value; for example FIONREAD 0x541B.
23030	  Moreover the manual, ioctl_list(2),  says "Note  that  the  size
23031	  bits  are  very unreliable: in lots of cases they are wrong,
23032	  either because of buggy macros using sizeof(sizeof(struct)),
23033	  or because of legacy values."
23034	  So we shouldn't use it.
23035
23036Tue Nov 22 18:07:32 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23037
23038	* win32/win32.c (_pioinfo): need to declare _pioinfo() before using
23039	  _osfhnd and other macros which uses _pioinfo() internally.
23040
23041Tue Nov 22 17:49:45 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23042
23043	* win32/win32.c (_pioinfo): make an inline function.
23044
23045Tue Nov 22 11:26:08 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23046
23047Tue Nov 22 11:33:58 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23048
23049	* win32/win32.c (dupfd): argument of _osfhnd and so on should not
23050	  have side effect.
23051
23052Tue Nov 22 11:26:08 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23053
23054	* bignum.c (rb_big_divide): refix of r33536. Don't change behavior of Bignum#/.
23055	  [ruby-core:40429] [Bug #5490]
23056
23057Tue Nov 22 10:46:57 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23058
23059	* numeric.c (ruby_float_step): improve floating point calculations.
23060	  [ruby-core:35753] [Bug #4576]
23061
23062	* numeric.c (ruby_float_step): correct the error of floating point
23063	  numbers on the excluding case.
23064	  patched by Masahiro Tanaka [ruby-core:39608]
23065
23066	* numeric.c (ruby_float_step): use the end value when the current
23067	  value is greater than or equal to the end value.
23068	  patched by Akira Tanaka [ruby-core:39612]
23069
23070Tue Nov 22 06:59:21 2011  Tanaka Akira  <akr@fsij.org>
23071
23072	* test/ruby/test_io.rb (test_fcntl_dupfd): there is no known platform
23073	  which don't have F_DUPFD.  [ruby-dev:44874]
23074
23075Tue Nov 22 04:46:22 2011  Aaron Patterson <aaron@tenderlovemaking.com>
23076
23077	* ext/psych/lib/psych.rb: remove autoload from psych
23078	* ext/psych/lib/psych/json.rb: ditto
23079
23080Tue Nov 22 00:44:59 2011  Tanaka Akira  <akr@fsij.org>
23081
23082	* test/ruby/test_io.rb (test_fcntl_dupfd): the argument of F_DUPFD is
23083	  minimum file descriptor.
23084
23085Tue Nov 22 00:25:17 2011  Tanaka Akira  <akr@fsij.org>
23086
23087	* io.c (linux_get_maxfd): get rid of a warning.
23088
23089Mon Nov 21 23:39:14 2011  Tanaka Akira  <akr@fsij.org>
23090
23091	* io.c (linux_get_maxfd): new function to find maximum fd on Linux.
23092	  (rb_close_before_exec): use linux_get_maxfd.
23093
23094Mon Nov 21 06:16:24 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23095
23096	* cont.c (fiber_switch): ignore fiber context switch
23097	  because destination fiber is same as current fiber.
23098	  With out this, it may segv on FreeBSD 9.
23099	  patched by Koichi Sasada.
23100
23101Sun Nov 20 23:22:42 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23102
23103	* ext/extmk.rb (extract_makefile, extmake): regenerate makefiles
23104	  if globbed source file list is changed.
23105
23106	* lib/mkmf.rb (create_makefile): store ORIG_SRCS.
23107
23108Sun Nov 20 22:43:03 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23109
23110	* enc/unicode.c (PROPERTY_NAME_MAX_SIZE): +1.
23111	  reported by Ken Takata. [ruby-dev:44894][Bug #5652]
23112
23113Sun Nov 20 11:01:28 2011  Tanaka Akira  <akr@fsij.org>
23114
23115	* lib/set.rb (SortedSet.setup): remove old_init after initialize
23116	  method is redefined.  The remove before redefinition makes the
23117	  warning prevention fragile.  [ruby-dev:44892]
23118
23119Sun Nov 20 04:01:45 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23120
23121	* Makefile.in (enc/unicode/name2ctype.h): remove duplicated
23122	  ifdefs.
23123
23124Sat Nov 19 19:31:47 2011  Tanaka Akira  <akr@fsij.org>
23125
23126	* time.c (TIME_COPY_GMT): copy vtm.utc_offset and vtm.zone too.
23127	  patch by Tomoyuki Chikanaga.
23128	  [ruby-dev:44827] [Bug #5586]
23129
23130Sat Nov 19 16:36:57 2011  Tanaka Akira  <akr@fsij.org>
23131
23132	* test/net/http/test_http.rb: remove temporally files in ensure clause.
23133
23134Sat Nov 19 08:18:41 2011  Tanaka Akira  <akr@fsij.org>
23135
23136	* test/net/http/test_http.rb: remove temporally files.
23137
23138Fri Nov 18 17:18:16 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23139
23140	* ext/io/console/console.c (console_raw, console_set_raw)
23141	  (console_getch): optional parameters.  [EXPERIMENTAL]
23142
23143Fri Nov 18 16:12:11 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23144
23145	* ext/io/console/console.c (console_cooked, console_set_cooked):
23146	  new methods to reset cooked mode.  [EXPERIMENTAL]
23147
23148Fri Nov 18 13:20:26 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23149
23150	* test/unit/assertions.rb (MINI_DIR): quick dirty hack to get rid of
23151	  warnings when using assert/assert_respond_to.
23152
23153Fri Nov 18 13:03:38 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23154
23155	* io.c (rb_cloexec_open): set O_NOINHERIT instead of O_CLOEXEC if it is
23156	  available (for Windows).
23157
23158	* win32/win32.c (fcntl): on F_DUPFD, determine the inheritance of the
23159	  new handle by O_NOINHERIT flag of original fd.
23160
23161Fri Nov 18 08:00:41 2011  Ryan Davis  <ryand-ruby@zenspider.com>
23162
23163	* lib/minitest/*: Imported minitest 2.8.1 (r6750)
23164	* test/minitest/*: ditto
23165	* configure.in: Improved gcc-llvm error message to help people migrate.
23166
23167Thu Nov 17 20:43:34 2011  Tanaka Akira  <akr@fsij.org>
23168
23169	* ext/dbm/extconf.rb: revert a part of the patch in [ruby-dev:41531].
23170	  don't use db.h with other headers.  [ruby-dev:44884].
23171
23172Thu Nov 17 20:23:03 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23173
23174	* benchmark/bm_io_select[23].rb: use Process::RLIMIT_NOFILE only when
23175	  it is defined.  if it is not defined, assume 64 as the max of fds.
23176
23177Thu Nov 17 10:36:46 2011  Aaron Patterson <aaron@tenderlovemaking.com>
23178
23179	* ext/psych/lib/psych.rb (load_file): make sure opened yaml files are
23180	  also closed. [ruby-core:41088]
23181
23182Wed Nov 16 18:13:52 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23183
23184	* Makefile.in (LIBRUBY_A): check if generated linked library is
23185	  valid for extconf.
23186
23187Wed Nov 16 13:51:40 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23188
23189	* bignum.c (rb_big2ulong): need to calc in unsigned long, because
23190	  the range of VALUE is larger than it on LLP64 platform, such as Win64.
23191	  this change fixes the failures of test/-ext-/num2int.
23192
23193Wed Nov 16 12:02:47 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23194
23195	* test/webrick/test_cgi.rb (TestWEBrickCGI#start_cgi_server): there are
23196	  no guarantee of existence of RbConfig::CONFIG['LIBPATHENV'].
23197	  it only exists in Unix-like environments.
23198
23199	* test/webrick/test_filehandler.rb
23200	  (WEBrick::TestFileHandler#test_script_disclosure): ditto.
23201
23202Wed Nov 16 11:34:20 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23203
23204	* io.c (argf_next_argv): wrong timing of setting ecflags.
23205	  fixed the failure of TestArgf#test_textmode introduced at r33662.
23206
23207Wed Nov 16 10:45:00 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23208
23209	* ext/-test-/num2int/num2int.c: remove an unnecessary and wrong decl
23210	  of rb_stdout.  it's declared in ruby.h correctly.
23211
23212Wed Nov 16 10:26:41 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23213
23214	* bignum.c (rb_big2ull): add a cast to get rid of a VC++ warning.
23215
23216Wed Nov 16 09:39:27 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23217
23218	* lib/minitest/unit.rb (assert_raises): experimental fix to run
23219	  correctly on chkbuild over 64bit linux. call exception_details only
23220	  when the detail is really needed to avoid create needless inspect
23221	  under ulimit-ed environment.
23222
23223Wed Nov 16 06:34:30 2011  Tanaka Akira  <akr@fsij.org>
23224
23225	* test/ruby/test_thread.rb (test_condvar_timed_wait): use
23226	  assert_operator.
23227
23228Tue Nov 15 21:56:25 2011  Tanaka Akira  <akr@fsij.org>
23229
23230	* test/ruby/test_sleep.rb (test_sleep_5sec): 0.1sec tolerance is too
23231	  small for busy environment.
23232
23233Tue Nov 15 20:08:55 2011  Tanaka Akira  <akr@fsij.org>
23234
23235	* io.c, thread.c, ext/pty/pty.c, ext/fiddle/closure.c: use
23236	  __linux__ macro for consistency.
23237
23238Tue Nov 15 14:45:15 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23239
23240	* include/ruby/ruby.h(NUM2LONG, NUM2INT, NUM2SHORT, NUM2LL,
23241	  INT2NUM, UINT2NUM, LONG2NUM, ULONG2NUM, NUM2CHR): wrap by
23242	  macros.
23243
23244Tue Nov 15 13:38:14 2011  Naohisa Goto  <ngotogenome@gmail.com>
23245
23246	* include/ruby/defines.h (FLUSH_REGISTER_WINDOWS): move sparc asm code
23247	  to a separate file sparc.c for preventing inlining optimization.
23248	  Patched by Jurij Smakov. [Bug #5244] [ruby-core:40685]
23249	* sparc.c (rb_sparc_flush_register_windows): ditto.
23250	* configure.in: ditto.
23251
23252Tue Nov 15 13:11:35 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23253
23254	* include/ruby/ruby.h: get rid of gcc specific rb_long2int(),
23255	  NUM2LONG(), NUM2INT(), NUM2SHORT(), NUM2LL(), INT2NUM(),
23256	  UINT2NUM(), LONG2NUM(), ULONG2NUM() and NUM2CHR()
23257	  implementation. Because 1) They don't make any better code
23258	  at all. 2) Inline function have a better debugger supoort.
23259
23260Tue Nov 15 09:58:25 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23261
23262	* test/ruby/test_io.rb (TestIO#test_fcntl_dupfd): fix OpenBSD test
23263	  failure. [ruby-dev:44872]
23264
23265Tue Nov 15 09:50:21 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23266
23267	* regcomp.c (print_indent_tree): fix double printing of ENCLOSE_OPTION
23268	  children bug. patched by Suraj Kurapati. [ruby-core:40964]
23269
23270Tue Nov 15 01:53:48 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
23271
23272	* test/ruby/test_io.rb (test_fcntl_dupfd): fix test error on
23273	  SnowLeopard. Pointed out by CHIKANAGA Tomoyuki. [ruby-dev:44866]
23274
23275Mon Nov 14 22:06:02 2011  Tanaka Akira  <akr@fsij.org>
23276
23277	* ext/openssl/ossl_pkey.c (ossl_pkey_new_from_file): set close-on-exec
23278	  flag.
23279
23280	* ext/openssl/ossl_x509cert.c (rb_fd_fix_cloexec): ditto.
23281
23282Mon Nov 14 14:54:17 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23283
23284	* bignum.c (rb_big2ull): fix 32bit platform breakage. we must
23285	  not assume sizeof(VALUE) == sizeof(LONG_LONG).
23286	* test/-ext-/num2int/test_num2int.rb (class TestNum2int):
23287	  fix false assumption on 32bit platform.
23288
23289Mon Nov 14 14:52:54 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23290
23291	* numeric.c (rb_fix2ushort): fix typo. use num rb_num2ushort()
23292	  instead of num2uint().
23293
23294Sun Nov 13 10:31:03 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23295
23296	* include/ruby/ruby.h: add #ifdef comment.
23297
23298Sun Nov 13 10:28:18 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23299
23300	* include/ruby/ruby.h: add NUM2SHORT(), NUM2USHORT() macros.
23301	* numeric.c: ditto.
23302
23303	* test/-ext-/num2int/test_num2int.rb: add testcases for NUM2SHORT().
23304	* ext/-test-/num2int/num2int.c: ditto.
23305
23306Sun Nov 13 10:23:48 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23307
23308	* bignum.c (rb_big2ull): fix off-by-twice bug of NUM2ULL.
23309	* test/-ext-/num2int/test_num2int.rb (class TestNum2int):
23310	  fix a testcase too.
23311
23312Sun Nov 13 10:22:44 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23313
23314	* test/-ext-/num2int/test_num2int.rb (class TestNum2int):
23315	  add FIXNUM tests.
23316
23317Sun Nov 13 09:57:29 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23318
23319	* numeric.c (check_uint): fix off-by-one bug of NUM2UINT.
23320	* bignum.c (rb_big2ulong): fix off-by-one bug of NUM2ULONG.
23321
23322	* test/-ext-/num2int/test_num2int.rb: add a testcase for NUM2INT()
23323	  NUM2UINT(), NUM2LONG(), NUM2ULONG(), NUM2LL and NUM2ULL().
23324	* ext/-test-/num2int/depend: ditto.
23325	* ext/-test-/num2int/extconf.rb: ditto.
23326	* ext/-test-/num2int/num2int.c: ditto.
23327
23328Sun Nov 13 23:47:29 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23329
23330	* ext/dbm/extconf.rb: use convertible_int.
23331
23332Sun Nov 13 23:45:57 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23333
23334	* lib/mkmf.rb (checking_for): should not modify the result.
23335
23336	* lib/mkmf.rb (have_struct_member): accept compiler options.
23337
23338	* lib/mkmf.rb (convertible_int): add restricted support of struct
23339	  member, and TYPEOF_ macro.
23340
23341Sun Nov 13 23:21:24 2011  Tanaka Akira  <akr@fsij.org>
23342
23343	* ext/gdbm/gdbm.c (fgdbm_reorganize): set close-on-exec flag after
23344	  gdbm_reorganize().  gdbm_reorganize() opens a new database internally.
23345
23346Sun Nov 13 19:57:18 2011  Tanaka Akira  <akr@fsij.org>
23347
23348	* ext/dbm/extconf.rb: rollback for each headers for each libraries.
23349
23350Sun Nov 13 16:24:48 2011  Tanaka Akira  <akr@fsij.org>
23351
23352	* ext/dbm/extconf.rb: treat libc as a choice for a library which
23353	  provide ndbm API.
23354
23355Sun Nov 13 15:40:43 2011  Tanaka Akira  <akr@fsij.org>
23356
23357	* ext/dbm/extconf.rb: duplicate $libs and $defs when save them.
23358
23359Sun Nov 13 12:43:48 2011  Tanaka Akira  <akr@fsij.org>
23360
23361	* ext/dbm/extconf.rb: rollback $libs and $defs when db detection is
23362	  failed.  It fixes -lgdbm -lqdbm when the system has qdbm and gdbm
23363	  without gdbm_compat.
23364
23365Sat Nov 12 21:14:51 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23366
23367	* test/webrick/test_cgi.rb (class TestWEBrickCGI): respect
23368	  RbConfig::CONFIG["LIBPATHENV"]. [Bug #5135] [ruby-core:38653]
23369	* test/webrick/test_filehandler.rb (class WEBrick): ditto.
23370
23371Sat Nov 12 20:57:29 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23372
23373	* test/ruby/test_io.rb (test_fcntl_dupfd): skip if Fcntl::DUPFD
23374	  is not defined. Pointed out by CHIKANAGA Tomoyuki. Thanks.
23375
23376Sat Nov 12 17:26:10 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23377
23378	* io.c (do_ioctl, ioctl_narg_len, setup_narg, rb_ioctl): use
23379	  ioctl_req_t.
23380
23381Sat Nov 12 17:01:49 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23382
23383	* ext/dbm/extconf.rb (headers.db_check): reduce duplicated code.
23384
23385Sat Nov 12 15:59:42 2011  Tanaka Akira  <akr@fsij.org>
23386
23387	* ext/dbm/extconf.rb: dbm_clearerr should be available in all ndbm
23388	  implementation.  If it is not available, it is caused by
23389	  header/library mismatch such that Berkeley DB header & gdbm library.
23390
23391	* ext/dbm/dbm.c (fdbm_store): use dbm_clearerr() unconditionally.
23392	  gdbm 1.9 provides it as a real function instead of a empty macro.
23393
23394Sat Nov 12 13:35:33 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23395
23396	* bootstraptest/runner.rb: don't suppress SIGINT.
23397	  [Feature #5612] [ruby-dev:44856]
23398
23399Sat Nov 12 11:20:36 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23400
23401	* io.c (fcntl_narg_len): introduce narg calculation for fcntl instead
23402	  of hard coded 256.
23403	* io.c (setup_narg): ditto.
23404
23405Sat Nov 12 11:19:35 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23406
23407	* test/ruby/test_io.rb (test_fcntl_dupfd): add another fcntl test.
23408
23409Sat Nov 12 11:18:17 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23410
23411	* test/ruby/test_io.rb (test_fcntl_lock_freebsd): add a testcase
23412	  of fcntl lock for freebsd.
23413
23414Sat Nov 12 11:16:32 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23415
23416	* io.c (ioctl_narg_len): Linux doesn't have IOCPARM_LEN macro, but
23417	  has _IOC_SIZE. support it.
23418
23419Sat Nov 12 11:13:18 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23420
23421	* io.c (rb_ioctl): don't expose our sanity check value to ruby script.
23422	  It may change string value meaning if the value is string.
23423	  (e.g. MacOS X has F_GETPATH ioctl)
23424	* io.c (rb_fcntl): ditto.
23425
23426Sat Nov 12 11:06:02 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23427
23428	* io.c (ioctl_req_t): Type of req argument of ioctl() depend on platform.
23429	  Moreover almost all linux ioctl can't be represented by 32bit integer
23430	  (i.e. MSB is 1). We need wrap ioctl argument type.
23431	  [Bug #5429] [ruby-dev:44589]
23432	* io.c (struct ioctl_arg): ditto.
23433	* io.c (rb_ioctl): ditto.
23434	* test/ruby/test_io.rb (test_ioctl_linux): add a testcase for ioctl
23435
23436Sat Nov 12 11:00:42 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23437
23438	* io.c (struct io_cntl_arg): remove io_p member.
23439	* io.c (nogvl_fcntl, do_fcntl, rb_fcntl): separated from ioctl functions.
23440	* io.c (nogvl_io_cntl): remove fcntl depended logic.
23441	* io.c (io_cntl): ditto.
23442	* io.c (rb_io_ctl): ditto.
23443	* io.c (rb_io_ioctl): ditto.
23444
23445Sat Nov 12 10:59:49 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23446
23447	* io.c (setup_narg): fix off by one bug.
23448
23449Sat Nov 12 10:56:43 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23450
23451	* io.c (+setup_narg): factor out length calculation logic.
23452	* io.c (rb_io_ctl): ditto.
23453
23454Sat Nov 12 10:52:17 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23455
23456	* io.c (+ioctl_narg_len) new helper function.
23457	* io.c (rb_io_ctl): don't use ioctl specific length check
23458	  if caller is fcntl.
23459
23460Fri Nov 11 23:00:46 2011  Tanaka Akira  <akr@fsij.org>
23461
23462	* ext/dbm/extconf.rb: db_prefix is not required now.
23463
23464Fri Nov 11 21:13:30 2011  Tanaka Akira  <akr@fsij.org>
23465
23466	* ext/gdbm/gdbm.c (fgdbm_initialize): use GDBM_CLOEXEC if available.
23467
23468Fri Nov 11 21:00:05 2011  Tanaka Akira  <akr@fsij.org>
23469
23470	* ext/dbm/extconf.rb: fix dbm_pagfno and dbm_dirfno detection with
23471	  Berkeley DB.  Macro definitions needs arguments to detect correctly.
23472	  SIZEOF_DSIZE needs -DDB_DBM_HSEARCH because db.h defines datum type
23473	  only if DB_DBM_HSEARCH is defined.
23474
23475Fri Nov 11 18:41:57 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23476
23477	* process.c (proc_seteuid): separate an internal wrapper function
23478	  from the method implementation.
23479
23480Fri Nov 11 17:21:15 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23481
23482	* lib/mkmf.rb (have_library, find_library, have_func): allow
23483	  arguments of function to be checked.
23484
23485Fri Nov 11 17:09:45 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23486
23487	* vm_dump.c (HAVE_BACKTRACE): fallback to 0.
23488
23489	* vm_dump.c (rb_vm_bugreport): show "Other runtime information"
23490	  header only when available.
23491
23492	* vm_dump.c (rb_vm_bugreport): get rid of modifying the content of
23493	  VM directly.
23494
23495	* vm_dump.c (rb_vm_bugreport): check if vm is non-null.
23496	  Pointed out by Ikegami Daisuke <ikegami.da@gmail.com>.
23497	  Thank you.
23498
23499Fri Nov 11 12:36:37 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23500
23501	* io.c (pipe_open): Remove fflush(stdin). it's no effect.
23502	  Pointed out by Ikegami Daisuke <ikegami.da@gmail.com>.
23503	  Thank you.
23504
23505Fri Nov 11 07:33:30 2011  Eric Hodel  <drbrain@segment7.net>
23506
23507	* lib/net/http.rb (Net::HTTP::SSL_ATTRIBUTES):  Use symbol keys instead
23508	  of string keys to avoid duplicating parameters in
23509	  OpenSSL::SSL:SSLContext#set_params.
23510
23511Thu Nov 10 15:02:37 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23512
23513	* lib/mkmf.rb (have_library, have_func, have_var, have_header):
23514	  add compiler option parameter.
23515
23516Thu Nov 10 07:45:16 2011  Eric Hodel  <drbrain@segment7.net>
23517
23518	* ext/openssl/lib/openssl/ssl.rb (class OpenSSL::SSL::SSLContext):
23519	  Document #set_params.
23520
23521Wed Nov  9 11:36:53 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23522
23523	* thread_pthread.c (gvl_yield): don't prevent concurrent sched_yield().
23524	  [Bug #5130] [ruby-core:38647]
23525
23526Wed Nov  9 23:20:22 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23527
23528	* io.c (rb_update_max_fd): fstat(2) can fail with other than
23529	  EBADF.  [ruby-dev:44837] [Bug #5593].  Cf.
23530	  http://pubs.opengroup.org/onlinepubs/9699919799/functions/fstat.html
23531
23532	* io.c (rb_sysopen): max fd is updated in rb_sysopen_internal()
23533	  already.
23534
23535Wed Nov  9 22:13:38 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23536
23537	* test/ruby/test_file.rb (TestFile#test_utime_with_minus_time_segv):
23538	  fixed previous commit.
23539
23540Wed Nov  9 19:53:45 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23541
23542	* test/ruby/test_file.rb (TestFile#test_utime_with_minus_time_segv):
23543	  add test for r33685.
23544
23545Wed Nov  9 19:00:44 2011  Koichi Sasada  <ko1@atdot.net>
23546
23547	* test/ruby/test_fiber.rb: add tests for r33684 (Fiber#resume).
23548
23549Wed Nov  9 16:40:49 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23550
23551	* win32/win32.c (unixtime_to_filetime): should check the return value
23552	  of localtime().  reported by snowjail at gmail.com.
23553	  [ruby-dev:44838] [Bug #5596]
23554
23555Thu Nov  9 13:17:25 2011  Koichi Sasada  <ko1@atdot.net>
23556
23557	* cont.c (rb_fiber_m_transfer, rb_fiber_resume): prohibit using
23558	  "resume" after "transfer" method are used.  You should not mix
23559	  "resume" fiber and "transfer" fiber.
23560	  [Bug #5526]
23561
23562	* NEWS: add information about this change.
23563
23564Wed Nov  9 11:40:37 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23565
23566	* template/Doxyfile.tmpl (INCLUDE_PATH): add srcdir and include.
23567	  [ruby-core:40843] [Bug #5597]
23568
23569Wed Nov  9 11:02:54 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23570
23571	* thread.c (do_select): fix cast, tv_sec is time_t.
23572
23573Wed Nov  9 10:32:20 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23574
23575	* configure.in: should not use test -e for portability.
23576	  [ruby-core:40841] [Bug #5594]
23577
23578Wed Nov  9 04:52:16 2011  Aaron Patterson <aaron@tenderlovemaking.com>
23579
23580	* ext/psych/lib/psych/tree_builder.rb: dump complex numbers,
23581	  rationals, etc with reference ids.
23582	* ext/psych/lib/psych/visitors/yaml_tree.rb: ditto
23583	* ext/psych/lib/psych/visitors/to_ruby.rb: loading complex numbers,
23584	  rationals, etc with reference ids.
23585	* test/psych/test_object_references.rb: corresponding tests
23586
23587Tue Nov  8 23:34:37 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23588
23589	* ext/dbm/dbm.c (fdbm_fetch, fdbm_key, fdbm_delete, fdbm_store)
23590	  (fdbm_has_key, fdbm_has_value): get rid of overflow.
23591
23592	* ext/gdbm/gdbm.c (rb_gdbm_fetch2, rb_gdbm_nextkey)
23593	  (rb_gdbm_delete, fgdbm_store, fgdbm_has_key): ditto.
23594
23595	* ext/dbm/dbm.c (fdbm_delete_if): hide intermediate objects.
23596
23597	* ext/gdbm/gdbm.c (fgdbm_delete_if): ditto.
23598
23599	* ext/dbm/extconf.rb: check size of datum.dsize to get rid of
23600	  overflow.
23601
23602Tue Nov  8 23:30:21 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23603
23604	* addr2line.c (PATH_MAX): define if not defined. [ruby-core:40840]
23605
23606Tue Nov  8 23:26:49 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23607
23608	* ext/tk/tcltklib.c (rb_thread_critical): fix type.
23609
23610	* ext/tk/tcltklib.c (eventloop_sleep, lib_eventloop_core): int is
23611	  enough for micro seconds.  may need to check overflow in the
23612	  setter though.
23613
23614	* ext/tk/tcltklib.c (RSTRING_LENINT): check overflow if necessary.
23615
23616	* ext/tk/tcltklib.c (RbTk_ALLOC_N): wrapper for ckalloc() which
23617	  takes an int.
23618
23619	* ext/tk/tcltklib.c (ip_ruby_cmd_receiver_get, tcltklib_compile_info):
23620	  get rid overflow.
23621
23622	* ext/tk/tcltklib.c (tcltklib_compile_info): constified.
23623
23624Tue Nov  8 20:50:45 2011  Tanaka Akira  <akr@fsij.org>
23625
23626	* test/dbm/test_dbm.rb: split tests for read only database.
23627
23628	* test/gdbm/test_gdbm.rb: ditto.
23629
23630Tue Nov  8 18:59:07 2011  Tanaka Akira  <akr@fsij.org>
23631
23632	* ext/pty/pty.c (MasterDevice): define only when used.
23633	  (SlaveDevice): ditto.
23634	  (deviceNo): ditto.
23635
23636Tue Nov  8 17:59:24 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23637
23638	* include/ruby/ruby.h (rb_long2int): define as a macro always, so
23639	  that cpp conditionals can tell if it is provided.
23640
23641Tue Nov  8 17:30:50 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23642
23643	* lib/mkmf.rb (cpp_command): remove multiple -arch flags since cpp
23644	  cannot work.
23645
23646Tue Nov  8 14:50:55 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23647
23648	* io.c (io_fwrite): call rb_w32_write_console() only if FMODE_TTY is
23649	  set.  this is the one of the reason of IO writing slowness of Windows
23650	  in 1.9.3 or later.
23651
23652Tue Nov  8 11:01:04 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23653
23654	* ext/pty/pty.c (get_device_once): FreeBSD 8 supported O_CLOEXEC flag
23655	  for posix_openpt, but FreeBSD 9's posix_openpt doesn't support
23656	  O_CLOEXEC and fails if specified.
23657
23658Tue Nov  8 02:36:45 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23659
23660	* include/ruby/encoding.h (ECONV_NEWLINE_DECORATOR_READ_MASK,
23661	  ECONV_NEWLINE_DECORATOR_WRITE_MASK): new macro.
23662
23663	* io.c (rb_io_extract_modeenc, pipe_open, prep_stdio, argf_next_argv):
23664	  set TEXTMODE_NEWLINE_DECORATOR_ON_WRITE for textmode on creating IO
23665	  if the flag is available.
23666
23667	* io.c (make_writeconv): drop decorators for reading.
23668
23669	* io.c (make_readconv): drop decorators for writing.
23670
23671	* io.c (do_writeconv): existing writeconv is not the condition to raise
23672	  ArgumentError.  should check textmode or not.
23673
23674	* test/ruby/test_io_m17n.rb
23675	  (TestIO_M17N#test_{cr,lf,crlf}_decorator_on_stdout): test above
23676	  changes.
23677
23678Mon Nov  7 22:03:47 2011  Tanaka Akira  <akr@fsij.org>
23679
23680	* ext/gdbm/gdbm.c (fgdbm_initialize): set close-on-exec flag.
23681
23682Mon Nov  7 20:31:52 2011  Aaron Patterson <aaron@tenderlovemaking.com>
23683
23684	* ext/psych/lib/psych/scalar_scanner.rb: make sure strings that look
23685	  like base 60 numbers are serialized as quoted strings.
23686	* test/psych/test_string.rb: test for change.
23687
23688Mon Nov  7 20:26:37 2011  Aaron Patterson <aaron@tenderlovemaking.com>
23689
23690	* test/psych/test_yamlstore.rb: make test case inherit from MiniTest,
23691	  load psych/helper so that psych is loaded.
23692
23693Mon Nov  7 20:18:29 2011  Aaron Patterson <aaron@tenderlovemaking.com>
23694
23695	* test/psych/test_yamldbm.rb: Test case should inherit from MiniTest,
23696	  load psych/helper so that psych and friends are loaded.
23697
23698Mon Nov  7 20:15:44 2011  Tanaka Akira  <akr@fsij.org>
23699
23700	* ext/dbm/extconf.rb: check dbm_pagfno() and dbm_dirfno().
23701
23702	* ext/dbm/dbm.c: use above to set close-on-exec flag.
23703
23704Mon Nov  7 20:05:16 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23705
23706	* io.c (io_fflush): remove fsync().
23707
23708	* io.c (rb_io_flush, rb_io_rewind): fsync() here.
23709
23710	these changes reduces fsync() calls to improve performance.
23711	first reported at [ruby-list:48515] by ak7 at mail.goo.ne.jp .
23712	[Bug #5585]
23713
23714Mon Nov  7 19:43:10 2011  Tanaka Akira  <akr@fsij.org>
23715
23716	* io.c (rb_close_before_exec): use F_MAXFD if available.
23717	  F_MAXFD is available on NetBSD since NetBSD 2.0.
23718
23719Mon Nov  7 19:25:16 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23720
23721	* test/ruby/test_io_m17n.rb
23722	  (TestIO_M17N#test_default_stdout_stderr_mode): new test for
23723	  r33627-33629.  see [backport #5565]
23724
23725Mon Nov  7 01:14:22 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
23726
23727	* lib/debug.rb: add help for 'pp' and 'r[estart]'. patch
23728	  from Sho Hashimoto. [Bug #5093] [ruby-dev:44222]
23729
23730Sun Nov  6 14:49:58 2011  Tanaka Akira  <akr@fsij.org>
23731
23732	* ext/socket/rubysocket.h (rsock_recvmsg): declared.
23733
23734	* ext/socket/ancdata.c (rsock_recvmsg): extracted from
23735	  nogvl_recvmsg_func.
23736	  (nogvl_recvmsg_func): use rsock_recvmsg.
23737
23738	* ext/socket/unixsocket.c (recvmsg_blocking): use rsock_recvmsg.
23739
23740Sun Nov  6 03:22:36 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
23741
23742	* test/openssl/test_engine.rb: add test for engine cipher. RC4 is used
23743	  because AES is not supported by the "openssl" engine currently.
23744
23745Sun Nov  6 00:11:52 2011  Tanaka Akira  <akr@fsij.org>
23746
23747	* lib/test/unit.rb (Test::Unit::Options#non_options): options[:ruby]
23748	  should be an array.  This fixes
23749	  "./ruby test/runner.rb test/testunit/test_parallel.rb"
23750	  [ruby-dev:44782]
23751
23752Sat Nov  5 20:30:30 2011  Martin Duerst  <duerst@it.aoyama.ac.jp>
23753
23754	* insns.def: Some fixes and tweaks to English explanations
23755
23756Sat Nov  5 19:11:50 2011  Tanaka Akira  <akr@fsij.org>
23757
23758	* io.c (rb_cloexec_fcntl_dupfd): don't clear try_dupfd_cloexec if
23759	  fcntl(F_DUPFD) failed as fcntl(F_DUPFD_CLOEXEC).
23760
23761Sat Nov  5 18:05:12 2011  Tanaka Akira  <akr@fsij.org>
23762
23763	* ext/socket/socket.c (rsock_socketpair0): refactored.
23764
23765Sat Nov  5 17:55:52 2011  Tanaka Akira  <akr@fsij.org>
23766
23767	* ext/socket/init.c (rsock_socket0): don't clear try_sock_cloexec if
23768	  SOCK_CLOEXEC is not a reason for EINVAL.
23769
23770Sat Nov  5 16:27:52 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
23771
23772	* ext/pathname/lib/pathname.rb, ext/tk/lib/multi-tk.rb,
23773	  ext/tk/sample/demos-en/widget, lib/benchmark.rb, lib/irb/cmd/fork.rb,
23774	  lib/mkmf.rb, lib/net/ftp.rb, lib/net/smtp.rb, lib/open3.rb,
23775	  lib/pstore.rb, lib/rexml/element.rb, lib/rexml/light/node.rb,
23776	  lib/rinda/tuplespace.rb, lib/rss/maker/base.rb,
23777	  lib/rss/maker/entry.rb, lib/scanf.rb, lib/set.rb, lib/shell.rb,
23778	  lib/shell/command-processor.rb, lib/shell/process-controller.rb,
23779	  lib/shell/system-command.rb, lib/uri/common.rb: remove unused block
23780	  arguments to avoid creating Proc objects.
23781
23782Sat Nov  5 15:45:04 2011  Tanaka Akira  <akr@fsij.org>
23783
23784	* ext/socket/init.c (rsock_socket0): extract single socket() call with
23785	  CLOEXEC handling from rsock_socket.
23786
23787Sat Nov  5 13:49:40 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
23788
23789	* lib/pathname.rb (Pathname#find): return an enumerator if
23790	  no block is given.
23791
23792	* test/pathname/test_pathname.rb: add tests for above.
23793
23794	[ruby-dev:44797] [Feature #5572]
23795
23796Sat Nov  5 11:18:12 2011  Tanaka Akira  <akr@fsij.org>
23797
23798	* ext/socket/socket.c (rsock_socketpair0): don't clear
23799	  try_sock_cloexec if SOCK_CLOEXEC is not a reason for EINVAL.
23800
23801Fri Nov  4 14:08:19 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
23802
23803	* ext/openssl/ossl_pkey_rsa.c (rsa_generate): [SECURITY] Set RSA
23804	  exponent value correctly.  Awful bug.  This bug caused exponent of
23805	  generated key to be always '1'.  By default, and regardless of e
23806	  given as a parameter.
23807
23808	  !!! Keys generated by this code (trunk after 2011-09-01) must be
23809	  re-generated !!! (ruby_1_9_3 is safe)
23810
23811	* test/openssl/test_pkey_rsa.rb: Add tests for default exponent and
23812	  specifying exponent by a parameter.
23813
23814Fri Nov  4 01:31:25 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
23815
23816	* test/openssl/test_engine.rb: add first tests for builtin "openssl"
23817	  engine.
23818
23819Fri Nov  4 08:41:26 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
23820
23821	* ext/openssl/extconf.rb:
23822	* ext/openssl/ossl_engine.c: add some missing OpenSSL engines.
23823	  Thanks, Yui Naruse, for providing the patch!
23824	  [Bug #5548] [ruby-core:40670]
23825
23826Fri Nov  4 04:54:10 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23827
23828	* win32/configure.bat: disable delayed expansion of enironment variable.
23829	  [Bug #5517] [ruby-core:40531]
23830
23831Fri Nov  4 03:45:22 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23832
23833	* io.c (make_writeconv): fixed typo of previous commit.
23834
23835Fri Nov  4 01:56:30 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23836
23837	* io.c (make_writeconv): unversal_newline converter is for reading.
23838	  so, if the io is text mode and has ECONV_UNIVERSAL_NEWLINE_DECORATOR
23839	  flag, use crlf_newline converter for writing.
23840	  this change fixes the problem about the luck of CR up Kernel.p and
23841	  Kernel.puts to stdout/stderr on Windows.
23842
23843Fri Nov  4 01:04:48 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23844
23845	* ext/readline/readline.c (Init_readline): like r18313, libedit's
23846	  replace_history_entry may use offset instead of which.
23847	  so introduce history_replace_offset_func and initialize it.
23848
23849	* ext/readline/readline.c (hist_set): use history_replace_offset_func.
23850
23851Fri Nov  4 00:53:35 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23852
23853	* ext/readline/readline.c (Init_readline): fix wrong condition.
23854
23855Thu Nov  3 23:53:04 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23856
23857	* encoding.c (rb_locale_charmap): ignore calling nl_langinfo_codeset()
23858	  on Windows except cygwin. [experimental]
23859
23860Thu Nov  3 22:45:09 2011  Tanaka Akira  <akr@fsij.org>
23861
23862	* ext/socket/socket.c (rsock_socketpair0): extracted from
23863	  rsock_socketpair to set close-on-exec flag for each socketpair()
23864	  call.
23865
23866Thu Nov  3 22:12:41 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
23867
23868	* ext/socket/init.c (rsock_socket): set close-on-exec flag when
23869	  SOCK_CLOEXEC is not available.
23870
23871Thu Nov  3 08:36:00 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
23872
23873	* test/openssl/test_engine.rb: call Engine::cleanup on exit.
23874	  Patch provided by Yui Naruse, thanks!
23875	  [Bug #5547] [ruby-core:40669]
23876
23877Wed Nov  2 21:36:00 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23878
23879	* complex.c (nucomp_rationalize): fix function.  [ruby-core:40667]
23880	  [Bug #5546]
23881
23882Wed Nov  2 08:16:45 2011  Tanaka Akira  <akr@fsij.org>
23883
23884	* lib/webrick/utils.rb: fix fcntl call.
23885
23886	* lib/drb/unix.rb: ditto.
23887
23888Wed Nov  2 00:43:59 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
23889
23890	* test/psych/test_yamldbm.rb: avoid platform dependency.
23891	  patch by Naohisa Goto. [ruby-dev:44763] [Bug #5535]
23892	* test/syck/test_yamldbm.rb: ditto.
23893
23894Wed Nov  2 00:14:15 2011  Shugo Maeda  <shugo@ruby-lang.org>
23895
23896	* test/ruby/test_marshal.rb: renamed methods duplicated with those
23897	  of marshaltestlib.rb.
23898
23899Tue Nov  1 22:08:27 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23900
23901	* configure.in: reject llvm-gcc.
23902
23903Tue Nov  1 21:39:00 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23904
23905	* io.c (rb_cloexec_pipe): remove workaround of r33587.
23906	  The bug of NetBSD is fixed on Mon Oct 31 21:31:29 UTC 2011.
23907	  http://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=45545
23908
23909Tue Nov  1 19:49:08 2011  Tanaka Akira  <akr@fsij.org>
23910
23911	* io.c (rb_io_reopen): call rb_fd_fix_cloexec instead of
23912	  rb_maygvl_fd_fix_cloexec.
23913
23914Tue Nov  1 19:00:30 2011  Tanaka Akira  <akr@fsij.org>
23915
23916	* io.c (rb_io_reopen): call rb_maygvl_fd_fix_cloexec after freopen().
23917
23918Tue Nov  1 17:17:26 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23919
23920	* file.c (file_expand_path): reset coderange after expanding path.
23921
23922Tue Nov  1 14:55:29 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23923
23924	* io.c (nogvl_io_cntl): rb_cloexec_fcntl_dupfd's 2nd argument is int.
23925
23926	* process.c (move_fds_to_avoid_crash): ditto.
23927
23928Tue Nov  1 13:14:33 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23929
23930	* vsnprintf.c (BSD_vfprintf): support 'll' prefix.
23931
23932	* vsnprintf.c (__sfeof): rename to avoid the collision with NetBSD's
23933	  one.
23934
23935	* vsnprintf.c (__sferror): ditto.
23936
23937	* vsnprintf.c (__sclearerr): ditto.
23938
23939	* vsnprintf.c (__sfileno): ditto.
23940
23941Tue Nov  1 12:36:16 2011  Tanaka Akira  <akr@fsij.org>
23942
23943	* internal.h (rb_maygvl_fd_fix_cloexec): change the visibility for
23944	  ext/socket.
23945
23946Tue Nov  1 12:00:53 2011  Tanaka Akira  <akr@fsij.org>
23947
23948	* io.c (rb_maygvl_fd_fix_cloexec): renamed from fd_set_cloexec.
23949
23950	* internal.h (rb_maygvl_fd_fix_cloexec): declared.
23951
23952	* ext/socket/init.c (cloexec_accept): use rb_maygvl_fd_fix_cloexec.
23953	  (rsock_s_accept_nonblock): use rb_update_max_fd.
23954	  (rsock_s_accept): use rb_update_max_fd.
23955
23956Tue Nov  1 08:24:40 2011  Tanaka Akira  <akr@fsij.org>
23957
23958	* ext/socket/init.c (cloexec_accept): new function to use accept4 if
23959	  available.
23960	  (rsock_s_accept_nonblock): use cloexec_accept.
23961	  (accept_blocking): ditto.
23962
23963	* ext/socket/extconf.rb: check accept4.
23964
23965Tue Nov  1 07:31:55 2011  Tanaka Akira  <akr@fsij.org>
23966
23967	* ext/socket/ancdata.c (nogvl_recvmsg_func): use MSG_CMSG_CLOEXEC if
23968	  available.
23969
23970	* ext/socket/unixsocket.c (recvmsg_blocking): ditto.
23971
23972Tue Nov  1 05:59:41 2011  Tanaka Akira  <akr@fsij.org>
23973
23974	* ext/socket/socket.c (rsock_socketpair): use SOCK_CLOEXEC if
23975	  available.
23976
23977Tue Nov  1 02:56:17 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23978
23979	* ruby.c (load_file_internal): convert the encoding of load path if
23980	  needed by platform.  calling open() was replaced by rb_cloexec_open()
23981	  at r33549, but the function expected UTF-8 pathname on Windows.
23982	  (open() expected "locale" pathname.)
23983	  reported by taco via IRC.
23984
23985	* ruby.c (load_file): change the type of the 2nd parameter to pass its
23986	  encoding to load_file_internal().
23987
23988	* ruby.c (process_options, rb_load_file): follow above change.
23989	  NOTE: we should pass encoding information to rb_load_file().
23990
23991Mon Oct 31 23:49:38 2011  Tanaka Akira  <akr@fsij.org>
23992
23993	* ext/socket/socket.c (rsock_socketpair): extracted from
23994	  rsock_sock_s_socketpair.
23995
23996Mon Oct 31 23:31:53 2011  Tanaka Akira  <akr@fsij.org>
23997
23998	* ext/socket/init.c (rsock_socket): use SOCK_CLOEXEC if available.
23999
24000Mon Oct 31 21:47:44 2011  NARUSE, Yui  <naruse@ruby-lang.org>
24001
24002	* io.c (rb_cloexec_pipe): NetBSD 6.0 will support pipe2(2),
24003	  but its return value is -1 or larger than 0.
24004
24005Mon Oct 31 22:04:54 2011  Tanaka Akira  <akr@fsij.org>
24006
24007	* ext/dbm/dbm.c (fdbm_initialize): use O_CLOEXEC if available.
24008
24009Mon Oct 31 21:47:48 2011  Tanaka Akira  <akr@fsij.org>
24010
24011	* include/ruby/intern.h (rb_fd_fix_cloexec): renamed from
24012	  rb_fd_set_cloexec.
24013
24014	* io.c: follow the above renaming.
24015
24016	* ext/pty/pty.c: ditto.
24017
24018	* ext/socket/init.c: ditto.
24019
24020	* ext/socket/socket.c: ditto.
24021
24022	* ext/socket/ancdata.c: ditto.
24023
24024	* ext/socket/unixsocket.c: ditto.
24025
24026Mon Oct 31 21:02:43 2011  Tanaka Akira  <akr@fsij.org>
24027
24028	* lib/resolv.rb (Resolv::DNS): retry IO.select for premature wakeup.
24029
24030Mon Oct 31 20:14:22 2011  Tanaka Akira  <akr@fsij.org>
24031
24032	* io.c (fd_set_cloexec): clear CLOEXEC flag for standard file
24033	  descriptors.
24034	  (rb_cloexec_dup): use rb_cloexec_fcntl_dupfd.
24035	  (rb_cloexec_fcntl_dupfd): use F_DUPFD_CLOEXEC if available.
24036
24037Mon Oct 31 19:14:11 2011  Tanaka Akira  <akr@fsij.org>
24038
24039	* test/resolv/test_dns.rb: don't check maximum slept time.
24040	  ruby doesn't guarantee the maximum time because it is not a
24041	  realtime application.
24042
24043Mon Oct 31 13:10:06 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
24044
24045	* win32/win32.c (setfl): extract from fcntl().
24046
24047	* win32/win32.c (dupfd): new function to support F_DUPFD. based on a
24048	  patch written by akr.
24049
24050	* win32/win32.c (fcntl): use above functions.
24051
24052	* include/ruby/win32.h (F_DUPFD): define. [experimental]
24053
24054	* include/ruby/win32.h (F_SETFL): change the value to correspond with
24055	  other platforms.
24056
24057Mon Oct 31 12:37:50 2011  Tanaka Akira  <akr@fsij.org>
24058
24059	* ext/pty/pty.c (get_device_once): use O_CLOEXEC for posix_openpt if
24060	  available.
24061
24062Mon Oct 31 12:05:24 2011  Tanaka Akira  <akr@fsij.org>
24063
24064	* io.c (rb_cloexec_dup2): check oldfd == newfd at first.
24065	  pointed by KOSAKI Motohiro.  [ruby-dev:44713]
24066
24067Mon Oct 31 10:50:26 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
24068
24069	* io.c (rb_cloexec_fcntl_dupfd): this function needs F_DUPFD.
24070
24071	* io.c (nogvl_io_cntl): use rb_cloexec_fcntl_dupfd() only if the
24072	  platform has F_DUPFD.
24073
24074Mon Oct 31 00:50:00 2011  Luis Lavena  <luislavena@gmail.com>
24075
24076	* configure.in: check -fno-omit-frame-pointer acceptance and usage
24077	  under MinGW. [ruby-core:39957] [Bug #5407]
24078
24079Mon Oct 31 00:16:11 2011  Tanaka Akira  <akr@fsij.org>
24080
24081	* include/ruby/intern.h (rb_cloexec_fcntl_dupfd): declared.
24082
24083	* io.c (rb_cloexec_fcntl_dupfd): new function.
24084	  (nogvl_io_cntl): use rb_cloexec_fcntl_dupfd.
24085
24086	* process.c (move_fds_to_avoid_crash): use rb_cloexec_fcntl_dupfd.
24087
24088Sun Oct 30 22:46:46 2011  Tanaka Akira  <akr@fsij.org>
24089
24090	* configure.in: check pipe2.
24091
24092	* io.c (rb_cloexec_pipe): use pipe2 if available.
24093
24094Sun Oct 30 22:32:44 2011  Tanaka Akira  <akr@fsij.org>
24095
24096	* ruby.c (fill_standard_fds): use fstat() instead of fcntl(F_GETFD)
24097	  for MinGW.  reported by Luis Lavena.  [ruby-core:40526] [Bug #5516]
24098
24099Sun Oct 30 21:12:47 2011  Tanaka Akira  <akr@fsij.org>
24100
24101	* include/ruby/intern.h (rb_cloexec_pipe): declared.
24102
24103	* io.c (rb_cloexec_pipe): new function.
24104	  (rb_pipe): use rb_cloexec_pipe.
24105
24106	* thread_pthread.c (rb_thread_create_timer_thread): use
24107	  rb_cloexec_pipe.
24108
24109Sun Oct 30 20:06:07 2011  Tanaka Akira  <akr@fsij.org>
24110
24111	* io.c (rb_cloexec_dup): refine control flow.
24112	  (rb_cloexec_dup2): ditto.
24113
24114Sun Oct 30 18:45:50 2011  Tanaka Akira  <akr@fsij.org>
24115
24116	* ruby.c (fill_standard_fds): new function to open closed standard
24117	  file descriptors.
24118	  (ruby_sysinit): call fill_standard_fds.
24119
24120Sun Oct 30 10:50:36 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24121
24122	* tool/rbinstall.rb (install_recursive, bin-comm): split mere
24123	  string not path name.  [ruby-core:40462] [Bug #5492]
24124
24125Sun Oct 30 10:47:20 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24126
24127	* io.c (rb_cloexec_dup, rb_cloexec_dup2): CLOEXEC has been set if
24128	  dup3 succeeded.
24129
24130Sun Oct 30 09:58:48 2011  Tanaka Akira  <akr@fsij.org>
24131
24132	* io.c (rb_cloexec_dup): don't allocate standard file descriptors.
24133
24134Sun Oct 30 08:29:51 2011  Tanaka Akira  <akr@fsij.org>
24135
24136	* io.c (rb_cloexec_dup2): don't set CLOEXEC for standard file
24137	  descriptors.
24138
24139Sun Oct 30 07:47:10 2011  Tanaka Akira  <akr@fsij.org>
24140
24141	* configure.in: check dup3.
24142
24143	* io.c (rb_cloexec_dup2): use dup3 if available.
24144
24145Sat Oct 29 22:06:37 2011  Tanaka Akira  <akr@fsij.org>
24146
24147	* include/ruby/intern.h (rb_cloexec_dup2): declared.
24148
24149	* io.c (rb_cloexec_dup2): new function.
24150	  (io_reopen): use rb_cloexec_dup2.
24151
24152Sat Oct 20 21:08:18 2011  Tajima Akio <artonx@yahoo.co.jp>
24153
24154	* win32/Makefile.sub (CONFIG_H): have stdint.h if VC2010.
24155	  [Bug #5243]
24156
24157Sat Oct 29 20:59:08 2011  Tanaka Akira  <akr@fsij.org>
24158
24159	* io.c (rb_cloexec_dup): use F_DUPFD_CLOEXEC if available.
24160
24161Sat Oct 29 20:00:26 2011  Tanaka Akira  <akr@fsij.org>
24162
24163	* include/ruby/intern.h (rb_cloexec_dup): declared.
24164
24165	* io.c (rb_cloexec_dup): new function.
24166	  (ruby_dup): use rb_cloexec_dup.
24167
24168	* ext/pty/pty.c (pty_getpty): use rb_cloexec_dup.
24169
24170	* ext/openssl/ossl_bio.c (ossl_obj2bio): ditto.
24171
24172Sat Oct 29 16:11:34 2011  Tanaka Akira  <akr@fsij.org>
24173
24174	* ext/sdbm/_sdbm.c (sdbm_prep): use O_CLOEXEC if available.
24175
24176Sat Oct 29 14:26:56 2011  Tanaka Akira  <akr@fsij.org>
24177
24178	* io.c (rb_cloexec_open): use O_CLOEXEC if available.
24179
24180Sat Oct 29 12:57:15 2011  Tanaka Akira  <akr@fsij.org>
24181
24182	* process.c (ruby_setsid): use rb_cloexec_open.
24183	  (rb_daemon): ditto.
24184
24185	* ruby.c (load_file_internal): ditto.
24186
24187	* file.c (rb_file_s_truncate): ditto.
24188	  (file_load_ok): ditto.
24189
24190	* random.c (fill_random_seed): ditto.
24191
24192	* ext/pty/pty.c (chfunc): ditto.
24193	  (get_device_once): ditto.
24194
24195	* ext/io/console/console.c (console_dev): ditto.
24196
24197Sat Oct 29 10:40:19 2011  Tanaka Akira  <akr@fsij.org>
24198
24199	* include/ruby/intern.h (rb_cloexec_open): declared.
24200
24201	* io.c (fd_set_cloexec): extracted from rb_fd_set_cloexec.
24202	  (rb_cloexec_open): new function.
24203	  (sysopen_func): use rb_cloexec_open.
24204	  (rb_sysopen_internal): use rb_update_max_fd instead of
24205	  rb_fd_set_cloexec.
24206
24207Sat Oct 29 09:05:07 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24208
24209	* thread_pthread.h: no Structured Exception Handling like macros.
24210	  [ruby-core:40432] [Bug #5491]
24211
24212Fri Oct 28 22:05:34 2011  Tanaka Akira  <akr@fsij.org>
24213
24214	* ext/sdbm/_sdbm.c: RCS $Id$ removed.
24215
24216Thu Oct 27 18:58:00 2011  NARUSE, Yui  <naruse@ruby-lang.org>
24217
24218	* parse.y (parser_nextc): set encoding for the buffer of ripper.
24219
24220Fri Oct 28 06:06:08 2011  Tanaka Akira  <akr@fsij.org>
24221
24222	* ext/sdbm/_sdbm.c (sdbm_prep): set FD_CLOEXEC flags for file
24223	  descriptors.
24224	  (fd_set_cloexec): new function.
24225
24226Fri Oct 28 03:01:27 2011  Aaron Patterson <aaron@tenderlovemaking.com>
24227
24228	* vm_insnhelper.c (vm_call_cfunc): adding back useless hack.  For some
24229	  reason, this fixes CFP errors on OS X 10.7.
24230
24231Fri Oct 28 00:09:31 2011  Tanaka Akira  <akr@fsij.org>
24232
24233	* ext/sdbm/_sdbm.c (sdbm_prep): refactored for less nesting.
24234
24235Thu Oct 27 18:28:18 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24236
24237	* configure.in (RUBY_DEFINE_IF): revert r33534 partially to get
24238	  rid of AS_ECHO which is not available in autoconf 2.61.
24239	  [ruby-dev:44702]
24240
24241Thu Oct 27 16:10:46 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24242
24243	* bignum.c (rb_big_divide): raise ZeroDivisionError if divisor is
24244	  zero, as well as Fixnum.  [ruby-core:40429] [Bug #5490]
24245
24246Thu Oct 27 14:56:22 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24247
24248	* configure.in (RUBY_FUNC_ATTRIBUTE): unset temporary variable.
24249
24250	* configure.in (RUBY_STACK_GROW_DIRECTION): substitute CPU name as
24251	  shell variable name.  based on the patch by The Written Word Inc. at
24252	  [ruby-core:40421].  [Bug #5488]
24253
24254Thu Oct 27 09:57:56 2011  NARUSE, Yui  <naruse@ruby-lang.org>
24255
24256	* include/ruby/ruby.h (SIZE_MAX): define SIZE_MAX if not defined.
24257	  patched by The Written Word Inc. [ruby-core:40422] [Bug #5489]
24258
24259Thu Oct 27 08:47:38 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
24260
24261	* ext/psych/parser.c: remove unused variable.
24262
24263Thu Oct 27 08:38:41 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
24264
24265	* ext/openssl/extconf.rb: add -Wall flag by default when compiler is
24266	  GCC.
24267
24268Wed Oct 26 15:24:25 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24269
24270	* file.c (rb_file_join): honor input encodings than ASCII-8BIT.
24271	  [ruby-core:40338] [Bug #5483]
24272
24273Tue Oct 25 21:52:31 2011  Tanaka Akira  <akr@fsij.org>
24274
24275	* include/ruby/defines.h: use "__sparc" instead of "sparc" and
24276	  "__sparc__".
24277
24278	* dln.c: ditto.
24279
24280	  [ruby-dev:44694]
24281
24282Tue Oct 25 06:34:39 2011  Eric Hodel  <drbrain@segment7.net>
24283
24284	* re.c (match_aref):  Use <code> around indexing examples to prevent
24285	  hyperlinks.  [ruby-talk:389396]
24286
24287Mon Oct 24 23:55:31 2011  Tanaka Akira  <akr@fsij.org>
24288
24289	* complex.c: use "__sun" instead of "__sun__" to detect SunOS.
24290
24291	* math.c: ditto.
24292
24293	* hash.c: ditto.
24294
24295	* atomic.h: ditto.
24296
24297	* ext/io/wait/wait.c: ditto.
24298
24299	[ruby-dev:44693]
24300
24301Mon Oct 24 22:45:37 2011  Tanaka Akira  <akr@fsij.org>
24302
24303	* io.c: use "__sun" instead of "sun" to detect SunOS.
24304
24305	* dln.c: ditto.
24306
24307	* cont.c: ditto.
24308
24309	* ext/sdbm/_sdbm.c: ditto.
24310
24311	[ruby-dev:44693]
24312
24313Mon Oct 24 22:38:08 2011  Tanaka Akira  <akr@fsij.org>
24314
24315	* ext/pty/pty.c (get_device_once): delay rb_fd_set_cloexec() until
24316	  grantpt() on Solaris.  grantpt() doesn't work with CLOEXEC on
24317	  Solaris 10.
24318	  reported by Naohisa GOTO.  [ruby-dev:44688] [Bug #5475]
24319
24320Mon Oct 24 08:18:14 2011  Tanaka Akira  <akr@fsij.org>
24321
24322	* io.c (copy_stream_fallback_body): check nil for EOF of read method.
24323	  patch by Eric Wong.  [ruby-core:39134] [Bug #5237]
24324
24325Sun Oct 23 18:21:23 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
24326
24327	* ext/tk/MANUAL_tcltklib.eng: fix typo.
24328
24329Sun Oct 23 18:03:31 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24330
24331	* numeric.c (rb_infinity, rb_nan): aggregated member initializers
24332	  need braces.
24333
24334Sun Oct 23 16:43:43 2011  Naohisa Goto  <ngotogenome@gmail.com>
24335
24336	* ext/io/wait/wait.c: ioctl(2) is declared in unistd.h on Solaris.
24337
24338Sun Oct 23 16:33:35 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
24339
24340	* ext/tk/MANUAL_tcltklib.eng: fix typo. reported by Mimura-san.
24341	  [ruby-dev:44683] [Bug #5471]
24342
24343Sun Oct 23 08:01:29 2011  Tanaka Akira  <akr@fsij.org>
24344
24345	* io.c (rb_fd_set_cloexec): set close-on-exec flag only if F_GETFD is
24346	  defined.  reported by Luis Lavena.  [ruby-core:40281] [Bug #5470]
24347
24348Sat Oct 22 19:48:50 2011  Tanaka Akira  <akr@fsij.org>
24349
24350	* test/openssl/test_ssl.rb (test_multibyte_read_write): start server
24351	  for each length to avoid race condition.
24352
24353Sat Oct 22 18:49:24 2011  Tanaka Akira  <akr@fsij.org>
24354
24355	* include/ruby/intern.h (rb_fd_set_cloexec): declared.
24356
24357	* io.c (rb_fd_set_cloexec): new function.
24358	  (ruby_dup): call rb_fd_set_cloexec to set close-on-exec flag.
24359	  (rb_sysopen_internal): ditto.
24360	  (rb_pipe): ditto.
24361	  (io_reopen): ditto.
24362	  (io_cntl): ditto.
24363
24364	* process.c (rb_f_exec): change the default :close_others option to
24365	  true.
24366	  (rb_f_system): ditto.
24367	  (move_fds_to_avoid_crash): call rb_fd_set_cloexec to set
24368	  close-on-exec flag.
24369	  (ruby_setsid): ditto.
24370	  (rb_daemon): ditto.
24371
24372	* thread_pthread.c (rb_thread_create_timer_thread): call
24373	  rb_fd_set_cloexec to set close-on-exec flag.
24374
24375	* ruby.c (load_file_internal): ditto.
24376
24377	* file.c (rb_file_s_truncate): ditto.
24378	  (file_load_ok): ditto.
24379
24380	* random.c (fill_random_seed): ditto.
24381
24382	* ext/pty/pty.c (chfunc): ditto.
24383	  (get_device_once): ditto.
24384
24385	* ext/openssl/ossl_bio.c (ossl_obj2bio): ditto.
24386
24387	* ext/socket/init.c (rsock_socket): ditto.
24388	  (rsock_s_accept_nonblock): ditto.
24389	  (rsock_s_accept): ditto.
24390
24391	* ext/socket/socket.c (rsock_sock_s_socketpair): ditto.
24392
24393	* ext/socket/ancdata.c (discard_cmsg): ditto.
24394	  (make_io_for_unix_rights): ditto.
24395
24396	* ext/socket/unixsocket.c (unix_recv_io): ditto.
24397
24398	* ext/io/console/console.c (console_dev): ditto.
24399
24400	[ruby-core:38140] [Feature #5041]
24401
24402Sat Oct 22 17:46:27 2011  Tanaka Akira  <akr@fsij.org>
24403
24404	* lib/resolv.rb: fix a exception name in previous patch.
24405
24406Sat Oct 22 17:43:33 2011  Tanaka Akira  <akr@fsij.org>
24407
24408	* lib/resolv.rb: make timeout configurable for DNS query.
24409	  patch by Eric Wong.  [ruby-core:38533] [Feature #5100]
24410
24411Sat Oct 22 02:07:48 2011  Naohisa Goto  <ngotogenome@gmail.com>
24412
24413	* numeric.c (rb_infinity, rb_nan): use union to prevent bus error
24414	  caused by misalignment.  [Bug #5469] [ruby-dev:44657]
24415
24416	* include/ruby/missing.h (INFINITY, NAN): ditto
24417
24418Fri Oct 21 22:02:17 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24419
24420	* gc.c (initial_params): pack in a struct.
24421
24422	* gc.c (rb_gc_set_params): set parameters always.
24423	  [ruby-dev:44648] [Bug #5467]
24424
24425Fri Oct 21 12:10:20 2011  Naohisa Goto  <ngotogenome@gmail.com>
24426
24427	* atomic.h: change Solaris checking macro because atomic_ops can work
24428	  not only with Sun Studio but also with Fujitsu C Compiler.
24429
24430Fri Oct 21 02:11:00 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
24431
24432	* ext/openssl/ossl_ns_spki.c: Complete documentation.
24433	* test/openssl/test_ns_spki.rb: Integrate SPKI#to_text.
24434
24435Thu Oct 20 22:47:28 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
24436
24437	* win32/win32.c (socklist_insert, socklist_lookup, socklist_delete):
24438	  new functions to wrap of st_insert(), st_lookup() and st_delete() to
24439	  socklist.
24440	  allocating socklist is deferred until it is really needed.
24441
24442	* win32/win32.c (exit_handler): delete socklist only if it is
24443	  initialized.
24444
24445	* win32/win32.c (rb_w32_sysinit, StartSockets): refactoring: move
24446	  initialization of select_mutex to StartSockets().
24447
24448	* win32/win32.c (exit_handler): refactoring: delete select_mutex only
24449	  if winsock is used.
24450
24451Thu Oct 20 22:38:53 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
24452
24453	* ext/openssl/ossl_pkcs5.c: add note on timing attacks and general
24454	  documentation.
24455
24456Thu Oct 20 21:19:15 2011  Naohisa Goto  <ngotogenome@gmail.com>
24457
24458	* vm_eval.c (check_funcall): set array elements one-by-one to fix
24459	  compile error with Fujitsu C Compiler 5.6 on Solaris 10 on Sparc.
24460	  [Bug #5464] [ruby-dev:44632]
24461
24462Thu Oct 20 13:09:35 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24463
24464	* include/ruby/defines.h (flush_register_windows): use software
24465	  trap on Debian Sparc 32-bit userspace.  [Bug #5244]
24466
24467Thu Oct 20 12:28:22 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
24468
24469	* test/openssl/test_pkcs5.rb: add RFC 6070 tests for PBKDF2 with
24470	  HMAC-SHA1
24471
24472Thu Oct 20 11:42:23 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24473
24474	* util.c (mmprepare): fix for fragmental size.
24475
24476	* util.c (mmswap_, mmrot3_): portability improvement.
24477
24478Thu Oct 20 05:58:02 2011  Eric Hodel  <drbrain@segment7.net>
24479
24480	* ext/openssl/ossl_ns_spki.c (Init_ossl_ns_spki):  Stub documentation
24481	  for Netscape SPKI.
24482
24483Thu Oct 20 05:13:39 2011  Ryan Davis  <ryand-ruby@zenspider.com>
24484
24485	* lib/minitest/*: Imported minitest 2.6.2 (r6712)
24486	* test/minitest/*: ditto
24487
24488Thu Oct 20 06:55:32 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
24489
24490	* lib/openssl/buffering.rb: Force multi-byte strings to be treated as
24491	  binary data.
24492	* test/openssl/test_ssl.rb: Add test for it.
24493
24494	Thanks to Niklas Baumstark for reporting the issue!
24495
24496	[Ruby 1.9 - Bug #5233] [ruby-core:39120]
24497
24498Wed Oct 19 17:06:54 2011  Yukihiro Matsumoto  <matz@ruby-lang.org>
24499
24500	* version.h (RUBY_VERSION): finally declare start of 2.0 work!
24501
24502Wed Oct 19 11:48:44 2011  Eric Hodel  <drbrain@segment7.net>
24503
24504	* error.c (Init_Exception):  Document $! and $@.  Provide
24505	  recommendations for creating exceptions for a library.
24506
24507Wed Oct 19 11:25:46 2011  Eric Hodel  <drbrain@segment7.net>
24508
24509	* error.c (Init_Exception):  Add hierarchy of Exception subclasses.
24510	  Based on patch by Sylvain Daubert.  [Ruby 1.9 - Bug #5438]
24511
24512Wed Oct 19 11:04:47 2011  Eric Hodel  <drbrain@segment7.net>
24513
24514	* enum.c: Reformat block args to a single standard, { |args| ... }.
24515	  Patch by b t.  [Ruby 1.9 - Bug #5393]
24516
24517Wed Oct 19 12:11:26 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
24518
24519	* ext/openssl/ossl_ssl.c: Remove set, but unused variables.
24520	  ext/openssl/ossl_pkey.c: ditto
24521
24522	* ext/openssl/ossl_pkey_dh.c: Make functions passed to
24523	  rb_thread_blocking_region return VALUE instead of void.
24524	  ext/openssl/ossl_pkey_dsa.c: ditto
24525	  ext/openssl/ossl_pkey_rsa.c: ditto
24526
24527Tue Oct 18 23:28:53 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24528
24529	* hash.c (identhash): share with type_numhash.
24530
24531	* st.c (st_hashtype_num): rename from type_numhash.
24532
24533Tue Oct 18 23:07:30 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24534
24535	* vm_core.h (ruby_current_thread): probeprofiler has been removed
24536	  long ago.
24537
24538Tue Oct 18 23:05:49 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24539
24540	* ext/ripper/eventids2.c (ripper_init_eventids2): separate
24541	  initializations of IDs and objects.
24542
24543	* ext/ripper/tools/generate.rb (generate_eventids1): ditto.
24544
24545	* parse.y (Init_ripper, InitVM_ripper): fix inversed roles.
24546
24547Sun Oct 16 19:46:16 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24548
24549	* ext/bigdecimal/bigdecimal.gemspec (files): fixed typo, and
24550	  removed nonexistent file.
24551
24552	* ext/bigdecimal/bigdecimal.gemspec (homepage): added.
24553
24554	* ext/io/console/io-console.gemspec (homepage): ditto.
24555
24556Fri Oct 14 12:13:57 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24557
24558	* ext/pty/pty.c (pty_check): should return nil until the child
24559	  terminates or stops.  [ruby-dev:44600] [Bug #2642]
24560
24561Fri Oct 14 11:19:37 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24562
24563	* include/ruby/intern.h (rb_ary_rotate): export.
24564
24565Fri Oct 14 05:58:05 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24566
24567	* atomic.h (ATOMIC_INC, ATOMIC_DEC): return old values.
24568	  [ruby-dev:44596] [Bug #5439]
24569
24570	* signal.c (ruby_atomic_exchange): no needs to define on the
24571	  platforms where atomic.h is available.
24572
24573Thu Oct 13 19:29:40 2011  Naohisa Goto  <ngotogenome@gmail.com>
24574
24575	* atomic.h (ATOMIC_*): use atomic_ops(3C) when SunStudio on Solaris.
24576	  [ruby-dev:44596] [Bug #5439]
24577
24578Thu Oct 13 18:13:04 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
24579
24580	* atomic.h(ATOMIC_SET): add cast to void to prevent misuse.
24581	  [ruby-dev:44596] [Bug #5439]
24582
24583Thu Oct 13 18:04:27 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24584
24585	* gc.c (rb_gc_finalize_deferred, rb_objspace_call_finalizer):
24586	  should use ATOMIC_EXCHANGE() to check the previous value.
24587	  [ruby-dev:44596] [Bug #5439]
24588
24589Wed Oct 12 23:39:58 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
24590
24591	* test/openssl/test_ssl.rb: Move duplicated tests for SSL::Session to
24592	  test_ssl_session.rb
24593
24594Tue Oct 11 08:49:40 2011  Eric Hodel  <drbrain@segment7.net>
24595
24596	* array.c (rb_ary_initialize):  Improve explanation of Array.new
24597	  parameters.  Patch by Alvaro Pereyra Rabanal.  [Ruby 1.9 - Bug #5425]
24598	* array.c (rb_ary_s_try_convert):  Fix typo (try => tries)
24599	* array.c (rb_ary_rindex):  Add spacing for block.
24600	* array.c (rb_ary_uniq_bang):  Describe block
24601	* array.c (rb_ary_uniq):  ditto
24602
24603Tue Oct 11 07:55:38 2011  Eric Hodel  <drbrain@segment7.net>
24604
24605	* array.c:  Add a description to Array, minor cleanups.  Patch by
24606	  Andrea Singh.  [Ruby 1.9 - Bug #5412]
24607
24608Tue Oct 11 06:09:52 2011  Eric Hodel  <drbrain@segment7.net>
24609
24610	* lib/pp.rb:  Move PP documentation to top of class PP.  Patch by
24611	  Sylvain Daubert.  [Ruby 1.9 - Bug #5430]
24612
24613Tue Oct 11 06:06:29 2011  Eric Hodel  <drbrain@segment7.net>
24614
24615	* ext/coverage/coverage.c (Init_coverage):  Change list format and
24616	  describe Coverage.result output.  Patch by Sylvain Daubert.
24617	  [Ruby 1.9 - Bug #5428]
24618
24619Tue Oct 11 05:53:23 2011  Eric Hodel  <drbrain@segment7.net>
24620
24621	* object.c (Init_Object):  Add reference to BasicObject, brief
24622	  explanation of constant lookup.  Based on patch by Alvaro Pereyra
24623	  Rabanal.
24624	  [Ruby 1.9 - Bug #5426]
24625
24626Sun Oct  9 11:06:52 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
24627
24628	* test/psych/test_yamldbm.rb: don't run test if the system
24629	  don't support yaml/dbm.
24630
24631	* test/syck/test_yamldbm.rb: ditto.
24632
24633Sat Oct  8 08:54:56 2011  Eric Hodel  <drbrain@segment7.net>
24634
24635	* enum.c (group_by):  Improve group_by description.  Patch by b t.
24636	  [#5411]
24637
24638Sat Oct  8 03:17:51 2011  Eric Hodel  <drbrain@segment7.net>
24639
24640	* lib/shell.rb:  Document some methods of Shell.  Patch by Carol
24641	  Nichols.  [Ruby 1.9 - Bug #5417]
24642
24643Fri Oct  7 17:54:28 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24644
24645	* lib/test/unit/assertions.rb (assert_send, assert_not_send):
24646	  parenthesize non-empty arguments.
24647
24648Fri Oct  7 06:35:50 2011  Eric Hodel  <drbrain@segment7.net>
24649
24650	* array.c:  Use + for arguments described in documentation to allow
24651	  rdoc -C2 to work better.  Remove <code> from method references to
24652	  allow cross-references in HTML documentation.
24653
24654Thu Oct  6 18:46:23 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
24655
24656	* vm_eval.c (make_no_method_exception): fix typo.
24657
24658	* vm_insnhelper.c, vm_insnhelper.h: ditto.
24659
24660Thu Oct  6 16:29:30 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24661
24662	* vm_eval.c (make_no_method_execption): extract from
24663	  raise_method_missing().
24664
24665	* vm_eval.c (send_internal): remove inadvertent symbol creation
24666	  from public_send.  based on a patch by Jeremy Evans <code AT
24667	  jeremyevans.net> in [ruby-core:38576]. [Feature #5112]
24668
24669	* vm_insnhelper.c (vm_call_method): remove inadvertent symbol
24670	  creation from send and __send__, too.
24671
24672Thu Oct  6 14:59:11 2011  Eric Hodel  <drbrain@segment7.net>
24673
24674	* lib/time.rb:  Clean up Time documentation.  Patch by Jake Goulding.
24675	  [Ruby 1.9 - Bug #5416]
24676
24677Thu Oct  6 10:00:54 2011  Eric Hodel  <drbrain@segment7.net>
24678
24679	* enum.c (group_by):  Improve documentation based on patch by b t.
24680
24681Thu Oct  6 09:56:30 2011  Eric Hodel  <drbrain@segment7.net>
24682
24683	* enum.c:  Clean up wording in Enumerable documentation.  Patch by b t.
24684	  [Ruby 1.9 - Bug #5411]
24685
24686Thu Oct  6 09:17:18 2011  Eric Hodel  <drbrain@segment7.net>
24687
24688	* time.c (Init_Time):  Remove editorial comments from Time
24689	  documentation, fix link.
24690
24691Thu Oct  6 09:14:20 2011  Eric Hodel  <drbrain@segment7.net>
24692
24693	* time.c (Init_Time):  Improve Time documentation.  Patch by Shane
24694	  Emmons.  [Ruby 1.9 - Bug #5404]
24695	* lib/time.rb:  Improve time.rb documentation including Time.strptime.
24696	  Patch by Shane Emmons.  [Ruby 1.9 - Bug #5402]
24697
24698Thu Oct  6 08:54:05 2011  Eric Hodel  <drbrain@segment7.net>
24699
24700	* random.c:  Improve documentation of Random.  Patch by Gregory
24701	  Parkhurst.  [Ruby 1.9 - Bug #5410]
24702
24703Thu Oct  6 01:44:51 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
24704
24705	* cont.c (cont_mark): mark original Thread object from saved_thread.
24706	  [ruby-dev:44571] [Bug #5386]
24707
24708Wed Oct  5 16:33:04 2011  NARUSE, Yui  <naruse@ruby-lang.org>
24709
24710	* vm_insnhelper.c (vm_call_cfunc): remove useless hack.
24711
24712Wed Oct  5 05:56:39 2011  Eric Hodel  <drbrain@segment7.net>
24713
24714	* hash.c (Init_Hash):  Improve Hash documentation.  Patch by Alvaro
24715	  Pereyra Rabanal.  [Ruby 1.9 - Bug #5405]
24716
24717Wed Oct  5 05:47:59 2011  Eric Hodel  <drbrain@segment7.net>
24718
24719	* random.c (Init_Random):  Add a top-level comment for Random.  Patch
24720	  by Brett Bim.  [Ruby 1.9 - Bug #5403]
24721
24722Wed Oct  5 02:50:27 2011  Aaron Patterson <aaron@tenderlovemaking.com>
24723
24724	* ext/psych/lib/psych/syntax_error.rb: Add file, line, offset, and
24725	  message attributes during parse failure.
24726	* ext/psych/parser.c: Update parser to raise exception with correct
24727	  values.
24728	* test/psych/test_exception.rb: corresponding tests.
24729
24730Wed Oct  5 01:52:16 2011  Aaron Patterson <aaron@tenderlovemaking.com>
24731
24732	* ext/psych/parser.c (parse): Use context_mark for indicating error
24733	  line and column.
24734
24735Wed Oct  5 01:22:08 2011  Aaron Patterson <aaron@tenderlovemaking.com>
24736
24737	* ext/psych/lib/psych/scalar_scanner.rb: use normal begin / rescue
24738	  since postfix rescue cannot receive the exception class. Thanks
24739	  nagachika!
24740
24741Tue Oct  4 21:10:08 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24742
24743	* class.c (class_alloc): allocate extra memory after containing
24744	  object setup to get rid of rare-but-potential memory leak.
24745
24746	* gc.c (gc_mark_children): skip marking extended members if ptr is
24747	  NULL.
24748
24749Tue Oct  4 16:17:50 2011  NARUSE, Yui  <naruse@ruby-lang.org>
24750
24751	* lib/time.rb (Time.strptime): use Time.at if d[:seconds] is set.
24752	  Reported by Christopher Eberz. [ruby-core:39903] Bug #5399
24753
24754Tue Oct  4 11:44:10 2011  NARUSE, Yui  <naruse@ruby-lang.org>
24755
24756	* gc.c (rb_gc_set_params): ruby_verbose can be Qnil, so use RTEST.
24757
24758Tue Oct  4 08:33:41 2011  Eric Hodel  <drbrain@segment7.net>
24759
24760	* ext/etc/etc.c:  Document Etc, Etc.sysconfdir, Etc.systmpdir.  Patch
24761	  by mathew murphy.  [Ruby 1.9 - Bug #5396]
24762
24763Tue Oct  4 08:21:51 2011  Eric Hodel  <drbrain@segment7.net>
24764
24765	* lib/shellwords.rb:  Update toplevel comment with an example.  Patch
24766	  by Samnang Chhun.  [Ruby 1.9 - Bug #5388]
24767
24768Tue Oct  4 08:15:50 2011  Eric Hodel  <drbrain@segment7.net>
24769
24770	* proc.c (proc_call):  Update documentation to match argument handling
24771	  of proc/Proc.new/lambda/->()
24772
24773Tue Oct  4 07:59:16 2011  Eric Hodel  <drbrain@segment7.net>
24774
24775	* proc.c (proc_call):  Fix documentation of Proc#call vs Proc#===.
24776	  [Ruby 1.9 - Bug #5349]
24777
24778Tue Oct  4 07:43:18 2011  Eric Hodel  <drbrain@segment7.net>
24779
24780	* array.c (rb_ary_initialize):  Make Array.new description match
24781	  call-seq.  Patch by Henry Maddocks.  [Ruby 1.9 - Bug #5344]
24782
24783Tue Oct  4 07:35:23 2011  Eric Hodel  <drbrain@segment7.net>
24784
24785	* array.c (rb_ary_initialize):  Add output for examples.  Patch by
24786	  Jonathan Mukai.  [Ruby 1.9 - Bug #5216]
24787
24788Tue Oct  4 07:30:50 2011  Eric Hodel  <drbrain@segment7.net>
24789
24790	* array.c (rb_ary_s_create):  Add example results for Array::[].  Patch
24791	  by Jonathan Mukai.  [Ruby 1.9 - Bug #5215]
24792
24793Tue Oct  4 07:15:17 2011  Eric Hodel  <drbrain@segment7.net>
24794
24795	* lib/rubygems:  Update to RubyGems 1.8.11.  Move Deprecate into the
24796	  Gem namespace.
24797
24798Tue Oct  4 06:43:47 2011  Aaron Patterson <aaron@tenderlovemaking.com>
24799
24800	* ext/psych/lib/psych.rb: update psych version.
24801	* ext/psych/psych.gemspec: generate new gemspec for new version.
24802
24803Tue Oct  4 06:29:55 2011  Aaron Patterson <aaron@tenderlovemaking.com>
24804
24805	* ext/psych/lib/psych.rb: calling `yaml` rather than `to_yaml`.
24806	* ext/psych/lib/psych/nodes/node.rb: Rename `to_yaml` to just `yaml`
24807	  in order to avoid YAML::ENGINE switching from replacing this method.
24808	* test/psych/helper.rb: fix tests for method name change.
24809	* test/psych/test_document.rb: ditto
24810	* test/psych/visitors/test_emitter.rb: ditto
24811
24812Tue Oct  4 06:20:19 2011  Aaron Patterson <aaron@tenderlovemaking.com>
24813
24814	* ext/psych/lib/psych/scalar_scanner.rb: Match values against the
24815	  floating point spec defined in YAML to avoid erroneous parses.
24816	* test/psych/test_numeric.rb: corresponding test.
24817
24818Tue Oct  4 05:59:24 2011  Aaron Patterson <aaron@tenderlovemaking.com>
24819
24820	* ext/psych/lib/psych/visitors/to_ruby.rb: ToRuby visitor can be
24821	  constructed with a ScalarScanner.
24822	* ext/psych/lib/psych/visitors/yaml_tree.rb: ScalarScanner can be
24823	  passed to the YAMLTree visitor.
24824
24825Tue Oct  4 05:47:23 2011  Aaron Patterson <aaron@tenderlovemaking.com>
24826
24827	* ext/psych/lib/psych/visitors/to_ruby.rb: Define Regexp::NOENCODING
24828	  for 1.9.2 backwards compatibility.
24829	* ext/psych/lib/psych/visitors/yaml_tree.rb: Fix Date string
24830	  generation for 1.9.2 backwards compatibility.
24831
24832Mon Oct  3 23:56:39 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
24833
24834	* gc.c (rb_gc_set_params): output GC parameter change messages only
24835	  if -w/-v options are specified. these messages are output to stderr,
24836	  not to stdout. [ruby-core:39795] [Bug #5380]
24837
24838	* test/ruby/test_gc.rb (test_gc_parameter): add test for it.
24839
24840Sun Oct  2 20:05:32 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
24841
24842	* vm.c (rb_thread_mark), cont.c (cont_mark): revert r33369 and r33371
24843	  that may cause SEGV in certain environments.
24844
24845Sun Oct  2 12:14:06 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
24846
24847	* test/psych/test_yamldbm.rb: add test case.
24848	* test/syck/test_yamldbm.rb: ditto.
24849
24850Sun Oct  2 11:28:09 2011  Aaron Patterson <aaron@tenderlovemaking.com>
24851
24852	* lib/yaml/store.rb: make initialize method signature match the
24853	  superclass signature.
24854
24855Sun Oct  2 10:44:01 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
24856
24857	* io.c: fix documentation of ARGF.lineno=.
24858
24859Sat Oct  1 20:03:19 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24860
24861	* lib/mkmf.rb (have_framework): try as Objective-C.
24862	  https://twitter.com/nagachika/status/120294447660539904
24863
24864Sun Oct  2 08:43:25 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
24865
24866	* vm.c (rb_thread_mark), cont.c (cont_mark): self pointer should not
24867	  be marked by itself. Patch by Koichi Sasada.
24868	  [ruby-dev:44567] [Bug #5386]
24869
24870Sun Oct  2 00:42:14 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
24871
24872	* vm.c (rb_thread_mark): rb_thread_t needs self to be marked.
24873	  [ruby-dev:44566] [Bug #5386]
24874
24875Sat Oct  1 09:48:53 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
24876
24877	* gc.c (add_heap_slots, init_heap): reset heaps_inc zero when
24878	  heap slots are expanded by environment variable RUBY_HEAP_MIN_SLOTS.
24879	  [ruby-core:39777] [Bug #5380]
24880
24881	* test/ruby/test_gc.rb (test_gc_parameter): add test for it.
24882
24883	* test/ruby/envutil.rb (assert_normal_exit): add :child_env option to
24884	  enable pass environment variables to child process.
24885
24886Thu Sep 29 13:17:51 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24887
24888	* array.c (ary_join_1): should not copy the encoding of non-string
24889	  element after string element.  [ruby-core:39776] [Bug #5379]
24890
24891Thu Sep 29 11:53:56 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24892
24893	* gc.c (slot_sweep, rb_gc_finalize_deferred)
24894	  (rb_objspace_call_finalizer, rb_gc): run finalizers
24895	  sequentially.  [ruby-dev:44562]
24896
24897Thu Sep 29 20:37:38 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24898
24899	* ext/gdbm/gdbm.c (rb_gdbm_fatal): adjust argument type.
24900
24901Thu Sep 29 20:10:42 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24902
24903	* gc.c (is_id_value, is_live_object): extract from id2ref().
24904
24905	* gc.c (run_finalizer): use object instead of object id.
24906
24907Thu Sep 29 20:07:36 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24908
24909	* use RB_TYPE_P which is optimized for constant types, instead of
24910	  comparison with TYPE.
24911
24912Wed Sep 28 09:20:37 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24913
24914	* configure.in (pthread_np.h): needs pthread.h to be included
24915	  previously on OpenBSD.  a patch by George Koehler <xkernigh AT
24916	  netscape.net> at [ruby-core:39752].  [Bug #5376]
24917
24918Wed Sep 28 04:41:35 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
24919
24920	* test/psych/test_yamlstore.rb: use tmpdir for tmpfile.
24921	* test/syck/test_yamlstore.rb: ditto.
24922
24923Wed Sep 28 04:10:46 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
24924
24925	* ext/bigdecimal/README: update report to.
24926
24927Tue Sep 28 04:05:00 2011  Kenta Murata  <mrkn@mrkn.jp>
24928
24929	* ext/bigdecimal/bigdecimal_en.html: removed because this file isn't
24930	  maintained now.
24931
24932	* ext/bigdecimal/bigdecimal_ja.html: ditto.
24933
24934Tue Sep 27 09:55:40 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
24935
24936	* thread_pthread.c: make native_fd_select().
24937	* thread.c (do_select): remove #ifdef _WIN32. Instead, use
24938	  native_fd_select() always.
24939
24940Tue Sep 27 09:44:59 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
24941
24942	* thread.c (do_select): remove cygwin specific hack. It's layer
24943	  violation and too large hack.
24944	* thread.c (cmp_tv, subtract_tv): removed.
24945
24946Tue Sep 27 03:50:19 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
24947
24948	* test/rexml/test_sax.rb: add require 'rexml/document'.
24949
24950Tue Sep 27 03:32:27 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
24951
24952	* test/psych/test_yamldbm.rb: fix #setup and #teardown.
24953	  [Bug #5370] [ruby-core:39730]
24954	* test/syck/test_yamldbm.rb: ditto.
24955
24956Mon Sep 26 11:27:38 2011  NARUSE, Yui  <naruse@ruby-lang.org>
24957
24958	* lib/webrick/httputils.rb: Add MIME Type definition of .js and .svg.
24959	  patched by Hal Brodigan. [ruby-core:39704] [Bug #5365]
24960
24961Mon Sep 26 09:20:44 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
24962
24963	* configure.in: remove DJGPP support. It's not longer supported
24964	  since ruby 1.9.0.
24965
24966Mon Sep 26 09:07:46 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
24967
24968	* include/ruby/defines.h: remove NextStep, OpenStep, Rhapsody
24969	  support. Last activity of their OSes are 7 years ago.
24970	* configure.in: ditto.
24971	* dir.c: ditto.
24972	* ext/tk/extconf.rb: ditto.
24973
24974Mon Sep 26 09:02:49 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
24975
24976	* configure.in: remove a code for human68k. it's no longer
24977	  supported since r19677.
24978
24979Sun Sep 25 23:43:32 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
24980
24981	* ext/openssl/ossl_asn1.c: fix int_ossl_asn1_decode0_cons when being
24982	  fed arbitrary string values.
24983	  Clearly distinguish between the cases "universal, infinite and
24984	  not a SEQUENCE or SET" and "universal SEQUENCE or SET, possibly
24985	  infinite". Raise error for universal tags that are not infinite.
24986	* test/openssl/test_asn1.rb: add a test for this.
24987
24988	  Thanks to Hiroshi Yoshida for reporting this bug.
24989	  [Bug #5363] [ruby-dev:44542]
24990
24991Sun Sep 25 20:57:18 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
24992
24993	* test/syck/test/yamldbm.rb: add test for Syck::DBM.
24994	* test/psych/test_yamldbm.rb: add test for Psych::DBM.
24995	* test/psych/test_yamlstore.rb: add test for Psych::PStore.
24996
24997Sun Sep 25 20:54:10 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
24998
24999	* lib/yaml/dbm/dbm.rb: fix #update, add #key for using instead #index.
25000	  [Bug #5305][ruby-dev:44485]
25001
25002Sun Sep 25 16:54:33 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25003
25004	* encoding.c (require_enc): reject only loading from untrusted
25005	  load paths.  [ruby-dev:44541] [Bug #5279]
25006
25007	* transcode.c (load_transcoder_entry): ditto.
25008
25009Sun Sep 25 16:45:05 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25010
25011	* configure.in: ignore all warnings from an arbitrary
25012	  header in /usr/local/include.
25013
25014Sun Sep 25 03:43:03 2011  NARUSE, Yui  <naruse@ruby-lang.org>
25015
25016	* enum.c (slice_before_i): use rb_attr_get to suppress wrong warning
25017	  for internal instance variable slicebefore_initial_state.
25018
25019Fri Sep 23 14:20:14 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
25020
25021	* ext/openssl/ossl_asn1.c: remove unused variable.
25022
25023Fri Sep 23 13:46:59 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
25024
25025	* test/openssl/test_ssl_session.rb: execute test_session_exts_read
25026	  only for OpenSSL versions >= 0.9.8k. Thanks, Eric Wong, for
25027	  reporting this.
25028	  [Bug #4961] [ruby-core:37726]
25029
25030Fri Sep 23 11:59:08 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
25031
25032	* test/openssl/test_ssl_session.rb: ensure server calls callbacks in
25033	  test_ctx_server_session_cb. Thanks to Eric Wong for the patch.
25034	  [Bug #5336] [ruby-core:39619]
25035
25036Thu Sep 22 02:53:19 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25037
25038	* vm_insnhelper.c (vm_call_cfunc): suppress a warning.  note that
25039	  `volatile type *var' doesn't make var itself volatile.
25040
25041Thu Sep 22 01:52:48 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
25042
25043	* thread_pthread.c (ubf_select): activate timer thread when interrupt
25044	  blocking thread.
25045	  A patch created by Koichi Sasada. [ruby-core:39634] [Bug #5343]
25046	  to cover race condition, timer thread periodically send SIGVTARLM to
25047	  threads in signal thread list. so you should activate timer thread
25048	  when interrupt a thread.
25049
25050Wed Sep 21 16:55:26 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
25051
25052	* test/io/wait/test_io_wait.rb (TestIOWait#setup): of course, the
25053	  behavior of mingw is just same with mswin.
25054
25055Tue Sep 20 18:08:51 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25056
25057	* vm_insnhelper.c (vm_get_cvar_base): reduce duplicated checks and
25058	  move a warning outside the loop.
25059
25060Mon Sep 19 18:55:51 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
25061
25062	* lib/fileutils.rb (module FileUtils): improve performance of
25063	  FileUtils.compare_stream. a patch by Masaki Matsushita.
25064	  [Feature #5337] [ruby-core:39622]
25065
25066Mon Sep 19 18:42:58 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
25067
25068	* test/-ext-/old_thread_select/test_old_thread_select.rb:
25069	  select() with timeout may return early in old Linux kernels
25070	  with 250 Hz tickrate and no dynticks, so skip everything older
25071	  than 2.6.32 (which has long term support).
25072	  And, Make the timing assertions consistently use assert_operator with
25073	  timing difference in error message
25074	  Patch by Eric Wong. [Bug #5335] [ruby-core:39618]
25075
25076Mon Sep 19 09:28:06 2011  Eric Hodel  <drbrain@segment7.net>
25077
25078	* test/openssl/test_ssl.rb (class OpenSSL):  Test
25079	  OpenSSL::SSL::SSLSocket#session and #session=.
25080
25081Mon Sep 19 07:54:17 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25082
25083	* object.c (rb_obj_clone): singleton class should be attached
25084	  singleton object to.  a patch by Satoshi Shiba <shiba AT rvm.jp>
25085	  at [ruby-dev:44460].  [Bug #5274]
25086
25087Sat Sep 17 23:34:10 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25088
25089	* parse.y (parser_data_type): inherit the core type in ripper so
25090	  that checks in core would work.  [ruby-core:39591] [Bug #5331]
25091
25092Sat Sep 17 12:44:04 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
25093
25094	* lib/find.rb (Find.find): add documentation that Find.find
25095	  without block returns an enumerator.
25096
25097Thu Sep 15 11:39:43 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25098
25099	* gc.c (mark_entry, mark_key, mark_keyvalue): adjust callback
25100	  argument types.
25101
25102Thu Sep 15 01:44:10 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
25103
25104	* ext/tk/*: Change encoding from EUC-JP to UTF-8
25105
25106Wed Sep 14 11:43:37 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
25107
25108	* thread.c (rb_fd_rcopy): added an argument guard.
25109	  Patch by NAKAMURA Usaku. [Bug #5306] [ruby-core:39435]
25110
25111Tue Sep 13 20:21:49 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25112
25113	* lib/pstore.rb, test/test_pstore.rb: suppress warnings with -v.
25114
25115	* lib/pstore.rb (PStore): always open in binary mode even if
25116	  default encodings are set.  [Bug #5311] [ruby-core:39503]
25117
25118Tue Sep 13 05:37:15 2011  Yukihiro Matsumoto  <matz@ruby-lang.org>
25119
25120	* io.c (Init_IO): update BINARY comment.  it should not change the
25121	  encoding of the result to ASCII-8BIT.  [ruby-talk:387719]
25122
25123Mon Sep 12 19:55:00 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
25124
25125	* thread.c (rb_thread_select): fix to ignore an argument
25126	  modification of rb_thread_fd_select().
25127	  based on a patch by Eric Wong. [Bug #5306] [ruby-core:39435]
25128	* thread.c (rb_fd_rcopy): New. for reverse fd copy.
25129
25130	* test/-ext-/old_thread_select/test_old_thread_select.rb
25131	(test_old_select_false_positive): test for bug5306.
25132
25133	* ext/-test-/old_thread_select/old_thread_select.c (fdset2array):
25134	  New. convert fdsets to array.
25135	* ext/-test-/old_thread_select/old_thread_select.c (old_thread_select):
25136	  return 'read', 'write', 'except' argument of rb_thread_select()
25137	  to ruby script.
25138
25139Mon Sep 12 13:38:12 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25140
25141	* README.EXT, README.EXT.ja (2.2.2), parse.y (rb_check_id): add
25142	  documents for rb_check_id().
25143
25144Mon Sep 12 12:53:39 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
25145
25146	* lib/rake/file_list.rb (Rake::FileList#egrep): there is no need to
25147	  open files in binary mode.
25148	  see more details in https://github.com/jimweirich/rake/issues/74
25149
25150Mon Sep 12 12:42:36 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25151
25152	* test/ruby/test_exception.rb (TestException#test_exit_success_p):
25153	  assert also the cases when exiting with true and false.
25154
25155	* lib/test/unit/assertions.rb (assert_send): make arguments in
25156	  the default message clearer.
25157
25158Sun Sep 11 05:23:14 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
25159
25160	* lib/matrix.rb: Deal with subclasses of Matrix [redmine #5307]
25161
25162Sat Sep 10 13:38:20 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
25163
25164	* dir.c (dir_s_aref):
25165	* dir.c (dir_entries): Two small documentation fixes.
25166	  A patch from Aaron Lerch. [Bug #5302] [ruby-core:39404]
25167
25168Sat Sep 10 08:30:03 2011  Koichi Sasada  <ko1@atdot.net>
25169
25170	* gc.c (GC_PROFILE_MORE_DETAIL, CALC_EXACT_MALLOC_SIZE):
25171	  define macros only if they are not defined.
25172	  fixes: [Ruby 1.9 - Feature #5291]
25173
25174Sat Sep 10 08:25:47 2011  Yukihiro Matsumoto  <matz@ruby-lang.org>
25175
25176	* parse.y (bv_decls): parse.y relies on $$ = $1 before action
25177	  routines.  a patch from Michael Edgar.  [Bug #5303]
25178	  [ruby-core:39429]
25179
25180Sat Sep 10 01:37:55 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
25181
25182	* sample/drb/dhasenc.rb: coding cookie of Emacs is coding,
25183	  not encoding.
25184
25185	* sample/mine.rb: ditto.
25186
25187Fri Sep  9 21:56:40 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
25188
25189	* ext/bigdecimal/bigdecimal.c (BigDecimal_sqrt): Fix comment.
25190	  BigDecimal#sqrt requires argument. Reported by Makoto Kishimoto.
25191	  Thanks for your contribution. [Bug #5267] [ruby-dev:44452]
25192
25193Fri Sep  9 11:00:55 2011  Shota Fukumori  <sorah@tubusu.net>
25194
25195	* test/rubygems/test_gem_commands_help_command.rb: Add one
25196	  `require` because if run test-all with test/unit parallel
25197	  running, sometimes this test fails by some constants not found.
25198	  The error reason is some worker doesn't require the file needed by
25199	  this test. This issue is related to [ruby-core:36168].
25200
25201Fri Sep  9 10:22:03 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25202
25203	* thread.c (rb_thread_select): fix a typo to initialize efds
25204	  properly.  [Bug #5299] [ruby-core:39380]
25205
25206Fri Sep  9 02:02:09 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
25207
25208	* template/yarvarch.ja:
25209	  Change encoding from Shift_JIS to UTF-8
25210
25211Thu Sep  9 01:14:00 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
25212
25213	* sample/drb/README.rd.ja:
25214	* sample/drb/dhasenc.rb:
25215	* sample/mine.rb:
25216	  Change encoding from EUC-JP to UTF-8
25217
25218Thu Sep  8 21:03:22 2011  NARUSE, Yui  <naruse@ruby-lang.org>
25219
25220	* ext/nkf/nkf-utf8/nkf.c: import nkf 2.1.2 (be9c280)
25221	  Bump version number/release date only.
25222
25223Thu Sep  8 12:43:18 2011  Narihiro Nakamura  <authornari@gmail.com>
25224
25225	* gc.c (Init_GC): defined GC::Profiler.raw_data. based on the
25226	  patch by Eric Hodel. [ruby-core:37857] [Bug #4991]
25227
25228Thu Sep  8 09:02:53 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25229
25230	* gc.c (id2ref): objects which are unmarked but not in sweep_slots
25231	  are not dead.
25232
25233Thu Sep  8 07:44:25 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25234
25235	* transcode.c (rb_declare_transcoder, load_transcoder_entry): no
25236	  longer need to limit the length of transcoder library name.
25237
25238Thu Sep  8 07:36:36 2011  NARUSE, Yui  <naruse@ruby-lang.org>
25239
25240	* ext/syck/lib/syck/types.rb: use toplevel Syck.
25241	  for the case someone define Syck::Syck (or YAML::Syck).
25242
25243Thu Sep  8 07:33:12 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25244
25245	* gc.c (id2ref): unmarked object is already dead while lazy
25246	  sweeping, and to it cannot come back since other objects
25247	  referred from it might have been freed already.
25248
25249Wed Sep  8 03:48:00 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
25250
25251	* ext/readline/README.ja:
25252	  Change encoding from EUC-JP to UTF-8
25253
25254Wed Sep  8 02:59:00 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
25255
25256	* test/rexml/test_encoding.rb:
25257	  Add require 'require 'rexml/document'
25258
25259Wed Sep  8 02:53:00 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
25260
25261	* ext/nkf/nkf-utf8/nkf.c:
25262	  Change encoding from ISO-2022 to UTF-8
25263
25264Wed Sep  7 23:41:24 2011  Kouhei Sutou  <kou@cozmixng.org>
25265
25266	* lib/rexml/parsers/baseparser.rb, test/rexml/test_comment.rb:
25267	  allow a single hyphen in comment. [Bug #5278] [ruby-core:39289]
25268	  Reported by Thomas Fritzsche. Thanks!!!
25269
25270Wed Sep  7 17:27:18 2011  NARUSE, Yui  <naruse@ruby-lang.org>
25271
25272	* lib/yaml.rb: explicitly specify ::Object to avoid the collision with
25273	  Syck::Object.
25274
25275Tue Sep  6 21:06:49 2011  Shota Fukumori  <sorah@tubusu.net>
25276
25277	* lib/test/unit.rb (_run_suites): Now reports are written the
25278	  following order: Skip, Failure, Error. [Feature #5282]
25279
25280	* test_sorting.rb: test for above.
25281
25282	* test4test_sorting.rb: Ditto.
25283
25284	* lib/test/unit.rb (run): Put RUBY_DESCRIPTION before quitting.
25285	  [Feature #5282]
25286
25287Tue Sep  6 21:13:47 2011  Masaya Tarui  <tarui@ruby-lang.org>
25288
25289	* win32/Makefile.sub (INSNS): change command line option -Ks to -Ku
25290	  for generate *.inc. because insns.def encoding has been changed SJIS
25291	  to UTF-8. if $BASERUBY is 1.9, -Ks cause an error. [Feature #5128]
25292	  (same as r33194)
25293
25294Tue Sep  6 15:55:24 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25295
25296	* transcode.c (load_transcoder_entry): concatenate paths directly.
25297
25298	* encoding.c (load_encoding): predefined encoding names are safe.
25299	  [ruby-dev:44469] [Bug #5279]
25300
25301	* transcode.c (load_transcoder_entry): ditto.
25302
25303Tue Sep  6 12:07:10 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25304
25305	* transcode.c: enabled econv newline option.
25306
25307Tue Sep  6 06:44:57 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
25308
25309	* numeric.c (dbl2ival): Fix Float#divmod and #round for 32 bit
25310	  platform. part 1 of [bug #5276]
25311
25312Tue Sep  6 06:44:25 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
25313
25314	* numeric.c (flo_round): Fix criteria for 32 bits platform
25315	  part 2 of [bug #5276]
25316
25317Tue Sep  6 05:37:11 2011  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
25318
25319	* test/rinda/test_rinda.rb (test_core_03_notify): Fixed test failures
25320	  [ruby-dev:44430] [Ruby 1.9 - Bug #372]
25321
25322Mon Sep  5 20:59:30 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
25323
25324	* insns.def: change encoding pragma for emacs (shift_jis to utf-8).
25325
25326Mon Sep  5 19:32:15 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
25327
25328	* Makefile.in (INSNS): change command line option -Ks to -Ku for
25329	  generate *.inc. because insns.def encoding has been changed SJIS to
25330	  UTF-8. if $BASERUBY is 1.9, -Ks cause an error. [Feature #5128]
25331
25332Mon Sep  5 18:10:56 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25333
25334	* transcode.c (rb_econv_binmode): newline decorators are
25335	  exclusive.
25336
25337Mon Sep  5 15:03:37 2011  NARUSE, Yui  <naruse@ruby-lang.org>
25338
25339	* test/rubygems/test_gem_security.rb
25340	  (test_class_build_self_signed_cert): reset opt[:trust_dir] to apply
25341	  temporary Gem.user_home.
25342
25343Mon Sep  5 10:04:35 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
25344
25345	* README.ja, README.EXT.ja: resolve conflicts. [ruby-dev:44459]
25346
25347Mon Sep  5 05:13:22 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
25348
25349	* numeric.c (flo_round): Make Float#round round big values [bug
25350	  #5272]
25351
25352Mon Sep  5 04:28:25 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
25353
25354	* numeric.c (int_round): Integer#round always returns an Integer [Bug
25355	  #5271]
25356
25357Sun Sep  4 22:28:50 2011  Shugo Maeda  <shugo@ruby-lang.org>
25358
25359	* lib/net/imap.rb (default_port, default_imap_port,
25360	  default_tls_port, default_ssl_port, default_imaps_port):
25361	  added methods for consistency with Net::POP.
25362	  based on the patch by art lussos.  [ruby-core:38997] [Bug #5198]
25363
25364Sun Sep  4 21:19:19 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
25365
25366	* Change encoding from EUC-JP to UTF-8. [Feature #5128]
25367
25368Sun Sep  4 00:47:39 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
25369
25370	* test/ruby/test_fiber.rb (TestFiber#test_no_valid_cfp):
25371	  add a test. Unlike TestThread#test_no_valid_cfp,
25372	  this test succeeds even if win32ole is required (see r33153).
25373
25374Sun Sep  4 00:11:49 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25375
25376	* variable.c (rb_const_set): show the previous definition
25377	  location.  [EXPERIMENTAL]
25378
25379Sat Sep  3 23:56:24 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25380
25381	* configure.in (sizeof_struct_dirent_too_small): check if struct
25382	  dirent.d_name is too small.
25383
25384	* configure.in (RUBY_MINGW32): take tool prefix from CC.
25385
25386Sat Sep  3 23:52:08 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25387
25388	* io.c (argf_next_argv): open in default text mode.
25389	  [ruby-core:39234] [Bug #5268]
25390
25391Sat Sep  3 18:40:57 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
25392
25393	* lib/thread.rb (SizedQueue#max=): raise ArgumentError if max is not
25394	  positive number. patch by Masaki Matsushita.
25395	  [ruby-dev:44449] [Bug #5259]
25396
25397	* test/thread/test_queue.rb (test_sized_queue_initialize,
25398	  test_sized_queue_assign_max): add tests for it.
25399
25400Fri Sep  2 21:11:16 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25401
25402	* io.c (validate_enc_binmode, prep_stdio): default to text mode on
25403	  dosish platforms.  [ruby-core:38822] [Bug #5164]
25404
25405	* transcode.c (rb_econv_prepare_options): keep default ecflags
25406	  unchanged if no options.
25407
25408Fri Sep  2 14:36:47 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25409
25410	* vm_insnhelper.c (vm_search_const_defined_class): search
25411	  ancestors only when global scope.  [ruby-core:39227] [Bug #5264]
25412
25413Fri Sep  2 09:58:08 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25414
25415	* parse.y (parser_tokadd_string, parser_yylex): ignore a backslash
25416	  which prefixes an non-ascii character, which has no escape
25417	  syntax.  [ruby-core:39222] [Ruby 1.9 - Bug #5262]
25418
25419Fri Sep  2 04:05:25 2011  Aaron Patterson <aaron@tenderlovemaking.com>
25420
25421	* ext/psych/lib/psych/visitors/yaml_tree.rb: emit strings tagged as
25422	  ascii-8bit as binary in YAML.
25423	* test/psych/test_string.rb: corresponding test.
25424
25425Fri Sep  2 01:07:14 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25426
25427	* numeric.c (flo_round): substitute machine dependent magic number.
25428
25429Thu Sep  1 17:31:22 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25430
25431	* insns.def (defineclass), vm_insnhelper.c (vm_get_cvar_base): see
25432	  also inherited constants for classes without superclass and
25433	  modules.  [ruby-core:37698] [Bug #3423]
25434
25435Thu Sep  1 16:18:44 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
25436
25437	* Release GVL while OpenSSL's public key generation.
25438
25439	    t = Thread.new { print "."; sleep 0.1 }
25440	    key = OpenSSL::PKey::RSA.new(2048)
25441	    #=> Thread t works in parallel with public key generation if
25442		OS/machine allows it.
25443
25444	  This works with OpenSSL >= 0.9.8. From this version, it has new
25445	  public key generation function which allows us to interrupt the
25446	  execution while pkey generation iterations.
25447
25448	* ext/openssl/extconf.rb: Check existence of OpenSSL's new public key
25449	  generation function. (DH_generate_parameters_ex,
25450	  DSA_generate_parameters_ex and RSA_generate_key_ex.
25451
25452	* ext/openssl/ossl_pkey.{h,c} (ossl_generate_cb_2,
25453	  ossl_generate_cb_stop): Added new callback function for OpenSSL pkey
25454	  generation which handles Thread interruption by Ruby.
25455	  ossl_generate_cb_stop is the unblock function(ubf) for Ruby which
25456	  sets a stop flag. New pkey generation callback ossl_generate_cb_2
25457	  checks the stop flag at each iterations of OpenSSL and interrupts
25458	  pkey generation when the flag is set.
25459
25460	* ext/openssl/ossl_pkey_dsa.c (dsa_generate): Call
25461	  rb_thread_blocking_region with the above unblock function to release
25462	  GVL while pkey generation.
25463
25464	* ext/openssl/ossl_pkey_rsa.c (rsa_generate): ditto.
25465
25466	* ext/openssl/ossl_pkey_dh.c (dh_generate): ditto.
25467
25468	* test/openssl/test_pkey_{dh,dsa,rsa}.rb: Test it.
25469
25470Thu Sep  1 14:06:54 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
25471
25472	* test/ruby/test_thread.rb (TestThread#test_no_valid_cfp): skip when
25473	  win32ole is required.  in such case, win32ole redefines
25474	  Thread#initialize, and the block argument becomes to be not the top
25475	  of the thread, then this testcase always fails.
25476
25477Thu Sep  1 10:20:50 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
25478
25479	* test/ruby/test_io_m17n.rb (TestIO_M17N#test_{default_mode_on_dosish,
25480	  default_mode_on_unix,text_mode,binary_mode}): sorry for wrong test
25481	  committed in r33144.  I'd misunderstood the spec of ruby's universal
25482	  newline.
25483
25484Thu Sep  1 09:27:57 2011  NARUSE, Yui  <naruse@ruby-lang.org>
25485
25486	* variable.c (rb_autoloading_value): Fix the order of definitions.
25487	  It is used by autoload_defined_p.
25488
25489Wed Aug 31 17:28:23 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
25490
25491	* variable.c (rb_autoload): There was a chance to run GC (from
25492	  rb_str_new2()) before finishing autoload_data_i construction. It
25493	  caused SEGV at rb_gc_mark() at autoload_i_mark.
25494
25495	* variable.c (rb_autoload_load): Move RB_GC_GUARD() to proper
25496	  position based on suggestion by CHIKANAGA Tomoyuki at
25497	 http://d.hatena.ne.jp/nagachika/20110826/ruby_trunk_changes_33070_33078
25498
25499	* variable.c (autoload_defined_p): Fix incompatible autoload behavior
25500	  that causes Rails crash. Class definition instruction defined in
25501	  'defineclass' in insns.def always invokes rb_autoload_load for a
25502	  constant. It's invoked for every class definition regardless of
25503	  existence of autoload definition. rb_autoload_load checks if a
25504	  constant is defined as autoloaded, but new thread-safe autoload
25505	  returned different value if the constant is under autoloading.
25506
25507Wed Aug 31 17:20:56 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
25508
25509	* Re-apply r33078, thread-safe autoload which is reverted at r33093.
25510
25511Wed Aug 31 16:28:04 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
25512
25513	* test/ruby/test_io_m17n.rb (TestIO_M17N#test_{default_mode_on_dosish,
25514	  default_mode_on_unix,text_mode,binary_mode}): tests for [Bug #5164].
25515
25516Wed Aug 31 15:54:11 2011  NARUSE, Yui  <naruse@ruby-lang.org>
25517
25518	* ext/json: Merge json gem v1.5.4 (3dab4c5a6a97fac03dac).
25519
25520Wed Aug 31 13:09:41 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
25521
25522	* numeric.c (flo_round): Avoid overflow by optimizing for trivial
25523	  cases [Bug #5227]
25524
25525Wed Aug 31 00:50:01 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
25526
25527	* win32/win32.c (rb_w32_select_with_thread): and my typo. we all must
25528	  be more careful.
25529
25530Wed Aug 31 00:48:38 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
25531
25532	* thread.c (rb_thread_select): critical typo in r33117.
25533
25534Wed Aug 31 00:30:49 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
25535
25536	* test/-ext-/old_thread_select/test_old_thread_select.rb
25537	  (TestOldThreadSelect#test_old_select_read_timeout): if the machine
25538	  is fast enough, the time used by code around IO.select may be smaller
25539	  than Time implement threshold.
25540
25541Wed Aug 31 00:04:38 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
25542
25543	* ext/-test-/old_thread_select/old_thread_select.c (old_thread_select):
25544	  typo.
25545
25546	* test/-ext-/old_thread_select/test_old_thread_select.rb
25547	  (TestOldThreadSelect#test_old_select_signal_safe): use SIGINT instead
25548	  of SIGUSR1 because the former is general and the latter is platform
25549	  dependent.
25550
25551Tue Aug 30 23:59:36 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
25552
25553	* win32/win32.c, include/ruby/intern.h (rb_w32_fd_copy): implement
25554	  for rb_thread_select() in thread.c.  the use of rb_fd_copy() is
25555	  introduced in r33117.
25556	  [Bug #5251] [ruby-core:39195]
25557
25558	* thread.c (rb_thread_select): must call rb_fd_init() before using
25559	  rb_fdset_t.  see the implementations of rb_fd_init()s if you want to
25560	  know the reason.
25561
25562Tue Aug 30 22:34:45 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
25563
25564	* test/dl/test_callback.rb (test_callback_with_string): prevents
25565	  temporary string from GC.
25566
25567Tue Aug 30 22:25:38 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
25568
25569	* vm_insnhelper.c (vm_call_cfunc): revert r33112.  RB_GC_GUARD macro
25570	  protect a VALUE from GC.  It's not for general anti-optimizing
25571	  purpose.
25572
25573Tue Aug 30 11:06:19 2011  NARUSE, Yui  <naruse@ruby-lang.org>
25574
25575	* ext/json: Merge json gem 1.5.4+ (2149f4185c598fb97db1).
25576	  [Bug #5173] [ruby-core:38866]
25577
25578Tue Aug 30 09:57:50 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
25579
25580	* lib/thread.rb (Queue#pop): fix a race against Thread.wakeup.
25581	  Patch by Masaki Matsushita <glass.saga at gmail dot com>
25582	  [Bug #5195] [ruby-dev:44400]
25583
25584Tue Aug 30 09:48:07 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
25585
25586	* cont.c (fiber_entry): fix stack allocation failure on Debian
25587	  GNU/kFreeBSD.
25588	  Patch by Lucas Nussbaum <lucas at lucas-nussbaum dot net>.
25589	  [Bug #5241] [ruby-core:39147]
25590
25591Tue Aug 30 09:28:01 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
25592
25593	* thread.c (rb_thread_select): rewrite by using
25594	  rb_thread_fd_select(). old one is EINTR unsafe.
25595	  Patch by Eric Wong. [Bug #5229] [ruby-core:39102]
25596
25597	* test/-ext-/old_thread_select/test_old_thread_select.rb:
25598	  a testcase for rb_thread_select().
25599	* ext/-test-/old_thread_select/old_thread_select.c: ditto.
25600	* ext/-test-/old_thread_select/depend: ditto.
25601	* ext/-test-/old_thread_select/extconf.rb: ditto.
25602
25603Tue Aug 30 09:08:22 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
25604
25605	* configure.in: fix a build failure on GNU Hurd.
25606	  Patch by Samuel Thibault <sthibault at debian dot org>. Thank you!
25607	  [Bug #5250] [ruby-core:39185]
25608
25609Sun Aug 29 23:22:00 2011  Kenta Murata  <mrkn@mrkn.jp>
25610
25611	* test/ruby/test_numeric.rb (test_num2long): modify a test against the
25612	  change by r33108.
25613
25614Sun Aug 29 09:58:00 2011  Kenta Murata  <mrkn@mrkn.jp>
25615
25616	* numeric.c (bit_coerce): A Fixnum and a Bignum are only permitted for
25617	 bitwise arithmetic with a Fixnum.  #1792
25618
25619	* test/ruby/test_fixnum.rb: add tests for the above change.
25620
25621	* bignum.c (bit_coerce): A Fixnum and a Bignum are only permitted for
25622	 bitwise arithmetic with a Bignum.  #1792
25623
25624	* test/ruby/test_bignum.rb: add tests for the above change.
25625
25626Sun Aug 28 15:38:17 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
25627
25628	* ext/date/date_parse.c (date_zone_to_diff): keep a temporary string
25629	  stored in variable while the contents buffer is being used.
25630
25631	* ext/date/date_parse.c (date_zone_to_diff): get rid of out of bounds
25632	  memory read. [ruby-dev:44409] [Bug #5213]
25633
25634Sun Aug 28 05:29:50 2011  Ryan Davis  <ryand-ruby@zenspider.com>
25635
25636	* lib/minitest/*: Imported minitest 2.5.1 (r6596)
25637	* test/minitest/*: ditto
25638
25639Sat Aug 27 20:46:05 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
25640
25641	* vm.c (rb_vm_rewrite_dfp_in_errinfo): change return type
25642	  to suppress a warning.
25643
25644	* vm_core.h: ditto.
25645
25646Sat Aug 27 19:04:06 2011  NARUSE, Yui  <naruse@ruby-lang.org>
25647
25648	* internal.h (rb_strftime_timespec): moved from time.c and define only
25649	  if ruby/encoding.h is included.
25650
25651	* internal.h (rb_strftime): ditto.
25652
25653Sat Aug 27 18:53:51 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
25654
25655	* proc.c (proc_new): force to rewrite errinfo when calling Proc.new in ensure.
25656	  [Bug #5234] [ruby-core:39125]
25657	  This code will be removed after changing throw mechanism (see r33064).
25658
25659	* vm.c (rb_vm_rewrite_dfp_in_errinfo): new function.
25660
25661	* vm.c (vm_make_env_each): changed accordingly.
25662
25663	* vm_core.h: ditto.
25664
25665	* bootstraptest/test_flow.rb: add tests for above.
25666
25667Sat Aug 27 18:44:06 2011  NARUSE, Yui  <naruse@ruby-lang.org>
25668
25669	* internal.h (rb_strftime_timespec): move to time.c because it depends
25670	  encoding.h.
25671
25672Sat Aug 27 18:17:58 2011  NARUSE, Yui  <naruse@ruby-lang.org>
25673
25674	* strftime.c (rb_strftime_with_timespec): get enc argument to specify
25675	  the encoding of the format. On Windows (at least Japanese Windows),
25676	  Time#strftime("%Z") includes non ASCII in locale encoding (CP932).
25677	  So convert locale to default internal. [ruby-core:39092] [Bug #5226]
25678
25679	* strftime.c (rb_strftime): ditto.
25680
25681	* strftime.c (rb_strftime_timespec): ditto.
25682
25683	* internal.h (rb_strftime_timespec): follow above.
25684
25685	* time.c (rb_strftime_alloc): ditto.
25686
25687	* time.c (strftimev): ditto.
25688
25689	* time.c (time_strftime): ditto.
25690
25691	* time.c (time_to_s): the resulted string of Time#to_s is always
25692	  ascii only, so this should be US-ASCII.
25693
25694	* time.c (time_asctime): ditto.
25695
25696Sat Aug 27 11:18:12 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
25697
25698	* Revert r33078. It caused a Rails application NoMethodError.
25699
25700	 /home/nahi/git/emptyApp/ruby/1.9.1/gems/rack-mount-0.6.14/lib/rack/mount/utils.rb:157: warning: toplevel constant ScanError referenced by Regin::Parser::ScanError
25701	 /home/nahi/git/emptyApp/ruby/1.9.1/gems/rack-mount-0.6.14/lib/rack/mount/vendor/regin/regin/parser.rb:17:in `parse_regexp': undefined method `scan_str' for #<Regin::Parser:0x00000002344548> (NoMethodError)
25702
25703Sat Aug 27 08:44:58 2011  Eric Hodel  <drbrain@segment7.net>
25704
25705	* lib/rdoc:  Import RDoc 3.9.4.  Typo and grammar fixes by Luke Gruber.
25706	  [Ruby 1.9 - Bug #5203]
25707
25708Sat Aug 27 07:53:34 2011  Eric Hodel  <drbrain@segment7.net>
25709
25710	* lib/open-uri.rb:  Fix indentation of OpenURI::OpenRead#open.  Use ++
25711	  instead of `' for method arguments in open-uri.rb
25712
25713Sat Aug 27 07:22:07 2011  Eric Hodel  <drbrain@segment7.net>
25714
25715	* ext/pathname/lib/pathname.rb:  Fix typos and grammar mistakes.  Patch
25716	  by Luke Gruber.  [#5203]
25717	* ext/pty/lib/expect.rb:  ditto
25718	* lib/mathn.rb:  ditto
25719	* lib/net/http.rb:  ditto
25720	* lib/open-uri.rb:  ditto
25721	* lib/ostruct.rb:  ditto
25722	* lib/tempfile.rb:  ditto
25723	* lib/thread.rb:  ditto
25724	* lib/weakref.rb:  ditto
25725	* sample/webrick/httpproxy.rb:  ditto
25726
25727Sat Aug 27 04:03:18 2011  Koichi Sasada  <ko1@atdot.net>
25728
25729	* iseq.c (iseq_data_to_ary): fix type of variable
25730	  (long -> unsigned long) to suppress a warning.
25731
25732Sat Aug 27 04:02:11 2011  Koichi Sasada  <ko1@atdot.net>
25733
25734	* vm_core.h: add a decl. of rb_autoloading_value().
25735
25736Fri Aug 26 19:12:08 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
25737
25738	* variable.c: Make autoload thread-safe. See #921.
25739
25740	  What's the problem?
25741	    autoload is thread unsafe. When we define a constant to be
25742	    autoloaded, we expect the constant construction is invariant. But
25743	    current autoload implementation allows other threads to access the
25744	    constant while the first thread is loading a file.
25745
25746	  What's happening inside?
25747	    The current implementation uses Qundef as a marker of autoload in
25748	    Constant table. Once the first thread find Qundef as a value at
25749	    constant lookup, it starts loading a defined feature. Generally a
25750	    loaded file overrides the Qundef in Constant table by module/class
25751	    declaration at very beginning lines of the file, so other threads
25752	    can see the new Module/Class object before feature loading is
25753	    finished. It breaks invariant construction.
25754
25755	  How to solve?
25756	    To ensure invariant constant construction, we need to override
25757	    Qundef with defined Object after the feature loading. For keeping
25758	    Qundef in Constant table, I expanded autoload_data struct in
25759	    Module to have a slot for keeping the defined object while feature
25760	    loading. And changed Module's constant lookup/update logic a
25761	    little so that the slot is only visible from the thread which
25762	    invokes feature loading. (== the first thread which accessed the
25763	    autoload constant)
25764
25765	  Evaluation?
25766	    All test passes (bootstrap test, test-all and RubySpec) and added
25767	    8 tests for threading behavior. Extra logics are executed only
25768	    when Qundef is found, so no perf drop should happen except
25769	    autoloading.
25770
25771	* variable.c (rb_autoload): Prepare new autoload_data struct.
25772
25773	* variable.c (rb_autoload_load): Load feature and update Constant
25774	  table after feature loading is finished.
25775
25776	* variable.c (rb_const_get_0): When the fetched constant is under
25777	  autoloading, it returns the object only for the thread which starts
25778	  autoloading.
25779
25780	* variable.c (rb_const_defined_0): Ditto.
25781
25782	* variable.c (rb_const_set): When the specified constant is under
25783	  autoloading, it sets the object only for the thread which starts
25784	  autoloading. Otherwise, simply overrides Qundef with constant
25785	  override warning.
25786
25787	* vm_insnhelper.c (vm_get_ev_const): Apply same change as
25788	  rb_const_get_0 in variable.c.
25789
25790	* test/ruby/test_autoload.rb: Added tests for threading behavior.
25791
25792Fri Aug 26 10:10:37 2011  Eric Hodel  <drbrain@segment7.net>
25793
25794	* lib/rubygems:  Update to RubyGems 1.8.10.  Fixes security issue in
25795	  creating ruby-format gemspecs.  Fixes Gem.dir not being at the front
25796	  of Gem.path to fix uninstall and cleanup commands.  Fixes gem
25797	  uninstall stopping on the first missing gem.
25798
25799Fri Aug 26 08:21:10 2011  Aaron Patterson <aaron@tenderlovemaking.com>
25800
25801	* time.c (strftimev): Make Time#to_s default to US-ASCII encoding but
25802	  respect Encoding.default_internal. [ruby-core:39092]
25803	* test/ruby/test_time.rb (class TestTime): Corresponding test.
25804
25805Thu Aug 25 09:43:16 2011  Eric Hodel  <drbrain@segment7.net>
25806
25807	* ext/openssl/lib/openssl/bn.rb:  Hide copyright info from RDoc.
25808	* ext/openssl/lib/openssl/digest.rb:  ditto
25809	* ext/openssl/lib/openssl/x509.rb:  ditto
25810	* ext/openssl/lib/openssl/cipher.rb:  ditto
25811
25812Thu Aug 25 09:25:48 2011  Eric Hodel  <drbrain@segment7.net>
25813
25814	* ext/openssl/ossl_digest.c:  Document OpenSSL::Digest::digest and add
25815	  an example to OpenSSL::Digest.  Patch by Sylvain Daubert.
25816	  [Ruby 1.9 - Bug #5166]
25817	* ext/openssl/lib/openssl/digest.rb (module OpenSSL):  ditto
25818
25819Thu Aug 25 08:19:43 2011  Koichi Sasada  <ko1@atdot.net>
25820
25821	* vm.c (vm_make_env_each): work around to solve Bug #2729.
25822	  fixes: Bug #2729
25823	  a patch from Kazuki Tsujimoto <kazuki@callcc.net>
25824	  This problem is caused by changing dfp (dynamic env pointer)
25825	  from saved dfp.  Saved dfp is pointed env in VM stack.  However,
25826	  the dfp can be moved because VM copies env from VM stack to
25827	  the heap.  At this copying, dfp was also changed.  To solve this
25828	  problem, I'll try to change throw mechanism (not save target dfp,
25829	  but save target cfp).
25830
25831	* bootstraptest/test_flow.rb: add a test for above.
25832
25833Thu Aug 25 07:57:33 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
25834
25835	* numeric.c (int_round): Fix Integer#round [ruby-core:39096]
25836
25837Thu Aug 25 07:00:00 2011  Koichi Sasada  <ko1@atdot.net>
25838
25839	* vm_insnhelper.h, vm_insnhelper.c, vm.c, vm_method.c, insns.def:
25840	  Manage a redefinition of special methods for each classes.
25841	  A patch from Joel Gouly <joel.gouly@gmail.com>.  Thanks!
25842
25843Thu Aug 25 06:51:08 2011  Aaron Patterson <aaron@tenderlovemaking.com>
25844
25845	* ext/psych/lib/psych.rb: Fixing psych version number.
25846	* ext/psych/psych.gemspec: updating the gemspec.
25847
25848Thu Aug 25 06:11:35 2011  Aaron Patterson <aaron@tenderlovemaking.com>
25849
25850	* ext/psych/lib/psych/nodes/node.rb: default `to_yaml` encoding to be
25851	  UTF-8.
25852	* test/psych/test_encoding.rb: test yaml dump encoding.
25853
25854Thu Aug 25 01:24:33 2011  Naohisa Goto  <ngotogenome@gmail.com>
25855
25856	* test/fileutils/test_fileutils.rb (test_chmod_symbol_mode): Solaris
25857	  seems to behave the same as FreeBSD.
25858
25859Thu Aug 25 01:11:36 2011  Naohisa Goto  <ngotogenome@gmail.com>
25860
25861	* test/ruby/test_rubyoptions.rb (test_script_from_stdin): slave pty
25862	  should be manipulated because master pty may not be a tty on some
25863	  environment (e.g. Solaris). [Bug:#5222] [ruby-dev:44420]
25864
25865Wed Aug 24 15:13:56 2011  Koichi Sasada  <ko1@atdot.net>
25866
25867	* iseq.h, iseq.c, compile.c: Change the line number data structure
25868	  to solve an issue reported at [ruby-dev:44413] [Ruby 1.9 - Bug #5217].
25869	  Before this fix, each instruction has an information including
25870	  line number (iseq::iseq_insn_info_table).  Instead of this data
25871	  structure, recording only line number changing places
25872	  (iseq::iseq_line_info_table).
25873	  The order of entries in iseq_line_info_table is ascending order of
25874	  iseq_line_info_table_entry::position.  You can get a line number
25875	  by an iseq and a program counter with this data structure.
25876	  This fix reduces memory consumption of iseq (bytecode).
25877	  On my measurement, a rails application consumes 21.8MB for
25878	  iseq with this fix on the 32bit CPU.  Without this fix, it
25879	  consumes 24.7MB for iseq [ruby-dev:44415].
25880
25881	* proc.c: ditto.
25882
25883	* vm_insnhelper.c: ditto.
25884
25885	* vm_method.c: ditto.
25886
25887	* vm.c (rb_vm_get_sourceline): change to use rb_iseq_line_no().
25888
25889Wed Aug 24 09:49:10 2011  Koichi Sasada  <ko1@atdot.net>
25890
25891	* insns.def (defined): fix to checking class variable.
25892	  A patch by Magnus Holm <judofyr@gmail.com>.  Thanks!
25893
25894	* test/ruby/test_variable.rb: add a test for above.
25895
25896Wed Aug 24 08:53:06 2011  Eric Hodel  <drbrain@segment7.net>
25897
25898	* lib/rdoc:  Update to RDoc 3.9.3.  Fixes RDoc with `ruby -Ku`.  Allows
25899	  HTTPS image paths to be turned into <img> tags.  Prevents special
25900	  markup inside <tt> from being processed.
25901
25902Wed Aug 24 07:57:43 2011  Eric Hodel  <drbrain@segment7.net>
25903
25904	* lib/rubygems:  Update to RubyGems 1.8.9.  Fixes uninstalling multiple
25905	  gems and gem cleanup.
25906
25907Wed Aug 24 06:45:20 2011  Ryan Davis  <ryand-ruby@zenspider.com>
25908
25909	* lib/minitest/*: Imported minitest 2.5.0 (r6557)
25910	* test/minitest/*: ditto
25911
25912Wed Aug 24 00:38:22 2011  Yusuke Endoh  <mame@tsg.ne.jp>
25913
25914	* thread.c (update_coverage): skip coverage count up if the current
25915	  line is out of the way.  rb_sourceline() is unreliable when source
25916	  code is big.  [ruby-dev:44413]
25917
25918	* test/coverage/test_coverage.rb: add a test for above.
25919
25920Tue Aug 23 15:23:56 2011  Eric Hodel  <drbrain@segment7.net>
25921
25922	* load.c (rb_f_require):  Improve documentation of Kernel#require.
25923	  [Ruby 1.9 - Bug #5210]
25924
25925Tue Aug 23 11:27:26 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
25926
25927	* ext/zlib/zlib.c (gzfile_read_header): Ensure that each section of
25928	  gzip header is readable to avoid SEGV.
25929
25930	* test/zlib/test_zlib.rb (test_corrupted_header): Test it.
25931
25932Mon Aug 22 23:43:33 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
25933
25934	* sprintf.c (rb_str_format): add RB_GC_GUARD to prevent temporary
25935	  strings from GC.
25936
25937Sun Aug 21 17:49:53 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
25938
25939	* iseq.c (iseq_s_disasm): remove variable which is no longer used
25940	  since r33013.
25941
25942Sun Aug 21 14:20:58 2011  Naohisa Goto  <ngotogenome@gmail.com>
25943
25944	* configure.in: use LD_LIBRARY_PATH_64 on 64-bit Solaris.
25945
25946Sat Aug 20 13:19:52 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
25947
25948	* iseq.c (iseq_s_disasm): fix a bug that may cause SEGV.
25949
25950	* test/ruby/test_method.rb (test_body): add a test for the above change.
25951
25952Sat Aug 20 10:43:24 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25953
25954	* ext/stringio/stringio.c (strio_read): return new string if nil
25955	  is explicitly given as a buffer ([Bug #5207]), otherwise set the
25956	  encoding.  also removed dead code.
25957
25958Fri Aug 19 14:25:51 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25959
25960	* process.c (proc_spawn_v, proc_spawn): should not wait the
25961	  spawned process.
25962
25963	* process.c (proc_spawn_v): fix missing argument, and try with
25964	  /bin/sh only if failed with ENOEXEC.
25965
25966Fri Aug 19 14:12:57 2011  Shugo Maeda  <shugo@ruby-lang.org>
25967
25968	* lib/net/imap.rb (idle): raises a Net::IMAP::Error when the
25969	  connection is closed.  based on the patch by Hugo Barauna.
25970	  [Bug #5190] [ruby-core:38930]
25971
25972Fri Aug 19 13:18:00 2011  Kenta Murata  <mrkn@mrkn.jp>
25973
25974	* configure.in: defines _DARWIN_UNLIMITED_SELECT if the target_os
25975	  is darwin.
25976
25977Fri Aug 19 13:14:00 2011  Kenta Murata  <mrkn@mrkn.jp>
25978
25979	* thread.c: add a description for the behavior of select(2) on
25980	  Mac OS X 10.7 (Lion).
25981
25982Fri Aug 19 11:28:58 2011  Shugo Maeda  <shugo@ruby-lang.org>
25983
25984	* lib/net/imap.rb (msg_att): accepts extra space before ')'.
25985	  based on the patch by art lussos.  [Bug #5163] [ruby-core:38820]
25986
25987Wed Aug 17 23:01:00 2011  Kenta Murata  <mrkn@mrkn.jp>
25988
25989	* ext/bigdecimal/bigdecimal.c (cannot_be_coerced_into_BigDecimal):
25990	  remove duplication.
25991
25992Wed Aug 17 15:27:00 2011  Kenta Murata  <mrkn@mrkn.jp>
25993
25994	* ext/bigdecimal/bigdecimal.c (cannot_be_coerced_into_BigDecimal):
25995	  add a new function for raising error when an object cannot coerce
25996	  into BigDecimal.  [Bug #5172]
25997
25998	* ext/bigdecimal/bigdecimal.c (BigDecimalValueWithPrec): use
25999	  cannot_be_coerced_into_BigDecimal function.
26000
26001	* ext/bigdecimal/bigdecimal.c (BigMath_s_exp): ditto.
26002
26003	* ext/bigdecimal/bigdecimal.c (BigMath_s_log): ditto.
26004
26005	* test/bigdecimal/test_bigdecimal.rb: test for the above changes.
26006
26007	* test/bigdecimal/testbase.rb (under_gc_stress): add a new utility
26008	  method to run tests under the condition of GC.stress = true.
26009
26010Wed Aug 17 10:16:00 2011  Kenta Murata  <mrkn@mrkn.jp>
26011
26012	* rational.c (nurat_coerce): Rational#coerce should converts itself
26013	  into Complex if the argument is a Complex with non-zero imaginary
26014	  part.  [Bug #5020] [ruby-dev:44088]
26015
26016	* test/ruby/test_rational.rb (test_coerce): test for the above change.
26017
26018Wed Aug 17 06:33:19 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
26019
26020	* ext/openssl/ossl_x509cert.c: Add class documentation for
26021	  OpenSSL::X509::Certificate.
26022
26023Wed Aug 17 04:54:25 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
26024
26025	* ext/openssl/ossl_pkey.c: corrected docs, OpenSSL::PKey::DH does
26026	  *not* support #sign/verify.
26027
26028Tue Aug 16 18:56:54 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26029
26030	* vm.c (ruby_threadptr_data_type): rename to hide.
26031	  [ruby-core:38972]
26032
26033Tue Aug 16 18:52:08 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26034
26035	* win32/mkexports.rb (Exports::Mswin#each_export): exclude Init_
26036	  and _threadptr_ functions, as well as mingw.
26037
26038Tue Aug 16 09:31:44 2011  Eric Hodel  <drbrain@segment7.net>
26039
26040	* ext/dl:  Add documentation.  Patch by Vincent Batts.
26041	  [Ruby 1.9 - Bug #5192]
26042
26043Tue Aug 16 08:48:26 2011  Eric Hodel  <drbrain@segment7.net>
26044
26045	* ext/.document (fiddle):  Remove duplicate entry
26046	* ext/fiddle:  Complete documentation of Fiddle.  Patch by Vincent
26047	  Batts.  [#5192]
26048
26049Tue Aug 16 08:00:15 2011  Eric Hodel  <drbrain@segment7.net>
26050
26051	* ext/socket:  Make Socket documentation appear.  Add documentation for
26052	  Socket, TCPServer, SOCKSSocket.  Patch by Sylvain Daubert.
26053	  [Ruby 1.9 - Feature #5182]
26054
26055Mon Aug 15 09:58:55 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
26056
26057	* ext/openssl/ossl_ssl.c: Support disabling OpenSSL compression.
26058
26059	* test/openssl/test_ssl.rb: Add a test for it.
26060	  Thanks to Eric Wong for the patch.
26061	  [Ruby 1.9 - Feature #5183] [ruby-core:38911]
26062
26063Sun Aug 14 05:57:01 2011  Tanaka Akira  <akr@fsij.org>
26064
26065	* test/socket/test_socket.rb (test_connect_timeout): added a test
26066	  based on a patch by Eric Wong.  [ruby-core:38910]
26067
26068Sat Aug 13 22:17:27 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26069
26070	* tool/mkconfig.rb: do not make the entries related to sitedir and
26071	  verdordir if disabled by --without options.  [ruby-core:38922]
26072	  [Bug #5187]
26073
26074Sat Aug 13 17:03:22 2011  Tadayoshi Funaba  <tadf@dotrb.org>
26075
26076	* ext/date/date_core.c: [ruby-core:38861]
26077
26078Sat Aug 13 09:39:07 2011  Tadayoshi Funaba  <tadf@dotrb.org>
26079
26080	* test/date/test_*.rb: added tests.
26081
26082Sat Aug 13 09:36:19 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
26083
26084	* ext/date/date_parse.c (parse_ddd_cb): fix r32896. RB_GC_GUARD
26085	  insertion position was mistaken. [ruby-dev:44337] [Bug #5152]
26086
26087Sat Aug 13 09:26:24 2011  Aaron Patterson <aaron@tenderlovemaking.com>
26088
26089	* ext/psych/lib/psych/core_ext.rb: Make Kernel#y private.
26090	  [ruby-core:38913]
26091
26092	* test/psych/test_yaml.rb: corresponding test.
26093
26094Sat Aug 13 09:05:16 2011  Tadayoshi Funaba  <tadf@dotrb.org>
26095
26096	* ext/date/date_core.c (date_strftime_alloc): followed the change
26097	  of r32885.
26098
26099	* doc/NEWS-1.9.3: followed the above change.
26100
26101Sat Aug 13 08:55:38 2011  Aaron Patterson <aaron@tenderlovemaking.com>
26102
26103	* ext/psych/lib/psych/scalar_scanner.rb: Only consider strings
26104	  with fewer than 2 dots to be numbers. [ruby-core:38915]
26105
26106Sat Aug 13 08:47:20 2011  Tadayoshi Funaba  <tadf@dotrb.org>
26107
26108	* ext/date/date_core.c: [ruby-core:38855].
26109
26110Sat Aug 13 03:41:37 2011  Eric Hodel  <drbrain@segment7.net>
26111
26112	* lib/uri/common.rb:  Fix documentation of URI::Parser.new.  Patch by
26113	  Steve Klabnik.  [Ruby 1.9 - Bug #5177]
26114
26115Sat Aug 13 02:19:57 2011  Eric Hodel  <drbrain@segment7.net>
26116
26117	* ext/digest/digest.c:  Add documentation for the Digest module.  Patch
26118	  by Sylvain Daubert.  [Ruby 1.9 - Bug #5167]
26119
26120Sat Aug 13 01:56:11 2011  Eric Hodel  <drbrain@segment7.net>
26121
26122	* lib/rake:  Update to Rake 0.9.2.2.  Prevent pollution of toplevel
26123	  namespace by Commands.  Remove unused variable and debugging
26124	  statement in tests.
26125
26126Fri Aug 12 11:39:35 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
26127
26128	* configure.in: Describe "no" configure option for site_ruby
26129	  and vendor_ruby. Patch by Vit Ondruch. [Bug #5187][ruby-core:38921]
26130
26131Fri Aug 12 09:00:24 2011  Eric Hodel  <drbrain@segment7.net>
26132
26133	* lib/rubygems:  Import RubyGems 1.8.8.  Fixes encoding of YAML gemspec
26134	  from gems.  Github Issue #149
26135
26136Fri Aug 12 08:17:46 2011  Tanaka Akira  <akr@fsij.org>
26137
26138	* ext/socket/ipsocket.c (init_inetsock_internal): use SOMAXCONN for
26139	  listen backlog.
26140
26141	* ext/socket/unixsocket.c (rsock_init_unixsock): ditto.
26142
26143	* ext/socket/lib/socket.rb (Addrinfo#listen): ditto.
26144	  (Socket.tcp_server_sockets_port0): ditto.
26145
26146	* ext/socket/mkconstants.rb: define SOMAXCONN as 5 if not available.
26147
26148	[ruby-core:38493]
26149
26150Fri Aug 12 03:24:35 2011  Eric Hodel  <drbrain@segment7.net>
26151
26152	* lib/rdoc:  Import RDoc 3.9.2.  Fixes TIDYLINK for HTML output.
26153
26154Thu Aug 11 15:37:42 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
26155
26156	* variable.c (autoload_delete): An autoload entry is still in a
26157	  RCLASS_IV_TBL, not in a RCLASS_CONST_TBL, so take back the table
26158	  changed in r29600. And an autoload entry keeps not a
26159	  rb_const_entry_t but a NODE so remove rb_const_entry_t thing added
26160	  in r29602.
26161
26162Thu Aug 11 15:07:36 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26163
26164	* lib/mkmf.rb (link_command): use LIBRUBYARG in rbconfig for
26165	  unbundled extensions.  [ruby-core:38802] [Bug #5147]
26166
26167	* lib/mkmf.rb (init_mkmf): revert r32902.  [ruby-core:38903]
26168
26169Wed Aug 10 23:03:55 2011  Tanaka Akira  <akr@fsij.org>
26170
26171	* ext/socket/lib/socket.rb: fix argument check in the previous commit.
26172
26173Wed Aug 10 22:12:28 2011  Tanaka Akira  <akr@fsij.org>
26174
26175	* ext/socket/lib/socket.rb (Socket.tcp): add :connect_timeout option.
26176	  (Addrinfo#connect_from): add :timeout option.
26177	  (Addrinfo#connect): ditto.
26178	  (Addrinfo#connect_to): ditto.
26179	  [ruby-core:38538]
26180
26181Wed Aug 10 21:27:19 2011  Tanaka Akira  <akr@fsij.org>
26182
26183	* lib/net/pop.rb: fix typo in document.
26184
26185	* lib/net/http.rb: ditto.
26186
26187	* lib/net/imap.rb: ditto.
26188
26189Wed Aug 10 19:30:00 2011  Kenta Murata  <mrkn@mrkn.jp>
26190
26191	* complex.c (nucomp_rationalize): calls rationalize of real part if
26192	  imaginary part is exactly zero.  The patch is made by Marc-Andre
26193	  Lafortune.  fixes [Bug #5178] [ruby-core:38885]
26194
26195	* test/ruby/test_complex.rb (test_rationalize): add a test for the
26196	  above change.
26197
26198	* complex.c (nucomp_to_r): fix RDoc comment.  The patch is made by
26199	  Marc-Andre Lafortune.
26200
26201Wed Aug 10 14:11:07 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26202
26203	* lib/mkmf.rb (init_mkmf): set $LIBRUBYARG regardless of shared
26204	  option.  [ruby-core:38802] [Bug #5147]
26205
26206Wed Aug 10 02:53:27 2011  NARUSE, Yui  <naruse@ruby-lang.org>
26207
26208	* lib/net/http.rb: come back autoload. OpenSSL constant is used
26209	  some places, so it leads mistakes like HTTP.start.
26210
26211Tue Aug  9 22:57:45 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
26212
26213	* ext/date/date_parse.c (date_zone_to_diff): add RB_GC_GUARD.
26214	  [ruby-dev:44337] [Bug #5152]
26215
26216	* ext/date/data_parse.c (parse_ddd_cb): ditto.
26217
26218Tue Aug  9 14:25:47 2011  Naohisa Goto  <ngotogenome@gmail.com>
26219
26220	* ext/fiddle/conversions.c (generic_to_value): ffi_arg and ffi_sarg
26221	  should be used to handle shorter return value. fix [Bug #3861]
26222	  [ruby-core:32504]
26223
26224	* ext/fiddle/closure.c (callback): ditto
26225
26226	* ext/fiddle/conversions.h (fiddle_generic): ditto
26227
26228	* ext/fiddle/conversions.c (value_to_generic): char, short and int
26229	  are strictly distinguished on big-endian CPU, e.g. sparc64.
26230
26231Tue Aug  9 11:21:08 2011  Narihiro Nakamura  <authornari@gmail.com>
26232
26233	* gc.c (gc_lazy_sweep): if sweep target slots are not found, we
26234	  try heap_increment() because it might be able to expand the
26235	  heap. [Bug #5127] [ruby-dev:44285]
26236
26237	* gc.c (gc_clear_mark_on_sweep_slots): if a sweeping was
26238	  interrupted, we expand the heap if at all possible.
26239
26240Tue Aug  9 12:20:33 2011  Naohisa Goto  <ngotogenome@gmail.com>
26241
26242	* test/fiddle/helper.rb (libc_so, libm_so): Solaris support added.
26243	  [ruby-core:38853] [Bug #5168]
26244
26245	* test/dl/test_base.rb (libc_so, libm_so): on Solaris, remove libc
26246	  and libm version numbers for detecting default libc and libm.
26247
26248Tue Aug  9 09:18:04 2011  Eric Hodel  <drbrain@segment7.net>
26249
26250	* ext/zlib/zlib.c (gzfile_wrap):  Document encoding options.
26251
26252	* ext/zlib/zlib.c (rb_gzwriter_s_open): ditto
26253
26254	* ext/zlib/zlib.c (rb_gzreader_s_open): ditto
26255
26256Sun Aug  7 23:31:32 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
26257
26258	* time.c (rb_strftime_alloc): raise ERANGE if width is too large.
26259	  Patch by Nobuyoshi Nakada. [Bug #4457] [ruby-dev:43285]
26260
26261	* test/ruby/test_time.rb (class TestTime): add a test for the
26262	  above change.
26263
26264Sun Aug  7 22:51:45 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
26265
26266	* ext/openssl/ossl_asn1.c (decode_eoc): remove unused variables.
26267	  Patch by Eric Wong. [Feature #5157] [ruby-core:38798]
26268
26269	* ext/openssl/ossl_asn1.c (ossl_asn1_decode): ditto.
26270
26271	* ext/openssl/ossl_pkey.c (ossl_pkey_new_from_data): ditto.
26272
26273Sun Aug  7 22:37:08 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
26274
26275	* configure.in: add -Wunused-variable to default CFLAGS.
26276	  Patch by Eric Wong. [Feature #5157] [ruby-core:38798]
26277
26278Sun Aug  7 15:37:35 2011  NARUSE, Yui  <naruse@ruby-lang.org>
26279
26280	* ext/digest/sha2/sha2ossl.c: use original SHA384_Final on DragonFly.
26281
26282Sun Aug  7 14:08:16 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
26283
26284	* ext/objspace/objspace.c: fix typos in a document.
26285
26286Sun Aug  7 07:14:57 2011  NARUSE, Yui  <naruse@ruby-lang.org>
26287
26288	* cont.c (HAVE_GETCONTEXT): see getcontext(3) because DragonFly BSD
26289	  x64 port doesn't have it.
26290
26291Sun Aug  7 00:42:55 2011  NARUSE, Yui  <naruse@ruby-lang.org>
26292
26293	* ext/tk/lib/tk/wm.rb (Tk::Wm.command): Add the missing receiver
26294	  before calling epath. patched by flori
26295	 https://github.com/flori/ruby/commit/aa9474d32e5f2c57f8b0e2e0c528a03f06a4d433
26296
26297Sat Aug  6 07:06:34 2011  Eric Hodel  <drbrain@segment7.net>
26298
26299	* marshal.c (w_object):  Fix exception message when _dump_data is not
26300	  defined on a T_DATA object.
26301
26302Fri Aug  5 22:16:20 2011  Naohisa Goto  <ngotogenome@gmail.com>
26303
26304	* numeric.c (rb_infinity, rb_nan): use WORDS_BIGENDIAN to get endian.
26305	  fix [Bug #5160] [ruby-dev:44356]
26306
26307Fri Aug  5 17:14:11 2011  Akinori MUSHA  <knu@iDaemons.org>
26308
26309	* test/test_syslog.rb (TestSyslog#test_log): Do not be too
26310	  specific about the log line format.  Fixes #5081.
26311
26312Fri Aug  5 15:57:10 2011  Naohisa Goto  <ngotogenome@gmail.com>
26313
26314	* complex.c (f_signbit): fix compile error in gcc4 on Solaris with
26315	  CFLAGS="-std=gnu99".  [ruby-dev:44355] fix [Bug #5159]
26316
26317	* math.c: ditto.
26318
26319Fri Aug  5 15:55:33 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26320
26321	* test/ruby/test_object.rb: tests that respond_to? returns false.
26322
26323Fri Aug  5 13:32:43 2011  Shugo Maeda  <shugo@ruby-lang.org>
26324
26325	* lib/xmlrpc/client.rb, lib/xmlrpc/server.rb: should use
26326	  String#bytesize instead of String#size.
26327
26328Fri Aug  5 12:18:20 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26329
26330	* vm_eval.c (check_funcall): try respond_to? first if redefined.
26331	  [Bug #5158]
26332
26333Fri Aug  5 09:48:22 2011  Eric Hodel  <drbrain@segment7.net>
26334
26335	* lib/rubygems:  Import RubyGems 1.8.7:
26336	  Added missing require for `gem uninstall --format-executable`.
26337
26338	  The correct name of the executable being uninstalled is now displayed
26339	  with --format-executable.
26340
26341	  Fixed `gem unpack uninstalled_gem` default version picker.
26342
26343	  RubyGems no longer claims a nonexistent gem can be uninstalled.
26344
26345	  `gem which` no longer claims directories are requirable files.
26346
26347	  `gem cleanup` continues cleaning up gems if one can't be uninstalled
26348	  due to permissions.  Issue #82.
26349
26350	  Gem repository directories are no longer created world-writable.
26351	  Patch by Sakuro OZAWA.  [Ruby 1.9 - Bug #4930]
26352
26353Fri Aug  5 07:00:31 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26354
26355	* test/io/console/test_io_console.rb (test_noctty): daemon() on
26356	  Fedora Rawhide seems not to detach the controlling terminal,
26357	  when the argument noclose is non-zero.  ref: [Bug #5135]
26358
26359Thu Aug  4 23:48:00 2011  Kenta Murata  <mrkn@mrkn.jp>
26360
26361	* thread_pthread.c (native_cond_signal): retry to call pthread_cond_signal
26362	  and pthread_cond_broadcast if they return EAGAIN in
26363	  native_cond_signal and native_cond_broadcast, respectively.
26364	  It is for the pthread implementation of Mac OS X 10.7 (Lion).
26365	  fixes #5155.  [ruby-dev:44342].
26366
26367	* thread_pthread.c (native_cond_broadcast): ditto.
26368
26369	* thread_pthread.c (struct cached_thread_entry): stop using
26370	  pthread_cond_t and its functions directly.
26371
26372	* thread_pthread.c (register_cached_thread_and_wait): ditto.
26373
26374	* thread_pthread.c (use_cached_thread): ditto.
26375
26376Thu Aug  4 20:29:41 2011  Naohisa Goto  <ngotogenome@gmail.com>
26377
26378	* configure.in: when Solaris cc, use $(CC) to link shared libs.
26379
26380Thu Aug  4 20:19:11 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
26381
26382	* error.c (report_bug): use a small message buffer instead of BUFSIZ.
26383	  It is needed for avoiding nested SIGSEGV on Linux.
26384	  Note: BUFSIZ is not proper buffer size. It's unrelated with maximum
26385	  filename length. :-/
26386	  [Bug #5139] [ruby-dev:44315]
26387
26388Thu Aug  4 16:08:45 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26389
26390	* tool/rbinstall.rb (gem): install all gemspecs under lib and ext.
26391
26392	* tool/rbinstall.rb (Gem::Specification): may not be defined when
26393	  cross-compiling and BASERUBY is 1.8.
26394
26395Thu Aug  4 11:30:36 2011  NARUSE, Yui  <naruse@ruby-lang.org>
26396
26397	* include/ruby/missing.h: define __syscall on OpenBSD as r32702.
26398
26399Thu Aug  4 03:02:54 2011  Aaron Patterson <aaron@tenderlovemaking.com>
26400
26401	* tool/rbinstall.rb: use rubygems to load gemspecs, copy actual
26402	  gemspecs on install rather than generate fake ones for all gems.
26403
26404Thu Aug  4 02:45:10 2011  Kenta Murata  <mrkn@mrkn.jp>
26405
26406	* configure.in: set CXX variable to the C++ compiler that matches the
26407	  C compiler specified by CC variable (e.g. use g++-4.2 for gcc-4.2).
26408
26409Thu Aug  4 02:21:10 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26410
26411	* lib/mkmf.rb (link_command): use static library only for bundled
26412	  extensions.  [Bug #5147]
26413
26414Thu Aug  4 02:02:10 2011  Aaron Patterson <aaron@tenderlovemaking.com>
26415
26416	* ext/psych/psych.gemspec: installing psych as a gem.
26417
26418Wed Aug  3 16:01:35 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
26419
26420	* util.c, include/ruby/util.h (ruby_add_suffix): remove the function.
26421	  [Bug #5153] [ruby-core:38736]
26422
26423	* io.c (argf_next_argv): remove the call of above function.
26424
26425	* ext/-test-/add_suffix, test/-ext-/test_add_suffix.rb: remove the test
26426	  extension module because this is only for testing ruby_add_suffix().
26427
26428	* LEGAL: remove the mention about a part of util.c, because now we
26429	  removed the part.
26430
26431	* io.c (argf_next_argv): now the new filename is not guaranteed to
26432	  use, so should check the return value of rename(2).
26433
26434	* test/ruby/test_argf.rb (TestArgf#test_inplace_rename_impossible):
26435	  now we expect same result with other platforms on no_safe_rename
26436	  platforms (=Windows).
26437
26438Wed Aug  3 09:18:08 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
26439
26440	* test/xmlrpc/webrick_testing.rb (WEBrick_Testing#start_server):
26441	  Like r32795, bind address should be specified.
26442
26443Wed Aug  3 07:46:30 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26444
26445	* encoding.c (enc_find): mistakenly remained !.  [Bug #5150]
26446
26447Wed Aug  3 00:11:08 2011  Tanaka Akira  <akr@fsij.org>
26448
26449	* lib/prettyprint.rb: update document.  [ruby-core:36776]
26450
26451Tue Aug  2 22:04:46 2011  NARUSE, Yui  <naruse@ruby-lang.org>
26452
26453	* gc.c (init_heap): allocate sigaltstack after heaps are allocated.
26454	  [ruby-dev:44315] [Bug #5139]
26455
26456	* vm.c (thread_free): use free because objspace is not ready.
26457
26458	* vm.c (th_init): use malloc because objspace is not ready.
26459
26460Tue Aug  2 20:10:16 2011  Shota Fukumori  <sorah@tubusu.net>
26461
26462	* test/testunit/test_parallel.rb: pass "--ruby" option to
26463	  test/testunit/tests_for_parallel/runner.rb. [Bug #5132] [ruby-dev:44303]
26464
26465Tue Aug  2 15:53:37 2011  NARUSE, Yui  <naruse@ruby-lang.org>
26466
26467	* encoding.c (str_to_encoding): rename from to_encoding and
26468	  use str_to_encindex.
26469
26470	* encoding.c (str_to_encindex): split from to_encoding.
26471
26472	* encoding.c (rb_to_encoding): use str_to_encoding.
26473
26474	* encoding.c (rb_obj_encoding): don't bypass rb_encoding*.
26475	  If it uses rb_encoding*, it bypass encindex. If it uses encindex,
26476	  it doesn't bypass.
26477
26478	* encoding.c (enc_find): add shortcut for encoding object, use
26479	  str_to_encindex, and avoid bypass rb_encoding*.
26480
26481Tue Aug  2 12:03:16 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26482
26483	* hash.c (recursive_hash): hash value of emptied hash should be
26484	  equal to an empty hash.  [ruby-core:38650]
26485
26486Tue Aug  2 11:42:15 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26487
26488	* parse.y (rb_enc_symname2_p): :! is valid symbol.  [Bug #5136]
26489
26490Tue Aug  2 07:33:29 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
26491
26492	* test/net/http/test_http.rb (TestNetHTTP_version_1_1_methods#test_timeout_during_HTTP_session):
26493	  If you connect to localhost, you should listen localhost.
26494
26495	* test/net/http/test_https.rb (TestNetHTTPS#test_timeout_during_SSL_handshake):
26496	  ditto.
26497
26498Tue Aug  2 06:18:15 2011  Luis Lavena  <luislavena@gmail.com>
26499
26500	* lib/rubygems/installer.rb (class Gem): Correct path check on Windows
26501	  Possible fix for [Ruby 1.9 - Bug #5111]
26502	* test/rubygems/test_gem_installer.rb (load Gem): ditto
26503
26504Mon Aug  1 20:12:03 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
26505
26506	* test/ruby/test_process.rb (TestProcess#windows?): new method.
26507
26508	* test/ruby/test_process.rb (TestProcess#*): use above method.
26509
26510	* test/ruby/test_process.rb (TestProcess#test_execopts_redirect):
26511	  windows doesn't support FD_CLOEXEC.
26512
26513Mon Aug  1 15:45:23 2011  Eric Hodel  <drbrain@segment7.net>
26514
26515	* test/rake/test_rake_functional.rb:  Don't assume the binary name of
26516	  ruby is "ruby".  [Ruby 1.9 - Bug #5114]
26517	* test/rake/helper.rb:  ditto
26518
26519Mon Aug  1 15:31:14 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
26520
26521	* test/io/console/test_io_console.rb (TestIO_Console#test_sync):
26522	  Skip when PTY allocation failed (that's not our fault).
26523
26524Mon Aug  1 15:04:12 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
26525
26526	* test/xmlrpc/test_webrick_server.rb (Test_Webrick#setup_http_server):
26527	  XMLRPC::Client.new3(), when called without host: argument, tries
26528	  to  connect to  a host  where "localhost"  resolves to.   On the
26529	  other  hand  a  WEBrick::HTTPServer.new(), when  called  without
26530	  BindAddress:  argument, tries  to listen  all the  address where
26531	  getaddrinfo(AF_UNSPEC) resolves to.   This is a mismatch because
26532	  "localhost" might not resolve to one of those listening sockets.
26533	  We  would  better explicitly  specify  "localhost"  here and  if
26534	  failed, just skip the whole test.
26535
26536Mon Aug  1 14:24:56 2011  Eric Hodel  <drbrain@segment7.net>
26537
26538	* lib/rdoc.rb:  Import RDoc 3.9.1.  Fixes bugs in the RDoc::Markup
26539	  parser.
26540
26541Mon Aug  1 12:00:35 2011  NARUSE, Yui  <naruse@ruby-lang.org>
26542
26543	* insns.def (concatstrings): don't use initial ASCII-8BIT string.
26544	  [ruby-core:38635] [Bug #5126]
26545
26546Sun Jul 31 22:57:16 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
26547
26548	* enc/Makefile.in (ECHO1): Same as the recent fix in common.mk.
26549	  ":" in a make variable replacement cause a syntax error with
26550	  /usr/ccs/bin/make on Solaris.  Uses $(NULLCMD) instead.
26551
26552Sun Jul 31 21:16:02 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
26553
26554	* complex.c (f_signbit): gcc4 on Solaris DOES have signbit but does
26555	  not have it on header.
26556
26557	* math.c: ditto.
26558
26559Sun Jul 31 21:09:04 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
26560
26561	* common.mk (node_name.inc): Use $(Q) for consistency.
26562
26563	* Makefile.in (INSNS): ditto.
26564
26565Sun Jul 31 21:19:51 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
26566
26567	* lib/mkmf.rb (configuration:ECHO1): Same as the recent fix in
26568	  common.mk.
26569	  ":" in a make variable replacement cause a syntax error with
26570	  /usr/ccs/bin/make on Solaris.  Uses $(NULLCMD) instead.
26571
26572Sun Jul 31 20:39:12 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
26573
26574	* common.mk (ECHO1): nmake does not allow parenthesis in make variable
26575	  replacement.
26576
26577Sun Jul 31 23:06:57 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
26578
26579	* vm.c (check_env): print debug messages to stderr.
26580	[Feature #4871] [ruby-dev:43743]
26581
26582Sun Jul 31 22:50:23 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
26583
26584	* vm.c (vm_make_env_each): don't save prev env value.
26585	It is no longer used. [Feature #4871] [ruby-dev:43743]
26586
26587	* vm.c (check_env): changed accordingly.
26588
26589Sun Jul 31 20:21:36 2011  "Yuki Sonoda (Yugui)"  <yugui@yugui.jp>
26590
26591	* common.mk (ECHO1): ":" in a make variable replacement cause a syntax
26592	  error with /usr/ccs/bin/make on Solaris.  Uses $(NULLCMD) instead.
26593
26594	* configure.in (NULLCMD): new check.
26595
26596	* Makefile.in (NULLCMD): Reflects checking in configure.
26597
26598	* win32/Makefile.sub (NULLCMD): new assignment.
26599
26600Sun Jul 31 18:58:59 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26601
26602	* io.c (rb_pipe): pipe on cygwin can succeed half but fail
26603	  half.
26604
26605Sun Jul 31 11:31:07 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
26606
26607	* vm.c: check if cfp is valid. [Bug #5083] [ruby-dev:44208]
26608
26609Sun Jul 31 09:18:28 2011  Eric Hodel  <drbrain@segment7.net>
26610
26611	* lib/rdoc:  Update to RDoc 3.9.  Fixed `ri []`, stopdoc creating an
26612	  object reference, nodoc for class aliases, verbatim === lines.
26613
26614Sun Jul 31 01:29:08 2011  NARUSE, Yui  <naruse@ruby-lang.org>
26615
26616	* io.c (rb_io_each_byte): remove unused variable e.
26617
26618Sat Jul 31 01:23:45 2011  Kenta Murata  <mrkn@mrkn.jp>
26619
26620	* test/bigdecimal/test_bigdecimal.rb (test_version): removed.
26621
26622Sat Jul 30 23:19:09 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26623
26624	* defs/default_gems: separate from tool/rbinstall.rb.
26625
26626Sat Jul 30 23:14:44 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26627
26628	* io.c (rb_io_each_byte): rbuf can be refreshed during yield.
26629	  [Bug #5119]
26630
26631Sat Jul 30 22:35:50 2011  Naohisa Goto  <ngotogenome@gmail.com>
26632
26633	* strftime.c (NEEDS): avoid SEGV due to integer overflow in
26634	  sparc-solaris2.10 and i686-linux.  fix [Bug #4456] [ruby-dev:43284]
26635
26636Sat Jul 30 17:26:26 2011  Masaki Suketa <masaki.suketa@nifty.ne.jp>
26637
26638	* test/win32ole/test_win32ole_variant.rb: use skip method to skip the test.
26639
26640	* test/win32ole/test_win32ole_variant_outarg.rb: ditto.
26641
26642Sat Jul 30 14:27:00 2011  Kenta Murata  <mrkn@mrkn.jp>
26643
26644	* ext/bigdecimal/bigdecimal.c (BigDecimal_version): version 1.1.0.
26645
26646	* ext/bigdecimal/bigdecimal.gemspec: turn into a default gem.
26647
26648	* tool/rbinstall.rb: ditto.
26649
26650Sat Jul 30 11:21:55 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
26651
26652	* vm_core.h (ALT_STACK_SIZE): use MINSIGSTKSZ*2 instead of SIGSTKSZ*2.
26653	  [ruby-core:38607]
26654
26655Sat Jul 30 10:39:14 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
26656
26657	* vm.c (th_init): preallocate alternative stack.
26658	  NoMemoryError is better than rb_bug, of course.
26659	  Patch by Eric Wong. [ruby-core:38572][ruby-core:38594].
26660
26661	* signal.c (rb_register_sigaltstack): ditto.
26662
26663	* vm_core.h: moved ALT_STACK_SIZE definition from signal.c.
26664	* vm.c (thread_free): use xfree() instead of free().
26665
26666Sat Jul 30 07:20:49 2011  Tanaka Akira  <akr@fsij.org>
26667
26668	* ext/socket/lib/socket.rb (udp_server_sockets): unused variable
26669	  removed.
26670	  patch by Jeremy Evans.  [ruby-core:38600]
26671
26672Fri Jul 29 23:56:32 2011  Tanaka Akira  <akr@fsij.org>
26673
26674	* lib/securerandom.rb: call OpenSSL::Random.seed at the
26675	  SecureRandom.random_bytes call.
26676	  based on the patch by Masahiro Tomita.  [ruby-dev:44270]
26677
26678Fri Jul 29 23:53:48 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26679
26680	* array.c (rb_ary_set_len): new function to set array length.
26681
26682	* vm_eval.c (method_missing): set the length of argv array, to mark
26683	  arguments.
26684
26685	* vm_eval.c (rb_apply): get rid of too large alloca.
26686
26687Fri Jul 29 20:48:39 2011  Tanaka Akira  <akr@fsij.org>
26688
26689	* ext/socket/mkconstants.rb: fix typos.
26690
26691Fri Jul 29 20:28:56 2011  Tanaka Akira  <akr@fsij.org>
26692
26693	* ext/socket/mkconstants.rb: use whitespaces as a separator.
26694
26695Fri Jul 29 18:59:07 2011  Tanaka Akira  <akr@fsij.org>
26696
26697	* ext/socket/mkconstants.rb: add documents for constants.
26698	  patch by Eric Hodel.  [ruby-core:37853] [Bug #4989]
26699
26700Fri Jul 29 16:00:43 2011  NARUSE, Yui  <naruse@ruby-lang.org>
26701
26702	* configure.in (enable_pthread): use -pthread on OpenBSD without
26703	  explicit option. patched by Jeremy Evans. [ruby-core:38572]
26704
26705Thu Jul 28 23:36:28 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
26706
26707	* ext/fiddle/closure.c (callback): use rb_ary_tmp_new() instead of
26708	  xmalloc() to allocate an array for arguments of callback procedure,
26709	  to prevent arguments from being swept by GC. [ruby-core:38546]
26710	  [Bug #4929]
26711
26712Thu Jul 28 22:36:06 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
26713
26714	* ext/openssl/ossl_cipher.c (ossl_cipher_initialize): Avoid possible
26715	  SEGV from AES encryption/decryption. Processing data by
26716	  Cipher#update without initializing key (meaningless usage of Cipher
26717	  object since we don't offer a way to export a key) could cause SEGV.
26718
26719	  In OpenSSL, the EVP which has EVP_CIPH_RAND_KEY flag (such as DES3)
26720	  allows uninitialized key, but other EVPs (such as AES) does not
26721	  allow it. Calling EVP_CipherUpdate() without initializing key causes
26722	  SEGV so we set the data filled with "\0" as the key by default. See
26723	  #2768.
26724
26725	* test/openssl/test_cipher.rb: test it.
26726
26727Thu Jul 28 14:25:08 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
26728
26729	* lib/rubygems/user_interaction.rb (Gem::StreamUI#tty?): typo.
26730
26731Thu Jul 28 12:32:53 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26732
26733	* ext/dl/callback/mkcallback.rb (gencallback): use PTR2NUM.
26734
26735	* ext/dl/cptr.c (rb_dlptr_aref, rb_dlptr_aset): check NULL pointer
26736	  dereference.
26737
26738	* ext/dl/cptr.c (rb_dlptr_s_to_ptr): use rb_check_funcall.
26739
26740	* ext/dl/cptr.c (rb_dlptr_s_to_ptr): fix wrapping condition.
26741
26742Thu Jul 28 04:53:31 2011  Eric Hodel  <drbrain@segment7.net>
26743
26744	* lib/delegate.rb:  Move file-level documentation to the appropriate
26745	  classes.
26746
26747Thu Jul 28 02:15:04 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26748
26749	* ext/dl/cfunc.c (dlcfunc_mark), ext/dl/cptr.c (dlptr_mark):
26750	  workaround to mark wrapped object.  this is not a true fix,
26751	  because [Bug #4929] is caused by the interface design of DL.
26752
26753Thu Jul 28 00:28:15 2011  NARUSE, Yui  <naruse@ruby-lang.org>
26754
26755	* test/fileutils/test_fileutils.rb: add OpenBSD case.
26756	  patched by Jeremy Evans [ruby-core:38530] see #5097
26757
26758	* test/ruby/test_process.rb: ditto.
26759
26760Wed Jul 27 22:46:59 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
26761
26762	* test/rinda/test_rinda.rb (test_remote_array_and_hash):
26763	  add local variables to protect objects from GC. [ruby-dev:44253]
26764	  [Bug #5104]
26765
26766Wed Jul 27 17:55:54 2011  NARUSE, Yui  <naruse@ruby-lang.org>
26767
26768	* include/ruby/missing.h: define __syscall if the platform has
26769	  __syscall in the library but doesn't define it in headers
26770	  for example Mac OS X.
26771
26772Wed Jul 27 15:39:14 2011  Eric Hodel  <drbrain@segment7.net>
26773
26774	* object.c:  Add usage documentation for BasicObject.  Based on patch
26775	  by Thomas Sawyer.  [Ruby 1.9 - Bug #5067]
26776
26777Wed Jul 27 12:24:17 2011  Eric Hodel  <drbrain@segment7.net>
26778
26779	* lib/rubygems/uninstaller.rb:  Add missing require and update
26780	  messaging to avoid confusion with uninstall --format-executable.
26781	  [Ruby 1.9 - Bug #4062]
26782
26783Wed Jul 27 09:34:24 2011  Eric Hodel  <drbrain@segment7.net>
26784
26785	* lib/rubygems:  Update to RubyGems 1.8.6.1.
26786
26787Wed Jul 27 09:27:59 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
26788
26789	* test/openssl/test_pkcs12.rb: Add test and intermediate certificates.
26790	  [ Ruby 1.9 - Feature #3793 ] [ruby-core:32088]
26791
26792Wed Jul 27 01:05:32 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26793
26794	* eval_error.c (rb_print_undef_str): new function to raise
26795	  NameError for undefined method.
26796
26797	* load.c (rb_mod_autoload_p), object.c (rb_mod_const_get),
26798	  variable.c (rb_f_untrace_var, set_const_visibility), vm_method.c
26799	  (rb_mod_{remove,undef,alias}_method, set_method_visibility):
26800	  remove inadvertent symbol creation.  based on the first patch by
26801	  Jeremy Evans at [ruby-core:38447].  [Feature #5089]
26802
26803	* vm_method.c (obj_respond_to): fix the respond_to_missing? override
26804	  case.  based on the patch by Jeremy Evans at [ruby-core:38417].
26805	  [Feature #5072]
26806
26807	* parse.y (rb_check_id): make the given name a symbol or a string.
26808	  based on the second patch by Jeremy Evans at [ruby-core:38447]
26809
26810Wed Jul 27 00:50:00 2011  Kenta Murata  <mrkn@mrkn.jp>
26811
26812	* ext/bigdecimal/lib/bigdecimal/util.rb (Rational#to_d):
26813	  zero or negative precision is error.  fixes #5098.
26814	  [ruby-dev:44210]
26815
26816	* test/bigdecimal/test_bigdecimal_util.rb: add test for the above
26817	  change.
26818
26819Wed Jul 27 00:48:00 2011  Kenta Murata  <mrkn@mrkn.jp>
26820
26821	* ext/bigdecimal/lib/bigdecimal/util.rb (Float#to_d): modified for
26822	  specifying precision.  fixes #5098.  [ruby-dev:44210]
26823
26824	* test/bigdecimal/test_bigdecimal_util.rb: add test for the above
26825	  change.
26826
26827Wed Jul 27 00:45:00 2011  Kenta Murata  <mrkn@mrkn.jp>
26828
26829	* ext/bigdecimal/lib/bigdecimal/util.rb (Integer#to_d): added
26830	  for symmetry to BigDecimal() function with an Integer.
26831	  fixes #5098.  [ruby-dev:44210]
26832
26833	* test/bigdecimal/test_bigdecimal_util.rb: add test for the above
26834	  change.
26835
26836Wed Jul 27 00:30:00 2011  Kenta Murata  <mrkn@mrkn.jp>
26837
26838	* ext/bigdecimal/lib/bigdecimal/util.rb (BigDecimal#to_d): added
26839	  for adapting other Numeric subclasses.  [ruby-dev:44245]
26840
26841	* test/bigdecimal/test_bigdecimal_util.rb: test for the above change.
26842
26843Wed Jul 27 00:27:00 2011  Kenta Murata  <mrkn@mrkn.jp>
26844
26845	* bigdecimal/bigdecimal.c (VpDup) a new function for duplicating
26846	  a BigDecimal.
26847
26848	* bigdecimal/bigdecimal.c (BigDecimal_new): support generating a new
26849	  BigDecimal from another BigDecimal using BigDecimal global function
26850	  or constructor.  [ruby-dev:44245]
26851
26852Tue Jul 26 23:33:24 2011  Igor Zubkov  <igor.zubkov@gmail.com>
26853
26854	* array.c: Fix typo. https://github.com/ruby/ruby/pull/36
26855
26856Mon Jul 25 23:51:01 2011  Yusuke Endoh  <mame@tsg.ne.jp>
26857
26858	* proc.c: pre-allocate the unlinked_method_entry_list_entry struct to
26859	  avoid memory allocation during GC.  based on a patch from Eric Wong.
26860	  [ruby-core:38498]
26861
26862Mon Jul 25 23:39:33 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
26863
26864	* test/rake/test_rake_directory_task.rb (TestRakeDirectoryTask#
26865	  test_directory_win32): fixed wrong test.
26866
26867Mon Jul 25 22:36:11 2011  Yusuke Endoh  <mame@tsg.ne.jp>
26868
26869	* proc.c (struct METHOD), gc.c (gc_marks), vm_method.c
26870	  (rb_gc_mark_unlinked_live_method_entries): fix SEGV bug.
26871	  rb_method_entry_t was free'd even when the method is still on the
26872	  stack if it is BMETHOD (i.e., Method#call).  This is because
26873	  rb_method_entry_t is embedded in struct METHOD.  This commit
26874	  separates them and marks the live method entries.
26875	  See [ruby-core:38449] in detail.  fix [Bug #5047] [ruby-core:38171]
26876
26877Mon Jul 25 22:14:37 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
26878
26879	* lib/xmlrpc/client.rb: Fix possible HTTP header formatting failure by
26880	  'Basic' header. Long username caused the base64 String truncation in
26881	  HTTP header which is not allowed. See #5046.
26882
26883	* test/xmlrpc/test_webrick_server.rb: test it.
26884
26885Mon Jul 25 15:04:33 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
26886
26887	* ext/openssl/lib/openssl.rb: End of transition period introduced by
26888	  [ruby-dev:38018]. From the next version of 1.9.3, you should use
26889	    require "openssl"
26890	  instead of
26891	    require "openssl/ssl"
26892	  and
26893	    require "openssl/x509"
26894
26895Mon Jul 25 13:46:38 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
26896
26897	* ext/openssl/lib/openssl/x509.rb: Cosmetic change: move definition
26898	  introduced in r30152 to x509-internal.rb.
26899
26900Mon Jul 25 13:09:42 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
26901
26902	* ext/openssl/ossl_ssl.c (ossl_ssl_shutdown): Avoid randomly generated
26903	  SSLError from SSLSocket just after invoking SSLSocket#close.
26904	  OpenSSL's SSL_shutdown could try to send alert packet and it might
26905	  set SSLerr(global error stack) as the result. It causes the next
26906	  SSL read/write operation to fail by unrelated reason.
26907
26908	  By design, we're ignoring any error at SSL_shutdown() so we clear
26909	  global error stack after SSL_shutdown is called. See #5039.
26910
26911Sun Jul 24 20:29:53 2011  Tanaka Akira  <akr@fsij.org>
26912
26913	* ext/socket/extconf.rb: refine the recvmsg test.
26914
26915Sun Jul 24 20:02:31 2011  Tanaka Akira  <akr@fsij.org>
26916
26917	* ext/socket/extconf.rb: fix the recvmsg test.
26918
26919Sun Jul 24 08:42:51 2011  Tanaka Akira  <akr@fsij.org>
26920
26921	* ext/socket/extconf.rb: test recvmsg allocates file descriptors for
26922	  fd passing even with MSG_PEEK.
26923
26924	* ext/socket/ancdata.c: use the above test result.
26925
26926Sun Jul 24 01:04:50 2011  Eric Hodel  <drbrain@segment7.net>
26927
26928	* lib/rubygems/specification.rb:  Restore behavior of
26929	  Gem::Specification#loaded.  [Ruby 1.9 - Bug #5032]
26930
26931Sun Jul 24 00:05:00 2011  Jeremy Evans  <merch-redmine@jeremyevans.net>
26932
26933	* error.c (rb_name_error_str): new function to raise NameError
26934	  with the name string but not ID.
26935
26936	* object.c, proc.c, variable.c: more removal of inadvertent symbol
26937	  creation.  [Feature #5079]
26938
26939Sat Jul 23 21:14:00 2011  Tadayoshi Funaba  <tadf@dotrb.org>
26940
26941	* lib/cmath.rb (cbrt): should return a real number if possible.
26942
26943Sat Jul 23 20:12:52 2011  NARUSE, Yui  <naruse@ruby-lang.org>
26944
26945	* test/rake/test_rake_functional.rb (setup): Use __FILE__ for the base
26946	  directory. Current directory is not the top source directory when
26947	  the building process runs on other than there.
26948
26949	* test/rake/test_rake_rake_test_loader.rb: ditto.
26950
26951	* test/rake/test_rake_task_argument_parsing.rb
26952	  (test_terminal_width_using_hardcoded_80): hardcoded 80 is used
26953	  when app.unix? is false.
26954
26955Sat Jul 23 20:11:50 2011  Tadayoshi Funaba  <tadf@dotrb.org>
26956
26957	* ext/date/date_core.c: an issue that is same as  [ruby-dev:44071].
26958	* ext/date/date_strftime.c: identical to [ruby-dev:44112].
26959
26960Sat Jul 23 19:12:53 2011  Masaki Suketa <masaki.suketa@nifty.ne.jp>
26961
26962	* test/win32ole/test_err_in_callback.rb (test_err_in_callback):
26963	  skip test if ADODB.connection is not available.
26964
26965Sat Jul 23 15:37:04 2011  NARUSE, Yui  <naruse@ruby-lang.org>
26966
26967	* parse.y (rb_enc_symname_type): :$a!, @a! and so on are not
26968	  valid symbols, so they should be inspected with quotes.
26969
26970Sat Jul 23 17:06:25 2011  Tanaka Akira  <akr@fsij.org>
26971
26972	* io.c (rb_update_max_fd): validate fd.
26973
26974	* ext/socket/rubysocket.h (rsock_discard_cmsg_resource): add
26975	  msg_peek_p argument for the declaration.
26976
26977	* ext/socket/ancdata.c (discard_cmsg): add msg_peek_p argument.
26978	  assume FreeBSD, NetBSD and MacOS X doesn't generate passed fd
26979	  when MSG_PEEK.
26980	  (rsock_discard_cmsg_resource): add msg_peek_p argument.
26981	  (bsock_recvmsg_internal): call rsock_discard_cmsg_resource with
26982	  msg_peek_p argument.
26983
26984	* ext/socket/unixsocket.c (unix_recv_io): call
26985	  rsock_discard_cmsg_resource with msg_peek_p argument.
26986
26987Sat Jul 23 14:38:28 2011  Eric Hodel  <drbrain@segment7.net>
26988
26989	* test/rake*: Remove dependencies on flexmock and session gems.
26990	  [Ruby 1.9 - Bug #4987]
26991
26992Sat Jul 23 12:19:04 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26993
26994	* parse.y (rb_check_id): take care of attrset ID created
26995	  implicitly by local ID.  [Bug #5084]
26996
26997	* parse.y (rb_check_id): conversion condition was inverse.
26998	  [Bug #5084]
26999
27000Fri Jul 22 21:46:54 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
27001
27002	* vm_insnhelper.c (vm_call_cfunc): added volatile for a workaround
27003	  of cfp consistency error problem on OS X 10.7 (Lion). It's
27004	  suspected llvm optimization bug.
27005	  [Bug #5074] [ruby-dev:44185]
27006
27007Fri Jul 22 21:18:20 2011  NARUSE, Yui  <naruse@ruby-lang.org>
27008
27009	* lib/uri/generic.rb (WFKV_): unroll the loop of regexp.
27010
27011	* lib/uri/generic.rb (URI.decode_www_form_component): ditto.
27012
27013Fri Jul 22 21:06:39 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27014
27015	* object.c (rb_mod_{const,cvar}_defined, rb_obj_ivar_defined):
27016	  avoid inadvertent symbol creation in reflection methods.  based
27017	  on a patch by Jeremy Evans at [ruby-core:38367].  [Feature #5072]
27018
27019	* vm_method.c (rb_mod_method_defined)
27020	  (rb_mod_{public,private,protected}_method_defined)
27021	  (obj_respond_to): ditto.
27022
27023	* parse.y (rb_check_id): new function returns already interned ID
27024	  or 0.
27025
27026Fri Jul 22 20:44:49 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27027
27028	* parse.y (rb_is_global_id, rb_is_attrset_id): add missing
27029	  predicates.
27030
27031Fri Jul 22 20:24:38 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
27032
27033	* test/ruby/test_object.rb (TestObject#test_respond_to_missing):
27034	  2nd argument of respond_to_missing? is not optional.
27035
27036Fri Jul 22 19:05:47 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27037
27038	* parse.y (rb_enc_symname2_p): get rid of potential out-of-bound
27039	  access.
27040
27041Fri Jul 22 13:55:59 2011  Eric Hodel  <drbrain@segment7.net>
27042
27043	* lib/net/http.rb:  Net::HTTP#finish is used to manually close
27044	  connections.  [Ruby 1.9 - Bug #5045]
27045
27046Fri Jul 22 13:51:29 2011  Eric Hodel  <drbrain@segment7.net>
27047
27048	* ext/readline/readline.c:  Add examples for Readline.completion_proc=.
27049	  [Ruby 1.9 - Bug #5057]
27050
27051Fri Jul 22 13:03:12 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
27052
27053	* ext/openssl/ossl_hmac.c: Revert checking return type of
27054	  HMAC_Init_ex as it is not compatible with OpenSSL < 1.0.0.
27055
27056Fri Jul 22 12:10:21 2011  Eric Hodel  <drbrain@segment7.net>
27057
27058	* tool/rbinstall.rb (default gems):  Install executables into the fake
27059	  gem dir for Gem.bin_path.  [#4485]
27060
27061Fri Jul 22 11:20:20 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
27062
27063	* ext/openssl/ossl_digest.c: Check return value of EVP_DigestInit_ex.
27064	* ext/openssl/ossl_hmac.c: Check return value of HMAC_Init_ex.
27065	  Thanks, Jared Jennings, for the patch.
27066	  [ Ruby 1.9 - Bug #4944 ] [ruby-core:37670]
27067
27068Fri Jul 22 09:09:43 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
27069
27070	* ext/openssl/ossl_engine.c: Avoid double free of ENGINE reference.
27071	* test/openssl/test_engine.rb: Add a test for it.
27072	  Thanks to Ippei Obayashi for providing the patch.
27073	  [ Ruby 1.9 - Bug #5062 ] [ruby-dev:44173]
27074
27075Fri Jul 22 06:37:13 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
27076
27077	* lib/csv.rb: Do not modify CSV.generate's argument [ruby-core:38356]
27078
27079Thu Jul 21 20:59:59 2011  Tanaka Akira  <akr@fsij.org>
27080
27081	* ext/socket/ancdata.c (discard_cmsg): workaround for MacOS X Lion.
27082
27083Thu Jul 21 20:02:11 2011  Yusuke Endoh  <mame@tsg.ne.jp>
27084
27085	* thread.c (set_trace_func, thread_set_trace_func_m): reset tracing
27086	  state when set_trace_func hook is removed.  This is workaround patch
27087	  to force to reset tracing state that is broken by continuation call.
27088	  a patch from James M. Lawrence.  [Feature #4347] [ruby-core:34998]
27089
27090	* test/ruby/test_continuation.rb (class TestContinuation): add a test
27091	  for above.  a patch from James M. Lawrence.
27092
27093Thu Jul 21 19:27:19 2011  Yusuke Endoh  <mame@tsg.ne.jp>
27094
27095	* node.c (dump_node): add today's knowledge.  "init arguments (m)" and
27096	  "init arguments (p)" of compile.c indicates a Ruby code that
27097	  evaluates multiple assignments that is in method or block
27098	  parameters:  def foo((m1,m2), (m3,m4), *r, (p1,p2), (p3,p4)); end
27099	  The former (init arguments (m)) evaluates the multiple assignments
27100	  before rest argument, that are (m1,m2) and (m3,m4).  The letter
27101	  (init arguments (p)) does ones after rest argument, that are
27102	  (p1,p2) and (p3, p4).
27103
27104Thu Jul 21 18:11:07 2011  NARUSE, Yui  <naruse@ruby-lang.org>
27105
27106	* enum.c (enum_inject): remove empty line to notify rdoc
27107	  Enumerable#reduce is alias. patched by milki@github.
27108	  https://github.com/ruby/ruby/pull/26
27109
27110Thu Jul 21 17:30:21 2011  NARUSE, Yui  <naruse@ruby-lang.org>
27111
27112	* array.c (rb_ary_delete_at_m): use simple array literal in rdoc.
27113	  patched by samuel tonini. [ruby-core:38310] [Bug #5066]
27114
27115Thu Jul 21 17:14:21 2011  NARUSE, Yui  <naruse@ruby-lang.org>
27116
27117	* lib/webrick/httprequest.rb (WEBrick::HTTPRequest#each):
27118	  Allow HTTP/0.9 request which doesn't has any header or body.
27119	  patched by Felix Jodoin. [ruby-core:38040] [Bug #5022]
27120
27121Wed Jul 20 23:02:18 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
27122
27123	* io.c (rb_update_max_fd): remove parentheses. they are not in
27124	  macro.
27125
27126Wed Jul 20 22:22:23 2011  Tanaka Akira  <akr@fsij.org>
27127
27128	* include/ruby/intern.h (rb_update_max_fd): declaration moved from
27129	  internal.h.
27130
27131	* file.c: ditto.
27132
27133	* io.c: call rb_update_max_fd for each new fds.
27134
27135	* process.c: ditto.
27136
27137	* random.c: ditto.
27138
27139	* ruby.c: ditto.
27140
27141	* ext/io/console/console.c: ditto.
27142
27143	* ext/openssl/ossl_bio.c: ditto.
27144
27145	* ext/pty/pty.c: ditto.
27146
27147	* ext/socket/init.c: ditto.
27148
27149	* ext/socket/socket.c: ditto.
27150
27151	* ext/socket/ancdata.c: ditto.
27152
27153	* ext/socket/unixsocket.c: ditto.
27154
27155Wed Jul 20 15:16:22 2011  NARUSE, Yui  <naruse@ruby-lang.org>
27156
27157	* ext/dl/handle.c (dlhandle_sym): clear previous error with dlerror()
27158	  before calling dlsym(). [ruby-dev:44091] [Bug #5021]
27159
27160Wed Jul 20 07:16:26 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
27161
27162	* NEWS: mention Kernel#warn.  [ruby-core:38119] [Feature #5029]
27163
27164Tue Jul 19 16:40:45 2011  TAKANO Mitsuhiro (takano32)  <tak@no32.tk>
27165
27166	* cont.c (cont_save_thread): fix missing semicolon.
27167
27168Tue Jul 19 16:25:15 2011  Tanaka Akira  <akr@fsij.org>
27169
27170	* io.c (UPDATE_MAXFD): removed.
27171
27172Tue Jul 19 16:07:45 2011  Tanaka Akira  <akr@fsij.org>
27173
27174	* io.c (rb_update_max_fd): new function.
27175
27176	* internal.h (rb_update_max_fd): declare rb_update_max_fd.
27177
27178	* thread_pthread.c (rb_thread_create_timer_thread): update max fd when
27179	  timer thread pipe is created.
27180
27181Mon Jul 18 13:36:47 2011  Aaron Patterson <aaron@tenderlovemaking.com>
27182
27183	* ext/psych/lib/psych.rb: define a new BadAlias error class.
27184
27185	* ext/psych/lib/psych/visitors/to_ruby.rb: raise an exception when
27186	  deserializing an alias that does not exist.
27187
27188	* test/psych/test_merge_keys.rb: corresponding test.
27189
27190Mon Jul 18 00:00:46 2011  Shugo Maeda  <shugo@ruby-lang.org>
27191
27192	* ext/curses/curses.c: added the new class Curses::Pad, which
27193	  supports scrolling.  patch by Eric Hodel.  [Feature #4896]
27194	  [ruby-core:37206]
27195
27196Sun Jul 17 16:26:40 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27197
27198	* error.c (rb_check_trusted): new function to check an object is
27199	  trusted.
27200
27201	* struct.c (rb_struct_modify), time.c (time_modify): check by the
27202	  above function to show proper class names.  [Bug #5036]
27203
27204Sun Jul 17 15:30:04 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27205
27206	* error.c (rb_warn_m): accept multiple args in like puts.  rdoc
27207	  patch by Erik Price at [ruby-core:38119].  [Feature #5029]
27208
27209Sun Jul 17 07:56:31 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
27210
27211	* test/openssl/test_ssl_session.rb: add PEM SSL session without TLS
27212	  extensions. Use this as the default for the tests to ensure
27213	  compatibility with OpenSSL 0.9.7.
27214	  [ Ruby 1.9 - Bug #4961 ] [ruby-core:37726]
27215
27216Sat Jul 16 17:29:20 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27217
27218	* configure.in (RUBY_UNIVERSAL_ARCH): restore arch flag.
27219	  Bug #4977
27220
27221Sat Jul 16 06:27:51 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
27222
27223	* lib/uri/common.rb (module): Remove optional parser argument to
27224	  Kernel#URI
27225	  [ruby-core:38061]
27226
27227	* lib/uri/generic.rb (module): ditto
27228
27229Sat Jul 16 03:19:45 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
27230
27231	* win32/win32.c (is_socket, is_console): add prototypes to fix compile
27232	  problem with gcc introduced at r32549.
27233	  reported by Jon Forums. [Bug #5030] [ruby-core:38079]
27234
27235Sat Jul 16 00:55:38 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
27236
27237	* time.c (time_dup): used rb_obj_class() instead of CLASS_OF().
27238	  The patch is made by Kazuki Tsujimoto. [Bug #5012] [ruby-dev:44071]
27239
27240	* test/ruby/test_time.rb (TestTime#test_getlocal_dont_share_eigenclass):
27241	  added a new test for eigenclass of time object.
27242
27243Fri Jul 15 19:11:00 2011  Kenta Murata  <mrkn@mrkn.jp>
27244
27245	* bignum.c (bigsub_int): add RB_GC_GUARD.  This patch is made by
27246	  Makoto Kishimoto.  fixes #4223 [ruby-dev:42907]
27247
27248	* bignum.c (bigadd_int): ditto.
27249
27250Fri Jul 15 14:27:53 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
27251
27252	* win32/win32.c, include/ruby/win32.h (rb_w32_io_cancelable_p): renamed
27253	  from rb_w32_has_cancel_io().  now it takes a parameter as fd to check
27254	  the fd is console or not, because we cannot cancel console input even
27255	  if we have cancel_io function.
27256
27257	* io.c (WAIT_FD_IN_WIN32): call above function instead of the old one,
27258	  so now we can kill the thread which calls STDIN.gets.
27259	  the problem was reported by ko1 via IRC.
27260
27261Fri Jul 15 09:10:41 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
27262
27263	* ext/digest/sha2/sha2.c (SHA256_Update, SHA512_Update): avoid Bus
27264	  Error caused by unalignment access on Sparc-Solaris (and possibly on
27265	  other similar environment.) This patch just do memcpy always instead
27266	  of checking architecture. I see no perf drop on my 64bit env. For
27267	  more details, see #4320.
27268
27269	* test/digest/test_digest.rb: add test for unalignment access.
27270
27271Fri Jul 15 01:51:25 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27272
27273	* regint.h (PLATFORM_UNALIGNED_WORD_ACCESS): Power PC does not
27274	  allow unaligned word access.
27275
27276	* st.c (UNALIGNED_WORD_ACCESS): x86_64 allows unaligned word
27277	  access as well as i386.
27278
27279Thu Jul 14 12:19:34 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
27280
27281	* ext/openssl/ossl.c (ossl_verify_cb): trap the exception from
27282	  verify callback of SSLContext and X509Store and make the
27283	  verification fail normally. Raising exception directly from callback
27284	  causes orphan resources in OpenSSL stack. Patched by Ippei Obayashi.
27285	  See #4445.
27286
27287	* test/openssl/test_ssl.rb
27288	  (test_exception_in_verify_callback_is_ignored): test it.
27289
27290Tue Jul 12 23:41:49 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
27291
27292	* NEWS: add a description of Signal.trap change.
27293
27294Tue Jul 12 20:02:35 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
27295
27296	* signal.c (reserved_signal_p): reverted a part of r32523.
27297	  chikanaga noticed trap(:CHLD) has some realworld usecase.
27298	* test/ruby/test_signal.rb (TestSignal#test_reserved_signal):
27299	  ditto.
27300
27301Tue Jul 12 17:12:45 2011  Yukihiro Matsumoto  <matz@ruby-lang.org>
27302
27303	* vm_method.c (rb_add_method): should not call method_added hook
27304	  for undef operation. [Bug #5015]
27305
27306Tue Jul 12 16:58:44 2011  Shota Fukumori  <sorah@tubusu.net>
27307
27308	* lib/test/unit.rb(Test::Unit::Options#process_args): Fix bug.
27309	  Fix process_args didn't return `@option` after r30939.
27310
27311Tue Jul 12 14:07:46 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
27312
27313	* signal.c (install_sighandler): fixed a race.
27314
27315Tue Jul 12 13:49:32 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
27316
27317	* signal.c (sig_trap): don't permit to change a signal handler which
27318	  the interpreter reserved.
27319	* signal.c (reserved_signal_p): ditto.
27320	  [Bug #2616] [ruby-core:27625]
27321
27322	* test/ruby/test_signal.rb (TestSignal#test_reserved_signal):
27323	  added a test for reserved signal.
27324
27325Tue Jul 12 11:58:28 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
27326
27327	* win32/setup.mak: support x86-amd64 cross compile environment.
27328
27329Mon Jul 11 23:22:28 2011  Yutaka Kanemoto  <kanemoto@ruby-lang.org>
27330
27331	* time.c: can't compile time.c on AIX due to missing declaration for
27332	  ffs(). It is declared in strings.h on AIX.
27333
27334Mon Jul 11 15:54:24 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
27335
27336	* process.c: removed signal() macro. It's no longer used.
27337
27338Mon Jul 11 15:02:24 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
27339
27340	* numeric.c (rb_num2ull): use FIX2LONG instead of FIX2ULONG. see
27341	  rb_num2ulong(). fixed the problem of ObjectSpace._id2ref of IL32LLP64
27342	  platforms, introduced at r32433.
27343
27344Mon Jul 11 05:38:05 2011  Yutaka Kanemoto  <kanemoto@ruby-lang.org>
27345
27346	* thread_pthread.c (get_stack): need to adjust stack addr for
27347	  [Bug #1813] on AIX.
27348
27349Mon Jul 11 01:16:27 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
27350
27351	* thread_pthread.c (rb_thread_create_timer_thread): removed
27352	  rb_disable_interrupt()/rb_enable_interrupt().
27353	* vm_core.h: ditto.
27354	* process.c (static void before_exec): ditto.
27355	* process.c (static void after_exec): ditto.
27356	  [Bug #4765] [ruby-dev:43571]
27357
27358	* eval_intern.h: removed rb_trap_restore_mask().
27359	* vm_eval.c (rb_throw_obj): ditto.
27360	* eval.c (setup_exception): ditto.
27361
27362	* signal.c: removed trap_last_mask.
27363	* signal.c (trap_restore_mask): removed.
27364	* signal.c (init_sigchld): comment clarification why signal block
27365	  is needed. and removed trap_last_mask operation.
27366	* signal.c (trap_ensure): removed trap_last_mask operation.
27367
27368	* signal.c (rb_disable_interrupt, rb_enable_interrupt): made
27369	  static and removed sigdelset(SIGVTALRM) and sigdelset(SIGSEGV).
27370
27371	* process.c (rb_syswait): removed implicit signal handler change.
27372
27373Sun Jul 10 23:49:12 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
27374
27375	* docs/NEWS-1.9.3: moved from NEWS.
27376
27377	* docs/ChangeLog-1.9.3: merged ChangeLog for 1.9.3.
27378
27379	* NEWS: NEWS for 1.9.4 that describes changes since 1.9.3
27380
27381	* ChangeLog: new ChangeLog for 1.9.4.
27382
27383Sun Jul 10 23:30:52 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
27384
27385	* version.h (RUBY_VERSION): ruby_1_9_3 branch was forked.
27386
27387For the changes before 1.9.3, see doc/ChangeLog-1.9.3
27388For the changes before 1.8.0, see doc/ChangeLog-1.8.0
27389
27390Local variables:
27391coding: us-ascii
27392add-log-time-format: (lambda ()
27393  (let* ((time (current-time))
27394	 (system-time-locale "C")
27395	 (diff (+ (cadr time) 32400))
27396	 (lo (% diff 65536))
27397	 (hi (+ (car time) (/ diff 65536))))
27398  (format-time-string "%a %b %e %H:%M:%S %Y" (list hi lo) t)))
27399indent-tabs-mode: t
27400tab-width: 8
27401change-log-indent-text: 2
27402end:
27403vim: tabstop=8 shiftwidth=2
27404