Strange `FrozenError` on `Psych.load`
shyouhei opened this issue · 1 comments
shyouhei commented
Is it intentional for the following Ruby code to raise FrozenError
?
Psych.safe_load(<<~'end', aliases: true, freeze: true)
---
foo: &foo
<<: *foo
end
Possibilities:
- Psych should accept this YAML and properly return a frozen, recursive hash.
- Psych should raise
Psych::AnchorNotDefined
instead ofFrozenError
. FrozenError
is the legit exception here.
I have no idea if the YAML in question is valid or not at the first place.
tenderlove commented
- Psych should accept this YAML and properly return a frozen, recursive hash.
IMO this is the correct behavior. I'm not sure how hard it is to implement though.