Re[6]: Самый удобный человеко-читаемый язык данных
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 28.12.24 09:16
Оценка: 2 (1)
Здравствуйте, vsb, Вы писали:

vsb>Можно конкретный YAML-документ, который я не могу через `yq -o json` в JSON преобразовать?


Постановка вопроса некорректна. Не вообще преобразовать, а преобразовать согласно стандарту, однозначно и без потери данных.

Про теги я уже сказал. Но вот возьмём пример с binary, взятый напрямую из текста стандарта: вход:

picture: !!binary |
 R0lGODlhDAAMAIQAAP//9/X
 17unp5WZmZgAAAOfn515eXv
 Pz7Y6OjuDg4J+fn5OTk6enp
 56enmleECcgggoBADs=


Выхлоп yq:

{
  "picture": "R0lGODlhDAAMAIQAAP//9/X\n17unp5WZmZgAAAOfn515eXv\nPz7Y6OjuDg4J+fn5OTk6enp\n56enmleECcgggoBADs=\n"
}


Признак того, что это должны быть двоичные данные — потерян (но он и не мог быть в JSON).
В свёрнутом base64 присутствуют дополнительные LF, присутствие которых должно быть ещё обосновано — в стандартном base64 их не полагается, должны быть убраны при чтении из внешнего представления. Итого, поведение yq является его авторским произволом и не отражает сути описанного в спеке.

Вот именно так и надо рассматривать возможное поведение, а не просто "во что-то преобразовал, а во что именно — да и хрен с ним".
The God is real, unless declared integer.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.