Age | Commit message (Collapse) | Author |
|
* Rename Generic widget to KPI Metric
* Fix UI and system tests
|
|
|
|
* remove broken link in ImageGraph API
* found the guide at a new URL
|
|
* If session was already started, do not start it again
refs https://github.com/matomo-org/matomo/issues/12963
refs https://forum.matomo.org/t/an-error-occurred/32500
* Update Session.php
* Update bootstrap.php
* add test
|
|
relative directory (#14717)
* When loading a template url from a custom plugin directory, prefix the relative directory
* detect relative dir partially
* replace the initial plugins part as well
* only print info for activated plugins
* Update _jsGlobalVariables.twig
* remove duplicate endif
* Update http404check.js
|
|
* Fix percentage calculation on world map
* remove no longer used vars
|
|
Found an interesting issue today re config... when the config is saved, we reload the config afterwards in https://github.com/matomo-org/matomo/blob/3.12.0-b2/core/Config.php#L447
The problem is, that any `plugins/*/config/config.php` or `config/config.php` that is changing the config using DI is then ignored when reloading the config. Looks like something like this:
```
'Piwik\Config' => DI\decorate(function ($previous) {
$general = $previous->General;
$general['force_ssl'] = 1;
$previous->General = $general;
return $previous;
}),
```
We're using this quite intensively in various places. I wonder in that case how to best re-initialise the config to make sure DI is executed again. Like removing it from DI, and then initialising it again using DI... would that work somehow? Problem is that maybe there could be still outdated references to the old config instance... I wonder maybe by default we should not reload the config simply? Not sure why we do it. It was likely not really an issue before since it would have simply saved all changes in `Config` to the local config and then reloaded it again.
However, in a new plugin I will have an event to not save some config parameters to the config file. I will have an event `postEvent('Config.beforeSave', array(&$config))` where I then do something like `unset($config['General']['force_ssl'])` to avoid saving some values in the config. Eg to not save DB credentials in the config etc.
|
|
core:archive (#14890)
* Ensure all plugins are archived when range archiving is triggered by core:archive
* adds tests for range archiving
|
|
managed by another plugin (#14900)
|
|
|
|
|
|
|
|
* Add link to matomo.org resources in awesome search
* Add "How can we help" card to help page
* PR fixes
* CSS improvements
* Update UI test screenshots
* PR improvements
* CSS improvements
* Remove duplicate links and reword community help links
* Update reference screenshot
* make it work for mobile, remove duplicate dot, minor style tweak
* fix screenshot test
|
|
|
|
Only show menu item if brute force is enabled
|
|
* Provide possibility to force not using a subquery
* Update LogAggregator.php
* Update LogQueryBuilder.php
* Update LogAggregator.php
|
|
In regular mode we already use the above logic see https://github.com/matomo-org/matomo/blob/3.x-dev/core/Db/Adapter.php#L68-L74
This means in regular mode any plugin can already define a custom adapter and configure it. This was not working in tracking mode where the two PDO and MySQLI modes were hard coded. This was likely because back in the days we weren't using auto loading in tracker mode which we are doing now already for many years.
|
|
outside webroot) (#14866)
* Fix user path was not working as it should
* fix error
|
|
* Let plugins hook and listen into http requests
* fix test
|
|
|
|
|
|
* support configuration of a matomo bootstrap file
* load matomo bootstrap only as fallback
|
|
* platform tweaks
* prevent failing if loaded twice
* Update Config.php
* Update PluginList.php
* Update Config.php
* Update IniFileChain.php
* Update Config.php
* Update Config.php
* allow configure different path for custom logo
* only show install plugin button when activated
* allow disable users and sites management
* do not allow calling set super user access
* Update PluginList.php
* Update Config.php
* Update global.ini.php
* Update Config.php
* Update global.ini.php
|
|
* start changing the logo
* update logo
* improve position of logo
* position link instead of logo
* seems margin is not allowed, try using padding
* fix some tests
|
|
|
|
|
|
This can avoid some error logs depending on the used database adapter etc. In theory we can then remove catching the error a few lines below but should be fine to keep it as well
|
|
* allow configuration of max execution time
* trigger event when query time exceeded
* fix screenshot test
* added some tests and mention mariadb not supported
|
|
|
|
* Copy visits into temp table non locking
* Prevent data being copied in there multiple times
* non locking temp table for myisam users
* use segment cache only for archiving queries by default
* better logic
* only create table if needed
* create temp table only once
* speed up tests
|
|
|
|
|
|
|
|
Not sure why I added it there considering they are being regenerated in a task every hour or so anyway.
Also see https://github.com/matomo-org/tag-manager/pull/184
|
|
|
|
|
|
|
|
|
|
|
|
* Make sure to use index on log table when deleting log entries
* use reader
* fix query
* faster purge orphaned sites
* fix tests
* do not use placeholders for potentially long list of ids since it is slow
|
|
|
|
* Exclude visits whose time is prior to the log purge cutoff time from being logged
* Cache data purge settings
* Move logic for checking whether request is older than purge cutoff into getCustomTimestamp() method
* Change error message
|
|
* Faster raw log data deletion
* cannot use DB reader with this new performance feature
* delete 2K visits at once instead of only 1K
* fix index not defined
* forgot to commit file
|
|
log_conversion.url (#14848)
|
|
* Soft delete segments
* Bug fixes and tests
|
|
* Implement batch processing of archive inserts
* Write done progress entries immediately rather than spooling them
* Tests for archive writer spooling
* Spool records written via insertBulkRecords() too; use bulk insert SQL rather than infile for writing numeric spool
* Fix merge error
* New method for doing bulk inserts in a single SQL statement
* minor tweaks
* fix tests
|
|
|
|
* Make sure to use index on log table when deleting log entries
* use reader
* fix query
|
|
* update archive status instead of delete and insert
* remove no longer needed locks
* better query
|
|
* Validate request before we start processing
* Refactoring
|