Привет!
Я видел темы, что есть серьезные проблемы с доставкой библиотека, написанных на Nemerle через пакетный менеджер.
Там как всегда фигурировал SRE, но суть я так и не уловил. Какие-то проблемы с версией компилятора или вроде того.
Но на сколько я понимаю, это все имеет значение только если нужно распространять макросы.
А моя задача чуть проще, надо поднять локальную репу пакетов, запушить туда пакеты, собранные компилятором Nemerle и всё.
Какие подводные камни?
Вот у нас есть Nemerle в nuget:
https://www.nuget.org/packages/Nemerle/
https://www.nuget.org/packages/Nemerle.Compiler/
Я не очень понимаю назначение этих пакетов.
Я хочу удалить окончательно удалить из репы папку с зависимостями в бинарном виде.
Но в этой папке, в числе прочего валяется Nemerle с его таргетами.
Мы собираем TFS'ом. Есть у кого подобный опыт?
Я просто хочу завязать сборку на какие-то пакеты и забыть вообще про обновление бинарей на сервере сборке (простите, вот такой колхоз).
Здравствуйте, STDray, Вы писали:
STD>Привет!
STD>
STD>Я видел темы, что есть серьезные проблемы с доставкой библиотека, написанных на Nemerle через пакетный менеджер.
STD>Там как всегда фигурировал SRE, но суть я так и не уловил. Какие-то проблемы с версией компилятора или вроде того.
STD>Но на сколько я понимаю, это все имеет значение только если нужно распространять макросы.
STD>А моя задача чуть проще, надо поднять локальную репу пакетов, запушить туда пакеты, собранные компилятором Nemerle и всё.
STD>Какие подводные камни?
Тут дело не в макросах, а в том что с каким .NET-ом собиралась программа, это будет минимальная версия фреймворка для запуска программы.
Проще говоря нельзя как в C# собрать программу для .NET 3.5 из компилятора от .NET 4.0.
STD>
STD>Вот у нас есть Nemerle в nuget:
STD>https://www.nuget.org/packages/Nemerle/
STD>https://www.nuget.org/packages/Nemerle.Compiler/
STD>Я не очень понимаю назначение этих пакетов.
STD>Я хочу удалить окончательно удалить из репы папку с зависимостями в бинарном виде.
STD>Но в этой папке, в числе прочего валяется Nemerle с его таргетами.
В чём проблема зависимости нугетом ?
Бинарник ведь в репозиторий класть не нужно.
STD>Мы собираем TFS'ом. Есть у кого подобный опыт?
STD>Я просто хочу завязать сборку на какие-то пакеты и забыть вообще про обновление бинарей на сервере сборке (простите, вот такой колхоз).
Мы тут про компилятор говорим или про выхлоп ?
Компилятор то можно просто взять из
http://nemerle.org/Downloads зипом , распаковать и использовать.
Может просто это в виде нугета нужно ?
Здравствуйте, STDray, Вы писали:
STD>Я видел темы, что есть серьезные проблемы с доставкой библиотека, написанных на Nemerle через пакетный менеджер.
Есть такая тема, что nuget вообще в пень не упёрся и является не очень умной копией линуксовых пакетных менеджеров.
Главная беда этих "автопомощников" в том, что они сами за тебя решают, что, где и какой версии надо использовать. И если ты ценишь нервы своих разрабов, лучше держаться от этого дерьма подальше. Думаю, излишне напоминать, сколько эмоций вызывают "ещё вчера компилявшийся билд", который сегодня услужливый менеджер дополнил свежей версией superlibrary.dll;
Ну а в свете назойливого любопытства MS, не удивлюсь, если ещё и студия потихоньку сливает "типа телеметрию" — такую дрянь я в И-нет вообще не выпускаю! Ну и как тут работать с нугетом?? Честно, даже проблемы не вижу — 20 лет качаю DLL-ки, перекомпиляю проект — всё работает. И тут появляется Наделла и думает, что у всех бесконечный, суперскоростной тырнет и всё обязано тянуться из него — с фигли ли??
Просто сам Немерле надо потихоньку запилить для независимой (от компиляющего .NETа) генерации кода (Cecil).
Здравствуйте, Kolesiki, Вы писали:
K>Есть такая тема, что nuget вообще в пень не упёрся и является не очень умной копией линуксовых пакетных менеджеров.
K>Главная беда этих "автопомощников" в том, что они сами за тебя решают, что, где и какой версии надо использовать. И если ты ценишь нервы своих разрабов, лучше держаться от этого дерьма подальше. Думаю, излишне напоминать, сколько эмоций вызывают "ещё вчера компилявшийся билд", который сегодня услужливый менеджер дополнил свежей версией superlibrary.dll;
K>Ну а в свете назойливого любопытства MS, не удивлюсь, если ещё и студия потихоньку сливает "типа телеметрию" — такую дрянь я в И-нет вообще не выпускаю! Ну и как тут работать с нугетом?? Честно, даже проблемы не вижу — 20 лет качаю DLL-ки, перекомпиляю проект — всё работает. И тут появляется Наделла и думает, что у всех бесконечный, суперскоростной тырнет и всё обязано тянуться из него — с фигли ли??
С nuget есть ряд проблем. И внутри проекта его применять крайне сложно. Но как средство публикации библиотек и фреймворков он незаменим. По сему поддерживать его надо и надо сделать nuget-версию для Nemerle и Nitra.
nuget дает возможность программисту "поставить" себе в IDE продукт в одно движение. Короткая строка в консоли или пара кликов в GUI и можно пользоваться продуктом. Тоже самое касается и плагинов к IDE. Конечно же установка его из галереи VS предпочтительно.
По сему в будущем Nitra и Nemerle должны распространяться
и через nuget.
Однако это не запрещает распространять их и через банальную скачку бинарников и/или инслаллятора с сайта. Это мы тоже будем делать.