Skip to content

Commit 7adcb27

Browse files
Merge pull request #83 from neo4j-php/5.0.0-typing-and-consistency
Release version 5.0.0
2 parents 2fd1194 + 6784fdb commit 7adcb27

File tree

428 files changed

+20280
-17873
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

428 files changed

+20280
-17873
lines changed

.gitattributes

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
/.github export-ignore
2+
/tests export-ignore
3+
/.gitattributes export-ignore
4+
/.gitignore export-ignore
5+
/.php-cs-fixer.dist.php export-ignore
6+
/infection.json.dist export-ignore
7+
/phpstan.neon.dist export-ignore
8+
/phpunit.xml.dist export-ignore
9+
10+
*.php diff=php

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
---
2+
name: Bug report 🐛
3+
about: If something isn't working as expected.
4+
---
5+
6+
# Bug report
7+
8+
<!-- Before reporting an issue please check that you are using the latest version of php-cypher-dsl! -->
9+
10+
<!-- Please describe your problem here. -->
11+
12+
### Code snippet that reproduces the problem
13+
14+
<!-- Try to reproduce the issue you are facing using your favorite editor and paste the misbehaving code here -->
15+
16+
### Expected output
17+
18+
<!-- Was the Cypher query invalid or incorrect? Was something allowed even though it shouldn't be, or vice versa? -->

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
contact_links:
2+
- name: Support question
3+
url: https://github.com/neo4j-php/php-cypher-dsl/discussions/new
4+
about: Please open a new discussion instead. Thank you.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
name: Missing feature request 🚀
3+
about: Some feature from Cypher has not been implemented
4+
---
5+
6+
# Feature request
7+
8+
<!-- Please provide a clear description of what is missing, preferably with a link to either openCypher or Neo4j. -->

