-
Introduction
- Understanding Matomo
-
Matomo Core development
- Contributing to Matomo Core
- Contributing to Matomo Plugins
- Coding Standards
- Using GitHub Issues
- Pull Requests and Reviews
- The Core Team Workflow
- Maintaining Plugins
- Maintaining Translations
- Matomo APIs
- Debugging Core
- Profiling Code
- Reproducing Issues
- FAQs
- Core Components
- Composer dependencies
- Release Management
- Using GitHub Actions
- Matomo's Roadmap
- Matomo Plugin development
- Web Interface
- Utils
- Reporting API
- Data Model
- Tests
- Tools
-
Plugin Development
Core Components
As part of Matomo we maintain a few components which we embed into core using composer packages. See the list of components on GitHub.
Updating a component
Step 1: releasing a new version
- Create a pull request as usual and get it merged
- Then go to
Releasesin GitHub for the repository - Click on
Draft a new release - Enter the version number and release title. We usually enter for both the same value. The new version number should be higher than before and use Semantic Versioning.
- Click on
Publish release. - The newly published version should then populate on Packagist.
Step 1B: Special step only needed for doctrine cache fork matomo-org/cache
- You need to increase the required version number in component-cache/composer.json see example PR.
- Basically you require the newly released version number and then run
composer update matomo/doctrine-cache-fork. - Push
composer.jsonandcomposer.lock. - Create a PR and get it merged.
- Release a new version for the component cache which is same as step 1.
Step 2: Updating the component in Matomo core
- Update the version number for the updated component in matomo/composer.json if needed
- Execute
composer update matomo/$COMPONENT_NAME. You need to replace$COMPONENT_NAMEwith the name of the component. For the cache component you may need to executecomposer update matomo/cache matomo/doctrine-cache-fork. - Push
composer.jsonandcomposer.lock. - Create a PR and get it merged.