NuGet 1.7 发行说明 | NuGet 2.0 发行说明
NuGet 1.8 于 2012 年 5 月 23 日发布。
已知安装问题
如果运行的是 VS 2010 SP1,则如果安装了较旧版本,则尝试升级 NuGet 时可能会遇到安装错误。
解决方法是只需卸载 NuGet,然后从 VS 扩展库安装它。 有关详细信息,请参阅 https://support.microsoft.com/kb/2581019 ,或 直接转到 VS 修补程序。
注意:如果 Visual Studio 不允许卸载扩展(“卸载”按钮已禁用),则可能需要使用“以管理员身份运行”重启 Visual Studio。
NuGet 1.8 与 Windows XP 不兼容,已发布修补程序
NuGet 1.8 发布后不久,我们了解到 1.8 中的加密更改破坏了 Windows XP 上的用户。
我们随后发布了一个紧急修复补丁来解决这个问题。 通过 Visual Studio 扩展库更新 NuGet,你将收到此修补程序。
Features
用于本地化资源的卫星包
NuGet 1.8 现在支持针对本地化资源创建单独的包,类似于 .NET Framework 的卫星程序集功能。 创建卫星包的方式与其他 NuGet 包相同,区别在于增加了一些专门的约定:
- 卫星包 ID 和文件名应包含一个后缀,该后缀须与 .NET Framework 使用的标准文化字符串之一相匹配。
- 在其 .nuspec文件中,卫星包应定义一个语言元素,该元素使用与 ID 中相同的区域性字符串。
- 卫星包应在其 .nuspec文件中定义与它的核心包的依赖关系,核心包的定义就是具有相同 ID 的包去掉语言后缀。 核心包需要在存储库中可用才能成功安装。
若要安装包含本地化资源的包,开发人员会从存储库中显式选择本地化包。 目前,NuGet 库不对卫星包进行任何类型的特殊处理。
               
              
            
由于卫星包列出了其核心包的依赖项,因此卫星包和核心包将被拉入 NuGet 包文件夹并安装。
               
              
            
此外,在安装卫星包时,NuGet 还识别区域性字符串命名约定,然后将本地化的资源程序集复制到核心包中的正确子文件夹中,以便让 .NET Framework 能够使用它。
               
              
            
现有的一个关于卫星包的 bug 是 NuGet 不会将本地化资源复制到 bin 网站项目的文件夹中。  下一版本的 NuGet 中将修复此问题。
有关演示如何创建和使用卫星包的完整示例,请参阅 https://github.com/NuGet/SatellitePackageSample。
包恢复同意
在 NuGet 1.8 中,我们奠定了支持包还原的重要约束的基础,以保护用户隐私。 此约束要求开发人员在构建使用包还原的项目和解决方案时,明确同意包还原需要联机从配置的包源中下载包。
可通过 2 种方法提供此同意。 第一个可在包管理器配置对话框中找到,如下所示。 此方法主要用于开发人员计算机。
               
              
            
第二种方法是将环境变量“EnableNuGetPackageRestore”设置为值“true”。 此方法适用于无人管理的机器,例如 CI 或构建服务器。
现在,如前所述,我们仅在 NuGet 1.8 中为此功能奠定了基础。 实际上,这意味着,虽然我们添加了所有逻辑来启用该功能,但它目前在此版本中并未强制实施。 但是,将在下一版本的 NuGet 中启用它,因此我们希望尽快了解它,以便你可以适当地配置环境,因此在开始强制实施许可约束时不会受到影响。
有关详细信息,请参阅有关此功能 的团队博客文章 。
nuget.exe 性能改进
通过修改 install 命令以并行下载和安装包,NuGet 1.8 为 nuget.exe 和扩展包还原带来了显著的性能改进。 高级测试显示,在 NuGet 1.8 中将 6 个包安装到项目中的性能提高了大约 35%。 将包数增加到 25 个表明性能提升约 60%。
漏洞修复
NuGet 1.8 包括相当多的 bug 修复,重点介绍包管理器控制台和包还原工作流,特别是因为它与包还原同意和 Windows 8 Express 集成相关。
有关修复于NuGet 1.8中的工作项的完整列表,请查看[NuGet Issue Tracker for this release](http://nuget.codeplex.com/workitem/list/advanced?keyword=&status=Closed&type=All&priority=All&release=NuGet%201.8&assignedTo=All&component=All&sortField=Votes&sortDirection=Descending&page=0)。