Go to file
Jonathan Desrosiers 336960897d Build/Test Tools: Introduce automated PHP compatibility checking.
This change introduces a new Composer script, `compat` that will scan the codebase for (detectable) potential PHP compatibility issues using the `PHP_CodeSniffer` and a custom ruleset based off of the `PHPCompayibilityWP` ruleset (`phpcompat.xml.dist`).

The command will be run as a separate job within each Travis build. While many compatibility issues and false positives have already been corrected in this commit and other Trac tickets, there are still some remaining. For that reason, the job is allowed to fail while the remainder of the potential compatibility issues are investigated and addressed. After those are resolved, the job should be set as required to pass to help prevent new compatibility issues from being introduced.

Props desrosj, jrf, all PHPCompatibilityWP and PHPCompatibility contributors.
Fixes #46152.

git-svn-id: https://develop.svn.wordpress.org/trunk@46290 602fd350-edb4-49c9-b593-d223f7449a82
2019-09-25 13:46:55 +00:00
src Build/Test Tools: Introduce automated PHP compatibility checking. 2019-09-25 13:46:55 +00:00
tests Twenty Twenty: Rename widget areas to sidebar-1 and sidebar-2. 2019-09-23 23:16:59 +00:00
tools Block Editor: Update the WordPress Packages to the ones used in the Gutenberg 6.5 release 2019-09-19 15:17:39 +00:00
.editorconfig General: Instruct file editors not to trim trailing whitespace in markdown files. 2018-03-20 22:14:53 +00:00
.env Build Tools: Miscellaneous local-env improvements. 2019-08-12 08:28:33 +00:00
.gitignore Build Tools: Miscellaneous local-env improvements. 2019-08-12 08:28:33 +00:00
.jshintrc Build tools: Fix the travis:js build. 2018-12-24 13:53:11 +00:00
.npmrc Once upon a midnight dreary, while I coded, weak and weary, 2018-05-23 10:04:22 +00:00
.nvmrc Once upon a midnight dreary, while I coded, weak and weary, 2018-05-23 10:04:22 +00:00
.travis.yml Build/Test Tools: Introduce automated PHP compatibility checking. 2019-09-25 13:46:55 +00:00
appveyor.yml Build/Test Tools: Remove the dependency on a globally installed Grunt. 2019-05-26 19:34:24 +00:00
composer.json Build/Test Tools: Introduce automated PHP compatibility checking. 2019-09-25 13:46:55 +00:00
composer.lock Build/Test Tools: Introduce automated PHP compatibility checking. 2019-09-25 13:46:55 +00:00
docker-compose.yml Build Tools: Pass the LOCAL_DIR environment variable through to the phpunit Docker container. 2019-08-23 01:55:28 +00:00
Gruntfile.js Accessibility: Replace wp-a11y.js with @wordpress/a11y package 2019-09-18 17:40:35 +00:00
jsdoc.conf.json Build Tools: Fix JSDoc configuration include paths. 2018-06-14 12:45:06 +00:00
package-lock.json Block Editor: Align the version of React with the one used in Gutenberg plugin 2019-09-25 08:19:17 +00:00
package.json Block Editor: Align the version of React with the one used in Gutenberg plugin 2019-09-25 08:19:17 +00:00
phpcompat.xml.dist Build/Test Tools: Introduce automated PHP compatibility checking. 2019-09-25 13:46:55 +00:00
phpcs.xml.dist Coding Standards: Move the remaining PHPCS errors to report as warnings, and add Travis tests. 2019-07-19 07:47:16 +00:00
phpunit.xml.dist Code Modernization: Remove all code using a version_compare() with a PHP version older than PHP 5.6. 2019-09-20 22:01:36 +00:00
README.md Build Tools: Add a WordPress Development Environment. 2019-08-05 07:09:14 +00:00
webpack.config.js Build tools: Allow building WordPress to src. 2018-12-24 13:28:22 +00:00
wp-cli.yml Build/Tests: Default to running unit tests from src. 2019-01-09 10:09:02 +00:00
wp-config-sample.php General: Replace "Happy blogging" with "Happy publishing". 2019-01-08 04:29:06 +00:00
wp-tests-config-sample.php Tests: Revert [44509]. 2019-01-09 11:13:03 +00:00

WordPress

Build Status

Welcome to the WordPress development repository! Please check out our contributor handbook for information about how to open bug reports, contribute patches, test, documention, or get involved in any way you can.

Getting Started

WordPress is a PHP/MySQL-based project. We have a basic development environment that you can quickly get up and running with a few commands. First off, you will need to download and install Docker, if you don't have it already. After that, there are a few commands to run:

Development Environment Commands

Running these commands will start the development environment:

npm install
npm run build:dev
npm run env:start
npm run env:install

Additionally, npm run env:stop will stop the environment.

npm run env:cli runs the WP-CLI tool. WP-CLI has a lot of useful commands you can use to work on your WordPress site. Where the documentation mentions running wp, run npm run env:cli instead. For example, npm run env:cli help.

npm run test:php and npm run test:e2e run the PHP and E2E test suites, respectively.