Мы используем Makefile думая, что нет альтернатив, что это стандарт и всё такое.
Но make это не запускалка команд, а система сборки. Мы фактически используем его не по назначению.
И на самом деле альтернатива есть! Некоторое время назад я открыл для себя прекрасный инструмент - just. Он решает все проблемы make.
just - это не система сборки как make, это именно исполнитель команд!
Больше никаких Phony Targets и табуляций, привет нормальный синтаксис и передача аргументов!!! 😎
⭐️Что умеет just:
✅ Автодокументирование команд
Не нужно делать отдельную команду с докой, просто добавь комментарий
# команда сборки
build:
...
$ just --list
Available recipes:
build # команда сборки
Команда с именем default запускается по умолчанию если не указано другое, так что я обычно делаю так:
default:
just --list
Теперь просто выполняем just и получаем доку из текущего файла.
✅ Удобная работа с переменными окружения
# загрузить из .env
set dotenv-load
# глобальная переменная
export PYTHONPATH := "./src"
# переменная для команды
test $TESTUNG="true":
pytest
✅ Передача аргументов
build target:
@echo 'Build {{target}}...'
команда запуска
$ just build dev
# Build dev...
✅ Выбор интерпретатора прямо в команде
Пример с инлайн-скриптом на python:
system:
#!/usr/bin/env python3
import platform
print(platform.system())
Эта же функция позволит выполнить скрипт как одну команду вместо перезапуска шела для каждой строки
foo:
#!/usr/bin/env sh
for file in ls .; do
echo $file
done
✅ Выполнение команды в определенной директории. Можно указать как релятивный путь так и абсолютный
[working-directory: 'backend']
build:
docker compose build
Также можно задать рабочую директорию глобально
Там еще много интересного:
- поддержка функций
- автокомплиты и интеграции
- экспрешены
- алиасы команд
- группировка команд
- альтернативы команды под разные ОС
- импорт других just-файлов
- цветной вывод
- ... и другие штуковины!
Так что вперёд - ➡️ читать доку!
Репозиторий: ➡️https://github.com/casey/just
Статья: ➡️https://www.chicks.net/reference/file_formats/just/
ЗЫ. Кажется, на Makefile я уже не вернусь)
#tools
@RusEmbMalta
A series of press releases dedicated to 80th anniversary of the Victory in the Great Patriotic War
🗓️80 Years Since the Historic Meeting on the Elbe
On April 25, 1945, just fifteen days before Nazi Germany’s surrender, Soviet and American troops met on the Elbe River, sealing one of the most symbolic moments of World War II. Soldiers of the Red Army’s 1st Ukrainian Front under Marshal Ivan Konev joined forces with the US 1st Army’s 69th and 104th Infantry Divisions led by General Omar Bradley.
This powerful encounter marked the imminent end of the war in Europe and gave birth to what would become known as the Spirit of the Elbe – a legacy of unity, courage, and hope for a peaceful future.
🕊️ On the 75th anniversary in 2020, Presidents Vladimir Putin and Donald Trump paid tribute in a joint statement:
“The Spirit of the Elbe is an example of how our countries can put aside differences, build trust, and cooperate in pursuit of a greater cause... Their heroic feat will never be forgotten.”
That day in 1945, language and cultural barriers faded as soldiers embraced, exchanged keepsakes, and celebrated together. A photo of Alexander Sylvashko and William Robertson became an icon of unity. Sylvashko would later reflect, “If that spirit had endured, the world might have been a better place.”
🕯️ Even through the Cold War, the veterans of the Elbe kept this spirit alive – a reminder of what’s possible when nations stand together against evil. In 1963, American veteran Joe Polowsky wrote to Marshal Konev:
“The promise made on April 25, 1945, must be upheld.”
📌 On this 80th anniversary, we honor the memory of that handshake on the Elbe – a symbol of allied brotherhood, a shared sacrifice, and a lasting hope for peace.
#Elbe80#SpiritOfTheElbe#WWII#Victory80#SharedHistory#RedArmy#NeverForget
📢Товарищи, отличные новости!
Только что получил короткий репортаж от наших итальянских коммунистов о проведении акции "Бессмертный полк" в Италии! 🇮🇹
🤝Наши братья по идеологии практически во всём мире проявляют солидарность с Россией в борьбе против западного империализма
❌
Коммунисты всего мира помнят и чтят подвиг советских солдат и всего советского народа в годы Второй Мировой войны✊
🫂После II Международного антифашистского форума в Москве у меня и у Левого Фронта появилось множество близких товарищей по всему миру
🌍
😊Уверен, мы будем поддерживать друг друга в любых обстоятельствах!
🛫Кстати, скоро Левый Фронт планирует ряд поездок за рубеж для участия в международных мероприятиях‼️
Хотите с нами?😉
Еще не в Левом Фронте❓
👇Тогда пишите и вступайте
[email protected]
Подробности от наших итальянских товарищей:
"Мероприятие состоялось сегодня и было организовано членами организации Reggimento Immortale Roma на площади Уго Ла Мальфа, под памятником, посвященным Джузеппе Мадзини. Прозвучали различные речи, песни и стихи. Естественно, особая дань уважения была отдана товарищам, сражавшимся в Красной Армии и Итальянском сопротивлении. Коммунистическая партия была рада принять участие в праздновании."
(Фабрицио, Reggimento Immortale Roma)
https://t.me/ilpartitocomunista_ufficiale/518
#БессмертныйПолк#ДеньПобеды#9Мая#Коммунисты#Солидарность#ЛевыйФронт#Антифашизм#Италия#Россия#ВместеМыСила#RedArmy#PartitoComunista
📢Товарищи, отличные новости!
Только что получил короткий репортаж от наших итальянских коммунистов о проведении акции "Бессмертный полк" в Италии! 🇮🇹
🤝Наши братья по идеологии практически во всём мире проявляют солидарность с Россией в борьбе против западного империализма
❌
Коммунисты всего мира помнят и чтят подвиг советских солдат и всего советского народа в годы Второй Мировой войны✊
🫂После II Международного антифашистского форума в Москве у меня и у Левого Фронта появилось множество близких товарищей по всему миру
🌍
😊Уверен, мы будем поддерживать друг друга в любых обстоятельствах!
🛫Кстати, скоро Левый Фронт планирует ряд поездок за рубеж для участия в международных мероприятиях‼️
Хотите с нами?😉
Еще не в Левом Фронте❓
👇Тогда пишите и вступайте
[email protected]
Подробности от наших итальянских товарищей:
"Мероприятие состоялось сегодня и было организовано членами организации Reggimento Immortale Roma на площади Уго Ла Мальфа, под памятником, посвященным Джузеппе Мадзини. Прозвучали различные речи, песни и стихи. Естественно, особая дань уважения была отдана товарищам, сражавшимся в Красной Армии и Итальянском сопротивлении. Коммунистическая партия была рада принять участие в праздновании."
(Фабрицио, Reggimento Immortale Roma)
https://t.me/ilpartitocomunista_ufficiale/518
#БессмертныйПолк#ДеньПобеды#9Мая#Коммунисты#Солидарность#ЛевыйФронт#Антифашизм#Италия#Россия#ВместеМыСила#RedArmy#PartitoComunista