Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
f4c4ade
[TASK] Replace runTests.sh with latest version
calien666 Jun 1, 2026
6272806
[TASK] streamline composer
calien666 Jun 1, 2026
e5c2510
[TASK] Remove TCA deprecations and update Code Styling
calien666 Jun 1, 2026
a3ccde4
[TASK] Streamline test setup
calien666 Jun 1, 2026
588bcb2
[TASK] Add basic wizard test
calien666 Jun 1, 2026
5862e5b
[BUGFIX] Adopt new t3 link rendering
calien666 Jun 1, 2026
f6c1220
[TASK] phpstan updates and adoption of php version
calien666 Jun 1, 2026
5084516
[TASK] Install fixture-packages for dev and streamline functional tests
calien666 Jun 2, 2026
75e2228
[TASK] Remove v13 deprecations
calien666 Jun 2, 2026
6fe8e36
[TASK] Add github workflows for testing and publish
calien666 Jun 2, 2026
0cdc7d7
[TASK] Fix code styling and phpstan issues
calien666 Jun 2, 2026
faeb574
[TASK] Update phpParser integration
calien666 Jun 2, 2026
0bc656f
[TASK] Ensure single exception codes
calien666 Jun 2, 2026
f4fad41
[TASK] Enable all Event listeners with PHP Attribute
calien666 Jun 2, 2026
55890a1
[TASK] Adopt test data
calien666 Jun 2, 2026
5f720b4
[TASK] Services refactoring to attributes
calien666 Jun 2, 2026
72cf608
[!!!][TASK] Ensure file mountpoint is replaced on wizard run
calien666 Jun 2, 2026
982ca64
[TASK] Adjust runTests for correct php versions
calien666 Jun 2, 2026
02d064f
[TASK] Remove UnitTest deprecations
calien666 Jun 2, 2026
ab5c0f2
[TASK] Disable wizard run test for postgres
calien666 Jun 2, 2026
5ffbc60
[TASK] update typo3/cms-core dpenedency in composer.json to just acce…
foppelfb Jun 2, 2026
8a2719c
[TASK] Mark extension as stable and update version to 1.0.0
foppelfb Jun 2, 2026
84b8d0f
[DOCS] Update README with changelog for version 1.0.0
foppelfb Jun 2, 2026
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
80 changes: 80 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
name: publish
on:
push:
tags:
- '*'

jobs:
publish:
name: Ensure GitHub Release with extension TER artifact and publishing to TER
if: startsWith(github.ref, 'refs/tags/')
runs-on: ubuntu-latest
env:
TYPO3_API_TOKEN: ${{ secrets.TYPO3_API_TOKEN }}
permissions:
contents: write
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Verify tag
run: |
if ! [[ ${{ github.ref }} =~ ^refs/tags/[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$ ]]; then
echo "ERR: Invalid publish version tag: ${{ github.ref }}"
exit 1
fi

- name: Get version
id: get-version
run: echo "version=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_ENV

- name: Get extension key
id: get-extension-key
run: |
echo "DETECTED_EXTENSION_KEY=$(cat composer.json | jq -r '.extra."typo3/cms"."extension-key"' )" >> "$GITHUB_ENV"

- name: Get comment
id: get-comment
run: |
{
echo 'terReleaseNotes<<EOF'
echo "https://github.com/${{ github.repository }}/releases/tag/${{ env.version }}"
echo EOF
} >> "$GITHUB_ENV"

- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.1
extensions: intl, mbstring, json, zip, curl
tools: composer:v2

- name: Install tailor
run: composer global require typo3/tailor --prefer-dist --no-progress --no-suggest

# Note that step will fail when `env.version` does not match the `ext_emconf.php` version.
- name: Create local TER package upload artifact
run: |
php ~/.composer/vendor/bin/tailor create-artefact ${{ env.version }}

# Note that when release already exists for tag, only files will be uploaded and lets this acting as a
# fallback to ensure that a real GitHub release is created for the tag along with extension artifacts.
- name: Create release and upload artifacts in the same step
# @todo Revert to release version when https://github.com/softprops/action-gh-release/issues/628 is fixed.
uses: softprops/action-gh-release@da05d552573ad5aba039eaac05058a918a7bf631
# uses: softprops/action-gh-release@v2
if: ${{startsWith(github.ref, 'refs/tags/') }}
with:
name: "[RELEASE] ${{ env.version }}"
generate_release_notes: true
files: |
tailor-version-artefact/${{ env.DETECTED_EXTENSION_KEY }}_${{ env.version }}.zip
LICENSE
fail_on_unmatched_files: true

# @todo No public TER release yet. TER Upload package uploaded to GitHub release(s) can be used to
# upload versions later to TER manually when making extension public.
# - name: Publish to TER
# run: |
# php ~/.composer/vendor/bin/tailor ter:publish --comment "${{ env.terReleaseNotes }}" ${{ env.version }} \
# --artefact=tailor-version-artefact/${{ env.DETECTED_EXTENSION_KEY }}_${{ env.version }}.zip
83 changes: 83 additions & 0 deletions .github/workflows/testcore13.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
name: tests core 13

on:
pull_request:
workflow_dispatch:

jobs:
code-quality:
name: "code quality with core v13"
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
php-version: [ '8.2' ]
steps:
- name: "Checkout"
uses: actions/checkout@v6

- name: "Prepare dependencies for TYPO3 v13"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s composerUpdate"

- name: "Validate composer.json"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s composer -- validate --strict --no-check-lock --no-check-version"

- name: "Run PHP lint"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s lintPhp"

- name: "Validate CGL"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s cgl -n"

- name: "Ensure tests methods do not start with \"test\""
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s checkTestMethodsPrefix"

- name: "Ensure UTF-8 files do not contain BOM"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s checkBom"

- name: "Find duplicate exception codes"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s checkExceptionCodes"

# - name: "Run PHPStan"
# run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s phpstan"

testsuite:
name: all tests with core v13
runs-on: ubuntu-22.04
needs: code-quality
strategy:
fail-fast: false
matrix:
php-version: [ '8.2', '8.5' ]
steps:
- name: "Checkout"
uses: actions/checkout@v6

- name: "Prepare dependencies for TYPO3 v13"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s composerUpdate"

- name: "Run PHP lint"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s lintPhp"

- name: "Unit"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s unit"

- name: "Unit Random"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s unitRandom"

- name: "Functional SQLite"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s functional -d sqlite"

- name: "Functional MariaDB 10.5 mysqli"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s functional -d mariadb -a mysqli"

- name: "Functional MariaDB 10.5 pdo_mysql"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s functional -d mariadb -a pdo_mysql"

- name: "Functional MySQL 8.0 mysqli"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s functional -d mysql -a mysqli"

- name: "Functional MySQL 8.0 pdo_mysql"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s functional -d mysql -a pdo_mysql"

- name: "Functional PostgresSQL 10"
run: "Build/Scripts/runTests.sh -t 13 -p ${{ matrix.php-version }} -s functional -d postgres"
Loading