Comments 13
Отлично. Озвучьте теперь, плз, результирующие размеры бинарников и требования по памяти.

Конкретно этот hello world весит 25Mb, требование по памяти при ab -ab -k -c 50 -n 50000 / 41268 7736 5360 (виртуальная, резидентная, разделяемая соответственно).
Проверял на rpi 3b+.

25 Мб наверное потому что собирали с dependency "vibe-d" version="~>0.8.4"?


Можно было бы подтянуть по-отдельности vibe:core и vibe:http, в итоге исходник весил бы около 3Мб после обработки через strip (3 Мб правда это не под ARM, а под x86-64, под ARM наверное даже меньше будет).


Чтобы народ не пугать, ведь в этих 25 Мб куча всяких ненужных вещей типа драйверы mongodb и т.д.

Да, можно сделать бинарник меньше. 25мб это с полным vibe и debug-информацией. Не меняя сборочного рецепта ./ddb make release=y выдаёт бинарник в 6.2мб, при использовании vibe-d:core и vibe-d:http размер можно уменьшить до 6мб, используя strip можно ещё парочку убрать.

Добавлять в репозитарий бинарные файлы — плохой тон


Спорное утверждение.

Спорное утверждение

Бесспорно дурной тон. Репозторий в данном контексте — удаленное хранилище, связанное с системой контроля версий, предназначенной прежде всего для контроля состояния исходных текстов и ресурсов преимущественно текстового формата, если иное не оговорено для конкретных текстовых файлов. Там не место всему тому, что является продуктом обработки исходных кодов -результатам препроцессинга, компиляции и прочему.

.gitignore и .gitattributes курим до просветления и понимания для чего предназначены VCS
А что предлагается делать со сторонними библиотеками, не подлежащими пересборке в рамках проекта?

Пусть проект будет сопровождаться, ну скажем лет 10.
Для D это больной момент — синтаксис, фобос, да и ABI еще «плывут»

Не понял связи плавания ABI и сторонних библиотек. Библиотеки не на D какими были, такими и остаются, библиотеки на D собираются с проектом как зависимости dub.

Бинарные файлы (точнее, файлы, получающиеся каким-либо компилированием любых исходников) добавляют неимоверное количество боли при работе с несколькими ветками. Это только один из всех возможных костылей.

Всегда удевляют неудачные названия языков программирования вроде C, D, Go.
Гуглить нужный вопрос по языку очень трудно ибо поисковик не всегда понимает контекст таких коротких слов.
Радует, что ldc стал нормально из коробки работать на arm. В прошлый раз я был вынужден использовать gdc, а он отстаёт по поддержке фич языка.
Only those users with full accounts are able to leave comments. Log in, please.