Мы используем 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
🇬🇧 Une grève des conducteurs du métro a débuté à Londres, première d’une série de six mouvements de 24 heures prévus cette année.
Contrairement à septembre dernier, où tout le métro avait été paralysé pendant plusieurs jours, seules deux lignes - très fréquentées - sont cette fois totalement à l’arrêt: la ligne Piccadilly et la ligne Circle.
Le mouvement est organisé par le syndicat des transports qui s’oppose à l’introduction d’un calendrier de quatre jours plus intensif.
#londres#métro#grève
🇰🇪Des milliers de passagers se trouvent bloqués à l’aéroport international de Nairobi en raison d’une grève, rapporte le site Africanews. Le mouvement est organisé par le syndicat des travailleurs des aéroports du Kenya.
La grève a débuté lundi, après un ultimatum de sept jours lancé par le syndicat, les négociations prolongées avec l’Autorité de l’aviation civile du Kenya concernant l’augmentation des salaires et l’amélioration des conditions de travail n’ayant jusqu’ici donné que peu de résultats concrets. Ce mouvement a entraîné des réacheminements, des retards et des annulations de vols, affectant les compagnies opérant tant sur les lignes nationales qu’internationales.
Le syndicat réclame également la mise en place de conventions collectives, la révision des salaires et l’inclusion des employés contractuels dans le régime de retraite.
#kenya#aéroport#grève
🇩🇪 D’importantes grèves des employés des transports publics se déroulent actuellement dans toute l’Allemagne. Les mouvements sociaux touchent tous les Länder à l’exception de la Basse-Saxe, où les parties au conflit salarial sont convenues de suspendre toute action de grève jusqu’à fin mars.
#allemagne#transports#grève
https://t.me/kamissokosekou3
🎓 Éducation : Fin de débrayage à l'IUG, les enseignants suspendent leur mouvement de grève
Vers une normalisation des cours à l'Institut Universitaire de Gestion (IUG). Les comités syndicaux du SNEC et du SNESUP ont officiellement annoncé la levée de leur mot d'ordre de protestation, marquant une trêve attendue dans le bras de fer qui les opposait aux autorités. Cette décision de suspendre les arrêts de travail ouvre la voie à un retour immédiat des étudiants dans les amphithéâtres, après une période d'incertitude qui pesait sur le calendrier académique. Si les revendications restent sur la table, ce geste des enseignants est perçu comme une volonté de privilégier le dialogue et de sauver l'année universitaire en cours, au grand soulagement des parents et des apprenants.
Le retour en classe est-il selon vous le signe d'un accord durable ou d'une simple pause ? 🇲🇱📚 Que proposez-vous pour éviter que les grèves ne paralysent nos instituts à l'avenir ?
#Mali#Éducation#IUG#SNESUP#SNEC#Grève#Université#Maliactu
SYNABEF : C'est officiel !
Un preavis de #grève relatif de #15_points sur table par le SYNABEF.
Il s'agit de les régler ou d'observer une #grève de #soixante_douze (72) heures #reconductible à #cent_vingt (120) heures sur toute l'étendue du territoire national.
Cette grève débutera le #17_avril_2025 à 00 h 00 et #durera jusqu’au #26_avril_2025 à minuit.