Skip to content

Commit b843658

Browse files
authored
Workflows
1 parent 207f5b4 commit b843658

12 files changed

Lines changed: 77 additions & 41 deletions

.github/copilot-instructions.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ applyTo: '**'
77
## Environment
88

99
- **Work in:** Remote GitHub Codespaces only. Never suggest local terminal commands.
10-
- **WordPress:** 6.5+ minimum
10+
- **WordPress:** 6.6+ minimum
1111
- **PHP:** 8.1+ minimum (use typed properties, readonly, enums, union types, named arguments)
1212
- **WooCommerce:** 5.0+ (guaranteed active — no activation checks needed)
1313
- **WP Store Locator:** (guaranteed active — no activation checks needed)
@@ -58,7 +58,7 @@ All security rules are **mandatory and non-negotiable**.
5858
- GitHub Actions workflows live in `.github/workflows/`
5959
- **Gemini AI integration:** Code review and issue analysis via Google Gemini API. Sanitize all user-controlled content (diffs, issue bodies) before passing to LLM prompts.
6060
- **Static analysis:** PHPStan (Level 5+), PHPCS (WordPress standards), PHPMD, Psalm
61-
- **Test matrix:** PHP 8.1, 8.2, 8.3, 8.4 × WordPress 6.5, latest, nightly
61+
- **Test matrix:** PHP 8.1, 8.2, 8.3, 8.4, 8.5 × WordPress 6.6, latest, nightly
6262
- **Security:** Never expose API keys or tokens in logs. Use `${{ secrets.* }}` for credentials. Add timeouts to external API calls. Fail builds on critical security findings.
6363
- **Error handling in workflows:** Do not suppress tool failures with `|| echo`. Log full output and set appropriate exit codes.
6464

.github/dependabot.yml

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ updates:
1818
open-pull-requests-limit: 10
1919
# Assign reviewers automatically
2020
reviewers:
21-
- "PDowney"
21+
- "EngineScript"
2222
# Create a group of updates for all actions
2323
groups:
2424
actions:
@@ -42,20 +42,16 @@ updates:
4242
open-pull-requests-limit: 10
4343
# Assign reviewers automatically
4444
reviewers:
45-
- "PDowney"
45+
- "EngineScript"
4646
# Group updates by dependency type
4747
groups:
4848
# Group all dev dependencies together
4949
dev-dependencies:
50-
patterns:
51-
- "*"
5250
dependency-type: "development"
5351
# Group production dependencies (if any are added later)
5452
production-dependencies:
55-
patterns:
56-
- "*"
5753
dependency-type: "production"
5854
# Allow updates to all dependency types
5955
allow:
6056
- dependency-type: "direct"
61-
- dependency-type: "indirect"
57+
- dependency-type: "indirect"

.github/workflows/new-pull-request.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
Thanks for contributing to Optimizations ACE MC! 🎉
2525
2626
**Before we review:**
27-
- [ ] Have you tested your changes with WordPress 6.5+?
27+
- [ ] Have you tested your changes with WordPress 6.6+?
2828
- [ ] Are your changes compatible with PHP 7.4+?
2929
- [ ] Have you followed WordPress coding standards?
3030
- [ ] Did you update the CHANGELOG.md if needed?

.github/workflows/wp-compatibility-test.yml

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
# This workflow performs comprehensive WordPress plugin compatibility and quality checks.
22
# It runs multiple validation processes including:
33
# - WordPress Plugin Check for WordPress.org compatibility
4-
# - PHP compatibility testing across multiple PHP versions (7.4, 8.0, 8.3, 8.4)
5-
# - WordPress compatibility testing across multiple WP versions (6.5, latest, nightly)
4+
# - PHPUnit tests across PHP versions (7.4/8.0: PHPUnit 9+polyfills2; 8.1: PHPUnit 9+polyfills4; 8.2: PHPUnit 11+polyfills4; 8.3: PHPUnit 12+polyfills4)
5+
# - PHP compatibility testing across multiple PHP versions (7.4, 8.0, 8.3, 8.4, 8.5)
6+
# - WordPress compatibility testing across multiple WP versions (6.6, latest, nightly)
67
# - PHPStan static analysis for WordPress-specific code quality
78
# - WordPress security vulnerability scanning using pattern analysis
89
# - PHPCS code standards validation for WordPress coding standards
@@ -586,8 +587,8 @@ jobs:
586587
runs-on: ubuntu-latest
587588
strategy:
588589
matrix:
589-
php-version: ['7.4', '8.0', '8.3', '8.4']
590-
wp-version: ['6.5', 'latest', 'nightly']
590+
php-version: ['7.4', '8.0', '8.1', '8.2', '8.3', '8.4', '8.5']
591+
wp-version: ['6.6', 'latest', 'nightly']
591592
fail-fast: false
592593

