Skip to content

RFC: Merge flask-graphql, sanic-graphql etc into graphql-server-core #34

Closed
@jkimbo

Description

@jkimbo

The problem

Currently server integrations are split into separate repos:

And they are all depend on https://github.com/graphql-python/graphql-server-core

The issue with this is that each framework specific library shares a lot of code with the other libraries and it's hard to coordinate cross cutting changes.

The solution

The suggestion is that we merge the framework specific code into the grapqhl-server-core library so that the code is consolidated into 1 place. That way it's much easier to share code and keep things up to date.

To install the integration with flask for example:

pip install graphql-server-core[flask]

Then you can use it by:

from grapqhl_server.flask import GraphQLView

...

Drawbacks

It will make the graphql-server-core library harder to maintain. At the moment it is very small and easy to test. Merging in the other server libs will make the library become more complex, harder to test (you will need to install all of the dependencies for testing) and easier to accidentally add unneeded dependencies. Any contributions will have to make sure they don't break other server variants supported by the library which they are not familiar with.

Alternatives

We keep the separation of libraries and try and consolidate folder layout and coding standards.

List of packages to merge

Metadata

Metadata

Assignees

No one assigned

    Labels

    type: rfcUse this label for RFCs (request for comments) for broad, sweeping changes to graphql-server-core

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions