summaryrefslogtreecommitdiff
path: root/spec/ruby/core/string
AgeCommit message (Collapse)Author
2022-12-02[Bug #19087] Merge to "trailing garbage" caseNobuyoshi Nakada
2022-12-02[Bug #19087] Fix an assertion of `String#to_c`Nobuyoshi Nakada
2022-11-24Make String#rstrip{,!} raise Encoding::CompatibilityError for broken coderangeJeremy Evans
It's questionable whether we want to allow rstrip to work for strings where the broken coderange occurs before the trailing whitespace and not after, but this approach is probably simpler, and I don't think users should expect string operations like rstrip to work on broken strings. In some cases, this changes rstrip to raise Encoding::CompatibilityError instead of ArgumentError. However, as the problem is related to an encoding issue in the receiver, and due not due to an issue with an argument, I think Encoding::CompatibilityError is the more appropriate error. Fixes [Bug #18931] Notes: Merged: https://github.com/ruby/ruby/pull/6282
2022-11-07Update to ruby/spec@740ccc8Benoit Daloze
2022-09-28Update to ruby/spec@1d9d5c6Benoit Daloze
2022-08-20[Bug #18955] format single character for `%c`Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/6258
2022-07-27Update to ruby/spec@cbfaf51Benoit Daloze
2022-06-26Update to ruby/spec@ab32a1aBenoit Daloze
2022-05-20[Feature #18595] Alias String#-@ as String#dedupJean Boussier
Notes: Merged: https://github.com/ruby/ruby/pull/5583
2022-04-25Update to ruby/spec@3affe1eBenoit Daloze
2022-04-17Fix a typoKazuhiro NISHIYAMA
2022-03-28Update to ruby/spec@aaf998fBenoit Daloze
2022-03-03Update to ruby/spec@82cd3a3Benoit Daloze
2022-01-28Update to ruby/spec@902ab83Benoit Daloze
2022-01-10Update to ruby/spec@226cfdcBenoit Daloze
2021-11-29Update to ruby/spec@7f22a0bBenoit Daloze
2021-10-28Update to ruby/spec@21a48d9Benoit Daloze
2021-10-26pack.c: add an offset argument to unpack and unpack1Jean Boussier
[Feature #18254] This is useful to avoid repeteadly copying strings when parsing binary formats
2021-10-05Update to ruby/spec@ccf0d85Benoit Daloze
2021-07-29Update to ruby/spec@b65d01fBenoit Daloze
2021-06-02Update to ruby/spec@a0b7d0dBenoit Daloze
2021-02-27Update to ruby/spec@37e52e5Benoit Daloze
2021-02-20Make String#{strip,lstrip}{,!} strip leading NUL bytesJeremy Evans
The documentation already specifies that they strip whitespace and defines whitespace to include null. This wraps the new behavior in the appropriate guards in the specs, but does not specify behavior for previous versions, because this is a bug that could be backported. Fixes [Bug #17467] Notes: Merged: https://github.com/ruby/ruby/pull/4164
2021-01-28Update to ruby/spec@8cafaa5Benoit Daloze
2020-12-27Update to ruby/spec@4ce9f41Benoit Daloze
2020-12-21Use Integer instead of Fixnum/BignumNobuyoshi Nakada
2020-11-27Update to ruby/spec@ac878adBenoit Daloze
2020-11-22Use hex-encoded binaries instead of UTF-8Nobuyoshi Nakada
Which UTF-8 char corresponds to the binary representation is nonsense for other encodings, and just confusing.
2020-11-22Add string encoding IBM720 alias CP720 (#3803)Lars Kanis
The mapping table is generated from the ICU project: https://github.com/unicode-org/icu/blob/master/icu4c/source/data/mappings/ibm-720_P100-1997.ucm Fixes bug 16233 : https://bugs.ruby-lang.org/issues/16233 Notes: Merged-By: nurse <naruse@airemix.jp>
2020-11-20Make String methods return String instances when called on a subclass instanceJeremy Evans
This modifies the following String methods to return String instances instead of subclass instances: * String#* * String#capitalize * String#center * String#chomp * String#chop * String#delete * String#delete_prefix * String#delete_suffix * String#downcase * String#dump * String#each/#each_line * String#gsub * String#ljust * String#lstrip * String#partition * String#reverse * String#rjust * String#rpartition * String#rstrip * String#scrub * String#slice! * String#slice/#[] * String#split * String#squeeze * String#strip * String#sub * String#succ/#next * String#swapcase * String#tr * String#tr_s * String#upcase This also fixes a bug in String#swapcase where it would return the receiver instead of a copy of the receiver if the receiver was the empty string. Some string methods were left to return subclass instances: * String#+@ * String#-@ Both of these methods will return the receiver (subclass instance) in some cases, so it is best to keep the returned class consistent. Fixes [#10845] Notes: Merged: https://github.com/ruby/ruby/pull/3701
2020-11-13Update to ruby/spec@b0b7f53Benoit Daloze
2020-09-30Update to ruby/spec@9277d27Benoit Daloze
2020-09-17Update to ruby/spec@e829fb0Benoit Daloze
2020-08-28Update to ruby/spec@335eb9bBenoit Daloze
2020-07-27Update to ruby/spec@07164daBenoit Daloze
2020-05-03Update to ruby/spec@032ee74Benoit Daloze
2020-04-01Drop support for ruby 2.4 from ruby/specNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/2892
2020-04-01Use FrozenError instead of frozen_error_classNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/2892
2020-02-28Update to ruby/spec@41bf282Benoit Daloze
2020-02-23Warn non-nil `$/` [Feature #14240]Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/2920
2020-01-28Update to ruby/spec@f8a2d54Benoit Daloze
2020-01-15Freeze Regexp literalsJean Boussier
[Feature #8948] [Feature #16377] Since Regexp literals always reference the same instance, allowing to mutate them can lead to state leak. Notes: Merged: https://github.com/ruby/ruby/pull/2705
2019-12-27Update to ruby/spec@d419e74Benoit Daloze
2019-12-20Fixed misspellingsNobuyoshi Nakada
Fixed misspellings reported at [Bug #16437], only in ruby and rubyspec.
2019-11-18Deprecate taint/trust and related methods, and make the methods no-opsJeremy Evans
This removes the related tests, and puts the related specs behind version guards. This affects all code in lib, including some libraries that may want to support older versions of Ruby. Notes: Merged: https://github.com/ruby/ruby/pull/2476
2019-09-29Update to ruby/spec@34e6246Benoit Daloze
2019-09-29Update to ruby/spec@519df35Benoit Daloze
2019-07-27Update to ruby/spec@875a09eBenoit Daloze
2019-06-27Update to ruby/spec@94d98ffBenoit Daloze
2019-06-27Update to ruby/spec@8d74d49Benoit Daloze