Skip to content

Commit f0f0cdc

Browse files
authored
Merge pull request #708 from reliforp/claude/review-readme-docs-3YOmC
Lower minimum PHP version requirement from 8.5 to 8.4
2 parents f97a4a3 + 101da2e commit f0f0cdc

9 files changed

Lines changed: 34 additions & 25 deletions

File tree

.github/workflows/phpcs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
- name: Setup PHP Action
2828
uses: shivammathur/setup-php@v2
2929
with:
30-
php-version: 8.5
30+
php-version: 8.4
3131
extensions: dom, mbstring
3232
coverage: none
3333
tools: cs2pr

.github/workflows/phpunit.yml

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,19 @@ on:
1919
jobs:
2020

2121
phpunit-unit:
22-
name: phpunit (unit)
22+
name: phpunit (unit, PHP ${{ matrix.php-version }})
2323
runs-on: ubuntu-latest
24+
strategy:
25+
fail-fast: false
26+
matrix:
27+
php-version: ['8.4', '8.5']
2428
steps:
2529
- uses: actions/checkout@v6
2630

2731
- name: Setup PHP Action
2832
uses: shivammathur/setup-php@v2
2933
with:
30-
php-version: 8.5
34+
php-version: ${{ matrix.php-version }}
3135
extensions: ffi, dom, mbstring
3236
coverage: pcov
3337

@@ -39,8 +43,8 @@ jobs:
3943
uses: actions/cache@v5
4044
with:
4145
path: ${{ steps.composer-cache.outputs.dir }}
42-
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
43-
restore-keys: ${{ runner.os }}-composer-
46+
key: ${{ runner.os }}-composer-${{ matrix.php-version }}-${{ hashFiles('**/composer.json') }}
47+
restore-keys: ${{ runner.os }}-composer-${{ matrix.php-version }}-
4448

4549
- name: Validate composer.json and composer.lock
4650
run: composer validate
@@ -68,7 +72,7 @@ jobs:
6872
with:
6973
github-token: ${{ secrets.GITHUB_TOKEN }}
7074
file: build/logs/clover.xml
71-
flag-name: unit
75+
flag-name: unit-php${{ matrix.php-version }}
7276
parallel: true
7377

7478
build-dev-image:
@@ -425,15 +429,19 @@ jobs:
425429
image: ${{ env.IMAGE }}:${{ steps.hash.outputs.tag }}
426430

427431
phpunit-unit-arm64:
428-
name: phpunit (unit, ARM64)
432+
name: phpunit (unit, PHP ${{ matrix.php-version }}, ARM64)
429433
runs-on: ubuntu-24.04-arm
434+
strategy:
435+
fail-fast: false
436+
matrix:
437+
php-version: ['8.4', '8.5']
430438
steps:
431439
- uses: actions/checkout@v6
432440

433441
- name: Setup PHP Action
434442
uses: shivammathur/setup-php@v2
435443
with:
436-
php-version: 8.5
444+
php-version: ${{ matrix.php-version }}
437445
extensions: ffi, dom, mbstring
438446
coverage: pcov
439447

@@ -445,8 +453,8 @@ jobs:
445453
uses: actions/cache@v5
446454
with:
447455
path: ${{ steps.composer-cache.outputs.dir }}
448-
key: ${{ runner.os }}-${{ runner.arch }}-composer-${{ hashFiles('**/composer.json') }}
449-
restore-keys: ${{ runner.os }}-${{ runner.arch }}-composer-
456+
key: ${{ runner.os }}-${{ runner.arch }}-composer-${{ matrix.php-version }}-${{ hashFiles('**/composer.json') }}
457+
restore-keys: ${{ runner.os }}-${{ runner.arch }}-composer-${{ matrix.php-version }}-
450458

451459
- name: Install dependencies
452460
run: composer install --prefer-dist --no-progress --no-suggest
@@ -465,7 +473,7 @@ jobs:
465473
with:
466474
github-token: ${{ secrets.GITHUB_TOKEN }}
467475
file: build/logs/clover.xml
468-
flag-name: unit-arm64
476+
flag-name: unit-arm64-php${{ matrix.php-version }}
469477
parallel: true
470478

471479
build-test-mysql-images-arm64:

