喔耶!
在過去的五年多時間裏,數百名貢獻者共同努力,為您帶來了WP-CLI v1.0.0,我今天很自豪地宣佈。
這個版本代表了很少有開源項目能夠達到的成熟水平。它也標誌着一個過渡時刻。WP-CLI 項目將把重心轉向WP-CLI軟件包生態系統,在那裏它將通過構建和鼓勵新功能作為獨立軟件包來推動創新。我們希望這種方法將促進更快的迭代和更多的創造力,並更可持續地分擔維護負擔。隨着這些社區軟件包的成功,我們將把它們的經驗帶回WP-CLI,同時修復錯誤和進行小的增強。
現在問題積壓已經清零,我個人期待着為我的自己的WP-CLI創新工作室runcommand做更多的創意。
本週去費城嗎?我將出席Post Status Publish和WCUS(儘管只到週五下午)。打個招呼吧 – 我在Twitter上是@danielbachhuber。
接下來,讓我們繼續…
介紹WP_CLI::runcommand()
WP_CLI::runcommand()(文檔)是從WP-CLI命令中運行WP-CLI命令的新方法。就好像WP_CLI::run_command()和WP_CLI::launch_self()成長起來、結婚並生下了完美的孩子。
使用WP_CLI::runcommand(),您可以:
- 啓動新的子進程(默認),或重用現有進程。
- 可選擇在錯誤時防止進程退出。
- 返回由命令生成的標準輸出(STDOUT),或所有命令執行細節(STDOUT、STDERR、return_code)作為對象。
- 可選擇將捕獲的STDOUT解析為JSON。
相關的拉取請求包括:#3605,#3619,#3621。
重大變更:部分批量操作失敗時使用返回碼1
某些命令支持對多個資源執行相同的操作(例如,使用wp plugin update akismet hello更新兩個或更多插件)。以前,如果其中一個操作失敗(例如,plugin更新未能下載),WP-CLI將顯示警告,繼續執行,並以返回碼0退出。從v1.0.0開始,當一個或多個操作失敗時,WP-CLI將使用返回碼1。
更多背景和原因,請參見此問題。
受影響的命令包括:
wp media (regenerate|import)wp menu deletewp menu item deletewp plugin (install|activate|update|toggle|deactivate|uninstall|delete)wp super-admin addwp theme (install|update)wp term deletewp widget (delete|deactivate|reset)
在您的自定義WP-CLI命令中使用WP_CLIUtilsreport_batch_operation_results()(文檔)更容易支持這種行為。
相關的拉取請求包括:#3584,#3583,#3582,#3585,#3586,#3588。
1.0.0中的其他一切
新命令:
wp package update– 更新所有已安裝的WP-CLI軟件包到它們的最新版本。wp scaffold theme-tests– 為主題創建PHPUnit測試腳手架。
命令改進:
wp cache type:- 支持WP LCache作為緩存類型[#3504]。
wp cli aliases:- 為更容易訪問添加
alias子命令[#3512]。
- 為更容易訪問添加
wp cli update:- 在更新時驗證發行哈希值[#3515]。
- 在以根用户身份運行時不再需要
--allow--root標誌[#3576]。
wp core config:- 確保WordPress編碼標準應用於生成的wp-config[#3496]。
wp core (install|multisite-install)- 默認使用隨機生成的密碼
--admin_password=<password>,現在是可選的[#3535,#3573]。
- 默認使用隨機生成的密碼
wp core language (install|update):- 緩存語言包下載[#3595]。
wp core update:- 在
CoreUpgrader類中使用全局命名空間的WP_Error[#3593]。
- 在
wp core update-db:- 為更新過程設置
WP_INSTALLING常量[#3503]。
- 為更新過程設置
wp package install:- 在包composer.json中使用提供的版本,而不是“dev-master”[#3519]。
- 向包管理器的
composer.json添加WP-CLI版本,以優雅地處理WP-CLI版本約束[#3603]。
wp package list:- 指示有可用更新的包[#3611,#3612]。
wp post delete:- 在成功消息中正確指示revisions立即刪除[#3524]。
wp scaffold plugin:- 在
.gitignore和.distignore中忽略分發歸檔文件[#3520]。 - 在
.distignore中忽略circle.yml,.gitlab-ci.yml和behat.yml[#3599]。
- 在
wp scaffold plugin-tests:- 在
install-wp-tests.sh中檢出數據目錄,以防止在WP 4.7中出現提示[#3571]。
- 在
框架增強:
- 將基於Composer的依賴項更新為最新版本[#3498,#3525]。
- 引入
--prompt=<assoc>以提示特定的關聯參數,使用户避免在bash歷史中暴露安全數據[#3531]。 - 添加對Cygwin附帶的PHP版本的支持[#3591]。
此版本的貢獻者(拉取請求、文檔和軟件包作者):abea、anttiviljami、cobyan、danielbachhuber、diggy、ernilambar、franz-josef-kaiser、greatislander、itspriddle、miya0001、mmcev106、mopquill、ocean90、pj-dave、pkarjala、richardbuff、sommarnatt、szepeviktor、torounit
您可以在Github上查看已解決問題的完整列表。





發表回覆