@MichaIng opened this Issue on November 30th 2021

The CustomVariables and Provider plugins can be uninstalled even that they are reinstalled with every Matomo update. Furthermore, the CustomVariables plugin uninstall causes integrity check errors on the system check page.

Expected Behavior

All plugins which are shipped with the Matomo core/update should not be uninstallable. All plugins which can be uninstalled, should not cause integrity check errors when doing so.

Current Behavior

I'll only repeat myself 😄.

Possible Solution

Either mark those two plugins as not uninstallable, or assure that they are not reinstalled with updates and do not cause integrity check errors.

Steps to Reproduce (for Bugs)

  1. Start with Matomo 4.5
  2. Uninstall CustomVariables and Provider plugins
  3. Check system check for integrity check errors
  4. Update Matomo to 4.6.0 and check installed plugins

Context

Your Environment

  • Matomo Version: 4.6.0
  • PHP Version: 8.1.0
  • Server Operating System: Debian Bookworm
  • Additionally installed plugins:
    API, Actions, Annotations, BulkTracking, CoreAdminHome, CoreConsole, CoreHome, CorePluginsAdmin, CoreUpdater, CoreVisualizations, CoreVue, DBStats, DarkTheme 1.1.7, Dashboard, DevicePlugins, DevicesDetection, Diagnostics, Goals, ImageGraph, Insights, Installation, Intl, LanguagesManager, Live, LogViewer 4.0.1, Login, Marketplace, Monolog, Morpheus, PagePerformance, PrivacyManager, Proxy, Referrers, Resolution, SEO, SegmentEditor, SitesManager, TrackingSpamPrevention 4.1.0, Transitions, UserLanguage, UsersManager, VisitFrequency, VisitTime, VisitorInterest, VisitsSummary, WebsiteMeasurable
@sgiehl commented on November 30th 2021 Member

It's on purpose that they can meanwhile be uninstalled, as they shouldn't be shipped with the Matomo release anymore. The last release included them by accident I guess.

@MichaIng commented on November 30th 2021

I just assured, and the integrity check failures when uninstalling CustomVariables is still present with this release:

Missing file: /var/www/matomo/plugins/CustomVariables/angularjs/manage-custom-vars/manage-custom-vars.controller.js
Missing file: /var/www/matomo/plugins/CustomVariables/angularjs/manage-custom-vars/manage-custom-vars.directive.html
Missing file: /var/www/matomo/plugins/CustomVariables/angularjs/manage-custom-vars/manage-custom-vars.directive.js
Missing file: /var/www/matomo/plugins/CustomVariables/angularjs/manage-custom-vars/manage-custom-vars.directive.less
Missing file: /var/www/matomo/plugins/CustomVariables/angularjs/manage-custom-vars/manage-custom-vars.model.js
Missing file: /var/www/matomo/plugins/CustomVariables/API.php
Missing file: /var/www/matomo/plugins/CustomVariables/Archiver.php
Missing file: /var/www/matomo/plugins/CustomVariables/Categories/CustomVariablesCategory.php
Missing file: /var/www/matomo/plugins/CustomVariables/Categories/CustomVariablesSubcategory.php
Missing file: /var/www/matomo/plugins/CustomVariables/Columns/Base.php
Missing file: /var/www/matomo/plugins/CustomVariables/Columns/CustomVariableName.php
Missing file: /var/www/matomo/plugins/CustomVariables/Columns/CustomVariableValue.php
Missing file: /var/www/matomo/plugins/CustomVariables/Commands/Info.php
Missing file: /var/www/matomo/plugins/CustomVariables/Commands/SetNumberOfCustomVariables.php
Missing file: /var/www/matomo/plugins/CustomVariables/config/config.php
Missing file: /var/www/matomo/plugins/CustomVariables/config/test.php
@MichaIng commented on December 2nd 2021

Original issue is solved with v4.6.1, many thanks 👍. However, the integrity check now fails because of other falsely present files 😄:

Files were found in your Matomo, but we didn't expect them.
--> Please delete these files to prevent errors. <--

File to delete: babel.config.js
File to delete: jest.config.js
File to delete: tsconfig.json
File to delete: tsconfig.spec.json
File to delete: vendor/lox/xhprof/bin/xhprofile
File to delete: vue.config.js
File to delete: .browserslistrc
File to delete: .eslintignore
File to delete: .eslintrc.js
File to delete: node_modules/iframe-resizer/.eslintrc
File to delete: node_modules/ng-dialog/.eslintrc

To delete all these files at once, you can run this command:
rm "/var/www/matomo/babel.config.js" "/var/www/matomo/jest.config.js" "/var/www/matomo/tsconfig.json" "/var/www/matomo/tsconfig.spec.json" "/var/www/matomo/vendor/lox/xhprof/bin/xhprofile" "/var/www/matomo/vue.config.js" "/var/www/matomo/.browserslistrc" "/var/www/matomo/.eslintignore" "/var/www/matomo/.eslintrc.js" "/var/www/matomo/node_modules/iframe-resizer/.eslintrc" "/var/www/matomo/node_modules/ng-dialog/.eslintrc"
@sgiehl commented on December 2nd 2021 Member

@MichaIng Those files had been part of some previous releases or rcs. Should be safe to delete them.

@MichaIng commented on December 2nd 2021

Ah, I haven't considered that previous releases may have shipped those while 4.6.1 may have undergone some cleanup. Yes those are mostly build and lint configurations, so not required for production. I removed them and didn't face any issue so far.

I'll close the issue then as solved.

This Issue was closed on December 2nd 2021
Powered by GitHub Issue Mirror