I've upgraded from FuelPHP version 1.4 to 1.6. I've downloaded 1.6. Copied core, package, and vendor folders, also copied public/index.php, ran composer update. When I try loading the site, I receive errors.
Fatal error: Interface 'Psr\Log\LoggerInterface' not found in [path]\fuel\vendor\monolog\monolog\src\Monolog\Logger.php on line 28
Fatal error: Call to a member function log() on a non-object in [path]\fuel\core\base.php on line 91
monolog/monolog suggests installing mlehner/gelf-php (Allow sending log messages to a GrayLog2 server) monolog/monolog suggests installing ext-amqp (Allow sending log messages to an A MQP server (1.0+ required)) monolog/monolog suggests installing ext-mongo (Allow sending log messages to a M ongoDB server) monolog/monolog suggests installing doctrine/couchdb (Allow sending log messages to a CouchDB server) monolog/monolog suggests installing raven/raven (Allow sending log messages to a Sentry server) Writing lock file Generating autoload files ------------------------------------------
On a second ran it gave me: ----------------------------------------------- >php composer.phar update Loading composer repositories with package information Updating dependencies (including require-dev) Nothing to install or update Generating autoload files ---------------------------------------------
I assume, this means that composer installed everything it should've.
in /fuel/vendor/ there are the following folders: composer fuelphp monolog psr
There is also /fuel/vendor/autoload.php file.
It seems a bit odd that psr classes are in /fuel/vendor/psr/log/Psr/Log
Resolved. It was file permission issue. composer update executed successfully, but after that I had to give web user read permission to Psr\Log\ folder.
The folder structure of the composer packages is defined by PSR-0.
The first two entries are the vendor (psr) and the package (log) name, used to make sure the package is unique. Inside the package you need a one-to-one mapping between the namespace and the folder structure. Since the namespace is \Psr\Log, these are the two next folders you see.
There is a discussion going on in the FIG to create a new version of PSR-0 that will eliminate the additional two folders.