WP-CLI Hack Day Results

The first WP-CLIWP-CLI WP-CLI is the Command Line Interface for WordPress, used to do administrative and development tasks in a programmatic way. The project page is http://wp-cli.org/ https://make.wordpress.org/cli/ Hack Day is over now and it was a great success! It created an entirely new level of interactivity to the process.

I’d like to say “Thanks!” to everyone that participated! ❤️ It was awesome to help people get set up and then see the pull requests rolling in!

Here’s a quick rundown of what we were able to achieve, and the problems we faced.

We had 12 pull requests that were merged during the event:

  1. wp-cli/scaffold-command – Add --woocommerce flag to scaffold _s command
  2. wp-cli/handbook – Remove dead link
  3. wp-cli/handbook – Fix typo
  4. wp-cli/handbookFix typo in code-review.md
  5. wp-cli/wp-config-transformer – Remove colloquialism
  6. wp-cli/language-command – Add is-installed command to check if a given language is installed
  7. wp-cli/handbookUse example.comas placeholder
  8. wp-cli/core-command – Sanitize database at the end of install to prevent duplicate data
  9. wp-cli/core-command – Fix mustache template file path
  10. wp-cli/extension-command – Fix mustache files paths
  11. wp-cli/scaffold-command – Exclude string from escape warning
  12. wp-cli/wp-cli – Trigger new 'cli_init' hook during WordPress 'plugins_loaded' action

In addition to that, we had another 13 pull requests that were submitted during the event but could not yet be merged:

  1. wp-cli/extension-command – Search: Add plugin or theme’s URL on
  2. wp-cli/wp-cli – Add template for core-command to phar
  3. wp-cli/wp-cli – Add templates for extension-command to phar
  4. wp-cli/scaffold-command – Change to .phpcs.xml.dist and update rules
  5. wp-cli/db-command – Pass --column-statistics=0 to mysqldump command
  6. wp-cli/db-command – Add db size size formats
  7. wp-cli/entity-command – Detect post_content if STDIN
  8. wp-cli/entity-command – Delete alert in case of custom post type
  9. wp-cli/config-command – Add shuffle-salts command
  10. wp-cli/wp-cli-tests – Move PHPUnit tests for behat-tags.php over
  11. wp-cli/scaffold-package-command – Update circle.yml to use its v2 API
  12. wp-cli/dist-archive-command – Update circle.yml to use its v2 API
  13. wp-cli/handbook – Add documentation on how to troubleshoot

The main reason why most of these were not merged during the event was that we had trouble with our automated tests. One problem was that many tests that depended on the WordPress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ infrastructure to download CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. files, plugins or themes had frequent timeouts. This seems to be caused by a recent move of the entire infrastructure, which made access to the content over CDN very spotty. Another problem was that Travis CI was acting up and was often stuck in “pending” state for prolonged time periods.

During the last two hours of the event, we did a video chat over Zoom with all participants that wanted to join. We peaked at 13 participants to that video chat. It allowed for people to make a more personal connection, which added another dimension to the act of contributing.

There was an official hashtag for the event: #hackwpcli. See all mentions of the hashtag #hackwpcli on Twitter. However, I initially messed up the hashtag and pointed people to the wrong one, so some tweets have been tagged with #hackthecli instead. 🤦‍♂️

We had an ambitious goal of merging 20 pull requests during the event. While we were not able to achieve that number of merged pull requests, I’d consider the event a complete success nevertheless, considering the amount of pull requests that were just waiting to get through the blocking tests to get merged.

The event was also an experiment, to see whether a more direct, interactive form of contribution would attract more contributors. I think it did succeed in doing so, and I think it was a positive experience for the participants.

👉 I would love for people to provide feedback about the event in the comments below. 👈

I’d like to evaluate how well this type of contribution event was received and this will then shape a possible next iteration, where we’ll hopefully get even Travis & Co. to collaborate.