【问题标题】:Stop support of a NuGet package停止支持 NuGet 包
【发布时间】:2015-05-27 03:39:11
【问题描述】:

如何在 nuget.org 存储库中优雅地停止对 NuGet 包的支持?实际上,我将包移动到另一个 NuGet 频道(例如,将 https://www.nuget.org/packages/my_old_package/ 移动到 https://www.nuget.org/packages/my_new_package/)。并希望通知现有订阅者他们应该切换。

目前,我考虑以下解决方案:

  1. 发布最后一个版本,描述如“这个包不再是 支持的。切换到其他包..."
  2. 只需删除包 - 不确定它将如何影响客户。

您可以推荐什么方法?

【问题讨论】:

    标签: nuget nuget-package


    【解决方案1】:

    你可以unlist the old NuGet package,这样在搜索包的时候就找不到了。取消列出是当您使用 NuGet.exe 从命令行或从 nuget.org 上的库中删除包时发生的情况。

    由于 NuGet 包未列出,现有用户仍可以使用该包。由于 NuGet 包仍然存在,因此恢复包仍然有效。

    通知现有用户不支持 NuGet 包不是 NuGet 的功能。如果你需要,你必须自己实现。例如,您可以将 readme.txt 添加到最新的 NuGet 包,通知用户此包现已弃用,他们应该使用不同的 NuGet 包。安装包时,Visual Studio 将自动打开 readme.txt。这里唯一的问题是这种方法与取消列出 NuGet 包不兼容。带有 readme.txt 的 NuGet 包仍需要在 nuget.org 上列出。

    另一种可能可行也可能不可行的方法是让您的旧 NuGet 包简单地安装其他 NuGet 包。所以旧的 NuGet 包本身没有内容,只是依赖于其他 NuGet 包。

    在这些方法中,我想我只是不列出旧 NuGet 包的所有版本。您还可以通过直接在网站上编辑元数据来更新 nuget.org 上的包描述,以指示旧的 NuGet 包已被弃用。

    【讨论】:

    • 感谢您的全面解答!
    猜你喜欢
    • 2020-06-08
    • 1970-01-01
    • 1970-01-01
    • 2013-05-07
    • 2012-03-25
    • 2017-01-17
    • 1970-01-01
    • 2019-06-30
    • 2013-09-17
    相关资源
    最近更新 更多