Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions .github/actions/codecov-report/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,29 +20,29 @@ runs:
using: composite
steps:
- name: Download base commit SHA artifact
if: ${{ github.event_name == 'pull_request' && inputs.php-version == '8.2' && inputs.dependencies == 'locked' }}
if: ${{ github.event_name == 'pull_request' && inputs.php-version == '8.3' && inputs.dependencies == 'locked' }}
uses: dawidd6/action-download-artifact@v11
with:
workflow: test-suite.yml
name: codecov-base-commit-sha-${{ inputs.base-branch }}
search_artifacts: true

- name: Read base commit SHA
if: ${{ github.event_name == 'pull_request' && inputs.php-version == '8.2' && inputs.dependencies == 'locked' }}
if: ${{ github.event_name == 'pull_request' && inputs.php-version == '8.3' && inputs.dependencies == 'locked' }}
shell: bash
run: |
ARTIFACT_CONTENT=$(cat codecov-base-commit-sha-${{ inputs.base-branch }}.txt)
echo "codecov_base_commit_sha=$ARTIFACT_CONTENT" >> $GITHUB_ENV

- name: Upload test results (baseline)
if: ${{ github.event_name == 'push' && !cancelled() && inputs.php-version == '8.2' && inputs.dependencies == 'locked' }}
if: ${{ github.event_name == 'push' && !cancelled() && inputs.php-version == '8.3' && inputs.dependencies == 'locked' }}
uses: codecov/test-results-action@v1
with:
token: ${{ inputs.token }}
directory: ./var/phpunit/logs

- name: Upload code coverage (baseline)
if: ${{ github.event_name == 'push' && !cancelled() && inputs.php-version == '8.2' && inputs.dependencies == 'locked' }}
if: ${{ github.event_name == 'push' && !cancelled() && inputs.php-version == '8.3' && inputs.dependencies == 'locked' }}
uses: codecov/codecov-action@v5
with:
token: ${{ inputs.token }}
Expand All @@ -65,7 +65,7 @@ runs:
commit_parent: ${{ env.codecov_base_commit_sha }}

