1Fri Feb  8 19:56:54 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
2
3	* array.c (rb_ary_dup): reverted r39004.  see [Bug #7768], and
4	  release manager finally decided to revert it.
5
6Fri Feb  8 16:09:45 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7
8	* eval.c (rb_ensure): preserve errinfo across ensure proc before
9	  JUMP_TAG().  [ruby-core:52022] [Bug #7802]
10
11Fri Feb  8 16:08:28 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12
13	* test/ruby/envutil.rb (assert_separately): check also terminating
14	  signal not only if core dumped.
15
16Fri Feb  8 13:12:04 2013  Eric Hodel  <drbrain@segment7.net>
17
18	* lib/rdoc/generator/darkfish.rb:  Set encoding on output template to
19	  user-specified encoding.
20	* test/rdoc/test_rdoc_generator_darkfish.rb:  Test for above.
21
22	* lib/rdoc.rb:  Bump version
23
24Fri Feb  8 11:53:33 2013  Eric Hodel  <drbrain@segment7.net>
25
26	* lib/rubygems/security/policy.rb:  Raise proper exceptions when
27	  verifying unsigned gems (instead of crashing).
28	* test/rubygems/test_gem_security_policy.rb:  Tests for the above.
29
30Fri Feb  8 10:44:44 2013  Eric Hodel  <drbrain@segment7.net>
31
32	* test/rubygems/test_gem_dependency_installer.rb:  Improve coverage of
33	  --install-dir feature of gem install.
34
35Fri Feb  8 10:11:09 2013  Eric Hodel  <drbrain@segment7.net>
36
37	* lib/rubygems/config_file.rb:  Add missing require for
38	  user_interaction.rb
39
40	* lib/rubygems/dependency_installer.rb:  Minor refactor for clarity.
41
42Fri Feb  8 09:35:17 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43
44	* lib/mkmf.rb (MakeMakefile#configuration): set all ruby names.
45	  hdrdir now needs RUBY_VERSION_NAME.
46
47Fri Feb  8 08:58:26 2013  Eric Hodel  <drbrain@segment7.net>
48
49	* lib/rubygems/package/old.rb:  Fix loading old format gems on ruby
50	  1.8.  This commit is only so trunk and rubygems master have the same
51	  code.
52
53Fri Feb  8 08:53:27 2013  Aaron Patterson <aaron@tenderlovemaking.com>
54
55	* ext/psych/lib/psych/visitors/yaml_tree.rb: fixing string quotation
56	  when dumping Ruby strings. Thanks Ingy
57
58	* test/psych/test_psych.rb: appropriate tests.
59
60	* test/psych/test_yaml.rb: ditto
61
62Fri Feb  8 08:50:42 2013  Aaron Patterson <aaron@tenderlovemaking.com>
63
64	* ext/psych/lib/psych/visitors/yaml_tree.rb: change output reference
65	  ids to be sequential numbers.
66
67Fri Feb  8 07:47:56 2013  Eric Hodel  <drbrain@segment7.net>
68
69	* lib/rubygems/package/old.rb:  Disallow installation of old-format
70	  gems when a security policy is active.
71	* test/rubygems/test_gem_package_old.rb:  Test for above.
72
73Fri Feb  8 07:34:00 2013  Zachary Scott  <zachary@zacharyscott.net>
74
75	* lib/net/http.rb (HTTP.post_form): Fix module scope in documentation
76	  Patch by David Albert [Bug #7794] [ruby-core:51955]
77
78Fri Feb  8 07:33:00 2013  Zachary Scott  <zachary@zacharyscott.net>
79
80	* compar.c (cmp_equal): Document ignored exception and return false
81	  By Makoto Kishimoto [Bug #7790] [ruby-dev:46925] [ruby-dev:46910]
82
83Fri Feb  8 07:17:00 2013  Eric Hodel  <drbrain@segment7.net>
84
85	* lib/rubygems/dependency_installer.rb:  Only install local gems if
86	  they end in '.gem'.  Fixes github rubygems issue #407.
87	* test/rubygems/test_gem_dependency_installer.rb:  Test for the above.
88
89Fri Feb  8 00:02:48 2013  Tanaka Akira  <akr@fsij.org>
90
91	* process.c (obj2gid): use getgrnam_r() only if getgrnam_r() and
92	  _SC_GETGR_R_SIZE_MAX is available.
93	  MirOS BSD (MirBSD 10 GENERIC#1382 i386) have getgrnam_r() but
94	  no _SC_GETGR_R_SIZE_MAX.
95	  (obj2uid): use getpwnam_r() only if getpwnam_r() and
96	  _SC_GETPW_R_SIZE_MAX is available.
97	  This is consistency for obj2gid.
98	  MirOS BSD have neither getpwnam_r() nor _SC_GETPW_R_SIZE_MAX.
99
100Thu Feb  7 22:01:18 2013  Tanaka Akira  <akr@fsij.org>
101
102	* configure.in: define linker for shared library on MirOS BSD.
103
104Thu Feb  7 21:09:23 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
105
106	* test/rubygems/test_gem_config_file.rb
107	  (TestGemConfigFile#test_check_credentials_permissions): skip on
108	  Windows. see [Bug #7784] [ruby-core:51864] and r39070.
109
110Thu Feb  7 20:52:40 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
111
112	* win32/Makefile.sub (config.status): added variables which were
113	  missing at r39130.
114
115Thu Feb  7 15:33:17 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
116
117	* lib/mkmf.rb (MakeMakefile#merge_libs): insert following reversal
118	  ordered elements just after the duplicated element, not overwriting
119	  successive elements.  [ruby-core:50314] [Bug #7467]
120
121Thu Feb  7 14:56:15 2013  Eric Hodel  <drbrain@segment7.net>
122
123	* lib/rubygems/package.rb:  Ensure digests are generated for signing.
124	* test/rubygems/test_gem_package.rb:  Test for the above.
125
126	* lib/rubygems/security/policy.rb:  Ensure digests are present when
127	  verifying a gem and match the number of signatures bidirectionally.
128	* test/rubygems/test_gem_security_policy.rb:  Test for the above.
129
130	* lib/rubygems.rb:  Documentation improvements (by zzak)
131
132Thu Feb  7 05:52:00 2013  Zachary Scott  <zachary@zacharyscott.net>
133
134	* doc/pty/README: Remove static documentation file
135	* ext/pty/pty.c: Add License to PTY module overview
136
137Thu Feb  7 02:31:10 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
138
139	* vm_insnhelper.c: attr_writer should return its argument [Bug #7773]
140
141	* test/ruby/test_basicinstructions.rb: Test for above
142
143Thu Feb  7 01:35:00 2013  Zachary Scott  <zachary@zacharyscott.net>
144
145	* doc/security.rdoc: Link to japanese version of CVE page patch by
146	  nagachika
147
148Wed Feb  6 23:30:00 2013  Zachary Scott  <zachary@zacharyscott.net>
149
150	* doc/pty/README.expect: Removed static documentation file
151	* ext/pty/lib/expect.rb: Documentation for IO#expect
152
153Wed Feb  6 22:25:00 2013  Charlie Somerville  <charlie@charliesomerville.com>
154
155	* hash.c (env_reject_bang): hide keys array from ObjectSpace
156	* hash.c (env_select_bang): ditto
157
158Wed Feb  6 17:33:01 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
159
160	* configure.in (multiarch): add option to move architecture dependent
161	  directories.  [Feature #6111]
162
163	* template/ruby.pc.in: add arch dependent paths.
164
165	* configure.in (rubyarchhdrdir, sitearchhdrdir, vendorarchhdrdir): add
166	  options to customize architecture dependent header directories.
167
168	* configure.in (rubyarchprefix, sitearchdir, vendorarchdir): add
169	  options to customize architecture dependent library directories.
170
171	* template/ruby.pc.in, tool/mkconfig.rb, tool/rbinstall.rb: use
172	  configured values.
173
174	* tool/mkconfig.rb: expand rubyarchdir to extract prefix.
175
176	* configure.in (RUBY_VERSION_NAME), template/ruby.pc.in: add
177	  substitution and define.
178
179	* configure.in, version.c: parametric architecture name for paths.
180
181	* configure.in (shvar_to_cpp): convert sh variable references
182	  by replacing with string literal forms in cpp.
183
184Wed Feb  6 17:05:26 2013  Eric Hodel  <drbrain@segment7.net>
185
186	* lib/rdoc:  Import RDoc 4.0.0.rc.2
187
188Mon Feb  4 02:22:49 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
189
190	* test/ruby/test_process.rb (test_setsid): ensure to call
191	  Process.wait(). Reported by George Koehler. Thanks.
192
193Mon Feb  4 02:18:00 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
194
195	* test/ruby/test_process.rb (test_setsid): skip when platform is
196	  OpenBSD. Contributed from George Koehler.
197	  [Bug #7789] [ruby-core:51889]
198
199Wed Feb  6 13:35:20 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
200
201	* proc.c (rb_method_entry_location, rb_{mod,obj}_method_location): new
202	  functions to obtain source location of method definition.
203
204	* vm_method.c (rb_obj_respond_to): show the location of old style
205	  respond_to? method.
206
207Wed Feb  6 13:03:00 2013  Zachary Scott  <zachary@zacharyscott.net>
208
209	* doc/security.rdoc: Add link to CVEs on ruby-lang.org/en/security
210
211Wed Feb  6 12:49:00 2013  Zachary Scott  <zachary@zacharyscott.net>
212
213	* NEWS: Add note about removal of CSV::load and CSV::dump from r39077
214
215Wed Feb  6 05:57:00 2013  Zachary Scott  <zachary@zacharyscott.net>
216
217	* lib/racc/parser.rb: Hide copyright notice from Racc doc
218
219Wed Feb  6 05:50:00 2013  Zachary Scott  <zachary@zacharyscott.net>
220
221	* doc/rubygems/*: Removed outdated documentation files
222	* lib/rubygems/LICENSE.txt: Include license file
223	* lib/rubygems.rb: Move Gem module documentation so rdoc can parse it
224	  and link to LICENSE.txt
225	* lib/rubygems/*: Hide useless documentation from Gem module rdoc
226
227Wed Feb  6 03:45:19 2013  Zachary Scott  <zachary@zacharyscott.net>
228
229	* doc/security.rdoc: Remove documentation for unsafe CSV.load which
230	  was deleted in r39077
231
232Wed Feb  6 03:27:19 2013  James Edward Gray II  <james@graysoftinc.com>
233
234	* lib/csv.rb: Remove the dangerous serialization feature.
235
236Wed Feb  6 00:56:00 2013  Zachary Scott  <zachary@zacharyscott.net>
237
238	* lib/irb.rb: Remove example from restrictions, it works [Github #246]
239	  Based on patch by Ryunosuke SATO
240
241Wed Feb  6 00:46:53 2013  Kazuki Tsujimoto  <kazuki@callcc.net>
242
243	* vm.c (rb_vm_stack_to_heap): call rb_vm_get_binding_creatable_next_cfp
244	  instead of rb_vm_get_ruby_level_next_cfp to prevent a segfault by
245	  calling Kernel#callcc. See r39067 for more details.
246	  [ruby-dev:46908] [ruby-trunk - Bug #7774]
247
248	* test/ruby/test_settracefunc.rb: add a test.
249
250Tue Feb  5 18:48:00 2013  Charlie Somerville  <charlie@charliesomerville.com>
251
252	* doc/security.rdoc: add regex, eval and drb sections
253
254Tue Feb  5 17:24:02 2013  Eric Hodel  <drbrain@segment7.net>
255
256	* lib/rdoc/servlet.rb:  Fixed root search paths, filesystem paths
257	  instead of HTTP paths were returned.
258	* test/rdoc/test_rdoc_servlet.rb:  Test for above.
259
260Tue Feb  5 16:37:00 2013  Eric Hodel  <drbrain@segment7.net>
261
262	* lib/rubygems/config_file.rb:  Ignore permissions check on windows.
263	  Windows writes 0600 file as 0644 permissions making the check
264	  useless.
265
266Tue Feb  5 16:25:25 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
267
268	* vm_method.c (rb_obj_respond_to): drop optional include_all flag if
269	  respond_to? method is defined in old style.  [Bug #7722]
270
271Tue Feb 05 15:04:34 2013  Koichi Sasada  <ko1@atdot.net>
272
273	* proc.c (rb_binding_new_with_cfp): permit to create binding object
274	  of IFUNC frame.
275	  When `rb_binding_new_with_cfp()' is called, VM finds out the first
276	  normal (has iseq) frame and create a binding object of this frame
277	  and create Env objects. `ep's of related frames are updated
278	  (`ep's point Env object managed spaces).
279	  However, `ep' of skipped IFUNC frame was not updated and
280	  old invalid `ep' was remained. It causes serious problems.
281	  To solve this issue, permit IFUNC to create binding.
282	  (Maybe there is no problem on it)
283	  [ruby-dev:46908] [ruby-trunk - Bug #7774]
284
285	* test/ruby/test_settracefunc.rb: add a test.
286
287	* vm.c (rb_vm_get_binding_creatable_next_cfp), vm_core.h: added.
288
289	* vm_trace.c: fix to use `rb_vm_get_binding_creatable_next_cfp()'.
290
291Tue Feb  5 14:43:15 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
292
293	* lib/matrix.rb: Fix error message, patch by pypypy [Bug #7777]
294
295Tue Feb  5 14:36:04 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
296
297	* numeric.c (fix_pow): Handle special cases when base is 0, -1 or +1
298	  [Bug #5713] [Bug #5715]
299
300	* rational.c (nurat_expt): ditto
301
302Tue Feb  5 13:27:53 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
303
304	* ext/io/console/console.c (rawmode_opt): use default values by `stty
305	  raw`.
306
307Tue Feb  5 12:50:47 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
308
309	* range.c: Use div instead of / for bsearch
310
311	* test/ruby/test_range.rb: Test showing bug when requiring mathn
312
313Tue Feb  5 12:48:38 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
314
315	* enumerator.c: Use to_enum for Enumerable methods returning
316	  Enumerators.
317	  This makes Lazy#cycle no longer needed, so it was removed.
318	  Make Enumerator#chunk and slice_before return lazy Enumerators.
319	  [Bug #7715]
320
321	* internal.h: Remove ref to rb_enum_cycle_size; no longer needed
322
323	* enum.c: Make enum_cycle_size static.
324
325	* test/ruby/test_lazy_enumerator.rb: Test for above
326
327Tue Feb  5 12:48:10 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
328
329	* enumerator.c: Finalize and document Lazy.new. [Bug #7248]
330	  Add Lazy#to_enum and simplify Lazy#size.
331
332	* test/ruby/test_lazy_enumerator.rb: tests for above
333
334Tue Feb  5 11:35:35 2013  Eric Hodel  <drbrain@segment7.net>
335
336	* lib/rubygems/commands/push_command.rb:  Fixed credential download for
337	  `gem push --host`
338	* lib/rubygems/gemcutter_utilities.rb:  ditto.
339	* test/rubygems/test_gem_commands_push_command.rb:  Test for the above.
340	* test/rubygems/test_gem_gemcutter_utilities.rb:  ditto.
341
342	* lib/rubygems/config_file.rb:  Abort if the `gem push` credentials
343	  file has insecure permissions.
344	* test/rubygems/test_gem_config_file.rb:  Test for the above.
345
346	* lib/rubygems/ext/builder.rb:  Do not look for Gemfile, Isolate, etc.
347	  while building gem extensions.
348
349	* lib/rubygems/package.rb:  Unset spec and files list if a gem's
350	  signatures cannot be verified.
351	* test/rubygems/test_gem_package.rb:  Test for the above.
352
353	* lib/rubygems/specification.rb:  Reduce use of eval.
354	* lib/rubygems/test_case.rb:  ditto.
355
356	* test/rubygems/test_gem_specification.rb:  Test setting
357	  specification_version for legacy gems.  Dup Gem.ruby before
358	  untainting in case it's frozen.
359
360	* lib/rubygems.rb:  Reduce use of eval.  Only read files when looking
361	  for Gemfile, Isolate, etc.
362	* test/rubygems/test_gem.rb:  Test for the above.
363
364Tue Feb  5 10:15:00 2013  Zachary Scott  <zachary@zacharyscott.net>
365
366	* doc/security.rdoc: Wrap security guide at 80 columns
367
368Tue Feb  5 10:15:00 2013  Zachary Scott  <zachary@zacharyscott.net>
369
370	* doc/security.rdoc: Grammatical error on security guide
371	  Patch by Josh Bassett [Github fixes #245]
372
373Tue Feb  5 10:00:00 2013  Zachary Scott  <zachary@zacharyscott.net>
374
375	* lib/racc/parser.rb: Update #do_parse and #yyparse from upstream
376	  See [Github tenderlove/racc@7d954b5]
377
378Tue Feb  5 09:55:00 2013  Zachary Scott  <zachary@zacharyscott.net>
379
380	* lib/racc: Merge Racc documentation downstream, add grammar ref file
381
382Tue Feb  5 08:03:00 2013  Zachary Scott  <zachary@zacharyscott.net>
383
384	* lib/irb.rb, lib/irb/ext/save-history.rb: Add documentation on how to
385	  enabled irb history [ruby-core:51347] [Bug #7679]
386
387Tue Feb  5 07:35:00 2013  Zachary Scott  <zachary@zacharyscott.net>
388
389	* lib/irb.rb, lib/irb/context.rb: Add documentation on how to enable
390	  auto-indentation and autocompletion using irbrc and irb_context
391	  [ruby-core:51209] [Bug #7642] and [ruby-core:51348] [Bug #7680]
392
393Tue Feb  5 05:20:00 2013  Zachary Scott  <zachary@zacharyscott.net>
394
395	* doc/standard_library.rdoc: Document list of libraries and extensions
396	  and their purpose or short description
397	* lib/README: Remove lib/README in favor of doc/standard_library.rdoc
398
399Tue Feb  5 04:40:00 2013  Zachary Scott  <zachary@zacharyscott.net>
400
401	* ext/json/lib/json.rb: Move module overview definition for rdoc
402
403Tue Feb  5 03:00:00 2013  Zachary Scott  <zachary@zacharyscott.net>
404
405	* lib/tracer.rb: Move class overview definition and reformat
406
407Mon Feb  4 15:10:10 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
408
409	* ext/io/console/console.c (rawmode_opt): initialize options for the
410	  case all options are not given.
411
412Mon Feb  4 12:44:13 2013  Koichi Sasada  <ko1@atdot.net>
413
414	* vm_dump.c (control_frame_dump): capitalize prefix of `ep'
415	  if `ep' points an env object.
416
417Mon Feb  4 04:20:00 2013  Zachary Scott  <zachary@zacharyscott.net>
418
419	* lib/English.rb: Add English module for RDoc to parse, then
420	  remove_const to avoid confusion. Include full list of aliases and
421	  their associated global variable.
422
423Mon Feb  4 02:40:00 2013  Zachary Scott  <zachary@zacharyscott.net>
424
425	* lib/yaml.rb (YAML::EngineManager): Documentation for #yamler and
426	  #yamler= for using the removed Syck gem as the YAML::ENGINE
427
428Sun Feb  3 16:54:27 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
429
430	* ext/io/console/io-console.gemspec: bump.  [Bug #7762]
431
432	* test/io/console/test_io_console.rb (test_stringio_getch): use more
433	  descriptive assertions.
434
435	* ext/io/console/console.c (rawmode_opt): min is minimum characters,
436	  not tenths.
437
438Sun Feb  3 16:13:00 2013  Charlie Somerville  <charlie@charliesomerville.com>
439
440	* doc/security.rdoc: add first cut at a Ruby security document
441
442Sun Feb  3 10:25:00 2013  Zachary Scott  <zachary@zacharyscott.net>
443
444	* random.c: Document range argument for Kernel#rand.
445	  [ruby-core:51794] [Bug #7770]
446
447Sun Feb  3 10:00:00 2013  Zachary Scott  <zachary@zacharyscott.net>
448
449	* numeric.c: Document Float constants [ruby-core:51484] [Bug #7709]
450
451Sun Feb  3 09:38:44 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
452
453	* lib/profiler.rb (PROFILE_CALL_PROC, PROFILE_RETURN_PROC): add b_call
454	  and b_return to profile block calls.
455
456	* lib/profiler.rb (PROFILE_CALL_PROC, PROFILE_RETURN_PROC): split
457	  PROFILE_PROC for call and return events.
458
459Sat Feb  2 14:32:00 2013  Zachary Scott  <zachary@zacharyscott.net>
460
461	* lib/minitest/mock.rb, lib/minitest/hell.rb: nodoc top-level module
462
463Sat Feb  2 14:05:00 2013  Zachary Scott  <zachary@zacharyscott.net>
464
465	* lib/debug.rb: Documentation for DEBUGGER__ class methods based on
466	  patch by Vincent Batts [ruby-core:51253]
467
468Sat Feb  2 13:37:00 2013  Zachary Scott  <zachary@zacharyscott.net>
469
470	* lib/net/smtp.rb: Fix rdoc title for Net::SMTP
471
472Sat Feb  2 13:32:00 2013  Zachary Scott  <zachary@zacharyscott.net>
473
474	* lib/net/pop.rb: Fix rdoc title for Net::POP3
475
476Sat Feb  2 13:00:11 2013  Yusuke Endoh  <mame@tsg.ne.jp>
477
478	* lib/gserver.rb (GServer#start): fix a timing issue.  patch from
479	  Charles Nutter.  [Bug #7081]
480
481Sat Feb  2 12:36:54 2013  Yusuke Endoh  <mame@tsg.ne.jp>
482
483	* lib/fileutils.rb (copy_entry, wrap_traverse): preserve attributes of
484	  directories on FileUtils.cp_r.  The fix was proposed by Jan
485	  Wedekind.  [Bug #7246]
486
487	* test/fileutils/test_fileutils.rb: add a test for above.
488
489Sat Feb  2 12:30:00 2013  Zachary Scott  <zachary@zacharyscott.net>
490
491	* lib/uri/ftp.rb (URI::FTP.new2): nodoc method from r39013 [Bug #7301]
492
493Sat Feb  2 12:15:36 2013  Yusuke Endoh  <mame@tsg.ne.jp>
494
495	* lib/uri/ftp.rb (URI::FTP.new2): remove the rdoc because it is not
496	  well tested yet.  [Bug #7301]
497
498Sat Feb  2 12:07:41 2013  Yusuke Endoh  <mame@tsg.ne.jp>
499
500	* ChangeLog: Forgot to add a reference to the ChangeLog of the
501	  previous commit.
502
503Sat Feb  2 12:05:18 2013  Yusuke Endoh  <mame@tsg.ne.jp>
504
505	* lib/fileutils.rb: chmod/chmod_R with a string mode (e.g., "+x")
506	  caused error in verbose mode.  [Bug #7373]
507
508	* test/fileutils/test_fileutils.rb: add a test for above.
509
510Sat Feb  2 11:44:42 2013  Yusuke Endoh  <mame@tsg.ne.jp>
511
512	* lib/English.rb: Remove some confusing words from rdoc.  [Bug #7406]
513
514Sat Feb  2 10:17:12 2013  Kazuki Tsujimoto  <kazuki@callcc.net>
515
516	* NEWS: add keyword arguments.
517
518Sat Feb  2 07:45:44 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
519
520	* proc.c (proc_curry): Fix arity check [Bug #5747]
521
522	* test/ruby/test_proc.rb: Test for above
523
524Sat Feb  2 07:44:15 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
525
526	* proc.c: Add {*}_min_max_arity and refactor.
527	  [Bug #7765]
528
529	* test/ruby/test_proc.rb: Fix wrong test
530
531Fri Feb  2 00:46:00 2013  Charlie Somerville  <charlie@charliesomerville.com>
532
533	* marshal.c: add security considerations to marshal overview, refer to
534	  overview from Marshal.load documentation [#7759]
535
536Fri Feb  1 23:04:00 2013  Charlie Somerville  <charlie@charliesomerville.com>
537
538	* array.c (rb_ary_dup): make returned array the same class as the original
539	  array [Bug #7768] [ruby-core:51792]
540	* test/ruby/test_array.rb (class TestArray): add test
541
542Fri Feb  1 16:35:34 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
543
544	* marshal.c (r_object0): prohibit setting instance variables of
545	  existing class/module.
546
547Fri Feb  1 14:34:29 2013  Shugo Maeda  <shugo@ruby-lang.org>
548
549	* ext/readline/extconf.rb, ext/readline/readline.c: check
550	  RL_PROMPT_START_IGNORE and RL_PROMPT_END_IGNORE directly in
551	  readline.c.  Patch by Zachary Scott.  [Bug #7397] [ruby-core:49561]
552
553Thu Jan 31 21:55:00 2013  Charlie Somerville  <charlie@charliesomerville.com>
554
555	* marshal.c (marshal_load): Add documentation warning against using
556	  Marshal.load on untrusted data [Bug #7759] [ruby-core:51765]
557
558Thu Jan 31 16:33:27 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
559
560	* parse.y (local_push_gen): no assigned but unused variable warnings
561	  in eval as well as -e.  [Feature #7730] [ruby-core:51580]
562
563Wed Jan 30 12:30:08 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
564
565	* test/ruby/test_signal.rb (test_trap_puts): Fix typo. "sync"
566	  should be "STDOUT.sync".
567
568Thu Jan 31 15:39:00 2013  Zachary Scott  <zachary@zacharyscott.net>
569
570	* string.c (rb_str_aset_m): Documentation for String#[]= fix
571	  Raises an IndexError if Regexp match is out of range.
572	  Github fixes #243 Patch by Dmtiriy Budnik
573
574Thu Jan 31 13:54:44 2013  Shugo Maeda  <shugo@ruby-lang.org>
575
576	* ext/socket/raddrinfo.c (rsock_unix_sockaddr_len): return
577	  sizeof(sa_family_t) if path is empty.  see "Autobind Feature" in
578	  unix(7) for details.
579
580	* ext/socket/lib/socket.rb (unix_socket_abstract_name?): treat an
581	  empty path as an abstract name.
582
583	* test/socket/test_unix.rb: related test.
584
585Wed Jan 30 20:58:50 2013  Tanaka Akira  <akr@fsij.org>
586
587	* ext/socket/basicsocket.c (bsock_getsockname): ignore truncated
588	  part of socket address.
589	  (bsock_getpeername): ditto.
590	  (bsock_local_address): ditto.
591	  (bsock_remote_address): ditto.
592
593	* ext/socket/unixsocket.c (unix_path): ditto.
594	  (unix_addr): ditto.
595	  (unix_peeraddr): ditto.
596
597	* ext/socket/init.c (cloexec_accept): ditto.
598
599Wed Jan 30 17:08:20 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
600
601	* include/ruby/win32.h (fstat): revert r37337, which uses _fstati64()
602	  instead of fstati64() on mingw32.  [Bug #7276]
603
604Wed Jan 30 15:26:37 2013  Shugo Maeda  <shugo@ruby-lang.org>
605
606	* ext/socket/unixsocket.c (rsock_init_unixsock): use rb_inspect()
607	  because rb_sys_fail_str() fails if its argument contains NUL.
608
609	* test/socket/test_unix.rb: related test.
610
611Wed Jan 30 15:21:30 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
612
613	* vm_dump.c (rb_vm_bugreport): show the most important message, Crash
614	  Report log information, first.
615
616Wed Jan 30 15:00:05 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
617
618	* array.c (rb_ary_bsearch): Raise TypeError on bad return from block
619
620	* range.c (range_bsearch): ditto
621
622	* test/ruby/test_array.rb (class): Test for above
623
624	* test/ruby/test_range.rb (class): ditto
625
626Wed Jan 30 14:46:28 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
627
628	* range.c: Restrict bsearch to integers [#7728]
629
630	* test/ruby/test_range.rb: Test for above
631
632Wed Jan 30 14:10:52 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
633
634	* array.c (rb_ary_bsearch): Return enumerator if no block [#7725]
635
636	* range.c (range_bsearch): ditto
637
638	* test/ruby/test_array.rb: Test for above
639
640	* test/ruby/test_range.rb: ditto
641
642Wed Jan 30 13:53:43 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
643
644	* lib/matrix.rb: Take conjugate for inner product
645	  [rubyspec:5a01ad5719f2] [ruby-dev:46101]
646
647Wed Jan 30 13:22:05 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
648
649	* parse.y (local_push_gen): warn assigned but unused variables also in
650	  toplevel, except for -e option.  [Feature #7730] [ruby-core:51580]
651
652Wed Jan 30 13:17:53 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
653
654	* cont.c (cont_restore_thread): svar should be separate per fibers.
655	  [ruby-core:51331] [Bug #7678]
656
657Wed Jan 30 07:15:04 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
658
659	* re.c (reg_operand): Simplify and reuse error handling [Bug #7539]
660
661	* test/ruby/test_regexp.rb: Test for above
662
663Wed Jan 30 07:00:16 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
664
665	* object.c: Improve error for failed implicit conversions [Bug #7539]
666
667	* error.c: Adapt rdoc
668
669	* test/ruby/test_object.rb: Test for above
670
671Tue Jan 29 21:40:12 2013  Tanaka Akira  <akr@fsij.org>
672
673	* lib/net/http/generic_request.rb (encode_multipart_form_data): remove
674	  tempfile explicitly.
675
676Tue Jan 29 19:27:18 2013  Benoit Daloze  <eregontp@gmail.com>
677
678	* array.c: Improve documentation about
679	  comparison by hash for concerned methods. [ruby-core:51266]
680
681Tue Jan 29 17:03:28 2013  Koichi Sasada  <ko1@atdot.net>
682
683	* vm_backtrace.c: fix issue of rb_debug_inspector_open().
684	  The order of making binding should be stack (frame) top to bottom.
685	  [Bug #7635]
686	  And also fix issue of collecting klass. Collecting klass is same
687	  as TracePoint#defined_class.
688	  (previous version, it returns T_ICLASS (internal objects).
689
690	* test/-ext-/debug/test_debug.rb: add a test.
691
692	* ext/-test-/debug/extconf.rb, init.c, inspector.c: ditto.
693
694	* vm_backtrace.c: remove magic number and add enum CALLER_BINDING_*.
695
696	* vm_backtrace.c, include/ruby/debug.h: add new C api (experimental)
697	  rb_debug_inspector_frame_self_get().
698
699	* vm.c, vm_core.h, vm_trace.c: move decl. of
700	  rb_vm_control_frame_id_and_class() and constify first parameter.
701
702Tue Jan 29 16:50:58 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
703
704	* vm_trace.c (rb_tracepoint_enable, rb_tracepoint_disable): check safe
705	  level as well as set_trace_func.
706
707	* vm_trace.c (set_trace_func, thread_{add,set}_trace_func_m): check
708	  safe level as well as 1.8.
709
710Tue Jan 29 16:49:19 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
711
712	* proc.c (rb_mod_method_arity): return original arity of the method if
713	  aliased because of visibility change, like as Method#arity.
714
715Tue Jan 29 12:05:18 2013  Tanaka Akira  <akr@fsij.org>
716
717	* test/ruby/test_marshal.rb: remove temporally files early.
718
719	* test/ruby/test_process.rb: ditto.
720
721	* test/psych/test_exception.rb: ditto.
722
723Tue Jan 29 09:26:20 2013  Shugo Maeda  <shugo@ruby-lang.org>
724
725	* ext/socket/socket.c (sock_s_pack_sockaddr_un): calculate the
726	  correct address length of an abstract socket.
727
728	* test/socket/test_unix.rb: related test.
729
730Mon Jan 28 18:02:16 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
731
732	* vm_backtrace.c (rb_debug_inspector_frame_{class,binding,iseq}_get):
733	  use long as index as well as RARRAY_LEN().
734
735Mon Jan 28 17:51:38 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
736
737	* test/ruby/envutil.rb (assert_separately): imply no core dump.
738
739Mon Jan 28 12:32:31 2013  Tanaka Akira  <akr@fsij.org>
740
741	* ext/fcntl/fcntl.c: update document.  use "file descriptor" instead
742	  of "file handle" because it is not used other Ruby documents and
743	  it is confusing with Windows file handle.
744	  correct F_DUPFD behavior.
745
746Sat Jan 26 22:39:12 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
747
748	* marshal.c (w_object): dump instance variables of the result of
749	  marshal_dump not the original object.  [ruby-core:51163] [Bug #7627]
750
751	* complex.c (nucomp_marshal_dump): need to copy instance variables.
752
753	* rational.c (nurat_marshal_dump): ditto.
754
755Sat Jan 26 13:35:56 2013  Eric Hodel  <drbrain@segment7.net>
756
757	* ext/fcntl/fcntl.c:  Document Fcntl constants
758
759Sat Jan 26 12:54:40 2013  Eric Hodel  <drbrain@segment7.net>
760
761	* hash.c (rb_env_size):  Restored documentation for ENV.size
762
763	* lib/drb/drb.rb:  Documented DRb::DRb#run.
764
765	* lib/erb.rb (class ERB):  Improved documentation of ERb.
766
767	* transcode.c:  Documented Encoding::Converter constants.
768
769Sat Jan 26 10:09:57 2013  Eric Hodel  <drbrain@segment7.net>
770
771	* lib/webrick/accesslog.rb:  Improved WEBrick documentation.
772	* lib/webrick/cgi.rb:  ditto.
773	* lib/webrick/config.rb:  ditto.
774	* lib/webrick/cookie.rb:  ditto.
775	* lib/webrick/httpauth/authenticator.rb:  ditto.
776	* lib/webrick/httpauth/basicauth.rb:  ditto.
777	* lib/webrick/httpauth/digestauth.rb:  ditto.
778	* lib/webrick/httpproxy.rb:  ditto.
779	* lib/webrick/httprequest.rb:  ditto.
780	* lib/webrick/httpresponse.rb:  ditto.
781	* lib/webrick/https.rb:  ditto.
782	* lib/webrick/httpserver.rb:  ditto.
783	* lib/webrick/httpservlet/cgihandler.rb:  ditto.
784	* lib/webrick/httpservlet/filehandler.rb:  ditto.
785	* lib/webrick/httpservlet/prochandler.rb:  ditto.
786	* lib/webrick/httputils.rb:  ditto.
787	* lib/webrick/httpversion.rb:  ditto.
788	* lib/webrick/log.rb:  ditto.
789	* lib/webrick/server.rb:  ditto.
790	* lib/webrick/ssl.rb:  ditto.
791	* lib/webrick/utils.rb:  ditto.
792	* lib/webrick/version.rb:  ditto.
793
794Sat Jan 26 08:29:33 2013  Shugo Maeda  <shugo@ruby-lang.org>
795
796	* ext/socket/raddrinfo (rsock_unix_sockaddr_len): renamed from
797	  rsock_unixpath_len, because it returns not the length of the path,
798	  but the length of a socket address for the path.
799
800Sat Jan 26 01:12:23 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
801
802	* test/ruby/test_io.rb (test_ioctl_linux): skip if a platform is
803	  not x86 because linux ioctl request number depend on cpu arch.
804	  At least, alpha, mips, sparc and ppc have a different number.
805	  [Bug #7718] [ruby-core:51544]
806
807Fri Jan 25 19:14:24 2013  Masaki Suketa <masaki.suketa@nifty.ne.jp>
808
809	* ext/win32ole/win32ole.c: use TlsAlloc instead of __declspec(thread)
810	  to avoid SEGV if win32ole.so loaded with LoadLibrary in Windows
811	  XP or earlier.
812
813Fri Jan 25 16:47:31 2013  Shugo Maeda  <shugo@ruby-lang.org>
814
815	* ext/socket/raddrinfo.c (rsock_unixpath_len, init_unix_addrinfo),
816	  ext/socket/unixsocket.c (unixsock_connect_internal,
817	  rsock_init_unixsock): calculate the correct address length of
818	  an abstract socket.  Without this fix, sizeof(struct sockaddr_un)
819	  is specified as the length of an abstract socket for bind(2) or
820	  connect(2), so the address of the socket is filled with extra NUL
821	  characters.  See unix(7) for details.
822
823	* ext/socket/lib/socket.rb (unix_server_socket): don't access the
824	  file system if the platform is Linux and path starts with NUL,
825	  which means that the socket is an abstract socket.
826
827	* test/socket/test_unix.rb: related test.
828
829Fri Jan 25 13:02:27 2013  Eric Hodel  <drbrain@segment7.net>
830
831	* lib/drb/drb.rb:  Updated documentation based on patch from Vincent
832	  Batts.  [ruby-trunk - Bug #7714]
833	* lib/drb/ssl.rb:  ditto.
834
835Fri Jan 25 12:23:29 2013  Eric Hodel  <drbrain@segment7.net>
836
837	* lib/drb/drb.rb:  Improved documentation by adding or hiding methods.
838	* lib/drb/eq.rb:  ditto.
839	* lib/drb/extserv.rb:  ditto.
840	* lib/drb/gw.rb:  ditto.
841	* lib/drb/invokemethod.rb:  ditto.
842	* lib/drb/observer.rb:  ditto.
843	* lib/drb/ssl.rb:  ditto.
844	* lib/drb/timeridconv.rb:  ditto.
845	* lib/drb/unix.rb:  ditto.
846
847	* sample/drb/gw_cu.rb:  Fixed bug in DRb gateway sample.
848
849Fri Jan 25 12:01:56 2013  Koichi Sasada  <ko1@atdot.net>
850
851	* vm_core.h: modify a comment about rb_iseq_t::local_size.
852	  A patch by davidbalbert (David Albert) [Bug #6750]
853
854Fri Jan 25 10:36:31 2013  Eric Hodel  <drbrain@segment7.net>
855
856	* lib/mkmf.rb:  Documented MakeMakefile constants.  Hide implementation
857	  details from RDoc
858
859Fri Jan 25 10:04:07 2013  Eric Hodel  <drbrain@segment7.net>
860
861	* lib/rubygems/compatibility.rb:  Hide compatibility shims from RDoc
862
863	* lib/rubygems/config_file.rb:  Hide RbConfig use from RDoc
864
865	* lib/rubygems/test_case.rb:  Added note to use realpath when 1.8
866	  support is dropped.
867
868Fri Jan 25 09:14:43 2013  Eric Hodel  <drbrain@segment7.net>
869
870	* lib/rdoc/generator/darkfish.rb:  Fixed debug message.  RDoc bug #174
871	  by Thomas Leitner.
872
873	* lib/rdoc/store.rb:  Fixed deletion of ri attribute data when a class
874	  was loaded then saved.  RDoc bug #171 by Thomas Leitner.
875	* test/rdoc/test_rdoc_store.rb:  Test for above.
876
877Thu Jan 24 19:55:25 2013  Shota Fukumori  <her@sorah.jp>
878
879	* NEWS (yaml): Write about bundled libyaml.
880
881Thu Jan 24 16:54:34 2013  Eric Hodel  <drbrain@segment7.net>
882
883	* doc/syntax/calling_methods.rdoc:  Added a Method Lookup section.
884	* doc/syntax/refinements.rdoc (Method Lookup):  Clarified that
885	  refinement methods are looked up in classes, not instances.
886
887Thu Jan 24 16:49:17 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
888
889	* enum.c (enum_zip): Fix error message
890
891	* array.c (take_items): Same, for Array#zip
892
893Thu Jan 24 16:47:26 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
894
895	* enumerator.c (lazy_zip): raise error for bad arguments
896	  [Bug #7706]
897
898Thu Jan 24 16:05:08 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
899
900	* enumerator.c: Optimize Lazy#zip when passed only arrays
901	  [Bug #7706]
902
903Thu Jan 24 15:21:17 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
904
905	* enumerator.c: Fix state handling for Lazy#zip,{drop_take}{_while}
906	  [bug #7696] [bug #7691]
907
908Thu Jan 24 11:43:47 2013  Narihiro Nakamura  <authornari@gmail.com>
909
910	* eval.c (f_current_dirname): Add documentation about "__dir__
911	  returns always an absolute path". [Bug #7729]
912
913Thu Jan 24 10:28:30 2013  Eric Hodel  <drbrain@segment7.net>
914
915	* NEWS (RDoc):  Added mention of page support and markdown support.
916
917Thu Jan 24 09:40:13 2013  Eric Hodel  <drbrain@segment7.net>
918
919	* doc/syntax/refinements.rdoc:  Added refinements document based on
920	  the specification from the wiki.
921	* doc/syntax.rdoc:  Added link to refinements document.
922
923Wed Jan 23 16:29:09 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
924
925	* win32/win32.c (rb_w32_spawn, rb_w32_aspawn_flags): fix missing
926	  initialization.  pointed out by phasis68 (Heesob Park) at
927	  [ruby-core:51579].  [Bug #7721]
928
929Wed Jan 23 16:18:04 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
930
931	* lib/mkmf.rb (MakeMakefile#try_constant): fix for large unsigned.
932
933	* lib/mkmf.rb (MakeMakefile#try_constant): fix for larger constants.
934
935	* test/mkmf/test_constant.rb: tests for try_constant.
936	  TODO: define check_constant and use it.
937
938Wed Jan 23 13:35:37 2013  Koichi Sasada  <ko1@atdot.net>
939
940	* thread_pthread.c (ruby_init_stack): ignore `STACK_END_ADDRESS'
941	  if Ruby interpreter is running on co-routine.
942	  [Feature #2294]
943	  https://bugs.ruby-lang.org/issues/2294#note-18
944
945Wed Jan 23 12:28:22 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
946
947	* win32/win32.c (rb_w32_spawn, rb_w32_aspawn_flags): check the results
948	  of acp_to_wstr() which can return NULL.  [ruby-core:51557] [Bug #7721]
949
950Wed Jan 23 10:40:49 2013  Eric Hodel  <drbrain@segment7.net>
951
952	* doc/syntax/assignment.rdoc (Implicit Array Assignment):  Clarify
953	  that "left-hand side" means "of the assignment".  Suggested by Jorge
954	  Dias.
955	* doc/syntax/assignment.rdoc (Multiple Assignment):  ditto.
956
957Wed Jan 23 10:34:47 2013  Eric Hodel  <drbrain@segment7.net>
958
959	* doc/syntax/assignment.rdoc (Local Variables and Methods):  Fixed
960	  example showing caching of a method's results into a local variable.
961	  Added not about using an explicit receiver to call a method that
962	  matches a local variable.  Suggested by markov_twain on twitter.
963
964Wed Jan 23 10:20:08 2013  Eric Hodel  <drbrain@segment7.net>
965
966	* lib/README:  Fixed typo.  Patch by Pradeep Sahoo.
967	  Fixes #240 on github
968
969Wed Jan 23 09:53:39 2013  Eric Hodel  <drbrain@segment7.net>
970
971	* lib/rdoc/servlet.rb:  Fixed display of site and home documentation.
972	  Fixes rdoc issue #170 by Thomas Leitner.
973	* test/rdoc/test_rdoc_servlet.rb:  Test for above.
974
975	* lib/rdoc/code_object.rb:  Split #initialize_visibility from
976	  #initialize for reuse when loading a stored object.
977	  Fixes rdoc issue #171 by Thomas Leitner.
978
979	* lib/rdoc/any_method.rb:  Initialize visibility for #display?  For
980	  rdoc issue #171
981	* lib/rdoc/attr.rb:  ditto.
982	* lib/rdoc/class_module.rb:  ditto.
983	* lib/rdoc/top_level.rb:  ditto.
984	* test/rdoc/test_rdoc_any_method.rb:  Test for above.
985	* test/rdoc/test_rdoc_attr.rb:  ditto.
986	* test/rdoc/test_rdoc_class_module.rb:  ditto.
987	* test/rdoc/test_rdoc_constant.rb:  ditto.
988	* test/rdoc/test_rdoc_top_level.rb:  ditto.
989
990Wed Jan 23 06:43:26 2013  Eric Hodel  <drbrain@segment7.net>
991
992	* lib/rubygems/test_case.rb:  Use Dir.tmpdir for rubygems tests instead
993	  of ./tmp/test.  Fixes [ruby-trunk - Bug #7717]
994
995Tue Jan 22 22:58:03 2013  Akinori MUSHA  <knu@iDaemons.org>
996
997	* misc/ruby-electric.el (ruby-electric-curlies): Fix the bug where
998	  an open curly inserted in a string is always replaced with a
999	  hash sign.
1000
1001Mon Jan 21 15:41:33 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1002
1003	* tool/mkconfig.rb: BASERUBY is transient at core build.
1004
1005Mon Jan 21 13:51:21 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1006
1007	* lib/mkmf.rb ($extmk): traverse parent directories for the case
1008	  srcdir is a symlink.
1009
1010Sun Jan 20 23:55:37 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1011
1012	* marshal.c (w_object, r_object0): separate respond_to checks and
1013	  calling, and get back to the old behavior for 2.0.  [Bug #7564]
1014
1015Sun Jan 20 22:24:28 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1016
1017	* tool/vpath.rb (VPath#def_options): hack for msys make, which
1018	  converts a command line argument to non-msys command seems like a
1019	  path list automagically.  [Bug #7710] [ruby-core:51489]
1020
1021Sat Jan 19 11:35:00 2013  Zachary Scott  <zachary@zacharyscott.net>
1022
1023	* struct.c (Struct.new): Document Struct.new with block
1024	  Patch by Hiroyuki Iwatsuki [Bug #7674]
1025
1026Sat Jan 19 09:52:46 2013  Eric Hodel  <drbrain@segment7.net>
1027
1028	* doc/syntax/miscellaneous.rdoc:  Added section on defined?
1029
1030Sat Jan 19 09:27:31 2013  Eric Hodel  <drbrain@segment7.net>
1031
1032	* doc/syntax/assignment.rdoc (Local Variables and Methods):  Made it
1033	  more clear that local variables are created by the parser, not
1034	  execution.  Thanks to John Hawthorn.
1035
1036Sat Jan 19 09:15:58 2013  Eric Hodel  <drbrain@segment7.net>
1037
1038	* doc/syntax/assignment.rdoc:  Improved links
1039	* doc/syntax/methods.rdoc:  ditto.
1040
1041	* doc/syntax.rdoc:  Added link to assignment document
1042
1043Sat Jan 19 08:47:33 2013  Eric Hodel  <drbrain@segment7.net>
1044
1045	* doc/syntax/assignment.rdoc:  Added a syntax document on assignment.
1046
1047Fri Jan 18 14:11:01 2013  Eric Hodel  <drbrain@segment7.net>
1048
1049	* doc/syntax/methods.rdoc:  Added Array Decomposition.
1050
1051Fri Jan 18 12:54:21 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1052
1053	* tool/rbinstall.rb (gem): Gem.ensure_gem_subdirectories makes
1054	  subdirectories group-writable, so make them with $dir_mode.
1055
1056Fri Jan 18 11:24:33 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1057
1058	* ext/win32ole/win32ole.c (ole_initialize): uninitialize OLE at thread
1059	  ends.  [Bug #2618] [ruby-core:27634]
1060
1061	* ext/win32ole/win32ole.c (ole_initialize): initialize OLE for each
1062	  threads.  [Bug #2618] [ruby-core:27634]
1063
1064Thu Jan 17 22:10:35 2013  Kouhei Sutou  <kou@cozmixng.org>
1065
1066	* lib/rubygems/ext/builder.rb (Gem::Ext::Builder.make): Remove
1067	  .time dependency from *.rb install target. It causes needless
1068	  *.rb install. [Bug #7698] [ruby-core:51437]
1069	  Reported by Tadashi Saito. Thanks!!!
1070	* test/rubygems/test_gem_installer.rb
1071	  (TestGemInstaller#test_install_extension_and_script): Add a test
1072	  for the above change.
1073
1074Thu Jan 17 21:08:20 2013  Kouhei Sutou  <kou@cozmixng.org>
1075
1076	* eval.c: Fix a typo in ruby_finalize() documentation.
1077
1078Thu Jan 17 20:28:18 2013  Benoit Daloze  <eregontp@gmail.com>
1079
1080	* object.c: Typo in Kernel#hash documentation.
1081	  Patch by zed_0xff [Github Fixes #237]
1082
1083Thu Jan 17 10:48:56 2013  Aaron Patterson <aaron@tenderlovemaking.com>
1084
1085	* ext/psych/lib/psych/scalar_scanner.rb: use constants rather than
1086	  calculating Inf and NaN.
1087
1088Thu Jan 17 10:21:05 2013  Eric Hodel  <drbrain@segment7.net>
1089
1090	* doc/syntax/miscellaneous.rdoc:  Added Ending an Expression and
1091	  indentation.
1092
1093Thu Jan 17 09:30:21 2013  Eric Hodel  <drbrain@segment7.net>
1094
1095	* lib/rubygems/installer.rb:  Untaint string when checking output
1096	  for $SAFE=1
1097
1098	* lib/rubygems/specification.rb:  Keep previously loaded specs as
1099	  active.  This prevents double loading when refreshing the gem list.
1100	* test/rubygems/test_gem.rb:  Test for above
1101
1102	* lib/rubygems.rb:  Bump version to 2.0.0.rc.2
1103
1104Thu Jan 17 09:08:37 2013  Eric Hodel  <drbrain@segment7.net>
1105
1106	* doc/syntax/control_expressions.rdoc:  Added ? : ternary if
1107
1108Thu Jan 17 08:36:04 2013  Eric Hodel  <drbrain@segment7.net>
1109
1110	* doc/syntax/miscellaneous.rdoc:  Added documentation for alias, undef,
1111	  BEGIN, END.
1112	* doc/syntax/modules_and_classes.rdoc (Constants):  Fixed unwrapped
1113	  paragraph with trailing whitespace.
1114	* doc/syntax/modules_and_classes.rdoc (Scope):  Added section pointing
1115	  to alias and undef documentation.
1116	* doc/syntax.rdoc:  Added link to miscellaneous section.
1117
1118Thu Jan 17 07:50:26 2013  Eric Hodel  <drbrain@segment7.net>
1119
1120	* doc/syntax/control_expressions.rdoc (Flip-Flop):  Added a section on
1121	  the flip-flop.
1122
1123Thu Jan 17 06:59:51 2013  Eric Hodel  <drbrain@segment7.net>
1124
1125	* doc/syntax/control_expressions.rdoc (if Expressions):  Fixed markup
1126	  error.  Fixes #235 on github by FlyingFoX.
1127
1128Thu Jan 17 06:53:58 2013  Eric Hodel  <drbrain@segment7.net>
1129
1130	* doc/syntax/literals.rdoc (Strings):  Fixed typo.  Fixes #236 on
1131	  github by Doug Yun.
1132
1133Wed Jan 16 18:45:46 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1134
1135	* ext/win32ole/lib/win32ole.rb: use TracePoint to hook all thread
1136	  creation not only by Thread.new and to get rid of interference with
1137	  svar scope.  [Bug #7681] [ruby-core:51365]
1138
1139Wed Jan 16 09:35:53 2013  Eric Hodel  <drbrain@segment7.net>
1140
1141	* .document:  Removed extra space
1142	* lib/irb/lc/.document:  Hide help-message
1143	* lib/minitest/.document:  Hide README.txt
1144	* lib/rake/lib/.document:  Hide project.rake
1145	* lib/rdoc/generator/template/json_index/.document:  Hide JavaScript
1146	  files
1147	* lib/rubygems/ssl_certs/.document:  Hide PEM files.
1148
1149Wed Jan 16 03:54:28 2013  Eric Hodel  <drbrain@segment7.net>
1150
1151	* doc/syntax/control_expressions.rdoc:  Omit optional "then" for if and
1152	  unless expressions.  Improved description of "a if a = 0.zero?"
1153	  NameError.  Note that "do" for for loop is optional.
1154
1155Wed Jan 16 03:28:47 2013  Eric Hodel  <drbrain@segment7.net>
1156
1157	* doc/syntax/calling_methods.rdoc:  Link to defining methods.
1158	* doc/syntax/methods.rdoc:  Link to calling methods, fixed typo.
1159
1160Wed Jan 16 03:15:00 2013  Eric Hodel  <drbrain@segment7.net>
1161
1162	* doc/syntax/methods.rdoc:  Fixed link
1163	* doc/syntax/modules_and_classes.rdoc:  Fixed link
1164	* doc/syntax.rdoc:  Updated with links to the recently added pages
1165
1166Wed Jan 16 03:05:50 2013  Eric Hodel  <drbrain@segment7.net>
1167
1168	* doc/syntax/control_expressions.rdoc (redo Statement):  Added note
1169	  about retry.
1170	* doc/syntax/exceptions.rdoc:  Added retry statement
1171
1172Tue Jan 15 23:12:34 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1173
1174	* tool/vpath.rb (VPath#list): default separator to PATH_SEPARATOR from
1175	  configure.in for make, not same name constant of File for use in ruby.
1176
1177Tue Jan 15 22:30:04 2013  Keiju Ishitsuka  <keiju@ishitsuka.com>
1178
1179	* lib/irb/ext/save-history.rb: identify rightly a status of a
1180	  history file that already exists [Bug #7694]. Thanks Nobuhiro IMAI
1181	  for this patch.
1182
1183Tue Jan 15 15:55:28 2013  Eric Hodel  <drbrain@segment7.net>
1184
1185	* doc/syntax/control_expressions.rdoc:  Added description of control
1186	  expressions in ruby.
1187
1188Tue Jan 15 13:33:00 2013  Eric Hodel  <drbrain@segment7.net>
1189
1190	* doc/syntax/methods.rdoc (Method Names):  Added method names including
1191	  operator methods.
1192	* doc/syntax/methods.rdoc (Return Values):  Added note that assignment
1193	  methods ignore return values.
1194	* doc/syntax/precedence.rdoc:  Added document describing precedence.
1195
1196Tue Jan 15 11:49:31 2013  Eric Hodel  <drbrain@segment7.net>
1197
1198	* doc/syntax/methods.rdoc (Block Argument):  Added section on block
1199	  argument.  Thanks to Andy Lindeman.
1200
1201Tue Jan 15 10:54:59 2013  Eric Hodel  <drbrain@segment7.net>
1202
1203	* doc/syntax/calling_methods.rdoc (Arguments):  Added improved
1204	  introduction to arguments including passing style and lazy
1205	  evaluation.  Thanks to Matt Aimonetti.
1206	* doc/syntax/calling_methods.rdoc (Positional Arguments):  Added
1207	  description for sending a message to a method with *arguments
1208	* doc/syntax/calling_methods.rdoc (Default Positional Arguments):
1209	  Added description.  Thanks to Andy Lindeman.
1210	* doc/syntax/calling_methods.rdoc (Block Local Arguments):
1211	  Added description of block locals.  Thanks to Justin Collins.
1212	* doc/syntax/calling_methods.rdoc (Hash to Keyword Arguments):  Added
1213	  section describing ** operator.  Thanks  to Justin Collins.
1214
1215Tue Jan 15 10:40:18 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
1216
1217	* test_lazy_enumerator: Test that map & flat_map also require a block
1218
1219Tue Jan 15 09:22:47 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
1220
1221	* thread_pthread.c (gvl_init): Reset gvl.wait_yield explicitly when
1222	  fork()ing. Patch by Apollon Oikonomopoulos. Thanks!
1223	  [Bug #7693][ruby-core:51424]
1224
1225Tue Jan 15 09:27:56 2013  Eric Hodel  <drbrain@segment7.net>
1226
1227	* doc/syntax/calling_methods.rdoc (Receiver):  Added :: as pointed out
1228	  by Tony Arcieri
1229	* doc/syntax/calling_methods.rdoc (Block Argument):  Fixed { } block
1230	  examples as pointed out by David Copeland.
1231
1232Tue Jan 15 09:10:29 2013  Eric Hodel  <drbrain@segment7.net>
1233
1234	* doc/syntax/methods.rdoc (Array/Hash Argument):  Moved above Keyword
1235	  Arguments
1236	* doc/syntax/methods.rdoc (Keyword Arguments):  Described ** for
1237	  gathering arbitrary keyword arguments.
1238
1239Tue Jan 15 08:56:37 2013  Eric Hodel  <drbrain@segment7.net>
1240
1241	* doc/syntax/calling_methods.rdoc:  Added document describing method
1242	  calls.
1243
1244Tue Jan 15 07:39:21 2013  Eric Hodel  <drbrain@segment7.net>
1245
1246	* lib/rdoc/top_level.rb:  Fixed extension trimming for page names in
1247	  RDoc HTML output.  [ruby-trunk - Bug #7673]
1248	* test/rdoc/test_rdoc_top_level.rb:  Test for above.
1249
1250Mon Jan 14 23:06:41 2013  Keiju Ishitsuka  <keiju@ishitsuka.com>
1251
1252	* lib/irb/ext/save-history.rb: outputs its history to
1253	  owner-only-readable file and change the permission of a file that
1254	  already exists [Bug #7694]. Thanks Nobuhiro IMAI for bug reports.
1255
1256Mon Jan 14 17:12:48 2013  Shugo Maeda  <shugo@ruby-lang.org>
1257
1258	* enumerator.c (lazy_flat_map_func): flat_map should call each only
1259	  when the value of a block returns a forcable object.
1260	  [ruby-core:51401] [Bug #7690]
1261
1262	* enumerator.c (lazy_flat_map): add documentation.
1263
1264	* test/ruby/test_lazy_enumerator.rb: related test.
1265
1266Mon Jan 14 16:42:28 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
1267
1268	* enumerator.c: Require block for Lazy#{take|drop}_while [Bug #7692]
1269
1270Mon Jan 14 14:41:00 2013  Kenta Murata  <mrkn@mrkn.jp>
1271
1272	* ext/bigdecimal/bigdecimal.c (BigDecimal_to_s): use CRuby style.
1273
1274Mon Jan 14 14:39:00 2013  Kenta Murata  <mrkn@mrkn.jp>
1275
1276	* ext/bigdecimal/bigdecimal.c: use `RB_TYPE_P(x, t)` instead of
1277	  `TYPE(x) == t`.
1278
1279Mon Jan 14 10:18:56 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
1280
1281	* enumerator.c: Fix size for Enumerator::Lazy#flat_map
1282
1283Mon Jan 14 07:12:52 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
1284
1285	* lib/matrix/lup_decomposition: Fix bugs with LUP Decomposition of
1286	  rectangular matrices. [rubyspec:ba849801a85]
1287
1288Mon Jan 14 06:46:53 2013  NARUSE, Yui  <naruse@ruby-lang.org>
1289
1290	* regparse.c (add_ctype_to_cc): don't check dup warn on adding
1291	  negative ctype to cclass. [Bug #7471] [ruby-core:50344]
1292
1293Mon Jan 14 06:06:03 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
1294
1295	* lib/matrix/eigenvalue_decomposition: Backport bugfix of Jama 1.0.3
1296	  [rubyspec:df87040be371]
1297
1298Sun Jan 13 16:45:00 2013  Zachary Scott <zachary@zacharyscott.net>
1299
1300	* ext/psych/yaml/scanner.c: Fix typos, patch by James Dabbs
1301	  [Github tenderlove/psych#118]
1302
1303Sun Jan 13 15:00:00 2013  Kenta Murata  <mrkn@mrkn.jp>
1304
1305	* ext/bigdecimal/bigdecimal.c (BigDecimal_sub):
1306	  need to specify precision for converting Rational and Float.
1307	  [ruby-dev:46544] [Bug #7404]
1308
1309	* ext/bigdecimal/bigdecimal.c (BigDecimal_mult): ditto.
1310
1311	* ext/bigdecimal/bigdecimal.c (BigDecimal_divide): ditto.
1312
1313	* ext/bigdecimal/bigdecimal.c (BigDecimal_DoDivmod): ditto.
1314
1315	* ext/bigdecimal/bigdecimal.c (BigDecimal_divremain): ditto.
1316
1317	* test/bigdecimal/test_bigdecimal.rb: add tests for the above fixes.
1318
1319Sun Jan 13 14:48:55 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
1320
1321	* lib/matrix/eigenvalue_decomposition: Fix eigensystem with complex
1322	  eigenvectors. Patch by pypypy567.
1323	  [Bug #7208] [ruby-dev:46251] [rubyspec:242f8e55bd]
1324
1325	* lib/matrix/lup_decomposition.rb: Fix error for rectangular matrices
1326	  [bug#7620] [ruby-core:51118] [rubyspec:41f833ee2]
1327
1328Sun Jan 13 14:06:00 2013  Zachary Scott  <zachary@zacharyscott.net>
1329
1330	* lib/irb.rb, lib/prime.rb: Typos in overview
1331	  Patch by Ershad K [Github Fixes #234]
1332
1333Sun Jan 13 13:40:00 2013  Zachary Scott  <zachary@zacharyscott.net>
1334
1335	* lib/open3.rb : Typo in Open3 overview. Patch by zed_0xff
1336	  [Github Fixes #233]
1337
1338Sat Jan 12 17:42:00 2013  Kenta Murata  <mrkn@cookpad.com>
1339
1340	* numeric.c (do_coerce): fix for the exceptions which the coerce
1341	  method raises.  The optimization done by r38756 is preserved.
1342	  [Bug #7645] [ruby-core:51213]
1343
1344Sat Jan 12 16:12:46 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1345
1346	* win32/setup.mak (-runtime-): see msvcrt from link header on mswin
1347	  instead of running testing executable file, for cross compiling.
1348
1349Sat Jan 12 08:58:47 2013  Aaron Patterson <aaron@tenderlovemaking.com>
1350
1351	* ext/psych/lib/psych/visitors/to_ruby.rb: merge key values that
1352	  contain something besides a hash should be left in tact.
1353
1354	* test/psych/test_merge_keys.rb: test for change
1355
1356Sat Jan 12 07:52:47 2013  Masaki Suketa <masaki.suketa@nifty.ne.jp>
1357
1358	* ext/win32ole/win32ole.c (ole_set_byref): support VT_UI8|VT_BYREF,
1359	  VT_I8|VT_BYREF in cygwin and mingw.
1360
1361	* ext/win32ole/win32ole.c (ole_variant2val): ditto.
1362
1363	* test/win32ole/test_win32ole_variant.rb (test_s_new_with_i8_byref):
1364	  ditto.
1365
1366	* test/win32ole/test_win32ole_variant.rb (test_s_new_with_ui8_byref):
1367	  ditto.
1368
1369Sat Jan 12 02:45:00 2013  Zachary Scott  <zachary@zacharyscott.net>
1370
1371	* man/ruby.1 (options): include --*-encoding from r38784
1372
1373Fri Jan 11 23:34:48 2013  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
1374
1375	* ruby.c (usage): sort --*-encoding in help. (same order of -E)
1376
1377Fri Jan 11 16:56:29 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1378
1379	* tool/mkconfig.rb: use configured libdir value to fix
1380	  --enable-load-relative on systems where libdir is not default value,
1381	  overridden in config.site files.  [ruby-core:47267] [Bug #6903]
1382
1383Fri Jan 11 11:59:32 2013  NARUSE, Yui  <naruse@ruby-lang.org>
1384
1385	* string.c (dispose_string): use rb_str_free for freeing string in
1386	  parse.y. by Sokolov Yura <funny.falcon@gmail.com>
1387	  https://github.com/ruby/ruby/pull/87 fix GH-87
1388
1389Fri Jan 11 09:56:22 2013  Shugo Maeda  <shugo@ruby-lang.org>
1390
1391	* insns.def (defineclass): private constants should not be accessed
1392	  by scoped module definitions.  The bug was introduced in r38495.
1393
1394	* test/ruby/test_module.rb: related test.
1395
1396Fri Jan 11 02:11:59 2013  Shugo Maeda  <shugo@ruby-lang.org>
1397
1398	* lib/rbconfig/obsolete.rb (respond_to_missing?): use send because
1399	  RbConfig.respond_to_missing? is now private.
1400
1401Thu Jan 10 22:00:58 2013  Koichi Sasada  <ko1@atdot.net>
1402
1403	* vm_core.h (VM_DEBUG_BP_CHECK): set 0 as default.
1404	  This flag specifies checking BP consistency on each frame popping.
1405	  Now, we don't have any trouble on it, so I remove it.
1406	  If you feel any bugs about VM execution, then set it to 1.
1407
1408Thu Jan 10 21:03:05 2013 TAKANO `takano32' Mitsuhiro <tak@no32.tk>
1409
1410	* cont.c: define FIBER_USE_NATIVE as 0 in ia64.
1411
1412Thu Jan 10 19:39:05 2013  TAKANO `takano32' Mitsuhiro <tak@no32.tk>
1413
1414	* thread.c: fix RB_GC_SAVE_MACHINE_REGISTER_STACK define for ia64.
1415
1416Thu Jan 10 17:45:39 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1417
1418	* Makefile.in, win32/Makefile.sub ($(MKFILES)): continue if Makefile
1419	  unchanged.
1420
1421Thu Jan 10 16:31:20 2013  Shugo Maeda  <shugo@ruby-lang.org>
1422
1423	* vm_insnhelper.c (vm_search_super_method): raise a TypeError
1424	  instead of a NotImplementedError if self is not an instance of the
1425	  current class.  [ruby-dev:39772] [Bug #2402]
1426
1427Thu Jan 10 16:47:18 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1428
1429	* ext/tk/extconf.rb (find_tcltk_header): use have_header instead of
1430	  try_cpp, which is incredibly slow with VC.
1431
1432Thu Jan 10 15:55:28 2013  Shugo Maeda  <shugo@ruby-lang.org>
1433
1434	* numeric.c (do_coerce): remove an unused variable.
1435
1436Thu Jan 10 15:35:55 2013  Shugo Maeda  <shugo@ruby-lang.org>
1437
1438	* tool/gen_dummy_probes.rb: remove comments in probes.d to fix the
1439	  compilation error introduced by r38755.
1440
1441Thu Jan 10 11:15:04 2013  Kenta Murata  <mrkn@cookpad.com>
1442
1443	* numeric.c (do_coerce): speed optimization by using rb_check_funcall
1444	  instead of rb_rescue + rb_funcall.
1445	  This fix is based on the patch by Benoit Daloze.
1446	  [Bug #7645] [ruby-core:51213]
1447
1448Thu Jan 10 11:15:04 2013  Aaron Patterson <aaron@tenderlovemaking.com>
1449
1450	* probes.d: updating probes to be more symmetrical, adding
1451	  documentation.
1452
1453	* load.c: ditto
1454
1455Thu Jan 10 04:23:07 2013  Aaron Patterson <aaron@tenderlovemaking.com>
1456
1457	* ext/psych/lib/psych/scalar_scanner.rb: strip trailing dots from
1458	  floats so that Float() will not raise an exception.
1459
1460	* test/psych/test_numeric.rb: test to ensure "1." can be loaded
1461
1462	* test/psych/test_string.rb: make sure "1." can round trip
1463
1464Thu Jan 10 03:38:40 2013  Aaron Patterson <aaron@tenderlovemaking.com>
1465
1466	* ext/psych/lib/psych/visitors/yaml_tree.rb: ascii only binary strings
1467	  will be dumped as unicode.  Thanks Paul Kunysch!
1468
1469	* test/psych/test_string.rb: appropriate test
1470
1471Thu Jan 10 03:29:55 2013  Koichi Sasada  <ko1@atdot.net>
1472
1473	* compile.c (compile_array_): modify wrong optimization.
1474	  A script "[print(1)]; print(2)" should output "12".
1475	  However, the compiler had eliminated "[print(1)]" expression
1476	  because it is void expression (unused array).
1477	  Of course, side-effect should be remained.
1478	  This issue is reported by Masaya Tarui.
1479
1480	* bootstraptest/test_literal.rb: add a test.
1481
1482Wed Jan  9 22:07:42 2013  Masaki Matsushita  <glass.saga@gmail.com>
1483
1484	* load.c (load_lock): if thread shield is destroyed and there is no
1485	  waiting thread, insert new thread shield into load_table.
1486	  [Bug #7530] [ruby-core:50645]
1487
1488Wed Jan  9 21:43:32 2013  Masaki Matsushita  <glass.saga@gmail.com>
1489
1490	* load.c (load_lock): revert r38744. it should acquire new thread
1491	  shield.
1492
1493Wed Jan  9 15:40:18 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1494
1495	* vm.c (th_init, ruby_thread_init): initialize root_svar with Qnil,
1496	  since lep_svar_place() expects uninitialized svar to be nil, not 0.
1497
1498Wed Jan  9 13:20:23 2013  Masaki Matsushita  <glass.saga@gmail.com>
1499
1500	* test/ruby/test_require.rb: improve test for r38744.
1501	  fix to use Tempfile instead of temporary file in current directory.
1502	  the patch is from nobu (Nobuyoshi Nakada).
1503
1504Wed Jan  9 09:53:23 2013  Masaki Matsushita  <glass.saga@gmail.com>
1505
1506	* load.c (load_lock): fix not to delete thread shield twice.
1507	  it may break the shield locked by another thread.
1508	  [Bug #7530] [ruby-core:50645]
1509
1510	* test/ruby/test_require.rb: a test for above.
1511
1512Wed Jan  9 02:13:22 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1513
1514	* include/ruby/ruby.h (RBasic): to be aligned on a VALUE size
1515	  boundary.  [Bug #7647]
1516
1517Tue Jan  8 14:41:41 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1518
1519	* vm_core.h (rb_iseq_t): move flip_cnt from struct iseq_compile_data,
1520	  because it has same life span as enclosing iseq.  [Bug #7671]
1521	  [ruby-core:51296]
1522
1523Mon Jan  7 23:43:00 2013  Kenta Murata  <mrkn@mrkn.jp>
1524
1525	* ext/bigdecimal/bigdecimal.c (rmpd_power_by_big_decimal):
1526	  add RB_GC_GUARD to prevent the intermediate object is GCed too early.
1527	  This patch was made by Yusuke Endoh.  [Bug #7044] [ruby-core:47632]
1528
1529	* test/bigdecimal/test_bigdecimal.rb: add a reproduction test for
1530	  the issue [Bug #7044]
1531
1532Mon Jan  7 21:40:36 2013  Shugo Maeda  <shugo@ruby-lang.org>
1533
1534	* vm_method.c (Init_eval_method): main.public and main.private
1535	  should be private.
1536
1537	* proc.c (Init_Proc): main.define_method should be private.
1538
1539	* test/ruby/test_module.rb: related test.
1540
1541Mon Jan  7 20:48:47 2013  Shugo Maeda  <shugo@ruby-lang.org>
1542
1543	* eval.c (Init_eval): main.include should be private.
1544	  [ruby-core:51293] [Bug #7670]
1545
1546	* test/ruby/test_module.rb (test_top_include_is_private): a new test
1547	  for the above change.
1548
1549Mon Jan  7 20:29:50 2013  Shugo Maeda  <shugo@ruby-lang.org>
1550
1551	* NEWS: remove description about `require "refinement"'.
1552
1553Mon Jan  7 20:15:49 2013  Shugo Maeda  <shugo@ruby-lang.org>
1554
1555	* eval.c (Init_eval): enable Refinements by default.
1556	  [ruby-core:51286] [Bug #7667]
1557
1558	* eval.c (rb_mod_refine, top_using): show a warning when
1559	  Module#refine or main.using is called at the first time.
1560
1561	* ext/refinement/*: removed the extension library "refinement".
1562
1563	* test/ruby/test_refinement.rb: fix for the above changes.
1564
1565Mon Jan  7 17:34:22 2013  Koichi Sasada  <ko1@atdot.net>
1566
1567	* include/ruby/ruby.h (RUBY_EVENT_SPECIFIED_LINE): make it special.
1568	  This flag is not contained by RUBY_EVENT_TRACEPOINT_ALL.
1569	  This event is experimental one. It is possible to remove/rename
1570	  flag name after 2.0.1.
1571
1572	* vm_trace.c (get_event_id): return :line if SPECIFIED_LINE was
1573	  occurred. `:specified_line' never been returned.
1574
1575Mon Jan  7 15:42:10 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1576
1577	* parse.y (f_kwrest): allow bare kwrest_mark as valid syntax.  its
1578	  semantics is still undefined.  [Bug #7662] [ruby-core:51269]
1579
1580Mon Jan  7 15:31:58 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1581
1582	* parse.y (f_kwrest): reject duplicated kwrest argument name.
1583
1584Mon Jan  7 15:24:10 2013  Koichi Sasada  <ko1@atdot.net>
1585
1586	* vm_trace.c (rb_threadptr_exec_event_hooks_orig): pop tag before
1587	  JUMP_TAG() if frame is `finish' frame.
1588	  Without this patch, there is an inconsistency between control
1589	  frame stack and tags stack.
1590	  [Bug #7668]
1591
1592	* test/ruby/test_settracefunc.rb: add a test for above.
1593
1594Mon Jan  7 15:21:48 2013  NAKAMURA Usaku  <usa@ruby-lang.org>
1595
1596	* Makefile.in, common.mk (fake, yes-fake, no-make): these dependencies
1597	  are not platform dependent.
1598
1599	* win32/Makefile.sub ($(arch)-fake.rb): workaround.
1600
1601Mon Jan  7 12:09:24 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1602
1603	* vm_insnhelper.c (vm_callee_setup_arg_complex, vm_yield_setup_block_args):
1604	  set keyrest hash after making rest array, so that the last element
1605	  will not be overwritten.  [ruby-core:51278] [Bug #7665]
1606
1607Mon Jan  7 09:37:24 2013  Koichi Sasada  <ko1@atdot.net>
1608
1609	* NEWS: add a NEWS entry about RubyVM.
1610
1611Sun Jan  6 19:06:57 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
1612
1613	* win32/Makefile.sub: Fix build with VC.
1614	  Patch by Charlie Savage. Fixes [ruby-core:51261]
1615
1616Sun Jan  6 18:43:48 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
1617
1618	* bootstraptest/test_io.rb: add a test for [ruby-dev:46834].
1619
1620	* io.c (rb_cloexec_fcntl_dupfd) Use an emulation with dup(2) when
1621	  fcntl(2) and/or F_DUPFD is unavailable.
1622	  Suggested by akr.
1623
1624	* configure.in (HAVE_FCNTL): NativeClient does not provide fcntl(2).
1625
1626Sun Jan  6 11:11:26 2013  Eric Hodel  <drbrain@segment7.net>
1627
1628	* doc/syntax/modules_and_classes.rdoc:  Fixed typo.
1629
1630Sun Jan  6 05:35:18 2013  Eric Hodel  <drbrain@segment7.net>
1631
1632	* doc/syntax/modules_and_classes.rdoc:  Added singleton classes
1633	  documentation.
1634
1635Sun Jan  6 02:22:00 2013  Zachary Scott  <zachary@zacharyscott.net>
1636
1637	* lib/webrick/httpservlet/abstract.rb (WEBrick::HTTPServlet): Typo in
1638	  example. Patch by shlensky [Fixes #232 on github]
1639
1640Sat Jan  5 21:15:10 2013  NARUSE, Yui  <naruse@ruby-lang.org>
1641
1642	* lib/net/http/generic_request.rb:
1643	  Amazon ECA API and GTE/1.3 disallow requests whose host has port
1644	  number if its port number equals to default port number of the
1645	  scheme. [Bug #7650]
1646
1647Sat Jan  5 13:58:59 2013  Eric Hodel  <drbrain@segment7.net>
1648
1649	* doc/syntax/modules_and_classes.rdoc:  Improved description of methods
1650	  on a module or class as suggested by Tobias Buhlmann
1651
1652Sat Jan  5 13:38:07 2013  Masaki Matsushita  <glass.saga@gmail.com>
1653
1654	* string.c (rb_str_enumerate_lines): fix invalid byte sequence error
1655	  when a separator is passed. The patch is from yoshidam (Yoshida
1656	  Masato).
1657	  [Bug #7646] [ruby-dev:46827]
1658
1659	* test/ruby/test_string.rb: a test for above.
1660
1661Sat Jan  5 12:25:42 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1662
1663	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_in_out_err):
1664	  check stdout and stderr both.
1665
1666Sat Jan  5 10:21:54 2013  Eric Hodel  <drbrain@segment7.net>
1667
1668	* doc/syntax/modules_and_classes.rdoc:  Added documentation of syntax
1669	  for Modules and Classes.
1670	* doc/syntax/methods.rdoc:  Moved some text to the Modules and
1671	  Classes syntax document.
1672
1673Sat Jan  5 08:38:27 2013  Eric Hodel  <drbrain@segment7.net>
1674
1675	* doc/syntax/methods.rdoc:  Added return values and scope sections,
1676	  slightly modified from the original patch.  Fixes #227 from github by
1677	  Dave Brown.
1678
1679Sat Jan  5 08:21:41 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
1680
1681	* io.c (rb_cloexec_fcntl_dupfd): improve #ifdef condition.
1682	* io.c (rb_maygvl_fd_fix_cloexec): ditto.
1683
1684Sat Jan  5 07:54:59 2013  Eric Hodel  <drbrain@segment7.net>
1685
1686	* lib/rubygems/commands/cleanup_command.rb:  Clean all possible gems
1687	  using multiple passes.  Fixes RubyGems bug #422.  Refactored for
1688	  maintainability.
1689	* test/rubygems/test_gem_commands_cleanup_command.rb:  Test for above.
1690
1691Sat Jan  5 05:04:39 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
1692
1693	* gc.c (vm_xrealloc): add a few comment why we avoid realloc(ptr,0).
1694
1695Fri Jan  4 20:17:06 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
1696
1697	* Makefile.in (RBCONFIG): Moved from common.mk in order to use the
1698	  variable in Makefile.in.
1699
1700	* win32/Makefile.sub (RBCONFIG): Ditto.
1701
1702Fri Jan  4 19:45:50 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
1703
1704	* common.mk (run, parse): Use BTESTRUBY instead of MINIRUBY to handle
1705	  cross-compiling cases, e.g. NativeClient.
1706
1707Fri Jan  4 17:58:16 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
1708
1709	* common.mk (yes-btest): btest depends on also $(arch)-fake.rb and
1710	  rbconfig.rb on building for NativeClient.
1711
1712	* Makefile.in (fake): Avoid generating $(arch)-fake.rb unless cross
1713	  compiling.
1714
1715	* configure.in (CROSS_COMPILING): New substitution.
1716
1717Fri Jan  4 16:26:45 2013  Eric Hodel  <drbrain@segment7.net>
1718
1719	* lib/rubygems/doctor.rb:  Process directories in order in case the
1720	  filesystem doesn't.  [ruby-trunk - Bug #7618]
1721
1722	  Process specifications before other directories in case of bugs.
1723	* test/rubygems/test_gem_doctor.rb:  Test for above.
1724
1725	* lib/rubygems.rb:  Updated version.
1726
1727	* test/rubygems/test_require.rb:  Fixed double require of
1728	  benchmark.rb.  RubyGems bug #420.
1729
1730	* test/rubygems/test_gem_commands_check_command.rb:  Fixed unused
1731	  variable warnings.
1732	* test/rubygems/test_gem_commands_query_command.rb:  ditto
1733	* test/rubygems/test_gem_installer.rb:  ditto
1734
1735Fri Jan  4 15:05:25 2013  Eric Hodel  <drbrain@segment7.net>
1736
1737	* lib/rdoc/cross_reference.rb:  Fixed matching of C#=== or #===.  RDoc
1738	  bug #164
1739	* test/rdoc/test_rdoc_cross_reference.rb:  Test for above.
1740
1741	* lib/rdoc/parser/changelog.rb:  Fixed parsing of dates.  RDoc bug #165
1742	* test/rdoc/test_rdoc_parser_changelog.rb:  Test for above.
1743
1744	* lib/rdoc/parser.rb:  Fixed parsing multibyte files with incomplete
1745	  characters at byte 1024.  [ruby-trunk - Bug #6393]
1746	  Fixed handling of -E.  [ruby-trunk - Bug #6392]
1747	* test/rdoc/test_rdoc_options.rb:  Test for above.
1748	* test/rdoc/test_rdoc_parser.rb:  ditto.
1749	* test/rdoc/test_rdoc_parser_c.rb:  ditto.
1750	* test/rdoc/test_rdoc_parser_changelog.rb:  ditto.
1751	* test/rdoc/test_rdoc_parser_markdown.rb:  ditto.
1752	* test/rdoc/test_rdoc_parser_rd.rb:  ditto.
1753	* test/rdoc/test_rdoc_rdoc.rb:  ditto.
1754
1755	* lib/rdoc/tom_doc.rb:  Fixed parsing of [] in TomDoc arguments list.
1756	  RDoc bug #167
1757	* test/rdoc/test_rdoc_tom_doc.rb:  Test for above.
1758
1759	* lib/rdoc.rb:  Update version.
1760
1761Fri Jan  4 11:51:00 2013  Zachary Scott  <zachary@zacharyscott.net>
1762
1763	* lib/forwardable.rb: Fix rdoc parameters for ::def_single_delegator.
1764	  Patch by Vladimir Andrijevik [Github Fixes #230]
1765
1766Fri Jan  4 00:35:11 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
1767
1768	Fix failures on btest for NativeClient.
1769	* bootstraptest/runner.rb (nacl?): New method to distinguish NaCl
1770	  cross build.
1771
1772	* bootstraptest/test_io.rb: Skip unsupported operations.
1773
1774	* bootstraptest/test_literal.rb: ditto.
1775
1776Fri Jan  4 00:29:40 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
1777
1778	* io.c (rb_cloexec_fcntl_dupfd): Fix failures in
1779	  bootstrap_test/test_io.rb.  NativeClient does not support F_DUPFD
1780	  but supports dup2(2).
1781
1782Thu Jan  3 17:46:50 2013  Kouhei Sutou  <kou@cozmixng.org>
1783
1784	* lib/rexml/element.rb (REXML::Elements#add): Remove too much
1785	  "elements" in document. Sorry...
1786
1787Thu Jan  3 17:42:32 2013  Kouhei Sutou  <kou@cozmixng.org>
1788
1789	* lib/rexml/element.rb (REXML::Elements#each): Add missing
1790	  "elements" in document. [ruby-talk:402713]
1791	  Reported by Wesley Rishel. Thanks!!!
1792
1793Thu Jan  3 15:13:00 2013  Zachary Scott  <zachary@zacharyscott.net>
1794
1795	* ext/psych/lib/psych.rb (Psych.load): Return value of
1796	  Psych::SyntaxError.message should be same as example.
1797	  Patch by Ippei Obayashi [ruby-core:51193] [Bug #7636]
1798
1799Thu Jan  3 14:58:00 2013  Zachary Scott  <zachary@zacharyscott.net>
1800
1801	* lib/forwardable.rb (SingleForwardable): Fix example in overview
1802	  Patch by Vladimir Andrijevik [Github Fixes #231]
1803
1804Thu Jan  3 14:32:47 2013  Yuki Yugui Sonoda  <yugui@yugui.jp>
1805
1806	* configure.in (OBJCOPY):  Fixes build error for NativeClient.
1807	  Avoid disabling OBJCOPY for NativeClient.
1808
1809	* thread_pthread.c (rb_reserved_fd_p): USE_SLEEPY_TIMER_THREAD is
1810	  always defined.  Fixes compilation error for NativeClient.
1811
1812Wed Jan 02 03:09:00 2013  Zachary Scott  <zachary@zacharyscott.net>
1813
1814	* ext/zlib/zlib.c (Zlib::GzipReader): Fix typo by zed_0xff
1815	  [Fixes Github #229]
1816
1817Wed Jan 02 02:29:00 2013  Zachary Scott  <zachary@zacharyscott.net>
1818
1819	* hash.c (rb_hash_update): Revert documentation from r38672
1820	  See: https://github.com/ruby/ruby/pull/228#issuecomment-11791013
1821
1822Wed Jan 02 02:16:00 2013  Zachary Scott  <zachary@zacharyscott.net>
1823
1824	* hash.c (rb_hash_update): Documentation for Hash#merge and shallow
1825	  copies Patch by Yorick Peterse [Fixes Github #228]
1826
1827Mon Dec 31 15:10:00 2012  Zachary Scott  <zachary@zacharyscott.net>
1828
1829	* vm_backtrace.c: Add documentation for Kernel#caller_locations,
1830	  Kernel#caller, and Thread::Backtrace::Location
1831
1832Mon Dec 31 13:05:00 2012  Zachary Scott  <zachary@zacharyscott.net>
1833
1834	* test/ruby/test_backtrace.rb: Add test for r37957 [Feature #7434]
1835
1836Sun Dec 30 23:33:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1837
1838	* parse.y (simple_re_meta): escaped closing parenthesis has different
1839	  meaning.  [Bug #7610] [ruby-core:51088]
1840
1841Sun Dec 30 12:09:47 2012  Charlie Somerville  <charlie@charliesomerville.com>
1842
1843	* configure.in: use 4 argument form of AC_CHECK_HEADERS to force
1844	  autoconf to use compiler's result
1845
1846Sun Dec 30 10:58:04 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
1847
1848	* test/ruby/test_keyword.rb: add a test for passing hash
1849	  as a last argument. [ruby-dev:46712] [Bug #7529]
1850
1851Sun Dec 30 10:51:29 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
1852
1853	* vm_insnhelper.c: set keyword hash on Proc/block calls.
1854	  [ruby-core:51172] [Bug #7630]
1855
1856	* test/ruby/test_keyword.rb: add tests for above.
1857
1858Sat Dec 29 21:57:11 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
1859
1860	* lib/irb/completion.rb: treat rightly completion for symbol on irb
1861	  [Bug #7632].
1862
1863Sat Dec 29 21:51:30 2012  Shugo Maeda  <shugo@ruby-lang.org>
1864
1865	* ext/curses/curses.c (window_cury, window_curx, window_maxy,
1866	  window_maxx, window_begy, window_begx): use RB_UNUSED_VAR()
1867	  to suppress unused-but-set-variable warnings.
1868
1869Sat Dec 29 16:45:00 2012  Zachary Scott  <zachary@zacharyscott.net>
1870
1871	* iseq.c (RubyVM::InstructionSequence): rdoc formatting
1872
1873Sat Dec 29 15:28:00 2012  Zachary Scott  <zachary@zacharyscott.net>
1874
1875	* iseq.c (RubyVM::InstructionSequence):	Add rdoc for new iseq features
1876	  added from r38085, this includes ::of, #path, #absolute_path,
1877	  #label, #base_label, #first_lineno, and #inspect
1878
1879Sat Dec 29 14:06:00 2012  Zachary Scott  <zachary@zacharyscott.net>
1880
1881	* iseq.c (rb_iseq_line_trace_all, rb_iseq_line_trace_specify): Add
1882	  rdoc for experimental C level api of iseq, from r38076
1883
1884Sat Dec 29 11:37:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1885
1886	* object.c (rb_obj_clone): attach clone to its singleton class during
1887	  cloning singleton class so that singleton_method_added will be called
1888	  on it.  based on the patch by shiba (satoshi shiba)[Bug #5283] in
1889	  [ruby-dev:44477].  [Bug #5283]
1890
1891Sat Dec 29 10:10:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1892
1893	* configure.in (crt_externs.h): use standard macro AC_CHECK_HEADERS.
1894
1895Fri Dec 28 23:12:44 2012  Charlie Somerville  <charlie@charliesomerville.com>
1896
1897	* configure.in: check for the whether crt_externs.h is present when compiling
1898	  for darwin (this header is missing in the iOS SDK)
1899	* eval_intern.h: check HAVE_CRT_EXTERNS_H before including crt_externs.h, if
1900	  not defined, include missing/crt_externs.h instead
1901	* hash.c: ditto
1902	* missing/setproctitle.c: ditto
1903	* missing/crt_externs.h: declare _NSGetEnviron() function and define environ
1904	  for iOS
1905
1906Fri Dec 28 21:40:36 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
1907
1908	* lib/irb/context.rb: IRB::Context#new: Check from JobManager
1909	  inside IRB namespace [Bug #7628]. Thanks rafaelfranca for bug
1910	  report and its patch.
1911
1912Fri Dec 28 17:06:17 2012  Akinori MUSHA  <knu@iDaemons.org>
1913
1914	* misc/ruby-electric.el (ruby-electric-curlies): Automatically
1915	  indent closing curly brackets when
1916	  ruby-electric-newline-before-closing-bracket is true.
1917
1918Fri Dec 28 11:50:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1919
1920	* vm_insnhelper.c (vm_yield_setup_block_args): pass single argument to
1921	  single optional parameter unchanged without splatting.  [Bug #7621]
1922	  [ruby-dev:46801]
1923
1924Fri Dec 28 11:17:47 2012  Shugo Maeda  <shugo@ruby-lang.org>
1925
1926	* proc.c (method_eq): fix the documentation to refer to owner.
1927	  [ruby-core:51105] [Bug #7613]
1928
1929	* test/ruby/test_method.rb (test_alias_onwer): new test to confirm
1930	  that `a == b' returns false if owners of a and b are different.
1931
1932Fri Dec 28 07:07:43 2012  NARUSE, Yui  <naruse@ruby-lang.org>
1933
1934	* def/id.def: use split(/^/) instead of String#lines to support
1935	  Ruby 1.8.5 as BASERUBY.
1936
1937Thu Dec 27 21:56:56 2012  NARUSE, Yui  <naruse@ruby-lang.org>
1938
1939	* variable.c (rb_mod_remove_const): fix segv caused by r38558.
1940
1941Tue Dec 28 01:13:48 2012  James Edward Gray II  <james@graysoftinc.com>
1942
1943	* lib/csv.rb: Added more Hash methods to CSV::Row.
1944
1945Thu Dec 27 23:27:15 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
1946
1947	* lib/irb/ruby-lex.rb: make lex_state to EXPR_END when next token
1948	  is an operator after SYMBEG [Bug #6378].
1949
1950Thu Dec 27 21:30:21 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
1951
1952	* lib/irb/ruby-lex.rb: allow to handle recursive heredocs on
1953	  irb[Bug #5648].
1954
1955Thu Dec 27 20:45:29 2012  Masaki Matsushita  <glass.saga@gmail.com>
1956
1957	* ext/stringio/stringio.c (strio_getline): fix not to raise TypeError
1958	  when limit is nil.
1959	  [Bug #7232] [ruby-core:48531]
1960
1961	* test/stringio/test_stringio.rb: a test for above.
1962
1963Thu Dec 27 21:08:23 2012  Charlie Somerville  <charlie@charliesomerville.com>
1964
1965	* vm_core.h (VM_DEFINECLASS_TYPE): explicit cast to enum type to avoid 64->32
1966	  shorten warning
1967
1968Thu Dec 27 20:11:29 2012  Masaki Matsushita  <glass.saga@gmail.com>
1969
1970	* ext/stringio/stringio.c (strio_ungetc): raise IOError instead of RuntimeError
1971	  if the string is frozen.
1972	  [Bug #7231] [ruby-core:48530]
1973
1974	* ext/stringio/stringio.c (strio_ungetbyte): ditto.
1975
1976	* test/stringio/test_stringio.rb: a test for above.
1977
1978Wed Dec 26 23:55:18 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
1979
1980	* lib/irb/context.rb: fix IRB::Inspector#keys_with_inspector [Bug #7598]
1981
1982Wed Dec 26 23:26:15 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
1983
1984	* lib/irb/context.rb: IRB::Context#use_readline= has been obsolete
1985	  [Bug #6339].
1986
1987Wed Dec 26 21:32:46 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
1988
1989	* lib/irb/context.rb: make a correct prompt from
1990	  IRB.conf[:IRB_NAME] on irb [Bug #6338]. Patched by sho-h.
1991
1992Wed Dec 26 21:09:19 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
1993
1994	* lib/irb/ext/math-mode.rb: make not able to change math-mode
1995	  after irb starting [Bug #6302]. Patched by sho-h.
1996
1997Wed Dec 26 12:52:36 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
1998
1999	* lib/irb/init.rb: change default debug level for
2000	  irb[ruby-dev:46805], [Bug #6301].
2001
2002Wed Dec 26 11:54:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2003
2004	* configure.in: enable -fPIE when checking -pie for fixing
2005	  OpenBSD build error. Patch by George Koehler. Thank you!
2006	  [Bug #7606] [ruby-core:51082]
2007
2008Wed Dec 26 07:31:24 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2009
2010	* string.c (rb_enc_cr_str_copy_for_substr): empty string is always
2011	  valid or 7bit.
2012
2013	* string.c (rb_str_enumerate_lines, rb_str_chop): reduce duplicated
2014	  code.
2015
2016	* string.c (rb_str_enumerate_chars): prevent shared copy from GC.
2017
2018Wed Dec 26 01:31:16 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
2019
2020	* lib/irb/init.rb, lib/irb/context.rb: fix conf.debug_level=
2021	  [Bug #6301] and fix irb command option: -- irb_debug_level for irb.
2022
2023Wed Dec 26 00:59:18 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
2024
2025	* lib/irb/ruby-lex.rb: improve RubyLex performance for large files
2026	  [Bug #5202]. Patch by ryanmelt.
2027
2028Tue Dec 25 22:21:06 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
2029
2030	* lib/irb/output-method.rb: raise right exception when
2031	  IRB::OutputMethod#print don't defined [Bug #6657].
2032
2033Tue Dec 25 22:06:33 2012  Koichi Sasada  <ko1@atdot.net>
2034
2035	* vm_trace.c (rb_threadptr_exec_event_hooks_and_pop_frame):
2036	  pop a frame before JUMP_TAG() if exception occurred.
2037	  This change fix bug of Ruby 1.9.
2038	  [ruby-core:51128] [ruby-trunk - Bug #7624]
2039
2040	* vm_core.h (EXEC_EVENT_HOOK_AND_POP_FRAME): add to use
2041	  `rb_threadptr_exec_event_hooks_and_pop_frame()'.
2042
2043	* vm.c (vm_exec): use EXEC_EVENT_HOOK_AND_POP_FRAME() while
2044	  exception handling. While exception handling, if an exception
2045	  is raised in hooks, need to pop current frame and raise this
2046	  raised exception by hook.
2047
2048	* test/ruby/test_settracefunc.rb: add a test.
2049
2050Tue Dec 25 21:08:53 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
2051
2052	* lib/irb/init.rb, lib/irb/lc/ja/error.rb, lib/irb/lc/error.rb:
2053	  raise exception when illegal RC_NAME_GENERATOR defined [Bug #6455].
2054
2055Tue Dec 25 19:22:17 2012  Keiju Ishitsuka  <keiju@ishitsuka.com>
2056
2057	* lib/irb/workspace.rb: define method to private on top-level irb
2058	  [Bug #5776]. Patch by davidbalbert.
2059
2060Tue Dec 25 19:09:51 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
2061
2062	* bignum.c, include/ruby/intern.h (rb_big_eql): exported.
2063
2064	* thread.c (recursive_check): object_id maybe a Bignum, not Fixnum on
2065	  LLP64.  see also r38493 and r38548.
2066	  reported by Heesob Park at [ruby-core:51083] [Bug #7607], and patched
2067	  by shirosaki at [ruby-core:51095]
2068
2069Tue Dec 25 18:53:35 2012  Koichi Sasada  <ko1@atdot.net>
2070
2071	* vm_core.h, eval_intern.h (CHECK_STACK_OVERFLOW): move
2072	  CHECK_STACK_OVERFLOW() to vm_core.h and rename to
2073	  CHECK_VM_STACK_OVERFLOW().
2074	  This change is only move and rename.
2075
2076	* tool/instruction.rb: catch up above changes.
2077
2078	* vm.c, vm_insnhelper.c: ditto.
2079
2080	* vm_insnhelper.c (vm_stackoverflow): add a function to unify
2081	  raising vm stackoverflow exception.
2082
2083Tue Dec 25 16:16:54 2012  Koichi Sasada  <ko1@atdot.net>
2084
2085	* vm_core.h (RUBY_VM_THREAD_VM_STACK_SIZE): change default
2086	  VM stack size (128 KB or  256 KB -> 512 KB or 1024 KB).
2087	  This re-sizing corrects smaller value introduced at r38478.
2088	  Newer value is same VM stack size of Ruby 1.9.
2089	  [ruby-dev:46797] [ruby-trunk - Bug #7603]
2090
2091Tue Dec 25 13:38:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2092
2093	* error.c (compile_err_append, compile_warn_print, warn_print): use
2094	  rb_write_error_str() instead of writing to rb_stderr directly.
2095
2096	* io.c (rb_write_error_str): a stopgap measure not to unblock GVL.
2097	  warning from require seems to still have race condition errors.
2098
2099Tue Dec 25 00:59:29 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2100
2101	* node.h (NODE_OP_CDECL), compile.c (iseq_compile_each),
2102	  parse.y (stmt, arg): allow scoped constant op-assignment.
2103	  [ruby-core:40154] [Bug #5449]
2104
2105Mon Dec 24 04:56:48 2012  NARUSE, Yui  <naruse@ruby-lang.org>
2106
2107	* lib/net/http/generic_request.rb (Net::HTTPGenericRequest):
2108	  set content-length to zero on empty post requests
2109	  by Gregory Ostermayr <gregory.ostermayr@gmail.com>
2110	  https://github.com/ruby/ruby/pull/201 fix GH-201
2111
2112Sun Dec 23 19:09:16 2012  Koichi Sasada  <ko1@atdot.net>
2113
2114	* thread.c: rename methods:
2115	    from Thread.async_interrupt_timing to Thread.handle_interrupt,
2116	    from Thread.async_interrupted? to Thread.pending_interrupt?.
2117	  Also rename option from `defer' to `never'.
2118	  [ruby-core:51074] [ruby-trunk - Feature #6762]
2119
2120	* vm_core.c, thread.c: rename functions and data structure
2121	  `async_errinfo' to `pending_interrupt'.
2122
2123	* thread.c: add global variables sym_immediate, sym_on_blocking and
2124	  sym_never.
2125
2126	* cont.c, process.c, vm.c, signal.c: ditto.
2127
2128	* lib/sync.rb, lib/thread.rb: catch up this renaming.
2129
2130	* test/ruby/test_thread.rb: ditto.
2131
2132Sun Dec 23 17:57:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2133
2134	* lib/profiler.rb (Profiler__::PROFILE_PROC, print_profile): store
2135	  profile data per threads for concurrent-execution.
2136	  [ruby-core:22046] [Bug #1152]
2137
2138	* lib/profiler.rb (Profiler__::Wrapper): support calling singleton
2139	  methods of an instance of BasicObject.
2140
2141	* lib/profiler.rb (Profiler__::PROFILE_PROC): use TracePoint.
2142
2143Sun Dec 23 16:13:00 2012  Zachary Scott  <zachary@zacharyscott.net>
2144
2145	* lib/erb.rb: typos for ERB::new link
2146
2147Sun Dec 23 16:06:00 2012  Zachary Scott  <zachary@zacharyscott.net>
2148
2149	* lib/erb.rb: Document ERB::new trim_mode '-' for lines ending in -%>
2150	  [ruby-core:51084] [Bug #7608]
2151
2152Sun Dec 23 15:25:00 2012  Zachary Scott  <zachary@zacharyscott.net>
2153
2154	* lib/irb/ruby-lex.rb: Add handling for %i and %I quoting to irb
2155	  Patch by flori [ruby-core:49550] [Bug #7392] [Github Issue #157]
2156
2157Sun Dec 23 15:05:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2158
2159	* vm_eval.c (rb_check_funcall_with_hook): rb_check_funcall with hook
2160	  which is called before calling method_missing or target method.
2161
2162	* marshal.c (w_object, r_object0): use rb_check_funcall_with_hook
2163	  instead of respond_to? and call.
2164
2165Sun Dec 23 14:52:00 2012  Zachary Scott  <zachary@zacharyscott.net>
2166
2167	* re.c (rb_reg_eqq): doc: #=== is not a synonym for #=~, added example
2168	  [ruby-dev:46746] [Bug #7571]
2169
2170Sun Dec 23 14:35:13 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2171
2172	* thread.c (BLOCKING_REGION): if fail_if_interrupted is false ignore
2173	  the result of blocking_region_begin(), since it always is true in
2174	  that case.  suppress "uninitialized" warnings.
2175
2176Sun Dec 23 09:34:07 2012  Eric Hodel  <drbrain@segment7.net>
2177
2178	* lib/rubygems/commands/check_command.rb:  Added --doctor and --dry-run
2179	  options to clean up after failed uninstallation.
2180	* test/rubygems/test_gem_commands_check_command.rb:  Test for above.
2181
2182	* lib/rubygems/commands/push_command.rb:  Allow pushes from RubyGems
2183	  2.0.0.preview3
2184
2185	* lib/rubygems/commands/update_command.rb:  Use Gem.ruby_version
2186
2187	* lib/rubygems/dependency.rb:  Update style.
2188
2189	* lib/rubygems/installer.rb:  Ensure installed gem specifications will
2190	  be useable.  Refactor.
2191	* test/rubygems/test_gem_installer.rb:  ditto.
2192
2193	* lib/rubygems/validator.rb:  Fixed bug with unreadable files.
2194
2195	* lib/rubygems.rb:  Fixed broken methods.
2196	* test/rubygems/test_gem.rb:  Test for above.
2197
2198	* test/rubygems/test_gem_commands_push_command.rb:  Fixed overridden
2199	  Gem.latest_rubygems_version
2200
2201Sun Dec 23 01:52:01 2012  Akinori MUSHA  <knu@iDaemons.org>
2202
2203	* io.c (rb_io_lines, rb_io_bytes, rb_io_chars, rb_io_codepoints):
2204	  Deprecate IO#{lines,bytes,chars,codepoints} and those of ARGF.
2205	  [Feature #6670]
2206
2207	* ext/stringio/stringio.c (strio_lines, strio_bytes, strio_chars)
2208	  (strio_codepoints): Deprecate
2209	  StringIO#{lines,bytes,chars,codepoints}. [Feature #6670]
2210
2211	* ext/zlib/zlib.c (rb_gzreader_lines, rb_gzreader_bytes):
2212	  Deprecate Zlib::GzipReader#{lines,bytes}. [Feature #6670]
2213
2214Sat Dec 23 01:35:00 2012  Zachary Scott  <zachary@zacharyscott.net>
2215
2216	* lib/optparse.rb: Documentation for OptionParser to remove 'shadowed
2217	  outer local variable' from example and make obvious ARGV with
2218	  non-option arguments.
2219	  Patch by Marcus Stollsteimer [ruby-core:47460] [Bug #6997]
2220
2221Sat Dec 23 00:08:00 2012  Kenta Murata  <mrkn@mrkn.jp>
2222
2223	* include/ruby/intern.h: add the prototype declaration of
2224	  rb_num_coerce_bit.
2225
2226	* numeric.c (rb_num_coerce_bit): the new coerce function for bitwise
2227	  binary operation.
2228
2229	* bignum.c (rb_big_and): use coerce to convert the argument, which isn't
2230	  a Fixnum nor a Bignum, to the corresponding Integer object so that
2231	  bitwise operations can support Integer-mimic objects.
2232	  [Bug #1792] [ruby-core:39491]
2233
2234	* bignum.c (rb_big_or): ditto.
2235
2236	* bignum.c (rb_big_xor): ditto.
2237
2238	* numeric.c (bit_coerce): ditto.
2239
2240	* numeric.c (fix_and): ditto.
2241
2242	* numeric.c (fix_or): ditto.
2243
2244	* numeric.c (fix_xor): ditto.
2245
2246	* test/ruby/test_integer.rb: add tests for the above changes.
2247
2248	* test/ruby/test_bignum.rb: ditto.
2249
2250Sun Dec 23 00:04:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2251
2252	* internal.h (QUOTE, QUOTE_ID): quote unprintable chars in strings and
2253	  IDs. [Bug #7574] [ruby-dev:46749]
2254
2255	* string.c (rb_str_quote_unprintable): ditto.
2256
2257Sat Dec 22 23:59:18 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2258
2259	* error.c (rb_compile_error, rb_compile_warn, rb_compile_warning),
2260	  (rb_warn, rb_warning): support PRIsVALUE.
2261
2262Sat Dec 22 22:04:58 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
2263
2264	* cont.c (rb_fiber_start): unify conditions.
2265
2266Sat Dec 22 21:47:55 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2267
2268	* io.c (rb_io_wait_writable): use rb_thread_check_ints() instead
2269	  of rb_thread_fd_writable().
2270	* io.c (rb_io_wait_readable): ditto.
2271
2272Sat Dec 22 20:31:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2273
2274	* object.c (rb_mod_const_get): symbol cannot be nested constant name.
2275
2276Sat Dec 22 19:26:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2277
2278	* object.c (rb_mod_const_get): check more strictly.  [ruby-dev:46748]
2279	  [Bug #7573]
2280
2281Wed Dec 19 02:34:48 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
2282
2283	* cont.c (rb_fiber_start): in case of jump with TAG_FATAL,
2284	  enqueue error into async_errinfo_queue, because you cannot call
2285	  TH_TAG_JUMP() in this function. [ruby-dev:45218]  [Bug #5993]
2286
2287	* thread.c (rb_threadptr_execute_interrupts): now INT2FIX(TAG_FATAL)
2288	  can be popped from async_errinfo_queue.
2289
2290	* vm.c (rb_vm_make_jump_tag_but_local_jump): revert r38441.
2291	  rb_vm_make_jump_tag_but_local_jump() shouldn't return exception
2292	  in case of state == TAG_FATAL.
2293
2294	* test/ruby/test_fiber.rb (test_exit_in_fiber): fix a test to illuminate
2295	  Thread.exit should terminate current Thread.
2296
2297Sat Dec 22 13:15:08 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
2298
2299	* gc.c (obj_id_to_ref): add a macro to treat Bignum object id.
2300	  This follows the change r38493.
2301
2302	* gc.c (id2ref): fix for working fine with Bignum object id on x64
2303	  Windows.
2304	* gc.c (wmap_finalize): ditto.
2305
2306Sat Dec 22 11:30:21 2012  Masaki Matsushita  <glass.saga@gmail.com>
2307
2308	* struct.c (make_struct): remove junk ID check to allow members who
2309	  have junk name like "foo\000".
2310	* test/ruby/test_struct.rb: Test for above.
2311	  [Bug #7575] [ruby-dev:46750]
2312
2313Sat Dec 22 05:34:54 2012  Eric Hodel  <drbrain@segment7.net>
2314
2315	* lib/net/http.rb:  Requests may be created with a URI which sets the
2316	  Host header.  Responses contain the requested URI for easier redirect
2317	  following.  [ruby-trunk - Feature #6482]
2318	* lib/net/http/generic_request.rb:  ditto.
2319	* lib/net/http/response.rb:  ditto.
2320	* NEWS (net/http):  Updated for above.
2321	* test/net/http/test_http.rb:  Tests for above.
2322	* test/net/http/test_http.rb:  ditto.
2323	* test/net/http/test_httpresponse.rb:  ditto.
2324
2325Sat Dec 22 02:35:00 2012  Zachary Scott  <zachary@zacharyscott.net>
2326
2327	* lib/irb/slex.rb(#match): Typo, should be D_DETAIL
2328	  [ruby-core:51071] [Bug#7600]
2329
2330Sat Dec 22 02:29:00 2012  Zachary Scott  <zachary@zacharyscott.net>
2331
2332	* lib/irb/input-method.rb, lib/irb.rb: Typo in
2333	  InputMethod#readable_atfer_eof? to #readable_after_eof?
2334	  [ruby-core:51069] [Bug #7599]
2335
2336Sat Dec 22 02:19:38 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2337
2338	* vm_dump.c (rb_vm_bugreport): revert r38533.
2339	* addr2line.c (fill_lines): add ELF sanity check.
2340	  [Bug #7597] [ruby-dev:46786]
2341
2342Sat Dec 22 02:05:00 2012  Zachary Scott  <zachary@zacharyscott.net>
2343
2344	* lib/irb/inspector.rb, lib/irb/context.rb: Move IRB::INSPECTORS and
2345	  class methods to IRB::Inspector [ruby-core:51067][Bug #7598]
2346
2347Sat Dec 22 00:28:46 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
2348
2349	* object.c (rb_obj_hash): shouldn't assume object_id can be long.
2350	  based on a patch by Heesob Park at [ruby-core:51060].
2351	  cf. [Backport #7454]
2352
2353Fri Dec 21 23:15:25 2012  Kouhei Sutou  <kou@cozmixng.org>
2354
2355	* ext/fiddle/lib/fiddle/struct.rb (Fiddle::CStructEntity#set_ctypes):
2356	  CPtr -> Pointer.
2357	* test/fiddle/test_c_struct_entry.rb
2358	  (Fiddle::TestCStructEntity#test_aref_pointer):
2359	  Added the test for the above.
2360
2361Fri Dec 21 23:12:05 2012  Kouhei Sutou  <kou@cozmixng.org>
2362
2363	* ext/fiddle/lib/fiddle/struct.rb (Fiddle::CStructEntity#set_ctypes):
2364	  CPtr -> Pointer.
2365	* test/fiddle/test_c_struct_entry.rb
2366	  (Fiddle::TestCStructEntity#test_aref_pointer_array):
2367	  Added the test for the above.
2368
2369Fri Dec 21 22:43:36 2012  Kouhei Sutou  <kou@cozmixng.org>
2370
2371	* ext/fiddle/lib/fiddle/import.rb (Fiddle::Importer#sizeof):
2372	  CPtr -> Pointer.
2373	* test/fiddle/test_import.rb (Fiddle::TestImport#test_sizeof):
2374	  Added the test for the above.
2375
2376Fri Dec 21 22:34:17 2012  Koichi Sasada  <ko1@atdot.net>
2377
2378	* test/ruby/test_iseq.rb: disable a test which checks features
2379	  removed at r38532.
2380
2381Fri Dec 21 22:02:00 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
2382
2383	* win32/{dir.h,win32.c} (rb_w32_readdir): removed old rb_w32_readdir()
2384	  and renamed from rb_w32_readdir_with_enc().
2385	  [ruby-core:24864] [Feature #1927]
2386
2387	* dir.c (READDIR): follow above change.
2388
2389Fri Dec 21 21:12:54 2012  Masaya Tarui  <tarui@ruby-lang.org>
2390
2391	* vm_dump.c (rb_vm_bugreport): commentout addr2line call temporarily
2392	  in order to avoid segv. anyone can fix addr2line?
2393	  [Bug #7597] [ruby-dev:46786]
2394
2395Fri Dec 21 20:38:28 2012  Koichi Sasada  <ko1@atdot.net>
2396
2397	* iseq.c (Init_ISeq): remove definition of the following methods:
2398	  ISeq#line_trace_all and ISeq#line_trace_specify because they are
2399	  half baked.
2400	  C APIs are remained as experimental. These functions will be
2401	  renamed, removed their parameters may be changed.
2402	  You can use these methods by C exts. Please give us your comments.
2403
2404Fri Dec 21 20:21:04 2012  Koichi Sasada  <ko1@atdot.net>
2405
2406	* vm_trace.c (tracepoint_new): add code to support specified thread.
2407	  But not tested and this feature is not supported officially.
2408
2409Fri Dec 21 19:37:15 2012  Koichi Sasada  <ko1@atdot.net>
2410
2411	* ruby.c (process_options): need to acquire env from TOPLEVEL_BINDING
2412	  each time.
2413	  `bind->env' may update after `eval()'.
2414	   [Bug #7536]
2415
2416Fri Dec 21 18:46:50 2012  Koichi Sasada  <ko1@atdot.net>
2417
2418	* include/ruby/debug.h, vm_core.h: define rb_trace_arg_t at
2419	  include/ruby/debug.h (move from vm_core.h).
2420
2421Fri Dec 21 17:48:15 2012  Koichi Sasada  <ko1@atdot.net>
2422
2423	* vm_core.h, vm_trace.c: fix multi-threading bug for tracing.
2424	  Move `trace_arg' from rb_tp_t::trace_arg to rb_thread_t::trace_arg.
2425	  `trace_arg' may changed by multiple threads.
2426	  rb_thread_t::trace_arg can represent rb_thread_t::trace_running
2427	  (null or non-null) and rb_thread_t::trace_running is removed.
2428	  After that, `rb_tp_t' is not needed to check tracing or not
2429	  (A running thread knows tracing or not). This is why I remove
2430	  tp_attr_check_active() and make new function get_trace_arg().
2431
2432	  And this modification disable to work the following code:
2433	    TracePoint.trace{|tp|
2434	      Thread.new{p tp.event} # access `tp' from other threads.
2435	    }
2436	  I believe nobody mix threads at trace procedure.
2437	  This is current limitation.
2438	  [Bug #7590]
2439
2440	* cont.c (fiber_switch, rb_cont_call): use rb_thread_t::trace_arg
2441	  instead of rb_thread_t::trace_running.
2442
2443	* test/ruby/test_settracefunc.rb: add a multi-threading test.
2444
2445Fri Dec 21 16:38:08 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2446
2447	* template/id.h.tmpl (ID2ATTRSET): compile time constant macro for
2448	  ID_ATTRSET.
2449
2450	* defs/id.def (KeywordError): check duplication.
2451
2452	* defs/id.def: support for other scope IDs,
2453	  ID_{INSTANCE,GLOBAL,CONST,CLASS}.
2454
2455Fri Dec 21 14:45:00 2012  Zachary Scott  <zachary@zacharyscott.net>
2456
2457	* lib/irb.rb, lib/irb/*: Documentation for IRB
2458
2459Fri Dec 21 11:31:02 2012  Eric Hodel  <drbrain@segment7.net>
2460
2461	* lib/rake/*:  Updated to rake 0.9.6
2462	* doc/rake/*:  ditto
2463	* test/rake/*:  ditto
2464
2465Fri Dec 21 08:56:34 2012  Masaya Tarui  <tarui@ruby-lang.org>
2466
2467	* vm_trace.c (rb_suppress_tracing): remove unused variable 'vm_tracing'
2468
2469Fri Dec 21 01:01:45 2012  Masaya Tarui  <tarui@ruby-lang.org>
2470
2471	* lib/irb/completion.rb (CompletionProc): support completion of
2472	  instance variables. [ruby-dev:46710] [Bug #7520]
2473
2474Thu Dec 20 20:58:25 2012  Masaya Tarui  <tarui@ruby-lang.org>
2475
2476	* vm_trace.c (rb_suppress_tracing): bugfix for vm->trace_running
2477	  counter. And if tracing is already true, vm_trace_running ops is
2478	  skipped to control overflow.
2479
2480Thu Dec 20 18:29:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2481
2482	* include/ruby/ruby.h (RTEST, NIL_P): make bare expressions without
2483	  outermost parentheses.
2484
2485Thu Dec 20 17:29:00 2012  Shugo Maeda  <shugo@ruby-lang.org>
2486
2487	* NEWS: fix the description for Refinements.
2488
2489Thu Dec 20 16:53:59 2012  Shugo Maeda  <shugo@ruby-lang.org>
2490
2491	* vm_core.h (rb_vm_defineclass_type_t),
2492	  compile.c (iseq_compile_each), insns.def (defineclass): change the
2493	  meaning of the third operand of defineclass as follows:
2494	    lower 3bits: the type of the defineclass
2495	                   0 = class, 1 = singleton class, 2 = module
2496	    4th bit: a flag represents whether the defineclass is scoped
2497	               0 = not scoped (e.g., class Foo)
2498		       1 = scoped (e.g., class Bar::Baz)
2499	    5th bit: a flag represents whether the superclass is specified
2500	               0 = not specified (e.g., class Foo)
2501	               1 = specified (e.g., class Bar < Foo)
2502	  If the superclass is specified and is not a class, a TypeError
2503	  should be raised.  [ruby-dev:46747] [Bug #7572]
2504
2505	* test/ruby/test_class.rb: related test.
2506
2507Thu Dec 20 16:52:37 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
2508
2509	* NEWS: announce AEAD encryption support in the OpenSSL extension.
2510
2511Thu Dec 20 16:40:13 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
2512
2513	* gc.c (nonspecial_obj_id): VALUE is not compatible with Fixnum on
2514	  LLP64 platform, such as 64bit Windows.
2515	  reported by Heesob Park at [ruby-core:50255] [Bug #7454], and the
2516	  fix is suggested by akr.
2517
2518Thu Dec 20 16:39:04 2012  Martin Bosslet  <Martin.Bosslet@gmail.com>
2519
2520	* ext/openssl/ossl_cipher.c: fix errors for installations that do not
2521	  feature Authenticated Encryption.
2522	* ext/openssl/extconf.rb: detect presence of EVP_CTRL_GCM_GET_TAG to
2523	  determine whether Authenticated Encryption can be used.
2524	  [Feature #6980] [ruby-core:47426]
2525
2526Thu Dec 20 15:55:46 2012  Martin Bosslet  <Martin.Bosslet@gmail.com>
2527
2528	* ext/openssl/ossl.c: do not use FIPS_mode_set if not available.
2529	* test/openssl/utils.rb: revise comment about setting FIPS mode to
2530	  false.
2531	* test/openssl/test_fips.rb: remove tests that cause errors on
2532	  ruby-ci.
2533	  [Feature #6946] [ruby-core:47345]
2534
2535Thu Dec 20 15:22:59 2012  Eric Hodel  <drbrain@segment7.net>
2536
2537	* lib/rdoc/parser/ruby.rb:  Ignore methods defined on constants to
2538	  prevent modules with the names of constants from appearing in the
2539	  documentation.
2540	* test/rdoc/test_rdoc_parser_ruby.rb:  Test for the above.
2541
2542Thu Dec 20 15:00:33 2012  Martin Bosslet  <Martin.Bosslet@gmail.com>
2543
2544	* ext/openssl/ossl_cipher.c: add support for Authenticated Encryption
2545	  with Associated Data (AEAD) for OpenSSL versions that support the
2546	  GCM encryption mode. It's the only mode supported for now by OpenSSL
2547	  itself. Add Cipher#authenticated? to detect whether a chosen mode
2548	  does support Authenticated Encryption.
2549	* test/openssl/test_cipher.rb: add tests for Authenticated Encryption.
2550	  [Feature #6980] [ruby-core:47426] Thank you, Stephen Touset for
2551	  providing a patch!
2552
2553Thu Dec 20 12:56:53 2012  Eric Hodel  <drbrain@segment7.net>
2554
2555	* lib/rdoc/markup/to_html.rb (class RDoc):  Added current heading and
2556	  top links to headings.
2557	* lib/rdoc/generator/template/darkfish/rdoc.css:  ditto
2558	* test/rdoc/test_rdoc_generator_markup.rb:  Test for above
2559	* test/rdoc/test_rdoc_markup_to_html.rb:  ditto
2560
2561	* test/rdoc/test_rdoc_comment.rb:  Removed trailing whitespace.
2562
2563Thu Dec 20 11:05:26 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2564
2565	* test/ruby/envutil.rb (assert_valid_syntax): move from
2566	  test_syntax.rb.
2567
2568	* test/ruby/envutil.rb (assert_normal_exit): validate syntax before
2569	  running because this assertion passes even if the code fails by
2570	  SyntaxError.
2571
2572Thu Dec 20 10:29:58 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
2573
2574	* test/openssl/test_pkey_dh.rb: revert special treatment of
2575	  FIPS-capable installations since FIPS mode is now disabled for the
2576	  tests.
2577
2578Thu Dec 20 10:23:12 2012  Martin Bosslet  <Martin.Bosslet@gmail.com>
2579
2580	* ext/openssl/ossl.c: add OpenSSL.fips_mode= to allow enabling FIPS
2581	  mode manually.
2582	* test/openssl/utils.rb: turn off FIPS mode for tests. This prevents
2583	  OpenSSL installations with FIPS mode enabled by default from raising
2584	  FIPS-related errors during the tests.
2585	* test/openssl/test_fips.rb: add tests for FIPS-capable OpenSSL
2586	  installations.
2587	  [Feature #6946] [ruby-core:47345]
2588
2589Thu Dec 20 06:59:52 2012  Koichi Sasada  <ko1@atdot.net>
2590
2591	* vm.c: support variable VM/Machine stack sizes.
2592	  Specified by the following environment variables:
2593	    - RUBY_THREAD_VM_STACK_SIZE: vm stack size used at thread creation.
2594	      default: 128KB (32bit CPU) or 256KB (64bit CPU).
2595	    - RUBY_THREAD_MACHINE_STACK_SIZE: machine stack size used at thread
2596	      creation. default: 512KB or 1024KB.
2597	    - RUBY_FIBER_VM_STACK_SIZE: vm stack size used at fiber creation.
2598	      default: 64KB or 128KB.
2599	    - RUBY_FIBER_MACHINE_STACK_SIZE: machine stack size used at fiber
2600	      creation. default: 256KB or 256KB.
2601	  This values are specified at launched timing. You can not change
2602	  these values at running time.
2603	  Environ variables are only *hints* because:
2604	    - They are aligned to 4KB.
2605	    - They have minimum values (depend on OSs).
2606	    - Machine stack settings are ignored by some OSs.
2607	  Default values especially fiber stack sizes are increased.
2608	  This change affect Fiber's behavior:
2609	    (1) You can run more complex program on a Fiber.
2610	    (2) You can not make many (thousands) Fibers because of
2611	        lack of address space (on 32bit CPU).
2612	  If (2) bothers you,
2613	    (a) Use 64bit CPU with big memory, or
2614	    (b) Specify RUBY_FIBER_(VM|MACHINE)_STACK_SIZE correctly.
2615	  You need to choose correct stack size carefully. These values
2616	  are completely rely on systems (OS/compiler and so on).
2617	  [Feature #4614], [Bug #7212]
2618
2619	* vm_core.h (rb_vm_t::default_params): add to record above settings.
2620
2621	* vm.c (RubyVM::DEFAULT_PARAMS): add new constant to see
2622	  above setting.
2623
2624	* thread_pthread.c: support RUBY_THREAD_MACHINE_STACK_SIZE.
2625
2626	* cont.c: support RUBY_FIBER_(VM|MACHINE)_STACK_SIZE.
2627
2628	* test/ruby/test_fiber.rb: add tests for above.
2629
2630	* test/ruby/test_thread.rb: ditto.
2631
2632Thu Dec 20 06:25:44 2012  Koichi Sasada  <ko1@atdot.net>
2633
2634	* test/ruby/test_fiber.rb: remove a strange single quote character.
2635	  With this character, this script exits by SyntaxError.
2636
2637Thu Dec 20 01:03:00 2012  Zachary Scott  <zachary@zacharyscott>
2638
2639	* ext/.document: Add missing ext modules to .document
2640	  Patch by Ryunosuke SATO [Fixes Github #224]
2641
2642Wed Dec 19 23:52:16 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
2643
2644	* ruby.c (load_file_internal): use original C string as the filename
2645	  for parser.
2646	  reported by whiteleaf at [ruby-list:49085] [ruby-dev:46738]
2647	  [Bug #7562]
2648
2649Wed Dec 19 23:36:12 2012  Naohisa Goto  <ngotogenome@gmail.com>
2650
2651	* marshal.c (marshal_dump, marshal_load): fix SEGV during make rdoc
2652	  and test failure in TestMarshal#test_gc and test_context_switch
2653	  on SPARC Solaris 10 compiled with Oracle Solaris Studio 12.3.
2654	  [Bug #7591] [ruby-dev:46772]
2655
2656Wed Dec 19 19:34:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2657
2658	* object.c (rb_mod_const_get): nul byte is invalid as constant name.
2659
2660Wed Dec 19 17:54:18 2012  Masaya Tarui  <tarui@ruby-lang.org>
2661
2662	* vm_trace.c (rb_threadptr_exec_event_hooks): get rid of race
2663	  condition. [Bug #7589] [ruby-dev:46763]
2664
2665Wed Dec 19 16:30:28 2012  Eric Hodel  <drbrain@segment7.net>
2666
2667	* doc/syntax/literals.rdoc:  Added 0d decimal format.  Thanks Nobu!
2668
2669Wed Dec 19 16:19:36 2012  Eric Hodel  <drbrain@segment7.net>
2670
2671	* doc/syntax/methods.rdoc:  Fixed typo.  Thanks to Josh Susser.
2672
2673Wed Dec 19 16:18:22 2012  Eric Hodel  <drbrain@segment7.net>
2674
2675	* lib/rubygems/commands/query_command.rb:  Refactored to improve
2676	  maintainability.
2677	* test/rubygems/test_gem_commands_query_command.rb:  Note default gems
2678	  in gem list details.
2679
2680	* lib/rubygems/uninstaller.rb:  Detect all gems for uninstallation.
2681	  This allows duplicate installs of default gems to be removed.
2682	* lib/rubygems/specification.rb:  Allow use of ::each_spec.
2683	* lib/rubygems/test_case.rb:  Added install_default_gems.
2684	* test/rubygems/test_gem_commands_uninstall_command.rb:  Moved test
2685	  down to the uninstaller tests.
2686	* test/rubygems/test_gem_uninstaller.rb:  Test for uninstallation of
2687	  default gems and duplicate default gems.
2688
2689Wed Dec 19 15:23:50 2012  Eric Hodel  <drbrain@segment7.net>
2690
2691	* doc/syntax/methods.rdoc:  Add () around keyword arguments example for
2692	  consistency.  Thanks to Josh Susser.
2693
2694Wed Dec 19 01:51:24 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
2695
2696	* vm.c (rb_vm_jump_tag_but_local_jump): remove unnecessary 2nd
2697	  argument.
2698
2699	* load.c (rb_load_internal): ditto.
2700
2701	* eval_intern.h (rb_vm_jump_tag_but_local_jump): ditto.
2702
2703Tue Dec 18 18:57:58 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2704
2705	* io.c (rb_io_wait_writable): don't use rb_thread_wait_fd()
2706	  because it is for waiting until io readable.
2707
2708	* io.c (rb_io_wait_writable): always use rb_thread_fd_writable()
2709	  instead of bare rb_wait_for_single_fd(). we shouldn't ignore
2710	  return value.
2711	* io.c (rb_io_wait_readable): ditto. always use rb_thread_wait_fd().
2712
2713Tue Dec 18 18:55:33 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2714
2715	* thread.c (rb_thread_wait_fd_rw): fix infinite loop bug.
2716	  rb_wait_for_single_fd() never return positive number.
2717
2718Tue Dec 18 17:24:40 2012  Eric Hodel  <drbrain@segment7.net>
2719
2720	* lib/rdoc/encoding.rb:  Do not remove #! line from document when
2721	  setting encoding.  This allows ruby executables to be parsed as ruby
2722	  files.
2723	* test/rdoc/test_rdoc_encoding.rb:  Test for above.
2724
2725	* lib/rdoc/parser.rb:  Set the parser file name of ruby executables
2726	  correctly.
2727	* test/rdoc/test_rdoc_parser.rb:  Test for above.
2728
2729Tue Dec 18 16:46:15 2012  Eric Hodel  <drbrain@segment7.net>
2730
2731	* doc/syntax/literals.rdoc:  Used simplified heredoc example that
2732	  doesn't include method definition.  Added heredoc with backticks.
2733
2734Tue Dec 18 16:38:51 2012  Eric Hodel  <drbrain@segment7.net>
2735
2736	* lib/rdoc/store.rb:  Work around RDoc stores from older versions of
2737	  RDoc.
2738	* test/rdoc/test_rdoc_store.rb:  Test for above.
2739
2740Tue Dec 18 16:31:20 2012  Eric Hodel  <drbrain@segment7.net>
2741
2742	* lib/rdoc/ruby_lex.rb:  Return a TkHEREDOC instead of a TkSTRING when
2743	  the heredoc identifier is followed by a line-end.  This allows proper
2744	  display of some HEREDOCs in source view.
2745	* lib/rdoc/ruby_token.rb:  Added TkHEREDOC
2746	* test/rdoc/test_rdoc_ruby_lex.rb:  Test for above.
2747
2748Tue Dec 18 09:45:14 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
2749
2750	* vm.c (rb_vm_make_jump_tag_but_local_jump): take care of the case
2751	  TAG_JUMP() with TAG_FATAL (ex. rb_fatal()). [ruby-core:50917]
2752	  [Bug #7570]
2753
2754	* test/ruby/test_fiber.rb (test_fatal_in_fiber): add a test for above.
2755
2756	* ext/-test-/fatal/extconf.rb, ext/-test-/fatal/rb_fatal.c: ditto.
2757
2758Tue Dec 18 13:17:00 2012  Zachary Scott  <zachary@zacharyscott.net>
2759
2760	* vm_trace.c (tracepoint_attr_defined_class): Clean up rdoc for
2761	  TracePoint#defined_class
2762
2763Tue Dec 18 12:15:59 2012  Eric Hodel  <drbrain@segment7.net>
2764
2765	* lib/rubygems/specification.rb:  Fixed ruby output of requirements
2766	  with multiple version specifiers.
2767	* test/rubygems/test_gem_ext_cmake_builder.rb:  Only look for specific
2768	  lines in cmake output.  Should fix [ruby-trunk - Bug #7579]
2769
2770Tue Dec 18 11:45:26 2012  Eric Hodel  <drbrain@segment7.net>
2771
2772	* doc/syntax/literals.rdoc:  Added 0o octal integers.
2773
2774Tue Dec 18 12:28:52 2012  Martin Bosslet  <Martin.Bosslet@gmail.com>
2775
2776	* test/openssl/test_ssl.rb: Use :TLSv1_2_client explicitly in
2777	  test_tls_v1_2 to prevent upstream bug.
2778	  [Bug #7197] [ruby-dev:46240]
2779
2780Tue Dec 18 11:52:34 2012  Martin Bosslet  <Martin.Bosslet@gmail.com>
2781
2782	* ext/openssl/lib/ssl.rb: Enable insertion of empty fragments as a
2783	  countermeasure for the BEAST attack by default. The default options
2784	  of OpenSSL::SSL:SSLContext are now:
2785	  OpenSSL::SSL::OP_ALL & ~OpenSSL::SSL::OP_DONT_INSERT_EMPTY_FRAGMENTS
2786	  [Bug #5353] [ruby-core:39673]
2787
2788	* test/openssl/test_ssl.rb: Adapt tests to new SSLContext default.
2789
2790	* NEWS: Announce the new default.
2791
2792Tue Dec 18 06:36:12 2012  Koichi Sasada  <ko1@atdot.net>
2793
2794	* method.h: remove `VM_METHOD_TYPE_CFUNC_FRAMELESS' method type.
2795	  This method type is for optimized CFUNC such as Fixnum#+ and so on.
2796	  This feature is half-baked and no way to use them.
2797	  [Background]
2798	  Now, VM has opt_plus instructions to optimize `+' methods for
2799	  some Classes (such as Fixnum, Float (flonum)). We call this
2800	  type of instructions as `specialized instructions'.
2801	  This simple technique improve simple program dramatically.
2802	  However, we can make specialized instructions for only several
2803	  types (classes) and selectors (method names) because a large
2804	  instruction will be slow. In other words, this technique has no
2805	  extensibility.
2806	  To overcome this problem, VM_METHOD_TYPE_CFUNC_FRAMELESS was
2807	  introduced (r37198). This type is a variant of CFUNC, but called
2808	  their functions directly without building a method frame.
2809	  Any CFUNC method can be defined as frameless methods if a method
2810	  is not needed to make method frame. Frameless methods are faster
2811	  as specialized instructions (a bit slower, but no need to care).
2812	  No problem described at
2813	  http://charlie.bz/blog/why-do-singleton-methods-make-ruby-slow
2814	  because this technique doesn't see class, but see method body
2815	  itself. Alias is also no problem.
2816	  [Problem]
2817	  However, we can't set frameless method type for polymorphic methods
2818	  such as Array#[]. Necessity for method frame depends on which
2819	  parameter type. For example, Fixnum#+ needs method frame if
2820	  coerce is needed. Current VM_METHOD_TYPE_CFUNC_FRAMELESS is not
2821	  flexible and need more tuning to introduce it.
2822	  Expected behavior of frameless method type may be:
2823	    result = optimized_cfunc(params); /* call optimized cfunc */
2824	    if (result == Qundef) { result = normal_cfunc(); }
2825	  This is why I say this feature is half-baked.
2826	  We need to learn primitive method in Smalltalk more.
2827	  (I heard this name at RubyConf Taiwan this month. Thanks!)
2828	  [Conclusion]
2829	  I remove this feature and consider again.
2830	  This feature goes to next minor (2.1?).
2831	  Nobody may use this feature and there is no compatibility issue.
2832
2833	* proc.c (rb_method_entry_arity): ditto.
2834
2835	* vm_eval.c, vm_insnhelper.c, vm_method.c: ditto.
2836
2837Tue Dec 18 04:58:22 2012  Koichi Sasada  <ko1@atdot.net>
2838
2839	* vm_trace.c (fill_id_and_klass): TracePoint#defined_class returns
2840	  singleton class. `set_trace_func' passed attached class (which is
2841	  attached/modified by singleton class) by 6th block parameter if it
2842	  is singleton class. Previous behavior follows this spec.
2843	  However, this method named `defined_class' should return singleton
2844	  class directly because singleton methods are defined in singleton
2845	  class. There are no compatible issue because TracePoint is introduced
2846	  after 2.0.
2847	  But compatibility with `set_trace_func' is broken. This means that
2848	  you can not replace all `set_trace_func' code with TracePoint
2849	  without consideration of this behavior.
2850	  [Bug #7554]
2851
2852	* test/ruby/test_settracefunc.rb: change a test to catch up
2853	  an above change.
2854
2855Tue Dec 18 03:03:10 2012  Aaron Patterson <aaron@tenderlovemaking.com>
2856
2857	* ext/psych/lib/psych/visitors/to_ruby.rb: speed up node mapping so
2858	  common cases are evaluated first.  Thanks Kevin Menard!
2859
2860Tue Dec 18 02:35:00 2012  Zachary Scott  <zachary@zacharyscott.net>
2861
2862	* lib/optparse.rb: Remove 'developer documentation' section from rdoc
2863	  Patch by Marcus Stollsteimer [ruby-core:50526][Bug #7504]
2864
2865Tue Dec 18 02:35:00 2012  Zachary Scott  <zachary@zacharyscott.net>
2866
2867	* lib/matrix.rb (#lup): typo in example [ruby-core:50946][Bug #7582]
2868
2869Mon Dec 17 18:03:34 2012  Charlie Somerville  <charlie@charliesomerville.com>
2870
2871	* class.c (rewrite_cref_stack, clone_method): rewrite a method's cref
2872	  stack when cloning into a new class to allow lexical const lookup to
2873	  work as expected [ruby-core:47834] [Bug #7107]
2874	* test/ruby/test_class.rb (class TestClass): related test
2875
2876Mon Dec 17 13:56:55 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2877
2878	* io.c (io_flush_buffer_sync2): avoid to return 0. because
2879	  rb_thread_call_without_gvl2 uses 0 internally.
2880	* io.c (io_flush_buffer_async2): adapt the above.
2881
2882Mon Dec 17 12:05:32 2012  Eric Hodel  <drbrain@segment7.net>
2883
2884	* doc/syntax/methods.rdoc:  Added a description of singleton methods.
2885
2886Mon Dec 17 11:35:57 2012  Eric Hodel  <drbrain@segment7.net>
2887
2888	* doc/.document:  Added doc/syntax
2889
2890Mon Dec 17 11:25:32 2012  Eric Hodel  <drbrain@segment7.net>
2891
2892	* doc/syntax.rdoc:  Added syntax guide table of contents
2893	* doc/syntax/exceptions.rdoc:  Syntax guide for exceptions
2894	* doc/syntax/literals.rdoc:  Syntax guide for literals
2895	* doc/syntax/methods.rdoc:  Syntax guide for methods
2896
2897Mon Dec 17 07:59:40 2012  Eric Hodel  <drbrain@segment7.net>
2898
2899	* lib/rubygems.rb:  Updated VERSION
2900
2901	* test/rubygems/test_gem_installer.rb:  Fixed ambiguous first argument
2902	  warning.
2903
2904	* test/rubygems/test_gem_rdoc.rb:  RDoc generation depends on installed
2905	  version of RDoc.
2906
2907Sun Dec 16 02:04:41 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2908
2909	* signal.c (rb_sigaltstack_size): cast sysconf() return value
2910	  explicitly. Fix compile error on Mac OS X.
2911
2912Sun Dec 16 00:39:43 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
2913
2914	* cont.c (rb_fiber_start): don't enqueue Qnil to async_errinfo_queue.
2915	  rb_vm_make_jump_tag_but_local_jump() could return Qnil (ex. when
2916	  finished by Thread.exit). [ruby-dev:45218] [Bug #5993]
2917
2918	* test/ruby/test_fiber.rb (test_exit_in_fiber): add test for it.
2919
2920Sat Dec 15 23:56:51 2012  Naohisa Goto  <ngotogenome@gmail.com>
2921
2922	* ext/fiddle/pointer.c (rb_fiddle_ptr2cptr): fix error message
2923	  forgotten to be changed from DL to Fiddle.
2924
2925Sat Dec 15 23:14:32 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2926
2927	* signal.c (default_handler): remove rb_register_sigaltstack()
2928	  call. sigaltstack was already registered when creating threads.
2929
2930Sat Dec 15 23:08:56 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2931
2932	* signal.c (rb_sigaltstack_size): new. calculate stack size for
2933	  sigsegv handler. enlarge value when x86 or x86_64 on Linux.
2934	  Linux has very small MINSIGSTKSZ size (2048 bytes) and
2935	  our sigsegv routine need 5KiB at least. [Bug #7141]
2936	* internal.h: add declaration of rb_sigaltstack_size().
2937	* vm_core.h: remove ALT_STACK_SIZE definition.
2938
2939	* signal.c (rb_register_sigaltstack): replace ALT_STACK_SIZE with
2940	  rb_sigaltstack_size();
2941	* gc.c (Init_heap): ditto.
2942	* vm.c (th_init): ditto.
2943
2944Sat Dec 15 18:24:21 2012  Tadayoshi Funaba  <tadf@dotrb.org>
2945
2946	* rational.c (f_round_common): should check overflow.
2947
2948Sat Dec 15 18:00:00 2012  Tadayoshi Funaba  <tadf@dotrb.org>
2949
2950	* rational.c (float_rationalize): reduced.
2951
2952Sat Dec 15 14:18:44 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2953
2954	* io.c (finish_writeconv): uses rb_write_internal2 if
2955	  fptr->write_lock have.
2956
2957Sat Dec 15 13:57:08 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2958
2959	* thread.c (rb_mutex_owned_p): remove static.
2960	* io.c (io_flush_buffer): don't hold mutex if already have.
2961	  Now recursive lock may occur when following scenario.
2962	  fptr_finalize -> finish_writeconv_sync -> finish_writeconv
2963	  -> io_fflush.
2964
2965Sat Dec 15 13:38:30 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2966
2967	* io.c (io_flush_buffer): uses io_flush_buffer_async2 instead of
2968	  io_flush_buffer_async.
2969	* io.c (io_flush_buffer_async2): new helper function for
2970	  io_flush_buffer. It uses rb_thread_call_without_gvl2() instead
2971	  of rb_thread_io_blocking_region.
2972	* io.c (io_flush_buffer_sync2): new helper function for
2973	  io_flush_buffer_async2.
2974
2975Sat Dec 15 13:04:26 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2976
2977	* io.c (internal_write_func2): new helper function for rb_write_internal2().
2978	* io.c (rb_write_internal2): new function. it uses
2979	  rb_thread_call_without_gvl2() instead of rb_thread_io_blocking_region().
2980	* io.c (rb_binwrite_string): uses rb_write_internal2 instead of
2981	  rb_write_internal. [Bug #7134]
2982
2983Sat Dec 15 12:55:29 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2984
2985	* io.c (rb_io_wait_writable): add to call rb_thread_wait_fd()
2986	  likes rb_io_wait_readable.
2987
2988Sat Dec 15 11:54:50 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2989
2990	* io.c (rb_io_wait_writable): don't call rb_thread_fd_writable()
2991	  when EINTR. EINTR mean signal interrupt was happen. We don't
2992	  need any wait.
2993
2994Sat Dec 15 11:53:36 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
2995
2996	* thread.c (rb_thread_wait_fd_rw): remove silly rb_thread_alone()
2997	  check.
2998
2999Sat Dec 15 10:22:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3000
3001	* thread.c (rb_thread_polling): revert but deprecate.
3002
3003	* include/ruby/intern.h (rb_thread_polling): deprecate.
3004
3005Sat Dec 15 08:37:01 2012  Masaya Tarui  <tarui@ruby-lang.org>
3006
3007	* test/rubygems/test_gem_ext_cmake_builder.rb (test_self_build):
3008	  get rid of false positive.
3009
3010Sat Dec 15 08:05:56 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3011
3012	* test/ruby/test_thread.rb (test_uninitialized, test_backtrace,
3013	test_thread_timer_and_interrupt, test_thread_join_in_trap,
3014	test_thread_join_current, test_thread_join_main_thread,
3015	test_main_thread_status_at_exit, test_thread_status_in_trap,
3016	test_thread_status_raise_after_kill, test_mutex_owned,
3017	test_mutex_owned2): move these tests from TestThreadGroup class
3018	  to TestThread because they are not thread group tests.
3019
3020	* test/ruby/test_thread.rb (test_thread_status_raise_after_kill):
3021	  add t.join.
3022
3023	* test/ruby/test_threadgroup.rb: new file. moved ThreadGroup test
3024	  from test_thread.rb.
3025
3026Sat Dec 15 08:02:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3027
3028	* test/ruby/test_thread.rb (TestThread::Thread::new.): remove
3029	  th.abort_on_exception change. Test template shouldn't change
3030	  global flag. It prevent to test a normal case.
3031
3032Sat Dec 15 06:15:14 2012  Eric Hodel  <drbrain@segment7.net>
3033
3034	* configure.in (HAVE_GCC_ATOMIC_BUILTINS):  Set -march=i486 to enable
3035	  __sync_val_compare_and_swap.  Patch by KOSAKI Motohiro.
3036	  [ruby-trunk - Bug #7485]
3037
3038Sat Dec 15 03:42:34 2012  Naohisa Goto  <ngotogenome@gmail.com>
3039
3040	* ext/.document: add fiddle/pointer.c, fiddle/handle.c, and
3041	  fiddle/win32/lib as documentation.
3042
3043Sat Dec 15 03:06:40 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3044
3045	* file.c (rb_file_flock): use rb_thread_wait_for() instead of
3046	  rb_thread_polling(). When getting EAGAIN, we need to wait a
3047	  while even if no multi threading.
3048	* thread.c (sleep_for_polling, rb_thread_polling) removed.
3049
3050Sat Dec 15 00:03:31 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3051
3052	* signal.c (rb_f_kill): remove rb_thread_polling() because this
3053	  has no good effect and makes meaningless 100ms delay. 1)
3054	  when sending signal to another process, waiting has just silly.
3055	  2) when sending signal to current process, 100ms is often not
3056	  enough time to wait. It depend on kernel behavior. And,
3057	  rb_thread_polling() doesn't make sense anyway. When rb_thread_alone()
3058	  is true, it doesn't wait at all and Process.kill() users don't
3059	  expect threading changes Process.kill() behavior. [Bug #7560]
3060
3061Fri Dec 14 17:10:57 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3062
3063	* parse.y (parser_params): parser_tokline to track the line number at
3064	  which token started.  [ruby-dev:46737] [Bug #7559]
3065
3066	* parse.y (fcall): operation with starting line number.
3067
3068	* parse.y (command, primary, method_call): point method name line.
3069
3070	* parse.y (gettable_gen): return token line for __LINE__.
3071
3072Fri Dec 14 16:56:59 2012  Shugo Maeda  <shugo@ruby-lang.org>
3073
3074	* vm_insnhelper.c (vm_call_super_method): remove volatile introduced
3075	  in r38365.
3076
3077	* vm_insnhelper.c (vm_call_method): use __forceinline to prevent
3078	  VC++ to make vm_call_general and vm_call_super_method as the same
3079	  method.  Thanks, Heesob Park.  [Bug #7556] [ruby-core:50867]
3080
3081Fri Dec 14 14:59:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3082
3083	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_separately):
3084	  take file and line by using caller_locations if not given.
3085
3086	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_separately):
3087	  count assertions in separated tests.
3088
3089Fri Dec 14 14:16:42 2012  Eric Hodel  <drbrain@segment7.net>
3090
3091	* lib/rdoc/rubygems_hook.rb:  Fixed generation of documentation.
3092	  Disabled rdoc generation by default to match RubyGems defaults.
3093	  Reduced diff with RubyGems::RDoc.
3094	* test/rdoc/test_rdoc_rubygems_hook.rb:  Tests for the above.
3095	* test/rubygems/test_gem_rdoc.rb:  ditto.
3096
3097	* lib/rdoc/store.rb:  Removed useless variable assignment
3098
3099Fri Dec 14 13:58:40 2012  Eric Hodel  <drbrain@segment7.net>
3100
3101	* lib/rubygems/commands/rdoc_command.rb:  When overwriting
3102	  documentation, remove existing documentation first.
3103
3104	* lib/rubygems/server.rb:  Fixed documentation links.
3105	* test/rubygems/test_gem_server.rb:  Test for the above.
3106
3107	* lib/rubygems/rdoc.rb:  Reduced diff with RDoc::RubyGemsHook
3108	* test/rubygems/test_gem_rdoc.rb:  ditto
3109
3110Fri Dec 14 04:08:05 2012  NARUSE, Yui  <naruse@ruby-lang.org>
3111
3112	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_separately):
3113	  added to execute given test source on separate process,
3114	  catch its resulted exception and raise it on main process.
3115
3116Fri Dec 14 07:43:44 2012  Aaron Patterson <aaron@tenderlovemaking.com>
3117
3118	* ext/psych/lib/psych/visitors/yaml_tree.rb: quote strings that begin
3119	  with non-word characters.  Thanks Alex Tambellini!
3120	* test/psych/test_yaml.rb: appropriate test case
3121
3122Thu Dec 13 23:14:17 2012  Shugo Maeda  <shugo@ruby-lang.org>
3123
3124	* vm_insnhelper.c (vm_call_super_method): a workaround for the
3125	  failure of TestRefinement#test_refine_recursion in Windows.
3126	  See [ruby-core:50871] for details.
3127
3128Thu Dec 13 23:10:52  Charlie Somerville  <charlie@charliesomerville.com>
3129
3130	* object.c (Init_Object): use rb_mod_init_copy for Class#initialize_copy
3131	* class.c (rb_class_init_copy): rename to class_init_copy_check, performs type
3132	  checks on arguments to prevent reinitialization of initialized class
3133	  [ruby-core:50869] [Bug #7557]
3134	* class.c (rb_mod_init_copy): use class_init_copy_check if receiver is T_CLASS
3135	* test/ruby/test_class.rb (class TestClass): related test
3136
3137Thu Dec 13 16:53:10 2012  Eric Hodel  <drbrain@segment7.net>
3138
3139	* lib/rdoc/class_module.rb:  Fixed duplicate comments for classes and
3140	  modules from C.
3141	* test/rdoc/test_rdoc_class_module.rb:  Test for the above.
3142
3143	* lib/rdoc/parser/c.rb:  Reload C variable names to allow proper
3144	  updates of an ri store for C files.
3145	* lib/rdoc/rdoc.rb:  ditto.
3146	* lib/rdoc/store.rb:  ditto.
3147	* test/rdoc/test_rdoc_parser_c.rb:  Test for the above.
3148	* test/rdoc/test_rdoc_store.rb:  ditto.
3149
3150Thu Dec 13 14:20:00 2012  Zachary Scott  <zachary@zacharyscott.net>
3151
3152	* lib/irb*: merge doc from doc/irb/ird.rd and improve overall
3153	  documentation of IRB
3154	* doc/irb/irb.rd: remove stale documentation
3155
3156Thu Dec 13 14:10:00 2012  Shugo Maeda  <shugo@ruby-lang.org>
3157
3158	* marshal.c (r_entry0): don't taint classes and modules because
3159	  Marshal.load just returns the dumped classes and modules.
3160	  [Bug #7325] [ruby-core:49198]
3161
3162	* test/ruby/test_marshal.rb: related test.
3163
3164Thu Dec 13 14:10:13 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
3165
3166	* test/ruby/test_require.rb (TestRequire#test_loaded_features_encoding):
3167	  need to check compatibility, not equality of encodings.
3168
3169Thu Dec 13 14:02:15 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
3170
3171	* file.c (rb_file_join): check encoding compatibility before joining
3172	  strings.
3173
3174Thu Dec 13 13:06:27 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3175
3176	* proc.c (umethod_bind): allow another form of method transplanting
3177	  from a module via UnboundMethod.  [ruby-core:34267][Feature #4254]
3178
3179Thu Dec 13 12:07:25 2012  Shugo Maeda  <shugo@ruby-lang.org>
3180
3181	* include/ruby/ruby.h (RB_UNUSED_VAR): new macro to suppress
3182	  warnings for unused variables.
3183
3184	* ext/bigdecimal/bigdecimal.c (ENTER): use RB_UNUSED_VAR() to
3185	  suppress annoying warnings by -Wunused-but-set-variable in gcc 4.6.
3186
3187Thu Dec 13 11:22:33 2012  Koichi Sasada  <ko1@atdot.net>
3188
3189	* method.h: remove "VM_METHOD_TYPE__MAX" from rb_method_type_t.
3190	  rb_method_type_t is not a number and "_MAX" causes misunderstanding.
3191
3192	* proc.c (rb_method_entry_arity): ditto.
3193
3194	* vm_eval.c (vm_call0_body): ditto.
3195
3196	* vm_insnhelper.c (vm_call_method): ditto.
3197
3198Wed Dec 12 21:40:45 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3199
3200	* lib/tmpdir.rb (Dir::Tmpname#create): deal with a prefix name which
3201	  starts with tilde as a plain name, not expanding as home directory.
3202	  [ruby-core:50793] [Bug #7547]
3203
3204Wed Dec 12 19:48:59 2012  NARUSE, Yui  <naruse@ruby-lang.org>
3205
3206	* ext/json: merge JSON 1.7.5.
3207	  fix tests and other fixes.
3208
3209Wed Dec 12 18:30:29 2012  Shugo Maeda  <shugo@ruby-lang.org>
3210
3211	* class.c (rb_prepend_module): move refined methods from the origin
3212	  of a class to the class, because refinements should have priority
3213	  over prepended modules.
3214
3215	* test/ruby/test_refinement.rb: related test.
3216
3217Wed Dec 12 18:27:09 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3218
3219	* time.c (zone_str): lookup or insert by using st_update() at once.
3220
3221Wed Dec 12 15:30:11 2012  NARUSE, Yui  <naruse@ruby-lang.org>
3222
3223	* configure.in: add -fno-omit-frame-pointer if libexecinfo is used.
3224	  At least on FreeBSD ruby will crash on getting C backtrace
3225	  when it is compiled with other than -O0.
3226
3227	* vm_dump.c: enable backtrace on FreeBSD even if with optimizations.
3228
3229Wed Dec 12 16:08:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3230
3231	* test/rdoc/test_rdoc_rdoc.rb (TestRDocRDoc#test_normalized_file_list_non_file_directory):
3232	  use File::NULL for portability if possible.
3233
3234Wed Dec 12 16:07:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3235
3236	* method.h (rb_method_flag_t): name a magic number for NOEX_SAFE and
3237	  NOEX_WITH as NOEX_SAFE_SHIFT_OFFSET.
3238
3239	* method.h (rb_method_type_t, method_optimized_type): C89 forbids a
3240	  comma after the last element in enum.
3241
3242	* proc.c (rb_method_entry_arity), vm_eval.c (vm_call0_body),
3243	  vm_insnhelper.c (vm_call_method): add VM_METHOD_TYPE__MAX case.
3244
3245Wed Dec 12 14:16:35 2012  Eric Hodel  <drbrain@segment7.net>
3246
3247	* lib/rdoc/class_module.rb:  Added RDoc::ClassModule#documented? which
3248	  checks comment_location.  Hide RDoc::ClassModule#comment=.
3249	* test/rdoc/test_rdoc_class_module.rb:  Test for above.
3250
3251	* lib/rdoc/generator/template/darkfish/_sidebar_table_of_contents.rhtml:
3252	  Fix display of the table of contents in the sidebar.
3253
3254	* lib/rdoc/generator/template/darkfish/table_of_contents.rhtml:
3255	  Use #comment_location when displaying classes or modules.
3256
3257	* test/rdoc/test_rdoc_store.rb:  Use comment_location.
3258
3259Wed Dec 12 13:40:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3260
3261	* vm_insnhelper.c (vm_getivar): no uninitialized instance variables
3262	  warnings for non-object if attr method.
3263
3264Wed Dec 12 06:43:37 2012  Benoit Daloze  <eregontp@gmail.com>
3265
3266	* iseq.c (rb_iseq_parameters): fix limit for optional arguments.
3267
3268	* test/ruby/test_keyword.rb: tests for above.
3269
3270	* vm_core.h (struct rb_iseq_struct): update documentation
3271	  with keyword arguments. [Bug #7540] [ruby-core:50735]
3272
3273Wed Dec 12 03:45:41 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3274
3275	* vm.c (vm_exec): pass exceptions while handling an exception.
3276
3277	* vm_trace.c (rb_threadptr_exec_event_hooks): propagate exceptions.
3278	  revert r38293 partially.
3279
3280Wed Dec 12 03:09:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3281
3282	* sample/test.rb (Progress#initialize): add --verbose option and show
3283	  messages in one line unless --verbose is given.
3284
3285Wed Dec 12 01:47:02 2012  Shugo Maeda  <shugo@ruby-lang.org>
3286
3287	* eval.c (rb_using_refinement): make the method table of an iclass
3288	  for a refinement that of the refinement, not that of the origin of
3289	  the refinement, which is set by rb_include_class_new().  This
3290	  change is needed to make module prepend into a refinement work
3291	  properly.
3292
3293	* test/ruby/test_refinement.rb: related test.
3294
3295Wed Dec 12 01:05:04 2012  NARUSE, Yui  <naruse@ruby-lang.org>
3296
3297	* tool/make-snapshot: add --disable-rubygem to both MINIRUBY and RUBY.
3298	  On making miniprelude.c, it seems use MINIRUBY. this fixes #7541
3299	  but rubygems also needs to be fixed for older rubies.
3300
3301Wed Dec 12 00:32:11 2012  Naohisa Goto  <ngotogenome@gmail.com>
3302
3303	* test/dl/test_func.rb (test_name_with_block, test_bind, test_qsort1):
3304	  call unbind to release the callback closure because maximum number
3305	  of callbacks is limited to DL::MAX_CALLBACK (== 5) with pure DL
3306	  without Fiddle.
3307
3308Wed Dec 12 00:13:34 2012  Naohisa Goto  <ngotogenome@gmail.com>
3309
3310	* ext/dl/lib/dl/func.rb (DL::Function#unbind, #bound?): suppress
3311	  NoMethodError when Fiddle is available. [ruby-core:50756] [Bug #7543]
3312	* test/dl/test_func.rb (test_bound*, test_unbind*): tests for the above.
3313
3314Tue Dec 11 19:38:37 2012  Naohisa Goto  <ngotogenome@gmail.com>
3315
3316	* ext/fiddle/function.c (Fiddle::Function.new): new keyword argument
3317	  :name to set the name attribute.
3318	* ext/fiddle/lib/fiddle/import.rb (import_function, bind_function):
3319	  set function name by using the :name keyword argument.
3320	  Re-fixes r38243. [ruby-core:50566]
3321	* test/fiddle/test_function.rb (test_name): test for the :name keyword
3322	  argument and Fiddle::Function#name.
3323
3324Tue Dec 11 16:57:33 2012  Eric Hodel  <drbrain@segment7.net>
3325
3326	* common.mk:  Added --pages-dir to rdoc creation.  Now doc/ items show
3327	  up at top-level.
3328	* .document:  Moved doc/* entries to doc/.document
3329	* doc/.document:  ditto
3330
3331Tue Dec 11 16:44:37 2012  Eric Hodel  <drbrain@segment7.net>
3332
3333	* lib/rdoc/options.rb:  Added --page-dir option for moving pages in
3334	  doc/ to the top-level.
3335	* lib/rdoc/rdoc.rb:  ditto.
3336	* test/rdoc/test_rdoc_options.rb:  Test for the above.
3337	* test/rdoc/test_rdoc_rdoc.rb:  ditto.
3338
3339Tue Dec 11 15:24:05 2012  Eric Hodel  <drbrain@segment7.net>
3340
3341	* ext/pathname/lib/pathname.rb:  Hide private methods from RDoc.
3342
3343Tue Dec 11 15:11:29 2012  NARUSE, Yui  <naruse@ruby-lang.org>
3344
3345	* tool/make-snapshot (BASERUBY): add --disable-gem to avoid load gems.
3346	  [Bug #7541] [ruby-core:50736]
3347
3348Tue Dec 11 12:00:19 2012  NARUSE, Yui  <naruse@ruby-lang.org>
3349
3350	* ext/dl/win32/extconf.rb: Fix typo
3351	  by Santiago Pastorino <santiago@wyeworks.com>
3352	  https://github.com/ruby/ruby/pull/221 fix GH-221
3353
3354Tue Dec 11 01:53:37 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
3355
3356	* lib/matrix: alias {row|column}_size to {row|column}_count and use
3357	  the latter.
3358	  [Bug #7369] [ruby-core:49409]
3359
3360Tue Dec 11 00:26:58 2012  Shugo Maeda  <shugo@ruby-lang.org>
3361
3362	* fix the behavior when a module is included into a refinement.
3363	  This change is a little tricky, so it might be better to prohibit
3364	  module inclusion to refinements.
3365
3366	* include/ruby/ruby.h (RMODULE_INCLUDED_INTO_REFINEMENT): new flag
3367	  to represent that a module (iclass) is included into a refinement.
3368
3369	* class.c (include_modules_at): set RMODULE_INCLUDED_INTO_REFINEMENT
3370	  if klass is a refinement.
3371
3372	* eval.c (rb_mod_refine): set the superclass of a refinement to the
3373	  refined class for super.
3374
3375	* eval.c (rb_using_refinement): skip the above superclass (the
3376	  refined class) when creating iclasses for refinements.  Otherwise,
3377	  `using Refinement1; using Refinement2' creates iclasses:
3378	  <Refinement2> -> <RefinedClass> -> <Refinement1> -> RefinedClass,
3379	  where <Module> is an iclass for Module, so RefinedClass is
3380	  searched before Refinement1.  The correct iclasses should be
3381	  <Refinement2> -> <Refinement1> -> RefinedClass.
3382
3383	* vm_insnhelper.c (vm_search_normal_superclass): if klass is an
3384	  iclass for a refinement, use the refinement's superclass instead
3385	  of the iclass's superclass.  Otherwise, multiple refinements are
3386	  searched by super.  For example, if a refinement Refinement2
3387	  includes a module M (i.e., Refinement2 -> <M> -> RefinedClass,
3388	  and if refinements iclasses are <Refinement2> -> <M>' ->
3389	  <Refinement1> -> RefinedClass, then super in <Refinement2> should
3390	  use Refinement2's superclass <M> instead of <Refinement2>'s
3391	  superclass <M>'.
3392
3393	* vm_insnhelper.c (vm_search_super_method): do not raise a
3394	  NotImplementError if current_defined_class is a module included
3395	  into a refinement.  Because of the change of
3396	  vm_search_normal_superclass(), the receiver might not be an
3397	  instance of the module('s iclass).
3398
3399	* test/ruby/test_refinement.rb: related test.
3400
3401Mon Dec 10 18:35:25 2012  Shugo Maeda  <shugo@ruby-lang.org>
3402
3403	* vm_method.c (rb_method_entry_without_refinements): use
3404	  rb_resolve_refined_method() to search superclasses if
3405	  me->def->orig_me is 0.  This change fixes make test-all
3406	  TESTS="json ruby/test_refinement.rb".
3407
3408	* test/ruby/test_refinement.rb: related test.
3409
3410Mon Dec 10 17:59:07 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
3411
3412	* ext/fiddle/win32/*: library ports from DL to Fiddle.
3413
3414	* ext/dl/win32/extconf.rb: check fiddle.  often case dl compiled prior
3415	  to fiddle, so this change is no meaning.  in most cases, simply
3416	  fiddle/win32 overwrite dl/win32.
3417
3418Mon Dec 10 15:23:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3419
3420	* vm_trace.c (rb_threadptr_exec_event_hooks): exceptions in event
3421	  hooks should not propagate outside.
3422
3423Mon Dec 10 15:11:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3424
3425	* compile.c (iseq_compile_each): count flip-flop state in local iseq
3426	  not in each iseqs, so that the keys can be other than hidden
3427	  strings.  [ruby-core:47253] [Bug #6899]
3428
3429	* vm_insnhelper.c (lep_svar_get, lep_svar_set, vm_getspecial): store
3430	  flip-flop states in an array instead of a hash.
3431
3432	* iseq.c (set_relation): main iseq also can has local scope.
3433
3434Mon Dec 10 10:36:12 2012  Narihiro Nakamura  <authornari@gmail.com>
3435
3436	* lib/irb/magic-file.rb: set a encoding, which is detected from
3437	  the file to read, to the internal encoding.
3438	  [Bug #4281][ruby-dev:43036]
3439
3440Mon Dec 10 09:40:19 2012  Eric Hodel  <drbrain@segment7.net>
3441
3442	* lib/rubygems/ext/cmake_builder.rb:  Added a builder for cmake.
3443	* lib/rubygems/ext.rb:  ditto.
3444	* lib/rubygems/installer.rb:  ditto.
3445	* test/rubygems/test_gem_ext_cmake_builder.rb:  Test for above.
3446
3447Mon Dec 10 09:13:08 2012  Eric Hodel  <drbrain@segment7.net>
3448
3449	* lib/rubygems/package.rb:  Omit directories when packaging gems like
3450	  RubyGems 1.8.x
3451	* test/rubygems/test_gem_package.rb:  Test for above.
3452
3453Sun Dec  9 17:36:59 2012  Shugo Maeda  <shugo@ruby-lang.org>
3454
3455	* vm_insnhelper.c (vm_call_opt_send): Kernel#send should not use
3456	  refinements.
3457
3458	* proc.c (mnew): Kernel#method, Kernel#public_method,
3459	  Module#instance_method, and Module#public_instance_method should
3460	  not use refinements.
3461
3462	* vm_method.c (rb_method_boundp): Kernel#respond_to? should not use
3463	  refinements.
3464
3465	* test/ruby/test_refinement.rb: related test.
3466
3467Sun Dec  9 06:19:04 2012  Eric Hodel  <drbrain@segment7.net>
3468
3469	* lib/rdoc/markdown/entities.rb:  Added documentation.
3470
3471	* lib/rdoc/parser/ruby.rb:  Updated style
3472
3473	* lib/rdoc/ruby_lex.rb:  Parse characters up to \u{FFFFF}
3474	* test/rdoc/test_rdoc_ruby_lex.rb:  Test for above.
3475
3476Sat Dec  8 22:38:35 2012  Shugo Maeda  <shugo@ruby-lang.org>
3477
3478	* eval.c (rb_mod_refine): don't override Module#include.  It's
3479	  unnecessary now because refinements are activated only in refine
3480	  blocks.
3481
3482Sat Dec  8 22:33:26 2012  Shugo Maeda  <shugo@ruby-lang.org>
3483
3484	* eval.c: remove Module#refinements.
3485
3486	* test/ruby/test_refinement.rb: remove tests for Module#refinements.
3487
3488Sat Dec  8 13:17:55 2012  Shugo Maeda  <shugo@ruby-lang.org>
3489
3490	* eval.c (top_using): raise a RuntimeError if using is called in a
3491	  module definition or a method definition.
3492
3493	* test/ruby/test_refinement.rb: related test.
3494
3495Sat Dec  8 15:01:35 2012  Eric Hodel  <drbrain@segment7.net>
3496
3497	* lib/rubygems/commands/cleanup_command.rb:  Skip default gems when
3498	  cleaning up.
3499	* test/rubygems/test_gem_commands_cleanup_command.rb:  Test for above.
3500
3501	* lib/rubygems/commands/query_command.rb:  Fixed listing remote gems.
3502
3503	* lib/rubygems/dependency_installer.rb:  Ignore non-files when looking
3504	  for local gems.
3505	* test/rubygems/test_gem_dependency_installer.rb:  Test for above.
3506
3507	* lib/rubygems/uninstaller.rb:  The user must confirm uninstalling gems
3508	  that have dependencies.
3509	* test/rubygems/test_gem_uninstaller.rb:  Test for above.
3510
3511	* lib/rubygems.rb (module Gem):  Updated version.
3512
3513	* test/rubygems/*.pem:  Updated to run in FIPS mode.
3514	* test/rubygems/test_gem_security.rb:  ditto.
3515	* test/rubygems/test_gem_security_signer.rb:  ditto.
3516
3517Sat Dec  8 12:34:01 2012  Shugo Maeda  <shugo@ruby-lang.org>
3518
3519	* vm_insnhelper.c (vm_search_normal_superclass): super in a
3520	  refinement always uses the refined class as its superclass.
3521
3522	* test/ruby/test_refinement.rb: related test.
3523
3524Sat Dec  8 11:59:59 2012  Shugo Maeda  <shugo@ruby-lang.org>
3525
3526	* eval.c (rb_mod_refine): raise an ArgumentError if a given
3527	  block is of a Proc object.
3528
3529	* vm_insnhelper.c (vm_call_method): store refined methods in inline
3530	  cache to improve performance.  It's safe now because blocks cannot
3531	  be yielded with different refinements in the new specification.
3532
3533	* test/ruby/test_refinement.rb: related test.
3534
3535Sat Dec  8 11:17:53 2012  Shugo Maeda  <shugo@ruby-lang.org>
3536
3537	* eval.c (rb_mod_refine), vm_eval.c (rb_yield_refine_block):
3538	  Module#refine activates all refinements defined in that module
3539	  only in a given block.
3540
3541	* string.c (sym_to_proc, sym_call): don't use refinements.
3542
3543	* test/ruby/test_refinement.rb: related test.
3544
3545Sat Dec  8 09:24:42 2012  Eric Hodel  <drbrain@segment7.net>
3546
3547	* ext/openssl/ossl_x509name.c:  Completed documentation for
3548	  OpenSSL::X509::Name.
3549
3550Sat Dec  8 07:57:12 2012  Koichi Sasada  <ko1@atdot.net>
3551
3552	* ext/objspace/objspace.c (iow_size): return size of internal object
3553	  for ObjectSpace.memsize_of().
3554
3555	* test/objspace/test_objspace.rb: add a test.
3556
3557Tue Dec 08 02:39:23 2012  James Edward Gray II  <james@graysoftinc.com>
3558
3559	* lib/csv.rb: A fix for row comparison by Stephen Wattam.  [Bug #7528]
3560
3561Sat Dec  8 01:27:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3562
3563	* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): no need to
3564	  check all reports.
3565
3566Sat Dec  8 00:10:34 2012  Shugo Maeda  <shugo@ruby-lang.org>
3567
3568	* vm_eval.c (yield_under, eval_under): do not activate refinements
3569	  of the receiver in module_eval and instance_eval.
3570
3571	* eval.c (ruby_Init_refinement): undef Class#refine.
3572
3573	* eval.c (ruby_Init_refinement): remove Module#using.
3574
3575	* eval.c (ruby_Init_refinement): main.using should be private.
3576
3577	* eval.c (rb_mod_refine): the argument of Module#refine should not
3578	  be a module.
3579
3580	* insns.def (defineclass): do not activate refinements in a class or
3581	  module.
3582
3583Fri Dec  7 23:42:11 2012  Shugo Maeda  <shugo@ruby-lang.org>
3584
3585	* ext/refinement/refinement.c: include ruby/ruby.h instead of the
3586	  declaration of rb_warn().
3587
3588Fri Dec  7 16:07:00 2012  Zachary Scott  <zachary@zacharyscott.net>
3589
3590	* doc/etc.rd: Removed stale documentation file
3591	* ext/etc/etc.c:  Merged documentation from doc/etc.rd and updated
3592	  rdoc, added documentation for Etc::Passwd and Etc::Group
3593
3594Fri Dec  7 16:00:57 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
3595
3596	* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): no need to
3597	  retry skipped test.  this fix makes 40% faster the whole test-all
3598	  with -j5 on Windows.
3599
3600Fri Dec  7 14:22:29 2012  Eric Hodel  <drbrain@segment7.net>
3601
3602	* lib/rdoc/markup/to_joined_paragraph.rb:  Completed documentation
3603	* lib/rdoc/parser/c.rb:  ditto
3604	* lib/rdoc/parser/changelog.rb:  ditto
3605	* lib/rdoc/servlet.rb:  ditto
3606	* lib/rdoc/store.rb:  ditto
3607
3608	* lib/rdoc/store.rb:  Improved HTML error page.  Completed
3609	  documentation
3610
3611	* lib/rdoc/parser/ruby.rb:  Fixed bug attaching a comment to A::B = 42
3612	* test/rdoc/test_rdoc_parser_ruby.rb:  Test for above
3613
3614	* test/rdoc/test_rdoc_comment.rb:  Removed garbage
3615
3616Fri Dec  7 14:03:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3617
3618	* lib/timeout.rb (Timeout#timeout): since async_interrupt_timing
3619	  re-raises a deferred exception, replace the timeout exception with
3620	  Timeout::Error after it.  [Bug #7503]
3621
3622Fri Dec  7 13:07:00 2012  Zachary Scott  <zachary@zacharyscott.net>
3623
3624	* doc/forwardable.rd: Remove stale documentation file
3625	* lib/forwardable.rb: Merge documentation from doc/forwardable.rd
3626
3627Fri Dec  7 09:47:35 2012  NARUSE, Yui  <naruse@ruby-lang.org>
3628
3629	* time.c (time_mdump): dump timezone string to private instance variable
3630	  on marshaling.
3631
3632	* time.c (time_mload): load timezone string from private instance
3633	  variable named 'zone'.
3634
3635Fri Dec  7 01:15:07 2012  Naohisa Goto  <ngotogenome@gmail.com>
3636
3637	* ext/fiddle/lib/fiddle/function.rb (Fiddle::Function#name): new
3638	  attribute needed to switch Win32::Registry from DL to Fiddle.
3639
3640	* ext/fiddle/lib/fiddle/import.rb (import_function, bind_function):
3641	  set function name to the returned Fiddle::Function object.
3642
3643Fri Dec  7 00:11:44 2012  Shugo Maeda  <shugo@ruby-lang.org>
3644
3645	* test/ruby/test_refinement.rb: fix some tests to use neither
3646	  Module#using nor Module#module_eval.
3647
3648Thu Dec  6 23:27:50 2012  Shugo Maeda  <shugo@ruby-lang.org>
3649
3650	* eval.c (ruby_Init_refinement): a new function to enable
3651	  Refinements with a warning "Refinements are experimental...".
3652
3653	* ext/refinement/refinement.c, ext/refinement/extconf.rb: a new
3654	  extension library to enable Refinements.
3655
3656Thu Dec  6 18:23:05 2012  Shugo Maeda  <shugo@ruby-lang.org>
3657
3658	* revised r37993 to avoid SEGV/ILL in tests.  In r37993, a method
3659	  entry with VM_METHOD_TYPE_REFINED holds only the original method
3660	  definition, so ci->me is set to a method entry allocated in the
3661	  stack, and it causes SEGV/ILL.  In this commit, a method entry
3662	  with VM_METHOD_TYPE_REFINED holds the whole original method entry.
3663	  Furthermore, rb_thread_mark() is changed to mark cfp->klass to
3664	  avoid GC for iclasses created by copy_refinement_iclass().
3665
3666	* vm_method.c (rb_method_entry_make): add a method entry with
3667	  VM_METHOD_TYPE_REFINED to the class refined by the refinement if
3668	  the target module is a refinement.  When a method entry with
3669	  VM_METHOD_TYPE_UNDEF is invoked by vm_call_method(), a method with
3670	  the same name is searched in refinements.  If such a method is
3671	  found, the method is invoked.  Otherwise, the original method in
3672	  the refined class (rb_method_definition_t::body.orig_me) is
3673	  invoked.  This change is made to simplify the normal method lookup
3674	  and to improve the performance of normal method calls.
3675
3676	* vm_method.c (EXPR1, search_method, rb_method_entry),
3677	  vm_eval.c (rb_call0, rb_search_method_entry): do not use
3678	  refinements for method lookup.
3679
3680	* vm_insnhelper.c (vm_call_method): search methods in refinements if
3681	  ci->me is VM_METHOD_TYPE_REFINED.  If the method is called by
3682	  super (i.e., ci->call == vm_call_super_method), skip the same
3683	  method entry as the current method to avoid infinite call of the
3684	  same method.
3685
3686	* class.c (include_modules_at): add a refined method entry for each
3687	  method defined in a module included in a refinement.
3688
3689	* class.c (rb_prepend_module): set an empty table to
3690	  RCLASS_M_TBL(klass) to add refined method entries, because
3691	  refinements should have priority over prepended modules.
3692
3693	* proc.c (mnew): use rb_method_entry_with_refinements() to get
3694	  a refined method.
3695
3696	* vm.c (rb_thread_mark): mark cfp->klass for iclasses created by
3697	  copy_refinement_iclass().
3698
3699	* vm.c (Init_VM), cont.c (fiber_init): initialize th->cfp->klass.
3700
3701	* test/ruby/test_refinement.rb (test_inline_method_cache): do not skip
3702	  the test because it should pass successfully.
3703
3704	* test/ruby/test_refinement.rb (test_redefine_refined_method): new
3705	  test for the case a refined method is redefined.
3706
3707Thu Dec  6 17:29:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3708
3709	* parse.y (parser_here_document): flush string content between new
3710	  line and :string_embexpr.  [ruby-core:48703] [Bug #7255]
3711
3712Thu Dec  6 16:35:21 2012  Eric Hodel  <drbrain@segment7.net>
3713
3714	* test/rake/helper.rb:  Load envutil correctly.  Removed useless rescue
3715	  for signal propagation tests
3716	* lib/rake/file_utils.rb:  Prefer the built ruby.
3717	* test/rake/test_rake_functional.rb:  ditto
3718
3719Thu Dec  6 15:20:34 2012  Eric Hodel  <drbrain@segment7.net>
3720
3721	* lib/rdoc/context.rb:  Don't warn for duplicate methods while loading.
3722	* test/rdoc/test_rdoc_context.rb:  Test for above.
3723
3724Thu Dec  6 14:26:22 2012  Eric Hodel  <drbrain@segment7.net>
3725
3726	* lib/rubygems/command_manager.rb:  Removed string concatenation
3727	  syntax.  [Bug #6265]
3728	* lib/rubygems/commands/install_command.rb:  ditto
3729	* lib/rubygems/commands/uninstall_command.rb:  ditto
3730	* lib/rubygems/indexer.rb:  ditto
3731	* lib/rubygems/security/policy.rb:  ditto
3732	* lib/rubygems/security.rb:  ditto
3733	* lib/rubygems/uninstaller.rb:  ditto
3734	* test/rubygems/test_gem_commands_cert_command.rb:  ditto
3735	* test/rubygems/test_gem_package.rb:  ditto
3736	* test/rubygems/test_gem_security.rb:  ditto
3737	* test/rubygems/test_gem_security_policy.rb:  ditto
3738
3739Thu Dec  6 14:10:08 2012  Eric Hodel  <drbrain@segment7.net>
3740
3741	* lib/rubygems/package.rb:  Set rubygems_version before validation.
3742	  Fixes issue with bundler.
3743	* test/rubygems/test_gem_package.rb:  Test for above.
3744
3745	* lib/rubygems/remote_fetcher.rb:  Only update the cache when we have
3746	  permission.  [ruby-trunk - Bug #7509]
3747	* lib/rubygems/source.rb (class Gem):  ditto
3748	* test/rubygems/test_gem_remote_fetcher.rb:  Test for above.
3749	* lib/rubygems/test_utilities.rb:  ditto
3750
3751	* lib/rubygems/specification.rb:  Derive base_dir properly for default
3752	  gems.  [ruby-trunk - Bug #7496]
3753	* test/rubygems/test_gem_specification.rb:  Test for above.
3754
3755	* lib/rubygems.rb:  Untaint Dir.pwd when searching for gemdeps files
3756	  for operation under $SAFE=1
3757
3758Thu Dec 06 12:07:11 2012  Koichi Sasada  <ko1@atdot.net>
3759
3760	* vm_trace.c: TracePoint#enable should not cause an error
3761	  when it is already enabled. TracePoint#disable is too.
3762	  [ruby-core:50561] [ruby-trunk - Bug #7513]
3763
3764	* test/ruby/test_settracefunc.rb: add tests.
3765
3766Thu Dec  6 07:19:58 2012  Eric Hodel  <drbrain@segment7.net>
3767
3768	* lib/rdoc*:  Improved display of ChangeLog files as HTML.
3769	* test/rdoc*:  Test for above.
3770
3771Thu Dec  6 04:34:19 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3772
3773	* thread.c (rb_uninterruptible): helper function for providing
3774	  temporary async_interrupt_timing(Object => :defer)
3775
3776	* io.c (rb_f_p): use rb_uninterruptible.
3777	* io.c (rb_f_p_internal): helper function for rb_f_p().
3778	* io.c (struct rb_f_p_arg): new struct for rb_f_p_internal.
3779
3780	* test/ruby/test_thread.rb (test_async_interrupt_and_p): test for
3781	  the above.
3782
3783Thu Dec  6 04:27:10 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3784
3785	* io.c (io_binwrite): check interrupt before io issue.
3786	* test/ruby/test_thread.rb (test_async_interrupt_and_io):
3787	  test for the above.
3788
3789Thu Dec  6 01:10:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3790
3791	* vm_eval.c (rb_method_call_status): use Qundef as no self instead of
3792	  the current self.
3793
3794	* vm_eval.c (send_internal): public_send does not consider how it is
3795	  called, as mentioned in r14173.  patched by charliesome (Charlie
3796	  Somerville).  [ruby-core:50489] [Bug #7499]
3797
3798Wed Dec  5 23:50:23 2012  Narihiro Nakamura  <authornari@gmail.com>
3799
3800	* gc.c (getrusage_time): uses clock_gettime() with
3801	  CLOCK_PROCESS_CPUTIME_ID when available, which provides a 1ns
3802	  precision on linux. [ruby-core:50495] [Bug #7500]
3803	  patched by Aman Gupta.
3804
3805Wed Dec  5 22:46:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3806
3807	* vm.c (rb_vm_make_proc): save the proc made from the given block so
3808	  that it will not get collected.  [ruby-core:50545] [Bug #7507]
3809
3810Wed Dec  5 22:13:57 2012  Naohisa Goto  <ngotogenome@gmail.com>
3811
3812	* ext/dl/lib/dl/func.rb (DL::Function#bind): When Fiddle is used,
3813	  @ptr should be updated. This fixes SEGV raised in DL::Function#call
3814	  after calling DL::Function#bind. [Bug #7516] [ruby-dev:46708]
3815
3816	* test/dl/test_func.rb (test_bind): test for the above
3817
3818Wed Dec  5 18:53:00 2012  Masaya Tarui  <tarui@ruby-lang.org>
3819
3820	* thread.c (rb_thread_s_async_interrupt_timing): have to check ints
3821	  before jumping out.
3822	* test/ruby/test_thread.rb (test_async_interrupt_with_return): add test
3823	  rescue has to catch a queued async exception at the time of return.
3824	* test/ruby/test_thread.rb (test_async_interrupt_with_break): add test
3825	  rescue has to catch a queued async exception at the time of break.
3826
3827Wed Dec  5 16:54:28 2012  Koichi Sasada  <ko1@atdot.net>
3828
3829	* test/ruby/memory_status.rb: suppress warning.
3830	  A patch from NAKAMURA Usaku.
3831
3832Wed Dec  5 16:06:54 2012  Eric Hodel  <drbrain@segment7.net>
3833
3834	* lib/rdoc/parser/changelog.rb:  Parse more ChangeLog file variations.
3835	* test/rdoc/test_rdoc_parser_changelog.rb:  Test for above.
3836
3837Wed Dec  5 12:17:11 2012  Naohisa Goto  <ngotogenome@gmail.com>
3838
3839	* ext/dl/lib/dl/func.rb (DL::Function#initialize, DL::Function#bind):
3840	  ABI should be set by using CFunc#calltype even when Fiddle is used.
3841	  When Fiddle is used and a block is given, name should not be ignored.
3842	  [ruby-core:50562] [Bug #7514]
3843
3844	* ext/dl/lib/dl/import.rb (DL::Importer#bind_function): should respect
3845	  abi and name when Fiddle is used.
3846
3847	* test/dl/test_func.rb (test_name_with_block): test for "name" method
3848	  with giving a block.
3849
3850Wed Dec  5 11:55:00 2012  Zachary Scott  <zachary@zacharyscott.net>
3851
3852	* doc/shell.rd, doc/shell.rd.ja: Removed stale doc files
3853	* lib/shell.rb, lib/shell/*: Merge and updates docs from doc/shell.rd*
3854
3855Wed Dec  5 11:42:38 2012  Koichi Sasada  <ko1@atdot.net>
3856
3857	* test/ruby/test_settracefunc.rb: disable trace.
3858
3859Wed Dec  5 11:37:37 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3860
3861	* lib/mkmf.rb (MakeMakefile#macro_defined?): use clearly different
3862	  strings from conflict markers.
3863
3864Wed Dec  5 04:25:00 2012  Zachary Scott  <zachary@zacharyscott.net>
3865
3866	* lib/README: Add rdoc modeline directive and formatting libs
3867
3868Wed Dec  5 04:04:02 2012  Masaya Tarui  <tarui@ruby-lang.org>
3869
3870	* test/ruby/test_thread.rb (test_async_interrupt_blocking): bugfix
3871	  about deferred check
3872
3873Wed Dec  5 03:35:37 2012  Masaya Tarui  <tarui@ruby-lang.org>
3874
3875	* vm_core.h (RUBY_VM_CHECK_INTS_BLOCKING): check async queue everytime.
3876	* thread.c (sleep_forever): check RUBY_VM_CHECK_INTS_BLOCKING first.
3877	* thread.c (sleep_timeval): ditto.
3878	* test/ruby/test_thread.rb (test_async_interrupt_blocking): add a test
3879	  exceptions are correctly deferred and raised on :on_blocking context.
3880
3881Wed Dec  5 02:36:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3882
3883	* common.mk, defs/id.def, template/id.c.tmpl: generate id.c as well as id.h.
3884
3885Wed Dec  5 00:56:21 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
3886
3887	* thread.c (rb_mutex_owned_p): new method that return current
3888	  thread have the target mutex or not. [Feature #7505] [ruby-dev:46697]
3889	* test/ruby/test_thread.rb (test_mutex_owned, test_mutex_owned2):
3890	  test for the above.
3891	* NEWS: new for the above.
3892
3893Wed Dec  5 00:05:47 2012  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
3894
3895	* lib/erb.rb (make_compiler, add_put_cmd, add_insert_cmd): extract
3896	  methods.
3897
3898Tue Dec  4 18:21:04 2012  Naohisa Goto  <ngotogenome@gmail.com>
3899
3900	* test/ruby/memory_status.rb (Memory): use fiddle/types if available.
3901
3902	* test/ruby/memory_status.rb (Memory::Win32): :stdcall is needed on
3903	  x86 WIN32. This commit partly reverts r38054.
3904
3905Tue Dec  4 18:05:58 2012  Naohisa Goto  <ngotogenome@gmail.com>
3906
3907	* ext/fiddle/lib/fiddle/types.rb: copied from ext/dl/lib/dl/types.rb
3908	  and modified for Fiddle, needed for migration from DL to Fiddle.
3909
3910Tue Dec  4 17:57:09 2012  Naohisa Goto  <ngotogenome@gmail.com>
3911
3912	* ext/fiddle/lib/fiddle/import.rb (import_function, bind_function):
3913	  should respect call_type for migration from DL to Fiddle.
3914	  [Bug #7484] [ruby-core:50405]
3915
3916Tue Dec  4 16:54:00 2012  Eric Hodel  <drbrain@segment7.net>
3917
3918	* .document:  Added ChangeLog and doc/ChangeLog-* as documentation
3919
3920Tue Dec  4 16:47:46 2012  Eric Hodel  <drbrain@segment7.net>
3921
3922	* lib/rdoc/parser/changelog.rb:  Added a ChangeLog parser to RDoc.
3923	* lib/rdoc/parser.rb:  ditto
3924	* test/rdoc/test_rdoc_parser_changelog.rb:  Test for above.
3925
3926Tue Dec  4 16:23:32 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3927
3928	* marshal.c (path2class, path2module): use PRIsVALUE.
3929
3930	* marshal.c (w_object, marshal_dump, marshal_load): use
3931	  rb_check_funcall if possible.
3932
3933	* marshal.c (w_object, marshal_dump, r_object0, marshal_load): use
3934	  RB_GC_GUARD() (directly or indirectly) instead of volatile.
3935
3936	* variable.c (rb_path_to_class): prevent the argument from GC.
3937
3938Tue Dec 04 13:55:07 2012  Koichi Sasada  <ko1@atdot.net>
3939
3940	* vm_opts.h: enable optimization - operand unification.
3941	  Operand unification technique enable to combine
3942	  an instruction and specific operands and make new
3943	  instruction.
3944
3945	* defs/opt_operand.def: add several configuration
3946	  of operand unification.
3947
3948	* insns.def: use `int' instead to suppress warning.
3949
3950Mon Dec  3 17:58:53 2012  NARUSE, Yui  <naruse@ruby-lang.org>
3951
3952	* parse.y: replace parser->enc with current_enc.
3953
3954Tue Dec  4 08:33:46 2012  Eric Hodel  <drbrain@segment7.net>
3955
3956	* README.EXT:  Converted to RDoc format
3957	* README.EXT.ja:  ditto
3958
3959Tue Dec  4 08:32:10 2012  Eric Hodel  <drbrain@segment7.net>
3960
3961	* lib/rdoc/ri/driver.rb:  Fixed ri page display for files with
3962	  extensions.
3963	* test/rdoc/test_rdoc_ri_driver.rb:  Test for above
3964
3965Tue Dec  4 04:11:50 2012  Eric Hodel  <drbrain@segment7.net>
3966
3967	* .document:  Add NEWS for `ri ruby:NEWS`
3968	* NEWS:  Set format as rdoc
3969	* doc/NEWS-1.8.7:  ditto
3970	* doc/NEWS-1.9.1:  ditto
3971	* doc/NEWS-1.9.2:  ditto
3972	* doc/NEWS-1.9.3:  ditto
3973
3974Mon Dec  3 20:37:22 2012  Koichi Sasada  <ko1@atdot.net>
3975
3976	* vm_exec.c: check VM_COLLECT_USAGE_DETAILS.
3977
3978Mon Dec  3 20:28:02 2012  Koichi Sasada  <ko1@atdot.net>
3979
3980	* compile.c (iseq_specialized_instruction):
3981	  change condition of using `opt_send_simple'.
3982	  More method invocations can be simple.
3983
3984Mon Dec  3 20:03:38 2012  Koichi Sasada  <ko1@atdot.net>
3985
3986	* test/ruby/test_objectspace.rb: skip RuntimeError
3987	  which says a message "can't modify frozen File".
3988	  Is that correct behavior?
3989
3990Mon Dec 03 20:00:19 2012  Koichi Sasada  <ko1@atdot.net>
3991
3992	* vm_exec.c: vm_analysis_insn should be static.
3993
3994Mon Dec  3 19:10:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3995
3996	* random.c (Init_Random), rational.c (Init_Rational): make marshal
3997	  methods private.  [Feature #6539]
3998
3999Mon Dec  3 18:29:27 2012  Koichi Sasada  <ko1@atdot.net>
4000
4001	* iseq.h: iseq_catch_table_entry::catch_type should be
4002	  Fixnum because they are pushed into Array in a compiler.
4003	  [Bug #7502]
4004
4005	* test/ruby/test_objectspace.rb: add a test of this issue.
4006
4007Mon Dec  3 18:25:16 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4008
4009	* template/id.h.tmpl (preserved_ids): "empty?" is not an attribute name.
4010
4011Mon Dec  3 16:23:09 2012  Koichi Sasada  <ko1@atdot.net>
4012
4013	* vm_backtrace.c (vm_backtrace_to_ary): check negative size (2nd arg).
4014
4015Mon Dec  3 15:50:33 2012  Akinori MUSHA  <knu@iDaemons.org>
4016
4017	* misc/ruby-additional.el (ruby-mode-set-encoding): Unbreak by
4018	  fixing a typo, s/set/setq/.
4019
4020Mon Dec  3 14:14:19 2012  Koichi Sasada  <ko1@atdot.net>
4021
4022	* compile.c (iseq_compile_each): joke shouldn't use id.h defined ids.
4023
4024	* id.c (Init_id): ditto.
4025
4026	* common.mk: fix dependency.
4027
4028Mon Dec  3 12:43:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4029
4030	* misc/ruby-mode.el (ruby-block-end-re, ruby-delimiter)
4031	  (ruby-mode-syntax-table, ruby-parse-partial, ruby-beginning-of-indent):
4032	  merge from Emacs.
4033
4034	* misc/ruby-mode.el (ruby-calculate-indent): fix indentation of
4035	  argument lines in parentheses.  [Bug #5140]
4036
4037Mon Dec  3 07:52:41 2012  Eric Hodel  <drbrain@segment7.net>
4038
4039	* lib/rdoc/parser.rb:  Improved modeline support.  Patch by nobu.
4040	* test/rdoc/test_rdoc_parser.rb:  Test for above.
4041
4042Sun Dec  3 00:06:00 2012  Kenta Murata  <mrkn@mrkn.jp>
4043
4044	* ext/bigdecimal/bigdecimal.c (BigDecimal_new): stop checking string
4045	  taintness.  [Bug #5508] [ruby-core:40510]
4046
4047Sun Dec  2 19:26:47 2012  Masaya Tarui  <tarui@ruby-lang.org>
4048
4049	* thread.c (RB_GC_SAVE_MACHINE_CONTEXT, rb_gc_save_machine_context):
4050	  extract rb_gc_save_machine_context to RB_GC_SAVE_MACHINE_CONTEXT.
4051	  NOTE: machine_regs and machine_stack_end must be set in current scope.
4052
4053Sun Dec  2 18:46:24 2012  Koichi Sasada  <ko1@atdot.net>
4054
4055	* array.c, enum.c, insns.def, io.c, numeric.c, parse.y, process.c,
4056	  range.c: use prepared IDs.
4057	  A patch from charliesome (Charlie Somerville).
4058	  [Bug #7495]
4059
4060	* common.mk: add dependency to id.h.
4061
4062	* common.mk: replace ID_H_INCLUDES with id.h.
4063
4064Sun Dec  2 16:48:00 2012  Zachary Scott  <zachary@zacharyscott.net>
4065
4066	* lib/weakref.rb (rdoc): Clean up usage, add example,
4067	  note ArgumentError on WeakRef.new
4068
4069Sun Dec  2 16:45:00 2012  Zachary Scott  <zachary@zacharyscott.net>
4070
4071	* gc.c (WeakMap): Add doc for internal reference, use lib/weakref.rb
4072
4073Sun Dec  2 07:24:23 2012  Eric Hodel  <drbrain@segment7.net>
4074
4075	* lib/rdoc/parser.rb:  Parse files with a -*- rdoc -*- modeline
4076	* test/rdoc/test_rdoc_parser.rb:  Test for above
4077
4078Sun Dec  2 06:02:00 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4079
4080	* gc.h (SET_MACHINE_STACK_END): add volatile for preventing
4081	  harmful optimization.  [ruby-dev:46665] [Bug #7468]
4082
4083Sun Dec  2 05:01:58 2012  Koichi Sasada  <ko1@atdot.net>
4084
4085	* iseq.c (rb_iseq_line_trace_each): iterate `line' event only.
4086
4087	* test/ruby/test_iseq.rb: add a test for this change.
4088
4089Sun Dec  2 02:46:04 2012  Koichi Sasada  <ko1@atdot.net>
4090
4091	* vm_trace.c: add TracePoint#inspect.
4092
4093	* test/ruby/test_settracefunc.rb: add a test for this change.
4094
4095Sat Dec  1 21:18:19 2012  Koichi Sasada  <ko1@atdot.net>
4096
4097	* test/ruby/test_backtrace.rb: add a test for
4098	  Thread::Backtrace::Location#inspect.
4099	  BTW, tests for `caller_locations' are not enough.
4100	  Any volunteers are welcome.
4101
4102Sat Dec  1 21:06:58 2012  Koichi Sasada  <ko1@atdot.net>
4103
4104	* vm_backtrace.c (location_inspect_m): add
4105	  Thread::Backtrace::Location#inspect.
4106	  It same as loc_obj.to_s.inspect.
4107
4108Sat Dec  1 19:24:09 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4109
4110	* io.c (rb_io_puts): recurse for the argument itself, not converted
4111	  array elements.  [ruby-core:42444] [Bug #5986]
4112
4113Sat Dec  1 19:01:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4114
4115	* marshal.c (w_object, r_object0): call private marshal methods.
4116	  [Feature #6539]
4117
4118Sat Dec  1 18:52:22 2012  Eric Hodel  <drbrain@segment7.net>
4119
4120	* lib/rubygems/commands/cleanup_command.rb:  Fix cleanup command for
4121	  multiple gems.  [ruby-trunk - #7481] by Kouhei Sutou
4122	* test/rubygems/test_gem_commands_cleanup_command.rb:  Test for above.
4123	* lib/rubygems.rb:  Autoload Gem::Source to prevent test failures
4124
4125Sat Dec  1 18:17:00 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4126
4127	* complex.c (Init_Complex), time.c (Init_Time): make marshal methods
4128	  private.  [Feature #6539]
4129
4130	* object.c (Init_Object): make remove_instance_variable public.
4131	  [Feature #6539]
4132
4133	* id.c (Init_id), template/id.h.tmpl: add initialize_{copy,clone,dup}
4134	  and respond_to_missing?.
4135
4136	* vm_method.c (rb_method_entry_make): make above methods private.
4137	  [Feature #6539]
4138
4139Sat Dec  1 16:40:22 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4140
4141	* test/ruby/test_thread.rb: move ConditionVariable related test
4142	  into test/thread/test_cv.rb.
4143	* test/thread/test_cv.rb: new file.
4144	* test/thread/test_cv.rb (test_condvar_empty_signal): new tests.
4145	* test/thread/test_cv.rb (test_condvar_empty_broadcast): ditto.
4146
4147Sat Dec  1 15:14:25 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4148
4149	* test/ruby/test_thread.rb (test_cv_wait_deadlock): enable
4150	  cv deadlock test.
4151
4152Sat Dec  1 14:23:33 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4153
4154	* lib/thread.rb (ConditionVariable): use hash instead of array for
4155	  @waiters.
4156	* test/thread/test_queue.rb (test_sized_queue_and_wakeup): remove
4157	  a test because @waiters no longer have a chance to duplicated. Now it's
4158	  a hash.
4159
4160Sat Dec  1 17:16:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4161
4162	* misc/ruby-electric.el (ruby-electric-curlies): use kill-region
4163	  instead of interactive command delete-backward-char.
4164
4165Sat Dec  1 17:12:55 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4166
4167	* misc/inf-ruby.el (inferior-ruby-mode): fix the
4168	  compilation-shell-minor-mode configuration.  a patch by
4169	  j2petkov (Jean-Christophe Petkovich) in [ruby-core:46518].
4170	  [Bug #6742]
4171
4172Sat Dec  1 15:05:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4173
4174	* dir.c (glob_helper): use NAMLEN() to tell the length of d_name
4175	  instead of strlen(), which can access beyond the boundary.
4176
4177Sat Dec  1 13:48:13 2012  Eric Hodel  <drbrain@segment7.net>
4178
4179	* lib/rubygems/specification.rb:  Don't add default gems to $LOAD_PATH
4180	  as they are already there.
4181
4182Sat Dec  1 12:22:17 2012  Kouhei Sutou  <kou@cozmixng.org>
4183
4184	* re-added r38053 that is reverted by r38061. Problems by r38053
4185	  are resolved by r38096. r38096 removed GEM_SKIP configuration.
4186
4187	  The below is ChangeLog of r38053:
4188
4189	* defs/default_gems: Add base directory column.
4190
4191	* tool/rbinstall.rb:
4192	  - Install .gemspecs of default gem to
4193	    #{GEM_HOME}/specifications/default/.
4194	  - Update files parameter of .gemspecs by relative path from
4195	    library directory.
4196
4197Sat Dec  1 11:09:12 2012  Aaron Patterson <aaron@tenderlovemaking.com>
4198
4199	* variable.c (rb_class_path_no_cache): add a function to get the class
4200	  path without caching the computed path. Some classes are frozen, and
4201	  will raise an exception without this.
4202
4203	* probes.d (cmethod-entry, cmethod-return): separate cmethods from
4204	  regular methods to match set trace func.
4205
4206	* probes_helper.h: refactor macros.  Fix probes to avoid calling
4207	  #inspect when profiling.
4208
4209	* insns.def: update for use with new macros.
4210
4211	* vm_eval.c: ditto
4212
4213	* vm_insnhelper.c: ditto
4214
4215	* test/dtrace/test_singleton_function.rb: fix test for new output.
4216
4217	* test/dtrace/test_cmethod.rb: test the cmethod probes.
4218
4219Sat Dec  1 09:44:16 2012  Eric Hodel  <drbrain@segment7.net>
4220
4221	* test/rdoc/test_rdoc_options.rb:  Windows drive letters are
4222	  case-insensitive.
4223
4224Sat Dec  1 09:42:13 2012  Eric Hodel  <drbrain@segment7.net>
4225
4226	* lib/rubygems.rb:  Search for gem deps file up the directory tree.
4227	* test/rubygems/test_gem.rb:  Test for above.
4228
4229Sat Dec  1 09:33:32 2012  Eric Hodel  <drbrain@segment7.net>
4230
4231	* test/runner.rb:  Set GEM_HOME, GEM_PATH and GEM_SKIP to empty set.
4232	  With default_gem support in RubyGems GEM_SKIP prevents loading of
4233	  built-in gems.
4234
4235Sat Dec  1 07:16:17 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
4236
4237	* compile.c (ADD_CATCH_ENTRY): add a cast to fix SEGV with x64 mingw
4238	  on Windows 8. Without cast, 0 might be non zero value at higher bits
4239	  in rb_ary_new3().
4240	  [ruby-core:50258] [Bug #7456]
4241
4242Sat Dec  1 04:07:57 2012  NARUSE, Yui  <naruse@ruby-lang.org>
4243
4244	* parse.y (parser.utf8): remove unused property.
4245
4246	* parse.y (UTF8_ENC): remove unused macro.
4247
4248	* parse.y (parser_tokadd_utf8): use rb_utf8_encoding() directly.
4249
4250Sat Dec  1 03:49:45 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4251
4252	* lib/sync.rb (Sync_m#sync_synchronize): add Thread.async_interrupt_timing
4253	  for protecting from async interrupt.
4254	* lib/sync.rb (Sync_m#sync_lock): ditto.
4255
4256Sat Dec  1 03:38:04 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4257
4258	* lib/thread.rb (ConditionVariable#broadcast): s/RuntimeError/StandardError/
4259	* lib/thread.rb (ConditionVariable#signal): ditto.
4260
4261Sat Dec  1 03:29:52 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4262
4263	* lib/thread.rb (SizedQueue#pop): rewrite by using ConditionVariable.
4264	* lib/thread.rb (SizedQueue#push): ditto.
4265	* lib/thread.rb (SizedQueue#max): ditto.
4266	* lib/thread.rb (Queue#pop): ditto.
4267	* lib/thread.rb (Queue#push): ditto.
4268
4269	* lib/thread.rb (SizedQueue#num_waiting): adopt the above changes.
4270	* lib/thread.rb (SizedQueue#initialize): ditto.
4271	* lib/thread.rb (Queue#num_waiting): ditto.
4272	* lib/thread.rb (Queue#initialize): ditto.
4273	* test/thread/test_queue.rb (test_sized_queue_and_wakeup): ditto.
4274
4275Sat Dec  1 03:45:47 2012  Koichi Sasada  <ko1@atdot.net>
4276
4277	* thread.c (Thread.async_interrupt_timing): fix RDoc.
4278	  :never is not used any more.
4279
4280Sat Dec  1 02:56:19 2012  Koichi Sasada  <ko1@atdot.net>
4281
4282	* iseq.c: add RubyVM::InstructionSequence (ISeq) inspection methods.
4283	  * ISeq#path returns path of this ISeq written.
4284	  * ISeq#absolute_path returns absolute path.
4285	  * ISeq#label returns label (method name and so on).
4286	  * ISeq#base_label returns base label (see Thread::Backtrace::Location).
4287	  * ISeq#first_lineno returns first line number of this ISeq.
4288	  * ISeq.of(obj) returns ISeq object which obj (Proc or Method)
4289	    is contains.
4290
4291	* test/ruby/test_iseq.rb: add tests.
4292
4293Sat Dec  1 02:58:51 2012  Eric Hodel  <drbrain@segment7.net>
4294
4295	* include/ruby/ruby.h (rb_event_flag_t):  Maintain integer precision
4296	  for clang error (VALUE aka unsigned long vs unsigned int)
4297
4298Sat Dec  1 02:53:18 2012  Eric Hodel  <drbrain@segment7.net>
4299
4300	* test/rubygems/test_gem_dependency_installer.rb:  Use Gem.read_binary
4301	  instead of File.binread for ruby 1.8 compatibility in the rubygems
4302	  source repository.  Updates r38075
4303
4304Sat Dec  1 02:33:20 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4305
4306	* thread.c (rb_threadptr_interrupt_mask, async_interrupt_timing_func):
4307	  merge into them into rb_thread_s_async_interrupt_timing.
4308	* thread.c (rb_thread_s_async_interrupt_timing): ditto.
4309
4310Sat Dec  1 02:11:47 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4311
4312	* thread.c (rb_threadptr_interrupt_mask): add argument check.
4313	* thread.c (async_interrupt_timing_arg_check_i): helper function
4314	  for the above.
4315	* test/ruby/test_thread.rb (test_async_interrupt_timing_invalid_argument):
4316	  test for the above.
4317
4318Sat Dec  1 01:19:34 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4319
4320	* lib/thread.rb (ConditionVariable#broadcast): protect from
4321	  async interrupt by using Thread.async_interrupt_timing.
4322	* lib/thread.rb (ConditionVariable#signal): ditto.
4323	* lib/thread.rb (ConditionVariable#wait): ditto.
4324
4325Sat Dec  1 02:04:23 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
4326
4327	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_in_out_err):
4328	  raise if assert_in_out_err misused.
4329
4330Sat Dec  1 02:08:16 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
4331
4332	* test/rdoc/test_rdoc_rubygems_hook.rb
4333	  (TestRDocRubygemsHook#test_setup_unwritable): 1. check the existence
4334	  of the file(directory) before touch it.  2. remove test
4335	  file(directory) after the test.  see [ruby-core:50388].
4336
4337Sat Dec  1 01:51:06 2012  Koichi Sasada  <ko1@atdot.net>
4338
4339	[EXPERIMENTAL]
4340	* iseq.c: add following two methods.
4341	  * ISeq#line_trace_all returns all line traces (line numbers)
4342	  * ISeq#line_trace_specify(pos, set) set `pos'th line event to
4343	    specified_line event (if set is true).
4344	  These features are introduced for debuggers (mainly to make
4345	  breakpoint).
4346
4347	* iseq.h: add decl. of C APIs.
4348
4349	* test/ruby/test_iseq.rb: add tests.
4350
4351	* vm_trace.c: add `specified_line' event.
4352
4353	* include/ruby/ruby.h: ditto.
4354
4355Sat Dec  1 01:49:52 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
4356
4357	* test/rubygems/test_gem_dependency_installer.rb: gems are of course
4358	  binary files, so use a binary reading method when reading it.
4359	  see [ruby-core:50388].
4360
4361Sat Dec  1 01:21:07 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
4362
4363	* lib/rubygems/command.rb (Gem::Command#get_all_gem_names_and_versions):
4364	  who assumes that the pathname of a gem never contains ':' ?
4365	  yes, on Unixen pathnames can contain ':', and on Windows they almost
4366	  certainly contain ':'.  see [ruby-core:50388].
4367
4368	* lib/rubygems/requirement.rb (Gem::Requirement::PATTERN_RAW): extract
4369	  the regexp to match the version specifier from PATTERN to use in
4370	  above method.
4371
4372Sat Dec  1 00:48:19 2012  Naohisa Goto  <ngotogenome@gmail.com>
4373
4374	* ext/fiddle/extconf.rb, ext/fiddle/function.c
4375	  (Fiddle::Function::STDCALL): FFI_STDCALL is not a macro, but an
4376	  enumeration. [ruby-core:50398] [Bug #7483]
4377
4378Sat Dec  1 00:08:55 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
4379
4380	* test/rubygems/test_gem_installer.rb
4381	  (TestGemInstaller#test_check_executable_overwrite_other_non_gem):
4382	  on Windows, rubygems always generate a wrapper .bat file when
4383	  installing a file into bin, so testing no-overwrite a wrapper file
4384	  and a non-wrapper file is nonsense.  see [ruby-core:50388].
4385
4386Fri Nov 30 23:39:58 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
4387
4388	* test/rubygems/test_gem_installer.rb
4389	  (TestGemInstaller#test_check_executable_overwrite_default_bin_dir):
4390	  if the executable to be overwritten was generated by rubygems, the
4391	  error message differs from the only copied one's.
4392	  see [ruby-core:50388].
4393
4394Fri Nov 30 23:27:26 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
4395
4396	* test/rubygems/test_gem_ext_ext_conf_builder.rb
4397	  (TestGemExtExtConfBuilder::test_class_make): reading with binary mode
4398	  of course introduce \r on Windows.  see [ruby-core:50388].
4399
4400Fri Nov 30 23:11:37 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
4401
4402	* lib/rubygems/specification.rb
4403	  (Gem::Specification.validate_permissions): don't check executability
4404	  of the source on Windows.  they will be wrapped to .bat files when
4405	  installing.  see [ruby-core:50388].
4406
4407Fri Nov 30 22:44:14 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4408
4409	* vm_core.h (rb_vm_struct): add thread_destruct_lock field.
4410	* thread.c (Init_Thread): ditto.
4411	* thread.c (rb_vm_gvl_destroy): ditto.
4412
4413	* thread.c (thread_start_func_2): make sure vm->running_thread
4414	  don't point to dead thread.
4415	* thread.c (timer_thread_function): close a race against thread
4416	  destruction. [Bug #4911][ruby-dev:43859]
4417
4418	* vm_core.h (rb_thread_set_current): reset running time of
4419	  current thread instead of previous thread. We no longer
4420	  assume previous running thread still live.
4421
4422Fri Nov 30 21:57:43 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
4423
4424	* revert r38053 because it causes too many test failures.
4425	  if you've already installed r38053 or later, remove the installed
4426	  lib/ruby/gems/2.0.0 directory and reinstall this revision or later.
4427
4428Fri Nov 30 21:07:56 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
4429
4430	* lib/test/unit/parallel.rb (Test::Unit::Worker.run): wrap LoadError
4431	  because it's Gem::LoadError sometimes.  see [Bug #6882]
4432
4433Fri Nov 30 20:47:44 2012  Koichi Sasada  <ko1@atdot.net>
4434
4435	* thread.c: TracePoint#self returns invoking/exiting thread object
4436	  at thread_begin/end event.
4437
4438	* test/ruby/test_settracefunc.rb: fix test.
4439
4440Fri Nov 30 19:55:17 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
4441
4442	* test/ruby/memory_status.rb (Memory::Win32): use fiddle instead of dl,
4443	  but I doubt fiddle is not compatible with dl. (if you are interested,
4444	  see the diff.)  [ruby-core:50194] [Bug #7443]
4445
4446Fri Nov 30 19:37:44 2012  Kouhei Sutou  <kou@cozmixng.org>
4447
4448	* defs/default_gems: Add base directory column.
4449
4450	* tool/rbinstall.rb:
4451	  - Install .gemspecs of default gem to
4452	    #{GEM_HOME}/specifications/default/.
4453	  - Update files parameter of .gemspecs by relative path from
4454	    library directory.
4455
4456Fri Nov 30 19:30:00 2012  Zachary Scott  <zachary@zacharyscott.net>
4457
4458	* vm_trace.c:
4459	  tracepoint_attr_return_value (TracePoint#return_value):
4460	    include `:b_return` for method doc
4461	  tracepoint_enable_m, tracepoint_disable_m (#enable/#disable):
4462	    don't have block argument, document block scope
4463
4464Fri Nov 30 18:52:56 2012  Koichi Sasada  <ko1@atdot.net>
4465
4466	* vm_trace.c (tracepoint_disable_m, tracepoint_enable_m):
4467	  fix block parameter.
4468	  No argument should be given to a block which is passed
4469	  to TracePoint#enable (and disable).
4470
4471Fri Nov 30 18:23:26 2012  Koichi Sasada  <ko1@atdot.net>
4472
4473	* thread.c: rename Thread.control_interrupt
4474	  to Thread.async_interrupt_timing.
4475	  The option name `:never' is also changed to  `:defer'.
4476	  [ruby-core:50375] [ruby-trunk - Feature #6762]
4477
4478	* thread.c: remove Thread.check_interrupt.
4479	  This method is difficult to understand by name.
4480
4481	* thread.c: add Thread.async_interrupted?.
4482	  This method check any deferred async interrupts.
4483
4484	* test/ruby/test_thread.rb: change tests for above.
4485
4486Fri Nov 30 18:24:00 2012  Zachary Scott  <zachary@zacharyscott.net>
4487
4488	* vm_trace.c: Documentation for TracePoint API
4489	  [ruby-core:47243] [Feature #6895]
4490
4491Fri Nov 30 17:43:50 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4492
4493	* string.c (rb_str_cmp_m): try to compare with to_str result if
4494	  possible before calling <=> method.  [ruby-core:49279] [Bug #7342]
4495
4496	* string.c (rb_str_cmp_m): use rb_check_funcall instead of respond_to
4497	  and call.
4498
4499	* string.c (rb_str_cmp_m): return fixed value, one of -1,0,+1 always.
4500
4501Fri Nov 30 16:19:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4502
4503	* vm_dump.c (rb_vm_bugreport): get rid of calling methods in sigsegv
4504	  handler.  based on a patch by charliesome (Charlie Somerville)
4505	  [ruby-core:49573] [Bug #7402]
4506
4507Fri Nov 30 16:05:44 2012  Eric Hodel  <drbrain@segment7.net>
4508
4509	* NEWS:  Added RubyGems 2.0.0
4510
4511Fri Nov 30 15:24:37 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4512
4513	* parse.y (parser_yylex): fix false usage of local variable, it cannot
4514	  appear in fname state [ruby-core:49659] [Bug #7408]
4515
4516Fri Nov 30 15:20:12 2012  Eric Hodel  <drbrain@segment7.net>
4517
4518	* lib/rubygems/package.rb:  Load YAML for building gems.
4519	* test/rubygems/test_gem_commands_contents_command.rb:  Sort expected
4520	  output of default gem contents.  Re-fixes r38004 and r38005.
4521
4522Fri Nov 30 15:15:00 2012  Zachary Scott  <zachary@zacharyscott.net>
4523
4524	* vm_trace.c (set_trace_func): Formatting of params and events
4525
4526Fri Nov 30 14:45:00 2012  Zachary Scott  <zachary@zacharyscott.net>
4527
4528	* lib/net/http.rb: Net::HTTP::Patch to list of HTTP Request Classes
4529	  Patch by Ryunosuke SATO [Fixes #217 on github]
4530
4531Fri Nov 30 14:05:00 2012  Zachary Scott  <zachary@zacharyscott.net>
4532
4533	* lib/cgi.rb: CGI example for HTML generation
4534	  Patch by Marcus Stollsteimer [ruby-core:50303] [Bug #7465]
4535
4536Fri Nov 30 13:52:00 2012  Zachary Scott  <zachary@zacharyscott.net>
4537
4538	* time.c: Documentation improvements, grammar and formatting
4539	  Patch by Bernd Homuth [ruby-core:49203] [Bug #7326]
4540
4541Fri Nov 30 13:48:33 2012  Eric Hodel  <drbrain@segment7.net>
4542
4543	* lib/rdoc.rb:  Set version to 4.0.0.preview2
4544	* lib/rubygems.rb:  Set version to 2.0.0.preview2
4545
4546Fri Nov 30 13:11:53 2012  Eric Hodel  <drbrain@segment7.net>
4547
4548	* lib/rubygems/commands/setup_command.rb:  Remove old files on install
4549	  of RubyGems.  (not by rbinstall.rb).
4550	* test/rubygems/test_gem_commands_setup_command.rb:  Test for above.
4551
4552Fri Nov 30 12:47:59 2012  Akinori MUSHA  <knu@iDaemons.org>
4553
4554	* lib/abbrev.rb (Abbrev#abbrev): A fixed string prefix pattern
4555	  should only match the beginning of each word, not the beginning
4556	  of every line in it.
4557
4558	* lib/abbrev.rb (Abbrev#abbrev): Stop using a regexp that causes a
4559	  false warning. [Bug #7471]
4560
4561Fri Nov 30 12:30:55 2012  Akinori MUSHA  <knu@iDaemons.org>
4562
4563	* test/test_abbrev.rb: Add tests for lib/abbrev.rb.
4564
4565Fri Nov 30 12:27:51 2012  Eric Hodel  <drbrain@segment7.net>
4566
4567	* lib/rubygems/spec_fetcher.rb:  Allow prerelease spec fetching to fail
4568	  for bundler.
4569	* test/rubygems/test_gem_spec_fetcher.rb:  Test for above.
4570
4571Fri Nov 30 12:20:53 2012  Eric Hodel  <drbrain@segment7.net>
4572
4573	* lib/rake/backtrace.rb:  Removed duplication in
4574	  Rake::Backtrace::SUPPRESSED_PATHS
4575	* test/rake/test_rake_backtrace.rb:  Skip tests when tmpdir is in the
4576	  suppressed pattern.
4577
4578Fri Nov 30 11:07:45 2012  Shugo Maeda  <shugo@ruby-lang.org>
4579
4580	* revert r37993 to avoid SEGV in tests.
4581
4582Fri Nov 30 10:38:54 2012  Eric Hodel  <drbrain@segment7.net>
4583
4584	* lib/rdoc/ri/driver.rb:  Relaxed matching for pages to be more
4585	  user-friendly.
4586	* test/rdoc/test_rdoc_ri_driver.rb:   Test for above.
4587
4588Fri Nov 30 09:50:16 2012  Eric Hodel  <drbrain@segment7.net>
4589
4590	* lib/rdoc/markdown.rb:  Fixed warnings with -w
4591
4592Fri Nov 30 09:38:22 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4593
4594	* include/ruby/ruby.h (RB_GC_GUARD_PTR): add note.
4595
4596	* vm_backtrace.c (backtrace_to_str_ary): use RB_GC_GUARD() instead of
4597	  RB_GC_GUARD_PTR() which has no effect.
4598	  (backtrace_to_location_ary): ditto.
4599	  (vm_backtrace_to_ary): ditto.
4600
4601Fri Nov 30 09:22:52 2012  Eric Hodel  <drbrain@segment7.net>
4602
4603	* lib/rubygems/commands/contents_command.rb:  Sort output from command.
4604	  Replaces r38004, r38005
4605	* test/rubygems/test_gem_commands_contents_command.rb:  ditto.
4606
4607	* lib/rubygems/defaults.rb:  Use Gem.path_separator for jruby support.
4608	* lib/rubygems/path_support.rb:  ditto
4609
4610Fri Nov 30 08:34:03 2012  Eric Hodel  <drbrain@segment7.net>
4611
4612	* lib/rdoc/generator/darkfish.rb:  Silenced warning
4613	* test/rdoc/test_rdoc_rdoc.rb:  ditto
4614
4615	* lib/rdoc/markup/parser.rb:  Use byteslice when available for
4616	  performance
4617	* test/rdoc/test_rdoc_markup_parser.rb:  Test for above
4618	* lib/rdoc/test_case.rb:  ditto
4619
4620	* lib/rdoc/parser/ruby.rb:  Fixed bug parsing yield({})
4621	* test/rdoc/test_rdoc_parser_ruby.rb (end):
4622
4623	* lib/rdoc/rubygems_hook.rb:  Skip default gems.  Display generator
4624	  name properly.
4625	* test/rdoc/test_rdoc_rubygems_hook.rb:  Test for above
4626
4627	* lib/rdoc/servlet.rb:  Fixed typo.
4628
4629Fri Nov 30 08:09:56 2012  Narihiro Nakamura  <authornari@gmail.com>
4630
4631	* gc.c : remove a unused function.
4632
4633Fri Nov 30 07:46:42 2012  Narihiro Nakamura  <authornari@gmail.com>
4634
4635	* gc.c (rb_objspace_call_finalizer): finalize_deferred may free up
4636	  a object which is reachable from a part after this function,
4637	  e.g. ruby_vm_destruct(). [ruby-dev:46647] [Bug #7452]
4638
4639	* test/ruby/test_gc.rb (test_finalizing_main_thread): add a test
4640	  for above.
4641
4642Fri Nov 30 07:43:44 2012  Koichi Sasada  <ko1@atdot.net>
4643
4644	* thread.c (rb_thread_interrupted): avoid warning of
4645	  implicit conversion.
4646
4647	* thread.c (rb_threadptr_execute_interrupts): ditto.
4648
4649Fri Nov 30 07:34:28 2012  Koichi Sasada  <ko1@atdot.net>
4650
4651	* vm_backtrace.c: add GC guards.
4652
4653Fri Nov 30 07:21:33 2012  Koichi Sasada  <ko1@atdot.net>
4654
4655	[EXPERIMENTAL: NEED DISCUSS]
4656	* vm_trace.c: add events
4657	  * :thread_begin - hook at thread beginning.
4658	  * :thread_end - hook at thread ending.
4659	  * :b_call - hook at block enter.
4660	  * :b_return - hook at block leave.
4661	  This change slow down block invocation.
4662	  Please try and give us feedback until 2.0 code freeze.
4663
4664	* include/ruby/ruby.h: ditto.
4665
4666	* compile.c (rb_iseq_compile_node): ditto.
4667
4668	* insns.def: ditto.
4669
4670	* thread.c: ditto.
4671
4672	* vm.c: ditto.
4673
4674	* include/ruby/debug.h: add a comment.
4675
4676	* test/ruby/test_settracefunc.rb: add a tests.
4677
4678Fri Nov 30 06:56:30 2012  Ryan Davis  <ryand-ruby@zenspider.com>
4679
4680	* test/minitest/*: Imported minitest 4.3.2 (r8027)
4681
4682Fri Nov 30 04:16:29 2012  Eric Hodel  <drbrain@segment7.net>
4683
4684	* lib/rake/*:  Updated to rake 0.9.5
4685	* test/rake/*:  ditto.
4686	* NEWS:  ditto.
4687
4688Fri Nov 30 02:53:47 2012  Aaron Patterson <aaron@tenderlovemaking.com>
4689
4690	* vm.c: add a return hook when a method raises an exception.
4691
4692	* probes_helper.h: look up klass and method if none are provided.
4693
4694	* eval.c: update macro usage.
4695
4696	* vm_eval.c: ditto.
4697
4698	* vm_insnhelper.c: ditto.
4699
4700	* test/dtrace/test_function_entry.rb: test for change.
4701
4702Fri Nov 30 02:27:12 2012  NARUSE, Yui  <naruse@ruby-lang.org>
4703
4704	* compile.c (compile_array_): refix r37991 remove assertion:
4705	  it is true only if type == COMPILE_ARRAY_TYPE_HASH.
4706	  [ruby-dev:46658] [Bug #7466]
4707
4708	* vm.c (m_core_hash_from_ary): add assertion instead of above.
4709
4710	* vm.c (m_core_hash_merge_ary): ditto.
4711
4712Thu Nov 29 19:15:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4713
4714	* compile.c (compile_array_): hash elements must be paired even for
4715	  literal elements.  [ruby-dev:46658] [Bug #7466]
4716
4717Thu Nov 29 22:39:35 2012  Naohisa Goto  <ngotogenome@gmail.com>
4718
4719	* ext/openssl/ossl_ssl.c (ssl_npn_encode_protocol_i): fix byte order
4720	  issue on big-endian architecture [ruby-core:50292] [Bug #7463]
4721
4722Thu Nov 29 22:23:31 2012  Hiroshi Nakamura  <nahi@ruby-lang.org>
4723
4724	* test/openssl/test_cipher.rb (test_ctr_if_exists): add CTR mode test
4725	  if underlying OpenSSL supports it. See #4408
4726
4727Thu Nov 29 21:42:16 2012  Shugo Maeda  <shugo@ruby-lang.org>
4728
4729	* vm_method.c (rb_method_entry_make): add a method entry with
4730	  VM_METHOD_TYPE_REFINED to the class refined by the refinement if
4731	  the target module is a refinement.  When a method entry with
4732	  VM_METHOD_TYPE_UNDEF is invoked by vm_call_method(), a method with
4733	  the same name is searched in refinements.  If such a method is
4734	  found, the method is invoked.  Otherwise, the original method in
4735	  the refined class (rb_method_definition_t::body.orig_def) is
4736	  invoked.  This change is made to simplify the normal method lookup
4737	  and to improve the performance of normal method calls.
4738
4739	* vm_method.c (EXPR1, search_method, rb_method_entry),
4740	  vm_eval.c (rb_call0, rb_search_method_entry): do not use
4741	  refinements for method lookup.
4742
4743	* vm_insnhelper.c (vm_call_method): search methods in refinements if
4744	  ci->me is VM_METHOD_TYPE_REFINED.  If the method is called by
4745	  super (i.e., ci->call == vm_call_super_method), skip the same
4746	  method entry as the current method to avoid infinite call of the
4747	  same method.
4748
4749	* class.c (include_modules_at): add a refined method entry for each
4750	  method defined in a module included in a refinement.
4751
4752	* class.c (rb_prepend_module): set an empty table to
4753	  RCLASS_M_TBL(klass) to add refined method entries, because
4754	  refinements should have priority over prepended modules.
4755
4756	* proc.c (mnew): use rb_method_entry_with_refinements() to get
4757	  a refined method.
4758
4759	* test/ruby/test_refinement.rb (test_inline_method_cache): do not skip
4760	  the test because it should pass successfully.
4761
4762	* test/ruby/test_refinement.rb (test_redefine_refined_method): new
4763	  test for the case a refined method is redefined.
4764
4765Thu Nov 29 17:45:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4766
4767	* variable.c (rb_const_set): show namespace in warning messages.
4768	  [Feature #7190]
4769
4770Thu Nov 29 17:31:53 2012  NARUSE, Yui  <naruse@ruby-lang.org>
4771
4772	* lib/rubygems.rb (Gem.load_yaml): return if Kernel#gem is not defined
4773	  yet. This causes crash if test-all requires libraries in a certain
4774	  order. A simple reproducible code is
4775	  ruby --disable-gem -e'require"yaml";require"minitest/autorun"'
4776
4777Thu Nov 29 17:19:26 2012  Eric Hodel  <drbrain@segment7.net>
4778
4779	* lib/tracer.rb:  Updated to match removal of custom_require from
4780	  RubyGems.
4781	* test/test_tracer.rb:  ditto.  Improved failure message if the test
4782	  fails
4783
4784Thu Nov 29 17:15:00 2012  Zachary Scott  <zachary@zacharyscott.net>
4785
4786	* gc.c: Documentation for GC, GC::Profiler, ObjectSpace, and
4787	  ObjectSpace::WeakMap [ruby-core:50245] [Bug #7449]
4788
4789Thu Nov 29 17:12:26 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4790
4791	* tool/generic_erb.rb, tool/id2token.rb: add --path-separator option
4792	  for mingw where make and built ruby live in different world.
4793
4794	* tool/vpath.rb: extract from tool/instruction.rb.
4795
4796Thu Nov 29 17:11:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4797
4798	* test/io/wait/test_io_wait.rb (TestIOWait#fill_pipe):
4799	  Errno::EWOULDBLOCK may not be the same as Errno::EAGAIN.  patch by
4800	  phasis68 (Heesob Park) at [ruby-core:49894].  [Bug #7420]
4801
4802Thu Nov 29 17:03:38 2012  Eric Hodel  <drbrain@segment7.net>
4803
4804	* lib/rubygems/test_case.rb:  Determine path to certificates to avoid
4805	  build-dir problems.
4806	* test/rubygems/test_gem_security_signer.rb:  Use predetermined paths
4807	  to avoid build-dir problems.
4808
4809Thu Nov 29 16:18:14 2012  Eric Hodel  <drbrain@segment7.net>
4810
4811	* lib/rubygems/test_case.rb:  Disable loading of keys and certificates
4812	  outside rubygems or ruby tests as the files are not available (or
4813	  necessary).
4814
4815Thu Nov 29 16:14:41 2012  Koichi Sasada  <ko1@atdot.net>
4816
4817	* vm_backtrace.c (rb_debug_inspector_open): use RARRAY_LENINT() for
4818	  int variable.
4819
4820Thu Nov 29 15:59:55 2012  Koichi Sasada  <ko1@atdot.net>
4821
4822	* include/ruby/debug.h: add rb_debug_inspector_* APIs.
4823
4824	* vm_backtrace.c: ditto.
4825
4826	* common.mk: add dependency from vm_backtrace.o to
4827	  include/ruby/debug.h.
4828
4829	* proc.c (rb_binding_new_with_cfp): constify.
4830
4831	* vm.c (rb_vm_get_ruby_level_next_cfp): constify.
4832
4833	* vm_core.h, vm_trace.c: move decls.
4834
4835Thu Nov 29 15:56:14 2012  NARUSE, Yui  <naruse@ruby-lang.org>
4836
4837	* lib/rdoc/test_case.rb (RDoc::TestCase#verbose_capture_io):
4838	  defined for asserts of warnings.
4839
4840	* test/rdoc: use verbose_capture_io on asserts of warnings.
4841	  they failed when tests was run with RUBYOPT=-W0.
4842
4843Thu Nov 29 15:53:38 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
4844
4845	* ext/psych/extconf.rb: added --enable-bundled-libyaml option.  this
4846	  enforces using bundled libyaml.
4847
4848Thu Nov 29 15:51:54 2012  Eric Hodel  <drbrain@segment7.net>
4849
4850	* lib/rubygems*:  Updated to RubyGems 2.0
4851	* test/rubygems*:  ditto.
4852
4853	* common.mk (prelude):  Updated for RubyGems 2.0 source rearrangement.
4854
4855	* tool/change_maker.rb:  Allow invalid UTF-8 characters in source
4856	  files.
4857
4858Thu Nov 29 15:38:14 2012  Koichi Sasada  <ko1@atdot.net>
4859
4860	* include/ruby/debug.h: provide rb_tracearg_*() APIs,
4861	  instead of rb_tracepoint_attr_*().
4862	  These APIs are for debuggers/profilers.
4863	  They will be explained in another docs sometime.
4864
4865	* vm_trace.c: ditto.
4866
4867Thu Nov 29 15:10:45 2012  NARUSE, Yui  <naruse@ruby-lang.org>
4868
4869	* test/minitest/test_minitest_unit.rb: restore orig_verbose only
4870	  if it is set. This broke rdoc's tests.
4871	  http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20121129T050102Z.diff.html.gz
4872
4873Thu Nov 29 14:56:30 2012  Koichi Sasada  <ko1@atdot.net>
4874
4875	* vm_trace.c (rb_tracepoint_attr_method_id):
4876	  rename TracePoint#id to TracePoint#method_id.
4877
4878	* include/ruby/debug.h: ditto.
4879
4880	* test/ruby/test_settracefunc.rb: ditto,
4881
4882Thu Nov 29 14:49:10 2012  Koichi Sasada  <ko1@atdot.net>
4883
4884	* vm_trace.c (rb_tracepoint_attr_defined_class):
4885	  rename TracePoint#klass to TracePoint#defined_class.
4886	  [ruby-core:50187] Re: [ruby-trunk - Feature #6895]
4887
4888	* include/ruby/debug.h: ditto.
4889
4890	* test/ruby/test_settracefunc.rb: ditto.
4891
4892Thu Nov 29 14:27:57 2012  Koichi Sasada  <ko1@atdot.net>
4893
4894	* gc.c (gc_stat): prepare Symbol objects at first time
4895	  to make it fast.
4896
4897Thu Nov 29 14:02:15 2012  Koichi Sasada  <ko1@atdot.net>
4898
4899	* gc.c (gc_stat): GC.stat supports new information
4900	  * total_allocated_object: total allocated object number.
4901	  * total_freed_object: total freed object number.
4902	  Above two numbers are only accumulated and they will
4903	  overflow (return to 0). Please use them as a hint.
4904
4905Thu Nov 29 12:13:54 2012  Ryan Davis  <ryand-ruby@zenspider.com>
4906
4907	* lib/minitest/*: Imported minitest 4.3.2 (r8026)
4908	* test/minitest/*: ditto
4909
4910Thu Nov 29 11:06:06 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4911
4912	* thread.c (thread_start_func_2): remove unused code. When
4913	  th->safe_level == 4, th->errinfo never be thrown. So, to
4914	  create new exception makes no sense.
4915
4916Thu Nov 29 10:29:53 2012  Koichi Sasada  <ko1@atdot.net>
4917
4918	* vm_backtrace.c: same as a last patch.
4919
4920Thu Nov 29 10:24:25 2012  Koichi Sasada  <ko1@atdot.net>
4921
4922	* vm_backtrace.c: use `long' for return values of `NUM2LONG()'.
4923
4924Thu Nov 29 09:52:08 2012  NARUSE, Yui  <naruse@ruby-lang.org>
4925
4926	* thread.c (do_select): suppress warning (uninitialized value warning)
4927	  with UNINITIALIZED_VAR().
4928
4929Thu Nov 29 09:36:09 2012  Koichi Sasada  <ko1@atdot.net>
4930
4931	* eval.c (ruby_cleanup): delay THREAD_KILLED timing.
4932	  It should be located just before rb_thread_terminate_all().
4933
4934Thu Nov 29 09:10:17 2012  Koichi Sasada  <ko1@atdot.net>
4935
4936	* vm_backtrace.c (vm_backtrace_to_ary): support range argument
4937	  like Array#[].
4938	  [ruby-core:50092] [ruby-trunk - Feature #7434]
4939	  Test and document is not available. Please help us.
4940
4941Thu Nov 29 06:46:33 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4942
4943	* thread.c (thread_start_func_2): small cleanups.
4944
4945Thu Nov 29 06:37:08 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4946
4947	* thread.c (thread_start_func_2): remove unused code.
4948	  this function never be used for main thread.
4949
4950Thu Nov 29 06:27:55 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
4951
4952	* thread.c (thread_start_func_2): remove unused code.
4953	  errinfo = th->errinfo; and errinfo = rb_errinfo(); are
4954	  the same.
4955
4956Thu Nov 29 05:26:32 2012  Koichi Sasada  <ko1@atdot.net>
4957
4958	* vm_backtrace.c (backtrace_to_str_ary2): rename to backtrace_to_str_ary.
4959
4960	* vm_backtrace.c (rb_backtrace_to_str_ary): use `backtrace_to_str_ary()'.
4961
4962	* vm_backtrace.c (backtrace_to_frame_ary): rename to
4963	  backtrace_to_location_ary.
4964
4965Thu Nov 29 05:19:25 2012  Aaron Patterson <aaron@tenderlovemaking.com>
4966
4967	* probes.d: Change function-entry probe to method-entry.
4968	* insns.def: ditto
4969	* probes_helper.h: ditto
4970	* test/dtrace/test_function_entry.rb: ditto
4971	* test/dtrace/test_singleton_function.rb: ditto
4972	* vm.c: ditto
4973	* vm_eval.c: ditto
4974	* vm_insnhelper.c: ditto
4975
4976Thu Nov 29 04:45:17 2012  Koichi Sasada  <ko1@atdot.net>
4977
4978	* vm_backtrace.c: rename Class name from
4979	  ::RubyVM::Backtrace and ::RubyVM::Backtrace::Location
4980	  to ::Thread::Backtrace and ::Thread::Backtrace::Location.
4981
4982Wed Nov 28 23:52:02 2012  Masaya Tarui  <tarui@ruby-lang.org>
4983
4984	* NEWS (Thread) remove incompatible changes about trap.
4985
4986Wed Nov 28 23:39:01 2012  Koichi Sasada  <ko1@atdot.net>
4987
4988	* thread.c (rb_mutex_sleep): fix to allow spurious wakeup.
4989	  [ruby-dev:46654] [ruby-trunk - Bug #7455]
4990
4991	* NEWS: write about spurious wakeup.
4992
4993Wed Nov 28 22:57:23 2012  Koichi Sasada  <ko1@atdot.net>
4994
4995	* thread_win32.c: catch up latest change of BLOCKING_REGION.
4996
4997Wed Nov 28 22:54:21 2012  Koichi Sasada  <ko1@atdot.net>
4998
4999	* vm_insnhelper.c (vm_call_method): fix undefined behavior.
5000	  Should not access scope local variable from outer scope.
5001
5002Wed Nov 28 22:20:55 2012  Masaya Tarui  <tarui@ruby-lang.org>
5003
5004	* test/ruby/test_thread.rb (test_thread_status_in_trap): change test for
5005	  thread status in trap. now can accept Thread#join and Thread#value in trap.
5006
5007Wed Nov 28 21:58:47 2012  Koichi Sasada  <ko1@atdot.net>
5008
5009	* include/ruby/thread.h (rb_thread_call_without_gvl2): change
5010	  meaning of function.
5011	  This function is called with same parameters of
5012	  `rb_thread_call_without_gvl()'.
5013	  However, if interrupts are detected, then return immediately.
5014
5015	* thread.c: implement `rb_thread_call_without_gvl2()'.
5016
5017Wed Nov 28 21:31:21 2012  Masaya Tarui  <tarui@ruby-lang.org>
5018
5019	* thread.c (thread_join_sleep): check spurious wakeup by itself for
5020	corresponding status change in trap context.
5021	* vm_core.h (struct rb_thread_struct): add rb_thread_list_t and use as join_list for
5022	reentry by trap context.
5023	* thread.c (thread_start_func_2): ditto.
5024	* thread.c (remove_from_join_list): ditto.
5025	* thread.c (rb_thread_atfork): ditto.
5026	* thread.c (thread_join): ditto. & remove trap handler check.
5027	* thread.c (sleep_forever): add argument : spurious_check.
5028	* thread.c (sleep_timeval): ditto.
5029	* thread.c (rb_thread_sleep_forever): set spurious_check.
5030	* thread.c (rb_thread_sleep_deadly): ditto.
5031	* thread.c (sleep_for_polling): ditto.
5032	* thread.c (rb_thread_wait_for): ditto.
5033	* thread.c (sleep_wait_for_interrupt): bypass spurious_check.
5034
5035Wed Nov 28 21:23:18 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5036
5037	* ext/psych/yaml/emitter.c (yaml_emitter_write_indicator): constify.
5038
5039	* ext/psych/yaml/emitter.c (yaml_emitter_write_block_scalar_hints):
5040	  ditto.
5041
5042	* ext/psych/extconf.rb: mingw32 also needs macros for win32, not
5043	  only mswin32.
5044
5045	* ext/psych/extconf.rb: compile sources in the source directory
5046	  without copying by using VPATH.
5047
5048Wed Nov 28 21:18:57 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5049
5050	* lib/mkmf.rb (MakeMakefile#each_compile_rules): splat $(*VPATH*) for
5051	  each VPATH elements.
5052
5053Wed Nov 28 16:40:14 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5054
5055	* vm_core.h (enum rb_thread_status): remove THREAD_TO_KILL
5056	* vm_core.h (struct rb_thread_struct): add to_kill field
5057	* thread.c (terminate_i): convert THREAD_TO_KILL to to_kill.
5058	* thread.c (rb_threadptr_to_kill): ditto.
5059	* thread.c (rb_thread_kill): ditto.
5060	* thread.c (rb_thread_wakeup_alive): ditto.
5061	* thread.c (thread_list_i): ditto.
5062	* thread.c (static const char): ditto.
5063	* thread.c (thread_status_name): ditto.
5064	* thread.c (rb_thread_status): ditto.
5065	* thread.c (rb_thread_inspect): ditto.
5066	* vm_backtrace.c (thread_backtrace_to_ary): ditto.
5067
5068	* thread.c (rb_threadptr_execute_interrupts): fix thread status
5069	  overwritten issue. [Bug #7450] [ruby-core:50249]
5070
5071	* test/ruby/test_thread.rb (test_hread_status_raise_after_kill):
5072	  test for the above.
5073	* test/ruby/test_thread.rb (test_thread_status_in_trap): test for
5074	  thread status in trap.
5075	* test/ruby/test_thread.rb (test_status_and_stop_p): remove
5076	  Thread.control_interrupt unsafe test. Thread#kill no longer
5077	  changes thread status. Instead of, Thread#kill receiver changes
5078	  their own status when receiving kill signal.
5079
5080Wed Nov 28 16:21:46 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5081
5082	* thread.c (struct rb_mutex_struct): add allow_trap field.
5083	* internal.h (rb_mutex_allow_trap): added.
5084	* thread.c (rb_mutex_lock, rb_mutex_unlock): check mutex->allow_trap.
5085	* thread.c (mutex_sleep): remove trap check because it uses
5086	  rb_mutex_lock and rb_mutex_unlock internally.
5087	* thread.c (rb_mutex_allow_trap): new helper function for the above.
5088
5089	* io.c (io_binwrite): mark fptr->write_lock as writable in trap.
5090
5091	* test/ruby/test_signal.rb (test_trap_puts): test for the above.
5092
5093Wed Nov 28 16:59:12 2012  Koichi Sasada  <ko1@atdot.net>
5094
5095	* proc.c: remove Proc#== and Proc#eql?.
5096	  Proc objects compared with their object ids.
5097	  [Bug #4559]
5098
5099	* test/ruby/test_proc.rb: remove related test.
5100
5101Wed Nov 28 16:41:04 2012  Eric Hodel  <drbrain@segment7.net>
5102
5103	* lib/rdoc/servlet.rb:  Add support for serving documentation from a
5104	  subdirectory.
5105	* lib/rdoc/generator/darkfish.rb:  ditto
5106	* test/rdoc/test_rdoc_servlet.rb:  Test for above
5107	* test/rdoc/test_rdoc_servlet.rb:  ditto
5108
5109Wed Nov 28 15:37:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
5110
5111	* configure.in: fix r37924: run only on i[3-6]86-linux.
5112
5113Wed Nov 28 15:31:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5114
5115	* io.c (FMODE_SYNCWRITE): removed unused macro.
5116
5117Wed Nov 28 15:19:25 2012  Naohisa Goto  <ngotogenome@gmail.com>
5118
5119	* configure.in: revert r37911, r37906 and r37904 which break build
5120	  with non-gcc and/or non-IA32 compilers, e.g. Solaris Studio,
5121	  Fujitsu C Compiler. [ruby-dev:46646] [Bug #7451]
5122
5123Wed Nov 28 14:50:55 2012  Koichi Sasada  <ko1@atdot.net>
5124
5125	* ext/psych/extconf.rb: copy sources into build directory,
5126	  not into srcdir.
5127
5128Wed Nov 28 14:34:06 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5129
5130	* thread.c (rb_mutex_lock): moved trap context check from
5131	  rb_mutex_trylock because try_lock have no change to make
5132	  a deadlock.
5133	* thread.c (rb_mutex_trylock): ditto.
5134	* NEWS: news for the above.
5135
5136Wed Nov 28 13:39:54 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5137
5138	* thread.c (thread_s_new): uses main_thread->status instead of
5139	  th->inhibit_thread_creation for preventing thread creation.
5140	* vm_core.h (rb_vm_struct): remove inhibit_thread_creation field.
5141	* thread.c (rb_thread_terminate_all): ditto.
5142
5143Wed Nov 28 13:27:29 2012  Aaron Patterson <aaron@tenderlovemaking.com>
5144
5145	* ext/psych/extconf.rb: use embedded libyaml if no system libyaml is
5146	  found. [ruby-core:49463]
5147	* ext/psych/lib/psych.rb: updating to psych 2.0.0
5148	* ext/psych/lib/psych/deprecated.rb: updated docs
5149	* ext/psych/psych.gemspec: updated to psych 2.0.0
5150	* ext/psych/psych.h: fixing header file include for rename
5151	* ext/psych/psych_emitter.c: renamed to avoid libyaml conflict.
5152	* ext/psych/psych_emitter.h: ditto
5153	* ext/psych/psych_parser.c: ditto
5154	* ext/psych/psych_parser.h: ditto
5155	* ext/psych/psych_to_ruby.c: ditto
5156	* ext/psych/psych_to_ruby.h: ditto
5157	* ext/psych/psych_yaml_tree.c: ditto
5158	* ext/psych/psych_yaml_tree.h: ditto
5159	* ext/psych/yaml/LICENSE: embedding libyaml 0.1.4
5160	* ext/psych/yaml/api.c: ditto
5161	* ext/psych/yaml/config.h: ditto
5162	* ext/psych/yaml/dumper.c: ditto
5163	* ext/psych/yaml/emitter.c: ditto
5164	* ext/psych/yaml/loader.c: ditto
5165	* ext/psych/yaml/parser.c: ditto
5166	* ext/psych/yaml/reader.c: ditto
5167	* ext/psych/yaml/scanner.c: ditto
5168	* ext/psych/yaml/writer.c: ditto
5169	* ext/psych/yaml/yaml.h: ditto
5170	* ext/psych/yaml/yaml_private.h: ditto
5171
5172Wed Nov 28 12:54:59 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5173
5174	* thread.c (thread_join): A trap handler check was moved from
5175	  thread_join_m because Thread#value should be raised an exception
5176	  too.
5177	* thread.c (thread_join_m): remove trap handler check.
5178	* test/ruby/test_thread.rb (test_thread_join_in_trap): add test
5179	  for thread#value.
5180	* NEWS: documentation fix for the above.
5181
5182Wed Nov 28 11:07:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5183
5184	* ext/fiddle/closure.c: Documentation for Fiddle
5185	* ext/fiddle/lib/fiddle/import.rb: ditto
5186	* ext/fiddle/lib/fiddle/value.rb: ditto
5187	* ext/fiddle/lib/fiddle/pack.rb: ditto
5188	* ext/fiddle/lib/fiddle/cparser.rb: ditto
5189	* ext/fiddle/lib/fiddle/struct.rb: ditto
5190	* ext/fiddle/lib/fiddle/function.rb: ditto
5191
5192Wed Nov 28 09:15:51 2012  Ryan Davis  <ryand-ruby@zenspider.com>
5193
5194	* ext/strscan/strscan.c: Added #charpos for multibyte string position.
5195	* test/strscan/test_stringscanner.rb: ditto
5196
5197Wed Nov 28 09:00:34 2012  Aaron Patterson <aaron@tenderlovemaking.com>
5198
5199	* ext/fiddle/fiddle.c: adding alignment constants for compatibility
5200	  with DL.
5201	* ext/fiddle/fiddle.h: ditto
5202	* ext/fiddle/lib/fiddle/cparser.rb: importing the C parser for DL
5203	  backwards compatibility.
5204	* ext/fiddle/lib/fiddle/import.rb: importing the import DSL for DL
5205	  backwards compatibility.
5206	* ext/fiddle/lib/fiddle/pack.rb: importing structure pack for DL
5207	  backwards compatibility.
5208	* ext/fiddle/lib/fiddle/value.rb: ditto
5209	* ext/fiddle/lib/fiddle/struct.rb: importing struct DSL for DL backwards
5210	  compatibility.
5211	* test/dl/test_c_struct_entry.rb: importing tests
5212	* test/dl/test_c_union_entity.rb: ditto
5213	* test/dl/test_cparser.rb: ditto
5214	* test/dl/test_import.rb: ditto
5215	* test/fiddle/test_c_struct_entry.rb: ditto
5216	* test/fiddle/test_c_union_entity.rb: ditto
5217	* test/fiddle/test_cparser.rb: ditto
5218	* test/fiddle/test_import.rb: ditto
5219
5220Wed Nov 28 08:56:00 2012  Zachary Scott <zachary@zacharyscott.net>
5221
5222	* doc/globals.rdoc: Add documentation file for magic globals
5223	[ruby-core:29048] [Bug #3022]
5224
5225Wed Nov 28 08:55:00 2012  Zachary Scott <zachary@zacharyscott.net>
5226
5227	* .document: Add README's to be included with docs
5228
5229Wed Nov 28 08:26:00 2012  Zachary Scott <zachary@zacharyscott.net>
5230
5231	* ext/dl/lib/dl.rb: Deprecation notice for DL
5232
5233Wed Nov 28 08:25:00 2012  Zachary Scott <zachary@zacharyscott.net>
5234
5235	* ext/fiddle/closure.c: Documentation for Fiddle
5236	* ext/fiddle/pointer.c: ditto
5237	* ext/fiddle/function.c: ditto
5238	* ext/fiddle/lib/fiddle.rb: ditto
5239	* ext/fiddle/fiddle.c: ditto
5240	* ext/fiddle/handle.c: ditto
5241
5242Wed Nov 28 04:53:40 2012  Aaron Patterson <aaron@tenderlovemaking.com>
5243
5244	* ext/fiddle/handle.c: Make Fiddle independent of DL, copy DL::Handle
5245	  to Fiddle::Handle.
5246	* ext/fiddle/pointer.c: Make Fiddle independent of DL, copy
5247	  DL::Pointer to Fiddle::Pointer.
5248	* test/fiddle/test_func.rb: relevant tests
5249	* test/fiddle/test_handle.rb: ditto
5250	* test/fiddle/test_pointer.rb: ditto
5251	* ext/dl/lib/dl/struct.rb: use Fiddle::Pointer if available
5252	* ext/fiddle/extconf.rb: check for dlfcn.h
5253	* ext/fiddle/fiddle.c: add constants for sizeof() things
5254	* ext/fiddle/fiddle.h: include dlfcn.h
5255	* ext/fiddle/function.c: expose a C function for creating new
5256	  Fiddle::Function objects.
5257	* ext/fiddle/lib/fiddle.rb: include constants for dl backwards compat
5258	* ext/fiddle/lib/fiddle/function.rb: read the pointer from the
5259	  function for dl backwards compat.
5260	* test/dl/test_callback.rb: check the addresses of the pointers rather
5261	  than their types.
5262	* test/fiddle/helper.rb: remove dependency on dl
5263	* test/fiddle/test_closure.rb: ditto
5264	* test/fiddle/test_fiddle.rb: ditto
5265
5266Wed Nov 28 03:03:28 2012  NARUSE, Yui  <naruse@ruby-lang.org>
5267
5268	* configure.in (opt-dir): don't use non portable flag -E of sed.
5269
5270Wed Nov 28 02:55:35 2012  NARUSE, Yui  <naruse@ruby-lang.org>
5271
5272	* configure.in (ARCH_FLAG): __sync_val_compare_and_swap_4 needs
5273	  -march=$target_cpu on at least linux gcc 4.1.
5274	  patched by KOSAKI Motohiro
5275
5276Tue Nov 27 22:03:09 2012  Akinori MUSHA  <knu@iDaemons.org>
5277
5278	* string.c (rb_str_enumerate_chars, rb_str_enumerate_codepoints)
5279	  (rb_str_enumerate_lines): Dummy initialization of ary has been
5280	  replaced with UNINITIALIZED_VAR().
5281
5282Tue Nov 27 21:29:00 2012  Kenta Murata  <mrkn@mrkn.jp>
5283
5284	* bignum.c (bigdivrem): optimize the way to retry calculation of
5285	  bigdivrem so that the calculation is started from the point where
5286	  the last interruption was occurred.
5287
5288	* bignum.c (bigdivrem1): ditto.
5289
5290	* test/ruby/test_bignum.rb: add a test case for rb_bigdivrem in the
5291	  case that an interruption is occurred during bigdivrem1 is running.
5292
5293Tue Nov 27 19:56:43 2012  Koichi Sasada  <ko1@atdot.net>
5294
5295	* vm.c (rb_vm_make_env_object): make Proc object if Env is possible
5296	  to point block.
5297	  [ruby-core:41038] [ruby-trunk - Bug #5634]
5298
5299	* vm.c (rb_vm_make_proc): No need to make Proc object here.
5300
5301	* bootstraptest/test_proc.rb: add tests.
5302
5303Tue Nov 27 18:51:06 2012  Naohisa Goto  <ngotogenome@gmail.com>
5304
5305	* ruby_atomic.h (ATOMIC_CAS): added for Solaris and other platforms.
5306	* ruby_atomic.h, signal.c (NEED_RUBY_ATOMIC_OPS): renamed from
5307	  NEED_RUBY_ATOMIC_EXCHANGE.
5308	* signal.c (ruby_atomic_compare_and_swap): naive, non-atomic
5309	  compare-and-swap implementation only used for platforms without
5310	  valid support for atomic operations.
5311
5312Tue Nov 27 17:43:46 2012  Eric Hodel  <drbrain@segment7.net>
5313
5314	* lib/rdoc/*:  Added --root option for building documentation outside
5315	  the source directory.
5316	* test/rdoc/*:  ditto
5317	* common.mk (rdoc):  Added --root to rdoc rule
5318
5319Tue Nov 27 16:24:45 2012  Eric Hodel  <drbrain@segment7.net>
5320
5321	* test/rdoc/test_rdoc_ri_paths.rb:  Fixed duplicate path bug which
5322	  caused windows failures.
5323
5324Tue Nov 27 16:06:00 2012  Eric Hodel  <drbrain@segment7.net>
5325
5326	* test/rdoc/test_rdoc_generator_darkfish.rb:  Updated tests for windows
5327	* test/rdoc/test_rdoc_options.rb:  ditto
5328	* test/rdoc/test_rdoc_parser.rb:  ditto
5329	* test/rdoc/test_rdoc_rdoc.rb:  ditto
5330	* test/rdoc/test_rdoc_ri_driver.rb:  ditto
5331	* test/rdoc/test_rdoc_servlet.rb:  ditto
5332
5333Tue Nov 27 15:13:51 2012  Eric Hodel  <drbrain@segment7.net>
5334
5335	* common.mk (rdoc):  Set --debug for rdoc generation in case of bugs
5336
5337Tue Nov 27 14:56:45 2012  Eric Hodel  <drbrain@segment7.net>
5338
5339	* lib/rdoc/rubygems_hook.rb:  Updated for (upcoming) RubyGems 2
5340	  import.
5341	* test/rdoc/test_rdoc_rubygems_hook.rb:  ditto
5342
5343Tue Nov 27 13:59:29 2012  Narihiro Nakamura  <authornari@gmail.com>
5344
5345	* NEWS: add improvements of the garbage collector.
5346
5347Tue Nov 27 13:27:46 2012  Eric Hodel  <drbrain@segment7.net>
5348
5349	* lib/rdoc*:  Updated to RDoc 4.0 (pre-release)
5350	* bin/rdoc:  ditto
5351	* test/rdoc*:  ditto
5352	* NEWS:  Updated with RDoc 4.0 information
5353
5354Tue Nov 27 12:17:11 2012  Koichi Sasada  <ko1@atdot.net>
5355
5356	* thread.c (rb_thread_terminate_all): retry broadcast only when
5357	  an exception is raised.
5358
5359Tue Nov 27 12:02:25 2012  Koichi Sasada  <ko1@atdot.net>
5360
5361	* thread.c (rb_thread_terminate_all): broadcast terminate event
5362	  not only an interrupt exception but any exceptions.
5363
5364Tue Nov 27 10:55:09 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5365
5366	* eval.c (ruby_cleanup): set thread status to THREAD_KILLED
5367	  for preventing thr.raise.
5368	* test/ruby/test_thread.rb (test_main_thread_status_at_exit):
5369	  test for the above.
5370
5371Tue Nov 27 10:31:29 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5372
5373	* thread.c (rb_thread_terminate_all): suppress a warning.
5374
5375Tue Nov 27 09:29:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5376
5377	* thread.c (thread_join): raises ThreadError if target thread
5378	  is a main thread.
5379	* test/ruby/test_thread.rb (test_thread_join_main_thread):
5380	  test for the above.
5381	* NEWS: news for the above.
5382
5383Tue Nov 27 09:24:47 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5384
5385	* thread.c (thread_join): raises ThreadError if target thread
5386	  is a current thread.
5387	* test/ruby/test_thread.rb (test_thread_join_current):
5388	  test for the above.
5389	* NEWS: news for the above.
5390
5391Tue Nov 27 09:59:16 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5392
5393	* ext/extmk.rb (extmake): close mkmf.log for each libraries so that
5394	  failure messages are not mixed.
5395
5396Tue Nov 27 09:58:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5397
5398	* ext/digest/*/extconf.rb, ext/openssl/extconf.rb: get git rid of
5399	  post-1.8 feature require_relative for cross compilation.
5400	  [ruby-core:50160] [Bug #7439]
5401
5402Tue Nov 27 09:17:59 2012  Koichi Sasada  <ko1@atdot.net>
5403
5404	* NEWS: add TracePoint.
5405
5406Tue Nov 27 08:16:03 2012  Koichi Sasada  <ko1@atdot.net>
5407
5408	* vm_trace.c: rename TracePoint#file and TracePoint#line
5409	  to TracePoint#path and TracePoint#lineno respectively.
5410	  They are consistent to RubyVM::Backtrace::Location.
5411
5412	* include/ruby/debug.h: ditto.
5413
5414	* vm_core.h: ditto.
5415
5416	* test/ruby/test_settracefunc.rb: ditto.
5417
5418Tue Nov 27 08:04:26 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5419
5420	* thread.c (rb_thread_terminate_all): broadcast eTerminateSignal
5421	  again when Ctrl-C was pressed. [Feature #1952] [ruby-dev:39107]
5422
5423Tue Nov 27 07:58:03 2012  Koichi Sasada  <ko1@atdot.net>
5424
5425	* vm_core.h: add members to rb_trace_arg_t:
5426	  * `klass_solved' represents klass and id is checked.
5427	  * `line' represents line calculated from cfp.
5428	  * `file' represents line calculated from cfp.
5429
5430	* vm_trace.c: fix to use above data structures.
5431	  No need to calculate klass and id, line and file
5432	  pairs for each trace points.
5433
5434Tue Nov 27 07:47:09 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5435
5436	* thread.c (rb_thread_terminate_all): add RUBY_VM_CHECK_INTS_BLOCKING().
5437	  Otherwise the loop in this function behave as busy loop because
5438	  native_sleep() return immediately when RUBY_VM_INTERRUPTED() is true.
5439
5440Tue Nov 27 04:12:49 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5441
5442	* ext/extmk.rb (extmake): git rid of post-1.8 features for cross
5443	  compilation.  [ruby-core:50160] [Bug #7439]
5444
5445Tue Nov 27 00:13:41 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5446
5447	* thread.c (rb_mutex_trylock, rb_mutex_unlock, mutex_sleep):
5448	  raises ThreadError if called from trap handler as Thread#join.
5449	* NEWS: news for the above.
5450
5451Mon Nov 26 23:55:33 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5452
5453	* NEWS: update for Thread#join incompatible change.
5454
5455Mon Nov 26 22:44:24 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5456
5457	* thread.c (rb_thread_terminate_all): use native_sleep() instead
5458	  of rb_thread_schedule(). Otherwise, it consume 100% cpu meaninglessly.
5459	  [Bug #5368] [ruby-dev:44546]
5460	* thread.c (thread_start_func_2): last sub-thread wakes up main thread.
5461
5462Mon Nov 26 21:16:04 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5463
5464	* vm_core.h (RUBY_VM_SET_TIMER_INTERRUPT, RUBY_VM_SET_INTERRUPT)
5465	(RUBY_VM_SET_FINALIZER_INTERRUPT, RUBY_VM_SET_TRAP_INTERRUPT)
5466	(RUBY_VM_INTERRUPTED): use enum symbol instead of immediate value.
5467	* thread.c (thread_join_m, rb_threadptr_execute_interrupts): ditto.
5468	* signal.c (signal_exec): ditto.
5469
5470Mon Nov 26 20:23:20 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5471
5472	* thread.c (thread_join_m): use th->interrupt_mask instead of
5473	  th->in_trap.
5474
5475	* vm_core.h (struct rb_thread_struct): remove in_trap member.
5476	* signal.c (signal_exec): ditto.
5477	* thread.c (thread_create_core): ditto.
5478	* thread.c (Init_Thread): ditto.
5479
5480Mon Nov 26 20:23:49 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
5481
5482	* test/ruby/test_argf.rb (TestArgf#test_chars): since marshal data is
5483	  binary, shouldn't pass via text mode.  use base64 encoded data.
5484
5485Mon Nov 26 19:45:18 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5486
5487	* ruby_atomic.h (ATOMIC_CAS): new macro for compare-and-exchange.
5488
5489	* vm_core.h (struct rb_thread_struct): add interrupt_mask member.
5490	* thread.c (thread_create_core, Init_Thread): initialize
5491	  th->thread_mask.
5492
5493	* vm_core.h (RUBY_VM_INTERRUPTED_ANY): new macro for avoiding
5494	  bare th->interrupt_flag.
5495	* vm_core.h (RUBY_VM_INTERRUPTED, RUBY_VM_INTERRUPTED): check
5496	  th->interrupt_mask.
5497	* thread.c (set_unblock_function, rb_thread_schedule): replace
5498	  th->interrupt_flag with RUBY_VM_INTERRUPTED_ANY()
5499
5500	* signal.c (signal_exec): set up thread->interrupt_mask for
5501	  preventing recursive trap handler.
5502	* vm_core.h (RUBY_VM_CHECK_INTS, RUBY_VM_CHECK_INTS_BLOCKING): ditto.
5503
5504	* thread.c (rb_threadptr_execute_interrupts):
5505	  don't process interrupt if it is masked.
5506	  [Bug #6009] [ruby-core:42524]
5507
5508Mon Nov 26 19:43:42 2012  Koichi Sasada  <ko1@atdot.net>
5509
5510	* iseq.c (make_compile_option_value): add trace_instruction option.
5511	  a patch by davidbalbert (David Albert).
5512	  [Bug #6786]
5513
5514Mon Nov 26 19:10:53 2012  Koichi Sasada  <ko1@atdot.net>
5515
5516	* bootstraptest/test_thread.rb: try to `join' each 100
5517	  threads.
5518	  This benchmark seems consuming long time on travis-ci
5519	  several times (and make `failure').
5520
5521Mon Nov 26 18:22:56 2012  Koichi Sasada  <ko1@atdot.net>
5522
5523	* common.mk: specify label `built-ruby'.
5524
5525	* benchmark/driver.rb: quote path.
5526
5527Mon Nov 26 18:26:28 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5528
5529	* signal.c (signal_exec): add volatile to make sure setjmp safe.
5530
5531Mon Nov 26 18:19:47 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5532
5533	* signal.c (signal_exec): suppress "warning: variable 'signum'
5534	  might be clobbered by 'longjmp' or 'vfork'" warning.
5535
5536Mon Nov 26 18:15:47 2012  Koichi Sasada  <ko1@atdot.net>
5537
5538	* benchmark/driver.rb: accept multiple `-e'.
5539	  You don't need to use `;' separation character.
5540	  [ruby-core:50139] [ruby-trunk - Bug #7380]
5541
5542Mon Nov 26 17:10:04 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5543
5544	* string.c (rb_str_enumerate_chars, rb_str_enumerate_codepoints)
5545	(rb_str_enumerate_lines): suppress "may be used uninitialized in
5546	  this function" warning.
5547
5548Mon Nov 26 17:00:12 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5549
5550	* vm_core.h (rb_thread_struct): added 'in_trap' member for marking
5551	  running trap handler.
5552	* signal.c (signal_exec): turn on in_trap when running trap.
5553	* thread.c (Init_Thread, thread_create_core): initialize in_trap
5554	  when creating new threads.
5555	* thread.c (thread_join_m): raise ThreadError when running trap
5556	  handler.Bug [#6416][ruby-core:44956]
5557	* test/ruby/test_thread.rb (test_thread_join_in_trap): new test
5558	  for the above.
5559
5560Mon Nov 26 16:36:13 2012  NARUSE, Yui  <naruse@ruby-lang.org>
5561
5562	* io.c (argf_each_codepoint): add missing ARGF#codepoints [Bug #7438]
5563
5564Mon Nov 26 15:50:29 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5565
5566	* bignum.c (bigdivrem): restart calculation when bigdivrem1 was
5567	  interrupted by signal. Otherwise, ruby script may see a garbage
5568	  value.
5569
5570Mon Nov 26 15:33:02 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5571
5572	* bignum.c (big_div_struct): added volatile to 'stop' member.
5573	  Otherwise, "if (bds->stop)" check in bigdivrem1 don't read
5574	  memory and ignore interrupt.
5575	* bignum.c (bigdivrem, rb_big_stop): ditto.
5576
5577Mon Nov 26 12:11:09 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5578
5579	* win32/Makefile.sub (DLNOBJ): missing in r37821.
5580
5581Mon Nov 26 10:50:19 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5582
5583	* test/ruby/test_process.rb (test_setsid): added a few wait for
5584	  preventing that Process.getsid(io.pid) makes Errno::ESRCH.
5585
5586Sun Nov 25 22:34:00 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
5587
5588	* array.c (ary_resize_smaller): new function to resize array.
5589
5590	* array.c (rb_ary_delete): refactoring to extract a function.
5591
5592	* array.c (rb_ary_delete_same): refactoring.
5593	  It renames function, reduces duplicated code and removes unused
5594	  code.
5595
5596	* gc.c (wmap_final_func): follow the above change.
5597
5598	* internal.h (rb_ary_delete_same): ditto.
5599
5600Sun Nov 25 22:27:33 2012  Benoit Daloze  <eregontp@gmail.com>
5601
5602	* array.c: fixes for the updated documentation in r35858:
5603	  Typos and #take/#drop accept to take/drop 0 elements.
5604
5605Sun Nov 25 19:43:29 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
5606
5607	* NEWS: add a news about iconv.
5608
5609Sun Nov 25 03:49:23 2012  Akinori MUSHA  <knu@iDaemons.org>
5610
5611	* lib/set.rb, test/test_set.rb: Move tests embedded in lib/set.rb
5612	  to test/test_set.rb.
5613
5614Sun Nov 25 03:44:50 2012  Akinori MUSHA  <knu@iDaemons.org>
5615
5616	* string.c (rb_str_each_line, rb_str_lines): String#lines now
5617	  returns an array instead of an enumerator.  Passing a block is
5618	  deprecated but still supported for backwards compatibility.
5619	  Based on the patch by yhara. [Feature #6670]
5620
5621	* string.c (rb_str_each_char, rb_str_chars): Ditto for
5622	  String#chars.
5623
5624	* string.c (rb_str_each_codepoint, rb_str_codepoints): Ditto for
5625	  String#codepoints.
5626
5627	* string.c (rb_str_each_byte, rb_str_bytes): Ditto for
5628	  String#bytes.
5629
5630	* NEWS: Add notes for the above changes.
5631
5632Sun Nov 25 02:07:37 2012  Akinori MUSHA  <knu@iDaemons.org>
5633
5634	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_warning)
5635	  (Test::Unit::Assertions#assert_warn), test/ruby/envutil.rb,
5636	  test/ruby/test_enumerator.rb, test/ruby/test_io_m17n.rb,
5637	  test/ruby/test_regexp.rb, test/ruby/test_syntax.rb:
5638	  assert_warn() and assert_warning() are reversed.
5639
5640Sat Nov 24 21:08:50 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
5641
5642	* gc.c (wmap_final_func): rename variables to clarify the meaning.
5643	  In wmap2obj the key is WeakRef and the value is referenced object.
5644	  In obj2wmap the key is referenced object and the value is an array
5645	  of WeakRef.
5646
5647	* gc.c (wmap_finalize): ditto.
5648	  [ruby-core:49044] [Bug #7304]
5649
5650Sat Nov 24 21:01:55 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
5651
5652	* array.c (rb_ary_delete_same_obj): new function for WeakRef.
5653	  This deletes same objects as item argument in the array.
5654
5655	* internal.h (rb_ary_delete_same_obj): add a declaration.
5656
5657	* gc.c (wmap_final_func): remove WeakRef object reference from the
5658	  array. rb_ary_delete() is not usable because it uses rb_equal() to
5659	  compare object references.
5660
5661	* gc.c (wmap_finalize): remove recycled object references from weak
5662	  map hash properly. How to get object reference from object id was
5663	  wrong. st_delete() doesn't work properly if key and value arguments
5664	  are same. The key of obj2wmap is referenced object and the value of
5665	  obj2wmap is WeakRef array.
5666
5667	* gc.c (wmap_aset): obj2wmap should contain WeakRef array in the
5668	  definition.
5669
5670	* test/test_weakref.rb
5671	  (TestWeakRef#test_not_reference_different_object,
5672	   TestWeakRef#test_weakref_finalize): add tests for above.
5673	  [ruby-core:49044] [Bug #7304]
5674
5675Sat Nov 24 19:44:41 2012  NARUSE, Yui  <naruse@ruby-lang.org>
5676
5677	* ext/nkf/nkf-utf8/nkf.c (unicode_iconv_combine): returning flags are
5678	  nkf_char.
5679
5680Sat Nov 24 19:29:18 2012  Tadayoshi Funaba  <tadf@dotrb.org>
5681
5682	* test/ruby/test_rubyoptions.rb (test_usage, test_usage_long):
5683	  reduced, renamed.
5684
5685Sat Nov 24 13:10:14 2012  Koichi Sasada  <ko1@atdot.net>
5686
5687	* vm_trace.c (rb_tracepoint_attr_raised_exception): should not check
5688	  value before event checking.
5689
5690	* vm_trace.c (rb_tracepoint_attr_return_value): ditto.
5691
5692	* test/ruby/test_settracefunc.rb: add tests for TracePoint#return_value
5693	  and TracePoint#raised_exception.
5694
5695Sat Nov 24 12:47:27 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
5696
5697	* test/ruby/test_process.rb (TestProcess#test_setsid): "./ruby-trunk"
5698	  doesn't work on all environments. EnvUtil.rubybin would be suitable.
5699
5700Sat Nov 24 12:28:04 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
5701
5702	* array.c (rb_ary_aref): fix Segmentation fault at TestArray#test_aref
5703	  on x64 mingw. Variable argument of rb_scan_args() should be a pointer
5704	  (VALUE *), but 0 of variable argument seems not equal to null pointer
5705	  on x64 mingw.
5706
5707Sat Nov 24 11:47:14 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5708
5709	* process.c (proc_getsid): adds new method for getting session id.
5710	  Contributed from fumiyas (Fumiyasu SATOH). Thank you!
5711	  [Feature #6757] [ruby-dev:45977]
5712	* configure.in: adds getsid check.
5713	* test/ruby/test_process.rb (TestProcess#test_setsid): new test
5714	  for the above.
5715	* NEWS: news for the above.
5716
5717Sat Nov 24 10:59:14 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5718
5719	* thread.c (thread_create_core): don't use th->thread_id before
5720	  initialized.
5721
5722Sat Nov 24 00:00:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5723
5724	* ruby.c (proc_options, process_options, ruby_process_options): take
5725	  care of the case argc is 0, and check if argv has NULL.
5726	  [ruby-core:49889] [Bug #7423]
5727
5728Sat Nov 24 00:00:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5729
5730	* configure.in (--disable-dln): option to disable dynamic linking
5731	  feature.  [ruby-core:37676] [Feature #4946]
5732
5733Fri Nov 23 23:44:41 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5734
5735	* lib/mkmf.rb (MakeMakefile#pkg_config): strip all white spaces for
5736	  mingw64+MSYS pkg-config which erroneously emits extra newlines.
5737	  [ruby-core:47998] [Bug #7163]
5738
5739Fri Nov 23 17:31:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5740
5741	* ruby.c (usage): wrap description lines if options are too long.
5742
5743Fri Nov 23 11:13:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5744
5745	* test/ruby/test_rubyoptions.rb (TestRubyOptions#test_usage2): refine
5746	  assertion.
5747
5748	* test/ruby/test_rubyoptions.rb (TestRubyOptions#test_usage2): now
5749	  --help option is for modern terminals.
5750
5751Fri Nov 23 10:45:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5752
5753	* ext/socket/ipsocket.c (IPSocket#peeraddr): Fix example
5754	  [ruby-core:46429] [Bug #6732]
5755
5756Fri Nov 23 02:40:00 2012  Zachary Scott  <zachary@zacharyscott.net>
5757
5758	* lib/cgi/core.rb: Documentation for CGI#header alias
5759	  Based on a patch by Marcus Stollsteimer
5760	  [ruby-core:49585] [Bug #7405]
5761
5762Thu Nov 22 23:48:10 2012  Narihiro Nakamura  <authornari@gmail.com>
5763
5764	* gc.c (is_swept_object): extract from is_dead_object().
5765
5766	* gc.c (rb_gcdebug_print_obj_condition): add the function for debug.
5767	  This function shows some conditions of given object (e.g.,
5768	  marked, in heap, swept).
5769
5770	* gc.c (rb_gcdebug_sentinel): add the function for debug.
5771	  This function allow check to inadvertently free up an object.
5772
5773Thu Nov 22 23:45:18 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
5774
5775	* array.c (rb_ary_shared_with_p): fix cache validity check.
5776	  If #pop or #shift has been called against $: or $", the array will
5777	  be still shared with the snapshot. We check array length for cache
5778	  validity.
5779	  [ruby-core:49518] [Bug #7383]
5780
5781	* test/ruby/test_require.rb
5782	  (TestRequire#test_require_with_array_pop,
5783	   TestRequire#test_require_with_array_shift): add tests for above.
5784
5785Thu Nov 22 21:48:48 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
5786
5787	* common.mk, win32/Makefile.sub (probes.dmyh): now be made in current
5788	  (=build) directory if build from the repository.
5789
5790Thu Nov 22 21:34:51 2012  Tadayoshi Funaba  <tadf@dotrb.org>
5791
5792	* test/ruby/test_rubyoptions.rb: added a test.
5793
5794Thu Nov 22 20:32:07 2012  Tadayoshi Funaba  <tadf@dotrb.org>
5795
5796	* complex.c (string_to_c_strict, string_to_c): check NUL.
5797	* rational.c (string_to_r_strict, string_to_r): ditto.
5798
5799Thu Nov 22 20:21:45 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5800
5801	* Makefile.in (.dmyh.h): removed $(VPATH). GNU make don't
5802	  recognize suffix rule with VPATH.
5803
5804Thu Nov 22 18:11:27 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
5805
5806	* common.mk, Makefile.in, win32/Makefile.sub (.dmyh.h): nmake merges
5807	  explicit rules for same target, but not merges explicit rules and
5808	  implicit rules -- always explicit rules win.  So, need to add an
5809	  explicit rule for probes.h.  [Bug #7421] [ruby-core:49839]
5810
5811Thu Nov 22 18:01:28 2012  NARUSE, Yui  <naruse@ruby-lang.org>
5812
5813	* Makefile.in (probes.o): add -C to ignore #include in probes.d.
5814
5815	* probes.d: include vm_opts.h instead of vm_core.h.
5816
5817	* vm_opts.h (VM_COLLECT_USAGE_DETAILS): move definition from vm_core.h.
5818
5819Thu Nov 22 17:45:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
5820
5821	* ext/nkf/nkf-utf8: Merge b0a6577a521d1bba5e19853f95d5c4b9be1072b5.
5822	  Support JIS X 0213 and some bugfixes.
5823
5824Thu Nov 22 17:39:37 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5825
5826	* tool/gen_dummy_probes.rb: don't change #include, #if and #endif
5827	  lines. [Bug #7370]
5828
5829Thu Nov 22 16:58:26 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5830
5831	* Makefile.in: run preprocessor when making probe.h
5832	* probes.d: define probe insn and insn__operand only when
5833	  VM_COLLECT_USAGE_DETAILS is 1. [Bug #7370]
5834
5835Thu Nov 22 16:20:49 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5836
5837	* vm.c: Don't define vm_collect_usage_operand() and
5838	  static void vm_collect_usage_insn() when disabling
5839	  VM_COLLECT_USAGE_DETAILS. (refix r37796)
5840
5841Thu Nov 22 15:26:02 2012  NARUSE, Yui  <naruse@ruby-lang.org>
5842
5843	* vm_insnhelper.h: partly revert r37631 (DTrace support).
5844	  "vm usage information is always collected, so uncomment the
5845	  functions." causes performance impact. [Bug #7370]
5846	  Off course this revert disables related probes.
5847
5848Thu Nov 22 14:14:36 2012  Akinori MUSHA  <knu@iDaemons.org>
5849
5850	* re.c (rb_memsearch_ss): Apply performance improvement to short
5851	  byte array search for platforms without memmem(3).
5852	  [Feature #6311] [ruby-dev:45530]
5853
5854Thu Nov 22 12:52:19 2012  Akinori MUSHA  <knu@iDaemons.org>
5855
5856	* test/ruby/test_string.rb (TestString#test_index): Add some
5857	  corner cases to tests for String#index, which might fail if ruby
5858	  directly used a buggy memmem(3) implementation.
5859
5860Thu Nov 22 08:06:42 2012  Narihiro Nakamura  <authornari@gmail.com>
5861
5862	* test/ruby/test_gc.rb (test_profiler_clear): fix wrong method
5863	  calls [Bug #7419] [ruby-core:49828].
5864
5865Thu Nov 22 02:22:33 2012  Tadayoshi Funaba  <tadf@dotrb.org>
5866
5867	* NEWS: edited (order etc).
5868
5869Wed Nov 21 22:52:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5870
5871	* ext/io/wait/wait.c (io_wait_readable): add alias wait_readable.
5872
5873	* ext/io/wait/wait.c (io_wait_writable): this is easier to use than
5874	  IO.select for a single IO object and is immune to the
5875	  limitations/inefficiency of select() on platforms where poll/ppoll
5876	  is available.  patched by Eric Wong.  [Feature #4646]
5877
5878Wed Nov 21 22:27:52 2012  Narihiro Nakamura  <authornari@gmail.com>
5879
5880	* gc.c (garbage_collect): remove a duplicative probe.
5881
5882Wed Nov 21 22:08:48 2012  Narihiro Nakamura  <authornari@gmail.com>
5883
5884	* gc.c (gc_profile_clear): realloc profile records if its size is
5885	  higher than the threshold, GC_PROFILE_RECORD_DEFAULT_SIZE * 2.
5886
5887Wed Nov 21 21:53:29 2012  Tadayoshi Funaba  <tadf@dotrb.org>
5888
5889	* complex.c (nucomp_to_c): added.
5890
5891Wed Nov 21 21:35:38 2012  Tadayoshi Funaba  <tadf@dotrb.org>
5892
5893	* include/ruby/util.h: removed extra semicolon in definition of
5894	  macro.
5895	* compile.c: ditto.
5896	* cont.c: ditto.
5897	* math.c: ditto.
5898	* node.c: ditto.
5899	* parse.y: ditto.
5900
5901Wed Nov 21 18:46:37 2012  Tadayoshi Funaba  <tadf@dotrb.org>
5902
5903	* rational.c (read_digits): due to a bit tighter rb_cstr_to_inum().
5904
5905Wed Nov 21 16:13:37 2012  Koichi Sasada  <ko1@atdot.net>
5906
5907	* benchmark/bm_so_nsieve_bits.rb: add an encoding pragma because
5908	  this benchmark using strings (literals) as binary sequence.
5909	  Now, they are UTF-8 strings. [ruby-dev:46578]
5910
5911Wed Nov 21 00:57:43 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
5912
5913	* file.c (Init_File): null device definition uses rb_define_const
5914	  instead of rb_file_const.
5915
5916Wed Nov 21 00:28:18 2012  NARUSE, Yui  <naruse@ruby-lang.org>
5917
5918	* test/ruby/test_m17n_comb.rb (test_str_crypt): Use RbConfig to get
5919	  libc's directory. Patched by Vit Ondruch [ruby-core:49763] [Bug #7312]
5920
5921Tue Nov 20 23:28:26 2012  Masaki Matsushita  <glass.saga@gmail.com>
5922
5923	* marshal.c: add marshal readahead. marshalized Array, Hash and Struct
5924	  have size at least number of its elements, marshal readahead will
5925	  read the certain readable length and buffer when it needs more bytes.
5926	  marshal readahead prevents many calls to IO#getbyte and IO#read,
5927	  then it enables performance improvement.
5928	  [ruby-dev:45637] [Feature #6440]
5929
5930Tue Nov 20 22:35:02 2012  NARUSE, Yui  <naruse@ruby-lang.org>
5931
5932	* Makefile.in (.d.h): replace char * to const char * because somehow
5933	  current dtrace removes const of function declaration in probes.d.
5934
5935Tue Nov 20 21:41:04 2012  Koichi Sasada  <ko1@atdot.net>
5936
5937	* include/ruby/debug.h: introduced.
5938	  Debugging/profiling features will be located.
5939
5940	* vm_trace.c: expose C-level TracePoint APIs.
5941	  Note that they are experimental.
5942
5943	* vm_trace.c, include/ruby/debug.h: rename `rb_hook_flag_t'
5944	  to `rb_event_hook_flag_t'.
5945	  Macro names `RUBY_HOOK_FLAG_*' are also renamed to
5946	  `RUBY_EVENT_HOOK_FLAG_*'.
5947
5948	* debug.h, vm_debug.h: rename debug.h to vm_debug.h.
5949
5950	* common.mk: ditto.
5951
5952	* debug.c, main.c, vm_core.h: ditto.
5953
5954Tue Nov 20 21:12:37 2012  NARUSE, Yui  <naruse@ruby-lang.org>
5955
5956	* configure.in (RUBY_DTRACE_AVAILABLE): only check dtrace availability.
5957
5958	* configure.in (RUBY_DTRACE_POSTPROCESS): restore.
5959
5960Tue Nov 20 21:22:44 2012  Masaki Suketa <masaki.suketa@nifty.ne.jp>
5961
5962	* test/win32ole/test_win32ole_type.rb (test_implemented_ole_types):
5963	  IShellDispatch6 bundled in Windows 8. Thanks to phasis68 (Heesob
5964	  Park).  [ruby-core:49580][Bug #7403]
5965
5966Tue Nov 20 21:06:41 2012  Tadayoshi Funaba  <tadf@dotrb.org>
5967
5968	* complex.c: some improvements.
5969	* rational.c: ditto.
5970
5971Tue Nov 20 21:01:16 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5972
5973	* common.mk (incs): BSD make cannot deal with non-prefixed dependency
5974	  and prefixed target.
5975
5976Tue Nov 20 20:10:23 2012  Yusuke Endoh  <mame@tsg.ne.jp>
5977
5978	* array.c (rb_ary_bsearch): fix rdoc bug (O(n log n) -> O(log n)).
5979	  Patch by Charlie Somerville.  [ruby-core:49661] [Bug #7409]
5980
5981	* range.c (range_bsearch): ditto.
5982
5983Tue Nov 20 19:02:44 2012  Koichi Sasada  <ko1@atdot.net>
5984
5985	* vm_trace.c: rename and add TracePoint APIs.
5986	  (1) TracePoint.new(...){...} creates a new trace point
5987	      but does not make it enable.
5988	  (2) TracePoint.trace(...){...} creates a new trace point
5989	      and enable it (same as old behavior).
5990	  (3) TracePoint#enable make it enable (renamed from TracePoint#retrace).
5991	      If block given, when enable only in block.
5992	  (4) TracePoint#disable make it disable (renamed from TracePoint#untrace).
5993	      If block given, when disable only in block.
5994	  (5) TracePoint#enabled? returns this trace is enable or not.
5995	  [Feature #6895]
5996
5997	* test/ruby/test_settracefunc.rb: add tests.
5998
5999Tue Nov 20 18:35:05 2012  Koichi Sasada  <ko1@atdot.net>
6000
6001	* vm_trace.c: add two methods:
6002	  (1) TracePoint#return_value which returns return
6003	      value on the :return and :c_return event.
6004	  (2) TracePoint#raised_exception which returns raised exception
6005	      value on the :raise event.
6006	  Each methods raise RuntimeError if it is called at unsupported
6007	  event.
6008	  Please review and give us feedback until next preview
6009	  release (Dec/2012) of Ruby 2.0.0.
6010	  [Feature #6895]
6011
6012	* insns.def, vm.c, vm_eval.c, vm_insnhelper.c, eval.c, thread.c:
6013	  ditto.
6014
6015	* vm_trace.c, vm_core.h: move definition of rb_trace_arg_t from
6016	  vm_trace.c to vm_core.h.
6017	  Caller fills rb_trace_arg_t and pass the pointer of this variable.
6018
6019	* test/ruby/test_settracefunc.rb: fix tests to test this change.
6020
6021Tue Nov 20 17:31:12 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6022
6023	* configure.in: fix dtrace didn't work on darwin.
6024
6025	* configure.in (RUBY_DTRACE_AVAILABLE): unify RUBY_DTRACE_POSTPROCESS
6026	  and RUBY_DTRACE_BSD_BROKEN.
6027
6028Tue Nov 20 15:20:00 2012  Zachary Scott  <zachary@zacharyscott.net>
6029
6030	* file.c (File.extname): Documentation for extname on dotfiles and
6031	files ending with a dot. Also, added example for this.
6032	[ruby-core:47852] [Bug #7112]
6033
6034Tue Nov 20 14:19:20 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6035
6036	* test/ruby/test_signal.rb (TestSignal#test_signame): fix windows
6037	  test failure. Process.kill on windows can't send a signal to
6038	  another process.
6039
6040Tue Nov 20 13:58:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6041
6042	* io.c (Init_IO): moved all rb_file_const() into file.c.
6043	* file.c (Init_File): replace with rb_file_const() with
6044	  rb_define_const() because RDoc don't care rb_file_const.
6045	  [Bug #5530]
6046
6047Tue Nov 20 12:35:00 2012  Zachary Scott  <zachary@zacharyscott.net>
6048
6049	* ruby.c (usage_msg): Fix typo [ruby-core:49205] [Bug #7327]
6050
6051Tue Nov 20 12:35:00 2012  Zachary Scott  <zachary@zacharyscott.net>
6052
6053	* file.c (File::NULL): Document File::NULL constant
6054	  [ruby-core:49384] [Bug #7365]
6055
6056Tue Nov 20 12:05:15 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
6057
6058	* win32/win32.c (rb_w32_read): Windows 8 fixed one of a bug of console
6059	  API.
6060	  based on the patch by Heesob Park at [ruby-core:49479] [Bug #7379]
6061
6062Tue Nov 20 11:14:33 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6063
6064	* configure.in (--enable-dtrace): always call RUBY_DTRACE_BSD_BROKEN
6065	  for portability.
6066	  As the note, FreeBSD 8 has DTrace as the optional
6067	  feature (it is enabled by the build option), but doesn't have USDT.
6068	  FreeBSD 9 has USDT but they are still optional. FreeBSD 10 will
6069	  enable them by default.
6070	  The variable $rb_cv_prog_dtrace_g is "yes" only on FreeBSD 9 with
6071	  optional DTrace or FreeBSD 10. If it is "no", you cannot know
6072	  whether it doesn't need -G or DTrace is disabled. (by checking
6073	  error code, you can know)
6074
6075Mon Nov 19 22:55:48 2012  Naohisa Goto  <ngotogenome@gmail.com>
6076
6077	* configure.in (--enable-dtrace): change help message
6078
6079Tue Nov 20 11:05:00 2012  Zachary Scott  <zachary@zacharyscott.net>
6080
6081	* lib/tracer.rb (Tracer.trace_func): printf to stdout
6082	  Patch by Michal Fojtik [ruby-core:45219] [Bug #6490]
6083
6084Mon Nov 19 21:24:18 2012  Naohisa Goto  <ngotogenome@gmail.com>
6085
6086	* vm_dump.c: not to include probes.h because the code does not depend
6087	  on it.
6088	* common.mk (vm_dump.$(OBJEXT)): remove dependency on probes.h
6089
6090Tue Nov 20 10:14:22 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6091
6092	* thread.c (rb_thread_s_check_interrupt): removed redundant
6093	  GET_THREAD().
6094
6095Tue Nov 20 10:12:46 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6096
6097	* thread.c (rb_threadptr_async_errinfo_active_p): added a small
6098	  comment.
6099
6100Tue Nov 20 10:05:56 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6101
6102	* thread.c (rb_thread_blocking_region_end): replaced GET_THREAD()
6103	  with ruby_thread_from_native(). We don't have GVL here.
6104
6105Tue Nov 20 09:56:15 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6106
6107	* thread.c (rb_threadptr_execute_interrupts) removed.
6108	* thread.c (rb_threadptr_execute_interrupts_common) renamed to
6109	  rb_threadptr_execute_interrupts. I.e. unified
6110	  rb_threadptr_execute_interrupts and rb_threadptr_execute_interrupts_common.
6111	* thread.c (rb_thread_schedule, rb_thread_execute_interrupts) s/_common//.
6112
6113Tue Nov 20 09:48:34 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6114
6115	* signal.c (rb_get_next_signal): removed pointless signal
6116	  disabling. pthread_sigmask() only changes current thread
6117	  mask.
6118
6119Tue Nov 20 09:36:55 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6120
6121	* signal.c (install_sighandler): added comments why we need
6122	  rb_disable_interrupt().
6123
6124Tue Nov 20 09:31:33 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6125
6126	* signal.c (rb_disable_interrupt, rb_enable_interrupt): removed
6127	  USE_TRAP_MASK.
6128	* signal.c (trap_arg, trap_ensure): removed.
6129	* signal.c (trap, sig_trap): removed pointless signal disabling.
6130	  We don't need it because we no longer run trap handler on signal
6131	  handler context.
6132
6133Tue Nov 20 09:20:49 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6134
6135	* prelude.rb: Moved Mutex#synchronize to
6136	* thread.c (rb_mutex_synchronize_m): here. [Bug #4266]
6137
6138Tue Nov 20 08:36:15 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
6139
6140	* signal.c (sig_signame): implements Signal.signame method
6141	[Feature #5613]
6142	* test/ruby/test_signal.rb (test_signame): adds test for above
6143	* NEWS: add an item about above
6144
6145Mon Nov 19 16:30:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6146
6147	* struct.c (rb_struct_each_pair): yield associated pairs so that
6148	  an unsplat argument can get both, for consistency with Hash,
6149	  OpenStruct, and etc.  [ruby-dev:46533] [Bug #7382]
6150
6151Mon Nov 19 16:17:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6152
6153	* configure.in (LIBS): libelf is need on only FreeBSD.
6154
6155Mon Nov 19 16:08:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6156
6157	* common.mk (RUBYLIB): purelib option in runruby.rb is deprecated
6158	  since r28841, so set to an empty list to get rid of a bogus path in
6159	  child processes, which caused an insecure operation exception in
6160	  test/ruby/test_encoding.rb:test_unsafe.
6161
6162Mon Nov 19 15:40:50 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
6163
6164	* .travis.yml (script): add OPTS=-v, requested by @_ko1.
6165
6166Mon Nov 19 15:09:07 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6167
6168	* configure.in: fix didn't enable_dtrace=yes on auto.
6169
6170	* configure.in: see enable_dtrace for adding libelf on FreeBSD.
6171
6172	* common.mk: VPATH is not needed.
6173
6174Mon Nov 19 14:55:51 2012  Koichi Sasada  <ko1@atdot.net>
6175
6176	* thread.c: add `Thread#backtrace_locations' method.
6177	  This method is similar to `caller_locations' method for
6178	  specific method.
6179	  And fix to accept `level' and `n' parameters for `Thread#backtrace'
6180	  and `Thread#backtrace_locations'.
6181	  `caller' (and `caller_locations') do not return `caller' method
6182	  frame.
6183	  However, `Thread#backtrace' (and `Thread#backtrace_locations')
6184	  return `Thread#backtrace' method frame itself
6185	  if `Thread.current.backtrace' was called.
6186
6187	* vm_backtrace.c: ditto.
6188
6189	* internal.h: ditto.
6190
6191	* test/ruby/test_backtrace.rb: add tests.
6192
6193Mon Nov 19 14:54:32 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
6194
6195	* Makefile.in, common.mk (probes.h): moved to common.mk and changed to
6196	  see $(srcdir).
6197
6198	* common.mk (probes.dmyh): now created it on $(srcdir) always.
6199
6200	* win32/Makefile.sub (.SUFFIXES): removed common suffix.
6201
6202Mon Nov 19 10:00:10 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6203
6204	* Makefile.in (.SUFFIX): bsdmake needs .SUFFIX is defined before use.
6205
6206	* common.mk: fix path of probes.dmyh.
6207
6208	* common.mk (vm_dump.o): depend probes.h.
6209
6210	* configure.in: FreeBSD's USDT requires libelf.
6211
6212Mon Nov 19 01:11:59 2012  Naohisa Goto  <ngotogenome@gmail.com>
6213
6214	* vm_core.h, probes_helper.h (RUBY_DTRACE_FUNC_ENTRY_HOOK,
6215	  RUBY_DTRACE_FUNC_RETURN_HOOK): move from vm_core.h to new file
6216	  probes_helper.h for narrowing dependency to probes.h.
6217	* common.mk (VM_CORE_H_INCLUDES): remove dependency to probes.h.
6218	* common.mk (vm.$(OBJEXT)): add dependency to probes_helper.h.
6219	* vm.c, vm_insnhelper.c: include probes_helper.h.
6220
6221Sun Nov 18 16:33:00 2012  Naohisa Goto  <ngotogenome@gmail.com>
6222
6223	* configure.in, Makefile.in, common.mk: support DTrace on Solaris 10,
6224	  based on r26235 by Yugui. On Solaris 10, low optimization level
6225	  may also be needed, e.g. optflags="-xO1" or "-xO0" with Oracle
6226	  SolarisStudio 12.3 cc.
6227
6228	* configure.in (--enable-dtrace): new option to enable/disable
6229	  DTrace support. By default, trying to enable if dtrace command
6230	  is found on the system. It is disabled when cross compiling.
6231
6232	* configure.in (RUBY_DTRACE_POSTPROCESS): new macro. checks whether
6233	  the dtrace on the system needs postprocessing with "dtrace -G".
6234	  The postprocessing is needed on Solaris 10 and other platforms.
6235
6236	* configure.in (RUBY_DTRACE_BSD_BROKEN): new macro. checks whether
6237	  the dtrace supports USDT.
6238
6239	* configure.in (DTRACE): move after RUBY_DTRACE_POSTPROCESS.
6240
6241	* configure.in (LD): On Solaris, /usr/ccs/bin/ld is preferred.
6242
6243	* configure.in, Makefile.in, common.mk (DTRACE_OBJ): new macro for
6244	  DTrace probe object generated by postprocessing with "dtrace -G".
6245
6246	* Makefile.in, common.mk (probes.$(OBJEXT)): DTrace probe object
6247	  generated by the postprocessing. New file probes.stamp is for
6248	  rebuilding related objects that may be modified by "dtrace -G".
6249
6250	* configure.in, Makefile.in, common.mk (DTRACE_GLOMMED_OBJ): new
6251	  macro for DTrace static library hacks.
6252
6253	* configure.in, Makefile.in (LIBRUBY_A_OBJS): ditto.
6254
6255	* Makefile.in, common.mk (ruby-glommed.$(OBJEXT)): new target with
6256	  rule for DTrace static library hacks.
6257
6258	* common.mk (DTRACE_DEPENDENT_OBJS): objects depended on probes.h.
6259
6260Sun Nov 18 09:31:47 2012  Tadayoshi Funaba  <tadf@dotrb.org>
6261
6262	* complex.c (read_comp): mathn compliant.
6263	* rational.c (read_num): ditto.
6264
6265Sun Nov 18 02:50:12 2012  Luis Lavena <luislavena@gmail.com>
6266
6267	* win32/file.c (replace_to_long_name): correct logic around wildcard
6268	  characters detection and ensure wide-chars are used as pattern.
6269	  [ruby-core:49451] [Bug #7374]
6270
6271Sun Nov 18 02:02:46 2012  Tadayoshi Funaba  <tadf@dotrb.org>
6272
6273	* complex.c (read_comp): modified handling of polar form.
6274
6275Sun Nov 18 00:50:44 2012  Tadayoshi Funaba  <tadf@dotrb.org>
6276
6277	* complex.c (read_comp): fixed handling of polar form.
6278
6279Sun Nov 18 00:14:46 2012  Tadayoshi Funaba  <tadf@dotrb.org>
6280
6281	* complex.c (string_to_c_strict, string_to_c): rewrote without regexp.
6282	* rational.c (string_to_r_strict, string_to_r): ditto.
6283
6284Sat Nov 17 23:53:05 2012  Tadayoshi Funaba  <tadf@dotrb.org>
6285
6286	* complex.c (make_patterns): should not accept extra sign.
6287
6288Sat Nov 17 21:45:12  Luis Lavena  <luislavena@gmail.com>
6289
6290	* win32/file.c (replace_to_long_name): skip expansion for all wildcard
6291	  characters.
6292	  [ruby-core:49451] [Bug #7374]
6293
6294	* test/ruby/test_file_exhaustive.rb: add more assertions to test.
6295
6296Sat Nov 17 12:14:50 2012  Aaron Patterson <aaron@tenderlovemaking.com>
6297
6298	* ext/psych/lib/psych/visitors/yaml_tree.rb: use literal YAML style
6299	  when emitting multi-line strings. Thanks @atambo
6300
6301	* test/psych/test_yaml.rb: test for change.
6302
6303Sat Nov 17 12:03:41 2012  Aaron Patterson <aaron@tenderlovemaking.com>
6304
6305	* ext/psych/lib/psych/scalar_scanner.rb: avoid raising exceptions when
6306	  parsing Floats and Integers. Thanks riffraff [ruby-core:44426]
6307	* test/psych/test_numeric.rb: associated test
6308
6309Sat Nov 17 11:34:31 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
6310
6311	* st.c (st_update): pass the key in st_table so that we can free
6312	  memory of the key in st_table when deleting.
6313	  [ruby-core:49220] [Bug #7330]
6314
6315	* test/-ext-/st/test_update.rb
6316	  (Bug::StTable#test_pass_objects_in_st_table): add a test.
6317
6318Sat Nov 17 11:26:36 2012  Aaron Patterson <aaron@tenderlovemaking.com>
6319
6320	* ext/psych/lib/psych/core_ext.rb: move Kernel#y so that it can
6321	  manually be required as 'psych/y'.
6322
6323	* ext/psych/lib/psych/y.rb: ditto
6324
6325Sat Nov 17 08:13:48 2012  Benoit Daloze  <eregontp@gmail.com>
6326
6327	* lib/abbrev.rb: fix r37113. Correct examples, fix style
6328	  and show explicit dependency (require 'abbrev').
6329
6330Sat Nov 17 07:35:15 2012  Luis Lavena  <luislavena@gmail.com>
6331
6332	* win32/file.c (replace_to_long_name): skip automatic path expansion
6333	  when wildcard character is used.  [ruby-core:49451] [Bug #7374]
6334
6335	* test/ruby/test_file_exhaustive.rb: add a test for above.
6336
6337Sat Nov 17 00:50:23 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
6338
6339	* marshal.c (w_object): add flonum to arg->data to keep reference index
6340	  consistency. [ruby-core:49323] [Bug #7348]
6341
6342	* test/ruby/test_marshal.rb: add a test for above.
6343
6344Sat Nov 17 00:40:25 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6345
6346	* common.mk (incs): dist files need probes.dmyh.
6347
6348	* common.mk (probes.dmyh): depends on generator script.
6349
6350	* Makefile.in, common.mk, configure.in, win32/Makefile.sub (probes.h):
6351	  select generating with dtrace or copying dummy file by suffix rules.
6352
6353Fri Nov 16 19:24:10 2012  Koichi Sasada  <ko1@atdot.net>
6354
6355	* thread.c (rb_thread_call_without_gvl2): change the parameter of
6356	  `func' from `int *skip_interrupt' to `VALUE *flags'.
6357	  If (flags & RUBY_CALL_WO_GVL_FLAG_SKIP_CHECK_INTS) is not zero,
6358	  then skip checking interrupt.
6359	  [ruby-core:46547]
6360
6361	* include/ruby/thread.h: ditto.
6362
6363Fri Nov 16 18:59:05 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6364
6365	* Makefile.in (no-dtrace-probes.h): dmyprobes.h is in srcdir.
6366
6367	* common.mk (dmyprobes.h): ditto.
6368
6369Fri Nov 16 17:57:15 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6370
6371	* Makefile.in (probes.h): split build commands for dtrace-available
6372	  and unavailable platforms.
6373
6374	* Makefile.in (incs): probes.h is a platform dependent file, so it
6375	  cannot be a part of prereq target.  move it to all-incs.
6376
6377	* configure.in (DTRACE): move after AC_PROG_CC since cross_compiling
6378	  is set in it.
6379
6380	* configure.in (DTRACE): ignore non-prefixed version if
6381	  cross-compiling.
6382
6383	* Makefile.in, win32/Makefile.sub (probes.h): fix copying dmyprobes.h
6384	  path when outplace-build.
6385
6386Fri Nov 16 15:27:36 2012  Masaki Matsushita  <glass.saga@gmail.com>
6387
6388	* lib/net/pop.rb (POP3.certs): fix typo in comment.
6389	  patch from no6v (Nobuhiro IMAI) <nov@yo.rim.or.jp>.
6390	  [ruby-dev:46519] [Bug #7355]
6391
6392Fri Nov 16 12:36:47 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6393
6394	* test/rake/helper.rb (Rake::TestCase#setup): revert r37669.
6395	  @orig_PWD should be the original pwd.
6396
6397	* test/rake/test_*.rb: don't use @orig_PWD to load libraries.
6398	  It should be specified with relative path from the file.
6399
6400Fri Nov 16 10:22:52 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6401
6402	* test/rake/helper.rb (Rake::TestCase#setup): @orig_PWD shouldn't be
6403	  Dir.pwd when the build directory is different from source directory.
6404
6405Fri Nov 16 09:41:08 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6406
6407	* lib/rake/version.rb:  workaround fix to build. see #7366
6408	  [ruby-dev:46522]
6409
6410Fri Nov 16 07:23:18 2012  Eric Hodel  <drbrain@segment7.net>
6411
6412	* lib/rake*:  Updated to rake 0.9.4
6413	  http://rake.rubyforge.org/doc/release_notes/rake-0_9_4_rdoc.html for
6414	  a list of changes in 0.9.4.
6415
6416	* test/rake*:  ditto
6417
6418	* NEWS:  ditto
6419
6420Fri Nov 16 06:58:52 2012  Eric Hodel  <drbrain@segment7.net>
6421
6422	* lib/rake*:  Updated to rake 0.9.3.  See
6423	  http://rake.rubyforge.org/doc/release_notes/rake-0_9_3_rdoc.html for
6424	  a list of changes in 0.9.3.
6425
6426	* test/rake*:  ditto
6427
6428	* bin/rake:  ditto
6429
6430	* NEWS:  ditto
6431
6432Thu Nov 15 22:39:32 2012  Yusuke Endoh  <mame@tsg.ne.jp>
6433
6434	* range.c (range_bsearch): fix some bugs: a documentation bug, a wrong
6435	  condition, missed break in switch/case, and workaround for GCC
6436	  optimization. See [ruby-core:49364] in detail.  A great patch from
6437	  Heesob Park. [Bug #7352] [Feature #4766]
6438
6439	* array.c (rb_ary_bsearch): fix similar bug (missed break).
6440
6441	* test/ruby/test_range.rb: add two test cases for above.
6442
6443Thu Nov 15 22:41:57 2012  Koichi Sasada  <ko1@atdot.net>
6444
6445	* vm_exec.h (GENTRY): GENTRY should be pointer size.
6446	  A patch by yoshidam (Yoshida Masato) [Bug #7332].
6447
6448Thu Nov 15 13:20:00 2012  Zachary Scott  <zachary@zacharyscott.net>
6449
6450	* man/erb.1: Fix grammar and copyright dates
6451	* man/goruby.1: ditto
6452	* man/irb.1: ditto
6453	* man/rake.1: ditto
6454	* man/ri.1: ditto
6455	* man/ruby.1: ditto
6456	  Patch by Arthur Gunn
6457	  [Fixes Github #210]
6458
6459Thu Nov 15 11:35:00 2012  Zachary Scott  <zachary@zacharyscott.net>
6460
6461	* man/ruby.1: Grammar edits for man page
6462	  Based on a patch by Michael Endsley [Fixes Github #183]
6463
6464Thu Nov 15 00:47:20 2012  Yusuke Endoh  <mame@tsg.ne.jp>
6465
6466	* array.c (rb_ary_bsearch): add Array#bsearch for binary search.
6467	  [ruby-core:36390] [Feature #4766]
6468
6469	* test/ruby/test_array.rb: add a test for above.
6470
6471	* range.c (range_bsearch): add Range#bsearch for binary search.
6472	  [ruby-core:36390] [Feature #4766]
6473
6474	* test/ruby/test_range.rb: add a test for above
6475
6476	* NEWS: added the two new methods.
6477
6478Wed Nov 14 13:25:00 2012  Zachary Scott  <zachary@zacharyscott.net>
6479
6480	* lib/fileutils.rb (chmod): Add "X" to modes, convert format to table
6481	  [ruby-core:48965] [Bug #7288]
6482
6483Wed Nov 14 11:51:00 2012  Zachary Scott  <zachary@zacharyscott.net>
6484
6485	* lib/csv.rb (init_comments): Document private method #init_comments.
6486	  Based on a patch from Vincent Batts [ruby-core:49172] [Bug #7319]
6487
6488Wed Nov 14 00:54:00 2012  Kenta Murata  <mrkn@mrkn.jp>
6489
6490	* Makefile.in (probes.h): create from probes.d
6491
6492Tue Nov 13 18:44:01 2012  Koichi Sasada  <ko1@atdot.net>
6493
6494	* vm_insnhelper.c (vm_call_cfunc_with_frame): don't use ci after
6495	  EXEC_EVENT_HOOK because ci can be overridden.
6496
6497	* vm_eval.c: ditto.
6498
6499	* method.h: change invoker's parameters types.
6500
6501	* vm_method.c (call_cfunc_invoker_func): ditto.
6502
6503Tue Nov 13 18:01:54 2012  Shugo Maeda  <shugo@ruby-lang.org>
6504
6505	* eval.c (rb_mod_using): raise an ArgumentError if cyclic using is
6506	  detected.  based on the patch by Charlie Somerville.
6507	  [ruby-core:49092] Bug #7308
6508
6509	* test/ruby/test_refinement.rb: related test.
6510
6511Tue Nov 13 17:40:04 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6512
6513	* common.mk (vm_insnhelper.c): this target is useless and causes
6514	  ruby always need rebuild.
6515
6516Tue Nov 13 17:35:49 2012  Koichi Sasada  <ko1@atdot.net>
6517
6518	* compile.c (insn_data_to_s_detail): remove debug lines.
6519
6520Tue Nov 13 17:28:47 2012  Koichi Sasada  <ko1@atdot.net>
6521
6522	* vm_insnhelper.c (vm_caller_setup_args): save and restore
6523	  ci->argc and ci->blockptr before and after method invocations
6524	  because these method dispatches can override call_info.
6525
6526	* bootstraptest/test_method.rb: add tests for this fix.
6527
6528Tue Nov 13 16:38:02 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6529
6530	* common.mk (dmyprobes.h): always create for make dist.
6531
6532	* Makefile.in (probes.h): create or copy dmyprobes.h
6533
6534	* win32/Makefile.sub: only do copy dmyprobes.h.
6535
6536Tue Nov 13 15:37:21 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6537
6538	* Makefile.in (.SUFFIX): .SUFFIX is needed here for .d.h on bsd make.
6539
6540Tue Nov 13 15:34:35 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
6541
6542	* common.mk Makefile.in win32/Makefile.sub (.d.h): it's not common.
6543
6544Tue Nov 13 12:27:11 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6545
6546	* configure.in: disable dtrace because it doesn't work on FreeBSD.
6547
6548	* common.mk (clean-local): rm probes.h.
6549
6550	* common.mk (parse.o): depend $(PROBES_H_INCLUDES).
6551
6552	* common.mk (.d.h): moved from Makefile.in and use BASERUBY.
6553
6554	* tool/gen_dummy_probes.rb: reimplemented with ruby because sed is not
6555	  available on Windows Microsoft VC++ environment.
6556
6557Tue Nov 13 12:30:26 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
6558
6559	* win32/README.win32: added mention about build directory.  currently
6560	  we can not build ruby in win32 directory.  this problem is reported
6561	  by Masahiro Kitajima <katonbo@katontech.com>.
6562
6563Tue Nov 13 11:03:47 2012  Masaki Matsushita  <glass.saga@gmail.com>
6564
6565	* re.c (rb_memsearch_ss): performance improvement by using memmem(3) if
6566	  possible. [ruby-dev:45530] [Feature #6311]
6567
6568	* configure.in: check existence of memmem(3) and that it is not broken.
6569
6570Tue Nov 13 06:50:02 2012  Aaron Patterson <aaron@tenderlovemaking.com>
6571
6572	* probes.d: add DTrace probe declarations. [ruby-core:27448]
6573
6574	* array.c (empty_ary_alloc, ary_new): added array create DTrace probe.
6575
6576	* compile.c (rb_insns_name): allowing DTrace probes to access
6577	  instruction sequence name.
6578
6579	* Makefile.in: translate probes.d file to appropriate header file.
6580
6581	* common.mk: declare dependencies on the DTrace header.
6582
6583	* configure.in: add a test for existence of DTrace.
6584
6585	* eval.c (setup_exception): add a probe for when an exception is
6586	  raised.
6587
6588	* gc.c: Add DTrace probes for mark begin and end, and sweep begin and
6589	  end.
6590
6591	* hash.c (empty_hash_alloc): Add a probe for hash allocation.
6592
6593	* insns.def: Add probes for function entry and return.
6594
6595	* internal.h: function declaration for compile.c change.
6596
6597	* load.c (rb_f_load): add probes for `load` entry and exit, require
6598	  entry and exit, and wrapping search_required for load path search.
6599
6600	* object.c (rb_obj_alloc): added a probe for general object creation.
6601
6602	* parse.y (yycompile0): added a probe around parse and compile phase.
6603
6604	* string.c (empty_str_alloc, str_new): DTrace probes for string
6605	  allocation.
6606
6607	* test/dtrace/*: tests for DTrace probes.
6608
6609	* vm.c (vm_invoke_proc): add probes for function return on exception
6610	  raise, hash create, and instruction sequence execution.
6611
6612	* vm_core.h: add probe declarations for function entry and exit.
6613
6614	* vm_dump.c: add probes header file.
6615
6616	* vm_eval.c (vm_call0_cfunc, vm_call0_cfunc_with_frame): add probe on
6617	  function entry and return.
6618
6619	* vm_exec.c: expose instruction number to instruction name function.
6620
6621	* vm_insnhelper.c: add function entry and exit probes for cfunc
6622	  methods.
6623
6624	* vm_insnhelper.h: vm usage information is always collected, so
6625	  uncomment the functions.
6626
6627Mon Nov 12 19:14:50 2012  Akinori MUSHA  <knu@iDaemons.org>
6628
6629	* configure.in (isinf, isnan): isinf() and isnan() are macros on
6630	  DragonFly which cannot be found by AC_REPLACE_FUNCS().  This
6631	  workaround enforces the fact that they exist on DragonFly.
6632
6633Mon Nov 12 15:59:38 2012  Shugo Maeda  <shugo@ruby-lang.org>
6634
6635	* vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo),
6636	  vm_insnhelper.c (vm_search_method): revert r37616 because it's too
6637	  slow.  [ruby-dev:46477]
6638
6639	* test/ruby/test_refinement.rb (test_inline_method_cache): skip
6640	  the test until the bug is fixed efficiently.
6641
6642Mon Nov 12 14:28:01 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
6643
6644	* win32/mkexports.rb (each_export): skip garbage generated by VS2012's
6645	  nmake.
6646	  reported and patched by Yoshida Masato at [Bug #7333] [ruby-dev:46484]
6647
6648Sun Nov 11 18:58:55 2012  Tadayoshi Funaba  <tadf@dotrb.org>
6649
6650	* test/date/test_date_{parse,strptime}.rb: changed the format of
6651	  some extra messages.
6652
6653Sun Nov 11 18:41:34 2012  Tadayoshi Funaba  <tadf@dotrb.org>
6654
6655	* ext/date/date_parse.c (date__parse): revised the tight parser
6656	  (about handling of apostrophes).
6657
6658Sun Nov 11 15:39:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6659
6660	* hash.c (rb_hash_s_create): just warn for wrong elements now.
6661	  [ruby-dev:46440] [Bug #7300]
6662
6663	* hash.c (rb_hash_s_create): refine error messages.
6664
6665	* error.c (rb_builtin_class_name): share for above.
6666
6667Sun Nov 11 15:12:18 2012  Shugo Maeda  <shugo@ruby-lang.org>
6668
6669	* eval.c (top_using): remove Kernel#using, and add main.using instead.
6670
6671	* test/ruby/test_refinement.rb: related test.
6672
6673Sun Nov 11 13:41:01 2012  Shugo Maeda  <shugo@ruby-lang.org>
6674
6675	* eval.c (rb_using_refinement, rb_mod_using, f_using): clear method
6676	  cache only when using is called explicitly.
6677
6678	* test/ruby/test_refinement.rb: related test.
6679
6680Sun Nov 11 12:56:34 2012  Masaki Matsushita  <glass.saga@gmail.com>
6681
6682	* lib/pstore.rb (PStore): fix not to replace ThreadError raised in
6683	  #transaction block with PStore::Error.
6684	  [ruby-core:39238] [Bug #5269]
6685
6686Sun Nov 11 11:36:19 2012  Shugo Maeda  <shugo@ruby-lang.org>
6687
6688	* vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo):
6689	  add a new field for inline method cache.
6690
6691	* vm_insnhelper.c (vm_search_method): check rb_call_info_t::refinements
6692	  not to confuse inline method cache when module_eval is used with
6693	  refinements.
6694
6695	* test/ruby/test_refinement.rb: related test.
6696
6697Sun Nov 11 08:45:45 2012  Martin Duerst  <duerst@it.aoyama.ac.jp>
6698
6699	* ruby.c: removed a comma before "before"
6700
6701Sat Nov 10 23:02:31 2012  Narihiro Nakamura  <authornari@gmail.com>
6702
6703	* gc.c: move immutable fields from struct heaps_slot and struct
6704	  sorted_heaps_slot into struct heaps_header.
6705	  Based on a patch from Sokolov Yura [Feature #6199][ruby-core:43592]
6706
6707Sat Nov 10 19:28:16 2012  Tadayoshi Funaba  <tadf@dotrb.org>
6708
6709	* complex.c: modified doc.
6710	* rational.c: ditto.
6711
6712Sat Nov 10 18:20:10 2012  Tadayoshi Funaba  <tadf@dotrb.org>
6713
6714	* ext/date/date_parse.c: edited about era.
6715
6716Sat Nov 10 12:13:41 2012  Kouhei Sutou  <kou@cozmixng.org>
6717
6718	* tool/rbinstall.rb: Don't install *.gemspec under lib/.
6719	  [ruby-core:48966] [Bug #7289]
6720	  Reported by Vit Ondruch. Thanks!!!
6721
6722Sat Nov 10 00:49:26 2012  Naohisa Goto  <ngotogenome@gmail.com>
6723
6724	* ruby_atomic.h: renamed from atomic.h to avoid header file name
6725	  conflict on Solaris 10. [ruby-dev:46414] [Bug #7287]
6726
6727	* gc.c, signal.c, vm_core.h, common.mk: reflect the rename from
6728	  atomic.h to ruby_atomic.h.
6729
6730Sat Nov 10 00:46:57 2012  Naohisa Goto  <ngotogenome@gmail.com>
6731
6732	* atomic.h: Revert r37491 which is a temporary workaround.
6733
6734Sat Nov 10 00:33:31 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
6735
6736	* siphash.h: check configure macros before include newer headers.
6737
6738Fri Nov  9 23:33:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6739
6740	* lib/erb.rb (ERB#run, ERB#result): eval under isolated bindings for
6741	  safe concurrent use.  [ruby-core:47638] [Bug #7046]
6742
6743Fri Nov  9 23:05:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6744
6745	* random.c (BYTE_ORDER): define using configured WORDS_BIGENDIAN.
6746
6747	* siphash.c (sip_init_state): use union to suppress warnings by gcc
6748	  4.7.
6749
6750Fri Nov  9 19:40:03 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6751
6752	* array.c (rb_ary_splice): fix r37583 doesn't consider the case when
6753	  beg > array length.
6754
6755Fri Nov  9 16:11:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6756
6757	* random.c (rb_memhash): use siphash.
6758
6759Fri Nov  9 16:08:46 2012  Sokolov Yura funny-falcon  <funny.falcon@gmail.com>
6760
6761	* array.c: speedup Array#unshift by using space in shared array.
6762	  [Feature #6638]
6763	  - when array owns its shared array (ARY_SHARED_NUM == 1), and there
6764	    is enough space then try unshift values directly into shared
6765	    array.
6766	  - when resulting array is big (~>64 items) then make it shared with
6767	    enough room for future #unshifts, and then insert into shared
6768	    array.
6769
6770	* array.c (rb_ary_splice): use shared array in rb_ary_slice.
6771	  [Feature #6638]
6772	  - use ary_ensure_room_for_push when rb_ary_slice used to add at the
6773	    end of array, cause rb_ary_concat use rb_ary_slice.
6774
6775	* array.c (ary_ensure_room_for_push): make array really suitable for
6776	  queue.  [Feature #6638]
6777	  when array is shared (which happens after Array#shift), and
6778	  ARY_SHARED_NUM == 1 (which is very often when array used as queue),
6779	  then make rb_ary_push push directly into shared array.
6780
6781	* array.c (rb_ary_modify): steal shared array's container when
6782	  ARY_SHARED_NUM == 1.  [Feature #6638]
6783	  - Do not allocate new memory in rb_ary_modify when ARY_SHARED_NUM == 1
6784	    and length almost same.
6785	  - Store ARY_CAPA instead of RARRAY_LEN in ary_make_shared, to make
6786	    it useful.
6787	  - Fix rb_ary_sort_bang accordantly.
6788
6789Fri Nov  9 16:00:00 2012  Zachary Scott  <zzak@zacharyscott.net>
6790
6791	* ext/bigdecimal/bigdecimal.c: Documentation for BigDecimal
6792	  Based on a patch from Vincent Batts [ruby-core:49047] [Bug #7305]
6793
6794Fri Nov  9 15:25:42 2012  Akinori MUSHA  <knu@iDaemons.org>
6795
6796	* lib/shellwords.rb (Shellwords#shellescape): Add back my original
6797	  real world example with some enhancement.
6798
6799	* lib/shellwords.rb (Shellwords#shelljoin): Undo part of the
6800	  previous rdoc change.  This new example using a string-only
6801	  array was not in line with the description.
6802
6803Fri Nov  9 12:58:13 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6804
6805	* string.c (rb_str_crypt): crypt(3) may return NULL.
6806	  Latest glibc (2.16?) crypt(3) actually returns NULL. [Bug #7312]
6807
6808Fri Nov  9 12:07:06 2012  Akinori MUSHA  <knu@iDaemons.org>
6809
6810	* include/ruby/ruby.h (alloca), eval_intern.h (alloca), gc.c
6811	  (alloca): Make alloca() globally available by moving the
6812	  ultimate ifdef's to ruby/ruby.h.  Gcc hides its builtin alloca()
6813	  when compiling with -ansi, and linking thus fails on platforms
6814	  that lack their own alloca() implementation in libc, which
6815	  include OpenBSD and some ports of NetBSD.  We use alloca()
6816	  everywhere including from within third party C extensions, so
6817	  alloca() must be made globally available. [Bug #7307]
6818
6819	* addr2line.c (alloca): Replace the alloca() part with the
6820	  ultimate ifdef's. [Bug #7307]
6821
6822Fri Nov  9 09:30:00 2012  Zachary Scott  <zachary@zacharyscott.net>
6823
6824	* io.c (IO#new):
6825	  Fix indentation from r37444
6826	  [ruby-core:48052] [Bug #7179]
6827
6828Fri Nov  9 07:36:00 2012  Kenta Murata  <mrkn@mrkn.jp>
6829
6830	* bignum.c (bigmul0): enable big_mul_toom3.
6831	  [ruby-core:48552] [Bug #7242]
6832
6833	* bignum.c (bigmul1_toom3): fix incorrect calculation.
6834	  the patch is made by Heesob Park.
6835	  [ruby-core:48552] [Bug #7242]
6836
6837Fri Nov  9 05:33:00 2012  Kenta Murata  <mrkn@mrkn.jp>
6838
6839	* bignum.c (bigmul0): disable big_mul_toom3 temporarily.
6840	  [ruby-core:48552] [Bug #7242]
6841
6842	* test/ruby/test_bignum.rb (test_mul_large_numbers):
6843	  add a test for bigmul1_toom3 suggested in [Bug #7242].
6844
6845Thu Nov  8 21:57:59 2012  Masaki Matsushita  <glass.saga@gmail.com>
6846
6847	* re.c (rb_memsearch): performance improvement by using memchr().
6848	  [ruby-dev:45397] [Feature #6173]
6849
6850Thu Nov  8 19:02:50 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6851
6852	* lib/net/protocol.rb (Net::InternetMessageIO#each_crlf_line):
6853	  treat \r as newline as mame pointed. [ruby-dev:46425] [Bug #7278]
6854
6855Thu Nov  8 11:32:11 2012  Akinori MUSHA  <knu@iDaemons.org>
6856
6857	* configure.in (--with-opt-dir): Avoid nesting of double quotes
6858	  inside backquotes, since some traditional shells like PD KSH
6859	  (which OpenBSD's /bin/sh bases on) fail to parse them.
6860
6861Thu Nov  8 09:34:00 2012  Kenta Murata  <mrkn@cookpad.com>
6862
6863	* numeric.c: Add a caution that the results of the comparing
6864	  operations of two NaNs are undefined.
6865	  [#1720] [ruby-dev:38725] [ruby-core:36966]
6866
6867Thu Nov  8 04:45:21 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
6868
6869	* include/ruby/intern.h: Restore rb_enumeratorize as it was before
6870	  r37497 and introduce rb_enumeratorize_with_size instead. [#7302]
6871
6872	* enumerator.c: ditto.
6873
6874Wed Nov  7 15:22:37 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6875
6876	* numeric.c (ruby_float_step): fix r37514: it yielded with NaN
6877	  if the unit is infinity.
6878
6879Wed Nov  7 15:46:12 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
6880
6881	* lib/webrick.rb: fix typo. reported by Rohit Arondekar.
6882	  https://github.com/ruby/ruby/pull/211
6883
6884Wed Nov  7 15:34:12 2012  Takeyuki FUJIOKA  <xibbar@ruby-lang.org>
6885
6886	* lib/cgi/core.rb: alias CGI#http_header to CGI#header.
6887
6888Wed Nov  7 12:49:39 2012  Shugo Maeda  <shugo@ruby-lang.org>
6889
6890	* eval.c (rb_mod_refine): set RMODULE_IS_REFINEMENT to a created
6891	  refinement module, and don't override method_added.
6892
6893	* vm_method.c (rb_method_entry_make): check redefinition of
6894	  optimized methods when a method is added to a refinement module.
6895	  [ruby-core:48970] [Bug #7290]
6896
6897	* test/ruby/test_refinement.rb: related test.
6898
6899Wed Nov  7 11:48:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6900
6901	* misc/ruby-additional.el (ruby-mode-set-encoding): now encoding needs
6902	  to be set always explicitly actually.  [Feature #6679]
6903
6904Wed Nov  7 09:15:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6905
6906	* object.c (rb_mod_const_get): avoid inadvertent symbol creation.
6907
6908Wed Nov  7 07:52:50 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6909
6910	* enum.c (rb_enum_cycle_size): prefix with rb.
6911
6912Wed Nov  7 04:32:15 2012  Luis Lavena  <luislavena@gmail.com>
6913
6914	* test/ruby/test_file_exhaustive.rb: Remove FIXME skip on Windows
6915	  specific test because the test in question was already fixed.
6916
6917Wed Nov  7 03:45:12 2012  Luis Lavena  <luislavena@gmail.com>
6918
6919	* ext/zlib/extconf.rb: Recognize zlibwapi as linking library.
6920	  Patch by Daniel Berger.
6921
6922	  [ruby-core:44979] [Feature #6421]
6923
6924Wed Nov  7 02:06:40 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
6925
6926	* enumerator.c: New method #size; constructor accepts size.
6927	                Have #to_enum accept a block
6928	                Warn when using deprecated form of constructor
6929	                Support #size for enumerators created from enumerators
6930	                Support for lazy.{map|flat_map|...}.size.
6931
6932	* include/ruby/intern.h: RETURN_SIZED_ENUMERATOR for support of
6933	  sized enumerators.
6934
6935	* array.c: Support for various enumerator.size.
6936
6937	* enum.c: ditto.
6938
6939	* hash.c: ditto.
6940
6941	* numeric.c: ditto.
6942
6943	* range.c: ditto.
6944
6945	* string.c: ditto.
6946
6947	* struct.c: ditto.
6948
6949	* vm_eval.c: ditto.
6950
6951Tue Nov  6 20:40:28 2012  Aaron Patterson <aaron@tenderlovemaking.com>
6952
6953	* object.c (rb_mod_const_get): Fix constant missing exception class
6954	  and message to maintain backwards compatibility. Constant search
6955	  should start at Object when constant starts with '::'
6956
6957	* test/ruby/test_module.rb: test for fixes
6958
6959Tue Nov  6 16:50:00 2012  Masaki Matsushita  <glass.saga@gmail.com>
6960
6961	* lib/tempfile.rb (Tempfile#inspect): fix confusing #inspect.
6962	  previous Tempfile#inspect says it is a File, but actually
6963	  it is not a File.
6964
6965	    t = Tempfile.new("foo") #=> #<File:/tmp/foo20121106-31970-1ffbum0>
6966	    t.is_a? File #=> false
6967
6968	  now Tempfile#inspect returns like:
6969
6970	    t = Tempfile.new("foo")
6971	    #=> #<Tempfile:/tmp/foo20121106-31970-1ffbum0>
6972
6973	  [ruby-core:47544] [Bug #7027]
6974
6975Tue Nov  6 16:22:30 2012  Naohisa Goto  <ngotogenome@gmail.com>
6976
6977	* atomic.h: add #include <sys/atomic.h> for the workaround of
6978	  header file name conflict of atomic.h with /usr/include/atomic.h
6979	  on Solaris 10. [ruby-dev:46414] [Bug #7287]
6980
6981Tue Nov  6 14:38:00 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
6982
6983	* test/win32ole/test_win32ole.rb: now source encoding is UTF-8, so
6984	  binary strings in old scripts are dangerous.
6985
6986Tue Nov  6 14:25:09 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6987
6988	* lib/net/protocol.rb (Net::InternetMessageIO#each_crlf_line):
6989	  don't use /n in universal regexp. [ruby-dev:46394] [Bug #7278]
6990
6991Tue Nov  6 09:42:26 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6992
6993	* string.c (rb_str_b): Add String#b, returning a copied string
6994	  whose encoding is ASCII-8BIT. [ruby-dev:45992] [Feature #6767]
6995
6996Tue Nov  6 09:37:57 2012  NARUSE, Yui  <naruse@ruby-lang.org>
6997
6998	* ruby.c (load_file_internal): set default source encoding as
6999	  UTF-8 instead of US-ASCII. [ruby-core:46021] [Feature #6679]
7000
7001	* parse.y (parser_initialize): set default parser encoding as
7002	  UTF-8 instead of US-ASCII.
7003
7004Tue Nov  6 05:48:06 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
7005
7006	* test/ruby/test_require.rb
7007	  (TestRequire#test_require_to_path_redefined_in_load_path,
7008	   TestRequire#test_require_to_str_redefined_in_load_path):
7009	  Suppress method redefined warning when test-all with RUBYOPT=-w.
7010
7011Thu Nov  8 00:24:14 2012  Akinori MUSHA  <knu@iDaemons.org>
7012
7013	* ext/curses/view.rb: Do not fail if the file to view is shorter
7014	  than the screen height.
7015
7016Mon Nov  5 11:40:00 2012  Mark Somerville  <mark@scottishclmibs.com>
7017
7018	* thread_pthread.c (rb_reserved_fd_p): fix typo in macro check
7019	  that prevented the ifdef ever being true.
7020	  [Bug #7281] [ruby-core:48940]
7021
7022Mon Nov  5 23:28:57 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
7023
7024	* file.c (rb_get_path_check_to_string): extract from
7025	  rb_get_path_check(). We change the spec not to call to_path of
7026	  String object.
7027
7028	* file.c (rb_get_path_check_convert): extract from rb_get_path_check().
7029
7030	* file.c (rb_get_path_check): follow the above change.
7031
7032	* file.c (rb_file_expand_path_fast): remove check_expand_path_args().
7033	  Instead we call it in load.c.
7034
7035	* file.c (rb_find_file_ext_safe): use rb_get_expanded_load_path() to
7036	  reduce expand cost.
7037
7038	* file.c (rb_find_file_safe): ditto.
7039
7040	* internal.h (rb_get_expanded_load_path): add a declaration.
7041
7042	* internal.h (rb_get_path_check_to_string, rb_get_path_check_convert):
7043	  add declarations.
7044
7045	* load.c (rb_construct_expanded_load_path): fix for compatibility.
7046	  Same checks in rb_get_path_check() are added. We don't replace
7047	  $LOAD_PATH and ensure that String object of $LOAD_PATH are frozen.
7048	  We don't freeze non String object and expand it every time. We add
7049	  arguments for expanding load path partially and checking if load path
7050	  have relative paths or non String objects.
7051
7052	* load.c (load_path_getcwd): get current working directory for checking
7053	  if it's changed when getting load path.
7054
7055	* load.c (rb_get_expanded_load_path): fix for rebuilding cache properly.
7056	  We check if current working directory is changed and rebuild expanded
7057	  load path cache. We expand paths which start with ~ (User HOME) and
7058	  non String objects every time for compatibility. We make this
7059	  accessible from other source files.
7060
7061	* load.c (rb_feature_provided): call rb_get_path() since we changed
7062	  rb_file_expand_path_fast() not to call it.
7063
7064	* load.c (Init_load): initialize vm->load_path_check_cache.
7065
7066	* vm.c (rb_vm_mark): mark vm->load_path_check_cache for GC.
7067
7068	* vm_core.h (rb_vm_struct): add vm->load_path_check_cache to store data
7069	  to check load path cache validity.
7070
7071	* test/ruby/test_require.rb (TestRequire): add tests for require
7072	  compatibility related to cached expanded load path.
7073	  [ruby-core:47970] [Bug #7158]
7074
7075Mon Nov  5 23:26:05 2012  Greg Price  <price@mit.edu>
7076
7077	* load.c (rb_get_expanded_load_path): cache the expanded load
7078	  path.  This saves 4KB of allocation and some stats for every
7079	  element of the load path (so nearly a MB in my Rails app)
7080	  on every require.
7081
7082	* load.c (rb_construct_expanded_load_path): ensure that $LOAD_PATH
7083	  entries are frozen strings.  The user must mutate $LOAD_PATH
7084	  itself rather than its individual entries.
7085
7086	* vm_core.h (rb_vm_struct): add fields.
7087
7088	* vm.c (rb_vm_mark): mark new fields.
7089
7090	* ruby.c (process_options): modify $LOAD_PATH directly rather than
7091	  its elements.
7092	  Patch by Greg Price.
7093	  [ruby-core:47970] [Bug #7158]
7094
7095Mon Nov  5 23:24:42 2012  Greg Price  <price@mit.edu>
7096
7097	* load.c (rb_feature_p, rb_provide_feature): index $LOADED_FEATURES
7098	  so that require isn't so slow.
7099
7100	* load.c (rb_provide_feature, get_loaded_features_index): ensure
7101	  that $LOADED_FEATURES entries are frozen strings.  The user
7102	  must mutate $LOADED_FEATURES itself rather than its individual
7103	  entries.
7104
7105	* load.c (reset_loaded_features_snapshot): add a new function to reset
7106	  vm->loaded_features_snapshot.
7107
7108	* load.c (get_loaded_features_index_raw): add a new function to get
7109	  the loaded-features index.
7110
7111	* load.c (features_index_add_single): add a new function to add to the
7112	  loaded-features index a single feature.
7113
7114	* load.c (features_index_add): add a new function to add to the
7115	  loaded-features index all the required entries for `feature`.
7116
7117	* vm_core.h (rb_vm_struct): add fields.
7118
7119	* vm.c (rb_vm_mark): mark new fields.
7120
7121	* include/ruby/intern.h (rb_hash_clear): declare function.
7122
7123	* hash.c (rb_hash_clear): make function non-static.
7124	  Patch by Greg Price.
7125	  [ruby-core:47970] [Bug #7158]
7126
7127Mon Nov  5 23:23:51 2012  Greg Price  <price@mit.edu>
7128
7129	* array.c (rb_ary_shared_with_p): new function.
7130	  Expose whether two arrays are shared (read-only, C only).
7131
7132	* include/ruby/intern.h (rb_ary_shared_with_p): declare.
7133	  Patch by Greg Price.
7134	  [ruby-core:47970] [Bug #7158]
7135
7136Mon Nov  5 23:21:14 2012  Greg Price  <price@mit.edu>
7137
7138	* load.c (loaded_feature_path): clarify and briefly comment
7139	  function.  These clarifications have no effect on the behavior
7140	  of the function.
7141
7142	* load.c (rb_feature_p): explain the search loop.  Especially
7143	  useful because the logic is complicated as described in the
7144	  second paragraph.
7145	  Patch by Greg Price.
7146	  [ruby-core:47970] [Bug #7158]
7147
7148Mon Nov  5 22:45:03 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
7149
7150	* ext/dl/win32/lib/Win32API.rb (Win32API#call): use 64bit pointer for x64
7151	  Windows. This would fix
7152	  TestSecureRandom#test_s_random_bytes_without_openssl error.
7153	  [ruby-core:47451] [Bug #6990]
7154
7155Mon Nov  5 22:09:26 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
7156
7157	* cygwin/GNUmakefile.in (uncommon.mk): link *.res.o.
7158	  EXTOBJES is defined in uncommon.mk. *.res.o setting should be below
7159	  uncommon.mk.
7160	  [ruby-core:48858] [Bug #7277]
7161
7162Mon Nov  5 11:35:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
7163
7164	* thread_pthread.c (native_thread_init, native_thread_destroy):
7165	  removed HAVE_PTHREAD_CONDATTR_INIT check because this silly
7166	  #ifdef makes use-uninitialized-var issue and (2) native_cond_initialize()
7167	  already have a right platform and caller don't need any additional care.
7168	  [Bug #6825]
7169
7170Mon Nov  5 10:57:59 2012  NARUSE, Yui  <naruse@ruby-lang.org>
7171
7172	* lib/cgi/core.rb: check if Tempfile is defined before use it.
7173
7174	* lib/cgi/core.rb: remove tempfiles only if tempfiles exist
7175
7176Mon Nov  5 12:17:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7177
7178	* lib/uri/http.rb (URI::HTTP.build): Fix example
7179	  Patch by Carina C. Zona
7180	  [Fixes #209 Github]
7181
7182Mon Nov  5 09:55:05 2012  Takeyuki FUJIOKA  <xibbar@ruby-lang.org>
7183
7184	* lib/cgi/core.rb: remove tempfile more early.
7185
7186Sun Nov  4 20:29:46 2012  Takeyuki FUJIOKA  <xibbar@ruby-lang.org>
7187
7188	* lib/cgi.rb, lib/cgi/*/rb: rename CGI#header to CGI#http_header,
7189	  add and update HTML5 tag generator.  [Bug #7110]
7190	  Patch provided by Marcus Stollsteimer, thank you !
7191
7192Sun Nov  4 11:47:39 2012  Masaki Matsushita  <glass.saga@gmail.com>
7193
7194	* lib/fileutils.rb (module FileUtils): repatch [ruby-core:39622]
7195	  [Feature #5337]. improve performance of FileUtils.compare_stream.
7196	  [ruby-core:47545] [Feature #7028]
7197
7198Sun Nov  4 11:27:54 2012  Masaki Matsushita  <glass.saga@gmail.com>
7199
7200	* array.c (recursive_equal): fix to return true when self and other
7201	  are resized to same size and the current index become out of
7202	  range.
7203
7204	* test/ruby/test_array.rb: add a test for the above.
7205
7206Sun Nov  4 10:19:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7207
7208	* dir.c (file_s_fnmatch): match with expanding braces if FNM_EXTGLOB
7209	  is set.  [ruby-core:40037] [Feature #5422]
7210
7211Sat Nov  3 23:38:15 2012  Tadayoshi Funaba  <tadf@dotrb.org>
7212
7213	* complex.c: modified doc.
7214	* rational.c: ditto.
7215
7216Sat Nov  3 22:38:55 2012  Tadayoshi Funaba  <tadf@dotrb.org>
7217
7218	* ext/date/date_core.c: modified doc.
7219
7220Sat Nov  3 18:35:55 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
7221
7222	* vm.c (rb_vm_rewrite_ep_in_errinfo, vm_rewrite_ep_in_errinfo):
7223	  merge code and remove `rb_vm_rewrite_ep_in_errinfo'.
7224
7225Sat Nov  3 18:15:24 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
7226
7227	* vm.c, proc.c: avoid unnecessary `rb_vm_rewrite_ep_in_errinfo'
7228	  calls.
7229
7230Sat Nov  3 17:53:43 2012  Kouhei Sutou  <kou@cozmixng.org>
7231
7232	* bin/testrb: Use only Test::Unit::AutoRunner in test-unit gem
7233	  compatible API to be available by both test/unit bundled in Ruby
7234	  and test-unit gem.
7235	* lib/test/unit.rb (Test::Unit::AutoRunner): Move codes from testrb.
7236
7237Sat Nov  3 14:56:21 2012  Tadayoshi Funaba  <tadf@dotrb.org>
7238
7239	* ext/date/date_parse.c (parse_eu): should capture apostrophe too.
7240
7241Sat Nov  3 14:46:15 2012  Tadayoshi Funaba  <tadf@dotrb.org>
7242
7243	* ext/date/date_parse.c (date__parse): revised the tight parser.
7244
7245Sat Nov  3 14:43:42 2012  Kouhei Sutou  <kou@cozmixng.org>
7246
7247	* lib/rexml/xmldecl.rb (REXML::XMLDecl#content): Add missing \A
7248	  and \z.
7249
7250Sat Nov  3 14:42:55 2012  Kouhei Sutou  <kou@cozmixng.org>
7251
7252	* lib/rexml/output.rb (REXML::Output#initialize): Use normalized
7253	  encoding name.
7254
7255Sat Nov  3 14:41:17 2012  Kouhei Sutou  <kou@cozmixng.org>
7256
7257	* lib/rexml/output.rb (REXML::Output): Don't output BOM in middle
7258	  of the output string.
7259	* test/rexml/test_document.rb: Add a test for the above change.
7260
7261Sat Nov  3 14:09:55 2012  Kouhei Sutou  <kou@cozmixng.org>
7262
7263	* NEWS: Add an item about REXML::Document#write.
7264
7265Sat Nov  3 13:46:49 2012  Kouhei Sutou  <kou@cozmixng.org>
7266
7267	* test/rexml/test_document.rb: Fix tests that expect encoding name
7268	  isn't normalized.
7269
7270Sat Nov  3 13:26:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7271
7272	* dir.c (Dir#glob):
7273	  Documentation for pattern section, backslash subsection
7274	  Patch by Eric Bouchut
7275	  [ruby-core:48528] [Bug #7230]
7276
7277Sat Nov  3 13:26:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7278
7279	* io.c (IO#new):
7280	  Documentation for IO#open modes and formatting
7281	  [ruby-core:48052] [Bug #7179]
7282
7283Sat Nov  3 13:01:02 2012  Kouhei Sutou  <kou@cozmixng.org>
7284
7285	* test/rexml/test_encoding.rb (EncodingTester#test_in_different_out):
7286	  Fix a test that expects encoding in XML declaration is changed by
7287	  Output's encoding. It is dropped feature.
7288
7289Sat Nov  3 12:49:45 2012  Kouhei Sutou  <kou@cozmixng.org>
7290
7291	* lib/rexml/document.rb (REXML::Document#write): Document encoding
7292	  option. Now different encoding between XML file's encoding and
7293	  XML declaration's encoding is support.
7294	  [Feature #4872] (work in progress)
7295	* lib/rexml/xmldecl.rb (REXML::XMLDecl#write): Always use XMLDecl's
7296	  encoding.
7297	* test/rexml/test_document.rb: Update tests for the above change.
7298
7299Sat Nov  3 12:18:35 2012  Masaki Matsushita  <glass.saga@gmail.com>
7300
7301	* array.c (recursive_equal): fix not to make invalid pointers when
7302	  self and other are resized to same size in #== of their elements.
7303	  [ruby-dev:46373] [Feature #6177]
7304
7305Sat Nov  3 12:06:15 2012  Kouhei Sutou  <kou@cozmixng.org>
7306
7307	* test/rexml/test_xml_declaration.rb (TestXmlDeclaration#test_*):
7308	  Remove needless prefix from test names.
7309
7310Sat Nov  3 12:04:52 2012  Kouhei Sutou  <kou@cozmixng.org>
7311
7312	* test/rexml/test_xml_declaration_parent_child.rb: Rename to ...
7313	* test/rexml/test_xml_declaration.rb: ... this.
7314
7315Sat Nov  3 11:43:00 2012  Zachary Scott  <zachary@zacharyscott.net>
7316
7317	* hash.c (rb_hash_delete): Correct grammar
7318	  Patch by Glenn Oppegard
7319	  [Fixes #208 Github]
7320
7321Sat Nov  3 11:28:28 2012  Narihiro Nakamura  <authornari@gmail.com>
7322
7323	* NEWS: add a news about GC::Profiler.raw_data.
7324
7325Sat Nov  3 11:01:32 2012  Narihiro Nakamura  <authornari@gmail.com>
7326
7327	* NEWS: add a news about rb_newobj_of() and NEWOBJ_OF().
7328
7329Sat Nov  3 10:17:41 2012  Narihiro Nakamura  <authornari@gmail.com>
7330
7331	* eval.c (f_current_dirname): add the new method for Kernel.
7332	  This method almost same as File.dirname(__FILE__). One
7333	  different behavior is it returns nil when __FILE__ returns nil.
7334	  [Feature #3346]
7335
7336	* NEWS:  ditto
7337
7338	* test/ruby/test_method.rb: related test.
7339
7340Sat Nov  3 09:03:34 2012  Shugo Maeda  <shugo@ruby-lang.org>
7341
7342	* test/ruby/test_refinement.rb (test_new_method_by_send,
7343	  test_new_method_by_method_object): add tests for Kernel#send and
7344	  Kernel#method with refinements.
7345
7346	* test/ruby/test_refinement.rb (test_symbol_to_proc): add a test
7347	  calling a proc created by Symbol#to_proc outside the scope where
7348	  a refinement is closed over.
7349
7350Sat Nov  3 04:14:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7351
7352	* vm.c (rb_vm_rewrite_ep_in_errinfo): rewrite all catch points in
7353	  errinfo, not only the topmost frame.  based on the patch by
7354	  ktsj (Kazuki Tsujimoto) in [ruby-dev:45656]. [Bug #6460]
7355
7356Fri Nov  2 20:11:17 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7357
7358	* lib/mkmf.rb (MakeMakefile#timestamp_file): remove @ which looks like
7359	  configure variables.
7360
7361	* lib/mkmf.rb (MakeMakefile#timestamp_file): use .-. instead of !, a
7362	  special character of NMAKE and BSD make.  [Bug #7265]
7363
7364Fri Nov  2 17:55:39 2012  Shota Fukumori  <sorah@tubusu.net>
7365
7366	* lib/test/unit.rb (_run_parallel): Delete status line before showing
7367	  results. Patch by Hiroshi Shirosaki. [Bug #6897] [ruby-core:47250]
7368
7369	* lib/test/unit.rb (_run_parallel): Fix strange result when disabled retrying.
7370	  Patch by Hiroshi Shirosaki. [Bug #6897] [ruby-core:47250]
7371
7372Fri Nov  2 17:52:12 2012  Shugo Maeda  <shugo@ruby-lang.org>
7373
7374	* object.c (rb_mod_to_s): Module#{to_s,inspect}, when invoked on
7375	  a refinement, returns a string in the format #<refinement:C@M>,
7376	  where C is a refined class and M is a module at which the refinement
7377	  is defined.
7378
7379	* eval.c (rb_mod_refine): store information on a refinement for the
7380	  above change.
7381
7382	* test/ruby/test_refinement.rb: related test.
7383
7384Fri Nov  2 16:57:52 2012  Shota Fukumori  <sorah@tubusu.net>
7385
7386	* vm_dump.c (rb_vm_bugreport): Because of many log directories,
7387	  making directory lists readable.
7388
7389Fri Nov  2 16:44:00 2012  Kenta Murata  <mrkn@mrkn.jp>
7390
7391	* vm_dump.c (rb_vm_bugreport): add ~/Library/Logs/DiagnosticReports
7392	  in the locations list of crash reports.
7393
7394Fri Nov  2 14:52:52 2012  Masaki Matsushita  <glass.saga@gmail.com>
7395
7396	* array.c (recursive_equal): performance improvement by avoiding
7397	  overhead to call rb_ary_elt().
7398	  [ruby-dev:45412] [Feature #6177]
7399
7400Fri Nov  2 14:47:53 2012  Shugo Maeda  <shugo@ruby-lang.org>
7401
7402	* string.c (sym_to_proc, sym_call): A Proc created by Symbol#to_proc
7403	  should close over the current refinements.
7404	  [ruby-dev:46345] [Bug #7261]
7405
7406	* vm_eval.c (rb_call0, rb_search_method_entry,
7407	  rb_funcall_passing_block_with_refinements): add a new argument
7408	  `refinements' for the above changes.
7409
7410	* test/ruby/test_refinement.rb: related test.
7411
7412Fri Nov  2 08:24:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7413
7414	* proc.c (top_define_method): new method, main.define_method.
7415	  [ruby-core:45715] [Feature #6609]
7416
7417	* eval.c (top_include): fix a warning message, main is not a class or
7418	  module.
7419
7420Fri Nov  2 04:41:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7421
7422	* lib/mkmf.rb (MakeMakefile#timestamp_file): use ! instead of %, a GNU
7423	  make special character.
7424
7425Fri Nov  2 04:40:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7426
7427	* test/ruby/test_process.rb (test_execopts_preserve_env_on_exec_failure):
7428	  use never existing file in the current temporary directory.
7429
7430Fri Nov  2 04:23:20 2012  NARUSE, Yui  <naruse@ruby-lang.org>
7431
7432	* tool/merger.rb: add feature to tag preview/rc.
7433
7434Fri Nov  2 03:23:37 2012  NARUSE, Yui  <naruse@ruby-lang.org>
7435
7436	* lib/mkmf.rb: fix for if config["libdir"] is nil.
7437
7438Thu Nov  1 23:06:01 2012  NARUSE, Yui  <naruse@ruby-lang.org>
7439
7440	* tool/make-snapshot: fix wrong regexp for releasing preview.
7441	  patched by mame.
7442
7443Thu Nov  1 22:27:11 2012  Koichi Sasada <ko1@atdot.net>
7444
7445	* NEWS: add a news about objspace,
7446	  ObjectSpace.reachable_objects_from.
7447
7448Thu Nov  1 21:57:00 2012  Kenta Murata  <mrkn@mrkn.jp>
7449
7450	* ext/bigdecimal/bigdecimal.c (BigDecimal_new),
7451	  test/bigdecimal/test_bigdecimal.rb:
7452	  Fix exception message of BigDecimal constructor with a Float.
7453
7454Thu Nov  1 21:52:20 2012  Kenta Murata  <mrkn@mrkn.jp>
7455
7456	* ext/bigdecimal/bigdecimal.c (BigDecimal_add),
7457	  test/bigdecimal/test_bigdecimal.rb:
7458	  need to specify precision for converting Rational and Float.
7459	  [ruby-core:48045] [Bug #7176]
7460
7461Thu Nov  1 21:42:20 2012  Yusuke Endoh  <mame@tsg.ne.jp>
7462
7463	* test/ruby/test_process.rb: Revert r37404.  My ubuntu box has
7464	  actually the directory named "/nonexistent"...  Sorry.
7465
7466Thu Nov  1 21:28:28 2012  Yusuke Endoh  <mame@tsg.ne.jp>
7467
7468	* test/ruby/test_process.rb: Process.exec raised EACCES on Linux
7469	  3.5.0-17-generic.  This is a temporal fix to rescue that exception.
7470	  Needs kosaki's review.
7471
7472Thu Nov  1 21:19:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7473
7474	* iseq.c (set_relation): parent_iseq need to be set regardless iseq
7475	  type.  fix r37397.
7476
7477Thu Nov  1 19:47:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7478
7479	* thread_pthread.c (RUBY_STACK_MIN): may not a compile time constant.
7480	  fix r37079.  [ruby-dev:46322] [Bug #7247]
7481
7482Thu Nov  1 16:44:36 2012  Shugo Maeda  <shugo@ruby-lang.org>
7483
7484	* NEWS: add note for Module#refine, Module#refinements,
7485	  Module#using, and Kernel#using.
7486
7487Thu Nov  1 14:41:47 2012  Shugo Maeda  <shugo@ruby-lang.org>
7488
7489	* eval.c (rb_using_module): using should be used indirectly.
7490	  [ruby-dev:46326] [Feature #7251]
7491
7492Wed Oct 31 18:17:38 2012  Narihiro Nakamura  <authornari@gmail.com>
7493
7494	* gc.c (gc_profile_record): don't define unused variables when
7495	  GC_PROFILE_MORE_DETAIL is 0.
7496
7497Wed Oct 31 18:10:53 2012  Narihiro Nakamura  <authornari@gmail.com>
7498
7499	* gc.c (gc_prof_mark_timer_stop): count is not initialized.
7500
7501Wed Oct 31 09:28:24 2012  Eric Hodel  <drbrain@segment7.net>
7502
7503	* thread.c (rb_thread_call_without_gvl2):  Note that ubf() may or may
7504	  not be called with the GVL.  Hinted that rb_thread_call_with_gvl()
7505	  can be used to access ruby functionality.
7506
7507Wed Oct 31 09:06:54 2012  Eric Hodel  <drbrain@segment7.net>
7508
7509	* thread.c (rb_thread_call_without_gvl2):  Update documentation to
7510	  natural English.
7511	* thread.c (rb_thread_call_with_gvl):  ditto.
7512
7513Wed Oct 31 02:53:07 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7514
7515	* ext/dl/lib/dl/struct.rb: fix strange require order. [ruby-dev:45702]
7516
7517	* ext/dl/lib/dl/value.rb: ditto
7518
7519	* test/dl/test_c_struct_entry.rb: remove strange require order from
7520	  tests.
7521
7522	* test/dl/test_c_union_entity.rb: ditto
7523
7524Tue Oct 30 23:59:32 2012  Shugo Maeda  <shugo@ruby-lang.org>
7525
7526	* eval.c (rb_mod_refine): fix the error message when no block is
7527	  given.  [ruby-dev:46319] [Bug #7244]
7528
7529	* test/ruby/test_refinement.rb: related test.
7530
7531Tue Oct 30 19:27:48 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
7532
7533	* process.c (redirect_dup2): set standard handles when new fd is stdio,
7534	  because if there is no allocated console at the moment Windows does
7535	  not automatically associate it for child process's standard handle.
7536	  this is adhoc workaround.
7537	  reported by Martin Thiede at [ruby-core:48542] [Bug #7239].
7538
7539	* io.c (rb_cloexec_dup2): ditto.
7540
7541Tue Oct 30 03:08:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7542
7543	* lib/rbconfig/obsolete.rb (Config): re-introduce warnings for a
7544	  lame-duck.  [ruby-core:46836] [Bug #6809]
7545
7546Tue Oct 30 02:20:10 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7547
7548	* thread.c: added Thread#thread_variable_(get|set),
7549	  Thread#thread_variable?, and Thread#thread_variables for operating
7550	  on variables that are local to threads. [ruby-core:47790]
7551
7552	* vm.c: ditto
7553
7554	* test/ruby/test_thread.rb: tests for thread variables.
7555
7556Mon Oct 29 18:22:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7557
7558	* ext/stringio/stringio.c (strio_close): close separately per each
7559	  instances, as well as IO.
7560
7561Mon Oct 29 10:22:00 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7562
7563	* ext/psych/lib/psych/handlers/recorder.rb: added a class for
7564	  recording YAML parse and emit events.
7565
7566	* ext/psych/lib/psych/handler.rb: adding a list of events so that
7567	  handler classes can more easily be meta-programmed.
7568
7569	* test/psych/handlers/test_recorder.rb: tests for the change.
7570
7571Mon Oct 29 05:48:52 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
7572
7573	* lib/ostruct.rb: Add [] and []=, base on a patch by Thomas Sawyer.
7574	  Also accept {Open}Struct as argument to new.
7575	  Add #eql?, #hash & #each_pair
7576	  Protect new_ostruct_member
7577
7578Mon Oct 29 03:20:58 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
7579
7580	* lib/matrix.rb: Fix determinant_e [ruby-dev:46305] [Bug #7228]
7581
7582Sun Oct 28 23:52:25 2012  Kouhei Sutou  <kou@cozmixng.org>
7583
7584	* test/rexml/test_document.rb: Add tests for parsing XML encoded
7585	  by UTF-8 with BOM.
7586
7587Sun Oct 28 23:47:09 2012  Kouhei Sutou  <kou@cozmixng.org>
7588
7589	* lib/rexml/source.rb: Move encoding detection code to base class.
7590	* lib/rexml/encoding.rb: Remove needless encoding detection code.
7591
7592Sun Oct 28 21:40:13 2012  Kouhei Sutou  <kou@cozmixng.org>
7593
7594	* lib/rexml/parsers/baseparser.rb: Fix a bug that UTF-8 is used
7595	  for UTF-16XX encoded XML that doesn't have encoding="UTF-16" in
7596	  XML declaration.
7597	* test/rexml/test_document.rb: Add tests for the above change.
7598
7599Sun Oct 28 21:37:34 2012  Kouhei Sutou  <kou@cozmixng.org>
7600
7601	* test/rexml/test_document.rb: Group tests that they parse
7602	  UTF-16XX encoded XML that has encoding="UTF-16" in XML declaration.
7603
7604Sun Oct 28 21:25:11 2012  Kouhei Sutou  <kou@cozmixng.org>
7605
7606	* lib/rexml/source.rb (REXML::IOSource#initialize): Reduce
7607	  @line_break initialize code. It should be done only in #encoding=.
7608	* lib/rexml/parsers/baseparser.rb: Don't set UTF-16 encoding to
7609	  source by encoding="UTF-16" in XML declaration because UTF-16XX
7610	  source encoding should be set in Source#initialize or
7611	  IOSource#initialize. They should handle BOM. Parser should not
7612	  consider about it.
7613
7614Sun Oct 28 21:18:37 2012  Kouhei Sutou  <kou@cozmixng.org>
7615
7616	* test/rexml/test_document.rb: Add tests for parsing XML encoded
7617	  by UTF-16 with BOM.
7618
7619Sun Oct 28 19:12:11 2012  Tadayoshi Funaba  <tadf@dotrb.org>
7620
7621	* ext/date/date_parse.c (iso8601_{ext,bas}_time): should not match
7622	  empty string.
7623
7624Sun Oct 28 18:51:33 2012  Tadayoshi Funaba  <tadf@dotrb.org>
7625
7626	* ext/date/date_parse.c (date__parse): revised the tight parser.
7627
7628Sun Oct 28 15:41:50 2012  Kouhei Sutou  <kou@cozmixng.org>
7629
7630	* lib/rexml/document.rb (REXML::Document#write): Add :encoding option
7631	  to support custom XML encoding.
7632	  [Feature #4872] (work in progress)
7633	* test/rexml/test_document.rb: Add tests for the above change.
7634
7635Sun Oct 28 15:00:19 2012  Kouhei Sutou  <kou@cozmixng.org>
7636
7637	* lib/rexml/document.rb (REXML::Document#write): Remove needless
7638	  indent in document.
7639
7640Sun Oct 28 14:59:14 2012  Kouhei Sutou  <kou@cozmixng.org>
7641
7642	* lib/rexml/document.rb (REXML::Document#write): Accept options
7643	  Hash as argument.
7644	* test/rexml/test_document.rb: Add tests for the above change.
7645
7646Sun Oct 28 14:09:44 2012  Kouhei Sutou  <kou@cozmixng.org>
7647
7648	* lib/rexml/document.rb (REXML::Document#write): Fix wrong usage
7649	  in document.
7650
7651Sun Oct 28 14:03:48 2012  Kouhei Sutou  <kou@cozmixng.org>
7652
7653	* lib/rexml/document.rb (REXML::Document#write): Fix wrong method
7654	  names in document.
7655
7656Sun Oct 28 10:12:15 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7657
7658	* ext/psych/lib/psych/visitors/yaml_tree.rb: `tree` should return the
7659	  same thing on every call.
7660
7661	* test/psych/visitors/test_yaml_tree.rb: related test.
7662
7663Sun Oct 28 10:05:03 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7664
7665	* ext/psych/lib/psych/visitors/yaml_tree.rb: YAML Tree object should
7666	  be able to take an emitter object as it's output.
7667
7668	* test/psych/visitors/test_yaml_tree.rb: related test.
7669
7670Sun Oct 28 08:23:16 2012  Koichi Sasada  <ko1@atdot.net>
7671
7672	* bignum.c (bignew_1): Bignum instances are frozen.
7673	  Feature #3222
7674
7675	* include/ruby/ruby.h: Fixnum instances are also frozen.
7676
7677	* class.c (singleton_class_of): check Bignum before
7678	  singleton checking.
7679
7680	* test/ruby/test_bignum.rb: add a test.
7681
7682	* test/ruby/test_fixnum.rb: ditto.
7683
7684	* test/ruby/marshaltestlib.rb, test/ruby/test_eval.rb,
7685	  test/ruby/test_object.rb: catch up above changes.
7686
7687Sun Oct 28 04:38:06 2012  Koichi Sasada  <ko1@atdot.net>
7688
7689	* vm.c (vm_define_method): remove type and frozen checking.
7690	  Checking is done in `rb_singleton_class()'.
7691
7692Sun Oct 28 00:49:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7693
7694	* parse.y (assign_in_cond): warn for static content object assignments
7695	  in conditional statements.  [ruby-dev:43083] [Feature #4299]
7696
7697Sat Oct 27 23:33:41 2012  Benoit Daloze  <eregontp@gmail.com>
7698
7699	* gc.c (gc_profile_result, gc_profile_report): use internal structures
7700	  to avoid allocations and progressively print the output for #report.
7701	  [ruby-core:47163] [Bug #6865]
7702
7703Sat Oct 27 11:01:10 2012  Koichi Sasada  <ko1@atdot.net>
7704
7705	* numeric.c (rb_float_new_in_heap), include/ruby/ruby.h:
7706	  make all Float objects frozen.
7707	  [ruby-dev:46081] [ruby-trunk - Feature #6936]
7708	  Most part of patch by NARUSE, Yui  <naruse@ruby-lang.org>.
7709
7710	* class.c (singleton_class_of): raise TypeError when
7711	  trying to define a singleton method on Float objects.
7712
7713	* vm.c (vm_define_method): ditto.
7714
7715	* test/ruby/marshaltestlib.rb: catch up above changes.
7716
7717	* test/ruby/test_class.rb: ditto.
7718
7719	* test/test_pp.rb: ditto.
7720
7721Sat Oct 27 10:50:53 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7722
7723	* object.c (rb_mod_const_get): make sure the constant name is
7724	  converted to a string before searching. [ruby-core:48405]
7725
7726Sat Oct 27 10:12:13 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
7727
7728	* iseq.c (rb_iseq_compile_with_option): Instead of testing
7729	  respond_to, just check if the argument is actually a file,
7730	  because by calling user-defined gets something weired can
7731	  happen.  Patch by Glass_saga. [ruby-dev:40202] [Bug #2861]
7732
7733	* parse.y (ripper_initialize): ditto.
7734
7735Sat Oct 27 10:07:57 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7736
7737	* parse.y (enum lex_state_e): [EXPERIMENTAL] lex_state as bit field /
7738	  IS_lex_state() macro.  based on the patch by Dave B in
7739	  [ruby-core:23503].  [Feature #1493]
7740
7741Sat Oct 27 10:05:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7742
7743	* include/ruby/win32.h (fstat): use _fstati64() instead of fstati64()
7744	  on mingw32.
7745
7746Sat Oct 27 06:28:33 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7747
7748	* object.c (rb_mod_const_get): const_get accepts qualified constant
7749	  strings.  e.g. Object.const_get("Foo::Bar::Baz") [ruby-core:41404]
7750
7751	* test/ruby/test_module.rb: tests for new behavior
7752
7753Fri Oct 26 13:24:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7754
7755	* parse.y (literal_concat_gen): merge fixed strings across
7756	  concatenated literals, after an interpolation.
7757
7758Thu Oct 25 17:48:54 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
7759
7760	* win32/win32.c (has_redirection): should use shell (cmd.exe) when
7761	  the commandline contains '&'.
7762	  reported by Roger Pack at [ruby-core:47912] [Bug #7143], and
7763	  patched by Heesob Park at [ruby-core:47931].
7764
7765Thu Oct 25 15:00:08 2012  Koichi Sasada  <ko1@atdot.net>
7766
7767	* include/ruby/ruby.h, class.c: remove (revert)
7768	  `rb_add_method_cfunc_frameless()' API.
7769	  This API is not mature to become an official API.
7770	  For example, we can not use this API with
7771	  `rb_define_private_method()'.
7772
7773	* method.h, vm_method.c (rb_add_method_cfunc_frameless): removed.
7774
7775Thu Oct 25 13:35:07 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
7776
7777	* tool/mkconfig.rb: remove string literal concatenation.
7778
7779Wed Oct 24 18:49:16 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7780
7781	* ext/objspace/objspace.c (type2sym, count_objects_size): use enum
7782	  instead of size_t which may be larger than actual values.
7783
7784Wed Oct 24 17:41:24 2012  Koichi Sasada  <ko1@atdot.net>
7785
7786	* benchmark/driver.rb: add `-x' or `--exclude' option
7787	  to specify exclude benchmark name pattern.
7788	  You can specify "-x foo" if you want to exclude the benchmarks
7789	  if the name of benchmark contains `foo'.
7790
7791Wed Oct 24 11:57:24 2012  Narihiro Nakamura  <authornari@gmail.com>
7792
7793	* gc.c (gc_prepare_free_objects): rename to match the behavior of
7794	  this function.
7795
7796Wed Oct 24 11:55:19 2012  Koichi Sasada  <ko1@atdot.net>
7797
7798	* ext/objspace/objspace.c (reachable_object_from_i): change data
7799	  structure of the result of reachable objects. Keys of table
7800	  contains object_id of each reachable objects. Value of table
7801	  is an object itself or an instance of InternalObjectWrapper.
7802	  To avoid duplication, we use st_table and object_id keys.
7803
7804	* ext/objspace/objspace.c (type2sym): bug fix.
7805	  Should use `i' instead of `type'.
7806
7807Wed Oct 24 10:33:09 2012  Koichi Sasada  <ko1@atdot.net>
7808
7809	* gc.c (garbage_collect, gc_marks): move the location of
7810	  clear and restore rb_objspace_t::mark_func_data
7811	  from garbage_collect() to gc_marks().
7812
7813Wed Oct 24 10:17:45 2012  Koichi Sasada  <ko1@atdot.net>
7814
7815	* ext/objspace/objspace.c (Init_objspace): add a new method
7816	  `ObjectSpace::InternalObjectWrapper#internal_object_id' which returns
7817	  an object id of a wrapped internal object.
7818
7819Wed Oct 24 08:55:04 2012  Koichi Sasada  <ko1@atdot.net>
7820
7821	* ext/objspace/objspace.c (ObjectSpace.reachable_objects_from):
7822	  internal object support.
7823	  If given object `obj' has references to internal objects
7824	  (such as T_NODE objects), then this method returns instances of
7825	  `ObjectSpace::InternalObjectWrapper' instead of that internal objects.
7826	  This instance contains a reference to an internal object and you can
7827	  check the type of internal object using
7828	  `ObjectSpace::InternalObjectWrapper#type' method.
7829	  Rdoc of `InternalObjectWrapper' is not prepared yet.
7830
7831	* gc.c (rb_objspace_reachable_objects_from), gc.h: change
7832	  an interface of 'rb_objspace_reachable_objects_from()'
7833
7834	* gc.c, gc.h: add two APIs
7835	  - rb_objspace_markable_object_p(obj): check markable or not.
7836	  - rb_objspace_internal_object_p(obj): check internal or not.
7837
7838Wed Oct 24 05:52:36 2012  Koichi Sasada  <ko1@atdot.net>
7839
7840	* vm_insnhelper.c (vm_call_method): remove `default' and
7841	  add a case for `VM_METHOD_TYPE_UNDEF'.
7842
7843Wed Oct 24 05:41:18 2012  Koichi Sasada  <ko1@atdot.net>
7844
7845	* eval_error.c (error_print), vm_eval.c (eval_string_with_cref),
7846	  vm_trace.c (rb_suppress_tracing): use TH_PUSH_TAG() instead of
7847	  PUSH_TAG().
7848
7849Wed Oct 24 05:17:52 2012  Koichi Sasada  <ko1@atdot.net>
7850
7851	* vm_eval.c (vm_call0_body): remove RUBY_VM_CHECK_INTS()
7852	  after method invocation using rb_call0().
7853
7854	* vm_eval.c (vm_call0_body): remove default section on top of
7855	  switch statement and add cases for `VM_METHOD_TYPE_CFUNC_FRAMELESS'
7856	  and `VM_METHOD_TYPE_UNDEF'.
7857
7858	* vm_eval.c (vm_call0_body): remove useless brackets.
7859
7860Tue Oct 23 22:34:49 2012  Koichi Sasada  <ko1@atdot.net>
7861
7862	* thread.c (thread_raise_m):  check interrupts after Thread#raise
7863	  if a target thread is the current thread because the behavior
7864	  of Thread.current.raise is expected to perform same as
7865	  Kernel.raise (by rubyspec).
7866
7867Tue Oct 23 17:08:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7868
7869	* ruby.c (usage, process_options): show more info in --help.
7870	  [EXPERIMENTAL] [ruby-core:48072] [Bug #7184]
7871
7872Tue Oct 23 14:20:43 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7873
7874	* misc/ruby-electric.el using variable `last-command-event' instead of
7875	  obsolete `last-command-char', so that work with Emacs trunk.
7876	  a patch by Victor Deryagin <vderyagin AT gmail.com>.
7877
7878Tue Oct 23 14:06:47 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7879
7880	* configure.in (visibility_option): visibility attribute is not
7881	  available before GCC 4, so do not use -fvisibility option in that
7882	  case.  [ruby-core:48147] [Bug #7205]
7883
7884Tue Oct 23 12:57:29 2012  Koichi Sasada  <ko1@atdot.net>
7885
7886	* vm_core.h, vm_insnhelper.c, vm_eval.c (OPT_CALL_CFUNC_WITHOUT_FRAME):
7887	  add a new optimization and its macro `OPT_CALL_CFUNC_WITHOUT_FRAME'.
7888	  This optimization makes all cfunc method calls `frameless', which
7889	  is faster than ordinal cfunc method call.
7890	  If `frame' is needed (for example, it calls another method with
7891	  `rb_funcall()'), then build a frame. In other words, this
7892	  optimization delays frame building.
7893	  However, to delay the frame building, we need additional overheads:
7894	    (1) Store the last call information.
7895	    (2) Check the delayed frame building before the frame is needed.
7896	    (3) Overhead to build a delayed frame.
7897	  rb_thread_t::passed_ci is storage of delayed cfunc call information.
7898	  (1) is lightweight because it is only 1 assignment to `passed_ci'.
7899	  To achieve (2), we modify GET_THREAD() to check `passed_ci' every
7900	  time. It causes 10% overhead on my environment.
7901	  This optimization only works for cfunc methods which do not need
7902	  their `frame'.
7903	  After evaluation on my environment, this optimization does not
7904	  effective every time. Because of this evaluation results, this
7905	  optimization is disabled at default.
7906
7907	* vm_insnhelper.c, vm.c: add VM_PROFILE* macros to measure behaviour
7908	  of VM internals. I will extend this feature.
7909
7910	* vm_method.c, method.h: change parameters of the `invoker' function.
7911	  Receive `func' pointer as the first parameter.
7912
7913Tue Oct 23 06:21:05 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7914
7915	* ext/psych/parser.c: just get the constant defined in Ruby.
7916
7917	* ext/psych/lib/psych/syntax_error.rb: Psych::SyntaxError now inherits
7918	  from StandardError rather than SyntaxError.  Thanks Eric Hodel!
7919
7920	* test/psych/test_exception.rb: tests for change.
7921
7922Tue Oct 23 06:17:36 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7923
7924	* ext/psych/lib/psych/scalar_scanner.rb: Cache symbols while
7925	  tokenizing.  Thanks Kevin Menard!
7926
7927Tue Oct 23 06:15:40 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7928
7929	* ext/psych/lib/psych/scalar_scanner.rb: Updated the RegExp to catch
7930	  Strings earlier in the tokenization process.  Thanks Kevin Menard!
7931
7932Tue Oct 23 06:12:39 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7933
7934	* ext/psych/lib/psych/visitors/to_ruby.rb: Handle nil tags specially
7935	  to avoid slow method_missing calls.  Thanks Kevin Menard!
7936
7937Tue Oct 23 06:07:57 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7938
7939	* ext/psych/lib/psych/scalar_scanner.rb: Ignore bad timestamps.  If
7940	  something looks like a timestamp but has an invalid component, treat
7941	  it as a string instead of throwing an ArgumentError.
7942	  Thanks Rhett Sutphin!
7943
7944	* test/psych/test_scalar_scanner.rb: appropriate tests.
7945
7946Tue Oct 23 06:04:07 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7947
7948	* ext/psych/lib/psych/scalar_scanner.rb: Fix scalar_scanner to
7949	  understand strings starting with an underscore and containing only
7950	  digits.  Thanks Kelley Reynolds.
7951
7952	* test/psych/test_scalar_scanner.rb: test for fix
7953
7954Tue Oct 23 06:00:41 2012  Aaron Patterson <aaron@tenderlovemaking.com>
7955
7956	* ext/psych/lib/psych.rb: Changed comment in psych.rb to update new
7957	  home page for libyaml.  Thanks to Carolyn Ann.
7958
7959Sun Oct 21 19:12:59 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
7960
7961	* vm_core.h (rb_vm_t::trace_running): add a new field
7962	  `trace_running' to store vm global tracing status.
7963
7964	* vm_trace.c: fix SEGV bug. event_hook was free'd
7965	  even when the hook is still used in another thread.
7966	  [ruby-dev:46141] [Bug #7032]
7967
7968Sun Oct 21 19:12:42 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
7969
7970	* vm_core.h (rb_vm_t::trace_flag): remove `trace_flag'
7971	  which is no longer used.
7972
7973Sun Oct 21 18:34:27 2012  Tadayoshi Funaba  <tadf@dotrb.org>
7974
7975	* ext/date/date_parse.c (date__parse): uses more tight parser if
7976	  defined TIGHT_PARSER.  now inactivated; because it introduces
7977	  incompatibilities and it is a bit slow.
7978
7979Sat Oct 20 15:35:06 2012  Narihiro Nakamura  <authornari@gmail.com>
7980
7981	* include/ruby/ruby.h: add C APIs.
7982	  VALUE rb_newobj_of(VALUE klass, VALUE flags)
7983	  #define NEWOBJ_OF(obj,type,klass,flags)
7984	  These allow to change a allocation strategy depending on klass
7985	  or flags.
7986
7987	* gc.c: ditto
7988
7989	* array.c: use new C API.
7990	* bignum.c: ditto
7991	* class.c: ditto
7992	* complex.c: ditto
7993	* ext/socket/ancdata.c: ditto
7994	* ext/socket/option.c: ditto
7995	* hash.c: ditto
7996	* io.c: ditto
7997	* marshal.c: ditto
7998	* numeric.c: ditto
7999	* object.c: ditto
8000	* random.c: ditto
8001	* range.c: ditto
8002	* rational.c: ditto
8003	* re.c: ditto
8004	* string.c: ditto
8005	* struct.c: ditto
8006	  [Feature #7177][Feature #7047]
8007
8008Sat Oct 20 12:50:00 2012  Zachary Scott	<zachary@zacharyscott.net>
8009
8010	* ext/socket/socket.c: Documentation for Socket
8011	  Based on a patch by David Albert
8012	  [Bug #7105] [ruby-core:47828]
8013
8014Sat Oct 20 11:00:00 2012  Zachary Scott	<zachary@zacharyscott.net>
8015
8016	* lib/open-uri.rb: Documentation for OpenURI
8017
8018Sat Oct 20 06:18:34 2012  Aaron Patterson <aaron@tenderlovemaking.com>
8019
8020	* hash.c (initialize_copy): unset the default proc if there isn't one
8021	  for the target hash, call to_hash, check frozen status.
8022
8023Fri Oct 19 22:22:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8024
8025	* vm.c (rb_vm_jump_tag_but_local_jump): pass through thrown objects.
8026	  [ruby-dev:46234] [Bug #7185]
8027
8028	* vm_eval.c (rb_eval_cmd): if state is non-zero, val should be nil and
8029	  rb_vm_jump_tag_but_local_jump() just jump tag.
8030
8031Fri Oct 19 22:11:55 2012  Benoit Daloze  <eregontp@gmail.com>
8032
8033	* pack.c (pack_unpack): set encoding of the
8034	  'H','h','B' and 'B' modifiers to US-ASCII.
8035
8036	* test/ruby/test_pack.rb: tests for the above.
8037	  [ruby-core:47653][Bug #7050]
8038
8039	* test/test_securerandom.rb: tests for SecureRandom.hex
8040	  from tenderlove. [ruby-core:46792][Bug #6799]
8041
8042Fri Oct 19 19:29:11 2012  Koichi Sasada  <ko1@atdot.net>
8043
8044	* method.h (rb_method_cfunc_t::invoker): add new field (func ptr)
8045	  `invoker'. `invoker' function invoke cfunc body
8046	  (rb_method_cfunc_t::func).
8047	  `invoker' is set at method definition timing.
8048	  With this change, the big `switch' (branch) in `call_cfunc()'
8049	  is no longer needed.
8050	  However, the performance benefit is only a bit.
8051
8052	* vm_core.h (rb_call_info_t::aux::func): add a new field to store
8053	  cfunc body function pointer.
8054
8055	* vm_method.c (call_cfunc_invoker_func): add a new function which
8056	  returns a suitable invoke function.
8057
8058	* vm_method.c (setup_method_cfunc_struct): added.
8059
8060	* vm_method.c (rb_add_method): fix to set `invoker'.
8061
8062	* vm_eval.c (vm_call0_body): catch up above changes.
8063
8064	* vm_insnhelper.c (call_cfunc): removed.
8065
8066	* vm_insnhelper.c (vm_call_cfunc): fix to call cfunc body
8067	  with `invoker' function.
8068
8069Fri Oct 19 16:55:58 2012  Koichi Sasada  <ko1@atdot.net>
8070
8071	* eval.c, vm_eval.c: use TH_PUSH_TAG() instead of PUSH_TAG().
8072
8073Fri Oct 19 11:13:55 2012  Koichi Sasada  <ko1@atdot.net>
8074
8075	* benchmark/driver.rb: remove unexpected `output'.
8076	  (commit miss)
8077
8078Fri Oct 19 10:24:03 2012  Koichi Sasada  <ko1@atdot.net>
8079
8080	* vm_insnhelper.c (vm_search_method): remove needless local variable.
8081
8082Fri Oct 19 10:22:26 2012  Koichi Sasada  <ko1@atdot.net>
8083
8084	* benchmark/bmx_temp.rb: removed.
8085	  This file should not be in repository.
8086
8087Fri Oct 19 10:20:10 2012  Koichi Sasada  <ko1@atdot.net>
8088
8089	* benchmark/driver.rb: add new option `--ruby-arg [ARG]'
8090	  which is passed as a launch parameter for each ruby's execution.
8091	  ($ ruby [ARG] [File])
8092
8093Thu Oct 18 18:42:35 2012  Koichi Sasada  <ko1@atdot.net>
8094
8095	* insns.def (opt_send_simple): move the location of
8096	  `opt_send_simple' to the place near `send' definition.
8097	  (to take care about icache locality).
8098
8099Thu Oct 18 18:29:25 2012  Koichi Sasada  <ko1@atdot.net>
8100
8101	* insns.def (send): remove unused condition.
8102	  This condition will be true after r37258.
8103
8104	* vm_insnhelper.c (vm_caller_setup_args): remove `UNLIKELY' on
8105	  checking blockiseq (it seems `LIKELY').
8106
8107Thu Oct 18 17:31:58 2012  Koichi Sasada  <ko1@atdot.net>
8108
8109	* insns.def (opt_send_simple): introduce new instruction used
8110	  when no need to care about block and splat.
8111
8112	* compile.c: use the `opt_send_simple' instruction.
8113
8114Thu Oct 18 16:44:07 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8115
8116	* vm_method.c (rb_add_method_cfunc, rb_add_method_cfunc_frameless):
8117	  check arity earlier at definition time.
8118
8119Thu Oct 18 15:11:31 2012  Koichi Sasada  <ko1@atdot.net>
8120
8121	* vm_insnhelper.c: add `inline' keyword to several functions.
8122	  Compilers (gcc) are conservative than I expected.
8123
8124Thu Oct 18 15:01:15 2012  Koichi Sasada  <ko1@atdot.net>
8125
8126	* include/ruby/ruby.h: add a decl. of
8127	  `rb_define_frameless_method()'.
8128
8129Thu Oct 18 14:31:17 2012  Koichi Sasada  <ko1@atdot.net>
8130
8131	* compile.c (new_callinfo): set a temporary index of callinfo
8132	  (used in `iseq_set_sequence()') to rb_call_info_t::aux::index.
8133	  rb_call_info_t::argc is initialized by same value of
8134	  rb_call_info_t::orig_argc.
8135
8136Thu Oct 18 14:11:08 2012  Koichi Sasada  <ko1@atdot.net>
8137
8138	* class.c (rb_define_frameless_method): rename from
8139	  rb_define_method_fast(). Defined method with this C API
8140	  does not make a method frame. It is bit lightweight than
8141	  ordinal C functions. Now only 0 or 1 argc are permitted.
8142
8143	* method.h (VM_METHOD_TYPE_CFUNC_FRAMELESS): rename macro name
8144	  from VM_METHOD_TYPE_CFUNC_FAST.
8145
8146	* vm_insnhelper.c, vm_method.c: rename related functions.
8147
8148	* proc.c (rb_method_entry_arity): catch up above changes.
8149
8150Thu Oct 18 10:30:34 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8151
8152	* parse.y (assignable_gen): fail if yyerror occurred.  fix a bug in
8153	  r36973.
8154
8155Thu Oct 18 09:23:03 2012  Aaron Patterson <aaron@tenderlovemaking.com>
8156
8157	* hash.c (initialize_copy): duping should rehash the hash.
8158
8159	* test/ruby/test_hash.rb: added a test to ensure rehash.
8160
8161Wed Oct 17 21:16:47 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
8162
8163	* common.mk (WPROGRAM): need same dependencies as PROGRAM.
8164
8165	* cygwin/GNUmakefile.in (uncommon.mk): move include position
8166	  below WPROGRAM definition to be defined in uncommon.mk.
8167
8168	* ext/extmk.rb (all, static): fix make rubyw.exe failure with make -jN.
8169	  If make of ruby.exe and rubyw.exe run in parallel, link dll and link
8170	  exe run in parallel, which causes link failure on mingw. To fix this,
8171	  we make ruby.exe and rubyw.exe in one make process.
8172	  [ruby-core:48007] [Bug #7165]
8173
8174Wed Oct 17 16:25:34 2012  Koichi Sasada  <ko1@atdot.net>
8175
8176	* benchmark/bm_vm2_method_missing.rb: add a benchmark to measure
8177	  performance of invoking `method_missing'.
8178
8179Wed Oct 17 16:23:17 2012  Koichi Sasada  <ko1@atdot.net>
8180
8181	* vm_insnhelper.c (vm_getivar): fix to use `aux.index' instead of
8182	  `aux.opt_pc'.
8183
8184Wed Oct 17 16:03:54 2012  Koichi Sasada  <ko1@atdot.net>
8185
8186	* vm_insnhelper.c (vm_call_method_missing): make a refactoring
8187	  about method_missing process. Use `vm_call_method()' to invoke
8188	  `method_missing' method instead of `rb_funcall2()'.
8189	  In `vm_call_method()', set fastpath to `vm_call_method_missing()'
8190	  if it can be cached.
8191
8192	* vm_core.h (rb_call_info_t): add new field
8193	  `rb_call_info_t::aux::missing_reason' to pass the reason to
8194	  `vm_call_method_missing()'.
8195
8196Wed Oct 17 15:33:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8197
8198	* configure.in (opt-dir): allow multiple directories separated by
8199	  $PATH_SEPARATOR as well as dir_config in mkmf.rb. [ruby-core:47868]
8200	  [Bug #7120]
8201
8202Wed Oct 17 15:08:13 2012  Shugo Maeda  <shugo@ruby-lang.org>
8203
8204	* lib/net/imap.rb: fix Net::IMAP::ResponseParser to accept
8205	  message/delivery-status ([ruby-core:47920] [Bug #7146]),
8206	  message/rfc822 attachments ([ruby-core:47921] [Bug #7147]), and
8207	  (BODY ("MIXED")) ([ruby-core:47951] [Bug #7153]).
8208	  patched by Tony Arkles.
8209
8210	* test/net/imap/test_imap_response_parser.rb: related test.
8211
8212Wed Oct 17 11:04:48 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
8213
8214	* test/ruby/test_hash.rb (TestHash#test_dup_equality): added a new test
8215	  to show the problem of r37232.
8216
8217Wed Oct 17 10:48:40 2012  Shugo Maeda  <shugo@ruby-lang.org>
8218
8219	* vm_insnhelper.c (vm_search_method): fix a build error that occurs
8220	  when OPT_INLINE_METHOD_CACHE is 0.
8221
8222Wed Oct 17 08:46:47 2012  Koichi Sasada  <ko1@atdot.net>
8223
8224	* benchmark/bm_vm2_dstr.rb: add a benchmark to measure
8225	  performance of dynamic generated string ("foo#{bar}baz").
8226
8227Wed Oct 17 08:32:46 2012  Koichi Sasada  <ko1@atdot.net>
8228
8229	* compile.c (compile_dstr_fragments): use `putobject' instead of
8230	  `putstring' for all of strings used by NODE_DSTR because
8231	  ruby users can not grab this string.
8232	  For example, the string object of "baz" in "foo#{bar}baz"
8233	  is located by `putobject' (users can not touch "baz" object
8234	  directly). This change reduces GC pressure.
8235	  This improvement is suggested by Aaron Patterson.
8236
8237Wed Oct 17 08:02:57 2012  Koichi Sasada  <ko1@atdot.net>
8238
8239	* thread.c (rb_threadptr_interrupt_mask): fix to check interrupt
8240	  after interrupt_mask changed.
8241
8242Wed Oct 17 06:42:47 2012  Koichi Sasada  <ko1@atdot.net>
8243
8244	* vm_insnhelper.c (vm_call_method): fix to return value immediately.
8245	  Remove CHECK_INTS() after that method dispatch.
8246
8247Wed Oct 17 06:25:56 2012  Aaron Patterson <aaron@tenderlovemaking.com>
8248
8249	* hash.c (initialize_copy): copy the underlying st_table on dup,
8250	  rather than copying the hash key by key. [ruby-core:48009]
8251
8252	* test/ruby/test_hash.rb: relevant tests for initialize_copy
8253
8254Wed Oct 17 06:17:44 2012  Koichi Sasada  <ko1@atdot.net>
8255
8256	* vm_insnhelper.c (vm_call_iseq_setup_2): separate tailcall and normal
8257	  method frame setup functions.
8258	  Add checking interrupts at the tailcall setup function.
8259
8260Wed Oct 17 05:35:37 2012  Koichi Sasada  <ko1@atdot.net>
8261
8262	* benchmark/bm_vm1_yield.rb: add a benchmark to measure `yield'
8263	  (invoke empty block) performance.
8264
8265	* benchmark/bm_vm2_method_with_block.rb: add a benchmark to measure
8266	  method invocation with empty block.
8267
8268Wed Oct 17 05:05:07 2012  Koichi Sasada  <ko1@atdot.net>
8269
8270	* vm_insnhelper.c (vm_invoke_block): vm_caller_setup_args() can skip
8271	  when splat flag is not set.
8272
8273Wed Oct 17 01:53:47 2012  Koichi Sasada  <ko1@atdot.net>
8274
8275	* vm_insnhelper.c (vm_getivar, vm_setivar): support index inline cache
8276	  with rb_call_info_t to speedup `attr' getter and setter.
8277	  Cached index is stored in rb_call_info_t::aux::index.
8278	  `index' == 0 means not cached. `index' > 0 means cached and cached
8279	  index is `index - 1'.
8280
8281	* insns.def ((get|set)instancevariable): use new wrapper functions
8282	  vm_(get|set)instancevariable() defined in vm_insnhelper.c.
8283
8284	* vm_core.h (rb_call_info_t::aux): introduce new union data because
8285	  opt_pc can share with index.
8286
8287Tue Oct 16 22:24:44 2012  Koichi Sasada  <ko1@atdot.net>
8288
8289	* benchmark/driver.rb (show_results): Show speedup ratio
8290	  with first executables score at last of results
8291	  if two or more executables are given.
8292
8293Tue Oct 16 21:59:01 2012  Koichi Sasada  <ko1@atdot.net>
8294
8295	* benchmark/driver.rb: some refactoring.
8296	  (1) Remove `average differential'.
8297	      In this benchmark driver, We should not care about `average'.
8298	      We use fastest score because this score should not include
8299	      any disturbances (affections of background process, etc).
8300	      If you care about timing affect, I recommend `median'
8301	      score with more than 5 examinations rather than simple
8302	      `average' score (`average' score was affected by error scores).
8303	  (2) Show log file name.
8304	  (3) Change default directory from './' to driver's directory.
8305
8306Tue Oct 16 14:56:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8307
8308	* file.c (rb_file_join): need to check again after any conversion run.
8309	  [ruby-core:48012] [Bug #7168]
8310
8311Tue Oct 16 12:52:14 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
8312
8313	* test/ruby/envutil.rb (Test::Unit::Assertions#assert_file):
8314	  rename from file_assertion.
8315
8316Tue Oct 16 11:30:18 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8317
8318	* file.c (rb_file_join): hide the result under construction until
8319	  return.
8320
8321	* file.c (rb_file_join): check nul-byte only for strings, since
8322	  FilePathStringValue() does it.  [ruby-core:48012] [Bug #7168]
8323
8324	* file.c (rb_file_join): path names must be ASCII-compatible.
8325	  [ruby-core:48012] [Bug #7168]
8326
8327	* file.c (check_path_encoding): new function to ensure path name
8328	  encoding to be ASCII-compatible.
8329
8330Tue Oct 16 09:40:04 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
8331
8332	* test/ruby/test_regexp.rb
8333	  (TextRegexp#test_raw_hyphen_and_tk_char_type_after_range): use
8334	  Regexp.new instead of literal to ignore a parser warning.
8335
8336Tue Oct 16 09:30:30 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
8337
8338	* test/ruby/test_regexp.rb
8339	  (TextRegexp#test_raw_hyphen_and_tk_char_type_after_range): ignoring
8340	  warnings are already set in setup method.
8341
8342Tue Oct 16 06:44:06 2012  Koichi Sasada  <ko1@atdot.net>
8343
8344	* vm_insnhelper.c (VM_CALLEE_SETUP_ARG): fix wrong condition.
8345
8346Tue Oct 16 06:29:18 2012  Koichi Sasada  <ko1@atdot.net>
8347
8348	* vm_insnhelper.c (vm_call_method): disable CI_SET_FASTPATH() if
8349	  this method call needs splat argument because cached functions
8350	  (vm_call_attrset, vm_call_ivar, vm_call_cfunc_fast_(unary|binary))
8351	  do not check an arity.
8352
8353	* bootstraptest/test_method.rb: add a test to check an above issue.
8354
8355Tue Oct 16 06:15:44 2012  Koichi Sasada  <ko1@atdot.net>
8356
8357	* method.h: introduce new method type VM_METHOD_TYPE_CFUNC_FAST.
8358	  This method is similar to VM_METHOD_TYPE_CFUNC methods, but
8359	  called cfunc without building new frame (does not push new control
8360	  frame). If error is occurred in cfunc, the backtrace only shows
8361	  caller frame and upper.
8362	  This kind of methods can be added by rb_define_method_fast().
8363	  This feature is similar to specialized instructions (opt_plus, etc),
8364	  but more flexible (but a bit slower).
8365
8366	* class.c (rb_define_method_fast): added.
8367	  Maybe it will be renamed soon.
8368
8369	* vm_insnhelper.c (vm_call_method): support method type
8370	  VM_METHOD_TYPE_CFUNC_FAST.
8371
8372	* proc.c (rb_method_entry_arity): catch up new method type.
8373
8374	* vm_method.c (rb_add_method_cfunc_fast): added.
8375
8376Tue Oct 16 02:32:29 2012  Koichi Sasada  <ko1@atdot.net>
8377
8378	* vm_insnhelper.h (CI_SET_FASTPATH): add new parameter `enabled'.
8379	  If `enable' is 0 then CI_SET_FASTPATH() doesn't work.
8380	  And add new configuration option OPT_CALL_FASTPATH. If this macro
8381	  was defined by 0, then CI_SET_FASTPATH() doesn't work any more.
8382
8383	* vm_insnhelper.c (vm_call_method): Pass `0' for `enabled' parameter
8384	  of CI_SET_FASTPATH if this method is protected.
8385
8386Tue Oct 16 02:17:35 2012  Koichi Sasada  <ko1@atdot.net>
8387
8388	* vm_core.h (VM_CALL_*): rename VM_CALL_*_BIT
8389	  to VM_CALL_* (remove `_BIT' suffix).
8390	  Add comments on each macros.
8391	  Remove unused macro VM_CALL_TAILRECURSION_BIT.
8392
8393	* compile.c, iseq.c, insns.def, vm_insnhelper.c: ditto.
8394
8395Mon Oct 15 22:14:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8396
8397	* test/ruby/envutil.rb (Test::Unit::Assertions#file_assertion):
8398	  rewrite file assertions.
8399
8400Mon Oct 15 09:41:17 2012  Koichi Sasada  <ko1@atdot.net>
8401
8402	* vm_insnhelper.c (VM_CALLEE_SETUP_ARG): skip CI_SET_FASTPATH() if
8403	  it was called from vm_yield_setup_args().
8404
8405Mon Oct 15 05:20:13 2012  Koichi Sasada  <ko1@atdot.net>
8406
8407	* vm_insnhelper.h CI_SET_FASTPATH: introduce new macro
8408	  `CI_SET_FASTPATH(ci, func)'. This macro set `ci->call' as `func'.
8409	  `func' (ci->call) is called at the last of `send'
8410	  (and `invokesuper') instruction.
8411	  `CI_SET_FASTPATH' does not set `ci->call' when the method
8412	  (stored in `ci->me') is `protected'.
8413
8414	* vm_insnhelper.c (vm_call_method): use `CI_SET_FASTPATH'.
8415	  After several checking (visibility, argc checking), the result of
8416	  checking can be reused until re-definition of this method
8417	  with inline method cache.
8418
8419	  Note that this optimization is now experimental.
8420	  If you find any problem about it, please tell us.
8421
8422Mon Oct 15 04:51:55 2012  Koichi Sasada  <ko1@atdot.net>
8423
8424	* vm_insnhelper.c: refactoring.
8425	  - move all `call' related functions to the last of file.
8426	  - make functions for respective method types in vm_call_method().
8427	    (all functions have same function parameters)
8428
8429	* vm_core.h: add `opt_pc' field in `rb_call_info_t'
8430	  as temporal variable.
8431
8432	* vm_eval.c (vm_call0_body): catch up above changes.
8433
8434Mon Oct 15 03:51:46 2012  Koichi Sasada  <ko1@atdot.net>
8435
8436	* benchmark/bm_vm1_attr_ivar(_set).rb: added (for method dispatch speed).
8437
8438	* benchmark/bm_vm1_float_simple.rb: added (for flonum/float).
8439
8440Mon Oct 15 02:51:16 2012  Koichi Sasada  <ko1@atdot.net>
8441
8442	* vm_eval.c (vm_call0_body): add new function.
8443	  `vm_call0()' makes call_info struct and calls `vm_call0_body()'
8444	  with this struct. In near future, `vm_call0()' will be removed
8445	  because all of `vm_call0()' users setup call_info struct by itself.
8446
8447Mon Oct 15 01:38:06 2012  Koichi Sasada  <ko1@atdot.net>
8448
8449	* insns.def (send, invokesuper, invokeblock, opt_*), vm_core.h:
8450	  use only a `ci' (rb_call_info_t) parameter instead of using
8451	  parameters such as `op_id', 'op_argc', `blockiseq' and flag.
8452	  These information are stored in rb_call_info_t at the compile
8453	  time.
8454	  This technique simplifies parameter passing at related
8455	  function calls (~10% speedups for simple method invocation at
8456	  my machine).
8457	  `rb_call_info_t' also has new function pointer variable `call'.
8458	  This `call' variable enables to customize method (block)
8459	  invocation process for each place. However, it always call
8460	  `vm_call_general()' at this changes.
8461	  `rb_call_info_t' also has temporary variables for method
8462	  (block) invocation.
8463
8464	* vm_core.h, compile.c, insns.def: introduce VM_CALL_ARGS_SKIP_SETUP
8465	  VM_CALL macro.  This flag indicates that this call can skip
8466	  caller_setup (block arg and splat arg).
8467
8468	* compile.c: catch up above changes.
8469
8470	* iseq.c: catch up above changes (especially for TS_CALLINFO).
8471
8472	* tool/instruction.rb: catch up above changes.
8473
8474	* vm_insnhelper.c, vm_insnhelper.h: ditto. Macros and functions
8475	  parameters are changed.
8476
8477	* vm_eval.c (vm_call0): ditto (it will be rewritten soon).
8478
8479Sun Oct 14 12:30:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8480
8481	* ruby.c (rb_f_sub, rb_f_gsub): pass the given block.
8482	  [ruby-core:47967] [Bug #7157]
8483
8484Sat Oct 13 23:15:39 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
8485
8486	* regparse.c (parse_char_class): should match with a hyphen after a
8487	  range in a character class.
8488
8489	* test/ruby/test_regexp.rb (TestRegexp#test_char_class): fixed wrong
8490	  test.
8491
8492	* test/ruby/test_regexp.rb (TestRegexp#check): now can accept the
8493	  error message.
8494
8495	* test/ruby/test_regexp.rb
8496	  (TextRegexp#test_raw_hyphen_and_tk_char_type_after_range): renamed
8497	  because the previous name was wrong.
8498
8499	* test/ruby/test_regexp.rb
8500	  (TextRegexp#test_raw_hyphen_and_tk_char_type_after_range): added
8501	  more test pattern.
8502
8503Sat Oct 13 03:01:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8504
8505	* file.c (realpath_rec): prevent link from GC while link_names refers
8506	  the content.
8507
8508Sat Oct 13 01:37:48 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
8509
8510	* test/ruby/test_regexp.rb
8511	  (TestRegexp#test_raw_hyphen_and_type_char_after_range): added new
8512	  test. ref [ruby-core:47115] [Backport #6853]
8513
8514Fri Oct 12 21:55:08 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
8515
8516	* include/ruby/win32.h (rb_w32_pow): set floating point precision
8517	  for mingw-w64 x86 pow(). This improves the precision of pow() on
8518	  Windows XP for TestFloat#test_round_with_precision failure.
8519	  [ruby-core:47911] [Bug #7142]
8520
8521Fri Oct 12 21:37:25 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
8522
8523	* test/webrick/test_cgi.rb (TestWEBrickCGI#test_cgi): skip a test
8524	  depending on locale on Windows. ENV[] doesn't work properly if
8525	  console code page is not equal to file system encoding.
8526	  [ruby-core:47910] [Bug #7140]
8527
8528Fri Oct 12 20:40:29 2012  Tanaka Akira  <akr@fsij.org>
8529
8530	* process.c (posix_sh_cmds): the command name of colon is ":".
8531
8532Fri Oct 12 18:18:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8533
8534	* file.c (rb_get_path_check): path name must not contain NUL bytes.
8535
8536Fri Oct 12 16:06:20 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
8537
8538	* tool/merger.rb: now can merge revision(s) without --ticket again.
8539
8540Fri Oct 12 14:10:41 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8541
8542	* lib/mkmf.rb (dir_config, init_mkmf): use configured libdir value as
8543	  default library path.  [ruby-core:43726] [Bug #6207]
8544
8545Fri Oct 12 05:25:00 2012  Zachary Scott	<zzak@ruby-lang.org>
8546
8547	* lib/timeout.rb (timeout):
8548	  Remove paragraph on wrong implementation detail.
8549	  [ruby-core:47739] [Bug #7088]
8550
8551Thu Oct 11 23:09:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8552
8553	* string.c (rb_str_sub{seq,pos,str}, rb_str_each_{line,codepoint}):
8554	  prevent String copies from GC.  [ruby-core:47881] [Bug #7135]
8555
8556Thu Oct 11 07:40:50 2012  NARUSE, Yui  <naruse@ruby-lang.org>
8557
8558	* iseq.c (insn_operand_intern): cast op to rb_call_info_t* before
8559	  compare with iseq->callinfo_entries whose type is rb_call_info_t*.
8560
8561Thu Oct 11 03:37:08 2012  Koichi Sasada  <ko1@atdot.net>
8562
8563	* bootstraptest/test_block.rb: add tests for block with super.
8564
8565Thu Oct 11 02:54:07 2012  Koichi Sasada  <ko1@atdot.net>
8566
8567	* vm_dump.c: fix debug prints to catch up recent changes
8568	  such as VM data structures.
8569
8570Thu Oct 11 02:50:34 2012  Koichi Sasada  <ko1@atdot.net>
8571
8572	* iseq.c (insn_operand_intern): add support disasm TS_CALLINFO
8573	  operands.
8574
8575Wed Oct 10 15:12:48 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
8576
8577	* test/ruby/test_process.rb (TestProcess#test_execopts_gid): skip on
8578	  windows because the platform does not have Process.group method.
8579	  patched by Jon Forums in [ruby-core:47878] [Bug #7133].
8580
8581Tue Oct  9 23:18:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8582
8583	* test/ruby/envutil.rb (assert_file, assert_file_not): more
8584	  descriptive assertions for File predicates.
8585
8586Tue Oct  9 18:01:37 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8587
8588	* array.c (rb_ary_sample): use rb_random_ulong_limited, since
8589	  precision of long may be larger than double.
8590
8591	* random.c (rb_random_ulong_limited): new function to return a random
8592	  value from 0 upto limit as unsigned long, similarly to
8593	  rb_genrand_ulong_limited but with arbitrary RNG object.
8594
8595Tue Oct  9 17:13:27 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8596
8597	* process.c (rb_execarg_addopt, rb_execarg_run_options): add :uid and
8598	  :gid options.  [ruby-core:47414] [Feature #6975]
8599
8600Tue Oct  9 14:36:11 2012  Koichi Sasada  <ko1@atdot.net>
8601
8602	* iseq.c (iseq_free): fix memory leak.
8603	  rb_iseq_t::callinfo_entries should be freed.
8604
8605Tue Oct  9 14:28:18 2012  Koichi Sasada  <ko1@atdot.net>
8606
8607	* vm_core.h (rb_call_info_t): add new type `rb_call_info_t'.
8608	  This data structure contains information including inline method
8609	  cache. After that, `struct iseq_inline_cache_entry' does not
8610	  need to contain inline cache for method invocation.
8611	  Other information will be added to this data structure.
8612
8613	* vm_core.h (rb_iseq_t): add `callinfo_entries' and `callinfo_size'
8614	  members to `rb_iseq_t'.
8615
8616	* insns.def, compile.c: Use CALL_INFO instead of IC.
8617
8618	* tool/instruction.rb: support CALL_INFO as operand type.
8619
8620	* vm_insnhelper.c, vm_insnhelper.h: ditto.
8621
8622Sun Oct  7 23:54:33 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
8623
8624	* ext/zlib/zlib.c (zstream_run_func): don't call inflate() when
8625	  z->stream.avail_in == 0. it return Z_BUF_ERROR.
8626	  but deflate() could be called with z->stream->avail_in == 0 because
8627	  it has hidden buffer in z->stream->state (opaque structure).
8628	  fix for gem install error. [ruby-dev:46149] [Bug #7040]
8629
8630Mon Oct  8 23:55:41 2012  Shugo Maeda  <shugo@ruby-lang.org>
8631
8632	* eval.c (rb_mod_refinements): new method Module#refinements.
8633
8634	* test/ruby/test_refinement.rb: add new tests for the above changes.
8635
8636Mon Oct  8 23:02:19 2012  Shugo Maeda  <shugo@ruby-lang.org>
8637
8638	* eval.c, gc.c, iseq.c, node.h, vm_insnhelper.c, vm_insnhelper.h,
8639	  vm_method.c: rename omod and overlaid modules to refinements.
8640
8641	* eval.c (hidden_identity_hash_new): renamed from identity_hash_new.
8642
8643Sun Oct  7 04:50:00 2012  Zachary Scott  <zzak@ruby-lang.org>
8644
8645	* lib/abbrev.rb: Documentation examples for Abbrev.
8646	  [ruby-core:47442] [Bug #6985]
8647
8648Sun Oct  7 04:50:00 2012  Zachary Scott  <zzak@ruby-lang.org>
8649
8650	* thread.c (rb_thread_aref):
8651	  Grammar in Thread documentation.
8652	  Patch by Steve Klabnik [ruby-core:47799] [Bug #7099]
8653
8654Sun Oct  7 04:37:00 2012  Zachary Scott  <zzak@ruby-lang.org>
8655
8656	* string.c (rb_str_match):
8657	  Clarify behavior for captured strings and local variable assignment
8658	  Patch by Marcus Stollsteimer [ruby-core:47668] [Bug #7062]
8659
8660Sat Oct  6 18:31:36 2012  Shugo Maeda  <shugo@ruby-lang.org>
8661
8662	* vm_opts.h (OPT_GLOBAL_METHOD_CACHE): new build option to
8663	  enable/disable global method caching. [ruby-dev:46203] [Bug #7111]
8664
8665	* vm_method.c (rb_method_entry_get_with_omod): don't use global
8666	  method cache if OPT_GLOBAL_METHOD_CACHE is 0.
8667
8668Sat Oct  6 16:32:04 2012  Shugo Maeda  <shugo@ruby-lang.org>
8669
8670	* vm_method.c (search_method): check omod only once for performance.
8671
8672Sat Oct  6 09:42:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8673
8674	* enc/encdb.c, enc/utf_16_32.h (ENC_DUMMY_UNICODE): endian-less wide
8675	  UTF encodings are dummy but Unicode.
8676
8677	* encoding.c (rb_encdb_set_unicode): set Unicode flag.
8678
8679	* template/encdb.h.tmpl: allow ENC_DUMMY variants.
8680
8681	* encoding.c (rb_enc_unicode_p): oniguruma provides Unicode flag.
8682
8683Fri Oct  5 17:18:42 JST 2012  TAKANO Mitsuhiro  <tak@no32.tk>
8684
8685	* template/Doxyfile.tmpl: remove SHOW_DIRECTORIES and
8686	  HTML_ALIGN_MEMBERS lines. They have been obsolete in
8687	  Doxygen version 1.8.2.
8688
8689Fri Oct  5 15:26:18 2012  Koichi Sasada  <ko1@atdot.net>
8690
8691	* ext/objspace/objspace.c: add ObjectSpace#reachable_objects_from.
8692	  This method returns an array of objects referenced by given object.
8693	  If given object is special objects such as true/false/nil/Fixnum etc
8694	  then it returns nil. See rdoc for details.
8695	  [ruby-core:39772]
8696
8697	* test/objspace/test_objspace.rb: add a test for this method.
8698
8699	* gc.c: add rb_objspace_reachable_objects_from().
8700	  To make this function, add several member `mark_func_data'
8701	  to rb_objspace_t.  If mark_func_data is not null, then
8702	  gc_mark() calls mark_func_data::mark_func.
8703
8704	* gc.h: export rb_objspace_reachable_objects_from().
8705
8706Thu Oct  4 23:40:04 2012  Narihiro Nakamura  <authornari@gmail.com>
8707
8708	* gc.c (init_heap): call init_mark_stack before to allocate
8709	  altstack. This change avoid the stack overflow at the signal
8710	  handler on 32bit, but I don't understand reason... [Feature #7095]
8711
8712Thu Oct  4 22:39:27 2012  Koichi Sasada  <ko1@atdot.net>
8713
8714	* insns.def (getlocal, setlocal): remove old getlocal/setlocal
8715	  instructions and rename getdaynmic/setdynamic instructions
8716	  to getlocal/setlocal.
8717
8718	* compile.c: ditto.
8719
8720	* iseq.c: remove TS_DINDEX.
8721
8722	* vm_exec.h (dindex_t): remove type definition of `dindex_t'.
8723
8724	* tool/instruction.rb: ditto.
8725
8726Thu Oct  4 21:44:17 2012  Koichi Sasada  <ko1@atdot.net>
8727
8728	* vm.c (vm_analysis_insn|operand|register): use st_insert
8729	  instead of using rb_hash_aset() because rb_hash_aset()
8730	  check $SAFE.
8731
8732Thu Oct  4 21:15:26 2012  Koichi Sasada  <ko1@atdot.net>
8733
8734	* vm.c (VM_COLLECT_USAGE_DETAILS): make new VM usage analysis
8735	  hooks (old macro name is COLLECT_USAGE_ANALYSIS).
8736	  This feature is only for VM developers.  (I'm not sure I can use
8737	  `VM developers' (the plural form) in this sentence).
8738	  If VM_COLLECT_USAGE_DETAILS is not 0, VM enables the following
8739	  usage collection features:
8740	    (1) instruction: collect instruction usages.
8741	    (2) operand: collect operand usages.
8742	    (3) register: collect register usages.
8743	  The results are stored in
8744	    RubyVM::USAGE_ANALYSIS_INSN for (1, 2),
8745	    RubyVM::USAGE_ANALYSIS_INSN_BIGRAM for (1) and
8746	    RubyVM::USAGE_ANALYSIS_REGS for (3).
8747	  You can stop collecting usages with
8748	    RubyVM::USAGE_ANALYSIS_INSN_STOP(),
8749	    RubyVM::USAGE_ANALYSIS_OPERAND_STOP(),
8750	    RubyVM::USAGE_ANALYSIS_REGISTER_STOP()
8751	  for (1), (2), (3) respectively.
8752	  You can also change the hook functions by setting
8753	  C level global variables
8754	    `ruby_vm_collect_usage_func_(insn|operand|register)'
8755	  for (1), (2), (3) respectively.
8756	  See codes for more details.
8757
8758	* tool/instruction.rb: fix macro names.
8759
8760	* iseq.c (insn_operand_intern): make it export (used in vm.c).
8761	  fix to skip several processes if not needed (pointer is 0).
8762
8763	* vm_dump.c: move codes for collection features to vm.c.
8764
8765	* vm_exec.h: rename macro and function names.
8766
8767	* vm_insnhelper.h: ditto.
8768
8769Thu Oct  4 18:59:14 2012  Koichi Sasada  <ko1@atdot.net>
8770
8771	* test/ruby/test_settracefunc.rb (test_tracepoint):
8772	  remove unused test case.
8773	  (this test case is redefined by newer tests)
8774
8775Thu Oct  4 17:24:51 2012  Narihiro Nakamura  <authornari@gmail.com>
8776
8777	* gc.c (rb_objspace_call_finalizer): call gc_mark_stacked_objects
8778	  at suitable point.
8779
8780Thu Oct  4 16:31:29 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8781
8782	* gc.c (rb_objspace_call_finalizer): mark self-referencing finalizers
8783	  before run finalizers, to fix SEGV from btest on 32bit.
8784
8785	* gc.c (gc_mark_stacked_objects): extract from gc_marks().
8786
8787Thu Oct  4 11:43:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8788
8789	* thread_pthread.c (ruby_init_stack): round stack limit to page size
8790	  boundary to calculate stack size more precisely.  [ruby-dev:46174]
8791	  [Bug #7084]
8792
8793Wed Oct  3 19:51:57 2012  Narihiro Nakamura  <authornari@gmail.com>
8794
8795	* gc.c: Use the non-recursive marking instead of recursion. The
8796	  recursion marking of CRuby needs checking stack overflow and the
8797	  fail-safe system, but these systems not good at partial points,
8798	  for example, marking deep tree structures. [ruby-dev:46184]
8799	  [Feature #7095]
8800
8801	* configure.in (GC_MARK_STACKFRAME_WORD): removed. It's used by
8802	  checking stack overflow of marking.
8803
8804	* win32/Makefile.sub (GC_MARK_STACKFRAME_WORD): ditto.
8805
8806Wed Oct  3 15:33:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8807
8808	* thread_pthread.c (ruby_init_stack): use getrlimit() for the main
8809	  thread on Mac OS X, since pthread_get_stack{addr,size}_np()
8810	  return the default value always, but not the ulimit value.
8811	  [ruby-dev:46174] [Bug #7084]
8812
8813Wed Oct  3 11:43:15 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8814
8815	* io.c (rb_io_reopen): improvement to accept optional arguments.
8816	  a patch by Glass_saga (Masaki Matsushita) in [ruby-core:47806].
8817	  [Feature #7103]
8818
8819Wed Oct  3 04:36:11 2012  Eric Hodel  <drbrain@segment7.net>
8820
8821	* ext/openssl/ossl_x509store.c (ossl_x509store_add_file):  Added
8822	  documentation
8823	* ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths):
8824	  ditto
8825	* ext/openssl/ossl_x509store.c (ossl_x509store_add_cert):  ditto
8826
8827Wed Oct  3 02:23:37 2012  Shugo Maeda  <shugo@ruby-lang.org>
8828
8829	* error.c (exc_to_s, name_err_to_s, name_err_mesg_to_str): do not
8830	  taint messages.
8831
8832Tue Oct  2 16:47:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8833
8834	* eval.c (identity_hash_new): hide internal hashes for refinements.
8835
8836	* eval.c (rb_mod_refine): no default value.
8837
8838Mon Oct  1 22:54:02 2012  Shugo Maeda  <shugo@ruby-lang.org>
8839
8840	* eval.c (identity_hash_new): new function to create a new identity
8841	  hash.
8842
8843	* eval.c (rb_overlay_module, rb_mod_using, rb_mod_refine): use
8844	  identity_hash_new().
8845
8846Mon Oct  1 02:34:53 2012  Akinori MUSHA  <knu@iDaemons.org>
8847
8848	* configure.in (--with-opt-dir): Make this also work on DLDFLAGS
8849	  so LIBRUBY_SO links fine with libexecinfo installed in a
8850	  non-system directory.
8851
8852Sun Sep 30 23:32:00 2012  Kenta Murata  <mrkn@mrkn.jp>
8853
8854	* vm_dump.c (rb_vm_bugreport): add /Library/Logs/DiagnosticReports
8855	  in the list of locations of crash reports.
8856
8857Sun Sep 30 21:18:03 2012  NARUSE, Yui  <naruse@ruby-lang.org>
8858
8859	* string.c (rb_str_concat): use memcpy to copy a string which contains
8860	  NUL characters. [ruby-core:47751] [Bug #7090]
8861
8862Sat Sep 29 19:41:53 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
8863
8864	* test/ruby/envutil.rb (EnvUtil#invoke_ruby): kill child process
8865	  before Timeout::Error is raised. rmdir of mktmpdir fails with
8866	  EACCES if child process is alive on Windows.
8867
8868	* test/thread/test_queue.rb (TestQueue): increase timeout.
8869	  This test takes long time on Windows XP.
8870
8871Sat Sep 29 19:41:33 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
8872
8873	* test/net/http/test_http.rb (TestNetHTTP#test_proxy_address):
8874	  clear environment variables. If http_proxy environment variable was
8875	  set, the test failed.
8876
8877	* test/net/http/test_http.rb (TestNetHTTP#test_proxy_port): ditto.
8878
8879Sat Sep 29 19:41:11 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
8880
8881	* test/drb/drbtest.rb (DRbCore#teardown):
8882	  Use Process.kill :KILL on Windows because Process.kill :INT silently
8883	  fails on Windows 7 and raises EINVAL on Windows XP for spawned
8884	  process with new_pgroup: false.
8885
8886	* test/drb/drbtest.rb (DRbAry#teardown): ditto.
8887
8888Sat Sep 29 19:40:32 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
8889
8890	* test/ruby/test_unicode_escape.rb (TestUnicodeEscape#test_basic):
8891	  set script encoding to work with LANG=C. It would work on both
8892	  Windows and Unix. Refix of r37051.
8893
8894Sat Sep 29 11:21:06 2012  Shugo Maeda  <shugo@ruby-lang.org>
8895
8896	* vm_insnhelper.c (rb_vm_using_modules): use using_modules before
8897	  klass to fix method lookup order, and use klass even if klass is
8898	  not a module to make refinements in class_eval invoked on classes
8899	  work.
8900
8901	* eval.c (rb_using_module): accept a class as the second argument.
8902
8903	* eval.c (rb_mod_using, f_using): raise a TypeError if the argument
8904	  is not a module.
8905
8906	* test/ruby/test_refinement.rb: add new tests for the above changes.
8907
8908Sat Sep 29 02:18:57 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
8909
8910	* test/ruby/test_unicode_escape.rb (TestUnicodeEscape#test_basic):
8911	  Use ruby only on Windows since the test fails on Unix with LANG=C.
8912	  [ruby-core:47709] [Bug #7076]
8913
8914Fri Sep 28 22:19:31 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
8915
8916	* test/ruby/test_unicode_escape.rb (TestUnicodeEscape#test_basic):
8917	  echo command doesn't work properly against non-ascii character on
8918	  Windows with chcp 437. Instead we use ruby.
8919	  [ruby-core:47709] [Bug #7076]
8920
8921Fri Sep 28 17:54:31 2012  Koichi Sasada  <ko1@atdot.net>
8922
8923	* vm_insnhelper.c (vm_setup_method): refactoring.
8924	  Remove src_argc and use iseq->arg_size directly.
8925
8926Fri Sep 28 17:26:27 2012  NARUSE, Yui  <naruse@ruby-lang.org>
8927
8928	* lib/rubygems/installer.rb (check_that_user_bin_dir_is_in_path):
8929	  test_generate_bin_bindir_with_user_install_warning(TestGemInstaller)
8930	  fails on Windows with msys bash. It makes comparing paths
8931	  case-insensitive.
8932	  pick from upstream to fix a failure of test-all [ruby-core:47711]
8933	 https://github.com/rubygems/rubygems/commit/c474edb2f3704206f04da1c8c6cf9fb079d84abe
8934
8935Fri Sep 28 15:44:45 2012  Shugo Maeda  <shugo@ruby-lang.org>
8936
8937	* vm_method.c (search_method): copy refinement iclasses to search
8938	  superclasses correctly.
8939
8940	* test/ruby/test_refinement.rb: related test.
8941
8942Fri Sep 28 15:15:41 2012  Koichi Sasada  <ko1@atdot.net>
8943
8944	* insns.def (opt_checkenv): remove unused instruction `opt_checkenv'.
8945
8946	* compile.c (iseq_compile_each): ditto.
8947
8948	* node.h: remove unused node `NODE_OPTBLOCK'.
8949
8950	* ext/objspace/objspace.c, gc.c (gc_mark_children): ditto.
8951
8952Fri Sep 28 13:14:34 2012  Koichi Sasada  <ko1@atdot.net>
8953
8954	* vm_core.h: now VM_DEBUG_BP_CHECK should be 1.
8955
8956Fri Sep 28 12:51:54 2012  Koichi Sasada  <ko1@atdot.net>
8957
8958	* vm_core.h: remove rb_control_frame_t::bp (bp: base pointer).
8959	  `bp' can be calculate by `sp' (stack pointer) of previous frame.
8960	  Now, `bp_check' field is remained for debug.  You can eliminate
8961	  this field by setting  VM_DEBUG_BP_CHECK as 0.
8962
8963	* vm_insnhelper.c (vm_base_ptr): add `vm_base_ptr(cfp).
8964	  This function calculates base pointer from cfp.
8965
8966	* vm_insnhelper.c (vm_setup_method): push `recv' value on top of
8967	  value stack (before method parameters).
8968	  This change is for keeping consistency with normal method dispatch.
8969
8970	* insns.def: fix to use vm_base_ptr().
8971
8972	* vm.c (vm_exec): ditto.
8973
8974	* vm_dump.c: remove `bp' related dumps.
8975
8976	* cont.c (fiber_init): fix to check VM_DEBUG_BP_CHECK.
8977
8978Fri Sep 28 10:40:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8979
8980	* io.c (rb_io_reopen): accept File::Constants as well as mode string.
8981	  based on the patch by Glass_saga (Masaki Matsushita) in
8982	  [ruby-core:47694].  [Feature #7067]
8983
8984Thu Sep 27 18:36:51 2012  Shugo Maeda  <shugo@ruby-lang.org>
8985
8986	* eval.c (rb_overlay_module, rb_mod_refine): accept a module as the
8987	  argument of Module#refine.
8988
8989	* vm_method.c (search_method): if klass is an iclass, lookup the
8990	  original module of the iclass in omod in order to allow
8991	  refinements of modules.
8992
8993	* test/ruby/test_refinement.rb: add tests for the above changes.
8994
8995Thu Sep 27 18:12:20 2012  Aaron Patterson <aaron@tenderlovemaking.com>
8996
8997	* ext/syslog/lib/syslog/logger.rb: add a formatter to the
8998	  Syslog::Logger object. [Bug #7065]
8999	* test/syslog/test_syslog_logger.rb: ditto.
9000
9001Wed Sep 26 16:39:57 2012  Koichi Sasada  <ko1@atdot.net>
9002
9003	* insns.def: add new instruction `opt_empty_p' for optimize `empty?'
9004	  method.  Apply a patch proposed at [ruby-dev:46120]
9005	  [ruby-trunk - Feature #6972] by Glass_saga (Masaki Matsushita).
9006
9007	* compile.c (iseq_specialized_instruction), vm.c, vm_insnhelper.h:
9008	  ditto.
9009
9010	* id.c, template/id.h.tmpl: ditto.
9011
9012	* test/ruby/test_optimization.rb: test for this changes.
9013
9014Tue Sep 25 09:59:26 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9015
9016	* insns.def (invokesuper): klass in cfp is not valid in at_exit and
9017	  END blocks.  [ruby-core:47680] [Bug #7064]
9018
9019Tue Sep 25 08:11:11 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9020
9021	* iseq.c (rb_iseq_defined_string): the index of defined_strings must
9022	  be the value of type - 1.
9023
9024Mon Sep 24 17:36:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9025
9026	* compile.c (defined_expr), insns.def (defined): share single frozen
9027	  strings.  [EXPERIMENTAL] [ruby-core:47558][Feature #7035]
9028
9029	* iseq.c (rb_iseq_defined_string): make expression strings.
9030
9031Mon Sep 24 11:22:36 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9032
9033	* tool/merger.rb: add --ticket option to add ticket number.
9034
9035Sun Sep 23 21:51:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9036
9037	* lib/mkmf.rb (String#unspace): unescape with backslashes.  normal
9038	  makes need to escape spaces with backslashes.  nmake is not the
9039	  case.  [Bug #7036]
9040
9041	* lib/mkmf.rb (create_makefile): use timestamp file dependencies for
9042	  directories.
9043
9044	* lib/mkmf.rb: unexpand macros.
9045
9046	* lib/mkmf.rb (LIBPATHFLAG): no needs to escape library path here.
9047
9048	* lib/mkmf.rb (MakeMakefile#configuration): make prefix paths
9049	  internal to deal with in Makefile.
9050
9051	* lib/mkmf.rb (MakeMakefile#mkintpath): not a global function now.
9052
9053Sun Sep 23 02:33:37 2012  Benoit Daloze  <eregontp@gmail.com>
9054
9055	* complex.c: Fix examples of r36993.
9056	  Keep the simple definition, mathematics define the result.
9057	  Based on patch by Robin Dupret. Fixes #188 on github.
9058
9059Sat Sep 22 07:15:00 2012  Zachary Scott  <zzak@ruby-lang.org>
9060
9061	* ext/ripper/lib/ripper.rb:
9062	  Match sample output to Ripper.sexp from current trunk version.
9063	  [Bug #6929]
9064
9065Thu Sep 20 23:05:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9066
9067	* thread_pthread.c (native_cond_initialize): destroy condattr
9068	  after using it. Patch by Stanislav Sedov. Thank you.
9069	  [Bug #7041] [ruby-core:47619]
9070
9071Thu Sep 20 22:53:02 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9072
9073	* thread_pthread.c (native_cond_initialize): clean up #ifdef condition.
9074
9075Thu Sep 20 16:42:44 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9076
9077	* lib/drb/ssl.rb (DRb::DRbSSLSocket::SSLConfig::DEFAULT): add
9078	  SSLTmpDhCallback for configuration option.
9079
9080	* lib/drb/ssl.rb (setup_ssl_context): copy the value of tmp_dh_callback.
9081
9082	* test/drb/ut_array_drbssl.rb: set tmp_dh_callback to suppress warning.
9083
9084	* test/drb/ut_drb_drbssl.rb: ditto.
9085
9086Thu Sep 20 10:56:08 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9087
9088	* test/drb/ut_drb.rb: revert a part of r36987, and get rid of a warning
9089	  with another method.  if the substitution is removed, the ExtSrv
9090	  object will be GC'ed and some tests will be blocked.
9091
9092Thu Sep 20 07:20:00 2012  Zachary Scott  <zzak@ruby-lang.org>
9093
9094	* complex.c: Examples for Complex Documentation.
9095	  Patch by Robin Dupret.
9096	  Fixes #184 on github.
9097
9098Thu Sep 20 07:15:00 2012  Zachary Scott  <zzak@ruby-lang.org>
9099
9100	* ext/ripper/lib/ripper.rb: Documentation for Ripper.
9101	  +:void_stmt+ is meaningless
9102	  [Bug #6929] [ruby-core:47507]
9103
9104Thu Sep 20 07:05:00 2012  Zachary Scott  <zzak@ruby-lang.org>
9105
9106	* lib/csv.rb (Object#CSV, Array#to_csv, String#parse_csv):
9107	  Examples and documentation for CSV.
9108	  [Bug #6880] [ruby-core:47218]
9109
9110Thu Sep 20 00:42:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9111
9112	* array.c (take_items), enum.c (enum_zip): raise TypeError at
9113	  non-enumerable objects, not NoMethodError.  [ruby-dev:46145]
9114	  [Bug #7038]
9115
9116	* vm_eval.c (rb_check_block_call): check_funcall variant with block
9117	  function.
9118
9119Tue Sep 18 17:51:29 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9120
9121	* ext/openssl/ossl_ssl.c (ossl_sslctx_attrs): add npn_select_db to
9122	  suppress warning: instance variable @npn_select_cb not initialized
9123
9124Sun Sep 16 17:47:00 2012  Eric Hodel  <drbrain@segment7.net>
9125
9126	* tool/change_maker.rb:  Update svn detection for subversion 1.7's
9127	  single .svn directory.
9128
9129Sun Sep 16 11:39:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9130
9131	* io.c (io_set_read_length): if the read length equals to the buffer
9132	  string size then nothing to do.  or ensure the string modifiable
9133	  before setting the length only when the former is shorter.  based on
9134	  the patch in [ruby-core:47541] by Hiroshi Shirosaki.
9135	  [ruby-core:46586] [Bug #6764]
9136
9137Sun Sep 16 08:57:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9138
9139	* configure.in (strict_warnflags): separate strict flags from
9140	  warnflags only for core.  [ruby-dev:46105]
9141
9142Sun Sep 16 08:16:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9143
9144	* .editorconfig: add.  [ruby-core:47548] [Feature #7030]
9145
9146Sat Sep 15 01:56:40 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9147
9148	* ext/nkf/nkf-utf8/nkf.c: Merge upstream: 50a383c84.
9149	  [ruby-dev:46128] [Bug #7005]
9150
9151Sat Sep 15 00:20:04 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9152
9153	* ext/nkf/nkf.c (rb_nkf_convert): suppress warning.
9154
9155Fri Sep 14 04:05:00 2012  Zachary Scott  <zzak@ruby-lang.org>
9156
9157	* array.c (rb_ary_diff, rb_ary_uniq):
9158	  Enhance documentation for array uniqueness
9159	  Based on a patch by Robin Dupret
9160	  [Bug #6872] [ruby-core:47209]
9161
9162Fri Sep 14 03:30:00 2012  Zachary Scott  <zzak@ruby-lang.org>
9163
9164	* array.c (rb_ary_select):
9165	  Update documentation for Array#select
9166	* enum.c (enum_find_all, enum_reject):
9167	  Update documentation for Enumerable#find_all and Enumerable#reject
9168	  Based on a patch by Jeff Saracco
9169	  [Bug #6908] [ruby-core:47285] [Fixes #166 on github]
9170
9171Fri Sep 14 00:20:00 2012  Zachary Scott  <zzak@ruby-lang.org>
9172
9173	* signal.c (rb_f_kill):
9174	  Update documentation for Process.kill to reflect kill(2)
9175	  Patch by Richo Healey
9176
9177Thu Sep 13 21:40:49 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
9178
9179	* lib/securerandom.rb (SecureRandom.random_bytes):
9180	  Use 64bit value as pointer for Windows x64 to fix SystemCallError.
9181
9182	* lib/securerandom.rb (SecureRandom.lastWin32ErrorMessage):
9183	  Set proper encoding to avoid invalid byte sequence error.
9184	  [ruby-core:47451] [Bug #6990]
9185
9186Thu Sep 13 11:20:00 2012  Zachary Scott  <zzak@ruby-lang.org>
9187
9188	* lib/optparse.rb: Remove unreachable email address from documentation
9189	  [Bug #6996] [ruby-core:47459]
9190
9191Thu Sep 13 11:20:00 2012  Zachary Scott  <zzak@ruby-lang.org>
9192
9193	* lib/xmlrpc.rb: Documentation for XMLRPC
9194	* lib/xmlrpc/datetime.rb: ditto.
9195	* lib/xmlrpc/parser.rb: ditto.
9196	* lib/xmlrpc/client.rb: ditto.
9197	* lib/xmlrpc/utils.rb: ditto.
9198	* lib/xmlrpc/README.rdoc: ditto.
9199	* lib/xmlrpc/create.rb: ditto.
9200	* lib/xmlrpc/base64.rb: ditto.
9201	* lib/xmlrpc/config.rb: ditto.
9202	* lib/xmlrpc/httpserver.rb: ditto.
9203	* lib/xmlrpc/server.rb: ditto.
9204	* lib/xmlrpc/marshal.rb: ditto.
9205	* lib/xmlrpc/README.txt: ditto.
9206	  [Bug #6909] [ruby-core:47286]
9207
9208Thu Sep 13 10:22:11 2012  Takashi Toyoshima  <toyoshim@gmail.com>
9209
9210	* configure.in: Don't use PIE on Haiku because loader support is not
9211	  enough.
9212
9213Thu Sep 13 08:20:00 2012  Zachary Scott  <zzak@ruby-lang.org>
9214
9215	* lib/shellwords.rb: Documentation for Shellwords.
9216
9217Thu Sep 13 08:00:00 2012  Zachary Scott  <zzak@ruby-lang.org>
9218
9219	* ext/ripper/lib/ripper.rb: Documentation for Ripper.
9220	* ext/ripper/lib/ripper/lexer.rb: ditto.
9221	* ext/ripper/lib/ripper/sexp.rb: ditto.
9222	* ext/ripper/lib/ripper/filter.rb: ditto.
9223	* ext/ripper/lib/ripper/core.rb: ditto.
9224	  [Bug #6929] [ruby-core:47309]
9225
9226Wed Sep 12 22:59:07 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9227
9228	* vm_insnhelper.c (vm_method_missing, vm_call_method): reuse arguments
9229	  on the VM stack and get rid of ALLOCA.
9230
9231Wed Sep 12 22:45::00 2012  Zachary Scott  <zzak@ruby-lang.org>
9232
9233	* ext/pathname/lib/pathname.rb: Documentation for Pathname.
9234	* ext/pathname/pathname.c: ditto.
9235	  [Bug #6947] [ruby-core:47354]
9236
9237Mon Sep 10 10:19:34 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9238
9239	* enc/depend: fixed wrong change in a part of r34802.
9240
9241Sun Sep  9 22:02:50 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9242
9243	* ext/socket/basicsocket.c (rsock_bsock_send):
9244	  avoid unnecessary select() calls before doing I/O
9245	  Patch by Eric Wong. [Feature #4538] [ruby-core:35586]
9246	* ext/socket/init.c (rsock_s_recvfrom): ditto.
9247	* ext/socket/init.c (rsock_s_accept): ditto.
9248	* ext/socket/udpsocket.c (udp_send): ditto.
9249	* io.c (io_fflush): ditto.
9250	* io.c (io_binwrite): ditto.
9251	* io.c (rb_io_syswrite): ditto.
9252
9253Mon Sep 10 01:38:51 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9254
9255	* io.c (nogvl_close, maygvl_close, nogvl_fclose, maygvl_fclose):
9256	  suppress integer <-> pointer cast warnings.
9257	  [Feature #4570] [ruby-core:35711]
9258
9259Mon Sep 10 01:36:00 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9260
9261	* io.c (rb_io_close): notify fd close before releasing gvl.
9262	* io.c (fptr_finalize): modify fptr->mode before releasing gvl.
9263	  remove unnecessary rb_thread_fd_close().
9264	  [Feature #4570] [ruby-core:35711]
9265
9266Mon Sep 10 00:16:34 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9267
9268	* process.c: exec() requires to be single threaded also on Haiku.
9269	  by Takashi Toyoshima <toyoshim@gmail.com>
9270	  https://github.com/ruby/ruby/pull/178
9271
9272Sun Sep  9 21:21:15 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9273
9274	* lib/thread.rb (Queue#pop): Fixed double registration issue when
9275	  mutex.sleep is interrupted. [Bug #5258] [ruby-dev:44448]
9276	* lib/thread.rb (SizedQueue#push): ditto.
9277
9278	* test/thread/test_queue.rb (test_sized_queue_and_wakeup,
9279	test_queue_pop_interrupt, test_sized_queue_pop_interrupt,
9280	test_sized_queue_push_interrupt): new tests.
9281
9282Sun Sep  9 20:20:31 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9283
9284	* lib/sync.rb (Sync_m#sync_lock): Fixed wakeup/raise unsafe code.
9285	  Patched by Masaki Matsushita. [Bug #5355] [ruby-dev:44521]
9286
9287	* test/thread/test_sync.rb (test_sync_lock_and_wakeup,
9288	  test_sync_upgrade_and_wakeup, test_sync_lock_and_raise):
9289	  new test.
9290
9291Sun Sep  9 18:39:46 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9292
9293	* include/ruby/intern.h (rb_thread_blocking_region): Added
9294	  a comment of recommended alternative way.
9295
9296Sun Sep  9 18:37:05 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9297
9298	* lib/sync.rb (Sync_m): Removed RCS_ID.
9299
9300Sun Sep  9 18:21:03 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9301
9302	* test/ruby/test_io.rb (test_advise_pipe): new test to check
9303	  io.advise() against anonymous io object don't make crash.
9304	  made by Eric Wong. [Bug #6081] [ruby-core:42880]
9305
9306Sun Sep  9 16:47:12 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9307
9308	* io.c (nogvl_close, maygvl_close, nogvl_fclose, maygvl_fclose):
9309	  new functions.
9310	* io.c (fptr_finalize): release GVL if possible.
9311	  Patched by Eric Wong. [Feature #4570] [ruby-core:35711]
9312
9313Sun Sep  9 16:08:48 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9314
9315	* io.c (io_bufread): removed unnecessary rb_thread_wait_fd().
9316	  Patch by Eric Wong. [Bug #6629] [ruby-core:45789]
9317	* io.c (rb_io_sysread): ditto.
9318	* io.c (copy_stream_fallback_body): ditto.
9319
9320Sun Sep  9 15:21:52 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
9321
9322	* thread.c (rb_mutex_lock): stop multiple threads use
9323	  pthread_cond_timedwait() concurrently. [Bug #6278] [ruby-core:44275]
9324
9325Sat Sep  8 18:52:22 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9326
9327	* internal.h (struct rb_classext_struct): move allocator function into
9328	  rb_classext_t from ordinary method table.  [ruby-dev:46121]
9329	  [Feature #6993]
9330
9331	* object.c (rb_obj_alloc): call allocator function directly.
9332
9333	* vm_method.c (rb_define_alloc_func, rb_undef_alloc_func)
9334	  (rb_get_alloc_func): use allocator function in rb_classext_t.
9335
9336Fri Sep  7 01:21:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9337
9338	* ext/extmk.rb (extmake), lib/mkmf.rb (have_framework): fix splitting
9339	  options with an argument, not using NUL as special character.
9340	  [ruby-core:47447] [Bug #6987]
9341
9342Thu Sep  6 14:49:49 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9343
9344	* .gdbinit (rp): FLONUM support.
9345
9346	* include/ruby/ruby.h (ruby_special_consts): define FLONUM constants
9347	  always, so that they are available from gdb.
9348
9349	* include/ruby/ruby.h (RB_FLOAT_TYPE_P): merge FLONUM and non-FLONUM
9350	  versions.  inline TYPE() comparison and FLONUM_P() should be
9351	  optimized away on non-FLONUM.
9352
9353Thu Sep  6 08:20:55 2012  Ryan Davis  <ryand-ruby@zenspider.com>
9354
9355	* lib/minitest/*: Imported minitest 3.4.0 (r7762)
9356	* test/minitest/*: ditto
9357
9358Wed Sep  5 19:20:53 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9359
9360	* parse.y (rb_warn4S): renamed from rb_warn4(), because the case in
9361	  r36911 takes a string.
9362
9363	* parse.y (rb_warn4S): use ripper_warnS() for ripper.
9364
9365	* parse.y (ripper_warnS): now it is used.
9366
9367Wed Sep  5 15:51:52 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
9368
9369	* .travis.yml (notifications): [experimental] update notification
9370	  template.
9371
9372Wed Sep  5 15:21:12 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9373
9374	* parse.y (rb_warn4): added as a rb_warn variant to warn with explicit
9375	  source file name and line in parse.y.
9376
9377	* parse.y (warn_unused_var): use rb_warn4 to suppress warning on ripper.
9378
9379Wed Sep  5 13:30:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9380
9381	* dir.c (glob_make_pattern): names under recursive need to be single
9382	  basenames to match for each name.  [ruby-core:47418] [Bug #6977]
9383
9384Tue Sep  4 20:55:17 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
9385
9386	* test/ruby/envutil.rb (EnvUtil#invoke_ruby): show Timeout::Error
9387	  instead of IOError if the timeout has expired.
9388
9389	* test/test_pstore.rb
9390	  (PStoreTest#test_pstore_files_are_accessed_as_binary_files):
9391	  increase timeout because this test is slow on Windows.
9392	  [ruby-core:47402] [Bug #6965]
9393
9394Tue Sep  4 11:28:57 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
9395
9396	* vm_eval.c (ruby_eval_string_from_file_protect): initializer
9397	  element is not computable at load time.
9398
9399Tue Sep  4 07:48:35 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
9400
9401	* test/openssl/test_asn1_rb:
9402	  test/openssl/test_ssl_session.rb:
9403	  test/openssl/test_x509name.rb:
9404	  test/openssl/test_buffering.rb:
9405	  test/openssl/test_x509cert.rb:
9406	  test/openssl/test_ssl.rb: Refactor code that leads to warnings on
9407	  Ruby CI.
9408
9409Tue Sep  4 07:02:56 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
9410
9411	* test/openssl/utils.rb: Use DSS1 as DSA signature digest for all
9412	  OpenSSL versions < 1.0.0.
9413	  [Feature #6946] [ruby-core:47405]
9414
9415Mon Sep  3 21:22:37 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9416
9417	* include/ruby/ruby.h (rb_float_value): suppress warnings.
9418	  [ruby-core:47406][Bug #6971]
9419
9420Mon Sep  3 14:49:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9421
9422	* lib/matrix.rb (Vector#magnitude): accumulate squares of absolute
9423	  values to fix for complex vector.  [ruby-dev:46100] [Bug #6966]
9424
9425Mon Sep  3 10:09:36 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
9426
9427	* ext/openssl/extconf.rb: Detect OpenSSL_FIPS macro
9428	  ext/openssl/ossl.c: Expose OpenSSL::OPENSSL_FIPS constant to
9429	  indicate whether OpenSSL runs in FIPS mode.
9430	  test/openssl/test_pkey_dh.rb: Generate 256 bit keys for
9431	  non-FIPS installations to improve test performance (e.g. for
9432	  rubyci).
9433	  test/openssl/utils.rb: Replace DSS1 as certificate signature
9434	  digest with SHA1 for FIPS installations when using DSA by
9435	  introducing TestUtils::DSA_SIGNATURE_DIGEST.
9436	  test/openssl/test_x509cert.rb:
9437	  test/openssl/test_x509crl.rb:
9438	  test/openssl/test_x509req.rb: Use DSA_SIGNATURE_DIGEST
9439	  NEWS: Introduce OpenSSL::OPENSSL_FIPS
9440
9441	  These changes allow running the OpenSSL tests in FIPS mode
9442	  while keeping a high performance for non-FIPS installations.
9443	  Introduction of OpenSSL::OPENSSL_FIPS allows for applications
9444	  to react to special requirements when using OpenSSL in FIPS mode.
9445	  [Feature #6946] [ruby-core:47345]
9446
9447Sun Sep  2 21:46:28 2012  Martin Bosslet <Martin.Bosslet@googlemail.com>
9448
9449	* test/openssl/utils.rb: Use a cached DH key instead of generating a
9450	  new one each time.
9451
9452Sun Sep  2 05:41:28 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9453
9454	* lib/webrick/ssl.rb (WEBrick::Config::SSL): add new key
9455	  SSLTmpDhCallback to set SSLContext#tmp_dh_callback.
9456
9457	* lib/webrick/ssl.rb (WEBrick::GenericServer#setup_ssl_context):
9458	  follow above.
9459
9460Sat Sep  1 18:50:50 2012  Akinori MUSHA  <knu@iDaemons.org>
9461
9462	* lib/set.rb (#initialize_copy, #eql): Use instance_variable_get
9463	  instead of instance_eval.
9464
9465Fri Aug 31 21:47:56 2012  Kouhei Sutou  <kou@cozmixng.org>
9466
9467	* lib/test/unit/test-unit.gemspec: Make test/unit default gem.
9468	  [Feature #6875] [ruby-dev:46051]
9469
9470Fri Aug 31 18:35:02 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
9471
9472	* ext/openssl/extconf.rb: Check existence of OPENSSL_NPN_NEGOTIATED.
9473	  ext/ossl_ssl.c: Support Next Protocol Negotiation. Protocols to be
9474	  advertised by the server can be set in the SSLContext by using
9475	  SSLContext#npn_protocols=, protocol selection on the client is
9476	  supported by providing a selection callback with
9477	  SSLContext#npn_select_cb. The protocol that was finally negotiated
9478	  is available through SSL#npn_protocol.
9479	  test/openssl/test_ssl.rb: Add tests for Next Protocol Negotiation.
9480	  NEWS: add news about NPN support.
9481	  [Feature #6503] [ruby-core:45272]
9482
9483Fri Aug 31 17:38:43 2012  Akinori MUSHA  <knu@iDaemons.org>
9484
9485	* lib/set.rb (Set#{each,reject!,select!}, SortedSet#each): Pass
9486	  the original block through instead of creating one that only
9487	  yields the passed argument.
9488
9489Fri Aug 31 16:23:20 2012  Akinori MUSHA  <knu@iDaemons.org>
9490
9491	* lib/ipaddr.rb: Introduce several new error classes where only
9492	  ArgumentError and StandardError were used.  IPAddr::Error is
9493	  their common ancestor class that inherits from ArgumentError for
9494	  backward compatibility.  Submitted by Jon Daniel.  Fixes #173 on
9495	  GitHub.
9496
9497Fri Aug 31 14:51:27 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9498
9499	* test/bigdecimal/test_bigdecimal.rb (TestBigDecimal#test_to_f): added
9500	  for previous commit.
9501
9502Fri Aug 31 14:32:05 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9503
9504	* ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): use self's sign to
9505	  determine 0.0 and Inf's sign instead of internal double value's.
9506	  Reported by phasis68 (Heesob Park) at [ruby-core:47381] [Bug #6955]
9507
9508Fri Aug 31 14:31:17 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9509
9510	* template/id.h.tmpl, tool/id2token.rb: make id.h independent from
9511	  parse.h, and make parse.c dependent on it instead.
9512
9513Fri Aug 31 14:27:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9514
9515	* lib/mkmf.rb (create_makefile): fix race conditions at install-ext.
9516	  target files need to depend on destination directory timestamp
9517	  files, not phony targets.
9518
9519Fri Aug 31 14:03:45 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9520
9521	* vm_trace.c (clean_hooks): do not access freed memory.
9522
9523	* vm_trace.c (rb_threadptr_exec_event_hooks): fix uninitialized state
9524	  when no events is executed.
9525
9526Thu Aug 30 18:21:51 2012  Tanaka Akira  <akr@fsij.org>
9527
9528	* io.c (rb_io_close): call rb_last_status_clear.
9529
9530Thu Aug 30 16:17:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9531
9532	* ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): check underflow since
9533	  strtod() sets errno to ERANGE at underflow too.  [ruby-core:47342]
9534	  [Bug #6944]
9535
9536Thu Aug 30 12:44:43 2012  Akinori MUSHA  <knu@iDaemons.org>
9537
9538	* lib/set.rb (Set#{<,>,<=,>=}): Define comparison operators as
9539	  shorthand for the {proper_}{subset?,superset?} methods (finally).
9540	  Given a push by Alexander E. Fischer.
9541
9542Thu Aug 30 09:21:01 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9543
9544	* lib/uri/ftp.rb (URI::FTP#initialize): raise InvalidURIError if "//"
9545	  is not present [ruby-core:47344] [Bug #6945]
9546
9547Thu Aug 30 07:45:12 2012  Luis Lavena  <luislavena@gmail.com>
9548
9549	* test/ruby/test_file_exhaustive.rb: fix test introduced in r36811 for
9550	  posix environments where HOME is not defined.  [ruby-core:47322]
9551
9552Wed Aug 29 23:42:59 2012  Tanaka Akira  <akr@fsij.org>
9553
9554	* internal.h (rb_last_status_clear): declared.
9555
9556	* process.c (rb_last_status_clear): exported.
9557	  (rb_f_system): call rb_last_status_clear.
9558
9559	* io.c (rb_f_backquote): call rb_last_status_clear.
9560
9561Wed Aug 29 22:01:15 2012  Tanaka Akira  <akr@fsij.org>
9562
9563	* process.c (rb_f_system): check failures of waitpid.
9564	  [ruby-talk:398687]
9565
9566Wed Aug 29 15:03:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9567
9568	* configure.in (LIBDIR_BASENAME): use configured libdir value to fix
9569	  --enable-load-relative on systems where libdir is not default value,
9570	  overridden in config.site files.  [ruby-core:47267] [Bug #6903]
9571
9572	* ruby.c (ruby_init_loadpath_safe): ditto.
9573
9574Wed Aug 29 14:34:41 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9575
9576	* addr2line.c: SIZE_MAX is defined in stdint.h, so r36755 breaks
9577	  32bit FreeBSD. [ruby-core:47360] [Bug #6948]
9578
9579Wed Aug 29 04:50:04 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
9580
9581	* test/openssl/utils.rb
9582	  test/openssl/test_pair.rb
9583	  test/openssl/test_pkey_dh.rb: Use 1024 bit DH parameters to satisfy
9584	  OpenSSL FIPS requirements. Patch by Vit Ondruch.
9585	  [Bug #6938] [ruby-core:47326]
9586
9587Tue Aug 28 22:31:49 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
9588
9589	* insns.def (checkmatch): suppress warnings. [ruby-core:47339]
9590	  [Bug #6930]
9591
9592Tue Aug 28 20:03:54 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9593
9594	* configure.in: Fixing Haiku R1/alpha3 build with gcc-4.4.4.
9595	  - omit ANSI standard flags to compile socket extension where
9596	    anonymous union is required.
9597	  - remove redundant -be flags.
9598	  by Takashi Toyoshima <toyoshim@gmail.com>
9599	  https://github.com/ruby/ruby/pull/168
9600
9601Tue Aug 28 11:32:37 2012  Yuki Yugui Sonoda  <yugui@google.com>
9602
9603	* nacl/GNUmakefile.in (.rbconfig.time): r36828 was incomplete.
9604	  It did not run correctly on clean build.
9605
9606Tue Aug 28 09:25:20 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9607
9608	* win32/Makefile.sub (Makefile): make to depend on common.mk, to
9609	  stop and force to re-run make process when common.mk is changed.
9610
9611Mon Aug 27 20:19:49 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
9612
9613	* test/etc/test_etc.rb (TestEtc#test_getgrgid): fix for non unique GID.
9614	  No unixen systems guarantee that GID is unique. Etc.getgrgid would
9615	  not return the first entry in the order of Etc.group for shared GID.
9616	  [ruby-core:47312] [Bug #6935]
9617
9618Mon Aug 27 18:19:36 2012  Koichi Sasada  <ko1@atdot.net>
9619
9620	* include/ruby/ruby.h (rb_float_value): optimize it.
9621	  This technique was pointed by shinichiro.hamaji
9622	  <http://shinh.skr.jp/m/?date=20120825#p02>.
9623
9624Mon Aug 27 15:08:25 2012  Yuki Yugui Sonoda  <yugui@google.com>
9625
9626	* common.mk (vm_trace.o): Added a missing dependency.
9627
9628Sun Aug 26 09:29:32 2012  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
9629
9630	* nacl/GNUmakefile.in (package): make package should install
9631	  example.html for nacl build
9632
9633	Patch by Takashi Toyoshima <toyoshim AT gmail.com>.
9634
9635Sun Aug 26 09:22:33 2012  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
9636
9637	* nacl/GNUmakefile.in (CC, LD, NM, AR, AS, RANLIB, OBJDUMP, OBJCOPY)
9638	  Rewrites these variables instead of PATH.
9639	  NaCl port uses a toolchain which is specified by NACL_SDK_ROOT
9640	  environment variable. Originally, NaCl build added the toolchain
9641	  under the NACL_SDK_ROOT to the PATH. But updating PATH doesn't work
9642	  on Mac.
9643	  (RBCONFIG): Replaces configs with the variable updates above.
9644
9645	* configure.in: Thus it is no longer necessary to check $PATH.
9646
9647	Based on a patch by Takashi Toyoshima <toyoshim AT gmail.com>.
9648
9649Sun Aug 26 16:53:00 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9650
9651	* insns.def (checkmatch): suppress warnings.  [ruby-core:47310]
9652	  [Bug #6930]
9653
9654	* vm_core.h (VM_FRAME_TYPE_FINISH_P): ditto.
9655
9656Fri Aug 24 15:42:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9657
9658	* lib/mkmf.rb (create_makefile): use timestamp for destination
9659	  directories to make them before making or copying files there.
9660	  [ruby-dev:46067] [Bug #6904]
9661
9662Fri Aug 24 12:40:15 2012  Luis Lavena  <luislavena@gmail.com>
9663
9664	* configure.in (mingw): add shlwapi to the list of dependency
9665	  libs for Windows.
9666	* win32/Makefile.sub (EXTSOLIBS): ditto.
9667
9668	* internal.h: declare internal functions rb_w32_init_file,
9669	  rb_file_expand_path_internal and rb_file_expand_path_fast.
9670
9671	* file.c (Init_File): invoke Windows initialization rb_w32_init_file
9672
9673	* win32/file.c (rb_file_load_path_internal): new function.
9674	  Windows-specific implementation that replaces file_expand_path.
9675	  [Bug #6836][ruby-core:46996]
9676
9677	* win32/file.c (rb_w32_init_file): new function. Initialize codepage
9678	  cache for faster conversion encodings lookup.
9679
9680	* file.c (file_expand_path): rename to rb_file_expand_path_internal.
9681	  Conditionally exclude from Windows.
9682
9683	* file.c (rb_file_expand_path_fast): new function. delegates to
9684	  rb_file_expand_path_internal without performing a hit to the
9685	  filesystem.
9686
9687	* file.c (file_expand_path_1): use rb_file_expand_path_internal without
9688	  path expansion (used by require).
9689	* file.c (rb_find_file_ext_safe): ditto.
9690	* file.c (rb_find_file_safe): ditto.
9691
9692	* load.c (rb_get_expanded_load_path): use rb_file_expand_path_fast.
9693	* load.c (rb_feature_provided): ditto.
9694
9695	* file.c (rb_file_expand_path): use rb_file_expand_path_internal with
9696	  path expansion.
9697	* file.c (rb_file_absolute_path): ditto.
9698
9699	* test/ruby/test_file_exhaustive.rb: new tests to exercise
9700	  rb_file_expand_path_internal implementation and compliance with
9701	  existing behaviors.
9702
9703Fri Aug 24 07:35:24 2012  Eric Hodel  <drbrain@segment7.net>
9704
9705	* lib/net/http/backward.rb (class Net):  Restored Net::HTTPSession to
9706	  fix backwards-compatibility with ancient Net::HTTP.  [Bug #6889]
9707
9708Thu Aug 23 20:58:55 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
9709
9710	* common.mk: support `make id.h` without `rm .id.h.time` after
9711	  `rm id.h`.
9712
9713Thu Aug 23 20:48:45 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9714
9715	* test/ruby/test_fixnum.rb (TestFixnum#test_singleton_method): new test.
9716
9717	* test/ruby/test_bignum.rb (TestBignum#test_singleton_method): ditto.
9718
9719	* test/ruby/test_float.rb (TestFloat#test_singleton_method): ditto.
9720
9721	* test/ruby/test_symbol.rb (TestSymbol#test_singleton_method): ditto.
9722
9723Thu Aug 23 20:34:32 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9724
9725	* class.c (singleton_class_of): flonum can't have singleton class.
9726
9727	* vm.c (vm_define_method): flonum can't have singleton method.
9728
9729Thu Aug 23 19:18:33 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9730
9731	* common.mk (win32/*): macro RUBY_H_INCLUDES is not defined there,
9732	  so need to move dependency rules under the definition of it.
9733
9734Thu Aug 23 19:16:20 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9735
9736	* win32/Makefile.sub: refactoring.  remove unused rules, and update
9737	  some rules which are not used usually to fit current macros.
9738
9739Thu Aug 23 16:46:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9740
9741	* file.c (rb_find_file_ext_safe, rb_find_file_safe): default to
9742	  US-ASCII for encdb and transdb.
9743
9744	* load.c (search_required): keep encoding of feature name.  set
9745	  loading path to filesystem encoding.  [Bug #6377][ruby-core:44750]
9746
9747	* ruby.c (add_modules, require_libraries): assume default external
9748	  encoding as well as ARGV.
9749
9750Thu Aug 23 16:20:04 2012  Koichi Sasada  <ko1@atdot.net>
9751
9752	* include/ruby/ruby.h: introduce flonum technique for
9753	  64bit CPU environment (sizeof(double) == sizeof(VALUE)).
9754	  flonum technique enables to avoid double object creation
9755	  if the double value d is in range about between
9756	  1.72723e-77 < |d| <= 1.15792e+77 or 0.0.
9757	  flonum Float value is immediate and their lowest two bits
9758	  are b10.
9759	  If flonum is activated, then USE_FLONUM macro is 1.
9760	  I'll write detailed in this technique on
9761	  https://bugs.ruby-lang.org/projects/ruby-trunk/wiki/Flonum_tech
9762
9763	* benchmark/bmx_temp.rb: add an benchmark for simple
9764	  Float calculation.
9765
9766	* gc.c (id2ref, rb_obj_id): add flonum Float support.
9767
9768	* include/ruby/intern.h: move decl of rb_float_new(double)
9769	  to include/ruby/ruby.h.
9770
9771	* insns.def, vm.c, vm_insnhelper.c: add flonum optimization
9772	  and simplify source code.
9773
9774	* vm_insnhelper.h (FLONUM_2_P): added.
9775
9776	* marshal.c: support flonum output.
9777
9778	* numeric.c (rb_float_new_in_heap): added.
9779
9780	* parse.y: support flonum.
9781
9782	* random.c: ditto.
9783
9784Thu Aug 23 16:12:40 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9785
9786	* lib/mkmf.rb (create_makefile): add dependency to header files when
9787	  depend files don't exist.  now we can remove simple (and often
9788	  wrong) depend files in most cases.
9789
9790Thu Aug 23 16:02:20 2012  Koichi Sasada  <ko1@atdot.net>
9791
9792	* ext/date/depend: add dependency to $(ruby_headers).
9793
9794Thu Aug 23 12:51:39 2012  Shugo Maeda  <shugo@ruby-lang.org>
9795
9796	* insns.def (invokesuper): reverted r36640 partially to make super
9797	  in a thread work correctly. [ruby-core:47284] [Bug #6907]
9798
9799	* test/ruby/test_super.rb: related test.
9800
9801Thu Aug 23 12:30:20 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9802
9803	* win32/configure.bat: support --with(out)?-ext(ensions) options.
9804
9805Thu Aug 23 11:52:04 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9806
9807	* configure.in: Fixing Haiku build.
9808	  - -lbe is not required for linking
9809	  - stack protector doesn't work for now because of the default gcc's
9810	    bug
9811	  by Takashi Toyoshima <toyoshim@gmail.com>
9812	  https://github.com/ruby/ruby/pull/167
9813
9814	* signal.c (ruby_signal): haiku doesn't have SIGBUS.
9815
9816Thu Aug 23 11:32:44 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9817
9818	* test/open-uri/test_open-uri.rb (TestOpenURI#test_read_timeout): this
9819	  test expects that the server thread will be killed in sleep, but 0.01
9820	  sec is too short to reach there.
9821
9822Thu Aug 23 10:49:28 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9823
9824	* configure.in: use the value of --with-opt-dir on building ruby
9825	  itself. [ruby-dev:46064] [Bug #6900]
9826
9827Thu Aug 23 10:36:35 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9828
9829	* common.mk (ID_H_TARGET): revert a part of r36724 and r36751.  they
9830	  break mswin build from clean source.
9831
9832Thu Aug 23 02:37:35 2012  Aaron Patterson <aaron@tenderlovemaking.com>
9833
9834	* ext/syck: removed. Fixes [ruby-core:43360]
9835
9836	* test/syck: removed.
9837
9838	* lib/yaml.rb: only require psych, show a warning if people try to set
9839	  the engine to syck.
9840
9841Thu Aug 23 01:46:53 2012  Aaron Patterson <aaron@tenderlovemaking.com>
9842
9843	* insns.def: search up the cf stack for an object that is an instance
9844	  of the recipient class.  Fixes [ruby-core:47186]
9845
9846	* test/ruby/test_super.rb: related test.
9847
9848Wed Aug 22 19:46:24 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9849
9850	* ext/date/date_core.c: [ruby-core:47266].
9851
9852Wed Aug 22 19:41:19 2012  Tadayoshi Funaba  <tadf@dotrb.org>
9853
9854	* ext/date/date_core.c: [ruby-core:47226].
9855
9856Wed Aug 22 16:57:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9857
9858	* lib/mkmf.rb (configuration): extract least ruby headers list as
9859	  ruby_headers, so depend files can use default dependency
9860	  explicitly.
9861
9862Wed Aug 22 15:27:50 2012  Koichi Sasada  <ko1@atdot.net>
9863
9864	* vm_insnhelper.c (vm_setup_method): fix last commit of
9865	  vm_insnhelper.c (r36771). [ruby-dev:46065] [Bug #6901]
9866	  Should not disable tail call opt on FINISH_FRAME.
9867	  This flag should be propagated correctly.
9868
9869Wed Aug 22 14:05:23 2012  Koichi Sasada  <ko1@atdot.net>
9870
9871	* vm_trace.c: support TracePoint. [ruby-trunk - Feature #6895]
9872
9873	* test/ruby/test_settracefunc.rb: add tests for above.
9874
9875	* proc.c (rb_binding_new_with_cfp): add an internal function.
9876
9877	* vm.c (rb_vm_control_frame_id_and_class): add an internal function.
9878
9879	* vm_trace.c: add rb_add_event_hook2() and rb_thread_add_event_hook2().
9880	  Give us the good name for them!
9881
9882Wed Aug 22 11:38:16 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
9883
9884	* .travis.yml (before_script): Turned out that make -j is broken.
9885
9886Wed Aug 22 11:23:35 2012  Shugo Maeda  <shugo@ruby-lang.org>
9887
9888	* vm_insnhelper.c (vm_setup_method): should not enable tail call
9889	  optimization for frames with VM_FRAME_FLAG_FINISH.
9890	  [ruby-dev:46065] [Bug #6901]
9891
9892Wed Aug 22 11:20:47 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9893
9894	* lib/rubygems/test_case.rb: run test with psych if exist.
9895
9896Thu Aug 16 12:09:51 2012  Yuki Yugui Sonoda  <yugui@google.com>
9897
9898	* nacl/pepper_main.c (init_loadpath): Pushes the correct load path on
9899	  other architectures than x86_64. Fixes #6873.
9900
9901Wed Aug 15 19:37:33 2012  Yuki Yugui Sonoda  <yugui@google.com>
9902
9903	* configure.in (ac_cv_func_shutdown): shutdown(2) has a dummy
9904	  implementation but has no declaration and does not work in
9905	  NativeClient SDK pepper_20.
9906
9907Wed Aug 15 19:29:29 2012  Yuki Yugui Sonoda  <yugui@google.com>
9908
9909	* common.mk (vm_backtrace.o): Added missing dependencies.
9910
9911	* ext/nkf/depend (nkf.o): ditto.
9912
9913	* ext/ripper/depend (ripper.o) ditto.
9914
9915Wed Aug 22 07:27:00 2012  NARUSE, Yui  <naruse@ruby-lang.org>
9916
9917	* lib/cgi/util.rb (CGI.escapeHTML): use &#39;
9918	  [ruby-core:47221] [Bug #6861]
9919
9920Tue Aug 21 21:59:22 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
9921
9922	* lib/observer.rb: fix typo. https://github.com/ruby/ruby/pull/162 by
9923	  unsymbol (Philip Cunningham).
9924
9925Tue Aug 21 20:30:06 2012  Benoit Daloze  <eregontp@gmail.com>
9926
9927	* test/fileutils/test_fileutils.rb (TestFileUtils#teardown):
9928	  do not assume cwd is TMPROOT and never remove current directory.
9929	  [ruby-core:47224][Bug #6884]
9930
9931Tue Aug 21 17:29:56 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9932
9933	* addr2line.c (fill_lines): need check and cast of the file size of
9934	  target binary because there are some platforms which off_t > size_t.
9935
9936Tue Aug 21 17:07:58 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
9937
9938	* .travis.yml (compiler): [experimental] clang support.
9939
9940Tue Aug 21 15:44:27 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9941
9942	* ext/dl/lib/dl/func.rb (DL::Function#bind): fixes an error in
9943	  test/dl/test_import.rb (DL::TestImport#test_carried_function)
9944	  introduced by r36718.
9945	  the instance of the anonymous class which wraps the block should have
9946	  same methods and instance variables of self.
9947
9948Tue Aug 21 14:29:22 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9949
9950	* win32/Makefile.sub (scriptbin.mk): no need to include twice.
9951
9952Tue Aug 21 10:52:08 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9953
9954	* test/unit/test.rb (Test::Unit::ProxyError): new exception class to
9955	  wrap exceptions raised in workers in parallel test mode.
9956
9957	* test/unit/parallel.rb (Test::Unit::Worker#puke): use above wrapper
9958	  exception.
9959	  [Bug #6882] [ruby-dev:46054]
9960
9961Tue Aug 21 10:40:06 2012  Koichi Sasada  <ko1@atdot.net>
9962
9963	* test_continuation.rb (tracing_with_thread_set_trace_func):
9964	  fix to use Thread#set_trace_func(nil), not set_trace_func(nil).
9965
9966Tue Aug 21 09:32:41 2012  Ryan Davis  <ryand-ruby@zenspider.com>
9967
9968	* lib/minitest/*: Imported minitest 3.3.0 (r7676)
9969	* test/minitest/*: ditto
9970
9971Tue Aug 21 09:05:32 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
9972
9973	* test/testunit/tests_for_parallel/ptest_forth.rb: added a test case
9974	  which causes an error.
9975
9976	* test/testunit/test_parallel.rb: follow above change.
9977	  see [Bug #6882]
9978
9979Tue Aug 21 05:43:00 2012  James Edward Gray II  <james@graysoftinc.com>
9980
9981	* lib/csv.rb: Fixes #161 on github
9982	* lib/csv.rb: You can now specify a pattern for :skip_lines.
9983	  Matching lines will not be passed to the CSV parser.
9984	* lib/csv.rb: Patch by Christian Schwartz.
9985
9986Tue Aug 21 05:25:41 2012  Eric Hodel  <drbrain@segment7.net>
9987
9988	* re.c (rb_reg_initialize_m): Forgot to update output for or'd-options
9989	  example.
9990
9991Tue Aug 21 05:18:03 2012  Eric Hodel  <drbrain@segment7.net>
9992
9993	* re.c (rb_reg_initialize_m): Update example to show that regexp
9994	  options use | an not || to avoid confusion.
9995
9996Mon Aug 20 23:02:27 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9997
9998	* parse.y: more descriptive token names in syntax error messages.
9999
10000Mon Aug 20 20:36:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10001
10002	* vm_insnhelper.c (vm_call_method): follow iclasses as klass in cfp
10003	  but not included modules.  [ruby-core:47241] [Bug #6891]
10004
10005	* vm_insnhelper.c (vm_call_bmethod): pass defined_class to follow
10006	  proper ancestors.  [ruby-core:47241] [Bug #6891]
10007
10008Mon Aug 20 11:40:27 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
10009
10010	* common.mk: fix failed to make with -j2.
10011	  https://gist.github.com/3397935
10012
10013Mon Aug 20 10:51:01 2012  Shota Fukumori  <sorah@tubusu.net>
10014
10015	* lib/test/unit.rb, lib/test/unit/parallel.rb:
10016	  generate error message (String) in parallel.rb instead of
10017	  marshalling Exception. Fixes [Bug #6882] [ruby-dev:46054]
10018
10019Sun Aug 19 01:24:32 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
10020
10021	* enum.c: fix docs. https://github.com/ruby/ruby/pull/129 by
10022	  richardkmichael (Richard Michael).
10023
10024Sun Aug 19 00:47:26 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
10025
10026	* lib/fileutils.rb: fix typo.
10027	  https://github.com/ruby/ruby/pull/155 by simonc (Simon COURTOIS).
10028
10029Sat Aug 18 09:57:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10030
10031	* enc/depend: fix inplace-build condition.  enc.mk is generated with
10032	  setting $srcdir to enc, but pwd is still top build directory.
10033	  [ruby-core:47236] [Bug #6888]
10034
10035Fri Aug 17 23:28:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10036
10037	* object.c (rb_any_to_s, rb_obj_inspect): preserve encodings of class
10038	  name and instance variable names.
10039
10040Fri Aug 17 12:39:33 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10041
10042	* ext/dl/lib/dl/func.rb (DL::Function#bind): allow to return/break from
10043	  the callback method. (Fiddle already allows it.)
10044	  [Bug #6389] [ruby-dev:45604]
10045
10046Thu Aug 16 19:54:24 2012  Koichi Sasada  <ko1@atdot.net>
10047
10048	* vm_trace.c, vm_core.h: simplify tracing mechanism.
10049
10050	  (1) add rb_hook_list_t data structure which includes
10051	      hooks, events (flag) and `need_clean' flag.
10052	      If the last flag is true, then clean the hooks list.
10053	      In other words, deleted hooks are contained by `hooks'.
10054	      Cleanup process should run before traversing the list.
10055	  (2) Change check mechanism
10056	      See EXEC_EVENT_HOOK() in vm_core.h.
10057	  (3) Add `raw' hooks APIs
10058	      Normal hooks are guarded from exception by rb_protect().
10059	      However, this protection is overhead for too simple
10060	      functions which never cause exceptions.  `raw' hooks
10061	      are executed without protection and faster.
10062	      Now, we only provide registration APIs.  All `raw'
10063	      hooks are kicked under protection (same as normal hooks).
10064
10065	* include/ruby/ruby.h: remove internal data definition and
10066	  macros.
10067
10068	* internal.h (ruby_suppress_tracing), vm_trace.c: rename
10069	  ruby_suppress_tracing() to rb_suppress_tracing()
10070	  and remove unused function parameter.
10071
10072	* parse.y: fix to use renamed rb_suppress_tracing().
10073
10074	* thread.c (thread_create_core): no need to set RUBY_VM_VM.
10075
10076	* vm.c (mark_event_hooks): move definition to vm_trace.c.
10077
10078	* vm.c (ruby_vm_event_flags): add a global variable.
10079	  This global variable represents all of Threads and VM's
10080	  event masks (T1#events | T2#events | ... | VM#events).
10081	  You can check the possibility kick trace func or not
10082	  with ruby_vm_event_flags.
10083	  ruby_vm_event_flags is maintained by vm_trace.c.
10084
10085	* cont.c (fiber_switch, rb_cont_call): restore tracing status.
10086	  [Feature #4347]
10087
10088	* test/ruby/test_continuation.rb: ditto.
10089
10090Thu Aug 16 19:15:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10091
10092	* object.c (rb_class_initialize): forbid inheriting uninitialized
10093	  class.  another class tree not based on BasicObject cannot exist.
10094	  [ruby-core:47148][Bug #6863]
10095
10096Thu Aug 16 11:52:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10097
10098	* test/-ext-/test_printf.rb (Test_SPrintf#test_{taint,untrust}): use
10099	  plain object so that the results of to_s and inspect are infected.
10100	  [ruby-dev:46053] [Bug #6881]
10101
10102Thu Aug 16 09:46:07 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10103
10104	* strftime.c: remove unnecessary macros to check traditional C.
10105	  https://github.com/ruby/ruby/pull/46 by lateau (Daehyub Kim).
10106
10107	* vsnprintf.c: remove K&R.
10108
10109Wed Aug 15 20:47:49 2012  Benoit Daloze  <eregontp@gmail.com>
10110
10111	* object.c (rb_obj_inspect): Kernel#inspect: do not call #to_s. A class
10112	  can now benefit from the nice default #inspect even if it defines #to_s.
10113	  Also, there is no more unexpected change in #inspect result.
10114
10115	* NEWS: Add note about the change.
10116
10117	* bignum.c, io.c, numeric.c, object.c, proc.c, vm.c (Init_*):
10118	  Adapt internal structures (by aliasing #inspect to #to_s) so they
10119	  don't rely on the removed behavior (#inspect calling overridden #to_s).
10120
10121	* test/ruby/test_object.rb (test_inspect): add tests for Kernel#inspect.
10122
10123	* lib/pp.rb (class PP): do not call #to_s anymore, as #inspect
10124	  no more does (mame).
10125
10126	* test/test_pp.rb (class PPInspectTest): remove related assertion (mame).
10127	  [ruby-core:43238][Feature #6130]
10128
10129	* test/drb/drbtest.rb (DRbCore#teardown, DRbAry#teardown):
10130	  adapt DRb tests with the new change (shirosaki).
10131	  [ruby-core:47182][Bug #6866]
10132
10133Wed Aug 15 18:05:37 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10134
10135	* lib/test/unit.rb (Test::Unit::Runner#failed): need to delete the
10136	  status line if the status is skipped and -q is specified.
10137
10138Wed Aug 15 16:26:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10139
10140	* sprintf.c (ruby__sfvextra): the result should be infected by the
10141	  given strings.
10142
10143	* sprintf.c (ruby__sfvwrite): set buffer length and exclude
10144	  uninitialized garbage to get correct coderange.
10145
10146Wed Aug 15 16:20:09 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10147
10148	* common.mk (ID_H_TARGET): make timestamp file of id.h so that the
10149	  header will not be remade repetitively.
10150
10151Wed Aug 15 11:39:53 2012  Koichi Sasada  <ko1@atdot.net>
10152
10153	* vm_trace.c: separate trace_func related functions from
10154	  thread.c.
10155
10156	* thread.c: ditto.
10157
10158	* common.mk: add vm_trace.o.
10159
10160	* inits.c: call Init_vm_trace().
10161
10162Tue Aug 14 16:25:46 2012  Shugo Maeda  <shugo@ruby-lang.org>
10163
10164	* test/erb/test_erb.rb (test_html_escape): add assertions for the
10165	  cases where the argument is not a String.
10166
10167Tue Aug 14 16:03:31 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10168
10169	* win32/win32.c (check_valid_dir): reject "..." as directory name.
10170	  [Bug #6851]
10171
10172Tue Aug 14 16:02:51 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10173
10174	* test/ruby/test_file_exhaustive.rb
10175	  (TestFileExhaustive#test_stat_dotted_prefix): added.
10176
10177Tue Aug 14 15:39:09 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10178
10179	* test/ruby/test_file_exhaustive.rb
10180	  (TestFileExhaustive#test_stat_drive_root): added.
10181
10182Tue Aug 14 10:38:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10183
10184	* lib/erb.rb (ERB::Util.html_escape): fix r36687: call to_s before
10185	  passing it to CGI.escapeHTML.
10186
10187Mon Aug 13 13:13:19 2012  Shugo Maeda  <shugo@ruby-lang.org>
10188
10189	* lib/erb.rb (ERB::Util.html_escape): use CGI.escapeHTML to escape
10190	  single quotes. [ruby-core:47138] [Bug #6861]
10191
10192Sun Aug 12 11:57:20 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
10193
10194	* vm.c (invoke_block_from_c): fix unintentional block passing.
10195	  [ruby-dev:45071] [Bug #5832]
10196
10197Fri Aug 10 08:41:28 2012  Eric Hodel  <drbrain@segment7.net>
10198
10199	* gc.c (gc_malloc_allocated_size):  RDoc does not process macros, so
10200	  mention this method is only available when ruby is built with
10201	  CALC_EXACT_MALLOC_SIZE
10202	* gc.c (gc_malloc_allocations):  ditto
10203
10204Thu Aug  9 23:46:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10205
10206	* tool/mkrunnable.rb: see build_os instead of target arch for
10207	  cross-compiling.
10208
10209	* configure.in (MINIRUBY): use real path for include path.
10210
10211	* template/fake.rb.in (builddir): remove duplications
10212
10213Thu Aug  9 20:03:11 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
10214
10215	* test/ruby/test_file_exhaustive.rb
10216	  (TestFileExhaustive#test_stat_special_file): add a test.
10217	  GetFileAttributesExW fails to get attributes of special files
10218	  such as pagefile.sys.
10219
10220	* win32/win32.c (check_valid_dir): for performance, check the path
10221	  by FindFirstFileW only if the path contains "..."
10222
10223	* win32/win32.c (winnt_stat): use GetFileAttributesExW instead of
10224	  FindFirstFileW since GetFileAttributesExW is faster.
10225	  Based on the patch by Dusan D. Majkic.
10226	  [ruby-core:47083] [Feature #6845]
10227
10228Thu Aug  9 18:33:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10229
10230	* ruby.c (proc_options): show version only once even if -v and
10231	  --version are given together.
10232	  http://twitter.com/d6rkaiz/status/233491797085671424
10233
10234Thu Aug  9 12:37:22 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
10235
10236	* test/openssl/test_config.rb (OpenSSL#test_constants): skip this
10237	  test if platform is Mac OS X or Windows. [Bug #6830]
10238
10239Wed Aug  8 22:51:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10240
10241	* vm_eval.c (eval_under): singletons other than special constants
10242	  don't need cref-scope hack.
10243
10244Wed Aug  8 22:45:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10245
10246	* common.mk (.y.h): split from .y.c rule to manage dependency on
10247	  parse.h.  [ruby-core:46741] [Bug #6789]
10248
10249	* common.mk (id.h): keep old file unless changed.
10250
10251Wed Aug  8 17:11:20 2012  Koichi Sasada  <ko1@atdot.net>
10252
10253	* compile.c (ADD_INSNL): make ADD_INSNL as alias of ADD_INSN1.
10254
10255Wed Aug  8 17:08:14 2012  Koichi Sasada  <ko1@atdot.net>
10256
10257	* bootstrap/test_exception.rb: fix a last committed test.
10258
10259Wed Aug  8 16:27:58 2012  Koichi Sasada  <ko1@atdot.net>
10260
10261	* compile.c, insns.def (checkmatch):
10262	  remove checkincludearray instruction and
10263	  add new instruction checkmatch.
10264	  This change is to solve
10265	  [Bug #4438] "rescue args type check omitted".
10266
10267	* iseq.c: increment ISEQ_MAJOR_VERSION because removal of
10268	  checkincludearray instruction.
10269
10270	* vm_core.h: add several definitions for
10271	  the checkmatch instruction.
10272
10273	* vm_insnhelper.c (check_match): added.
10274
10275	* bootstraptest/test_exception.rb: add a test.
10276
10277	* test/ruby/test_exception.rb: ditto.
10278
10279Wed Aug  8 05:51:20 2012  Eric Hodel  <drbrain@segment7.net>
10280
10281	* proc.c (method_clone):  Added documentation.  Patch by Robin Dupret.
10282	  Fixes #152 on github.
10283
10284Tue Aug  7 20:19:29 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10285
10286	* ext/readline/readline.c (Init_readline): rl_catch_signals=0 returns
10287	  back. Without this, on FreeBSD9 and readline 6.2 irb can't catch ^C.
10288	  [Bug #5423]
10289
10290Tue Aug  7 20:12:39 2012  Koichi Sasada  <ko1@atdot.net>
10291
10292	* vm_exec.c, insns.def (leave): solve problems on
10293	  OPT_CALL_THREADED_CODE.
10294	  Catch up finish frame structure on OPT_CALL_THREADED_CODE.
10295
10296	* vm_core.h: add rb_thread_t#retval for temporary space on
10297	  OPT_CALL_THREADED_CODE.
10298
10299	* vm.c (th_init): clear rb_thread_t#retval as Qundef.
10300
10301	* vm_dump.c (rb_vmdebug_debug_print_pre): fix debug print format.
10302
10303Tue Aug  7 11:58:27 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10304
10305	* test/ruby/test_require.rb (TestRequire#test_require_twice): added.
10306
10307Tue Aug  7 11:35:37 2012  Shugo Maeda  <shugo@ruby-lang.org>
10308
10309	* vm_method.c (rb_redefine_opt_method): use RCLASS_ORIGIN to avoid
10310	  SEGV when a module-prepended class is refined.
10311
10312Tue Aug  7 10:46:37 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10313
10314	* test/ruby/test_file_exhaustive.rb
10315	  (TestFileExhaustive#test_expand_path*): refactoring.  split the method
10316	  into some chunks of the same kind of tests.
10317
10318Tue Aug  7 00:31:09 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10319
10320	* class.c (rb_special_singleton_class_of): utility function.
10321
10322	* vm_eval.c (eval_under): special deal for class variable scope with
10323	  instance_eval.
10324
10325	* vm_eval.c (rb_obj_instance_eval, rb_obj_instance_exec): allow method
10326	  definition in instance_eval of special constants.  [ruby-core:28324]
10327	  [Bug #2788]
10328
10329Tue Aug  7 00:23:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10330
10331	* variable.c (CVAR_LOOKUP): split into helper functions.
10332
10333Mon Aug  6 19:15:11 2012  Masaki Suketa <masaki.suketa@nifty.ne.jp>
10334
10335	* test/win32ole/test_win32ole_variant.rb: setting WIN32OLE.locale
10336	  to pass some assertion.  Thanks to Hiroshi Shirosaki.
10337	  [ruby-core:46873][Bug #6814]
10338
10339Mon Aug  6 15:54:50 2012  Shugo Maeda  <shugo@ruby-lang.org>
10340
10341	* internal.h, class.c, eval.c, insns.def: find the appropriate
10342	  receiver for super called in instance_eval.  If such a receiver is
10343	  not found, raise NoMethodError. [ruby-dev:39772] [Bug #2402]
10344
10345Mon Aug  6 14:54:38 2012  Shugo Maeda  <shugo@ruby-lang.org>
10346
10347	* include/ruby/ruby.h, eval.c, vm_insnhelper.c: fix typo.
10348
10349Mon Aug  6 13:13:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10350
10351	* vm_eval.c (vm_call_super): since cfp->klass is always class or
10352	  iclass, no search from method entry.
10353
10354	* insns.def (defined): now should use klass in the current control
10355	  frame to search superclass, not me->klass.  reported by naruse.
10356
10357Mon Aug  6 11:19:19 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10358
10359	* test/etc/test_etc.rb (TestEtc#test_getpwuid): `s' is never set to nil.
10360
10361Mon Aug  6 11:08:48 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10362
10363	* test/syslog/test_syslog_logger.rb: skip unless Syslog module is
10364	  available.
10365
10366Mon Aug  6 00:40:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10367
10368	* ext/bigdecimal/bigdecimal.c (BigMath_s_log): fix format specifier.
10369
10370Mon Aug  6 00:39:24 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10371
10372	* include/ruby/ruby.h (NUM2ULONG): optimize by inline as well as
10373	  NUM2LONG, and cast to unsigned long explicitly for the platforms
10374	  where SIZEOF_VALUE is larger than SIZEOF_LONG.
10375
10376	* include/ruby/ruby.h (NUM2SSIZET): fix type to cast.
10377
10378Sun Aug  5 21:10:36 2012  Narihiro Nakamura  <authornari@gmail.com>
10379
10380	* gc.c : if ENABLE_VM_OBJSPACE is 1, rest_sweep is not defined.
10381	  remove unused declarations. [ruby-core:47004] [Bug #6837]
10382
10383Sun Aug  5 19:31:57 2012  Narihiro Nakamura  <authornari@gmail.com>
10384
10385	* gc.c: just move functions and so on. I don't touch any internal
10386	  implementation.
10387
10388Sun Aug  5 13:22:29 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10389
10390	* configure.in: use gcc-4.2 prior to clang, gcc, and cc if exist for
10391	  the use of Snow Leopard's old clang. see also r36594, r36610, r36611.
10392
10393Sun Aug  5 06:55:10 2012  Tadayoshi Funaba  <tadf@dotrb.org>
10394
10395	* ext/date/date_{core,strftime}.c: [ruby-core:46990].
10396
10397Sat Aug  4 22:56:20 2012  Narihiro Nakamura  <authornari@gmail.com>
10398
10399	* gc.c: use inline functions instead of macros, and close up
10400	  related codes for the profiler.
10401
10402Sat Aug  4 20:37:56 2012  Narihiro Nakamura  <authornari@gmail.com>
10403
10404	* gc.c (gc_mark_children): use gc_mark_ptr instead of marking
10405	  a object directly.
10406
10407Sat Aug  4 10:02:03 2012  Shugo Maeda  <shugo@ruby-lang.org>
10408
10409	* test/ruby/test_alias.rb (test_super_in_aliased_module_method):
10410	  add a test case for [ruby-dev:46028], which fails in 1.8.
10411
10412Sat Aug  4 01:56:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10413
10414	* vm_insnhelper.c (vm_search_normal_superclass): no longer needs
10415	  receiver, klass is always unique in the ancestors now.
10416
10417Sat Aug  4 01:27:40 2012  Shugo Maeda  <shugo@ruby-lang.org>
10418
10419	* insns.def (invokesuper): reverted r36612 so that super in an
10420	  aliased method will not call the same method.
10421
10422Fri Aug  3 19:26:10 2012  Shugo Maeda  <shugo@ruby-lang.org>
10423
10424	* insns.def (invokesuper): don't skip the same class.  instead, use
10425	  rb_method_entry_get_with_omod() to avoid infinite loop when
10426	  super is used with refinements. [ruby-core:30450] [Bug #3351]
10427
10428Fri Aug  3 19:21:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10429
10430	* configure.in: use clang prior to gcc only when self-compiling on
10431	  darwin.  search default compilers on other platforms.  [Bug #6816]
10432
10433Fri Aug  3 17:25:49 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10434
10435	* configure.in: move RUBY_MINGW32 after AC_PROG_CC.
10436	  RUBY_MINGW32 uses AC_TRY_CPP and it sets CC and CPP. [Bug #6816]
10437
10438	* configure.in: don't use AC_PROG_CC in AS_CASE.
10439
10440Fri Aug  3 17:21:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10441
10442	* test/runner.rb: get rid of loading previously installed gems.
10443	  [ruby-dev:46025]
10444
10445Fri Aug  3 16:40:01 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
10446
10447	* .travis.yml (notifications): [experimental] IRC notifications.
10448
10449Thu Aug  2 20:32:29 2012  Shugo Maeda  <shugo@ruby-lang.org>
10450
10451	* eval.c (rb_mod_using): new method Module#using. [experimental]
10452
10453	* eval.c (rb_mod_refine): new method Module#refine. [experimental]
10454
10455	* eval.c (f_using): new method Kernel#using. [experimental]
10456
10457Thu Aug  2 20:08:02 2012  Shugo Maeda  <shugo@ruby-lang.org>
10458
10459	* class.c, insns.def, method.h, proc.c, vm.c, vm_core.h, vm_eval.c,
10460	  vm_insnhelper.c, vm_insnhelper.h, vm_method.c: add klass to
10461	  rb_control_frame_t to implement super correctly.
10462
10463Thu Aug  2 13:23:08 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10464
10465	* configure.in (AC_PROG_CC): AC_PROG_CC tries clang at first on
10466	  darwin. [Bug #6816]
10467
10468Thu Aug  2 11:39:25 2012  Narihiro Nakamura  <authornari@gmail.com>
10469
10470	* gc.c: return true or false. Patch by Dirkjan Bussink. [Bug #6821]
10471
10472	* test/ruby/test_gc.rb: add test-case for this bug.
10473
10474Thu Aug  2 10:51:12 2012  Martin Bosslet  <Martin.Bosslet@gmail.com>
10475
10476	* ext/openssl/lib/openssl/digest.rb
10477	  test/openssl/test_digest.rb: Add Digest module function to OpenSSL
10478	  module and test it. Patch provided by Eric Hodel.
10479	  [ruby-core:46908][Feature #6819]
10480
10481Wed Aug  1 22:29:12 2012  Benoit Daloze  <eregontp@gmail.com>
10482
10483	* ext/digest/digest.c (hexencode_str_new): return an ASCII string
10484
10485	* test/digest: tests for all kind of digests encodings
10486	  [ruby-core:46792][Bug #6799]
10487
10488Wed Aug  1 05:50:53 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
10489
10490	* test/ruby/test_rubyoptions.rb (TestRubyOptions#test_encoding):
10491	  Fix test_encoding failure on Windows.
10492	  With chcp 65001, 1252 and 437, test_encoding failed. Test result
10493	  depends on locale because LANG environment variable doesn't affect
10494	  locale on Windows.
10495	  [ruby-core:46872] [Bug #6813]
10496
10497Wed Aug  1 00:33:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10498
10499	* class.c (include_class_new): fix duplication of prepended module.
10500	  since m_tbl of prepended module is always zero, copy from its
10501	  copy iclass of original.
10502
10503Tue Jul 31 18:22:34 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10504
10505	* variable.c (classname): tell if found name is permanent.  search
10506	  tmp_classpath only if class id is set.  [ruby-core:42865][Bug #6078]
10507
10508	* variable.c (rb_class_path): duplicate found temporary path.
10509
10510	* variable.c (rb_set_class_path_string, rb_set_class_path): set class
10511	  id to find classpath.
10512
10513Tue Jul 31 10:36:12 2012  Aaron Patterson <aaron@tenderlovemaking.com>
10514
10515	* ext/psych/lib/psych.rb: updated to released version.
10516
10517	* ext/psych/psych.gemspec: ditto
10518
10519Tue Jul 31 06:18:06 2012  Eric Hodel  <drbrain@segment7.net>
10520
10521	* time.c (time_sec):  Remove extra wording about leap seconds and refer
10522	  directly to Wikipedia's leap second page for further information.
10523	  [Bug #6749]
10524
10525Mon Jul 30 23:01:47 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10526
10527	* lib/rubygems/platform.rb (Gem::Platform#initialize): Support pattern
10528	  like x86_64-netbsd6.99.7.
10529
10530Mon Jul 30 21:00:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10531
10532	* variable.c (find_class_path): no retry when preferred is given.
10533
10534	* variable.c (classname): if classid is set try it to find full
10535	  qualified class path, and then try arbitrary class path.  try
10536	  tmp_classpath at last even if enclosing namespace is anonymous.
10537	  fix r36574.  [ruby-core:42865][Bug #6078]
10538
10539	* variable.c (rb_set_class_path_string, rb_set_class_path): set
10540	  tmp_classpath instead of classpath if the name is not permanent.
10541
10542Mon Jul 30 14:24:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10543
10544	* variable.c: store anonymous class path in tmp_classpath but not in
10545	  classpath.  [ruby-core:42865][Bug #6078]
10546
10547Mon Jul 30 13:11:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10548
10549	* configure.in (DLDFLAGS): on Darwin, deprecate -flat_namespace to get
10550	  rid of huge imported symbols table.
10551
10552	* configure.in (LIBRUBY_RELATIVE): libruby_so is not made when
10553	  disable-shared, so no absolute path is used for it and executable
10554	  file is runnable anywhere.
10555
10556Mon Jul 30 01:30:10 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
10557
10558	* common.mk: add a dependency. [ruby-core:46741] [Bug #6789]
10559
10560Sun Jul 29 15:44:47 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
10561
10562	* thread.c (thread_create_core): hide th->async_errinfo_mask_stack from
10563	  ObjectSpace.each_object. refix of r36539.
10564
10565Sun Jul 29 23:57:27 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10566
10567	* ext/socket/option.c (inet_ntop): use rb_w32_inet_ntop, instead of
10568	  inet_ntop directly, which is unavailable on older version Windows.
10569
10570	* win32/win32.c (rb_w32_inet_ntop): type should be const.
10571
10572Sun Jul 29 14:20:34 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
10573
10574	* thread.c (Init_Thread): does not need to set klass
10575	  explicitly.
10576
10577Sun Jul 29 06:21:04 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
10578
10579	* win32/win32.c: suppress warning redeclared on mingw64.
10580	  *_s functions are declared if MINGW_HAS_SECURE_API is defined.
10581	  Follow up r36556.
10582
10583Sun Jul 29 00:28:46 2012  Narihiro Nakamura  <authornari@gmail.com>
10584
10585	* gc.c: remove unused initialization.
10586
10587Sat Jul 28 16:26:09 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
10588
10589	* win32/win32.c (gmtime_r): use _gmtime64_s() with x86_64-w64-mingw32.
10590
10591	* win32/win32.c (localtime_r): use _localtime64_s() with
10592	  x86_64-w64-mingw32. Since FileTimeToSystemTime() seems not work with
10593	  large value under x64. Mingw-w64 doesn't have these declaration.
10594	  [ruby-core:46780] [Bug #6794]
10595
10596Fri Jul 27 18:25:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10597
10598	* io.c (rb_io_check_io): make public.
10599
10600	* process.c (check_exec_redirect): try conversion to IO on redirect
10601	  parameters.  [ruby-core:44181] [Bug #6269]
10602
10603Fri Jul 27 17:58:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10604
10605	* configure.in (RUBY_CPPOUTFILE): get rid of variable conflict so
10606	  CPPFLAGS is not duplicated.  [ruby-core:43097] [Bug #6119]
10607
10608Fri Jul 27 12:12:36 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10609
10610	* win32/mkexports.rb: should not export DllMain().
10611	  reported by luis at [ruby-core:46743] [Bug #6790], solved by
10612	  Heesob Park, and confirmed by nobu.
10613
10614Thu Jul 26 14:51:29 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
10615
10616	* test/net/http/test_https.rb (TestNetHTTPS#test_session_reuse):
10617	  localhost is not (always) 127.0.0.1.  Don't expect that.
10618
10619Thu Jul 26 07:18:38 2012    <kanemoto@ruby-lang.org>
10620
10621	* ext/json/fbuffer/fbuffer.h: avoid compilation error on AIX by
10622	   -ansi -std=iso9899:199409 (r36038). [ruby-core:46744] [Bug #6791].
10623
10624Thu Jul 26 00:42:23 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
10625
10626	* thread.c (thread_create_core, Init_Thread): hide
10627	  th->async_errinfo_queue and th->async_errinfo_mask_stack from
10628	  ObjectSpace.each_object.
10629
10630Wed Jul 25 17:41:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10631
10632	* complex.c, rational.c: compatible marshal loader for compatibilities
10633	  with 1.8.  [ruby-core:45775] [Bug #6625]
10634
10635Wed Jul 25 17:17:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10636
10637	* atomic.h: prefer GCC atomic builtins than Windows APIs, if possible,
10638	  since they are generic.
10639
10640Wed Jul 25 11:16:57 2012  Eric Hodel  <drbrain@segment7.net>
10641
10642	* lib/net/.document:  Removed.  All files in net/ should be included in
10643	  RDoc.
10644
10645Wed Jul 25 10:00:23 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10646
10647	* test/testunit/test_redefinition.rb: broken class/method names.
10648
10649Wed Jul 25 09:26:32 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10650
10651	* lib/cgi/html.rb: Use << instead of +=.
10652	  `a += b` is syntax sugar of `a = a + b`; it creates a new string
10653	  object. `a << b` is concatenation and doesn't create new object.
10654
10655Wed Jul 25 09:16:26 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10656
10657	* lib/cgi/html.rb (element_init): suppress redefine warning.
10658	  Don't define methods if they are already defined.
10659
10660Wed Jul 25 09:05:38 2012  Eric Hodel  <drbrain@segment7.net>
10661
10662	* lib/net/http.rb:  Added SSL session reuse across connections for a
10663	  single instance to speed up connection.  [Feature #5341]
10664	* NEWS:  ditto
10665	* test/net/http/test_https.rb:  Tests for #5341
10666
10667Wed Jul 25 06:54:24 2012  Eric Hodel  <drbrain@segment7.net>
10668
10669	* doc/re.rdoc:  Fix spelling
10670
10671Wed Jul 25 06:49:12 2012  Eric Hodel  <drbrain@segment7.net>
10672
10673	* re.c (rb_reg_s_last_match):  Update $~ to reference Regexp
10674	  documentation about "special global variables".  [Bug #6723]
10675
10676Wed Jul 25 06:28:56 2012  Eric Hodel  <drbrain@segment7.net>
10677
10678	* iseq.c:  Added documentation.  Patch by David Albert.  [Bug #6785]
10679
10680Wed Jul 25 03:05:06 2012  Aaron Patterson <aaron@tenderlovemaking.com>
10681
10682	* parse.y: added symbols and qsymbols productions for %i and %I
10683	  support. %i{ .. } returns a list of symbols without interpolation,
10684	  %I{ .. } returns a list of symbols with interpolation.  Thanks to
10685	  Josh Susser for inspiration of this feature. [Feature #4985]
10686
10687	* ext/ripper/eventids2.c: added ripper events for %i and %I.
10688
10689	* test/ripper/test_parser_events.rb: ripper tests
10690
10691	* test/ripper/test_scanner_events.rb: ditto
10692
10693	* test/ruby/test_array.rb: test for %i and %I behavior
10694
10695Tue Jul 24 23:34:43 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
10696
10697	* include/ruby/win32.h (rb_w32_pow): add new function.
10698	  We use powl() instead of broken pow() for x64-mingw32. This workaround
10699	  fixes test failures related to floating point numeric.
10700	  [ruby-core:46686] [Bug #6784]
10701
10702Tue Jul 24 15:01:24 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10703
10704	* win32/win32.c (rb_w32_socket, rb_w32_socketpair): remember the family
10705	  in the high word of socklist value.
10706
10707	* win32/win32.c (overlapped_socket_io, recvmsg, sendmsg, setfl): follow
10708	  above changes.
10709
10710	* win32/win32.c (rb_w32_getsockname): set remembered family to the
10711	  argument when OS's function fails.
10712
10713Tue Jul 24 12:35:13 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10714
10715	* test/ruby/test_dir_m17n.rb: remove a garbage.
10716
10717	* test/ruby/test_dir_m17n.rb: convert from ascii-8bit to other encoding
10718	  with 8bit bytes always fails.
10719
10720Tue Jul 24 12:32:18 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10721
10722	* test/ruby/test_dir_m17n.rb: sorry, typo.
10723
10724Tue Jul 24 12:13:26 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10725
10726	* test/ruby/test_dir_m17n.rb: refactoring. RE should be in the left side
10727	  of the =~ operator, and compare the result with nil is meaningless.
10728
10729Tue Jul 24 11:35:20 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10730
10731	* test/ruby/test_pack.rb (test_pack_unpack_M): was redefined
10732	  accidentally.
10733
10734Tue Jul 24 09:31:18 2012  Eric Hodel  <drbrain@segment7.net>
10735
10736	* lib/rubygems:  Updated to RubyGems 1.8.24, a bugfix release.
10737
10738Tue Jul 24 08:30:15 2012  Luis Lavena  <luislavena@gmail.com>
10739
10740	* test/ruby/test_dir_m17n.rb (create_and_check_raw_file_name): add new
10741	  helper method to ease encoding testing. Patch by Oleg Sukhodolsky.
10742	  [ruby-core:46589][Bug #6765]
10743
10744	* test/ruby/test_dir_m17n.rb (test_filename_extutf8): use filesystem
10745	  encoding when reading entries and comparing.
10746
10747	* test/ruby/test_dir_m17n.rb (test_filename_utf8_raw_name): removed.
10748
10749	* test/ruby/test_dir_m17n.rb (test_filename_utf8_raw_jp_name): split test.
10750
10751Tue Jul 24 08:09:30 2012  Luis Lavena  <luislavena@gmail.com>
10752
10753	* test/win32ole/test_win32ole_method.rb (is_ruby64?): Correct platform
10754	  used to identify mingw-w64 (x64-mingw32). Patch by Hiroshi Shirosaki.
10755	  [ruby-core:46651][Bug #6782]
10756
10757Tue Jul 24 07:22:58 2012  Eric Hodel  <drbrain@segment7.net>
10758
10759	* time.c (time_sec):  Updated description of leap seconds for accuracy.
10760	  Based on patch by Marcus Stollsteimer.  [Bug #6749]
10761
10762Tue Jul 24 07:03:11 2012  Eric Hodel  <drbrain@segment7.net>
10763
10764	* string.c (rb_str_sub):  Fixed wording of documentation to match the
10765	  replacement operation.  Minor cleanup of markup.  [Bug #6719]
10766	* string.c (rb_str_sub_bang):  Minor wording change for clarity, minor
10767	  cleanup of markup.
10768
10769Mon Jul 23 23:58:40 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10770
10771	* enc/Makefile.in (TARGET_NAME, TARGET_ENTRY): needed for EXTDLDFLAGS
10772	  on some platforms.  [ruby-core:46600] [Bug #6768]
10773
10774	* enc/depend: no longer needs tweaking DLDFLAGS for TARGET names.
10775
10776Mon Jul 23 22:48:19 2012  Tanaka Akira  <akr@fsij.org>
10777
10778	* lib/open-uri.rb: use respond_to? to test Tempfile.
10779	  [ruby-dev:45995] [Bug #6781] reported by hsbt (Hiroshi SHIBATA).
10780
10781Mon Jul 23 14:43:34 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10782
10783	* configure.in (LIBPATHENV): LIBPATH is used on AIX, but not
10784	  SHLIB_PATH which was carelessly copied from HP/UX.  suggested by
10785	  Perry Smith at [ruby-core:46397].  [Bug #6728]
10786
10787Mon Jul 23 01:55:08 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
10788
10789	* test/uri/test_generic.rb (URI#test_find_proxy): add tests with
10790	  empty *_proxy env variables.
10791
10792Mon Jul 23 01:47:26 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
10793
10794	* test/uri/test_generic.rb (URI#with_env): unset proxy related env
10795	  variables.  [Bug #6774]
10796
10797	* test/uri/test_generic.rb (URI#test_find_proxy): fix failures
10798	  when proxy related env variables already set.  [Bug #6774]
10799
10800Sun Jul 22 23:58:48 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10801
10802	* thread.c (rb_threadptr_execute_interrupts_common): increase
10803	  running_time_us on THREAD_TO_KILL like on THREAD_RUNNABLE.
10804	  This cause not to switch from a thread which is to be killed
10805	  on FreeBSD and Mac OS X. see also the test.
10806	  This issue maybe exist for long time but happens after r36430.
10807
10808Sat Jul 21 06:21:45 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10809
10810	* lib/net/http.rb: fixes for r36476. [Feature #6546]
10811	 http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20120720T030101Z.diff.html.gz
10812
10813	* lib/net/http.rb (Net::HTTP.newobj): return back for compatibility.
10814
10815	* lib/net/http.rb (Net::HTTP.new): set default_port if proxy port is
10816	  not given.
10817
10818	* lib/net/http.rb (Net::HTTP#initialize): ditto.
10819
10820	* lib/net/http.rb (Net::HTTP#proxy?): return true or false.
10821
10822	* lib/net/http.rb (Net::HTTP#proxy_address): check proxy_uri is not nil.
10823
10824	* lib/net/http.rb (Net::HTTP#proxy_port): ditto.
10825
10826Sat Jul 21 23:12:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10827
10828	* thread_pthread.c (ruby_init_stack): STACK_GROW_DIR_DETECTION is
10829	  necessary on platforms with unknown stack direction.  [Bug #6761]
10830
10831Sat Jul 21 15:13:42 2012  Shota Fukumori  <sorah@tubusu.net>
10832
10833	* lib/test/unit/testcase.rb (method_added): refactoring.
10834
10835Sat Jul 21 14:06:41 2012  Shota Fukumori  <sorah@tubusu.net>
10836
10837	* lib/test/unit/testcase.rb: warn when test_* method is redefined.
10838	  Patch by mame (Yusuke Endoh). [Feature #2643] [ruby-core:27790]
10839
10840	* test/testunit/test_redefinition.rb: Test for above.
10841
10842	* test/testunit/test4test_redefinition.rb: Ditto.
10843
10844Sat Jul 21 08:41:14 2012  Eric Hodel  <drbrain@segment7.net>
10845
10846	* lib/logger.rb:  Updated example in Logger comment to match other
10847	  examples and fixed a bug.  Patch by Marcus Stollsteimer.
10848	  [Bug #6759]
10849
10850Fri Jul 20 17:20:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10851
10852	* random.c (rb_random_real): refine error message.
10853
10854Fri Jul 20 11:03:17 2012  Eric Hodel  <drbrain@segment7.net>
10855
10856	* NEWS:  Updated net/http for automatic proxy detection (#6546) and
10857	  automatic gzip and deflate compression (#6492, #6494).
10858
10859Fri Jul 20 10:55:38 2012  Eric Hodel  <drbrain@segment7.net>
10860
10861	* lib/net/http.rb:  Net::HTTP now automatically detects and uses
10862	  proxies from the environment.  A proxy may also be specified as
10863	  before.
10864
10865	  Net::HTTP::Proxy still creates anonymous classes, but these classes
10866	  are only used to store configuration information.  When an HTTP
10867	  instance is created the configuration is now copied.
10868
10869	  Additionally, Net::HTTP::ProxyDelta is no longer used by Net::HTTP
10870
10871	  [Feature #6546]
10872	* lib/open-uri.rb:  Moved URI::Generic#find_proxy to uri/generic.
10873	* lib/uri/generic.rb:  Imported find_proxy from open-uri.
10874	* test/open-uri/test_open-uri.rb:  Moved proxy-discovery tests to URI.
10875	* test/uri/test_generic.rb:  Imported proxy-discovery tests from
10876	  open-uri.
10877	* test/net/http/test_http.rb:  Added tests for proxy behavior.
10878
10879Fri Jul 20 09:34:11 2012  Eric Hodel  <drbrain@segment7.net>
10880
10881	* test/socket/test_socket.rb:  Ignore IPv6 unique local addresses on OS
10882	  X (iCloud Back to my Mac addresses) for test_udp_socket since they do
10883	  not act as loopback addresses.  [Bug #6692]
10884
10885Fri Jul 20 09:32:14 2012  Eric Hodel  <drbrain@segment7.net>
10886
10887	* ext/socket/raddrinfo.c (addrinfo_ipv6_unique_local_p):  Added
10888	  Addrinfo#ipv6_unique_local? to detect RFC 4193 unique local
10889	  addresses.  Part of #6692
10890	* ext/socket/rubysocket.h:  Add IN6_IS_ADDR_UNIQUE_LOCAL macro if
10891	  missing.
10892	* test/socket/test_addrinfo.rb:  Test for ipv6_unique_local?
10893
10894Fri Jul 20 07:40:32 2012  Eric Hodel  <drbrain@segment7.net>
10895
10896	* lib/net/http/response.rb:  Automatically inflate gzip and
10897	  deflate-encoded response bodies.  [Feature #6942]
10898	* lib/net/http/generic_request.rb:  Automatically accept gzip and
10899	  deflate content-encoding for requests.  [Feature #6494]
10900	* lib/net/http/request.rb:  Updated documentation for #6494.
10901	* lib/net/http.rb:  Updated documentation for #6492 and #6494, removed
10902	  Content-Encoding handling now present in Net::HTTPResponse.
10903	* test/net/http/test_httpresponse.rb:  Tests for #6492
10904	* test/net/http/test_http_request.rb:  Tests for #6494
10905	* test/open-uri/test_open-uri.rb (test_content_encoding):  Updated test
10906	  for automatic content-encoding handling.
10907
10908Fri Jul 20 03:42:54 2012  NARUSE, Yui  <naruse@ruby-lang.org>
10909
10910	* thread_pthread.c: use #ifdef, not #if.
10911
10912Thu Jul 19 15:08:40 2012  Koichi Sasada  <ko1@atdot.net>
10913
10914	* thread.c (rb_thread_s_control_interrupt,
10915	            rb_thread_s_check_interrupt): added for
10916	  Thread.control_interrupt and Thread.check_interrupt.
10917	  See details on rdoc.
10918	  I'll make an ticket for this feature.
10919
10920	* test/ruby/test_thread.rb: add a test for Thread.control_interrupt.
10921
10922	* thread.c (rb_threadptr_raise): make a new exception object
10923	  even if argc is 0.
10924
10925	* thread.c (rb_thread_kill): kill thread immediately if target thread
10926	  is current thread.
10927
10928	* vm_core.h (RUBY_VM_CHECK_INTS_BLOCKING): added.
10929	  CHECK_INTS while/after blocking operation.
10930
10931	* vm_core.h (RUBY_VM_CHECK_INTS): require rb_thread_t ptr.
10932
10933	* cont.c (fiber_switch): use replaced RUBY_VM_CHECK_INTS().
10934
10935	* eval.c (ruby_cleanup): ditto.
10936
10937	* insns.def: ditto.
10938
10939	* process.c (rb_waitpid): ditto.
10940
10941	* vm_eval.c (vm_call0): ditto.
10942
10943	* vm_insnhelper.c (vm_call_method): ditto.
10944
10945Thu Jul 19 22:46:48 2012  Tanaka Akira  <akr@fsij.org>
10946
10947	* test/ruby/test_io.rb: remove temporally files early.
10948
10949Thu Jul 19 15:38:35 2012  Shugo Maeda  <shugo@ruby-lang.org>
10950
10951	* variable.c (rb_mod_class_variables): return inherited variables
10952	  except when the optional argument is set to false.
10953	  [ruby-dev:44034] [Bug #4971]
10954
10955	* variable.c (rb_mod_constants): fix typo in documentation.
10956
10957Thu Jul 19 14:30:43 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10958
10959	* internal.h: move mark function declarations that should be private.
10960
10961Thu Jul 19 14:18:22 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10962
10963	* ext/socket/init.c (rsock_init_sock): need to update max fd on all
10964	  platforms.
10965
10966Thu Jul 19 14:15:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10967
10968	* thread.c (rb_gc_mark_threads): remove deprecated function.
10969
10970Thu Jul 19 13:28:03 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10971
10972	* test/net/http/test_http.rb (TestNetHTTPLocalBind#test_bind_to_local*):
10973	  re-enable the tests because now it's OK on windows.
10974
10975Thu Jul 19 13:26:25 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
10976
10977	* ext/socket/extconf.rb: now enable IPv6 by default on mswin.
10978
10979Thu Jul 19 09:33:46 2012  Aaron Patterson <aaron@tenderlovemaking.com>
10980
10981	* ext/psych/emitter.c (initialize): allow a configuration object to be
10982	  passed to the constructor so that mutation isn't required after
10983	  instantiation.
10984
10985	* ext/psych/lib/psych/handler.rb: add configuration object
10986
10987	* ext/psych/lib/psych/visitors/emitter.rb: use configuration object if
10988	  extra configuration is present.
10989
10990Thu Jul 19 08:20:25 2012  Tanaka Akira  <akr@fsij.org>
10991
10992	* test/ruby/test_file.rb: remove temporally files early.
10993
10994Thu Jul 19 07:37:41 2012  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
10995
10996	* test/drb/drbtest.rb: fixed: can't delete unix domain sockets problem.
10997
10998Thu Jul 19 03:41:20 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
10999
11000	* bignum.c: Added #include <strings.h> for ffs(). Patch by Perry
11001	  Smith. Thank you. [Bug #6748]
11002
11003Thu Jul 19 01:56:02 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
11004
11005	* include/ruby/intern.h (rb_num_zerodiv): Added NORETURN.
11006	  Patched by Xi Wang. [Bug #6736]
11007
11008Wed Jul 18 23:57:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11009
11010	* pack.c (pack_pack): round down too long uuencode width.  folding
11011	  width in uuencode format cannot be longer than 63 bytes.
11012
11013Wed Jul 18 23:04:18 2012  NARUSE, Yui  <naruse@ruby-lang.org>
11014
11015	* ext/dbm/dbm.c (fdbm_empty_p): fix wrong condition introduced in r36438.
11016
11017	* ext/sdbm/init.c (fsdbm_empty_p): ditto.
11018
11019Wed Jul 18 23:08:57 2012  Tanaka Akira  <akr@fsij.org>
11020
11021	* test/ruby/test_beginendblock.rb: remove temporally files early.
11022
11023Wed Jul 18 22:43:02 2012  Tanaka Akira  <akr@fsij.org>
11024
11025	* test/ruby/test_autoload.rb: remove temporally files early.
11026
11027Wed Jul 18 21:59:46 2012  Tanaka Akira  <akr@fsij.org>
11028
11029	* test/ruby/test_argf.rb: use temporally directory.
11030
11031Wed Jul 18 19:41:19 2012  Tanaka Akira  <akr@fsij.org>
11032
11033	* test/openssl/test_config.rb: remove temporally files early.
11034
11035Wed Jul 18 17:45:26 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11036
11037	* error.c (rb_builtin_type_name): map by index.
11038
11039Wed Jul 18 16:17:40 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11040
11041	* lib/mkmf.rb (have_framework): get rid of separating -framework
11042	  option and its argument and dealing with the argument as a library
11043	  or an object name.  if $LDFLAGS were an array...
11044
11045Wed Jul 18 16:09:10 2012  Shugo Maeda  <shugo@ruby-lang.org>
11046
11047	* ext/curses/extconf.rb: support PDCurses.  patched by Luis Lavena.
11048	  [ruby-core:46485] [Feature #6735]
11049
11050Wed Jul 18 15:50:25 2012  Shugo Maeda  <shugo@ruby-lang.org>
11051
11052	* parse.y (primary): allow an empty grouped expression as the
11053	  operand of the not operator (e.g., not ()).
11054	  [ruby-core:45976] [Bug #6674]
11055
11056	* parse.y (parser_yylex): show no warning for a grouped expression
11057	  as the operand of the not operator (e.g., not (a)) or as an
11058	  argument of a method call without parentheses (e.g., foo (a)).
11059	  [ruby-core:39050] [Bug #5214]
11060
11061Wed Jul 18 15:33:21 2012  Koichi Sasada  <ko1@atdot.net>
11062
11063	* thread.c (rb_thread_call_without_gvl2): added.
11064	  it can skip last CHECK_INTS.  See document for more details.
11065	  Document about it was updated a bit.
11066
11067	* include/ruby/thread.h (decl. of rb_thread_call_without_gvl2): added.
11068
11069	* thread.c (rb_thread_call_with_gvl): remove "EXPERIMENTAL!"
11070	  warning from a document.
11071
11072Wed Jul 18 14:53:21 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11073
11074	* configure.in (EXTDLDFLAGS): split options for each extension
11075	  libraries, and unused in ruby.pc.  [Bug #6734]
11076
11077	* lib/mkmf.rb (MakeMakefile#configuration): add EXTDLDFLAGS.
11078
11079Wed Jul 18 14:47:23 2012  Koichi Sasada  <ko1@atdot.net>
11080
11081	* thread.c: fix last commit miss.
11082
11083Wed Jul 18 14:16:51 2012  Koichi Sasada  <ko1@atdot.net>
11084
11085	* thread.c (rb_threadptr_async_errinfo_*): manage async errors queue.
11086	  Async events such as an exception throwed by Thread#raise,
11087	  Thread#kill and thread termination (after main thread termination)
11088	  will be queued to th->async_errinfo_queue.
11089	  - clear: clear the queue.
11090	  - enque: enque err object into queue.
11091	  - deque: deque err object from queue.
11092	  - active_p: return 1 if the queue should be checked.
11093	  rb_thread_t#thrown_errinfo was removed.
11094
11095	* vm_core.h: add declarations of rb_threadptr_async_errinfo_*.
11096	  remove rb_thread_t#thrown_errinfo field and
11097	  add rb_thread_t#async_errinfo_queue (queue body: Array),
11098	      rb_thread_t#async_errinfo_queue_checked (flag),
11099	      rb_thread_t#async_errinfo_mask_stack(Array, not used yet).
11100
11101	* vm.c (rb_thread_mark): fix a mark function.
11102
11103	* cont.c (rb_fiber_start): enque an error.
11104
11105	* process.c (after_fork): clear async errinfo queue.
11106
11107Wed Jul 18 14:25:55 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
11108
11109	* pack.c: (ditto) bitwise operations are not char.  Apply explicit
11110	  casts on them.
11111
11112Wed Jul 18 12:59:50 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
11113
11114	* encoding.c (load_encoding): explicit cast  to suppress  warning.
11115	  Though the  cast truncates some bits, from  heuristic analysis I
11116	  believe it is OK to do so here.
11117
11118	* bignum.c (rb_cstr_to_inum): ditto.
11119
11120Wed Jul 18 12:55:54 2012  NARUSE, Yui  <naruse@ruby-lang.org>
11121
11122	* lib/benchmark.rb: Fix Benchmark.benchmark output with an empty
11123	  caption.  patched by Benoit Daloze. [ruby-core:45719] [Bug #6610]
11124
11125Wed Jul 18 10:00:54 2012  Eric Hodel  <drbrain@segment7.net>
11126
11127	* lib/debug.rb:  Added toplevel documentation.  Based on patch by Oscar
11128	  Del Ben.  [Bug #6743], fixes #146 on github.
11129
11130Wed Jul 18 09:33:59 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11131
11132	* test/win32ole/test_win32ole_event.rb (TestWIN32OLE_EVENT): use
11133	  standard skip method to skip tests.
11134
11135Wed Jul 18 09:26:45 2012  Eric Hodel  <drbrain@segment7.net>
11136
11137	* lib/logger.rb:  Updated typos and output to match modern Logger
11138	  output.  Patch by Marcus Stollsteimer.  [Bug #6738]
11139
11140Wed Jul 18 07:59:29 2012  Takeyuki FUJIOKA  <xibbar@ruby-lang.org>
11141
11142	* lib/cgi/util.rb (CGI.escapeHTML,unescapeHTML): Add &apos; for HTML5
11143	  escaping.
11144	  [Feature #6620]
11145
11146Tue Jul 17 22:17:13 2012  Tanaka Akira  <akr@fsij.org>
11147
11148	* lib/open-uri.rb: call io.close! for Tempfile.
11149
11150Tue Jul 17 16:41:32 2012  NARUSE, Yui  <naruse@ruby-lang.org>
11151
11152	* proc.c (rb_proc_arity): return normal value (not -n-1) if it is not
11153	  a labmda, or it is a labmda and no arg_opts. [Bug #5694]
11154
11155Tue Jul 17 03:56:34 2012  Aaron Patterson <aaron@tenderlovemaking.com>
11156
11157	* ext/psych/lib/psych/visitors/to_ruby.rb: strings with YAML anchors
11158	  are properly referenced. Patched by Joe Rafaniello via Github:
11159	    https://github.com/tenderlove/psych/pull/69
11160	* ext/psych/lib/psych/visitors/yaml_tree.rb: ditto
11161	* test/psych/test_alias_and_anchor.rb: test for change
11162
11163Mon Jul 16 23:20:24 2012  Tanaka Akira  <akr@fsij.org>
11164
11165	* bignum.c (rb_integer_float_cmp): use FIXNUM_MIN and FIXNUM_MAX,
11166	  instead of LONG_MIN and LONG_MAX.
11167
11168Mon Jul 16 22:50:41 2012  Tanaka Akira  <akr@fsij.org>
11169
11170	* numeric.c (flo_to_s): use the exponential form if the integer part
11171	  is longer than or equal DBL_DIG.
11172	  [ruby-dev:45960] [ruby-trunk - Bug #6741]
11173
11174Mon Jul 16 22:01:00 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
11175
11176	* ext/readline/readline.c: fixed docs. [Bug #6740][ruby-core:46501]
11177	  patched by Nobuhiro IMAI.
11178
11179Mon Jul 16 19:24:01 2012  Tanaka Akira  <akr@fsij.org>
11180
11181	* bignum.c (rb_integer_float_eq): new function.
11182	  (rb_big_eq): use rb_integer_float_eq.
11183
11184	* internal.h (rb_integer_float_eq): declared.
11185
11186	* numeric.c (flo_eq): use rb_integer_float_eq.
11187	  (fix_equal): ditto.
11188
11189Mon Jul 16 19:02:31 2012  Tanaka Akira  <akr@fsij.org>
11190
11191	* bignum.c (rb_integer_float_cmp): rename a local variable.
11192
11193Mon Jul 16 18:40:26 2012  Tanaka Akira  <akr@fsij.org>
11194
11195	* bignum.c (rb_integer_float_cmp): renamed from rb_big_float_cmp.
11196
11197	* internal.h: follow the above change.
11198
11199	* numeric.c: ditto.
11200
11201Mon Jul 16 17:57:54 2012  Tanaka Akira  <akr@fsij.org>
11202
11203	* bignum.c (rb_big_float_cmp): compare an integer and float precisely.
11204	  [ruby-core:31376] [Bug #3589] reported by Tomasz Wegrzanowski.
11205
11206Mon Jul 16 17:29:45 2012  Tanaka Akira  <akr@fsij.org>
11207
11208	* bignum.c (rb_big_float_cmp): support fixnum for argument x.
11209
11210	* numeric.c (fix_equal): use rb_big_float_cmp.
11211	  (fix_cmp): ditto.
11212	  (fix_gt): ditto.
11213	  (fix_ge): ditto.
11214	  (fix_lt): ditto.
11215	  (fix_le): ditto.
11216	  (flo_eq): ditto.
11217	  (flo_cmp): use rb_big_float_cmp for fixnum argument.
11218	  (flo_gt): ditto.
11219	  (flo_ge): ditto.
11220	  (flo_lt): ditto.
11221	  (flo_le): ditto.
11222
11223Mon Jul 16 17:05:53 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
11224
11225	* test/fileutils/test_fileutils.rb: add test for FileUtils#uptodate?
11226
11227Mon Jul 16 16:56:12 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
11228
11229	* lib/fileutils.rb (FileUtils.uptodate?): remove useless parameter.
11230	  patched by Oscar Del Ben.[Bug #6708][ruby-core:46256]
11231
11232Mon Jul 16 15:37:56 2012  Tanaka Akira  <akr@fsij.org>
11233
11234	* bignum.c (rb_big_eq): use rb_big_float_cmp.
11235
11236Mon Jul 16 15:00:45 2012  Tanaka Akira  <akr@fsij.org>
11237
11238	* internal.h (rb_big_float_cmp): declared.
11239
11240	* bignum.c (rb_big_float_cmp): extracted from rb_big_cmp and big_op.
11241	  (rb_big_cmp): use rb_big_float_cmp.
11242	  (big_op): ditto.
11243
11244	* numeric.c (flo_cmp): use rb_big_float_cmp.
11245	  (flo_gt): ditto.
11246	  (flo_ge): ditto.
11247	  (flo_lt): ditto.
11248	  (flo_le): ditto.
11249
11250Mon Jul 16 14:14:21 2012  Tanaka Akira  <akr@fsij.org>
11251
11252	* bignum.c (enum big_op_t): new type.
11253	  (big_op): use enum big_op_t.
11254	  (big_gt): ditto.
11255	  (big_ge): ditto.
11256	  (big_lt): ditto.
11257	  (big_le): ditto.
11258
11259Sat Jul 14 18:18:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11260
11261	* array.c (rb_get_values_at): fill with nil out of range.
11262	  [ruby-core:43678] [Bug #6203]
11263
11264Sat Jul 14 17:17:55 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
11265
11266	* cont.c (cont_restore_0): improve docs. [Bug #6706][ruby-core:46243]
11267	  patched by Oscar Del Ben via https://github.com/ruby/ruby/pull/140
11268
11269Sat Jul 14 17:08:13 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11270
11271	* hash.c (rb_hash_s_create): raise an exception, when input elements
11272	  are not one or two elements arrays.  [ruby-core:39945] [Bug #5406]
11273
11274Sat Jul 14 16:16:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11275
11276	* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): use
11277	  Array#uniq!.
11278
11279	* lib/test/unit.rb (Test::Unit::Runner#deal): deal tasks to workers.
11280
11281	* lib/test/unit.rb (Test::Unit::Runner#quit_workers): close and kill
11282	  all workers.
11283
11284	* lib/test/unit.rb (Test::Unit::Runner#delete_worker): delete dead
11285	  worker from working set.
11286
11287	* lib/test/unit.rb (Test::Unit::Runner#launch_worker): add new worker
11288	  to working set.
11289
11290	* lib/test/unit.rb (Test::Unit::Runner#launch_worker): extract.
11291
11292	* lib/test/unit.rb (Test::Unit::Runner#start_watchdog): extract.
11293
11294	* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): move
11295	  initializations with nothing to release outside begin/ensure.
11296
11297Sat Jul 14 16:04:24 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11298
11299	* array.c (rb_ary_join): should not infected by separator if it is not
11300	  used.  [ruby-core:42161][Bug #5902]
11301
11302Sat Jul 14 02:31:55 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11303
11304	* include/ruby/intern.h (rb_thread_blocking_region): fix declarations
11305	  prototypes without arguments in C++ have different meanings than C.
11306
11307Thu Jul 12 12:32:26 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11308
11309	* test/runner.rb: skip default gems to get rid of loading old versions
11310	  before installation.
11311
11312Thu Jul 12 11:44:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11313
11314	* string.c (rb_str_new_frozen): since the result object should have
11315	  same tainted/untrusted bits with the original object, return new
11316	  object if the shared object unmatch.  [ruby-core:39745][Bug #5374]
11317
11318Thu Jul 12 10:46:39 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11319
11320	* test/net/http/test_http.rb (TestNetHTTPLocalBind#test_bind_to_local*):
11321	  cannot cross between network interfaces on Windows, so skip this test
11322	  until we find better test.
11323
11324Thu Jul 12 08:48:33 2012  Ryan Davis  <ryand-ruby@zenspider.com>
11325
11326	* lib/minitest/*: Imported minitest 3.2.0 (r7598)
11327	* test/minitest/*: ditto
11328
11329Thu Jul 12 05:11:41 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11330
11331	* insns.def (defined): use method entry and id in cfp for proper
11332	  superclass, since klass in iseq is shared by dynamically defined
11333	  methods from the same block.  [ruby-core:45831][Bug #6644]
11334
11335Thu Jul 12 01:49:07 2012  NARUSE, Yui  <naruse@ruby-lang.org>
11336
11337	* lib/net/http.rb (Net::HTTP#connect): use local_host and local_port
11338	  if specified. patched by Ricardo Amorim [Feature #6617]
11339
11340Wed Jul 11 17:36:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11341
11342	* ext/extmk.rb: append ENCOBJS to DLDOBJS but not EXTSOLIBS which is
11343	  not a target, to compile enc/encinit.c.
11344
11345Wed Jul 11 12:38:20 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11346
11347	* ext/openssl/ossl_pkey_ec.c (ossl_ec_point_mul): nonstatic initializer
11348	  of an aggregate type is a C99ism.
11349
11350	* ext/openssl/ossl_pkey_ec.c (ossl_ec_point_mul): get rid of VC++
11351	  warnings.
11352
11353Mon Jul  9 16:11:30 2012  Yuki Yugui Sonoda  <yugui@google.com>
11354
11355	* vm_eval.c (rb_eval_string_from_file,
11356	  rb_eval_string_from_file_protect): new functions to replace
11357	  rb_compile_main_from_string() and ruby_eval_main().
11358
11359	* nacl/pepper_ruby.c: Follows the change in vm_eval.c
11360
11361Mon Jul  9 14:05:42 2012  Yuki Yugui Sonoda  <yugui@google.com>
11362
11363	Reverts a half of r36079. As we discussed on ruby-dev@ and IRC,
11364	we do not need to disclose intermediate representation of program.
11365	The program embedding CRuby should use rb_eval_string family.
11366	* include/ruby/ruby.h (ruby_opaque_t): removed.
11367	  (ruby_compile_main_from_file, ruby_compile_main_from_string,
11368	   ruby_eval_main): removed.
11369
11370	* eval.c (ruby_eval_main_internal): became ruby_exec_internal() again.
11371	  (ruby_eval_main): removed.
11372
11373	* ruby.c (PREPARE_PARSE_MAIN) reverted.
11374	  (parse_and_compile_main, ruby_compile_main_from_file,
11375	   ruby_compile_main_from_string): removed
11376
11377Wed Jul 11 10:16:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11378
11379	* include/ruby.h (HAVE_RUBY_THREAD_H): to show ruby/thread.h to be
11380	  available.  fixup of r36355.
11381
11382Wed Jul 11 03:26:47 2012  Eric Hodel  <drbrain@segment7.net>
11383
11384	* ext/zlib/zlib.c:  Added streaming support to inflate processing.
11385	  This allows zlib streams to be processed without huge memory growth.
11386	  [Feature #6612]
11387	* NEWS:  ditto
11388	* ext/zlib/zlib.c (zstream_expand_buffer):  Uses rb_yield when a block
11389	  is given for streaming support.  Refactored to use
11390	  zstream_expand_buffer_into to remove duplicate code.
11391	* ext/zlib/zlib.c (zstream_expand_buffer_protect):  Added wrapper
11392	  function to pass jump state back through GVL-free section to allow
11393	  zstream clean-up before terminating the ruby call.
11394	* ext/zlib/zlib.c (zstream_expand_buffer_without_gvl):  Acquire GVL to
11395	  yield processed chunk of output stream.
11396	* ext/zlib/zlib.c (zstream_detach_buffer):  When a block is given,
11397	  returns Qnil mid-stream and yields the output buffer at the end of
11398	  the stream.
11399	* test/zlib/test_zlib.rb:  Updated tests
11400
11401Tue Jul 10 22:57:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11402
11403	* include/ruby/thread.h: new header file for thread stuff.
11404
11405	* thread.c (rb_thread_call_without_gvl): export.  [Feature#4328]
11406	  returns void* instead of VALUE.  [Feature #5543]
11407
11408	* thread.c (rb_thread_blocking_region): deprecate.  [ruby-core:46295]
11409
11410Tue Jul 10 10:48:59 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11411
11412	* include/ruby/win32.h (NT, NtInitialize): removed unused old macros.
11413
11414Tue Jul 10 10:43:37 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11415
11416	* configure.in: removed --enable/disable-win95 options. (see r36342)
11417
11418Tue Jul 10 00:44:41 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
11419
11420	* include/ruby/ruby.h: Removed RUBY_GLOBAL_SETUP completely. It is
11421	  no meaning definition since r24894.
11422	* main.c: ditto.
11423	* nacl/pepper_main.c: ditto.
11424
11425Mon Jul  9 23:59:36 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
11426
11427	* dln.c: Simplify and make consistent an ifdef for Mac OS X.
11428	* ext/socket/rubysocket.h: ditto.
11429	* ext/tk/stubs.c: ditto.
11430	* io.c: ditto.
11431	* process.c: ditto.
11432	* signal.c: ditto.
11433	* vm_dump.c: ditto.
11434
11435Mon Jul  9 17:37:35 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11436
11437	* win32/win32.c (win95_stat): removed unnecessary macro.
11438
11439Mon Jul  9 17:22:16 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11440
11441	* win32/configure.bat, win32/setup.mak, win32/Makefile.sub: omitted
11442	  Win9x support.  removed --enable/disable-win95 options.
11443
11444	* include/ruby/win32.h, file.c, win32/win32.c: ditto.
11445
11446	* win32/README.win32: ditto.
11447
11448Mon Jul  9 13:28:34 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11449
11450	* configure.in (DLDFLAGS): use TARGET_ENTRY to specify an entry point
11451	  instead of TARGET which may contain non-identifier characters.
11452
11453	* lib/mkmf.rb (create_makefile): add TARGET_NAME which is the first
11454	  part consists of only word characters.  [ruby-core:46248][Bug #6709]
11455
11456Sun Jul  8 07:36:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11457
11458	* parse.y (shadowing_lvar_gen, warn_unused_var): no warnings for
11459	  variables starting with _.  [ruby-core:46160][Feature #6693]
11460
11461Sat Jul  7 23:07:30 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
11462
11463	* test/csv/test_features.rb: add require for Tempfile.
11464	* test/csv/test_serialization.rb: ditto.
11465
11466Fri Jul  6 06:49:50 2012  Eric Hodel  <drbrain@segment7.net>
11467
11468	* array.c (rb_ary_aref):  Added a description of the behavior of
11469	  index positioning.  [Bug #6680]
11470	* array.c (rb_ary_aset):  ditto.  Reordered sentences for clarity.
11471	* string.c (rb_str_aref_m):  Added a description of the behavior of
11472	  index positioning
11473
11474Fri Jul  6 05:38:44 2012  Eric Hodel  <drbrain@segment7.net>
11475
11476	* string.c (rb_str_bytesize):  Improve documentation.  Patch by Oscar
11477	  Del Ben from github issue #138.
11478	* string.c (rb_str_empty):  ditto.
11479	* string.c (rb_str_times):  ditto.
11480	* string.c (rb_str_dump):  ditto.
11481	* string.c (rb_str_center):  ditto.
11482
11483Fri Jul  6 04:05:59 2012  Eric Hodel  <drbrain@segment7.net>
11484
11485	* ext/zlib/zlib.c (zstream_expand_buffer_without_gvl):  Use
11486	  ruby_xrealloc() to avoid crash with CALC_EXACT_MALLOC_SIZE.
11487
11488Thu Jul  5 17:32:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11489
11490	* internal.h: move ThreadShield declarations from intern.h.
11491
11492Thu Jul  5 16:00:24 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11493
11494	* thread.c (ThreadShield): rename from Barrier.
11495
11496Thu Jul  5 15:14:50 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11497
11498	* bootstraptest/runner.rb (show_progress): refine error output. do not
11499	  count non-empty error message, but just warn.
11500
11501	* bootstraptest/runner.rb (error): show errors immediately if tty.
11502
11503Thu Jul  5 12:28:11 2012  Akinori MUSHA  <knu@iDaemons.org>
11504
11505	* test/net/http/test_httpresponses.rb: Add a test file for
11506	  Net::HTTPResponses and put a test case for the previous bug.
11507
11508Thu Jul  5 06:33:52 2012  Mark Dodwell <mark@mkdynamic.co.uk>
11509
11510	* lib/net/http/responses.rb: Fix 4xx classes to inherit correctly
11511	  from Net::HTTPClientError. [Bug #6700]
11512
11513Wed Jul  4 21:55:35 2012  NARUSE, Yui  <naruse@ruby-lang.org>
11514
11515	* ruby.c (proc_options): warn only if -K and -w option is specified.
11516	  see also r36274 [Feature #5206]
11517
11518Wed Jul  4 21:41:44 2012  Naohisa Goto  <ngotogenome@gmail.com>
11519
11520	* gc.c, atomic.h (ATOMIC_SIZE_*): moved from gc.c to atomic.h
11521	  [ruby-dev:45909]
11522
11523Wed Jul  4 19:13:15 2012  Masaki Suketa <masaki.suketa@nifty.ne.jp>
11524
11525	* test/win32ole/test_win32ole.rb (test_s_codepage_changed):
11526	  FileSystemObject only supports ANSI or UTF-16LE encoding.
11527	  Patch by h.shirosaki (Hiroshi Shirosaki) [ruby-trunk - Bug #6650]
11528
11529Wed Jul  4 11:52:12 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11530
11531	* gc.c (ATOMIC_SIZE_*): 64bit Windows support.
11532
11533Wed Jul  4 11:11:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11534
11535	* eval.c (rb_frame_callee, rb_f_callee_name): fix to return the
11536	  called id.  this longstanding bug has been caused and blocked by
11537	  the structure of old rb_control_frame_t and rb_iseq_t.
11538
11539	* vm_insnhelper.c (vm_push_frame): set proper method entry.
11540
11541Wed Jul  4 08:29:31 2012  Eric Hodel  <drbrain@segment7.net>
11542
11543	* array.c (rb_ary_aref):  Updated documentation to indicate the
11544	  starting index is an index into the array or string.  Updated
11545	  examples to show behavior of indexes at the end of an array or
11546	  string.  Based on patch by Marcus Stollsteimer.  [Bug #6680]
11547	* array.c (rb_ary_aset):  ditto.
11548	* string.c (rb_str_aref):  ditto.  Also added descriptive argument
11549	  names to call-seq section.
11550
11551Wed Jul  4 07:05:59 2012  Eric Hodel  <drbrain@segment7.net>
11552
11553	* test/zlib/test_zlib.rb (test_inflate_partial_input):  Added test for
11554	  inflating incomplete zlib streams.
11555
11556Tue Jul  3 23:14:16 2012  Naohisa Goto  <ngotogenome@gmail.com>
11557
11558	* gc.c (ATOMIC_SIZE_EXCHANGE): fix function name on Solaris [Bug #6689]
11559	  [ruby-dev:45904]
11560
11561Tue Jul  3 16:07:49 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11562
11563	* gc.c (vm_malloc_fixup, vm_xrealloc, vm_xfree, after_gc_sweep): use
11564	  atomic operations to update malloc_params.
11565
11566Tue Jul  3 14:50:16 2012  Eric Hodel  <drbrain@segment7.net>
11567
11568	* ext/zlib/zlib.c (zstream_run_func):  Don't exit run loop for buffer
11569	  error.  [Feature #6615]
11570	* ext/zlib/zlib.c:  Fix style to match existing functions.
11571
11572Tue Jul  3 12:05:51 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11573
11574	* ext/dl/cfunc.c (rb_dlcfunc_call): also needed the workaround for VC8
11575	  for x64.  [ruby-dev:45875] [Bug #6676]
11576	  reported by aves_ramphastos (Seigo Ishigane)
11577
11578Tue Jul  3 11:56:46 2012  Eric Hodel  <drbrain@segment7.net>
11579
11580	* ext/zlib/zlib.c (zstream_detach_buffer):  Refactored tainting of
11581	  output string, moving it from the callee to zstream_detach_buffer.
11582	* ext/zlib/zlib.c (rb_zstream_finish):  ditto
11583	* ext/zlib/zlib.c (rb_zstream_flush_next_out):  ditto
11584	* ext/zlib/zlib.c (rb_deflate_deflate):  ditto
11585	* ext/zlib/zlib.c (rb_deflate_flush):  ditto
11586	* ext/zlib/zlib.c (rb_inflate_inflate):  ditto
11587
11588Tue Jul  3 11:16:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11589
11590	* common.mk (runnable): make symbolic links to run in build directory.
11591
11592Tue Jul  3 10:46:06 2012  NARUSE, Yui  <naruse@ruby-lang.org>
11593
11594	* ruby.c (proc_options): warn if -K option is specified. [Feature #5206]
11595
11596Tue Jul  3 06:12:13 2012  Eric Hodel  <drbrain@segment7.net>
11597
11598	* object.c (Init_Object):  Added RDoc location pointers for
11599	  Kernel#methods, Kernel#protected_methods, Kernel#private_methods and
11600	  Kernel#public_methods.  [Bug #6666]
11601
11602Tue Jul  3 06:02:54 2012  Eric Hodel  <drbrain@segment7.net>
11603
11604	* ext/zlib/zlib.c (zstream_run):  Process zlib streams without GVL.
11605	  [Feature #6615]
11606	* NEWS:  ditto.
11607
11608Mon Jul  2 22:13:04 2012  Tanaka Akira  <akr@fsij.org>
11609
11610	* thread.c (rb_thread_aref): add explanation for why Thread#[] and
11611	  Thread#[]= are fiber-local and not thread-local.
11612	  reported by Julien A.  [ruby-core:41606] [ruby-trunk - Bug #5750]
11613
11614Mon Jul  2 21:25:55 2012  Tanaka Akira  <akr@fsij.org>
11615
11616	* time.c (timew_out_of_timet_range): specialization for
11617	  SIZEOF_TIME_T == SIZEOF_INT64_T.
11618
11619Mon Jul  2 17:06:32 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11620
11621	* class.c (rb_include_module): include modules after the origin.
11622
11623	* class.c (include_modules_at): skip prepended modules.
11624
11625	* class.c (rb_prepend_module): now basic.klass in ICLASS refers the
11626	  old original class/module.  [ruby-dev:45868][Bug #6662]
11627
11628	* class.c (rb_mod_ancestors): ditto.
11629
11630	* vm_method.c (search_method): search method entry from the origin
11631	  iclass.
11632
11633Mon Jul  2 05:54:58 2012  Tadayoshi Funaba  <tadf@dotrb.org>
11634
11635	* ext/date/date_core.c: [ruby-core:46058].
11636
11637Mon Jul  2 05:35:43 2012  Tadayoshi Funaba  <tadf@dotrb.org>
11638
11639	* ext/date/date_core.c (d_lite_marshal_load): accepts old dump.
11640
11641Mon Jul  2 03:21:53 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
11642
11643	* README.EXT.ja: fixed args of have_struct_member() ,
11644	  create_makefile() same as r35977. however, mkmf.rb include
11645	  no Japanese-docs, so Appendix C was not removed. [Bug #6597]
11646
11647Fri Jun 29 05:08:41 2012  NARUSE, Yui  <naruse@ruby-lang.org>
11648
11649	* lib/test/unit/parallel.rb: workaround fix for rubygems.
11650	  RubyGems can't find rake if the source directory is not equal to
11651	  the directory which is running the test. [Bug #6604]
11652
11653Thu Jun 28 20:33:15 2012  Luis Lavena  <luislavena@gmail.com>
11654
11655	* test/win32ole/test_win32ole.rb (test_s_codepage_changed):
11656	  FileSystemObject only supports ANSI or UTF-16LE encoding.
11657	  Patch by bosko (Bosko Ivanisevic) [ruby-trunk - Bug #6650]
11658
11659Thu Jun 28 09:27:09 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
11660
11661	* class.c (class_instance_method_list): consider prepended Class/Module
11662	  when recur != 0. [ruby-dev:45863] [Bug #6660]
11663
11664	* test/ruby/test_module.rb (test_prepend_instance_methods_false): add
11665	  a test for it.
11666
11667
11668Thu Jun 28 06:12:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11669
11670	* class.c (rb_mod_ancestors): fix ancestors order.
11671	  [ruby-core:45919][Bug #6658] [ruby-dev:45861][Bug #6659]
11672
11673Wed Jun 27 21:28:59 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
11674
11675	* lib/racc/parser.rb: NotImplementError is not exist.
11676
11677	* lib/irb/output-method.rb (IRB::OutputMethod#print): ditto.
11678
11679Wed Jun 27 21:31:13 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11680
11681	* class.c (rb_prepend_module): ancestors of prepending module also
11682	  should be included.  [ruby-core:45914][Bug #6654]
11683
11684Wed Jun 27 21:01:32 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11685
11686	* class.c (class_instance_method_list): m_tbl in prepended
11687	  class/module is NULL.  [ruby-core:45915][Bug #6655]
11688
11689Wed Jun 27 16:48:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11690
11691	* class.c (rb_prepend_module): prepend module into another module.
11692
11693	* eval.c (rb_mod_prepend): new method Module#prepend.  [Feature #1102]
11694
11695Wed Jun 27 09:15:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11696
11697	* io.c (is_popen_fork): check if fork and raise NotImplementedError if
11698	  unavailable.
11699
11700	* io.c (rb_io_s_popen): allow environment variables hash and exec
11701	  options as flat parameters, not in an array arguments.
11702	  [Feature#6651] [EXPERIMENTAL]
11703
11704	* process.c (rb_execarg_extract_options): extract exec options, but no
11705	  exceptions on non-exec options and returns them as a Hash.
11706
11707	* process.c (rb_execarg_setenv): set environment variables.
11708
11709Tue Jun 26 16:57:14 2012  Koichi Sasada  <ko1@atdot.net>
11710
11711	* thread_pthread.c (register_cached_thread_and_wait):
11712	  return immediately if malloc() failed.
11713	  [ruby-core:43960] [ruby-trunk - Bug #6235]
11714
11715	* thread_pthread.c (USE_THREAD_CACHE): check already defined or not.
11716
11717Tue Jun 26 10:01:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11718
11719	* io.c (rb_io_s_popen): revert r36213 "popen: shell commands with
11720	  envvar" because it disabled to let single command bypass shell.
11721
11722Mon Jun 25 17:49:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11723
11724	* class.c (rb_mix_module): revert Module#mix.
11725
11726Mon Jun 25 16:57:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11727
11728	* proc.c (rb_mod_define_method): allow method transplanting from a
11729	  module to either class or module.  [ruby-core:34267][Feature #4254]
11730
11731Mon Jun 25 11:34:45 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
11732
11733	* internal.h: use rb_pid_t instead of pid_t because of there is no
11734	  definition of pid_t here on Windows.
11735
11736Mon Jun 25 00:25:01 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
11737
11738	* configure.in (for stack end address): remove human68k specific
11739	  check. It is no longer supported.
11740
11741Sun Jun 24 23:02:17 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11742
11743	* io.c (pipe_open): merge win32 code using spawnv().
11744
11745Sun Jun 24 22:53:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11746
11747	* process.c (check_exec_fds): separate check_exec_fds_1() since
11748	  nonstatic initializer of an aggregate type is not allowed by C89.
11749
11750Sun Jun 24 07:47:17 2012  Tanaka Akira  <akr@fsij.org>
11751
11752	* internal.h (rb_execarg): options field removed.
11753
11754	* process.c: follow the rb_execarg change.
11755
11756Sat Jun 23 23:48:21 2012  Tanaka Akira  <akr@fsij.org>
11757
11758	* process.c (proc_spawn_cmd): unused variable removed to suppress a
11759	  warning.
11760	  (save_env): ditto.
11761
11762	  [ruby-core:45797] reported by Luis Lavena.
11763
11764Sat Jun 23 23:19:31 2012  Tanaka Akira  <akr@fsij.org>
11765
11766	* internal.h (rb_execarg): add new_pgroup_given and new_pgroup_flag
11767	  fields.
11768
11769	* process.c (EXEC_OPTION_NEW_PGROUP): removed.
11770	  (proc_spawn_cmd): take a struct rb_execarg argument.
11771	  use the new fields.
11772	  (rb_execarg_addopt): use the new fields.
11773	  (rb_spawn_process): follow the proc_spawn_cmd change.
11774
11775	  [ruby-core:45794] [ruby-trunk - Bug #6633] reported by Luis Lavena.
11776
11777Sat Jun 23 20:26:36 2012  Tanaka Akira  <akr@fsij.org>
11778
11779	* internal.h (rb_execarg): add fd_dup2, fd_close, fd_open,
11780	  fd_dup2_child fields.
11781
11782	* process.c (EXEC_OPTION_DUP2): removed.
11783	  (EXEC_OPTION_CLOSE): removed.
11784	  (EXEC_OPTION_OPEN): removed.
11785	  (EXEC_OPTION_DUP2_CHILD): removed.
11786	  (mark_exec_arg): mark the new fields.
11787	  (check_exec_redirect1): change condition for default option.
11788	  (check_exec_redirect): take a struct rb_execarg argument.
11789	  use the new fields.
11790	  (rb_execarg_addopt): follow the check_exec_redirect change.
11791	  (check_exec_fds): use the new fields.
11792	  (save_redirect_fd): ditto.
11793
11794Sat Jun 23 19:01:18 2012  Tanaka Akira  <akr@fsij.org>
11795
11796	* process.c (rb_execarg_fixup): fix envopts condition.
11797
11798Sat Jun 23 18:44:13 2012  Tanaka Akira  <akr@fsij.org>
11799
11800	* process.c (check_exec_redirect1): extracted from
11801	  check_exec_redirect.
11802
11803Sat Jun 23 17:22:02 2012  Tanaka Akira  <akr@fsij.org>
11804
11805	* process.c (save_env): don't use EXEC_OPTION_UNSETENV_OTHERS.
11806	  (rb_execarg_run_options): ditto.
11807
11808Sat Jun 23 17:04:08 2012  Tanaka Akira  <akr@fsij.org>
11809
11810	* internal.h (rb_execarg): add env_modification field.
11811
11812	* process.c (EXEC_OPTION_ENV): removed.
11813	  (mark_exec_arg): mark env_modification field.
11814	  (rb_exec_fillarg): update the new field, instead of options array.
11815	  (rb_execarg_fixup): use the new field.
11816	  (save_env): ditto.
11817	  (rb_execarg_run_options): ditto.
11818
11819Sat Jun 23 16:27:01 2012  Tanaka Akira  <akr@fsij.org>
11820
11821	* internal.h (rb_execarg): add rlimit_limits field.
11822
11823	* process.c (EXEC_OPTION_RLIMIT): removed.
11824	  (mark_exec_arg): mark rlimit_limits field.
11825	  (rb_execarg_addopt): update the new fields, instead of options array.
11826	  (run_exec_rlimit): use the new field.
11827	  (rb_execarg_run_options): clear sarg using MEMZERO.  use the new
11828	  field.
11829
11830Sat Jun 23 14:29:25 2012  Tanaka Akira  <akr@fsij.org>
11831
11832	* internal.h (rb_execarg): add chdir_given and chdir_dir fields.
11833
11834	* process.c (EXEC_OPTION_CHDIR): removed.
11835	  (mark_exec_arg): mark chdir_dir field.
11836	  (rb_execarg_addopt): update the new fields, instead of options array.
11837	  (rb_execarg_run_options): use the new fields.
11838
11839Sat Jun 23 13:20:47 2012  Tanaka Akira  <akr@fsij.org>
11840
11841	* internal.h (rb_execarg): add close_others_given, close_others_do and
11842	  close_others_maxhint fields.
11843
11844	* process.c (EXEC_OPTION_CLOSE_OTHERS): removed.
11845	  (rb_execarg_addopt): update the new fields, instead of options array.
11846	  (check_exec_fds): take eargp as an argument.  update the
11847	  close_others_maxhint field.
11848	  (rb_execarg_fixup): follow the argument change of check_exec_fds.
11849	  (rb_execarg_run_options): use the new fields.
11850
11851Sat Jun 23 10:41:59 2012  Tanaka Akira  <akr@fsij.org>
11852
11853	* internal.h (rb_execarg): add unsetenv_others_given and
11854	  unsetenv_others_do fields.
11855
11856	* process.c (EXEC_OPTION_UNSETENV_OTHERS): removed.
11857	  (rb_execarg_addopt): update the new fields, instead of options array.
11858	  (rb_execarg_fixup): use the new fields.
11859
11860Sat Jun 23 09:35:47 2012  Tanaka Akira  <akr@fsij.org>
11861
11862	* process.c: use the variable name "soptions" for sargp->options.
11863
11864Sat Jun 23 09:17:49 2012  Tanaka Akira  <akr@fsij.org>
11865
11866	* process.c: use the name "sargp" for struct rb_execarg variables
11867	  consistently for saving process attributes.
11868
11869	* io.c: ditto.
11870
11871Sat Jun 23 07:59:57 2012  Tanaka Akira  <akr@fsij.org>
11872
11873	* process.c: use the name "eargp" for struct rb_execarg variables
11874	  consistently except for saving process attributes.
11875
11876	* io.c: ditto.
11877
11878	* ext/pty/pty.c: ditto.
11879
11880Wed Jun 20 18:27:03 2012  Yuki Yugui Sonoda  <yugui@google.com>
11881
11882	* common.mk: Add missing dependencies.
11883
11884Fri Jun 22 20:27:39 2012  Tanaka Akira  <akr@fsij.org>
11885
11886	* internal.h (rb_execarg): add pgroup_given and pgroup_pgid fields.
11887
11888	* process.c (EXEC_OPTION_PGROUP): removed.
11889	  (rb_execarg_addopt): update the new fields, instead of options array.
11890	  (run_exec_pgroup): take a struct rb_execarg argument.  refer the new
11891	  fields.
11892	  (rb_execarg_run_options): follow run_exec_pgroup change.
11893
11894Fri Jun 22 18:48:51 2012  Kouhei Sutou  <kou@cozmixng.org>
11895
11896	* README.EXT, README.EXT.ja: use "sval" for the third argument
11897	  name of Data_Wrap_Struct().
11898	  Suggested by @satoh_fumiyasu. Thanks!!!
11899
11900Fri Jun 22 18:04:26 2012  Koichi Sasada  <ko1@atdot.net>
11901
11902	* iseq.c, vm_eval.c: set th->base_block properly.
11903	  th->base_block is information for (a) parsing, (b) compiling
11904	  and (c) setting up the frame to execute the program passed by
11905	  `eval' method.  For example, (1) parser need to know up-level
11906	  variables to detect it is variable or method without paren.
11907	  Befor (a), (b) and (c), VM set th->base_block by passed bindng
11908	  (or previous frame information).  After execute (a), (b) and (c),
11909	  VM should clear th->base_block.  However, if (a), (b) or (c)
11910	  raises an exception, then th->base_block is not cleared.
11911	  Problem is that the uncleared value th->balo_block is used for
11912	  irrelevant iseq compilation.  It causes SEGV or critical error.
11913	  I tried to solve this problem: to clear them before exception,
11914	  but finally I found out that it is difficult to do it (Ruby
11915	  program can be run in many places).
11916	  Because of this background, I set th->base_block before
11917	  compiling iseq and restore it after compiling.
11918	  Basically, th->base_block is dirty hack (similar to global
11919	  variable) and this patch is also dirty.
11920
11921	* bootstraptest/test_eval.rb: add a test for above.
11922
11923	* internal.h: remove unused decl.
11924
11925	* iseq.c (rb_iseq_compile_with_option): add base_block parameter.
11926	  set th->base_block before compilation and restore it after
11927	  compilation.
11928
11929	* ruby.c (require_libraries): pass 0 as base_block instead of
11930	  setting th->base_block
11931
11932	* tool/compile_prelude.rb (prelude_eval): apply above changes.
11933
11934	* vm.c, vm_eval.c: ditto.
11935
11936	* vm_core.h: add comments.
11937
11938Fri Jun 22 18:19:38 2012  Tanaka Akira  <akr@fsij.org>
11939
11940	* process.c: pass struct rb_execarg value instead of its options
11941	  field for saving process attribute changing functions.
11942	  (save_redirect_fd): take a struct rb_execarg argument.
11943	  (run_exec_dup2): ditto.
11944	  (run_exec_close): ditto.
11945	  (run_exec_open): ditto.
11946	  (run_exec_dup2_child): ditto.
11947	  (run_exec_pgroup): ditto.
11948	  (run_exec_rlimit): ditto.
11949	  (save_env): ditto.
11950	  (rb_execarg_run_options): follow the above functions change.
11951
11952Fri Jun 22 17:55:48 2012  Koichi Sasada  <ko1@atdot.net>
11953
11954	* test/ruby/test_backtrace.rb: decrease recursion depth
11955	  to reduce consuming stack size.
11956
11957Fri Jun 22 13:36:50 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11958
11959	* random.c (random_init, random_load): cannot initialize frozen object
11960	  again, nor with tainted/untrusted object.  [Bug #6540]
11961
11962Fri Jun 22 13:32:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11963
11964	* error.c (rb_check_copyable): new function, to ensure the target is
11965	  not frozen and the source is not tainted nor untrusted.
11966
11967Fri Jun 22 05:55:20 2012  Eric Hodel  <drbrain@segment7.net>
11968
11969	* eval.c (ruby_cleanup):  Fixed typo.  Patch by Trever Dawe.
11970	  Fixes #131 (github).  [ruby-trunk - Bug #6619]
11971
11972Thu Jun 21 21:16:58 2012  Tanaka Akira  <akr@fsij.org>
11973
11974	* process.c (rb_execarg_addopt): take a VALUE argument instead of
11975	  struct rb_execarg.
11976	  (rb_exec_arg_addopt): follow the rb_execarg_addopt change.
11977	  (check_exec_options_i): ditto.
11978
11979	* io.c (pipe_open): follow the rb_execarg_addopt change.
11980
11981	* internal.h (rb_execarg_addopt): follow the definition change.
11982
11983Thu Jun 21 20:34:19 2012  Tanaka Akira  <akr@fsij.org>
11984
11985	* process.c (rb_exec_fillarg): take a VALUE argument instead of
11986	  struct rb_execarg.
11987	  (rb_check_exec_options): ditto.
11988	  (check_exec_options_i): ditto.
11989
11990Thu Jun 21 19:48:05 2012  Tanaka Akira  <akr@fsij.org>
11991
11992	* process.c (rb_exec_async_signal_safe): use rb_execarg_run_options
11993	  instead of rb_run_exec_options_err.
11994	  (rb_spawn_process): ditto.
11995
11996Thu Jun 21 19:02:43 2012  Tanaka Akira  <akr@fsij.org>
11997
11998	* process.c (rb_exec_fillarg): take a VALUE argument instead of
11999	  struct rb_execarg.
12000	  (rb_execarg_init): follow the rb_exec_fillarg change.
12001
12002Thu Jun 21 18:36:43 2012  Tanaka Akira  <akr@fsij.org>
12003
12004	* process.c (rb_execarg_init): take a VALUE argument instead of
12005	  struct rb_execarg.
12006	  (rb_execarg_new): follow the rb_execarg_init change.
12007	  (rb_exec_arg_init): ditto.
12008
12009	* internal.h (rb_execarg_init): follow the definition change.
12010
12011Thu Jun 21 17:20:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12012
12013	* parse.y (new_args_tail_gen): fix GC problem of keyword rest
12014	  argument.  the wrapped struct should be bound to the wrapping node
12015	  before assignment of child nodes, to get rid of the case the
12016	  children are referred by only the struct pointer which is not a
12017	  subject of GC.  [ruby-core:45744]
12018
12019Thu Jun 21 07:06:52 2012  Koichi Sasada  <ko1@atdot.net>
12020
12021	* error.c (err_append): rename err_append() to compile_err_append()
12022	  and move definition body.  err_append() is used only by compiling.
12023
12024Thu Jun 21 06:21:54 2012  Tanaka Akira  <akr@fsij.org>
12025
12026	* process.c (rb_execarg_fixup): take a VALUE argument instead of
12027	  struct rb_execarg.
12028
12029	* internal.h (rb_execarg_fixup): follow the definition change.
12030
12031	* io.c (pipe_open): follow rb_execarg_fixup change.
12032
12033	* ext/pty/pty.c (establishShell): ditto.
12034
12035Wed Jun 20 21:25:37 2012  Tanaka Akira  <akr@fsij.org>
12036
12037	* internal.h (struct rb_execarg): add umask_given and umask_mask
12038	  fields.
12039
12040	* process.c (STATIC_ASSERT): removed.
12041	  (rb_execarg_addopt): follow the rb_execarg change.
12042	  (rb_execarg_run_options): ditto.
12043
12044Wed Jun 20 20:38:23 2012  Tanaka Akira  <akr@fsij.org>
12045
12046	* internal.h (struct rb_execarg) moved and renamed from
12047	  struct rb_exec_arg in intern.h.
12048
12049	* include/ruby/intern.h (struct rb_exec_arg): refer Data object which
12050	  contains struct rb_execarg.
12051
12052	* process.c: use struct rb_execarg instead of struct rb_exec_arg
12053	  except functions declared in intern.h.
12054	  (rb_exec_arg_addopt): extract a pointer to struct rb_execarg from
12055	  struct rb_exec_arg.
12056	  (rb_exec_arg_init): ditto.
12057	  (rb_exec_arg_fixup): ditto.
12058	  (rb_run_exec_options_err): ditto.
12059	  (rb_run_exec_options): ditto.
12060	  (rb_exec_err): ditto.
12061	  (rb_exec): ditto.
12062
12063	* io.c: use struct rb_execarg instead of struct rb_exec_arg.
12064
12065	* ext/pty/pty.c: ditto.
12066
12067Wed Jun 20 19:13:25 2012  Tanaka Akira  <akr@fsij.org>
12068
12069	* internal.h (rb_execarg_new): declared.
12070	  (rb_execarg_get): ditto.
12071
12072	* process.c (mark_exec_arg): new function.
12073	  (free_exec_arg): ditto.
12074	  (memsize_exec_arg): ditto.
12075	  (exec_arg_data_type): defined.
12076	  (rb_execarg_new): new function.
12077	  (rb_execarg_get): ditto.
12078	  (rb_f_exec): use rb_execarg_new.
12079	  (rb_spawn_internal): ditto.
12080	  (rb_f_spawn): ditto.
12081
12082	* io.c (pipe_open_v): use rb_execarg_new.
12083	  (pipe_open_s): ditto.
12084
12085	* ext/pty/pty.c (establishShell): use rb_execarg_new.
12086
12087Wed Jun 20 16:36:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12088
12089	* missing/setproctitle.c (environ): use (*_NSGetEnviron()) instead of
12090	  environ on Darwin for namespace cleanness, same as [ruby-core:00537].
12091	  [ruby-core:45615] [Bug #6576]
12092
12093Wed Jun 20 11:33:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12094
12095	* process.c (rb_execarg_addopt): always make Fixnum, and ignore higher
12096	  bits in too large umask value.
12097
12098Wed Jun 20 11:24:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12099
12100	* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): deal with
12101	  sudden-death of workers.
12102
12103Mon Jun 18 20:34:20 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12104
12105	* time.c (init_leap_second_info): fix non-ANSI function declaration.
12106
12107Mon Jun 18 20:29:04 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12108
12109	* ruby.c (rb_f_sub): use ansi style declaration.
12110	* ruby.c (rb_f_gsub): ditto.
12111	* ruby.c (rb_f_chomp): ditto.
12112
12113Mon Jun 18 20:26:23 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12114
12115	* random.c (rb_random_int32): get rid of "warning: constant 0x100000000
12116	  is so big it is long" warning.
12117
12118Mon Jun 18 20:07:23 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12119
12120	* dir.c (dir_initialize): get rid of "unused return: argc = rb_scan_args()"
12121	  warning.
12122
12123Mon Jun 18 19:31:20 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12124
12125	* include/ruby/missing.h: include math.h before checking INFINITY
12126	  and NAN. Otherwise, strange macro redefinition will occur.
12127
12128Mon Jun 18 19:12:37 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
12129
12130	* array.c (ary_reverse): use ansi style declaration.
12131
12132Tue Jun 19 18:43:50 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12133
12134	* include/ruby/backward/rubysig.h: fix visibility.  [Bug #6607]
12135
12136Tue Jun 19 17:51:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12137
12138	* process.c (rb_execarg_run_options): do not call any methods in the
12139	  async-signal-safe function.  mask has been checked with NUM2MODET()
12140	  already and converted with LONG2NUM().
12141
12142Tue Jun 19 11:59:56 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12143
12144	* ext/readline/readline.c (Init_readline): don't set 0 to
12145	  rl_catch_signals and rl_catch_sigwinch. [Bug #5423]
12146
12147Tue Jun 19 11:52:59 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12148
12149	* ext/readline/readline.c (readline_s_get_special_prefixes): suppress
12150	  warning: uninitialized instance variable.
12151
12152Tue Jun 19 11:43:16 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12153
12154	* ext/readline/readline.c (readline_getc): fix editline compatibility
12155	  broken by r36123. [Bug #6601]
12156
12157Mon Jun 18 17:10:08 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12158
12159	* string.c (rb_str_subpos): split from rb_str_substr.  returns
12160	  adjusted position for substring.
12161
12162Mon Jun 18 10:42:57 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12163
12164	* ext/readline/readline.c (readline_getc): deal with ESC just followed
12165	  by ASCII as meta prefix in incremental search mode.  based on the
12166	  patch from rctay (Tay Ray Chuan) at [ruby-core:45682].  [Bug #6601]
12167
12168Sun Jun 17 22:23:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12169
12170	* dir.c (rb_file_directory_p): move documentation for Dir.exist? from
12171	  file.c so that the proper description will be shown instead of the
12172	  documentation of File.directory?.  [ruby-core:45685]
12173
12174Sun Jun 17 16:21:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12175
12176	* thread_win32.h (rb_thread_lock_t): make a union for USE_WIN32_MUTEX.
12177	  this internal is used only in thread_win32.c, but has to be complete
12178	  to define rb_thread_t.
12179
12180	* thread_win32.c (native_mutex_lock, native_mutex_destroy): fix for
12181	  USE_WIN32_MUTEX.
12182
12183	* thread_win32.c (native_cond_timedwait_ms): rename reserved pattern
12184	  name.  user defined symbols should not start with __.
12185
12186Sat Jun 16 19:24:01 2012  Tadayoshi Funaba  <tadf@dotrb.org>
12187
12188	* ext/date/date_core.c: define date_sg_t.
12189
12190Sat Jun 16 18:46:57 2012  Tadayoshi Funaba  <tadf@dotrb.org>
12191
12192	* ext/date/date_tmx.h: offset in struct tmx_funcs is now int.
12193	* ext/date/date_strftime.c: ditto.
12194	* ext/date/date_core.c: ditto.
12195
12196Sat Jun 16 18:31:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12197
12198	* eval.c (ruby_setup): set running state in the normal case before
12199	  popping a tag.
12200
12201Sat Jun 16 07:46:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12202
12203	* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): format workers
12204	  results in the parent.
12205
12206Sat Jun 16 07:12:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12207
12208	* tool/runruby.rb (File.realpath): return real path of expanded path.
12209	  [Bug #6598]
12210
12211Sat Jun 16 07:12:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12212
12213	* bootstraptest/runner.rb (main): ignore -j option for compatibility
12214	  with test/unit.
12215
12216Sat Jun 16 07:11:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12217
12218	* lib/test/unit.rb (Test::Unit::Runner#puke): modify only result and
12219	  drop useless reports, not override entirely.
12220
12221	* lib/test/unit/parallel.rb (Test::Unit::Worker#_run_suite): report
12222	  unformatted results.  formatting messages is not a workers task.
12223
12224	* lib/test/unit/parallel.rb (Test::Unit::Worker#puke): store raw
12225	  results.
12226
12227Sat Jun 16 01:27:14 2012  Aaron Patterson <aaron@tenderlovemaking.com>
12228
12229	* ext/psych/lib/psych.rb: bumping psych to 1.3.3
12230	* ext/psych/psych.gemspec: ditto
12231
12232Fri Jun 15 20:54:28 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
12233
12234	* vm_backtrace.c (backtrace_collect): rename from backtreace_collect.
12235
12236Fri Jun 15 19:22:13 2012  Koichi Sasada  <ko1@atdot.net>
12237
12238	* vm_core.h: remove VM_FRAME_MAGIC_FINISH (finish frame type).
12239	  Before this commit:
12240	    `finish frame' was place holder which indicates that VM loop
12241	    needs to return function.
12242	    If a C method calls a Ruby methods (a method written by Ruby),
12243	    then VM loop will be (re-)invoked.  When the Ruby method returns,
12244	    then also VM loop should be escaped.  `finish frame' has only
12245	    one instruction `finish', which returns VM loop function.
12246	    VM loop function executes `finish' instruction, then VM loop
12247	    function returns itself.
12248	    With such mechanism, `leave' instruction (which returns one
12249	    frame from current scope) doesn't need to check that this `leave'
12250	    should also return from VM loop function.
12251	    Strictly, one branch can be removed from `leave' instruction.
12252	  Consideration:
12253	    However, pushing the `finish frame' needs costs because
12254	    it needs several memory accesses.  The number of pushing
12255	    `finish frame' is greater than I had assumed.  Of course,
12256	    pushing `finish frame' consumes additional control frame.
12257	    Moreover, recent processors has good branch prediction,
12258	    with which we can ignore such trivial checking.
12259	  After this commit:
12260	    Finally, I decide to remove `finish frame' and `finish'
12261	    instruction.  Some parts of VM depend on `finish frame',
12262	    so the new frame flag VM_FRAME_FLAG_FINISH is introduced.
12263	    If this frame should escape from VM function loop, then
12264	    the result of VM_FRAME_TYPE_FINISH_P(cfp) is true.
12265	    `leave' instruction checks this flag every time.
12266	    I measured performance on it.  However on my environments,
12267	    it improves some benchmarks and slows some benchmarks down.
12268	    Maybe it is because of C compiler optimization parameters.
12269	    I'll re-visit here if this cause problems.
12270
12271	* insns.def (leave, finish): remove finish instruction.
12272
12273	* vm.c, vm_eval.c, vm_exec.c, vm_backtrace.c, vm_dump.c:
12274	  apply above changes.
12275
12276Fri Jun 15 19:11:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12277
12278	* lib/test/unit.rb (Test::Unit::Runner#puke): always add skipped
12279	  results to the report for parallel test.  [Bug #6595]
12280
12281Fri Jun 15 09:01:35 2012  Yuki Yugui Sonoda  <yugui@google.com>
12282
12283	* nacl/pepper_main.c: Removed an unnecessary and erroneous inclusion.
12284
12285Thu Jun 14 22:59:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12286
12287	* configure.in (RUBY_CPPOUTFILE): check if output is really sent to
12288	  specified file to tell if -o option works.  [ruby-dev:45742]
12289	  [Bug#6591]
12290
12291	* configure.in (RUBY_CPPOUTFILE): check if output file is actually
12292	  created.  [ruby-dev:45742] [Bug#6591]
12293
12294Thu Jun 14 22:10:50 2012  Tanaka Akira  <akr@fsij.org>
12295
12296	* process.c (proc_exec_sh): don't strip leading spaces of the script.
12297
12298Thu Jun 14 15:54:02 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
12299
12300	* file.c (rb_file_s_basename, rb_file_s_dirname): documentation fix.
12301	  File.basename and File.dirname support File::ALT_SEPARATOR.
12302
12303Thu Jun 14 11:10:10 2012  Yuki Yugui Sonoda  <yugui@google.com>
12304
12305	* nacl/pepper_main.c: Applies the new embedding API to pepper_ruby.
12306
12307Thu Jun 14 10:44:41 2012  Yuki Yugui Sonoda  <yugui@google.com>
12308
12309	* include/ruby/ruby.h: Grouped APIs for embedding CRuby interpreter.
12310	  (ruby_setup, ruby_compile_main_from_file,
12311	  ruby_compile_main_from_string, ruby_eval_main,
12312	  ruby_set_script_name): new APIs to embed CRuby.
12313	  (ruby_opaque_t) Opaque pointer to an internal data, to NODE or iseq
12314	  in particular.
12315
12316	* eval.c (ruby_setup): Similar to ruby_init but returns an error code
12317	  instead of exit(3) on error.
12318	  (ruby_eval_main): Similar to ruby_exec_node but returns the
12319	  evaluation result.
12320	  (ruby_eval_main_internal): renamed from ruby_exec_internal.
12321
12322	* ruby.c (toplevel_context): new helper function.
12323	  (PREPARE_EVAL_MAIN): moved.
12324	  (process_options): refactored with new functions.
12325	  (parse_and_compile_main) new helper function.
12326	  (ruby_compile_main_from_file, ruby_compile_main_from_string) new API
12327	  (ruby_set_script_name): new API.
12328
12329
12330Thu Jun 14 10:39:48 2012  Yuki Yugui Sonoda  <yugui@google.com>
12331
12332	* eval.c: Add doxygen comments.
12333
12334	* ruby.c: ditto.
12335
12336	* thread_pthread.c: ditto
12337
12338	* version.c: ditto.
12339
12340	* vm_core.h: ditto.
12341
12342Thu Jun 14 10:16:07 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12343
12344	* configure.in: revert r36071 and add NetBSD to blacklist of -ansi.
12345
12346Thu Jun 14 07:59:12 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12347
12348	* thread_pthread.c (get_stack): Linux is the only OS which includes
12349	  the size of guard page into the stack size.
12350
12351Thu Jun 14 06:21:00 2012  Eric Hodel  <drbrain@segment7.net>
12352
12353	* lib/drb/drb.rb:  Replace broken links to the English DRb book.
12354	  Patch by Zachary Scott.  [ruby-trunk - Bug #6544]
12355
12356Thu Jun 14 06:17:47 2012  Eric Hodel  <drbrain@segment7.net>
12357
12358	* lib/observer.rb:  Update broken link to the Programming Ruby book.
12359	  Patch by Zachary Scott.  [ruby-trunk - Bug #6536]
12360	* lib/drb/drb.rb:  ditto.
12361
12362Thu Jun 14 05:23:05 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12363
12364	* regparse.c (PFETCH_READY): suppress Wunused-but-set-variable.
12365
12366	* regparse.c (is_onechar_cclass): restructured to clarify that c is
12367	  used iff found == 1.
12368
12369Thu Jun 14 02:54:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12370
12371	* configure.in: use -fbuiltin with -ansi -std=iso9899:199409.
12372	  This prevents errors introduced by disabling builtin functions,
12373	  which is the sub-effect of -ansi/-std.
12374	  Now NetBSD can use -ansi -std=iso9899:199409.
12375	  Maybe mingw, cygwin and darwin can also.
12376
12377Thu Jun 14 02:53:30 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12378
12379	* Makefile.in: don't remove macros. now name2ctype uses macros.
12380
12381	* tool/enc-unicode.rb: add comment why it uses Hash#index.
12382
12383	* enc/unicode/{name2ctype.kwd,name2ctype.src,name2ctype.h.blt}:
12384	  update to follow the current name2ctype.h.
12385	  FYI current Unicode version is 6.1.
12386
12387Thu Jun 14 00:16:59 2012  Akinori MUSHA  <knu@iDaemons.org>
12388
12389	* lib/net/http/responses.rb, lib/webrick/httpstatus.rb: Add HTTP
12390	  response codes added in RFCs 2817 and 4918.  [ruby-core:45547]
12391	  [Feature #6569]
12392
12393	* lib/net/http/responses.rb: Rename Net::HTTPMultipleChoice to
12394	  Net::HTTPMultipleChoices, leaving the former as alias to the
12395	  latter for backward compatibility.  [ruby-core:45547]
12396	  [Feature #6569]
12397
12398	* lib/net/http/responses.rb: Add comments about unused,
12399	  still-in-draft and private extension response codes.
12400	  [ruby-core:45547] [Feature #6569]
12401
12402Wed Jun 13 22:44:32 2012  Naohisa Goto  <ngotogenome@gmail.com>
12403
12404	* test/dl/test_func.rb (test_qsort1, test_qsort2): use TYPE_SIZE_T
12405	  for size_t variables. [ruby-dev:45733] [Bug #6584]
12406
12407Wed Jun 13 22:18:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12408
12409	* configure.in: remove -ansi and -std options for lgamma_r() and
12410	  finite().
12411
12412Wed Jun 13 21:46:34 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12413
12414	* configure.in: cygwin does not provide some declarations in strict
12415	  ANSI mode.
12416
12417Wed Jun 13 20:19:59 2012  Tanaka Akira  <akr@fsij.org>
12418
12419	* process.c (rb_fork_internal): move a variable declaration.
12420
12421Wed Jun 13 17:54:38 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
12422
12423	* regparse.c (PFETCH_READY):  this  line was to  suppress warning,
12424	  but  did emit  warnings if  -Wuninitialized was  set.  Assigning
12425	  NULL instead if pfetch_prev should suffice the situation.
12426
12427Wed Jun 13 17:51:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12428
12429	* configure.in: cygwin needs C99 for some stuff, e.g.,
12430	  pthread_attr_setstacksize, sched_yield.
12431
12432Wed Jun 13 17:50:43 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12433
12434	* Makefile.in (.c.i): add warnflags to make the result consistent with
12435	  compilation.
12436
12437Wed Jun 13 15:12:07 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
12438
12439	* configure.in: On Windows  platforms, system provided headers are
12440	  VC++ optimized.  That is, C++ habits are often contaminated into
12441	  various  headers.  Most  frequent  situation is  the  use of  //
12442	  comments.  We bypass ANSI  C mode for them.  Otherwise extension
12443	  libs cannot include those headers.
12444
12445Wed Jun 13 13:39:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12446
12447	* include/ruby/win32.h: get rid of C99 style one line comments.
12448
12449Wed Jun 13 13:39:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12450
12451	* encoding.c (enc_alias_internal): use strdup defined as macro.
12452
12453Wed Jun 13 10:20:27 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12454
12455	* process.c (rb_exec_fillarg): get rid of SIZE_T_MAX which may need
12456	  more headers.
12457
12458	* process.c (rb_exec_fillarg): fix array element size.  "continue" and
12459	  "readonly" exceeded the size.
12460
12461	* process.c (rb_exec_fillarg): use shell if the first word is reserved
12462	  or special built-in name.
12463	 http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html
12464
12465	* process.c (rb_exec_fillarg): treat '=' only in the first word.  if
12466	  the first word does not contain '=', it is the command name and
12467	  environment assignments cannot be anymore.
12468
12469Tue Jun 12 23:45:36 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12470
12471	* lib/mkmf.rb: add dummy clean-static target to prevent errors for the
12472	  case real clean-static target doesn't exist.
12473
12474Tue Jun 12 22:49:42 2012  Naohisa Goto  <ngotogenome@gmail.com>
12475
12476	* process.c (rb_exec_arg_fixup): fix compile error
12477
12478Tue Jun 12 21:40:13 2012  Tanaka Akira  <akr@fsij.org>
12479
12480	* process.c (rb_exec_fillarg): treat '=' character as a meta
12481	  character to detect assignments preceding command name.
12482
12483Tue Jun 12 20:29:19 2012  Tanaka Akira  <akr@fsij.org>
12484
12485	* include/ruby/intern.h (rb_exec_arg_init): deprecated.
12486	  (rb_exec_arg_addopt): ditto.
12487	  (rb_exec_arg_fixup): ditto.
12488	  (rb_run_exec_options): ditto.
12489	  (rb_run_exec_options_err): ditto.
12490
12491	* internal.h (rb_execarg_init): declared.
12492	  (rb_execarg_addopt): ditto.
12493	  (rb_execarg_fixup): ditto.
12494	  (rb_execarg_run_options): ditto.
12495
12496	* process.c: call rb_execarg_addopt, rb_execarg_fixup,
12497	  rb_execarg_run_options, rb_execarg_init.
12498	  (rb_execarg_addopt): renamed from rb_exec_arg_addopt.
12499	  (rb_exec_arg_addopt): stub to call rb_execarg_addopt.
12500	  (rb_execarg_init): renamed from rb_exec_arg_init.
12501	  (rb_exec_arg_init): stub to call rb_execarg_init.
12502	  (rb_execarg_fixup): renamed from rb_exec_arg_fixup.
12503	  (rb_exec_arg_fixup): stub to call rb_execarg_fixup.
12504	  (rb_execarg_run_options): renamed from rb_run_exec_options_err.
12505	  (rb_run_exec_options_err): stub to call rb_execarg_run_options.
12506	  (rb_run_exec_options): call rb_execarg_run_options.
12507
12508	* io.c: call rb_execarg_addopt, rb_execarg_fixup,
12509	  rb_execarg_run_options, rb_execarg_init.
12510
12511	* ext/pty/pty.c (establishShell): call rb_execarg_init and
12512	  rb_execarg_fixup.
12513
12514Tue Jun 12 18:39:59 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
12515
12516	* configure.in: enable strict ANSI mode by default in case of GCC,
12517	  requested by _ko1.
12518
12519Tue Jun 12 06:40:23 2012  Tanaka Akira  <akr@fsij.org>
12520
12521	* process.c (rb_exec_fillarg): detect '#' as a meta character.
12522
12523Mon Jun 11 22:15:44 2012  Tanaka Akira  <akr@fsij.org>
12524
12525	* include/ruby/intern.h (rb_proc_exec_n): deprecated.
12526	  (rb_exec): ditto.
12527	  (rb_exec_err): ditto.
12528	  (rb_fork): ditto.
12529	  (rb_fork_err): ditto.
12530
12531Mon Jun 11 18:49:52 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12532
12533	* configure.in: on checking libexecinfo, don't specify /use/local.
12534	  On FreeBSD people must specify --with-opt-dir or --with-execinfo-dir.
12535
12536Mon Jun 11 12:14:37 2012  Koichi Sasada  <ko1@atdot.net>
12537
12538	* vm_core.h: remove lfp (local frame pointer) and rename
12539	  dfp (dynamic frame pointer) to ep (environment pointer).
12540	  This change make VM `normal' (similar to other interpreters).
12541	  Before this commit:
12542	    Each frame has two env pointers lfp and dfp.  lfp points
12543	    local environment which is method/class/toplevel frame.
12544	    lfp[0] is block pointer.
12545	    dfp is block local frame. dfp[0] points previous (parent)
12546	    environment pointer.
12547	    lfp == dfp when frame is method/class/toplevel.
12548	    You can get lfp from dfp by traversing previous environment
12549	    pointers.
12550	  After this commit:
12551	    Each frame has only `ep' to point respective environment.
12552	    If there is parent environment, then ep[0] points parent
12553	    environment (as dfp).  If there are no more environment,
12554	    then ep[0] points block pointer (as lfp).  We call such ep
12555	    as `LEP' (local EP).  We add some macros to get LEP and to
12556	    detect LEP or not.
12557	    In short, we replace dfp and lfp with ep and LEP.
12558	  rb_block_t and rb_binding_t member `lfp' and `dfp' are removed
12559	  and member `ep' is added.
12560	  rename rb_thread_t's member `local_lfp' and `local_svar' to
12561	  `root_lep' and `root_svar'.
12562	  (VM_EP_PREV_EP(ep)): get previous environment pointer.  This macro
12563	    assume that ep is not LEP.
12564	  (VM_EP_BLOCK_PTR(ep)): get block pointer.  This macro assume
12565	    that ep is LEP.
12566	  (VM_EP_LEP_P(ep)): detect ep is LEP or not.
12567	  (VM_ENVVAL_BLOCK_PTR(ptr)): make block pointer.
12568	  (VM_ENVVAL_BLOCK_PTR_P(v)): detect v is block pointer.
12569	  (VM_ENVVAL_PREV_EP_PTR(ptr)): make prev environment pointer.
12570	  (VM_ENVVAL_PREV_EP_PTR_P(v)): detect v is prev env pointer.
12571
12572	* vm.c: apply above changes.
12573	  (VM_EP_LEP(ep)): get LEP.
12574	  (VM_CF_LEP(cfp)): get LEP of cfp->ep.
12575	  (VM_CF_PREV_EP(cfp)): utility function VM_EP_PREV_EP(cfp->ep).
12576	  (VM_CF_BLOCK_PTR(cfp)): utility function VM_EP_BLOCK_PTR(cfp->ep).
12577
12578	* vm.c, vm_eval.c, vm_insnhelper.c, vm_insnhelper.h, insns.def:
12579	  apply above changes.
12580
12581	* cont.c: ditto.
12582
12583	* eval.c, eval_intern.h: ditto.
12584
12585	* proc.c: ditto.
12586
12587	* thread.c: ditto.
12588
12589	* vm_dump.c: ditto.
12590
12591	* vm_exec.h: fix function name (on vm debug mode).
12592
12593Mon Jun 11 11:52:18 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
12594
12595	* compile.c (iseq_set_sequence): nonstatic initializer of an
12596	  aggregate type is a C99ism.
12597
12598	* compile.c (enum compile_array_type_t): comma at the end of enum
12599	  list is a C99ism.
12600
12601	* vm_backtrace.c (enum LOCATION_TYPE): ditto.
12602
12603Mon Jun 11 06:31:33 2012  Tanaka Akira  <akr@fsij.org>
12604
12605	* process.c (rb_proc_exec_n): revert the function removed at r35889.
12606
12607Mon Jun 11 06:20:50 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12608
12609	* thread_pthread.c (rb_thread_create_timer_thread): assign return
12610	  value to the variable err.
12611
12612Mon Jun 11 06:17:06 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12613
12614	* thread_pthread.c (native_cond_initialize): fix typo in r36022.
12615	  this cause a failure on FreeBSD 8.2 amd64.
12616	 http://fbsd.rubyci.org/~chkbuild/ruby-trunk/log/20120610T130201Z.diff.html.gz
12617
12618Mon Jun 11 05:21:57 2012  Koichi Sasada  <ko1@atdot.net>
12619
12620	* .gdbinit (SDR): add SDR function.  It's only for VM debugging.
12621
12622Sun Jun 10 21:50:45 2012  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
12623
12624	* nacl/nacl_config.rb: Fixed for 32bit hosts.
12625
12626Sun Jun 10 20:23:14 2012  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
12627
12628	Fixes threading on NativeClient.
12629
12630	* thread_pthread.c (timer_thread_sleep): Extracted out a function from
12631	  thread_timer(). Added an alternative implementation for platforms
12632	  that lacks select(2) or pipe(2).
12633	  (rb_thread_create_timer_thread, native_cond_initialize,
12634	  native_cond_destroy): Replaced wrong HAVE_XXX checks.
12635
12636	* configure.in (pthread_attr_init): New check.
12637
12638Sun Jun 10 21:30:11 2012  Tanaka Akira  <akr@fsij.org>
12639
12640	* process.c (rb_exec_without_timer_thread): renamed from rb_exec_err.
12641	  (rb_exec_err): new stub function to call
12642	  rb_exec_without_timer_thread.
12643	  (rb_f_exec): call rb_exec_without_timer_thread.
12644	  (rb_exec): call rb_exec_without_timer_thread.
12645
12646Sun Jun 10 21:13:10 2012  Tanaka Akira  <akr@fsij.org>
12647
12648	* process.c (rb_fork): call rb_fork_internal instead of rb_fork_err.
12649
12650Sun Jun 10 20:55:59 2012  Tanaka Akira  <akr@fsij.org>
12651
12652	* process.c (rb_fork_ruby): call rb_fork_internal directly.
12653
12654Sun Jun 10 20:19:40 2012  Tanaka Akira  <akr@fsij.org>
12655
12656	* process.c (rb_fork_ruby): new function.
12657	  (rb_f_fork): use rb_fork_ruby instead of rb_fork.
12658	  (rb_daemon): ditto.
12659
12660	* io.c (pipe_open): use rb_fork_ruby instead of rb_fork.
12661
12662	* internal.h (rb_fork_ruby): declared.
12663
12664Sun Jun 10 18:58:16 2012  Akinori MUSHA  <knu@iDaemons.org>
12665
12666	* lib/net/http/response.rb: Remove a duplicated rdoc and leave a
12667	  pointer.
12668
12669	* lib/net/http/responses.rb: Add RFC numbers to base on.
12670
12671Sun Jun 10 18:31:42 2012  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
12672
12673	* configure.in (RUBY_NACL): Warns if $PATH does not contain the path
12674	  to NativeClient SDK. PATH variable redefinition in GNUmakefile does
12675	  not work for GNU make 3.81.
12676
12677Sun Jun 10 17:54:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12678
12679	* gc.h (IS_STACK_DIR_UPPER): utility macro.
12680
12681	* thread_pthread.c (get_stack): seems stack size does not include
12682	  guard size on Mac OS X.
12683
12684	* thread_pthread.c (ruby_init_stack): adjust stack size for offset of
12685	  addr from the bottom.
12686
12687Sun Jun 10 15:49:47 2012  Tanaka Akira  <akr@fsij.org>
12688
12689	* process.c (retry_fork): call after_fork except in a child process.
12690	  (rb_fork_internal): restrict after_fork call condition.
12691
12692Sun Jun 10 14:19:33 2012  NARUSE, Yui  <naruse@ruby-lang.org>
12693
12694	* configure.in: NetBSD 6 adds libexecinfo but it only works on amd64.
12695	 http://www.mail-archive.com/source-changes-full@netbsd.org/msg38729.html
12696
12697Sun Jun 10 12:43:23 2012  Tanaka Akira  <akr@fsij.org>
12698
12699	* process.c (rb_f_exec): call rb_exec_async_signal_safe except on
12700	  Mac OS X.  cf. the comment in before_exec_non_async_signal_safe.
12701
12702Sun Jun 10 12:15:18 2012  Tanaka Akira  <akr@fsij.org>
12703
12704	* io.c (popen_exec): don't call rb_thread_atfork_before_exec.  use
12705	  rb_exec_async_signal_safe instead of rb_exec_err.
12706	  (pipe_open): use rb_fork_async_signal_safe instead of rb_fork_err.
12707
12708Sun Jun 10 11:44:57 2012  Tanaka Akira  <akr@fsij.org>
12709
12710	* process.c (rb_fork_internal): call after_fork only unless
12711	  chfunc_is_async_signal_safe.
12712
12713Sun Jun 10 11:33:01 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
12714
12715	* ext/openssl/ossl_pkey_ec.c
12716	  test/openssl/test_pkey_ec.rb: Add support for EC_POINT_mul.
12717	  Patch provided by Sambasiva Suda. Thanks!
12718	  [ruby-core:44408][ruby-trunk - Feature #6310]
12719
12720Sun Jun 10 10:48:15 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
12721
12722	* lib/openssl/ssl.rb: Use a simple random number to generate the
12723	  session id. MD5, as was used before, causes problems when
12724	  using a FIPS version of OpenSSL. Issue was found by Jared
12725	  Jennings, thank you!
12726	  [ruby-trunk - Bug #6137]
12727
12728Sun Jun 10 10:27:34 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
12729
12730	* NEWS: Add note about the new private key export behavior.
12731
12732Sun Jun 10 10:24:51 2012  Tanaka Akira  <akr@fsij.org>
12733
12734	* process.c (rb_exec_async_signal_safe): exported.
12735
12736	* ext/pty/extconf.rb: modify $INCFLAGS to include internal.h
12737
12738	* ext/pty/pty.c: include internal.h.
12739	  (chfunc): don't call rb_thread_atfork_before_exec.  use
12740	  rb_exec_async_signal_safe instead of rb_f_exec.
12741	  (establishShell): set up earg.  use rb_fork_async_signal_safe
12742	  instead of rb_fork_err.
12743
12744	* internal.h (rb_exec_async_signal_safe): declared.
12745	  (rb_fork_async_signal_safe): declared.
12746
12747Sun Jun 10 10:21:37 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
12748
12749	* ext/openssl/ossl.c
12750	  ext/openssl/ossl_pkey_rsa.c
12751	  ext/openssl/ossl_pkey_dsa.c
12752	  ext/openssl/ossl_pkey_ec.c: Forbid export passwords that are less
12753	  than four characters long, as OpenSSL itself does not allow this.
12754	  Issue found by Eric Hodel.
12755	* ext/openssl/ossl_pkey_ec.c: Add export as an alias of to_pem,
12756	  following the PKey interface contract.
12757	* test/openssl/test_pkey_dsa.rb
12758	  test/openssl/test_pkey_rsa.rb
12759	  test/openssl/test_pkey_ec.rb: Add tests that assert correct
12760	  behaviour when dealing with passwords that are less than four
12761	  characters long.
12762	  [ruby-core: 42281][ruby-trunk - Bug #5951]
12763
12764Sun Jun 10 10:14:26 2012  Tanaka Akira  <akr@fsij.org>
12765
12766	* process.c (rb_f_exec): use rb_exec_arg_prepare.
12767
12768Sun Jun 10 06:43:51 2012  Tanaka Akira  <akr@fsij.org>
12769
12770	* process.c: split after_exec into async-signal-safe part and rest.
12771	  (after_exec_async_signal_safe): extracted from after_exec.
12772	  (after_exec_non_async_signal_safe): ditto.
12773	  (after_exec): call them.
12774	  (rb_exec_async_signal_safe): call after_exec_async_signal_safe.
12775	  (rb_exec_err): call after_exec_non_async_signal_safe instead of
12776	  after_exec.
12777
12778Sun Jun 10 06:21:10 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
12779
12780	* NEWS: document new features of Ruby OpenSSL.
12781
12782Sun Jun 10 03:09:41 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
12783
12784	* ext/openssl/ossl.c: Fix error in example. Patch by David Albert.
12785
12786	  Add/extend existing documentation. Examples now also cover RSA
12787	  signatures and PBKDF2.
12788	  [ruby-core: 45154][ruby-trunk - Bug #6475]
12789
12790
12791Sun Jun 10 01:41:45 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
12792
12793	* ext/openssl/ossl_ssl.c: Introduce SSLContext#renegotiation_cb and
12794	  remove SSLContext#disable_client_renegotiation and related
12795	  functionality introduced in r35797. The new callback approach
12796	  gives clients maximum flexibility to decide on their own what to
12797	  do on renegotiation attempts.
12798	  Add documentation for SSL module and SSLError.
12799	* test/openssl/test_ssl.rb: Add a test for
12800	  SSLContext#renegotiation_cb.
12801
12802Sun Jun 10 01:37:18 2012  Tanaka Akira  <akr@fsij.org>
12803
12804	* process.c (rb_fork_internal): initialize exc.
12805
12806Sun Jun 10 00:19:25 2012  Tanaka Akira  <akr@fsij.org>
12807
12808	* process.c: don't use non async-signal-safe functions in a child
12809	  process before exec, for invoking a command.
12810	  (rb_exec_atfork): call rb_exec_async_signal_safe only.
12811	  (retry_fork): take chfunc_is_async_signal_safe argument.  call
12812	  before_fork and after_fork only unless chfunc_is_async_signal_safe.
12813	  (send_child_error): take chfunc_is_async_signal_safe argument.
12814	  send an exception only unless chfunc_is_async_signal_safe.
12815	  (recv_child_error): take chfunc_is_async_signal_safe argument.
12816	  receive an exception only unless chfunc_is_async_signal_safe.
12817	  (rb_fork_internal): renamed from rb_fork_err and take
12818	  chfunc_is_async_signal_safe argument.
12819	  use rb_protect only unless chfunc_is_async_signal_safe.
12820	  (rb_fork_err): call rb_fork_internal with false as
12821	  chfunc_is_async_signal_safe.
12822	  (rb_fork_async_signal_safe): call rb_fork_internal with true as
12823	  chfunc_is_async_signal_safe.
12824	  (rb_spawn_process): call rb_fork_async_signal_safe instead of
12825	  rb_fork_err.
12826
12827Sat Jun  9 23:57:03 2012  Tanaka Akira  <akr@fsij.org>
12828
12829	* process.c (rb_fork_err): rewrite a complex "if" statement.
12830
12831Sat Jun  9 23:44:29 2012  Tanaka Akira  <akr@fsij.org>
12832
12833	* process.c (before_exec_async_signal_safe): extracted from
12834	  before_exec.
12835	  (before_exec_non_async_signal_safe): ditto.
12836	  (before_exec): call before_exec_async_signal_safe and
12837	  before_exec_non_async_signal_safe.
12838	  (rb_exec_async_signal_safe): call before_exec_async_signal_safe.
12839	  (rb_exec_err): call before_exec_non_async_signal_safe instead of
12840	  before_exec.
12841
12842Sat Jun  9 23:36:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12843
12844	* iseq.c (iseq_load, insn_operand_intern, rb_iseq_disasm)
12845	  (rb_iseq_parameters): use rb_id2str() instead of rb_id2name() to
12846	  keep encoding.
12847
12848	* string.c (rb_str_symname_p): new function that checks if the string
12849	  is valid as a symbol name.  split from sym_inspect().
12850
12851Sat Jun  9 22:27:05 2012  Tanaka Akira  <akr@fsij.org>
12852
12853	* process.c (retry_fork): rewrite a complex "for" statement by
12854	  simple statements.
12855
12856Sat Jun  9 21:50:04 2012  Tanaka Akira  <akr@fsij.org>
12857
12858	* process.c (retry_fork): extracted from rb_fork_err.
12859	  (send_child_error): ditto.
12860	  (recv_child_error): ditto.
12861
12862Sat Jun  9 17:21:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12863
12864	* iseq.c (iseq_load): type is a symbol, and invalid as ID in common.
12865
12866Sat Jun  9 10:57:14 2012  Tanaka Akira  <akr@fsij.org>
12867
12868	* process.c (rb_exec_async_signal_safe): extracted from rb_exec_err.
12869
12870Sat Jun  9 09:31:07 2012  Tanaka Akira  <akr@fsij.org>
12871
12872	* process.c: simplified because close_others option is always
12873	  enabled by default.
12874	  (rb_f_exec): don't need to set the option.
12875	  (rb_exec_arg_prepare): don't need to set the option.  don't need
12876	  default_close_others argument.
12877	  (rb_spawn_internal): don't need to give default_close_others
12878	  argument for rb_exec_arg_prepare.  don't need default_close_others
12879	  argument.
12880	  (rb_spawn_err): don't need to give default_close_others
12881	  argument for rb_spawn_internal.
12882	  (rb_spawn): don't need to give default_close_others
12883	  argument for rb_spawn_internal.
12884	  (rb_f_system): don't need to give default_close_others argument for
12885	  rb_spawn_internal.
12886	  (rb_f_spawn): don't need to give default_close_others argument for
12887	  rb_exec_arg_prepare.
12888
12889Sat Jun  9 09:00:58 2012  Tanaka Akira  <akr@fsij.org>
12890
12891	* process.c (rb_proc_exec): call before_exec() here addition to
12892	  rb_exec_err.
12893
12894Sat Jun  9 08:30:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12895
12896	* thread_pthread.c (ruby_init_stack): use stack info if possible.
12897
12898Sat Jun  9 08:21:32 2012  Eric Hodel  <drbrain@segment7.net>
12899
12900	* README.EXT (prepare extconf.rb):  Added note to see MakeMakefile for
12901	  documentation of extconf.rb functions.  Patch by Zachary Scott.
12902	  [ruby-trunk - Feature #6522]
12903	* README.EXT (Appendix C):  Removed in favor of MakeMakefile.
12904	  Patch by Zachary Scott.
12905	* lib/mkmf.rb:  Merged documentation from README.EXT Appendix C.  Patch
12906	  by Zachary Scott.
12907
12908Sat Jun  9 08:16:47 2012  Eric Hodel  <drbrain@segment7.net>
12909
12910	* doc/re.rdoc:  Completed wording in the description of the =~ operator.
12911	  [ruby-trunk - Bug #6529]
12912
12913Sat Jun  9 08:09:38 2012  Eric Hodel  <drbrain@segment7.net>
12914
12915	* string.c (rb_str_start_with):  Removed "p" from start_with? examples
12916	  to match other String method examples.  [ruby-trunk - Bug #6553]
12917	* string.c (rb_str_end_with):  Updated end_with? to use code markup
12918	  instead of italic.
12919
12920Sat Jun  9 07:56:03 2012  Eric Hodel  <drbrain@segment7.net>
12921
12922	* lib/benchmark.rb:  Updated formatting of Benchmark documentation for
12923	  consistency.  [ruby-trunk - Bug #6533]
12924
12925Sat Jun  9 07:46:26 2012  Eric Hodel  <drbrain@segment7.net>
12926
12927	* lib/delegate.rb:  Added documentation for Delegator#!.  Patch by
12928	  Zachary Scott.  [ruby-trunk - Feature #6534]
12929
12930Sat Jun  9 07:39:50 2012  Eric Hodel  <drbrain@segment7.net>
12931
12932	* lib/net/http/responses.rb:  Add RFC 6585 response codes.  Patch by
12933	  Sangil Jung.  [ruby-trunk - Feature #6480]
12934	* lib/net/http/response.rb:  ditto
12935	* lib/net/http.rb:  ditto
12936	* lib/webrick/httpstatus.rb:  ditto
12937
12938Sat Jun  9 01:24:28 2012  Tanaka Akira  <akr@fsij.org>
12939
12940	* process.c (rb_exec_err): before_exec() call moved from proc_exec_cmd
12941	  and proc_exec_sh.
12942	  (rb_proc_exec): ditto.
12943
12944Sat Jun  9 01:11:07 2012  Tanaka Akira  <akr@fsij.org>
12945
12946	* include/ruby/intern.h (rb_exec_arg_init): declaration changed to
12947	  return a value.
12948
12949	* process.c (rb_exec_arg_init): return a value.
12950
12951Fri Jun  8 23:44:14 2012  Tanaka Akira  <akr@fsij.org>
12952
12953	* process.c: don't check the availability of FD_CLOEXEC.  It should
12954	  be available if fork() is available.
12955
12956	* io.c: ditto.
12957
12958Fri Jun  8 22:39:32 2012  Tanaka Akira  <akr@fsij.org>
12959
12960	* process.c (rb_fork_err): revert r35955.  The condition needs !chfunc
12961	  to close ep[0] and ep[1].  The catched exception is re-raised
12962	  immediately after that if status is not NULL.
12963
12964Fri Jun  8 19:43:33 2012  Tanaka Akira  <akr@fsij.org>
12965
12966	* process.c (rb_exec_err): after_exec() call moved from proc_exec_cmd
12967	  and proc_exec_sh.
12968	  (rb_proc_exec): ditto.
12969
12970Fri Jun  8 19:00:59 2012  Tanaka Akira  <akr@fsij.org>
12971
12972	* process.c (ARGV_COUNT): unused macro removed.
12973	  (ARGV_SIZE): ditto.
12974	  (ALLOC_ARGV): ditto.
12975	  (ALLOC_ARGV_WITH_STR): ditto.
12976
12977Fri Jun  8 16:19:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12978
12979	* test/runner.rb (src_testdir): expand real path so that
12980	  TestGem#test_self_find_files does not fail by aliased load path when
12981	  srcdir contains a symbolic link.
12982
12983	* tool/runruby.rb (srcdir): ditto.
12984
12985Fri Jun  8 12:04:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12986
12987	* process.c (rb_fork_err): error state in the child process is prior
12988	  to exceptions in proc_syswait().
12989
12990	* process.c (rb_fork_err): determine status on errors.
12991
12992	* ext/pty/pty.c (establishShell): reraise exception if something
12993	  raised during sleep.
12994
12995	* ext/pty/pty.c (establishShell): now needs status to protect from
12996	  exceptions in rb_fork_err().
12997
12998Thu Jun  7 22:13:05 2012  Tanaka Akira  <akr@fsij.org>
12999
13000	* process.c (rb_fork_err): Fix the condition to use rb_protect.
13001
13002Thu Jun  7 20:29:12 2012  Tanaka Akira  <akr@fsij.org>
13003
13004	* include/ruby/intern.h: rb_exec_arg and related stuff moved back from
13005	  internal.h
13006
13007Thu Jun  7 15:53:03 2012  Koichi Sasada  <ko1@atdot.net>
13008
13009	* .gdbinit: add function `trace_machine_instructions' to trace
13010	  in native machine assemble.
13011	  See https://bugs.ruby-lang.org/projects/ruby-trunk/wiki/MachineInstructionsTraceWithGDB
13012	  for more details.
13013
13014Wed Jun  6 21:31:21 2012  Tanaka Akira  <akr@fsij.org>
13015
13016	* process.c (proc_exec_cmd) renamed from proc_exec_v.
13017	  (proc_exec_sh): renamed from rb_proc_exec_e.
13018	  (proc_spawn_cmd_internal): renamed from proc_spawn_v.
13019	  (proc_spawn_cmd): renamed from proc_spawn_n.
13020	  (proc_spawn_sh): renamed from proc_spawn.
13021
13022Wed Jun  6 21:18:47 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13023
13024	* process.c (try_with_sh): please take care of the macro defined by
13025	  you.
13026
13027Wed Jun  6 20:45:08 2012  Tanaka Akira  <akr@fsij.org>
13028
13029	* process.c (proc_exec_v): don't call dln_find_exe_r here because it
13030	  is not async-signal-safe and proc_exec_v is called in a child
13031	  process.
13032	  command_abspath field of rb_exec_arg.
13033	  (rb_exec_fillarg): call dln_find_exe_r and set command_abspath.
13034	  (rb_exec_err): Give the absolute path of the invoking command for
13035	  proc_exec_v, instead of the command name.
13036
13037	* internal.h: add command_abspath field for rb_exec_arg.
13038
13039Wed Jun  6 20:08:01 2012  Tanaka Akira  <akr@fsij.org>
13040
13041	* process.c (try_with_sh): take envp argument.
13042	  (exec_with_sh): ditto.  use it for execve.
13043	  (proc_exec_v): provide envp for try_with_sh.
13044
13045Wed Jun  6 13:25:04 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13046
13047	* win32/win32.c, include/ruby/win32.h (rb_w32_wrap_io_handle): new API.
13048	  this API wraps an I/O handle (HANDLE or SOCKET) and returns fd.
13049	  the second parameter should be combination of O_*, for example,
13050	  O_RDWR | O_BINARY | O_NOINHERIT.
13051
13052	* win32/win32.c, include/ruby/win32.h (rb_w32_unwrap_io_handle): new
13053	  API.  this API unwraps an I/O handle and close the fd (not closes
13054	  the handle itself).
13055
13056	[Feature #4906] [ruby-core:37227]
13057
13058Wed Jun  6 13:18:26 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13059
13060	* win32/win32.c (rb_w32_close): of course, console handle is not socket.
13061
13062Wed Jun  6 12:37:43 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13063
13064	* process.c (rb_run_exec_options_err): allocate a temporary buffer for
13065	  run_exec_dup2() for restoring fds on non-fork environments.
13066
13067Wed Jun  6 09:45:21 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13068
13069	* test/dl/test_c_{struct_entry,union_entity}.rb: sorry, typos.
13070
13071Wed Jun  6 05:27:54 2012  Tanaka Akira  <akr@fsij.org>
13072
13073	* process.c (rb_exec_fillarg): check use_shell field before accessing
13074	  a union field.
13075
13076Wed Jun  6 04:58:44 2012  Tanaka Akira  <akr@fsij.org>
13077
13078	* process.c (rb_spawn_process): prog variable is not used for Unix.
13079
13080Wed Jun  6 00:20:37 2012  Tanaka Akira  <akr@fsij.org>
13081
13082	* internal.h (rb_exec_arg_init): change return type to void.
13083
13084	* process.c (rb_exec_arg_init): don't return a value.
13085	  (rb_exec_arg_prepare): ditto.
13086	  (rb_spawn_process): don't take the prog argument.  extract the
13087	  information from earg.
13088	  (rb_spawn_internal): follow rb_spawn_process change.
13089	  (rb_f_spawn): ditto.
13090
13091	* io.c (pipe_open): don't take the prog argument.  extract the
13092	  information from eargp.
13093	  (pipe_open_v): follow pipe_open change.
13094	  (pipe_open_s): ditto.
13095
13096Tue Jun  5 23:51:33 2012  Tanaka Akira  <akr@fsij.org>
13097
13098	* internal.h (rb_exec_arg): use union to represent command invocation
13099	  with/without shell.
13100
13101	* process.c: follow the rb_exec_arg change.
13102
13103	* io.c (pipe_open): ditto.
13104
13105Tue Jun  5 22:28:46 2012  Tanaka Akira  <akr@fsij.org>
13106
13107	* internal.h: rb_exec_arg and related stuff moved from intern.h
13108
13109	* include/ruby/intern.h (rb_proc_exec_n): removed.
13110
13111Tue Jun  5 21:57:22 2012  Tanaka Akira  <akr@fsij.org>
13112
13113	* process.c (rb_exec_arg_fixup): allocate a temporary buffer for
13114	  run_exec_dup2 here because it should be async-signal-safe.
13115	  (run_exec_dup2): use the temporary buffer.
13116	  (run_exec_dup2_tmpbuf_size): new function.
13117
13118	* include/ruby/intern.h (rb_exec_arg): add dup2_tmpbuf field.
13119
13120Tue Jun  5 20:13:15 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13121
13122	* object.c (rb_obj_init_copy): should check if trusted too.
13123
13124Tue Jun  5 19:59:13 2012  Tanaka Akira  <akr@fsij.org>
13125
13126	* process.c (strtok): declaration removed because it is not used.
13127
13128Tue Jun  5 19:33:51 2012  Tanaka Akira  <akr@fsij.org>
13129
13130	* process.c (proc_spawn): don't detect simple command line here
13131	  because rb_exec_fillarg already did.
13132
13133Tue Jun  5 19:21:10 2012  Tanaka Akira  <akr@fsij.org>
13134
13135	* process.c (rb_exec_fillarg): bail out a loop eagerly.
13136
13137Tue Jun  5 19:15:14 2012  Tanaka Akira  <akr@fsij.org>
13138
13139	* process.c: add comments about async-signal-safe.
13140
13141	* io.c: ditto.
13142
13143Tue Jun  5 09:25:10 2012  Eric Hodel  <drbrain@segment7.net>
13144
13145	* io.c:  Edited documentation for IO and File open and new and
13146	  Kernel#open for consistency and clarity.
13147
13148Mon Jun  4 21:53:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13149
13150	* win32/win32.c (rb_w32_sysinit): let the system not display the
13151	  critical-error-handler message box and the Windows Error Reporting
13152	  dialog.  [ruby-core:45389] [Bug #6535]
13153
13154Mon Jun  4 19:36:25 2012  Tanaka Akira  <akr@fsij.org>
13155
13156	* process.c (rb_exec_fillarg): allocate one more element before
13157	  beginning in argv_str for try_with_sh.
13158
13159	* internal.h (ARGVSTR2ARGC): adjust for the above change.
13160	  (ARGVSTR2ARGV): ditto.
13161
13162Mon Jun  4 19:17:06 2012  Tanaka Akira  <akr@fsij.org>
13163
13164	* internal.h (ARGVSTR2ARGC): defined.
13165	  (ARGVSTR2ARGV): defined.
13166
13167	* process.c (proc_exec_v): use ARGVSTR2ARGV.
13168	  (rb_spawn_process): use ARGVSTR2ARGC and ARGVSTR2ARGV.
13169
13170	* io.c (pipe_open): use ARGVSTR2ARGV.
13171
13172Mon Jun  4 16:13:00 2012  Koichi Sasada  <ko1@atdot.net>
13173
13174	* vm_insnhelper.h: remove magical code "lfp[0] & 0x02".
13175	  Current VM doesn't use this bit.
13176
13177	* vm_core.h (RUBY_VM_GET_BLOCK_PTR): added.
13178
13179	* eval.c (rb_block_given_p): use RUBY_VM_GET_BLOCK_PTR().
13180
13181	* vm_eval.c (rb_f_block_given_p): ditto.
13182
13183Mon Jun  4 15:39:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13184
13185	* win32/win32.c (constat_apply): apply VT100 functions.
13186	  [ruby-core:44958] [Feature #6418]
13187
13188	* win32/win32.c (constat_parse): parse some VT100 escape sequence.
13189
13190Mon Jun  4 14:06:12 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13191
13192	* process.c (rb_exec_err): should preserve errno.
13193
13194Mon Jun  4 13:10:11 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13195
13196	* test/dl/test_c_{struct_entry,union_entity}.rb: broken require.
13197
13198Mon Jun  4 12:01:21 2012  Koichi Sasada  <ko1@atdot.net>
13199
13200	* test/ruby/test_backtrace.rb: fix test.
13201	  Windows path includes `:' character.
13202
13203Mon Jun  4 11:42:39 2012  Koichi Sasada  <ko1@atdot.net>
13204
13205	* vm_core.h (rb_location_t): fix type and field name.
13206	  (1) rename rb_location_t to rb_iseq_location_t.
13207	  (2) rename field names of rb_iseq_location_t to adjust
13208	      RubyVM::Backtrace::Location methods.
13209	      (2-1) filename -> path
13210	      (2-2) filepath -> absolute_path
13211	      (2-3) basename -> base_label
13212	      (2-4) name -> label
13213	  (3) rename filed name rb_iseq_location_t#line_no to
13214	      rb_iseq_location_t#first_lineno to clear purpose of this field.
13215	  (4) The field names rb_binding_t#(filename|line_no) are also renamed
13216	      to rb_binding_t#(path|first_lineno).
13217
13218	* compile.c: apply above changes.
13219
13220	* iseq.c: ditto.
13221
13222	* proc.c: ditto.
13223
13224	* vm*.c: ditto.
13225
13226Mon Jun  4 11:40:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13227
13228	* marshal.c (r_object0): also load TYPE_USRMARSHAL, TYPE_DATA using
13229	  compatible loader.
13230
13231Mon Jun  4 11:33:42 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13232
13233	* process.c (rb_run_exec_options_err): restore save_env() call for
13234	  non-fork environments.
13235
13236	* process.c (rb_exec_err): restore environments after the failure of
13237	  exec to fix [ruby-core:44093] [Bug #6249] on non-fork environments
13238
13239Mon Jun  4 10:42:04 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13240
13241	* io.c (pipe_open): follow up changes in r35889.
13242
13243	* process.c (proc_spawn_n): now uses char ** instead of VALUE *.
13244
13245	* process.c (rb_spawn_process): prog is now VALUE of String, not char *.
13246
13247Mon Jun  4 06:12:43 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13248
13249	* marshal.c (r_object0): remove old warning for _alloc.
13250
13251Mon Jun  4 04:24:06 2012  Tadayoshi Funaba  <tadf@dotrb.org>
13252
13253	* marshal.c: experimental test aborted.
13254	* complex.c: ditto.
13255	* rational.c: ditto.
13256	* include/ruby/intern.h: ditto.
13257
13258Mon Jun  4 00:45:18 2012  Tanaka Akira  <akr@fsij.org>
13259
13260	* process.c (rb_spawn_process): fix for Windows.  not tested.
13261
13262Mon Jun  4 00:11:51 2012  Tanaka Akira  <akr@fsij.org>
13263
13264	* process.c (rb_proc_exec_e): don't use ISSPACE().  \f, \r and \v
13265	  are not word separator in Bourne shell.
13266
13267Sun Jun  3 23:47:30 2012  Tanaka Akira  <akr@fsij.org>
13268
13269	* include/ruby/intern.h (rb_exec_arg): remove argc and argv fields.
13270	  add use_shell, argv_str and argv_buf fields.
13271
13272	* process.c (rb_proc_exec_e): don't split shell command line arguments
13273	  here to avoid memory allocation in a child process.
13274	  (rb_exec_fillarg): split shell command line arguments here.
13275	  (proc_exec_v): takes argv_str argument instead of argv.
13276	  (rb_proc_exec_ne): removed.
13277	  (rb_proc_exec_n): removed.
13278	  (rb_run_exec_options_err): don't initialize the removed fields.
13279	  (rb_exec_err): don't initialize the removed fields.
13280	  call proc_exec_v directly instead of rb_proc_exec_ne.
13281	  (rb_spawn_process): use use_shell field.
13282
13283Sun Jun  3 21:53:00 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13284
13285	* GPL: update text of GPLv2. [ruby-core:44488] [Bug #6328]
13286	  http://www.gnu.org/licenses/gpl-2.0.txt
13287
13288Sun Jun  3 21:22:52 2012  Tanaka Akira  <akr@fsij.org>
13289
13290	* process.c (rb_exec_getargs): remove rb_exec_arg argument.
13291
13292Sun Jun  3 21:14:26 2012  Tadayoshi Funaba  <tadf@dotrb.org>
13293
13294	* marshal.c: calls directly rb_{Complex,Rational}_marshal_load().
13295	  But now disabled. [experimental]
13296	* complex.c: followed the above.
13297	* rational.c: ditto.
13298	* include/ruby/intern.h: ditto.
13299
13300Sun Jun  3 21:18:17 2012  Tanaka Akira  <akr@fsij.org>
13301
13302	* process.c (rb_check_argv): use rb_str_new_frozen instead of
13303	  rb_str_new4.
13304
13305Sun Jun  3 20:10:52 2012  Tanaka Akira  <akr@fsij.org>
13306
13307	* process.c (rb_proc_exec_e): extended version of rb_proc_exec() to
13308	  call execle().
13309	  (rb_proc_exec): use rb_proc_exec_e().
13310	  (rb_exec_err): use rb_proc_exec_e().
13311
13312Sun Jun  3 19:47:18 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13313
13314	* thread.c (vm_living_thread_num): suppress a warning.
13315
13316Sun Jun  3 17:23:52 2012  Tanaka Akira  <akr@fsij.org>
13317
13318	* use execve() to preserve environment variables when exec method is
13319	  failed.  [ruby-core:44093] [ruby-trunk - Bug #6249]
13320
13321	* include/ruby/intern.h (rb_exec_arg): add envp_str and envp_buf field
13322	  to store envp of execve().
13323
13324	* process.c (proc_exec_v): takes envp_str as an argument and use it
13325	  for execve().
13326	  (rb_proc_exec_ne): extended version of rb_proc_exec_n().
13327	  (rb_proc_exec_n): use rb_proc_exec_ne().
13328	  (rb_proc_exec): follow proc_exec_v() change.
13329	  (fill_envp_buf_i): new function.
13330	  (rb_exec_arg_fixup): set up envp_str and envp_buf.
13331	  (save_env_i): removed.
13332	  (save_env): removed.
13333	  (rb_run_exec_options_err): don't modify environment variables.
13334	  (rb_exec_err): use rb_proc_exec_ne().
13335
13336Sun Jun  3 16:33:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13337
13338	* marshal.c: revert r35879 "now marshal_{load|dump} are external."
13339
13340	* complex.c (nucomp_marshal__{dump,load}): should use rb_marshal_{dump,load}.
13341
13342	* rational.c (nurat_marshal__{dump,load}): ditto.
13343
13344Sun Jun  3 14:13:58 2012  Tadayoshi Funaba  <tadf@dotrb.org>
13345
13346	* ext/date/date_core.c: checks whether the object is frozen or not.
13347
13348Sun Jun  3 14:00:51 2012  Tadayoshi Funaba  <tadf@dotrb.org>
13349
13350	* complex.c: wrote Complex#_dump and Complex::load.  But now
13351	  disabled (due to compatibility) [experimental].
13352
13353	* rational.c: wrote Rational#_dump and Rational::load. ditto.
13354
13355Sun Jun  3 10:23:32 2012  Tadayoshi Funaba  <tadf@dotrb.org>
13356
13357	* complex.c (nucomp_marshal_load): [ruby-core:45394]
13358	* rational.c (nurat_marshal_load): ditto.
13359
13360Sun Jun  3 03:15:46 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13361
13362	* regparse.c (onig_number_of_names): suppress a warning.
13363
13364Sun Jun  3 01:36:52 2012  Koichi Sasada  <ko1@atdot.net>
13365
13366	* vm_backtrace.c: change names.
13367	  (1) Class name: RubyVM::FrameInfo -> RubyVM::Backtrace::Location.
13368	  (2) Method name: RubyVM::FrameInfo.caller ->
13369	      Kernel.caller_locations.
13370	  (3) Instance methods of
13371	      RubyVM::FrameInfo (RubyVM::Backtrace::Location)
13372	      (3-1) name -> label
13373	      (3-2) basename -> base_label (basename is confusing with
13374		    File.basename)
13375	      (3-3) line_no -> lineno (We have already similar name
13376		    File#lineno, commented by kou [ruby-dev:45686]).
13377	      (3-4) filename -> path.
13378	      (3-5) filepath -> absolute_path.
13379	      (3-5) iseq -> removed (we will make other APIs to access iseq
13380		    and other information of frame for debugging).
13381
13382	* test/ruby/test_backtrace.rb: apply above changes.
13383	  And apply comment from kou [ruby-dev:45686].
13384
13385Sun Jun  3 00:49:11 2012  Koichi Sasada  <ko1@atdot.net>
13386
13387	* common.mk: fix to build vm_backtrace.c only itself (vm_backtrace.c
13388	  is no longer included from vm.c).  I hope this separation reduce
13389	  compile time of vm.c.
13390
13391	* internal.h: ditto.
13392
13393	* vm.c, vm_core.h, vm_dump.c, vm_eval.c: ditto.
13394
13395	* vm_eval.c: some functions (callee, etc) moved to vm_backtrace.c.
13396
13397Sun Jun  3 00:20:53 2012  Koichi Sasada  <ko1@atdot.net>
13398
13399	* vm_backtrace.c: added.  Separate backtrace related functions to
13400	  this file.
13401
13402	* vm.c, common.mk: ditto.
13403
13404Sat Jun  2 18:09:02 2012  Akinori MUSHA  <knu@iDaemons.org>
13405
13406	* lib/ipaddr.rb: Inhibit zero-filled octets in an IPv4 address in
13407	  all platforms. [ruby-dev:45671]
13408
13409	* lib/ipaddr.rb: Allow the x:x:x:x:x:x:d.d.d.d form not limited to
13410	  IPv4 mapped/compatible addresses.  This change also makes it
13411	  possible for the parser to understand IPv4 mapped and compatible
13412	  IPv6 addresses in non-compressed form.
13413
13414	* lib/ipaddr.rb: Stop exposing IPSocket.valid*? methods which were
13415	  only usable on non-IPv6-ready platforms.
13416
13417Sat Jun  2 16:59:00 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13418
13419	* string.c (rb_enc_cr_str_buf_cat): don't reset coderange as unknown.
13420	  the condition 'ptr_a8 && str_cr != ENC_CODERANGE_7BIT' means not
13421	  unknown, str is also ASCII-8BIT because str_encindex == ptr_encindex,
13422	  and nont (str_cr == ENC_CODERANGE_UNKNOWN) and
13423	  str_cr != ENC_CODERANGE_7BIT means str_cr is valid because ASCII-8BIT
13424	  can't be broken. [ruby-dev:45688] [Bug #6509]
13425
13426Sat Jun  2 07:04:48 2012  Eric Hodel  <drbrain@segment7.net>
13427
13428	* doc/re.rdoc (Performance):  Replaced incorrect example of reducing
13429	  backtracking through anchoring with reduced backtracking through a
13430	  range.  [ruby-trunk - Bug #6525]
13431
13432Sat Jun  2 06:34:15 2012  Eric Hodel  <drbrain@segment7.net>
13433
13434	* doc/re.rdoc (Performance):  Removed useless sample output from final
13435	  performance example and switched from #match to #=~ for consistency.
13436	  [ruby-trunk - Bug #6524]
13437
13438Fri Jun  1 09:30:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13439
13440	* object.c (class_or_module_required): extract check for class or
13441	  module.
13442
13443Fri Jun  1 08:50:47 2012  Eric Hodel  <drbrain@segment7.net>
13444
13445	* array.c:  Updated Array documentation formatting.  Patch by Zachary
13446	  Scott.  [ruby-trunk - Feature #6517]
13447
13448Fri Jun  1 06:57:10 2012  Eric Hodel  <drbrain@segment7.net>
13449
13450	* ext/dl/lib/dl/struct.rb (DL::CStructEntity#set_ctypes):  Refactored
13451	  #set_ctypes using newer ruby features to simplify its implementation.
13452	* test/dl/test_c_struct_entry.rb (class DL):  Test to verify
13453	  refactoring.
13454
13455Fri Jun  1 06:40:25 2012  Eric Hodel  <drbrain@segment7.net>
13456
13457	* object.c (Init_Object):  Restored Kernel documentation based on
13458	  Pickaxe book documentation.  Patch by Zachary Scott.
13459	  [ruby-trunk - Feature #6521]
13460
13461Fri Jun  1 06:29:42 2012  Eric Hodel  <drbrain@segment7.net>
13462
13463	* object.c (rb_equal):  Let Object be a link in #=== documentation.
13464	  Patch by Zachary Scott.  [ruby-trunk - Feature #6518]
13465
13466Thu May 31 09:27:06 2012  Eric Hodel  <drbrain@segment7.net>
13467
13468	* ext/dl/lib/dl/struct.rb (DL::CStructEntity::size):  Refactored ::size
13469	  to remove unused variables and simplify using newer ruby features.
13470	* test/dl/test_c_struct_entry.rb:  Test to validate refactoring
13471
13472Thu May 31 08:40:34 2012  Eric Hodel  <drbrain@segment7.net>
13473
13474	* ext/dl/lib/dl/struct.rb (DL::CUnionEntity#set_ctypes):  Refactored
13475	  #set_types to reuse DL::CUnionEntity::size
13476	* test/dl/test_c_union_entity.rb:  Added test
13477
13478Thu May 31 08:20:14 2012  Eric Hodel  <drbrain@segment7.net>
13479
13480	* ext/dl/lib/dl/struct.rb (DL::CUnionEntity::size):  Fixed ::size to
13481	  return the size of the union.
13482	* test/dl/test_c_union_entity.rb:  Test for DL::CUnionEntity::size
13483
13484Thu May 31 07:45:43 2012  Eric Hodel  <drbrain@segment7.net>
13485
13486	* ext/dl:  Added documentation.  Patch by Vincent Batts.
13487	  [ruby-trunk - Bug #6496]
13488
13489Wed May 30 16:30:00 2012  Kenta Murata  <mrkn@cookpad.com>
13490
13491	* ext/bigdecimal/lib/bigdecimal/jacobian.rb,
13492	  ext/bigdecimal/lib/bigdecimal/newton.rb:
13493	  fix documentation comments.
13494	  Patch by alperakgun from github.com/shyouhei/ruby/pull/8
13495
13496Wed May 30 16:20:00 2012  Kenta Murata  <mrkn@cookpad.com>
13497
13498	* ext/bigdecimal/lib/bigdecimal/jacobian.rb (Jacobian#dfdxi):
13499	  fix jacobian to get stuck in an infinite loop when a solution is not
13500	  found due to forget to increment nRetry counter.
13501	  Patch by alperakgun from github.com/shyouhei/ruby/pull/8
13502
13503Wed May 30 10:58:31 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13504
13505	* time.c (utc_offset_arg): utc offset can be precision in seconds.
13506	  e.g. old Europe/Lisbon (c.f. [ruby-dev:40066])
13507
13508Wed May 30 06:20:29 2012  Eric Hodel  <drbrain@segment7.net>
13509
13510	* error.c (exc_set_backtrace):  Updated documentation to indicate
13511	  set_backtrace allows a string as well as an array of strings.
13512	  [ruby-trunk - Bug #6501]
13513
13514Tue May 29 17:28:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13515
13516	* strftime.c (rb_strftime_with_timespec): support GNU extension triple
13517	  colons modifier.  [EXPERIMENTAL]
13518
13519	* strftime.c (rb_strftime_with_timespec): check conversion with locale
13520	  modifier.
13521
13522	* strftime.c (rb_strftime_with_timespec): colons are valid only for
13523	  'z' and must come just before it.
13524
13525Mon May 28 16:56:55 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13526
13527	* lib/test/unit.rb (Test::Unit::Runner#_prepare_run): StatusLineOutput
13528	  needs job_status to be :replace.
13529
13530Mon May 28 13:35:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13531
13532	* common.mk (do-install-*): fix dependencies.  based on the patch by
13533	  nagachika at [ruby-dev:45683].  [Bug #6506]
13534
13535Mon May 28 12:03:04 2012  Narihiro Nakamura  <authornari@gmail.com>
13536
13537	* gc.c (obj_free): doesn't free a method table if it doesn't
13538	  exist. [ruby-dev:44436]
13539	* test/ruby/test_gc.rb (class TestGc): added the test case for
13540	  this issue.
13541
13542Sun May 27 23:37:48 2012  Koichi Sasada  <ko1@atdot.net>
13543
13544	* benchmark/bm_vm1_lvar_init.rb: added.
13545	  This benchmark measures a initialize time of non-used variable.
13546
13547	* benchmark/bm_vm1_lvar_set.rb: added.
13548	  This benchmark measures a local variables initialization time.
13549
13550	* benchmark/bm_vm2_bigarray.rb: added.
13551	  This benchmark mesures a big array literal creation time.
13552
13553	* benchmark/bm_vm2_bighash.rb: added.
13554	  This benchmark mesures a big hash literal creation time.
13555
13556	* benchmark/bm*: change notation "i=0" to "i = 0".
13557
13558Sun May 27 13:33:26 2012  Koichi Sasada  <ko1@atdot.net>
13559
13560	* benchmark/driver.rb: fix to continue benchmarks when
13561	  an error is occurred.
13562
13563Sun May 27 11:27:50 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13564
13565	* lib/test/unit.rb (Test::Unit::Runner#_prepare_run): fix operator
13566	  precedence, so that platform and TERM should be counted.
13567
13568Sun May 27 10:02:33 2012  Tadayoshi Funaba  <tadf@dotrb.org>
13569
13570	* ext/date/date_strftime.c: allows %Ok and %Ol.
13571
13572Sun May 27 09:29:20 2012  Tadayoshi Funaba  <tadf@dotrb.org>
13573
13574	* ext/date/date_core.c: modified doc.
13575
13576Sat May 26 19:04:34 2012  Tadayoshi Funaba  <tadf@dotrb.org>
13577
13578	* ext/date/date_core.c: added description.
13579
13580Sat May 26 18:14:57 2012  Tadayoshi Funaba  <tadf@dotrb.org>
13581
13582	* ext/date/date_strftime.c: reduced the code.
13583
13584Sat May 26 18:08:59 2012  Tadayoshi Funaba  <tadf@dotrb.org>
13585
13586	* time.c: modified doc.
13587	* ext/date/date_core.c: ditto.
13588
13589Sat May 26 17:05:45 2012  Koichi Sasada  <ko1@atdot.net>
13590
13591	* vm.c (backtrace_*): change type of lev and n from size_t to int.
13592	  Also set type of rb_backtrace_t#backtrace_size to int.
13593	  A patch from nobu.
13594
13595	* vm_eval.c: ditto.
13596
13597Sat May 26 16:26:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13598
13599	* file.c (realpath_rec): UNC prefix does not end with path separator,
13600	  so new separator is needed after it.
13601
13602Sat May 26 15:29:22 2012  Koichi Sasada  <ko1@atdot.net>
13603
13604	* test/ruby/test_backtrace.rb (test_caller_lev):
13605	  decrease recursion size.
13606
13607Sat May 26 13:50:48 2012  Koichi Sasada  <ko1@atdot.net>
13608
13609	* NEWS: add Kernel#caller's second argument.
13610
13611Sat May 26 13:40:29 2012  Koichi Sasada  <ko1@atdot.net>
13612
13613	* vm.c (RubyVM::FrameInfo): add a class to access each frame
13614	  information.  You don't need to parse strings from caller().
13615	  FrameInfo has the following methods:
13616	    FrameInfo#name: method name, class name, etc with decorations.
13617	    FrameInfo#basename: name without decorations.
13618	    FrameInfo#line_no: line number.
13619	    FrameInfo#filename: file name.
13620	    FrameInfo#filepath: full filepath.
13621	    FrameInfo#iseq: iseq if it is iseq frame (defined by ruby script)
13622	    FrameInfo#to_s: return caller() method style string.
13623	  RubyVM::FrameInfo.caller(n, lev) returns array of FrameInfo objects.
13624	  The name "RubyVM::FrameInfo.caller" is long and ambiguous (it is
13625	  confusing with Kernel::caller() method), we need to change the name
13626	  before Ruby 2.0 release. Good names or comments are welcome.
13627
13628	* test/ruby/test_backtrace.rb: add a test for above change.
13629
13630Sat May 26 12:18:09 2012  Koichi Sasada  <ko1@atdot.net>
13631
13632	* vm.c (frame_info_to_str): add `break'.
13633
13634	* vm.c (backtrace_object): remove lev and n parameter.
13635	  backtrace_object always returns all of backtrace information.
13636
13637	* vm.c (rb_backtrace_to_str_ary): fix to use backtrace_object().
13638	  This change improve performance of caller(lev, n).
13639
13640	* benchmark/bm_vm3_backtrace.rb: added to check above improvement.
13641	  FYI: measurement on my laptop, 1.9.3p229 needs 5.125 sec,
13642	  and current trunk only needs 0.299sec.
13643
13644Sat May 26 11:05:09 2012  Koichi Sasada  <ko1@atdot.net>
13645
13646	* vm.c (rb_frame_info_t): keep previous ISEQ frame info for CFUNC
13647	  frame info.  And fix to cache a calculated line_no of ISEQ frame
13648	  info.
13649
13650Sat May 26 09:54:53 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
13651
13652	* ext/openssl/ossl_ssl.c: Allow disabling client-side renegotiation.
13653	* test/openssl/test_ssl.rb: Simple tests for this.
13654
13655	  Client-side renegotiation is still considered problematic, even
13656	  when used in the context of secure renegotiation (RI, RFC 5746).
13657	  The changes allow users to either completely disable client
13658	  renegotiation on the server, or to specify a maximum number of
13659	  handshakes allowed in total. The number of total handshakes is
13660	  counted in a callback set as SSL_set_info_callback. If the
13661	  maximum number of handshakes is exceeded an error will be raised
13662	  We do not support renegotiation in the OpenSSL extension, therefore
13663	  this feature can only be tested externally.
13664	  The feature is opt-in, the default setting will be to allow
13665	  unlimited client renegotiation, as was the case before.
13666
13667Fri May 25 23:38:58 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
13668
13669	* test/openssl/test_ssl.rb: Clarify the intention of errors to be
13670	  expected. Two errors are possible when connection is refused due
13671	  to a protocol version that was explicitly disallowed,
13672	  OpenSSL::SSL::SSLError or Errno::ECONNRESET, depending on the
13673	  OpenSSL version in use.
13674
13675Fri May 25 22:19:40 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
13676
13677	* ext/openssl/ossl_ssl.c: Revert r35583
13678	* test/openssl/test_ssl.rb: Handle ECONNRESET in code instead to avoid
13679	  the test failing in Ruby CI [1]
13680
13681	[1] http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20120507T190102Z.log.html.gz#test-all
13682
13683Fri May 25 19:51:36 2012  Koichi Sasada  <ko1@atdot.net>
13684
13685	* vm_eval.c (rb_f_caller): caller() method accepts second optional
13686	  argument `n' which specify how many frames should return.
13687	  For example, `caller(0, 1)' returns only one frame information
13688	  which calls caller() method.  If there are less than n frame
13689	  information, then all frame information are returned.  If n is 0,
13690	  then always return [].
13691	  This fix is part of [ruby-dev:42345] [Ruby 1.9-Feature#3917].
13692	  However, performance and features are not enough.
13693	  RDoc is also not available.
13694
13695	* test/ruby/test_backtrace.rb: add a test for above.
13696
13697Fri May 25 17:05:07 2012  Koichi Sasada  <ko1@atdot.net>
13698
13699	* vm.c (oldbt_init, vm_backtrace_str_ary): arg->data should
13700	  be initialized before calling `backtrace_each()'.
13701
13702Fri May 25 16:11:27 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13703
13704	* trunk/ext/-test-/printf/printf.c: change function names because of
13705	  conflict with msvcrt.  fixed build error of mswin.
13706
13707Fri May 25 10:52:52 2012  Koichi Sasada  <ko1@atdot.net>
13708
13709	* vm.c: refactoring backtrace related functions.
13710	  (1) unify similar functions (rb_backtrace_each() and
13711	      backtrace_object()).  backtrace_each() is a unified function.
13712	      variation:
13713	      a) backtrace_object(): create backtrace object.
13714	      b) vm_backtrace_str_ary(): create bt as an array of string.
13715	      c) vm_backtrace_print(): print backtrace to specified file.
13716	      d) rb_backtrace_print_as_bugreport(): print backtrace on
13717	                                            bugreport style.
13718	  (2) remove rb_backtrace_each().  Use backtrace_each() instead.
13719	  (3) change the type of lev parameter to size_t.
13720	      a) lev == 0 means current frame (exception, etc use it).
13721	      b) lev == 1 means upper frame (caller(0) use it).
13722
13723	* vm_core.h, vm_dump.c, vm_eval.c: ditto.
13724
13725	* vm.c (backtrace_object(), vm_backtrace_str_ary()): fix to return a
13726	  correct size of caller(lev) array.
13727	  Let n be a "caller(0).size" then ln as caller(lev).size should be
13728	  (n - lev).  However, the previous implementation returns a wrong
13729	  size array (ln > n - lev).  [ruby-dev:45673]
13730
13731	* test/ruby/test_backtrace.rb: add tests for backtrace.
13732
13733Fri May 25 08:51:39 2012  Eric Hodel  <drbrain@segment7.net>
13734
13735	* enum.c (enum_count):  Enumerable#count no longer uses #size when
13736	  counting elements.  Patch by Nobuhiro IMAI.  [ruby-trunk - Bug #6473]
13737
13738Fri May 25 01:15:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13739
13740	* sprintf.c (ruby__sfvextra): [EXPERIMENTAL] use inspect instead of
13741	  to_s if plus flag is given.
13742
13743	* vsnprintf.c (BSD_vfprintf): pass sign flag.
13744
13745Fri May 25 00:37:22 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13746
13747	* test/rubygems/test_gem_indexer.rb (setup, teardown): save @tempdir
13748	  to remove it properly.  [Bug #5348]
13749
13750Thu May 24 23:36:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13751
13752	* vsnprintf.c (BSD_vfprintf): [EXPERIMENTAL] object representation in
13753	  rb_enc_vsprintf(). [Feature #5896]
13754
13755Thu May 24 15:33:01 2012  Koichi Sasada  <ko1@atdot.net>
13756
13757	* vm_method.c (rb_method_defined_by): removed.
13758	  nobu pointed out that rb_method_basic_definition_p() is enough
13759	  for last commit.
13760
13761	* error.c, eval_error.c: change for above.
13762
13763Thu May 24 14:30:13 2012  Koichi Sasada  <ko1@atdot.net>
13764
13765	* vm.c: add RubyVM::Backtrace object (btobj).
13766	  Backtrace information contains an array consists of location
13767	  information for each frames by string.
13768	  RubyVM::Backtrace object is lightweight backtrace information,
13769	  which contains complete information to generate traditional style
13770	  backtrace (an array of strings) with faster generation.
13771	  If someone accesses to backtrace information via
13772	  Exception#backtrace, then convert a RubyVM::Backtrace object to
13773	  traditional style backtrace.
13774	  This change causes incompatibility on marshal dumped binary
13775	  of Exception.  If you have any trouble on it, please tell us
13776	  before Ruby 2.0 release.
13777	  Note that RubyVM::Backtrace object should not expose Ruby level.
13778
13779	* error.c, eval.c, vm_eval.c: ditto.
13780
13781	* internal.h: ditto.
13782
13783	* eval_error.c: fix to skip "set_backtrace" method invocation in
13784	  creating an exception object if it call a normal set_backtrace
13785	  method (defined by core).
13786
13787	* test/ruby/test_settracefunc.rb: fix for above change.
13788
13789	* vm_method.c (rb_method_defined_by): added.  This function
13790	  checks that the given object responds with the given method
13791	  by the given cfunc.
13792
13793	* benchmark/bm_vm2_raise1.rb, benchmark/bm_vm2_raise2.rb:
13794	  add to measure exception creation speed. raise1 create
13795	  exception objects from shallow stack frame.  raise2 create
13796	  exception objects from deep stack frame.
13797
13798Thu May 24 12:07:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13799
13800	* io.c (io_strip_bom): check EOF.  [Bug #6487][ruby-core:45203]
13801
13802Wed May 23 22:06:14 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13803
13804	* lib/net/http/header.rb (Net::HTTPHeader#range): fix broken parser of
13805	  HTTP Range request. Old one can't parse invalid specs and multiple
13806	  specs correctly.
13807
13808Wed May 23 10:18:54 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
13809
13810	* win32/win32.c (finish_overlapped_socket, overlapped_socket_io):
13811	  replace ECONNABORTED to EPIPE in send, sendto and sendmsg to improve
13812	  BSD socket compatibility.  this change removes a failure on the test
13813	  of net/ftp.
13814
13815Wed May 23 05:35:58 2012  Eric Hodel  <drbrain@segment7.net>
13816
13817	* lib/net/http.rb:  Broke up Net::HTTP into individual files.
13818	  [ruby-trunk - Feature #6435]
13819	* lib/net/http/backward.rb:  ditto.
13820	* lib/net/http/response.rb:  ditto.
13821	* lib/net/http/exceptions.rb:  ditto.
13822	* lib/net/http/responses.rb:  ditto.
13823	* lib/net/http/generic_request.rb:  ditto.
13824	* lib/net/http/header.rb:  ditto.
13825	* lib/net/http/request.rb:  ditto.
13826	* lib/net/http/proxy_delta.rb:  ditto.
13827	* lib/net/http/requests.rb:  ditto.
13828
13829Wed May 23 05:15:11 2012  Eric Hodel  <drbrain@segment7.net>
13830
13831	* class.c (rb_mod_init_copy):  Clear the cached inspect string of a
13832	  dup'd anonymous module or class.  [ruby-trunk - Bug #6454]
13833	* test/ruby/test_module.rb (class TestModule):  ditto
13834
13835Tue May 22 16:49:15 2012  Koichi Sasada  <ko1@atdot.net>
13836
13837	* vm_core.h: add a data type rb_location_t to store iseq location
13838	  information.
13839	  rb_location_t#filename, filepath, name and line_no was moved from
13840	  rb_iseq_t.  rb_location_t#basename is a new field which is
13841	  similar to `name' field without any decoration.
13842	  `name' field contains some decoration such as `block in foo'.
13843	  `basename' only contains `foo'.
13844	  rb_iseq_t contains memory object of rb_location_t.
13845
13846	* iseq.c: setup rb_location_t for each rb_iseq_t memory objects.
13847
13848	* compile.c, proc.c, vm.c, vm_dump.c, vm_eval.c, vm_insnhelper.c,
13849	  vm_method.c: support about it.
13850
13851Tue May 22 00:45:05 2012  Yusuke Endoh  <mame@tsg.ne.jp>
13852
13853	* struct.c (rb_struct_members): Refactoring.  As Struct#members had
13854	  returned an array of String, the old code was needed to convert
13855	  Symbols to Strings.  But it is almost unnecessary because the
13856	  method now returns an array of Symbols.  A patch by Masaki
13857	  Matsushita <glass.saga at gmail dot com>  [Feature #6218]
13858	  [ruby-dev:45451]
13859
13860Mon May 21 19:20:25 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13861
13862	* lib/net/ftp.rb (Net::FTP#retrbinary): close only if conn is not nil
13863	  because transfercmd may fail and return nil.
13864
13865	* lib/net/ftp.rb (Net::FTP#retrlines): ditto.
13866
13867Mon May 21 15:10:28 2012  Akinori MUSHA  <knu@iDaemons.org>
13868
13869	* ext/syslog/syslog.c: Classify constants and macros into several
13870	  sub-modules. (Syslog::Priority, Syslog::Level, Syslog::Option
13871	  and Syslog::Macros)
13872
13873	* ext/syslog/syslog.c (mSyslog_inspect): Use rb_sprintf().
13874
13875	* ext/syslog/syslog.c (mSyslog_inspect): Make sure self is a
13876	  module before calling rb_class2name().
13877
13878Mon May 21 12:44:11 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
13879
13880	* .travis.yml (install): It seems tcl/tk is skipped in Travis
13881	  CI. Trying to fix the situation.
13882
13883Mon May 21 12:11:25 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13884
13885	* enc/depend (ENCOBJS): add dependencies.
13886
13887	* enc/make_encmake.rb (target_encodings): extract dependencies.
13888
13889Mon May 21 11:26:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13890
13891	* lib/net/ftp.rb (Net::FTP#transfercmd): rescue shutdown.
13892
13893Sun May 20 23:00:11 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13894
13895	* ext/extmk.rb (extmake): reopen $stdout to NULL, since setting
13896	  $stdout cannot affect child processes.
13897
13898Sun May 20 21:36:39 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13899
13900	* enc/shift_jis.c (code_to_mbclen): return
13901	  ONIGERR_INVALID_CODE_POINT_VALUE if the code is invalid.
13902
13903	* string.c (tr_next): increment character until the code
13904	  is a valid character. [ruby-dev:45652] [Bug #6450]
13905
13906Sun May 20 12:25:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13907
13908	* Makefile.in (LIBRUBY_SO): link EXTSOLIBS too.
13909
13910	* ext/extmk.rb (mf.macro): use EXTSOLIBS instead of SOLIBS to get rid
13911	  of discard libraries needed by default.  [Bug #6462]
13912
13913Sat May 19 19:04:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13914
13915	* ext/extmk.rb (command_output): ENCOBJS is needed for all linked
13916	  ruby, if --disable-shared and --with-static-linked-ext.
13917
13918	* ext/extmk.rb (command_output): dmyext is needed as DLDOBJS if no
13919	  static linked extensions.
13920
13921	* Makefile.in, common.mk (PROGRAM): no extension libraries.
13922
13923	* common.mk (build-ext): pass macros for libruby.so.
13924
13925	* ext/extmk.rb (command_output): link extension libraries and encoding
13926	  libraries into libruby.so, not ruby executable.
13927
13928	* ext/extmk.rb (command_output): fold long macro lines.
13929
13930	* Makefile.in (LIBEXT): add macro.
13931
13932	* configure.in (ENCOBJS, EXTOBJS): use LIBEXT, not hardcoded suffix.
13933
13934	* Makefile.in (LIBRUBY_A): fix typo.  re-applying r35242.
13935
13936Sat May 19 04:46:53 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
13937
13938	* ext/openssl/extconf.rb: Use Logging::message instead of message.
13939	* ext/zlib/extconf.rb: ditto.
13940
13941Fri May 18 18:13:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13942
13943	* lib/mkmf.rb (MakeMakefile#configuration): keep space at end of
13944	  OUTFLAG and COUTFLAG.  [ruby-dev:45650]
13945
13946Fri May 18 17:39:42 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
13947
13948	* thread_pthread.c (rb_thread_create_timer_thread): Added error
13949	  check when failing fcntl(). [Bug #6147] [ruby-dev:45364]
13950
13951Fri May 18 17:41:00 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13952
13953	* ext/extmk.rb (extmake): link archives only, skip script only
13954	  extension libraries.
13955
13956Fri May 18 17:25:33 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
13957
13958	* cont.c: bump up fiber machine stack size when running on 64bit
13959	  arch. [Bug #6344] [ruby-dev:45554]
13960
13961Fri May 18 15:20:56 2012  NARUSE, Yui  <naruse@ruby-lang.org>
13962
13963	* lib/uri/generic.rb (URI::Generic.build): duplicate args before adding
13964	  new items. (don't change arguments)
13965
13966	* lib/uri/generic.rb (URI::Generic.build): use URI::Generic::COMPONENT
13967	  if this method is called from URI::Generic.
13968
13969	* lib/uri/generic.rb (URI::Generic.build2): escape only if the item is
13970	  a String.
13971
13972	* lib/uri/generic.rb (URI::Generic.build2): use DEFAULT_PARSER because
13973	  it doesn't have parser method. [Bug #6420]
13974
13975Fri May 18 15:54:07 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
13976
13977	* ext/zlib/extconf.rb: Use an exception instead of bare puts.
13978
13979Fri May 18 15:53:05 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
13980
13981	* ext/psych/extconf.rb: Use an exception instead of bare abort.
13982
13983Fri May 18 15:51:32 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
13984
13985	* ext/fiddle/extconf.rb: Use an exception instead of bare abort.
13986
13987Fri May 18 15:49:35 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
13988
13989	* ext/readline/extconf.rb: Use an exception instead of bare exit.
13990
13991Fri May 18 15:38:11 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
13992
13993	* ext/ripper/extconf.rb: Use an exception instead of bare
13994	  Logging.message.
13995
13996Fri May 18 15:23:06 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
13997
13998	* ext/openssl/extconf.rb: Clarify a message when hit Apple
13999	  OpenSSL issue.
14000
14001Fri May 18 15:14:32 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
14002
14003	* ext/extmk.rb: Show a message when extconf.rb raised an exception.
14004	* ext/openssl/extconf.rb: Use exception raising instead of message
14005	  and/or abort. We want to display error message to console _and_
14006	  logging into mkmf.log.
14007
14008Fri May 18 06:14:07 2012  Eric Hodel  <drbrain@segment7.net>
14009
14010	* ext/syslog/lib/syslog/logger.rb:  Added Syslog::Logger which was
14011	  ported from the SyslogLogger gem.  [ruby-trunk - Feature #5096]
14012	* NEWS:  ditto.
14013	* test/syslog/test_syslog_logger.rb:  ditto.
14014
14015Fri May 18 01:28:21 2012  Aaron Patterson <aaron@tenderlovemaking.com>
14016
14017	* ext/psych/parser.c (transcode_string): fix encoding index names.
14018	  Thanks markizko for reporting.
14019
14020Thu May 17 23:03:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14021
14022	* configure.in: fix function name to be checked, to initialize
14023	  rb_thread_cond_t properly.
14024
14025	* thread_pthread.c (native_cond_initialize, native_cond_destroy):
14026	  fix macro name.
14027
14028Thu May 17 12:53:07 2012  Yuki Yugui Sonoda  <yugui@google.com>
14029
14030	* thread.c, thread_pthread.c: Moved pthread-specific preprocessor
14031	  hacks to thread_pthread.c
14032
14033Thu May 17 12:18:47 2012  Yuki Yugui Sonoda  <yugui@google.com>
14034
14035	* io.c: Fix a mistake on merging the patch in the previous commit.
14036
14037Thu May 17 11:33:07 2012  Yuki Yugui Sonoda  <yugui@google.com>
14038
14039	Imports Ruby's port to NativeClient (a.k.a NaCl).
14040	Patch by Google Inc. [ruby-core:45073].
14041
14042	* configure.in (RUBY_NACL): New M4 func to configure variables for
14043	  NaCl.
14044	  (RUBY_NACL_CHECK_PEPPER_TYPES): New M4 func to check the old names
14045	  of Pepper interface types.
14046	  (BTESTRUBY): New variable to specify which ruby should be run on
14047	  "make btest". NaCl can run the built binary by sel_ldr, but it need
14048	  rbconfig.rb. So this variable is distinguished from $MINIRUBY.
14049
14050	* thread_pthread.c: Disabled some features on NaCl.
14051
14052	* io.c: ditto.
14053
14054	* process.c: ditto.
14055
14056	* signal.c: ditto.
14057
14058	* file.c: ditto.
14059
14060	* missing/flock.c: ditto.
14061
14062	* nacl/pepper_main.c: An example implementation of Pepper application
14063	  that embeds Ruby.
14064
14065	* nacl/example.html: An example of web page that uses the Pepper
14066	  application.
14067
14068	* nacl/nacl-config.rb: Detects variants of NaCl SDK.
14069
14070	* nacl/GNUmakefile.in: Makefile template for NaCl specific build
14071	  process.
14072
14073	* nacl/package.rb: script for packaging a NaCl-Ruby embedding
14074	  application.
14075
14076	* nacl/reate_nmf.rb: Wrapper script of create_nmf.py
14077
14078	* dln.c (dln_load): Added a hack to call on NaCl.
14079
14080	* util.c (ruby_getcwd): Path to the current directory is not available
14081	  on NaCl.
14082
14083Thu May 17 10:54:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14084
14085	* ext/tk/extconf.rb: add -l options to $libs not $LDFLAGS,
14086	  to be passed to EXTLIBS in exts.mk.
14087
14088	* enc/encinit.c.erb: use %-lines to adjust indent in the generated file.
14089
14090	* lib/mkmf.rb (MakeMakefile#have_framework): combine -framework option
14091	  and its argument with an equal sign not to be separated in merge_libs.
14092
14093	* ext/tk/extconf.rb: ditto.
14094
14095	* ext/extmk.rb: EXTLDFLAGS also needs to be passed.
14096
14097Wed May 16 15:44:22 2012  Yuki Yugui Sonoda  <yugui@google.com>
14098
14099	* configure.in: Fix an unbalanced quote.
14100
14101Wed May 16 15:43:10 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14102
14103	* ext/extmk.rb (exts.mk): use double quotes instead of single quotes
14104	  for commandline because it's not recognized as quotes on Windows.
14105
14106Wed May 16 15:15:55 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14107
14108	* configure.in (LD): enclose with single quotes but not double quotes
14109	  not to expand command substitution.
14110
14111Wed May 16 14:19:51 2012  Yuki Yugui Sonoda  <yugui@google.com>
14112
14113	Supports static linking of extensions and encodings again.
14114	Fixes --with-static-linked-ext.
14115
14116	Patch by Google Inc. [ruby-core:45073].
14117
14118	* Makefile.in (ENCOBJS, EXTOBJS): New variables to specify static
14119	  linked libraries. Also reintroduces extinit.o, introduces encinit.o
14120	  introduces encinit.o
14121
14122	* common.mk: Builds static libraries rather than shared objects if
14123	  specified.
14124
14125	* configure.in (LD): new substitution.
14126
14127	* enc/depend: Supports static linked libraries
14128	  (libencs, libenc, libtrans): New target.
14129
14130	* enc/encinit.c.erb: new template to generate the initialization of
14131	  statically linked encodings.
14132
14133	* enc/make_encmake.rb (--module): new flag to specify whether static
14134	  or dynamic.
14135
14136	* transcode_data.h (TRANS_INIT): New macro to get rid of the name
14137	  collision of encoding initializers and transcoder initializers.
14138
14139	* ext/extmk.rb: Fixes the behavior on $extstatic is true.
14140
14141	* lib/mkmf.rb (clean-static): new target to clean up static linked
14142	  libraries.
14143
14144	* ruby.c (process_options): New initializes statically linked
14145	  encodings here.
14146
14147Wed May 16 14:30:43 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14148
14149	* io.c: fixed a merge mistake of r33878, reported by nobu via IRC.
14150
14151Wed May 16 06:59:41 2012  Tadayoshi Funaba  <tadf@dotrb.org>
14152
14153	* ext/date/date_strftime.c: should also be aware of flags on
14154	  complex specifier.
14155
14156Wed May 16 05:11:29 2012  Aaron Patterson <aaron@tenderlovemaking.com>
14157
14158	* ext/psych/lib/psych/visitors/to_ruby.rb: fix a bug with string
14159	  subclass dumping and loading.
14160
14161	* test/psych/test_array.rb: pertinent tests
14162
14163	* test/psych/test_string.rb: ditto
14164
14165Wed May 16 01:31:21 2012  Aaron Patterson <aaron@tenderlovemaking.com>
14166
14167	* ext/psych/lib/psych/visitors/to_ruby.rb: convert omap tagged maps to
14168	  Psych::Omap objects rather than hashes. [Bug #6425]
14169
14170	* test/psych/test_omap.rb: pertinent test.
14171
14172Wed May 16 01:15:45 2012  Aaron Patterson <aaron@tenderlovemaking.com>
14173
14174	* ext/psych/lib/psych/visitors/yaml_tree.rb: keep a reference to
14175	  custom coders so that GC does not impact dumped yaml reference ids.
14176
14177Tue May 15 23:59:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14178
14179	* lib/test/unit.rb (Test::Unit::Options#setup_options): add --color option.
14180
14181	* lib/test/unit.rb (Test::Unit::Runner#_prepare_run): defer color code
14182	  initialization to regard --color option.
14183
14184Mon May 14 16:28:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14185
14186	* parse.y (f_arglist): should reset lexical states after empty
14187	  argument list with no parenthesis as well as parenthesized list,
14188	  so that reserved name method definition work.  [ruby-dev:45626]
14189	  [Bug #6403]
14190
14191Mon May 14 00:14:24 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
14192
14193	* enumerator.c (lazy_take_func, lazy_take): multiple calls of
14194	  force/to_a method to Enumerator::Lazy#take should return same
14195	  results. [ruby-dev:45634] [Bug #6428]
14196
14197	* test/ruby/test_lazy_enumerator.rb (test_take_recycle): add test for
14198	  above.
14199
14200Sun May 13 23:38:31 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
14201
14202	* test/ruby/test_io.rb (test_flush_in_finalizer1): don't use IO.for_fd
14203	  to close IO objects. it create IO object with already closed fd, and
14204	  cause occasional Errno::EBADF in following tests. [ruby-core:45020]
14205	  [Bug #6228]
14206
14207Sun May 13 23:32:16 2012  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>
14208
14209	* test/ruby/test_io.rb (TestIO): revert r35631. it broke the intent of
14210	  test_flush_in_finalizer1.  [ruby-core:43951] [Bug #6228]
14211
14212Sun May 13 22:46:36 2012  Tanaka Akira  <akr@fsij.org>
14213
14214	* ext/etc/etc.c (passwd_ensure): move endpwent() call from
14215	  passwd_iterate to close /etc/passwd on exception.
14216	  (group_ensure): move endgrent() call from group_iterate to close
14217	  /etc/group on exception.
14218
14219Sun May 13 18:10:43 2012  Tadayoshi Funaba  <tadf@dotrb.org>
14220
14221	* ext/date/date_strftime.c: removed unused code and changed the style.
14222
14223Sun May 13 17:37:56 2012  Tadayoshi Funaba  <tadf@dotrb.org>
14224
14225	* ext/date/date_strftime.c: refactored.
14226
14227Sun May 13 06:40:12 2012  Luis Lavena  <luislavena@gmail.com>
14228
14229	* test/ruby/test_io.rb (class TestIO):  Disable GC during IO tests to
14230	  avoid file descriptors being GC'ed. Suggestion by Tomoyuki Chikanaga
14231	  [ruby-core:43951][Bug #6228]
14232
14233Sat May 12 07:00:16 2012  Eric Hodel  <drbrain@segment7.net>
14234
14235	* ext/sdbm/init.c:  Added documentation.  Patch by Justin Collins,
14236	  cleanup by Zachary Scott.  [ruby-trunk - #6410]
14237
14238Sat May 12 06:02:03 2012  Eric Hodel  <drbrain@segment7.net>
14239
14240	* lib/fileutils.rb (cp_r):  Fixed cp_r example.  Patch by TJ Koblentz
14241	  from pull request #114.  [ruby-trunk - Bug #6411]
14242
14243Sat May 12 05:23:06 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14244
14245	* thread.c (rb_threadptr_execute_interrupts_common):
14246	  test_signal_requiring of test/ruby/test_signal.rb fail if the sub
14247	  process is killed on waiting IO in lex_io_gets in rb_load_file in
14248	  rb_load_internal in require.
14249	  This is because
14250	  (1) the process receive the killing signal in
14251	      rb_thread_io_blocking_region in rb_read_internal in lex_io_gets.
14252	  (2) set th->errinfo as INT2FIX(TAG_FATAL) at
14253	      rb_threadptr_execute_interrupts_common.
14254	  (3) escape rb_load_file in rb_load_internal and jump to EXEC_TAG()
14255	      without set loaded as TRUE.
14256	  (4) call first rb_exc_raise(GET_THREAD()->errinfo); because loaded
14257	      is FALSE as above. this errinfo should be an exception object
14258	      but this is INT2FIX(TAG_FATAL).
14259	  Don't call first rb_exc_raise if GET_THREAD()->errinfo is Fixnum.
14260
14261Fri May 11 14:23:11 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14262
14263	* parse.y (primary): begin/end block should be isolated from outside.
14264	  [ruby-dev:45631][Bug #6419]
14265
14266Fri May 11 14:09:47 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14267
14268	* ext/bigdecimal/bigdecimal.c (PUSH): to prevent VALUE from GC,
14269	  must not cast it to unsigned long, which may be shorter than
14270	  VALUE, and the result can be mere garbage.
14271
14272Fri May 11 09:51:07 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14273
14274	* lib/test/unit.rb (Test::Unit::Runner#failed): no unnecessary
14275	  newlines if no reports to be displayed.
14276
14277Thu May 10 10:55:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14278
14279	* test/minitest/test_minitest_mock.rb: Correct requiring path to
14280	  metametameta.rb.
14281
14282	* test/minitest/test_minitest_unit.rb: Correct requiring path to
14283	  metametameta.rb.
14284
14285Thu May 10 10:18:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14286
14287	* parse.y (lex_state_name): returns name for lex_state_e, for debug
14288	  use.
14289
14290Wed May  9 16:36:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14291
14292	* lib/mkmf.rb (MakeMakefile#pkg_config): check if libs resulted from
14293	  pkg-config works actually.
14294
14295Wed May  9 16:01:38 2012  Shugo Maeda  <shugo@ruby-lang.org>
14296
14297	* lib/net/imap.rb (decode_utf7, encode_utf7): refactored by
14298	  Nobuyoshi Nakada, to use String#encode.
14299
14300Wed May  9 13:26:25 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14301
14302	* test/rubygems/test_gem_remote_fetcher.rb: skip OpenSSL dependent
14303	  tests if not available.
14304
14305Wed May  9 08:09:38 2012  Ryan Davis  <ryand-ruby@zenspider.com>
14306
14307	* lib/minitest/*: Imported minitest 3.0.0 (r7435)
14308	* test/minitest/*: ditto
14309	* test/rubygems/*: Imported fixes for buggy use of assert_match
14310	  and deprecated assert_block
14311	UNBUNCH YOUR PANTIES. THE TESTS DO NOT RUN CLEAN ON OSX.
14312
14313Wed May  9 06:28:59 2012  Eric Hodel  <drbrain@segment7.net>
14314
14315	* re.c (rb_reg_equal):  Removed incorrect example for Regexp#== with
14316	  "n" option.  [ruby-talk - Bug #6415]
14317
14318Wed May  9 06:23:33 2012  Tadayoshi Funaba  <tadf@dotrb.org>
14319
14320	* ext/date/date_core.c: reverted.
14321
14322Wed May  9 04:31:26 2012  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
14323
14324	* lib/rinda/ring.rb (lookup_ring_any): fix Rinda::RingFinger.primary
14325	  hungs forever. [ruby-talk:395364]
14326
14327Tue May  8 21:09:00 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
14328
14329	* include/ruby/win32.h (FD_SET): change function to macro.
14330	  To avoid buffer overflow when smaller FD_SETSIZE is used in ext
14331	  libraries.
14332
14333	* win32/win32.c (rb_w32_fdset): this function is not used anymore.
14334	  But we leave this for compatibility.
14335
14336	* win32/win32.c (rb_w32_select_with_thread): fix SEGV when smaller
14337	  FD_SETSIZE is used in ext libraries. Dereference of fd_set pointer
14338	  causes SEGV.
14339
14340	* test/-ext-/win32/test_fd_setsize.rb(TestFdSetSize): add tests for
14341	  above.
14342	* ext/-test-/win32/fd_setsize/depend: ditto.
14343	* ext/-test-/win32/fd_setsize/extconf.rb: ditto.
14344	* ext/-test-/win32/fd_setsize/fd_setsize.c: ditto.
14345
14346	  [ruby-core:44588] [Bug #6352]
14347
14348Tue May  8 20:44:46 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
14349
14350	* io.c (io_unread): fix IO#pos with mode 'r' bug on Windows.
14351	  If the end of reading buffer is CR, io_unread() needs to unread one
14352	  more byte.
14353	  [ruby-core:44874] [Bug #6401]
14354
14355	* test/ruby/test_io_m17n.rb (TestIO_M17N#test_pos_with_buffer_end_cr):
14356	  add a test for above.
14357
14358Tue May  8 13:38:17 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
14359
14360	* ext/date/date_core.c: improving introduction in Date/DateTime
14361	  documentation. patched by Daniel Kaufman via Github.
14362		https://github.com/ruby/ruby/pull/110
14363
14364Tue May  8 13:36:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14365
14366	* configure.in (POSTLINK): default to : command to get rid of flag
14367	  only command, since BSD make does not work with it.
14368
14369Tue May  8 13:35:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14370
14371	* lib/test/unit.rb (MiniTest#run_test): remove exact trace and get rid
14372	  of IndexError, which could caused by modified $@ sometimes.
14373
14374Tue May  8 11:21:27 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14375
14376	* test/minitest/metametameta.rb (MetaMetaMetaTestCase#assert_report):
14377	  support drive letter on Windows.  yes, the original code is metameta.
14378
14379Tue May  8 08:54:48 2012  Eric Hodel  <drbrain@segment7.net>
14380
14381	* lib/abbrev.rb:  Fixed typo in abbrev pattern documentation.  Based on
14382	  patch by Mark Rushakoff.  [ruby-trunk - #6346]
14383
14384Tue May  8 07:44:18 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14385
14386	* ext/openssl/ossl_ssl.c (ossl_start_ssl): remove useless rb_sys_fail
14387	  before ossl_raise. this cause a test failure on Linux.
14388	 http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20120507T190102Z.log.html.gz
14389
14390Tue May  8 05:35:18 2012  Eric Hodel  <drbrain@segment7.net>
14391
14392	* object.c (Init_Object):  Added reference to variable.c where
14393	  public_constant and private_constant documentation lives.  [#6381]
14394
14395Tue May  8 04:47:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14396
14397	* lib/test/unit.rb (Test::Unit::Runner#output): prefer local output to
14398	  get rid of unexpected side effect in test/minitest/metametameta.rb.
14399
14400	* lib/test/unit.rb (MiniTest#run_test): show the running test in $0.
14401
14402	* lib/test/unit.rb (Test::Unit::StatusLineOutput): new class to output
14403	  in status line.
14404
14405	* test/testunit/test_hideskip.rb (TestHideSkip#test_hideskip):
14406	  MiniTest#puke now reports Skipped messages only if verbose mode.
14407
14408	* test/testunit/test_sorting.rb (TestTestUnitSorting#test_sorting):
14409	  ditto.
14410
14411	* lib/test/unit.rb (Test::Unit::Runner#puke): modify only result and
14412	  drop useless reports, not override entirely.
14413
14414	* bootstraptest/runner.rb (exec_test, show_progress): show rotators
14415	  and pass/fail counts.
14416
14417	* sample/test.rb (PROGRESS): refine output.
14418
14419Tue May  8 02:34:26 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14420
14421	* lib/minitest/unit.rb (assert_match): refix of r35563.
14422	  r35563 breaks the intention of the original change.
14423	 https://github.com/seattlerb/minitest/commit/68858105b2eb11c85105ffac5f32b662c59397f3
14424	* lib/minitest/unit.rb (refute_match): ditto.
14425
14426Mon May  7 21:19:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14427
14428	* ext/json: Merge JSON 1.7.1.
14429	 https://github.com/flori/json/commit/e5b9a9465c1159fae533bca320d950b772bcb4ac
14430
14431Mon May  7 22:54:22 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
14432
14433	* ext/openssl/ossl_ssl.c: add support for option flags
14434	  OpenSSL::SSL::OP_NO_TLSv1_1
14435	  OpenSSL::SSL::OP_NO_TLSv1_2
14436	  to allow blocking specific TLS versions. Thanks to Justin Guyett for
14437	  pointing this out to me.
14438	* test/openssl/test_ssl.rb: add tests to assert correct behavior when
14439	  blocking certain versions of TLS/SSL both on server and client side.
14440	  Also refactored tests to reduce boilerplate code a little.
14441	* test/openssl/utils.rb: rescue Errno::ECONNRESET for tests where
14442	  client rejects the connection because a forbidden protocol version
14443	  was used.
14444
14445Mon May  7 20:14:15 2012  Tanaka Akira  <akr@fsij.org>
14446
14447	* lib/securerandom.rb (random_bytes): call to_int method for the
14448	  argument at first.
14449
14450Mon May  7 17:54:12 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14451
14452	* lib/minitest/unit.rb (assert_match): replace matcher only if both
14453	  matcher and obj are String. fix r35541. [Bug #6405]
14454	  DON'T COMMIT IF YOU CAN'T RUN TEST.
14455	  FIX AS SOON AS POSSIBLE YOU BREAK TESTS.
14456	  patched by ayumin.
14457	  https://github.com/seattlerb/minitest/pull/124
14458
14459	* lib/minitest/unit.rb (refute_match): ditto.
14460
14461Mon May  7 13:41:00 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14462
14463	* Makefile.in (PROGRAM), configure.in (POSTLINK): sign built program
14464	  using RUBY_CODESIGN identity.
14465
14466Mon May  7 13:03:55 2012  Shugo Maeda  <shugo@ruby-lang.org>
14467
14468	* lib/net/imap.rb (body_type_attachment): parse body type
14469	  "ATTACHMENT". [ruby-core:44849] [Bug #6397]
14470
14471Mon May  7 10:49:36 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14472
14473	* ext/bigdecimal/bigdecimal.c (Init_bigdecimal): define IDs before
14474	  they are used. [ruby-core:44900] [Bug #6406]
14475
14476Mon May  7 10:27:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14477
14478	* ext/digest/rmd160/rmd160.c (RMD160_Update): fix for huge data.
14479
14480Mon May  7 10:23:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14481
14482	* test/fileutils/fileasserts.rb: use assert_equal, assert_match, and so on.
14483
14484	* test/ruby/enc/test_utf16.rb, test/ruby/enc/test_utf32.rb,
14485	  test/ruby/test_io_m17n.rb (assert_str_equal): ditto.
14486
14487	* test/rubygems/test_gem_remote_fetcher.rb
14488	  (assert_data_from_{server,proxy}): ditto.
14489
14490	* test/test_pstore.rb (test_thread_safe): ditto.
14491
14492Mon May  7 10:16:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14493
14494	* test/rubygems/test_gem_installer.rb (TestGemInstaller#test_dir): fix
14495	  argument order.  expected value must come first.
14496
14497Mon May  7 09:14:11 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
14498
14499	* ext/openssl/ossl_ssl.c: support TLSv1.1 & TLSv1.2. Add
14500	  SSLContext#version to inspect the version that was negotiated for
14501	  a given connection.
14502	* ext/openssl/extconf.rb: detect TLS 1.1 & 1.2 support.
14503	* test/openssl/test_ssl.rb: add tests for TLS 1.1 & 1.2 given they
14504	  are supported by the native OpenSSL being used.
14505
14506Sun May  6 21:34:29 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14507
14508	* io.c (io_encoding_set): suppress warnings. [ruby-dev:45627]
14509	  this tmp1 is not required after r35538.
14510
14511	* addr2line.c: suppress warnings.
14512
14513Sun May  6 18:39:39 2012  Koichi Sasada  <ko1@atdot.net>
14514
14515	* compile.c (iseq_compile_each): remove unused variable `size'.
14516
14517Sun May  6 14:50:03 2012  Tanaka Akira  <akr@fsij.org>
14518
14519	* lib/securerandom.rb: show actual read length in an error message.
14520
14521Sat May  5 06:43:10 2012  Ryan Davis  <ryand-ruby@zenspider.com>
14522
14523	* lib/minitest/*: Imported minitest 2.12.1 (r7323)
14524	* test/minitest/*: ditto
14525
14526Sat May  5 01:47:33 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14527
14528	* test/zlib/test_zlib.rb (test_inflate): add a test for Zlib.inflate.
14529	  patched by headius (Charles Nutter). [ruby-core:44859] [Bug #6398]
14530
14531	* test/zlib/test_zlib.rb (test_deflate): add a test for Zlib.deflate.
14532
14533Sat May  5 00:53:55 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14534
14535	* io.c (parse_mode_enc): remove warnings 'Ignoring internal encoding'.
14536	  [ruby-core:44455] [Bug #6324]
14537
14538	* io.c (io_encoding_set): ditto.
14539
14540Fri May  4 07:19:02 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14541
14542	* lib/rdoc/parser.rb (RDoc.binary?): fix wrong regexp.
14543	  [ruby-core:44798] [Bug #6393]
14544
14545Fri May  4 01:33:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14546
14547	* lib/rdoc/parser.rb (RDoc.alias_extension): a real file is irrelevant
14548	  to aliasing.  [ruby-core:44796][Bug #6392]
14549
14550	* lib/rdoc/parser.rb (RDoc.zip?): non-existent file will not be a zip
14551	  file.
14552
14553	* lib/rdoc/parser.rb (RDoc.can_parse_by_name): accept aliased
14554	  extension file names.
14555
14556	* lib/rdoc/parser.rb (RDoc.binary?): binary read data may have
14557	  incomplete multibyte sequence.  [ruby-core:44798][Bug #6393]
14558
14559Wed May  2 23:55:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14560
14561	* lib/test/unit.rb (Test::Unit::RequireFiles#non_options): expand
14562	  real path to get rid of loading same files via symlinks.
14563
14564Wed May  2 23:26:04 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
14565
14566	* cont.c (rb_fiber_m_transfer): improve sample code in Fiber#transfer
14567	  documentation. emphasize the difference between transfer and resume.
14568
14569Wed May  2 23:21:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14570
14571	* parse.y (parser_yylex): allow spaces between lambda arrow and
14572	  parenthesis.  [ruby-dev:45605][Feature #6390]
14573
14574Wed May  2 19:06:30 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
14575
14576	* cont.c (rb_fiber_m_transfer): Improved Fiber documentation.
14577	  patched by Anuj Dutta. [ruby-core:44540][Bug #6343]
14578
14579Wed May  2 13:06:37 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14580
14581	* README, README.ja: reformatted using rdoc markup.  based on the
14582	  patches by zzak (Zachary Scott) in [Feature #6388].
14583
14584	* README, README.ja: updated the author's mail address.
14585
14586Wed May  2 09:46:09 2012  Kouji Takao  <kouji@takao7.net>
14587
14588	* ext/readline/readline.c (Readline.special_prefixes=)
14589	  (Readline.special_prefixes): new function. An original patch was
14590	  created by nagachika. [Feature #5784]
14591
14592Tue May  1 22:18:45 2012  Kouji Takao  <kouji@takao7.net>
14593
14594	* ext/readline/readline.c (Readline.pre_input_hook)
14595	  (Readline.insert_text, Readline.redisplay): new function. An
14596	  original patch was created by nagachika. [Feature #5785]
14597
14598Tue May  1 15:46:48 2012  Koichi Sasada  <ko1@atdot.net>
14599
14600	* common.mk: "$(Q)-..." doesn't work on nmake.
14601
14602Tue May  1 15:32:10 2012  Koichi Sasada  <ko1@atdot.net>
14603
14604	* common.mk: replace '@' prefix to '$(Q)' to control build
14605	  process outputs.
14606
14607Tue May  1 14:17:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14608
14609	* ext/openssl/deprecation.rb (OpenSSL.check_func): check if header is
14610	  available for macro compatibility.
14611
14612Tue May  1 10:53:54 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14613
14614	* test/ruby/test_settracefunc.rb: ignore traces from another threads
14615	  because Kernel.set_trace_func affects other threads.
14616
14617Tue May  1 06:04:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14618
14619	* ext/digest/sha2/sha2.c (REVERSE32): explicitly cast since unsigned
14620	  long may be larger than sha2_word32.
14621
14622	* ext/digest/sha2/sha2.c (SHA{256,512,384}_{Final,End}): should clear
14623	  whole content, not pointer size.
14624
14625	* ext/digest/*/extconf.rb: use pkg_config to use same library with
14626	  openssl.  [ruby-core:44755][Bug #6379]
14627
14628	* ext/openssl/deprecation.rb: extract check for broken Apple OpenSSL.
14629
14630Tue May  1 05:02:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14631
14632	* configure.in (optflags): disable unsafe optimizations.
14633	  [ruby-core:44679][Bug #6370]
14634
14635Mon Apr 30 23:36:49 2012  Tanaka Akira  <akr@fsij.org>
14636
14637	* lib/fileutils.rb (copy_metadata): use File.lchown and File.lchmod to
14638	  update meta data of symlinks.
14639
14640Mon Apr 30 23:05:53 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
14641
14642	* test/ruby/test_continuation.rb (tracing_with_set_trace_func): don't
14643	  call Continuation from other threads. [ruby-dev:45596] [Bug #6382]
14644
14645Mon Apr 30 20:10:04 2012  Tanaka Akira  <akr@fsij.org>
14646
14647	* ext/zlib/extconf.rb: detect z_crc_t type which will be defined
14648	  since zlib-1.2.7.
14649
14650	* ext/zlib/zlib.c (rb_zlib_crc_table): use z_crc_t if available.
14651
14652Mon Apr 30 09:02:15 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
14653
14654	* ext/openssl/lib/openssl/ssl.rb: add hostname to "hostname does not
14655	  match server cert." error. patched by Wes Morgan via Github.
14656	  https://github.com/ruby/ruby/pull/122
14657
14658Mon Apr 30 04:43:53 2012  Aaron Patterson <aaron@tenderlovemaking.com>
14659
14660	* ext/psych/lib/psych/json/yaml_events.rb: implicit styles should not
14661	  be changeable for JSON events.
14662
14663Sun Apr 29 06:12:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14664
14665	* parse.y (assoc, parser_yylex): add syntax to splat keyword hash.
14666	  [ruby-core:44591][Feature #6353]
14667
14668	* compile.c (compile_array_): generate keyword splat insns.
14669
14670	* vm.c (m_core_hash_merge_kwd): merge keyword hash into intermediate
14671	  hash.  leftward argument is prior currently.
14672
14673Fri Apr 27 12:34:23 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14674
14675	* ext/dl/cfunc.c (rb_dlcfunc_call): should convert a Bignum value to
14676	  unsigned long long on Win64.
14677	  [ruby-core:44636][Bug #6364] reported by raylinn@gmail.com (ray linn)
14678
14679Fri Apr 27 10:58:17 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14680
14681	* test/readline/test_readline.rb (setup): avoid affected by user's
14682	  inputrc file.  [ruby-dev:45584][Bug #6357]
14683
14684Fri Apr 27 01:45:05 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14685
14686	* thread.c (rb_threadptr_execute_interrupts_common):
14687	  handle timer_interrupt only on the first loop for the case to avoid
14688	  the infinite loop like following case:
14689	  * there is 2 Ruby threads (3 pthreads)
14690	  (1) main thread is waiting at gvl_yield:112 (native_cond_wait)
14691	  (2) sub thread works
14692	  (3) sub thread waits at gvl_yield:133 (native_mutex_unlock)
14693	  (4) main thread works
14694	  (5) main thread goes to gvl_acquire_common
14695	  (6) main thread call rb_wakeup_timer_thread
14696	  (7) timer thread set timer interrupt to the main thread
14697	  (8) main thread works
14698	  (9) main thread waits at gvl_acquire_common:64 (native_cond_wait)
14699	  (10) sub tread works
14700	  (11) set sub thread as the current thread
14701	  (12) run Ruby thread
14702	  (13) ...100ms
14703	  (14) sub thread goes to rb_threadptr_execute_interrupts_common
14704	  (15) sub thread call rb_thread_schedule_limits
14705	  (16) sub thread call gvl_release_common
14706	  (17) sub threads waits at gvl_yield:121 (native_cond_wait)
14707	  (18) main threads works
14708	  (19) main thread back to gvl_yield
14709	  (20) set main thread as the current thread
14710	  (21) main thread call gvl_yield
14711	  (22) main thread waits at gvl_yield:112 (native_cond_wait)
14712	  As described above, the main thread can't escape from
14713	  rb_threadptr_execute_interrupts_common.
14714	  See extended memo: http://bugs.ruby-lang.org/projects/ruby-trunk/wiki/R35480_ExtendedMemo
14715
14716Fri Apr 27 07:15:07 2012  Tanaka Akira  <akr@fsij.org>
14717
14718	* ext/socket/socket.c (sock_s_pack_sockaddr_un): support the longest
14719	  path in sockaddr_un, really.
14720	  reported by nagachika.
14721	 http://d.hatena.ne.jp/nagachika/20120426/ruby_trunk_changes_35474_35476
14722
14723Thu Apr 26 12:28:06 2012  Tanaka Akira  <akr@fsij.org>
14724
14725	* ext/socket/raddrinfo.c (init_unix_addrinfo): support the longest
14726	  path in sockaddr_un.
14727	  (inspect_sockaddr): ditto.
14728	  (addrinfo_mdump): ditto.
14729	  (addrinfo_mload): ditto.
14730	  (rsock_unixpath_str): new function.
14731	  (rsock_unixpath): removed.
14732	  (rsock_unixaddr): use rsock_unixpath_str.
14733
14734	* ext/socket/socket.c (sock_s_pack_sockaddr_un): support the longest
14735	  path in sockaddr_un.
14736	  (sock_s_unpack_sockaddr_un): ditto.
14737	  (sock_s_gethostbyaddr): unused variable removed.
14738
14739	* ext/socket/unixsocket.c (rsock_init_unixsock): support the longest
14740	  path in sockaddr_un.
14741
14742	* ext/socket/rubysocket.h (rsock_unixpath_str): declared.
14743	  (rsock_unixpath): removed.
14744
14745	* test/socket/test_unix.rb: comment out test_nul because abstract unix
14746	  sockets may contain NULs.
14747
14748Thu Apr 26 01:32:33 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
14749
14750	* test/optparse/test_summary.rb (test_summary_containing_space): add
14751	  test for r35467. OptionParser#to_a shouldn't split banner by spaces.
14752
14753Wed Apr 25 23:02:46 2012  Tanaka Akira  <akr@fsij.org>
14754
14755	* ext/socket/raddrinfo.c (init_unix_addrinfo): refine error message
14756	  format.
14757	  (addrinfo_mload): show more information on "too long AF_UNIX path"
14758	  error.
14759	  (addrinfo_unix_path): ditto for "too short AF_UNIX address" and
14760	  "too long AF_UNIX address" error.
14761
14762Wed Apr 25 05:46:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14763
14764	* lib/optparse.rb (OptionParser#to_a): split for each lines.
14765	  [ruby-dev:45568][Bug #6348]
14766
14767Tue Apr 24 21:57:53 2012  Tanaka Akira  <akr@fsij.org>
14768
14769	* ext/socket/raddrinfo.c (init_unix_addrinfo): show actual path length
14770	  when it is too long for Unix socket.
14771
14772	* ext/socket/unixsocket.c (rsock_init_unixsock): ditto.
14773
14774	* ext/socket/socket.c (sock_s_pack_sockaddr_un): ditto.
14775
14776Tue Apr 24 21:43:58 2012  Yusuke Endoh  <mame@tsg.ne.jp>
14777
14778	* lib/net/smtp.rb (check_continue): raise an error with an explanatory
14779	  message.  [ruby-core:35854] [Feature #4598]
14780
14781Tue Apr 24 21:11:31 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14782
14783	* lib/optparse.rb (OptionParser#to_a): should split by end-of-line,
14784	  and MUST TEST IT, MUST RUN THE TEST, MUST VERIFY BEFORE BACKPORT.
14785	  [ruby-dev:45568][Bug #6348]
14786
14787Tue Apr 24 19:59:31 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14788
14789	* enc/euc_jp.c: added EUC-JP-2004 and its alias EUC-JISX0213.
14790	  [ruby-dev:45571] [Feature #6349]
14791	  Requested by Kyouhei Yanagita <yanagi@shakenbu.org>.
14792
14793	* enc/trans/japanese_euc.trans: ditto.
14794
14795	* enc/trans/JIS/JISX0213-[12]%UCS@{BMP,SIP}.src: JIS X 0213:2004 ->
14796	  Unicode mapping table from NetBSD.
14797
14798	* enc/trans/JIS/UCS@{BMP,SIP}%JISX0213-[12].src: Unicode -> JIS X
14799	  0213:2004 mapping table from NetBSD.
14800
14801	* tool/transcode-tblgen.rb: added SIP support.
14802
14803	* test/ruby/test_transcode.rb: tests of above changes.
14804
14805Tue Apr 24 18:12:13 2012  Koichi Sasada  <ko1@atdot.net>
14806
14807	* compile.c: fix to output warning when the same literals
14808	  are available as a condition of same case clause.
14809	  And remove information ('#n') because we can find duplicated
14810	  condition with explicit line numbers.
14811	  [ruby-core:38343] [Ruby 1.9 - Bug #5068]
14812
14813	* test/ruby/test_syntax.rb: add a test for above.
14814
14815Tue Apr 24 17:03:51 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14816
14817	* win32/win32.c (waitpid): need to check the return value of
14818	  FindChildSlotByHandle() before passing poll_child_status().
14819	  this fixed a SEGV in test-all.  reported by ko1 via IRC.
14820
14821Tue Apr 24 16:04:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14822
14823	* parse.y (parser_yylex): EXPR_BEG by keywords is a start point of
14824	  commands.  [ruby-dev:45563][Bug #6347]
14825
14826	* parse.y (superclass): ditto for superclass.
14827
14828	* parse.y (parser_parse_string, parser_here_document): ditto for
14829	  string interpolation.
14830
14831	* parse.y (parser_yylex): ditto for singleton class.
14832
14833Tue Apr 24 15:51:41 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14834
14835	* lib/optparse.rb (OptionParser#to_a): should split by end-of-line
14836	  [ruby-dev:45568][Bug #6348]
14837
14838	* lib/optparse.rb (OptionParser#to_a): String#to_a is no longer
14839	  defined.  [ruby-dev:45568][Bug #6348]
14840
14841Tue Apr 24 12:46:50 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
14842
14843	* hash.c, object.c, struct.c, lib/ostruct.rb: add to_h methods.
14844	  [Feature #6276]
14845
14846Tue Apr 24 10:54:34 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14847
14848	* test/drb/drbtest.rb ({DRbCore,DRbAry}#teardown): cannot pass SIGTERM
14849	  to another process on Windows, so use SIGINT instead.
14850
14851Tue Apr 24 00:25:39 2012  Yusuke Endoh  <mame@tsg.ne.jp>
14852
14853	* thread.c (rb_check_deadlock): refine an error message of deadlock
14854	  detection.  [ruby-core:44336] [Bug #6288]
14855
14856Tue Apr 24 00:14:42 2012  Yusuke Endoh  <mame@tsg.ne.jp>
14857
14858	* parse.y (primary): remove wrong "fixpos" that caused incorrect
14859	  source_location of blocks.  [ruby-core:42232] [Bug #5930]
14860
14861	* test/ruby/test_proc.rb: add a test for above.
14862
14863Mon Apr 23 22:56:08 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14864
14865	* ext/iconv: deprecated.  [Feature #6322]
14866
14867Mon Apr 23 22:07:00 2012  Tanaka Akira  <akr@fsij.org>
14868
14869	* test/socket/test_unix.rb (bound_unix_socket): make temporary
14870	  filename shorter for less possibility of Unix socket path over
14871	  107 bytes when TMPDIR has long path.
14872
14873Mon Apr 23 20:35:49 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
14874
14875	* win32/win32.c (szInternalCmds, internal_match, internal_cmd_match):
14876	  get rid of a segmentation fault with GCC 4.7.0.
14877	  reported by raylinn@gmail.com (ray linn) at [ruby-core:44505]
14878	  [Bug #6333], and patched by mame.
14879
14880	* test/ruby/test_system.rb (TestSystem#test_system): test for it.
14881
14882Mon Apr 23 20:11:02 2012  Tanaka Akira  <akr@fsij.org>
14883
14884	* lib/drb/ssl.rb: generate 1024 bits RSA key instead of 512 bits.
14885	  OpenSSL 1.0.1 rejects 512 bits RSA key for TLS1.2 with SHA512.
14886	 http://rt.openssl.org/Ticket/Display.html?id=2769&user=guest&pass=guest
14887	  reported by Bohuslav Kabrda.
14888	  [ruby-core:43844] [ruby-trunk - Bug #6221]
14889
14890Mon Apr 23 19:54:33 2012  Tanaka Akira  <akr@fsij.org>
14891
14892	* test/drb/drbtest.rb: rescue Errno::ESRCH for Process.kill.
14893	  reported by NARUSE, Yui.  [ruby-dev:45551]
14894
14895Mon Apr 23 14:16:45 2012  NARUSE, Yui  <naruse@ruby-lang.org>
14896
14897	* .gdbinit (rb_ps_vm): follow st_table's packing change.
14898
14899Mon Apr 23 10:43:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14900
14901	* configure.in: disable rubygems not to load rbconfig.rb before
14902	  fake.rb.  [ruby-core:44492][Bug #6329]
14903
14904Sun Apr 22 20:26:06 2012  Tanaka Akira  <akr@fsij.org>
14905
14906	* lib/drb/extservm.rb (DRb::ExtServManager): don't use /bin/sh to
14907	  invoke service subprocess.  mark detach threads for clean up.
14908
14909	* test/drb/drbtest.rb: clean up the service subprocess in teardown.
14910
14911	* test/drb/test_drb.rb: set @service_name for teardown.
14912
14913	* test/drb/test_drbunix.rb: ditto.
14914
14915	* test/drb/test_drbssl.rb: ditto.
14916
14917	[ruby-dev:45547]
14918
14919Sun Apr 22 07:51:29 2012  Tanaka Akira  <akr@fsij.org>
14920
14921	* lib/drb/ssl.rb: close accepted TCP socket if SSL accept is failed.
14922	  [ruby-dev:45541]
14923
14924Sat Apr 21 14:36:49 2012  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
14925
14926	* test/rinda/test_rinda.rb: fix sticks on some tests problem
14927	  [Bug #6272]
14928
14929Fri Apr 20 12:24:04 2012  Eric Hodel  <drbrain@segment7.net>
14930
14931	* lib/rubygems/ssl_certs/AddTrustExternalCARoot.pem:  Removed to avoid
14932	  conflict with ca-bundle.pem
14933	* lib/rubygems/ssl_certs/VerisignClass3PublicPrimaryCertificationAuthority-G2.pem:
14934	  ditto.
14935	* lib/rubygems/ssl_certs/Entrust_net-Secure-Server-Certification-Authority.pem:
14936	  ditto.
14937
14938Fri Apr 20 08:07:06 2012  Eric Hodel  <drbrain@segment7.net>
14939
14940	* lib/rubygems:  Update to RubyGems 1.8.23 which contains security
14941	  fixes:
14942
14943	  RubyGems now disallows redirection from HTTPS to HTTP.
14944
14945	  RubyGems now verifies SSL connections.
14946
14947	  See https://github.com/rubygems/rubygems/blob/1.8/History.txt for
14948	  changes since 1.8.22.
14949	* test/rubygems:  ditto.
14950
14951Thu Apr 19 16:33:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14952
14953	* strftime.c (rb_strftime_with_timespec): fix carry-up bug and
14954	  overwrite '+' with '-' if negative offset less than a hour.
14955	  [ruby-core:44447][Bug #6323]
14956
14957Thu Apr 19 09:39:57 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14958
14959	* ext/-test-/win32/dln/extconf.rb: need import library for ordinal
14960	  entry even on mingw.  [ruby-core:44441][Bug #6320]
14961
14962Thu Apr 19 09:35:15 2012  Eric Hodel  <drbrain@segment7.net>
14963
14964	* random.c (random_init):  Clarify that the default seed is
14965	  Random.new_seed, not zero.  Based on patch by Roger Pack.
14966	  [ruby-trunk - Bug #6313]
14967	* random.c (rb_f_srand):  ditto.
14968
14969Thu Apr 19 08:59:02 2012  Eric Hodel  <drbrain@segment7.net>
14970
14971	* ext/curses/curses.c (window_nodelay):  Fixed call-seq of nodelay to
14972	  include the '='.
14973
14974	  Improved description window.nodelay=.
14975
14976Thu Apr 19 08:47:54 2012  Eric Hodel  <drbrain@segment7.net>
14977
14978	* io.c (io_readpartial):  Document the output buffer parameter is
14979	  overwritten with the read contents even when non-empty.
14980	  Patch by yu nobuoka.  [ruby-trunk - Bug #6285]
14981	* io.c (io_read_nonblock):  ditto.
14982	* io.c (io_read):  ditto.
14983	* io.c (rb_io_sysread):  ditto.
14984	* io.c (argf_read):  ditto.
14985	* io.c (argf_readpartial):  ditto.
14986	* ext/stringio/stringio.c (strio_read):  ditto.
14987	* test/ruby/test_argf.rb (class TestArgf):  Add test for existing
14988	  behavior of read outbuf.
14989	* test/ruby/test_io.rb (class TestIO):  ditto.
14990	* test/stringio/test_stringio.rb (class TestStringIO):  ditto.
14991
14992Wed Apr 18 22:58:55 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14993
14994	* configure.in (DOT, DOXYGEN): use AC_CHECK_PROGS instead of
14995	  AC_CHECK_PROG which needs the third argument.  [ruby-core:44433]
14996	  [Bug #6316]
14997
14998	* configure.in (PKG_CONFIG): fix condition to skip older version
14999	  of pkg-config.  continue in backticks does not affect outside.
15000
15001Wed Apr 18 13:59:40 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
15002
15003	* win32/file.c (INVALID_FILE_ATTRIBUTES): define for old SDK.
15004
15005Wed Apr 18 10:22:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15006
15007	* strftime.c (rb_strftime_with_timespec): add an interim digit for
15008	  the timezone offset which is less than an hour.
15009
15010Wed Apr 18 09:58:29 2012  Eric Hodel  <drbrain@segment7.net>
15011
15012	* lib/rubygems/version.rb:  Fixed init_with warning by calling into
15013	  yaml_initialize (for syck) from psych's init_with
15014
15015Wed Apr 18 09:03:43 2012  Eric Hodel  <drbrain@segment7.net>
15016
15017	* lib/rubygems:  Update to RubyGems 1.8.22 plus r33517 and r35337 which
15018	  were ported to the rubygems git repository.
15019
15020	  See https://github.com/rubygems/rubygems/blob/1.8/History.txt for
15021	  changes since 1.8.11.
15022
15023	* test/rubygems:  ditto.
15024
15025Tue Apr 17 22:18:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15026
15027	* strftime.c (rb_strftime_with_timespec): fix padding of time zone
15028	  offset.  [ruby-dev:43287][Bug #4458]
15029
15030Tue Apr 17 13:11:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15031
15032	* dln.c (rb_w32_check_imported): skip ordinal entries.  based on a
15033	  patch by phasis68 (Heesob Park) at [ruby-core:44381].
15034	  [ruby-core:44371][Bug #6303]
15035
15036Mon Apr 16 18:22:14 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15037
15038	* spec/default.mspec: expand relative path for ruby_exe which uses
15039	  them with Dir.chdir; it breaks relative paths, for example
15040	  core/kernel/exec_spec.rb.
15041
15042Mon Apr 16 16:22:40 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15043
15044	* win32/win32.c (gmtime_r, localtime_r): POSIX compliant reentrant
15045	  versions.
15046
15047	* configure.in (RUBY_MSVCRT_VERSION): define on mingw too.
15048
15049	* win32/Makefile.sub (config.h): prefix RT_VER with RUBY and make
15050	  more descriptive to get rid of potential conflict.
15051
15052Mon Apr 16 15:19:39 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15053
15054	* configure.in (NO_RUBY_VENDOR_LIB): fix missing comma.
15055
15056Mon Apr 16 12:17:12 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
15057
15058	* lib/matrix.rb (hermitian?): Bug fix, patch by George Koehler
15059	  [Bug #6290] [rubyspec:4b9573d7613]
15060
15061Mon Apr 16 09:42:50 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
15062
15063	* lib/rubygems/remote_fetcher.rb (Gem::RemoteFetcher#download): should
15064	  use File.identical? to check the identity of the files.
15065	  this fixed an error of a test on Windows.
15066
15067Sat Apr 14 12:55:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15068
15069	* configure.in (UNREACHABLE): gcc 4.4 eliminates unreachable code
15070	  if -O3 is given.
15071
15072	* win32/win32.c (child_result): dropped colon.
15073
15074Sat Apr 14 10:45:18 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15075
15076	* lib/webrick/server.rb (WEBrick::GenericServer#start):
15077	  partially revert r35315.
15078
15079	* test/webrick/test_server.rb (test_start_exception):
15080	  received signal is delivered to the main thread, so it is needed to
15081	  emulate it. patched by Eric Hodel. [ruby-core:44348] [Feature #6236]
15082
15083Sat Apr 14 09:35:45 2012  Eric Hodel  <drbrain@segment7.net>
15084
15085	* variable.c (trace_ev):  Removed "not reached" comment as this line is
15086	  reached.
15087	* variable.c (rb_obj_remove_instance_variable):  Replaced "not reached"
15088	  comment with the UNREACHABLE macro.
15089	* variable.c (rb_mod_const_missing):  ditto.
15090	* variable.c (rb_mod_remove_cvar):  ditto.
15091	* enum.c (first_i):  ditto.
15092	* string.c (rb_str_aref):  ditto.
15093	* string.c (str_byte_aref):  ditto.
15094	* string.c (rb_to_id):  ditto.
15095	* io.c (rb_io_fmode_modestr):  ditto.
15096	* io.c (rb_io_oflags_modestr):  ditto.
15097	* pack.c (num2i32):  ditto.
15098	* vm_eval.c (rb_method_missing):  ditto.
15099	* vm_eval.c (rb_f_throw):  ditto.
15100	* dir.c (dir_read):  ditto.
15101	* win32/win32.c (child_result):  ditto.
15102	* struct.c (rb_struct_getmember):  ditto.
15103	* struct.c (rb_struct_set):  ditto.
15104	* struct.c (rb_struct_aref_id):  ditto.
15105	* eval.c (rb_f_raise):  ditto.
15106	* process.c (rb_f_exit_bang):  ditto.
15107	* process.c (rb_f_exit):  ditto.
15108	* process.c (rb_f_abort):  ditto.
15109	* ext/-test-/iter/break.c (iter_break_value):  ditto.
15110	* ext/pty/pty.c (pty_check):  ditto.
15111	* ext/openssl/ossl_pkey.c (ossl_pkey_new):  ditto.
15112	* ext/readline/readline.c (rb_remove_history):  ditto.
15113	* ext/stringio/stringio.c (strio_unimpl):  ditto.
15114	* numeric.c (num_sadded):  ditto.
15115	* numeric.c (num_init_copy):  ditto.
15116	* numeric.c (rb_num2ll):  ditto.
15117	* numeric.c (rb_num2ull):  ditto.
15118	* vm_insnhelper.c (call_cfunc):  ditto.
15119	* ruby.c (opt_W_getter):  ditto.
15120	* bignum.c (rb_big_coerce):  ditto.
15121	* file.c (rb_f_test):  ditto.
15122
15123Sat Apr 14 08:38:20 2012  Eric Hodel  <drbrain@segment7.net>
15124
15125	* encoding.c (rb_enc_codepoint_len):  Use UNREACHABLE to avoid "control
15126	  reaches end of non-void function" warnings.  [ruby-trunk - Bug #6066]
15127	* re.c (name_to_backref_number):  ditto.
15128	* object.c (rb_Float):  ditto.
15129	* io.c (io_readpartial):  ditto.
15130	* io.c (io_read_nonblock):  ditto.
15131	* pack.c (rb_uv_to_utf8):  ditto.
15132	* proc.c (rb_method_entry_arity):  ditto.
15133	* vm_method.c (rb_f_notimplement):  ditto.
15134	* struct.c (rb_struct_aset_id):  ditto.
15135	* class.c (rb_scan_args):  ditto.
15136	* process.c (rlimit_resource_type):  ditto.
15137	* process.c (rlimit_resource_value):  ditto.
15138	* process.c (p_uid_switch):  ditto.
15139	* process.c (p_gid_switch):  ditto.
15140	* ext/digest/digest.c (rb_digest_instance_update):  ditto.
15141	* ext/digest/digest.c (rb_digest_instance_finish):  ditto.
15142	* ext/digest/digest.c (rb_digest_instance_reset):  ditto.
15143	* ext/digest/digest.c (rb_digest_instance_block_length):  ditto.
15144	* ext/bigdecimal/bigdecimal.c (BigDecimalCmp):  ditto.
15145	* ext/dl/handle.c (rb_dlhandle_close):  ditto.
15146	* ext/tk/tcltklib.c (pending_exception_check0):  ditto.
15147	* ext/tk/tcltklib.c (pending_exception_check1):  ditto.
15148	* ext/tk/tcltklib.c (ip_cancel_eval_core):  ditto.
15149	* ext/tk/tcltklib.c (lib_get_reltype_name):  ditto.
15150	* ext/tk/tcltklib.c (create_dummy_encoding_for_tk_core):  ditto.
15151	* ext/tk/tkutil/tkutil.c (tk_hash_kv):  ditto.
15152	* ext/openssl/ossl_ssl.c (ossl_ssl_session_reused):  ditto.
15153	* ext/openssl/ossl_pkey_ec.c (ossl_ec_key_dsa_verify_asn1):  ditto.
15154	* ext/openssl/ossl_pkey_ec.c (ossl_ec_point_is_at_infinit):  ditto.
15155	* ext/openssl/ossl_pkey_ec.c (ossl_ec_point_is_on_curve):  ditto.
15156	* ext/fiddle/conversions.c (generic_to_value):  ditto.
15157	* ext/socket/raddrinfo.c (rsock_io_socket_addrinfo):  ditto.
15158	* ext/socket/socket.c (sock_s_getnameinfo):  ditto.
15159	* ext/ripper/eventids2.c (ripper_token2eventid):  ditto.
15160	* cont.c (return_fiber):  ditto.
15161	* dmydln.c (dln_load):  ditto.
15162	* vm_insnhelper.c (vm_search_normal_superclass):  ditto.
15163	* bignum.c (big_fdiv):  ditto.
15164	* marshal.c (r_symlink):  ditto.
15165	* marshal.c (r_symbol):  ditto.
15166
15167Fri Apr 13 17:12:09 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15168
15169	* hash.c (inspect_i): keep string's coderange.
15170
15171Fri Apr 13 15:26:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15172
15173	* hash.c (rb_hash_aset, rb_hash_update, rb_hash_update_by): use
15174	  st_update() to reduce evaluation of hash values.
15175
15176Fri Apr 13 15:17:36 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15177
15178	* lib/webrick/server.rb (WEBrick::GenericServer#stop): fix r35303;
15179	  this method is to deny new connections, not shutdown yet.
15180
15181	* lib/webrick/server.rb (WEBrick::GenericServer#start):
15182	  re-raise exception only when the exception is Interrupt (^C).
15183
15184Thu Apr 12 19:51:45 2012  Tadayoshi Funaba  <tadf@dotrb.org>
15185
15186	* ext/date/date_core.c: added some notes.
15187
15188Wed Apr 11 17:16:49 2012  Koichi Sasada  <ko1@atdot.net>
15189
15190	* compile.c (compile_array, compile_array_):
15191	  Divide big array (or hash) literals into several blocks and
15192	  concatenate them.  There was a problem that a big array (hash)
15193	  literal causes SystemStackError exception (stack overflow)
15194	  because VM push all contents of the literal onto VM stack to
15195	  make an array (or hash).  To solve this issue, we make several
15196	  arrays (hashes) and concatenate them to make a big array (hash)
15197	  object.  [ruby-dev:37701] [Bug #982]
15198
15199	* compile.c (iseq_compile_each, setup_args): use modified
15200	  compile_array.
15201
15202	* vm.c (m_core_hash_from_ary, m_core_hash_merge_ary,
15203	  m_core_hash_merge_ptr): added for above change.
15204
15205	* id.c (Init_id), parse.y: add core method ids.
15206
15207	* bootstraptest/test_literal.rb: add simple tests.
15208
15209	* bootstraptest/test_eval.rb: remove rescue clause to catch
15210	  SystemStackError exception.
15211
15212	* test/ruby/test_literal.rb: add tests to check no stack overflow.
15213
15214Thu Apr 12 07:10:37 2012  Eric Hodel  <drbrain@segment7.net>
15215
15216	* lib/uri/generic.rb (module URI):  URI now downcases the scheme to
15217	  follow RFC 2396 section 3.1.  [ruby-trunk - Feature #4551]
15218	* test/uri/test_generic.rb (class URI):  Test for above
15219
15220Thu Apr 12 06:15:44 2012  Eric Hodel  <drbrain@segment7.net>
15221
15222	* lib/net/protocol.rb (module Net):  Added ReadTimeout to match
15223	  OpenTimeout.  ReadTimeout is now raised by rbuf_fill instead of
15224	  Timeout::Error to help users distinguish what type of timeout
15225	  occurred.  [ruby-trunk - Feature #6088]
15226	* lib/net/pop.rb (module Net):  Updated documentation for ReadTimeout
15227	  and OpenTimeout.
15228	* lib/net/http.rb (module Net):  ditto
15229	* lib/net/smtp.rb (module Net):  ditto
15230	* lib/net/telnet.rb (module Net):  Net::ReadTimeout is now raised in
15231	  waitfor to match Net::Protocol.
15232	* test/net/http/test_http.rb:  Updated Timeout::Error expectation to
15233	  Net::ReadTimeout.
15234	* test/net/ftp/test_ftp.rb:  ditto
15235
15236Thu Apr 12 05:27:01 2012  Eric Hodel  <drbrain@segment7.net>
15237
15238	* lib/webrick/server.rb (module WEBrick::GenericServer):  A server
15239	  will now continue only when a StandardError subclass is raised.  For
15240	  other exception types the error will be logged at the fatal level and
15241	  the server will safely stop.  Based on a patch by Alex Young.
15242	  [ruby-trunk - Feature #6236]
15243	* test/webrick/test_server.rb:  Test for new exception handling
15244	  behavior.  Join the server thread instead of busy-waiting for it to
15245	  shut down to remove race conditions.
15246
15247Thu Apr 12 03:50:44 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15248
15249	* lib/test/unit.rb (Test::Unit:Runner::Worker#_run_suites):
15250	  call GC.start before running the test suites.
15251
15252Wed Apr 11 22:31:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15253
15254	* parse.y (rb_check_id_cstr): new function to check if ID is
15255	  registered with NUL-terminated C string.
15256
15257	* sprintf.c (rb_str_format): avoid inadvertent symbol creation.
15258
15259Wed Apr 11 20:28:36 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
15260
15261	* io.c (rb_io_eof): use eof() instead of io_fillbuf(). It's because
15262	  io_unread() doesn't work properly when reading CRLF with read(length)
15263	  and mode 'r'.
15264	  [ruby-core:44189][Bug #6271]
15265
15266	* test/ruby/test_io_m17n.rb (TestIO_M17N#test_read_crlf_and_eof):
15267	  test for above.
15268
15269Wed Apr 11 07:38:33 2012  Eric Hodel  <drbrain@segment7.net>
15270
15271	* ext/digest/sha2/lib/sha2.rb (Digest#block_length):  Fixed method name
15272	  in documentation examples.  Patch by naleski via
15273	  https://github.com/ruby/ruby/pull/115
15274
15275Wed Apr 11 07:33:13 2012  Eric Hodel  <drbrain@segment7.net>
15276
15277	* pack.c (pack_pack):  Warn when an invalid character is found in the
15278	  format string when $VERBOSE is true.  [ruby-trunk - Feature #5219]
15279	* pack.c (pack_unpack):  ditto
15280	* test/ruby/test_pack.rb (class TestPack):  Test for warnings on
15281	  invalid format characters.
15282
15283Wed Apr 11 06:11:10 2012  Eric Hodel  <drbrain@segment7.net>
15284
15285	* string.c (rb_str_tr):  Documented use of \ to escape characters.
15286	  [ruby-trunk - Bug #6161]
15287	* string.c (rb_str_count):  ditto
15288
15289Wed Apr 11 05:14:51 2012  Eric Hodel  <drbrain@segment7.net>
15290
15291	* lib/abbrev.rb:  Clarified that Abbrev.abbrev returns a Hash instead
15292	  of an Array.  Patch by Andrei Bocan.  [ruby-trunk - Bug #6107]
15293
15294Wed Apr 11 03:02:24 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
15295
15296	* ext/ripper/lib/ripper/sexp.rb: fix spelling. patched by
15297	  Jonathan Hinkle via https://github.com/ruby/ruby/pull/116
15298
15299Tue Apr 10 19:07:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15300
15301	* error.c (rb_enc_raise): new function to raise an exception with
15302	  the message in the given encoding.  patched by now (Nikolai
15303	  Weibull) at [ruby-core:41160].  [Feature #5650]
15304
15305Tue Apr 10 18:19:32 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15306
15307	* lib/net/http.rb (Net::HTTP#send_request_with_body_stream):
15308	  use IO.copy_stream for requests using body_stream.
15309	  patched by Eric Wong. [ruby-core:40898] [Feature #5605]
15310
15311Tue Apr 10 16:53:21 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15312
15313	* thread_pthread.c: add prototype declarations for older Mac OS X.
15314	  [ruby-core:43376][Bug #6170]
15315
15316Tue Apr 10 15:35:21 2012  Koichi Sasada  <ko1@atdot.net>
15317
15318	* compile.c (iseq_set_sequence): show a hint if there are duplicated
15319	  "when" clauses.  [ruby-core:41502] [ruby-trunk - Feature #5716]
15320
15321Tue Apr 10 09:57:00 2012  Eric Hodel  <drbrain@segment7.net>
15322
15323	* string.c (rb_str_split_m):  Documented behavior of split on the empty
15324	  string.  [ruby-trunk - Feature #3575]
15325
15326Tue Apr 10 09:48:31 2012  Eric Hodel  <drbrain@segment7.net>
15327
15328	* ext/zlib/zlib.c (rb_deflate_s_deflate):  Fixed ruby example replacing
15329	  NO_FLUSH with FINISH.  [ruby-trunk - Bug #6273]
15330
15331Mon Apr  9 23:10:26 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15332
15333	* win32/win32.c (isUNCRoot, winnt_stat): support long UNC.
15334	  [ruby-core:30623][Feature #3399]
15335
15336Mon Apr  9 15:16:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15337
15338	* parse.y (string_content, parser_yylex): count brace nesting to
15339	  dispatch embexpr_end.  [ruby-core:43775][Bug #6211]
15340
15341Mon Apr  9 13:06:58 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
15342
15343	* hash.c (rb_hash_set_default_proc): Accept nil, patch by Run Paint
15344	  [Feature #4234]
15345
15346	* test/ruby/test_hash.rb: test for above.
15347
15348Mon Apr  9 08:01:15 2012  Tadayoshi Funaba  <tadf@dotrb.org>
15349
15350	* ext/date/date_strftime.c: gets the value with range() consistently.
15351	* ext/date/date_strftime.c (range): now just replaces the given item.
15352
15353Mon Apr  9 06:58:01 2012  Tadayoshi Funaba  <tadf@dotrb.org>
15354
15355	* complex.c (nucomp_expt): [ruby-core:44170].
15356
15357Mon Apr  9 02:52:03 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15358
15359	* complex.c (nucomp_expt): the result of f_complex_new2 may be a fixnum
15360	  with mathn. [ruby-core:44170] [Bug #6267]
15361
15362Sun Apr  8 22:46:01 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15363
15364	* ext/json/generator/generator.c (generate_json_bignum):
15365	  add RB_GC_GUARD.
15366	 http://fb.rubyci.org/~chkbuild/ruby-trunk/log/20120407T210301Z.diff.html.gz
15367
15368Sun Apr  8 07:26:40 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15369
15370	* lib/webrick/utils.rb (WEBrick::Utils::TimeoutHandler): get keys
15371	  and fetch values from it to prevent @timeout_info's error
15372	  "can't add a new key into hash during iteration".
15373
15374Sun Apr  8 06:51:57 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15375
15376	* io.c (io_unread): cast as long the value for extra_max.
15377	  [ruby-core:44137] [Bug #6257]
15378
15379Sun Apr  8 06:46:48 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15380
15381	* lib/webrick/httpresponse.rb (WEBrick::HTTPResponse#send_body_io):
15382	  use readpartial to get data even if the response is streaming data and
15383	  each data is smaller than @buffer_size.
15384	  patched by yu nobuoka. [ruby-dev:45471] [Bug #6230]
15385
15386Sat Apr  7 22:35:36 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
15387
15388	* include/ruby/win32.h (rb_w32_aspawn_flags): add the declaration of
15389	  new function.
15390
15391	* process.c (enum): add EXEC_OPTION_PGROUP and move the position
15392	  above for the usage in proc_spawn_n().
15393
15394	* process.c (proc_spawn_n): add an argument to pass new option
15395	  `new_pgroup`. The option specifies CREATE_NEW_PROCESS_GROUP flag to
15396	  CreateProcessW(). This flag is necessary for the usage of
15397	  Process.kill on the subprocess on Windows.
15398
15399	* process.c (rb_exec_arg_addopt): ditto.
15400
15401	* process.c (rb_spawn_process): ditto.
15402
15403	* process.c (documentation for rb_f_spawn): add documentation for new
15404	  option `new_pgroup` of spawn.
15405
15406	* test/ruby/test_process.rb (TestProcess#test_execopts_new_pgroup):
15407	  add tests for option `new_pgroup`.
15408
15409	* test/ruby/test_thread.rb
15410	  (TestThreadGroup#test_thread_timer_and_interrupt):
15411	  add option `new_pgroup: true` to spawn on Windows. It's needed for
15412	  Process.kill on a subprocess.
15413
15414	* win32/win32.c (CreateChild): add an argument to pass
15415	  dwCreationFlags of CreateProcessW().
15416
15417	* win32/win32.c (rb_w32_spawn): ditto.
15418
15419	* win32/win32.c (rb_w32_aspawn_flags): add new function to pass
15420	  dwCreationFlags.
15421
15422	* win32/win32.c (rb_w32_aspawn): refactor to move the content to
15423	  rb_w32_aspawn_flags().
15424	  [ruby-core:43245][Bug #6131]
15425
15426Sat Apr  7 22:32:00 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
15427
15428	* test/ruby/test_thread.rb
15429	  (TestThreadGroup#test_thread_timer_and_interrupt): skip on Windows.
15430	  Process.kill cannot kill a subprocess if CREATE_NEW_PROCESS_GROUP
15431	  flag is not specified in a call to CreateProcessW().
15432
15433	* win32/win32.c (CreateChild): revert the usage of
15434	  CREATE_NEW_PROCESS_GROUP flag for compatibility.
15435	  [ruby-core:43245][Bug #6131]
15436
15437Sat Apr  7 10:28:40 2012  Aaron Patterson <aaron@tenderlovemaking.com>
15438
15439	* ext/psych/lib/psych.rb: bumping up psych version to match release.
15440	* ext/psych/psych.gemspec: ditto
15441
15442Sat Apr  7 02:07:00 2012  Aaron Patterson <aaron@tenderlovemaking.com>
15443
15444	* ext/psych/parser.c: fall back to any encoding if the external
15445	  encoding is wrong.  [ruby-core:44163]
15446	* test/psych/test_encoding.rb: fix test
15447
15448Fri Apr  6 16:24:24 2012  Martin Duerst  <duerst@it.aoyama.ac.jp>
15449
15450	* struct.c (documentation for rb_struct_members_m):
15451	  fix 'array of strings' to 'array of symbols'
15452	  [ruby-core:44152][Bug #6264]
15453
15454Fri Apr  6 14:27:04 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
15455
15456	* Makefile.in ($(LIBRUBY_A)): fix typo.
15457
15458Thu Apr  5 13:26:15 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15459
15460	* missing/alloca.c (xmalloc, xfree): use ruby version, not
15461	  depending on RUBY_LIB_PREFIX.  [ruby-dev:45492][Bug #6255]
15462
15463Wed Apr  4 13:06:39 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15464
15465	* lib/ftp/ftp.rb (Net::FTP#close): restore original read_timeout.
15466
15467Wed Apr  4 10:33:31 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15468
15469	* lib/ftp/ftp.rb (Net::FTP#close): ignore exceptions from shutdown and
15470	  read on closing.
15471
15472Wed Apr  4 01:48:35 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15473
15474	* lib/ftp/ftp.rb (Net::FTP#close): close socket more gracefully.
15475
15476	* lib/ftp/ftp.rb (Net::BufferedSocket#shutdown): added.
15477
15478	* test/net/ftp/test_ftp.rb (FTPTest#create_ftp_server): wait socket
15479	  with shutdown and read.
15480
15481Tue Apr  3 19:00:52 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
15482
15483	* test/net/ftp/test_ftp.rb (FTPTest#create_ftp_server): should wait
15484	  a little before closing socket because if the client call
15485	  Net::FTP#getmultiline the socket is suddenly closed by the server in
15486	  the getline loop.
15487
15488Tue Apr  3 18:33:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15489
15490	* process.c (setreuid, setregid): suppress warnings.
15491	  [ruby-core:43374][Bug #6169]
15492
15493Tue Apr  3 10:18:27 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15494
15495	* enumerator.c (inspect_enumerator): suppress uninitialized
15496	  instance variable warnings.  [ruby-dev:45449][Bug #6214]
15497	  patched by no6v (Nobuhiro IMAI).
15498
15499Mon Apr  2 13:25:08 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15500
15501	* lib/optparse/ac.rb: autoconf-like options.
15502
15503Mon Apr  2 10:34:00 2012  eregon  <eregontp@gmail.com>
15504
15505	* string.c (rb_str_start_with, rb_str_end_with): raise an error if
15506	  an argument is not convertible to a String.
15507	  [ruby-core:40623][Bug #5536]
15508
15509Mon Apr  2 03:35:25 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15510
15511	* lib/webrick/server.rb (WEBrick::GenericServer): close socket only if
15512	  the socket is not closed yet.
15513
15514Sun Apr  1 23:03:18 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15515
15516	* lib/net/ftp.rb (Net::BufferedSocket): should delegate send() to @io
15517	  for Net::FTP#abort and Net::FTP#status.
15518
15519Sun Apr  1 00:41:56 2012  Shugo Maeda  <shugo@ruby-lang.org>
15520
15521	* lib/net/ftp.rb: fixed the domain name in examples.
15522
15523Sat Mar 31 21:39:45 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15524
15525	* lib/webrick/utils.rb (WEBrick::Utils::TimeoutHandler): dup to prevent
15526	  @timeout_info's "can't add a new key into hash during iteration".
15527
15528Sat Mar 31 14:22:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15529
15530	* hash.c (hash_default_value): extract from rb_hash_aref(), to be
15531	  shared with rb_hash_shift(), so that overriding Hash#default
15532	  will be respected.
15533
15534Sat Mar 31 14:16:02 2012  Sokolov Yura (funny-falcon)  <funny.falcon@gmail.com>
15535
15536	* hash.c: do not allocate st_table when it is not necessary.
15537
15538Sat Mar 31 13:42:39 2012  Shugo Maeda  <shugo@ruby-lang.org>
15539
15540	* lib/net/ftp.rb (read_timeout=, open_timeout=): supported timeout.
15541
15542Sat Mar 31 13:20:40 2012  Sokolov Yura (funny-falcon)  <funny.falcon@gmail.com>
15543
15544	* hash.c: remove unnecessary checks for Qundef in hash iterations.
15545	  since hash use st_foreach_check for iterations, such checks are
15546	  needless.
15547
15548Sat Mar 31 12:05:01 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
15549
15550	* ext/openssl/ossl_x509cert.c: Fix doc typo.
15551
15552Sat Mar 31 10:13:24 2012  Sokolov Yura (funny-falcon)  <funny.falcon@gmail.com>
15553
15554	* st.c (st_foreach_check, st_foreach): remove ancient check.  This
15555	  check are from initial ordered hash commit when first entry were
15556	  created with entry->fore = entry->back = entry.
15557
15558	* st.c (st_delete): use real_entries in st_delete for packed tables
15559
15560Sat Mar 31 07:53:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15561
15562	* st.c (st_foreach_check): remove the entry by replacing with never
15563	  when ST_DELETE.
15564
15565	* hash.c (st_foreach_safe): since table is not for VALUE, Qundef is
15566	  not special value, so use 0 instead.  therefore this function can be
15567	  applied to only st_table which 0 is invalid as keys, e.g., IDs.
15568
15569	* hash.c: Qundef cannot be passed from st_foreach_check().
15570
15571	* hash.c, marshal.c, object.c, variable.c: fix callback argument types
15572	  of iterators.
15573
15574Thu Mar 29 23:50:15 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15575
15576	* st.c (st_update): pass pointer to key to the callback function.
15577
15578Thu Mar 29 16:36:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15579
15580	* st.c (st_update): add existing parameter to the callback function.
15581
15582Thu Mar 29 16:35:32 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15583
15584	* lib/test/unit.rb (terminal_width, del_status_line, put_status):
15585	  extract as methods.
15586
15587Thu Mar 29 10:20:18 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
15588
15589	* ext/openssl/ossl_pkcs7.c: fix crash when parsing garbage data.
15590	* test/openssl/test_pkcs7.rb: assert correct behavior for it.
15591	  Thanks to Matt Venables for reporting the issue.
15592	  [ruby-core:43250][Bug #6134]
15593
15594Thu Mar 29 10:16:05 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
15595
15596	* thread_win32.c (TIME_QUANTUM_USEC): 10ms(= old setting) [experimental]
15597	  cf. [Bug #6098]
15598
15599Thu Mar 29 10:12:12 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
15600
15601	* thread.c (rb_threadptr_execute_interrupts_common): use defined
15602	  TIME_QUANTUM_USEC instead of a magic number.  there is no meanings
15603	  to use different values for checking interval of interruption and
15604	  thread switching limits.
15605	  cf. [Bug #6098]
15606
15607Thu Mar 29 09:26:17 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
15608
15609	* test/openssl/test_x509cert.rb: exclude test that fails when issuing
15610	  a certificate with RSA signature and DSS1 digest for earlier
15611	  OpenSSL versions when used in conjunction with OpenSSL 1.0.1.
15612	  Thanks, Vit Ondruch, for reporting the issue.
15613	  [ruby-core:42949][Bug #6089]
15614
15615Thu Mar 29 08:25:35 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
15616
15617	* NEWS: add note about unified behavior of encoding nil values in
15618	  instances of OpenSSL::ASN1::ASN1Data.
15619
15620Thu Mar 29 07:45:36 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
15621
15622	* ext/openssl/ossl_asn1.c: raise TypeError when trying to encode nil
15623	  values for Primitive instances.
15624	* test/openssl/test_asn1.rb: Assert consistent behavior when
15625	  encoding nil values: Primitives raise TypeError, Constructives
15626	  raise NoMethodError.
15627	  Fixes [ruby-core:43009][Bug #6102]
15628
15629Wed Mar 28 16:39:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15630
15631	* process.c (obj2uid, obj2gid): allow strings as input user/group id.
15632	  [ruby-core:40923][Feature #5610]
15633
15634Wed Mar 28 15:06:18 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15635
15636	* marshal.c (r_symreal): default to ASCII-8BIT for non-ascii symbols,
15637	  otherwise it should be converted to US-ASCII in rb_intern_str() if
15638	  possible.  [ruby-core:43762][Bug #6209]
15639
15640Wed Mar 28 08:44:24 2012  Aaron Patterson <aaron@tenderlovemaking.com>
15641
15642	* ext/psych/lib/psych.rb: updating version to match gem
15643	* ext/psych/psych.gemspec: ditto
15644	* ext/psych/lib/psych/visitors/to_ruby.rb: fixing deprecation warning
15645
15646Tue Mar 27 23:44:11 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
15647
15648	* io.c (io_unread): fixed memory leak.  report by nagachika via IRC.
15649
15650Tue Mar 27 22:44:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15651
15652	* configure.in (verconf.h): separate load path specific stuff from
15653	  config.h.
15654
15655Tue Mar 27 22:43:40 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15656
15657	* win32/Makefile.sub: fix config.h path to include.
15658
15659Tue Mar 27 17:08:08 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
15660
15661	* win32/win32.c (check_if_dir): fix memory leak.
15662
15663Tue Mar 27 13:13:51 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15664
15665	* string.c (str_new_empty): should copy also the encoding as an
15666	  empty substring.  [ruby-dev:45441][Bug #6206]
15667
15668Mon Mar 26 23:43:04 2012  Shugo Maeda  <shugo@ruby-lang.org>
15669
15670	* lib/net/ftp.rb (parse227, parse228, parse229): don't use $~.
15671
15672Mon Mar 26 23:34:40 2012  Shugo Maeda  <shugo@ruby-lang.org>
15673
15674	* lib/net/ftp.rb (parse227, parse228, parse229): don't use local
15675	  variables defined by named capture for other Ruby implementations
15676	  such as Rubinius.
15677
15678Mon Mar 26 23:19:03 2012  Shugo Maeda  <shugo@ruby-lang.org>
15679
15680	* lib/net/ftp.rb (parse_pasv_port): refactored.
15681
15682Mon Mar 26 19:49:49 2012  Shugo Maeda  <shugo@ruby-lang.org>
15683
15684	* test/net/ftp/test_ftp.rb: add the test, which was forgotten in the
15685	  previous commit.
15686
15687Mon Mar 26 19:37:27 2012  Shugo Maeda  <shugo@ruby-lang.org>
15688
15689	* lib/net/ftp.rb (parse227, parse228, parse229): refactored.
15690
15691Mon Mar 26 11:46:23 2012  Shugo Maeda  <shugo@ruby-lang.org>
15692
15693	* enumerator.c (inspect_enumerator): show method arguments of
15694	  lazy enumerators correctly.
15695
15696Mon Mar 26 13:51:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15697
15698	* win32/win32.c (check_if_dir, check_if_wdir): fix for Visual C++
15699	  not to use S_ISDIR().  [Feature #2408][ruby-core:26925]
15700
15701	* ruby.c (load_file_internal): ditto.
15702
15703Mon Mar 26 11:46:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15704
15705	* ruby.c (load_file_internal): bail out if the script is a directory.
15706	  [Feature #2408][ruby-core:26925]
15707
15708	* win32/win32.c (rb_w32_open, rb_w32_wopen): check if the file is a
15709	  directory when access denied, to set errno to EISDIR.
15710
15711Sun Mar 25 18:13:14 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15712
15713	* string.c (tr_setup_table): fix multiple non latin argument for
15714	  non latin (over 256 characters) tr-like methods.
15715	  [ruby-core:43371] [Bug #6167]
15716
15717Sun Mar 25 00:46:06 2012  Shugo Maeda  <shugo@ruby-lang.org>
15718
15719	* enumerator (lazy_initialize): set the instance variable "receiver"
15720	  to include the receiver to the return value of inspect on a lazy
15721	  enumerator directly created by Enumerator::Lazy.new.
15722
15723	* enumerator (RETURN_LAZY): don't set the instance variable "receiver".
15724
15725Sat Mar 24 23:59:00 2012  Shugo Maeda  <shugo@ruby-lang.org>
15726
15727	* enumerator (enumerator_inspect): include the original receiver and
15728	  method name of Enumerator::Lazy in the result of inspect.
15729	  [ruby-core:43345] [Bug #6159]
15730
15731	* enumerator (InitVM_Enumerator): don't use rb_define_alias for
15732	  some methods such as collect in order to make rb_frame_this_func()
15733	  return the correct method names.
15734
15735Sat Mar 24 22:22:18 2012  Sambasiva Rao Suda  <sambasivarao@gmail.org>
15736
15737	* time.c (time_init_1): Time.new will accept seconds as string or
15738	  int.  [ruby-core:43569][Bug #6193]
15739
15740Fri Mar 23 15:12:12 2012  Martin Duerst  <duerst@it.aoyama.ac.jp>
15741
15742	* transcode.c (documentation for str_encode): Explain
15743	  that transcoding to the same encoding is a no-op
15744	  (i.e. no exceptions, no replacements,...).
15745	  [ruby-core:43557][Bug #6190]
15746
15747Fri Mar 23 13:19:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15748
15749	* bignum.c (rb_str_to_inum): must be ASCII compatible encoding as
15750	  well as String#hex and String#oct.  [ruby-core:43566][Bug #6192]
15751
15752	* string.c (rb_must_asciicompat): check if ASCII compatible.
15753
15754Thu Mar 22 23:14:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15755
15756	* transcode.c (str_encode_bang, encoded_dup): if nothing was
15757	  transcoded, just set encoding but leave coderange unchanged as
15758	  force_encoding.  [ruby-core:43557][Bug #6190]
15759
15760Thu Mar 22 22:30:44 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
15761
15762	* io.c (static int io_fflush): add the definition.
15763	  Use it in set_binary_mode_with_seek_cur().
15764
15765	* io.c (set_binary_mode_with_seek_cur): refactoring to split the
15766	  content into io_unread(). Fix the possibility of buffer overflow.
15767
15768	* io.c (io_unread): add new implementation for Windows. Previous one
15769	  caused invalid cursor position using IO#pos with OS text mode. New
15770	  one fixes the bug.
15771
15772	* test/ruby/test_io_m17n.rb
15773	  (TestIO_M17N#test_pos_dont_move_cursor_position): add a test for
15774	  above bug.
15775	  [ruby-core:43497] [Bug #6179]
15776
15777Thu Mar 22 19:55:08 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15778
15779	* win32/win32.c (rb_w32_fstat, rb_w32_fstati64): convert FILETIME
15780	  to time_t directly, not to be affected by TZ unnecessarily.
15781
15782	* win32/win32.c (unixtime_to_filetime): convert time_t to FILETIME
15783	  simply.
15784
15785Thu Mar 22 13:43:31 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15786
15787	* ext/openssl/ossl_pkey_rsa.c (rsa_generate): fix argument type.
15788	  [Bug #6094]
15789
15790Thu Mar 22 11:14:10 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
15791
15792	* test/ruby/test_io.rb (TestIO#test_pos_with_getc): updated.
15793	  see [ruby-core:43550]
15794
15795Wed Mar 21 17:57:57 2012  NARUSE, Yui  <naruse@ruby-lang.org>
15796
15797	* regcomp.c: Merge Onigmo 3d855b30d574536d3ae600260208c6624ae4791c.
15798	  [Bug#6143] [Bug#6144] [Bug#6145]
15799
15800Wed Mar 21 17:01:55 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
15801
15802	* test/ruby/test_io.rb (TestIO#test_pos_with_getc): added.
15803	  see [Bug #6179][ruby-core:43518]
15804
15805Mon Mar 19 17:18:51 2012  Shugo Maeda  <shugo@ruby-lang.org>
15806
15807	* enumerator.c (lazy_flat_map_func): convert the block value to
15808	  Array if it doesn't respond to each.  [ruby-core:43334]
15809	  [Bug #6155]
15810
15811Mon Mar 19 16:34:14 2012  Shugo Maeda  <shugo@ruby-lang.org>
15812
15813	* enum.c (zip_i): variadic argument needs explicit cast on the
15814	  platforms where VALUE is longer than int.
15815
15816Mon Mar 19 15:36:41 2012  Shugo Maeda  <shugo@ruby-lang.org>
15817
15818	* enumerator.c (enumerable_lazy): add an example of take and first
15819	  to the documentation.  [ruby-core:43344] [Bug #6158]
15820	  add the description of the behavior when a block is given to zip
15821	  or cycle.
15822
15823Mon Mar 19 15:20:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15824
15825	* compile.c (iseq_specialized_instruction): DRY and replace chain
15826	  of if-else with switch for special instructions.  based on a
15827	  patch by Vasfed.  https://github.com/ruby/ruby/pull/105
15828
15829Mon Mar 19 15:05:54 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
15830
15831	* test/test_pty.rb: same as r29280, skip tests when PTY allocation
15832	  failed (that's not our fault).
15833
15834Sun Mar 18 23:21:17 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15835
15836	* gc.c (aligned_free): fix condition for free.  memalign() and
15837	  posix_memalign() are not defined together normally.
15838
15839Sun Mar 18 18:31:45 2012  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
15840
15841	* gc.c (aligned_malloc, aligned_free): added fallback implementations
15842	  for platforms like OSX Leopard.
15843
15844Sun Mar 18 17:17:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15845
15846	* bignum.c (rb_big_pow): estimate result bit size more precisely.
15847	  [ruby-core:30735][Feature #3429]
15848
15849Sun Mar 18 17:17:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15850
15851	* gc.c (free_method_entry_i): method entry may be in
15852	  unlinked_method_entry_list.  [ruby-core:43383][Bug #6171]
15853
15854Sun Mar 18 15:27:31 2012  Tanaka Akira  <akr@fsij.org>
15855
15856	* compile.c: typo fix by Run Paint Run Run.
15857	  [ruby-core:28368] [Bug #2824]
15858
15859Sun Mar 18 10:01:02 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
15860
15861	* lib/profiler.rb: support calling singleton methods of
15862	  an instance of BasicObject.
15863
15864Sat Mar 17 06:56:58 2012  Eric Hodel  <drbrain@segment7.net>
15865
15866	* object.c:  Fix indentation of Class#inherited example.
15867
15868Sat Mar 17 01:46:05 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
15869
15870	* string.c (trnext): fix bug with string ending with '\\'.
15871	  [ruby-dev:45374][Bug #6160]
15872
15873	* test/ruby/test_string.rb (TestString#test_delete): test for
15874	  above.
15875
15876Fri Mar 16 20:06:24 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15877
15878	* string.c (trnext): should advance char-wise.
15879	  [ruby-core:43335][Bug #6156]
15880
15881Fri Mar 16 17:42:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15882
15883	* parse.y (block_append_gen): fix unreachable warning line number.
15884	  should warn at the code, not jump.
15885
15886Fri Mar 16 17:33:08 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15887
15888	* enum.c (enum_take): allocate buffer array before iteration, as well
15889	  as enum_first did.
15890
15891	* enum.c (enum_first): remove duplication.
15892
15893Fri Mar 16 14:43:18 2012  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
15894
15895	* load.c (ruby_init_ext): don't free the given pointer itself.
15896	  It is not guaranteed even that the pointer is on heap.
15897
15898Fri Mar 16 14:37:57 2012  Shugo Maeda  <shugo@ruby-lang.org>
15899
15900	* vm_eval.c (rb_mod_module_eval): fix the documentation of
15901	  class_eval to mention class variable lookup.  [ruby-core:40649]
15902	  [Bug #5544]
15903
15904Fri Mar 16 14:27:11 2012  Shugo Maeda  <shugo@ruby-lang.org>
15905
15906	* vm_eval.c (rb_mod_module_eval): fix the documentation of
15907	  class_eval to mention constant lookup.  [ruby-core:41718]
15908	  [Bug #5777]
15909
15910Fri Mar 16 14:10:45 2012  Shugo Maeda  <shugo@ruby-lang.org>
15911
15912	* lib/net/imap.rb (initialize): raise Net::IMAP::Error when the
15913	  connection is closed without a greeting response.
15914	  [ruby-core:40938] [Bug #5616]
15915
15916Fri Mar 16 13:50:12 2012  Shugo Maeda  <shugo@ruby-lang.org>
15917
15918	* lib/net/imap.rb (rfc822_text): ignore [] after RFC822.
15919	  [ruby-core:40945] [Bug #5620]
15920
15921Fri Mar 16 12:00:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15922
15923	* vm_insnhelper.c (argument_error): use line number at the beginning
15924	  of lambda, not the first code of its body.
15925	  [ruby-core:43314][Bug #6151]
15926
15927	* iseq.c (rb_iseq_first_lineno): constified.
15928
15929Fri Mar 16 11:20:07 2012  Shugo Maeda  <shugo@ruby-lang.org>
15930
15931	* enumerator.c (lazy_take): don't enumerate an extra value.
15932	  [ruby-dev:45370] [Bug #6152]
15933
15934Fri Mar 16 06:30:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15935
15936	* enumerator.c (lazy_zip_func): variadic argument needs explicit cast
15937	  on the platforms where VALUE is longer than int.
15938
15939	* enumerator.c (lazy_init_iterator): no need to check overflow twice.
15940
15941Fri Mar 16 05:47:09 2012  Eric Hodel  <drbrain@segment7.net>
15942
15943	* enumerator.c (lazy_init_iterator):  Fix type error (int vs long).
15944
15945Thu Mar 15 23:13:36 2012  Shugo Maeda  <shugo@ruby-lang.org>
15946
15947	* enum.c (rb_enum_values_pack): rename from enum_values_pack, and
15948	  remove static.
15949
15950	* enumerator.c (lazy_init_iterator, lazy_init_yielder,
15951	  lazy_select_func, lazy_reject_func, lazy_grep_func): handle
15952	  multiple values correctly.
15953
15954	* enumerator.c (lazy_grep): change the behavior when a block is
15955	  given, to be consistent with Enumerable#grep.
15956
15957Thu Mar 15 19:12:31 2012  Shugo Maeda  <shugo@ruby-lang.org>
15958
15959	* enumerator.c (lazy_zip): rescue StopIteration returned by
15960	  Enumerator#next.
15961
15962Thu Mar 15 18:19:53 2012  Shugo Maeda  <shugo@ruby-lang.org>
15963
15964	* enumerator.c (lazy_zip, lazy_cycle): Enumerator::Lazy#{zip,cycle}
15965	  should be eager when a block is given, to be consistent with
15966	  Enumerable#{zip,cycle}.
15967
15968Thu Mar 15 17:45:27 2012  Shugo Maeda  <shugo@ruby-lang.org>
15969
15970	* enumerator.c (InitVM_Enumerator): renamed Enumerable::Lazy to
15971	  Enumerator::Lazy.
15972
15973Thu Mar 15 16:37:38 2012  Shugo Maeda  <shugo@ruby-lang.org>
15974
15975	* enumerator.c (enumerable_lazy): added cycle to the documentation.
15976
15977Thu Mar 15 15:37:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15978
15979	* parse.y (parser_yylex): fix warning line number.
15980
15981Thu Mar 15 15:19:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15982
15983	* enumerator.c (lazy_cycle): check argument number overflow before
15984	  creating temporary array.
15985
15986Thu Mar 15 15:04:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15987
15988	* util.c (ruby_strtod): no need to check same digit for hexdigit
15989	  twice.  [ruby-dev:45363][Bug #6146]
15990
15991	* parse.y (sym_check_asciionly): check ascii compatibility before
15992	  scanning for code range.
15993
15994	* parse.y (intern_str): set to us-ascii if ascii only.
15995	  [ruby-dev:45363][Bug #6146]
15996
15997	* file.c (ruby_enc_find_basename): allow NULL as alllen.
15998	  [ruby-dev:45363][Bug #6146]
15999
16000Thu Mar 15 14:49:31 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16001
16002	* string.c (rb_str_conv_enc_opts): default to original encoding.
16003
16004Thu Mar 15 13:47:17 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16005
16006	* hash.c (env_str_new, rb_f_getenv, env_fetch): use rb_str_conv_enc()
16007	  instead of rb_str_encode() to simplify the code.
16008
16009Thu Mar 15 12:44:50 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16010
16011	* win32/win32.c, include/ruby/win32.h (rb_w32_ugetenv): new API to
16012	  accept and to return UTF-8 strings.
16013
16014	* win32/win32.c (rb_w32_getenv): follow above change.
16015
16016	* win32/win32.c (rb_w32_get_environ): returns UTF-8 environment area.
16017
16018	* hash.c (env_str_new, rb_f_getenv, env_fetch): follow above changes.
16019	  [Bug #5570] [ruby-core:40737]
16020
16021Thu Mar 15 10:57:27 2012  Shugo Maeda  <shugo@ruby-lang.org>
16022
16023	* enumerator.c (lazy_cycle): add Enumerable::Lazy#cycle.
16024
16025Thu Mar 15 10:31:40 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16026
16027	* test/ruby/test_arity.rb (TestArity#err_mess): use assert_raise.
16028
16029Thu Mar 15 07:03:52 2012  Eric Hodel  <drbrain@segment7.net>
16030
16031	* vm_eval.c (check_funcall):  Raise ArgumentError if respond_to?
16032	  requires more than three arguments. [Bug #6000]
16033
16034	* test/ruby/test_object.rb (class TestObject):  Test for respond_to?
16035	  requiring more than three arguments.
16036
16037Thu Mar 15 06:08:06 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
16038
16039	* include/ruby/intern.h: Add rb_check_arity, rb_error_arity [#6085]
16040
16041	* array.c: Use rb_check_arity / rb_error_arity
16042
16043	* class.c: ditto
16044
16045	* enumerator.c: ditto
16046
16047	* eval.c: ditto
16048
16049	* file.c: ditto
16050
16051	* hash.c: ditto
16052
16053	* numeric.c: ditto
16054
16055	* proc.c: ditto
16056
16057	* process.c: ditto
16058
16059	* random.c: ditto
16060
16061	* re.c: ditto
16062
16063	* signal.c: ditto
16064
16065	* string.c: ditto
16066
16067	* struct.c: ditto
16068
16069	* transcode.c: ditto
16070
16071	* vm_eval.c: ditto
16072
16073	* vm_insnhelper.c: ditto & implementation of rb_error_arity
16074
16075	* test/ruby/test_arity.rb: tests for above
16076
16077Thu Mar 15 06:08:05 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
16078
16079	* vm_insnhelper.c: improve number of arguments error in case of
16080	  optional parameters (issue #6085)
16081
16082	* include/ruby/intern.h: define UNLIMITED_ARGUMENTS
16083
16084	* test/ruby/test_arity.rb:  test for above
16085
16086Thu Mar 15 00:58:04 2012  Shugo Maeda  <shugo@ruby-lang.org>
16087
16088	* enumerator.c (enumerable_lazy): fix the documentation of
16089	  Enumerable#lazy.
16090
16091Wed Mar 14 22:01:06 2012  Shugo Maeda  <shugo@ruby-lang.org>
16092
16093	* enumerator.c (lazy_init_iterator): break when Qundef is returned
16094	  to make obj.drop(3).take(2) work properly.
16095
16096	* enumerator.c (lazy_take_while): add Enumerable::Lazy#take_while.
16097
16098	* enumerator.c (lazy_drop): add Enumerable::Lazy#drop.
16099
16100	* enumerator.c (lazy_drop_while): add Enumerable::Lazy#drop_while.
16101
16102	* enumerator.c (InitVM_Enumerator): add Enumerable::Lazy#force as an
16103	  alias of to_a.
16104
16105Wed Mar 14 19:28:40 2012  Shugo Maeda  <shugo@ruby-lang.org>
16106
16107	* enumerator.c (lazy_take): add Enumerable::Lazy#take.
16108
16109Wed Mar 14 18:40:36 2012  Shugo Maeda  <shugo@ruby-lang.org>
16110
16111	* enumerator.c: use long for array indices.
16112
16113Wed Mar 14 18:25:18 2012  Shugo Maeda  <shugo@ruby-lang.org>
16114
16115	* enumerator.c: moved the comment of StopIteration.
16116
16117Wed Mar 14 17:55:29 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16118
16119	* numeric.c (flodivmod): must go through the same pass if HAVE_FMOD or
16120	  not.  this is a bugfix of r35013.
16121
16122Wed Mar 14 16:41:55 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16123
16124	* test/test_tmpdir.rb (TestTmpdir#test_world_writable): skip on Windows.
16125
16126Wed Mar 14 15:09:23 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
16127
16128	* numeric.c: fix flodivmod for cornercases [Bug #6044]
16129	  add ruby_float_mod
16130
16131	* insns.def (opt_mod): use ruby_float_mod
16132
16133	* internal.h: declare ruby_float_mod
16134
16135	* test/ruby/test_float.rb: tests for above
16136
16137	* test/ruby/envutil.rb: create helper assert_is_minus_zero
16138
16139Wed Mar 14 10:44:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16140
16141	* enumerator.c (lazy_grep_func): should use === instead of =~, as
16142	  well as Enumerable#grep
16143
16144Wed Mar 14 08:15:54 2012  Shugo Maeda  <shugo@ruby-lang.org>
16145
16146	* enumerator.c (lazy_flat_map_func): use each for non-Array objects.
16147
16148Wed Mar 14 08:06:35 2012  Shugo Maeda  <shugo@ruby-lang.org>
16149
16150	* enumerator.c (lazy_zip): add Enumerable::Lazy#zip.
16151
16152	* enumerator.c (lazy_lazy): just returns self.
16153
16154Wed Mar 14 07:48:36 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16155
16156	* ext/date/date_core.c (datetime_s_now): [ruby-core:43256].
16157
16158Tue Mar 13 22:00:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16159
16160	* compile.c (iseq_set_arguments): keyword rest arg without keyword args.
16161
16162	* node.c (dump_node): dump kw_rest_arg too.
16163
16164	* parse.y (block_param, f_arg): more kwrest patterns.
16165	  [ruby-core:42455][Bug #5989]
16166
16167	* parse.y (new_args_gen): no extra kw_rest_arg if no keyword rest arg.
16168
16169Tue Mar 13 15:17:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16170
16171	* parse.y (block_param, f_args): add rules for the case arguments
16172	  begin with kwrest.  [ruby-core:42455][Bug #5989]
16173
16174Tue Mar 13 12:37:53 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16175
16176	* io.c (io_encoding_set): always warn if external encoding and internal
16177	  encoding are identical. [ruby-core:40727] [Bug #5568]
16178
16179Tue Mar 13 12:37:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16180
16181	* gc.c: add ObjectSpace::WeakMap.  [ruby-dev:44565][Bug #5350]
16182
16183	* lib/weakref.rb: use WeakMap instead of _id2ref.
16184
16185Tue Mar 13 10:59:48 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16186
16187	* tool/rbinstall.rb (prepare): skip if basedir is not defined.
16188	  [ruby-core:39135][Bug #5238]
16189
16190	* tool/rbinstall.rb (CONFIG.[]): check for mandatory
16191	  configurations.
16192
16193Tue Mar 13 00:09:18 2012  Shugo Maeda  <shugo@ruby-lang.org>
16194
16195	* enumerator.c (enumerable_lazy): added documentation.
16196
16197Mon Mar 12 20:19:25 2012  Tanaka Akira  <akr@fsij.org>
16198
16199	* lib/tmpdir.rb (Dir::tmpdir): test the current directory suitable for
16200	  temporary directory.
16201
16202Mon Mar 12 20:08:16 2012  Tanaka Akira  <akr@fsij.org>
16203
16204	* lib/fileutils.rb (fu_have_symlink?): specify TypeError for rescue
16205	  clause.
16206
16207Mon Mar 12 19:23:13 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16208
16209	* encoding.c (rb_find_encoding): new function find encoding from
16210	  arbitrary object as a pointer to rb_encoding, and return NULL if
16211	  not found.
16212
16213	* io.c (io_encoding_set): just warn unsupported encodings, but not
16214	  exception.  [ruby-core:40726] [Bug #5567]
16215
16216Mon Mar 12 19:03:32 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16217
16218	* vm_method.c (Init_eval_method): respond_to? and
16219	  respond_to_missing? are public.
16220
16221Mon Mar 12 14:56:52 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16222
16223	* node.h (NEW_YIELD), parse.y (new_yield_gen): array-values flags
16224	  has been already obsolete.  patch by Thomas Enebo.
16225	  [ruby-core:41929][Bug #5847]
16226
16227Mon Mar 12 12:44:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16228
16229	* vm_method.c (Init_eval_method): copy basic methods to Exception.
16230	  [ruby-core:40287][Bug #5473]
16231
16232Mon Mar 12 10:13:36 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16233
16234	* eval_jump.c (rb_exec_end_proc): remember the latest exit status.
16235	  [ruby-core:43173][Bug #5218]
16236
16237Mon Mar 12 07:33:12 2012  Tanaka Akira  <akr@fsij.org>
16238
16239	* lib/tmpdir.rb: update document for changing
16240	  FileUtils.remove_entry_secure to FileUtils.remove_entry.
16241
16242	* NEWS: add incompatibility note for lib/tmpdir.rb.
16243
16244Mon Mar 12 07:19:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16245
16246	* lib/tmpdir.rb (Dir.tmpdir): should not use world-writable but
16247	  non-sticky directory.
16248
16249	* lib/tmpdir.rb (Dir.mktmpdir): check the parent directory.
16250
16251Mon Mar 12 07:04:11 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16252
16253	* random.c (Init_Random): removed rb_Random_DEFAULT and register as
16254	  mark-object instead of global variable.
16255
16256Mon Mar 12 07:03:32 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16257
16258	* random.c (random_s_rand): ensure default PRNG is re-initialized
16259	  after fork.  patched by Eric Wong.  [ruby-core:41209][Bug #5661]
16260
16261Sun Mar 11 23:57:29 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16262
16263	* pack.c (pack_unpack): when unpack('M') occurs an illegal byte
16264	  sequence, output the "=" character and the following character in
16265	  the decoded data without any transformation.
16266	  [ruby-dev:44875] [Bug #5635]
16267
16268Sun Mar 11 22:32:43 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16269
16270	* ext/json: Merge 164a75c8bd2007d32c4d7665d53140d8fc126dcd.
16271	  [ruby-core:41917] [Bug #5846]
16272
16273Sun Mar 11 17:10:04 2012  Shota Fukumori  <sorah@tubusu.net>
16274
16275	* lib/test/unit.rb: Put error message into STDERR if failed to launch
16276	  worker (job) process. [ruby-dev:44802] [Bug #5577]
16277
16278	* lib/test/unit/parallel.rb: If failed to increment_io, exit with code
16279	  2. [ruby-dev:44802] [Bug #5577]
16280
16281Sun Mar 11 15:46:45 2012  Shota Fukumori  <sorah@tubusu.net>
16282
16283	* io.c: fix rdoc of `IO.binwrite` to show same as `IO.write` except
16284	  it opens file with mode "wb:ASCII-8BIT". [Bug #5782] [ruby-core:42592]
16285
16286Sat Mar 10 23:52:28 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16287
16288	* st.c: pack tables also generic keys.  patched by Sokolov Yura at
16289	  https://github.com/ruby/ruby/pull/84
16290
16291	* st.c: add st_foreach_check for fixing iteration over packed table
16292	  and st_delete_safe.  patched by Sokolov Yura at
16293	  https://github.com/ruby/ruby/pull/84
16294
16295	* st.c: fix packed num_entries on delete_safe.  patched by Sokolov
16296	  Yura at https://github.com/ruby/ruby/pull/84
16297
16298Fri Mar  9 14:29:32 2012  Shugo Maeda  <shugo@ruby-lang.org>
16299
16300	* enumerator.c (lazy_flat_map): add Enumerable::Lazy#flat_map.
16301
16302Fri Mar  9 06:29:22 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16303
16304	* ext/psych/lib/psych.rb (load, parse): stop parsing or loading after
16305	  the first document has been parsed.
16306
16307	* test/psych/test_stream.rb: pertinent tests.
16308
16309Fri Mar  9 06:17:05 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16310
16311	* ext/psych/lib/psych.rb (parse_stream, load_stream): if a block is
16312	  given, documents will be yielded to the block as they are parsed.
16313	  [ruby-core:42404] [Bug #5978]
16314
16315	* ext/psych/lib/psych/handlers/document_stream.rb: add a handler that
16316	  yields documents as they are parsed
16317
16318	* test/psych/test_stream.rb: corresponding tests.
16319
16320Fri Mar  9 00:35:03 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16321
16322	* enumerator.c (lazy_initialize, enumerable_lazy): no additional
16323	  arguments.
16324
16325Fri Mar  9 00:30:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16326
16327	* enumerator.c: add Enumerable#lazy. based on the patch by
16328	  Innokenty Mikhailov at <https://github.com/ruby/ruby/pull/101>
16329	  [ruby-core:37164] [Feature #4890]
16330
16331Fri Mar  9 00:25:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16332
16333	* enumerator.c (enumerator_each, generator_each): pass arguments to
16334	  the block with yielder.
16335
16336Fri Mar  9 00:25:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16337
16338	* array.c (rb_ary_cat): new function to concat objects into array.
16339
16340Thu Mar  8 16:44:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16341
16342	* .gdbinit (rb_numtable_entry): update for recent refactoring of
16343	  st_table.
16344
16345Wed Mar  7 22:41:50 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
16346
16347	* lib/xmlrpc/client.rb (module XMLRPC): fix typo.
16348
16349	* test/xmlrpc/test_client.rb (test_async_call): add test for
16350	  XMLRPC::Client#call_async to check above fix.
16351
16352Wed Mar  7 16:30:24 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16353
16354	* error.c (rb_load_fail): should honor encoding.
16355
16356	* load.c (load_failed): ditto.
16357
16358Wed Mar  7 12:26:25 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16359
16360	* error.c (rb_load_fail): use path as a string, not char*.
16361
16362	* internal.h: (rb_load_fail): moved from ruby/intern.h.
16363
16364	* ruby.c (load_file_internal): fname cannot be NULL.
16365
16366Wed Mar  7 08:32:43 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16367
16368	* error.c (rb_loaderror_with_path): Adding the missing file as an
16369	  instance variable to the LoadError exception.
16370	  [ruby-core:39079]
16371
16372	* load.c: call rb_loaderror_with_path so that the missing path is
16373	  added to the exception.
16374
16375	* ruby.c: call rb_loaderror rather than raising our own LoadError
16376	  exception.
16377
16378	* include/ruby/intern.h: add declaration for rb_loaderror_with_path.
16379
16380	* test/ruby/test_require.rb: add supporting test for LoadError#path
16381	  method.
16382
16383Wed Mar  7 08:28:00 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16384
16385	* lib/xmlrpc/parser.rb: support i8 types. Thanks Stas Kelvich!
16386	  [ruby-core:29246] [Feature #3090]
16387
16388	* test/xmlrpc/test_client.rb: supporting test
16389
16390Wed Mar  7 07:43:29 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16391
16392	* lib/xmlrpc/client.rb: assume servers that do not send a Content-Type
16393	  header are sending 'text/xml'. Thanks Nathan Leavitt!
16394	  [ruby-core:41204] [Bug #5660]
16395
16396	* test/xmlrpc/test_client.rb: supporting test
16397
16398Wed Mar  7 07:39:28 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16399
16400	* test/xmlrpc/test_client.rb: adding a test for performing an XMLRPC
16401	  call.
16402	* test/xmlrpc/data/blog.xml: supporting XML document for the response.
16403
16404Tue Mar  6 16:24:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16405
16406	* parse.y (parser_tokadd_string): escape simple regexp meta
16407	  character terminators.
16408
16409Tue Mar  6 10:11:43 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16410
16411	* ext/io/console/console.c (set_rawmode): clear ECHOE and ECHOK
16412	  bits too.
16413
16414	* ext/io/console/console.c (echo_p): ignore ECHOE and ECHOK bits.
16415	  [ruby-dev:45309] [Bug #6116]
16416
16417	* ext/io/console/console.c (console_raw): fix rdoc.
16418
16419	* ext/io/console/console.c (console_set_echo): mentioned about
16420	  platform dependency.
16421
16422Tue Mar  6 07:18:10 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16423
16424	* lib/xmlrpc/client.rb: switch net/http post2 calls to modern
16425	  `request_post` methods.
16426
16427Tue Mar  6 02:31:20 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16428
16429	* ext/psych/lib/psych/core_ext.rb: only extend Kernel if IRB is loaded
16430	  in order to stop method pollution.
16431
16432Tue Mar  6 01:34:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16433
16434	* parse.y (block_call): rules for block_call after block_call.
16435	  based on a patch by pasberth https://github.com/ruby/ruby/pull/102
16436	  [ruby-dev:45308][Bug #6115]
16437
16438Tue Mar  6 01:24:13 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16439
16440	* parse.y (block_command, block_call): simplified rules.
16441
16442Mon Mar  5 18:28:35 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
16443
16444	* test/ruby/test_regexp.rb (TestRegexp#test_source): fix typo.
16445	* test/ruby/test_regexp.rb (TestRegexp#test_equal): ditto.
16446
16447Mon Mar  5 17:11:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16448
16449	* ext/syck/lib/syck/rubytypes.rb (Exception.yaml_new): fix bug
16450	  that causes YAML serialization problem for Exception.
16451	  Exception#initialize doesn't use visible instance variable for
16452	  the exception message, so call the method with the message.
16453	  patched by Jingwen Owen Ou <jingweno AT gmail.com>.
16454	  http://github.com/ruby/ruby/pull/41
16455
16456Mon Mar  5 16:50:22 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16457
16458	* test/ruby/test_sleep.rb (TestSleep#test_sleep_5sec): syntax error.
16459
16460	* test/ruby/test_sleep.rb (TestSleep#test_sleep_5sec): call uname
16461	  only on linux because it's a workaround for linux only.
16462
16463Mon Mar  5 12:44:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16464
16465	* st.c (unpack_entries): chain entries directly.  based on a patch
16466	  by Sokolov Yura <funny.falcon AT gmail.com>.
16467
16468	* st.c (unpack_entries): use union instead of casted pointer.
16469	  patched by Sokolov Yura <funny.falcon AT gmail.com>.
16470
16471	* st.c: use PACKED_ENT and FIND_ENTRY.  patched by Sokolov
16472	  Yura <funny.falcon AT gmail.com>.
16473
16474	* st.c (unpack_entries): reallocate bins if packed array size
16475	  is not same as initial bins size.  based on a patch by
16476	  Sokolov Yura <funny.falcon AT gmail.com>.
16477
16478Mon Mar  5 11:51:48 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16479
16480	* ext/bigdecimal/lib/bigdecimal/math.rb: remove description about
16481	  BigMath#log. patched by Sho Hashimoto [ruby-dev:45307] [Bug #6112]
16482
16483	* string.c (str_byteslice): fix typo.
16484
16485Sun Mar  4 23:21:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16486
16487	* parse.y (parser_tokadd_string): regexp engine doesn't need
16488	  terminators to be escaped.  [ruby-core:40364][Bug #5484]
16489
16490Sat Mar  3 22:51:46 2012  Tanaka Akira  <akr@fsij.org>
16491
16492	* process.c (rb_run_exec_options_err): chdir at last to interpret
16493	  relative pathnames from the current directory of the parent process.
16494
16495Sat Mar  3 12:20:44 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16496
16497	* ext/date/date_strftime.c: reassigned some variables.
16498
16499Sat Mar  3 12:12:16 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16500
16501	* ext/date/date_{parse,strptime}.c: [ruby-dev:45303].
16502
16503Sat Mar  3 10:09:21 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16504
16505	* lib/xmlrpc/client.rb (initialize): net/http defaults to 1_2 in 1.8+,
16506	  so we can safely remove the call to enable it.
16507
16508Sat Mar  3 08:42:25 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16509
16510	* lib/xmlrpc/client.rb (new2): use URI for uri parsing.
16511	* test/xmlrpc/test_client.rb: test that query params are passed to the
16512	  client constructor.
16513
16514Sat Mar  3 08:20:10 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16515
16516	* lib/xmlrpc/client.rb (new2): raises an ArgumentError on bad
16517	  arguments.
16518	* test/xmlrpc/test_client.rb: tests for bad uris
16519
16520Sat Mar  3 08:08:11 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16521
16522	* lib/xmlrpc/client.rb (new2): fix custom port specification when an
16523	  SSL uri is used.
16524	* test/xmlrpc/test_client.rb: tests for XMLRPC::Client.new2
16525
16526Sat Mar  3 08:03:29 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16527
16528	* ext/syck/rubyext.c (mktime_do): use ISDIGIT().
16529	  [ruby-core:43060] [Bug #6108]
16530
16531	* ext/syck/token.c (sycklex_yaml_utf8): cast as unsigned char.
16532	  [ruby-core:43060] [Bug #6108]
16533
16534Sat Mar  3 06:57:14 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16535
16536	* configure.in (ruby_pc): make configurable.  [Bug #6051]
16537
16538Fri Mar  2 17:49:03 2012  Hiroshi Nakamura  <nahi@ruby-lang.org>
16539
16540	* .travis.yml (branches): Enable TravisCI for ruby_1_9_3.
16541
16542Fri Mar  2 17:13:33 2012  Hiroshi Nakamura  <nahi@ruby-lang.org>
16543
16544	* test/ruby/test_array.rb (test_combination2): Make the test case for
16545	  [ruby-core:29240] more descriptive.
16546	  cf. http://bugs.jruby.org/6518
16547
16548Fri Mar  2 16:37:11 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16549
16550	* file.c (file_expand_path): use wcscasecmp().
16551
16552Fri Mar  2 16:36:31 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16553
16554	* thread_pthread.c (native_cond_timeout): cast explicitly to suppress
16555	  a warning.
16556
16557Fri Mar  2 16:35:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16558
16559	* io.c (pipe_open): cmd is no longer used if fork is available.
16560
16561Thu Mar  1 16:13:18 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16562
16563	* internal.h (rb_file_const, rb_file_load_ok): moved functions for
16564	  internal use only.
16565
16566Thu Mar  1 15:40:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16567
16568	* win32/makedirs.bat: new command to make intermediate
16569	  directories, and not to report any errors if the directory
16570	  already exists.
16571
16572	* win32/Makefile.sub (MAKEDIRS): enable command extensions.
16573
16574Thu Mar  1 01:25:43 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16575
16576	* regparse.c (is_onechar_cclass): optimize character class
16577	  Merge Onigmo 27278c12e6674043cc8affca6507e20e119a86ee.
16578
16579	* regparse.c (is_onechar_cclass): [bug] unexpected match occurs when a
16580	  char class contains no char
16581
16582	* enc/unicode.c (init_case_fold_table): define the sizes of case
16583	  folding tables in casefold.h
16584
16585Wed Feb 29 16:11:34 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16586
16587	* win32/Makefile.sub (MAKEDIRS): use mkdir of cmd.exe instead of ruby.
16588	  [Bug #6103] [ruby-core:43012]
16589
16590	* win32/README.win32: added a notice about command extension of cmd.exe.
16591
16592Wed Feb 29 15:39:39 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16593
16594	* test/ruby/test_io.rb (TestIO#test_readpartial_locktmp): skip on
16595	  windows because of the platform restriction.
16596
16597Wed Feb 29 15:38:50 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16598
16599	* test/ruby/memory_status.rb (Memory): syntax error.
16600
16601Wed Feb 29 13:06:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16602
16603	* test/ruby/memory_status.rb: use /proc/self/status if it is in
16604	  the expected format.
16605
16606Wed Feb 29 06:14:51 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16607
16608	* ext/date/date_core.c: reverted r34825.
16609
16610Tue Feb 28 23:20:01 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
16611
16612	* Makefile.in (PLATFORM_DIR): add a variable for `win32` directory.
16613	* Makefile.in (clean-platform): add new target.
16614	  It cleans `win32` directory.
16615
16616	* common.mk (clean): add a dependency for `win32` directory.
16617	* common.mk (distclean): ditto.
16618	* common.mk (distclean-platform): add new target.
16619	  It cleans `win32` directory.
16620	* common.mk ($(PLATFORM_D)): add new target to make `win32` directory.
16621	* common.mk (win32/win32.$(OBJEXT)): move win32.o into `win32`
16622	  directory.
16623	* common.mk (win32/file.$(OBJEXT)): add new target for win32/file.c.
16624
16625	* configure.in: move win32.o into `win32` directory and add
16626	  win32/file.o to MISSING.
16627
16628	* file.c (file_load_ok, rb_file_load_ok): replace static
16629	  file_load_ok() with public rb_file_load_ok().
16630	  It's to link Windows implementation in win32/file.c.
16631	* file.c (rb_find_file_ext_safe): ditto.
16632	* file.c (rb_find_file_safe): ditto.
16633
16634	* win32/file.c (rb_file_load_ok): new file. Add Windows specific
16635	  optimized implementation of rb_file_load_ok(). We created a
16636	  separated file to avoid too many #ifdef macro which is unreadable.
16637
16638	* win32/Makefile.sub (PLATFORM_DIR): add a variable for `win32`
16639	  directory.
16640	* win32/Makefile.sub (MISSING): move win32.obj into `win32`
16641	  directory and add win32/file.obj to MISSING.
16642	* win32/Makefile.sub (MAKEDIRS): replace MINIRUBY with BASERUBY.
16643	  It's because miniruby doesn't exist when making `win32` directory.
16644	* win32/Makefile.sub (clean-platform): add new target to clean `win32`
16645	  directory.
16646	* win32/Makefile.sub ({$(srcdir)}.c{}.obj): make it not match
16647	  win32/file.c to build properly.
16648	* win32/Makefile.sub (win32/win32.$(OBJEXT)): move win32.obj into
16649	 `win32` directory.
16650
16651	  Patch created with Luis Lavena.
16652	  [ruby-core:42480] [Feature #5999]
16653
16654Tue Feb 28 20:27:25 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16655
16656	* ext/date/date_core.c: [ruby-core:42998]
16657
16658Tue Feb 28 18:47:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16659
16660	* io.c (io_binwrite, rb_io_syswrite): use shared frozen source
16661	  strings.
16662
16663	* io.c (io_fread, io_getpartial, rb_io_sysread): set buffer size
16664	  after check if readable, which can cause thread switch.
16665	  [ruby-dev:45297][Bug #6099]
16666
16667Tue Feb 28 17:16:01 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16668
16669	* lib/time.rb (Time#xmlschema): use strftime specifiers instead of
16670	  fractional exponential calculation which yields undesirable
16671	  result.  [ruby-core:42997][Bug #6100]
16672
16673Tue Feb 28 14:15:29 2012  Eric Hodel  <drbrain@segment7.net>
16674
16675	* lib/net/protocol.rb: Add OpenTimeout subclass of Timeout::Error
16676	* lib/net/pop.rb:  Modernize Timeout usage.  Patch by Eric Wong.
16677	  Use Net::OpenTimeout instead of Timeout::Error.  [Bug #5765]
16678	* lib/net/http.rb:  ditto
16679	* lib/net/smtp.rb:  ditto
16680	* lib/net/telnet.rb:  ditto
16681
16682Tue Feb 28 13:51:12 2012  Eric Hodel  <drbrain@segment7.net>
16683
16684	* lib/net/http.rb:  Retry HTTP requests for additional network errors.
16685	  Introduce OpenTimeout subclass of Timeout::Error.  [Bug #6001]
16686	* test/net/http/test_http.rb:  Reduce timeout to 0.01s for faster test
16687	* test/net/http/test_https.rb:  ditto
16688
16689Tue Feb 28 11:44:49 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16690
16691	* configure.in (debugflags): check if -ggdb is accepted.
16692	  [ruby-core:42875][Bug #6080]
16693
16694Tue Feb 28 10:28:51 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16695
16696	* ext/psych/lib/psych.rb: default open YAML files with utf8 external
16697	  encoding. [ruby-core:42967]
16698	* test/psych/test_tainted.rb: ditto
16699
16700Mon Feb 27 23:46:09 2012  Yukihiro Matsumoto  <matz@ruby-lang.org>
16701
16702	* parse.y (opt_bv_decl): allow newline at the end.  [ruby-dev:45292]
16703
16704Mon Feb 27 20:43:05 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
16705
16706	* io.c (rb_io_set_pos): add rdoc about textmode.
16707
16708	* test/ruby/test_io.rb (TestIO#test_setpos): use binmode.
16709
16710Mon Feb 27 17:00:15 2012  Akinori MUSHA  <knu@iDaemons.org>
16711
16712	* string.c (rb_str_crypt): Update rdoc and state that this
16713	  function is system dependent.  Reviewed by nobu, thanks to
16714	  @takai.
16715
16716Mon Feb 27 17:03:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16717
16718	* ext/bigdecimal/bigdecimal.c (GetVpValueWithPrec): since methods
16719	  can be overridden, so should not make an assumption on the type
16720	  of results.  [ruby-core:42969][Bug #6093]
16721
16722Mon Feb 27 10:54:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16723
16724	* lib/mkmf.rb (try_cppflags, try_cflags, try_ldflags): replace the
16725	  target flags if the given flag is accepted.
16726
16727Mon Feb 27 10:53:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16728
16729	* test/rubygems/test_gem_specification.rb (test_self_from_yaml_syck_default_key_bug):
16730	  ignore the test for too old versions.
16731
16732Mon Feb 27 10:53:12 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16733
16734	* lib/test/unit.rb (Test::Unit::Runner#puke): skips with no
16735	  messages should be trivial.
16736
16737Mon Feb 27 10:50:23 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16738
16739	* io.c, process.c, time.c, ext: use rb_sys_fail_str instead of
16740	  rb_sys_fail.
16741
16742Mon Feb 27 10:48:49 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16743
16744	* ext/openssl/extconf.rb: suppress useless deprecation warnings
16745	  from OpenSSL added by Apple.
16746
16747Sun Feb 26 23:29:49 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16748
16749	* regparse.c (add_code_range_to_buf0): wrong condition of duplicated
16750	  warnings.
16751
16752Sun Feb 26 11:26:44 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16753
16754	* compile.c (iseq_compile_each): call on special object instead of
16755	  self.  since stabby lambda is a syntax, so it should not be
16756	  affected by the context.  [ruby-core:42349][Bug #5966]
16757
16758	* insns.def (send): no special deal for FCALL.  self should be put
16759	  on TOS instead.
16760
16761Sun Feb 26 05:35:43 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16762
16763	* error.c (report_bug): use buf and snprintf to avoid consuming stack.
16764	  [ruby-dev:45272] [Bug #6058]
16765
16766Sat Feb 25 17:41:19 2012  Tanaka Akira  <akr@fsij.org>
16767
16768	* ext/dbm/extconf.rb (headers): try ambiguous headers at last.
16769
16770Sat Feb 25 17:07:15 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16771
16772	* lib/fileutils.rb: use chomp(?/) instead of sub to optimize and avoid
16773	  to regexping invalid string.
16774
16775Sat Feb 25 16:18:24 2012  NARUSE, Yui  <naruse@ruby-lang.org>
16776
16777	* complex.c (nucomp_marshal_load): raise error on invalid data.
16778	  reported by John Firebaugh [ruby-core:42860] [Bug #6076]
16779
16780Sat Feb 25 14:46:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16781
16782	* ext/dl/dl.c (Init_dl): support intrinsic types, size_t, ptrdiff_t
16783	  and intptr_t.  [ruby-core:42460][Feature #5992]
16784
16785	* ext/fiddle/fiddle.c (Init_fiddle): ditto.
16786
16787	* ext/dl/lib/dl/cparser.rb (DL::CParser#parse_ctype): ditto.
16788
16789Sat Feb 25 11:08:28 2012  Tanaka Akira  <akr@fsij.org>
16790
16791	* ext/curses/curses.c (Init_curses): use rb_define_const once for
16792	  Curses::VERSION.
16793
16794	* ext/dbm/dbm.c (Init_dbm): ditto for DBM::VERSION.
16795
16796Sat Feb 25 10:34:22 2012  Tanaka Akira  <akr@fsij.org>
16797
16798	* ext/curses/curses.c (Init_curses): make Curses::VERSION
16799	  understandable without context.
16800
16801	* ext/dbm/dbm.c (Init_dbm): ditto for DBM::VERSION.
16802
16803Sat Feb 25 07:53:58 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16804
16805	* parse.y (parser_tokadd_string): insert a backslash only if
16806	  quoted by single quotes.  [ruby-dev:45281] [Bug #6069]
16807
16808Sat Feb 25 07:53:49 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16809
16810	* dir.c (dir_inspect), io.c (rb_io_inspect): keep encoding of path.
16811	  [Bug #6072]
16812
16813Sat Feb 25 07:53:40 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16814
16815	* dir.c (dir_initialize): keep path in original encoding.
16816
16817	* error.c (syserr_initialize): prefer the encoding of message over
16818	  locale.  [ruby-dev:45279][Bug #6071]
16819
16820Sat Feb 25 06:55:29 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16821
16822	* file.c (utime_internal): fix a variable missed to replace.
16823	  [ruby-core:42864] [Bug #6077]
16824
16825Fri Feb 24 18:21:55 2012  Hiroshi Nakamura  <nahi@ruby-lang.org>
16826
16827	* test/zlib/test_zlib.rb (TestZlibGzipReader#test_encoding): Add
16828	  encoding testcases for GzipReader#read.  read() emits
16829	  Encoding.default_external in contrast to read(size) emits BINARY.
16830	  See also: http://bugs.jruby.org/6208
16831
16832Fri Feb 24 17:56:39 2012  URABE Shyouhei  <shyouhei@ruby-lang.org>
16833
16834	* test/ruby/test_literal.rb (TestRubyLiteral#test_special_const):
16835	  test for https://bugs.php.net/bug.php?id=61095
16836
16837Fri Feb 24 16:48:29 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16838
16839	* dir.c, file.c, io.c (rb_sys_fail_path): use rb_sys_fail_str.
16840
16841	* error.c: new functions to deal exceptions with string instances.
16842
16843	* dir.c, file.c, io.c: use rb_sys_fail_path.
16844
16845Fri Feb 24 15:49:07 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16846
16847	* configure.in (__builtin_unreachable): check for clang.
16848	  [ruby-core:42849]
16849
16850	* include/ruby/ruby.h (UNREACHABLE): fallback definition.
16851
16852Fri Feb 24 13:54:33 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16853
16854	* ext/psych/parser.c: prevent a memory leak by protecting calls to
16855	  handler callbacks.
16856	* test/psych/test_parser.rb: test to demonstrate leak.
16857
16858Fri Feb 24 12:07:34 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
16859
16860	* lib/net/http.rb: Fix documentation. Patched from Florian Mhun
16861	  via http://github.com/ruby/ruby/pull/96
16862
16863Fri Feb 24 11:48:07 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
16864
16865	* string.c (rb_str_prepend): Fix documentation for String#prepend.
16866	  Patched from Franck Verrot via http://github.com/ruby/ruby/pull/98
16867	  and Andrew Horsman via http://github.com/ruby/ruby/pull/55
16868
16869Fri Feb 24 10:08:33 2012  Eric Hodel  <drbrain@segment7.net>
16870
16871	* lib/net/http.rb (Net::HTTP#transport_request):  Fix infinite loop
16872	  upon EOFError or Errno::ECONNRESET where count is reset to 0.
16873	* test/net/http/test_http.rb (class TestNetHTTPKeepAlive):  Test for
16874	  above.
16875
16876Fri Feb 24 09:05:40 2012  Eric Hodel  <drbrain@segment7.net>
16877
16878	* complex.c (Init_Complex):  Document Complex::I.  Patch by Sylvain
16879	  Daubert.  [Feature #5623]
16880
16881Fri Feb 24 08:52:09 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16882
16883	* parse.y (parser_tokadd_string, parser_yylex): insert a backslash
16884	  if the next character is non-ascii.  [ruby-dev:45278] [Bug #6069]
16885
16886Fri Feb 24 08:13:20 2012  Eric Hodel  <drbrain@segment7.net>
16887
16888	* lib/profiler.rb:  Add Profiler documentation by Gonzalo Rodriguez.
16889	  [Bug #5816]
16890
16891Fri Feb 24 08:08:38 2012  Aaron Patterson <aaron@tenderlovemaking.com>
16892
16893	* ext/psych/parser.c: set parser encoding based on the YAML input
16894	  rather than user configuration.
16895	* test/psych/test_encoding.rb: corresponding tests.
16896	* test/psych/test_parser.rb: ditto
16897	* test/psych/test_tainted.rb: ditto
16898
16899Fri Feb 24 08:02:52 2012  Eric Hodel  <drbrain@segment7.net>
16900
16901	* hash.c (Init_Hash):  Add section on how objects are used as Hash keys
16902	  and how to use custom classes as Hash keys.
16903
16904Fri Feb 24 07:36:11 2012  Eric Hodel  <drbrain@segment7.net>
16905
16906	* object.c (rb_obj_eql):  Improve equality documentation by adding an
16907	  example of equal? vs == and recommending eql? be aliased to == when
16908	  overridden.
16909
16910Fri Feb 24 07:21:15 2012  Eric Hodel  <drbrain@segment7.net>
16911
16912	* object.c (rb_obj_hash):  Added note that the hash value is not
16913	  deterministic on Marc-Andre's suggestion.  Expanded description of
16914	  the purpose of the hash method.  [Bug #6068]
16915
16916Thu Feb 23 23:01:21 2012  Tanaka Akira  <akr@fsij.org>
16917
16918	* ext/dbm/extconf.rb: unused macro removed.
16919
16920Thu Feb 23 22:26:53 2012  Tanaka Akira  <akr@fsij.org>
16921
16922	* test/test_curses.rb: new file.
16923
16924Thu Feb 23 19:57:56 2012  Tanaka Akira  <akr@fsij.org>
16925
16926	* ext/curses/rain.rb: trap SIGHUP, SIGINT, SIGQUIT and SIGTERM only.
16927
16928Thu Feb 23 19:56:48 2012  Tanaka Akira  <akr@fsij.org>
16929
16930	* signal.c (sig_trap): show signal name on error.
16931
16932Thu Feb 23 12:21:48 2012  Tanaka Akira  <akr@fsij.org>
16933
16934	* ext/dbm/extconf.rb: use DBM_SUFFIX only to detect header of
16935	  Berkeley DB.
16936
16937Thu Feb 23 10:00:18 2012  Eric Hodel  <drbrain@segment7.net>
16938
16939	* io.c (rb_io_f_sync):  Fix double-negative typo.  [ruby-trunk - #5837]
16940
16941Thu Feb 23 09:57:21 2012  Eric Hodel  <drbrain@segment7.net>
16942
16943	* load.c (rb_f_require):  Add note to require for scope of items in the
16944	  loaded file.  [ruby-trunk - #5910]
16945
16946Thu Feb 23 03:58:08 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
16947
16948	* lib/ostruct.rb (delete_field): Bug fix so previous value is
16949	  returned. Patch by Nick Recobra [Bug #6063]
16950
16951Thu Feb 23 02:33:00 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16952
16953	* io.c (rb_io_extract_modeenc): fail only if conflicting
16954	  text/binary modes given explicitly.  [ruby-dev:45268][Bug #6055]
16955
16956Wed Feb 22 23:27:08 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16957
16958	* test/iconv/test_option.rb: enabled.  [ruby-core:42802][Bug #6061]
16959
16960Wed Feb 22 21:45:56 2012  Tanaka Akira  <akr@fsij.org>
16961
16962	* ext/curses/curses.c: use defined() to suppress a warning.
16963
16964Wed Feb 22 21:44:29 2012  Tanaka Akira  <akr@fsij.org>
16965
16966	* ext/curses/extconf.rb: refactored.
16967
16968Wed Feb 22 20:42:28 2012  Tanaka Akira  <akr@fsij.org>
16969
16970	* ext/curses/extconf.rb: try to distinguish curses_version is a
16971	  function or variable.
16972
16973	* ext/curses/curses.c (Init_curses): refine Curses::VERSION.
16974
16975Wed Feb 22 19:47:03 2012  Tanaka Akira  <akr@fsij.org>
16976
16977	* ext/curses/extconf.rb: show the chosen header and library.
16978
16979Wed Feb 22 19:22:31 2012  Tadayoshi Funaba  <tadf@dotrb.org>
16980
16981	* reverted 34739 for test/date.
16982
16983Wed Feb 22 19:08:55 2012  Tanaka Akira  <akr@fsij.org>
16984
16985	* ext/curses/extconf.rb: refactored.
16986
16987Wed Feb 22 18:44:41 2012  Shota Fukumori  <sorah@tubusu.net>
16988
16989	* lib/test/unit.rb (setup_options): add option "--retry" as opposite
16990	  for "--no-retry"
16991
16992Wed Feb 22 18:34:02 2012  Shota Fukumori  <sorah@tubusu.net>
16993
16994	* lib/test/unit.rb (setup_options): add option "--show-skip" to
16995	  cancel "--hide-skip" (-q)
16996
16997Wed Feb 22 17:36:22 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16998
16999	* io.c (rb_io_s_foreach): argument check before making Enumerator.
17000	  [ruby-dev:31525]
17001
17002Wed Feb 22 17:07:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17003
17004	* io.c (rb_io_s_foreach): return enumerator including keyword
17005	  arguments.  [ruby-dev:45267][Bug #6054]
17006
17007Wed Feb 22 12:15:16 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17008
17009	* configure.in: allow llvm-gcc because it work fine with r34278.
17010
17011Wed Feb 22 10:57:08 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17012
17013	* regparse.c (fetch_token): don't use // comment.
17014
17015Wed Feb 22 10:32:11 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17016
17017	* test/mkmf/test_framework.rb: try CoreFoundation framework, than
17018	  Cocoa which is dependent on QuickTime SDK which has separated
17019	  since Xcode 4.3.
17020
17021Wed Feb 22 10:18:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17022
17023	* common.mk (test-all, test-ruby): more dependencies.
17024
17025Wed Feb 22 06:48:55 2012  Eric Hodel  <drbrain@segment7.net>
17026
17027	* file.c (rb_f_test):  Fix formatting of Kernel#test rdoc.
17028
17029Wed Feb 22 06:12:15 2012  Tanaka Akira  <akr@fsij.org>
17030
17031	* ext/dbm/extconf.rb: check DBM_SUFFIX for Mac OS X.
17032	  Its ndbm.h doesn't include db.h.
17033
17034Wed Feb 22 06:02:42 2012  Tanaka Akira  <akr@fsij.org>
17035
17036	* ext/dbm/dbm.c (fdbm_initialize): disable Berkeley DB error messages.
17037
17038	* ext/dbm/extconf.rb: check DBC type for above.
17039
17040	[ruby-dev:45269]
17041
17042Tue Feb 21 20:23:47 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17043
17044	* hash.c (rb_any_hash): treat Qundef like as other special constants.
17045
17046	* hash.c (hash_foreach_iter): fix signature.
17047
17048Tue Feb 21 19:39:34 2012  Tanaka Akira  <akr@fsij.org>
17049
17050	* ext/curses/curses.c (Init_curses): use curses_version() for
17051	  Curses::VERSION.
17052
17053Tue Feb 21 18:21:25 2012  Narihiro Nakamura  <authornari@gmail.com>
17054
17055	* gc.c : remove gc_clear_mark_on_sweep_slots() and use
17056	  rest_sweep() instead of it, because some dead objects might be
17057	  marked in next the mark phase by false pointers.
17058	  [ruby-core:42672]
17059
17060Tue Feb 21 16:08:17 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17061
17062	* proc.c (rb_hash_proc): get wrapped pointer properly.  [Bug #6048]
17063
17064Tue Feb 21 14:41:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17065
17066	* template/ruby.pc.in: added rubylibprefix, {rubylib,vendor,site}dir
17067	  and {ruby,vendor,site}archdir.  [ruby-core:42766][Feature #6052]
17068
17069Tue Feb 21 09:13:25 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
17070
17071	* proc.c (method_hash, proc_hash): Fix {Unbound}Method#hash
17072	  [Bug #6048]. Isolate hash computation for proc
17073
17074	* internal.h: Declaration for above
17075
17076	* vm_method.c (rb_method_definition_hash): Computation for
17077	  hash part of a method definition
17078
17079	* method.h: Declaration for above
17080
17081	* test/ruby/test_method.rb: Test for above
17082
17083Tue Feb 21 02:56:15 2012  Yukihiro Matsumoto  <matz@ruby-lang.org>
17084
17085	* enumerator.c (enumerator_rewind): update the documentation.
17086	  fixed: #6053
17087
17088Mon Feb 20 23:38:35 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
17089
17090	* enc/depend: ignore mktable.c because it's not encoding library.
17091	  [ruby-core:42760] [Bug #6049]
17092
17093Mon Feb 20 21:40:53 2012  Tanaka Akira  <akr@fsij.org>
17094
17095	* ext/curses/extconf.rb: fold too long lines.
17096
17097Mon Feb 20 21:16:48 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
17098
17099	* lib/fileutils.rb: revert a line modified accidentally at r34669.
17100	  This fixes mingw test errors in TestDir_M17N.
17101	  [ruby-core:42728] [Feature #4970]
17102
17103Mon Feb 20 21:09:27 2012  Tanaka Akira  <akr@fsij.org>
17104
17105	* ext/curses/curses.c (Init_curses): define Curses::VERSION.
17106
17107Mon Feb 20 21:08:00 2012  Tanaka Akira  <akr@fsij.org>
17108
17109	* ext/curses/extconf.rb: restore $libs and $defs for each
17110	  header/library choice.
17111
17112Mon Feb 20 19:57:26 2012  Tanaka Akira  <akr@fsij.org>
17113
17114	* ext/dbm/extconf.rb: weaken header/library consistency check if db is
17115	  "ndbm".  It seems several (possibly historical) distributions
17116	  provide libndbm.  However the content of libndbm vary: Berkeley DB,
17117	  GDBM or even 4.3BSD NDBM.  (Mandriva, Tru64 UNIX, OpenSuSE,
17118	  SCO OpenServer, ...)
17119	  "ndbm" is not searched automatically now (dblib doesn't contain it)
17120	  but configure --with-dbm-type=ndbm choose libndbm and ndbm.h.
17121
17122Mon Feb 20 19:15:57 2012  Tanaka Akira  <akr@fsij.org>
17123
17124	* ext/dbm/extconf.rb: refine variable names.
17125
17126Mon Feb 20 15:50:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17127
17128	* configure.in: check if -fstack-protector is really available.
17129
17130Sun Feb 19 23:43:38 2012  Tanaka Akira  <akr@fsij.org>
17131
17132	* ext/dbm/extconf.rb: show header and library found.
17133
17134Sun Feb 19 23:01:01 2012  Tanaka Akira  <akr@fsij.org>
17135
17136	* ext/dbm/dbm.c (Init_dbm): refine DBM::VERSION definition.
17137
17138	* ext/dbm/extconf.rb: provide RUBYDBM_GDBM_HEADER macro.
17139
17140Sun Feb 19 17:07:27 2012  Tanaka Akira  <akr@fsij.org>
17141
17142	* test/dbm/test_dbm.rb (test_dbmfile_suffix): check pag and dir is
17143	  empty for 4.3BSD ndbm.
17144
17145Sun Feb 19 03:00:30 2012  Tanaka Akira  <akr@fsij.org>
17146
17147	* test/dbm/test_dbm.rb (test_dbmfile_suffix): check magic numbers.
17148
17149Sun Feb 19 01:05:41 2012  Tanaka Akira  <akr@fsij.org>
17150
17151	* ext/dbm/extconf.rb: detect GDBM's ndbm.h by testing dbm_clearerr is
17152	  an empty macro.
17153
17154Sun Feb 19 00:25:55 2012  Tanaka Akira  <akr@fsij.org>
17155
17156	* ext/dbm/extconf.rb: don't choose 'dbm' if _GDB_H_ is defined which
17157	  is available since GDBM 1.9 because 'gdbm_compat' is appropriate
17158	  choice since GDBM 1.8.1.
17159
17160Sat Feb 18 23:27:00 2012  Kenta Murata  <mrkn@mrkn.jp>
17161
17162	* random.c: remove a duplicated comment.
17163
17164Sat Feb 18 18:43:13 2012  Tanaka Akira  <akr@fsij.org>
17165
17166	* ext/dbm/extconf.rb (dblib): prefer recent GDBM over older GDBM.
17167	  (have_declared_libvar): new function to check a declared variable
17168	  exists in a library.
17169	  (have_undeclared_libvar): renamed from renamed from have_libvar.
17170	  (headers.db_check2): check that GDBM version variable if GDBM header
17171	  is chosen.
17172
17173	* ext/dbm/dbm.c (Init_dbm): use HAVE_DECLARED_LIBVAR_GDBM_VERSION and
17174	  HAVE_UNDECLARED_LIBVAR_GDBM_VERSION macro.
17175
17176Sat Feb 18 13:53:01 2012  Tanaka Akira  <akr@fsij.org>
17177
17178	* test/dbm/test_dbm.rb (test_dbmfile_suffix): DBM::VERSION should
17179	  be Berkeley DB if foo.db is created by DBM.open.
17180
17181Sat Feb 18 13:40:37 2012  Tanaka Akira  <akr@fsij.org>
17182
17183	* test/dbm/test_dbm.rb (test_dbmfile_suffix): test dbm file suffix.
17184
17185Sat Feb 18 12:50:59 2012  Tanaka Akira  <akr@fsij.org>
17186
17187	* ext/dbm/dbm.c (DBM::VERSION): define it by detecting _GDBM_H_ or
17188	  _DBM_IOERR.
17189
17190Sat Feb 18 07:52:45 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17191
17192	* tool/enc-unicode.rb: don't use 1.9 feature on tools.
17193
17194Sat Feb 18 02:48:39 2012  Aaron Patterson <aaron@tenderlovemaking.com>
17195
17196	* lib/fileutils.rb: refactored FileUtil methods to use the
17197	  `define_command` API.  Patch from 7rans <transfire@gmail.com>
17198	* test/fileutils/test_dryrun.rb: corresponding test refactoring
17199	* test/fileutils/test_nowrite.rb: ditto
17200	* test/fileutils/test_verbose.rb: ditto
17201
17202Fri Feb 17 21:39:36 2012  Tanaka Akira  <akr@fsij.org>
17203
17204	* ext/dbm/extconf.rb: remove dbm.
17205
17206Fri Feb 17 21:18:39 2012  Tanaka Akira  <akr@fsij.org>
17207
17208	* ext/dbm/extconf.rb: refine header/library mismatch detection.
17209	  check only for ndbm.h except libc.  check _GDBM_H_ for gdbm.
17210	  check _DBM_IOERR for the original ndbm.
17211
17212Fri Feb 17 20:30:44 2012  Tanaka Akira  <akr@fsij.org>
17213
17214	* ext/dbm/extconf.rb: don't check libdbm.  It is not a ndbm
17215	  implementation.  (libdbm in Version 7 Unix is database library
17216	  for single database per process.)
17217
17218Fri Feb 17 15:38:53 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17219
17220	* Merge Onigmo-5.13.1. [ruby-dev:45057] [Feature #5820]
17221	  https://github.com/k-takata/Onigmo
17222	  cp reg{comp,enc,error,exec,parse,syntax}.c reg{enc,int,parse}.h
17223	  cp oniguruma.h
17224	  cp tool/enc-unicode.rb
17225	  cp -r enc/
17226
17227Fri Feb 17 15:20:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17228
17229	* enum.c (enum_each_slice): arrays to be yielded can be newly
17230	  created in the block.
17231
17232	* enum.c: move work variables to objects not to let called blocks
17233	  access stack area out of scope.  [Bug #5801]
17234
17235Fri Feb 17 12:35:55 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17236
17237	* tool/merger.rb: remove borders from the commit message which is used
17238	  when the commit doesn't change ChangeLog.
17239
17240Fri Feb 17 11:50:11 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17241
17242	* common.mk (btest, btest-ruby, test-sample test-knownbugs)
17243	  (test-all, test-ruby): depend on prog.
17244
17245Fri Feb 17 09:56:22 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17246
17247	* lib/mkmf.rb (create_header): log the content of header.
17248
17249Fri Feb 17 09:44:55 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17250
17251	* tool/transcode-tblgen.rb (import_ucm): don't use \h because the
17252	  script should work with ruby 1.8.
17253
17254	* tool/enc-unicode.rb: ditto.
17255
17256Fri Feb 17 07:33:29 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17257
17258	* enum.c (id_lshift): use constant ID.
17259
17260Fri Feb 17 07:30:53 2012  Tanaka Akira  <akr@fsij.org>
17261
17262	* ext/dbm/extconf.rb: refactored to split too long conditions.
17263
17264Fri Feb 17 00:23:25 2012  Tanaka Akira  <akr@fsij.org>
17265
17266	* test/dbm/test_dbm.rb: fix skip condition for libgdbm 1.8.0 or prior.
17267	  reported by Bohuslav Kabrda.
17268	  [ruby-core:42685] [ruby-trunk - Bug #6036]
17269
17270Fri Feb 17 00:04:21 2012  Tanaka Akira  <akr@fsij.org>
17271
17272	* ext/dbm/extconf.rb: check _DB_H_ macro unavailable except
17273	  Berkeley DB library.
17274
17275Thu Feb 16 05:41:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17276
17277	* insns.def (splatarray): make new array if flag is set.
17278
17279	* compile.c (iseq_compile_each): make new array with
17280	  splat. [ruby-core:21901][Feature #1125]
17281
17282Thu Feb 16 00:14:04 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
17283
17284	* lib/abbrev.rb (Array#abbrev): add missing '"' in documentation.
17285
17286Wed Feb 15 22:20:19 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
17287
17288	* cont.c (rb_fiber_reset_root_local_storage): add a new function to
17289	  restore rb_thread_t::local_storage.
17290
17291	* cont.c (rb_obj_is_fiber): add a new function to tell finalizer to
17292	  prevent fibers from destroy.
17293
17294	* gc.c (rb_objspace_call_finalizer): don't sweep fibers at finalizing
17295	  objspace.
17296
17297	* internal.h (rb_fiber_reset_root_local_storage, rb_obj_is_fiber):
17298	  add prototypes.
17299
17300	* vm.c (ruby_vm_destruct): reset main thread's local_storage before
17301	  free main thread. rb_thread_t::local_storage is replaced by fiber's
17302	  local storage when forked from fiber, and it should be already freed
17303	  when the fiber was destroyed. [ruby-core:41456] [Bug #5700]
17304
17305	* test/ruby/test_fiber.rb (test_fork_from_fiber): add test for fork
17306	  from fiber.
17307
17308Wed Feb 15 19:57:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17309
17310	* ext/fiddle/closure.c (callback): deal with unsigned integers.
17311	  [ruby-core:42458][Bug #5991][Bug #6022]
17312
17313	* ext/fiddle/conversions.c (value_to_generic, generic_to_value):
17314	  ditto.
17315
17316	* ext/fiddle/closure.c (callback): same as r34506.
17317
17318Wed Feb 15 17:41:31 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17319
17320	* io.c (io_strsetbuf): call rb_str_modify to make str independent
17321	  before calling rb_str_set_len for r34580.
17322
17323Wed Feb 15 12:30:10 2012  Eric Hodel  <drbrain@segment7.net>
17324
17325	* ext/zlib/zlib.c (Init_zlib):  Added Zlib::TEXT and note that
17326	  Zlib::ASCII is deprecated in zlib 1.2.3 and newer.
17327
17328Wed Feb 15 12:24:40 2012  Eric Hodel  <drbrain@segment7.net>
17329
17330	* ext/zlib/zlib.c:  Move constant descriptions to constants.  Remove
17331	  extra comment block at the top of Init_zlib().
17332
17333Wed Feb 15 12:30:46 2012  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
17334
17335	* lib/ostruct.rb: Create getters and setters after dup.
17336	  [Bug #6028] [rubyspecs:0380bcc]
17337
17338Wed Feb 15 10:59:52 2012  Narihiro Nakamura  <authornari@gmail.com>
17339
17340	* gc.c (HEAP_BITMAP_LIMIT): HEAP_BITMAP_LIMIT is computed on the
17341	  basis of HEAP_SIZE because it must covers a whole heap block.
17342	  [ruby-trunk - Bug #6006]
17343
17344Wed Feb 15 09:27:45 2012  Eric Hodel  <drbrain@segment7.net>
17345
17346	* ext/zlib/zlib.c (Init_zlib):  Added Zlib::FIXED and Zlib::RLE
17347	  strategies.
17348	* NEWS:  Add note about the new Zlib constants.
17349
17350Wed Feb 15 09:11:36 2012  Eric Hodel  <drbrain@segment7.net>
17351
17352	* ext/zlib/zlib.c:  Improve documentation.  [ruby-trunk - Bug #5948]
17353
17354Wed Feb 15 07:28:54 2012  Eric Hodel  <drbrain@segment7.net>
17355
17356	* encoding.c (Init_Encoding):  Add IO example of internal and external
17357	  encoding.  Fixed a typo in the force_encoding example.  [#5949]
17358
17359Wed Feb 15 06:58:21 2012  Eric Hodel  <drbrain@segment7.net>
17360
17361	* encoding.c (Init_Encoding):  Add Encoding documentation.
17362	  [ruby-trunk - Bug #5949]
17363	* encoding.c (rb_set_default_external):  Fix typo in documentation.
17364
17365Tue Feb 14 20:22:11 2012  Narihiro Nakamura  <authornari@gmail.com>
17366
17367	* gc.c (CEILDIV): rename to a appropriate name.
17368
17369Tue Feb 14 18:07:20 2012  Narihiro Nakamura  <authornari@gmail.com>
17370
17371	* gc.c (assign_heap_slot): SEGV happens cause on 64-bit platform
17372	  sometime there should be `objs-=2` instead of `objs--`.
17373	  [Bug #6006]
17374	  patched by Sokolov Yura. https://github.com/ruby/ruby/pull/92
17375
17376Tue Feb 14 16:00:30 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17377
17378	* io.c (io_setstrbuf): cut down the buffer if longer.
17379
17380Tue Feb 14 15:06:37 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17381
17382	* lib/test/unit/assertions.rb (build_message): skip escaped
17383	  question marks.
17384
17385Tue Feb 14 12:10:04 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17386
17387	* variable.c (autoload_const_set, autoload_require): fix
17388	  signatures.
17389
17390Tue Feb 14 05:23:40 2012  Eric Hodel  <drbrain@segment7.net>
17391
17392	* process.c (proc_wait):  Change typo "SystemError" to
17393	  "SystemCallError".  [ruby-trunk - Bug #5962]
17394	* process.c (proc_wait2):  ditto
17395
17396Tue Feb 14 05:18:24 2012  Eric Hodel  <drbrain@segment7.net>
17397
17398	* enumerator.c:  Document use of Enumerator.new for creating a lazy
17399	  enumeration for filtering/chaining.  [ruby-trunk - Feature #707]
17400
17401Mon Feb 13 23:01:50 2012  Akinori MUSHA  <knu@iDaemons.org>
17402
17403	* vm_method.c (rb_method_boundp):
17404	  obj.respond_to?(:a_protected_method) should return false because
17405	  calling a protected method may cause NoMethodError if called
17406	  from outside the class inheritance tree.  Kernel#respond_to? is
17407	  mostly used to test if it is safe to call a method, so the false
17408	  positive should be avoided. [ruby-dev:40461] [ruby-dev:41739]
17409	  [ruby-dev:41837]
17410
17411Mon Feb 13 21:52:06 2012  Narihiro Nakamura  <authornari@gmail.com>
17412
17413	* gc.c (HEAP_OBJ_LIMIT, HEAP_BITMAP_LIMIT): HEAP_OBJ_LIMIT used
17414	  `sizeof(struct heaps_slot)` while heap is currently allocated
17415	  with `struct heaps_header`.
17416	  HEAP_BITMAP_LIMIT were calculated from
17417	  `HEAP_OBJ_LIMIT/sizeof(uintptr_t)` - one Byte for each object,
17418	  not one Bit. [Bug #6006]
17419	  patched by Sokolov Yura. https://github.com/ruby/ruby/pull/92
17420
17421Mon Feb 13 18:30:32 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17422
17423	* io.c (io_setstrbuf): defer resizing buffer string until data is
17424	  read actually.
17425
17426Mon Feb 13 10:24:39 2012  Loren Segal  <lsegal@soen.ca>
17427
17428	* io.c (Init_IO): use directive hack to make ARGF documentable
17429	  in other tools.  [ruby-core:42515][Bug #6007]
17430
17431Sun Feb 12 20:43:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17432
17433	* include/ruby/ruby.h (rb_event_hook_func_t): add argument names.
17434
17435Sun Feb 12 16:30:23 2012  Akinori MUSHA  <knu@iDaemons.org>
17436
17437	* tool/merger.rb (#default_merge_branch): Add support for
17438	  Subversion 1.7 which adopted a whole new working directory
17439	  structure.
17440
17441Sun Feb 12 15:14:41 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
17442
17443	* benchmark/driver.rb: suppress unused/shadowing variable warnings.
17444
17445Sun Feb 12 03:14:40 2012  Eric Hodel  <drbrain@segment7.net>
17446
17447	* vm_eval.c (check_funcall):  Call respond_to? with matching arity for
17448	  legacy single-argument implementations.  [ruby-trunk - Bug #6000]
17449
17450Sat Feb 11 12:04:05 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17451
17452	* compile.c (defined_expr): guard the whole expression.
17453	  [ruby-dev:45021][Bug#5786]
17454
17455Sat Feb 11 08:34:42 2012  Eric Hodel  <drbrain@segment7.net>
17456
17457	* ext/zlib/zlib.c (rb_inflate_add_dictionary):  Added
17458	  Zlib::Inflate#add_dictionary to allow users to pre-specify
17459	  for using during #inflate.  [ruby-trunk - Feature #5937]
17460
17461Sat Feb 11 08:23:02 2012  Eric Hodel  <drbrain@segment7.net>
17462
17463	* ext/zlib/zlib.c (do_inflate):  Inflate more data if buffered data
17464	  exists.  Allows Zlib::Inflate#set_dictionary to work.
17465	  [ruby-trunk - Bug #5929]
17466
17467Sat Feb 11 06:00:48 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17468
17469	* dir.c (fnmatch): The * needs to be escaped to avoid formatting in
17470	  fnmatch comment.
17471	  patched by @dalton. https://github.com/ruby/ruby/pull/91
17472
17473Fri Feb 10 03:41:31 2012  Aaron Patterson <aaron@tenderlovemaking.com>
17474
17475	* ext/psych/parser.c: removed external encoding setter, allow parser
17476	  to be reused.
17477	* ext/psych/lib/psych/parser.rb: added external encoding setter.
17478	* test/psych/test_parser.rb: test parser reuse
17479
17480Fri Feb 10 01:30:41 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17481
17482	* ext/dl/dl.h (ALIGN_OF): use offsetof().
17483
17484	* ext/dl/dl.h (DLALIGN): round up at once and get rid of overflow.
17485
17486Fri Feb 10 00:47:07 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17487
17488	* test/ruby/envutil.rb (assert_no_memory_leak): new assertion to
17489	  check memory leak by invoking child ruby process and watch its
17490	  memory size.
17491
17492Thu Feb  9 23:41:44 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
17493
17494	* test/pathname/test_pathname.rb (test_binread): add assertion to
17495	  check encoding.
17496
17497Thu Feb  9 16:48:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17498
17499	* ext/dl/dl.c (Init_dl): fix mangled document.
17500
17501Thu Feb  9 16:10:34 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
17502
17503	* test/ruby/memory_status.rb (Memory::Win32): 64bit support.
17504
17505Thu Feb  9 16:08:55 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
17506
17507	* ext/dl/lib/value.rb (DL::ValueUtil.{unsigned_value,signed_value}):
17508	  currently pack/unpack does not accept "q!" and "Q!".
17509
17510Thu Feb  9 16:01:29 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
17511
17512	* ext/fiddle/conversions.c (value_to_generic): src is not guaranteed as
17513	  a Bignum if the type is LONG_LONG.  it may be a Fixnum if the value
17514	  is small.
17515
17516Thu Feb  9 11:32:36 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
17517
17518	* ext/dl/lib/types.rb: Win64 support.
17519
17520Thu Feb  9 04:12:29 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17521
17522	* test/pathname/test_pathname.rb: not read but binread.
17523	  patched by Benoit Daloze, [ruby-core:42440] [Bug #5984]
17524
17525Wed Feb  8 22:29:59 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17526
17527	* string.c (rb_str_modify_expand): fix memory leak.
17528
17529Wed Feb  8 14:06:59 2012  Hiroshi Nakamura  <nahi@ruby-lang.org>
17530
17531	* ext/openssl/ossl_ssl.c: Add SSL constants and allow to unset SSL
17532	  option to prevent BEAST attack. See [Bug #5353].
17533
17534	  In OpenSSL, OP_DONT_INSERT_EMPTY_FRAGMENTS is used to prevent
17535	  TLS-CBC-IV vulnerability described at
17536	  http://www.openssl.org/~bodo/tls-cbc.txt
17537	  It's known issue of TLSv1/SSLv3 but it attracts lots of attention
17538	  these days as BEAST attack. (CVE-2011-3389)
17539
17540	  Until now ossl sets OP_ALL at SSLContext allocation and call
17541	  SSL_CTX_set_options at connection.  SSL_CTX_set_options updates the
17542	  value by using |= so bits set by OP_ALL cannot be unset afterwards.
17543
17544	  This commit changes to call SSL_CTX_set_options only 1 time for each
17545	  SSLContext. It sets the specified value if SSLContext#options= are
17546	  called and sets OP_ALL if not.
17547
17548	  To help users to unset bits in OP_ALL, this commit also adds several
17549	  constant to SSL such as
17550	  OpenSSL::SSL::OP_DONT_INSERT_EMPTY_FRAGMENTS.  These constants were
17551	  not exposed in Ruby because there's no way to unset bits in OP_ALL
17552	  before.
17553
17554	  Following is an example to enable 0/n split for BEAST prevention.
17555
17556	    ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS
17557
17558	* test/openssl/test_ssl.rb: Test above option exists.
17559
17560Wed Feb 8 13:12:02 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
17561
17562	* ext/openssl/ossl_x509name.c: Use the numerical representation of
17563	  unrecognized OIDs instead of the sn "UNDEF".
17564
17565	* test/openssl/test_x509name.rb: Add tests for the fixed behavior.
17566
17567	  Patch provided by Paul Kehrer, thank you!
17568	  [ruby-core:41769] [Feature #5787]
17569
17570Wed Feb  8 09:49:58 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17571
17572	* tool/merger.rb: don't abort, update first.
17573
17574Wed Feb 8 09:47:33 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
17575
17576	* ext/openssl/ossl_asn1.c: Call INT2NUM only once for GeneralString.
17577	  Thanks to Mantas Mikulenas for noticing and providing a patch!
17578	  [ruby-core:42358] [Bug #5972]
17579
17580Wed Feb 8 09:19:00 2012  Martin Bosslet  <Martin.Bosslet@googlemail.com>
17581
17582	* ext/openssl/ossl_cipher.c: Add warning about key as IV.
17583
17584Tue Feb  7 20:08:12 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
17585
17586	* error.c (exc_inspect): Fix typo. patch from Trent Ogren
17587	  via https://github.com/ruby/ruby/pull/90
17588
17589Tue Feb  7 19:37:35 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17590
17591	* st.c: refactor packed entries using structs.
17592
17593Tue Feb  7 14:52:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17594
17595	* st.c (st_update): table can be unpacked in the callback.
17596
17597	* st.c (st_foreach): should not yield same pair when checking
17598	  after unpacking.
17599
17600Mon Feb  6 21:55:13 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17601
17602	* tool/merger.rb: abort if the working directory is dirty.
17603
17604	* tool/merger.rb: update the working directory after commit.
17605
17606Mon Feb  6 00:16:27 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17607
17608	* encoding.c (rb_enc_compatible): return ASCII-8BIT even if 2nd string
17609	  is ascii only string. [ruby-core:42354] [Bug #5968]
17610
17611Fri Feb  3 07:16:47 2012  Eric Hodel  <drbrain@segment7.net>
17612
17613	* lib/webrick.rb:  Moved proxy rewriting to WEBrick::HTTPProxy.
17614	* lib/webrick/httpproxy.rb:  Add examples of creating a proxy server
17615	  and response rewriting using HTTPProxy.
17616
17617Fri Feb  3 06:53:22 2012  Eric Hodel  <drbrain@segment7.net>
17618
17619	* ext/openssl/ossl_x509store.c:  Add class documentation for
17620	  OpenSSL::X509::Store
17621
17622Thu Feb  2 22:28:13 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
17623
17624	* test/net/http/test_https_proxy.rb
17625	  (HTTPSProxyTest#test_https_proxy_authentication):
17626	  add workaround to avoid to hang up without openssl.
17627	  see [ruby-dev:45021][Bug #5786]
17628
17629	* test/resolv/test_dns.rb (TestResolvDNS#test_query_ipv4_address):
17630	  ditto.
17631
17632Thu Feb  2 21:48:18 2012  Kouhei Sutou  <kou@cozmixng.org>
17633
17634	* lib/rexml/parsers/baseparser.rb: use meaningful names.
17635
17636Thu Feb  2 21:38:52 2012  Kouhei Sutou  <kou@cozmixng.org>
17637
17638	* lib/rexml/parsers/baseparser.rb, test/rexml/test_namespace.rb:
17639	  fix the default xml namespace URI validation.
17640	  [ruby-dev:45169] [Bug #5956]
17641	  Reported by Miho Hiramatsu. Thanks!!!
17642
17643Thu Feb  2 17:51:02 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17644
17645	* io.c (argf_next_argv): reset ARGF.next_p on ARGV.replace.
17646	  r34409 breaks replacing ARGV.
17647	  [ruby-dev:45160] [Bug #5952]
17648
17649Thu Feb  2 16:21:01 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
17650
17651	* test/net/http/test_http.rb (TestNetHTTPKeepAlive#*): remove debug
17652	  output.
17653
17654Thu Feb  2 01:24:34 2012  Yusuke Endoh  <mame@tsg.ne.jp>
17655
17656	* parse.y (debug_lines, coverage): set file path encoding for coverage
17657	  result.  [ruby-dev:44950]
17658
17659Wed Feb  1 14:38:31 2012  Akinori MUSHA  <knu@iDaemons.org>
17660
17661	* lib/tempfile.rb (Tempfile#unlink, Tempfile::Remover#call): Just
17662	  call File.unlink and ignore ENOENT because existence check
17663	  before unlinking does not help in terms of race condition.
17664
17665	* lib/tempfile.rb (Tempfile#unlink, Tempfile::Remover#call): My
17666	  comment about thread safeness is obsolete.
17667
17668Wed Feb  1 09:50:10 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17669
17670	* doc/re.rdoc (Repetition): fix typo.  reported by Ori Avtalion
17671	  and patched by Zachary Scott.  [Bug #5947]
17672
17673Wed Feb  1 06:38:54 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17674
17675	* io.c (argf_close): skip stdin, which should be readable again.
17676	  [ruby-dev:45160] [Bug #5952]
17677
17678	* io.c (argf_readlines): reinitialize after all read to be
17679	  readable again.
17680
17681Tue Jan 31 21:27:43 2012  Narihiro Nakamura  <authornari@gmail.com>
17682
17683	* configure.in (HEAP_ALIGN_LOG): HEAP_ALIGN_LOG should be page
17684	  size in OpenBSD. [ruby-core:42158][Bug #5901]
17685
17686	* gc.c : avoid to redefine.
17687
17688Tue Jan 31 14:27:22 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17689
17690	* test/ruby/envutil.rb (EnvUtil.invoke_ruby): yield also child pid
17691	  in block form.
17692
17693Mon Jan 30 19:08:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17694
17695	* vm_eval.c (vm_call0): should pass block to enumerators.  patched
17696	  by Kazuki Tsujimoto.  [ruby-dev:44961][Bug #5731]
17697
17698	* vm_eval.c (method_missing), vm_insnhelper.c (vm_call_method):
17699	  ditto.  patched by satoshi shiba.
17700
17701Mon Jan 30 12:31:05 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
17702
17703	* file.c (append_fspath): need to set the encoding to result always.
17704
17705Mon Jan 30 10:38:37 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
17706
17707	* test/irb/test_completion.rb: skip if cannot load irb/completion
17708	  (maybe readline does not exist).
17709
17710Sun Jan 29 22:47:19 2012  Yutaka Kanemoto  <kanemoto@ruby-lang.org>
17711
17712	* tool/config.{guess,sub}: updated to automake-1.11.2.
17713
17714Sun Jan 29 12:17:56 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17715
17716	* ext/readline/readline.c (readline_attempted_completion_function):
17717	  respect encodings.  [Bug #5941]
17718
17719Sat Jan 28 09:33:33 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
17720
17721	* win32/win32.c (rb_w32_read): fix an issue that $stdin.read doesn't
17722	  terminate by CTRL-C on Windows.
17723	  [ruby-dev:45149] [Bug #5812]
17724
17725Sat Jan 28 08:18:11 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
17726
17727	* test/ruby/test_thread.rb
17728	  (TestThreadGroup#test_thread_timer_and_interrupt): skip exit status
17729	  assertion because we cannot get signal status on Windows.
17730
17731	* win32/win32.c (CreateChild): create process group to receive the
17732	  signal by GenerateConsoleCtrlEvent().
17733
17734	* win32/win32.c (kill): use CTRL_BREAK_EVENT instead of CTRL_C_EVENT
17735	  if a process group is specified. CTRL_C_EVENT signal cannot be
17736	  generated for process groups for the specification.
17737	  [ruby-dev:45149] [Bug #5812]
17738
17739Sat Jan 28 07:46:03 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
17740
17741	* thread_win32.c (rb_w32_wait_events_blocking): use
17742	  ruby_thread_from_native() instead of GET_THREAD() because
17743	  GET_THREAD() doesn't always return the current thread and
17744	  WaitForMultipleObjects() at rb_w32_read() doesn't return by
17745	  Thread#kill. This fixes TestQueue#test_thr_kill failure on
17746	  Windows.
17747
17748	* thread_win32.c (rb_w32_wait_events): use ruby_thread_from_native()
17749	  instead of GET_THREAD() for consistency with the above change.
17750
17751	* thread_win32.c (rb_w32_sleep): ditto.
17752
17753	* thread_win32.c (rb_w32_Sleep): ditto.
17754	  [ruby-dev:45149] [Bug #5812]
17755
17756Sat Jan 28 07:28:48 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>
17757
17758	* test/zlib/test_zlib.rb (TestZlibGzipReader#test_reader_wrap): set
17759	  binmode explicitly for fixing test error on Windows. This is consistent
17760	  with r34243.
17761	  [ruby-dev:45149] [Bug #5812]
17762
17763Sat Jan 28 05:53:34 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17764
17765	* lib/irb/completion.rb (IRB::InputCompletor::CompletionProc):
17766	  ignore non-string name modules.  [ruby-core:42244][Bug #5938]
17767
17768Fri Jan 27 16:31:45 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17769
17770	* gc.c (HEAP_ALIGN, HEAP_ALIGN_MASK): DRY, let compiler calculate
17771	  from HEAP_ALIGN_LOG.
17772
17773Thu Jan 26 11:03:37 2012  Eric Hodel  <drbrain@segment7.net>
17774
17775	* lib/matrix.rb:  Clean up extra whitespace in output documentation.
17776
17777Thu Jan 26 03:24:02 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17778
17779	* ext/io/console/console.c (io_getch): default delegating method
17780	  for StringIO.  https://github.com/nobu/io-console/issues/4
17781
17782	* ext/stringio/stringio.c: moved some methods to hidden modules.
17783
17784Wed Jan 25 13:27:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17785
17786	* file.c (rb_file_s_basename): ignore non-ascii extension in
17787	  different encoding, which cannot match.
17788
17789	* file.c (rmext): no extension to strip if empty string.
17790
17791	* file.c (rb_enc_path_next, rb_enc_path_skip_prefix)
17792	  (rb_enc_path_last_separator, rb_enc_path_end)
17793	  (ruby_enc_find_basename, ruby_enc_find_extname): encoding-aware
17794	  path handling functions.
17795
17796	* file.c (rb_home_dir, file_expand_path, rb_realpath_internal)
17797	  (rb_file_s_basename, rb_file_dirname, rb_file_s_extname)
17798	  (rb_file_join): should respect the encodings of arguments than
17799	  file system encoding.  [ruby-dev:45145] [Bug #5919]
17800
17801	* dir.c (check_dirname, ruby_glob0): ditto.
17802
17803	* ext/pathname/pathname.c (path_sub_ext): ditto.
17804
17805Tue Jan 24 14:20:42 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17806
17807	* vm.c (rb_iter_break_value): new function to break a block with
17808	  the value.  [ruby-dev:45132] [Feature #5895]
17809
17810Tue Jan 24 12:58:41 2012  Yukihiro Matsumoto  <matz@ruby-lang.org>
17811
17812	* object.c (rb_Hash): add Kernel#Hash conversion method like
17813	  Array() or Float().  a patch from Run Paint Run Run.  Fix #3131
17814
17815Tue Jan 24 11:38:05 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17816
17817	* lib/uri/common.rb (URI.encode_www_form_component): initialize on
17818	  requiring to support JRuby, which runs parallel multithreads.
17819	  [ruby-core:42222] [Bug #5925]
17820
17821	* lib/uri/common.rb (URI.decode_www_form_component): initialize on
17822
17823Mon Jan 23 20:33:11 2012  Jason Kay  <geniture@me.com>
17824
17825	* lib/net/http.rb (Net::HTTP#connect): Writing entire packet at
17826	  once to avoid incomplete transmission.  Current code using
17827	  writeline was causing sub-optimal conversing with a proxy due to
17828	  the connect tunnel request headers being split over multiple
17829	  packets. The modification I made allows the connect request to
17830	  be written as one packet, avoiding problems and optimizing the
17831	  conversation.
17832
17833	  https://github.com/ruby/ruby/pull/72
17834	  [Feature #5460]
17835
17836Mon Jan 23 17:06:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17837
17838	* lib/uri/mailto.rb (URI::MailTo.build): follow Array#to_s change of
17839	  Ruby 1.9; use Array#join. [Bug #5840]
17840
17841Mon Jan 23 16:42:28 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17842
17843	* io.c (extract_binmode): raise an exception if binmode/textmode
17844	  is specified with both vmode and opthash.
17845	  [ruby-core:42199] [Bug #5918]
17846
17847Mon Jan 23 16:35:27 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17848
17849	* io.c (rb_io_extract_modeenc): set ASCII-8BIT if binmode is specified
17850	  with opthash. [ruby-core:42197] [Bug #5917]
17851
17852Mon Jan 23 10:08:00 2012  Kenta Murata  <mrkn@cookpad.com>
17853
17854	* test/cgi/test_cgi_util.rb (test_cgi_escape_preserve_encoding):
17855	  add a test for CGI::escape to preserve encoding.
17856
17857	* test/cgi/test_cgi_util.rb (test_cgi_unescape_preserve_encoding):
17858	  add a test for CGI::unescape to preserve encoding.
17859
17860Mon Jan 23 00:45:34 2012  Akinori MUSHA  <knu@iDaemons.org>
17861
17862	* misc/rdoc-mode.el (rdoc-imenu-create-index): Add imenu support
17863	  to rdoc-mode.
17864
17865	* misc/rdoc-mode.el (rdoc-mode): Fix regexp patterns containing
17866	  "\s " where CR/LF is not supposed to match.
17867
17868Sun Jan 22 15:41:26 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17869
17870	* parse.y (rb_intern3): split to registration check and new
17871	  registration.
17872
17873	* parse.y (rb_intern_str): make interned string shared with the
17874	  given string.
17875
17876	* parse.y (rb_intern3, rb_intern_str): check the coderange first.
17877
17878Sat Jan 21 22:21:07 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17879
17880	* include/ruby/ruby.h (FIXNUM_P): simple flag should be int.
17881
17882Sat Jan 21 21:51:19 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17883
17884	* encoding.c (rb_enc_compatible): fix segv on symbols.
17885	  [ruby-core:42204] [Bug #5921]
17886
17887Sat Jan 21 11:43:45 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17888
17889	* dir.c (dir_chdir, check_dirname): get rid of optimization-out.
17890
17891Fri Jan 20 20:47:37 2012  Kenta Murata  <mrkn@cookpad.com>
17892
17893	* lib/cgi/util.rb (CGI.escape): support a string with invalid byte
17894	  sequence.  [Bug #5913]
17895
17896	* test/cgi/test_cgi_util.rb
17897	  (test_cgi_escape_with_invalid_byte_sequence): test for the above
17898	  change.
17899
17900Fri Jan 20 17:37:37 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17901
17902	* vm.c (vm_exec): remove workaround for LLVM because r34278 fixes it.
17903
17904	* vm_insnhelper.c (vm_call_cfunc): ditto.
17905
17906Fri Jan 20 14:31:43 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17907
17908	* lib/net/http.rb (Net::HTTP#transport_request): retry a idempotent
17909	  request automatically. [ruby-dev:45030] [Bug #5790]
17910	  [ruby-core:41821] [Bug #5813]
17911
17912	* lib/net/http.rb (Net::HTTP#keep_alive_timeout=): added to specify
17913	  the second to reconnect the TCP connection on Keep-Alive.
17914	  The default value is 2 second because current servers uses 2 sec.
17915	  http://ftp-admin.blogspot.com/2009/09/keepalivetimeout2.html
17916
17917	* lib/net/http.rb (Net::HTTP#begin_transport): reconnect TCP
17918	  connection on keep-alive timeout.
17919
17920Thu Jan 19 07:53:09 2012  Tadayoshi Funaba  <tadf@dotrb.org>
17921
17922	* ext/date/date_strptime.c: moved detector of leftover.
17923
17924Thu Jan 19 07:10:47 2012  Tadayoshi Funaba  <tadf@dotrb.org>
17925
17926	* ext/date/date_parse.c: [ruby-core:42173].
17927
17928Wed Jan 18 18:11:02 2012  Akinori MUSHA  <knu@iDaemons.org>
17929
17930	* misc/rdoc-mode.el (rdoc-mode): Add provide so that requiring
17931	  this library succeeds.
17932
17933Wed Jan 18 18:06:45 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17934
17935	* ext/curses/curses.c (cWindow, cMouseEvent): made typed data.
17936
17937Wed Jan 18 12:49:15 2012  Aaron Patterson <aaron@tenderlovemaking.com>
17938
17939	* ext/psych/lib/psych/visitors/to_ruby.rb: Added support for loading
17940	  subclasses of String with ivars
17941	* ext/psych/lib/psych/visitors/yaml_tree.rb: Added support for dumping
17942	  subclasses of String with ivars
17943	* test/psych/test_string.rb: corresponding tests
17944
17945Wed Jan 18 10:39:47 2012  Aaron Patterson <aaron@tenderlovemaking.com>
17946
17947	* ext/psych/lib/psych/visitors/to_ruby.rb: Added ability to load array
17948	  subclasses with ivars.
17949	* ext/psych/lib/psych/visitors/yaml_tree.rb: Added ability to dump
17950	  array subclasses with ivars.
17951	* test/psych/test_array.rb: corresponding tests
17952
17953Tue Jan 17 17:18:41 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17954
17955	* configure.in (SPT_TYPE): enable as SPT_REUSEARGV on Darwin.
17956
17957	* missing/setproctitle.c (ruby_init_setproctitle): changed prefix.
17958
17959Tue Jan 17 12:32:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17960
17961	* gc.c (aligned_malloc, aligned_free): covered missing defined
17962	  operators and fixes for cygwin.
17963
17964Tue Jan 17 10:54:46 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17965
17966	* st.c (do_hash): it's the time to remove cast to unsigned int.
17967
17968Tue Jan 17 07:30:12 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17969
17970	* st.c (unpack_entries): Fix r34310: on unpacking, the position of
17971	  a hash must be do_hash-ed value.
17972
17973	* st.c (add_packed_direct): ditto.
17974
17975Mon Jan 16 16:41:53 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17976
17977	* lib/optparse.rb (Regexp): fix incorrect options when casting to
17978	  a Regexp, and suppress encoding option warnings.
17979	  https://github.com/ruby/ruby/pull/82
17980
17981Mon Jan 16 11:22:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17982
17983	* win32/win32.c (rb_chsize): no need to get the current file size.
17984
17985Mon Jan 16 00:41:33 2012  Sokolov Yura  <funny.falcon@gmail.com>
17986
17987	* st.c: st use function instead of macro.  In my current
17988	  environment (Ubuntu 11.04 32bit gcc-4.5.2) it gives 4%
17989	  performance improvement.
17990
17991	  https://github.com/ruby/ruby/pull/77
17992
17993Sun Jan 15 14:09:48 2012  NARUSE, Yui  <naruse@ruby-lang.org>
17994
17995	* object.c (rb_inspect): raise the result is not compatible with
17996	  the default external encoding. [ruby-core:42095] [Bug #5848]
17997	  If the default external encoding is ASCII compatible, the encoding of
17998	  inspected result must be compatible with it.
17999	  If the default external encoding is ASCII incompatible,
18000	  the result must be ASCII only.
18001
18002Sun Jan 15 13:21:50 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18003
18004	* ext/json/parser/parser.rl (json_string_unescape): workaround fix
18005	  for over optimization of GCC 4.7. [ruby-core:42085] [Bug #5888]
18006	  http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51862
18007
18008Sat Jan 14 22:24:09 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18009
18010	* ext/dl/callback/mkcallback.rb (gencallback): suppress unused
18011	  variables.
18012
18013Sat Jan 14 21:56:43 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18014
18015	* iseq.c (iseq_data_to_ary): check line info table boundary.  line
18016	  number 0 means no line number info is needed.  [ruby-dev:45130]
18017	  [Bug #5894]
18018
18019Sat Jan 14 18:24:13 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18020
18021	* error.c (exc_equal): clear rb_thread_t::errinfo when ignore
18022	  an exception under rb_protect(). [ruby-core:41979] [Bug #5865]
18023
18024Sat Jan 14 12:02:55 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18025
18026	* sprintf.c (rb_enc_vsprintf): relaxed the restriction.  since the
18027	  implementation deeply depends on plain char, so wchar_t based
18028	  encodings are not supported.
18029
18030Sat Jan 14 12:00:20 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18031
18032	* error.c (exc_equal): ignore exceptions during implicit
18033	  conversion.  [ruby-core:41979] [Bug #5865]
18034
18035Sat Jan 14 05:58:54 2012  Eric Hodel  <drbrain@segment7.net>
18036
18037	* io.c (rb_io_s_read):  Fix formatting of open_args comment.  Reported
18038	  by Adam Prescott.
18039
18040Fri Jan 13 18:41:19 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18041
18042	* sprintf.c (rb_enc_vsprintf): can be used for ASCII compatible
18043	  encodings only.
18044
18045Fri Jan 13 18:29:06 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18046
18047	* thread.c (rb_mutex_unlock_th): simplified.
18048
18049	* thread.c (rb_barrier_waiting): fix potential overflows.
18050
18051Fri Jan 13 17:23:38 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18052
18053	* load.c (load_unlock): update loading table at once.
18054
18055Fri Jan 13 16:44:45 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18056
18057	* error.c (exc_equal): try implicit conversion for delegator.
18058	  [ruby-core:41979] [Bug #5865]
18059
18060Fri Jan 13 03:46:53 2012  Akinori MUSHA  <knu@iDaemons.org>
18061
18062	* lib/shellwords.rb (Shellwords#shellescape): shellescape() now
18063	  stringifies the given object using to_s.
18064
18065	* lib/shellwords.rb (Shellwords#shelljoin): shelljoin() accepts
18066	  non-string objects in the given array, each of which is
18067	  stringified using to_s.
18068
18069	* lib/shellwords.rb: Fix rdoc markups.
18070
18071Fri Jan 13 03:38:36 2012  Akinori MUSHA  <knu@iDaemons.org>
18072
18073	* lib/shellwords.rb (Shellwords#shellsplit): Fix a bug where
18074	  consecutive backslashes in double quotes are all removed except
18075	  the one at the tail.
18076
18077Fri Jan 13 03:28:00 2012  Luis Lavena  <luislavena@gmail.com>
18078
18079	* ext/socket/extconf.rb (if ipv6): only define _WIN32_WINNT if was not
18080	  previously defined. This solve warnings with multiple defines in
18081	  command line with GCC 4.6.1
18082
18083Thu Jan 12 18:44:31 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18084
18085	* lib/mkmf.rb: fix r33904 and revert r33905.  initialize global
18086	  variables with init_mkmf before initializing constants.
18087	  [ruby-dev:45124] [Bug #5879]
18088
18089Thu Jan 12 13:51:00 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18090
18091	* cont.c (cont_restore_0): prevent optimizing out `sp'. sp is used for
18092	  reserving a memory space with ALLOCA_N for restoring machine stack
18093	  stored in cont->machine_stack, but clang optimized out it (and
18094	  maybe #5851 is also caused by this).
18095	  This affected TestContinuation#test_check_localvars.
18096
18097	* cont.c (cont_restore_1): revert workaround introduced in r32201.
18098
18099Thu Jan 12 02:14:43 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
18100
18101	* object.c: Added examples for Object#is_a? and
18102	  Object#instance_of? patched from Manoj Kumar.
18103	  [Bug #5880] [ruby-core:42057]
18104
18105Thu Jan 12 00:57:48 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
18106
18107	* lib/mkmf.rb: verbose-mode can use by RM, RMDIRS, etc.
18108	  (e.g. make V=1 realclean)
18109
18110Wed Jan 11 23:40:21 2012  Naohisa Goto  <ngoto@gen-info.osaka-u.ac.jp>
18111
18112	* string.c (rb_str_concat): set array element after definition
18113	  to fix compile error with Fujitsu C Compiler 5.6 on Solaris 10
18114	  on Sparc.  [Bug #5878] [ruby-dev:45123]
18115
18116Wed Jan 11 22:52:51 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18117
18118	* gc.c (ruby_mimmalloc): don't set allocated size to header.
18119	  ruby_mimmalloc() doesn't increment allocated_size/allocations and
18120	  decrement them in ruby_xfree() cause inconsistency.
18121
18122	* gc.c (ruby_xfree): don't decrement allocated_size/allocations if
18123	  allocated size record is 0.
18124
18125Wed Jan 11 22:36:43 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18126
18127	* test/readline/test_readline.rb (test_completion_proc_empty_result):
18128	  ensure clearance of Readline's line_buffer after the test.
18129
18130Tue Jan 10 21:57:38 2012  Hiroshi Shirosaki <h.shirosaki@gmail.com>
18131
18132	* ext/dbm/dbm.c (Init_dbm): fix a build error on mswin32.
18133	  use `extern __declspec(dllimport)` for dll link with VC.
18134	  [ruby-core:41996] [Bug #5869]
18135
18136Tue Jan 10 15:31:55 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18137
18138	* vm.c (vm_exec): refix r34162; suppress warning and add description.
18139
18140Tue Jan 10 15:13:58 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18141
18142	* ext/readline/readline.c (readline_attempted_completion_function):
18143	  use rb_memerror().
18144
18145Tue Jan 10 12:49:42 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18146
18147	* gc.c: in fact, i686-linux doesn't need to define _XOPEN_SOURCE 600.
18148
18149Tue Jan 10 12:44:11 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18150
18151	* gc.c (ruby_mimmalloc): defined for objects need not rb_objspace,
18152	  but should return pointer suitable for ruby_xfree;
18153	  main vm and main thread.
18154	  patched by Sokolov Yura. https://github.com/ruby/ruby/pull/79
18155
18156	* internal.h: ditto.
18157
18158	* vm.c (Init_BareVM): use ruby_mimmalloc.
18159
18160	* ext/dl/cfunc.c: #include <ruby/util.h>.
18161
18162	* ext/syslog/syslog.c: use xfree because it is allocated by
18163	  ruby_strdup.
18164
18165Tue Jan 10 12:13:56 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
18166
18167	* ext/readline/readline.c (readline_attempted_completion_function):
18168	  fix compile error.
18169
18170Tue Jan 10 10:41:11 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18171
18172	* ext/readline/readline.c (readline_attempted_completion_function):
18173	  empty completion result does not mean memory error.
18174
18175Tue Jan 10 02:19:22 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18176
18177	* test/ruby/test_io.rb (test_autoclose_true_closed_by_finalizer,
18178	  test_autoclose_true_closed_by_finalizer): skip if IO objects are
18179	  not recycled yet. [ruby-dev:45098] [Bug #5850]
18180
18181Tue Jan 10 00:41:28 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18182
18183	* lib/tempfile.rb (Tempfile#_close): clear @tempfile and @data[1] even
18184	  when exception is raised at @tempfile.close. [ruby-dev:45113]
18185
18186	* lib/tempfile.rb (Tempfile#unlink): fix a typo.
18187
18188Tue Jan 10 00:32:17 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18189
18190	* gc.c (run_finalizer): clear rb_thread_t::errinfo when ignore
18191	  an exception under rb_protect(). [ruby-dev:45113]
18192
18193Mon Jan  9 23:37:43 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18194
18195	* ext/readline/readline.c (readline_attempted_completion_function):
18196	  fix typos.
18197
18198Mon Jan  9 20:55:34 2012  Narihiro Nakamura  <authornari@gmail.com>
18199
18200	* gc.c : don't embed struct heaps_slot to a heap block because it
18201	  can causes copy-on-write of memory page on heap block when its
18202	  free_next is rewritten.
18203
18204Mon Jan  9 20:26:33 2012  Tanaka Akira  <akr@fsij.org>
18205
18206	* ext/pathname/pathname.c (path_entries): add document suggested by
18207	  the thread [ruby-core:41959] [Bug #5859].
18208
18209Mon Jan  9 20:14:13 2012  Tanaka Akira  <akr@fsij.org>
18210
18211	* ext/socket/lib/socket.rb (family_addrinfo): don't require protocol
18212	  equality.  For example, protocol 0 and IPPROTO_TCP is not problem
18213	  for TCP.
18214
18215Mon Jan  9 20:08:52 2012  Tanaka Akira  <akr@fsij.org>
18216
18217	* ext/socket/lib/socket.rb (family_addrinfo): return the given
18218	  addrinfo object.
18219	  Patch by Ippei Obayashi.  [ruby-dev:45095] [Bug #5845]
18220
18221Mon Jan  9 19:40:20 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
18222
18223	* test/zlib/test_zlib.rb (TestZlibGzipWriter#test_writer_wrap): set
18224	  binmode explicitly.
18225
18226Mon Jan  9 14:42:41 2012  Narihiro Nakamura  <authornari@gmail.com>
18227
18228	* gc.c: free_slots is changed Singly linked list. clear
18229	  free_slots before sweep.
18230
18231Mon Jan  9 07:46:17 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18232
18233	* gc.c: i686-linux needs to define _XOPEN_SOURCE 600 for posix_memalign.
18234
18235Mon Jan  9 04:24:59 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18236
18237	* gc.c (rb_objspace_free): global_List is allocated with xmalloc.
18238	  patched by Sokolov Yura.  https://github.com/ruby/ruby/pull/78
18239
18240	* dln_find.c: remove useless replacement of free.
18241
18242	* ext/readline/readline.c (readline_attempted_completion_function):
18243	  strings for readline must allocated with malloc.
18244
18245	* process.c (run_exec_dup2): use free; see also r20950.
18246
18247	* re.c (onig_new_with_source): use malloc for oniguruma.
18248
18249	* vm.c (ruby_vm_destruct): use free for VMs.
18250
18251	* vm.c (thread_free): use free for threads.
18252
18253Mon Jan  9 04:24:59 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18254
18255	* dln_find.c: remove useless replacement of free.
18256
18257	* ext/readline/readline.c (filename_completion_proc_call):
18258	  matches should use xfree.
18259
18260	* ext/readline/readline.c (username_completion_proc_call): ditto.
18261
18262Mon Jan  9 01:12:35 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18263
18264	* numeric.c (rb_enc_uint_char): raise RangeError when added codepoint
18265	  is invalid. [Feature #5855] [Bug #5863] [Bug #5864]
18266
18267	* string.c (rb_str_concat): ditto.
18268
18269	* string.c (rb_str_concat): set encoding as ASCII-8BIT when the string
18270	  is US-ASCII and the argument is an integer greater than 127.
18271
18272	* regenc.c (onigenc_mb2_code_to_mbclen): rearrange error code.
18273
18274	* enc/euc_jp.c (code_to_mbclen): ditto.
18275
18276	* enc/shift_jis.c (code_to_mbclen): ditto.
18277
18278Sun Jan  8 20:31:45 2012  Narihiro Nakamura  <narihiro@netlab.jp>
18279
18280	* gc.c : consider header bytes which are used by malloc.
18281
18282Sun Jan  8 11:54:43 2012  Narihiro Nakamura  <authornari@gmail.com>
18283
18284	* gc.c (aligned_free): support MinGW. Patch by Hiroshi Shirosaki.
18285
18286Sun Jan  8 11:43:05 2012  Narihiro Nakamura  <authornari@gmail.com>
18287
18288	* gc.c (slot_sweep): add a assertion instead of a debug print.
18289
18290Sun Jan  8 01:18:19 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
18291
18292	* test/-ext-/old_thread_select/test_old_thread_select.rb:
18293	  avoid platform bug. [Bug #5858] [ruby-dev:45108]
18294
18295Sun Jan  8 00:46:34 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
18296
18297	* gc.c: get rid of implicit narrowing conversion.
18298
18299Sun Jan  8 00:10:10 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18300
18301	* configure.in: check posix_memalign(3) and memalign(3).
18302
18303	* gc.c (aligned_malloc): use configure's result instead of
18304	  _POSIX_C_SOURCE and _XOPEN_SOURCE because they can't be used
18305	  to check availability at least on FreeBSD.
18306
18307Sat Jan  7 22:25:50 2012  Narihiro Nakamura  <authornari@gmail.com>
18308
18309	* gc.c: use Bitmap Marking algorithm to avoid copy-on-write of
18310	  memory pages. See [ruby-dev:45085] [Feature #5839]
18311	  [ruby-core:41916].
18312
18313	* include/ruby/ruby.h : FL_MARK rename to FL_RESERVED1.
18314
18315	* node.h : ditto.
18316
18317	* debug.c : ditto.
18318
18319	* object.c (rb_obj_clone): FL_MARK move to a bitmap.
18320
18321	* class.c (rb_singleton_class_clone): ditto.
18322
18323Sat Jan  7 00:47:07 2012  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18324
18325	* configure.in: always define CANONICALIZATION_FOR_MATHN.
18326	  [ruby-dev:45100] [Bug #5852]
18327
18328Fri Jan  6 23:11:20 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
18329
18330	* include/ruby/version.h: RUBY_API_VERSION 2.0.0
18331
18332Fri Jan  6 12:24:11 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18333
18334	* object.c (rb_inspect): raises Encoding::CompatibilityError if the
18335	  result is incompatible with the default external encoding.
18336	  [ruby-core:41931] [Bug #5848]
18337
18338Thu Jan  5 15:26:15 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
18339
18340	* win32/win32.c (check_valid_dir): strict checking of root.
18341	  GetDriveType() succeeds with non root directory as the argument,
18342	  even if MSDN says that the API needs the root directory.
18343	  this patch fixes a failure of test/ruby/test_file_exhaustive.rb.
18344
18345Thu Jan  5 12:15:55 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18346
18347	* file.c (rb_file_join): separator is appended by array length - 1
18348	  times. patched by Benoit Daloze [ruby-core:41901] [Bug #5841]
18349
18350Thu Jan  5 11:47:54 2012  NARUSE, Yui  <naruse@ruby-lang.org>
18351
18352	* lib/uri/common.rb (URI::Parser#initialize_regexp):
18353	  use \A \z instead of ^ $. [Bug #5843]
18354
18355Wed Jan  4 17:55:53 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
18356
18357	* array.c (rb_ary_sample): add example for Array#sample
18358	  based on patch from https://github.com/ruby/ruby/pull/74
18359
18360Wed Jan  4 14:24:33 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18361
18362	* string.c (str_nth_len): count ascii-only run at the end.  this
18363	  bug appears only when single-byte-optimization is disabled due
18364	  to unknown coderange.  [ruby-core:41896] [Bug #5836]
18365
18366Wed Jan  4 11:32:07 2012  NAKAMURA Usaku  <usa@ruby-lang.org>
18367
18368	* win32/win32.c (check_valid_dir): special case for a root directory.
18369	  Reported by Masateru OKAMOTO at [Bug #5819].
18370
18371Wed Jan  4 00:19:54 2012  Kouhei Sutou  <kou@cozmixng.org>
18372
18373	* lib/rexml/parsers/baseparser.rb: use private instead of _xxx
18374	  method name. This is Ruby code not Python code.
18375	  refs #5696
18376
18377Tue Jan  3 23:57:37 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
18378
18379	* lib/rexml/parsers/baseparser.rb: rexml BaseParser uses
18380	  instance_eval unnecessarily on listener add.
18381	  patch from Charles Nutter. [Bug #5696] [ruby-core:41437]
18382
18383Tue Jan  3 20:44:13 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
18384
18385	* README: add comment for Git user. patch from Arun Agrawal.
18386	* README.ja: ditto.
18387
18388Tue Jan  3 15:58:22 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
18389
18390	* thread.c: changed documentation for "thread-local" variables.
18391	  patch from Julien Ammous.
18392
18393Tue Jan  3 15:50:12 2012  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
18394
18395	* process.c: Fix typo. patch from Aviv Ben-Yosef.
18396
18397Tue Jan  3 13:43:37 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
18398
18399	* tool/merger.rb: allow r0123 style revision number.
18400
18401Tue Jan  3 11:17:55 2012  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
18402
18403	* tool/merger.rb (#version_up): version.h date should be Japanese
18404	  locale date.
18405
18406Mon Jan  2 22:08:00 2012  Akinori MUSHA  <knu@iDaemons.org>
18407
18408	* tool/file2lastrev.rb (VCS::detect): Add support for Subversion
18409	  1.7 which adopted a whole new working directory structure.
18410
18411	* tool/file2lastrev.rb (VCS::detect): Simply use .each instead of
18412	  .sort.reverse_each which looks too arbitrary.  If you want SVN
18413	  to be tried first, then you just have to register it first as it
18414	  is right now.
18415
18416Mon Jan  2 20:53:36 2012  Tanaka Akira  <akr@fsij.org>
18417
18418	* lib/securerandom.rb (random_bytes): use IO#read instead of
18419	  IO#readpartial to make the intent more clear.
18420
18421Mon Jan  2 15:26:39 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
18422
18423	* test/ruby/test_object.rb (test_send_with_block): add a normal case.
18424
18425Mon Jan  2 15:18:54 2012  Kazuki Tsujimoto  <kazuki@callcc.net>
18426
18427	* test/ruby/test_object.rb (test_send_with_block): moved from
18428	  bootstraptest/test_flow.rb.
18429
18430Mon Jan  2 15:10:11 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
18431
18432	* lib/test/unit/parallel.rb: use pack("m0") instead of
18433	  pack("m").gsub("\n","").
18434	* lib/test/unit.rb (Test::Unit::Runner::Worker#run): ditto.
18435
18436Mon Jan  2 15:05:09 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
18437
18438	* lib/test/unit.rb (Test::Unit::Runner::Worker#run): use
18439	  File.basename with suffix instead of gsub.
18440
18441Mon Jan  2 14:55:28 2012  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
18442
18443	* lib/test/unit.rb (Test::Unit::Runner#_run_parallel): find may
18444	  return nil and nil can not dup.
18445
18446Sun Jan  1 12:23:10 2012  Akinori MUSHA  <knu@iDaemons.org>
18447
18448	* lib/shellwords.rb (Shellwords#shellescape): Drop the //n flag
18449	  that only causes warnings with no real effect.  [Bug #5637]
18450
18451Sat Dec 31 06:28:37 2011  NARUSE, Yui  <naruse@ruby-lang.org>
18452
18453	* thread.c (rb_barrier_waiting): save the number of waiting threads
18454	  in RBASIC()->flags. [ruby-dev:45002] [Bug #5768]
18455
18456	* thread.c (rb_barrier_wait): increment and decrement around
18457	  rb_mutex_lock, and use rb_barrier_waiting().
18458
18459	* thread.c (rb_barrier_release): use rb_barrier_waiting().
18460
18461	* thread.c (rb_barrier_destroy): ditto.
18462
18463Mon Dec 26 17:20:10 2011  NARUSE, Yui  <naruse@ruby-lang.org>
18464
18465	* vm.c (vm_exec): add guard to prevent optimization for LLVM clang.
18466
18467Fri Dec 30 17:01:12 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
18468
18469	* vm_eval.c (rb_f_send): fix obj.send() documentation issue.
18470	 [Bug #5125] [ruby-core:38633]
18471
18472Thu Dec 29 22:36:16 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18473
18474	* lib/test/unit.rb (Test::Unit::Runner::Worker#_run_parallels): fix
18475	  premature exit when all workers' status are :ready or :prepare.
18476	  [ruby-dev:45061] [Bug #5822]
18477
18478Thu Dec 29 01:51:13 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18479
18480	* include/ruby/ruby.h: fix #error pragma. LLP64 platform is supported.
18481
18482	* include/ruby/st.h: ditto.
18483
18484Wed Dec 28 11:22:45 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18485
18486	* lib/fileutils.rb (FileUtils::Entry_#entries): use utility method
18487	  instead of typoed regexp.  [ruby-core:41829] [Bug #5817]
18488
18489Wed Dec 28 02:08:04 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18490
18491	* vm_insnhelper.c (unknown_keyword_error): add GC guard to prevent
18492	  intermediate object from GC.
18493
18494Tue Dec 27 22:34:54 2011  Shota Fukumori  <sorah@tubusu.net>
18495
18496	* lib/test/unit.rb (Worker#close): "closing IO if IO is closed"
18497	  should be "closing IO if IO isn't closed"
18498
18499Tue Dec 27 22:04:27 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18500
18501	* st.c (st_update): new function to lookup the given key and
18502	  update the value.  [ruby-dev:44998]
18503
18504Tue Dec 27 21:17:33 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18505
18506	* node.h (rb_args_info): change pre_args_num and post_args_num as
18507	  int, to match with rb_iseq_t.
18508
18509	* parse.y (new_args_gen): check overflow.
18510
18511Mon Dec 26 22:38:35 2011  Yusuke Endoh  <mame@tsg.ne.jp>
18512
18513	* vm_insnhelper.c (unknown_keyword_error): make it kind a error
18514	  message when unknown keyword is given.  It require more work.
18515	  See [ruby-core:40518] and [ruby-core:40541] in detail.
18516
18517Mon Dec 26 22:31:07 2011  Yusuke Endoh  <mame@tsg.ne.jp>
18518
18519	* vm_core.h (struct rb_iseq_struct), compile.c (iseq_set_arguments),
18520	  iseq.c (rb_iseq_parameters), vm_insnhelper.c
18521	  (vm_callee_setup_arg_complex): support Method#parameters for keyword
18522	  arguments.  The provisional spec is what Benoit Daloze proposed.
18523	  [ruby-core:40541]
18524
18525	* test/ruby/test_keyword.rb: add a test for above.
18526
18527Mon Dec 26 22:15:27 2011  Yusuke Endoh  <mame@tsg.ne.jp>
18528
18529	* vm_core.h (struct rb_iseq_struct), compile.c (iseq_set_arguments,
18530	  iseq_compile_each), vm_insnhelper.c (vm_callee_setup_arg_complex):
18531	  implement keyword arguments.  See [ruby-core:40290]
18532	  The feature is promised to be included in 2.0, but the detail spec
18533	  is still under discussion; this commit is a springboard for further
18534	  discussion.  Please try it and give us feedback.
18535	  This commit includes fixes for some problems reported by Benoit
18536	  Daloze <eregontp AT gmail.com> [ruby-core:40518] and Marc-Andre
18537	  Lafortune <ruby-core-mailing-list AT marc-andre.ca>
18538	  [ruby-core:41772].
18539
18540	* iseq.c (iseq_free, prepare_iseq_build): bookkeeping.
18541
18542	* test/ruby/test_keyword.rb: add tests for keyword arguments.
18543
18544	* test/ripper/dummyparser.rb (class DummyParser): temporal fix for
18545	  ripper test.
18546
18547Mon Dec 26 22:00:17 2011  Yusuke Endoh  <mame@tsg.ne.jp>
18548
18549	* node.h, node.c, parse.y: implement a parser part for keyword
18550	  arguments.
18551	  This is a preparation for keyword argument (see [ruby-core:40290]).
18552
18553	* gc.c (gc_mark_children): bookkeeping.
18554
18555Mon Dec 26 21:03:18 2011  Yusuke Endoh  <mame@tsg.ne.jp>
18556
18557	* node.h, parse.y (new_args_gen), compile.c (iseq_set_arguments): use
18558	  struct rb_args_info instead of NODEs.
18559	  This is a preparation for keyword argument (see [ruby-core:40290]).
18560
18561	* node.c (dump_node), gc.c (gc_mark_children, obj_free): bookkeeping.
18562
18563Mon Dec 26 20:59:51 2011  Yusuke Endoh  <mame@tsg.ne.jp>
18564
18565	* node.h, parse.y (lambda, f_larglist): remove NEW_LAMBDA hack.
18566	  This is a preparation for keyword argument (see [ruby-core:40290]).
18567
18568Mon Dec 26 22:01:19 2011  Hiroshi Shirosaki <h.shirosaki@gmail.com>
18569
18570	* io.c (rb_sys_fail_path): move the definition.
18571	  Move above for using it in set_binary_mode_with_seek_cur().
18572
18573	* io.c (set_binary_mode_with_seek_cur): fix improper seek cursor.
18574	  Seeking file cursor with setting binary mode has possibility to
18575	  cause infinite loop. Fixed the bug and refined error handling.
18576	  Introduced at r34043.
18577
18578	  And cleanups as below.
18579	  Remove unnecessary parentheses of `fptr`.
18580	  Use return value of setmode().
18581
18582	* test/ruby/test_io_m17n.rb
18583	  (TestIO_M17N#test_seek_with_setting_binmode): add a test for above.
18584	  [ruby-core:41671] [Bug #5714]
18585
18586Mon Dec 26 17:01:14 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18587
18588	* common.mk (LIBRUBY_A): depends on main.o since r33774.
18589	  [ruby-core:41786] [Bug #5796]
18590
18591Mon Dec 26 13:07:08 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
18592
18593	* test/ruby/test_io.rb (TestIO#test_autoclose): Tempfile.new doesn't
18594	  accept the block argument.
18595
18596Mon Dec 26 13:06:52 2011  Shota Fukumori  <sorah@tubusu.net>
18597
18598	* lib/test/unit.rb: Avoid zombie processes on "--separate" option
18599	  added at r34121.
18600
18601Mon Dec 26 04:01:23 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
18602
18603	* ext/openssl/ossl_cipher.c: Update and complete documentation.
18604
18605Sun Dec 25 23:16:11 2011  Shota Fukumori  <sorah@tubusu.net>
18606
18607	* test/testunit/test_parallel.rb (test_separate): Test for "--separate"
18608	  option (r34121)
18609
18610Sun Dec 25 22:39:49 2011  Shota Fukumori  <sorah@tubusu.net>
18611
18612	* lib/test/unit.rb (_run_parallel):
18613	  New option "--separate" for test/unit; when running tests with this
18614	  option, a job process will be restarted after one test file has done.
18615	  This means all test files will run with separated process.
18616
18617	* lib/test/unit/parallel.rb: Fix for above. Now parallel.rb puts
18618	  "ready!" for first ready, "ready" for afters.
18619
18620Sun Dec 25 00:02:15 2011  Luis Lavena  <luislavena@gmail.com>
18621
18622	* configure.in: change --with-ntver to --with-winnt-ver to be more
18623	  descriptive in the context. [ruby-core:41794]
18624
18625Sat Dec 24 23:25:15 2011  Luis Lavena  <luislavena@gmail.com>
18626
18627	* configure.in: add --with-ntver option to match win32/configure.bat
18628	  functionality. Set 0x0501 as default. [ruby-core:35010]
18629	  [ruby-core:35035]
18630
18631Sat Dec 24 12:38:53 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18632
18633	* proc.c (proc_call): get rid of optimization-out by clang.
18634
18635	* proc.c (rb_proc_call, rb_proc_call_with_block): ditto.
18636
18637Sat Dec 24 10:56:32 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18638
18639	* ext/readline/readline.c (readline_readline): check if outstream
18640	  is closed to get rid of a bug of readline 6.  [ruby-dev:45043]
18641	  [Bug #5803]
18642
18643Sat Dec 24 06:59:49 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18644
18645	* test/readline/test_readline.rb (test_line_buffer__point): use
18646	  lambda not to exit entire method by "return".  or "next" for
18647	  proc.  [ruby-dev:45042] [Bug #5802]
18648
18649Sat Dec 24 01:20:39 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
18650
18651	* vm_eval.c (send_internal): PASS_PASSED_BLOCK_TH must be placed
18652	  just before calling rb_call0.
18653
18654	* bootstraptest/test_flow.rb: add a test for above.
18655
18656Sat Dec 24 00:55:16 2011  Tanaka Akira  <akr@fsij.org>
18657
18658	* lib/tempfile.rb (Tempfile#initialize): warn if a block is given.
18659
18660Fri Dec 23 16:14:30 2011  TAKAO Kouji  <kouji@takao7.net>
18661
18662	* ext/readline/readline.c (readline_attempted_completion_function):
18663	  in Readline module with GNU Readline 6 case, Readline module
18664	  resets completion_append_character to " ", after it executes
18665	  completion. So, Readline module stores
18666	  completion_append_character, and Readline module always sets it
18667	  after Readline module executes completion. [ruby-dev:43456]
18668	  [Feature #4635]
18669
18670Fri Dec 23 15:59:05 2011  TAKAO Kouji  <kouji@takao7.net>
18671
18672	* ext/readline/readline.c (Init_readline): libedit check
18673	  rl_getc_function only when rl_initialize() is called, and
18674	  using_history() call rl_initialize(). This assignment should be
18675	  placed before using_history(). [ruby-core:40641] [Bug #5539]
18676
18677Fri Dec 23 10:14:47 2011  Tanaka Akira  <akr@fsij.org>
18678
18679	* test/thread/test_queue.rb (test_thr_kill): show the number of loop
18680	  run when the test failed.
18681
18682Fri Dec 23 09:23:48 2011  Tanaka Akira  <akr@fsij.org>
18683
18684	* test/test_pty.rb (test_pty_check_default): call PTY.check until
18685	  "cat" command is finished.
18686
18687Fri Dec 23 06:03:00 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
18688
18689	* common.mk: add "check succeeded" message.
18690
18691	* README, README.ja: follow above change.
18692
18693Fri Dec 23 06:00:39 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
18694
18695	* ext/bigdecimal/bigdecimal.h: add satisfy cc-mode comment.
18696	* util.c: ditto.
18697
18698Fri Dec 23 00:08:25 2011  Tanaka Akira  <akr@fsij.org>
18699
18700	* test/test_pty.rb (test_pty_check_default): "cat" may not terminated
18701	  in the 0.1 second.
18702
18703Thu Dec 22 23:37:25 2011  Tanaka Akira  <akr@fsij.org>
18704
18705	* test/ruby/test_thread.rb (test_condvar_timed_wait): don't test the
18706	  maximum sleep time.  Ruby is not a real-time system.
18707
18708Thu Dec 22 22:37:45 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18709
18710	* thread_pthread.c (ping_signal_thread_list): remove return value.
18711	* thread_pthread.c (check_signal_thread_list): add a new function to
18712	  check if signal thread list is empty.
18713	* thread_pthread.c (thread_timer): check signal thread list after
18714	  timer_thread_function(). main thread might be added into signal thread
18715	  list during timer_thread_function().
18716
18717Thu Dec 22 00:40:24 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18718
18719	* ext/bigdecimal/bigdecimal.c (VpMult, VpCtoV, VpSqrt): remove assigned
18720	  but unused variables.
18721
18722Wed Dec 21 18:28:22 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
18723
18724	* common.mk (newline.c, miniprelude.c): revert r33949 because the change
18725	  broke mswin build, and the changer said no reason about the change.
18726	  [ruby-dev:45016] [Bug #5783]
18727
18728Wed Dec 21 12:35:24 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18729
18730	* ext/bigdecimal/bigdecimal.c (BigDecimal_s_allocate): follow
18731	  Allocation Framework.  [Bug #5775]
18732
18733Wed Dec 21 02:25:36 2011  Aaron Patterson <aaron@tenderlovemaking.com>
18734
18735	* ext/psych/emitter.c: fixing clang warnings. Thanks Joey!
18736
18737Wed Dec 21 01:06:00 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
18738
18739	* ext/bigdecimal/README: Update redmine.ruby-lang.org to bugs.ruby-lang.org
18740	* ext/socket/ancdata.c: ditto
18741	* test/-ext-/wait_for_single_fd/test_wait_for_single_fd.rb: ditto
18742	* test/syck/test_yaml.rb: ditto
18743	* doc/ChangeLog-1.9.3: ditto
18744
18745Tue Dec 20 23:50:12 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
18746
18747	* PStore content update perf optimization. Patch by Masaki Matsushita.
18748	  See #5248.
18749
18750	* lib/pstore.rb (save_data):
18751
18752	  * Delete inadequate Marshal check.
18753
18754	  * Deferred file truncation: when writing the new content, truncate
18755	    the saved file to the data size after writing the data, instead of
18756	    truncating whole bytes before writing data.
18757
18758	  * Deferred MD5 calculation: when comparing MD5 hash to check the
18759	    content modification, calculate MD5 hash of new data iif the
18760	    content length is differ from the old one.
18761
18762	  * Compare content size with String#bytesize instead of String#size.
18763
18764Tue Dec 20 21:00:30 2011  Tadayoshi Funaba  <tadf@dotrb.org>
18765
18766	* ext/date/date_core.c: uses to_integer instead.
18767	* test/date/test_switch_hitter.rb: added a test.
18768
18769Tue Dec 20 15:04:18 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
18770
18771	* Make sure to clear $! when ignoring an exception
18772
18773	* ext/openssl/ossl.c (ossl_pem_passwd_cb0, ossl_verify_cb):
18774	  pem_passwd_cb and verify_cb ignores the exception raised in a
18775	  callback proc so it should clear $! for subsequent execution.
18776
18777	  That's said, both subsequent processes for pem_passwd_cb and
18778	  verify_cb raises another exception before leaking $! to Ruby world.
18779	  We cannot test this fix in Ruby land.
18780
18781	* test/openssl/test_pkey_rsa.rb
18782	  (test_read_private_key_pem_pw_exception): Test for pem_passwd_cb +
18783	  exception.
18784
18785Tue Dec 20 11:49:13 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18786
18787	* test/date/test_date_base.rb (test_jd): tests for
18788	  [ruby-dev:45008].
18789
18790Tue Dec 20 10:20:48 2011  NARUSE, Yui  <naruse@ruby-lang.org>
18791
18792	* ext/date/date_core.c (wholenum): fix the type of the return value.
18793
18794Tue Dec 20 05:03:24 2011  Eric Hodel  <drbrain@segment7.net>
18795
18796	* README.ja:  Update redmine.ruby-lang.org to bugs.ruby-lang.org
18797	* README:  ditto
18798	* common.mk:  ditto
18799	* man/erb.1:  ditto
18800	* man/irb.1:  ditto
18801	* man/ri.1:  ditto
18802	* man/ruby.1:  ditto
18803	* sparc.c:  ditto
18804	* tool/install-sh:  ditto
18805
18806Tue Dec 20 02:15:18 2011  Tadayoshi Funaba  <tadf@dotrb.org>
18807
18808	* ext/date/date_core.c:  [ruby-dev:45008].
18809
18810Sun Dec 18 18:52:37 2011  Naohisa Goto  <ngotogenome@gmail.com>
18811
18812	* vm.c (vm_define_method): improve guard of iseq from GC.  Fix
18813	  failure or segmentation fault in test_singleton_method(TestGc)
18814	  on sparc Solaris10 compiled with Oracle Solaris Studio 12.2.
18815	  [Bug #5762] [ruby-dev:45000] [Bug #4178]
18816
18817Sun Dec 18 14:34:31 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18818
18819	* ext/bigdecimal/bigdecimal.c (Init_bigdecimal): does not follow
18820	  allocation framework right now.  [ruby-core:41710] [Bug #5773]
18821
18822Sun Dec 18 12:42:48 2011  Aaron Patterson <aaron@tenderlovemaking.com>
18823
18824	* ext/psych/lib/psych/visitors/to_ruby.rb: BigDecimals can be restored
18825	  from YAML.
18826	* ext/psych/lib/psych/visitors/yaml_tree.rb: BigDecimals can be dumped
18827	  to YAML.
18828	* test/psych/test_numeric.rb: tests for BigDecimal serialization
18829
18830Sun Dec 18 12:03:13 2011  Aaron Patterson <aaron@tenderlovemaking.com>
18831
18832	* ext/psych/lib/psych/scalar_scanner.rb: Strings that look like dates
18833	  should be treated as strings and not dates.
18834
18835	* test/psych/test_scalar_scanner.rb: corresponding tests.
18836
18837Sun Dec 18 09:43:21 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18838
18839	* test/thread/test_queue.rb (test_thr_kill): extend timeout.
18840	  this test takes a long time at slow machine.
18841
18842Sun Dec 18 09:36:51 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18843
18844	* test/ruby/envutil.rb (invoke_ruby): remove :timeout option before
18845	  pass it to Kernel#spawn.
18846
18847Fri Dec 16 17:18:38 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18848
18849	* README, README.ja: 'make check' is preferable to 'make test'.
18850
18851Thu Dec 15 23:16:13 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18852
18853	* error.c (builtin_type_name): don't return pointer to the buffer of
18854	  temporary String object.
18855
18856Thu Dec 15 17:56:58 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18857
18858	* io.c (argf_type): make typed data.
18859
18860Thu Dec 15 17:40:28 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18861
18862	* error.c (rb_check_type): fix typo.
18863
18864Thu Dec 15 14:48:35 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18865
18866	* ext/strscan/strscan.c: use typed data with
18867	  onig_region_memsize().
18868
18869Thu Dec 15 14:33:33 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18870
18871	* error.c (rb_check_typeddata): refine error message with
18872	  including expected struct name.
18873
18874Thu Dec 15 13:15:51 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18875
18876	* regcomp.c (onig_region_memsize): implemented for memsize_of().
18877
18878	* ext/objspace/objspace.c (memsize_of): use it.
18879
18880Thu Dec 15 10:44:54 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18881
18882	* array.c (rb_ary_reject_bang, rb_ary_delete_if): update rdoc.
18883	  documentation from Thomas Leitner <t_leitner AT gmx.at> in
18884	  [ruby-core:41616].  [Bug #5752]
18885
18886Thu Dec 15 10:10:43 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18887
18888	* test/ruby/test_require.rb (test_race_exception): get rid of
18889	  not-guaranteed timing issue.  [ruby-core:41655] [Bug #5754]
18890
18891Wed Dec 14 21:58:42 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
18892
18893	* test/ruby/test_io_m17n.rb
18894	  (TestIO_M17N#test_{read_with_binmode_and_get[cs]}): only for Windows.
18895
18896Wed Dec 14 19:57:23 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
18897
18898	* common.mk,Makefile.in,win32/Makefile.sub (ECHO1): move platform
18899	  specific hack from common.mk to Makefile.in (and win32/Makefile.sub).
18900	  [Bug #5711]
18901
18902	* lib/mkmf.rb: we can generate Makefile as we like.
18903
18904Wed Dec 14 19:22:33 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
18905
18906	* win32/win32.c, include/ruby/win32.h (rb_w32_fd_is_text): new function.
18907
18908	* win32/win32.c (init_stdhandle): set default mode of stdin as binmode.
18909
18910	* io.c (set_binary_mode_with_seek_cur): new function to replace
18911	  SET_BINARY_MODE_WITH_SEEK_CUR macro.  now returns previous mode of the
18912	  fd and take care of LF in rbuf.
18913
18914	* io.c (do_writeconv): set text mode when needed.
18915
18916	* io.c (io_read): need to change the mode of the IO to binmode
18917	  temporally when the length for IO#read, because IO#read with length
18918	  must behave so.
18919
18920	* test/ruby/test_io_m17n.rb (TestIO_M17N#test_{read_with_length,
18921	  read_with_length_binmode,get[cs]_and_read_with_binmode,
18922	  read_with_binmode_and_get[cs],read_write_with_binmode}): tests for
18923	  above changes.
18924
18925	all patches are written by Hiroshi Shirosaki. [ruby-core:41496]
18926	[Feature #5714]
18927
18928Wed Dec 14 15:28:31 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18929
18930	* transcode.c (str_encode): about the extension of :fallback
18931	  option since 1.9.3.
18932
18933Wed Dec 14 12:19:59 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18934
18935	* load.c (load_unlock): release loading barrier and then remove it
18936	  from loading_table if it is not in-use.  [Bug #5754]
18937
18938	* thread.c (rb_barrier_release, rb_barrier_destroy): return
18939	  whether any other threads are waiting on it.
18940
18941Wed Dec 14 11:23:45 2011  NARUSE, Yui  <naruse@ruby-lang.org>
18942
18943	* thread_pthread.c (ubf_select): call rb_thread_wakeup_timer_thread()
18944	  only when it is not timer_thread. [Bug #5757] [ruby-dev:44985]
18945	  patched by Tomoyuki Chikanaga.
18946
18947Wed Dec 14 10:20:08 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18948
18949	* load.c (load_lock): delete the loading barrier if it has been
18950	  destroyed.
18951
18952	* thread.c (rb_barrier_wait): return nil for recursive lock
18953	  instead of false, to distinguish it from destroyed barrier.
18954
18955Wed Dec 14 01:24:55 2011  okkez  <okkez000@gmail.com>
18956
18957	* thread_pthread.c (rb_thread_create_timer_thread): fix memory
18958	  leak. [ruby-dev:44904] [Bug #5688]
18959
18960Wed Dec 14 00:01:15 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18961
18962	* parse.y (primary): point method name line.  [ruby-core:40936]
18963	  [Bug #5614]
18964
18965Tue Dec 13 23:43:48 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
18966
18967	* error.c (name_err_mesg_to_str): clear rb_thread_t::errinfo when
18968	  ignore exception under rb_protect(). [ruby-core:41612] [Bug #5755]
18969
18970	* test/ruby/test_exception.rb (test_exception_in_name_error_to_str):
18971	  add a corresponding test.
18972
18973Tue Dec 13 16:13:29 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18974
18975	* load.c (load_unlock): all threads requiring one file should
18976	  share same loading barrier, so it must be kept alive while those
18977	  are waiting on it.  [ruby-core:41618] [Bug #5754]
18978
18979Tue Dec 13 07:30:14 2011  Aaron Patterson <aaron@tenderlovemaking.com>
18980
18981	* lib/webrick/httpresponse.rb (setup_header): 1xx responses
18982	  are allowed to have Keep-Alive connections.
18983
18984	* test/webrick/test_httpresponse.rb: corresponding test.
18985
18986Tue Dec 13 07:13:28 2011  Aaron Patterson <aaron@tenderlovemaking.com>
18987
18988	* lib/webrick/httpresponse.rb (setup_header): 204 and 304 responses
18989	  are allowed to have a Keep-Alive connection. [ruby-core:41581]
18990
18991	* test/webrick/test_httpresponse.rb: corresponding test.
18992
18993Tue Dec 13 06:29:39 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18994
18995	* parse.y (parser_magic_comment): should pass the proper value.
18996	  [ruby-dev:44984][Bug #5753]
18997
18998Tue Dec 13 05:50:07 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18999
19000	* vm_insnhelper.c (vm_yield_setup_block_args): splat single
19001	  argument if optional arguments are defined not only mandatory or
19002	  post arguments.  [ruby-core:41557] [Bug #5730]
19003
19004Mon Dec 12 22:35:39 2011  Shugo Maeda  <shugo@ruby-lang.org>
19005
19006	* parse.y (stmt_or_begin): changed the error message for BEGIN not
19007	  at toplevel.  [ruby-dev:44963] [Bug #5738]
19008
19009Mon Dec 12 17:29:01 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19010
19011	* README: Fixed SupportedPlatforms URL in the README.
19012	  patched by eMxyzptlk. https://github.com/ruby/ruby/pull/62
19013
19014Mon Dec 12 17:26:51 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19015
19016	* load.c (rb_feature_p): lazy assigned load_path searched in
19017	  loading_table were not expanded, but all features, pushed to
19018	  loading table, are expanded.  a patch by Yura Sokolov
19019	  <funny.falcon AT gmail.com> in [ruby-core:41545]. [Bug #5727]
19020
19021Mon Dec 12 15:41:03 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19022
19023	* ext/stringio/stringio.c (strio_truncate): fix typo.  patched by
19024	  Nick Howard <ndh AT baroquebobcat.com>.
19025	  https://github.com/ruby/ruby/pull/65
19026
19027Sun Dec 11 12:19:17 2011  Shugo Maeda  <shugo@ruby-lang.org>
19028
19029	* lib/net/imap.rb: includes the sequence number of UID in a error
19030	  message.  suggested by art lussos.
19031	  [ruby-core:41413] [Feature #5692]
19032
19033Sun Dec 11 11:42:10 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
19034
19035	* ext/syslog/syslog.c: fix a typo. [ruby-core:41585] [Bug #5740]
19036
19037Sun Dec 11 10:48:16 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19038
19039	* error.c (exit_initialize): deal with true and false as well as
19040	  Kernel#exit.  [ruby-dev:44951] [Bug #5728]
19041
19042Sun Dec 11 10:37:47 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19043
19044	* object.c (rb_check_to_int): new function to convert a VALUE to
19045	  an Integer if possible, but returns nil instead of raising an
19046	  exception otherwise.
19047
19048Sun Dec 11 10:34:39 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19049
19050	* process.c (rb_exit_status_code): extract from rb_f_exit_bang and
19051	  rb_f_exit.  assume 0 to be success in Kernel#exit! too.
19052
19053Fri Dec  9 19:24:31 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19054
19055	* enc/trans/iso-8859-16-tbl.rb: add ISO-8859-16 converter.
19056
19057	* enc/trans/single_byte.trans: ditto.
19058
19059Fri Dec  9 14:28:40 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19060
19061	* file.c (file_path_convert): don't convert it when the path string is
19062	  ascii only. [ruby-core:41556] [Bug #5733]
19063	  tests are contributed by nobu.
19064
19065Fri Dec  9 08:00:15 2011  Luis Lavena  <luislavena@gmail.com>
19066
19067	* include/ruby/win32.h: undef stat to silence mingw-w64 stat
19068	  redefinition warnings (GCC 4.6.3).
19069
19070Thu Dec  8 23:38:24 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
19071
19072	* variable.c (set_const_visibility): clear inline-cache when constant's
19073	  visibility is modified. [ruby-dev:44929]
19074
19075	* test/ruby/test_module.rb (test_private_constants_clear_inlinecache):
19076	  add test for it.
19077
19078Thu Dec  8 23:26:11 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19079
19080	* ext/extmk.rb (extract_makefile): should sort after map, not before
19081	  it.  in this case there is no difference, but we should write better
19082	  code.  this bad smell was caught by nagachika.
19083
19084Thu Dec  8 22:31:13 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19085
19086	* ext/extmk.rb (extract_makefile): need to sort the array of current
19087	  srcs before comparing to the sorted old srcs.
19088	  fixed the problem that the configuring stage of exts were always
19089	  run, introduced at r33801.
19090
19091Thu Dec  8 13:26:24 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19092
19093	* test/rexml/test_order.rb (OrderTester#test_more_ordering): use
19094	  Zlib::GzipReader.open instead of Zlib::GzipReader.new with File.new.
19095	  fixed a test error on Windows introduced at r33946.
19096
19097Thu Dec  8 13:11:26 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19098
19099	* test/ruby/test_process.rb (TestProcess#test_sete[gu]id): silently
19100	  skip if not implemented such functions (such as, on Windows).
19101	  fixed test errors on Windows introduced at r33953.
19102
19103Thu Dec  8 12:57:50 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19104
19105	* ext/socket/extconf.rb: forgotten to define HAVE_SOCKETPAIR for
19106	  windows.
19107	  fixed test errors on Windows introduced at r33947.
19108
19109Thu Dec  8 12:11:06 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19110
19111	* configure.in (RUBY_WERROR_FLAG): append all warning flags which
19112	  are enabled to compile, so that printf format modifiers properly
19113	  fail.  [ruby-core:41351] [Bug #5679]
19114
19115Thu Dec  8 07:20:15 2011  Eric Hodel  <drbrain@segment7.net>
19116
19117	* doc/re.rdoc:  Document difference between match and =~, options with
19118	  Regexp.new and global variables.  Patch by Sylvain Daubert.
19119	  [Ruby 1.9 - Bug #5709]
19120
19121Thu Dec  8 06:53:10 2011  Eric Hodel  <drbrain@segment7.net>
19122
19123	* doc/re.rdoc:  Fix example code to match documentation.  Patch by
19124	  Jarno Lamberg.  [Ruby 1.9 - Bug #5624]
19125
19126Wed Dec  7 19:04:22 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19127
19128	* configure.in (rpath): fix typo in the help string.  a patch from
19129	  Yuji Yamano <yyamano AT kt.rim.or.jp> in [ruby-list:48568].
19130
19131Wed Dec  7 18:55:56 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19132
19133	* vm.c (vm_set_top_stack, vm_set_eval_stack): check for stack
19134	  overflow with stack_max before push new frame. [ruby-core:41520]
19135	  [Bug #5720]
19136
19137	* vm.c (vm_set_main_stack): no stack overflow chances after
19138	  vm_set_eval_stack().
19139
19140Wed Dec  7 09:58:15 2011  Eric Hodel  <drbrain@segment7.net>
19141
19142	* ext/bigdecimal/bigdecimal.c:  Document +@, -@, hash, INFINITY, Nan.
19143	  Patch by Sylvain Daubert.  [Ruby 1.9 - Feature #5622]
19144
19145Wed Dec  7 09:48:00 2011  Eric Hodel  <drbrain@segment7.net>
19146
19147	* io.c (Init_IO):  Mention io/console methods.  [Ruby 1.9 - Bug #5602]
19148	* ext/io/console/console.c:  Mention that io/console must be required
19149	  similar to lib/time.rb
19150
19151Wed Dec  7 08:04:31 2011  Aaron Patterson <aaron@tenderlovemaking.com>
19152
19153	* ext/psych/lib/psych.rb (module Psych): parse and load methods take
19154	  an optional file name that is used when raising Psych::SyntaxError
19155	  exceptions
19156	* ext/psych/lib/psych/syntax_error.rb (module Psych): allow nil file
19157	  names and handle nil file names in the exception message
19158	* test/psych/test_exception.rb (module Psych): Tests for changes.
19159
19160Tue Dec  6 18:26:33 2011  Tanaka Akira  <akr@fsij.org>
19161
19162	* ext/dbm/dbm.c: use db_version() instead of DB_VERSION_STRING to
19163	  detect runtime Berkeley DB version.
19164	  use dpversion instead of _QDBM_VERSION to detect runtime QDBM
19165	  version.
19166	  [ruby-dev:44948]
19167
19168Tue Dec  6 12:30:41 2011  Tanaka Akira  <akr@fsij.org>
19169
19170	* ext/dbm/extconf.rb: detect gdbm_version in libgdbm.
19171
19172	* ext/dbm/dbm.c: make DBM::VERSION more informative for gdbm, qdbm and
19173	  Berkeley DB 1.x.  [ruby-dev:44944]
19174
19175Tue Dec  6 07:26:37 2011  Eric Hodel  <drbrain@segment7.net>
19176
19177	* range.c:  Improve documentation for Range.  Patch by Chris Zetter.
19178	  [Ruby 1.9 - Bug #5656]
19179
19180Mon Dec  5 19:08:04 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19181
19182	* regparse.c (PFETCH_READY): separate gcc specific trick.
19183
19184Mon Dec  5 19:01:59 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19185
19186	* process.c (proc_seteuid_m): fix argument.
19187
19188	* test/ruby/test_process.rb (test_geteuid): fix typo.
19189
19190	* test/ruby/test_process.rb (test_getegid, test_set[eg]uid): add.
19191
19192Mon Dec  5 18:56:55 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19193
19194	* bignum.c (big_rshift), compile.c (validate_label,
19195	  iseq_build_from_ary_exception), cont.c (cont_capture), dir.c
19196	  (dir_open_dir), gc.c (objspace_each_objects), io.c (pipe_open)
19197	  (rb_io_advise), parse.y (parser_compile_string)
19198	  (rb_parser_compile_file), proc.c (binding_free), process.c
19199	  (rb_proc_exec_n, rb_seteuid_core, proc_setegid, rb_setegid_core)
19200	  (p_uid_exchange, p_gid_exchange), regparse.c (strdup_with_null),
19201	  signal.c (sig_dfl), vm.c (rb_iseq_eval, rb_iseq_eval_main),
19202	  vm_insnhelper.c (vm_expandarray): suppress
19203	  unused-but-set-variable warnings.
19204
19205	* class.c (rb_obj_methods), compile.c (iseq_compile_each),
19206	  iseq.c(iseq_load, rb_iseq_parameters), pack.c (pack_pack),
19207	  regcomp.c (is_not_included, update_string_node_case_fold),
19208	  transcode.c (rb_econv_open0, make_replacement),
19209	  vm_eval.c (raise_method_missing): remove unused variable.
19210
19211	* signal.c (reserved_signal_p): static.
19212
19213Mon Dec  5 14:27:23 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19214
19215	* include/ruby/{subst.h,win32.h}, ext/socket/rubysocket.h: revert
19216	  r33876.  [ruby-core:41475] [Bug #5706]
19217
19218	* ext/socket/extconf.rb: the alternative hack for [Bug #5675].
19219
19220Mon Dec  5 10:18:45 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19221
19222	* ext/zlib/zlib.c (rb_gzreader_initialize): revert a part of r33937.
19223	  1st, to change the mode of an IO is very sensitive problem, so
19224	  the maintainer of this library should judge it.
19225	  2nd, usually Zlib::GzipReader.new is not called directly.  #initialize
19226	  is called via .open, and in the method the I/O is opened in binary
19227	  mode, so there is no problem without changing the mode in #initialize.
19228
19229Sun Dec  4 22:53:12 2011  Tanaka Akira  <akr@fsij.org>
19230
19231	* lib/tempfile.rb: don't use lock directory.  [ruby-dev:39197]
19232
19233Sun Dec  4 22:34:43 2011  Tanaka Akira  <akr@fsij.org>
19234
19235	* lib/tempfile.rb (Tempfile::MAX_TRY): remove unused constant.
19236
19237Sun Dec  4 12:11:28 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
19238
19239	* lib/pp.rb: fix rdoc.
19240
19241Sun Dec  4 12:03:16 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19242
19243	* lib/delegate.rb (Delegator#methods): Kernel#methods receives
19244	  zero or one argument. [ruby-core:37118] [Bug #4882]
19245
19246Sun Dec  4 10:15:00 2011  Luis Lavena  <luislavena@gmail.com>
19247
19248	* ext/zlib/zlib.c (rb_gzreader_initialize): use binary mode by default
19249	  under Windows. Patch by Hiroshi Shirosaki. [ruby-core:40706]
19250	  [Feature #5562]
19251
19252	* include/ruby/encoding.h (void rb_econv_binmode): define NEWLINE
19253	  decorator.
19254
19255	* io.c (rb_cloexec_fcntl_dupfd): Introduce NEED_READCONV and
19256	  NEED_WRITECONV to replace universal newline decorator by CRLF only
19257	  when required to improve file reading and writing under Windows.
19258	  Patch by Hiroshi Shirosaki. [ruby-core:40706] [Feature #5562]
19259	* io.c (do_writeconv): adjust binary mode if required.
19260	* io.c (read_all, appendline, swallow, rb_io_getline_1): ditto.
19261	* io.c (io_getc, rb_io_each_codepoint, rb_io_ungetc): ditto.
19262	* io.c (rb_io_binmode, rb_io_ascii8bit_binmode): ditto.
19263	* io.c (rb_io_extract_modeenc, rb_sysopen): ditto.
19264	* io.c (pipe_open, prep_stdio, io_encoding_set): ditto.
19265	* io.c (rb_io_s_pipe, copy_stream_body): ditto.
19266
19267	* test/ruby/test_io_m17n.rb (EOT): add test for pipe and stdin in
19268	  binary mode.
19269
19270	* win32/win32.c (init_stdhandle): remove O_BINARY from stdhandle
19271	  initialization.
19272	* win32/win32.c (rb_w32_write): use FTEXT mode accordingly.
19273
19274Sat Dec  3 20:49:16 2011  Yusuke Endoh  <mame@tsg.ne.jp>
19275
19276	* variable.c (set_const_visibility): print a warning when no argument
19277	  is passwd to Module#private_constant.  [ruby-list:48558]
19278
19279	* vm_method.c (set_method_visibility): ditto for
19280	  Module#private_class_method.
19281
19282Sat Dec  3 20:43:14 2011  Yusuke Endoh  <mame@tsg.ne.jp>
19283
19284	* variable.c (set_const_visibility): Module#private_constant has
19285	  changed the visibility of only the first argument.  Now it changes
19286	  all of them.  [ruby-list:48558]
19287
19288	* test/ruby/test_module.rb: add a test for above.
19289
19290Sat Dec  3 07:17:29 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19291
19292	* Makefile.in (CFLAGS): append ARCH_FLAG.
19293
19294	* configure.in (ARCH_FLAG): exclude from CFLAGS.
19295
19296	* configure.in (UNIVERSAL_INTS): include short int.  fix for
19297	  test/mkmf.
19298
19299Fri Dec  2 15:48:08 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19300
19301	* ext/bigdecimal/bigdecimal.c (VpAllocReal): reduce extra frac.
19302
19303Fri Dec  2 15:41:24 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19304
19305	* configure.in: check whether -pie or -Wl,-pie is valid as
19306	  LDFLAGS.  [ruby-core:41438] [Bug#5697]
19307
19308	* configure.in: use $linker_flag for LDFLAGS option which is not
19309	  limited to particular platforms.
19310
19311Thu Dec  1 23:21:58 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
19312
19313	* thread_pthread.c (thread_timer): call prctl(PR_SET_NAME) only if
19314	  PR_SET_NAME is available.
19315
19316Thu Dec  1 22:31:16 2011  Tanaka Akira  <akr@fsij.org>
19317
19318	* io.c (linux_get_maxfd): change local variable name.
19319
19320Thu Dec  1 16:59:24 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19321
19322	* ext/socket/extconf.rb: add arguments for macro calls.
19323	  [ruby-core:41370] [Bug#5681]
19324
19325Thu Dec  1 16:20:16 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19326
19327	* lib/mkmf.rb (MakeMakefile#try_func): fix broken patch at r33834.
19328
19329Thu Dec  1 14:43:17 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19330
19331	* ext/bigdecimal/bigdecimal.h (Real): suppress false warning from
19332	  clang.  [ruby-core:41418] [Bug#5693]
19333
19334Thu Dec  1 10:31:55 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19335
19336	* configure.in (LDFLAGS): -fstack-protector is always needed to
19337	  link static library created with it.  [ruby-core:41387]
19338	  [Bug#5686]
19339
19340Thu Dec  1 07:03:51 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19341
19342	* configure.in: add sys/prctl.h test.
19343	* thread_pthread.c (thread_timer): call prctl(PR_SET_NAME) to change
19344	  thread name. It may help to debug.
19345
19346Wed Nov 30 23:35:45 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19347
19348	* variable.c (rb_path2class): don't raise NameError when the middle
19349	  constant of the path is not defined but defined on toplevel.
19350	  [ruby-core:41410] [Bug #5691]
19351
19352Wed Nov 30 20:02:02 2011  Martin Duerst  <duerst@it.aoyama.ac.jp>
19353
19354	* transcode.c: Simplified rb_econv_binmode, avoided a warning on cygwin.
19355
19356Wed Nov 30 08:57:07 2011  Eric Hodel  <drbrain@segment7.net>
19357
19358	* lib/mkmf.rb:  Use MakeMakefile's rm_f to avoid conflict with Rake or
19359	  FileUtils.
19360	* test/ruby/test_module.rb:  Hide MakeMakefile's inclusion in Object
19361
19362Wed Nov 30 09:12:43 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19363
19364	* lib/rdoc/encoding.rb (RDoc::Encoding.read_file): fixup newline chars
19365	  on Windows.
19366	  see https://github.com/rdoc/rdoc/issues/87
19367
19368	* test/rdoc/test_rdoc_markup_pre_process.rb
19369	  (TestRDocMarkupPreProcess#test_include_file,
19370	  TestRDocMarkupPreProcess#test_include_file_encoding_incompatible):
19371	  follow above change.
19372
19373Wed Nov 30 09:09:37 2011  Aaron Patterson <aaron@tenderlovemaking.com>
19374
19375	* ext/psych/parser.c (parse): parse method can take an option file
19376	  name for use in exception messages.
19377	* test/psych/test_parser.rb: corresponding tests.
19378
19379Tue Nov 29 09:07:59 2011  Eric Hodel  <drbrain@segment7.net>
19380
19381	* lib/mkmf.rb:  Fix indentations of constants at end of module.
19382	  Document some constants.
19383
19384Tue Nov 29 09:58:23 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19385
19386	* io.c (rb_write_error2): suppress unused variable warning.
19387
19388Tue Nov 29 07:45:26 2011  Eric Hodel  <drbrain@segment7.net>
19389
19390	* lib/mkmf.rb:  Wrap comments to 78 columns and clean up formatting.
19391
19392Tue Nov 29 05:54:18 2011  Eric Hodel  <drbrain@segment7.net>
19393
19394	* lib/mkmf.rb:  Wrap mkmf.rb in module MakeMakefile to clean up Object
19395	  documentation.  [Ruby 1.9 - Feature #5658]
19396	* ext/extmk.rb:  Use MakeMakefile::CONFIG instead of Object::CONFIG
19397	* test/mkmf/base.rb:  ditto
19398
19399Tue Nov 29 00:08:57 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
19400
19401	* common.mk (INSTRUBY_ARGS): added --mantype to apply mdoc2man.rb
19402	  to man pages.  Fixes #5598.
19403	  (do-install-nodoc, do-install-local, do-install-man,
19404	  dont-install-nodoc, dont-install-local, dont-install-man):
19405	  No longer needs --mantype.
19406
19407	  Reported by Rainer Orth <ro AT cebitec.uni-bielefeld.de>,
19408	  patch by George Koehler <xkernigh AT netscape.net>.
19409
19410Mon Nov 28 22:26:31 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19411
19412	* test/rake/test_rake_directory_task.rb
19413	  (TestRakeDirectoryTask#test_directory_win32): shouldn't create any
19414	  file/directory on root directory.  create on @tempdir (= Dir.pwd).
19415	  see https://github.com/jimweirich/rake/issues/91
19416
19417Mon Nov 28 12:57:29 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19418
19419	* io.c (rb_write_error2): fwrite() returns ssize_t.
19420
19421Mon Nov 28 12:47:19 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19422
19423	* parse.y (nodetype, nodeline): static.  these functions are for
19424	  debugging, and not intend to be public.
19425
19426Mon Nov 28 12:37:54 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19427
19428	* gc.c (initial_params): static.  it seems to be forgotten at r33501.
19429
19430Mon Nov 28 12:32:24 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19431
19432	* include/ruby/win32.h, win32/win32.c (GetCurrentThreadHandle): remove
19433	  unused old API.
19434
19435Mon Nov 28 12:29:20 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19436
19437	* win32/mkexports.rb (Exports#initialize): remove old symbol name.
19438
19439Mon Nov 28 12:15:28 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19440
19441	* win32/mkexports.rb (Exports#read_substitution): need to read
19442	  from subst.h too.  [Bug #5675]
19443
19444Mon Nov 28 11:46:35 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19445
19446	* io.c (rb_io_flush): release GVL during fsync() on Windows.
19447
19448Mon Nov 28 11:00:25 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19449
19450	* include/ruby/subst.h: typo of r33876.
19451
19452Mon Nov 28 10:36:00 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19453
19454	* include/ruby/subst.h: moved Windows specific substitutions from
19455	  win32.h.
19456
19457	* ext/socket/rubysocket.h: include ruby/subst.h.  [Bug #5675]
19458
19459Mon Nov 28 10:20:58 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19460
19461	* win32/{Makeilfe.sub,win32.c} (FILE_COUNT, FILE_READPTR): move the
19462	  definitions from config.h to win32.c.  I dared to have left such
19463	  macros, for other future compiler support.
19464	  [ruby-core:41313] [Bug #5674]
19465
19466Mon Nov 28 09:28:30 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19467
19468	* win32/win32.c (rb_w32_uchmod): typo.  [Bug#5671] [ruby-dev:44898]
19469
19470	* test/ruby/test_file.rb (TestFile#test_chmod_m17n): test of above bug.
19471
19472Sun Nov 27 21:25:33 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19473
19474	* configure.in: added -fno-strict-overflow. it suppress annoying
19475	  -Wstrict-overflow warning.
19476
19477Sun Nov 27 20:58:02 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19478
19479	* io.c (rb_write_error2): get rid of warning on linux. fwrite
19480	  of glibc is tagged __attribute__ ((__warn_unused_result__))
19481	  if _FORTIFY_SOURCE != 0.
19482	* vm_dump.c (rb_vm_bugreport): ditto.
19483
19484Sun Nov 27 19:09:02 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19485
19486	* configure.in (stack_protector): disable on mingw.  [Bug#5676]
19487
19488	* Makefile.in (DLDFLAGS): also needs -fstack-protector.
19489	  [Bug#5676]
19490
19491Sun Nov 27 14:13:33 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19492
19493	* configure.in: add -fstack-protector into XLDFLAGS as well as
19494	  XCFLAGS if stack-protector is used.
19495
19496Sun Nov 27 13:09:25 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19497
19498	* configure.in: workaround to avoid MacOS X build error.
19499	  Maybe autoconf 2.61 is slightly buggy. [ruby-core:41316]
19500
19501Sun Nov 27 04:57:11 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19502
19503	* configure.in (--no-undefined): r33840 breaks FreeBSD and DragonFly
19504	  with gcc 4.4 or later. Their environ is in /usr/libexec/ld-elf.so.1,
19505	  so it will be false negative.
19506
19507Sun Nov 27 04:55:45 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19508
19509	* lib/net/http.rb (Net::HTTP::SSL_IVNAMES): rerefix 33701.
19510	  SSL_ATTRIBUTES stores names for set_params, they are symbol.
19511	  SSL_IVNAMES stores instance variable names.
19512
19513Sun Nov 27 00:16:07 2011  Tanaka Akira  <akr@fsij.org>
19514
19515	* io.c (copy_stream_body): use 0666 for permission argument for open.
19516	  [ruby-core:40865]
19517
19518Sat Nov 26 23:01:38 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
19519
19520	* test/openssl/test_engine.rb: remove side effect of generic engine
19521	  load by explicitly loading software-based "openssl" engine for
19522	  all tests.
19523
19524Sat Nov 26 20:41:48 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19525
19526	* lib/net/http.rb (Net::HTTP.get_response): enable use_ssl
19527	  if given URI object is https.
19528	  patched by Mark Ferlatte [ruby-core:40665] [Bug #5545]
19529
19530	* lib/net/http.rb (Net::HTTP.post_form): ditto.
19531
19532Sat Nov 26 20:01:18 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19533
19534	* lib/net/http.rb (Net::HTTP::SSL_ATTRIBUTES): refix 33701.
19535	  store instance variable symbol names.
19536
19537Sat Nov 26 15:40:25 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
19538
19539	* .travis.yml (script): should be ./configure
19540
19541Sat Nov 26 15:39:18 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
19542
19543	* .travis.yml (before_script): wrong name, sorry.
19544
19545Sat Nov 26 15:31:34 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
19546
19547	* .travis.yml (before-script): autoconf required.
19548
19549Sat Nov 26 15:24:05 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
19550
19551	* .travis.yml: Travis enable.
19552
19553Sat Nov 26 10:47:50 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
19554
19555	* ext/openssl/extconf.rb: remove checks for available functions.
19556	* ext/openssl/missing.h: ditto.
19557	  Thanks, Tim Mooney for reporting this!
19558	  [Bug #5432] [ruby-core:40088]
19559
19560Sat Nov 26 10:22:28 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
19561
19562	* ext/openssl/ossl_ssl.c: add comment on where to find implementation
19563	  of OpenSSL::SSL::SSLSocket#session.
19564
19565Sat Nov 26 05:00:25 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19566
19567	* configure.in (--no-undefined): RUBY_TRY_CFLAGS does nothing for
19568	  linker flags.  use RUBY_TRY_LDFLAGS.
19569
19570Fri Nov 25 11:37:07 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19571
19572	* io.c (ioctl_narg_len, linux_iocparm_len): reinstantiate linux
19573	  specific narg length calculation.
19574	* test/ruby/test_io.rb (test_ioctl_linux2): add new test for old and
19575	  unstructured ioctl.
19576
19577Fri Nov 25 10:39:14 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19578
19579	* Makefile.in (EXTLDFLAGS): export it.
19580	* configure.in: add --no-undefined if --enable-shared is specified.
19581	  Gentoo enabled this option long time. Also, export EXTLDFALGS.
19582
19583Fri Nov 25 08:48:35 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19584
19585	* configure.in: turn on PIE if --enable-shared is not specified.
19586
19587Fri Nov 25 08:05:07 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19588
19589	* configure.in: add -fstack-protector. It help to protect us from
19590	  stack smashing attack.
19591
19592Fri Nov 25 08:03:28 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19593
19594	* configure.in: add -D_FORTIFY_SOURCE=2. It provide some compile
19595	  time and runtime check for security.
19596
19597Fri Nov 25 08:00:23 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19598
19599	* lib/mkmf.rb: get rid of warnings of mkmf.rb if -Wmissing-declarations
19600	  and/or -Wold-style-definition warnings if specified.
19601	  Patch by Nikolai Weibull. Thank you! [Bug #5459] [ruby-core:40200]
19602
19603Fri Nov 25 07:46:09 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19604
19605	* configure.in: add -Wall always.
19606
19607Thu Nov 24 20:02:40 2011  Tanaka Akira  <akr@fsij.org>
19608
19609	* test/openssl/test_engine.rb: use IO#reopen to restore stderr.
19610
19611Thu Nov 24 19:59:56 2011  Tanaka Akira  <akr@fsij.org>
19612
19613	* io.c (rb_io_reopen): re-initialize buffering mode for stdout and
19614	  stderr.
19615
19616Thu Nov 24 11:12:48 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19617
19618	* io.c (rb_io_fsync,rb_io_fdatasync): release GVL during fsync().
19619	  fsync() and fdatasync() may take a long time on slow disks and/or
19620	  if there is much dirty data.
19621	  Patch by Eric Wong. [Feature #5665] [ruby-core:41247]
19622
19623Thu Nov 24 10:05:02 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
19624
19625	* test/openssl/test_engine.rb: Suppress output from 'openssl'
19626	  engine's RC4 cipher.
19627	  [Bug #5633] [ruby-core:41026]
19628
19629Thu Nov 24 08:05:02 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
19630
19631	* ext/openssl/ossl_pkey_dsa.c: remove redundant colon from error
19632	  message.
19633	* ext/openssl/ossl_ssl.c: ditto.
19634	* ext/openssl/ossl_pkey_rsa: ditto.
19635	  patched by Eric Hodel [Bug #5604] [ruby-core:40896]
19636
19637Wed Nov 23 20:03:43 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19638
19639	* io.c (ioctl_narg_len): don't use _IOC_SIZE macro on Linux.
19640	  On Linux some constants for ioctl(2) doesn't include the size of
19641	  its return value and 16bit value; for example FIONREAD 0x541B.
19642	  Moreover the manual, ioctl_list(2),  says "Note  that  the  size
19643	  bits  are  very unreliable: in lots of cases they are wrong,
19644	  either because of buggy macros using sizeof(sizeof(struct)),
19645	  or because of legacy values."
19646	  So we shouldn't use it.
19647
19648Tue Nov 22 18:07:32 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19649
19650	* win32/win32.c (_pioinfo): need to declare _pioinfo() before using
19651	  _osfhnd and other macros which uses _pioinfo() internally.
19652
19653Tue Nov 22 17:49:45 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19654
19655	* win32/win32.c (_pioinfo): make an inline function.
19656
19657Tue Nov 22 11:26:08 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19658
19659Tue Nov 22 11:33:58 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19660
19661	* win32/win32.c (dupfd): argument of _osfhnd and so on should not
19662	  have side effect.
19663
19664Tue Nov 22 11:26:08 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19665
19666	* bignum.c (rb_big_divide): refix of r33536. Don't change behavior of Bignum#/.
19667	  [ruby-core:40429] [Bug #5490]
19668
19669Tue Nov 22 10:46:57 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19670
19671	* numeric.c (ruby_float_step): improve floating point calculations.
19672	  [ruby-core:35753] [Bug #4576]
19673
19674	* numeric.c (ruby_float_step): correct the error of floating point
19675	  numbers on the excluding case.
19676	  patched by Masahiro Tanaka [ruby-core:39608]
19677
19678	* numeric.c (ruby_float_step): use the end value when the current
19679	  value is greater than or equal to the end value.
19680	  patched by Akira Tanaka [ruby-core:39612]
19681
19682Tue Nov 22 06:59:21 2011  Tanaka Akira  <akr@fsij.org>
19683
19684	* test/ruby/test_io.rb (test_fcntl_dupfd): there is no known platform
19685	  which don't have F_DUPFD.  [ruby-dev:44874]
19686
19687Tue Nov 22 04:46:22 2011  Aaron Patterson <aaron@tenderlovemaking.com>
19688
19689	* ext/psych/lib/psych.rb: remove autoload from psych
19690	* ext/psych/lib/psych/json.rb: ditto
19691
19692Tue Nov 22 00:44:59 2011  Tanaka Akira  <akr@fsij.org>
19693
19694	* test/ruby/test_io.rb (test_fcntl_dupfd): the argument of F_DUPFD is
19695	  minimum file descriptor.
19696
19697Tue Nov 22 00:25:17 2011  Tanaka Akira  <akr@fsij.org>
19698
19699	* io.c (linux_get_maxfd): get rid of a warning.
19700
19701Mon Nov 21 23:39:14 2011  Tanaka Akira  <akr@fsij.org>
19702
19703	* io.c (linux_get_maxfd): new function to find maximum fd on Linux.
19704	  (rb_close_before_exec): use linux_get_maxfd.
19705
19706Mon Nov 21 06:16:24 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19707
19708	* cont.c (fiber_switch): ignore fiber context switch
19709	  because destination fiber is same as current fiber.
19710	  With out this, it may segv on FreeBSD 9.
19711	  patched by Koichi Sasada.
19712
19713Sun Nov 20 23:22:42 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19714
19715	* ext/extmk.rb (extract_makefile, extmake): regenerate makefiles
19716	  if globbed source file list is changed.
19717
19718	* lib/mkmf.rb (create_makefile): store ORIG_SRCS.
19719
19720Sun Nov 20 22:43:03 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19721
19722	* enc/unicode.c (PROPERTY_NAME_MAX_SIZE): +1.
19723	  reported by Ken Takata. [ruby-dev:44894][Bug #5652]
19724
19725Sun Nov 20 11:01:28 2011  Tanaka Akira  <akr@fsij.org>
19726
19727	* lib/set.rb (SortedSet.setup): remove old_init after initialize
19728	  method is redefined.  The remove before redefinition makes the
19729	  warning prevention fragile.  [ruby-dev:44892]
19730
19731Sun Nov 20 04:01:45 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19732
19733	* Makefile.in (enc/unicode/name2ctype.h): remove duplicated
19734	  ifdefs.
19735
19736Sat Nov 19 19:31:47 2011  Tanaka Akira  <akr@fsij.org>
19737
19738	* time.c (TIME_COPY_GMT): copy vtm.utc_offset and vtm.zone too.
19739	  patch by Tomoyuki Chikanaga.
19740	  [ruby-dev:44827] [Bug #5586]
19741
19742Sat Nov 19 16:36:57 2011  Tanaka Akira  <akr@fsij.org>
19743
19744	* test/net/http/test_http.rb: remove temporally files in ensure clause.
19745
19746Sat Nov 19 08:18:41 2011  Tanaka Akira  <akr@fsij.org>
19747
19748	* test/net/http/test_http.rb: remove temporally files.
19749
19750Fri Nov 18 17:18:16 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19751
19752	* ext/io/console/console.c (console_raw, console_set_raw)
19753	  (console_getch): optional parameters.  [EXPERIMENTAL]
19754
19755Fri Nov 18 16:12:11 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19756
19757	* ext/io/console/console.c (console_cooked, console_set_cooked):
19758	  new methods to reset cooked mode.  [EXPERIMENTAL]
19759
19760Fri Nov 18 13:20:26 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19761
19762	* test/unit/assertions.rb (MINI_DIR): quick dirty hack to get rid of
19763	  warnings when using assert/assert_respond_to.
19764
19765Fri Nov 18 13:03:38 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19766
19767	* io.c (rb_cloexec_open): set O_NOINHERIT instead of O_CLOEXEC if it is
19768	  available (for Windows).
19769
19770	* win32/win32.c (fcntl): on F_DUPFD, determine the inheritance of the
19771	  new handle by O_NOINHERIT flag of original fd.
19772
19773Fri Nov 18 08:00:41 2011  Ryan Davis  <ryand-ruby@zenspider.com>
19774
19775	* lib/minitest/*: Imported minitest 2.8.1 (r6750)
19776	* test/minitest/*: ditto
19777	* configure.in: Improved gcc-llvm error message to help people migrate.
19778
19779Thu Nov 17 20:43:34 2011  Tanaka Akira  <akr@fsij.org>
19780
19781	* ext/dbm/extconf.rb: revert a part of the patch in [ruby-dev:41531].
19782	  don't use db.h with other headers.  [ruby-dev:44884].
19783
19784Thu Nov 17 20:23:03 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19785
19786	* benchmark/bm_io_select[23].rb: use Process::RLIMIT_NOFILE only when
19787	  it is defined.  if it is not defined, assume 64 as the max of fds.
19788
19789Thu Nov 17 10:36:46 2011  Aaron Patterson <aaron@tenderlovemaking.com>
19790
19791	* ext/psych/lib/psych.rb (load_file): make sure opened yaml files are
19792	  also closed. [ruby-core:41088]
19793
19794Wed Nov 16 18:13:52 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19795
19796	* Makefile.in (LIBRUBY_A): check if generated linked library is
19797	  valid for extconf.
19798
19799Wed Nov 16 13:51:40 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19800
19801	* bignum.c (rb_big2ulong): need to calc in unsigned long, because
19802	  the range of VALUE is larger than it on LLP64 platform, such as Win64.
19803	  this change fixes the failures of test/-ext-/num2int.
19804
19805Wed Nov 16 12:02:47 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19806
19807	* test/webrick/test_cgi.rb (TestWEBrickCGI#start_cgi_server): there are
19808	  no guarantee of existence of RbConfig::CONFIG['LIBPATHENV'].
19809	  it only exists in Unix-like environments.
19810
19811	* test/webrick/test_filehandler.rb
19812	  (WEBrick::TestFileHandler#test_script_disclosure): ditto.
19813
19814Wed Nov 16 11:34:20 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19815
19816	* io.c (argf_next_argv): wrong timing of setting ecflags.
19817	  fixed the failure of TestArgf#test_textmode introduced at r33662.
19818
19819Wed Nov 16 10:45:00 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19820
19821	* ext/-test-/num2int/num2int.c: remove an unnecessary and wrong decl
19822	  of rb_stdout.  it's declared in ruby.h correctly.
19823
19824Wed Nov 16 10:26:41 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
19825
19826	* bignum.c (rb_big2ull): add a cast to get rid of a VC++ warning.
19827
19828Wed Nov 16 09:39:27 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19829
19830	* lib/minitest/unit.rb (assert_raises): experimental fix to run
19831	  correctly on chkbuild over 64bit linux. call exception_details only
19832	  when the detail is really needed to avoid create needless inspect
19833	  under ulimit-ed environment.
19834
19835Wed Nov 16 06:34:30 2011  Tanaka Akira  <akr@fsij.org>
19836
19837	* test/ruby/test_thread.rb (test_condvar_timed_wait): use
19838	  assert_operator.
19839
19840Tue Nov 15 21:56:25 2011  Tanaka Akira  <akr@fsij.org>
19841
19842	* test/ruby/test_sleep.rb (test_sleep_5sec): 0.1sec tolerance is too
19843	  small for busy environment.
19844
19845Tue Nov 15 20:08:55 2011  Tanaka Akira  <akr@fsij.org>
19846
19847	* io.c, thread.c, ext/pty/pty.c, ext/fiddle/closure.c: use
19848	  __linux__ macro for consistency.
19849
19850Tue Nov 15 14:45:15 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19851
19852	* include/ruby/ruby.h(NUM2LONG, NUM2INT, NUM2SHORT, NUM2LL,
19853	  INT2NUM, UINT2NUM, LONG2NUM, ULONG2NUM, NUM2CHR): wrap by
19854	  macros.
19855
19856Tue Nov 15 13:38:14 2011  Naohisa Goto  <ngotogenome@gmail.com>
19857
19858	* include/ruby/defines.h (FLUSH_REGISTER_WINDOWS): move sparc asm code
19859	  to a separate file sparc.c for preventing inlining optimization.
19860	  Patched by Jurij Smakov. [Bug #5244] [ruby-core:40685]
19861	* sparc.c (rb_sparc_flush_register_windows): ditto.
19862	* configure.in: ditto.
19863
19864Tue Nov 15 13:11:35 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19865
19866	* include/ruby/ruby.h: get rid of gcc specific rb_long2int(),
19867	  NUM2LONG(), NUM2INT(), NUM2SHORT(), NUM2LL(), INT2NUM(),
19868	  UINT2NUM(), LONG2NUM(), ULONG2NUM() and NUM2CHR()
19869	  implementation. Because 1) They don't make any better code
19870	  at all. 2) Inline function have a better debugger supoort.
19871
19872Tue Nov 15 09:58:25 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19873
19874	* test/ruby/test_io.rb (TestIO#test_fcntl_dupfd): fix OpenBSD test
19875	  failure. [ruby-dev:44872]
19876
19877Tue Nov 15 09:50:21 2011  NARUSE, Yui  <naruse@ruby-lang.org>
19878
19879	* regcomp.c (print_indent_tree): fix double printing of ENCLOSE_OPTION
19880	  children bug. patched by Suraj Kurapati. [ruby-core:40964]
19881
19882Tue Nov 15 01:53:48 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
19883
19884	* test/ruby/test_io.rb (test_fcntl_dupfd): fix test error on
19885	  SnowLeopard. Pointed out by CHIKANAGA Tomoyuki. [ruby-dev:44866]
19886
19887Mon Nov 14 22:06:02 2011  Tanaka Akira  <akr@fsij.org>
19888
19889	* ext/openssl/ossl_pkey.c (ossl_pkey_new_from_file): set close-on-exec
19890	  flag.
19891
19892	* ext/openssl/ossl_x509cert.c (rb_fd_fix_cloexec): ditto.
19893
19894Mon Nov 14 14:54:17 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19895
19896	* bignum.c (rb_big2ull): fix 32bit platform breakage. we must
19897	  not assume sizeof(VALUE) == sizeof(LONG_LONG).
19898	* test/-ext-/num2int/test_num2int.rb (class TestNum2int):
19899	  fix false assumption on 32bit platform.
19900
19901Mon Nov 14 14:52:54 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19902
19903	* numeric.c (rb_fix2ushort): fix typo. use num rb_num2ushort()
19904	  instead of num2uint().
19905
19906Sun Nov 13 10:31:03 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19907
19908	* include/ruby/ruby.h: add #ifdef comment.
19909
19910Sun Nov 13 10:28:18 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19911
19912	* include/ruby/ruby.h: add NUM2SHORT(), NUM2USHORT() macros.
19913	* numeric.c: ditto.
19914
19915	* test/-ext-/num2int/test_num2int.rb: add testcases for NUM2SHORT().
19916	* ext/-test-/num2int/num2int.c: ditto.
19917
19918Sun Nov 13 10:23:48 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19919
19920	* bignum.c (rb_big2ull): fix off-by-twice bug of NUM2ULL.
19921	* test/-ext-/num2int/test_num2int.rb (class TestNum2int):
19922	  fix a testcase too.
19923
19924Sun Nov 13 10:22:44 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19925
19926	* test/-ext-/num2int/test_num2int.rb (class TestNum2int):
19927	  add FIXNUM tests.
19928
19929Sun Nov 13 09:57:29 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19930
19931	* numeric.c (check_uint): fix off-by-one bug of NUM2UINT.
19932	* bignum.c (rb_big2ulong): fix off-by-one bug of NUM2ULONG.
19933
19934	* test/-ext-/num2int/test_num2int.rb: add a testcase for NUM2INT()
19935	  NUM2UINT(), NUM2LONG(), NUM2ULONG(), NUM2LL and NUM2ULL().
19936	* ext/-test-/num2int/depend: ditto.
19937	* ext/-test-/num2int/extconf.rb: ditto.
19938	* ext/-test-/num2int/num2int.c: ditto.
19939
19940Sun Nov 13 23:47:29 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19941
19942	* ext/dbm/extconf.rb: use convertible_int.
19943
19944Sun Nov 13 23:45:57 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19945
19946	* lib/mkmf.rb (checking_for): should not modify the result.
19947
19948	* lib/mkmf.rb (have_struct_member): accept compiler options.
19949
19950	* lib/mkmf.rb (convertible_int): add restricted support of struct
19951	  member, and TYPEOF_ macro.
19952
19953Sun Nov 13 23:21:24 2011  Tanaka Akira  <akr@fsij.org>
19954
19955	* ext/gdbm/gdbm.c (fgdbm_reorganize): set close-on-exec flag after
19956	  gdbm_reorganize().  gdbm_reorganize() opens a new database internally.
19957
19958Sun Nov 13 19:57:18 2011  Tanaka Akira  <akr@fsij.org>
19959
19960	* ext/dbm/extconf.rb: rollback for each headers for each libraries.
19961
19962Sun Nov 13 16:24:48 2011  Tanaka Akira  <akr@fsij.org>
19963
19964	* ext/dbm/extconf.rb: treat libc as a choice for a library which
19965	  provide ndbm API.
19966
19967Sun Nov 13 15:40:43 2011  Tanaka Akira  <akr@fsij.org>
19968
19969	* ext/dbm/extconf.rb: duplicate $libs and $defs when save them.
19970
19971Sun Nov 13 12:43:48 2011  Tanaka Akira  <akr@fsij.org>
19972
19973	* ext/dbm/extconf.rb: rollback $libs and $defs when db detection is
19974	  failed.  It fixes -lgdbm -lqdbm when the system has qdbm and gdbm
19975	  without gdbm_compat.
19976
19977Sat Nov 12 21:14:51 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19978
19979	* test/webrick/test_cgi.rb (class TestWEBrickCGI): respect
19980	  RbConfig::CONFIG["LIBPATHENV"]. [Bug #5135] [ruby-core:38653]
19981	* test/webrick/test_filehandler.rb (class WEBrick): ditto.
19982
19983Sat Nov 12 20:57:29 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
19984
19985	* test/ruby/test_io.rb (test_fcntl_dupfd): skip if Fcntl::DUPFD
19986	  is not defined. Pointed out by CHIKANAGA Tomoyuki. Thanks.
19987
19988Sat Nov 12 17:26:10 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19989
19990	* io.c (do_ioctl, ioctl_narg_len, setup_narg, rb_ioctl): use
19991	  ioctl_req_t.
19992
19993Sat Nov 12 17:01:49 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19994
19995	* ext/dbm/extconf.rb (headers.db_check): reduce duplicated code.
19996
19997Sat Nov 12 15:59:42 2011  Tanaka Akira  <akr@fsij.org>
19998
19999	* ext/dbm/extconf.rb: dbm_clearerr should be available in all ndbm
20000	  implementation.  If it is not available, it is caused by
20001	  header/library mismatch such that Berkeley DB header & gdbm library.
20002
20003	* ext/dbm/dbm.c (fdbm_store): use dbm_clearerr() unconditionally.
20004	  gdbm 1.9 provides it as a real function instead of a empty macro.
20005
20006Sat Nov 12 13:35:33 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
20007
20008	* bootstraptest/runner.rb: don't suppress SIGINT.
20009	  [Feature #5612] [ruby-dev:44856]
20010
20011Sat Nov 12 11:20:36 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
20012
20013	* io.c (fcntl_narg_len): introduce narg calculation for fcntl instead
20014	  of hard coded 256.
20015	* io.c (setup_narg): ditto.
20016
20017Sat Nov 12 11:19:35 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
20018
20019	* test/ruby/test_io.rb (test_fcntl_dupfd): add another fcntl test.
20020
20021Sat Nov 12 11:18:17 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
20022
20023	* test/ruby/test_io.rb (test_fcntl_lock_freebsd): add a testcase
20024	  of fcntl lock for freebsd.
20025
20026Sat Nov 12 11:16:32 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
20027
20028	* io.c (ioctl_narg_len): Linux doesn't have IOCPARM_LEN macro, but
20029	  has _IOC_SIZE. support it.
20030
20031Sat Nov 12 11:13:18 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
20032
20033	* io.c (rb_ioctl): don't expose our sanity check value to ruby script.
20034	  It may change string value meaning if the value is string.
20035	  (e.g. MacOS X has F_GETPATH ioctl)
20036	* io.c (rb_fcntl): ditto.
20037
20038Sat Nov 12 11:06:02 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
20039
20040	* io.c (ioctl_req_t): Type of req argument of ioctl() depend on platform.
20041	  Moreover almost all linux ioctl can't be represented by 32bit integer
20042	  (i.e. MSB is 1). We need wrap ioctl argument type.
20043	  [Bug #5429] [ruby-dev:44589]
20044	* io.c (struct ioctl_arg): ditto.
20045	* io.c (rb_ioctl): ditto.
20046	* test/ruby/test_io.rb (test_ioctl_linux): add a testcase for ioctl
20047
20048Sat Nov 12 11:00:42 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
20049
20050	* io.c (struct io_cntl_arg): remove io_p member.
20051	* io.c (nogvl_fcntl, do_fcntl, rb_fcntl): separated from ioctl functions.
20052	* io.c (nogvl_io_cntl): remove fcntl depended logic.
20053	* io.c (io_cntl): ditto.
20054	* io.c (rb_io_ctl): ditto.
20055	* io.c (rb_io_ioctl): ditto.
20056
20057Sat Nov 12 10:59:49 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
20058
20059	* io.c (setup_narg): fix off by one bug.
20060
20061Sat Nov 12 10:56:43 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
20062
20063	* io.c (+setup_narg): factor out length calculation logic.
20064	* io.c (rb_io_ctl): ditto.
20065
20066Sat Nov 12 10:52:17 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
20067
20068	* io.c (+ioctl_narg_len) new helper function.
20069	* io.c (rb_io_ctl): don't use ioctl specific length check
20070	  if caller is fcntl.
20071
20072Fri Nov 11 23:00:46 2011  Tanaka Akira  <akr@fsij.org>
20073
20074	* ext/dbm/extconf.rb: db_prefix is not required now.
20075
20076Fri Nov 11 21:13:30 2011  Tanaka Akira  <akr@fsij.org>
20077
20078	* ext/gdbm/gdbm.c (fgdbm_initialize): use GDBM_CLOEXEC if available.
20079
20080Fri Nov 11 21:00:05 2011  Tanaka Akira  <akr@fsij.org>
20081
20082	* ext/dbm/extconf.rb: fix dbm_pagfno and dbm_dirfno detection with
20083	  Berkeley DB.  Macro definitions needs arguments to detect correctly.
20084	  SIZEOF_DSIZE needs -DDB_DBM_HSEARCH because db.h defines datum type
20085	  only if DB_DBM_HSEARCH is defined.
20086
20087Fri Nov 11 18:41:57 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20088
20089	* process.c (proc_seteuid): separate an internal wrapper function
20090	  from the method implementation.
20091
20092Fri Nov 11 17:21:15 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20093
20094	* lib/mkmf.rb (have_library, find_library, have_func): allow
20095	  arguments of function to be checked.
20096
20097Fri Nov 11 17:09:45 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20098
20099	* vm_dump.c (HAVE_BACKTRACE): fallback to 0.
20100
20101	* vm_dump.c (rb_vm_bugreport): show "Other runtime information"
20102	  header only when available.
20103
20104	* vm_dump.c (rb_vm_bugreport): get rid of modifying the content of
20105	  VM directly.
20106
20107	* vm_dump.c (rb_vm_bugreport): check if vm is non-null.
20108	  Pointed out by Ikegami Daisuke <ikegami.da@gmail.com>.
20109	  Thank you.
20110
20111Fri Nov 11 12:36:37 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
20112
20113	* io.c (pipe_open): Remove fflush(stdin). it's no effect.
20114	  Pointed out by Ikegami Daisuke <ikegami.da@gmail.com>.
20115	  Thank you.
20116
20117Fri Nov 11 07:33:30 2011  Eric Hodel  <drbrain@segment7.net>
20118
20119	* lib/net/http.rb (Net::HTTP::SSL_ATTRIBUTES):  Use symbol keys instead
20120	  of string keys to avoid duplicating parameters in
20121	  OpenSSL::SSL:SSLContext#set_params.
20122
20123Thu Nov 10 15:02:37 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20124
20125	* lib/mkmf.rb (have_library, have_func, have_var, have_header):
20126	  add compiler option parameter.
20127
20128Thu Nov 10 07:45:16 2011  Eric Hodel  <drbrain@segment7.net>
20129
20130	* ext/openssl/lib/openssl/ssl.rb (class OpenSSL::SSL::SSLContext):
20131	  Document #set_params.
20132
20133Wed Nov  9 11:36:53 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
20134
20135	* thread_pthread.c (gvl_yield): don't prevent concurrent sched_yield().
20136	  [Bug #5130] [ruby-core:38647]
20137
20138Wed Nov  9 23:20:22 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20139
20140	* io.c (rb_update_max_fd): fstat(2) can fail with other than
20141	  EBADF.  [ruby-dev:44837] [Bug #5593].  Cf.
20142	  http://pubs.opengroup.org/onlinepubs/9699919799/functions/fstat.html
20143
20144	* io.c (rb_sysopen): max fd is updated in rb_sysopen_internal()
20145	  already.
20146
20147Wed Nov  9 22:13:38 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
20148
20149	* test/ruby/test_file.rb (TestFile#test_utime_with_minus_time_segv):
20150	  fixed previous commit.
20151
20152Wed Nov  9 19:53:45 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
20153
20154	* test/ruby/test_file.rb (TestFile#test_utime_with_minus_time_segv):
20155	  add test for r33685.
20156
20157Wed Nov  9 19:00:44 2011  Koichi Sasada  <ko1@atdot.net>
20158
20159	* test/ruby/test_fiber.rb: add tests for r33684 (Fiber#resume).
20160
20161Wed Nov  9 16:40:49 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
20162
20163	* win32/win32.c (unixtime_to_filetime): should check the return value
20164	  of localtime().  reported by snowjail at gmail.com.
20165	  [ruby-dev:44838] [Bug #5596]
20166
20167Thu Nov  9 13:17:25 2011  Koichi Sasada  <ko1@atdot.net>
20168
20169	* cont.c (rb_fiber_m_transfer, rb_fiber_resume): prohibit using
20170	  "resume" after "transfer" method are used.  You should not mix
20171	  "resume" fiber and "transfer" fiber.
20172	  [Bug #5526]
20173
20174	* NEWS: add information about this change.
20175
20176Wed Nov  9 11:40:37 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20177
20178	* template/Doxyfile.tmpl (INCLUDE_PATH): add srcdir and include.
20179	  [ruby-core:40843] [Bug #5597]
20180
20181Wed Nov  9 11:02:54 2011  NARUSE, Yui  <naruse@ruby-lang.org>
20182
20183	* thread.c (do_select): fix cast, tv_sec is time_t.
20184
20185Wed Nov  9 10:32:20 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20186
20187	* configure.in: should not use test -e for portability.
20188	  [ruby-core:40841] [Bug #5594]
20189
20190Wed Nov  9 04:52:16 2011  Aaron Patterson <aaron@tenderlovemaking.com>
20191
20192	* ext/psych/lib/psych/tree_builder.rb: dump complex numbers,
20193	  rationals, etc with reference ids.
20194	* ext/psych/lib/psych/visitors/yaml_tree.rb: ditto
20195	* ext/psych/lib/psych/visitors/to_ruby.rb: loading complex numbers,
20196	  rationals, etc with reference ids.
20197	* test/psych/test_object_references.rb: corresponding tests
20198
20199Tue Nov  8 23:34:37 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20200
20201	* ext/dbm/dbm.c (fdbm_fetch, fdbm_key, fdbm_delete, fdbm_store)
20202	  (fdbm_has_key, fdbm_has_value): get rid of overflow.
20203
20204	* ext/gdbm/gdbm.c (rb_gdbm_fetch2, rb_gdbm_nextkey)
20205	  (rb_gdbm_delete, fgdbm_store, fgdbm_has_key): ditto.
20206
20207	* ext/dbm/dbm.c (fdbm_delete_if): hide intermediate objects.
20208
20209	* ext/gdbm/gdbm.c (fgdbm_delete_if): ditto.
20210
20211	* ext/dbm/extconf.rb: check size of datum.dsize to get rid of
20212	  overflow.
20213
20214Tue Nov  8 23:30:21 2011  NARUSE, Yui  <naruse@ruby-lang.org>
20215
20216	* addr2line.c (PATH_MAX): define if not defined. [ruby-core:40840]
20217
20218Tue Nov  8 23:26:49 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20219
20220	* ext/tk/tcltklib.c (rb_thread_critical): fix type.
20221
20222	* ext/tk/tcltklib.c (eventloop_sleep, lib_eventloop_core): int is
20223	  enough for micro seconds.  may need to check overflow in the
20224	  setter though.
20225
20226	* ext/tk/tcltklib.c (RSTRING_LENINT): check overflow if necessary.
20227
20228	* ext/tk/tcltklib.c (RbTk_ALLOC_N): wrapper for ckalloc() which
20229	  takes an int.
20230
20231	* ext/tk/tcltklib.c (ip_ruby_cmd_receiver_get, tcltklib_compile_info):
20232	  get rid overflow.
20233
20234	* ext/tk/tcltklib.c (tcltklib_compile_info): constified.
20235
20236Tue Nov  8 20:50:45 2011  Tanaka Akira  <akr@fsij.org>
20237
20238	* test/dbm/test_dbm.rb: split tests for read only database.
20239
20240	* test/gdbm/test_gdbm.rb: ditto.
20241
20242Tue Nov  8 18:59:07 2011  Tanaka Akira  <akr@fsij.org>
20243
20244	* ext/pty/pty.c (MasterDevice): define only when used.
20245	  (SlaveDevice): ditto.
20246	  (deviceNo): ditto.
20247
20248Tue Nov  8 17:59:24 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20249
20250	* include/ruby/ruby.h (rb_long2int): define as a macro always, so
20251	  that cpp conditionals can tell if it is provided.
20252
20253Tue Nov  8 17:30:50 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20254
20255	* lib/mkmf.rb (cpp_command): remove multiple -arch flags since cpp
20256	  cannot work.
20257
20258Tue Nov  8 14:50:55 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
20259
20260	* io.c (io_fwrite): call rb_w32_write_console() only if FMODE_TTY is
20261	  set.  this is the one of the reason of IO writing slowness of Windows
20262	  in 1.9.3 or later.
20263
20264Tue Nov  8 11:01:04 2011  NARUSE, Yui  <naruse@ruby-lang.org>
20265
20266	* ext/pty/pty.c (get_device_once): FreeBSD 8 supported O_CLOEXEC flag
20267	  for posix_openpt, but FreeBSD 9's posix_openpt doesn't support
20268	  O_CLOEXEC and fails if specified.
20269
20270Tue Nov  8 02:36:45 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
20271
20272	* include/ruby/encoding.h (ECONV_NEWLINE_DECORATOR_READ_MASK,
20273	  ECONV_NEWLINE_DECORATOR_WRITE_MASK): new macro.
20274
20275	* io.c (rb_io_extract_modeenc, pipe_open, prep_stdio, argf_next_argv):
20276	  set TEXTMODE_NEWLINE_DECORATOR_ON_WRITE for textmode on creating IO
20277	  if the flag is available.
20278
20279	* io.c (make_writeconv): drop decorators for reading.
20280
20281	* io.c (make_readconv): drop decorators for writing.
20282
20283	* io.c (do_writeconv): existing writeconv is not the condition to raise
20284	  ArgumentError.  should check textmode or not.
20285
20286	* test/ruby/test_io_m17n.rb
20287	  (TestIO_M17N#test_{cr,lf,crlf}_decorator_on_stdout): test above
20288	  changes.
20289
20290Mon Nov  7 22:03:47 2011  Tanaka Akira  <akr@fsij.org>
20291
20292	* ext/gdbm/gdbm.c (fgdbm_initialize): set close-on-exec flag.
20293
20294Mon Nov  7 20:31:52 2011  Aaron Patterson <aaron@tenderlovemaking.com>
20295
20296	* ext/psych/lib/psych/scalar_scanner.rb: make sure strings that look
20297	  like base 60 numbers are serialized as quoted strings.
20298	* test/psych/test_string.rb: test for change.
20299
20300Mon Nov  7 20:26:37 2011  Aaron Patterson <aaron@tenderlovemaking.com>
20301
20302	* test/psych/test_yamlstore.rb: make test case inherit from MiniTest,
20303	  load psych/helper so that psych is loaded.
20304
20305Mon Nov  7 20:18:29 2011  Aaron Patterson <aaron@tenderlovemaking.com>
20306
20307	* test/psych/test_yamldbm.rb: Test case should inherit from MiniTest,
20308	  load psych/helper so that psych and friends are loaded.
20309
20310Mon Nov  7 20:15:44 2011  Tanaka Akira  <akr@fsij.org>
20311
20312	* ext/dbm/extconf.rb: check dbm_pagfno() and dbm_dirfno().
20313
20314	* ext/dbm/dbm.c: use above to set close-on-exec flag.
20315
20316Mon Nov  7 20:05:16 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
20317
20318	* io.c (io_fflush): remove fsync().
20319
20320	* io.c (rb_io_flush, rb_io_rewind): fsync() here.
20321
20322	these changes reduces fsync() calls to improve performance.
20323	first reported at [ruby-list:48515] by ak7 at mail.goo.ne.jp .
20324	[Bug #5585]
20325
20326Mon Nov  7 19:43:10 2011  Tanaka Akira  <akr@fsij.org>
20327
20328	* io.c (rb_close_before_exec): use F_MAXFD if available.
20329	  F_MAXFD is available on NetBSD since NetBSD 2.0.
20330
20331Mon Nov  7 19:25:16 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
20332
20333	* test/ruby/test_io_m17n.rb
20334	  (TestIO_M17N#test_default_stdout_stderr_mode): new test for
20335	  r33627-33629.  see [backport #5565]
20336
20337Mon Nov  7 01:14:22 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
20338
20339	* lib/debug.rb: add help for 'pp' and 'r[estart]'. patch
20340	  from Sho Hashimoto. [Bug #5093] [ruby-dev:44222]
20341
20342Sun Nov  6 14:49:58 2011  Tanaka Akira  <akr@fsij.org>
20343
20344	* ext/socket/rubysocket.h (rsock_recvmsg): declared.
20345
20346	* ext/socket/ancdata.c (rsock_recvmsg): extracted from
20347	  nogvl_recvmsg_func.
20348	  (nogvl_recvmsg_func): use rsock_recvmsg.
20349
20350	* ext/socket/unixsocket.c (recvmsg_blocking): use rsock_recvmsg.
20351
20352Sun Nov  6 03:22:36 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
20353
20354	* test/openssl/test_engine.rb: add test for engine cipher. RC4 is used
20355	  because AES is not supported by the "openssl" engine currently.
20356
20357Sun Nov  6 00:11:52 2011  Tanaka Akira  <akr@fsij.org>
20358
20359	* lib/test/unit.rb (Test::Unit::Options#non_options): options[:ruby]
20360	  should be an array.  This fixes
20361	  "./ruby test/runner.rb test/testunit/test_parallel.rb"
20362	  [ruby-dev:44782]
20363
20364Sat Nov  5 20:30:30 2011  Martin Duerst  <duerst@it.aoyama.ac.jp>
20365
20366	* insns.def: Some fixes and tweaks to English explanations
20367
20368Sat Nov  5 19:11:50 2011  Tanaka Akira  <akr@fsij.org>
20369
20370	* io.c (rb_cloexec_fcntl_dupfd): don't clear try_dupfd_cloexec if
20371	  fcntl(F_DUPFD) failed as fcntl(F_DUPFD_CLOEXEC).
20372
20373Sat Nov  5 18:05:12 2011  Tanaka Akira  <akr@fsij.org>
20374
20375	* ext/socket/socket.c (rsock_socketpair0): refactored.
20376
20377Sat Nov  5 17:55:52 2011  Tanaka Akira  <akr@fsij.org>
20378
20379	* ext/socket/init.c (rsock_socket0): don't clear try_sock_cloexec if
20380	  SOCK_CLOEXEC is not a reason for EINVAL.
20381
20382Sat Nov  5 16:27:52 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
20383
20384	* ext/pathname/lib/pathname.rb, ext/tk/lib/multi-tk.rb,
20385	  ext/tk/sample/demos-en/widget, lib/benchmark.rb, lib/irb/cmd/fork.rb,
20386	  lib/mkmf.rb, lib/net/ftp.rb, lib/net/smtp.rb, lib/open3.rb,
20387	  lib/pstore.rb, lib/rexml/element.rb, lib/rexml/light/node.rb,
20388	  lib/rinda/tuplespace.rb, lib/rss/maker/base.rb,
20389	  lib/rss/maker/entry.rb, lib/scanf.rb, lib/set.rb, lib/shell.rb,
20390	  lib/shell/command-processor.rb, lib/shell/process-controller.rb,
20391	  lib/shell/system-command.rb, lib/uri/common.rb: remove unused block
20392	  arguments to avoid creating Proc objects.
20393
20394Sat Nov  5 15:45:04 2011  Tanaka Akira  <akr@fsij.org>
20395
20396	* ext/socket/init.c (rsock_socket0): extract single socket() call with
20397	  CLOEXEC handling from rsock_socket.
20398
20399Sat Nov  5 13:49:40 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
20400
20401	* lib/pathname.rb (Pathname#find): return an enumerator if
20402	  no block is given.
20403
20404	* test/pathname/test_pathname.rb: add tests for above.
20405
20406	[ruby-dev:44797] [Feature #5572]
20407
20408Sat Nov  5 11:18:12 2011  Tanaka Akira  <akr@fsij.org>
20409
20410	* ext/socket/socket.c (rsock_socketpair0): don't clear
20411	  try_sock_cloexec if SOCK_CLOEXEC is not a reason for EINVAL.
20412
20413Fri Nov  4 14:08:19 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
20414
20415	* ext/openssl/ossl_pkey_rsa.c (rsa_generate): [SECURITY] Set RSA
20416	  exponent value correctly.  Awful bug.  This bug caused exponent of
20417	  generated key to be always '1'.  By default, and regardless of e
20418	  given as a parameter.
20419
20420	  !!! Keys generated by this code (trunk after 2011-09-01) must be
20421	  re-generated !!! (ruby_1_9_3 is safe)
20422
20423	* test/openssl/test_pkey_rsa.rb: Add tests for default exponent and
20424	  specifying exponent by a parameter.
20425
20426Fri Nov  4 01:31:25 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
20427
20428	* test/openssl/test_engine.rb: add first tests for builtin "openssl"
20429	  engine.
20430
20431Fri Nov  4 08:41:26 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
20432
20433	* ext/openssl/extconf.rb:
20434	* ext/openssl/ossl_engine.c: add some missing OpenSSL engines.
20435	  Thanks, Yui Naruse, for providing the patch!
20436	  [Bug #5548] [ruby-core:40670]
20437
20438Fri Nov  4 04:54:10 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
20439
20440	* win32/configure.bat: disable delayed expansion of enironment variable.
20441	  [Bug #5517] [ruby-core:40531]
20442
20443Fri Nov  4 03:45:22 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
20444
20445	* io.c (make_writeconv): fixed typo of previous commit.
20446
20447Fri Nov  4 01:56:30 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
20448
20449	* io.c (make_writeconv): unversal_newline converter is for reading.
20450	  so, if the io is text mode and has ECONV_UNIVERSAL_NEWLINE_DECORATOR
20451	  flag, use crlf_newline converter for writing.
20452	  this change fixes the problem about the luck of CR up Kernel.p and
20453	  Kernel.puts to stdout/stderr on Windows.
20454
20455Fri Nov  4 01:04:48 2011  NARUSE, Yui  <naruse@ruby-lang.org>
20456
20457	* ext/readline/readline.c (Init_readline): like r18313, libedit's
20458	  replace_history_entry may use offset instead of which.
20459	  so introduce history_replace_offset_func and initialize it.
20460
20461	* ext/readline/readline.c (hist_set): use history_replace_offset_func.
20462
20463Fri Nov  4 00:53:35 2011  NARUSE, Yui  <naruse@ruby-lang.org>
20464
20465	* ext/readline/readline.c (Init_readline): fix wrong condition.
20466
20467Thu Nov  3 23:53:04 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
20468
20469	* encoding.c (rb_locale_charmap): ignore calling nl_langinfo_codeset()
20470	  on Windows except cygwin. [experimental]
20471
20472Thu Nov  3 22:45:09 2011  Tanaka Akira  <akr@fsij.org>
20473
20474	* ext/socket/socket.c (rsock_socketpair0): extracted from
20475	  rsock_socketpair to set close-on-exec flag for each socketpair()
20476	  call.
20477
20478Thu Nov  3 22:12:41 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
20479
20480	* ext/socket/init.c (rsock_socket): set close-on-exec flag when
20481	  SOCK_CLOEXEC is not available.
20482
20483Thu Nov  3 08:36:00 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
20484
20485	* test/openssl/test_engine.rb: call Engine::cleanup on exit.
20486	  Patch provided by Yui Naruse, thanks!
20487	  [Bug #5547] [ruby-core:40669]
20488
20489Wed Nov  2 21:36:00 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20490
20491	* complex.c (nucomp_rationalize): fix function.  [ruby-core:40667]
20492	  [Bug #5546]
20493
20494Wed Nov  2 08:16:45 2011  Tanaka Akira  <akr@fsij.org>
20495
20496	* lib/webrick/utils.rb: fix fcntl call.
20497
20498	* lib/drb/unix.rb: ditto.
20499
20500Wed Nov  2 00:43:59 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
20501
20502	* test/psych/test_yamldbm.rb: avoid platform dependency.
20503	  patch by Naohisa Goto. [ruby-dev:44763] [Bug #5535]
20504	* test/syck/test_yamldbm.rb: ditto.
20505
20506Wed Nov  2 00:14:15 2011  Shugo Maeda  <shugo@ruby-lang.org>
20507
20508	* test/ruby/test_marshal.rb: renamed methods duplicated with those
20509	  of marshaltestlib.rb.
20510
20511Tue Nov  1 22:08:27 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20512
20513	* configure.in: reject llvm-gcc.
20514
20515Tue Nov  1 21:39:00 2011  NARUSE, Yui  <naruse@ruby-lang.org>
20516
20517	* io.c (rb_cloexec_pipe): remove workaround of r33587.
20518	  The bug of NetBSD is fixed on Mon Oct 31 21:31:29 UTC 2011.
20519	  http://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=45545
20520
20521Tue Nov  1 19:49:08 2011  Tanaka Akira  <akr@fsij.org>
20522
20523	* io.c (rb_io_reopen): call rb_fd_fix_cloexec instead of
20524	  rb_maygvl_fd_fix_cloexec.
20525
20526Tue Nov  1 19:00:30 2011  Tanaka Akira  <akr@fsij.org>
20527
20528	* io.c (rb_io_reopen): call rb_maygvl_fd_fix_cloexec after freopen().
20529
20530Tue Nov  1 17:17:26 2011  NARUSE, Yui  <naruse@ruby-lang.org>
20531
20532	* file.c (file_expand_path): reset coderange after expanding path.
20533
20534Tue Nov  1 14:55:29 2011  NARUSE, Yui  <naruse@ruby-lang.org>
20535
20536	* io.c (nogvl_io_cntl): rb_cloexec_fcntl_dupfd's 2nd argument is int.
20537
20538	* process.c (move_fds_to_avoid_crash): ditto.
20539
20540Tue Nov  1 13:14:33 2011  NARUSE, Yui  <naruse@ruby-lang.org>
20541
20542	* vsnprintf.c (BSD_vfprintf): support 'll' prefix.
20543
20544	* vsnprintf.c (__sfeof): rename to avoid the collision with NetBSD's
20545	  one.
20546
20547	* vsnprintf.c (__sferror): ditto.
20548
20549	* vsnprintf.c (__sclearerr): ditto.
20550
20551	* vsnprintf.c (__sfileno): ditto.
20552
20553Tue Nov  1 12:36:16 2011  Tanaka Akira  <akr@fsij.org>
20554
20555	* internal.h (rb_maygvl_fd_fix_cloexec): change the visibility for
20556	  ext/socket.
20557
20558Tue Nov  1 12:00:53 2011  Tanaka Akira  <akr@fsij.org>
20559
20560	* io.c (rb_maygvl_fd_fix_cloexec): renamed from fd_set_cloexec.
20561
20562	* internal.h (rb_maygvl_fd_fix_cloexec): declared.
20563
20564	* ext/socket/init.c (cloexec_accept): use rb_maygvl_fd_fix_cloexec.
20565	  (rsock_s_accept_nonblock): use rb_update_max_fd.
20566	  (rsock_s_accept): use rb_update_max_fd.
20567
20568Tue Nov  1 08:24:40 2011  Tanaka Akira  <akr@fsij.org>
20569
20570	* ext/socket/init.c (cloexec_accept): new function to use accept4 if
20571	  available.
20572	  (rsock_s_accept_nonblock): use cloexec_accept.
20573	  (accept_blocking): ditto.
20574
20575	* ext/socket/extconf.rb: check accept4.
20576
20577Tue Nov  1 07:31:55 2011  Tanaka Akira  <akr@fsij.org>
20578
20579	* ext/socket/ancdata.c (nogvl_recvmsg_func): use MSG_CMSG_CLOEXEC if
20580	  available.
20581
20582	* ext/socket/unixsocket.c (recvmsg_blocking): ditto.
20583
20584Tue Nov  1 05:59:41 2011  Tanaka Akira  <akr@fsij.org>
20585
20586	* ext/socket/socket.c (rsock_socketpair): use SOCK_CLOEXEC if
20587	  available.
20588
20589Tue Nov  1 02:56:17 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
20590
20591	* ruby.c (load_file_internal): convert the encoding of load path if
20592	  needed by platform.  calling open() was replaced by rb_cloexec_open()
20593	  at r33549, but the function expected UTF-8 pathname on Windows.
20594	  (open() expected "locale" pathname.)
20595	  reported by taco via IRC.
20596
20597	* ruby.c (load_file): change the type of the 2nd parameter to pass its
20598	  encoding to load_file_internal().
20599
20600	* ruby.c (process_options, rb_load_file): follow above change.
20601	  NOTE: we should pass encoding information to rb_load_file().
20602
20603Mon Oct 31 23:49:38 2011  Tanaka Akira  <akr@fsij.org>
20604
20605	* ext/socket/socket.c (rsock_socketpair): extracted from
20606	  rsock_sock_s_socketpair.
20607
20608Mon Oct 31 23:31:53 2011  Tanaka Akira  <akr@fsij.org>
20609
20610	* ext/socket/init.c (rsock_socket): use SOCK_CLOEXEC if available.
20611
20612Mon Oct 31 21:47:44 2011  NARUSE, Yui  <naruse@ruby-lang.org>
20613
20614	* io.c (rb_cloexec_pipe): NetBSD 6.0 will support pipe2(2),
20615	  but its return value is -1 or larger than 0.
20616
20617Mon Oct 31 22:04:54 2011  Tanaka Akira  <akr@fsij.org>
20618
20619	* ext/dbm/dbm.c (fdbm_initialize): use O_CLOEXEC if available.
20620
20621Mon Oct 31 21:47:48 2011  Tanaka Akira  <akr@fsij.org>
20622
20623	* include/ruby/intern.h (rb_fd_fix_cloexec): renamed from
20624	  rb_fd_set_cloexec.
20625
20626	* io.c: follow the above renaming.
20627
20628	* ext/pty/pty.c: ditto.
20629
20630	* ext/socket/init.c: ditto.
20631
20632	* ext/socket/socket.c: ditto.
20633
20634	* ext/socket/ancdata.c: ditto.
20635
20636	* ext/socket/unixsocket.c: ditto.
20637
20638Mon Oct 31 21:02:43 2011  Tanaka Akira  <akr@fsij.org>
20639
20640	* lib/resolv.rb (Resolv::DNS): retry IO.select for premature wakeup.
20641
20642Mon Oct 31 20:14:22 2011  Tanaka Akira  <akr@fsij.org>
20643
20644	* io.c (fd_set_cloexec): clear CLOEXEC flag for standard file
20645	  descriptors.
20646	  (rb_cloexec_dup): use rb_cloexec_fcntl_dupfd.
20647	  (rb_cloexec_fcntl_dupfd): use F_DUPFD_CLOEXEC if available.
20648
20649Mon Oct 31 19:14:11 2011  Tanaka Akira  <akr@fsij.org>
20650
20651	* test/resolv/test_dns.rb: don't check maximum slept time.
20652	  ruby doesn't guarantee the maximum time because it is not a
20653	  realtime application.
20654
20655Mon Oct 31 13:10:06 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
20656
20657	* win32/win32.c (setfl): extract from fcntl().
20658
20659	* win32/win32.c (dupfd): new function to support F_DUPFD. based on a
20660	  patch written by akr.
20661
20662	* win32/win32.c (fcntl): use above functions.
20663
20664	* include/ruby/win32.h (F_DUPFD): define. [experimental]
20665
20666	* include/ruby/win32.h (F_SETFL): change the value to correspond with
20667	  other platforms.
20668
20669Mon Oct 31 12:37:50 2011  Tanaka Akira  <akr@fsij.org>
20670
20671	* ext/pty/pty.c (get_device_once): use O_CLOEXEC for posix_openpt if
20672	  available.
20673
20674Mon Oct 31 12:05:24 2011  Tanaka Akira  <akr@fsij.org>
20675
20676	* io.c (rb_cloexec_dup2): check oldfd == newfd at first.
20677	  pointed by KOSAKI Motohiro.  [ruby-dev:44713]
20678
20679Mon Oct 31 10:50:26 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
20680
20681	* io.c (rb_cloexec_fcntl_dupfd): this function needs F_DUPFD.
20682
20683	* io.c (nogvl_io_cntl): use rb_cloexec_fcntl_dupfd() only if the
20684	  platform has F_DUPFD.
20685
20686Mon Oct 31 00:50:00 2011  Luis Lavena  <luislavena@gmail.com>
20687
20688	* configure.in: check -fno-omit-frame-pointer acceptance and usage
20689	  under MinGW. [ruby-core:39957] [Bug #5407]
20690
20691Mon Oct 31 00:16:11 2011  Tanaka Akira  <akr@fsij.org>
20692
20693	* include/ruby/intern.h (rb_cloexec_fcntl_dupfd): declared.
20694
20695	* io.c (rb_cloexec_fcntl_dupfd): new function.
20696	  (nogvl_io_cntl): use rb_cloexec_fcntl_dupfd.
20697
20698	* process.c (move_fds_to_avoid_crash): use rb_cloexec_fcntl_dupfd.
20699
20700Sun Oct 30 22:46:46 2011  Tanaka Akira  <akr@fsij.org>
20701
20702	* configure.in: check pipe2.
20703
20704	* io.c (rb_cloexec_pipe): use pipe2 if available.
20705
20706Sun Oct 30 22:32:44 2011  Tanaka Akira  <akr@fsij.org>
20707
20708	* ruby.c (fill_standard_fds): use fstat() instead of fcntl(F_GETFD)
20709	  for MinGW.  reported by Luis Lavena.  [ruby-core:40526] [Bug #5516]
20710
20711Sun Oct 30 21:12:47 2011  Tanaka Akira  <akr@fsij.org>
20712
20713	* include/ruby/intern.h (rb_cloexec_pipe): declared.
20714
20715	* io.c (rb_cloexec_pipe): new function.
20716	  (rb_pipe): use rb_cloexec_pipe.
20717
20718	* thread_pthread.c (rb_thread_create_timer_thread): use
20719	  rb_cloexec_pipe.
20720
20721Sun Oct 30 20:06:07 2011  Tanaka Akira  <akr@fsij.org>
20722
20723	* io.c (rb_cloexec_dup): refine control flow.
20724	  (rb_cloexec_dup2): ditto.
20725
20726Sun Oct 30 18:45:50 2011  Tanaka Akira  <akr@fsij.org>
20727
20728	* ruby.c (fill_standard_fds): new function to open closed standard
20729	  file descriptors.
20730	  (ruby_sysinit): call fill_standard_fds.
20731
20732Sun Oct 30 10:50:36 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20733
20734	* tool/rbinstall.rb (install_recursive, bin-comm): split mere
20735	  string not path name.  [ruby-core:40462] [Bug #5492]
20736
20737Sun Oct 30 10:47:20 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20738
20739	* io.c (rb_cloexec_dup, rb_cloexec_dup2): CLOEXEC has been set if
20740	  dup3 succeeded.
20741
20742Sun Oct 30 09:58:48 2011  Tanaka Akira  <akr@fsij.org>
20743
20744	* io.c (rb_cloexec_dup): don't allocate standard file descriptors.
20745
20746Sun Oct 30 08:29:51 2011  Tanaka Akira  <akr@fsij.org>
20747
20748	* io.c (rb_cloexec_dup2): don't set CLOEXEC for standard file
20749	  descriptors.
20750
20751Sun Oct 30 07:47:10 2011  Tanaka Akira  <akr@fsij.org>
20752
20753	* configure.in: check dup3.
20754
20755	* io.c (rb_cloexec_dup2): use dup3 if available.
20756
20757Sat Oct 29 22:06:37 2011  Tanaka Akira  <akr@fsij.org>
20758
20759	* include/ruby/intern.h (rb_cloexec_dup2): declared.
20760
20761	* io.c (rb_cloexec_dup2): new function.
20762	  (io_reopen): use rb_cloexec_dup2.
20763
20764Sat Oct 20 21:08:18 2011  Tajima Akio <artonx@yahoo.co.jp>
20765
20766	* win32/Makefile.sub (CONFIG_H): have stdint.h if VC2010.
20767	  [Bug #5243]
20768
20769Sat Oct 29 20:59:08 2011  Tanaka Akira  <akr@fsij.org>
20770
20771	* io.c (rb_cloexec_dup): use F_DUPFD_CLOEXEC if available.
20772
20773Sat Oct 29 20:00:26 2011  Tanaka Akira  <akr@fsij.org>
20774
20775	* include/ruby/intern.h (rb_cloexec_dup): declared.
20776
20777	* io.c (rb_cloexec_dup): new function.
20778	  (ruby_dup): use rb_cloexec_dup.
20779
20780	* ext/pty/pty.c (pty_getpty): use rb_cloexec_dup.
20781
20782	* ext/openssl/ossl_bio.c (ossl_obj2bio): ditto.
20783
20784Sat Oct 29 16:11:34 2011  Tanaka Akira  <akr@fsij.org>
20785
20786	* ext/sdbm/_sdbm.c (sdbm_prep): use O_CLOEXEC if available.
20787
20788Sat Oct 29 14:26:56 2011  Tanaka Akira  <akr@fsij.org>
20789
20790	* io.c (rb_cloexec_open): use O_CLOEXEC if available.
20791
20792Sat Oct 29 12:57:15 2011  Tanaka Akira  <akr@fsij.org>
20793
20794	* process.c (ruby_setsid): use rb_cloexec_open.
20795	  (rb_daemon): ditto.
20796
20797	* ruby.c (load_file_internal): ditto.
20798
20799	* file.c (rb_file_s_truncate): ditto.
20800	  (file_load_ok): ditto.
20801
20802	* random.c (fill_random_seed): ditto.
20803
20804	* ext/pty/pty.c (chfunc): ditto.
20805	  (get_device_once): ditto.
20806
20807	* ext/io/console/console.c (console_dev): ditto.
20808
20809Sat Oct 29 10:40:19 2011  Tanaka Akira  <akr@fsij.org>
20810
20811	* include/ruby/intern.h (rb_cloexec_open): declared.
20812
20813	* io.c (fd_set_cloexec): extracted from rb_fd_set_cloexec.
20814	  (rb_cloexec_open): new function.
20815	  (sysopen_func): use rb_cloexec_open.
20816	  (rb_sysopen_internal): use rb_update_max_fd instead of
20817	  rb_fd_set_cloexec.
20818
20819Sat Oct 29 09:05:07 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20820
20821	* thread_pthread.h: no Structured Exception Handling like macros.
20822	  [ruby-core:40432] [Bug #5491]
20823
20824Fri Oct 28 22:05:34 2011  Tanaka Akira  <akr@fsij.org>
20825
20826	* ext/sdbm/_sdbm.c: RCS $Id$ removed.
20827
20828Thu Oct 27 18:58:00 2011  NARUSE, Yui  <naruse@ruby-lang.org>
20829
20830	* parse.y (parser_nextc): set encoding for the buffer of ripper.
20831
20832Fri Oct 28 06:06:08 2011  Tanaka Akira  <akr@fsij.org>
20833
20834	* ext/sdbm/_sdbm.c (sdbm_prep): set FD_CLOEXEC flags for file
20835	  descriptors.
20836	  (fd_set_cloexec): new function.
20837
20838Fri Oct 28 03:01:27 2011  Aaron Patterson <aaron@tenderlovemaking.com>
20839
20840	* vm_insnhelper.c (vm_call_cfunc): adding back useless hack.  For some
20841	  reason, this fixes CFP errors on OS X 10.7.
20842
20843Fri Oct 28 00:09:31 2011  Tanaka Akira  <akr@fsij.org>
20844
20845	* ext/sdbm/_sdbm.c (sdbm_prep): refactored for less nesting.
20846
20847Thu Oct 27 18:28:18 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20848
20849	* configure.in (RUBY_DEFINE_IF): revert r33534 partially to get
20850	  rid of AS_ECHO which is not available in autoconf 2.61.
20851	  [ruby-dev:44702]
20852
20853Thu Oct 27 16:10:46 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20854
20855	* bignum.c (rb_big_divide): raise ZeroDivisionError if divisor is
20856	  zero, as well as Fixnum.  [ruby-core:40429] [Bug #5490]
20857
20858Thu Oct 27 14:56:22 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20859
20860	* configure.in (RUBY_FUNC_ATTRIBUTE): unset temporary variable.
20861
20862	* configure.in (RUBY_STACK_GROW_DIRECTION): substitute CPU name as
20863	  shell variable name.  based on the patch by The Written Word Inc. at
20864	  [ruby-core:40421].  [Bug #5488]
20865
20866Thu Oct 27 09:57:56 2011  NARUSE, Yui  <naruse@ruby-lang.org>
20867
20868	* include/ruby/ruby.h (SIZE_MAX): define SIZE_MAX if not defined.
20869	  patched by The Written Word Inc. [ruby-core:40422] [Bug #5489]
20870
20871Thu Oct 27 08:47:38 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
20872
20873	* ext/psych/parser.c: remove unused variable.
20874
20875Thu Oct 27 08:38:41 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
20876
20877	* ext/openssl/extconf.rb: add -Wall flag by default when compiler is
20878	  GCC.
20879
20880Wed Oct 26 15:24:25 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20881
20882	* file.c (rb_file_join): honor input encodings than ASCII-8BIT.
20883	  [ruby-core:40338] [Bug #5483]
20884
20885Tue Oct 25 21:52:31 2011  Tanaka Akira  <akr@fsij.org>
20886
20887	* include/ruby/defines.h: use "__sparc" instead of "sparc" and
20888	  "__sparc__".
20889
20890	* dln.c: ditto.
20891
20892	  [ruby-dev:44694]
20893
20894Tue Oct 25 06:34:39 2011  Eric Hodel  <drbrain@segment7.net>
20895
20896	* re.c (match_aref):  Use <code> around indexing examples to prevent
20897	  hyperlinks.  [ruby-talk:389396]
20898
20899Mon Oct 24 23:55:31 2011  Tanaka Akira  <akr@fsij.org>
20900
20901	* complex.c: use "__sun" instead of "__sun__" to detect SunOS.
20902
20903	* math.c: ditto.
20904
20905	* hash.c: ditto.
20906
20907	* atomic.h: ditto.
20908
20909	* ext/io/wait/wait.c: ditto.
20910
20911	[ruby-dev:44693]
20912
20913Mon Oct 24 22:45:37 2011  Tanaka Akira  <akr@fsij.org>
20914
20915	* io.c: use "__sun" instead of "sun" to detect SunOS.
20916
20917	* dln.c: ditto.
20918
20919	* cont.c: ditto.
20920
20921	* ext/sdbm/_sdbm.c: ditto.
20922
20923	[ruby-dev:44693]
20924
20925Mon Oct 24 22:38:08 2011  Tanaka Akira  <akr@fsij.org>
20926
20927	* ext/pty/pty.c (get_device_once): delay rb_fd_set_cloexec() until
20928	  grantpt() on Solaris.  grantpt() doesn't work with CLOEXEC on
20929	  Solaris 10.
20930	  reported by Naohisa GOTO.  [ruby-dev:44688] [Bug #5475]
20931
20932Mon Oct 24 08:18:14 2011  Tanaka Akira  <akr@fsij.org>
20933
20934	* io.c (copy_stream_fallback_body): check nil for EOF of read method.
20935	  patch by Eric Wong.  [ruby-core:39134] [Bug #5237]
20936
20937Sun Oct 23 18:21:23 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
20938
20939	* ext/tk/MANUAL_tcltklib.eng: fix typo.
20940
20941Sun Oct 23 18:03:31 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20942
20943	* numeric.c (rb_infinity, rb_nan): aggregated member initializers
20944	  need braces.
20945
20946Sun Oct 23 16:43:43 2011  Naohisa Goto  <ngotogenome@gmail.com>
20947
20948	* ext/io/wait/wait.c: ioctl(2) is declared in unistd.h on Solaris.
20949
20950Sun Oct 23 16:33:35 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
20951
20952	* ext/tk/MANUAL_tcltklib.eng: fix typo. reported by Mimura-san.
20953	  [ruby-dev:44683] [Bug #5471]
20954
20955Sun Oct 23 08:01:29 2011  Tanaka Akira  <akr@fsij.org>
20956
20957	* io.c (rb_fd_set_cloexec): set close-on-exec flag only if F_GETFD is
20958	  defined.  reported by Luis Lavena.  [ruby-core:40281] [Bug #5470]
20959
20960Sat Oct 22 19:48:50 2011  Tanaka Akira  <akr@fsij.org>
20961
20962	* test/openssl/test_ssl.rb (test_multibyte_read_write): start server
20963	  for each length to avoid race condition.
20964
20965Sat Oct 22 18:49:24 2011  Tanaka Akira  <akr@fsij.org>
20966
20967	* include/ruby/intern.h (rb_fd_set_cloexec): declared.
20968
20969	* io.c (rb_fd_set_cloexec): new function.
20970	  (ruby_dup): call rb_fd_set_cloexec to set close-on-exec flag.
20971	  (rb_sysopen_internal): ditto.
20972	  (rb_pipe): ditto.
20973	  (io_reopen): ditto.
20974	  (io_cntl): ditto.
20975
20976	* process.c (rb_f_exec): change the default :close_others option to
20977	  true.
20978	  (rb_f_system): ditto.
20979	  (move_fds_to_avoid_crash): call rb_fd_set_cloexec to set
20980	  close-on-exec flag.
20981	  (ruby_setsid): ditto.
20982	  (rb_daemon): ditto.
20983
20984	* thread_pthread.c (rb_thread_create_timer_thread): call
20985	  rb_fd_set_cloexec to set close-on-exec flag.
20986
20987	* ruby.c (load_file_internal): ditto.
20988
20989	* file.c (rb_file_s_truncate): ditto.
20990	  (file_load_ok): ditto.
20991
20992	* random.c (fill_random_seed): ditto.
20993
20994	* ext/pty/pty.c (chfunc): ditto.
20995	  (get_device_once): ditto.
20996
20997	* ext/openssl/ossl_bio.c (ossl_obj2bio): ditto.
20998
20999	* ext/socket/init.c (rsock_socket): ditto.
21000	  (rsock_s_accept_nonblock): ditto.
21001	  (rsock_s_accept): ditto.
21002
21003	* ext/socket/socket.c (rsock_sock_s_socketpair): ditto.
21004
21005	* ext/socket/ancdata.c (discard_cmsg): ditto.
21006	  (make_io_for_unix_rights): ditto.
21007
21008	* ext/socket/unixsocket.c (unix_recv_io): ditto.
21009
21010	* ext/io/console/console.c (console_dev): ditto.
21011
21012	[ruby-core:38140] [Feature #5041]
21013
21014Sat Oct 22 17:46:27 2011  Tanaka Akira  <akr@fsij.org>
21015
21016	* lib/resolv.rb: fix a exception name in previous patch.
21017
21018Sat Oct 22 17:43:33 2011  Tanaka Akira  <akr@fsij.org>
21019
21020	* lib/resolv.rb: make timeout configurable for DNS query.
21021	  patch by Eric Wong.  [ruby-core:38533] [Feature #5100]
21022
21023Sat Oct 22 02:07:48 2011  Naohisa Goto  <ngotogenome@gmail.com>
21024
21025	* numeric.c (rb_infinity, rb_nan): use union to prevent bus error
21026	  caused by misalignment.  [Bug #5469] [ruby-dev:44657]
21027
21028	* include/ruby/missing.h (INFINITY, NAN): ditto
21029
21030Fri Oct 21 22:02:17 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21031
21032	* gc.c (initial_params): pack in a struct.
21033
21034	* gc.c (rb_gc_set_params): set parameters always.
21035	  [ruby-dev:44648] [Bug #5467]
21036
21037Fri Oct 21 12:10:20 2011  Naohisa Goto  <ngotogenome@gmail.com>
21038
21039	* atomic.h: change Solaris checking macro because atomic_ops can work
21040	  not only with Sun Studio but also with Fujitsu C Compiler.
21041
21042Fri Oct 21 02:11:00 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
21043
21044	* ext/openssl/ossl_ns_spki.c: Complete documentation.
21045	* test/openssl/test_ns_spki.rb: Integrate SPKI#to_text.
21046
21047Thu Oct 20 22:47:28 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
21048
21049	* win32/win32.c (socklist_insert, socklist_lookup, socklist_delete):
21050	  new functions to wrap of st_insert(), st_lookup() and st_delete() to
21051	  socklist.
21052	  allocating socklist is deferred until it is really needed.
21053
21054	* win32/win32.c (exit_handler): delete socklist only if it is
21055	  initialized.
21056
21057	* win32/win32.c (rb_w32_sysinit, StartSockets): refactoring: move
21058	  initialization of select_mutex to StartSockets().
21059
21060	* win32/win32.c (exit_handler): refactoring: delete select_mutex only
21061	  if winsock is used.
21062
21063Thu Oct 20 22:38:53 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
21064
21065	* ext/openssl/ossl_pkcs5.c: add note on timing attacks and general
21066	  documentation.
21067
21068Thu Oct 20 21:19:15 2011  Naohisa Goto  <ngotogenome@gmail.com>
21069
21070	* vm_eval.c (check_funcall): set array elements one-by-one to fix
21071	  compile error with Fujitsu C Compiler 5.6 on Solaris 10 on Sparc.
21072	  [Bug #5464] [ruby-dev:44632]
21073
21074Thu Oct 20 13:09:35 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21075
21076	* include/ruby/defines.h (flush_register_windows): use software
21077	  trap on Debian Sparc 32-bit userspace.  [Bug #5244]
21078
21079Thu Oct 20 12:28:22 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
21080
21081	* test/openssl/test_pkcs5.rb: add RFC 6070 tests for PBKDF2 with
21082	  HMAC-SHA1
21083
21084Thu Oct 20 11:42:23 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21085
21086	* util.c (mmprepare): fix for fragmental size.
21087
21088	* util.c (mmswap_, mmrot3_): portability improvement.
21089
21090Thu Oct 20 05:58:02 2011  Eric Hodel  <drbrain@segment7.net>
21091
21092	* ext/openssl/ossl_ns_spki.c (Init_ossl_ns_spki):  Stub documentation
21093	  for Netscape SPKI.
21094
21095Thu Oct 20 05:13:39 2011  Ryan Davis  <ryand-ruby@zenspider.com>
21096
21097	* lib/minitest/*: Imported minitest 2.6.2 (r6712)
21098	* test/minitest/*: ditto
21099
21100Thu Oct 20 06:55:32 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
21101
21102	* lib/openssl/buffering.rb: Force multi-byte strings to be treated as
21103	  binary data.
21104	* test/openssl/test_ssl.rb: Add test for it.
21105
21106	Thanks to Niklas Baumstark for reporting the issue!
21107
21108	[Ruby 1.9 - Bug #5233] [ruby-core:39120]
21109
21110Wed Oct 19 17:06:54 2011  Yukihiro Matsumoto  <matz@ruby-lang.org>
21111
21112	* version.h (RUBY_VERSION): finally declare start of 2.0 work!
21113
21114Wed Oct 19 11:48:44 2011  Eric Hodel  <drbrain@segment7.net>
21115
21116	* error.c (Init_Exception):  Document $! and $@.  Provide
21117	  recommendations for creating exceptions for a library.
21118
21119Wed Oct 19 11:25:46 2011  Eric Hodel  <drbrain@segment7.net>
21120
21121	* error.c (Init_Exception):  Add hierarchy of Exception subclasses.
21122	  Based on patch by Sylvain Daubert.  [Ruby 1.9 - Bug #5438]
21123
21124Wed Oct 19 11:04:47 2011  Eric Hodel  <drbrain@segment7.net>
21125
21126	* enum.c: Reformat block args to a single standard, { |args| ... }.
21127	  Patch by b t.  [Ruby 1.9 - Bug #5393]
21128
21129Wed Oct 19 12:11:26 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
21130
21131	* ext/openssl/ossl_ssl.c: Remove set, but unused variables.
21132	  ext/openssl/ossl_pkey.c: ditto
21133
21134	* ext/openssl/ossl_pkey_dh.c: Make functions passed to
21135	  rb_thread_blocking_region return VALUE instead of void.
21136	  ext/openssl/ossl_pkey_dsa.c: ditto
21137	  ext/openssl/ossl_pkey_rsa.c: ditto
21138
21139Tue Oct 18 23:28:53 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21140
21141	* hash.c (identhash): share with type_numhash.
21142
21143	* st.c (st_hashtype_num): rename from type_numhash.
21144
21145Tue Oct 18 23:07:30 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21146
21147	* vm_core.h (ruby_current_thread): probeprofiler has been removed
21148	  long ago.
21149
21150Tue Oct 18 23:05:49 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21151
21152	* ext/ripper/eventids2.c (ripper_init_eventids2): separate
21153	  initializations of IDs and objects.
21154
21155	* ext/ripper/tools/generate.rb (generate_eventids1): ditto.
21156
21157	* parse.y (Init_ripper, InitVM_ripper): fix inversed roles.
21158
21159Sun Oct 16 19:46:16 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21160
21161	* ext/bigdecimal/bigdecimal.gemspec (files): fixed typo, and
21162	  removed nonexistent file.
21163
21164	* ext/bigdecimal/bigdecimal.gemspec (homepage): added.
21165
21166	* ext/io/console/io-console.gemspec (homepage): ditto.
21167
21168Fri Oct 14 12:13:57 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21169
21170	* ext/pty/pty.c (pty_check): should return nil until the child
21171	  terminates or stops.  [ruby-dev:44600] [Bug #2642]
21172
21173Fri Oct 14 11:19:37 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21174
21175	* include/ruby/intern.h (rb_ary_rotate): export.
21176
21177Fri Oct 14 05:58:05 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21178
21179	* atomic.h (ATOMIC_INC, ATOMIC_DEC): return old values.
21180	  [ruby-dev:44596] [Bug #5439]
21181
21182	* signal.c (ruby_atomic_exchange): no needs to define on the
21183	  platforms where atomic.h is available.
21184
21185Thu Oct 13 19:29:40 2011  Naohisa Goto  <ngotogenome@gmail.com>
21186
21187	* atomic.h (ATOMIC_*): use atomic_ops(3C) when SunStudio on Solaris.
21188	  [ruby-dev:44596] [Bug #5439]
21189
21190Thu Oct 13 18:13:04 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
21191
21192	* atomic.h(ATOMIC_SET): add cast to void to prevent misuse.
21193	  [ruby-dev:44596] [Bug #5439]
21194
21195Thu Oct 13 18:04:27 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21196
21197	* gc.c (rb_gc_finalize_deferred, rb_objspace_call_finalizer):
21198	  should use ATOMIC_EXCHANGE() to check the previous value.
21199	  [ruby-dev:44596] [Bug #5439]
21200
21201Wed Oct 12 23:39:58 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
21202
21203	* test/openssl/test_ssl.rb: Move duplicated tests for SSL::Session to
21204	  test_ssl_session.rb
21205
21206Tue Oct 11 08:49:40 2011  Eric Hodel  <drbrain@segment7.net>
21207
21208	* array.c (rb_ary_initialize):  Improve explanation of Array.new
21209	  parameters.  Patch by Alvaro Pereyra Rabanal.  [Ruby 1.9 - Bug #5425]
21210	* array.c (rb_ary_s_try_convert):  Fix typo (try => tries)
21211	* array.c (rb_ary_rindex):  Add spacing for block.
21212	* array.c (rb_ary_uniq_bang):  Describe block
21213	* array.c (rb_ary_uniq):  ditto
21214
21215Tue Oct 11 07:55:38 2011  Eric Hodel  <drbrain@segment7.net>
21216
21217	* array.c:  Add a description to Array, minor cleanups.  Patch by
21218	  Andrea Singh.  [Ruby 1.9 - Bug #5412]
21219
21220Tue Oct 11 06:09:52 2011  Eric Hodel  <drbrain@segment7.net>
21221
21222	* lib/pp.rb:  Move PP documentation to top of class PP.  Patch by
21223	  Sylvain Daubert.  [Ruby 1.9 - Bug #5430]
21224
21225Tue Oct 11 06:06:29 2011  Eric Hodel  <drbrain@segment7.net>
21226
21227	* ext/coverage/coverage.c (Init_coverage):  Change list format and
21228	  describe Coverage.result output.  Patch by Sylvain Daubert.
21229	  [Ruby 1.9 - Bug #5428]
21230
21231Tue Oct 11 05:53:23 2011  Eric Hodel  <drbrain@segment7.net>
21232
21233	* object.c (Init_Object):  Add reference to BasicObject, brief
21234	  explanation of constant lookup.  Based on patch by Alvaro Pereyra
21235	  Rabanal.
21236	  [Ruby 1.9 - Bug #5426]
21237
21238Sun Oct  9 11:06:52 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
21239
21240	* test/psych/test_yamldbm.rb: don't run test if the system
21241	  don't support yaml/dbm.
21242
21243	* test/syck/test_yamldbm.rb: ditto.
21244
21245Sat Oct  8 08:54:56 2011  Eric Hodel  <drbrain@segment7.net>
21246
21247	* enum.c (group_by):  Improve group_by description.  Patch by b t.
21248	  [#5411]
21249
21250Sat Oct  8 03:17:51 2011  Eric Hodel  <drbrain@segment7.net>
21251
21252	* lib/shell.rb:  Document some methods of Shell.  Patch by Carol
21253	  Nichols.  [Ruby 1.9 - Bug #5417]
21254
21255Fri Oct  7 17:54:28 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21256
21257	* lib/test/unit/assertions.rb (assert_send, assert_not_send):
21258	  parenthesize non-empty arguments.
21259
21260Fri Oct  7 06:35:50 2011  Eric Hodel  <drbrain@segment7.net>
21261
21262	* array.c:  Use + for arguments described in documentation to allow
21263	  rdoc -C2 to work better.  Remove <code> from method references to
21264	  allow cross-references in HTML documentation.
21265
21266Thu Oct  6 18:46:23 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
21267
21268	* vm_eval.c (make_no_method_exception): fix typo.
21269
21270	* vm_insnhelper.c, vm_insnhelper.h: ditto.
21271
21272Thu Oct  6 16:29:30 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21273
21274	* vm_eval.c (make_no_method_execption): extract from
21275	  raise_method_missing().
21276
21277	* vm_eval.c (send_internal): remove inadvertent symbol creation
21278	  from public_send.  based on a patch by Jeremy Evans <code AT
21279	  jeremyevans.net> in [ruby-core:38576]. [Feature #5112]
21280
21281	* vm_insnhelper.c (vm_call_method): remove inadvertent symbol
21282	  creation from send and __send__, too.
21283
21284Thu Oct  6 14:59:11 2011  Eric Hodel  <drbrain@segment7.net>
21285
21286	* lib/time.rb:  Clean up Time documentation.  Patch by Jake Goulding.
21287	  [Ruby 1.9 - Bug #5416]
21288
21289Thu Oct  6 10:00:54 2011  Eric Hodel  <drbrain@segment7.net>
21290
21291	* enum.c (group_by):  Improve documentation based on patch by b t.
21292
21293Thu Oct  6 09:56:30 2011  Eric Hodel  <drbrain@segment7.net>
21294
21295	* enum.c:  Clean up wording in Enumerable documentation.  Patch by b t.
21296	  [Ruby 1.9 - Bug #5411]
21297
21298Thu Oct  6 09:17:18 2011  Eric Hodel  <drbrain@segment7.net>
21299
21300	* time.c (Init_Time):  Remove editorial comments from Time
21301	  documentation, fix link.
21302
21303Thu Oct  6 09:14:20 2011  Eric Hodel  <drbrain@segment7.net>
21304
21305	* time.c (Init_Time):  Improve Time documentation.  Patch by Shane
21306	  Emmons.  [Ruby 1.9 - Bug #5404]
21307	* lib/time.rb:  Improve time.rb documentation including Time.strptime.
21308	  Patch by Shane Emmons.  [Ruby 1.9 - Bug #5402]
21309
21310Thu Oct  6 08:54:05 2011  Eric Hodel  <drbrain@segment7.net>
21311
21312	* random.c:  Improve documentation of Random.  Patch by Gregory
21313	  Parkhurst.  [Ruby 1.9 - Bug #5410]
21314
21315Thu Oct  6 01:44:51 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21316
21317	* cont.c (cont_mark): mark original Thread object from saved_thread.
21318	  [ruby-dev:44571] [Bug #5386]
21319
21320Wed Oct  5 16:33:04 2011  NARUSE, Yui  <naruse@ruby-lang.org>
21321
21322	* vm_insnhelper.c (vm_call_cfunc): remove useless hack.
21323
21324Wed Oct  5 05:56:39 2011  Eric Hodel  <drbrain@segment7.net>
21325
21326	* hash.c (Init_Hash):  Improve Hash documentation.  Patch by Alvaro
21327	  Pereyra Rabanal.  [Ruby 1.9 - Bug #5405]
21328
21329Wed Oct  5 05:47:59 2011  Eric Hodel  <drbrain@segment7.net>
21330
21331	* random.c (Init_Random):  Add a top-level comment for Random.  Patch
21332	  by Brett Bim.  [Ruby 1.9 - Bug #5403]
21333
21334Wed Oct  5 02:50:27 2011  Aaron Patterson <aaron@tenderlovemaking.com>
21335
21336	* ext/psych/lib/psych/syntax_error.rb: Add file, line, offset, and
21337	  message attributes during parse failure.
21338	* ext/psych/parser.c: Update parser to raise exception with correct
21339	  values.
21340	* test/psych/test_exception.rb: corresponding tests.
21341
21342Wed Oct  5 01:52:16 2011  Aaron Patterson <aaron@tenderlovemaking.com>
21343
21344	* ext/psych/parser.c (parse): Use context_mark for indicating error
21345	  line and column.
21346
21347Wed Oct  5 01:22:08 2011  Aaron Patterson <aaron@tenderlovemaking.com>
21348
21349	* ext/psych/lib/psych/scalar_scanner.rb: use normal begin / rescue
21350	  since postfix rescue cannot receive the exception class. Thanks
21351	  nagachika!
21352
21353Tue Oct  4 21:10:08 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21354
21355	* class.c (class_alloc): allocate extra memory after containing
21356	  object setup to get rid of rare-but-potential memory leak.
21357
21358	* gc.c (gc_mark_children): skip marking extended members if ptr is
21359	  NULL.
21360
21361Tue Oct  4 16:17:50 2011  NARUSE, Yui  <naruse@ruby-lang.org>
21362
21363	* lib/time.rb (Time.strptime): use Time.at if d[:seconds] is set.
21364	  Reported by Christopher Eberz. [ruby-core:39903] Bug #5399
21365
21366Tue Oct  4 11:44:10 2011  NARUSE, Yui  <naruse@ruby-lang.org>
21367
21368	* gc.c (rb_gc_set_params): ruby_verbose can be Qnil, so use RTEST.
21369
21370Tue Oct  4 08:33:41 2011  Eric Hodel  <drbrain@segment7.net>
21371
21372	* ext/etc/etc.c:  Document Etc, Etc.sysconfdir, Etc.systmpdir.  Patch
21373	  by mathew murphy.  [Ruby 1.9 - Bug #5396]
21374
21375Tue Oct  4 08:21:51 2011  Eric Hodel  <drbrain@segment7.net>
21376
21377	* lib/shellwords.rb:  Update toplevel comment with an example.  Patch
21378	  by Samnang Chhun.  [Ruby 1.9 - Bug #5388]
21379
21380Tue Oct  4 08:15:50 2011  Eric Hodel  <drbrain@segment7.net>
21381
21382	* proc.c (proc_call):  Update documentation to match argument handling
21383	  of proc/Proc.new/lambda/->()
21384
21385Tue Oct  4 07:59:16 2011  Eric Hodel  <drbrain@segment7.net>
21386
21387	* proc.c (proc_call):  Fix documentation of Proc#call vs Proc#===.
21388	  [Ruby 1.9 - Bug #5349]
21389
21390Tue Oct  4 07:43:18 2011  Eric Hodel  <drbrain@segment7.net>
21391
21392	* array.c (rb_ary_initialize):  Make Array.new description match
21393	  call-seq.  Patch by Henry Maddocks.  [Ruby 1.9 - Bug #5344]
21394
21395Tue Oct  4 07:35:23 2011  Eric Hodel  <drbrain@segment7.net>
21396
21397	* array.c (rb_ary_initialize):  Add output for examples.  Patch by
21398	  Jonathan Mukai.  [Ruby 1.9 - Bug #5216]
21399
21400Tue Oct  4 07:30:50 2011  Eric Hodel  <drbrain@segment7.net>
21401
21402	* array.c (rb_ary_s_create):  Add example results for Array::[].  Patch
21403	  by Jonathan Mukai.  [Ruby 1.9 - Bug #5215]
21404
21405Tue Oct  4 07:15:17 2011  Eric Hodel  <drbrain@segment7.net>
21406
21407	* lib/rubygems:  Update to RubyGems 1.8.11.  Move Deprecate into the
21408	  Gem namespace.
21409
21410Tue Oct  4 06:43:47 2011  Aaron Patterson <aaron@tenderlovemaking.com>
21411
21412	* ext/psych/lib/psych.rb: update psych version.
21413	* ext/psych/psych.gemspec: generate new gemspec for new version.
21414
21415Tue Oct  4 06:29:55 2011  Aaron Patterson <aaron@tenderlovemaking.com>
21416
21417	* ext/psych/lib/psych.rb: calling `yaml` rather than `to_yaml`.
21418	* ext/psych/lib/psych/nodes/node.rb: Rename `to_yaml` to just `yaml`
21419	  in order to avoid YAML::ENGINE switching from replacing this method.
21420	* test/psych/helper.rb: fix tests for method name change.
21421	* test/psych/test_document.rb: ditto
21422	* test/psych/visitors/test_emitter.rb: ditto
21423
21424Tue Oct  4 06:20:19 2011  Aaron Patterson <aaron@tenderlovemaking.com>
21425
21426	* ext/psych/lib/psych/scalar_scanner.rb: Match values against the
21427	  floating point spec defined in YAML to avoid erroneous parses.
21428	* test/psych/test_numeric.rb: corresponding test.
21429
21430Tue Oct  4 05:59:24 2011  Aaron Patterson <aaron@tenderlovemaking.com>
21431
21432	* ext/psych/lib/psych/visitors/to_ruby.rb: ToRuby visitor can be
21433	  constructed with a ScalarScanner.
21434	* ext/psych/lib/psych/visitors/yaml_tree.rb: ScalarScanner can be
21435	  passed to the YAMLTree visitor.
21436
21437Tue Oct  4 05:47:23 2011  Aaron Patterson <aaron@tenderlovemaking.com>
21438
21439	* ext/psych/lib/psych/visitors/to_ruby.rb: Define Regexp::NOENCODING
21440	  for 1.9.2 backwards compatibility.
21441	* ext/psych/lib/psych/visitors/yaml_tree.rb: Fix Date string
21442	  generation for 1.9.2 backwards compatibility.
21443
21444Mon Oct  3 23:56:39 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21445
21446	* gc.c (rb_gc_set_params): output GC parameter change messages only
21447	  if -w/-v options are specified. these messages are output to stderr,
21448	  not to stdout. [ruby-core:39795] [Bug #5380]
21449
21450	* test/ruby/test_gc.rb (test_gc_parameter): add test for it.
21451
21452Sun Oct  2 20:05:32 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
21453
21454	* vm.c (rb_thread_mark), cont.c (cont_mark): revert r33369 and r33371
21455	  that may cause SEGV in certain environments.
21456
21457Sun Oct  2 12:14:06 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21458
21459	* test/psych/test_yamldbm.rb: add test case.
21460	* test/syck/test_yamldbm.rb: ditto.
21461
21462Sun Oct  2 11:28:09 2011  Aaron Patterson <aaron@tenderlovemaking.com>
21463
21464	* lib/yaml/store.rb: make initialize method signature match the
21465	  superclass signature.
21466
21467Sun Oct  2 10:44:01 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
21468
21469	* io.c: fix documentation of ARGF.lineno=.
21470
21471Sat Oct  1 20:03:19 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21472
21473	* lib/mkmf.rb (have_framework): try as Objective-C.
21474	  https://twitter.com/nagachika/status/120294447660539904
21475
21476Sun Oct  2 08:43:25 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
21477
21478	* vm.c (rb_thread_mark), cont.c (cont_mark): self pointer should not
21479	  be marked by itself. Patch by Koichi Sasada.
21480	  [ruby-dev:44567] [Bug #5386]
21481
21482Sun Oct  2 00:42:14 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
21483
21484	* vm.c (rb_thread_mark): rb_thread_t needs self to be marked.
21485	  [ruby-dev:44566] [Bug #5386]
21486
21487Sat Oct  1 09:48:53 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21488
21489	* gc.c (add_heap_slots, init_heap): reset heaps_inc zero when
21490	  heap slots are expanded by environment variable RUBY_HEAP_MIN_SLOTS.
21491	  [ruby-core:39777] [Bug #5380]
21492
21493	* test/ruby/test_gc.rb (test_gc_parameter): add test for it.
21494
21495	* test/ruby/envutil.rb (assert_normal_exit): add :child_env option to
21496	  enable pass environment variables to child process.
21497
21498Thu Sep 29 13:17:51 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21499
21500	* array.c (ary_join_1): should not copy the encoding of non-string
21501	  element after string element.  [ruby-core:39776] [Bug #5379]
21502
21503Thu Sep 29 11:53:56 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21504
21505	* gc.c (slot_sweep, rb_gc_finalize_deferred)
21506	  (rb_objspace_call_finalizer, rb_gc): run finalizers
21507	  sequentially.  [ruby-dev:44562]
21508
21509Thu Sep 29 20:37:38 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21510
21511	* ext/gdbm/gdbm.c (rb_gdbm_fatal): adjust argument type.
21512
21513Thu Sep 29 20:10:42 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21514
21515	* gc.c (is_id_value, is_live_object): extract from id2ref().
21516
21517	* gc.c (run_finalizer): use object instead of object id.
21518
21519Thu Sep 29 20:07:36 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21520
21521	* use RB_TYPE_P which is optimized for constant types, instead of
21522	  comparison with TYPE.
21523
21524Wed Sep 28 09:20:37 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21525
21526	* configure.in (pthread_np.h): needs pthread.h to be included
21527	  previously on OpenBSD.  a patch by George Koehler <xkernigh AT
21528	  netscape.net> at [ruby-core:39752].  [Bug #5376]
21529
21530Wed Sep 28 04:41:35 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21531
21532	* test/psych/test_yamlstore.rb: use tmpdir for tmpfile.
21533	* test/syck/test_yamlstore.rb: ditto.
21534
21535Wed Sep 28 04:10:46 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21536
21537	* ext/bigdecimal/README: update report to.
21538
21539Tue Sep 28 04:05:00 2011  Kenta Murata  <mrkn@mrkn.jp>
21540
21541	* ext/bigdecimal/bigdecimal_en.html: removed because this file isn't
21542	  maintained now.
21543
21544	* ext/bigdecimal/bigdecimal_ja.html: ditto.
21545
21546Tue Sep 27 09:55:40 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
21547
21548	* thread_pthread.c: make native_fd_select().
21549	* thread.c (do_select): remove #ifdef _WIN32. Instead, use
21550	  native_fd_select() always.
21551
21552Tue Sep 27 09:44:59 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
21553
21554	* thread.c (do_select): remove cygwin specific hack. It's layer
21555	  violation and too large hack.
21556	* thread.c (cmp_tv, subtract_tv): removed.
21557
21558Tue Sep 27 03:50:19 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21559
21560	* test/rexml/test_sax.rb: add require 'rexml/document'.
21561
21562Tue Sep 27 03:32:27 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21563
21564	* test/psych/test_yamldbm.rb: fix #setup and #teardown.
21565	  [Bug #5370] [ruby-core:39730]
21566	* test/syck/test_yamldbm.rb: ditto.
21567
21568Mon Sep 26 11:27:38 2011  NARUSE, Yui  <naruse@ruby-lang.org>
21569
21570	* lib/webrick/httputils.rb: Add MIME Type definition of .js and .svg.
21571	  patched by Hal Brodigan. [ruby-core:39704] [Bug #5365]
21572
21573Mon Sep 26 09:20:44 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
21574
21575	* configure.in: remove DJGPP support. It's not longer supported
21576	  since ruby 1.9.0.
21577
21578Mon Sep 26 09:07:46 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
21579
21580	* include/ruby/defines.h: remove NextStep, OpenStep, Rhapsody
21581	  support. Last activity of their OSes are 7 years ago.
21582	* configure.in: ditto.
21583	* dir.c: ditto.
21584	* ext/tk/extconf.rb: ditto.
21585
21586Mon Sep 26 09:02:49 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
21587
21588	* configure.in: remove a code for human68k. it's no longer
21589	  supported since r19677.
21590
21591Sun Sep 25 23:43:32 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
21592
21593	* ext/openssl/ossl_asn1.c: fix int_ossl_asn1_decode0_cons when being
21594	  fed arbitrary string values.
21595	  Clearly distinguish between the cases "universal, infinite and
21596	  not a SEQUENCE or SET" and "universal SEQUENCE or SET, possibly
21597	  infinite". Raise error for universal tags that are not infinite.
21598	* test/openssl/test_asn1.rb: add a test for this.
21599
21600	  Thanks to Hiroshi Yoshida for reporting this bug.
21601	  [Bug #5363] [ruby-dev:44542]
21602
21603Sun Sep 25 20:57:18 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21604
21605	* test/syck/test/yamldbm.rb: add test for Syck::DBM.
21606	* test/psych/test_yamldbm.rb: add test for Psych::DBM.
21607	* test/psych/test_yamlstore.rb: add test for Psych::PStore.
21608
21609Sun Sep 25 20:54:10 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21610
21611	* lib/yaml/dbm/dbm.rb: fix #update, add #key for using instead #index.
21612	  [Bug #5305][ruby-dev:44485]
21613
21614Sun Sep 25 16:54:33 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21615
21616	* encoding.c (require_enc): reject only loading from untrusted
21617	  load paths.  [ruby-dev:44541] [Bug #5279]
21618
21619	* transcode.c (load_transcoder_entry): ditto.
21620
21621Sun Sep 25 16:45:05 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21622
21623	* configure.in: ignore all warnings from an arbitrary
21624	  header in /usr/local/include.
21625
21626Sun Sep 25 03:43:03 2011  NARUSE, Yui  <naruse@ruby-lang.org>
21627
21628	* enum.c (slice_before_i): use rb_attr_get to suppress wrong warning
21629	  for internal instance variable slicebefore_initial_state.
21630
21631Fri Sep 23 14:20:14 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
21632
21633	* ext/openssl/ossl_asn1.c: remove unused variable.
21634
21635Fri Sep 23 13:46:59 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
21636
21637	* test/openssl/test_ssl_session.rb: execute test_session_exts_read
21638	  only for OpenSSL versions >= 0.9.8k. Thanks, Eric Wong, for
21639	  reporting this.
21640	  [Bug #4961] [ruby-core:37726]
21641
21642Fri Sep 23 11:59:08 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
21643
21644	* test/openssl/test_ssl_session.rb: ensure server calls callbacks in
21645	  test_ctx_server_session_cb. Thanks to Eric Wong for the patch.
21646	  [Bug #5336] [ruby-core:39619]
21647
21648Thu Sep 22 02:53:19 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21649
21650	* vm_insnhelper.c (vm_call_cfunc): suppress a warning.  note that
21651	  `volatile type *var' doesn't make var itself volatile.
21652
21653Thu Sep 22 01:52:48 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21654
21655	* thread_pthread.c (ubf_select): activate timer thread when interrupt
21656	  blocking thread.
21657	  A patch created by Koichi Sasada. [ruby-core:39634] [Bug #5343]
21658	  to cover race condition, timer thread periodically send SIGVTARLM to
21659	  threads in signal thread list. so you should activate timer thread
21660	  when interrupt a thread.
21661
21662Wed Sep 21 16:55:26 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
21663
21664	* test/io/wait/test_io_wait.rb (TestIOWait#setup): of course, the
21665	  behavior of mingw is just same with mswin.
21666
21667Tue Sep 20 18:08:51 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21668
21669	* vm_insnhelper.c (vm_get_cvar_base): reduce duplicated checks and
21670	  move a warning outside the loop.
21671
21672Mon Sep 19 18:55:51 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21673
21674	* lib/fileutils.rb (module FileUtils): improve performance of
21675	  FileUtils.compare_stream. a patch by Masaki Matsushita.
21676	  [Feature #5337] [ruby-core:39622]
21677
21678Mon Sep 19 18:42:58 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
21679
21680	* test/-ext-/old_thread_select/test_old_thread_select.rb:
21681	  select() with timeout may return early in old Linux kernels
21682	  with 250 Hz tickrate and no dynticks, so skip everything older
21683	  than 2.6.32 (which has long term support).
21684	  And, Make the timing assertions consistently use assert_operator with
21685	  timing difference in error message
21686	  Patch by Eric Wong. [Bug #5335] [ruby-core:39618]
21687
21688Mon Sep 19 09:28:06 2011  Eric Hodel  <drbrain@segment7.net>
21689
21690	* test/openssl/test_ssl.rb (class OpenSSL):  Test
21691	  OpenSSL::SSL::SSLSocket#session and #session=.
21692
21693Mon Sep 19 07:54:17 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21694
21695	* object.c (rb_obj_clone): singleton class should be attached
21696	  singleton object to.  a patch by Satoshi Shiba <shiba AT rvm.jp>
21697	  at [ruby-dev:44460].  [Bug #5274]
21698
21699Sat Sep 17 23:34:10 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21700
21701	* parse.y (parser_data_type): inherit the core type in ripper so
21702	  that checks in core would work.  [ruby-core:39591] [Bug #5331]
21703
21704Sat Sep 17 12:44:04 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
21705
21706	* lib/find.rb (Find.find): add documentation that Find.find
21707	  without block returns an enumerator.
21708
21709Thu Sep 15 11:39:43 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21710
21711	* gc.c (mark_entry, mark_key, mark_keyvalue): adjust callback
21712	  argument types.
21713
21714Thu Sep 15 01:44:10 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21715
21716	* ext/tk/*: Change encoding from EUC-JP to UTF-8
21717
21718Wed Sep 14 11:43:37 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
21719
21720	* thread.c (rb_fd_rcopy): added an argument guard.
21721	  Patch by NAKAMURA Usaku. [Bug #5306] [ruby-core:39435]
21722
21723Tue Sep 13 20:21:49 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21724
21725	* lib/pstore.rb, test/test_pstore.rb: suppress warnings with -v.
21726
21727	* lib/pstore.rb (PStore): always open in binary mode even if
21728	  default encodings are set.  [Bug #5311] [ruby-core:39503]
21729
21730Tue Sep 13 05:37:15 2011  Yukihiro Matsumoto  <matz@ruby-lang.org>
21731
21732	* io.c (Init_IO): update BINARY comment.  it should not change the
21733	  encoding of the result to ASCII-8BIT.  [ruby-talk:387719]
21734
21735Mon Sep 12 19:55:00 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
21736
21737	* thread.c (rb_thread_select): fix to ignore an argument
21738	  modification of rb_thread_fd_select().
21739	  based on a patch by Eric Wong. [Bug #5306] [ruby-core:39435]
21740	* thread.c (rb_fd_rcopy): New. for reverse fd copy.
21741
21742	* test/-ext-/old_thread_select/test_old_thread_select.rb
21743	(test_old_select_false_positive): test for bug5306.
21744
21745	* ext/-test-/old_thread_select/old_thread_select.c (fdset2array):
21746	  New. convert fdsets to array.
21747	* ext/-test-/old_thread_select/old_thread_select.c (old_thread_select):
21748	  return 'read', 'write', 'except' argument of rb_thread_select()
21749	  to ruby script.
21750
21751Mon Sep 12 13:38:12 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21752
21753	* README.EXT, README.EXT.ja (2.2.2), parse.y (rb_check_id): add
21754	  documents for rb_check_id().
21755
21756Mon Sep 12 12:53:39 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
21757
21758	* lib/rake/file_list.rb (Rake::FileList#egrep): there is no need to
21759	  open files in binary mode.
21760	  see more details in https://github.com/jimweirich/rake/issues/74
21761
21762Mon Sep 12 12:42:36 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21763
21764	* test/ruby/test_exception.rb (TestException#test_exit_success_p):
21765	  assert also the cases when exiting with true and false.
21766
21767	* lib/test/unit/assertions.rb (assert_send): make arguments in
21768	  the default message clearer.
21769
21770Sun Sep 11 05:23:14 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
21771
21772	* lib/matrix.rb: Deal with subclasses of Matrix [redmine #5307]
21773
21774Sat Sep 10 13:38:20 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21775
21776	* dir.c (dir_s_aref):
21777	* dir.c (dir_entries): Two small documentation fixes.
21778	  A patch from Aaron Lerch. [Bug #5302] [ruby-core:39404]
21779
21780Sat Sep 10 08:30:03 2011  Koichi Sasada  <ko1@atdot.net>
21781
21782	* gc.c (GC_PROFILE_MORE_DETAIL, CALC_EXACT_MALLOC_SIZE):
21783	  define macros only if they are not defined.
21784	  fixes: [Ruby 1.9 - Feature #5291]
21785
21786Sat Sep 10 08:25:47 2011  Yukihiro Matsumoto  <matz@ruby-lang.org>
21787
21788	* parse.y (bv_decls): parse.y relies on $$ = $1 before action
21789	  routines.  a patch from Michael Edgar.  [Bug #5303]
21790	  [ruby-core:39429]
21791
21792Sat Sep 10 01:37:55 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
21793
21794	* sample/drb/dhasenc.rb: coding cookie of Emacs is coding,
21795	  not encoding.
21796
21797	* sample/mine.rb: ditto.
21798
21799Fri Sep  9 21:56:40 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21800
21801	* ext/bigdecimal/bigdecimal.c (BigDecimal_sqrt): Fix comment.
21802	  BigDecimal#sqrt requires argument. Reported by Makoto Kishimoto.
21803	  Thanks for your contribution. [Bug #5267] [ruby-dev:44452]
21804
21805Fri Sep  9 11:00:55 2011  Shota Fukumori  <sorah@tubusu.net>
21806
21807	* test/rubygems/test_gem_commands_help_command.rb: Add one
21808	  `require` because if run test-all with test/unit parallel
21809	  running, sometimes this test fails by some constants not found.
21810	  The error reason is some worker doesn't require the file needed by
21811	  this test. This issue is related to [ruby-core:36168].
21812
21813Fri Sep  9 10:22:03 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21814
21815	* thread.c (rb_thread_select): fix a typo to initialize efds
21816	  properly.  [Bug #5299] [ruby-core:39380]
21817
21818Fri Sep  9 02:02:09 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21819
21820	* template/yarvarch.ja:
21821	  Change encoding from Shift_JIS to UTF-8
21822
21823Thu Sep  9 01:14:00 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21824
21825	* sample/drb/README.rd.ja:
21826	* sample/drb/dhasenc.rb:
21827	* sample/mine.rb:
21828	  Change encoding from EUC-JP to UTF-8
21829
21830Thu Sep  8 21:03:22 2011  NARUSE, Yui  <naruse@ruby-lang.org>
21831
21832	* ext/nkf/nkf-utf8/nkf.c: import nkf 2.1.2 (be9c280)
21833	  Bump version number/release date only.
21834
21835Thu Sep  8 12:43:18 2011  Narihiro Nakamura  <authornari@gmail.com>
21836
21837	* gc.c (Init_GC): defined GC::Profiler.raw_data. based on the
21838	  patch by Eric Hodel. [ruby-core:37857] [Bug #4991]
21839
21840Thu Sep  8 09:02:53 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21841
21842	* gc.c (id2ref): objects which are unmarked but not in sweep_slots
21843	  are not dead.
21844
21845Thu Sep  8 07:44:25 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21846
21847	* transcode.c (rb_declare_transcoder, load_transcoder_entry): no
21848	  longer need to limit the length of transcoder library name.
21849
21850Thu Sep  8 07:36:36 2011  NARUSE, Yui  <naruse@ruby-lang.org>
21851
21852	* ext/syck/lib/syck/types.rb: use toplevel Syck.
21853	  for the case someone define Syck::Syck (or YAML::Syck).
21854
21855Thu Sep  8 07:33:12 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21856
21857	* gc.c (id2ref): unmarked object is already dead while lazy
21858	  sweeping, and to it cannot come back since other objects
21859	  referred from it might have been freed already.
21860
21861Wed Sep  8 03:48:00 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21862
21863	* ext/readline/README.ja:
21864	  Change encoding from EUC-JP to UTF-8
21865
21866Wed Sep  8 02:59:00 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21867
21868	* test/rexml/test_encoding.rb:
21869	  Add require 'require 'rexml/document'
21870
21871Wed Sep  8 02:53:00 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21872
21873	* ext/nkf/nkf-utf8/nkf.c:
21874	  Change encoding from ISO-2022 to UTF-8
21875
21876Wed Sep  7 23:41:24 2011  Kouhei Sutou  <kou@cozmixng.org>
21877
21878	* lib/rexml/parsers/baseparser.rb, test/rexml/test_comment.rb:
21879	  allow a single hyphen in comment. [Bug #5278] [ruby-core:39289]
21880	  Reported by Thomas Fritzsche. Thanks!!!
21881
21882Wed Sep  7 17:27:18 2011  NARUSE, Yui  <naruse@ruby-lang.org>
21883
21884	* lib/yaml.rb: explicitly specify ::Object to avoid the collision with
21885	  Syck::Object.
21886
21887Tue Sep  6 21:06:49 2011  Shota Fukumori  <sorah@tubusu.net>
21888
21889	* lib/test/unit.rb (_run_suites): Now reports are written the
21890	  following order: Skip, Failure, Error. [Feature #5282]
21891
21892	* test_sorting.rb: test for above.
21893
21894	* test4test_sorting.rb: Ditto.
21895
21896	* lib/test/unit.rb (run): Put RUBY_DESCRIPTION before quitting.
21897	  [Feature #5282]
21898
21899Tue Sep  6 21:13:47 2011  Masaya Tarui  <tarui@ruby-lang.org>
21900
21901	* win32/Makefile.sub (INSNS): change command line option -Ks to -Ku
21902	  for generate *.inc. because insns.def encoding has been changed SJIS
21903	  to UTF-8. if $BASERUBY is 1.9, -Ks cause an error. [Feature #5128]
21904	  (same as r33194)
21905
21906Tue Sep  6 15:55:24 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21907
21908	* transcode.c (load_transcoder_entry): concatenate paths directly.
21909
21910	* encoding.c (load_encoding): predefined encoding names are safe.
21911	  [ruby-dev:44469] [Bug #5279]
21912
21913	* transcode.c (load_transcoder_entry): ditto.
21914
21915Tue Sep  6 12:07:10 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21916
21917	* transcode.c: enabled econv newline option.
21918
21919Tue Sep  6 06:44:57 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
21920
21921	* numeric.c (dbl2ival): Fix Float#divmod and #round for 32 bit
21922	  platform. part 1 of [bug #5276]
21923
21924Tue Sep  6 06:44:25 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
21925
21926	* numeric.c (flo_round): Fix criteria for 32 bits platform
21927	  part 2 of [bug #5276]
21928
21929Tue Sep  6 05:37:11 2011  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
21930
21931	* test/rinda/test_rinda.rb (test_core_03_notify): Fixed test failures
21932	  [ruby-dev:44430] [Ruby 1.9 - Bug #372]
21933
21934Mon Sep  5 20:59:30 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21935
21936	* insns.def: change encoding pragma for emacs (shift_jis to utf-8).
21937
21938Mon Sep  5 19:32:15 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
21939
21940	* Makefile.in (INSNS): change command line option -Ks to -Ku for
21941	  generate *.inc. because insns.def encoding has been changed SJIS to
21942	  UTF-8. if $BASERUBY is 1.9, -Ks cause an error. [Feature #5128]
21943
21944Mon Sep  5 18:10:56 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21945
21946	* transcode.c (rb_econv_binmode): newline decorators are
21947	  exclusive.
21948
21949Mon Sep  5 15:03:37 2011  NARUSE, Yui  <naruse@ruby-lang.org>
21950
21951	* test/rubygems/test_gem_security.rb
21952	  (test_class_build_self_signed_cert): reset opt[:trust_dir] to apply
21953	  temporary Gem.user_home.
21954
21955Mon Sep  5 10:04:35 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21956
21957	* README.ja, README.EXT.ja: resolve conflicts. [ruby-dev:44459]
21958
21959Mon Sep  5 05:13:22 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
21960
21961	* numeric.c (flo_round): Make Float#round round big values [bug
21962	  #5272]
21963
21964Mon Sep  5 04:28:25 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
21965
21966	* numeric.c (int_round): Integer#round always returns an Integer [Bug
21967	  #5271]
21968
21969Sun Sep  4 22:28:50 2011  Shugo Maeda  <shugo@ruby-lang.org>
21970
21971	* lib/net/imap.rb (default_port, default_imap_port,
21972	  default_tls_port, default_ssl_port, default_imaps_port):
21973	  added methods for consistency with Net::POP.
21974	  based on the patch by art lussos.  [ruby-core:38997] [Bug #5198]
21975
21976Sun Sep  4 21:19:19 2011  Ayumu AIZAWA  <ayumu.aizawa@gmail.com>
21977
21978	* Change encoding from EUC-JP to UTF-8. [Feature #5128]
21979
21980Sun Sep  4 00:47:39 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
21981
21982	* test/ruby/test_fiber.rb (TestFiber#test_no_valid_cfp):
21983	  add a test. Unlike TestThread#test_no_valid_cfp,
21984	  this test succeeds even if win32ole is required (see r33153).
21985
21986Sun Sep  4 00:11:49 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21987
21988	* variable.c (rb_const_set): show the previous definition
21989	  location.  [EXPERIMENTAL]
21990
21991Sat Sep  3 23:56:24 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21992
21993	* configure.in (sizeof_struct_dirent_too_small): check if struct
21994	  dirent.d_name is too small.
21995
21996	* configure.in (RUBY_MINGW32): take tool prefix from CC.
21997
21998Sat Sep  3 23:52:08 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21999
22000	* io.c (argf_next_argv): open in default text mode.
22001	  [ruby-core:39234] [Bug #5268]
22002
22003Sat Sep  3 18:40:57 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
22004
22005	* lib/thread.rb (SizedQueue#max=): raise ArgumentError if max is not
22006	  positive number. patch by Masaki Matsushita.
22007	  [ruby-dev:44449] [Bug #5259]
22008
22009	* test/thread/test_queue.rb (test_sized_queue_initialize,
22010	  test_sized_queue_assign_max): add tests for it.
22011
22012Fri Sep  2 21:11:16 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22013
22014	* io.c (validate_enc_binmode, prep_stdio): default to text mode on
22015	  dosish platforms.  [ruby-core:38822] [Bug #5164]
22016
22017	* transcode.c (rb_econv_prepare_options): keep default ecflags
22018	  unchanged if no options.
22019
22020Fri Sep  2 14:36:47 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22021
22022	* vm_insnhelper.c (vm_search_const_defined_class): search
22023	  ancestors only when global scope.  [ruby-core:39227] [Bug #5264]
22024
22025Fri Sep  2 09:58:08 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22026
22027	* parse.y (parser_tokadd_string, parser_yylex): ignore a backslash
22028	  which prefixes an non-ascii character, which has no escape
22029	  syntax.  [ruby-core:39222] [Ruby 1.9 - Bug #5262]
22030
22031Fri Sep  2 04:05:25 2011  Aaron Patterson <aaron@tenderlovemaking.com>
22032
22033	* ext/psych/lib/psych/visitors/yaml_tree.rb: emit strings tagged as
22034	  ascii-8bit as binary in YAML.
22035	* test/psych/test_string.rb: corresponding test.
22036
22037Fri Sep  2 01:07:14 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22038
22039	* numeric.c (flo_round): substitute machine dependent magic number.
22040
22041Thu Sep  1 17:31:22 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22042
22043	* insns.def (defineclass), vm_insnhelper.c (vm_get_cvar_base): see
22044	  also inherited constants for classes without superclass and
22045	  modules.  [ruby-core:37698] [Bug #3423]
22046
22047Thu Sep  1 16:18:44 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
22048
22049	* Release GVL while OpenSSL's public key generation.
22050
22051	    t = Thread.new { print "."; sleep 0.1 }
22052	    key = OpenSSL::PKey::RSA.new(2048)
22053	    #=> Thread t works in parallel with public key generation if
22054		OS/machine allows it.
22055
22056	  This works with OpenSSL >= 0.9.8. From this version, it has new
22057	  public key generation function which allows us to interrupt the
22058	  execution while pkey generation iterations.
22059
22060	* ext/openssl/extconf.rb: Check existence of OpenSSL's new public key
22061	  generation function. (DH_generate_parameters_ex,
22062	  DSA_generate_parameters_ex and RSA_generate_key_ex.
22063
22064	* ext/openssl/ossl_pkey.{h,c} (ossl_generate_cb_2,
22065	  ossl_generate_cb_stop): Added new callback function for OpenSSL pkey
22066	  generation which handles Thread interruption by Ruby.
22067	  ossl_generate_cb_stop is the unblock function(ubf) for Ruby which
22068	  sets a stop flag. New pkey generation callback ossl_generate_cb_2
22069	  checks the stop flag at each iterations of OpenSSL and interrupts
22070	  pkey generation when the flag is set.
22071
22072	* ext/openssl/ossl_pkey_dsa.c (dsa_generate): Call
22073	  rb_thread_blocking_region with the above unblock function to release
22074	  GVL while pkey generation.
22075
22076	* ext/openssl/ossl_pkey_rsa.c (rsa_generate): ditto.
22077
22078	* ext/openssl/ossl_pkey_dh.c (dh_generate): ditto.
22079
22080	* test/openssl/test_pkey_{dh,dsa,rsa}.rb: Test it.
22081
22082Thu Sep  1 14:06:54 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22083
22084	* test/ruby/test_thread.rb (TestThread#test_no_valid_cfp): skip when
22085	  win32ole is required.  in such case, win32ole redefines
22086	  Thread#initialize, and the block argument becomes to be not the top
22087	  of the thread, then this testcase always fails.
22088
22089Thu Sep  1 10:20:50 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22090
22091	* test/ruby/test_io_m17n.rb (TestIO_M17N#test_{default_mode_on_dosish,
22092	  default_mode_on_unix,text_mode,binary_mode}): sorry for wrong test
22093	  committed in r33144.  I'd misunderstood the spec of ruby's universal
22094	  newline.
22095
22096Thu Sep  1 09:27:57 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22097
22098	* variable.c (rb_autoloading_value): Fix the order of definitions.
22099	  It is used by autoload_defined_p.
22100
22101Wed Aug 31 17:28:23 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
22102
22103	* variable.c (rb_autoload): There was a chance to run GC (from
22104	  rb_str_new2()) before finishing autoload_data_i construction. It
22105	  caused SEGV at rb_gc_mark() at autoload_i_mark.
22106
22107	* variable.c (rb_autoload_load): Move RB_GC_GUARD() to proper
22108	  position based on suggestion by CHIKANAGA Tomoyuki at
22109	 http://d.hatena.ne.jp/nagachika/20110826/ruby_trunk_changes_33070_33078
22110
22111	* variable.c (autoload_defined_p): Fix incompatible autoload behavior
22112	  that causes Rails crash. Class definition instruction defined in
22113	  'defineclass' in insns.def always invokes rb_autoload_load for a
22114	  constant. It's invoked for every class definition regardless of
22115	  existence of autoload definition. rb_autoload_load checks if a
22116	  constant is defined as autoloaded, but new thread-safe autoload
22117	  returned different value if the constant is under autoloading.
22118
22119Wed Aug 31 17:20:56 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
22120
22121	* Re-apply r33078, thread-safe autoload which is reverted at r33093.
22122
22123Wed Aug 31 16:28:04 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22124
22125	* test/ruby/test_io_m17n.rb (TestIO_M17N#test_{default_mode_on_dosish,
22126	  default_mode_on_unix,text_mode,binary_mode}): tests for [Bug #5164].
22127
22128Wed Aug 31 15:54:11 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22129
22130	* ext/json: Merge json gem v1.5.4 (3dab4c5a6a97fac03dac).
22131
22132Wed Aug 31 13:09:41 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
22133
22134	* numeric.c (flo_round): Avoid overflow by optimizing for trivial
22135	  cases [Bug #5227]
22136
22137Wed Aug 31 00:50:01 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22138
22139	* win32/win32.c (rb_w32_select_with_thread): and my typo. we all must
22140	  be more careful.
22141
22142Wed Aug 31 00:48:38 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22143
22144	* thread.c (rb_thread_select): critical typo in r33117.
22145
22146Wed Aug 31 00:30:49 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22147
22148	* test/-ext-/old_thread_select/test_old_thread_select.rb
22149	  (TestOldThreadSelect#test_old_select_read_timeout): if the machine
22150	  is fast enough, the time used by code around IO.select may be smaller
22151	  than Time implement threshold.
22152
22153Wed Aug 31 00:04:38 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22154
22155	* ext/-test-/old_thread_select/old_thread_select.c (old_thread_select):
22156	  typo.
22157
22158	* test/-ext-/old_thread_select/test_old_thread_select.rb
22159	  (TestOldThreadSelect#test_old_select_signal_safe): use SIGINT instead
22160	  of SIGUSR1 because the former is general and the latter is platform
22161	  dependent.
22162
22163Tue Aug 30 23:59:36 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22164
22165	* win32/win32.c, include/ruby/intern.h (rb_w32_fd_copy): implement
22166	  for rb_thread_select() in thread.c.  the use of rb_fd_copy() is
22167	  introduced in r33117.
22168	  [Bug #5251] [ruby-core:39195]
22169
22170	* thread.c (rb_thread_select): must call rb_fd_init() before using
22171	  rb_fdset_t.  see the implementations of rb_fd_init()s if you want to
22172	  know the reason.
22173
22174Tue Aug 30 22:34:45 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
22175
22176	* test/dl/test_callback.rb (test_callback_with_string): prevents
22177	  temporary string from GC.
22178
22179Tue Aug 30 22:25:38 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
22180
22181	* vm_insnhelper.c (vm_call_cfunc): revert r33112.  RB_GC_GUARD macro
22182	  protect a VALUE from GC.  It's not for general anti-optimizing
22183	  purpose.
22184
22185Tue Aug 30 11:06:19 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22186
22187	* ext/json: Merge json gem 1.5.4+ (2149f4185c598fb97db1).
22188	  [Bug #5173] [ruby-core:38866]
22189
22190Tue Aug 30 09:57:50 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22191
22192	* lib/thread.rb (Queue#pop): fix a race against Thread.wakeup.
22193	  Patch by Masaki Matsushita <glass.saga at gmail dot com>
22194	  [Bug #5195] [ruby-dev:44400]
22195
22196Tue Aug 30 09:48:07 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22197
22198	* cont.c (fiber_entry): fix stack allocation failure on Debian
22199	  GNU/kFreeBSD.
22200	  Patch by Lucas Nussbaum <lucas at lucas-nussbaum dot net>.
22201	  [Bug #5241] [ruby-core:39147]
22202
22203Tue Aug 30 09:28:01 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22204
22205	* thread.c (rb_thread_select): rewrite by using
22206	  rb_thread_fd_select(). old one is EINTR unsafe.
22207	  Patch by Eric Wong. [Bug #5229] [ruby-core:39102]
22208
22209	* test/-ext-/old_thread_select/test_old_thread_select.rb:
22210	  a testcase for rb_thread_select().
22211	* ext/-test-/old_thread_select/old_thread_select.c: ditto.
22212	* ext/-test-/old_thread_select/depend: ditto.
22213	* ext/-test-/old_thread_select/extconf.rb: ditto.
22214
22215Tue Aug 30 09:08:22 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22216
22217	* configure.in: fix a build failure on GNU Hurd.
22218	  Patch by Samuel Thibault <sthibault at debian dot org>. Thank you!
22219	  [Bug #5250] [ruby-core:39185]
22220
22221Sun Aug 29 23:22:00 2011  Kenta Murata  <mrkn@mrkn.jp>
22222
22223	* test/ruby/test_numeric.rb (test_num2long): modify a test against the
22224	  change by r33108.
22225
22226Sun Aug 29 09:58:00 2011  Kenta Murata  <mrkn@mrkn.jp>
22227
22228	* numeric.c (bit_coerce): A Fixnum and a Bignum are only permitted for
22229	 bitwise arithmetic with a Fixnum.  #1792
22230
22231	* test/ruby/test_fixnum.rb: add tests for the above change.
22232
22233	* bignum.c (bit_coerce): A Fixnum and a Bignum are only permitted for
22234	 bitwise arithmetic with a Bignum.  #1792
22235
22236	* test/ruby/test_bignum.rb: add tests for the above change.
22237
22238Sun Aug 28 15:38:17 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
22239
22240	* ext/date/date_parse.c (date_zone_to_diff): keep a temporary string
22241	  stored in variable while the contents buffer is being used.
22242
22243	* ext/date/date_parse.c (date_zone_to_diff): get rid of out of bounds
22244	  memory read. [ruby-dev:44409] [Bug #5213]
22245
22246Sun Aug 28 05:29:50 2011  Ryan Davis  <ryand-ruby@zenspider.com>
22247
22248	* lib/minitest/*: Imported minitest 2.5.1 (r6596)
22249	* test/minitest/*: ditto
22250
22251Sat Aug 27 20:46:05 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
22252
22253	* vm.c (rb_vm_rewrite_dfp_in_errinfo): change return type
22254	  to suppress a warning.
22255
22256	* vm_core.h: ditto.
22257
22258Sat Aug 27 19:04:06 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22259
22260	* internal.h (rb_strftime_timespec): moved from time.c and define only
22261	  if ruby/encoding.h is included.
22262
22263	* internal.h (rb_strftime): ditto.
22264
22265Sat Aug 27 18:53:51 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
22266
22267	* proc.c (proc_new): force to rewrite errinfo when calling Proc.new in ensure.
22268	  [Bug #5234] [ruby-core:39125]
22269	  This code will be removed after changing throw mechanism (see r33064).
22270
22271	* vm.c (rb_vm_rewrite_dfp_in_errinfo): new function.
22272
22273	* vm.c (vm_make_env_each): changed accordingly.
22274
22275	* vm_core.h: ditto.
22276
22277	* bootstraptest/test_flow.rb: add tests for above.
22278
22279Sat Aug 27 18:44:06 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22280
22281	* internal.h (rb_strftime_timespec): move to time.c because it depends
22282	  encoding.h.
22283
22284Sat Aug 27 18:17:58 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22285
22286	* strftime.c (rb_strftime_with_timespec): get enc argument to specify
22287	  the encoding of the format. On Windows (at least Japanese Windows),
22288	  Time#strftime("%Z") includes non ASCII in locale encoding (CP932).
22289	  So convert locale to default internal. [ruby-core:39092] [Bug #5226]
22290
22291	* strftime.c (rb_strftime): ditto.
22292
22293	* strftime.c (rb_strftime_timespec): ditto.
22294
22295	* internal.h (rb_strftime_timespec): follow above.
22296
22297	* time.c (rb_strftime_alloc): ditto.
22298
22299	* time.c (strftimev): ditto.
22300
22301	* time.c (time_strftime): ditto.
22302
22303	* time.c (time_to_s): the resulted string of Time#to_s is always
22304	  ascii only, so this should be US-ASCII.
22305
22306	* time.c (time_asctime): ditto.
22307
22308Sat Aug 27 11:18:12 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
22309
22310	* Revert r33078. It caused a Rails application NoMethodError.
22311
22312	 /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
22313	 /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)
22314
22315Sat Aug 27 08:44:58 2011  Eric Hodel  <drbrain@segment7.net>
22316
22317	* lib/rdoc:  Import RDoc 3.9.4.  Typo and grammar fixes by Luke Gruber.
22318	  [Ruby 1.9 - Bug #5203]
22319
22320Sat Aug 27 07:53:34 2011  Eric Hodel  <drbrain@segment7.net>
22321
22322	* lib/open-uri.rb:  Fix indentation of OpenURI::OpenRead#open.  Use ++
22323	  instead of `' for method arguments in open-uri.rb
22324
22325Sat Aug 27 07:22:07 2011  Eric Hodel  <drbrain@segment7.net>
22326
22327	* ext/pathname/lib/pathname.rb:  Fix typos and grammar mistakes.  Patch
22328	  by Luke Gruber.  [#5203]
22329	* ext/pty/lib/expect.rb:  ditto
22330	* lib/mathn.rb:  ditto
22331	* lib/net/http.rb:  ditto
22332	* lib/open-uri.rb:  ditto
22333	* lib/ostruct.rb:  ditto
22334	* lib/tempfile.rb:  ditto
22335	* lib/thread.rb:  ditto
22336	* lib/weakref.rb:  ditto
22337	* sample/webrick/httpproxy.rb:  ditto
22338
22339Sat Aug 27 04:03:18 2011  Koichi Sasada  <ko1@atdot.net>
22340
22341	* iseq.c (iseq_data_to_ary): fix type of variable
22342	  (long -> unsigned long) to suppress a warning.
22343
22344Sat Aug 27 04:02:11 2011  Koichi Sasada  <ko1@atdot.net>
22345
22346	* vm_core.h: add a decl. of rb_autoloading_value().
22347
22348Fri Aug 26 19:12:08 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
22349
22350	* variable.c: Make autoload thread-safe. See #921.
22351
22352	  What's the problem?
22353	    autoload is thread unsafe. When we define a constant to be
22354	    autoloaded, we expect the constant construction is invariant. But
22355	    current autoload implementation allows other threads to access the
22356	    constant while the first thread is loading a file.
22357
22358	  What's happening inside?
22359	    The current implementation uses Qundef as a marker of autoload in
22360	    Constant table. Once the first thread find Qundef as a value at
22361	    constant lookup, it starts loading a defined feature. Generally a
22362	    loaded file overrides the Qundef in Constant table by module/class
22363	    declaration at very beginning lines of the file, so other threads
22364	    can see the new Module/Class object before feature loading is
22365	    finished. It breaks invariant construction.
22366
22367	  How to solve?
22368	    To ensure invariant constant construction, we need to override
22369	    Qundef with defined Object after the feature loading. For keeping
22370	    Qundef in Constant table, I expanded autoload_data struct in
22371	    Module to have a slot for keeping the defined object while feature
22372	    loading. And changed Module's constant lookup/update logic a
22373	    little so that the slot is only visible from the thread which
22374	    invokes feature loading. (== the first thread which accessed the
22375	    autoload constant)
22376
22377	  Evaluation?
22378	    All test passes (bootstrap test, test-all and RubySpec) and added
22379	    8 tests for threading behavior. Extra logics are executed only
22380	    when Qundef is found, so no perf drop should happen except
22381	    autoloading.
22382
22383	* variable.c (rb_autoload): Prepare new autoload_data struct.
22384
22385	* variable.c (rb_autoload_load): Load feature and update Constant
22386	  table after feature loading is finished.
22387
22388	* variable.c (rb_const_get_0): When the fetched constant is under
22389	  autoloading, it returns the object only for the thread which starts
22390	  autoloading.
22391
22392	* variable.c (rb_const_defined_0): Ditto.
22393
22394	* variable.c (rb_const_set): When the specified constant is under
22395	  autoloading, it sets the object only for the thread which starts
22396	  autoloading. Otherwise, simply overrides Qundef with constant
22397	  override warning.
22398
22399	* vm_insnhelper.c (vm_get_ev_const): Apply same change as
22400	  rb_const_get_0 in variable.c.
22401
22402	* test/ruby/test_autoload.rb: Added tests for threading behavior.
22403
22404Fri Aug 26 10:10:37 2011  Eric Hodel  <drbrain@segment7.net>
22405
22406	* lib/rubygems:  Update to RubyGems 1.8.10.  Fixes security issue in
22407	  creating ruby-format gemspecs.  Fixes Gem.dir not being at the front
22408	  of Gem.path to fix uninstall and cleanup commands.  Fixes gem
22409	  uninstall stopping on the first missing gem.
22410
22411Fri Aug 26 08:21:10 2011  Aaron Patterson <aaron@tenderlovemaking.com>
22412
22413	* time.c (strftimev): Make Time#to_s default to US-ASCII encoding but
22414	  respect Encoding.default_internal. [ruby-core:39092]
22415	* test/ruby/test_time.rb (class TestTime): Corresponding test.
22416
22417Thu Aug 25 09:43:16 2011  Eric Hodel  <drbrain@segment7.net>
22418
22419	* ext/openssl/lib/openssl/bn.rb:  Hide copyright info from RDoc.
22420	* ext/openssl/lib/openssl/digest.rb:  ditto
22421	* ext/openssl/lib/openssl/x509.rb:  ditto
22422	* ext/openssl/lib/openssl/cipher.rb:  ditto
22423
22424Thu Aug 25 09:25:48 2011  Eric Hodel  <drbrain@segment7.net>
22425
22426	* ext/openssl/ossl_digest.c:  Document OpenSSL::Digest::digest and add
22427	  an example to OpenSSL::Digest.  Patch by Sylvain Daubert.
22428	  [Ruby 1.9 - Bug #5166]
22429	* ext/openssl/lib/openssl/digest.rb (module OpenSSL):  ditto
22430
22431Thu Aug 25 08:19:43 2011  Koichi Sasada  <ko1@atdot.net>
22432
22433	* vm.c (vm_make_env_each): work around to solve Bug #2729.
22434	  fixes: Bug #2729
22435	  a patch from Kazuki Tsujimoto <kazuki@callcc.net>
22436	  This problem is caused by changing dfp (dynamic env pointer)
22437	  from saved dfp.  Saved dfp is pointed env in VM stack.  However,
22438	  the dfp can be moved because VM copies env from VM stack to
22439	  the heap.  At this copying, dfp was also changed.  To solve this
22440	  problem, I'll try to change throw mechanism (not save target dfp,
22441	  but save target cfp).
22442
22443	* bootstraptest/test_flow.rb: add a test for above.
22444
22445Thu Aug 25 07:57:33 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
22446
22447	* numeric.c (int_round): Fix Integer#round [ruby-core:39096]
22448
22449Thu Aug 25 07:00:00 2011  Koichi Sasada  <ko1@atdot.net>
22450
22451	* vm_insnhelper.h, vm_insnhelper.c, vm.c, vm_method.c, insns.def:
22452	  Manage a redefinition of special methods for each classes.
22453	  A patch from Joel Gouly <joel.gouly@gmail.com>.  Thanks!
22454
22455Thu Aug 25 06:51:08 2011  Aaron Patterson <aaron@tenderlovemaking.com>
22456
22457	* ext/psych/lib/psych.rb: Fixing psych version number.
22458	* ext/psych/psych.gemspec: updating the gemspec.
22459
22460Thu Aug 25 06:11:35 2011  Aaron Patterson <aaron@tenderlovemaking.com>
22461
22462	* ext/psych/lib/psych/nodes/node.rb: default `to_yaml` encoding to be
22463	  UTF-8.
22464	* test/psych/test_encoding.rb: test yaml dump encoding.
22465
22466Thu Aug 25 01:24:33 2011  Naohisa Goto  <ngotogenome@gmail.com>
22467
22468	* test/fileutils/test_fileutils.rb (test_chmod_symbol_mode): Solaris
22469	  seems to behave the same as FreeBSD.
22470
22471Thu Aug 25 01:11:36 2011  Naohisa Goto  <ngotogenome@gmail.com>
22472
22473	* test/ruby/test_rubyoptions.rb (test_script_from_stdin): slave pty
22474	  should be manipulated because master pty may not be a tty on some
22475	  environment (e.g. Solaris). [Bug:#5222] [ruby-dev:44420]
22476
22477Wed Aug 24 15:13:56 2011  Koichi Sasada  <ko1@atdot.net>
22478
22479	* iseq.h, iseq.c, compile.c: Change the line number data structure
22480	  to solve an issue reported at [ruby-dev:44413] [Ruby 1.9 - Bug #5217].
22481	  Before this fix, each instruction has an information including
22482	  line number (iseq::iseq_insn_info_table).  Instead of this data
22483	  structure, recording only line number changing places
22484	  (iseq::iseq_line_info_table).
22485	  The order of entries in iseq_line_info_table is ascending order of
22486	  iseq_line_info_table_entry::position.  You can get a line number
22487	  by an iseq and a program counter with this data structure.
22488	  This fix reduces memory consumption of iseq (bytecode).
22489	  On my measurement, a rails application consumes 21.8MB for
22490	  iseq with this fix on the 32bit CPU.  Without this fix, it
22491	  consumes 24.7MB for iseq [ruby-dev:44415].
22492
22493	* proc.c: ditto.
22494
22495	* vm_insnhelper.c: ditto.
22496
22497	* vm_method.c: ditto.
22498
22499	* vm.c (rb_vm_get_sourceline): change to use rb_iseq_line_no().
22500
22501Wed Aug 24 09:49:10 2011  Koichi Sasada  <ko1@atdot.net>
22502
22503	* insns.def (defined): fix to checking class variable.
22504	  A patch by Magnus Holm <judofyr@gmail.com>.  Thanks!
22505
22506	* test/ruby/test_variable.rb: add a test for above.
22507
22508Wed Aug 24 08:53:06 2011  Eric Hodel  <drbrain@segment7.net>
22509
22510	* lib/rdoc:  Update to RDoc 3.9.3.  Fixes RDoc with `ruby -Ku`.  Allows
22511	  HTTPS image paths to be turned into <img> tags.  Prevents special
22512	  markup inside <tt> from being processed.
22513
22514Wed Aug 24 07:57:43 2011  Eric Hodel  <drbrain@segment7.net>
22515
22516	* lib/rubygems:  Update to RubyGems 1.8.9.  Fixes uninstalling multiple
22517	  gems and gem cleanup.
22518
22519Wed Aug 24 06:45:20 2011  Ryan Davis  <ryand-ruby@zenspider.com>
22520
22521	* lib/minitest/*: Imported minitest 2.5.0 (r6557)
22522	* test/minitest/*: ditto
22523
22524Wed Aug 24 00:38:22 2011  Yusuke Endoh  <mame@tsg.ne.jp>
22525
22526	* thread.c (update_coverage): skip coverage count up if the current
22527	  line is out of the way.  rb_sourceline() is unreliable when source
22528	  code is big.  [ruby-dev:44413]
22529
22530	* test/coverage/test_coverage.rb: add a test for above.
22531
22532Tue Aug 23 15:23:56 2011  Eric Hodel  <drbrain@segment7.net>
22533
22534	* load.c (rb_f_require):  Improve documentation of Kernel#require.
22535	  [Ruby 1.9 - Bug #5210]
22536
22537Tue Aug 23 11:27:26 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
22538
22539	* ext/zlib/zlib.c (gzfile_read_header): Ensure that each section of
22540	  gzip header is readable to avoid SEGV.
22541
22542	* test/zlib/test_zlib.rb (test_corrupted_header): Test it.
22543
22544Mon Aug 22 23:43:33 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
22545
22546	* sprintf.c (rb_str_format): add RB_GC_GUARD to prevent temporary
22547	  strings from GC.
22548
22549Sun Aug 21 17:49:53 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
22550
22551	* iseq.c (iseq_s_disasm): remove variable which is no longer used
22552	  since r33013.
22553
22554Sun Aug 21 14:20:58 2011  Naohisa Goto  <ngotogenome@gmail.com>
22555
22556	* configure.in: use LD_LIBRARY_PATH_64 on 64-bit Solaris.
22557
22558Sat Aug 20 13:19:52 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
22559
22560	* iseq.c (iseq_s_disasm): fix a bug that may cause SEGV.
22561
22562	* test/ruby/test_method.rb (test_body): add a test for the above change.
22563
22564Sat Aug 20 10:43:24 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22565
22566	* ext/stringio/stringio.c (strio_read): return new string if nil
22567	  is explicitly given as a buffer ([Bug #5207]), otherwise set the
22568	  encoding.  also removed dead code.
22569
22570Fri Aug 19 14:25:51 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22571
22572	* process.c (proc_spawn_v, proc_spawn): should not wait the
22573	  spawned process.
22574
22575	* process.c (proc_spawn_v): fix missing argument, and try with
22576	  /bin/sh only if failed with ENOEXEC.
22577
22578Fri Aug 19 14:12:57 2011  Shugo Maeda  <shugo@ruby-lang.org>
22579
22580	* lib/net/imap.rb (idle): raises a Net::IMAP::Error when the
22581	  connection is closed.  based on the patch by Hugo Barauna.
22582	  [Bug #5190] [ruby-core:38930]
22583
22584Fri Aug 19 13:18:00 2011  Kenta Murata  <mrkn@mrkn.jp>
22585
22586	* configure.in: defines _DARWIN_UNLIMITED_SELECT if the target_os
22587	  is darwin.
22588
22589Fri Aug 19 13:14:00 2011  Kenta Murata  <mrkn@mrkn.jp>
22590
22591	* thread.c: add a description for the behavior of select(2) on
22592	  Mac OS X 10.7 (Lion).
22593
22594Fri Aug 19 11:28:58 2011  Shugo Maeda  <shugo@ruby-lang.org>
22595
22596	* lib/net/imap.rb (msg_att): accepts extra space before ')'.
22597	  based on the patch by art lussos.  [Bug #5163] [ruby-core:38820]
22598
22599Wed Aug 17 23:01:00 2011  Kenta Murata  <mrkn@mrkn.jp>
22600
22601	* ext/bigdecimal/bigdecimal.c (cannot_be_coerced_into_BigDecimal):
22602	  remove duplication.
22603
22604Wed Aug 17 15:27:00 2011  Kenta Murata  <mrkn@mrkn.jp>
22605
22606	* ext/bigdecimal/bigdecimal.c (cannot_be_coerced_into_BigDecimal):
22607	  add a new function for raising error when an object cannot coerce
22608	  into BigDecimal.  [Bug #5172]
22609
22610	* ext/bigdecimal/bigdecimal.c (BigDecimalValueWithPrec): use
22611	  cannot_be_coerced_into_BigDecimal function.
22612
22613	* ext/bigdecimal/bigdecimal.c (BigMath_s_exp): ditto.
22614
22615	* ext/bigdecimal/bigdecimal.c (BigMath_s_log): ditto.
22616
22617	* test/bigdecimal/test_bigdecimal.rb: test for the above changes.
22618
22619	* test/bigdecimal/testbase.rb (under_gc_stress): add a new utility
22620	  method to run tests under the condition of GC.stress = true.
22621
22622Wed Aug 17 10:16:00 2011  Kenta Murata  <mrkn@mrkn.jp>
22623
22624	* rational.c (nurat_coerce): Rational#coerce should converts itself
22625	  into Complex if the argument is a Complex with non-zero imaginary
22626	  part.  [Bug #5020] [ruby-dev:44088]
22627
22628	* test/ruby/test_rational.rb (test_coerce): test for the above change.
22629
22630Wed Aug 17 06:33:19 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
22631
22632	* ext/openssl/ossl_x509cert.c: Add class documentation for
22633	  OpenSSL::X509::Certificate.
22634
22635Wed Aug 17 04:54:25 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
22636
22637	* ext/openssl/ossl_pkey.c: corrected docs, OpenSSL::PKey::DH does
22638	  *not* support #sign/verify.
22639
22640Tue Aug 16 18:56:54 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22641
22642	* vm.c (ruby_threadptr_data_type): rename to hide.
22643	  [ruby-core:38972]
22644
22645Tue Aug 16 18:52:08 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22646
22647	* win32/mkexports.rb (Exports::Mswin#each_export): exclude Init_
22648	  and _threadptr_ functions, as well as mingw.
22649
22650Tue Aug 16 09:31:44 2011  Eric Hodel  <drbrain@segment7.net>
22651
22652	* ext/dl:  Add documentation.  Patch by Vincent Batts.
22653	  [Ruby 1.9 - Bug #5192]
22654
22655Tue Aug 16 08:48:26 2011  Eric Hodel  <drbrain@segment7.net>
22656
22657	* ext/.document (fiddle):  Remove duplicate entry
22658	* ext/fiddle:  Complete documentation of Fiddle.  Patch by Vincent
22659	  Batts.  [#5192]
22660
22661Tue Aug 16 08:00:15 2011  Eric Hodel  <drbrain@segment7.net>
22662
22663	* ext/socket:  Make Socket documentation appear.  Add documentation for
22664	  Socket, TCPServer, SOCKSSocket.  Patch by Sylvain Daubert.
22665	  [Ruby 1.9 - Feature #5182]
22666
22667Mon Aug 15 09:58:55 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
22668
22669	* ext/openssl/ossl_ssl.c: Support disabling OpenSSL compression.
22670
22671	* test/openssl/test_ssl.rb: Add a test for it.
22672	  Thanks to Eric Wong for the patch.
22673	  [Ruby 1.9 - Feature #5183] [ruby-core:38911]
22674
22675Sun Aug 14 05:57:01 2011  Tanaka Akira  <akr@fsij.org>
22676
22677	* test/socket/test_socket.rb (test_connect_timeout): added a test
22678	  based on a patch by Eric Wong.  [ruby-core:38910]
22679
22680Sat Aug 13 22:17:27 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22681
22682	* tool/mkconfig.rb: do not make the entries related to sitedir and
22683	  verdordir if disabled by --without options.  [ruby-core:38922]
22684	  [Bug #5187]
22685
22686Sat Aug 13 17:03:22 2011  Tadayoshi Funaba  <tadf@dotrb.org>
22687
22688	* ext/date/date_core.c: [ruby-core:38861]
22689
22690Sat Aug 13 09:39:07 2011  Tadayoshi Funaba  <tadf@dotrb.org>
22691
22692	* test/date/test_*.rb: added tests.
22693
22694Sat Aug 13 09:36:19 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
22695
22696	* ext/date/date_parse.c (parse_ddd_cb): fix r32896. RB_GC_GUARD
22697	  insertion position was mistaken. [ruby-dev:44337] [Bug #5152]
22698
22699Sat Aug 13 09:26:24 2011  Aaron Patterson <aaron@tenderlovemaking.com>
22700
22701	* ext/psych/lib/psych/core_ext.rb: Make Kernel#y private.
22702	  [ruby-core:38913]
22703
22704	* test/psych/test_yaml.rb: corresponding test.
22705
22706Sat Aug 13 09:05:16 2011  Tadayoshi Funaba  <tadf@dotrb.org>
22707
22708	* ext/date/date_core.c (date_strftime_alloc): followed the change
22709	  of r32885.
22710
22711	* doc/NEWS-1.9.3: followed the above change.
22712
22713Sat Aug 13 08:55:38 2011  Aaron Patterson <aaron@tenderlovemaking.com>
22714
22715	* ext/psych/lib/psych/scalar_scanner.rb: Only consider strings
22716	  with fewer than 2 dots to be numbers. [ruby-core:38915]
22717
22718Sat Aug 13 08:47:20 2011  Tadayoshi Funaba  <tadf@dotrb.org>
22719
22720	* ext/date/date_core.c: [ruby-core:38855].
22721
22722Sat Aug 13 03:41:37 2011  Eric Hodel  <drbrain@segment7.net>
22723
22724	* lib/uri/common.rb:  Fix documentation of URI::Parser.new.  Patch by
22725	  Steve Klabnik.  [Ruby 1.9 - Bug #5177]
22726
22727Sat Aug 13 02:19:57 2011  Eric Hodel  <drbrain@segment7.net>
22728
22729	* ext/digest/digest.c:  Add documentation for the Digest module.  Patch
22730	  by Sylvain Daubert.  [Ruby 1.9 - Bug #5167]
22731
22732Sat Aug 13 01:56:11 2011  Eric Hodel  <drbrain@segment7.net>
22733
22734	* lib/rake:  Update to Rake 0.9.2.2.  Prevent pollution of toplevel
22735	  namespace by Commands.  Remove unused variable and debugging
22736	  statement in tests.
22737
22738Fri Aug 12 11:39:35 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22739
22740	* configure.in: Describe "no" configure option for site_ruby
22741	  and vendor_ruby. Patch by Vit Ondruch. [Bug #5187][ruby-core:38921]
22742
22743Fri Aug 12 09:00:24 2011  Eric Hodel  <drbrain@segment7.net>
22744
22745	* lib/rubygems:  Import RubyGems 1.8.8.  Fixes encoding of YAML gemspec
22746	  from gems.  Github Issue #149
22747
22748Fri Aug 12 08:17:46 2011  Tanaka Akira  <akr@fsij.org>
22749
22750	* ext/socket/ipsocket.c (init_inetsock_internal): use SOMAXCONN for
22751	  listen backlog.
22752
22753	* ext/socket/unixsocket.c (rsock_init_unixsock): ditto.
22754
22755	* ext/socket/lib/socket.rb (Addrinfo#listen): ditto.
22756	  (Socket.tcp_server_sockets_port0): ditto.
22757
22758	* ext/socket/mkconstants.rb: define SOMAXCONN as 5 if not available.
22759
22760	[ruby-core:38493]
22761
22762Fri Aug 12 03:24:35 2011  Eric Hodel  <drbrain@segment7.net>
22763
22764	* lib/rdoc:  Import RDoc 3.9.2.  Fixes TIDYLINK for HTML output.
22765
22766Thu Aug 11 15:37:42 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
22767
22768	* variable.c (autoload_delete): An autoload entry is still in a
22769	  RCLASS_IV_TBL, not in a RCLASS_CONST_TBL, so take back the table
22770	  changed in r29600. And an autoload entry keeps not a
22771	  rb_const_entry_t but a NODE so remove rb_const_entry_t thing added
22772	  in r29602.
22773
22774Thu Aug 11 15:07:36 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22775
22776	* lib/mkmf.rb (link_command): use LIBRUBYARG in rbconfig for
22777	  unbundled extensions.  [ruby-core:38802] [Bug #5147]
22778
22779	* lib/mkmf.rb (init_mkmf): revert r32902.  [ruby-core:38903]
22780
22781Wed Aug 10 23:03:55 2011  Tanaka Akira  <akr@fsij.org>
22782
22783	* ext/socket/lib/socket.rb: fix argument check in the previous commit.
22784
22785Wed Aug 10 22:12:28 2011  Tanaka Akira  <akr@fsij.org>
22786
22787	* ext/socket/lib/socket.rb (Socket.tcp): add :connect_timeout option.
22788	  (Addrinfo#connect_from): add :timeout option.
22789	  (Addrinfo#connect): ditto.
22790	  (Addrinfo#connect_to): ditto.
22791	  [ruby-core:38538]
22792
22793Wed Aug 10 21:27:19 2011  Tanaka Akira  <akr@fsij.org>
22794
22795	* lib/net/pop.rb: fix typo in document.
22796
22797	* lib/net/http.rb: ditto.
22798
22799	* lib/net/imap.rb: ditto.
22800
22801Wed Aug 10 19:30:00 2011  Kenta Murata  <mrkn@mrkn.jp>
22802
22803	* complex.c (nucomp_rationalize): calls rationalize of real part if
22804	  imaginary part is exactly zero.  The patch is made by Marc-Andre
22805	  Lafortune.  fixes [Bug #5178] [ruby-core:38885]
22806
22807	* test/ruby/test_complex.rb (test_rationalize): add a test for the
22808	  above change.
22809
22810	* complex.c (nucomp_to_r): fix RDoc comment.  The patch is made by
22811	  Marc-Andre Lafortune.
22812
22813Wed Aug 10 14:11:07 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22814
22815	* lib/mkmf.rb (init_mkmf): set $LIBRUBYARG regardless of shared
22816	  option.  [ruby-core:38802] [Bug #5147]
22817
22818Wed Aug 10 02:53:27 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22819
22820	* lib/net/http.rb: come back autoload. OpenSSL constant is used
22821	  some places, so it leads mistakes like HTTP.start.
22822
22823Tue Aug  9 22:57:45 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
22824
22825	* ext/date/date_parse.c (date_zone_to_diff): add RB_GC_GUARD.
22826	  [ruby-dev:44337] [Bug #5152]
22827
22828	* ext/date/data_parse.c (parse_ddd_cb): ditto.
22829
22830Tue Aug  9 14:25:47 2011  Naohisa Goto  <ngotogenome@gmail.com>
22831
22832	* ext/fiddle/conversions.c (generic_to_value): ffi_arg and ffi_sarg
22833	  should be used to handle shorter return value. fix [Bug #3861]
22834	  [ruby-core:32504]
22835
22836	* ext/fiddle/closure.c (callback): ditto
22837
22838	* ext/fiddle/conversions.h (fiddle_generic): ditto
22839
22840	* ext/fiddle/conversions.c (value_to_generic): char, short and int
22841	  are strictly distinguished on big-endian CPU, e.g. sparc64.
22842
22843Tue Aug  9 11:21:08 2011  Narihiro Nakamura  <authornari@gmail.com>
22844
22845	* gc.c (gc_lazy_sweep): if sweep target slots are not found, we
22846	  try heap_increment() because it might be able to expand the
22847	  heap. [Bug #5127] [ruby-dev:44285]
22848
22849	* gc.c (gc_clear_mark_on_sweep_slots): if a sweeping was
22850	  interrupted, we expand the heap if at all possible.
22851
22852Tue Aug  9 12:20:33 2011  Naohisa Goto  <ngotogenome@gmail.com>
22853
22854	* test/fiddle/helper.rb (libc_so, libm_so): Solaris support added.
22855	  [ruby-core:38853] [Bug #5168]
22856
22857	* test/dl/test_base.rb (libc_so, libm_so): on Solaris, remove libc
22858	  and libm version numbers for detecting default libc and libm.
22859
22860Tue Aug  9 09:18:04 2011  Eric Hodel  <drbrain@segment7.net>
22861
22862	* ext/zlib/zlib.c (gzfile_wrap):  Document encoding options.
22863
22864	* ext/zlib/zlib.c (rb_gzwriter_s_open): ditto
22865
22866	* ext/zlib/zlib.c (rb_gzreader_s_open): ditto
22867
22868Sun Aug  7 23:31:32 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22869
22870	* time.c (rb_strftime_alloc): raise ERANGE if width is too large.
22871	  Patch by Nobuyoshi Nakada. [Bug #4457] [ruby-dev:43285]
22872
22873	* test/ruby/test_time.rb (class TestTime): add a test for the
22874	  above change.
22875
22876Sun Aug  7 22:51:45 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22877
22878	* ext/openssl/ossl_asn1.c (decode_eoc): remove unused variables.
22879	  Patch by Eric Wong. [Feature #5157] [ruby-core:38798]
22880
22881	* ext/openssl/ossl_asn1.c (ossl_asn1_decode): ditto.
22882
22883	* ext/openssl/ossl_pkey.c (ossl_pkey_new_from_data): ditto.
22884
22885Sun Aug  7 22:37:08 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22886
22887	* configure.in: add -Wunused-variable to default CFLAGS.
22888	  Patch by Eric Wong. [Feature #5157] [ruby-core:38798]
22889
22890Sun Aug  7 15:37:35 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22891
22892	* ext/digest/sha2/sha2ossl.c: use original SHA384_Final on DragonFly.
22893
22894Sun Aug  7 14:08:16 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
22895
22896	* ext/objspace/objspace.c: fix typos in a document.
22897
22898Sun Aug  7 07:14:57 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22899
22900	* cont.c (HAVE_GETCONTEXT): see getcontext(3) because DragonFly BSD
22901	  x64 port doesn't have it.
22902
22903Sun Aug  7 00:42:55 2011  NARUSE, Yui  <naruse@ruby-lang.org>
22904
22905	* ext/tk/lib/tk/wm.rb (Tk::Wm.command): Add the missing receiver
22906	  before calling epath. patched by flori
22907	 https://github.com/flori/ruby/commit/aa9474d32e5f2c57f8b0e2e0c528a03f06a4d433
22908
22909Sat Aug  6 07:06:34 2011  Eric Hodel  <drbrain@segment7.net>
22910
22911	* marshal.c (w_object):  Fix exception message when _dump_data is not
22912	  defined on a T_DATA object.
22913
22914Fri Aug  5 22:16:20 2011  Naohisa Goto  <ngotogenome@gmail.com>
22915
22916	* numeric.c (rb_infinity, rb_nan): use WORDS_BIGENDIAN to get endian.
22917	  fix [Bug #5160] [ruby-dev:44356]
22918
22919Fri Aug  5 17:14:11 2011  Akinori MUSHA  <knu@iDaemons.org>
22920
22921	* test/test_syslog.rb (TestSyslog#test_log): Do not be too
22922	  specific about the log line format.  Fixes #5081.
22923
22924Fri Aug  5 15:57:10 2011  Naohisa Goto  <ngotogenome@gmail.com>
22925
22926	* complex.c (f_signbit): fix compile error in gcc4 on Solaris with
22927	  CFLAGS="-std=gnu99".  [ruby-dev:44355] fix [Bug #5159]
22928
22929	* math.c: ditto.
22930
22931Fri Aug  5 15:55:33 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22932
22933	* test/ruby/test_object.rb: tests that respond_to? returns false.
22934
22935Fri Aug  5 13:32:43 2011  Shugo Maeda  <shugo@ruby-lang.org>
22936
22937	* lib/xmlrpc/client.rb, lib/xmlrpc/server.rb: should use
22938	  String#bytesize instead of String#size.
22939
22940Fri Aug  5 12:18:20 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22941
22942	* vm_eval.c (check_funcall): try respond_to? first if redefined.
22943	  [Bug #5158]
22944
22945Fri Aug  5 09:48:22 2011  Eric Hodel  <drbrain@segment7.net>
22946
22947	* lib/rubygems:  Import RubyGems 1.8.7:
22948	  Added missing require for `gem uninstall --format-executable`.
22949
22950	  The correct name of the executable being uninstalled is now displayed
22951	  with --format-executable.
22952
22953	  Fixed `gem unpack uninstalled_gem` default version picker.
22954
22955	  RubyGems no longer claims a nonexistent gem can be uninstalled.
22956
22957	  `gem which` no longer claims directories are requirable files.
22958
22959	  `gem cleanup` continues cleaning up gems if one can't be uninstalled
22960	  due to permissions.  Issue #82.
22961
22962	  Gem repository directories are no longer created world-writable.
22963	  Patch by Sakuro OZAWA.  [Ruby 1.9 - Bug #4930]
22964
22965Fri Aug  5 07:00:31 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22966
22967	* test/io/console/test_io_console.rb (test_noctty): daemon() on
22968	  Fedora Rawhide seems not to detach the controlling terminal,
22969	  when the argument noclose is non-zero.  ref: [Bug #5135]
22970
22971Thu Aug  4 23:48:00 2011  Kenta Murata  <mrkn@mrkn.jp>
22972
22973	* thread_pthread.c (native_cond_signal): retry to call pthread_cond_signal
22974	  and pthread_cond_broadcast if they return EAGAIN in
22975	  native_cond_signal and native_cond_broadcast, respectively.
22976	  It is for the pthread implementation of Mac OS X 10.7 (Lion).
22977	  fixes #5155.  [ruby-dev:44342].
22978
22979	* thread_pthread.c (native_cond_broadcast): ditto.
22980
22981	* thread_pthread.c (struct cached_thread_entry): stop using
22982	  pthread_cond_t and its functions directly.
22983
22984	* thread_pthread.c (register_cached_thread_and_wait): ditto.
22985
22986	* thread_pthread.c (use_cached_thread): ditto.
22987
22988Thu Aug  4 20:29:41 2011  Naohisa Goto  <ngotogenome@gmail.com>
22989
22990	* configure.in: when Solaris cc, use $(CC) to link shared libs.
22991
22992Thu Aug  4 20:19:11 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
22993
22994	* error.c (report_bug): use a small message buffer instead of BUFSIZ.
22995	  It is needed for avoiding nested SIGSEGV on Linux.
22996	  Note: BUFSIZ is not proper buffer size. It's unrelated with maximum
22997	  filename length. :-/
22998	  [Bug #5139] [ruby-dev:44315]
22999
23000Thu Aug  4 16:08:45 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23001
23002	* tool/rbinstall.rb (gem): install all gemspecs under lib and ext.
23003
23004	* tool/rbinstall.rb (Gem::Specification): may not be defined when
23005	  cross-compiling and BASERUBY is 1.8.
23006
23007Thu Aug  4 11:30:36 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23008
23009	* include/ruby/missing.h: define __syscall on OpenBSD as r32702.
23010
23011Thu Aug  4 03:02:54 2011  Aaron Patterson <aaron@tenderlovemaking.com>
23012
23013	* tool/rbinstall.rb: use rubygems to load gemspecs, copy actual
23014	  gemspecs on install rather than generate fake ones for all gems.
23015
23016Thu Aug  4 02:45:10 2011  Kenta Murata  <mrkn@mrkn.jp>
23017
23018	* configure.in: set CXX variable to the C++ compiler that matches the
23019	  C compiler specified by CC variable (e.g. use g++-4.2 for gcc-4.2).
23020
23021Thu Aug  4 02:21:10 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23022
23023	* lib/mkmf.rb (link_command): use static library only for bundled
23024	  extensions.  [Bug #5147]
23025
23026Thu Aug  4 02:02:10 2011  Aaron Patterson <aaron@tenderlovemaking.com>
23027
23028	* ext/psych/psych.gemspec: installing psych as a gem.
23029
23030Wed Aug  3 16:01:35 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23031
23032	* util.c, include/ruby/util.h (ruby_add_suffix): remove the function.
23033	  [Bug #5153] [ruby-core:38736]
23034
23035	* io.c (argf_next_argv): remove the call of above function.
23036
23037	* ext/-test-/add_suffix, test/-ext-/test_add_suffix.rb: remove the test
23038	  extension module because this is only for testing ruby_add_suffix().
23039
23040	* LEGAL: remove the mention about a part of util.c, because now we
23041	  removed the part.
23042
23043	* io.c (argf_next_argv): now the new filename is not guaranteed to
23044	  use, so should check the return value of rename(2).
23045
23046	* test/ruby/test_argf.rb (TestArgf#test_inplace_rename_impossible):
23047	  now we expect same result with other platforms on no_safe_rename
23048	  platforms (=Windows).
23049
23050Wed Aug  3 09:18:08 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
23051
23052	* test/xmlrpc/webrick_testing.rb (WEBrick_Testing#start_server):
23053	  Like r32795, bind address should be specified.
23054
23055Wed Aug  3 07:46:30 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23056
23057	* encoding.c (enc_find): mistakenly remained !.  [Bug #5150]
23058
23059Wed Aug  3 00:11:08 2011  Tanaka Akira  <akr@fsij.org>
23060
23061	* lib/prettyprint.rb: update document.  [ruby-core:36776]
23062
23063Tue Aug  2 22:04:46 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23064
23065	* gc.c (init_heap): allocate sigaltstack after heaps are allocated.
23066	  [ruby-dev:44315] [Bug #5139]
23067
23068	* vm.c (thread_free): use free because objspace is not ready.
23069
23070	* vm.c (th_init): use malloc because objspace is not ready.
23071
23072Tue Aug  2 20:10:16 2011  Shota Fukumori  <sorah@tubusu.net>
23073
23074	* test/testunit/test_parallel.rb: pass "--ruby" option to
23075	  test/testunit/tests_for_parallel/runner.rb. [Bug #5132] [ruby-dev:44303]
23076
23077Tue Aug  2 15:53:37 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23078
23079	* encoding.c (str_to_encoding): rename from to_encoding and
23080	  use str_to_encindex.
23081
23082	* encoding.c (str_to_encindex): split from to_encoding.
23083
23084	* encoding.c (rb_to_encoding): use str_to_encoding.
23085
23086	* encoding.c (rb_obj_encoding): don't bypass rb_encoding*.
23087	  If it uses rb_encoding*, it bypass encindex. If it uses encindex,
23088	  it doesn't bypass.
23089
23090	* encoding.c (enc_find): add shortcut for encoding object, use
23091	  str_to_encindex, and avoid bypass rb_encoding*.
23092
23093Tue Aug  2 12:03:16 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23094
23095	* hash.c (recursive_hash): hash value of emptied hash should be
23096	  equal to an empty hash.  [ruby-core:38650]
23097
23098Tue Aug  2 11:42:15 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23099
23100	* parse.y (rb_enc_symname2_p): :! is valid symbol.  [Bug #5136]
23101
23102Tue Aug  2 07:33:29 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
23103
23104	* test/net/http/test_http.rb (TestNetHTTP_version_1_1_methods#test_timeout_during_HTTP_session):
23105	  If you connect to localhost, you should listen localhost.
23106
23107	* test/net/http/test_https.rb (TestNetHTTPS#test_timeout_during_SSL_handshake):
23108	  ditto.
23109
23110Tue Aug  2 06:18:15 2011  Luis Lavena  <luislavena@gmail.com>
23111
23112	* lib/rubygems/installer.rb (class Gem): Correct path check on Windows
23113	  Possible fix for [Ruby 1.9 - Bug #5111]
23114	* test/rubygems/test_gem_installer.rb (load Gem): ditto
23115
23116Mon Aug  1 20:12:03 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23117
23118	* test/ruby/test_process.rb (TestProcess#windows?): new method.
23119
23120	* test/ruby/test_process.rb (TestProcess#*): use above method.
23121
23122	* test/ruby/test_process.rb (TestProcess#test_execopts_redirect):
23123	  windows doesn't support FD_CLOEXEC.
23124
23125Mon Aug  1 15:45:23 2011  Eric Hodel  <drbrain@segment7.net>
23126
23127	* test/rake/test_rake_functional.rb:  Don't assume the binary name of
23128	  ruby is "ruby".  [Ruby 1.9 - Bug #5114]
23129	* test/rake/helper.rb:  ditto
23130
23131Mon Aug  1 15:31:14 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
23132
23133	* test/io/console/test_io_console.rb (TestIO_Console#test_sync):
23134	  Skip when PTY allocation failed (that's not our fault).
23135
23136Mon Aug  1 15:04:12 2011  URABE Shyouhei  <shyouhei@ruby-lang.org>
23137
23138	* test/xmlrpc/test_webrick_server.rb (Test_Webrick#setup_http_server):
23139	  XMLRPC::Client.new3(), when called without host: argument, tries
23140	  to  connect to  a host  where "localhost"  resolves to.   On the
23141	  other  hand  a  WEBrick::HTTPServer.new(), when  called  without
23142	  BindAddress:  argument, tries  to listen  all the  address where
23143	  getaddrinfo(AF_UNSPEC) resolves to.   This is a mismatch because
23144	  "localhost" might not resolve to one of those listening sockets.
23145	  We  would  better explicitly  specify  "localhost"  here and  if
23146	  failed, just skip the whole test.
23147
23148Mon Aug  1 14:24:56 2011  Eric Hodel  <drbrain@segment7.net>
23149
23150	* lib/rdoc.rb:  Import RDoc 3.9.1.  Fixes bugs in the RDoc::Markup
23151	  parser.
23152
23153Mon Aug  1 12:00:35 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23154
23155	* insns.def (concatstrings): don't use initial ASCII-8BIT string.
23156	  [ruby-core:38635] [Bug #5126]
23157
23158Sun Jul 31 22:57:16 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
23159
23160	* enc/Makefile.in (ECHO1): Same as the recent fix in common.mk.
23161	  ":" in a make variable replacement cause a syntax error with
23162	  /usr/ccs/bin/make on Solaris.  Uses $(NULLCMD) instead.
23163
23164Sun Jul 31 21:16:02 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
23165
23166	* complex.c (f_signbit): gcc4 on Solaris DOES have signbit but does
23167	  not have it on header.
23168
23169	* math.c: ditto.
23170
23171Sun Jul 31 21:09:04 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
23172
23173	* common.mk (node_name.inc): Use $(Q) for consistency.
23174
23175	* Makefile.in (INSNS): ditto.
23176
23177Sun Jul 31 21:19:51 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
23178
23179	* lib/mkmf.rb (configuration:ECHO1): Same as the recent fix in
23180	  common.mk.
23181	  ":" in a make variable replacement cause a syntax error with
23182	  /usr/ccs/bin/make on Solaris.  Uses $(NULLCMD) instead.
23183
23184Sun Jul 31 20:39:12 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
23185
23186	* common.mk (ECHO1): nmake does not allow parenthesis in make variable
23187	  replacement.
23188
23189Sun Jul 31 23:06:57 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
23190
23191	* vm.c (check_env): print debug messages to stderr.
23192	[Feature #4871] [ruby-dev:43743]
23193
23194Sun Jul 31 22:50:23 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
23195
23196	* vm.c (vm_make_env_each): don't save prev env value.
23197	It is no longer used. [Feature #4871] [ruby-dev:43743]
23198
23199	* vm.c (check_env): changed accordingly.
23200
23201Sun Jul 31 20:21:36 2011  "Yuki Sonoda (Yugui)"  <yugui@yugui.jp>
23202
23203	* common.mk (ECHO1): ":" in a make variable replacement cause a syntax
23204	  error with /usr/ccs/bin/make on Solaris.  Uses $(NULLCMD) instead.
23205
23206	* configure.in (NULLCMD): new check.
23207
23208	* Makefile.in (NULLCMD): Reflects checking in configure.
23209
23210	* win32/Makefile.sub (NULLCMD): new assignment.
23211
23212Sun Jul 31 18:58:59 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23213
23214	* io.c (rb_pipe): pipe on cygwin can succeed half but fail
23215	  half.
23216
23217Sun Jul 31 11:31:07 2011  Kazuki Tsujimoto  <kazuki@callcc.net>
23218
23219	* vm.c: check if cfp is valid. [Bug #5083] [ruby-dev:44208]
23220
23221Sun Jul 31 09:18:28 2011  Eric Hodel  <drbrain@segment7.net>
23222
23223	* lib/rdoc:  Update to RDoc 3.9.  Fixed `ri []`, stopdoc creating an
23224	  object reference, nodoc for class aliases, verbatim === lines.
23225
23226Sun Jul 31 01:29:08 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23227
23228	* io.c (rb_io_each_byte): remove unused variable e.
23229
23230Sat Jul 31 01:23:45 2011  Kenta Murata  <mrkn@mrkn.jp>
23231
23232	* test/bigdecimal/test_bigdecimal.rb (test_version): removed.
23233
23234Sat Jul 30 23:19:09 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23235
23236	* defs/default_gems: separate from tool/rbinstall.rb.
23237
23238Sat Jul 30 23:14:44 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23239
23240	* io.c (rb_io_each_byte): rbuf can be refreshed during yield.
23241	  [Bug #5119]
23242
23243Sat Jul 30 22:35:50 2011  Naohisa Goto  <ngotogenome@gmail.com>
23244
23245	* strftime.c (NEEDS): avoid SEGV due to integer overflow in
23246	  sparc-solaris2.10 and i686-linux.  fix [Bug #4456] [ruby-dev:43284]
23247
23248Sat Jul 30 17:26:26 2011  Masaki Suketa <masaki.suketa@nifty.ne.jp>
23249
23250	* test/win32ole/test_win32ole_variant.rb: use skip method to skip the test.
23251
23252	* test/win32ole/test_win32ole_variant_outarg.rb: ditto.
23253
23254Sat Jul 30 14:27:00 2011  Kenta Murata  <mrkn@mrkn.jp>
23255
23256	* ext/bigdecimal/bigdecimal.c (BigDecimal_version): version 1.1.0.
23257
23258	* ext/bigdecimal/bigdecimal.gemspec: turn into a default gem.
23259
23260	* tool/rbinstall.rb: ditto.
23261
23262Sat Jul 30 11:21:55 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23263
23264	* vm_core.h (ALT_STACK_SIZE): use MINSIGSTKSZ*2 instead of SIGSTKSZ*2.
23265	  [ruby-core:38607]
23266
23267Sat Jul 30 10:39:14 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23268
23269	* vm.c (th_init): preallocate alternative stack.
23270	  NoMemoryError is better than rb_bug, of course.
23271	  Patch by Eric Wong. [ruby-core:38572][ruby-core:38594].
23272
23273	* signal.c (rb_register_sigaltstack): ditto.
23274
23275	* vm_core.h: moved ALT_STACK_SIZE definition from signal.c.
23276	* vm.c (thread_free): use xfree() instead of free().
23277
23278Sat Jul 30 07:20:49 2011  Tanaka Akira  <akr@fsij.org>
23279
23280	* ext/socket/lib/socket.rb (udp_server_sockets): unused variable
23281	  removed.
23282	  patch by Jeremy Evans.  [ruby-core:38600]
23283
23284Fri Jul 29 23:56:32 2011  Tanaka Akira  <akr@fsij.org>
23285
23286	* lib/securerandom.rb: call OpenSSL::Random.seed at the
23287	  SecureRandom.random_bytes call.
23288	  based on the patch by Masahiro Tomita.  [ruby-dev:44270]
23289
23290Fri Jul 29 23:53:48 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23291
23292	* array.c (rb_ary_set_len): new function to set array length.
23293
23294	* vm_eval.c (method_missing): set the length of argv array, to mark
23295	  arguments.
23296
23297	* vm_eval.c (rb_apply): get rid of too large alloca.
23298
23299Fri Jul 29 20:48:39 2011  Tanaka Akira  <akr@fsij.org>
23300
23301	* ext/socket/mkconstants.rb: fix typos.
23302
23303Fri Jul 29 20:28:56 2011  Tanaka Akira  <akr@fsij.org>
23304
23305	* ext/socket/mkconstants.rb: use whitespaces as a separator.
23306
23307Fri Jul 29 18:59:07 2011  Tanaka Akira  <akr@fsij.org>
23308
23309	* ext/socket/mkconstants.rb: add documents for constants.
23310	  patch by Eric Hodel.  [ruby-core:37853] [Bug #4989]
23311
23312Fri Jul 29 16:00:43 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23313
23314	* configure.in (enable_pthread): use -pthread on OpenBSD without
23315	  explicit option. patched by Jeremy Evans. [ruby-core:38572]
23316
23317Thu Jul 28 23:36:28 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
23318
23319	* ext/fiddle/closure.c (callback): use rb_ary_tmp_new() instead of
23320	  xmalloc() to allocate an array for arguments of callback procedure,
23321	  to prevent arguments from being swept by GC. [ruby-core:38546]
23322	  [Bug #4929]
23323
23324Thu Jul 28 22:36:06 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
23325
23326	* ext/openssl/ossl_cipher.c (ossl_cipher_initialize): Avoid possible
23327	  SEGV from AES encryption/decryption. Processing data by
23328	  Cipher#update without initializing key (meaningless usage of Cipher
23329	  object since we don't offer a way to export a key) could cause SEGV.
23330
23331	  In OpenSSL, the EVP which has EVP_CIPH_RAND_KEY flag (such as DES3)
23332	  allows uninitialized key, but other EVPs (such as AES) does not
23333	  allow it. Calling EVP_CipherUpdate() without initializing key causes
23334	  SEGV so we set the data filled with "\0" as the key by default. See
23335	  #2768.
23336
23337	* test/openssl/test_cipher.rb: test it.
23338
23339Thu Jul 28 14:25:08 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23340
23341	* lib/rubygems/user_interaction.rb (Gem::StreamUI#tty?): typo.
23342
23343Thu Jul 28 12:32:53 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23344
23345	* ext/dl/callback/mkcallback.rb (gencallback): use PTR2NUM.
23346
23347	* ext/dl/cptr.c (rb_dlptr_aref, rb_dlptr_aset): check NULL pointer
23348	  dereference.
23349
23350	* ext/dl/cptr.c (rb_dlptr_s_to_ptr): use rb_check_funcall.
23351
23352	* ext/dl/cptr.c (rb_dlptr_s_to_ptr): fix wrapping condition.
23353
23354Thu Jul 28 04:53:31 2011  Eric Hodel  <drbrain@segment7.net>
23355
23356	* lib/delegate.rb:  Move file-level documentation to the appropriate
23357	  classes.
23358
23359Thu Jul 28 02:15:04 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23360
23361	* ext/dl/cfunc.c (dlcfunc_mark), ext/dl/cptr.c (dlptr_mark):
23362	  workaround to mark wrapped object.  this is not a true fix,
23363	  because [Bug #4929] is caused by the interface design of DL.
23364
23365Thu Jul 28 00:28:15 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23366
23367	* test/fileutils/test_fileutils.rb: add OpenBSD case.
23368	  patched by Jeremy Evans [ruby-core:38530] see #5097
23369
23370	* test/ruby/test_process.rb: ditto.
23371
23372Wed Jul 27 22:46:59 2011  CHIKANAGA Tomoyuki  <nagachika00@gmail.com>
23373
23374	* test/rinda/test_rinda.rb (test_remote_array_and_hash):
23375	  add local variables to protect objects from GC. [ruby-dev:44253]
23376	  [Bug #5104]
23377
23378Wed Jul 27 17:55:54 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23379
23380	* include/ruby/missing.h: define __syscall if the platform has
23381	  __syscall in the library but doesn't define it in headers
23382	  for example Mac OS X.
23383
23384Wed Jul 27 15:39:14 2011  Eric Hodel  <drbrain@segment7.net>
23385
23386	* object.c:  Add usage documentation for BasicObject.  Based on patch
23387	  by Thomas Sawyer.  [Ruby 1.9 - Bug #5067]
23388
23389Wed Jul 27 12:24:17 2011  Eric Hodel  <drbrain@segment7.net>
23390
23391	* lib/rubygems/uninstaller.rb:  Add missing require and update
23392	  messaging to avoid confusion with uninstall --format-executable.
23393	  [Ruby 1.9 - Bug #4062]
23394
23395Wed Jul 27 09:34:24 2011  Eric Hodel  <drbrain@segment7.net>
23396
23397	* lib/rubygems:  Update to RubyGems 1.8.6.1.
23398
23399Wed Jul 27 09:27:59 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
23400
23401	* test/openssl/test_pkcs12.rb: Add test and intermediate certificates.
23402	  [ Ruby 1.9 - Feature #3793 ] [ruby-core:32088]
23403
23404Wed Jul 27 01:05:32 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23405
23406	* eval_error.c (rb_print_undef_str): new function to raise
23407	  NameError for undefined method.
23408
23409	* load.c (rb_mod_autoload_p), object.c (rb_mod_const_get),
23410	  variable.c (rb_f_untrace_var, set_const_visibility), vm_method.c
23411	  (rb_mod_{remove,undef,alias}_method, set_method_visibility):
23412	  remove inadvertent symbol creation.  based on the first patch by
23413	  Jeremy Evans at [ruby-core:38447].  [Feature #5089]
23414
23415	* vm_method.c (obj_respond_to): fix the respond_to_missing? override
23416	  case.  based on the patch by Jeremy Evans at [ruby-core:38417].
23417	  [Feature #5072]
23418
23419	* parse.y (rb_check_id): make the given name a symbol or a string.
23420	  based on the second patch by Jeremy Evans at [ruby-core:38447]
23421
23422Wed Jul 27 00:50:00 2011  Kenta Murata  <mrkn@mrkn.jp>
23423
23424	* ext/bigdecimal/lib/bigdecimal/util.rb (Rational#to_d):
23425	  zero or negative precision is error.  fixes #5098.
23426	  [ruby-dev:44210]
23427
23428	* test/bigdecimal/test_bigdecimal_util.rb: add test for the above
23429	  change.
23430
23431Wed Jul 27 00:48:00 2011  Kenta Murata  <mrkn@mrkn.jp>
23432
23433	* ext/bigdecimal/lib/bigdecimal/util.rb (Float#to_d): modified for
23434	  specifying precision.  fixes #5098.  [ruby-dev:44210]
23435
23436	* test/bigdecimal/test_bigdecimal_util.rb: add test for the above
23437	  change.
23438
23439Wed Jul 27 00:45:00 2011  Kenta Murata  <mrkn@mrkn.jp>
23440
23441	* ext/bigdecimal/lib/bigdecimal/util.rb (Integer#to_d): added
23442	  for symmetry to BigDecimal() function with an Integer.
23443	  fixes #5098.  [ruby-dev:44210]
23444
23445	* test/bigdecimal/test_bigdecimal_util.rb: add test for the above
23446	  change.
23447
23448Wed Jul 27 00:30:00 2011  Kenta Murata  <mrkn@mrkn.jp>
23449
23450	* ext/bigdecimal/lib/bigdecimal/util.rb (BigDecimal#to_d): added
23451	  for adapting other Numeric subclasses.  [ruby-dev:44245]
23452
23453	* test/bigdecimal/test_bigdecimal_util.rb: test for the above change.
23454
23455Wed Jul 27 00:27:00 2011  Kenta Murata  <mrkn@mrkn.jp>
23456
23457	* bigdecimal/bigdecimal.c (VpDup) a new function for duplicating
23458	  a BigDecimal.
23459
23460	* bigdecimal/bigdecimal.c (BigDecimal_new): support generating a new
23461	  BigDecimal from another BigDecimal using BigDecimal global function
23462	  or constructor.  [ruby-dev:44245]
23463
23464Tue Jul 26 23:33:24 2011  Igor Zubkov  <igor.zubkov@gmail.com>
23465
23466	* array.c: Fix typo. https://github.com/ruby/ruby/pull/36
23467
23468Mon Jul 25 23:51:01 2011  Yusuke Endoh  <mame@tsg.ne.jp>
23469
23470	* proc.c: pre-allocate the unlinked_method_entry_list_entry struct to
23471	  avoid memory allocation during GC.  based on a patch from Eric Wong.
23472	  [ruby-core:38498]
23473
23474Mon Jul 25 23:39:33 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23475
23476	* test/rake/test_rake_directory_task.rb (TestRakeDirectoryTask#
23477	  test_directory_win32): fixed wrong test.
23478
23479Mon Jul 25 22:36:11 2011  Yusuke Endoh  <mame@tsg.ne.jp>
23480
23481	* proc.c (struct METHOD), gc.c (gc_marks), vm_method.c
23482	  (rb_gc_mark_unlinked_live_method_entries): fix SEGV bug.
23483	  rb_method_entry_t was free'd even when the method is still on the
23484	  stack if it is BMETHOD (i.e., Method#call).  This is because
23485	  rb_method_entry_t is embedded in struct METHOD.  This commit
23486	  separates them and marks the live method entries.
23487	  See [ruby-core:38449] in detail.  fix [Bug #5047] [ruby-core:38171]
23488
23489Mon Jul 25 22:14:37 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
23490
23491	* lib/xmlrpc/client.rb: Fix possible HTTP header formatting failure by
23492	  'Basic' header. Long username caused the base64 String truncation in
23493	  HTTP header which is not allowed. See #5046.
23494
23495	* test/xmlrpc/test_webrick_server.rb: test it.
23496
23497Mon Jul 25 15:04:33 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
23498
23499	* ext/openssl/lib/openssl.rb: End of transition period introduced by
23500	  [ruby-dev:38018]. From the next version of 1.9.3, you should use
23501	    require "openssl"
23502	  instead of
23503	    require "openssl/ssl"
23504	  and
23505	    require "openssl/x509"
23506
23507Mon Jul 25 13:46:38 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
23508
23509	* ext/openssl/lib/openssl/x509.rb: Cosmetic change: move definition
23510	  introduced in r30152 to x509-internal.rb.
23511
23512Mon Jul 25 13:09:42 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
23513
23514	* ext/openssl/ossl_ssl.c (ossl_ssl_shutdown): Avoid randomly generated
23515	  SSLError from SSLSocket just after invoking SSLSocket#close.
23516	  OpenSSL's SSL_shutdown could try to send alert packet and it might
23517	  set SSLerr(global error stack) as the result. It causes the next
23518	  SSL read/write operation to fail by unrelated reason.
23519
23520	  By design, we're ignoring any error at SSL_shutdown() so we clear
23521	  global error stack after SSL_shutdown is called. See #5039.
23522
23523Sun Jul 24 20:29:53 2011  Tanaka Akira  <akr@fsij.org>
23524
23525	* ext/socket/extconf.rb: refine the recvmsg test.
23526
23527Sun Jul 24 20:02:31 2011  Tanaka Akira  <akr@fsij.org>
23528
23529	* ext/socket/extconf.rb: fix the recvmsg test.
23530
23531Sun Jul 24 08:42:51 2011  Tanaka Akira  <akr@fsij.org>
23532
23533	* ext/socket/extconf.rb: test recvmsg allocates file descriptors for
23534	  fd passing even with MSG_PEEK.
23535
23536	* ext/socket/ancdata.c: use the above test result.
23537
23538Sun Jul 24 01:04:50 2011  Eric Hodel  <drbrain@segment7.net>
23539
23540	* lib/rubygems/specification.rb:  Restore behavior of
23541	  Gem::Specification#loaded.  [Ruby 1.9 - Bug #5032]
23542
23543Sun Jul 24 00:05:00 2011  Jeremy Evans  <merch-redmine@jeremyevans.net>
23544
23545	* error.c (rb_name_error_str): new function to raise NameError
23546	  with the name string but not ID.
23547
23548	* object.c, proc.c, variable.c: more removal of inadvertent symbol
23549	  creation.  [Feature #5079]
23550
23551Sat Jul 23 21:14:00 2011  Tadayoshi Funaba  <tadf@dotrb.org>
23552
23553	* lib/cmath.rb (cbrt): should return a real number if possible.
23554
23555Sat Jul 23 20:12:52 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23556
23557	* test/rake/test_rake_functional.rb (setup): Use __FILE__ for the base
23558	  directory. Current directory is not the top source directory when
23559	  the building process runs on other than there.
23560
23561	* test/rake/test_rake_rake_test_loader.rb: ditto.
23562
23563	* test/rake/test_rake_task_argument_parsing.rb
23564	  (test_terminal_width_using_hardcoded_80): hardcoded 80 is used
23565	  when app.unix? is false.
23566
23567Sat Jul 23 20:11:50 2011  Tadayoshi Funaba  <tadf@dotrb.org>
23568
23569	* ext/date/date_core.c: an issue that is same as  [ruby-dev:44071].
23570	* ext/date/date_strftime.c: identical to [ruby-dev:44112].
23571
23572Sat Jul 23 19:12:53 2011  Masaki Suketa <masaki.suketa@nifty.ne.jp>
23573
23574	* test/win32ole/test_err_in_callback.rb (test_err_in_callback):
23575	  skip test if ADODB.connection is not available.
23576
23577Sat Jul 23 15:37:04 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23578
23579	* parse.y (rb_enc_symname_type): :$a!, @a! and so on are not
23580	  valid symbols, so they should be inspected with quotes.
23581
23582Sat Jul 23 17:06:25 2011  Tanaka Akira  <akr@fsij.org>
23583
23584	* io.c (rb_update_max_fd): validate fd.
23585
23586	* ext/socket/rubysocket.h (rsock_discard_cmsg_resource): add
23587	  msg_peek_p argument for the declaration.
23588
23589	* ext/socket/ancdata.c (discard_cmsg): add msg_peek_p argument.
23590	  assume FreeBSD, NetBSD and MacOS X doesn't generate passed fd
23591	  when MSG_PEEK.
23592	  (rsock_discard_cmsg_resource): add msg_peek_p argument.
23593	  (bsock_recvmsg_internal): call rsock_discard_cmsg_resource with
23594	  msg_peek_p argument.
23595
23596	* ext/socket/unixsocket.c (unix_recv_io): call
23597	  rsock_discard_cmsg_resource with msg_peek_p argument.
23598
23599Sat Jul 23 14:38:28 2011  Eric Hodel  <drbrain@segment7.net>
23600
23601	* test/rake*: Remove dependencies on flexmock and session gems.
23602	  [Ruby 1.9 - Bug #4987]
23603
23604Sat Jul 23 12:19:04 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23605
23606	* parse.y (rb_check_id): take care of attrset ID created
23607	  implicitly by local ID.  [Bug #5084]
23608
23609	* parse.y (rb_check_id): conversion condition was inverse.
23610	  [Bug #5084]
23611
23612Fri Jul 22 21:46:54 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23613
23614	* vm_insnhelper.c (vm_call_cfunc): added volatile for a workaround
23615	  of cfp consistency error problem on OS X 10.7 (Lion). It's
23616	  suspected llvm optimization bug.
23617	  [Bug #5074] [ruby-dev:44185]
23618
23619Fri Jul 22 21:18:20 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23620
23621	* lib/uri/generic.rb (WFKV_): unroll the loop of regexp.
23622
23623	* lib/uri/generic.rb (URI.decode_www_form_component): ditto.
23624
23625Fri Jul 22 21:06:39 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23626
23627	* object.c (rb_mod_{const,cvar}_defined, rb_obj_ivar_defined):
23628	  avoid inadvertent symbol creation in reflection methods.  based
23629	  on a patch by Jeremy Evans at [ruby-core:38367].  [Feature #5072]
23630
23631	* vm_method.c (rb_mod_method_defined)
23632	  (rb_mod_{public,private,protected}_method_defined)
23633	  (obj_respond_to): ditto.
23634
23635	* parse.y (rb_check_id): new function returns already interned ID
23636	  or 0.
23637
23638Fri Jul 22 20:44:49 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23639
23640	* parse.y (rb_is_global_id, rb_is_attrset_id): add missing
23641	  predicates.
23642
23643Fri Jul 22 20:24:38 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
23644
23645	* test/ruby/test_object.rb (TestObject#test_respond_to_missing):
23646	  2nd argument of respond_to_missing? is not optional.
23647
23648Fri Jul 22 19:05:47 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23649
23650	* parse.y (rb_enc_symname2_p): get rid of potential out-of-bound
23651	  access.
23652
23653Fri Jul 22 13:55:59 2011  Eric Hodel  <drbrain@segment7.net>
23654
23655	* lib/net/http.rb:  Net::HTTP#finish is used to manually close
23656	  connections.  [Ruby 1.9 - Bug #5045]
23657
23658Fri Jul 22 13:51:29 2011  Eric Hodel  <drbrain@segment7.net>
23659
23660	* ext/readline/readline.c:  Add examples for Readline.completion_proc=.
23661	  [Ruby 1.9 - Bug #5057]
23662
23663Fri Jul 22 13:03:12 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
23664
23665	* ext/openssl/ossl_hmac.c: Revert checking return type of
23666	  HMAC_Init_ex as it is not compatible with OpenSSL < 1.0.0.
23667
23668Fri Jul 22 12:10:21 2011  Eric Hodel  <drbrain@segment7.net>
23669
23670	* tool/rbinstall.rb (default gems):  Install executables into the fake
23671	  gem dir for Gem.bin_path.  [#4485]
23672
23673Fri Jul 22 11:20:20 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
23674
23675	* ext/openssl/ossl_digest.c: Check return value of EVP_DigestInit_ex.
23676	* ext/openssl/ossl_hmac.c: Check return value of HMAC_Init_ex.
23677	  Thanks, Jared Jennings, for the patch.
23678	  [ Ruby 1.9 - Bug #4944 ] [ruby-core:37670]
23679
23680Fri Jul 22 09:09:43 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
23681
23682	* ext/openssl/ossl_engine.c: Avoid double free of ENGINE reference.
23683	* test/openssl/test_engine.rb: Add a test for it.
23684	  Thanks to Ippei Obayashi for providing the patch.
23685	  [ Ruby 1.9 - Bug #5062 ] [ruby-dev:44173]
23686
23687Fri Jul 22 06:37:13 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
23688
23689	* lib/csv.rb: Do not modify CSV.generate's argument [ruby-core:38356]
23690
23691Thu Jul 21 20:59:59 2011  Tanaka Akira  <akr@fsij.org>
23692
23693	* ext/socket/ancdata.c (discard_cmsg): workaround for MacOS X Lion.
23694
23695Thu Jul 21 20:02:11 2011  Yusuke Endoh  <mame@tsg.ne.jp>
23696
23697	* thread.c (set_trace_func, thread_set_trace_func_m): reset tracing
23698	  state when set_trace_func hook is removed.  This is workaround patch
23699	  to force to reset tracing state that is broken by continuation call.
23700	  a patch from James M. Lawrence.  [Feature #4347] [ruby-core:34998]
23701
23702	* test/ruby/test_continuation.rb (class TestContinuation): add a test
23703	  for above.  a patch from James M. Lawrence.
23704
23705Thu Jul 21 19:27:19 2011  Yusuke Endoh  <mame@tsg.ne.jp>
23706
23707	* node.c (dump_node): add today's knowledge.  "init arguments (m)" and
23708	  "init arguments (p)" of compile.c indicates a Ruby code that
23709	  evaluates multiple assignments that is in method or block
23710	  parameters:  def foo((m1,m2), (m3,m4), *r, (p1,p2), (p3,p4)); end
23711	  The former (init arguments (m)) evaluates the multiple assignments
23712	  before rest argument, that are (m1,m2) and (m3,m4).  The letter
23713	  (init arguments (p)) does ones after rest argument, that are
23714	  (p1,p2) and (p3, p4).
23715
23716Thu Jul 21 18:11:07 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23717
23718	* enum.c (enum_inject): remove empty line to notify rdoc
23719	  Enumerable#reduce is alias. patched by milki@github.
23720	  https://github.com/ruby/ruby/pull/26
23721
23722Thu Jul 21 17:30:21 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23723
23724	* array.c (rb_ary_delete_at_m): use simple array literal in rdoc.
23725	  patched by samuel tonini. [ruby-core:38310] [Bug #5066]
23726
23727Thu Jul 21 17:14:21 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23728
23729	* lib/webrick/httprequest.rb (WEBrick::HTTPRequest#each):
23730	  Allow HTTP/0.9 request which doesn't has any header or body.
23731	  patched by Felix Jodoin. [ruby-core:38040] [Bug #5022]
23732
23733Wed Jul 20 23:02:18 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
23734
23735	* io.c (rb_update_max_fd): remove parentheses. they are not in
23736	  macro.
23737
23738Wed Jul 20 22:22:23 2011  Tanaka Akira  <akr@fsij.org>
23739
23740	* include/ruby/intern.h (rb_update_max_fd): declaration moved from
23741	  internal.h.
23742
23743	* file.c: ditto.
23744
23745	* io.c: call rb_update_max_fd for each new fds.
23746
23747	* process.c: ditto.
23748
23749	* random.c: ditto.
23750
23751	* ruby.c: ditto.
23752
23753	* ext/io/console/console.c: ditto.
23754
23755	* ext/openssl/ossl_bio.c: ditto.
23756
23757	* ext/pty/pty.c: ditto.
23758
23759	* ext/socket/init.c: ditto.
23760
23761	* ext/socket/socket.c: ditto.
23762
23763	* ext/socket/ancdata.c: ditto.
23764
23765	* ext/socket/unixsocket.c: ditto.
23766
23767Wed Jul 20 15:16:22 2011  NARUSE, Yui  <naruse@ruby-lang.org>
23768
23769	* ext/dl/handle.c (dlhandle_sym): clear previous error with dlerror()
23770	  before calling dlsym(). [ruby-dev:44091] [Bug #5021]
23771
23772Wed Jul 20 07:16:26 2011  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
23773
23774	* NEWS: mention Kernel#warn.  [ruby-core:38119] [Feature #5029]
23775
23776Tue Jul 19 16:40:45 2011  TAKANO Mitsuhiro (takano32)  <tak@no32.tk>
23777
23778	* cont.c (cont_save_thread): fix missing semicolon.
23779
23780Tue Jul 19 16:25:15 2011  Tanaka Akira  <akr@fsij.org>
23781
23782	* io.c (UPDATE_MAXFD): removed.
23783
23784Tue Jul 19 16:07:45 2011  Tanaka Akira  <akr@fsij.org>
23785
23786	* io.c (rb_update_max_fd): new function.
23787
23788	* internal.h (rb_update_max_fd): declare rb_update_max_fd.
23789
23790	* thread_pthread.c (rb_thread_create_timer_thread): update max fd when
23791	  timer thread pipe is created.
23792
23793Mon Jul 18 13:36:47 2011  Aaron Patterson <aaron@tenderlovemaking.com>
23794
23795	* ext/psych/lib/psych.rb: define a new BadAlias error class.
23796
23797	* ext/psych/lib/psych/visitors/to_ruby.rb: raise an exception when
23798	  deserializing an alias that does not exist.
23799
23800	* test/psych/test_merge_keys.rb: corresponding test.
23801
23802Mon Jul 18 00:00:46 2011  Shugo Maeda  <shugo@ruby-lang.org>
23803
23804	* ext/curses/curses.c: added the new class Curses::Pad, which
23805	  supports scrolling.  patch by Eric Hodel.  [Feature #4896]
23806	  [ruby-core:37206]
23807
23808Sun Jul 17 16:26:40 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23809
23810	* error.c (rb_check_trusted): new function to check an object is
23811	  trusted.
23812
23813	* struct.c (rb_struct_modify), time.c (time_modify): check by the
23814	  above function to show proper class names.  [Bug #5036]
23815
23816Sun Jul 17 15:30:04 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23817
23818	* error.c (rb_warn_m): accept multiple args in like puts.  rdoc
23819	  patch by Erik Price at [ruby-core:38119].  [Feature #5029]
23820
23821Sun Jul 17 07:56:31 2011  Martin Bosslet  <Martin.Bosslet@googlemail.com>
23822
23823	* test/openssl/test_ssl_session.rb: add PEM SSL session without TLS
23824	  extensions. Use this as the default for the tests to ensure
23825	  compatibility with OpenSSL 0.9.7.
23826	  [ Ruby 1.9 - Bug #4961 ] [ruby-core:37726]
23827
23828Sat Jul 16 17:29:20 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23829
23830	* configure.in (RUBY_UNIVERSAL_ARCH): restore arch flag.
23831	  Bug #4977
23832
23833Sat Jul 16 06:27:51 2011  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>
23834
23835	* lib/uri/common.rb (module): Remove optional parser argument to
23836	  Kernel#URI
23837	  [ruby-core:38061]
23838
23839	* lib/uri/generic.rb (module): ditto
23840
23841Sat Jul 16 03:19:45 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23842
23843	* win32/win32.c (is_socket, is_console): add prototypes to fix compile
23844	  problem with gcc introduced at r32549.
23845	  reported by Jon Forums. [Bug #5030] [ruby-core:38079]
23846
23847Sat Jul 16 00:55:38 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23848
23849	* time.c (time_dup): used rb_obj_class() instead of CLASS_OF().
23850	  The patch is made by Kazuki Tsujimoto. [Bug #5012] [ruby-dev:44071]
23851
23852	* test/ruby/test_time.rb (TestTime#test_getlocal_dont_share_eigenclass):
23853	  added a new test for eigenclass of time object.
23854
23855Fri Jul 15 19:11:00 2011  Kenta Murata  <mrkn@mrkn.jp>
23856
23857	* bignum.c (bigsub_int): add RB_GC_GUARD.  This patch is made by
23858	  Makoto Kishimoto.  fixes #4223 [ruby-dev:42907]
23859
23860	* bignum.c (bigadd_int): ditto.
23861
23862Fri Jul 15 14:27:53 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23863
23864	* win32/win32.c, include/ruby/win32.h (rb_w32_io_cancelable_p): renamed
23865	  from rb_w32_has_cancel_io().  now it takes a parameter as fd to check
23866	  the fd is console or not, because we cannot cancel console input even
23867	  if we have cancel_io function.
23868
23869	* io.c (WAIT_FD_IN_WIN32): call above function instead of the old one,
23870	  so now we can kill the thread which calls STDIN.gets.
23871	  the problem was reported by ko1 via IRC.
23872
23873Fri Jul 15 09:10:41 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
23874
23875	* ext/digest/sha2/sha2.c (SHA256_Update, SHA512_Update): avoid Bus
23876	  Error caused by unalignment access on Sparc-Solaris (and possibly on
23877	  other similar environment.) This patch just do memcpy always instead
23878	  of checking architecture. I see no perf drop on my 64bit env. For
23879	  more details, see #4320.
23880
23881	* test/digest/test_digest.rb: add test for unalignment access.
23882
23883Fri Jul 15 01:51:25 2011  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23884
23885	* regint.h (PLATFORM_UNALIGNED_WORD_ACCESS): Power PC does not
23886	  allow unaligned word access.
23887
23888	* st.c (UNALIGNED_WORD_ACCESS): x86_64 allows unaligned word
23889	  access as well as i386.
23890
23891Thu Jul 14 12:19:34 2011  Hiroshi Nakamura  <nahi@ruby-lang.org>
23892
23893	* ext/openssl/ossl.c (ossl_verify_cb): trap the exception from
23894	  verify callback of SSLContext and X509Store and make the
23895	  verification fail normally. Raising exception directly from callback
23896	  causes orphan resources in OpenSSL stack. Patched by Ippei Obayashi.
23897	  See #4445.
23898
23899	* test/openssl/test_ssl.rb
23900	  (test_exception_in_verify_callback_is_ignored): test it.
23901
23902Tue Jul 12 23:41:49 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23903
23904	* NEWS: add a description of Signal.trap change.
23905
23906Tue Jul 12 20:02:35 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23907
23908	* signal.c (reserved_signal_p): reverted a part of r32523.
23909	  chikanaga noticed trap(:CHLD) has some realworld usecase.
23910	* test/ruby/test_signal.rb (TestSignal#test_reserved_signal):
23911	  ditto.
23912
23913Tue Jul 12 17:12:45 2011  Yukihiro Matsumoto  <matz@ruby-lang.org>
23914
23915	* vm_method.c (rb_add_method): should not call method_added hook
23916	  for undef operation. [Bug #5015]
23917
23918Tue Jul 12 16:58:44 2011  Shota Fukumori  <sorah@tubusu.net>
23919
23920	* lib/test/unit.rb(Test::Unit::Options#process_args): Fix bug.
23921	  Fix process_args didn't return `@option` after r30939.
23922
23923Tue Jul 12 14:07:46 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23924
23925	* signal.c (install_sighandler): fixed a race.
23926
23927Tue Jul 12 13:49:32 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23928
23929	* signal.c (sig_trap): don't permit to change a signal handler which
23930	  the interpreter reserved.
23931	* signal.c (reserved_signal_p): ditto.
23932	  [Bug #2616] [ruby-core:27625]
23933
23934	* test/ruby/test_signal.rb (TestSignal#test_reserved_signal):
23935	  added a test for reserved signal.
23936
23937Tue Jul 12 11:58:28 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23938
23939	* win32/setup.mak: support x86-amd64 cross compile environment.
23940
23941Mon Jul 11 23:22:28 2011  Yutaka Kanemoto  <kanemoto@ruby-lang.org>
23942
23943	* time.c: can't compile time.c on AIX due to missing declaration for
23944	  ffs(). It is declared in strings.h on AIX.
23945
23946Mon Jul 11 15:54:24 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23947
23948	* process.c: removed signal() macro. It's no longer used.
23949
23950Mon Jul 11 15:02:24 2011  NAKAMURA Usaku  <usa@ruby-lang.org>
23951
23952	* numeric.c (rb_num2ull): use FIX2LONG instead of FIX2ULONG. see
23953	  rb_num2ulong(). fixed the problem of ObjectSpace._id2ref of IL32LLP64
23954	  platforms, introduced at r32433.
23955
23956Mon Jul 11 05:38:05 2011  Yutaka Kanemoto  <kanemoto@ruby-lang.org>
23957
23958	* thread_pthread.c (get_stack): need to adjust stack addr for
23959	  [Bug #1813] on AIX.
23960
23961Mon Jul 11 01:16:27 2011  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>
23962
23963	* thread_pthread.c (rb_thread_create_timer_thread): removed
23964	  rb_disable_interrupt()/rb_enable_interrupt().
23965	* vm_core.h: ditto.
23966	* process.c (static void before_exec): ditto.
23967	* process.c (static void after_exec): ditto.
23968	  [Bug #4765] [ruby-dev:43571]
23969
23970	* eval_intern.h: removed rb_trap_restore_mask().
23971	* vm_eval.c (rb_throw_obj): ditto.
23972	* eval.c (setup_exception): ditto.
23973
23974	* signal.c: removed trap_last_mask.
23975	* signal.c (trap_restore_mask): removed.
23976	* signal.c (init_sigchld): comment clarification why signal block
23977	  is needed. and removed trap_last_mask operation.
23978	* signal.c (trap_ensure): removed trap_last_mask operation.
23979
23980	* signal.c (rb_disable_interrupt, rb_enable_interrupt): made
23981	  static and removed sigdelset(SIGVTALRM) and sigdelset(SIGSEGV).
23982
23983	* process.c (rb_syswait): removed implicit signal handler change.
23984
23985Sun Jul 10 23:49:12 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
23986
23987	* docs/NEWS-1.9.3: moved from NEWS.
23988
23989	* docs/ChangeLog-1.9.3: merged ChangeLog for 1.9.3.
23990
23991	* NEWS: NEWS for 1.9.4 that describes changes since 1.9.3
23992
23993	* ChangeLog: new ChangeLog for 1.9.4.
23994
23995Sun Jul 10 23:30:52 2011  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
23996
23997	* version.h (RUBY_VERSION): ruby_1_9_3 branch was forked.
23998
23999For the changes before 1.9.3, see doc/ChangeLog-1.9.3
24000For the changes before 1.8.0, see doc/ChangeLog-1.8.0
24001
24002Local variables:
24003coding: us-ascii
24004add-log-time-format: (lambda ()
24005  (let* ((time (current-time))
24006	 (system-time-locale "C")
24007	 (diff (+ (cadr time) 32400))
24008	 (lo (% diff 65536))
24009	 (hi (+ (car time) (/ diff 65536))))
24010  (format-time-string "%a %b %e %H:%M:%S %Y" (list hi lo) t)))
24011indent-tabs-mode: t
24012tab-width: 8
24013change-log-indent-text: 2
24014end:
24015vim: tabstop=8 shiftwidth=2
24016