.github/workflows/static-analysis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
- name: Setup PHP Action
2828
uses: shivammathur/setup-php@v2
2929
with:
30-
php-version: 8.5
30+
php-version: 8.4
3131
extensions: dom, mbstring
3232
coverage: none
3333

Dockerfile-dev

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM php:8.5-cli-bookworm
1+
FROM php:8.4-cli-bookworm
22

33
RUN apt-get update && apt-get install -y \
44
libffi-dev \

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<img src="docs/images/logos/banner_bg_white.png" alt="Reli" width="100%">
33
</h1>
44

5-
![PHP (runner): 8.5.0+](https://img.shields.io/badge/php%20%28runner%29-8.5.0%2B-blue.svg)
5+
![PHP (runner): 8.4.0+](https://img.shields.io/badge/php%20%28runner%29-8.4.0%2B-blue.svg)
66
![PHP (target): 7.0+](https://img.shields.io/badge/php%20%28target%29-7.0%2B-8892BF.svg)
77
[![Packagist](https://img.shields.io/packagist/v/reliforp/reli-prof.svg)](https://packagist.org/packages/reliforp/reli-prof)
88
[![Github Actions](https://github.com/reliforp/reli-prof/workflows/build/badge.svg)](https://github.com/reliforp/reli-prof/actions)

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
"minimum-stability": "dev",
1818
"prefer-stable": true,
1919
"require": {
20-
"php": "^8.5",
20+
"php": "^8.4",
2121
"ext-ffi": "*",
2222
"ext-filter": "*",
2323
"ext-json": "*",

composer.lock

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/bench/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,8 @@ literature cited in the comparison doc.
172172
measuring baseline; the current scripts load it correctly.
173173
- **phpspy** is built from upstream HEAD, attached at 1 ms
174174
sampling.
175-
- **reli** runs from this repo on PHP 8.5 (per `composer.json`),
175+
- **reli** runs from this repo on PHP 8.5 (the runner floor in
176+
`composer.json` is `^8.4`; these benchmarks were captured on 8.5),
176177
attached to the PHP 8.4 target via the `-- cmd args` form so
177178
reli's startup happens before the timed code begins. The 1 ms
178179
sampling period is set with `--sleep-ns 1000000`.

docs/getting-started.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ For the full catalogue of tasks-and-commands, see the
3939

4040
### Runtime
4141

42-
- PHP 8.5+ (NTS / ZTS)
42+
- PHP 8.4+ (NTS / ZTS)
4343
- 64bit Linux x86_64 (or AArch64, experimental)
4444
- `FFI` extension enabled
4545
- `PCNTL` extension enabled
@@ -61,7 +61,8 @@ For the full catalogue of tasks-and-commands, see the
6161
## 1. Install
6262

6363
The Docker image is the easiest starting point — PHP 8.5, FFI, and
64-
PCNTL pre-built, no host toolchain needed. A one-line command
64+
PCNTL pre-built, no host toolchain needed (the published image runs
65+
on PHP 8.5 even though the supported runner floor is 8.4). A one-line command
6566
installs a shell function `reli` so the rest of this doc works
6667
exactly as written, with no docker flag incantations to remember:
6768

@@ -116,11 +117,10 @@ composer install
116117
> Git) the equivalent command is `./reli` — substitute as you read.
117118
>
118119
> The `./reli` shebang is `#!/usr/bin/env php`, so the `php` on your
119-
> `PATH` must be **8.5+**. On distros that ship an older default
120-
> (e.g. Ubuntu with `php8.4-cli` from deadsnakes/sury), either install
121-
> `php8.5-cli` and switch the default — `sudo update-alternatives
122-
> --set php /usr/bin/php8.5` — or invoke explicitly with
123-
> `php8.5 ./reli ...`. The Docker wrapper sidesteps this entirely.
120+
> `PATH` must be **8.4+**. If your default is older, install
121+
> `php8.4-cli` and switch the default — `sudo update-alternatives
122+
> --set php /usr/bin/php8.4` — or invoke explicitly with
123+
> `php8.4 ./reli ...`. The Docker wrapper sidesteps this entirely.
124124
125125
## 2. Smoke test
126126

0 commit comments

Comments
 (0)