.github/SECURITY.md

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
# Security policy
2+
3+
**Please do not disclose security-related issues publicly, [see
4+
below](#reporting-a-vulnerability).**
5+
6+
## Reporting a vulnerability
7+
8+
If you discover a security vulnerability within php-cypher-dsl, please send an
9+
e-mail to Marijn van Wezel at [email protected]. All security
10+
vulnerabilities will be promptly addressed.
11+
12+
You may optionally encrypt your report with PGP, using the following key
13+
(fingerprint: `98ED96AA2260D7E3`, proof:
14+
[keybase.io](https://keybase.io/01101101)):
15+
16+
```text
17+
-----BEGIN PGP PUBLIC KEY BLOCK-----
18+
19+
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
66+
1t3QWAzGmg==
67+
=Yjmm
68+
-----END PGP PUBLIC KEY BLOCK-----
69+
```
70+

.github/workflows/analyse.yml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: analyse
2+
3+
on:
4+
push:
5+
branches: [ 'main' ]
6+
pull_request:
7+
workflow_dispatch:
8+
9+
jobs:
10+
analyse:
11+
name: "Static analysis (PHP ${{ matrix.php-version }})"
12+
runs-on: "ubuntu-22.04"
13+
continue-on-error: true
14+
15+
strategy:
16+
matrix:
17+
php-version: [ "8.1" ]
18+
19+
env:
20+
COMPOSER_VERSION: 2
21+
COVERAGE_DRIVER: none
22+
23+
steps:
24+
- name: Checkout code
25+
uses: actions/checkout@v3
26+
27+
- name: Setup PHP
28+
uses: shivammathur/setup-php@v2
29+
with:
30+
php-version: ${{ matrix.php-version }}
31+
coverage: ${{ env.COVERAGE_DRIVER }}
32+
tools: composer:${{ env.COMPOSER_VERSION }}
33+
34+
- name: Install dependencies
35+
run: composer install --no-interaction --prefer-dist --no-progress
36+
37+
- name: Execute type checking
38+
run: php vendor/bin/phpstan

.github/workflows/lint.yml

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
name: lint
2+
3+
on:
4+
push:
5+
branches: [ 'main' ]
6+
pull_request:
7+
workflow_dispatch:
8+
9+
jobs:
10+
lint:
11+
name: "Linting (PHP ${{ matrix.php-version }})"
12+
runs-on: "ubuntu-22.04"
13+
continue-on-error: true
14+
15+
strategy:
16+
matrix:
17+
php-version: [ "8.1" ]
18+
19+
env:
20+
COMPOSER_VERSION: 2
21+
COVERAGE_DRIVER: none
22+
23+
steps:
24+
- name: Checkout repository
25+
uses: actions/checkout@v3
26+
27+
- name: Setup PHP
28+
uses: shivammathur/setup-php@v2
29+
with:
30+
php-version: ${{ matrix.php-version }}
31+
coverage: ${{ env.COVERAGE_DRIVER }}
32+
tools: composer:${{ env.COMPOSER_VERSION }}
33+
34+
- name: Install dependencies
35+
run: composer install --no-interaction --prefer-dist --no-progress
36+
37+
- name: Run PHP-CS-Fixer
38+
run: php vendor/bin/php-cs-fixer fix --config .php-cs-fixer.dist.php --verbose --dry-run
39+
40+
41+
validate:
42+
name: "Validating composer.json"
43+
runs-on: "ubuntu-22.04"
44+
continue-on-error: true
45+
46+
env:
47+
COMPOSER_VERSION: 2
48+
49+
steps:
50+
- name: Checkout repository
51+
uses: actions/checkout@v3
52+
53+
- name: Setup PHP
54+
uses: shivammathur/setup-php@v2
55+
with:
56+
tools: composer:${{ env.COMPOSER_VERSION }}
57+
58+
- name: Run composer validate
59+
run: composer validate

.github/workflows/main.yml

Lines changed: 0 additions & 67 deletions
This file was deleted.

.github/workflows/test.yml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
name: test
2+
3+
on:
4+
push:
5+
branches: ['main']
6+
pull_request:
7+
workflow_dispatch:
8+
9+
jobs:
10+
unit:
11+
name: "Unit and mutation testing (PHP ${{ matrix.php-version }})"
12+
runs-on: "ubuntu-22.04"
13+
continue-on-error: true
14+
15+
strategy:
16+
matrix:
17+
php-version: [ "7.4", "8.0", "8.1", "8.2" ]
18+
19+
env:
20+
COMPOSER_VERSION: 2
21+
COVERAGE_DRIVER: xdebug
22+
MINIMUM_COVERAGE_PERCENTAGE: 90
23+
MINIMUM_MSI_PERCENTAGE: 80
24+
25+
steps:
26+
- name: Checkout repository
27+
uses: actions/checkout@v3
28+
29+
- name: Setup PHP
30+
uses: shivammathur/setup-php@v2
31+
with:
32+
php-version: ${{ matrix.php-version }}
33+
coverage: ${{ env.COVERAGE_DRIVER }}
34+
ini-values: memory_limit=512M, xdebug.mode=off
35+
tools: composer:${{ env.COMPOSER_VERSION }}
36+
37+
- name: Install dependencies
38+
run: composer install --no-interaction --prefer-dist --no-progress
39+
40+
- name: Run unit tests
41+
run: XDEBUG_MODE=coverage php vendor/bin/phpunit --testsuite unit
42+
43+
- name: Check coverage
44+
run: php vendor/bin/coverage-check coverage/clover.xml ${{ env.MINIMUM_COVERAGE_PERCENTAGE }}
45+
46+
- name: Run end-to-end tests
47+
run: php vendor/bin/phpunit --testsuite end-to-end --no-coverage
48+
49+
- name: Run mutation tests
50+
run: XDEBUG_MODE=coverage php vendor/bin/infection --show-mutations --min-msi=${{ env.MINIMUM_MSI_PERCENTAGE }} --threads=4

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
.DS_Store
22
composer.lock
3+
coverage/
4+
doxygen/
35
phpunit.xml
46
vendor/
57
*.idea

0 commit comments

Comments
 (0)