Fri Nov 22 12:44:56 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* util.c (ruby_strtod): ignore too long fraction part, which does not
	  affect the result.

Fri Nov  1 00:08:21 2013  Martin Bosslet  <Martin.Bosslet@gmail.com>

	* test/openssl/test_pkey_ec.rb: Skip tests for "Oakley" curves as
	  they are not suitable for ECDSA.
	  [ruby-core:54881] [Bug #8384]

Fri Nov  1 00:04:17 2013  Marc-Andre Lafortune  <ruby-core@marc-andre.ca>

	* parse.y: Remove +(binary) and -(binary) special cases
	  [Feature #9048]

Thu Oct 31 23:57:22 2013  Benoit Daloze  <eregontp@gmail.com>

	* test/ruby/test_array.rb (test_count): add a test case for #count
	  with an argument. See Bug #8654.

Thu Oct 31 23:57:22 2013  Benoit Daloze  <eregontp@gmail.com>

	* array.c (rb_ary_count): check length to avoid SEGV
	  while iterating. Remove other pointer loop when arg is given.

	* test/ruby/test_array.rb (test_count): add test for bug.
	  [ruby-core:56072] [Bug #8654]

Thu Oct 31 23:57:22 2013  Masaki Matsushita  <glass.saga@gmail.com>

	* array.c (rb_ary_count): iterate items appropriately.
	  [Bug #8654]

Thu Oct 31 23:42:39 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* lib/tempfile.rb (Tempfile#unlink): finalizer is no longer needed
	  after unlinking.  patched by by normalperson (Eric Wong) at
	  [ruby-core:56521] [Bug #8768]

Thu Oct 31 23:40:43 2013  Zachary Scott  <e@zzak.io>

	* lib/gserver.rb: [DOC] correct gserver.rb license [Bug #8913]

Thu Oct 31 23:35:12 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* vsnprintf.c (MAXEXP, MAXFRACT): calculate depending on constants in
	  float.h.

	* vsnprintf.c (BSD_vfprintf): limit length for cvt() to get rid of
	  buffer overflow.  [ruby-core:57023] [Bug #8864]

	* vsnprintf.c (exponent): make expbuf size more precise.

Thu Oct 31 23:32:41 2013  Michal Rokos  <michal@rokos.cz>

	* configure.in (sys/pstat.h): fix missing header check for
	  missing/setproctitle.c on HP-UX.  [ruby-core:56644] [Bug #8792]

Thu Oct 31 23:25:25 2013  Martin Bosslet  <Martin.Bosslet@gmail.com>

	* ext/openssl/ossl_pkey_ec.c: Ensure compatibility to builds of
	  OpenSSL with OPENSSL_NO_EC2M defined, but OPENSSL_NO_EC not
	  defined.
	* test/openssl/test_pkey_ec.rb: Iterate over built-in curves
	  (and assert their non-emptiness!) instead of hard-coding them, as
	  this may cause problems with respect to the different availability
	  of individual curves in individual OpenSSL builds.
	  [ruby-core:54881] [Bug #8384]

	  Thanks to Vit Ondruch for providing the patch!

Thu Oct 31 23:22:35 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* object.c (rb_obj_cmp): [DOC] patched by Keith Bennett
	  <kbennett AT verisign.com>.  [ruby-core:57887] [Backport #9024]

Thu Oct 31 23:10:30 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>

	* test/dl/test_base.rb: {libc, libm} detection now handle GNU/Hurd
	  correctly. Patch by Gabriele Giacone (1o5g4r8o@gmail.com).
	  [Bug #8937][ruby-core:57311]
	* test/fiddle/helper.rb: ditto.

Thu Oct 31 23:05:33 2013  Tanaka Akira  <akr@fsij.org>

	* lib/time.rb (Time.strptime): Time.strptime('0', '%s') returns local
	  time Time object as Ruby 2.0 and before.

Thu Oct 31 23:05:33 2013  Tanaka Akira  <akr@fsij.org>

	* lib/time.rb (Time.strptime): Use :offset.
	  Patch by Felipe Contreras.  [ruby-core:57694]

Thu Oct 31 22:49:56 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* io.c (rb_io_close_read): duplex IO should wait its child process
	  even after close_read.

Thu Oct 31 22:49:56 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* io.c (rb_io_close_read): keep fptr in write_io to be discarded, to
	  fix freed pointer access when it is in use by other threads, and get
	  rid of potential memory/fd leak.

Mon Sep  2 17:21:47 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* ext/date/date_parse.c (rfc2822_cb): check if wday is given, since it
	  can be omitted.

Mon Aug 19 18:36:37 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* test/webrick/test_cgi.rb (TestWEBrickCGI#{start_cgi_server,test_cgi}):
	  mswin is not only mswin32 but also mswin64. [Bug #8746]

Mon Aug 19 18:34:31 2013  Charlie Somerville  <charliesome@ruby-lang.org>

	* test/openssl/test_ssl.rb: Fix test for CVE-2013-4073.
	  Patch by Antonio Terceiro. [Bug #8750] [ruby-core:56437]

Mon Aug 19 18:31:26 2013  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>

	* parse.y: fix build error with bison-3.0.

Fri Aug 16 15:35:10 2013  Tadayoshi Funaba  <tadf@dotrb.org>

	* ext/date/date_{core,strftime}.c: [ruby-core:46990].

Wed Aug 14 09:56:55 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* lib/mkmf.rb (have_framework): allow header file to check.
	  [ruby-core:55745] [Bug #8593]

Fri Aug  9 16:29:22 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* lib/mkmf.rb (xsystem): expand environment variable in all macros not
	  expanded with RbConfig.  [Bug #8702]

	* test/mkmf/test_framework.rb (create_framework): replace all $@ not
	  only once.

Fri Aug  9 15:59:22 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* parse.y (parser_peek_variable_name): treat invalid global, class,
	  and instance variable names as mere strings rather than errors.
	  [ruby-core:54885] [Bug #8375]

Fri Aug  9 15:59:22 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* parse.y (parser_yylex): fail if $, @, @@ are not followed by a valid
	  name character.  [ruby-core:54846] [Bug #8375].

Fri Aug  9 15:56:05 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* lib/net/http.rb (Net::HTTP#send_request_with_body_stream): use
	  String#bytesize instead of String#length.
	  reported by shekhei (shek hei wong) at [ruby-core:53775]
	  [Backport #8176].

Fri Aug  9 15:50:11 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* win32/win32.c (wrename): use MoveFileExW instead of MoveFileW,
	  because the latter fails on cross device file move of some
	  environments.
	  fix [ruby-core:53492] [Bug #8109]
	  reported by mitchellh (Mitchell Hashimoto)

Thu Aug  8 16:09:26 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* test/coverage/test_coverage.rb (TestCoverage#test_big_code): use `1'
	  instead of `p' to get rid of a side effect.
	  Kernel#p without any argument seems to do nothing, but flushes stdout.
	  and, if stdout is redirected to file, fsync() will be called on
	  Windows.  so, when running test-all on Windows with redirection, such
	  as CI environment, this test took a lot of time.

Fri Aug  2 20:41:15 2013  Eric Hodel  <drbrain@segment7.net>

	* ext/openssl/ossl_asn1.c (asn1time_to_time):  Implement YYMMDDhhmmZ
	  format for ASN.1 UTCTime.  [ruby-trunk - Bug #8664]
	* test/openssl/test_asn1.rb:  Test for the above.

Fri Aug  2 20:34:06 2013  Masaki Matsushita  <glass.saga@gmail.com>

	* io.c (io_getpartial): use rb_str_locktmp_ensure().
	  [ruby-core:56121] [Bug #8669]

	* io.c (rb_io_sysread): ditto.

	* test/ruby/test_io.rb: add tests for above.

Fri Aug  2 20:34:06 2013  Masaki Matsushita  <glass.saga@gmail.com>

	* string.c: add internal API rb_str_locktmp_ensure().

	* io.c (io_fread): use rb_str_locktmp_ensure().
	  [ruby-core:56121] [Bug #8669]

	* test/ruby/test_io.rb: add a test for above.

Fri Aug  2 20:03:39 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* rational.c (f_round_common): Rational is expected to be returned by
	  Rational#*, but mathn.rb breaks that assumption.  [ruby-core:56177]
	  [Bug #8687]

Wed Jul 17 11:00:21 2013  Tadayoshi Funaba  <tadf@dotrb.org>

	* ext/date/date_core.c: [ruby-core:46058].

Wed Jul 17 10:14:37 2013  Martin Bosslet  <Martin.Bosslet@gmail.com>

	* lib/openssl/ssl-internal.rb: Fix SSL client connection crash for SAN
	  marked critical.
	  The patch for CVE-2013-4073 caused SSL crash when a SSL server returns
	  the certificate that has critical SAN value.  X509 extension could
	  include 2 or 3 elements in it:

	  [id, criticality, octet_string] if critical,
	  [id, octet_string] if not.

	  Making sure to pick the last element of X509 extension and use it as
	  SAN value.
	  [ruby-core:55685] [Bug #8575]

	  Thank you @nahi for providing the patch!

Wed Jul 17 09:59:33 2013  Tadayoshi Funaba  <tadf@dotrb.org>

	* ext/date/date_core.c: fixed coding error [ruby-core:55337].
	  reported by Riley Lynch.

Wed Jul 17 09:59:33 2013  Tadayoshi Funaba  <tadf@dotrb.org>

	* ext/date/date_core.c: fixed a bug [ruby-core:55295].  reported
	  by Riley Lynch.

Thu Jul 11 10:07:15 2013  Kenta Murata  <mrkn@mrkn.jp>

	* ext/bigdecimal/bigdecimal.c (BigMath_s_exp): Fix for the cases when
	  the argument x is not a BigDecimal.
	  This change is based on the patch made by Heesob Park and Garth Snyder.
	  [Bug #6862] [ruby-core:47145]
	  [Fix GH-332] https://github.com/ruby/ruby/pull/332

Wed Jul 10 10:27:12 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* include/ruby/intern.h (rb_path_next, rb_path_skip_prefix,
	  rb_path_last_separator, rb_path_end, ruby_find_basename,
	  ruby_find_extname): restore the declarations of these functions for
	  backword compatibility.

	* filc.c (rb_path_next, rb_path_skip_prefix, rb_path_last_separator,
	  rb_path_end, ruby_find_basename, ruby_find_extname): implements
	  these functions as the wrapper of rb_enc_*().

Wed Jul 10 10:05:40 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* include/ruby/intern.h (rb_f_lambda): restore the declaration of
	  rb_f_lambda() for backword compatibility.

Thu Jun 27 20:11:52 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* ext/openssl/lib/openssl/ssl-inernal.rb (verify_certificate_identity):
	  fix hostname verification. Patched by nahi.

	* test/openssl/test_ssl.rb (test_verify_certificate_identity): test for
	  above.

Wed Jun 26 18:28:29 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* test/ruby/test_m17n.rb: assert_predicate and assert_not_predicate
	  is not available on 1.9.3.

Wed Jun 26 17:08:13 2013  Kazuki Tsujimoto  <kazuki@callcc.net>

	* include/ruby/ruby.h, vm_eval.c (rb_funcall_with_block):
	  new function to invoke a method with a block passed
	  as an argument.

	* string.c (sym_call): use the above function to avoid
	  a block sharing. [ruby-dev:47438] [Bug #8531]

	* vm_insnhelper.c (vm_yield_with_cfunc): don't set block
	  in the frame.

	* test/ruby/test_symbol.rb (TestSymbol#test_block_given_to_proc):
	  run related tests.

Wed Jun 26 17:01:22 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* benchmark/bm_hash_shift.rb: add benchmark for Hash#shift

	* hash.c (rb_hash_shift): use st_shift if hash is not being iterated to
	  delete element without iterating the whole hash.

	* hash.c (shift_i): remove function

	* include/ruby/st.h (st_shift): add st_shift function

	* st.c (st_shift): ditto

	[Backport #8328] [ruby-core:55250] Patch by funny-falcon

Wed Jun 26 16:52:57 2013  Kazuki Tsujimoto  <kazuki@callcc.net>

	* test/ruby/test_proc.rb (TestProc#test_block_given_method_to_proc):
	  run test for r41359.

Wed Jun 26 16:52:57 2013  Kazuki Tsujimoto  <kazuki@callcc.net>

	* include/ruby/intern.h, proc.c (rb_method_call_with_block):
	  new function to invoke a Method object with a block passed
	  as an argument.

	* proc.c (bmcall): use the above function to avoid a block sharing.
	  [ruby-core:54626] [Bug #8341]

	* test/ruby/test_proc.rb (TestProc#test_block_persist_between_calls):
	  run related tests.

Wed Jun 26 16:36:39 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* defs/id.def (predefined): add "idProc".

	* proc.c (mnew, mproc, mlambda): use predefined IDs.

	* vm.c (Init_VM): ditto.

Wed Jun 26 16:36:39 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* include/ruby/intern.h (rb_block_lambda): add declaration instead of
	  deprecated rb_f_lambda.

Wed Jun 26 16:31:49 2013  Shugo Maeda  <shugo@ruby-lang.org>

	* lib/net/imap.rb (capability_response): should ignore trailing
	  spaces.  Thanks, Peter Kovacs.  [ruby-core:55024] [Bug #8415]

	* test/net/imap/test_imap_response_parser.rb: related test.

Wed Jun 26 16:29:41 2013  Charlie Somerville  <charliesome@ruby-lang.org>

	* intern.h: remove dangling rb_class_init_copy declaration
	  [ruby-core:55120] [Bug #8434]

Wed Jun 26 16:22:12 2013  Charlie Somerville  <charliesome@ruby-lang.org>

	* class.c (include_modules_at): invalidate method cache if included
	  module contains constants

	* test/ruby/test_module.rb: add test

Wed Jun 26 16:13:25 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* io.c (io_getc): fix 7bit coderange condition, check if ascii read
	  data instead of read length. [ruby-core:55444] [Bug #8516]

Wed Jun 26 16:10:01 2013  Eric Hodel  <drbrain@segment7.net>

	* ext/socket/extconf.rb:  Enable RFC 3542 IPV6 socket options for OS X
	  10.7+.  [ruby-trunk - Bug #8517]

Wed Jun  5 12:38:14 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* win32/win32.c (setup_overlapped, finish_overlapped): extract from
	  rb_w32_read() and rb_w32_write().

Wed May 29 21:03:08 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* configure.in (POSTLINK): default to : command to get rid of flag
	  only command, since BSD make does not work with it.

Wed May 29 20:59:38 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* lib/yaml.rb: documentation updates, patched by zzak.
	  [ruby-core:54735] [Backport #8356]

Wed May 15 14:04:39 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* Makefile.in (miniruby): 1.9.3 doesn't have POSTLINK macro.
	  reported by Takahiro Kambe at [ruby-list:49362].

Wed May 15 01:06:26 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* include/ruby/intern.h: should include sys/time.h for struct timeval
	  if it exists.

Wed May 15 00:23:07 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* configure.in (warnflags): disable -Werror by default unless
	  development.  [ruby-core:52131] [Bug #7830]

Wed May 15 00:21:31 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* signal.c: need to include unistd.h for write(2).

Tue May 14 20:25:58 2013  CHIKANAGA Tomoyuki  <nagachika@ruby-lang.org>

	* ext/dl/lib/dl/func.rb (DL::Function#call): check tainted when
	  $SAFE > 0.
	* ext/fiddle/function.c (function_call): check tainted when $SAFE > 0.
	* test/fiddle/test_func.rb (module Fiddle): add test for above.


Tue May 14 11:36:22 2013  Shugo Maeda  <shugo@ruby-lang.org>

	* lib/net/imap.rb (getacl_response): parse the mailbox of an ACL
	  response correctly.  [ruby-core:54365] [Bug #8281]

Tue May 14 11:24:22 2013  Martin Bosslet  <Martin.Bosslet@gmail.com>

	* ext/openssl/ossl_ssl.c: Correct shutdown behavior w.r.t GC.

	* test/openssl/test_ssl.rb: Add tests to verify correct behavior.

	[Bug #8240] Patch provided by Shugo Maeda. Thanks!

Tue May 14 11:22:33 2013  Naohisa Goto  <ngotogenome@gmail.com>

	* configure.in (AC_CHECK_HEADERS): atomic.h for Solaris atomic_ops.

	* ruby_atomic.h: Skip using Solaris10 atomic_ops on Solaris 9 or
	  earlier if atomic.h is not available. [ruby-dev:47229] [Bug #8228]

Tue May 14 10:42:23 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* lib/mkmf.rb (MAIN_DOES_NOTHING): ensure symbols for tests to be
	  preserved.  [ruby-core:53745] [Bug #8169]

Tue May 14 10:42:23 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* lib/mkmf.rb (MAIN_DOES_NOTHING): force to refer symbols for tests
	  to be preserved.  [ruby-core:53745] [Bug #8169]

Tue May 14 10:39:33 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* regexec.c (onig_search): fix problem with optimization of \z.
	  [Backport #8210]
	  patched by k_takata at [ruby-core:54251].

Tue May 14 09:36:14 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* time.c (GetTimeval): check if already initialized instance.

	* time.c (GetNewTimeval): check if newly created instance.

	* time.c (time_init_0, time_init_1, time_init_copy, time_mload): must
	  be newly created instance.  [ruby-core:53436] [Bug #8099]

Thu Apr 11 11:24:42 2013  Akinori MUSHA  <knu@iDaemons.org>

	* lib/ipaddr.rb (IPAddr#in6_addr): Fix a typo with the closing
	  parenthesis.

Thu Apr 11 11:24:42 2013  Akinori MUSHA  <knu@iDaemons.org>

	* lib/ipaddr.rb (IPAddr#in6_addr): Fix the parser so that it can
	  recognize IPv6 addresses with only one edge 16-bit piece
	  compressed, like [::2:3:4:5:6:7:8] or [1:2:3:4:5:6:7::].
	  [Bug #7477]

Thu Apr 11 11:22:32 2013  Naohisa Goto  <ngoto@gen-info.osaka-u.ac.jp>

	* string.c (rb_str_concat): set array element after definition
	  to fix compile error with Fujitsu C Compiler 5.6 on Solaris 10
	  on Sparc.  [Bug #5878] [ruby-dev:45123]

Thu Apr 11 11:21:25 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* parse.y (parser_magic_comment): should pass the proper value.
	  [ruby-dev:44984][Bug #5753]

Thu Apr 11 11:18:57 2013  Tadayoshi Funaba  <tadf@dotrb.org>

	* ext/date/date_core.c: [ruby-core:52303]

Thu Apr  4 16:21:39 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* ext/objspace/objspace.c (count_nodes): fix key for unknown node.
	  based on a patch by tmm1 (Aman Gupta) in [ruby-core:53130] [Bug #8014]

Thu Apr  4 16:17:14 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* Makefile.in (miniruby, ruby): move MAINLIBC because linker arguments
	  must appear after object files with newer versions of gcc.  patch by
	  tmm1 (Aman Gupta) in [ruby-core:53121] [Bug #8009]

Thu Apr  4 09:44:10 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* configure.in (DLDFLAGS): use TARGET_ENTRY to specify an entry point
	  instead of TARGET which may contain non-identifer characters.

	* lib/mkmf.rb (create_makefile): add TARGET_NAME which is the first
	  part consists of only word characters.  [ruby-core:46248][Bug #6709]

Tue Apr  2 13:13:19 2013  Martin Duerst  <duerst@it.aoyama.ac.jp>

	* transcode.c (documentation for str_encode): Explain
	  that transcoding to the same encoding is a no-op
	  (i.e. no exceptions, no replacements,...).
	  [ruby-core:43557][Bug #6190]

Tue Apr  2 13:13:19 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* transcode.c (str_encode_bang, encoded_dup): if nothing was
	  transcoded, just set encoding but leave coderange unchanged as
	  forcee_encoding.  [ruby-core:43557][Bug #6190]

Tue Apr  2 13:07:29 2013  Tanaka Akira  <akr@fsij.org>

	* time.c (num_exact): use to_r method only if to_int method is
	  available.
	  [ruby-core:53764] [Bug #8173] reported by Hiro Asari.

Tue Apr  2 13:01:55 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* configure.in (EXTDLDFLAGS): split options for each extension
	  libraries, and unused in ruby.pc.  [Bug #6734]

	* lib/mkmf.rb (MakeMakefile#configuration): add EXTDLDFLAGS.

Tue Apr  2 12:59:35 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* win32/win32.c (rb_w32_read): Windows 8 fixed one of a bug of console
	  API.
	  based on the patch by Heesob Park at [ruby-core:49479] [Bug #7379]

Tue Apr  2 12:56:15 2013  Naohisa Goto  <ngotogenome@gmail.com>

	* signal.c (ruby_abort): fix typo in r39354 [Bug #5014]

Tue Apr  2 12:56:15 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* signal.c (check_stack_overflow): extract duplicated code and get rid
	  of declaration-after-statement.  [Bug #5014]

Tue Apr  2 12:56:15 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>

	* signal.c (sigsegv): avoid to use async signal unsafe functions
	  when nested sigsegv is happen.
	  [Bug #5014] [ruby-dev:44082]

Fri Mar 29 13:22:15 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* include/ruby/missing.h: fixed merge mistake of r39985.
	  [Backport #8080]

Thu Mar 28 19:01:54 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>

	* include/ruby/missing.h: removed __linux__. it's unnecessary.

Thu Mar 28 19:01:54 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>

	* thread.c: disabled _FORTIFY_SOURCE for avoid to hit glibc bug.
	  [Bug #8080] [ruby-core:53349]
	* test/ruby/test_io.rb (TestIO#test_io_select_with_many_files):
	  test for the above.

Thu Mar 28 19:01:54 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>

	* include/ruby/missing.h (__syscall): moved to...
	* io.c: here. because __syscall() is only used from io.c.

	* include/ruby/missing.h: move "#include <sys/type.h>" to ....
	* include/ruby/intern.h: here. because it was introduced for
	  fixing NFDBITS issue. [ruby-core:05179].

Thu Mar 28 19:01:54 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>

	* include/ruby/missing.h (struct timespec): include <sys/time.h>

Thu Mar 28 19:01:54 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>

	* configure.in: check struct timeval exist or not.
	* include/ruby/missing.h (struct timeval): check HAVE_STRUCT_TIMEVAL
	  properly. and don't include sys/time.h if struct timeval exist.

	* file.c: include sys/time.h explicitly.
	* random.c: ditto.
	* thread_pthread.c: ditto.
	* time.c: ditto.
	* ext/date/date_strftime.c: ditto.

Thu Mar 28 18:54:31 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* regcomp.c (optimize_node_left, set_optimize_info_from_tree): right
	  handling for look behind anchor.

	* regexec.c (onig_search): ditto.
	  [Backport #8076]

	this patch is derived from Onigmo base tree.

Thu Mar 28 18:35:01 2013  Luis Lavena  <luislavena@gmail.com>

	* win32/file.c (get_user_from_path):  add internal function that retrieves
	  username from supplied path (refactored).
	* win32/file.c (rb_file_expand_path_internal):  refactor expansion of user
	  home to use get_user_from_path and cover dir_string corner cases.
	  [ruby-core:53168] [Bug #8034]

Thu Mar 28 18:35:01 2013  Luis Lavena  <luislavena@gmail.com>

	* win32/file.c (rb_file_expand_path_internal):  Expand home directory when
	  used as second parameter (dir_string).  [ruby-core:53168] [Bug #8034]
	* test/ruby/test_file_exhaustive.rb: add test to verify.

Thu Mar 28 18:18:49 2013  Martin Bosslet  <Martin.Bosslet@googlemail.com>

	* ext/openssl/ossl_asn1.c: raise TypeError when trying to encode nil
	  values for Primitive instances.
	* test/openssl/test_asn1.rb: Assert consistent behavior when
	  encoding nil values: Primitives raise TypeError, Constructives
	  raise NoMethodError.
	  Fixes [ruby-core:43009][Bug #6102]

Thu Mar 28 18:14:41 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* tool/mkconfig.rb: reconstruct comma separated list values.  a
	  command line to Windows batch file is split not only by spaces
	  and equal signs but also by commas and semicolons.

Thu Mar 28 18:13:38 2013  NARUSE, Yui  <naruse@ruby-lang.org>

	* string.c (str_byte_substr): don't set coderange if it's not known.
	  [Bug #7954] [ruby-dev:47108]

Thu Mar 28 18:12:19 2013  Kouhei Sutou  <kou@cozmixng.org>

	* lib/rexml/document.rb: move entity_expansion_text_limit accessor to ...
	* lib/rexml/rexml.rb: ... here to make rexml/text independent from
	  REXML::Document. It causes circular require.
	* lib/rexml/document.rb (REXML::Document.entity_expansion_text_limit):
	  deprecated.
	* lib/rexml/document.rb (REXML::Document.entity_expansion_text_limit=):
	  deprecated.
	* lib/rexml/text.rb: add missing require "rexml/rexml" for
	  REXML.entity_expansion_text_limit.
	  Reported by Robert Ulejczyk. Thanks!!! [ruby-core:52895] [Bug #7961]

Thu Mar 21 20:34:52 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* test/win32ole/test_err_in_callback.rb (TestErrInCallBack#setup):
	  allow using different root for source and build directories.
	  this may fixes a minor problem of r39834.

Thu Mar 21 20:34:52 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* test/win32ole/test_err_in_callback.rb (TestErrInCallBack#setup): use
	  relative path to get rid of "too long commandline" error.

Thu Mar 21 20:34:52 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* test/win32ole/test_err_in_callback.rb
	  (TestErrInCallBack#test_err_in_callback): shouldn't create a file in
	  the top of build directory.

Tue Feb 26 09:53:59 2013  NARUSE, Yui  <naruse@ruby-lang.org>

	* st.c (st_add_direct): int is not always same with st_index_t.  some
	  version of clang reports error.

	* thread.c (vm_living_thread_num): ditto.
	  reported by d6rkaiz (Isao Sugimoto) at [ruby-dev:47096]
	  [Backport #7946]

Fri Feb 22 18:36:51 2013  Aaron Patterson <aaron@tenderlovemaking.com>

	* lib/rexml/document.rb (REXML::Document.entity_expansion_text_limit):
	  new attribute to read/write entity expansion text limit.  the default
	  limit is 10Kb.

	* lib/rexml/text.rb (REXML::Text.unnormalize): check above attribute.

Fri Feb 22 14:48:15 2013  NARUSE, Yui  <naruse@ruby-lang.org>

	* vm.c (vm_exec): get rid of a SEGV when calling rb_iter_break() from
	  some extention libraries. [Backport #7896] [ruby-core:52607]

Fri Feb 22 14:40:57 2013  Narihiro Nakamura  <authornari@gmail.com>

	* gc.c : remove a unused function.

Fri Feb 22 14:40:57 2013  NARUSE, Yui  <naruse@ruby-lang.org>

	* regparse.c (onig_number_of_names): suppress a warning.

Fri Feb 22 14:40:57 2013  NARUSE, Yui  <naruse@ruby-lang.org>

	* vm_insnhelper.c (vm_call_cfunc): remove useless hack.

Fri Feb 22 14:40:57 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* vm_insnhelper.c (vm_call_cfunc): suppress a warning.  note that
	  `volatile type *var' doesn't make var itself volatile.

Fri Feb 22 14:28:17 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* eval_jump.c (rb_exec_end_proc): remember the latest exit status.
	  [ruby-core:43173][Bug #5218]

Fri Feb 22 14:25:57 2013  NARUSE, Yui  <naruse@ruby-lang.org>

	* ext/readline/readline.c (Init_readline): don't set 0 to
	  rl_catch_signals and rl_catch_sigwinch. [Bug #5423]

Wed Feb 13 16:18:22 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* ext/json: Import JSON 1.5.5.

Wed Feb  6 17:39:19 2013  Eric Hodel  <drbrain@segment7.net>

	* lib/rdoc: Import RDoc 3.9.5.

Wed Feb  6 14:27:25 2013  Shugo Maeda  <shugo@ruby-lang.org>

	* ext/socket/raddrinfo.c (rsock_unix_sockaddr_len): return
	  sizeof(sa_familiy_t) if path is empty.  see "Autobind Feature" in
	  unix(7) for details.

	* ext/socket/lib/socket.rb (unix_socket_abstract_name?): treat an
	  empty path as an abstract name.

	* test/socket/test_unix.rb: related test.

	* ext/socket/unixsocket.c (rsock_init_unixsock): use rb_inspect()
	  because rb_sys_fail_str() fails if its argument contains NUL.

	* test/socket/test_unix.rb: related test.

	* ext/socket/socket.c (sock_s_pack_sockaddr_un): calculate the
	  correct address length of an abstract socket.

	* test/socket/test_unix.rb: related test.

	* ext/socket/raddrinfo (rsock_unix_sockaddr_len): renamed from
	  rsock_unixpath_len, because it returns not the length of the path,
	  but the length of a socket address for the path.

	* ext/socket/raddrinfo.c (rsock_unixpath_len, init_unix_addrinfo),
	  ext/socket/unixsocket.c (unixsock_connect_internal,
	  rsock_init_unixsock): calculate the correct address length of
	  an abstract socket.  Without this fix, sizeof(struct sockaddr_un)
	  is specified as the length of an abstract socket for bind(2) or
	  connect(2), so the address of the socket is filled with extra NUL
	  characters.  See unix(7) for details.

	* ext/socket/lib/socket.rb (unix_server_socket): don't access the
	  file system if the platform is Linux and path starts with NUL,
	  which means that the socket is an abstract socket.

	* test/socket/test_unix.rb: related test.

	* ext/socket/socket.c (sock_s_pack_sockaddr_un): support the longest
	  path in sockaddr_un, really.
	  reported by nagachika.
	  http://d.hatena.ne.jp/nagachika/20120426/ruby_trunk_changes_35474_35476

	* ext/socket/raddrinfo.c (init_unix_addrinfo): support the longest
	  path in sockaddr_un.
	  (inspect_sockaddr): ditto.
	  (addrinfo_mdump): ditto.
	  (addrinfo_mload): ditto.
	  (rsock_unixpath_str): new function.
	  (rsock_unixpath): removed.
	  (rsock_unixaddr): use rsock_unixpath_str.

	* ext/socket/socket.c (sock_s_pack_sockaddr_un): support the longest
	  path in sockaddr_un.
	  (sock_s_unpack_sockaddr_un): ditto.
	  (sock_s_gethostbyaddr): unused variable removed.

	* ext/socket/unixsocket.c (rsock_init_unixsock): support the longest
	  path in sockaddr_un.

	* ext/socket/rubysocket.h (rsock_unixpath_str): declared.
	  (rsock_unixpath): removed.

	* test/socket/test_unix.rb: comment out test_nul because abstract unix
	  sockets may contain NULs.

Wed Feb  6 14:20:12 2013  Tanaka Akira  <akr@fsij.org>

	* ext/socket/basicsocket.c (bsock_getsockname): ignore truncated
	  part of socket address.
	  (bsock_getpeername): ditto.
	  (bsock_local_address): ditto.
	  (bsock_remote_address): ditto.

	* ext/socket/unixsocket.c (unix_path): ditto.
	  (unix_addr): ditto.
	  (unix_peeraddr): ditto.

	* ext/socket/init.c (cloexec_accept): ditto.

Wed Feb  6 14:19:07 2013  Kouhei Sutou  <kou@cozmixng.org>

	* lib/rexml/parsers/baseparser.rb, test/rexml/test_comment.rb:
	  allow a single hyphen in comment. [Bug #5278] [ruby-core:39289]
	  Reported by Thomas Fritzsche. Thanks!!!

Wed Feb  6 14:14:38 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* file.c (realpath_rec): prevent link from GC while link_names refers
	  the content.

Wed Feb  6 14:13:25 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* missing/setproctitle.c (environ): use (*_NSGetEnviron()) instead of
	  environ on Darwin for namespace cleanness, same as [ruby-core:00537].
	  [ruby-core:45615] [Bug #6576]

Wed Feb  6 14:05:09 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* dir.c (glob_make_pattern): names under recursive need to be single
	  basenames to match for each name.  [ruby-core:47418] [Bug #6977]

Tue Jan 15 16:30:29 2013  KOSAKI Motohiro  <kosaki.motohiro@gmail.com>

	* thread_pthread.c (gvl_init): Reset gvl.wait_yield explicitly when
	  fork()ing. Patch by Apollon Oikonomopoulos. Thanks!
	  [Bug #7693][ruby-core:51424]

Tue Jan 15 16:25:35 2013  Narihiro Nakamura  <authornari@gmail.com>

	* gc.c (rb_objspace_call_finalizer): finalize_deferred may free up
	  a object which is reachable from a part after this function,
	  e.g. ruby_vm_destruct(). [ruby-dev:46647] [Bug #7452]

	* test/ruby/test_gc.rb (test_finalizing_main_thread): add a test
	  for above.

Tue Jan 15 16:23:30 2013  NARUSE, Yui  <naruse@ruby-lang.org>

	* lib/net/protocol.rb (Net::InternetMessageIO#each_crlf_line):
	  treat \r as newline as mame pointed. [ruby-dev:46425] [Bug #7278]

Tue Jan 15 16:23:30 2013  NARUSE, Yui  <naruse@ruby-lang.org>

	* lib/net/protocol.rb (Net::InternetMessageIO#each_crlf_line):
	  don't use /n in universal regexp. [ruby-dev:46394] [Bug #7278]

Tue Jan 15 16:13:47 2013  Kenta Murata  <mrkn@mrkn.jp>

	* ext/bigdecimal/bigdecimal.c (BigDecimal_to_s): use CRuby style.

Tue Jan 15 16:13:47 2013  Kenta Murata  <mrkn@mrkn.jp>

	* ext/bigdecimal/bigdecimal.c: use `RB_TYPE_P(x, t)` instead of
	  `TYPE(x) == t`.

Tue Jan 15 16:13:47 2013  Kenta Murata  <mrkn@mrkn.jp>

	* ext/bigdecimal/bigdecimal.c (BigDecimal_sub):
	  need to specify precision for converting Rational and Float.
	  [ruby-dev:46544] [Bug #7404]

	* ext/bigdecimal/bigdecimal.c (BigDecimal_mult): ditto.

	* ext/bigdecimal/bigdecimal.c (BigDecimal_divide): ditto.

	* ext/bigdecimal/bigdecimal.c (BigDecimal_DoDivmod): ditto.

	* ext/bigdecimal/bigdecimal.c (BigDecimal_divremain): ditto.

	* test/bigdecimal/test_bigdecimal.rb: add tests for the above fixes.

Tue Jan 15 16:03:30 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* tool/mkconfig.rb: use configured libdir value to fix
	  --enable-load-relative on systems where libdir is not default value,
	  overridden in config.site files.  [ruby-core:47267] [Bug #6903]

Tue Jan 15 15:55:09 2013  Eric Hodel  <drbrain@segment7.net>

	* object.c (Init_Object):  Added RDoc location pointers for
	  Kernel#methods, Kernel#protected_methods, Kernel#private_methods and
	  Kernel#public_methods.  [Bug #6666]

Fri Jan 11 17:12:44 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* vm_core.h (rb_iseq_t): move flip_cnt from struct iseq_compile_data,
	  because it has same life span as enclosing iseq.  [Bug #7671]
	  [ruby-core:51296]

Fri Jan 11 17:11:26 2013  NARUSE, Yui  <naruse@ruby-lang.org>

	* lib/mkmf.rb: add dummy clean-static target to prevent errors for the
	  case real clean-static target doesn't exist.

Fri Jan 11 17:02:59 2013  Koichi Sasada  <ko1@atdot.net>

	* vm_exec.h (GENTRY): GENTRY should be pointer size.
	  A patch by yoshidam (Yoshida Masato) [Bug #7332].

Fri Jan 11 16:57:31 2013  NAKAMURA Usaku  <usa@ruby-lang.org>

	* vm_trace.c (rb_threadptr_exec_event_hooks): added a parameter to pop
	  a frame before JUMP_TAG() if exception occurred. This change fix bug
	  of Ruby 1.9. [ruby-core:51128] [ruby-trunk - Bug #7624]

	* vm_core.h (EXEC_EVENT_HOOK_AND_POP_FRAME): add to use
	  `rb_threadptr_exec_event_hooks()' with the pop flag.

	* vm.c (vm_exec): use EXEC_EVENT_HOOK_AND_POP_FRAME() while exception
	  handling. While exception hadnling, if an exception is raised in
	  hooks, need to pop current frame and raise this raised exception by
	  hook.

	* bootstraptest/test_flow.rb: add a test.

Mon Jan  7 15:50:25 2013  Nobuyoshi Nakada  <nobu@ruby-lang.org>

	* vm.c (rb_vm_make_proc): save the proc made from the given block so
	  that it will not get collected.  [ruby-core:50545] [Bug #7507]

Tue Dec 25 23:35:09 2012  NARUSE, Yui  <naruse@ruby-lang.org>

	* lib/mkmf.rb: fix for if config["libdir"] is nil.

Tue Dec 25 20:40:47 2012  NAKAMURA Usaku  <usa@ruby-lang.org>

	* bignum.c, include/ruby/intern.h (rb_big_eql): exported.

	* thread.c (recursive_check): object_id maybe a Bignum, not Fixnum on
	  LLP64.  see also r38493 and r38548.
	  reported by Heesob Park at [ruby-core:51083] [Bug #7607], and patched
	  by shirosaki at [ruby-core:51095]

Tue Dec 25 09:54:31 2012  Hiroshi Shirosaki  <h.shirosaki@gmail.com>

	* gc.c (obj_id_to_ref): add a macro to treat Bignum object id.
	  This follows the change r38493.

	* gc.c (id2ref): fix for working fine with Bignum object id on x64
	  Windows.
	* gc.c (wmap_finalize): ditto.

Sat Dec 22 00:33:28 2012  NAKAMURA Usaku  <usa@ruby-lang.org>

	* object.c (rb_obj_hash): shouldn't assume object_id can be long.
	  based on a patch by Heesob Park at [ruby-core:51060].
	  cf. [Backport #7454]

Sat Dec 22 00:33:28 2012  NAKAMURA Usaku  <usa@ruby-lang.org>

	* gc.c (nonspecial_obj_id): VALUE is not compatible with Fixnum on
	  LLP64 platform, such as 64bit Windows.
	  reporeted by Heesob Park at [ruby-core:50255] [Bug #7454], and the
	  fix is suggested by akr.

Fri Dec 21 16:03:54 2012  NAKAMURA Usaku  <usa@ruby-lang.org>

	* test/ruby/test_argf.rb (TestArgf#test_chars): since marshal data is
	  binary, shouldn't pass via text mode.  use base64 encoded data.

Thu Dec 13 23:10:52  Charlie Somerville  <charlie@charliesomerville.com>
	* object.c (Init_Object): use rb_mod_init_copy for Class#initialize_copy
	* class.c (rb_class_init_copy): rename to class_init_copy_check, performs type
	  checks on arguments to prevent reinitialization of initialized class
	  [ruby-core:50869] [Bug #7557]
	* class.c (rb_mod_init_copy): use class_init_copy_check if receiver is T_CLASS
	* test/ruby/test_class.rb (class TestClass): related test


Thu Dec 20 18:46:17 2012  Naohisa Goto  <ngotogenome@gmail.com>

	* test/dl/test_func.rb (test_name_with_block, test_bind, test_qsort1):
	  call unbind to release the callback closure because maximum number
	  of callbacks is limited to DL::MAX_CALLBACK (== 5) with pure DL
	  without Fiddle.

Thu Dec 20 18:46:17 2012  Naohisa Goto  <ngotogenome@gmail.com>

	* ext/dl/lib/dl/func.rb (DL::Function#unbind, #bound?): suppress
	  NoMethodError when Fiddle is available. [ruby-core:50756] [Bug #7543]
	* test/dl/test_func.rb (test_bound*, test_unbind*): tests for the above.

Thu Dec 20 18:46:17 2012  Naohisa Goto  <ngotogenome@gmail.com>

	* ext/dl/lib/dl/func.rb (DL::Function#initialize, DL::Function#bind):
	  ABI should be set by using CFunc#calltype even when Fiddle is used.
	  When Fiddle is used and a block is given, name shoud not be ignored.
	  [ruby-core:50562] [Bug #7514]

	* ext/dl/lib/dl/import.rb (DL::Importer#bind_function): should respect
	  abi and name when Fiddle is used.

	* test/dl/test_func.rb (test_name_with_block): test for "name" method
	  with giving a block.

Thu Dec 20 18:43:00 2012  Naohisa Goto  <ngotogenome@gmail.com>

	* ext/fiddle/extconf.rb, ext/fiddle/function.c
	  (Fiddle::Function::STDCALL): FFI_STDCALL is not a macro, but an
	  enumeration. [ruby-core:50398] [Bug #7483]

Thu Dec 20 18:40:25 2012  Nobuyoshi Nakada  <nobu@ruby-lang.org>
[--snip--]
