Skip to content

Commit

Permalink
Merge branch 'release/2.0.0-beta1'
Browse files Browse the repository at this point in the history
  • Loading branch information
TravisCarden committed Jul 28, 2023
2 parents 2152018 + bb7c2ff commit af5c7e9
Show file tree
Hide file tree
Showing 123 changed files with 36,744 additions and 1,486 deletions.
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
/deptrac.yml export-ignore
/grumphp.yml.dist export-ignore
/infection.json.dist export-ignore
/phpbench.json export-ignore
/phpcs.xml.dist export-ignore
/phpmd.xml export-ignore
/phpstan.neon.dist export-ignore
Expand Down
38 changes: 27 additions & 11 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,6 @@ jobs:
quality_check:
name: "Quality Check"
runs-on: ubuntu-latest
strategy:
fail-fast: false
steps:
- name: "Set up PHP"
uses: shivammathur/setup-php@v2 # https://github.com/marketplace/actions/setup-php-action
Expand All @@ -34,10 +32,6 @@ jobs:

- name: "Install dependencies"
uses: ramsey/composer-install@v2 # https://github.com/marketplace/actions/install-composer-dependencies
with:
# Disable Composer caching due to random failures it causes.
# @see https://github.com/ramsey/composer-install/issues/79
composer-options: "--no-cache"

- name: "Run all quality checks"
run: "composer static"
Expand Down Expand Up @@ -73,15 +67,37 @@ jobs:
with:
dependency-versions: "${{ matrix.dependencies }}"

- name: "Run core tests with coverage (Linux)"
- name: "Run core tests with coverage"
run: "composer test"
if: ${{ runner.os == 'Linux' }}
if: ${{ matrix.os == 'ubuntu-latest' && matrix.dependencies == 'highest' }}

# There's no reason to generate coverage data on multiple OS-es--the result should be the same.
- name: "Run core tests without coverage (macOS)"
# There's no reason to generate coverage data on multiple jobs--the result should be the same.
- name: "Run core tests without coverage"
run: "./vendor/bin/phpunit --no-coverage --exclude-group=windows_only"
if: ${{ runner.os == 'macOS' }}
if: ${{ runner.os != 'Windows' && !( matrix.os == 'ubuntu-latest' && matrix.dependencies == 'highest' ) }}

- name: "Run Windows tests"
run: "./vendor/bin/phpunit --no-coverage --exclude-group=no_windows"
if: ${{ runner.os == 'Windows' }}

performance:
name: "Performance"
runs-on: ubuntu-latest
steps:
- name: "Set up PHP"
uses: shivammathur/setup-php@v2 # https://github.com/marketplace/actions/setup-php-action
with:
php-version: "8.1"

- name: "Checkout code"
uses: actions/checkout@v3 # https://github.com/marketplace/actions/checkout

- name: "Install dependencies"
uses: ramsey/composer-install@v2 # https://github.com/marketplace/actions/install-composer-dependencies
with:
# Disable Composer caching due to random failures it causes.
# @see https://github.com/ramsey/composer-install/issues/79
composer-options: "--no-cache"

- name: "Run performance tests"
run: "composer phpbench -- --progress=plain --iterations=5 --ansi"
3 changes: 2 additions & 1 deletion .idea/composer-stager.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions .idea/dictionaries/project.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 14 additions & 0 deletions .idea/php.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions .idea/runConfigurations/PHPBench.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions .idea/runConfigurations/PHPCBF.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion .idea/runConfigurations/PHPStan.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

