aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* * vm.c (rb_vm_control_frame_id_and_class): remove usless codes.ko12015-06-182-19/+9
| | | | | | | | `me' knows ID and owner class. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50950 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * remove trailing spaces.svn2015-06-181-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50949 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * method.h: constify rb_method_alias_struct::original_me andko12015-06-183-3/+11
| | | | | | | | | | rb_method_refined_struct::orig_me. * class.c (move_refined_method): use RB_OBJ_WRITE() for me->def->body.refined.orig_me. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50948 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/objspace/objspace.c (count_imemo_objects): support imemo_ment.ko12015-06-182-0/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50947 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* NEWS: NameError#receiver [Feature #10881]nobu2015-06-181-0/+3
| | | | | | [ci skip] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* error.c: NameError#receivernobu2015-06-183-0/+28
| | | | | | | * error.c (name_err_receiver): add NameError#receiver method. [Feature #10881] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * safe.c: removed needless doc related $SAFE=3hsbt2015-06-182-1/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50944 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * safe.c: rename old method name for $SAFE=3hsbt2015-06-182-2/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: -fakenobu2015-06-171-1/+1
| | | | | | * common.mk (no-fake): add alias -fake for dist. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50942 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2015-06-18svn2015-06-171-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50941 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* compile.c: use %+PRIsVALUE instead of rb_inspectnormal2015-06-172-6/+7
| | | | | | | | | | | | | * compile.c (get_exception_sym2type, iseq_build_from_ary_body): rely on %+PRIsVALUE instead of calling rb_inspect directly This yields a minor size reduction on 32-bit x86: text data bss dec hex filename 96807 772 48 97627 17d5b compile.o 96851 772 48 97671 17d87 compile.orig git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix a typo [ci skip]kazu2015-06-171-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bignum.c: doc of rb_cstr_to_inumnobu2015-06-171-0/+16
| | | | | | * bignum.c (rb_cstr_to_inum): [DOC] add document of the function. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: needs fake.rbnobu2015-06-172-1/+6
| | | | | | | * common.mk (ENC_MK): needs fake.rb if cross compilation. [ruby-dev:49098] [Bug #11272] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50937 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/rbconfig/sizeof/extconf.rb: Check __float80.akr2015-06-172-0/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* util.c: fix off-by-one errornobu2015-06-171-1/+2
| | | | | | | * util.c (ruby_scan_digits): fix the return length off-by-one error when the length is given and the last char is a digit. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50935 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ChangeLog: typo.usa2015-06-171-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * safe.rb (safe_setter): of course, don't have to warn the limitation ofusa2015-06-172-3/+5
| | | | | | | $SAFE=3 after it's removed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h: $SAFE=3 is now obsolete.hsbt2015-06-1717-100/+23
| | | | | | | | | | | * ext/socket/init.c, ext/socket/socket.c, ext/socket/tcpsocket.c ext/socket/udpsocket.c, gc.c, object.c, re.c, safe.c: removed code for $SAFE=3 * bootstraptest/test_method.rb, test/erb/test_erb.rb, test/ruby/test_dir.rb test/ruby/test_file.rb, test/ruby/test_method.rb, test/ruby/test_regexp.rb test/ruby/test_thread.rb: remove tests for $SAFE=3 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ChangeLog: added contibutor name.hsbt2015-06-171-0/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/csv.rb: accept to use Range object for row selection.hsbt2015-06-174-3/+18
| | | | | | [Feature #11267][ruby-dev:49091] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* servlet.rb: requires jsonnobu2015-06-173-1/+8
| | | | | | | | * lib/rdoc/servlet.rb (documentation_search, root_search): requires json for JSON.dump and fix sporadic failures due to the loading order. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: suppress warningsnobu2015-06-171-0/+1
| | | | | | | * lib/mkmf.rb (try_func): suppress implicit-function-declaration warnings. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2015-06-17svn2015-06-171-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: suppress warningsnobu2015-06-171-2/+2
| | | | | | | * lib/mkmf.rb (try_func, try_var): suppress unused-but-set-variable warnings. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix unbalanced square bracketskazu2015-06-162-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50922 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix a typo [ci skip]kazu2015-06-161-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/rbconfig/sizeof/extconf.rb: Check several types defined in C99akr2015-06-163-2/+25
| | | | | | | | | | and x86_64 ABI. * template/sizes.c.tmpl: Relax a pattern for types. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* date_parse.c: use ALLOCVnobu2015-06-161-6/+16
| | | | | | | * ext/date/date_parse.c (s3e, date_zone_to_diff, parse_ddd_cb): use ALLOCV instead of ALLOCA get rid of stack overflow. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* date_strptime.c: use ALLOCVnobu2015-06-161-1/+3
| | | | | | | * ext/date/date_strptime.c (read_digits): use ALLOCV instead of ALLOCA get rid of stack overflow. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_nonblock.rb: use assert_predicatenobu2015-06-161-2/+2
| | | | | | | | * test/socket/test_nonblock.rb (test_recv_nonblock_no_exception), (test_recvfrom_nonblock_no_exception): use assert_predicate for failure messages. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_nonblock.rb: fix failure on OSXnobu2015-06-161-1/+1
| | | | | | | * test/socket/test_nonblock.rb (test_recvfrom_nonblock_no_exception): no destination to already connected socket. fix failure on OSX. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* add ref to [Bug #10852].ko12015-06-161-0/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/objspace/test_objspace.rb: relax pattern because uncollectibleko12015-06-162-1/+6
| | | | | | | | flag and marked flag can be false at major GC. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* NEWS: update for socket API changes [ci skip]normal2015-06-151-3/+9
| | | | | | [Feature #11242] [Feature #11229] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* socket: allow explicit buffer for recv and recv_nonblocknormal2015-06-157-20/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reduces GC overhead and makes the API more consistent with IO#read and IO#read_nonblock. * ext/socket/basicsocket.c (bsock_recv): document outbuf * ext/socket/unixsocket.c (unix_recvfrom): ditto * ext/socket/init.c (rsock_strbuf, recvfrom_locktmp): new functions (rsock_s_recvfrom): support destination buffer as 3rd arg (rsock_s_recvfrom_nonblock): ditto * string.c (rb_str_locktmp_ensure): export for internal ext * test/socket/test_nonblock.rb: test recv_nonblock * test/socket/test_unix.rb: test recv [ruby-core:69543] [Feature #11242] Benchmark results: user system total real alloc 0.130000 0.280000 0.410000 ( 0.420656) extbuf 0.100000 0.220000 0.320000 ( 0.318708) -------------------8<-------------------- require 'socket' require 'benchmark' nr = 100000 msg = ' ' * 16384 size = msg.bytesize buf = ' ' * size UNIXSocket.pair(:DGRAM) do |a, b| Benchmark.bmbm do |x| x.report('alloc') do nr.times do b.send(msg, 0) a.recv(size, 0) end end x.report('extbuf') do nr.times do b.send(msg, 0) a.recv(size, 0, buf) end end end end git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2015-06-16svn2015-06-151-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* socket: allow exception-free nonblocking sendmsg/recvmsgnormal2015-06-158-19/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | As documented before, exceptions are expensive and IO::Wait*able are too common in socket applications to be the exceptional case. Datagram sockets deserve the same API which stream sockets are allowed with read_nonblock and write_nonblock. Note: this does not offer a performance advantage under optimal conditions when both ends are equally matched in speed, but it it does make debug output cleaner by avoiding exceptions whenever the receiver slows down. * ext/socket/ancdata.c (bsock_sendmsg_internal, bsock_recvmsg_internal): support "exception: false" kwarg * ext/socket/init.c (rsock_s_recvfrom_nonblock): ditto * ext/socket/init.c (rsock_s_recvfrom_nonblock): use rsock_opt_false_p * ext/socket/socket.c (sock_connect_nonblock): ditto * ext/socket/rubysocket.h (rsock_opt_false_p): new function * ext/socket/basicsocket.c (bsock_recv_nonblock): update rdoc * ext/socket/udpsocket.c (udp_recvfrom_nonblock): ditto * test/socket/test_nonblock.rb: new tests [ruby-core:69542] [Feature #11229] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* proc.c: reduce type checksnobu2015-06-151-8/+6
| | | | | | | * proc.c (rb_mod_define_method): no needs to check same type twice. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/set.rb: Make Set#each and SortedSet#each generate a sizedknu2015-06-153-2/+37
| | | | | | | | | enumerator. [GH-931] by kachick (Kenichi Kamiya) * test/test_set.rb: Import tests from Set into SortedSet. [GH-931] by kachick (Kenichi Kamiya) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/net/http.rb (Net::HTTP#connect): use connect_nonblock andnaruse2015-06-152-1/+20
| | | | | | io/wait. fix GH-899 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* envutil.rb: show failure descriptionnobu2015-06-151-2/+2
| | | | | | | * test/lib/envutil.rb (assert_separately): always show failure description. signals are not available on Windows. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* envutil.rb: no signal description iff possiblenobu2015-06-151-1/+2
| | | | | | | * test/lib/envutil.rb (FailDesc): show signal description only if it is available, or nothing if not killed by a signal. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* raddrinfo.c: suppress a warningnobu2015-06-141-0/+2
| | | | | | | * ext/socket/raddrinfo.c (parse_numeric_port): used only when inet_pton() is available. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50904 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* call_without_gvl.c: no sys/select.hnobu2015-06-141-1/+0
| | | | | | | * ext/-test-/gvl/call_without_gvl/call_without_gvl.c: sys/select.h is included by ruby/define.h if available. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50903 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_require.rb: wait loadignobu2015-06-141-1/+1
| | | | | | | * test/ruby/test_require.rb (test_loading_fifo_threading): wait until the main thread blocks by loading. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * properties.svn2015-06-140-0/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50901 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (thread_start_func_2): don't interrupt when last thread exitkosaki2015-06-145-1/+72
| | | | | | | | | | | | unless main thread is already exited. Otherwise main thread could be wrongly interrupted when it uses rb_thread_call_without_gvl(). Patch by Takehiro Kubo. [Bug #11237][ruby-dev:49044][GH-898] * test/-ext-/gvl/test_last_thread.rb: new test for the above fix. * ext/-test-/gvl/call_without_gvl/call_without_gvl.c: new ext for the above test. * ext/-test-/gvl/call_without_gvl/extconf.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50900 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2015-06-15svn2015-06-141-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/pathname/lib/pathname.rb (descend): Blockless form supported.akr2015-06-144-2/+36
| | | | | | | | | (ascend): Ditto. [ruby-core:68820] [Feature #11052] Patch by Piotr Szotkowski. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e