Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-03-10[Codingstyle] Disallow unused use statements (#18520)Stefan Giehl
* Forbid unused use statements * Fix some incorrect classnames * fix tests * remove unused use statements
2022-02-03Merge branch 'next_release' into 4.x-devsgiehl
2022-02-03Make unique index compatible with database without long key support (#18723)Stefan Giehl
* Make unique index compatible with database without long key support * Changed plugin_name to VARCHAR(60) and title index limit to 100
2022-01-31[Dev 2431] Enrich log_visit table index by a third column (#18636)Jason Morton
* Update index for new installs * Add Update script for 5.0.0-b1 which holds the log_visits table index update. * Update class comment * Check that the correct log_visit index exists if one is found * Refactor update script to use migration class * Utilise getMigrations method from base class * Remove duplicate check
2021-12-22Show a summary of new features (#18065)Ben Burgess
* Added "What is new" notification display, populated by a new event * Removed test example event hook * Added support for applying a link attribute to menu items, fixes layout issue for mobile with html menu items * Updated UI test screenshots * Revert accidental edit * Hide the "What's new" icon if there are no new features to show * Changed to use changes.json, track user last viewed, added ui test * Fix UserManager unit tests broken by new ts_changes_viewed user field * Moved getChanges to separate helper class, added unit test, added user view access check * Updated to add new changes table and populate only on plugin update/install * Added missing fixture class, updated UI screenshots * Updated matomo font to add ringing bell and new releases icons * Fix for integration test * Reworked class structure, removed unnecessary angular directive, merged templates, other tidy ups * built vue files * built vue files * Added null user check, missing table exception handling, show plugin name in change title, better handling of missing change fields * Added sample changes file, moved UserChanges db code to changes model, added return type hints, better db error code handling, various other improvements * Revert accidental UI screenshot commit * Fix for incorrect link name parameter in sample changes, switched back to using $db->query for INSERT IGNORE * Integration test fix, UI screenshot updates * Test fix * Added link styling, show CoreHome changes without plugin prefix in title * Update UI test screenshot * Added styles to the popover, added event for filtering changes * Test fix * UI test screenshot updates Co-authored-by: sgiehl <stefan@matomo.org> Co-authored-by: bx80 <bx80@users.noreply.github.com>
2021-12-16Merge 4.6.x patches back to main branch (#18508)Justin Velluppillai
* Fix for misaligned evolution trend icons (#18323) * Aligned evolution trend icons, text tweak * Update plugins/MultiSites/angularjs/dashboard/dashboard.directive.less Co-authored-by: Stefan Giehl <stefan@matomo.org> * Hide feedback banner in zen mode (#18329) * [Vue] 4.6.0 fixes (#18334) * feedback plugin may not be loaded * fix copy paste * async/await not supported * built UMDs * [Vue] use jQuery click for expand on click (#18341) * use jQuery click for expand on click * undo submodule change * 4.6.0-rc2 * [Vue] fix modal notification placement (#18377) * Use separate div in modals to display notifications otherwise Vue will erase modal content when initializing NotificationGroup component. * built vue files * Updating version to 4.6.0 * [Vue] date picker viewDate property is not kept up to date (#18385) * viewDate ref is not kept up to date * rebuild corehome * 4.6.1-rc1 * 4.6.1 * [Vue] emit/broadcast on scope the method was called on not rootScope (#18419) * emit/broadcast on correct scope in wrapper * rebuild vue * remove plugin.json from CoreVue, it is not needed and causes some UI tests to fail (#18421) * Ensure UTF8mb4 conversion command always enables tracking again (#18444) * Ensure UTF8mb4 conversion command always enables tracking again * apply review feedback * small code improvement * Ignore segment errors in update script (#18455) * 4.6.2-rc1 * Ensure update to 4.6.2 removes some files (#18473) * 4.6.2 release! * built vue files Co-authored-by: Ben Burgess <88810029+bx80@users.noreply.github.com> Co-authored-by: Stefan Giehl <stefan@matomo.org> Co-authored-by: dizzy <diosmosis@users.noreply.github.com> Co-authored-by: Matthieu Aubry <mattab@users.noreply.github.com> Co-authored-by: justinvelluppillai <justinvelluppillai@users.noreply.github.com>
2021-11-16Remove update script that might cause problems (#18325)Stefan Giehl
2021-11-09Fix archiving too many segments that aren't needed and showing 0 conversions ↵Thomas Steur
for new visits/returning visitors (#18255)
2021-09-28[Vue] Introduce Vue + Workflow commands (#17940)dizzy
* adding vue * adding webpack config + example vue library project * forgot to add base tsconfig.json * Add build command that allows building all plugins + watching for changes. * autodetect umd bundles * initial externals detection * integrate vue CLI * add externals config via vue config * explain regenerator issue * remove ie11 * Build polyfills in separate library. * add command to quickly compute total asset size (minified + gzipped) * output tweak for --exclude-angular * Explicitly disable support for ie11 since Vue 3 does not support it. * rebuild and add option to clear webpack cache to build commands * Add example vue component that compiles w/ vue 3. * get example vue component to display * include tslib via polyfills so it is not compiled in each library * get async component loading to work * some tweaks and tests * Add generate vue component command and run to generate activity indicator template. * switch to using composition api since that is apparently better supported, and get activity indicator adapter to bind data properly * remove vue-class-component npm package * eslint changes * rever tracking JS change * tweak * Remove CoreVue vue dir which was just there for testing. * Update vue.config.js * apply some review feedback * add plugin to compute js asset size command * use local script to build * update changelog and apply review feedback * fix bower component mapping * update expected screenshots * update screenshot * Update and rename 4.5.0-b2.php to 4.6.0-b1.php * Update Version.php * update expected screenshot * updates expected UI test files Co-authored-by: sgiehl <stefan@matomo.org>
2021-09-24add mysql row format dynamic option (#18002)Peter Zhang
2021-08-12avoid large amounts of notifications being added to the session (#17736)dizzy
* impose limit on notification message size when logging to notifications * if in memory notification count exceeds max notification size in session, do not attempt to new ones it to the session * Detect when session was too large to read and provide warning to user. * add some tests for Notification\ManagerTest.php * add tests for relevant DbTable members * Change session data column type to allow larger session data values. * update to rc3 * trigger new build? * fix namespace * fix test namespaces * bump version correctly
2021-06-14Disable logme functionality by default (#17665)Stefan Giehl
* Disable logme functionallity by default * add changelog
2021-05-27Update PHP extension requirements & deprecate Common::mb_* methods (#16754)Stefan Giehl
* Require polyfill for mbstring and iconv * remove mbstring methods from upgrade.php * remove checks for some php extensions * deprecate Common::mb_* methods, as we can directly use mb_* functions instead * updates expected test files * Directly use mb_* methods in favor of Common::mb_* * Update expected screenshot Co-authored-by: diosmosis <diosmosis@users.noreply.github.com>
2021-05-11bump version and change update to new version (#17544)dizzy
2021-05-11detect brute force login attempts from different ip addresses (#17503)dizzy
* fill out logic, add new column + new email + translations (untested) * use new event handler * add tests and get to pass * get to work after manual testing * make sure brute force detection happens after ip allow/block lists are put into effect. this allows us to do less work in that case, and not allow attackers to disable login capability if we have an allowlist. * apply some review feedback * add new test and rename some methods * fix translation plugin names
2021-05-07Fix segment update scripts (#17532)Stefan Giehl
2021-04-24Add new update to make sure deleted segments also have a computed hash. (#17485)dizzy
* Add new update to make sure deleted segments also have a computed hash. * Update 4.3.0-b4.php
2021-04-19store segment hash in DB (#17408)Zoltan Flamis
* get segment hash * convert tab indentations to spaces * Create 4.3.0-b2.php * update tests and update file * bump version * Update 4.3.0-b3.php * Update ApiTest.php * fixing urlencode bugs * cache segment hashes * update segment caching * update segment caching * add segment cache test * add testdox to phpunit.xml * revert phunit.xml * test investigation * Update phpunit.xml.dist * update blobreportlimitingt test * Revert "update blobreportlimitingt test" This reverts commit 90fe7355cd1d227193f0b73ddf1d715c8b016616. * Update phpunit.xml.dist * Update BlobReportLimitingTest.php * Update BlobReportLimitingTest.php * Update SystemTestCase.php * Update BlobReportLimitingTest.php * Update SystemTestCase.php * Update phpunit.xml.dist * modify mem limit for travis * Update .travis.yml * revert travis.yml * Update SystemTestCase.php * try test without cache * test witch cache and gc_disabled * Revert "test witch cache and gc_disabled" This reverts commit 7e1d37093c7be648a84b57335edf397c89913758. * test witch cache and gc_disabled * use other model method * refactor test * Workaround error in Overlay when site has no URLs (#17457) * Set setting value even if set to NULL so it will still be validated. * Make sure when creating a site that the urls options is set. * workaround in Overlay for instances that have an invalid site URL set for some reason * Add integration tests for changes to SitesManager API. * revert non-overlay changes * Add warning if site has no URLs when viewing Overlay. * add more tests for segment caches * get segment hash * convert tab indentations to spaces * Create 4.3.0-b2.php * update tests and update file * bump version * Update 4.3.0-b3.php * Update ApiTest.php * fixing urlencode bugs * cache segment hashes * update segment caching * update segment caching * add segment cache test * add testdox to phpunit.xml * revert phunit.xml * test investigation * Update phpunit.xml.dist * update blobreportlimitingt test * Revert "update blobreportlimitingt test" This reverts commit 90fe7355cd1d227193f0b73ddf1d715c8b016616. * Update phpunit.xml.dist * Update BlobReportLimitingTest.php * Update BlobReportLimitingTest.php * Update SystemTestCase.php * Update BlobReportLimitingTest.php * Update SystemTestCase.php * Update phpunit.xml.dist * modify mem limit for travis * Update .travis.yml * revert travis.yml * Update SystemTestCase.php * try test without cache * test witch cache and gc_disabled * Revert "test witch cache and gc_disabled" This reverts commit 7e1d37093c7be648a84b57335edf397c89913758. * test witch cache and gc_disabled * use other model method * refactor test * add more tests for segment caches * revert phpunit.xml * revert phpunit.xml * add more tests Co-authored-by: dizzy <diosmosis@users.noreply.github.com>
2021-02-24also ignore strange dates in segment info when doing rearchive check in ↵dizzy
4.1.2 update (#17254)
2021-02-22ignore error in rearchive segment call in update (#17240)dizzy
* ignore error in rearchive segment call in update * possible fix as well
2021-02-15do not end up creating done flags like "done." (#17215)dizzy
* do not end up creating done flags like "done." * Add update file * Fix LoaderTest. * fix test
2021-02-05Refactor segment re-archiving in past behavior to be on demand (#17005)dizzy
* Invalidate past archives on demand when adding/updating segments, rather than trying to check when running core:archive * start on rewriting test * rewrite SegmentArchivingTest and get to pass * get sites as superuser * add update to rearchive segments if they were created/update between last archive time and update time * remove unused parameter * fix build * fix tests * sanity check * fix bug, we should not forget archives to invalidate unless all related archives are being invalidated * fix tests and make fix more complete * fix test * update counts in test * fix test for last time hopefully * fix another test * remove debugging code
2021-02-03add visitfrequency archiver to archive dependent archives (#17168)dizzy
* add visitfrequency archiver to archive dependent archives * bump version * add update file
2021-01-15Introduce PHP CS to improve code quality (#16755)Stefan Giehl
* Adds PHP CS with a basic config * automatically check coding style for pull requests * Disallow usage of eval & create_function and force using Common::safe_unserialize instead of unserialize * Forbid inline control structures * fix test
2020-12-02Remove no longer shipped example plugins during update (#16858)Thomas Steur
* Remove no longer shipped example plugins during update * remove all example plugins
2020-11-27Ignore errors while updating session ids (#16829)Stefan Giehl
2020-11-27Improve token auth migration (#16822)Thomas Steur
2020-11-27Fix hash algo is missing during upgrade (#16816)4.0.1-b1Thomas Steur
2020-11-27Update session ids on update (#16814)Stefan Giehl
2020-11-26Remove ExampleTheme plugin on update (#16807)Thomas Steur
* Remove ExampleTheme plugin on update We already deactivate the plugin but it looks like we actually need to fully remove the plugin. It should only be removed if it was not installed through git as in git we still have it. * Update Version.php
2020-11-16Make sure to disable example theme on matomo4 upgrade (#16720)Thomas Steur
2020-11-16typo in deleting blob archive data (#16717)diosmosis
2020-11-12Better detect failed archiving jobs. (#16701)4.0.0-rc3diosmosis
2020-10-19Check if column exist only shortly before it is needed (#16589)Thomas Steur
Just in case there are multiple updates running at the same time (eg when 2 users click on `update` in the UI or this might also happen in Matomo for WordPress). Then the update on `log_visit...SET visitor_seconds_since_first = visitor_days_since_first * 86400, ` might take a while and meanwhile another concurrent job has removed that column already. Bit hard to explain but basically we want to get this information only shortly before it is needed
2020-10-01Rename login_whitelist_ip config to login_allowlist_ip (#16413)Thomas Steur
2020-10-01Optimise Matomo 4 updates (#16490)Thomas Steur
* Set version back to Matomo 4 b1 * include more updates of dimensions * include more updates of dimensions * fix update * fix ui test
2020-10-01No need to check if column exists in conversion table when running days to ↵Thomas Steur
seconds update (#16486) It won't really make any difference as it should always exist initially in both tables anyway but thought I still change it just in case. I don't think it's needed to check the column exists in both tables?
2020-09-29Insert page performance columns into correct table (#16489)4.0.0-b2Thomas Steur
2020-09-10Fix DB column names in upgrade script (#16414)Thomas Steur
2020-09-08Activate Matomo 4 by default (#16398)4.0.0-a1Thomas Steur
2020-09-02Create plugin.json files if needed for plugins moved from core to ↵Thomas Steur
marketplace (#16323) * Create plugin files on demand if needed * Update 4.0.0-b1.php * Update Updater.php * Update Controller.php
2020-08-14Reorganise Matomo 4 updates for better performance (#16284)Thomas Steur
2020-08-04allow invalidating plugin archives only and archiving past data for plugins ↵diosmosis
(#15889) * Adding initial new code for cron archive rewrite. * first pass at removing unused CronArchive code. * unfinished commit * fill out archiveinvalidator code * getting some tests to pass * unfinished commit * fixing part of test * Another test fix. * another sql change * fix broken merge or something else that went wrong * Couple more fixes and extra logs. * Fixing enough issues to get core archive command to run completely. * Fix and log change. * Fixed more segment/test related issues for CronArchiveTest. Includes optimization for no visits for period + segment process from handling. * another optimization and possible build fix * no visit optimization * test fix * Implement archiving_custom_ranges logic w/ queue based implementation * fixes to get archivecrontest to work * add logic to invalidate today period * fix optimization and some tests * Fixing more tests. * Fixing more tests * debug travis failure * more test fixes * more test fixes, removing more unneeded code, handling some TODOs * Handle more TODOs including creating ArchiveFilter class for some cli options. * tests and todos * idarchives are specific to table + start on archivefilter tests * one test * more TODOs and tests * more tests and todo taken care of * handle more todos * fixing more tests * fix comment * make sure autoarchiving is enabled for segments when cron archive picks them up * Fixing test. * apply more pr feedback * order by date1 asc * quick refactor * use batch insert instead of createDummyArchives * apply rest of pr feedback * add removed events, add new test, fix an issue (when deleting idarchives older than do not lump all segments together). * re-add fixed/shared siteids * fix tests * incomplete commit * Insert archive entries into archive_invalidations table. * Use invalidations table in core:archive and get ArchiveCronTest to pass. * fixing some tests * debugging travis * fix more tests & remove DONE_IN_PROGRESS which is no longer used. * fix more tests * Allow forcing plugin specific archive in core:archive. * When querying from archive data use all available archives including "all" archives and plugin specific archives. * Adding some code for invalidating specific plugin archives. * Get archive invalidation test to pass. * add plugin capability to invalidate command * Handle plugin only archives in core:archive. * Add Archive test and get ArchiveCronTest to pass. * update some expected files * Fix some more tests. * incomplete commit * allow invalidating individual reports * adding more API for DONE_PARTIAL support * get archivecrontest to pass * add archive processor tests * fix some test randomnes * when purging keep latest partial archives if there is no newer whole archive * add rearchivereport method + some unfinished tests * Add archiveReports API method, fix race condition in test, when archiving single report, always ignore inserting other reports. * require archivers to handle partial archives themselves entirely instead of trying to do it automatically and allow requested report to be any string * couple fixes * Use core config option for last N montsh to invalidate. * Add test for ArchiveSelector method. * Ignore archives w/ deactivated plugins. * Refactor queue looping into new QueueConsumer class. * apply more review feedback + another fix * invalidate segments too in reArchiveReport w/ etsts * remove DONE_IN_PROGRESS, no longer used. use new status in query and add queue consumer test. * forgot to add file * delete old unneeded archives when finalizing a new one. * tweak invalidation archive description * add plugin archiving tests and get them to pass * fix test * many fixes * fix another test * update expected test files * fix more tests * last test fixes hopefully * tweak log * In case a column already exists, do not try to add it in an AddColumns migration or the entire migration will fail and no columns will be added. * try to fix tests again * fix again? * apply some review feedback + fix test * fix test * fix another test * couple fixes * Remove extra param. * apply pr feedback * check for usable archive before invalidating and before initiating archiving * fixing tests * fixing tests * fixing tests * fix another test issue * fix archiveinvalidator test * fix one test and debug another * more debugging * fix test * use twig * remove no longer needed change * add back previous logic * fix tracking is not working * apply pr feedback and add tests * fixing tests * update submodule * debugging random travis failure * update test * more debugging * more debugging * another attempt at debugging * Lets try this fix * trying to fix the build * debug * simpler test * fix test * fix test * fix test * fix test * fix test failure * update screenshots * update screenshots Co-authored-by: Thomas Steur <tsteur@users.noreply.github.com>
2020-07-27Remove update script for new profilable dimension (#16244)Thomas Steur
refs https://github.com/matomo-org/matomo/pull/16217/files#r456216141 refs https://github.com/matomo-org/matomo/issues/16192 Thought it's better to remove this update as the value might be set wrongly in case someone updates from 3.14.0 to 4.0.0. Wanted to remove this in the PR directly but forgot to do it. Think it's better to have the dimension unset before setting it potentially wrongly. see https://github.com/matomo-org/matomo/pull/16217/files#r456216141 Was also thinking of changing it to `"UPDATE $logVisit SET profilable = config_cookie WHERE profilable is null and visit_last_action_time < 2020-07-08"` because nobody could have used 3.14.0 before first beta was released on 8th July but it would mean some visits have this dimension set while others don't and then it maybe becomes inconsistent. Could also add the date though.
2020-07-27Add new dimension profilable (#16217)Thomas Steur
2020-07-24Rename config setting for maximum rows in custom dimension reports (#16229)Stefan Giehl
* Rename config setting for maximum rows in custom dimension reports * automatically set new config values if old ones were set * submodule update * update expected UI files
2020-07-01Removes CustomVariables plugin from core (#16090)Stefan Giehl
* Removes CustomVariables plugin * removes CustomVariables plugin from core list * Move methods to get custom variables from request to the plugin * define visit fields to persist in plugin * do not use custom variables plugin if not available * adjust test requirements for CustomVariables plugin * Only execute update if plugin is installed * do not consider custom variables widget as api in tests * move autosuggest tests for custom variables to plugin * do not use custom variable segments in core tests * move multi column segment test to custom variables plugin * do not use custom variable segment in archive cron test * update access log to use new product view parameters instead of custom variables * move some custom variables based tests to plugin * Use Contents API instead of CustomVariables for CSV export tests * skip some tests if CustomVariables plugin is not available * Adjust tracker code generator tests to work without custom variables plugin * [TEMP] remove custom variables from system test output * adjust some tests to run without custom variables plugin * apply some review feedback * Readds Custom Variables as submodule (#16104) * Adds CustomVariables as submodule * Revert "[TEMP] remove custom variables from system test output" This reverts commit 30b56dc135b6c130c841306f739dbcd7d9f4a366. * use submodule branch * test changes due to loading CustomVariables as submodule (plugin order) * updates some expected screenshots * improve test fixture * submodule update
2020-06-30Include CustomDimensions plugin in core (#16086)Stefan Giehl
2020-06-26Track seconds instead of days for "days since" dimensions (#15774)diosmosis
* Modify dimensions and add tests. * unfinished debugging commit * changes to fix test, remove tracker code, add update code * fix some tests * fix migration issue * fixing some tests * fix some bugs, update some expected test files, remove _idvc from some tests * start replacing _ects * Finish seconds since last ecommerce order change. * fix couple issues * fix a couple tests * fix some more tests * fixing a couple more tests * apply review feedback * unfinished commit * add back dimensions = * fixing tests & removing some code * fix some bugs + tests and remove debugging code * fixing some tests and issues * Some debugging code for the tracker in case of exceptions. * debug and fix another issue when tracking visits in the past * fix test * update JS and fix several tests * Fixing more tests. * Add missing files. * update expected test files * Add some unit tests. * update more expected files * update more test files * update more test files * update changelog and remove _ects query param * apply review feedback * fix merge issue * clearer code * fix migration issue * update expected files * update expected files again * updating tests * fix test * rebuilt piwik.js * unify previous visitor properties / original visit row approach * fixing some tests * Add new column version entries into the option table. * try undoing 1.5 update change * apply review feedback * remove more unused cookie values * rebuilt piwik.js * Fix test count. * update test files * rebuilt piwik.js * removel log analytics submodule update * update submodule * update some expected screenshots * Fix versions in omnifixture since we were probably adding to the beta update after it changed. * update screenshots
2020-06-11Rename Piwik -> Matomo in cookies (#16053)Thomas Steur