Fix: https://github.com/rails/rails/issues/44452 We don't ignore blank path strings because as surprising as it is, they are valid paths: ```ruby >> path = Pathname.new(" ") => #<Pathname: > >> path.write("test") => 4 >> path.exist? => true ``` Previously it would end up calling `Pathname#empty?` which returned true if the path existed and was an empty directory or file. That behavior was unlikely to be expected.
1.3 KiB
-
Pathname.blank?
only returns true forPathname.new("")
Previously it would end up calling
Pathname#empty?
which returned true if the path existed and was an empty directory or file.That behavior was unlikely to be expected.
Jean Boussier
-
Deprecate
Notification::Event
's#children
and#parent_of?
-
Change default serialization format of
MessageEncryptor
fromMarshal
toJSON
for Rails 7.1.Existing apps are provided with an upgrade path to migrate to
JSON
as described inguides/source/upgrading_ruby_on_rails.md
Zack Deveau and Martin Gingras
-
Add
ActiveSupport::TestCase#stub_const
to stub a constant for the duration of a yield.DHH
-
Fix
ActiveSupport::EncryptedConfiguration
to be compatible with Psych 4Stephen Sugden
-
Improve
File.atomic_write
error handling -
Fix
Class#descendants
andDescendantsTracker#descendants
compatibility with Ruby 3.1.The native
Class#descendants
was reverted prior to Ruby 3.1 release, butClass#subclasses
was kept, breaking the feature detection.Jean Boussier
Please check 7-0-stable for previous changes.