Search code examples
phplaravelgraphqllaravel-lighthousegraphql-playground

SO composer require rebing/graphql-laravel fails


I have the following problem trying to install rebing/graphql-laravel via composer:

$ composer require rebing/graphql-laravel
Using version ^2.1 for rebing/graphql-laravel
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for rebing/graphql-laravel ^2.1 -> satisfiable by rebing/graphql-laravel[2.1.0, 2.1.1].
    - Can only install one of: webonyx/graphql-php[v0.12.6, 0.13.x-dev].
    - Can only install one of: webonyx/graphql-php[0.13.x-dev, v0.12.6].
    - Can only install one of: webonyx/graphql-php[0.13.x-dev, v0.12.6].
    - Conclusion: install webonyx/graphql-php 0.13.x-dev
    - Installation request for webonyx/graphql-php 0.12.6 -> satisfiable by webonyx/graphql-php[v0.12.6].


Installation failed, reverting ./composer.json to its original content.

Does anyone knows how to solve this? I need this package to make this query resolver:

<?php

namespace App\GraphQL\Queries;

use Closure;
use App\User;
use Rebing\GraphQL\Support\Facades\GraphQL;
use GraphQL\Type\Definition\ResolveInfo;
use GraphQL\Type\Definition\Type;
use Rebing\GraphQL\Support\Query;
use App\Video;


class Premieres extends Query {

    protected $attributes = [
        'name' => 'Premieres query'
    ];

    public function type(): Type {
        return Type::listOf(GraphQL::type('videos'));
    }

    public function args(): array {
        return [];
    }

    public function resolve($root, array $args, GraphQLContext $context, ResolveInfo $resolveInfo, Closure $getSelectFields) {
        return Video::where('shownOnPremieres', 1);
    }
}

I don't know that else to try to solve this. I need to make a query resolver to do some specific queries. Thanks!

After trying one of the proposed solutions:

$ composer update webonyx/graphql-php rebing/graphql-laravel
Package "rebing/graphql-laravel" listed for update is not installed. Ignoring.
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating optimized autoload files
Carbon 1 is deprecated, see how to migrate to Carbon 2.
https://carbon.nesbot.com/docs/#api-carbon-2
    You can run './vendor/bin/upgrade-carbon' to get help in updating carbon and other frameworks and libraries that depend on it.
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: beyondcode/laravel-dump-server
Discovered Package: fideloper/proxy
Discovered Package: laravel/tinker
Discovered Package: mll-lab/laravel-graphql-playground
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Discovered Package: nuwave/lighthouse
Discovered Package: spatie/laravel-cors
Package manifest generated successfully.

Re-run the installation command:

$ composer require rebing/graphql-laravel -v

Using version ^2.1 for rebing/graphql-laravel
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Dependency resolution completed in 0.103 seconds
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for rebing/graphql-laravel ^2.1 -> satisfiable by rebing/graphql-laravel[2.1.0, 2.1.1].
    - Can only install one of: webonyx/graphql-php[v0.12.6, 0.13.x-dev].
    - Can only install one of: webonyx/graphql-php[0.13.x-dev, v0.12.6].
    - Can only install one of: webonyx/graphql-php[0.13.x-dev, v0.12.6].
    - Conclusion: install webonyx/graphql-php 0.13.x-dev
    - Installation request for webonyx/graphql-php 0.12.6 -> satisfiable by webonyx/graphql-php[v0.12.6].


Installation failed, reverting ./composer.json to its original content.

And it failed!


Solution

  • It seems that rebing/graphql-laravel require webonyx/graphql-php on version more than 0.13.

    It seems also that webonyx/graphql-php is already required in your composer file so you need to update the sub-dependency with

    composer update webonyx/graphql-php rebing/graphql-laravel