You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Your website includes a lot of criticism of YAML’s Norway problem (where NO would parse as the boolean false), but it neglects to mention that this behavior was already removed thirteen years ago in YAML 1.2, and even includes this incorrect statement:
The most tragic aspect of this bug, however, is that it is intended behavior according to the YAML 1.2 specification.
It was intended according to the YAML 1.1 specification, but in YAML 1.2, the only recognized booleans are true, True, TRUE, false, False, FALSE.
Now, there are of course still arguments to be made—for example, some popular libraries still only support YAML 1.1. But these arguments should be made clearly and fairly.
The text was updated successfully, but these errors were encountered:
I landed on the "Norway problem" page today because JetBrains included a reference to it in the change notes for IntelliJ IDEA 2023.2 (search for "Norway").
Since many more people are likely going to discover this page (not necessarily the problem itself), please correct this statement.
The most tragic aspect of this bug, however, is that it is
*intended* behavior according to the [YAML 1.2 specification](https://yaml.org/spec/1.2.2/).
The real fix requires explicitly disregarding the spec - which
is why most YAML parsers have it.
Suggestion: drop these lines or replace them with something like this:
The most tragic aspect of this bug, however, is that it is intended behavior according to the YAML 1.1 specification.
Although this was fixed in YAML 1.2, there are popular parsers in the wild like PyYAML that still use 1.1.
Your website includes a lot of criticism of YAML’s Norway problem (where
NO
would parse as the booleanfalse
), but it neglects to mention that this behavior was already removed thirteen years ago in YAML 1.2, and even includes this incorrect statement:It was intended according to the YAML 1.1 specification, but in YAML 1.2, the only recognized booleans are
true
,True
,TRUE
,false
,False
,FALSE
.Now, there are of course still arguments to be made—for example, some popular libraries still only support YAML 1.1. But these arguments should be made clearly and fairly.
The text was updated successfully, but these errors were encountered: