diff --git a/.github/renovate.json5 b/.github/renovate.json5 index aecf2b1..549b7ec 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -3,11 +3,12 @@ "extends": ["mergeConfidence:all-badges"], - "enabled": false, + "enabled": true, "assignees": [ "mimmi20" ], + "automerge": false, "branchConcurrentLimit": 0, "commitBody": "Signed-off-by: {{{gitAuthor}}}", "commitBodyTable": true, @@ -16,9 +17,16 @@ "dependencyDashboard": false, "dependencyDashboardApproval": false, "dependencyDashboardOSVVulnerabilitySummary": "all", + // "enabledManagers": ["composer", "github-actions", "npm"], + "ignoreTests": false, + "ignoreUnstable": true, + "internalChecksFilter": "strict", "labels": [ "dependencies" ], + "lockFileMaintenance": { + "enabled": false + }, "osvVulnerabilityAlerts": true, "platformAutomerge": false, "prBodyColumns": [ @@ -41,9 +49,14 @@ "reviewers": [ "mimmi20" ], + "rollbackPrs": true, "schedule": ["at 4:00 am on Friday"], "semanticCommits": "disabled", + "separateMajorMinor": true, + "separateMinorPatch": false, "timezone": "Europe/Berlin", + "updateLockFiles": false, + "updateNotScheduled": false, "packageRules": [ { "groupName": "PHP", diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml index 5e4c32c..f611c75 100644 --- a/.github/workflows/continuous-integration.yml +++ b/.github/workflows/continuous-integration.yml @@ -114,6 +114,15 @@ jobs: - name: "Run unit tests with phpunit/phpunit" run: "vendor/bin/phpunit -c phpunit.xml --no-coverage --display-warnings --display-deprecations" + - name: "Enable annotations for validation errors and warnings" + uses: "korelstar/xmllint-problem-matcher@v1" + + - name: "Validate phpcs.xml" + uses: "ChristophWurst/xmllint-action@v1" + with: + xml-file: "phpunit.xml" + xml-schema-file: "vendor/phpunit/phpunit/phpunit.xsd" + code-coverage: name: "Code Coverage with PHPUnit" @@ -182,11 +191,6 @@ jobs: env: CODECOV_TOKEN: "${{ secrets.CODECOV_TOKEN }}" - - name: "Run mutation tests with infection/infection" - env: - STRYKER_DASHBOARD_API_KEY: ${{ secrets.STRYKER_DASHBOARD_API_KEY }} - run: "vendor/bin/infection --show-mutations --only-covered --min-covered-msi=74 --min-msi=74 --coverage=.build/coverage --logger-github --no-progress -vv" - - name: "Upload coverage to Codeclimate" uses: "paambaati/codeclimate-action@v6.0.0" env: @@ -205,6 +209,11 @@ jobs: format: "clover" debug: false + - name: "Run mutation tests with infection/infection" + env: + STRYKER_DASHBOARD_API_KEY: ${{ secrets.STRYKER_DASHBOARD_API_KEY }} + run: "vendor/bin/infection --show-mutations --only-covered --min-covered-msi=74 --min-msi=74 --coverage=.build/coverage --logger-github --no-progress -vv" + finish-code-coverage: runs-on: "ubuntu-22.04" diff --git a/composer.json b/composer.json index b636518..058039c 100644 --- a/composer.json +++ b/composer.json @@ -35,7 +35,7 @@ "laminas/laminas-servicemanager": "^3.22.1", "mikey179/vfsstream": "^1.6.11", "mimmi20/coding-standard": "^5.2.33", - "nikic/php-parser": "^v4.19.1 || ^v5.0.2", + "nikic/php-parser": "^4.19.1 || ^5.0.2", "phpstan/extension-installer": "^1.3.1", "phpstan/phpstan": "^1.11.2", "phpstan/phpstan-deprecation-rules": "^1.2.0", @@ -64,14 +64,14 @@ } }, "config": { - "preferred-install": "dist", - "lock": false, - "sort-packages": true, "allow-plugins": { "dealerdirect/phpcodesniffer-composer-installer": true, - "phpstan/extension-installer": true, - "infection/extension-installer": true - } + "infection/extension-installer": true, + "phpstan/extension-installer": true + }, + "lock": false, + "preferred-install": "dist", + "sort-packages": true }, "extra": { "laminas": { diff --git a/phpstan.neon b/phpstan.neon index 96f409c..cdb6046 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -122,7 +122,6 @@ rules: # - Symplify\PHPStanRules\Rules\NoReturnArrayVariableListRule # todo: fix - Symplify\PHPStanRules\Rules\ForbiddenExtendOfNonAbstractClassRule - - Symplify\PHPStanRules\Rules\Complexity\ForbiddenSameNamedNewInstanceRule # domain - Symplify\PHPStanRules\Rules\Domain\RequireExceptionNamespaceRule @@ -145,12 +144,10 @@ rules: - Symplify\PHPStanRules\Rules\ForbiddenMultipleClassLikeInOneFileRule # comlexity - - Symplify\PHPStanRules\Rules\Complexity\ForbiddenSameNamedNewInstanceRule - Symplify\PHPStanRules\Rules\NarrowType\NoReturnFalseInNonBoolClassMethodRule - Symplify\PHPStanRules\Rules\Complexity\ForbiddenArrayMethodCallRule # - Symplify\PHPStanRules\Rules\CheckRequiredInterfaceInContractNamespaceRule - - Symplify\PHPStanRules\Rules\NoEmptyClassRule # naming - Symplify\PHPStanRules\Rules\RequireAttributeNameRule @@ -163,7 +160,6 @@ rules: # naming - Symplify\PHPStanRules\Rules\Explicit\ExplicitClassPrefixSuffixRule - Symplify\PHPStanRules\Rules\NoReturnSetterMethodRule - - Symplify\PHPStanRules\Rules\NoVoidGetterMethodRule - Symplify\PHPStanRules\Rules\UppercaseConstantRule - Symplify\PHPStanRules\Rules\ClassNameRespectsParentSuffixRule - Symplify\PHPStanRules\Rules\CheckTypehintCallerTypeRule diff --git a/src/ConfigProvider.php b/src/ConfigProvider.php index 72ff285..1591b47 100644 --- a/src/ConfigProvider.php +++ b/src/ConfigProvider.php @@ -12,8 +12,6 @@ namespace Mimmi20\LaminasView\Revision; -use Laminas\ModuleManager\Feature\ServiceProviderInterface; -use Laminas\ModuleManager\Feature\ViewHelperProviderInterface; use Mimmi20\LaminasView\Revision\View\Helper\BaseUrl; use Mimmi20\LaminasView\Revision\View\Helper\BaseUrlFactory; use Mimmi20\LaminasView\Revision\View\Helper\RevisionHeadLink; @@ -23,7 +21,7 @@ use Mimmi20\LaminasView\Revision\View\Helper\RevisionInlineScript; use Mimmi20\LaminasView\Revision\View\Helper\RevisionInlineScriptFactory; -final class ConfigProvider implements ServiceProviderInterface, ViewHelperProviderInterface +final class ConfigProvider { /** * Returns configuration from file