newsuk / nuk-wp-phpmd-config
PHPMD configuration for WordPress VIP plugins and themes
This package's canonical repository appears to be gone and the package has been frozen as a result. Email us for help if needed.
Installs: 14 844
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 16
Forks: 0
Open Issues: 0
Type:phpmd-standard
pkg:composer/newsuk/nuk-wp-phpmd-config
Requires
- phpmd/phpmd: ^2.15
This package is auto-updated.
Last update: 2025-03-07 08:45:17 UTC
README
This library contains PHPMD configuration for NewsUK plugins and themes.
Architecture
Project Structure
- .circleci # CircleCI pipeline configuration files
- .github # GitHub configuration files
- ruleset.xml # PHPMD rulesets
Technical Documentation
Contribution
More details on how to contribute to this package can be found in the CONTRIBUTING.md file.
Minimal requirements
- PHP 8.2
Development setup
To build the package
PHP setup
composer install
Installation
Composer install:
composer require --dev newsuk/nuk-wp-phpmd-config
Usage
Using the ruleset
Create a phpmd.xml.dist file in your project and add the following:
<?xml version="1.0"?> <ruleset> <rule ref="vendor/newsuk/nuk-wp-phpmd-config/ruleset.xml" /> </ruleset>
Usage with Composer
Add the following to scripts section in composer.json file and run composer phpmd, make sure to update the directory and file names accordingly.
"phpmd": "phpmd plugin.php,includes text phpmd.xml.dist --color"
Add the following to generate baseline file for existing plugins and run composer phpmd-baseline, make sure to update the directory and file names accordingly.
"phpmd-baseline": "phpmd plugin.php,includes text phpmd.xml.dist --generate-baseline"
Tagging and releasing
The content schema uses Semantic Versioning semver for versioning. The package is released using GitHub Releases. The release process is automated in Circle CI build step. To create a new release, follow these steps:
- Update the relevant files with the new version. Commit the updated files.
- Push the changes to the
mainbranch, by merging the associated pull request - Create a release targeting the
mainbranch within GitHub.