Граф коммитов

25302 Коммитов

Автор SHA1 Сообщение Дата
drbrain a63b86e2a8 * enumerator.c: Document use of Enumerator.new for creating a lazy
enumeration for filtering/chaining.  [ruby-trunk - Feature #707]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-13 21:19:11 +00:00
svn b2994527d6 * 2012-02-14
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-13 16:05:05 +00:00
knu 4349b42e82 Mention Kernel#respond_to?.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34584 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-13 16:05:00 +00:00
knu 23473d1f9f * vm_method.c (rb_method_boundp):
obj.respond_to?(:a_protected_method) should return false because
  calling a protected method may cause NoMethodError if called
  from outside the class inheritance tree.  Kernel#respond_to? is
  mostly used to test if it is safe to call a method, so the false
  positive should be avoided. [ruby-dev:40461] [ruby-dev:41739]
  [ruby-dev:41837]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34582 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-13 14:02:26 +00:00
nari 261400e7a9 * gc.c (HEAP_OBJ_LIMIT, HEAP_BITMAP_LIMIT): HEAP_OBJ_LIMIT used
`sizeof(struct heaps_slot)` while heap is currently allocated
  with `struct heaps_header`.
  HEAP_BITMAP_LIMIT were calculated from
  `HEAP_OBJ_LIMIT/sizeof(uintptr_t)` - one Byte for each object,
  not one Bit. [Bug #6006]
  patched by Sokolov Yura. https://github.com/ruby/ruby/pull/92

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-13 12:57:16 +00:00
nobu df77202b37 * io.c (io_setstrbuf): defer resizing buffer string until data is
read actually.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34580 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-13 09:30:40 +00:00
svn 23ebb5ea6c * 2012-02-13
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34577 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-13 01:24:51 +00:00
nobu b7ef9fa2a4 * io.c (Init_IO): use directive hack to make ARGF documentable
in other tools.  [ruby-core:42515][Bug #6007]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-13 01:24:45 +00:00
nobu 0229827c8b * include/ruby/ruby.h (rb_event_hook_func_t): add argument names.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34575 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-12 11:44:06 +00:00
knu 24dbd19791 * tool/merger.rb (#default_merge_branch): Add support for
Subversion 1.7 which adopted a whole new working directory
  structure.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-12 07:33:09 +00:00
ktsj 0d0344c1f0 * benchmark/driver.rb: suppress unused/shadowing variable warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34567 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-12 06:17:25 +00:00
drbrain 691a3a2bdc * vm_eval.c (check_funcall): Call respond_to? with matching arity for
legacy single-argument implementations.  [ruby-trunk - Bug #6000]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-11 19:15:36 +00:00
akr 3ab9be9245 update doc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-11 16:48:04 +00:00
svn 0dee30091b * 2012-02-12
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-11 16:28:18 +00:00
akr 4e8d188ead update doc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-11 16:28:13 +00:00
akr f119915f51 update doc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-11 12:05:57 +00:00
nobu cd339692ef * compile.c (defined_expr): guard the whole expression.
[ruby-dev:45021][Bug#5786]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-11 03:04:23 +00:00
nobu c25f3d785d * vm_eval.c (check_funcall): adjust indent.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-11 01:22:05 +00:00
drbrain 1516f8eb9f * ext/zlib/zlib.c (rb_inflate_add_dictionary): Added
Zlib::Inflate#add_dictionary to allow users to pre-specify
  for using during #inflate.  [ruby-trunk - Feature #5937]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-11 00:37:44 +00:00
drbrain 403dc5357d * ext/zlib/zlib.c (do_inflate): Inflate more data if buffered data
exists.  Allows Zlib::Inflate#set_dictionary to work.
  [ruby-trunk - Bug #5929]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-11 00:29:52 +00:00
drbrain e1d113cbef Ignore generated Makefile and extconf.h
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-11 00:12:10 +00:00
naruse c13d0b0c9c * dir.c (fnmatch): The * needs to be escaped to avoid formatting in
fnmatch comment.
  patched by @dalton. https://github.com/ruby/ruby/pull/91

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-10 21:12:44 +00:00
svn 198736fb40 * 2012-02-11
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34536 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-10 17:37:32 +00:00
marcandre 6a8c05e314 * array.c: Fix rdoc for Array#select!
patched by b t [ruby-core:42478] [Bug #5998]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34535 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-10 17:37:28 +00:00
tenderlove 59a1344808 * ext/psych/parser.c: removed external encoding setter, allow parser
to be reused.
* ext/psych/lib/psych/parser.rb: added external encoding setter.
* test/psych/test_parser.rb: test parser reuse

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 18:44:27 +00:00
nobu 14c97cf9b6 * ext/dl/extconf.rb: clang does not use -fno-defer-pop during compilation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 16:41:08 +00:00
nobu 96ab37015e * ext/dl/dl.h (ALIGN_OF): use offsetof().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 16:30:43 +00:00
nobu 196151158f * ext/dl/dl.h (DLALIGN): round up at once and get rid of overflow.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 16:29:08 +00:00
nobu 5ee0135a2f * test/ruby/envutil.rb (assert_no_memory_leak): new assertion to
check memory leak by invoking child ruby process and watch its
  memory size.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 15:47:11 +00:00
svn ba89c7d70e * 2012-02-10
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34519 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 15:16:04 +00:00
nobu d77b2387cf * ext/fiddle/fiddle.c (Init_fiddle): declare in modern style.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 15:15:57 +00:00
nagachika 42144fc3bb * test/pathname/test_pathname.rb (test_binread): add assertion to
check encoding.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34516 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 14:44:10 +00:00
akr 3b1276eb39 update doc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34514 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 13:18:26 +00:00
kazu c7f16b8662 fix typos
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 07:53:04 +00:00
nobu f90f02ab20 * ext/dl/dl.c (Init_dl): fix mangled documnet.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 07:48:22 +00:00
usa 71837f629e * test/ruby/memory_status.rb (Memory::Win32): 64bit support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34508 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 07:11:23 +00:00
usa b2ba3242ea * ext/dl/lib/value.rb (DL::ValueUtil.{unsigned_value,signed_value}):
currenly pack/unpack does not accept "q!" and "Q!".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 07:10:26 +00:00
usa da098bd36e * ext/fiddle/conversions.c (value_to_generic): src is not guranteed as
a Bignum if the type is LONG_LONG.  it may be a Fixnum if the value
  is small.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 07:03:07 +00:00
nobu 57b2175207 * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34505 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 03:25:07 +00:00
usa 70b504badb * ext/dl/lib/types.rb: Win64 support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34504 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09 02:32:58 +00:00
naruse 7bde0843a2 * test/pathname/test_pathname.rb: not read but binread.
patched by Benoit Daloze, [ruby-core:42440] [Bug #5984]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08 19:13:14 +00:00
naruse 7fa3f1c5a9 FreeBSD needs multiple -o.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08 18:29:52 +00:00
tenderlove ee827e52a7 eliminate `shadowing outer local variable - name` warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08 18:03:51 +00:00
svn bbc50e2a28 * 2012-02-09
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08 15:44:44 +00:00
akr de25f35c98 update doc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34494 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08 15:44:41 +00:00
nobu fc018c9b34 * test/-ext-/string/test_modify_expand.rb: test for r34492.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08 13:35:27 +00:00
nobu 83c7d9df2b * string.c (rb_str_modify_expand): fix memory leak.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34492 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08 13:30:04 +00:00
naruse 54b90b7be8 Fix condition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34490 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08 11:47:00 +00:00
naruse f75a30776c "street" for X509 Name is not supported before 0.9.8m.
It is added openssl/crypto/objects/obj_mac.h 1.83.
http://cvs.openssl.org/rlog?f=openssl/crypto/objects/obj_mac.h

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08 09:49:36 +00:00
nahi 3ff2f9f3a3 * ext/openssl/ossl_ssl.c: Add SSL constants and allow to unset SSL
option to prevent BEAST attack. See [Bug #5353].

  In OpenSSL, OP_DONT_INSERT_EMPTY_FRAGMENTS is used to prevent
  TLS-CBC-IV vulunerability described at
  http://www.openssl.org/~bodo/tls-cbc.txt
  It's known issue of TLSv1/SSLv3 but it attracts lots of attention
  these days as BEAST attack. (CVE-2011-3389)

  Until now ossl sets OP_ALL at SSLContext allocation and call
  SSL_CTX_set_options at connection.  SSL_CTX_set_options updates the
  value by using |= so bits set by OP_ALL cannot be unset afterwards.

  This commit changes to call SSL_CTX_set_options only 1 time for each
  SSLContext. It sets the specified value if SSLContext#options= are
  called and sets OP_ALL if not.

  To help users to unset bits in OP_ALL, this commit also adds several
  constant to SSL such as
  OpenSSL::SSL::OP_DONT_INSERT_EMPTY_FRAGMENTS.  These constants were
  not exposed in Ruby because there's no way to unset bits in OP_ALL
  before.

  Following is an example to enable 0/n split for BEAST prevention.

    ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS

* test/openssl/test_ssl.rb: Test above option exists.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08 05:27:14 +00:00