Rustup 1.20.0版本:对配置文件的支持,更新和doc命令的改进

rustup工作组很高兴地宣布发布新版本1.20.0。 Rustup是用于安装Rust的推荐实用程序, Rust是一种编程语言,它使每个人都可以创建可靠而高效的软件。


如果您已经安装了rustup ,那么要升级到1.20.0版本,只需运行以下命令:


 rustup self update 

此外,定期更新工具箱后rustup自动更新rustup


 rustup update 

如果尚未安装rustup ,则可以从我们网站的相应页面进行安装


rustup 1.20.0的新功能


该版本的亮点是对配置文件的支持,能够获取具有所需所有组件的最新nightly版本的能力以及对rustup doc命令的改进。 您还可以查看更改列表,以了解此版本中包含的所有更改。


个人资料


rustup先前版本默认情况下与每个工具包一起安装了多个组件-它们是编译器( rustc ),程序包管理器( cargo ),标准库( rust-std )和本地文档( rust-docs )。 尽管这种方法很方便在本地PC上进行开发,但某些组件(例如rust-docs )却减慢了安装速度。 例如,组装服务器上通常不需要文档,或者由于文件数量太多,这减慢了Windows上的安装速度。


为了解决此问题, rustup 1.20.0引入了配置文件(“ profiles”)的概念。 他们对在安装新工具箱期间可以选择下载的组件进行分组。 当前可用的配置文件为minimaldefaultcomplete


  • 最小 -最小轮廓,包括几个组件,以实现最小的工作环境( rustcrust-stdcargo )。 如果不使用本地文档,则推荐用于Windows以及CI构建服务器。
  • rustc 默认配置文件,包括以前默认安装的所有组件-( rustcrust-stdcargorust-docs本地文档),以及rustfmtclippy 。 默认情况下,此配置文件将用于rustup ,建议将其用于一般用途。
  • complete-一个完整的配置文件,包括rustup可用的所有组件,包括miri和IDE集成工具( rlsrust-analysis )。

您可以使用rustup set profile命令rustup set profile 。 例如,您可以按以下方式选择要使用的最低配置文件:


 rustup set profile minimal 

您也可以在首次安装rustup时选择一个配置文件,或者通过选择“自定义安装”选项进行交互,或者以编程方式传递--profile=<name>标志。 配置文件只会影响新的可安装工具箱;稍后,您可以使用以下命令安装单个组件: rustup component add


安装最新的兼容nightly版本


尽管大多数组件都保证在1层平台上的稳定版本,但相同的保证不适用于夜间版本。 通常,像rustfmtclippyrls类的实用程序会在最后的nightly构建中消失。 如果您依赖这些实用程序,则此行为可能会使nightly更新nightly ,因为如果先前安装的组件不可用,则rustup阻止更新。


从rustup 1.20.0开始,如果以前安装的组件在最近的nightly构建中不可用,则rustup update将及时返回以查找包含所有必需组件的最新版本。 如果没有这样的版本,则必须等待或删除某些组件。


伴随这些更改,在--component rustup toolchain installrustup toolchain install--component / -c--target / -t标志出现了,从而允许您在安装工具箱期间添加组件和目标平台。 如果当前建筑不包含所请求的组件,则这些标志还将寻找最合适的nightly建筑。


rustup doc改进


rustup doc命令无需Internet连接即可在浏览器中打开本地安装的文档。 rustup 1.20.0扩展了此命令的功能,并允许您打开特定元素的API文档。 例如,要查看Iterator的文档Iterator可以使用以下命令:


 rustup doc std::iter::Iterator 

这适用于特征,结构和枚举,宏和模块,并且适用于stdalloccore软件包。 但是,请注意,只有在工具箱中有rust-docs组件时,此功能才有效。 随着时间的推移,我们将改善UX团队,如果您有想法,请告诉我们!


致谢


感谢所有从事rustup工作的成员!


  • 安迪·麦卡弗里
  • 阿尔特姆·鲍里索夫斯基(Artem Borisovskiy)
  • 本杰明·陈
  • 丹尼尔·西尔弗斯通(Daniel Silverstone)
  • 乔恩·琼杰塞特
  • 吕涛
  • 马特·坎特
  • 米切尔·海因斯
  • 尼克·卡梅隆(Nick Cameron)
  • 微微
  • 彼得罗·阿尔比尼

来自翻译


如果您对Rust语言有任何疑问,他们将可以在俄语电报聊天或对新手进行的类似聊天中为您提供帮助。


本文由andreevlexfunkillblandger共同翻译。

Source: https://habr.com/ru/post/zh-CN471614/


All Articles