Api: Exception throw on a fresh installation of laravel & dingo-api

Created on 30 Aug 2018  路  5Comments  路  Source: dingo/api

| Q | A
| ----------------- | ---
| Bug? | maybe
| New Feature? | no
| Framework | Laravel
| Framework version | 5.6.35
| Package version | v2.0.0-alpha1
| PHP version | 7.2.9

Actual Behaviour

Exception is thrown after performing any php artisan command while in debug mode in a fresh laravel with dingo setup.

Expected Behaviour

There should be no exceptions

Steps to Reproduce

After installing fresh Laravel then adding Dingo package then starting debug mode in my VSCode an exception is thrown after performing any php artisan command ,
Example : php artisan serve ( with debug mode )
will give
PHP Fatal error: Uncaught Illuminate\Contracts\Container\BindingResolutionException: Target [League\Fractal\ScopeFactoryInterface] is not instantiable while building [Dingo\Api\Transformer\Adapter\Fractal, League\Fractal\Manager]. in /laravel/testapi/vendor/laravel/framework/src/Illuminate/Container/Container.php:933

if you are not running the debug mode you will not see the error at all , but I guess this might be affecting some other behaviour (I'm not sure ) for example when trying to generate documentation I'm getting empty file with only titles so I tried to debug there and I encountered this issue but I'm not sure what are side effects of it .

Most helpful comment

Try this:

  1. Add minimum-stability and prefer-stable in composer.json file
.
.
.
"config": {
        "preferred-install": "dist",
        "sort-packages": true,
        "optimize-autoloader": true
    },
"minimum-stability" : "dev",
"prefer-stable" : true
  1. Install the latest version
composer require dingo/api:2.0.0-alpha2

All 5 comments

Try this:

  1. Add minimum-stability and prefer-stable in composer.json file
.
.
.
"config": {
        "preferred-install": "dist",
        "sort-packages": true,
        "optimize-autoloader": true
    },
"minimum-stability" : "dev",
"prefer-stable" : true
  1. Install the latest version
composer require dingo/api:2.0.0-alpha2

Hi thanks , yes the debugger still stoping there with that error message.

... ScopeFactoryInterface] is not instantiable ...

Can be closed, the package just needs to be tagged (as there's been many fixes lately). @thilanga

I get this problem with Digno 2.1.0
But my Laravel+Dingo is far from being a fresh install.
How can I debug the issue?

For now I've fixed it by adding to my AppServiceProvider

    public function register()
    {
        $this->app->bind("League\\Fractal\\ScopeFactoryInterface", "\\League\\Fractal\\ScopeFactory");
        //
    }

Can you please submit a new issue if it's a problem @gruz

Was this page helpful?
0 / 5 - 0 ratings