46 changes: 30 additions & 16 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,32 +19,33 @@
"require": {
"php": ">=8.1.0",
"ext-json": "*",
"symfony/filesystem": "^6.2",
"symfony/process": "^6.2",
"symfony/filesystem": "^6.3",
"symfony/process": "^6.3",
"symfony/translation-contracts": "^3.2"
},
"require-dev": {
"dealerdirect/phpcodesniffer-composer-installer": "^1.0",
"ergebnis/composer-normalize": "^2.30",
"ergebnis/composer-normalize": "^2.33",
"jangregor/phpstan-prophecy": "^1.0",
"php-parallel-lint/php-parallel-lint": "^1.3",
"phpbench/phpbench": "^1.2",
"phpmd/phpmd": "^2.13",
"phpro/grumphp-shim": "^1.15 || ^2.0",
"phpro/grumphp-shim": "^2.0",
"phpspec/prophecy": "^1.17",
"phpspec/prophecy-phpunit": "^2.0",
"phpstan/extension-installer": "^1.2",
"phpstan/extension-installer": "^1.3",
"phpstan/phpstan": "^1.10",
"phpstan/phpstan-deprecation-rules": "^1.1",
"phpstan/phpstan-strict-rules": "^1.5",
"phpunit/phpunit": "^9.6",
"psalm/phar": "^5.7",
"psalm/phar": "^5.13",
"qossmic/deptrac-shim": "^1.0",
"rector/rector": "^0.16.0 || ^0.17.0",
"slevomat/coding-standard": "^8.8",
"rector/rector": "^0.17.5",
"slevomat/coding-standard": "^8.13",
"squizlabs/php_codesniffer": "^3.7",
"symfony/config": "^6.2",
"symfony/dependency-injection": "^6.2",
"symfony/yaml": "^6.2",
"symfony/config": "^6.3",
"symfony/dependency-injection": "^6.3",
"symfony/yaml": "^6.3",
"thecodingmachine/phpstan-strict-rules": "^1.0"
},
"suggest": {
Expand All @@ -60,6 +61,7 @@
"autoload-dev": {
"psr-4": {
"PhpTuf\\ComposerStager\\": "tools/phpcs/",
"PhpTuf\\ComposerStager\\PHPBench\\": "tools/phpbench/",
"PhpTuf\\ComposerStager\\PHPStan\\": "tools/phpstan/",
"PhpTuf\\ComposerStager\\Tests\\": "tests/"
}
Expand All @@ -83,10 +85,16 @@
}
},
"scripts": {
"all": "grumphp run",
"all": [
"@c",
"grumphp run"
],
"bench": "@phpbench",
"c": [
"@composer dump-autoload",
"rm -r var/*/* &> /dev/null || true"
"phpstan clear-result-cache",
"rm -r var/*/* &> /dev/null || true",
"git checkout -- var"
],
"cbf": "phpcbf",
"coverage": "open $(pwd)/var/phpunit/html-coverage/index.html || echo 'Run the \"test\" command to generate the coverage report.'",
Expand All @@ -97,23 +105,28 @@
"functional": "phpunit --testsuite=functional --exclude-group=windows_only",
"lint": "parallel-lint --no-progress src tests",
"md": "@phpmd",
"phpbench": "phpbench run --report=all --output=console --output=html",
"phpcbf": "phpcbf",
"phpcs": "phpcs -s",
"phpmd": "phpmd src text phpmd",
"phpstan": [
"@composer dump-autoload",
"phpstan clear-result-cache",
"phpstan analyse"
],
"psalm": "psalm.phar",
"rector": "rector",
"stan": "@phpstan",
"static": "grumphp run --testsuite=static",
"static": [
"@c",
"grumphp run --testsuite=static"
],
"tests": "grumphp run --testsuite=test",
"unit": "phpunit --testsuite=unit --exclude-group=windows_only"
},
"scripts-descriptions": {
"all": "Runs all automated tests and static analysis tools",
"c": "Clears the script caches in the \"var\" directory",
"bench": "[phpbench] Run benchmarks",
"c": "Clears all script caches and test fixtures in the \"var\" directory",
"cbf": "[phpcbf] Automatically fixes standards violations where possible",
"coverage": "Opens the code coverage report generated by the \"test\" script (on macOS)",
"cs": "[phpcs] Checks code for standards compliance",
Expand All @@ -123,6 +136,7 @@
"functional": "Runs functional tests",
"lint": "Lints PHP files",
"md": "[phpmd] Looks for potential problems within the source code",
"phpbench": "[bench] Run benchmarks",
"phpcbf": "[cbf] Automatically fixes standards violations where possible",
"phpcs": "[cs] Checks code for standards compliance",
"phpmd": "[md] Looks for potential problems within the source code",
Expand Down
Loading

0 comments on commit af5c7e9

Please sign in to comment.