Фрагмент Nuspec для установки последней версии зависимостей

Вступление

В соответствии с этой документацией можно указать зависимости, включая версии для каждого пакета, следующим образом:

<dependencies>
    <dependency id="Chocolatey" version="0.9.8.20" />
</dependencies>

Вопрос

Какой фрагмент Nuspec необходимо применить для установки последней версии зависимостей?

3 ответа

Решение

Вы должны быть в состоянии оставить версию пустой, что будет тянуть последнюю версию.

Это задокументировано на сайте nuget здесь:

http://docs.nuget.org/docs/reference/versioning

ПРИМЕЧАНИЕ. Этот подход действителен только для версий NuGet версии 2.7.2 и более ранних. Если вы используете более новую версию NuGet, используйте подходы, описанные в других ответах на этот вопрос.

Надеюсь, это поможет!

Gary

К сожалению, вы ничего не можете сделать в самом файле.nuspec. Ваши варианты:

  • Используйте NuGet v2.7.2 и более ранние (ответ Гэри)
  • использование -DependencyVersion Highest с вызовами NuGet.exe
  • Добавьте параметр конфигурации версии зависимости в файл NuGet.config (не файл nuspec, как предложил Крис)

    <config>
    <add key="dependencyversion" value="Highest" />
    </config>
    

Ответ, предоставленный Гэри, был верным до выхода версии 2.8. Начиная с версии 2.8, NuGet выберет самую низкую из доступных версий. Эта страница была обновлена, чтобы отразить изменение.

В NuGet 2.8+ теперь вы можете указать атрибут DependencyVersion в вашем файле nuspec, чтобы получить последнюю версию. Вот так:

<config>
    <add key="dependencyversion" value="Highest" />
</config>

Вот страница с примечаниями к выпуску версии 2.8, в которой более подробно.

Другие вопросы по тегам