Расширенный каноникализатор JSON
Go to file
2026-08-03 14:00:08 +03:00
JsonCanicalizer.Test Нормальный README 2026-06-23 14:43:45 +03:00
JsonCanonicalizer Работа с потоками внесена в бизнес-логику 2026-08-03 14:00:08 +03:00
JsonCanonicalizer.BL Работа с потоками внесена в бизнес-логику 2026-08-03 14:00:08 +03:00
.gitignore Initial commit 2026-06-23 10:25:34 +00:00
JsonCanonicalizer.sln Текущая версия каноникализатора JSON 2026-06-23 13:36:13 +03:00
nuget.config Текущая версия каноникализатора JSON 2026-06-23 13:36:13 +03:00
README.md Исправлена опечатка в README 2026-06-23 11:47:29 +00:00

json-canonicalizer

Расширенный каноникализатор JSON

Получает JSON на консольный вход, каноникализирует его и выдаёт на консольный выход.

Выполняет:

  • структурное форматирование JSON, переданного однострочно;
  • сортировку свойств объекта по имени;
  • если все элементы списка являются объектами и имеют свойства "id" либо при его отсутствии "guid", сортирует список по id ?: guid.

Предназначение

Служит фильтром для использования в репозитории Git, предназначенном для сравнения сериализованных в JSON объектов.

Для использования репозиторий следует настроить следующим образом:

git config filter.json-canonical.clean "путь/JsonCanonicalizer.exe"
git config filter.json-canonical.smudge "cat"
git config filter.json-canonical.required true

и в .gitattributes прописать

*.json filter=json-canonical