Что такое файл YAML?

YAML — конфигурация, понятная человеку

Что это такое?

YAML — это формат конфигурационных файлов, созданный для того, чтобы его было легко читать и писать человеку. Никаких фигурных скобок, никаких тегов: структура задаётся отступами, как в маркированном списке.

Он поддерживает комментарии, что делает его излюбленным форматом для конфигурационных файлов — в отличие от JSON, где комментарии запрещены, и это неудобство ощущается на практике постоянно.

История и происхождение

YAML появился в 2001 году с явной целью быть более читаемым, чем XML, и более гибким, чем существующие на тот момент форматы конфигурации.

Он прочно вошёл в арсенал современной разработки: непрерывная интеграция, оркестрация контейнеров, автоматизированное развёртывание. Сегодняшний инженер пишет на нём практически каждый день.

Чем он удобен

Он очень читаемый, лаконичный, поддерживает комментарии и изящно обрабатывает вложенные структуры.

Технически он является надмножеством JSON: любой корректный файл JSON — это одновременно и корректный YAML.

Ограничения и недостатки

Отступы имеют значение, а табуляция запрещена: один лишний или неправильно поставленный пробел — и файл либо меняет смысл, либо становится невалидным.

Автоматическое приведение типов — известная ловушка формата: в старых версиях значение NO (код страны Норвегия) интерпретировалось как логическое «ложь». Такие неожиданности закрепили за форматом репутацию неоднозначного.

Советы по использованию

YAML отлично подходит для конфигурации, которую пишут вручную. Для обмена данными между программами лучше конвертировать его в JSON: он строже, предсказуемее и не допускает двусмысленности типов.

Всегда заключайте в кавычки значения, которые могут быть неверно истолкованы: да, нет, on, off и всё, что похоже на число, но им не является.

Конвертируйте ваш YAML за секунды на наших защищённых серверах во Франции.

Конвертировать YAML