Skip to content

Commit caaae07

Browse files
committed
initial commit
0 parents  commit caaae07

File tree

51 files changed

+3466
-0
lines changed

Some content is hidden

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

51 files changed

+3466
-0
lines changed

.gitattributes

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# This file was generated by the lean package validator (http://git.io/lean-package-validator).
2+
3+
* text=auto eol=lf
4+
5+
.gitattributes export-ignore
6+
.github/ export-ignore
7+
.gitignore export-ignore
8+
.php-cs-fixer.php export-ignore
9+
.php_cs export-ignore
10+
infection.json export-ignore
11+
LICENSE export-ignore
12+
phpstan.neon export-ignore
13+
phpunit.xml export-ignore
14+
sonar-project.properties export-ignore
15+
tests/ export-ignore

.github/workflows/ci.yml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
schedule:
6+
- cron: "0 0 * * *"
7+
8+
jobs:
9+
php83:
10+
name: PHP 8.3
11+
runs-on: ubuntu-24.04
12+
steps:
13+
- name: checkout
14+
uses: actions/checkout@v4
15+
- name: composer test
16+
uses: docker://ghcr.io/chubbyphp/ci-php83:latest
17+
env:
18+
COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }}
19+
STRYKER_DASHBOARD_API_KEY: ${{ secrets.STRYKER_DASHBOARD_API_KEY }}
20+
php84:
21+
name: PHP 8.4
22+
runs-on: ubuntu-24.04
23+
steps:
24+
- name: checkout
25+
uses: actions/checkout@v4
26+
- name: composer test
27+
uses: docker://ghcr.io/chubbyphp/ci-php84:latest
28+
env:
29+
COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }}
30+
STRYKER_DASHBOARD_API_KEY: ${{ secrets.STRYKER_DASHBOARD_API_KEY }}
31+
php85:
32+
name: PHP 8.5
33+
runs-on: ubuntu-24.04
34+
steps:
35+
- name: checkout
36+
uses: actions/checkout@v4
37+
- name: composer test
38+
uses: docker://ghcr.io/chubbyphp/ci-php85:latest
39+
env:
40+
COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }}
41+
STRYKER_DASHBOARD_API_KEY: ${{ secrets.STRYKER_DASHBOARD_API_KEY }}
42+
- name: sonarcloud.io
43+
uses: sonarsource/sonarqube-scan-action@v6.0.0
44+
env:
45+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
46+
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}

.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
.DS_Store
2+
.idea/
3+
.phpunit.cache
4+
.vscode/
5+
build/
6+
composer.lock
7+
vendor/

.php-cs-fixer.php

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
$finder = PhpCsFixer\Finder::create()
6+
->files()
7+
->name('*.php')
8+
->in(__DIR__ . '/src')
9+
->in(__DIR__ . '/tests')
10+
;
11+
12+
/** @var array $config */
13+
$config = require __DIR__ . '/vendor/chubbyphp/chubbyphp-dev-helper/phpcs.php';
14+
15+
return (new PhpCsFixer\Config)
16+
->setUnsupportedPhpVersionAllowed(true)
17+
->setIndent($config['indent'])
18+
->setLineEnding($config['lineEnding'])
19+
->setRules($config['rules'])
20+
->setRiskyAllowed($config['riskyAllowed'])
21+
->setFinder($finder)
22+
;

LICENSE

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
Copyright (c) 2026 Dominik Zogg
2+
3+
Permission is hereby granted, free of charge, to any person obtaining a copy
4+
of this software and associated documentation files (the "Software"), to deal
5+
in the Software without restriction, including without limitation the rights
6+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7+
copies of the Software, and to permit persons to whom the Software is furnished
8+
to do so, subject to the following conditions:
9+
10+
The above copyright notice and this permission notice shall be included in all
11+
copies or substantial portions of the Software.
12+
13+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19+
THE SOFTWARE.

0 commit comments

Comments
 (0)