| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2017-06-16 | Use `MRB_PRId` instead of `d` for mrb_int decimal specifier; ref #3701 | Yukihiro "Matz" Matsumoto | |
| 2017-06-16 | Use `mrb_str_new()` instead of `malloc()`; ref #3701 | Yukihiro "Matz" Matsumoto | |
| Otherwise the function may terminate and cause memory leaks. | |||
| 2017-06-16 | Should not use `sizeof(buf)` when `buf` is `char*`; #3701 | Yukihiro "Matz" Matsumoto | |
| 2017-06-14 | Use malloc instead of dynamic allocation | ksss | |
| 2017-06-14 | Fix arena overflow error | ksss | |
| 2017-06-14 | Reimplement String#upto | ksss | |
| 2017-05-21 | String#concat: Try to convert when not string | ksss | |
| 2017-04-25 | Silence warnings caused by implicit type casting. | Yukihiro "Matz" Matsumoto | |
| 2017-04-03 | Unify `else` clause style | Yukihiro "Matz" Matsumoto | |
| 2017-03-10 | Terminate loop if generated string longer than the last; ref #3489 | Yukihiro "Matz" Matsumoto | |
| 2017-03-05 | Check modifiable for String `bang' methods | ksss | |
| 2017-02-11 | Remove historical comment; ref #3450 #3448 | Yukihiro "Matz" Matsumoto | |
| 2017-02-11 | remove skip that shouldn't be necessary anymore. | robert | |
| the test should pass after https://github.com/mruby/mruby/commit/8f4a929e1a01c8d6176fb53a9ef5dff6de632959. | |||
| 2017-02-10 | String#ljust and String#rjust reimplemented with optimized Ruby | Tomasz Dabrowski | |
| 2017-02-10 | Tests for UTF-8 String#ljust and String#rjust | Tomasz Dabrowski | |
| 2017-02-10 | String#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-01-23 | Changed the behavior of mrb_range_beg_len(); close #3411 | Yukihiro "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-04 | Rewrite String#prepend with Ruby | ksss | |
| Fix #3357 | |||
| 2016-12-28 | save/restore arena index around yield; ref #3359 | Yukihiro "Matz" Matsumoto | |
| 2016-11-24 | Read length after args in String#setbyte | Craig Lehmann | |
| Prevents RCE Reported by https://hackerone.com/raydot | |||
| 2016-11-17 | String#{strip,lstrip,rstrip} may cause OOB access | Yukihiro "Matz" Matsumoto | |
| 2016-11-16 | Fixed memory disclosure in String#lines | Yukihiro "Matz" Matsumoto | |
| Reported from from Alex Snaps via Mathieu Leduc-Hamel, both from shopify.com. Thank you! | |||
| 2016-09-28 | Removed trailing spaces | Nobuyoshi Nakada | |
| 2016-08-17 | Fix String#ord failure which return a negative value | Hiroshi Mimaki | |
| 2016-07-27 | Reduce needless Array generation in some String methods | Kouhei Sutou | |
| Here are some benchmarks: each_char: # /tmp/each_char.rb a = "a" * 1000000 a.each_char do |x| end Without this change: % time bin/mruby /tmp/each_char.rb bin/mruby /tmp/each_char.rb 1.07s user 0.02s system 99% cpu 1.088 total With this change: % time bin/mruby /tmp/each_char.rb bin/mruby /tmp/each_char.rb 0.52s user 0.01s system 99% cpu 0.530 total 2 times faster with this change. codepoints: # /tmp/codepoints.rb a = "a" * 1000000 a.codepoints do |x| end Without this change: % time bin/mruby /tmp/codepoints.rb bin/mruby /tmp/codepoints.rb 1.16s user 0.05s system 99% cpu 1.216 total With this change: % time bin/mruby /tmp/codepoints.rb bin/mruby /tmp/codepoints.rb 0.56s user 0.02s system 99% cpu 0.589 total | |||
| 2016-07-26 | Support to call without block to String#each_char | ksss | |
| 2016-07-14 | String#insert should be destructive | ksss | |
| 2016-01-30 | Add String#rjust test to mruby-string-ext | Akira Moroo | |
| 2016-01-30 | Add String#rjust to mruby-string-ext | Akira Moroo | |
| 2015-11-27 | include changed from by quotes ("") to by brackets (<>); close #3032 | Yukihiro "Matz" Matsumoto | |
| 2015-11-24 | add {Array|Hash|String}.try_convert | takahashim | |
| 2015-09-24 | UTF-8 string support in core | Yukihiro "Matz" Matsumoto | |
| define MRB_UTF8_STRING (in mrbconf.h) to enable UTF-8 support. | |||
| 2015-08-22 | Use #nil? instead of == nil. | INOUE Yasuyuki | |
| 2015-08-05 | add String#setbyte and String#byteslice to mruby-string-ext | Yukihiro "Matz" Matsumoto | |
| 2015-06-28 | Rename extended xxxx class or module to xxxx class or module extension | Jun Hiroe | |
| 2015-06-28 | Fix typo; Replace extensional with extended | Jun Hiroe | |
| 2015-05-28 | remove unnecessary including of <ctype.h> | cremno | |
| Not needed anymore since 85075bef7583edd0a48cfbdfaa632cbdacf78f2c | |||
| 2015-04-18 | Suppress warnings generated by -Wwrite-strings | Kouhei Sutou | |
| Here are suppressed warnings: src/fmt_fp.c: In function 'fmt_fp': src/fmt_fp.c:124:16: warning: initialization discards 'const' qualifier from pointer target type char *ss = (t&32)?"inf":"INF"; ^ src/fmt_fp.c:125:17: warning: assignment discards 'const' qualifier from pointer target type if (y!=y) ss=(t&32)?"nan":"NAN"; ^ mrbgems/mruby-string-ext/src/string.c: In function 'mrb_str_succ_bang': mrbgems/mruby-string-ext/src/string.c:302:27: warning: assignment discards 'const' qualifier from pointer target type if (e == b) prepend = "1"; ^ mrbgems/mruby-string-ext/src/string.c:305:27: warning: assignment discards 'const' qualifier from pointer target type if (e == b) prepend = "a"; ^ mrbgems/mruby-string-ext/src/string.c:308:27: warning: assignment discards 'const' qualifier from pointer target type if (e == b) prepend = "A"; ^ mrbgems/mruby-bin-mruby/tools/mruby/mruby.c: In function 'main': mrbgems/mruby-bin-mruby/tools/mruby/mruby.c:213:13: warning: assignment discards 'const' qualifier from pointer target type cmdline = args.cmdline ? args.cmdline : "-"; ^ mrbgems/mruby-bin-debugger/tools/mrdb/cmdbreak.c: In function 'print_breakpoint': mrbgems/mruby-bin-debugger/tools/mrdb/cmdbreak.c:159:3: warning: initialization discards 'const' qualifier from pointer target type char* enable_letter[] = {BREAK_INFO_MSG_DISABLE, BREAK_INFO_MSG_ENABLE}; ^ mrbgems/mruby-bin-debugger/tools/mrdb/cmdbreak.c:159:3: warning: initialization discards 'const' qualifier from pointer target type | |||
| 2015-01-13 | Add String#upto | Jun Hiroe | |
| 2015-01-12 | add String#ljust into mruby-string-ext | takahashim | |
| 2014-12-17 | mrb_str_new(mrb, "", len) creates an unmodifiable string object; ref #2674 | Yukihiro "Matz" Matsumoto | |
| 2014-12-17 | Add String#prepend | Jun Hiroe | |
| 2014-12-13 | Add String#insert | Jun Hiroe | |
| 2014-11-23 | Fix String#slice! raise TypeError or return invalid value. | TOMITA Masahiro | |
| 2014-08-21 | use mrb_str_cat_lit() instead of mrb_str_cat_cstr(). | Tatsuhiko Kubo | |
| 2014-08-11 | "-a-a-".succ should be "-a-b-" | mattn | |
| 2014-08-11 | Fix String#succ. "-a-".succ should be "-b-" | mattn | |
| 2014-08-11 | Fix String#succ. "-".succ should be "." | mattn | |
| 2014-08-08 | remove test for succ on Unicode (non-ASCII) char; #2520 | Yukihiro "Matz" Matsumoto | |
| 2014-08-08 | Add String#succ, String#succ!, String#next, String#next! | mattn | |
