| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2019-10-10 | Integrate `mrb_str_inspect` and `mrb_str_dump` | KOBAYASHI Shuji | |
| 2019-09-11 | Move tests related to `getbyte`, `setbyte`, byteslice` to core. | Yukihiro "Matz" Matsumoto | |
| 2019-09-11 | Drop test dependency from `mruby-string-ext` to `mruby-enumerator` | KOBAYASHI Shuji | |
| 2019-07-23 | Add encoding argument to `Integral#chr` | KOBAYASHI Shuji | |
| Currently, `Integral#chr` in mruby changes behavior by `MRB_UTF8_STRING` setting. before this patch: $ bin/mruby -e 'p 171.chr' #=> "\xab" (`MRB_UTF8_STRING` is disabled) $ bin/mruby -e 'p 171.chr' #=> "«" (`MRB_UTF8_STRING` is enabled) This behavior is incompatible with Ruby, and a little inconvenient because it can't be interpreted as ASCII-8BIT with `MRB_UTF8_STRING`, I think. So add encoding argument according to Ruby. after this patch: $ bin/mruby -e 'p 171.chr' #=> "\xab" $ bin/mruby -e 'p 171.chr("ASCII-8BIT")' #=> "\xab" $ bin/mruby -e 'p 171.chr("UTF-8")' #=> "«" Allow only `String` for encoding because mruby doesn't have `Encoding` class, and `"ASCII-8BIT"` (`"BINARY"`) and `"UTF-8"` (only with `MRB_UTF8_STRING`) are valid value (default is `"ASCII-8BIT"`). | |||
| 2019-07-19 | Refine `String#chr` test and separate `Fixnum#chr` test | KOBAYASHI Shuji | |
| 2019-06-28 | Use `__ENCODING__` in tests | KOBAYASHI Shuji | |
| It cannot be used for `String#size` test if judging whether or not `MRB_UTF8_STRING` is defined by result of `String#size`. | |||
| 2019-06-25 | Fix `String#byteslice` with `MRB_UTF8_STRING` and some edge cases | KOBAYASHI Shuji | |
| Example: $ bin/mruby -e ' p "あa".byteslice(1) p "bar".byteslice(3) p "bar".byteslice(4..0) ' Before this patch: "a" "" RangeError (4..0 out of range) After this patch (same as Ruby): "\x81" nil nil | |||
| 2019-04-27 | Remove duplicated `String#each_char` | KOBAYASHI Shuji | |
| 2019-03-12 | Fix missing assertions in `mruby-string-ext` test | KOBAYASHI Shuji | |
| 2018-11-19 | Removed `String#try_convert` method from `mruby-string-ext` gem. | Yukihiro "Matz" Matsumoto | |
| Because `try_convert` method rarely used in production. For mruby users, we have `__to_str` utility method to check string type. | |||
| 2018-11-19 | Remove implicit conversion using `to_str` method; fix #3854 | Yukihiro "Matz" Matsumoto | |
| We have added internal convenience method `__to_str` which does string type check. The issue #3854 was fixed but fundamental flaw of lack of stack depth check along with fibers still remains. Use `MRB_GC_FIXED_ARENA` for workaround. | |||
| 2018-11-19 | Remove implicit conversion using `to_int` method. | Yukihiro "Matz" Matsumoto | |
| The ISO standard does not include implicit type conversion using `to_int`. This implicit conversion often causes vulnerability. There will be no more attacks like #4120. In addition, we have added internal convenience method `__to_int` which does type check and conversion (from floats). | |||
| 2018-11-02 | Add tests for empty patterns for `tr` and `count`; #4156 #4157 | Yukihiro "Matz" Matsumoto | |
| 2018-09-21 | Implement `String#delete` and `#delete!`; ref #4086 | Yukihiro "Matz" Matsumoto | |
| mruby restriction: In mruby, `String#delete` only takes single pattern argument. | |||
| 2018-09-21 | Implement `String#count`; ref #4086 | Yukihiro "Matz" Matsumoto | |
| mruby restriction: In mruby, `String#count` does not take multiple pattern arguments, but only one pattern. | |||
| 2018-09-21 | Add `String#squeeze` and `#squeeze!`; ref #4086 | Yukihiro "Matz" Matsumoto | |
| mruby restriction: `String#squeeze` can take more than 1 pattern arguments in CRuby, in that case, the intersection of patterns will be used to match. But in mruby, it doesn't take multiple patterns. | |||
| 2018-09-21 | Add `String#tr_s` and `String#tr_s!`; ref #4086 | Yukihiro "Matz" Matsumoto | |
| 2018-09-21 | Add `String#tr` and `#tr!` to `mruby-string-ext` gem; fix #4086 | Yukihiro "Matz" Matsumoto | |
| This patch is based on `mruby/c` implementation by Hirohito Higashi. We might need to add `#tr_s`, `#squeeze` and `#delete` as well. Adding them should not be too hard using functions we implemented here. | |||
| 2017-10-17 | Add `String#delete_{prefix,suffix}`; CRuby2.5 | Yukihiro "Matz" Matsumoto | |
| 2017-06-14 | Reimplement String#upto | ksss | |
| 2017-05-21 | String#concat: Try to convert when not string | 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 | 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 | |||
| 2016-11-24 | Read length after args in String#setbyte | Craig Lehmann | |
| Prevents RCE Reported by https://hackerone.com/raydot | |||
| 2016-08-17 | Fix String#ord failure which return a negative value | Hiroshi Mimaki | |
| 2016-07-14 | String#insert should be destructive | ksss | |
| 2016-01-30 | Add String#rjust test to mruby-string-ext | Akira Moroo | |
| 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-05 | add String#setbyte and String#byteslice to mruby-string-ext | Yukihiro "Matz" Matsumoto | |
| 2015-01-13 | Add String#upto | Jun Hiroe | |
| 2015-01-12 | add String#ljust into mruby-string-ext | takahashim | |
| 2014-12-17 | Add String#prepend | Jun Hiroe | |
| 2014-12-13 | Add String#insert | Jun Hiroe | |
| 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 | |
| 2014-06-19 | Modify return value of String#slice! if idx == self.size | Akito Mochizuki | |
| 2014-06-15 | Implement String#slice_bang | Jun Hiroe | |
| 2014-06-07 | move String#clear to mruby-string-ext; ref #2370 | Yukihiro "Matz" Matsumoto | |
| 2014-06-07 | remove UTF-8 strings from mruby-string-ext test | Yukihiro "Matz" Matsumoto | |
| 2014-06-04 | Add String#lines | mattn | |
| 2014-06-03 | Implement String#chr | Jun Hiroe | |
| 2014-04-30 | remove trailing spaces | Nobuyoshi Nakada | |
| 2014-04-20 | String#casecmp should be call `to_str` | ksss | |
| when non String object sent And should be raise TypeError when can not responsed to `to_str` | |||
| 2014-03-31 | More tests for String#hex, String#oct as against ↵ | mattn | |
| 9434506035c3fc01de55ac0bc8b75497f8b5df5f | |||
