Сетевое ядро на Zig 0.16.0. Реализованы пул буферов, ограниченные FIFO, TCP lifecycle и single-worker IPv4 TCP relay через kqueue на macOS. Следующий этап — SOCKS5 parser/handshake.
После клонирования, с установленными Git и mise версии 2026.10.4 или новее, из корня проекта:
mise trust
mise install --lockedКоманда устанавливает закреплённый Zig и автоматически подключает Git hooks.
С активированным в shell mise hooks также подключаются при входе в доверенный
проект. Сам git clone скрипты проекта не запускает.
Перед коммитом hook форматирует staged .zig/.zon, добавляет результаты
форматирования в index и последовательно запускает проверку форматирования,
тесты Debug, тесты ReleaseSafe и сборку ReleaseSafe. Ошибки блокируют коммит;
последующие проверки при отказе не запускаются.
Для коммитов из IDE hook также ищет mise в ~/.local/bin, /opt/homebrew/bin
и /usr/local/bin, если он отсутствует в PATH. Для другой директории установки
добавьте mise в окружение IDE.
Если staged Zig-файл содержит незастейдженные правки, hook останавливается до форматирования: добавьте файл целиком или разделите изменения. Другие файлы автоматически в index не добавляются.
mise run build
mise run checkcheck проверяет рабочее дерево без автоисправлений. Hook проверяет рабочее
дерево, а не отдельный экспорт Git index; перед коммитом добавьте все связанные
изменения, нужные для сборки. В CI используйте mise run check на чистом checkout
после установки инструментов. Сетевые тесты текущего relay требуют macOS.
mise.lock закрепляет Zig для macOS ARM64, Linux x64 и Linux ARM64. Linux-записи
фиксируют инструментарий для будущего Linux runtime; переносимость ядра этим
не подтверждается. Для обновления lockfile без смены версии Zig:
mise lockСписок платформ сохраняется в mise.toml. В копии проекта без Git metadata
установка инструментов работает, а подключение Git hooks пропускается.