Skip to content

Remove the unminified Vue UMD bundle - #116

Merged
sgiehl merged 1 commit into
prepare6xfrom
remove-unminified-vue-umd
Aug 6, 2026
Merged

Remove the unminified Vue UMD bundle#116
sgiehl merged 1 commit into
prepare6xfrom
remove-unminified-vue-umd

Conversation

@sgiehl

@sgiehl sgiehl commented Aug 6, 2026

Copy link
Copy Markdown
Member

Description

Removes the unminified <Plugin>.umd.js Vue bundle, which is no longer built, and adds a .gitignore entry so it does not come back.

Matomo's Vue build used to run two full Vite passes per plugin, emitting an unminified <Plugin>.umd.js next to <Plugin>.umd.min.js. Only the minified bundle is ever served:

  • PluginUmdAssetFetcher::getUmdFileToUseForPlugin() and getAllPluginUmds() look exclusively for .umd.min.js.
  • Development mode uses .development.umd.js, produced by vue:build --watch and already gitignored.

The unminified pass was a leftover from Vue CLI, whose --target lib build emitted .common.js, .umd.js and .umd.min.js in one go. .common.js was gitignored away long ago; .umd.js survived only because it came for free.

Core change: matomo-org/matomo#25027. Once that lands, this file is no longer regenerated by vue:build.

Notes for review

  • Independent of core merge order — nothing reads .umd.js, and .umd.min.js is untouched, so this is safe to merge before or after the core PR.
  • No CI impact: this repository's workflows do not rebuild or diff Vue bundles.
  • The .gitignore pattern *.umd.js does not match *.umd.min.js.

Checklist

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

Matomo's Vue build no longer emits <Plugin>.umd.js. Only the minified
AnonymousPiwikUsageMeasurement.umd.min.js is ever served: PluginUmdAssetFetcher looks exclusively for
.umd.min.js, and development mode uses the .development.umd.js produced by
vue:build --watch.

The unminified bundle was a leftover from Vue CLI, whose lib build emitted it
alongside the minified one for free. See matomo-org/matomo#25027.
@sgiehl
sgiehl merged commit 736343a into prepare6x Aug 6, 2026
14 checks passed
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.

* Run tests on same PHP versions as core (8.1, 8.5)

* Rebuild Vue dist files with the Vite build for Matomo 6 (#109)

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

* 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.

* Run Client tests on Node 24

Node 16 no longer supports the JS test runner (crypto.getRandomValues is
unavailable), matching the Node 24 version core uses for its Client tests.

* 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.

* Stop exercising the removed API.getSettings method in tests (#112)

The API.getSettings method is removed in Matomo 6. Drop it from the profiler
integration test and the SendSystemReportTask fixture (both used it only as a
sample API call), and regenerate the affected system-test expected files
(fewer tracked API-call actions: 39 -> 37, and the API.getSettings event rows
are gone).

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

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

* 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.

* Declare string return type on getBaseUrl() override for matomo-php-tracker 3.4.0 (#113)

* Declare string return type on getBaseUrl() override

matomo-php-tracker 3.4.0 adds a string return type to
MatomoTracker::getBaseUrl(); the override must match it or PHP raises an
incompatible-declaration fatal when the class is loaded.

* Keep test-mode token_auth null when no token is available

Fixture::getTokenAuth() now returns '' instead of null (it must satisfy
the tracker's string-typed setTokenAuth). Coalesce to null so the
generated test tracking config keeps token_auth: null as before.

* Update UI Screenshots after switching primary brand color (#114)

* Declare string return type on getBaseUrl() override

matomo-php-tracker 3.4.0 adds a string return type to
MatomoTracker::getBaseUrl(); the override must match it or PHP raises an
incompatible-declaration fatal when the class is loaded.

* Keep test-mode token_auth null when no token is available

Fixture::getTokenAuth() now returns '' instead of null (it must satisfy
the tracker's string-typed setTokenAuth). Coalesce to null so the
generated test tracking config keeps token_auth: null as before.

* Update UI screenshots

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

---------

Co-authored-by: sgiehl <stefan@matomo.org>

* Remove the unminified Vue UMD bundle (#116)

Matomo's Vue build no longer emits <Plugin>.umd.js. Only the minified
AnonymousPiwikUsageMeasurement.umd.min.js is ever served: PluginUmdAssetFetcher looks exclusively for
.umd.min.js, and development mode uses the .development.umd.js produced by
vue:build --watch.

The unminified bundle was a leftover from Vue CLI, whose lib build emitted it
alongside the minified one for free. See matomo-org/matomo#25027.

* Add changelog entry for Matomo 6 compatibility [ignore_release]

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

* Track dashboard widget controls through the ReportHeader events [ignore_release]

---------

Co-authored-by: Thomas ZILLIOX <thomas.zilliox@innocraft.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