aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/CHANGELOG.md
diff options
context:
space:
mode:
authorJordan Thomas <mail@jordanthomas.me>2019-04-26 13:29:41 -0400
committerRafael França <rafaelmfranca@gmail.com>2019-04-26 13:29:41 -0400
commit4dfdc7eb90be905e0e8e583f942091ce12381b37 (patch)
treea002b4d2d55961e379a9cb92a5637937bd0b1d76 /activesupport/CHANGELOG.md
parente281641e51c8ad9d9bc962d9b89bc9119c1ec8fb (diff)
downloadrails-4dfdc7eb90be905e0e8e583f942091ce12381b37.tar.gz
rails-4dfdc7eb90be905e0e8e583f942091ce12381b37.tar.bz2
rails-4dfdc7eb90be905e0e8e583f942091ce12381b37.zip
Frozen truncate (#36109)
* Add test asserting truncate returns unfrozen string * Ensure strings returned from truncate are not frozen This fixes an issue where strings too short to be truncated were returned unfrozen, where as long-enough strings were returned frozen. Now retuned strings will not be frozen whether or not the string returned was shortened. * Update changelog w/ new truncate behavior description [Jordan Thomas + Rafael Mendonça França]
Diffstat (limited to 'activesupport/CHANGELOG.md')
-rw-r--r--activesupport/CHANGELOG.md19
1 files changed, 19 insertions, 0 deletions
diff --git a/activesupport/CHANGELOG.md b/activesupport/CHANGELOG.md
index d1b3b31646..ccdf2c3040 100644
--- a/activesupport/CHANGELOG.md
+++ b/activesupport/CHANGELOG.md
@@ -1,3 +1,22 @@
+* `truncate` would return the original string if it was too short to be truncated
+ and a frozen string if it were long enough to be truncated. Now truncate will
+ consistently return an unfrozen string regardless. This behavior is consistent
+ with `gsub` and `strip`.
+ Before:
+
+ 'foobar'.truncate(5).frozen?
+ => true
+ 'foobar'.truncate(6).frozen?
+ => false
+
+ After:
+
+ 'foobar'.truncate(5).frozen?
+ => false
+ 'foobar'.truncate(6).frozen?
+ => false
+
+ *Jordan Thomas*
Please check [6-0-stable](https://github.com/rails/rails/blob/6-0-stable/activesupport/CHANGELOG.md) for previous changes.