aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* test_thread.rb: thread leaknobu2015-10-021-5/+3
| | | | | | | * test/ruby/test_thread.rb (test_handle_interrupt_blocking): fix thread leak. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk, lib/unicode_normalize/tables.rb: Change Unicodeduerst2015-10-023-68/+74
| | | | | | Version for character normalization data from 7.0.0 to 8.0.0. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52000 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix indent (tabify) [ci skip]kazu2015-10-011-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51999 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_symbol.rb: relaxnobu2015-10-011-1/+1
| | | | | | | * test/ruby/test_symbol.rb (test_to_proc): relax the timeout. [ruby-core:70961] [Bug #11560] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2015-10-02svn2015-10-011-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51997 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* proc.c: fix symbol proc marknobu2015-10-013-1/+13
| | | | | | | * proc.c (proc_mark): block.ep of Proc from Symbol is now NULL. [ruby-core:70961] [Bug #11560] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51996 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_args.c: fix marking symbol ifuncnobu2015-10-013-9/+21
| | | | | | | | | | * vm_args.c (vm_caller_setup_arg_block): store new ifunc for symbol in control frame proc to be marked. * proc.c (proc_new), vm_insnhelper.c (vm_yield_with_cfunc): block->proc may be an ifunc now. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51995 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * string.c (rb_sym_proc_call): constifynobu2015-10-012-3/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51994 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* revert r51991nobu2015-10-012-12/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51993 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2015-10-01svn2015-10-011-3/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_args.c: GC guardnobu2015-10-013-5/+17
| | | | | | | * vm_args.c (vm_caller_setup_arg_block): prevent newly created ifunc object from GC. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* dir.c: give pathlen from callersnobu2015-09-301-6/+8
| | | | | | | * dir.c (glob_helper): move pathlen to argument which is known in the callers almost. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51990 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_args.c: optimize symbol block passingnobu2015-09-302-1/+11
| | | | | | | * vm_args.c (vm_caller_setup_arg_block): bypass Symbol#to_proc call to optimize symbol block passing. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51989 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* proc.c: include symbol namenobu2015-09-303-3/+9
| | | | | | | * proc.c (proc_to_s): include the original symbol name in string form. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51988 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: reorder conditionsnobu2015-09-291-11/+4
| | | | | | | * parse.y (token_info_pop): scan lex buffer only when token info is enabled. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: token lengthnobu2015-09-291-14/+16
| | | | | | | * parse.y (token_info_push, token_info_push): add token length parameter instead of strlen. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51983 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2015-09-30svn2015-09-291-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: fix memory leaknobu2015-09-292-0/+14
| | | | | | | * parse.y (parser_free): fix memory leak at syntax error when warn-indent is enabled. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51981 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * parse.y: fix minor typo. [ci skip][fix GH-1038].eregon2015-09-292-1/+6
| | | | | | Patch by @ltratt. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51980 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y: marknobu2015-09-291-0/+1
| | | | | | * parse.y (parser_mark): mark compile option hash. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bm_vm3_gc.rb: no shebangnobu2015-09-291-1/+0
| | | | | | * benchmark/bm_vm3_gc.rb: remove unnecessary shebang line. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* unicode_norm_gen.tmpl: end markernobu2015-09-292-2/+2
| | | | | | | * template/unicode_norm_gen.tmpl: pragma needs the end marker too, not only the beginning marker. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51972 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* tool/unicode_norm_gen.tmpl, lib/unicode_normalize/tables.rb:duerst2015-09-293-857/+857
| | | | | | | get rid of many .freeze commands by using frozen_string_literal pragma. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* compile.c: fix performance of strconcatnobu2015-09-295-1/+37
| | | | | | | | | | * compile.c (compile_dstr_fragments): fix performance by omitting the first empty string only for keeping literal encoding if other literals are too. [ruby-core:70930] [Bug #11556] * string.c (rb_str_append_literal): append but keep encoding non US-ASCII. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bm_vm_symbol_block_pass.rb: renamenobu2015-09-292-3/+13
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51969 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* benchmark for symbol block passingnobu2015-09-281-0/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* proc.c: fix GC guard locationnobu2015-09-281-1/+2
| | | | | | | * proc.c (proc_call): fix GC guard location after the use of its content. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51967 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2015-09-29svn2015-09-281-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vsnprintf.c: constifynobu2015-09-282-2/+2
| | | | | | * vsnprintf.c (FILE::vextra): constify the return value. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51965 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/net/ftp.rb (mtime): use usec instead of fractions to parseshugo2015-09-283-2/+18
| | | | | | | decimal fractions of a second correctly when the number of digits is not 6. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/net/ftp.rb (mtime): parse decimal fractions of a second asshugo2015-09-283-13/+53
| | | | | | specified in RFC 3659. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* preserve encodings in error messagesnobu2015-09-2817-33/+109
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51962 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * properties.svn2015-09-280-0/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51961 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2015-09-28svn2015-09-281-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51960 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/test_forwardable.rb: Write basic tests for lib/forwardable.hsbt2015-09-282-0/+125
| | | | | | [fix GH-1035] Patch by @kachick git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51959 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* class.c: refine error messagesnobu2015-09-274-11/+42
| | | | | | | | | * class.c (rb_define_class, rb_define_class_id_under): refine error messages. * class.c (rb_define_module, rb_define_module_id_under): ditto, and make consistent with class. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51958 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* tkutil.c: use local variablesnobu2015-09-271-5/+6
| | | | | | | * ext/tk/tkutil/tkutil.c (cbsubst_table_setup): use local variables instead of repeating RARRAY_PTR. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ChangeLog: removed duplicated message.hsbt2015-09-271-5/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51956 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_rubyoptions.rb: test combinationsnobu2015-09-271-8/+14
| | | | | | | * test/ruby/test_rubyoptions.rb (test_frozen_string_literal): test combinations of command line option and pragma. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51955 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ruby.c: frozen-string-literal optionnobu2015-09-274-1/+31
| | | | | | | * ruby.c (process_options): add an option to enable/disable frozen-string-literal. [Feature #8976] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51954 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fronzen-string-literal pragmanobu2015-09-279-26/+112
| | | | | | | | | | | | | * compile.c (iseq_compile_each): override compile option by option given by pragma. * iseq.c (rb_iseq_make_compile_option): extract a function to overwrite rb_compile_option_t. * parse.y (parser_set_compile_option_flag): introduce pragma to override compile options. * parse.y (magic_comments): new pragma "fronzen-string-literal". [Feature #8976] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51953 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/unit/assertions.rb: all_assertionsnobu2015-09-274-29/+42
| | | | | | | * test/lib/test/unit/assertions.rb (all_assertions): try all assertions and check if all passed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51952 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ruby.c: abbreviated option namenobu2015-09-271-1/+19
| | | | | | | * ruby.c (name_match_p): allow option argument names to be abbreviated for each words. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51951 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* id_table.c: fix prototype namesnobu2015-09-271-1/+1
| | | | | | * id_table.c: fix prototype names, missing underscore prefixes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51950 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* id_table.c: fix prototype namesnobu2015-09-271-9/+9
| | | | | | * id_table.c: fix prototype names, missing underscore prefixes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51949 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* id_table.c: suppress warningsnobu2015-09-271-7/+27
| | | | | | | * id_table.c (UNUSED): mark implementation functions maybe-unused to suppress warnings by old gcc. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51948 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ostruct.rb: fix NameErrornobu2015-09-262-2/+17
| | | | | | | * lib/ostruct.rb (delete_field): do not raise NameError for existing keys. [Fix GH-1033] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51947 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: clear envs for GEMnobu2015-09-261-0/+4
| | | | | | | * common.mk: clear environment variables for GEM paths to get rid of searching unexpected gems. fix failures on travis-ci. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2015-09-27svn2015-09-261-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/ostruct.rb: Move method definitions for getter/setter to be lazyzzak2015-09-262-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch by @sferik in [GH-1033]: https://github.com/ruby/ruby/pull/1033 Instead of defining two methods -- a reader and writer -- for each OpenStruct attribute when it is initialized, define them lazily, the first time either one is called. This adheres to the principle of "pay for use": methods that are never accessed are never defined. This optimization makes initialization an order of magnitude faster for objects with 100 attributes. In the worst-case scenario, where every attribute is accessed, performance is no worse than it is today. Benchmark --------- require 'benchmark/ips' require 'ostruct' N = 100 ATTRS = (:aa..:zz).take(N) HASH = Hash[ATTRS.map { |x| [x, x] }] def ostruct OpenStruct.new(HASH) end Benchmark.ips do |x| x.report('ostruct') { ostruct } end ------------------------------------------------- before 2.279k (± 8.8%) i/s - 11.395k after 24.702k (±12.8%) i/s - 122.600k ------------------------------------------------- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51944 b2dd03c8-39d4-4d8f-98ff-823fe69b080e