Об этом проекте

Netsuke выступает в качестве высокоуровневой оболочки для системы сборки Ninja, позволяя пользователям определять правила сборки, цели и зависимости с использованием читаемого формата YAML в сочетании с шаблонизацией Jinja для динамического планирования (включая переменные, макросы и поиск по маске/globbing). Ключевые возможности включают: - Парсинг манифестов: поддержка YAML 1.2 с валидацией схемы. - Динамическое планирование: использование Jinja для условной логики (`when`), циклов (`foreach`) и вспомогательных средств окружения. - Статическое выполнение: генерация валидированного графа сборки Ninja, который можно изучить или визуализировать в виде Graphviz DOT/HTML перед выполнением. - Независимость от инструментария: работа с любым инструментарием на базе командной строки (например, Rust, C, Python). - Диагностика: предоставление ошибок с привязкой к исходному коду, отчеты о прогрессе и машиночитаемый вывод в формате JSON. - Кроссплатформенная поддержка: наличие путей выполнения для Unix-оболочек и Windows PowerShell/Bash.