Требования: python версии ^3.10, pip версии 22 и выше, пакетный менеджер poetry.
Склонируйте репозиторий проекта локально, из корневой директории проекта выполните установку пакета командой make install, выполните сборку проекта командой make build, установите пакет в систему командой make package-install.
Программа вычисляет разницу между двумя древовидными структурами данных:
- поддерживаются разные входные форматы файлов: json, yaml
- результат сравнения выводится в разных форматах: stylish (по умолчанию), plain и json
Сli-утилита принимает через командную строку два аргумента — пути до сравниваемых файлов first_file и second_file, и опцию -f(--format), отвечающую за выбор формата (stylish, plain или json):
usage: gendiff [-h] [-f FORMAT] first_file second_file
Пакет также можно использавать как библиотеку, которая предоставляет модуль gendiff с функцией generate_diff():
from gendiff import generate_diff
diff = generate_diff(path_to_file1, path_to_file2, format)
print(diff)
Здесь также обязательные аргументы path_to_file1 и path_to_file2 являются путями к сравниваемым файлам, необязательный параметр format выбирает вид представления результата и может принимать значения: stylish (по умолчанию, возвращает строку), plain (возвращает строку - плоский текст) и json (вывод в структурированном формате json).
Аскинема - Сравнение плоских файлов (JSON):
Аскинема - Сравнение плоских файлов (YAML):