Мы используем 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
✅Специальный выпуск № 3 за 2024 г продолжает обзор, рассматривающий актуальные вопросы разработки полностью твердотельных литиевых аккумуляторов с использованием композитного материала на основе Li7La3Zr2O12 (LLZ). Обсуждается, что за счет введения различных добавок можно снизить температуру и/или время спекания твердого электролита при сохранении значений литий-ионной проводимости порядка 10^{–4} См/см при комнатной температуре.
🖌️Eugenia Ilyina (https://orcid.org/0000-0003-1759-5234)
📘Composite solid electrolytes based on Li7La3Zr2O12 for all-solid-state lithium power sources
📌Year 2024, Volume 3, Number 3 (Special Issue) https://doi.org/10.15826/elmattech.2024.3.038
🏛️Institute of High-Temperature Electrochemistry UB RAS https://ihte.ru/?page_id=3106
текст статьи https://journals.urfu.ru/index.php/elmattech/article/view/7769/5582
#CompositeSolidElectrolyte#Conductivity
Новая работа регулярного выпуска👇
🟢 2022 🟢 V. 9 🟢 Issue 4 🟢 No. 20229415🟢 Letter
📜 Local structure and ionic transport in acceptor-doped layered perovskite BaLa2In2O7
👩🎓 Nataliia A. Tarasova (https://orcid.org/0000-0001-7800-0172)
🏛 Institute of High Temperature Electrochemistry UB RAS,
http://www.ihte.uran.ru
📚#layered_perovskite#ionic#conductivity#acceptor_doping#BaLa2In2O7
🔗https://doi.org/10.15826/chimtech.2022.9.4.15
https://journals.urfu.ru/index.php/chimtech/article/view/6272
Опубликована новая работа
🟠 2023 🟠 V. 10 🟠 Issue 4 🟠 Art. 202310409 🟠 Article 🟠
📜 Features of forming a low-temperature cubic Li7La3Zr2O12 film by tape casting
👩🎓👨🎓 E. Lyalin (http://orcid.org/0000-0002-0539-506X), L. Pershina (http://orcid.org/0000-0003-1759-5234), E. Il’ina, K. Druzhinin (http://orcid.org/0000-0002-8947-8208), S. Belyakov (https://orcid.org/0000-0001-9237-8307)
🏛 Institute of High Temperature Electrochemistry, UB
RAS, https://ihte.ru
🏛 Ural Federal University, https://urfu.ru/en
📚#Li7La3Zr2O12#LIB#lithium#conductivity#films#tapecasting#allSSB
🔗https://doi.org/10.15826/chimtech.2023.10.4.09
https://www.chimicatechnoacta.ru/index.php/chimtech/article/view/7161
Новая работа регулярного выпуска👇
🟢 2022 🟢 V. 9 🟢 Issue 4 🟢 No. 20229405🟢
📜 Phosphorus-doped protonic conductors based on BaLanInnO3n+1 (n = 1, 2): applying oxyanion doping strategy to the layered perovskite structure
👩🎓👨🎓 N. Tarasova (https://orcid.org/0000-0001-7800-0172), A. Galisheva (https://orcid.org/0000-0003-4346-5644)
🏛 Institute of High Temperature Electrochemistry, http://www.ihte.uran.ru
📚#layered#perovskite#oxyanion#doping#proton#conductivity#BaLaInO4#BaLa2In2O7
🔗https://doi.org/10.15826/chimtech.2022.9.4.05
https://journals.urfu.ru/index.php/chimtech/article/view/5979