黑人的命也是命

Grunt 1.0.0 rc1 发布

Grunt 团队很高兴地宣布 1.0.0 的第一个候选版本发布。

此版本由 @shama@vladikoff@jkaussieskater 完成。并得到了 jQuery 基金会的支持,特别是 @dmethvin@aulvi

还要感谢 @XhmikosR@paladox@FredyC@sindresorhus@mrjoelkemp 等人的贡献。

此版本专注于修复关键问题,并改进了对 Windows、OSX 和 Linux 上 Node.js v0.10、v0.12、v4.0、v5.0 和 io.js 的支持。我们请求您测试 rc1报告您遇到的任何问题

npm install [email protected] --save-dev

请注意,Grunt 1.0.0 将不再支持 Node.js v0.8。

对等依赖

如果您的 Grunt 插件在 package.jsonpeerDependencies 部分包含 grunt,我们建议使用 "grunt": ">=0.4.0" 进行标记。否则,当 [email protected] 发布时,npm@2 用户在尝试安装您的插件时会收到硬错误,而 npm@3 用户会收到警告。

请注意,从 npm@3 开始,不再为用户安装对等依赖项。Grunt 插件的用户应该在安装任何 Grunt 插件的同时 npm install grunt --save-dev

我们请求您向您喜欢的插件发送拉取请求,并要求他们更新其 package.jsonpeerDependencies 部分。

征求意见

我们创建了一个新的仓库,以鼓励有兴趣参与 Grunt 未来发展的社区成员提交 RFC。

提交 RFC 将允许您正式提议对 Grunt 进行重大更改,并征求核心团队和社区的反馈。

积极的提案将有助于描绘 Grunt 的未来路线图,并希望加快社区对未来 Grunt 版本的贡献。

npm 脚本

我们现在将 grunt-cli 作为 grunt 的一部分安装。许多用户不希望执行 npm install grunt-cli -g 的额外步骤。为了更好地符合 Node.js 的习惯用法,您现在可以 npm install grunt --save-dev,然后在您的 npm 脚本中包含 Grunt

{
  "scripts": {
    "grunt": "grunt"
  }
}

您的用户现在只需 npm installnpm run grunt 即可运行您的 Gruntfile.js

npm >= 2.0.0 的用户还可以使用以下命令传递任务和选项:npm run grunt -- task --option=foo,这等效于 grunt task --option=foo

如果您希望在您的计算机上使用 grunt 命令,请继续 npm install grunt-cli -g 并像以前一样使用。

API 更改

请注意,某些 API 已更改,需要进行主要版本更新

  • coffee-script 已升级到 ~1.10.0,这在将该语言与插件和 Gruntfiles 一起使用时可能会导致重大更改。
  • nopt 已升级到 ~3.0.6,修复了许多问题,包括传递多个参数和将数字作为选项处理。请注意,以前 --foo bar 用于将值 'bar' 传递给选项 foo。现在,它会将选项 foo 设置为 true 并运行任务 bar
  • glob 已升级到 ~6.0.4minimatch 已升级到 ~3.0.0。现在,默认情况下,grunt.file.expandMapping() 会对结果进行排序。如果您不希望对结果进行排序,请传递 nosort: true 选项。
  • lodash 已升级到 ~4.3.0。发生了许多变化。其中一些直接影响 Grunt 的是 grunt.util._.template() 返回一个编译函数,而 grunt.util._.flatten 不再进行深度扁平化。grunt.util._ 已弃用,我们强烈建议您 npm install lodashvar _ = require('lodash') 来使用 lodash。有关更改的完整列表,请参阅 lodash 更改日志:https://github.com/lodash/lodash/wiki/Changelog
  • iconv-lite 已升级到 ~0.4.13,默认情况下会去除 BOM。
  • js-yaml 已升级到 ~3.5.2,可能会影响 grunt.file.readYAML。我们鼓励您 npm install js-yaml 并在将来弃用的情况下直接使用 var YAML = require('js-yaml')
  • 可以将文件 mode 选项传递给 grunt.file.write()
  • Done, without errors. 已更改为 Done.,以避免错误地因单词 errors 而失败。

我们鼓励您试用此版本。

我们也在寻找所有 Grunt 仓库 的贡献者,并愿意指导您获得更多开源经验。


评论由Disqus提供支持