“
发布日快乐!
经过 325 个合并的拉取请求,我们很高兴地为您带来 WP-CLI v1.2.0,其中包含了许多增强功能、错误修复以及引导重构。
但首先…
我们有一个新的标志!
即将出现在您附近的笔记本电脑上:
感谢 Chris Wallace 和 Lift UX 团队的工作,以及所有对我的反馈做出回应的人。
命令抽象到不同的包
我们将项目分解了!
主要的 wp-cli/wp-cli
仓库现在只包含框架本身。所有捆绑的命令都可以在单独的仓库中找到。例如,wp cache *
系列命令现在位于 github.com/wp-cli/cache-command 。
这种抽象提供了一些好处:
- 在开发时,只对您正在工作的特定组件运行测试,使反馈循环更短。
- 可以独立控制和设置各个命令包,为更好的协作提供机会。
- 可以发布各个命令的热修复和中间版本,然后通过内置的包管理器进行更新。
- 现在测试运行非常快。
- 当您提交拉取请求时,无需等待两个小时来运行测试。
对于使用 Composer 的 WP-CLI 用户,您可以像通常贡献 Composer 依赖关系一样为包做出改进。使用 composer install --prefer-source
来安装 Git 克隆的依赖项。
对于通过 Phar 可下载的 WP-CLI 用户,您可以通过安装包 (将覆盖捆绑版本) 来贡献改进。例如,对于缓存命令,可以使用以下命令:
$ wp package install git@github.com:wp-cli/cache-command.git
$ cd $(wp package path wp-cli/cache-command)
查看 #3728 以了解原始历史。要更好地了解底层基础架构,请阅读 Alain 关于新的引导机制、管理命令依赖和依赖关系解决机制的帖子。
接下来:贡献工作流程
包抽象和引导过程的投资是我们改进贡献工作流程的一部分。
最终,我们希望为项目的贡献提供:
- 轻松。 虽然了解 WP-CLI 代码库需要一定的技术知识,但那些能够为代码库做出贡献的人应该能够尽量少地增加负担。
- 愉快。 改进 WP-CLI 应该是有趣的,有回报的。对于贡献者来说,这意味着定义明确的入口点、足够的工作流程文档、清晰表达的愿景、路线图和决策过程等等。
对于新贡献者,我们现在有一个 「Good First Issues」 页面:
对于提交者,我们现在有一个自定义仪表板的开端:
贡献工作流程的工作是一个持续进行的过程。我们还没有深入挖掘。
可以期待在构成贡献者体验的一些关键领域看到很多工作:
- 明确决策过程,将想法转化为新命令。我们需要找出如何可持续地将想法转化为维护的包。
- 通过文档、工具和流程改进新提交者的入职流程。阅读提交者信仰以更好地了解我们的期望。
在我们的每周办公时间或 WordCamp Europe 期间加入对话,时间为 2017 年 4 月 26 日星期三 GMT+8 上午 12:00 。
新命令
想要检查您的 wp-config.php
是否正常?使用 wp config get
列出 wp-config.php
中定义的常量和全局变量 [#9]
$ wp config get --fields=key,value
+--------------------+-----------------+
| key | value |
+--------------------+-----------------+
| table_prefix | wp_ |
不想记住 wp-config.php
在文件系统中的位置?使用 wp config path
来获取 wp-config.php
的路径 [#7]
# 在您的编辑器中编辑 wp-config.php 。
$ vim $(wp config path)
想知道您的数据库有多重?运行 wp db size
来获取数据库和其表的大小 [#16]
$ wp db size --tables
+-----------------------+--------+
| Name | Size |
+-----------------------+--------+
| wp_users | 64 KB |
| wp_usermeta | 48 KB |
| wp_posts | 4 MB |
| wp_comments | 2 MB |
| wp_links | 32 KB |
| wp_options | 1 MB |
| wp_postmeta | 8 MB |
| wp_terms | 416 KB |
| wp_term_taxonomy | 336 KB |
| wp_term_relationships | 736 KB |
| wp_termmeta | 48 KB |
| wp_commentmeta | 2 MB |
+-----------------------+--------+
v1.2.0 中的其他一切
命令改进
wp core install
:- 为管理员用户生成 18 字符的密码 [#4002] 。
wp cron event run
:- 仅在使用
--due-now
传递$args
时运行指定的事件 [#11] 。
- 仅在使用
wp db *
:- 在调用
MySQL
可执行文件时,使用/usr/bin/env mysql
而不是mysql
[#14] 。
- 在调用
wp db (drop|reset)
:- 在
wp db drop
和wp db reset
命令的确认提示中显示数据库名称 [#12] 。
- 在
wp db export
:- 在导出数据库时添加
--exclude_tables=<tables>
选项 [#20] 。
- 在导出数据库时添加
wp db import
:- 通过禁用自动提交和 (唯一和外键) 键检查来加速导入过程 [#3829] 。
wp language core install
:- 即使语言已安装,也会处理
--activate
标志 [#3851] 。
- 即使语言已安装,也会处理
wp language core (install|uninstall)
- 允许一次安装或卸载多种语言 [#4, #5] 。
wp media import
:- 以多种方式改进错误处理 [#3755] 。
wp media regenerate
:- 在重新生成时删除现有的 PDF 预览图像 [#3824] 。
- 修复当图像尺寸小于注册的图像尺寸时的媒体重新生成 [#5] 。
- 添加
--image_size=<size>
以重新生成特定图像大小 [#9] 。
wp menu location assign
:- 增加了详细程度和错误报告 [#3852] 。
wp package *
:- 修复了在 Windows 下从
get_composer_json_path()
返回的路径 [#11] 。
- 修复了在 Windows 下从
wp plugin install
:- 在从 GitHub 原始 ZIP URL 安装时禁用重命名行为 [#3823] 。
wp plugin update
:- 引入了
--minor
和--patch
标志,以限制基于语义版本的更新 [#13] 。 - 在
插件
更新失败时显示正确的错误 [#3803] 。
- 引入了
wp (plugin|theme) update
:- 添加
--exclude=<name>
参数以排除更新插件或主题 [#16] 。
- 添加
wp post term *
:- 引入了
--by=id
参数以显式处理术语作为 ID[#3896] 。 - 基于术语计数来复数化消息 [#3898] 。
- 引入了
wp rewrite *
:- 在使用
--skip-plugins
或--skip-themes
管理重写时,警告用户,因为重写可能会丢失 [#3917] 。
- 在使用
wp scaffold (child-theme|_s)
:- 包括基于 WordPress 编码标准的默认
.editorconfig
[#3902] 。
- 包括基于 WordPress 编码标准的默认
wp scaffold plugin-tests
- 对
.travis.yml
和circle.yml
进行了多项改进 [#3919] 。 - 在
.travis.yml
中缓存 Composer [#3816] 。 - 为 PHP
5.*
安装 PHPUnit4.8.*
,为其他版本安装 PHPUnit5.7.*
[#6] 。 - 在
circle.yml
中测试 PHP 7 版本 [#16] 。
- 对
wp server
:- 允许使用环境变量定义特定的 PHP 二进制文件 [#3868] 。
wp user create
:- 为新用户生成 24 位密码 [#7] 。
wp user import-csv
:- 在更新用户时禁用 core 的电子邮件通知 [#3904] 。
框架增强
- 现在 WP-CLI 可以与 Symfony 3.x 组件一起使用,而且无需破坏向后兼容性 [#4067] 。
- 新增 hooks:
before_add_command:<parent command>
允许您在添加命令之前检查运行时要求after_add_command:<parent command>
允许您在触发特定父命令之前依赖于父命令 [#4033] 。
- 自动命令依赖解析。如果子命令依赖于尚未注册的父命令,那么将延迟添加子命令,直到父命令可用 [#4094] 。
- 拼写建议。如果您输入命令时出现拼写错误,WP-CLI 现在足够智能,会建议您可能想要输入的内容,并建议这些更正的拼写。这有助于发现和解决错误。拼写建议适用于命令、参数和别名 [#4004,#4008,#4109] 。
- 默认情况下,帮助文档每行不超过 80 个字符。以前也有自动换行,但不一致,所以经常出现问题 [#4105] 。
- 多种测试框架改进:
- 在子目录路径中替换变量 [#4085] 。
- 安全地强制删除
RUN_DIR
,以确保 Behat 不会在清理时挂起 [#4112] 。 - 以跨平台兼容的方式终止所有启动的后台进程 [#4074] 。
- 仅在
WP_VERSION
不是 「latest」 或 「nightly」 时应用@require-wp
标签,以确保在这些上下文中运行完整的测试套件 [#4055] 。
本次发布的贡献者 (总共 43 位): 1naveengiri,aaemnnosttv,afragen,balbuf,behzod,carl-alberto,CodeProKid,danielbachhuber,davgothic,diablodale,diggy,dnmvisser,fjarrett,flaskboy,geekoun,gitlost,hason,JayWood,jeremyfrady,ka7,kcarwilemiller,lichtscheu,mbovel,MiteshShah,miya0001,Nikschavan,ntwb,petenelson,rahul3883,raquelmsmith,Rarst,ryanshoover,schlessera,Sidsector9,SosyalAlkolik,ssnepenthe,Steveorevo,tfrommen,tillkruss,timdream,trepmal,wp-make-coffee,zacksheppard
发表回复