Skip to content

Conversation

@GaryJones
Copy link
Contributor

This pull request establishes comprehensive CI infrastructure for the plugin.

Summary

  • Add Dependabot configuration for automated dependency updates
  • Add PHPUnit test infrastructure with unit and integration test support
  • Add GitHub Actions workflows for code standards, linting, and tests
  • Standardise .gitignore and add .distignore

Test plan

  • Verify CS workflow runs successfully
  • Verify integration tests run via wp-env
  • Check Dependabot configuration is valid

🤖 Generated with Claude Code

GaryJones and others added 3 commits December 13, 2025 01:02
Adds standardised Dependabot configuration to automate dependency updates
for GitHub Actions and Composer packages. This aligns with other Automattic
plugins and reduces maintenance overhead by keeping dependencies current.

Configuration uses weekly schedules with grouping to minimise PR noise whilst
ensuring timely security and compatibility updates.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Establishes the foundation for unit and integration testing with PHPUnit 9
and yoast/wp-test-utils. The test infrastructure uses Brain Monkey for unit
tests (without WordPress) and the WordPress test harness for integration
tests via wp-env.

Adds composer scripts for running tests:
- test:unit: Run unit tests with Brain Monkey
- test:integration: Run integration tests in wp-env
- test:integration-ms: Run integration tests in multisite mode
- coverage: Generate HTML coverage report

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Updates ignore files with consistent patterns. The .gitignore now
properly excludes local config overrides like .wp-env.override.json,
and .distignore ensures dev files are excluded from distributions.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
@GaryJones GaryJones force-pushed the standardize/add-dependabot branch from 194f204 to dee57f1 Compare December 14, 2025 01:35
Adds automated CI pipelines for code quality and testing:
- cs-lint.yml: PHPCS, PHP linting, and XML validation
- integration.yml: PHPUnit integration tests via wp-env

Tests run on PHP 8.2+ with WordPress 6.4 and latest versions.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
@GaryJones GaryJones force-pushed the standardize/add-dependabot branch from dee57f1 to fe2978b Compare December 14, 2025 01:37
@GaryJones GaryJones added the type: maintenance Routine maintenance and code quality improvements label Dec 14, 2025
@GaryJones GaryJones self-assigned this Dec 14, 2025
GaryJones and others added 5 commits December 14, 2025 01:43
The plugin requires WordPress 6.6 or higher, so the integration tests
need to use 6.6 as the minimum test version instead of 6.4.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Replace individual rule exclusions with a complete tests directory
exclusion, matching the approach used in other plugins like zoninator
and co-authors-plus. Test files have different coding requirements.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Use WPIntegration\get_path_to_wp_test_dir() to locate the WordPress
test library instead of relying on WP_PHPUNIT__DIR environment variable
which isn't set in wp-env containers.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
finfo_close() is deprecated in PHP 8.5+ as finfo resources are now
automatically managed. Removing the explicit close call for forward
compatibility.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
The plugin uses an anonymous function with add_action(), so check for
the registered action instead of a named function that doesn't exist.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
@GaryJones GaryJones merged commit ea24d67 into develop Dec 14, 2025
5 checks passed
@GaryJones GaryJones deleted the standardize/add-dependabot branch December 14, 2025 02:05
@GaryJones GaryJones added this to the Next milestone Dec 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: maintenance Routine maintenance and code quality improvements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants