Search code examples
phpdoctrine-ormsymfonyalice-fixtures

Symfony3 Doctrine Hautelook/Alice cannot load fixtures


Im using Symfony3 in my Project along with Doctrine ORM. Now i wanted to have some nice fixtures with Hautelook/AliceBundle.

So i was installing the bundle, registering it to the AppKernel as well as making an entry in the config.

I added a DataLoader like this:

use Hautelook\AliceBundle\Doctrine\DataFixtures\AbstractLoader;

class DataLoader extends AbstractLoader
{
/**
 * {@inheritdoc}
 */
public function getFixtures()
{
    return [
        __DIR__.'/../ORM/user.yml',
    ];
}
}

Now if i try to run the command like:

 sf hautelook_alice:doctrine:fixtures:load

I get the ErrorMessage:

[Symfony\Component\Debug\Exception\UndefinedMethodException]                                                    
Attempted to call an undefined method named "addClass" of class "Doctrine\ORM\Internal\CommitOrderCalculator".

My composer.json contains of:

"doctrine/orm"                                          : "^2.5.4",
"doctrine/doctrine-bundle"                              : "^1.6",
"doctrine/data-fixtures"                                : "^1.1",
"hautelook/alice-bundle"                                : "^1.2",
"doctrine/doctrine-fixtures-bundle"                     : "^2.3",

I really dont know what the issue here is, i hope anyone can help me to find out or knows the solution. If any information is missing, i will add it afap.

Thx in advance


Solution

  • I could solve this issue with the following changes to my composer.json:

    "doctrine/data-fixtures": "dev-topological-sorter as 1.1.x-dev"
    

    The issue is already linked on github, but it was not merged into yet. You can read more about it here:

    https://github.com/doctrine/data-fixtures/pull/222/commits/987e5f35142ac4ac5dc60a16d1eb18293964bc25

    I hope this will help other ppl having the same issue.

    And thx to Alvin for trying to help me out.