LINUX.ORG.RU

История изменений

Исправление PPP328, (текущая версия) :

Пользователи и имплементаторы yaml должны погибнуть в пуках. В этом говне миллиард уязвимостей и скрытых преобразований, которые меняют например код Норвегии на false. А если использовать кавычки, то ВНЕЗАПНО формат превращается в JSON, только с пробелами вместо {}

https://habr.com/ru/post/710414/:

JSON прост. Вся спецификация JSON состоит из шести синтаксических диаграмм. Это простой формат данных с простым синтаксисом, и больше в нём нет ничего. В отличие от него, YAML сложен. Настолько сложен, что его спецификация состоит из десяти глав с разделами, пронумерованными на четыре уровня в глубину, и отдельным списком ошибок.

Спецификация JSON не разделена на версии. В 2005 году в неё внесены два изменения (удаление комментариев и добавление научной записи для чисел), но с тех пор она заморожена (уже почти два десятка лет). Спецификация YAML имеет версии. Последняя версия довольно свежая, 1.2.2 от октября 2021 года. YAML 1.2 существенно отличается от 1.1: один и тот же документ в разных версиях YAML может парситься по-разному. Ниже мы увидим много примеров этого.

Переход YAML с версии 1.2.1 на 1.2.2 потребовал многолетних усилий команды специалистов:

Существует целый веб-сайт, посвящённый выбору одного из 63 синтаксисов многострочных строк. Это значит, что человеку очень сложно предсказать, как спарсится конкретный документ.

загрузка непроверенного YAML-документа в общем случае небезопасна, потому что может привести к исполнению произвольного кода.

разработчики YAML-библиотеки языка Go приняли решение реализовать собственный вариант, находящийся примерно посередине между YAML 1.1 и 1.2; в зависимости от контекста парсер ведёт себя по-разному

Исправление PPP328, :

Пользователи и имплементаторы yaml должны погибнуть в пуках. В этом говне миллиард уязвимостей и скрытых преобразований, которые меняют например код Норвегии на false. А если использовать кавычки, то ВНЕЗАПНО формат превращается в JSON, только с пробелами вместо {}

https://habr.com/ru/post/710414/:

JSON прост. Вся спецификация JSON состоит из шести синтаксических диаграмм. Это простой формат данных с простым синтаксисом, и больше в нём нет ничего. В отличие от него, YAML сложен. Настолько сложен, что его спецификация состоит из десяти глав с разделами, пронумерованными на четыре уровня в глубину, и отдельным списком ошибок.

Спецификация JSON не разделена на версии. В 2005 году в неё внесены два изменения (удаление комментариев и добавление научной записи для чисел), но с тех пор она заморожена (уже почти два десятка лет). Спецификация YAML имеет версии. Последняя версия довольно свежая, 1.2.2 от октября 2021 года. YAML 1.2 существенно отличается от 1.1: один и тот же документ в разных версиях YAML может парситься по-разному. Ниже мы увидим много примеров этого.

Переход YAML с версии 1.2.1 на 1.2.2 потребовал многолетних усилий команды специалистов:

Существует целый веб-сайт, посвящённый выбору одного из 63 синтаксисов многострочных строк. Это значит, что человеку очень сложно предсказать, как спарсится конкретный документ.

загрузка непроверенного YAML-документа в общем случае небезопасна, потому что может привести к исполнению произвольного кода.

Исправление PPP328, :

Пользователи и имплементаторы yaml должны погибнуть в пуках. В этом говне миллиард уязвимостей и скрытых преобразований, которые меняют например код Норвегии на false. А если использовать кавычки, то ВНЕЗАПНО формат превращается в JSON, только с пробелами вместо {}

https://habr.com/ru/post/710414/:

JSON прост. Вся спецификация JSON состоит из шести синтаксических диаграмм. Это простой формат данных с простым синтаксисом, и больше в нём нет ничего. В отличие от него, YAML сложен. Настолько сложен, что его спецификация состоит из десяти глав с разделами, пронумерованными на четыре уровня в глубину, и отдельным списком ошибок.

Спецификация JSON не разделена на версии. В 2005 году в неё внесены два изменения (удаление комментариев и добавление научной записи для чисел), но с тех пор она заморожена (уже почти два десятка лет). Спецификация YAML имеет версии. Последняя версия довольно свежая, 1.2.2 от октября 2021 года. YAML 1.2 существенно отличается от 1.1: один и тот же документ в разных версиях YAML может парситься по-разному. Ниже мы увидим много примеров этого.

Переход YAML с версии 1.2.1 на 1.2.2 потребовал многолетних усилий команды специалистов:

Существует целый веб-сайт, посвящённый выбору одного из 63 синтаксисов многострочных строк. Это значит, что человеку очень сложно предсказать, как спарсится конкретный документ.

Исходная версия PPP328, :

Пользователи и имплементаторы yaml должны погибнуть в пуках. В этом говне миллиард уязвимостей и скрытых преобразований, которые меняют например код Норвегии на false. А если использовать кавычки, то ВНЕЗАПНО формат превращается в JSON, только с пробелами вместо {}