Skip to content

Run plugin tests against MySQL 8.0 and MariaDB 10.6 - #224

Merged
sgiehl merged 2 commits into
prepare6xfrom
dev-20334
Jul 20, 2026
Merged

Run plugin tests against MySQL 8.0 and MariaDB 10.6#224
sgiehl merged 2 commits into
prepare6xfrom
dev-20334

Conversation

@sgiehl

@sgiehl sgiehl commented Jul 18, 2026

Copy link
Copy Markdown
Member

Summary

Updates the plugin test workflow to run against the new minimum supported database versions. It previously inherited the shared github-action-tests MySQL 5.7 default, which is below Matomo's new minimum (MySQL 8.0 / MariaDB 10.6).

Core PR: matomo-org/matomo#24858

  • PluginTests now runs a database matrix: MySQL 8.0 and MariaDB 10.6.
  • UI (and JS, where present) run on MySQL 8.0.

Checklist

  • [✔] I have understood, reviewed, and tested all AI outputs before use
  • [✔] All AI instructions respect security, IP, and privacy rules

The workflow inherited the shared action's MySQL 5.7 default, which is below
Matomo's new minimum. Pin the database-backed jobs to the supported floor:
PluginTests now runs a MySQL 8.0 + MariaDB 10.6 matrix, and the UI/JS jobs run
on MySQL 8.0.
PluginTests runs a MySQL + MariaDB matrix; the upload-artifacts condition
matched both legs and uploaded twice. Restrict the upload to the MySQL leg.
@sgiehl
sgiehl merged commit 2f40b22 into prepare6x Jul 20, 2026
12 checks passed
@sgiehl
sgiehl deleted the dev-20334 branch July 20, 2026 14:15
sgiehl added a commit that referenced this pull request Aug 9, 2026
* Run plugin tests against MySQL 8.0 and MariaDB 10.6

The workflow inherited the shared action's MySQL 5.7 default, which is below
Matomo's new minimum. Pin the database-backed jobs to the supported floor:
PluginTests now runs a MySQL 8.0 + MariaDB 10.6 matrix, and the UI/JS jobs run
on MySQL 8.0.

* Only upload plugin test artifacts for the MySQL matrix leg

PluginTests runs a MySQL + MariaDB matrix; the upload-artifacts condition
matched both legs and uploaded twice. Restrict the upload to the MySQL leg.
sgiehl added a commit that referenced this pull request Aug 10, 2026
* Prepare for Matomo 6

Bump plugin version to 6.0.0 and require Matomo >=6.0.0-b1,<7.0.0-b1.

* Raise minimum PHP requirements to PHP 8.1 (#223)

* Update min_php system test expected files for PHP 8.1

With the Matomo minimum PHP version raised to 8.1, the min_php_ baseline
cell now runs on PHP 8.1 instead of 7.2. PHP 8.0 made sorting stable, so
campaign rows with tied values aggregate/order as they already do on
8.2/8.5 - the regenerated min_php_ output is byte-identical to the
existing max baseline. Refs matomo-org/matomo#24638.

* adjust actions for  php 8.1

* Run plugin tests against MySQL 8.0 and MariaDB 10.6 (#224)

* Run plugin tests against MySQL 8.0 and MariaDB 10.6

The workflow inherited the shared action's MySQL 5.7 default, which is below
Matomo's new minimum. Pin the database-backed jobs to the supported floor:
PluginTests now runs a MySQL 8.0 + MariaDB 10.6 matrix, and the UI/JS jobs run
on MySQL 8.0.

* Only upload plugin test artifacts for the MySQL matrix leg

PluginTests runs a MySQL + MariaDB matrix; the upload-artifacts condition
matched both legs and uploaded twice. Restrict the upload to the MySQL leg.

* Update expected UI screenshots for the new headless Chrome (Node 24 / Puppeteer 24) (#225)

* Update expected UI screenshots for the new headless Chrome (Node 24 / Puppeteer 24)

* Re-sync expected UI screenshots for the new headless Chrome after rebase

Rendering drift only (identical content, minor line-height/AA shifts) under the
new headless Chrome used by the migrated screenshot-testing harness.

* Fix loaded_ecommerce capture: grow viewport so the sticky header stays at top

Under Puppeteer 24 an element screenshot of a report taller than the viewport leaves the
DataTable's position:sticky column header floating mid-table (captured at the scrolled
viewport position). Grow the viewport to fit the whole report before capturing so no
scrolling occurs and the header renders at the top. The live browser shows the report at
this (wider) width, so the capture now matches what users actually see.

* Sync corrected loaded_ecommerce screenshot (header at top)

* Run the plugin UI tests on Node 24

Match the Node 24 / Puppeteer 24 screenshot-testing stack; the UI job was still pinned to Node 16.

* Update UI screenshots (#226)

Teal brand screenshots on 6.x-dev plugin base; synced from matomo-org/matomo run 30405694397.

* update screenshot for sparkline redesign (#227)

* Update UI screenshots for the report header search

The DataTable search moved from the table footer into the shared ReportHeader
(matomo-org/matomo#24986), which changes every report screenshot.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* Add changelog entry for Matomo 6 compatibility [ignore_release]

* Use the matomo6 PHP version aliases in the test workflow [ignore_release]

The matrix pinned 8.1/8.5 as literals, which drift as soon as the supported
range moves. Resolve them through the central action instead.

* Update PHPStan config for Matomo 6 [ignore_release]

Raise phpVersion to the new 8.1 floor. PHPStan 2 fails on excludePaths entries
that match nothing, so drop the vendor/ entry - the plugin has no composer.json -
and mark github-action-tests/ optional, since it only exists during a CI run.

* Update UI screenshots for the collapsible report search [ignore_release]

Core replaced the always-visible search input in the report header with a
magnifier toggle in the icon row, which removes a row of vertical space from
every report widget.

---------

Co-authored-by: Thomas ZILLIOX <thomas.zilliox@innocraft.com>
Co-authored-by: Chip <chippison@users.noreply.github.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant