TGViewer
Инструменты программиста Инструменты программиста @prog_tools · 12.9K subscribers
Post #2816 2.08K
just 1.54.0 — раннер команд проекта научился кэшировать рецепты

just это команд-раннер: складываете команды проекта в justfile и зовёте их коротко, just build вместо длинной строки. От make он отличается тем, что это именно запускалка рецептов, без системы сборки и без правил о зависимостях файлов по умолчанию. Релиз 1.54.0 вышел 23 июня, на GitHub больше 34 тысяч звёзд.

Главное в релизе — кэширование рецептов:
🔘рецепт со скриптом помечается атрибутом [cache], и тогда just пропускает повторный запуск, пока ключ кэша не изменился;
🔘ключ это BLAKE3-хеш сериализованного JSON с именем рецепта, аргументами и дополнительными полями; сам кэш лежит в папке .justcache рядом с justfile и в репозиторий не коммитится;
🔘[cache(inputs = ["lib.c", "main.c"])] добавляет в ключ хеши входных файлов, поэтому правка исходника даёт промах кэша и перезапуск, как зависимости в make;
🔘на записях кэша берутся файловые локи: при параллельном запуске с одним ключом рецепт отработает один раз, второй процесс подождёт и пропустит;
🔘флаг --no-cache отключает кэш целиком, а just --clean чистит его выборочно, по рецепту или по модулю.

Что ещё приехало в 1.54.0:
🔘атрибут [continue] продолжает рецепт, если команду прервали сигналом и она при этом успела завершиться успешно, по умолчанию это SIGINT, то есть Ctrl-C;
🔘set dotenv-command и --dotenv-command запускают команду и подгружают её вывод как env-файл, удобно для расшифровки секретов на лету, например через sops;
🔘аргументы рецепта теперь могут быть выражением, а не только литералом.

Авторы прямо предупреждают: кэшированные рецепты по своей природе хрупкие, и за полноту ключа отвечаете вы. Пригодится тем, кто гоняет повторяющиеся сборочные шаги через justfile и хочет пропускать те, где входные данные не поменялись.

https://github.com/casey/just

Язык: Rust. Лицензия: CC0-1.0.

@prog_tools
  • 💯 2
  • 🔥 1
  • 🤔 1
More from @prog_tools
  1. Sep 20, 2026Как переходить между каталогами с zoxide zoxide запоминает, какие каталоги вы открываете ч…
  2. Sep 20, 2026Как искать по коду с ripgrep с учётом .gitignore ripgrep (rg) рекурсивно ищет строки по ре…
  3. Sep 19, 2026Три вещи, которые невозможно объяснить человеку, родившемуся после 2005-го: зачем нужен бы…
  4. Sep 19, 2026Task: кроссплатформенный запуск задач проекта Task — быстрый инструмент сборки для повторя…
  5. Sep 19, 2026Как запускать и тестировать HTTP-запросы с Hurl Hurl — командная утилита для HTTP-запросов…
  6. Sep 18, 2026Tokei считает строки кода и отделяет их от комментариев Tokei — утилита командной строки д…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →