matomo-org / matomo

Empowering People Ethically with the leading open source alternative to Google Analytics that gives you full control over your data. Matomo lets you easily collect data from websites & apps and visualise this data and extract insights. Privacy is built-in. Liberating Web Analytics. Star us on Github? +1. And we love Pull Requests!
https://matomo.org/
GNU General Public License v3.0
19.59k stars 2.61k forks source link

Xhprof is abonond, document why is still a prod requirement #20317

Open mikkeschiren opened 1 year ago

mikkeschiren commented 1 year ago

lox/xhprof is an abandoned project, and have no updates since 2015. There should be documentation why this still is needed as a prod requirement.

sgiehl commented 1 year ago

@tsteur would you mind commenting this one? I'm actually not sure if the requirement ist still needed. Unless someone wants to debug a productive system I don't think it's needed or am I wrong?

tsteur commented 1 year ago

As long as it is possible to still collect data on production, then we could remove it and let people know they will need to view them locally. Looking at https://github.com/matomo-org/matomo/issues/17939 it may be required to profile locally?

sgiehl commented 1 year ago

@tsteur We could remove that from core maybe and provide that dependency with a plugin instead. That way everyone who wants to debug could install the plugin.

tsteur commented 1 year ago

That could work. Or maybe there's an alternative package we can use that's being updated? Just thinking that might be simpler for us and for users. Also then we won't need to worry re adding support for all the different profiling like --xhprof via a plugin or so. No big preference though, just a thought.

sgiehl commented 1 year ago

Couldn't find any other package that is still maintained. Moving it to a plugin sound like the most viable solution for me. I'll put it to prio queue, so we can consider doing that at some point.

mikkeschiren commented 1 year ago

As, I understand it, xhprof, doesn't work in PHP8, it should be removed from core, for those want to run it, and are still on PHP 7, it should be a plugin.

tsteur commented 1 year ago

FYI xhprof and tideways profiler do work with PHP 8, we used it just two weeks ago

textagroup commented 3 months ago

Found the following fork which is being kept up to date the fork does not have a composer.json file and is not listed on packagist but I have raised a PR to add a composer.json file to the fork.

Have also created the following branch of matomo which replaces the current version of xhprof. However I have not tested this I will start by seeing if the PHPUnit test pass first of all.

michalkleiner commented 3 months ago

We are also on track to providing ddev configuration for Matomo and ddev already comes with xhprof support which uses the fork Kirk found, so I would probably wait a bit until that's finalised, allowing us to perhaps save some time and not double up on the work.