Skip to content

Prepare for Matomo 6 - #9

Merged
snake14 merged 2 commits into
6.x-devfrom
prepare6x
Aug 10, 2026
Merged

snake14 merged 2 commits into
6.x-devfrom
prepare6x

Conversation

@sgiehl

@sgiehl sgiehl commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

Description

Prepares the plugin for Matomo 6.

  • plugin.json: version 5.0.1 → 6.0.0, and require.matomo → >=6.0.0-b1,<7.0.0-b1. The -b1
    lower bound is required so the plugin is not disabled against a beta core.
  • CHANGELOG.md: new 6.0.0 entry.
  • .github/workflows/phpcs.yml: the PHPCS job ran on PHP 7.4, which is below Matomo 6's PHP 8.1 floor.
    Bumped to 8.1. This workflow calls setup-php directly, so it does not go through the central
    matomo6_* alias resolver.

No code changes were needed. The Matomo 6 breaking-changes catalogue was swept against this repository —
removed PHP APIs, removed HTTP API methods, removed global functions, changed interfaces, the
Monolog 3 / PHP-DI 7 / Symfony 6.4 / php-tracker 4 dependency upgrades, the #[JsonResponse] controller
contract, removed Less variables and stylesheets, removed JS/Vue APIs, and the Jest → Vitest migration —
with no hits. The plugin's integration points were checked against core 6.x directly: the
Tracker.getJavascriptCode event still fires from core/Tracker/TrackerCodeGenerator.php, the
loadAsync key it writes is still part of $codeImpl and is still consumed as
$view->loadAsync = $codeImpl['loadAsync'], and EventDispatcher still honours the
array('function' => …, 'after' => true) registration form this plugin uses.

The plugin declares no composer.json, Updates/, vue/src, phpstan.neon or test workflows, so the
corresponding preparation steps do not apply.

Both commits are marked [ignore_release]: this only establishes Matomo 6 compatibility and nothing can
be released for Matomo 6 until core ships.

Issue No

Related to the Matomo 6 plugin preparation effort.

Steps to Replicate the Issue

  1. Mount the plugin into a Matomo 6 checkout (PHP 8.1, MySQL 8.0, Node 24) and activate it —
    ./console plugin:activate JsTrackerForceAsync succeeds.
  2. ./console core:update reports no pending migrations.
  3. ./vendor/bin/phpcs --standard=phpcs.xml passes on PHP 8.1.

Checklist

  • [✔] Tested locally or on demo2/demo3?
  • [NA] New test case added/updated?
  • [NA] Are all newly added texts included via translation?
  • [NA] Are text sanitized properly? (Eg use of v-text v/s v-html for vue)
  • [✔] Version bumped?
  • [✔] I have understood, reviewed, and tested all AI outputs before use
  • [✔] All AI instructions respect security, IP, and privacy rules
  • [NA] Documentation updated?

@sgiehl
sgiehl requested a review from a team August 10, 2026 20:48
@snake14
snake14 merged commit 13cb86e into 6.x-dev Aug 10, 2026
3 checks passed
@snake14
snake14 deleted the prepare6x branch August 10, 2026 23:03
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.

2 participants