@arunpersaud opened this Issue on April 12th 2015


just upated to 2.12.1 and I get the following error:

Fatal error: Class 'DI\Definition\Source\ChainableDefinitionSource' not found in /home/arun /stats.nubati.net/core/Container/IniConfigDefinitionSource.php on line 20

Seems that php-di removed 'DI\Definition\Source\ChainableDefinitionSource'
in commit f54d3e8ac72a3cc60c31c4081f931495172d6766 [https://github.com/mnapoli/PHP-DI/commit/f54d3e8ac72a3cc60c31c4081f931495172d6766].

Don't really understand the code, but it seems that piwik needs to be updated for this, since
"composer update" is using php-di 5.0.x-dev, which seems to be the latest git-version with that file removed.

@arunpersaud commented on April 12th 2015

doing a "git checkout 56ac462" (e.g. before the above mentioned commit) in vendor/mnapoli/php-di seems to fix the issue

@mnapoli commented on April 12th 2015 Contributor

Hi @arunpersaud, yes I worked on PHP-DI this week end and was planning to update Piwik today ;)

However this problem shouldn't happen on your end because you shouldn't run composer update to install dependencies, instead you should use composer install which installs a specific version of PHP-DI (and the other dependencies). Do you have a custom setup that requires composer update?

@arunpersaud commented on April 12th 2015

no, I guess I have been using composer the wrong way and got lucky that it worked for the last years;) Will make sure that I run "composer install" in the future. Thanks

@mnapoli commented on April 12th 2015 Contributor

No worries thanks!

@quba commented on April 13th 2015 Contributor

@mnapoli why are we not using fixed versions of dependencies? It's really hard to maintain, especially when using dev-master versions. It's also confusing for the end users.

@mnapoli commented on April 13th 2015 Contributor

@quba it shouldn't affect end users so it's not really a problem.

It's really hard to maintain

What is hard to maintain?

We are using the currently version in development because it's a development of the next major version based on the experience we have in Piwik. If we don't do that, then I would have to imagine some features needed for Piwik and release a 5.0 beforehand (some feature require BC breaks), and then if I was wrong Piwik is screwed and PHP-DI is screwed. The current situation is some sort of joint development (it's been working great for the past 5 months, I've only seen twice people doing composer update instead of composer install by mistake).

FYI I've worked intensely on PHP-DI the last week-end and I'm closing in on a 5.0 release, so hopefully it shouldn't be much longer. But again, I don't see where the problem is?

@saleemkce commented on April 24th 2015 Contributor

@mnapoli I cloned a fresh Piwik copy yesterday and I got error in PHP-DI class not found error. I tried "composer install", it didn't work. Then removed vendor files and gave "composer udpate". It still doesn't work. Piwik is now broken; could you clarify what's the issue with new git clone?

@mnapoli commented on April 24th 2015 Contributor

@saleemkce this is a different issue, I have created a new ticket: #7759

This Issue was closed on April 12th 2015
Powered by GitHub Issue Mirror