593594
services:
@@ -805,7 +806,7 @@ jobs:
805806
$this->assertNotEmpty($wp_version, 'WordPress version should be available');
806807
807808
// Test that we're running on a supported WordPress version
808-
$min_wp_version = '6.5';
809+
$min_wp_version = '6.6';
809810
$this->assertTrue(version_compare($wp_version, $min_wp_version, '>='),
810811
"WordPress version {$wp_version} should be >= {$min_wp_version}");
811812
}

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ A lightweight WordPress optimization plugin with pre-configured performance enha
44

55
## Requirements
66

7-
- WordPress 6.5+
7+
- WordPress 6.6+
88
- PHP 8.1+
99
- WooCommerce 5.0+
1010
- WP Store Locator

class-optimizations-ace-mc.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -643,7 +643,7 @@ private function display_plugin_info(): void {
643643
</p>
644644
<p>
645645
<strong><?php esc_html_e( 'Version:', 'optimizations-ace-mc' ); ?></strong> <?php echo esc_html( OPTIMIZATIONS_ACE_MC_VERSION ); ?> |
646-
<strong><?php esc_html_e( 'WordPress:', 'optimizations-ace-mc' ); ?></strong> <?php esc_html_e( '6.5+ required', 'optimizations-ace-mc' ); ?> |
646+
<strong><?php esc_html_e( 'WordPress:', 'optimizations-ace-mc' ); ?></strong> <?php esc_html_e( '6.6+ required', 'optimizations-ace-mc' ); ?> |
647647
<strong><?php esc_html_e( 'PHP:', 'optimizations-ace-mc' ); ?></strong> <?php esc_html_e( '8.1+ required', 'optimizations-ace-mc' ); ?>
648648
</p>
649649
</div>

composer.json

Lines changed: 24 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -11,25 +11,36 @@
1111
],
1212
"minimum-stability": "stable",
1313
"require": {
14-
"php": ">=8.1"
14+
"php": ">=7.4"
1515
},
1616
"require-dev": {
17-
"phpunit/phpunit": "^9.5",
18-
"yoast/phpunit-polyfills": "^4.0",
19-
"wp-coding-standards/wpcs": "^3.1",
20-
"dealerdirect/phpcodesniffer-composer-installer": "^1.0.0",
21-
"php-stubs/wordpress-stubs": "^6.8",
22-
"szepeviktor/phpstan-wordpress": "^1.3",
23-
"phpstan/phpstan": "^1.0",
24-
"phpcompatibility/phpcompatibility-wp": "^2.1"
17+
"phpunit/phpunit": "9.*",
18+
"yoast/phpunit-polyfills": "2.*",
19+
"squizlabs/php_codesniffer": "3.*",
20+
"wp-coding-standards/wpcs": "3.*",
21+
"phpcsstandards/phpcsextra": "1.*",
22+
"dealerdirect/phpcodesniffer-composer-installer": "1.*",
23+
"friendsofphp/php-cs-fixer": "3.*",
24+
"php-stubs/wordpress-stubs": "6.*",
25+
"szepeviktor/phpstan-wordpress": "2.*",
26+
"phpstan/phpstan": "2.*",
27+
"phpcompatibility/phpcompatibility-wp": "2.*"
28+
},
29+
"scripts": {
30+
"phpcs": "phpcs --standard=phpcs.xml",
31+
"phpcs:fix": "phpcbf --standard=phpcs.xml",
32+
"phpmd": "phpmd . text phpmd.xml --exclude vendor",
33+
"phpstan": "phpstan analyze --memory-limit=1G",
34+
"test": "phpunit",
35+
"check-all": [
36+
"@phpcs",
37+
"@phpmd",
38+
"@phpstan"
39+
]
2540
},
2641
"config": {
2742
"allow-plugins": {
2843
"dealerdirect/phpcodesniffer-composer-installer": true
2944
}
30-
},
31-
"scripts": {
32-
"lint:php": "phpcs",
33-
"analyze": "phpstan analyse"
3445
}
3546
}

