graphql-python / graphql-core

A Python 3.6+ port of the GraphQL.js reference implementation of GraphQL.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

`graphql.utilities.print_schema` module contents are hidden behind `utilities` package

tony opened this issue · comments

Summary

graphql.utilities.__init__.py's export of print_schema function shadows the module of graphql.utilities.print_schema

# Print a GraphQLSchema to GraphQL Schema language.
from .print_schema import (
print_introspection_schema,
print_schema,

So assume this:

from graphql.utilities import print_schema

Expected behavior

The module graphql.utilities.print_schema.

Results

As of v3.3.0a3

The function graphql.utilities.print_schema.print_schema() the function.

Discussion

https://github.com/graphql-python/graphql-core/blob/v3.3.0a3/src/graphql/utilities/print_schema.py#L32 does use a __ALL__, but its contents, which are typed, aren't exported.

Our use case

In earlier graphql-core versions, we would patch print_object - and during migration to graphql-core we found that wasn't available due to package structure.