They got more strict about booleans. For those who need/want the old behavior, ALLOW_BROKEN_CONDITIONALS can be set in the ansible.cfg or `is truthy` can be used for python-like version, but it becomes explicit vs being implied.
One workaround is to escape the string, like this:
countries:
- DE
- FR
- "NO"
- PL
- RO
Comon, it’s 2026, yeah yaml’s design can lead to odd type casts, but a whole essay on this? Keep it under 140 chars pls.I have doubts about the over all utility of yaml. I am not sure how readable it is over well formed json. and my main exposure to it is ansible which suffers from the inner platform effect where in order to save us from programming a programming language is jammed into a non programming language(usually XML but in this case YAML) and every one is more miserable for the experience. But complaining about a thing that is fixed is wierd.
You are literally one missing tab away from breaking your entire configuration file. Yet the industry keeps pushing it for the sake of “simplicity” - for small configurations sure, it’s fine, but many hundred lines of config entries? Good luck fixing it, if something goes wrong.
I still can’t get why software engineers suddenly started to hate XML.
The only thing I wish it had is @import-s from a separate files, that way we could split local/checkedin configs. YAML doesn't have @imports as well (only rudimentary from the same file), I have only seen them at HOCON.
Not if you use the "flow" style. The "flow" style makes the syntax almost tolerable. But, if you do that:
a) You don't get to use all of YAML. I remember that the '|' construction could not be used, and I believe that there was at least one other feature that was unavailable.
b) Get ready to get turbofucked when some YAML-handling library writes out your config file in "block" style, putting you right back in Indentation Hell.
After having worked with both professionally for many years, I'd say that I hate JSON and YAML just about equally.
I personally think the best is one of the humanized json ones like https://maml.dev/
<project>MAML</>
<tags>
<item>minimal</>
<item>readable</>
</>
<!-- A simple nested object -->
<spec>
<version>1</>
<author>Anton Medvedev</>
</>
<!-- Array of objects -->
<examples>
<item>
<name>JSON</>
<born>2001</>
</>
<item>
<name>MAML</>
<born>2025</>
</>
</>
<notes>
This is a multiline raw strings.
Keeps formatting as-is.
</>Ultimately, what matters is the editing mode and not the data format. Good syntax highlighting and autocompletion goes a long way towards safely editing structured text, regardless of on-disk format.