如何在nuget.org存储库中优雅地停止对NuGet包的支持?实际上我将包移到了另一个NuGet频道(例如移动https://www.nuget.org/packages/my_old_package/到https://www.nuget.org/packages/my_new_package/)。并希望通知现有订户他们应该切换。
目前,我考虑以下解决方案:
您可以推荐什么方法?
答案 0 :(得分:3)
您可以unlist the old NuGet package搜索包时找不到它。当您使用NuGet.exe从命令行或nuget.org上的库中删除软件包时,会发生Unlisting。
当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包已弃用。