Comment by Y-bar
1 month ago
We stopped having this problem over ten years ago when spec 1.1 was implemented. Why are people still harking on about it?
1 month ago
We stopped having this problem over ten years ago when spec 1.1 was implemented. Why are people still harking on about it?
Current PyYAML:
Other people did not stop having this problem.
It might be that there’s some setting that fixes this or some better library that everyone should be switching to, but YAML has nothing that I want and has been a repeated source of footguns, so I haven’t found it worth looking into. (I am vaguely aware that different tools do configure YAML parsing with different defaults, which is actually worse. It’s another layer of complexity on an already unnecessarily complex base language.)
The ancient rule of ”use software that is updated with bugfixes” certainly applies here.
A new spec version doesn’t mean we stop having the problem.
E.g. kubernetes wrote about solving this only five months ago[1] and by moving from yaml to kyaml, a yaml subset.
[1]: https://kubernetes.io/blog/2025/07/28/kubernetes-v1-34-sneak...
The 1.1 spec was released about _twenty_ years ago, I explicitly used the word _implemented_ for a reason. As in: Our Yaml lib vendor had begun officially supporting that version more than ten years ago.
Note that you reference 1.1, I think that version still had the norway behavior.
2 replies →
Because there's a metric ton of software out there that was built once upon a time and then that bit was never updated. I've seen this issue out in the wild across more industries than I can count.
I’m not here clanking down on Java for lacking Lambda features, the problem is that I did not update my Java environment past the 2014 version, not a problem with Java.
I think this mixes up two separate things. If you're working with Java, it's conceivable that you could probably update with some effort. If you're an aerospace engineer using software that was certified decades ago for an exorbitant amount of money, it's never going to happen. Swap for nearly any industry of your liking, since most of the world runs on legacy software by definition. A very large number of people running into issues like these are not in a position where they could solve the problem even if they wanted to.
1 reply →
Because once a technology develops a reputation for having a problem it's practically impossible to rehabilitate it.
Now add brackets and end-tags, I'll reconsider. ;)
Brackets works fine:
End tags, that I’m not sure what that is. But three dashes is part of the spec to delineate sections: