Go 1.11 将支持的 Go module:解决包依赖管理问题

栏目: IT资讯 · 发布时间: 6年前

内容简介:Go 1.11 预计将于2018年8月发布,最大的变化莫过于将为称作"modules"的新概念添加实验性支持。那么这对 Go 开发者意味着什么? Go 语言从2007年诞生至今,已经发展和演化十多年了。这十多年来,Go 取得了巨大的成...

Go 1.11 预计将于2018年8月发布,最大的变化莫过于将为称作"modules"的新概念添加实验性支持。那么这对 Go 开发者意味着什么?

Go 语言从2007年诞生至今,已经发展和演化十多年了。这十多年来,Go 取得了巨大的成就,先后于2009年和2016年当选 TIOBE 年度最佳编程语言,并在全世界范围内拥有数量庞大的拥趸。当然 Go 语言也不是完美的 —— 这些年来 Go 在“包依赖管理”和“缺少泛型”两个方面就饱受诟病,它们也是 Go 开发者最希望 Go 核心开发团队重点完善的两个方面。

今年 2018 年初,Go 核心 Team 的技术领导人,也是 Go Team 最早期成员之一的 Russ Cox 在个人博客上连续发表了七篇文章 ,系统阐述了 Go team 解决“包依赖管理”的技术方案:vgo。vgo 的主要思路包括:Semantic Import VersioningMinimal Version Selection 、引入 Go module 等。这七篇文章的发布引发了 Go 社区激烈的争论,尤其是MVS(最小版本选择)与目前主流的依赖版本选择方法的相悖让很多传统 Go 包管理 工具 的维护者“不满”,尤其是“准官方工具”:dep。vgo方案的提出也意味着dep项目的生命周期即将进入尾声。

5月份,Russ Cox 的 Proposal “cmd/go: add package version support to Go toolchain” 被 accepted,上周 Russ Cox 将 vgo 的代码 merge 到 Go 主干 ,并将这套机制正式命名为“go modules”。由于 vgo 项目本身就是一个实验原型,merge 到主干后, vgo 这个术语以及 vgo 项目的使命也就就此结束了 。后续 Go modules 机制将直接在 Go 主干上继续演化。

Go modules 刚刚 merge 到 Go trunk 中,问题还会有很多,不过这是 Go team 在解决包依赖管理方面的一次勇敢尝试。无论如何,对 Go 语言来说都是一个好事。merge 后很多 gopher 也提出了诸多问题,可以在这里查看。如果你也遇到了 go modules 方面的问题,可以在 Go 的 GitHub 仓库中提 issue,帮助 Go team 尽快更好地完善 Go 1.11 的 Go modules 机制。

部分内容来自:https://www.colabug.com


【声明】文章转载自:开源中国社区 [http://www.oschina.net]


以上所述就是小编给大家介绍的《Go 1.11 将支持的 Go module:解决包依赖管理问题》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

智能革命

智能革命

李彦宏 等 / 中信出版集团 / 2017-5-1 / 68.00元

人类历史上的历次技术革命,都带来了人类感知和认知能力的不断提升,从而使人类知道更多,做到更多,体验更多。以此为标准,李彦宏在本书中将人工智能定义为堪比任何一次技术革命的伟大变革,并且明确提出,在技术与人的关系上,智能革命不同于前几次技术革命,不是人去适应机器,而是机器主动来学习和适应人类,并同人类一起学习和创新这个世界。“人工智能”正式写入2017年政府工作报告,折射出未来人工智能产业在我国经济发......一起来看看 《智能革命》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具