summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2017-02-10Optimization for String#* for 1-byte stringsTomasz Dabrowski
2017-02-10String#ljust and String#rjust reimplemented with optimized RubyTomasz Dabrowski
2017-02-10Tests for UTF-8 String#ljust and String#rjustTomasz Dabrowski
2017-02-10Merge pull request #3446 from ksss/minirakeYukihiro "Matz" Matsumoto
Fix build error when trace mode
2017-02-10Merge pull request #3447 from dabroz/fix-ljustYukihiro "Matz" Matsumoto
String#ljust and String#rjust reimplementation (fix #3445)
2017-02-10String#ljust and String#rjust reimplementation (fix #3445)Tomasz Dabrowski
- String#ljust and String#rjust are now C functions to improve performance - infinite loop because of an empty padding argument is now prevented (ArgumentError is raised) - extra tests for ljust/rjust added
2017-02-10Fix build error when trace modeksss
Rakefile ``` file "a.txt" do system "echo hello > a.txt" end file "b.txt" => "a.txt" do system "cp a.txt b.txt" end task :default => "b.txt" ``` ``` $ touch b.txt $ ruby minirake --trace Invoke default (already=[], needed=[true]) rake aborted! No such file or directory @ rb_file_s_stat - a.txt minirake:241:in `stat' minirake:241:in `timestamp' minirake:233:in `block in needed?' minirake:233:in `collect' minirake:233:in `needed?' minirake:91:in `invoke' minirake:95:in `block in invoke' minirake:95:in `each' minirake:95:in `invoke' minirake:467:in `block in run' minirake:466:in `each' minirake:466:in `run' minirake:484:in `<main>' ```
2017-02-10File class does not have to include Enumerable.Tomoyuki Sahara
Because IO class, which is the superclass of File class, includes it.
2017-02-09support "x".Tomoyuki Sahara
2017-02-08Fixed mixture of signed/unsigned integersYukihiro "Matz" Matsumoto
in mrbgems/mruby-bin-debugger.
2017-02-08Check if irep is NULL before print_backtrace()Yukihiro "Matz" Matsumoto
According to the valgrind log attached to #3438, proc->body.irep may be NULL in some cases.
2017-02-08Add MRB_TT_PROC check to OP_SUPER as well; fix #3432Yukihiro "Matz" Matsumoto
2017-02-08TCPSocket.new supports "local_host" and "local_service".Tomoyuki Sahara
2017-02-08Check if m->env is NULL before dereferencing it; fix #3436Yukihiro "Matz" Matsumoto
2017-02-08define IO#hash to override Enumerable#hash. fixes #73.Tomoyuki Sahara
Current implementation of Enumerable#hash calls #each to collect hash values of enumerated objects (then calculates the hash value of the Enumerable object). But IO#each is a method to read lines. It is not expected that IO#hash reads all lines from the IO object. Or even worse, program waits for the IO object to be readable if it is a socket or something cannot be read immediately.
2017-02-08Mark classes referenced from saved backtrace.Yukihiro "Matz" Matsumoto
Maybe related to #3438
2017-02-08Fixed a bug in ci address shifting; fix #3423Yukihiro "Matz" Matsumoto
Dinko Galetic and Denis Kasak reported the issue and the fix. (via https://hackerone.com/dgaletic).
2017-02-08codedump.c: OP_POPERR does not have register access.Yukihiro "Matz" Matsumoto
2017-02-08Merge pull request #3437 from eboda/masterYukihiro "Matz" Matsumoto
Fix interpolation escaping in String.inspect
2017-02-07Fix interpolation escaping in String.inspectEdgar Boda-Majer
2017-02-06Merge pull request #3430 from ksss/local_variablesYukihiro "Matz" Matsumoto
Kernel#local_variables: Make result array unique
2017-02-06Kernel#local_variables: Make result array uniqueksss
2017-02-06Check maximum number of formal arguments.Yukihiro "Matz" Matsumoto
http://hkdnet.hatenablog.com/entry/2017/02/06/080000 (Japanese)
2017-02-04Make `eval` to use trampoline technique; fix #3415Yukihiro "Matz" Matsumoto
Now `eval()` can call Fiber.yield etc.
2017-02-04`argv` may be modified when `mrb_funcall()` is called; fix #3419Yukihiro "Matz" Matsumoto
Calling `mrb_funcall()` and `mrb_yield()` (and their related functions) are discouraged unless absolutely necessary, because it can cause this kind of issues very easily.
2017-02-04No need to make env unshared in the finalization; fix #3425Yukihiro "Matz" Matsumoto
2017-02-04Mark `mrb->backtrace.exc` as GC root; fix #3388Yukihiro "Matz" Matsumoto
2017-02-04Jump address should fit in 16 bits range; fix #3426Yukihiro "Matz" Matsumoto
2017-02-03Merge pull request #3420 from udzura/patch-1Yukihiro "Matz" Matsumoto
Fix usage of Class#name in mruby-bin-mruby's bintest
2017-02-03Merge pull request #3427 from clayton-shopify/fix-mrb-random-initYukihiro "Matz" Matsumoto
Fetch arguments earlier in mrb_random_init to avoid a crash.
2017-02-02Fetch arguments earlier to avoid a crash.Clayton Smith
2017-02-02Use standard Module(Class)#to_sUchio KONDO
2017-01-25Update example lines of mrbgems in build_config.rb; ref #3414Yukihiro "Matz" Matsumoto
2017-01-25Copy mrb_float values from pool when MRB_WORD_BOXING; ref #3396Yukihiro "Matz" Matsumoto
2017-01-25Clear (o).w first for MRB_WORD_BOXING; ref #3396Yukihiro "Matz" Matsumoto
2017-01-24Outer class may be same as the class; fix #3382Yukihiro "Matz" Matsumoto
2017-01-24Use size_t to avoid integer overflow in mrb_ary_splice(); fix #3413Yukihiro "Matz" Matsumoto
2017-01-23Change return type of mrb_range_beg_len() from `int` to `mrb_int`.Yukihiro "Matz" Matsumoto
ref #3411
2017-01-23Fix a double free problem in codegen.c; fix #3378Yukihiro "Matz" Matsumoto
This issue was first reported by https://hackerone.com/geeknik The fix was proposed by @titanous
2017-01-23Fix memory leak; ref #3378Yukihiro "Matz" Matsumoto
The fix was proposed by @titanous
2017-01-23The ensure clause should keep its ci after its execution; fix #3406Yukihiro "Matz" Matsumoto
This issue was reported by https://hackerone.com/ston3
2017-01-23Backtrace list must be an array of strings; fix #3408Yukihiro "Matz" Matsumoto
2017-01-23Skip non string values in backtraces; ref #3408Yukihiro "Matz" Matsumoto
2017-01-23Merge pull request #3412 from ksss/mrb_ary_spliceYukihiro "Matz" Matsumoto
Refactoring: Use array_copy instead of for loop
2017-01-23Refactoring: Use array_copy instead of for loopksss
2017-01-23Add MRB_API to mrb_range_beg_len(); ref #3411Yukihiro "Matz" Matsumoto
2017-01-23Changed the behavior of mrb_range_beg_len(); close #3411Yukihiro "Matz" Matsumoto
The new API is: int mrb_range_beg_len(mrb, range, &beg, &len, len, trunc) The new argument `trunc` is a boolean value that specifies whether the function truncates the range. The new return value is an integer instead of a boolean, that is: 0: not a range 1: range with proper edges 2: out of range To get the old behavior, you have to rewrite: mrb_range_beg_len(mrb, range, &beg, &len, len) to: mrn_range_beg_len(mrb, range, &beg, &len, len, TRUE) == 1 [Breaking Change]
2017-01-23Should not make empty strings shared; fix #3407Yukihiro "Matz" Matsumoto
2017-01-23Use mrb_write_barrier() instead of mrb_field_write_barrier_value()Yukihiro "Matz" Matsumoto
ref #3409
2017-01-23Remove unnecessary inline declaration; ref #3409Yukihiro "Matz" Matsumoto