DDC-765: \Symfony\Components renamed to \Symfony\Component (singular) ... refactoring unfinished. console cannot be invoked #5279

Closed
doctrinebot opened this Issue Aug 25, 2010 · 4 comments

2 participants

@doctrinebot

Jira issue originally created by user nad2000:

I pulled from github the whole thing, but still stuck with sandbox:

\doctrine\tools\sandbox>php doctrine.php
.PHP Warning: require(doctrine\lib\vendor\Symfony\Components\Console\Helper\Helper.php): failed to open st
ream: No such file or directory in C:\Inetpub\wwwroot\BugTrackerORM\doctrine\lib\vendor\doctrine-common\lib\Doctrine\Common\ClassLoader.php
on line 148
PHP Stack trace:
PHP 1. {main}() ..... doctrine\tools\sandbox\doctrine.php:0
PHP 2. require() .... doctrine\tools\sandbox\doctrine.php:21
PHP 3. Doctrine\Common\ClassLoader->loadClass() ... doctrine\lib\vendor\doctrine-common\lib\Doctrine\Common\C
lassLoader.php:0
PHP 4. require() ... doctrine\lib\vendor\doctrine-common\lib\Doctrine\Common\ClassLoader.php:148
PHP 5. Doctrine\Common\ClassLoader->loadClass() C:\Inetpub\wwwroot\BugTrackerORM\doctrine\lib\vendor\doctrine-common\lib\Doctrine\Common\C
lassLoader.php:0

Warning: require(.... doctrine\lib\vendor\Symfony\Components\Console\Helper\Helper.php): failed to open stream:
No such file or directory in.... doctrine\lib\vendor\doctrine-common\lib\Doctrine\Common\ClassLoader.php on lin
e 148

well, it seams that at some stage Symfony\Components got renamed to Symfony\Coponet:

$ git log Component
commit 4a9f368
Author: Sbastien HOUZE sebastienhouze@mbash.livebox.home
Date: Mon Aug 23 08:21:41 2010 +0200
Symfony/Components renamed into Symfony/Component

When I copied Component into Componets I got:
.PHP Fatal error: Cannot redeclare class Symfony\Component\Console\Helper\Helper in doctrine\lib\vendor\Sy
mfony\Components\Console\Helper\Helper.php on line 21

@doctrinebot

Comment created by nicokaiser:

Same for me, even worse, despite git submodule dependencies, the submodules (and their submodules) have different versions of "Components" vs. "Component", so the CLI is broken now.

@doctrinebot

Comment created by @beberlei:

Yes this sucks, unfortunately for ORM depending on DBAL Beta 3 we cannot easily change this.

Workaround until the next release of DBAL is uncommenting the following two lines instantiating DBAL Commands from your doctrine.php:

$cli->addCommands(array(
    // DBAL Commands
    //new \Doctrine\DBAL\Tools\Console\Command\RunSqlCommand(),
    //new \Doctrine\DBAL\Tools\Console\Command\ImportCommand(),

For the next release this week this will be resolved.

@doctrinebot

Issue was closed with resolution "Fixed"

@doctrinebot

Comment created by codewench:

I came across this issue today. I installed Doctrine via PEAR and had to do a few things to get the sandbox example working, which might help as a workaround until the next release:

  1. make sure the PEAR directory is part of your php.ini include path
  2. move the Symfony directory from 'PEAR/Doctrine/Symfony' to 'PEAR/Symfony'
  3. update the paths to Doctrine & Symfony inside 'tools/sandbox/doctrine.php' & 'tools/sandbox/cli-config.php'

I can now work with the sandbox examples.

As a reference, this is what my cli-config.php source looks like now: (sorry for the unformatted code

 tag & [code] weren't recognized.)

<?php

require_once 'Doctrine/Common/ClassLoader.php';

$classLoader = new \Doctrine\Common\ClassLoader('Doctrine\ORM', realpath(DIR . 'Doctrine/ORM'));
$classLoader->register();
$classLoader = new \Doctrine\Common\ClassLoader('Doctrine\DBAL', realpath(DIR . 'Doctrine/DBAL'));
$classLoader->register();
$classLoader = new \Doctrine\Common\ClassLoader('Doctrine\Common', realpath(DIR . 'Doctrine/Common'));
$classLoader->register();
$classLoader = new \Doctrine\Common\ClassLoader('Symfony', realpath(DIR . 'Symfony'));
$classLoader->register();
$classLoader = new \Doctrine\Common\ClassLoader('Entities', DIR);
$classLoader->register();
$classLoader = new \Doctrine\Common\ClassLoader('Proxies', DIR);
$classLoader->register();

$config = new \Doctrine\ORM\Configuration();
$config->setMetadataCacheImpl(new \Doctrine\Common\Cache\ArrayCache);
$driverImpl = $config->newDefaultAnnotationDriver(array(DIR."/Entities"));
$config->setMetadataDriverImpl($driverImpl);

$config->setProxyDir(DIR . '/Proxies');
$config->setProxyNamespace('Proxies');

$connectionOptions = array(
'driver' => 'pdo_sqlite',
'path' => 'database.sqlite'
);

$em = \Doctrine\ORM\EntityManager::create($connectionOptions, $config);

$helpers = array(
'db' => new \Doctrine\DBAL\Tools\Console\Helper\ConnectionHelper($em->getConnection()),
'em' => new \Doctrine\ORM\Tools\Console\Helper\EntityManagerHelper($em)
);

@beberlei beberlei was assigned by doctrinebot Dec 6, 2015
@doctrinebot doctrinebot added this to the 2.0-BETA4 milestone Dec 6, 2015
@doctrinebot doctrinebot closed this Dec 6, 2015
@doctrinebot doctrinebot added the Bug label Dec 7, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment