Make 'y' & 'n' into booleans (true/false) #448
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Issue #443
In order to be compatible with Ruby's original Syck library, Psych made y/n default to strings. However, now, the Syck library is dead, and I think it makes since to make Psych compliant with YAML spec v1.1.
In the issue, this caused a problem when Psych produced a non-compliant file that then broke in a compliant parser in another language. I think it's important that Psych makes YAML files that can be consumed by anything that speaks YAML.
https://yaml.org/type/bool.html
However, this is a potentially breaking change. If previous gems relied on y/n as strings, they will now need to be updated to use single/double quotes. This is rare, but should be considered, especially for YAML common as this:
It will need to be updated to this:
Maybe this should be a major version change? However, these gems relied on a broken/non-compliant parser, so it's a difficult decision to make.
Instead of this solution, we could...
strict_compliance
keyword arg option,