- name: Get branch name and commit SHA
if: ${{ github.event_name == 'push' && inputs.php-version == '8.2' && inputs.dependencies == 'locked' }}
if: ${{ github.event_name == 'push' && inputs.php-version == '8.3' && inputs.dependencies == 'locked' }}
shell: bash
run: |
branch_name=${GITHUB_REF#refs/heads/}
Expand All @@ -74,20 +74,20 @@ runs:
echo "codecov_commit_sha=$commit_sha" >> $GITHUB_ENV

- name: Save commit SHA to file
if: ${{ github.event_name == 'push' && inputs.php-version == '8.2' && inputs.dependencies == 'locked' }}
if: ${{ github.event_name == 'push' && inputs.php-version == '8.3' && inputs.dependencies == 'locked' }}
shell: bash
run: echo -n "${{ env.codecov_commit_sha }}" > codecov-base-commit-sha-${{ env.codecov_branch_name }}.txt

- name: Upload commit SHA as artifact
if: ${{ github.event_name == 'push' && inputs.php-version == '8.2' && inputs.dependencies == 'locked' }}
if: ${{ github.event_name == 'push' && inputs.php-version == '8.3' && inputs.dependencies == 'locked' }}
uses: actions/upload-artifact@v4
with:
name: codecov-base-commit-sha-${{ env.codecov_branch_name }}
path: codecov-base-commit-sha-${{ env.codecov_branch_name }}.txt
overwrite: true

- name: Add SHA to step summary
if: ${{ github.event_name == 'push' && inputs.php-version == '8.2' && inputs.dependencies == 'locked' }}
if: ${{ github.event_name == 'push' && inputs.php-version == '8.3' && inputs.dependencies == 'locked' }}
shell: bash
run: |
echo "Baseline commit SHA for Codecov: ${{ env.codecov_commit_sha }}" >> $GITHUB_STEP_SUMMARY
6 changes: 3 additions & 3 deletions .github/workflows/baseline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
dependencies:
- "locked"
php-version:
- "8.2"
- "8.3"

steps:
- name: "Checkout"
Expand Down Expand Up @@ -99,7 +99,7 @@ jobs:
dependencies:
- "locked"
php-version:
- "8.2"
- "8.3"

steps:
- name: "Set Git Ref"
Expand Down Expand Up @@ -157,7 +157,7 @@ jobs:
fail-fast: false
matrix:
php-version:
- "8.2"
- "8.3"

steps:
- name: "Checkout"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
- name: "Setup PHP Environment"
uses: "./.github/actions/setup-php-env"
with:
php-version: "8.2"
php-version: "8.3"
dependencies: "locked"
coverage: "none"
extensions: ':psr, bcmath, dom, hash, json, mbstring, xml, xmlwriter, xmlreader, zlib'
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/job-benchmark-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
dependencies:
- "locked"
php-version:
- "8.2"
- "8.3"
operating-system:
- "ubuntu-latest"

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/job-examples.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ jobs:
fail-fast: false
matrix:
php-version:
- "8.2"
- "8.3"

steps:
- name: "Checkout"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/job-extension-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@ jobs:
dependencies:
- "locked"
php-version:
- "8.2"
- "8.3"
- "8.4"
- "8.5"
operating-system:
- "ubuntu-latest"

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/job-mutation-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
dependencies:
- "locked"
php-version:
- "8.2"
- "8.3"
operating-system:
- "ubuntu-latest"

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/job-pg-query-extension.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
strategy:
fail-fast: false
matrix:
php: ['8.2', '8.3', '8.4']
php: ['8.3', '8.4', '8.5']

steps:
- uses: actions/checkout@v5
Expand Down Expand Up @@ -60,7 +60,7 @@ jobs:
- name: Setup PHP Environment
uses: ./.github/actions/setup-php-env
with:
php-version: '8.2'
php-version: '8.3'
dependencies: locked
extensions: ':psr, bcmath, dom, hash, json, mbstring, xml, xmlwriter, xmlreader, zlib'
tools: 'composer:v2, phpize, php-config'
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/job-static-analyze.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
dependencies:
- "locked"
php-version:
- "8.2"
- "8.3"
operating-system:
- "ubuntu-latest"

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/job-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -61,9 +61,9 @@ jobs:
matrix:
dependencies: ${{ fromJSON(inputs.dependencies) }}
php-version:
- "8.2"
- "8.3"
- "8.4"
- "8.5"
operating-system:
- "ubuntu-latest"

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
strategy:
matrix:
php-version:
- "8.2"
- "8.3"
operating-system:
- "ubuntu-latest"

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test-website.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
fail-fast: false
matrix:
php-version:
- "8.2"
- "8.3"
operating-system:
- "ubuntu-latest"

Expand Down
6 changes: 3 additions & 3 deletions .nix/pkgs/php-brotli/package.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@

php.buildPecl {
pname = "brotli";
version = "0.13.1";
version = "0.18.3";

src = fetchFromGitHub {
owner = "kjdev";
repo = "php-ext-brotli";
tag = "0.13.1";
hash = "sha256-bdnTEEJUPe+VvXjncKbIi4wfnEn9UH7OBTKiUCET+qQ=";
tag = "0.18.3";
hash = "sha256-kIsQHgiCYcoa5+5wXjA+VCrMj7ZFLunOCOeG5DFD62k=";
fetchSubmodules = true;
};
}
6 changes: 3 additions & 3 deletions .nix/pkgs/php-lz4/package.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

php.buildPecl {
pname = "lz4";
version = "0.4.4";
version = "0.6.0";

src = fetchFromGitHub {
owner = "kjdev";
repo = "php-ext-lz4";
tag = "0.4.4";
hash = "sha256-iKgMN77W5iR3jwOwKNwIpuLwkeDkQVTIppEp4fF1oZw=";
tag = "0.6.0";
hash = "sha256-F98nSyQG/je9Sggugb6wJbgHR3DPAG9r4Y4eQSDlntI=";
fetchSubmodules = true;
};
}
4 changes: 2 additions & 2 deletions .nix/pkgs/php-snappy/package.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@

php.buildPecl {
pname = "snappy";
version = "0.2.1";
version = "0.2.3";

src = fetchFromGitHub {
owner = "kjdev";
repo = "php-ext-snappy";
tag = "0.2.1";
tag = "0.2.3";
hash = "sha256-PAKdIcpJKH6d74EulYQepP4XbQvccrj1nEuir47vro4=";
fetchSubmodules = true;
};
Expand Down
6 changes: 3 additions & 3 deletions .nix/pkgs/php-zstd/package.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

php.buildPecl {
pname = "zstd";
version = "0.14.0";
version = "0.15.2";

src = fetchFromGitHub {
owner = "kjdev";
repo = "php-ext-zstd";
tag = "0.14.0";
hash = "sha256-oIbvaLYQ6Tp20Y/UEN7i1dtMnxGdMNcIjv6xRCyVYdE=";
tag = "0.15.2";
hash = "sha256-AhEEHtETALgYkJxDfRA6/bx6yZKpsfL48MqO505FAFI=";
fetchSubmodules = true;
};
}
26 changes: 16 additions & 10 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Stage 1: Build stage
ARG FLOW_PHP_VERSION=8.2.27
ARG FLOW_BASE_IMAGE_TAG_SUFFIX=cli-alpine3.20
ARG FLOW_PHP_VERSION=8.3.28
ARG FLOW_BASE_IMAGE_TAG_SUFFIX=cli-alpine3.23
ARG FLOW_BASE_IMAGE_TAG=${FLOW_PHP_VERSION}-${FLOW_BASE_IMAGE_TAG_SUFFIX}
ARG FLOW_BASE_IMAGE=php:${FLOW_BASE_IMAGE_TAG}

Expand All @@ -15,15 +15,21 @@ RUN apk update && apk add --no-cache \
postgresql-dev \
sqlite-dev \
libpq \
curl \
build-base \
autoconf \
automake \
libtool \
protobuf-dev \
protobuf-c-dev \
&& docker-php-ext-install bcmath gmp pdo_mysql pdo_pgsql pdo_sqlite \
&& git clone --recursive --depth=1 https://github.com/kjdev/php-ext-snappy.git /tmp/php-ext-snappy \
&& cd /tmp/php-ext-snappy \
&& phpize \
&& ./configure \
&& make \
&& make install \
&& docker-php-ext-enable snappy \
&& rm -rf /tmp/php-ext-snappy
&& curl -L https://github.com/php/pie/releases/latest/download/pie.phar -o /usr/local/bin/pie \
&& chmod +x /usr/local/bin/pie \
&& php /usr/local/bin/pie install kjdev/brotli \
&& php /usr/local/bin/pie install kjdev/lz4 \
&& php /usr/local/bin/pie install kjdev/snappy \
&& php /usr/local/bin/pie install kjdev/zstd \
&& php /usr/local/bin/pie install flow-php/pg-query-ext:1.x-dev

# Stage 2: Final Image
FROM ${FLOW_BASE_IMAGE} AS flow
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ Flow is a PHP-based, strongly typed data processing framework with a low memory
- <img src="https://cdn.prod.website-files.com/6257adef93867e50d84d30e2/636e0a69f118df70ad7828d4_icon_clyde_blurple_RGB.svg" width="16px" height="16px" alt="Discord"> [Discord Server](https://discord.gg/5dNXfQyACW)

Supported PHP
versions: [![PHP 8.2](https://img.shields.io/badge/php-~8.2-8892BF.svg)](https://php.net/) [![PHP 8.3](https://img.shields.io/badge/php-~8.3-8892BF.svg)](https://php.net/) [![PHP 8.4](https://img.shields.io/badge/php-~8.4-8892BF.svg)](https://php.net/)
versions: [![PHP 8.3](https://img.shields.io/badge/php-~8.3-8892BF.svg)](https://php.net/) [![PHP 8.4](https://img.shields.io/badge/php-~8.4-8892BF.svg)](https://php.net/) [![PHP 8.4](https://img.shields.io/badge/php-~8.5-8892BF.svg)](https://php.net/)

Supported Operating Systems
- Linux
Expand Down
4 changes: 2 additions & 2 deletions bin/docs.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@

require __DIR__ . '/../vendor/autoload.php';

if (version_compare(PHP_VERSION, '8.3', '>=')) {
print PHP_EOL . 'This app can be run only on PHP 8.2' . PHP_EOL;
if (version_compare(PHP_VERSION, '8.4', '>=')) {
print PHP_EOL . 'Building docs can be run only on the lowest supported version of PHP: 8.3' . PHP_EOL;

exit(1);
}
Expand Down
6 changes: 5 additions & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
"load"
],
"require": {
"php": "~8.2.0 || ~8.3.0 || ~8.4.0",
"php": "~8.3.0 || ~8.4.0 || ~8.5.0",
"ext-bcmath": "*",
"ext-dom": "*",
"ext-hash": "*",
Expand Down Expand Up @@ -417,6 +417,7 @@
"tools/phpbench/vendor/bin/phpbench run --report=flow-report --group=parquet-library"
],
"test:mutation": [
"Composer\\Config::disableProcessTimeout",
"tools/infection/vendor/bin/infection --threads=max"
],
"test:monorepo": "tools/monorepo/vendor/bin/monorepo-builder validate",
Expand Down Expand Up @@ -450,6 +451,9 @@
"cd wasm && ./build.sh",
"@build:phar"
],
"build:docker": [
"docker buildx build -t flow-php/flow:latest . --progress=plain --load"
],
"build:docs": [
"bin/docs.php dsl:dump web/landing/resources/dsl.json",
"bin/docs.php api:dump web/landing/resources/api.json"
Expand Down
Loading