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
13 changes: 10 additions & 3 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,16 +1,23 @@
{
"name": "colopl_bc: Pskel (for Codespaces)",
"name": "colopl_bc: Pskel",
"customizations": {
"vscode": {
"extensions": [
"ms-vscode.cpptools",
"ms-vscode.cpptools-extension-pack",
"maelvalais.autoconf",
"ms-azuretools.vscode-docker",
"editorconfig.editorconfig"
"editorconfig.editorconfig",
"markis.code-coverage"
]
}
},
"dockerComposeFile": "./../compose.yaml",
"service": "shell"
"service": "shell",
"mounts": [
"source=${localWorkspaceFolder},target=/workspace,type=bind,consistency=cached"
],
"workspaceFolder": "/workspace",
"initializeCommand": "git submodule update --init --recursive",
"postCreateCommand": "ln -sf \"$(pwd)/pskel.sh\" /usr/local/bin/pskel"
}
20 changes: 0 additions & 20 deletions .devcontainer/local/devcontainer.json

This file was deleted.

32 changes: 19 additions & 13 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,15 +1,21 @@
# Exclude non-essential files from git archive (used by PIE/Composer downloads)
/.github/ export-ignore
/build/ export-ignore
/patches/ export-ignore
/tests/ export-ignore
/third_party/ export-ignore
/ext/tests/ export-ignore
# Exclude devcontainer and editor metadata from git archive
/.devcontainer/ export-ignore
/.dockerignore export-ignore
/.editorconfig export-ignore
/.github/ export-ignore
/.gitmodules export-ignore
/.vscode/ export-ignore
/build/ export-ignore
/patches/ export-ignore
/tests/ export-ignore
/third_party/ export-ignore
/ext/tests/ export-ignore
/ext/description-pak export-ignore
Dockerfile export-ignore
compose.yaml export-ignore
library_test.sh export-ignore
phpstan.neon export-ignore
phpunit.xml export-ignore
pskel.sh export-ignore
CHANGELOG.md export-ignore
Dockerfile export-ignore
compose.yaml export-ignore
library_test.sh export-ignore
phpstan.neon export-ignore
phpunit.xml export-ignore
pskel.sh export-ignore
CHANGELOG.md export-ignore
37 changes: 37 additions & 0 deletions .github/workflows/ci_coverage.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,16 @@ jobs:
touch "lcov.info"
docker compose run -v "$(pwd)/lcov.info:/ext/lcov.info" --rm shell pskel coverage
mv "lcov.info" "${{ matrix.platform }}_${{ matrix.versions }}_${{ matrix.ts }}_lcov.info"
- name: Verify shard function coverage records
run: |
COVERAGE_FILE="${{ matrix.platform }}_${{ matrix.versions }}_${{ matrix.ts }}_lcov.info"
for RECORD in "FN:" "FNDA:" "FNF:" "FNH:"; do
if ! grep -q "^${RECORD}" "${COVERAGE_FILE}"; then
echo "Missing ${RECORD} records in ${COVERAGE_FILE}"
exit 1
fi
done
lcov --summary "${COVERAGE_FILE}"
- name: Upload coverage artifact
uses: actions/upload-artifact@v7
with:
Expand Down Expand Up @@ -137,6 +147,24 @@ jobs:
with:
name: initialized-ext-coverage
path: ext/
- name: Verify downloaded function coverage records
run: |
cd "coverage-files" || exit 1
set -- ./*.info
if test "${1}" = "./*.info"; then
echo "No coverage .info files found"
exit 1
fi
for INFO_FILE in "$@"; do
for RECORD in "FN:" "FNDA:" "FNF:" "FNH:"; do
if ! grep -q "^${RECORD}" "${INFO_FILE}"; then
echo "Missing ${RECORD} records in ${INFO_FILE} before merge"
exit 1
fi
done
lcov --summary "${INFO_FILE}"
done
cd - || exit 1
- name: Generate integrated HTML coverage reports
run: |
if ! test -d "/ext"; then
Expand Down Expand Up @@ -165,6 +193,15 @@ jobs:
genhtml "total.info" \
--output-directory "coverage-html" \
--title "Extension code coverage"
- name: Verify merged function coverage records
run: |
for RECORD in "FN:" "FNDA:" "FNF:" "FNH:"; do
if ! grep -q "^${RECORD}" "total.info"; then
echo "Missing ${RECORD} records in total.info after merge"
exit 1
fi
done
lcov --summary "total.info"
- name: Setup Pages
uses: actions/configure-pages@v6
- name: Upload Pages artifact
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci_emulated_linux.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ jobs:
- name: Generate image tag
id: image-tag
run: |
TAG="ghcr.io/${{ github.repository }}/ci-emulated-cache:${{ steps.cut-arch.outputs.arch }}-${{ matrix.version }}-${{ matrix.type }}-${{ matrix.distro }}-${{ hashFiles('**/Dockerfile', '**/compose.yaml', '**/pskel.sh') }}"
TAG="ghcr.io/${{ github.repository }}/ci-emulated-cache:${{ steps.cut-arch.outputs.arch }}-${{ matrix.version }}-${{ matrix.type }}-${{ matrix.distro }}-${{ hashFiles('**/Dockerfile', '**/compose.yaml', '**/pskel.sh', '.pskel/**') }}"
echo "tag=${TAG}" >> $GITHUB_OUTPUT
- name: Check if image exists
id: check-image
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/ci_native_linux.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,9 @@ jobs:
docker compose build --no-cache --build-arg IMAGE="php" --build-arg TAG="${{ matrix.version }}-${{ matrix.type }}-${{ matrix.distro }}"
- name: Test extension with Bundled PHP
run: docker compose run --rm -v "$(pwd)/php-cache:/opt/php-cache" -e PHP_CACHE_DIR="/opt/php-cache" -e GITHUB_ACTIONS="true" -e CONTAINER_IMAGE_HASH="${{ steps.pull-image.outputs.image_hash }}" shell pskel test
- name: Test extension with PHP Debug Build
- name: Test extension with PHP Debug Build (in-tree static)
if: matrix.version != '8.1'
run: docker compose run --rm -v "$(pwd)/php-cache:/opt/php-cache" -e PHP_CACHE_DIR="/opt/php-cache" -e GITHUB_ACTIONS="true" -e CONTAINER_IMAGE_HASH="${{ steps.pull-image.outputs.image_hash }}" shell pskel test debug
run: docker compose run --rm -v "$(pwd)/php-cache:/opt/php-cache" -e PHP_CACHE_DIR="/opt/php-cache" -e GITHUB_ACTIONS="true" -e CONTAINER_IMAGE_HASH="${{ steps.pull-image.outputs.image_hash }}" shell pskel test debug-static
- name: Test extension with Valgrind
if: matrix.distro != 'alpine' && matrix.version != '8.1'
run: docker compose run --rm -v "$(pwd)/php-cache:/opt/php-cache" -e PHP_CACHE_DIR="/opt/php-cache" -e GITHUB_ACTIONS="true" -e CONTAINER_IMAGE_HASH="${{ steps.pull-image.outputs.image_hash }}" shell pskel test valgrind
Expand Down
119 changes: 0 additions & 119 deletions .github/workflows/pie_release.yaml

This file was deleted.

Loading
Loading