從 0.4 升級到 1.0
本指南將協助您將專案和外掛程式從 Grunt 0.4.x 更新到 Grunt 1.0。
請注意,Grunt 1.0.0 不再支援 Node.js v0.8。
對於使用 Grunt 的專案
對等相依性
當您使用 Grunt 1.0 安裝專案時,您可能會收到 peerDependencies
錯誤。我們請您向您最喜愛的外掛程式發送 pull request,並請他們更新其 package.json 的 peerDependencies 區段。有關外掛程式更新的詳細資訊,請參閱下方。
對於外掛程式和外掛程式開發人員
對等相依性
如果您有一個 Grunt 外掛程式,其中包含 package.json 的 peerDependencies 區段中的 grunt,我們建議標記為 "grunt": ">=0.4.0"。否則,當 [email protected] 發佈時,npm@2 使用者在嘗試安裝您的外掛程式時會收到強制錯誤,而 npm@3 使用者會收到警告。
請注意,對等相依性不再安裝給 npm@3 的使用者。預期 Grunt 外掛程式的使用者會在安裝任何 Grunt 外掛程式時 npm 安裝 grunt --save-dev。
我們請您使用 "grunt": ">=0.4.0"
更新您的外掛程式,並在 npm 上發佈。
1.0.0 中的變更
- 防止非同步回呼多次呼叫。Pull #1464。
- 將著作權更新為 jQuery Foundation 並移除多餘的標頭。修正 #1478。
- 將 glob 更新為 7.0.x。修正 #1467。
- 移除重複的 BOM 剝離碼。Pull #1482。
- 更新為最新的 cli ~1.2.0
- 確保在安裝時建立 grunt bin。
Grunt 1.0 RC1 中的變更
請注意,某些 API 已變更,保證重大版本更新
coffee-script
已升級至~1.10.0
,這可能會在使用該語言搭配外掛程式和 Gruntfile 時造成重大變更。nopt
已升級至~3.0.6
,這已修正許多問題,包括傳遞多個參數和將數字視為選項。請注意,先前--foo bar
用於將值'bar'
傳遞給選項foo
。現在,它會將選項foo
設定為true
並執行任務bar
。glob
已升級至~6.0.4
,而minimatch
已升級至~3.0.0
。結果現在預設會以grunt.file.expandMapping()
排序。如果您不希望結果被排序,請傳遞nosort: true
選項。lodash
已升級至~4.3.0
。已發生許多變更。其中直接影響 Grunt 的變更包括grunt.util._.template()
會傳回編譯函式,而grunt.util._.flatten
不再深度扁平化。grunt.util._
已過時,我們強烈建議您npm install lodash
並var _ = require('lodash')
以使用lodash
。請參閱 lodash 變更日誌以取得變更的完整清單:https://github.com/lodash/lodash/wiki/Changelogiconv-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()。 已完成,沒有錯誤。
已變更為已完成。
以避免因為errors
這個字而錯誤失敗。
在文件中發現錯誤?提交問題。