languages/optimizations-ace-mc.pot

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ msgid "WordPress:"
135135
msgstr ""
136136

137137
#: class-optimizations-ace-mc.php:498
138-
msgid "6.5+ required"
138+
msgid "6.6+ required"
139139
msgstr ""
140140

141141
#: class-optimizations-ace-mc.php:499

optimizations-ace-mc.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
* License URI: https://www.gnu.org/licenses/gpl-3.0.html
1111
* Text Domain: optimizations-ace-mc
1212
* Domain Path: /languages
13-
* Requires at least: 6.5
13+
* Requires at least: 6.6
1414
* Tested up to: 6.9
1515
* Requires PHP: 8.1
1616
*

phpcs.xml

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@
99
<exclude-pattern>*/vendor/*</exclude-pattern>
1010
<exclude-pattern>*/node_modules/*</exclude-pattern>
1111
<exclude-pattern>*/tests/*</exclude-pattern>
12-
<exclude-pattern>*/assets/*</exclude-pattern>
13-
<exclude-pattern>*/languages/*</exclude-pattern>
1412
<exclude-pattern>*/.git/*</exclude-pattern>
1513
<exclude-pattern>*/.github/*</exclude-pattern>
14+
<exclude-pattern>*/build/*</exclude-pattern>
15+
<exclude-pattern>*/dist/*</exclude-pattern>
1616

17-
<!-- Use WordPress coding standards -->
18-
<rule ref="WordPress">
17+
<!-- Use WordPress-Extra coding standards (includes WordPress-Core) -->
18+
<rule ref="WordPress-Extra">
1919
<!-- Allow short array syntax [] instead of array() -->
2020
<exclude name="Generic.Arrays.DisallowShortArraySyntax"/>
2121

@@ -26,6 +26,9 @@
2626
<exclude name="WordPress.DB.DirectDatabaseQuery"/>
2727
</rule>
2828

29+
<!-- WordPress documentation standards -->
30+
<rule ref="WordPress-Docs"/>
31+
2932
<!-- COMMENTED OUT: These rules enforce spaces instead of tabs, which conflicts with WordPress standards -->
3033
<!-- WordPress standards actually require TABS for indentation, not spaces -->
3134
<!--
@@ -85,11 +88,13 @@
8588

8689
<!-- WordPress security and best practices -->
8790
<rule ref="WordPress.Security"/>
91+
92+
<!-- WordPress internationalization configuration -->
8893
<rule ref="WordPress.WP.I18n">
8994
<properties>
9095
<!-- Set the text domain for internationalization -->
9196
<property name="text_domain" type="array">
92-
<element value="optimizations-ace-mc"/>
97+
<element value="enginescript-site-exporter"/>
9398
</property>
9499
</properties>
95100
</rule>
@@ -103,7 +108,14 @@
103108
<rule ref="PHPCompatibilityWP">
104109
<include-pattern>*\.php$</include-pattern>
105110
</rule>
106-
<config name="minimum_supported_wp_version" value="6.5"/>
111+
112+
<!-- PHPCSExtra rules for additional code quality checks -->
113+
<rule ref="PHPCSExtra">
114+
<exclude name="Modernize.FunctionCalls.Dirname.Nested"/>
115+
</rule>
116+
117+
<!-- Set minimum WordPress version for deprecated function checks -->
118+
<config name="minimum_wp_version" value="6.6"/>
107119
<config name="testVersion" value="7.4-"/>
108120

109121
<!-- Show progress -->
@@ -115,4 +127,4 @@
115127
<!-- Use colors in output -->
116128
<arg name="colors"/>
117129

118-
</ruleset>
130+
</ruleset>

0 commit comments

Comments
 (0)