graphql-core 3.3.0b1__tar.gz → 3.3.0b2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/.bumpversion.cfg +1 -1
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/PKG-INFO +3 -3
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/README.md +2 -2
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/conf.py +2 -2
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/modules/execution.rst +2 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/modules/utilities.rst +1 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/pyproject.toml +1 -1
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/__init__.py +12 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/error/graphql_error.py +49 -12
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/execution/__init__.py +7 -1
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/__init__.py +2 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/find_schema_changes.py +1 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/version.py +2 -2
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/error/test_graphql_error.py +81 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/.editorconfig +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/.readthedocs.yaml +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/CODEOWNERS +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/LICENSE +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/SECURITY.md +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/Makefile +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/diffs.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/index.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/intro.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/make.bat +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/modules/error.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/modules/graphql.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/modules/language.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/modules/pyutils.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/modules/type.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/modules/validation.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/usage/extension.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/usage/index.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/usage/introspection.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/usage/methods.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/usage/other.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/usage/parser.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/usage/queries.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/usage/resolvers.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/usage/schema.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/usage/sdl.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/docs/usage/validator.rst +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/error/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/error/located_error.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/error/syntax_error.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/execution/aborted_graphql_execution_error.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/execution/async_iterables.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/execution/build_execution_plan.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/execution/collect_fields.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/execution/execute.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/execution/get_variable_signature.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/execution/incremental_graph.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/execution/incremental_publisher.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/execution/middleware.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/execution/types.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/execution/values.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/graphql.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/harness.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/ast.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/block_string.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/character_classes.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/directive_locations.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/lexer.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/location.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/parser.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/predicates.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/print_location.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/print_string.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/printer.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/schema_coordinate_lexer.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/source.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/token_kind.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/visitor.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/py.typed +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/abort_signal.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/async_reduce.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/awaitable_or_value.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/boxed_awaitable_or_value.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/cached_property.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/convert_case.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/description.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/did_you_mean.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/format_list.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/frozen_error.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/gather_with_cancel.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/group_by.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/identity_func.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/inspect.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/is_awaitable.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/is_iterable.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/merge_kwargs.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/natural_compare.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/path.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/print_path_list.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/ref_map.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/ref_set.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/simple_pub_sub.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/suggestion_list.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/undefined.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/type/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/type/assert_name.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/type/definition.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/type/directives.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/type/introspection.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/type/scalars.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/type/schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/type/validate.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/ast_from_value.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/ast_to_dict.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/build_ast_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/build_client_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/coerce_input_value.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/concat_ast.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/extend_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/get_default_value_ast.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/get_introspection_query.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/get_operation_ast.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/introspection_from_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/lexicographic_sort_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/map_schema_config.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/print_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/replace_variables.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/resolve_schema_coordinate.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/separate_operations.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/sort_value_node.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/strip_ignored_characters.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/type_comparators.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/type_from_ast.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/type_info.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/validate_input_value.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/value_from_ast.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/value_from_ast_untyped.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/utilities/value_to_literal.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/custom/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/custom/no_deprecated.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/custom/no_schema_introspection.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/defer_stream_directive_label.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/defer_stream_directive_on_root_field.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/defer_stream_directive_on_valid_operations_rule.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/executable_definitions.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/fields_on_correct_type.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/fragments_on_composite_types.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/known_argument_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/known_directives.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/known_fragment_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/known_operation_types.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/known_type_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/lone_anonymous_operation.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/lone_schema_definition.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/max_introspection_depth_rule.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/no_fragment_cycles.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/no_undefined_variables.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/no_unused_fragments.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/no_unused_variables.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/overlapping_fields_can_be_merged.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/possible_fragment_spreads.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/possible_type_extensions.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/provided_required_arguments.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/scalar_leafs.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/single_field_subscriptions.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/stream_directive_on_list_field.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/unique_argument_definition_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/unique_argument_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/unique_directive_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/unique_directives_per_location.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/unique_enum_value_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/unique_field_definition_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/unique_fragment_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/unique_input_field_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/unique_operation_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/unique_operation_types.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/unique_type_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/unique_variable_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/values_of_correct_type.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/variables_are_input_types.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/rules/variables_in_allowed_position.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/specified_rules.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/validate.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/validation/validation_context.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_async_iterable.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_build_ast_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_build_client_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_execution_async.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_execution_sync.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_graphql_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_introspection_from_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_parser.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_print.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_repeated_fields.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_serialization.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_validate_gql.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_validate_invalid_gql.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_validate_sdl.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/benchmarks/test_visit.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/conftest.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/error/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/error/test_located_error.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/error/test_print_location.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_aborted_graphql_execution_error.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_abstract.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_cancellation.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_collect_fields.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_customize.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_defer.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_directives.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_error_propagation.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_execution_result.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_executor.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_hooks.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_lists.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_map_async_iterable.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_middleware.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_mutations.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_nonnull.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_oneof.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_parallel.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_resolve.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_stream.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_subscribe.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_sync.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_union_interface.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/execution/test_variables.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/fixtures/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/fixtures/github_schema.graphql +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/fixtures/github_schema.json +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/fixtures/kitchen_sink.graphql +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/fixtures/large_query.graphql +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/fixtures/schema_kitchen_sink.graphql +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_ast.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_block_string.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_block_string_fuzz.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_character_classes.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_lexer.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_location.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_parser.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_predicates.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_print_string.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_printer.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_schema_coordinate_lexer.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_schema_parser.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_schema_printer.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_source.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/language/test_visitor.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_async_reduce.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_boxed_awaitabe_or_value.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_cached_property.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_convert_case.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_description.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_did_you_mean.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_format_list.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_frozen_error.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_gather_with_cancel.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_group_by.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_identity_func.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_inspect.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_is_awaitable.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_is_iterable.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_merge_kwargs.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_natural_compare.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_path.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_print_path_list.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_ref_map.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_ref_set.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_simple_pub_sub.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_suggestion_list.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/pyutils/test_undefined.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/star_wars_data.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/star_wars_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/test_docs.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/test_graphql.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/test_star_wars_introspection.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/test_star_wars_query.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/test_star_wars_validation.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/test_user_registry.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/test_version.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/type/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/type/test_assert_name.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/type/test_custom_scalars.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/type/test_definition.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/type/test_directives.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/type/test_enum.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/type/test_extensions.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/type/test_introspection.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/type/test_predicate.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/type/test_scalars.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/type/test_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/type/test_validation.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_ast_from_value.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_ast_to_dict.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_build_ast_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_build_client_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_coerce_input_value.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_concat_ast.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_extend_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_find_breaking_changes.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_find_schema_changes.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_get_introspection_query.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_get_operation_ast.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_introspection_from_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_lexicographic_sort_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_map_schema_config.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_print_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_replace_variables.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_resolve_schema_coordinate.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_separate_operations.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_sort_value_node.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_strip_ignored_characters.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_strip_ignored_characters_fuzz.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_type_comparators.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_type_from_ast.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_type_info.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_validate_input_value.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_value_from_ast.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_value_from_ast_untyped.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utilities/test_value_to_literal.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utils/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utils/assert_equal_awaitables_or_values.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utils/assert_matching_values.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utils/dedent.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utils/gen_fuzz_strings.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utils/test_assert_equal_awaitables_or_values.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utils/test_assert_matching_values.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utils/test_dedent.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utils/test_gen_fuzz_strings.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utils/viral_schema.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/utils/viral_sdl.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/__init__.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/harness.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_defer_stream_directive_label.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_defer_stream_directive_on_root_field.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_defer_stream_directive_on_valid_operations.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_executable_definitions.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_fields_on_correct_type.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_fragments_on_composite_types.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_known_argument_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_known_directives.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_known_fragment_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_known_operation_types.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_known_type_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_lone_anonymous_operation.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_lone_schema_definition.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_max_introspection_depth_rule.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_no_deprecated.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_no_fragment_cycles.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_no_schema_introspection.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_no_undefined_variables.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_no_unused_fragments.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_no_unused_variables.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_overlapping_fields_can_be_merged.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_possible_fragment_spreads.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_possible_type_extensions.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_provided_required_arguments.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_scalar_leafs.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_single_field_subscriptions.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_stream_directive_on_list_field.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_unique_argument_definition_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_unique_argument_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_unique_directive_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_unique_directives_per_location.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_unique_enum_value_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_unique_field_definition_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_unique_fragment_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_unique_input_field_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_unique_operation_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_unique_operation_types.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_unique_type_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_unique_variable_names.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_validation.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_values_of_correct_type.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_variables_are_input_types.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tests/validation/test_variables_in_allowed_position.py +0 -0
- {graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/tox.ini +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: graphql-core
|
|
3
|
-
Version: 3.3.
|
|
3
|
+
Version: 3.3.0b2
|
|
4
4
|
Summary: GraphQL-core is a Python port of GraphQL.js, the JavaScript reference implementation for GraphQL.
|
|
5
5
|
Keywords: graphql
|
|
6
6
|
Author: Christoph Zwerschke
|
|
@@ -42,8 +42,8 @@ with GraphQL.js.
|
|
|
42
42
|
The current stable version 3.2.11 of GraphQL-core is up-to-date with GraphQL.js
|
|
43
43
|
version 16.14.1 and supports Python versions 3.7 to 3.14.
|
|
44
44
|
|
|
45
|
-
You can also try out the latest beta version 3.3.
|
|
46
|
-
which is up-to-date with GraphQL.js version 17.0.
|
|
45
|
+
You can also try out the latest beta version 3.3.0b2 of GraphQL-core,
|
|
46
|
+
which is up-to-date with GraphQL.js version 17.0.0b2.
|
|
47
47
|
This new minor version of GraphQL-core also supports Python versions 3.10 to 3.14.
|
|
48
48
|
|
|
49
49
|
Note that for various reasons, GraphQL-core does not use SemVer like GraphQL.js.
|
|
@@ -18,8 +18,8 @@ with GraphQL.js.
|
|
|
18
18
|
The current stable version 3.2.11 of GraphQL-core is up-to-date with GraphQL.js
|
|
19
19
|
version 16.14.1 and supports Python versions 3.7 to 3.14.
|
|
20
20
|
|
|
21
|
-
You can also try out the latest beta version 3.3.
|
|
22
|
-
which is up-to-date with GraphQL.js version 17.0.
|
|
21
|
+
You can also try out the latest beta version 3.3.0b2 of GraphQL-core,
|
|
22
|
+
which is up-to-date with GraphQL.js version 17.0.0b2.
|
|
23
23
|
This new minor version of GraphQL-core also supports Python versions 3.10 to 3.14.
|
|
24
24
|
|
|
25
25
|
Note that for various reasons, GraphQL-core does not use SemVer like GraphQL.js.
|
|
@@ -52,7 +52,7 @@ author = "Christoph Zwerschke"
|
|
|
52
52
|
# The short X.Y version.
|
|
53
53
|
# version = '3.3'
|
|
54
54
|
# The full version, including alpha/beta/rc tags.
|
|
55
|
-
version = release = "3.3.
|
|
55
|
+
version = release = "3.3.0b2"
|
|
56
56
|
|
|
57
57
|
# The language for content autogenerated by Sphinx. Refer to documentation
|
|
58
58
|
# for a list of supported languages.
|
|
@@ -100,7 +100,7 @@ graphql_modules = {
|
|
|
100
100
|
# be nitpicky
|
|
101
101
|
nitpicky = True
|
|
102
102
|
# but not too nitpicky
|
|
103
|
-
suppress_warnings = ["ref.class", "ref.obj", "ref.python"]
|
|
103
|
+
suppress_warnings = ["ref.attr", "ref.class", "ref.obj", "ref.python"]
|
|
104
104
|
|
|
105
105
|
# The name of the Pygments (syntax highlighting) style to use.
|
|
106
106
|
pygments_style = "sphinx"
|
|
@@ -127,6 +127,7 @@ Compare two GraphQLSchemas and detect changes:
|
|
|
127
127
|
.. autoclass:: BreakingChangeType
|
|
128
128
|
.. autoclass:: DangerousChange
|
|
129
129
|
.. autoclass:: DangerousChangeType
|
|
130
|
+
.. autoclass:: SchemaChange
|
|
130
131
|
|
|
131
132
|
Resolve a schema coordinate to the schema element it refers to:
|
|
132
133
|
|
|
@@ -249,6 +249,7 @@ from .utilities import (
|
|
|
249
249
|
DangerousChangeType,
|
|
250
250
|
SafeChange,
|
|
251
251
|
SafeChangeType,
|
|
252
|
+
SchemaChange,
|
|
252
253
|
find_breaking_changes,
|
|
253
254
|
find_dangerous_changes,
|
|
254
255
|
find_schema_changes,
|
|
@@ -439,6 +440,9 @@ from .validation import (
|
|
|
439
440
|
specified_rules,
|
|
440
441
|
recommended_rules,
|
|
441
442
|
# Individual validation rules.
|
|
443
|
+
DeferStreamDirectiveLabel,
|
|
444
|
+
DeferStreamDirectiveOnRootField,
|
|
445
|
+
DeferStreamDirectiveOnValidOperationsRule,
|
|
442
446
|
ExecutableDefinitionsRule,
|
|
443
447
|
FieldsOnCorrectTypeRule,
|
|
444
448
|
FragmentsOnCompositeTypesRule,
|
|
@@ -457,6 +461,7 @@ from .validation import (
|
|
|
457
461
|
ProvidedRequiredArgumentsRule,
|
|
458
462
|
ScalarLeafsRule,
|
|
459
463
|
SingleFieldSubscriptionsRule,
|
|
464
|
+
StreamDirectiveOnListField,
|
|
460
465
|
UniqueArgumentNamesRule,
|
|
461
466
|
UniqueDirectivesPerLocationRule,
|
|
462
467
|
UniqueFragmentNamesRule,
|
|
@@ -496,6 +501,7 @@ from .execution import (
|
|
|
496
501
|
# Types
|
|
497
502
|
AsyncWorkFinishedInfo,
|
|
498
503
|
ExecutionHooks,
|
|
504
|
+
VariableValues,
|
|
499
505
|
Executor,
|
|
500
506
|
ExecutionResult,
|
|
501
507
|
ExperimentalIncrementalExecutionResults,
|
|
@@ -572,6 +578,9 @@ __all__ = [
|
|
|
572
578
|
"ConstValueNode",
|
|
573
579
|
"DangerousChange",
|
|
574
580
|
"DangerousChangeType",
|
|
581
|
+
"DeferStreamDirectiveLabel",
|
|
582
|
+
"DeferStreamDirectiveOnRootField",
|
|
583
|
+
"DeferStreamDirectiveOnValidOperationsRule",
|
|
575
584
|
"DefinitionNode",
|
|
576
585
|
"DirectiveArgumentCoordinateNode",
|
|
577
586
|
"DirectiveCoordinateNode",
|
|
@@ -751,6 +760,7 @@ __all__ = [
|
|
|
751
760
|
"ScalarLeafsRule",
|
|
752
761
|
"ScalarTypeDefinitionNode",
|
|
753
762
|
"ScalarTypeExtensionNode",
|
|
763
|
+
"SchemaChange",
|
|
754
764
|
"SchemaCoordinateNode",
|
|
755
765
|
"SchemaDefinitionNode",
|
|
756
766
|
"SchemaExtensionNode",
|
|
@@ -760,6 +770,7 @@ __all__ = [
|
|
|
760
770
|
"SingleFieldSubscriptionsRule",
|
|
761
771
|
"Source",
|
|
762
772
|
"SourceLocation",
|
|
773
|
+
"StreamDirectiveOnListField",
|
|
763
774
|
"StringValueNode",
|
|
764
775
|
"SubsequentIncrementalExecutionResult",
|
|
765
776
|
"Thunk",
|
|
@@ -800,6 +811,7 @@ __all__ = [
|
|
|
800
811
|
"ValuesOfCorrectTypeRule",
|
|
801
812
|
"VariableDefinitionNode",
|
|
802
813
|
"VariableNode",
|
|
814
|
+
"VariableValues",
|
|
803
815
|
"VariablesAreInputTypesRule",
|
|
804
816
|
"VariablesInAllowedPositionRule",
|
|
805
817
|
"Visitor",
|
|
@@ -5,6 +5,8 @@ from __future__ import annotations
|
|
|
5
5
|
from sys import exc_info
|
|
6
6
|
from typing import TYPE_CHECKING, Any, TypeAlias, TypedDict
|
|
7
7
|
|
|
8
|
+
from ..pyutils import Undefined
|
|
9
|
+
|
|
8
10
|
if TYPE_CHECKING:
|
|
9
11
|
from collections.abc import Collection
|
|
10
12
|
|
|
@@ -108,12 +110,26 @@ class GraphQLError(Exception):
|
|
|
108
110
|
"""
|
|
109
111
|
|
|
110
112
|
original_error: Exception | None
|
|
111
|
-
"""
|
|
113
|
+
"""Original error that caused this GraphQLError, if one exists
|
|
114
|
+
|
|
115
|
+
.. deprecated:: 3.3
|
|
116
|
+
Use :attr:`cause` instead to better align with the standard exception
|
|
117
|
+
:attr:`~BaseException.__cause__`.
|
|
118
|
+
"""
|
|
119
|
+
|
|
120
|
+
cause: Any
|
|
121
|
+
"""The cause of this error, if one exists
|
|
122
|
+
|
|
123
|
+
The value passed as the ``cause`` when creating this error. Adopts the
|
|
124
|
+
convention of the standard exception cause and is also exposed as the
|
|
125
|
+
:attr:`~BaseException.__cause__` when it is an exception.
|
|
126
|
+
"""
|
|
112
127
|
|
|
113
128
|
extensions: GraphQLErrorExtensions | None
|
|
114
129
|
"""Extension fields to add to the formatted error"""
|
|
115
130
|
|
|
116
131
|
__slots__ = (
|
|
132
|
+
"cause",
|
|
117
133
|
"extensions",
|
|
118
134
|
"locations",
|
|
119
135
|
"message",
|
|
@@ -135,15 +151,27 @@ class GraphQLError(Exception):
|
|
|
135
151
|
path: Collection[str | int] | None = None,
|
|
136
152
|
original_error: Exception | None = None,
|
|
137
153
|
extensions: GraphQLErrorExtensions | None = None,
|
|
154
|
+
cause: Any = Undefined,
|
|
138
155
|
) -> None:
|
|
139
156
|
"""Initialize a GraphQLError."""
|
|
140
157
|
super().__init__(message)
|
|
141
158
|
self.message = message
|
|
142
159
|
|
|
160
|
+
# The cause defaults to the (deprecated) original error when not given.
|
|
161
|
+
has_cause = cause is not Undefined
|
|
162
|
+
self.cause = cause if has_cause else original_error
|
|
163
|
+
|
|
143
164
|
if path and not isinstance(path, list):
|
|
144
165
|
path = list(path)
|
|
145
166
|
self.path = path or None # type: ignore
|
|
146
|
-
|
|
167
|
+
|
|
168
|
+
# An Error provided as the cause is also exposed as the original error
|
|
169
|
+
# for backward compatibility.
|
|
170
|
+
cause_value = cause if has_cause else None
|
|
171
|
+
underlying_error = original_error
|
|
172
|
+
if underlying_error is None and isinstance(cause_value, Exception):
|
|
173
|
+
underlying_error = cause_value
|
|
174
|
+
self.original_error = underlying_error
|
|
147
175
|
|
|
148
176
|
# Compute list of blame nodes.
|
|
149
177
|
if nodes and not isinstance(nodes, list):
|
|
@@ -170,16 +198,25 @@ class GraphQLError(Exception):
|
|
|
170
198
|
locations = [loc.source.get_location(loc.start) for loc in node_locations]
|
|
171
199
|
self.locations = locations or None
|
|
172
200
|
|
|
201
|
+
# Adopt the cause as the standard exception cause when it is one, so
|
|
202
|
+
# that the cause chain is reported without duplicating the traceback.
|
|
203
|
+
if isinstance(cause_value, BaseException):
|
|
204
|
+
self.__cause__ = cause_value
|
|
205
|
+
|
|
206
|
+
# Preserve the traceback of an explicit original error. The traceback of
|
|
207
|
+
# a cause is not copied over, since Python already reports cause chains.
|
|
173
208
|
if original_error:
|
|
174
209
|
self.__traceback__ = original_error.__traceback__
|
|
175
|
-
if
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
210
|
+
if not self.__cause__:
|
|
211
|
+
if original_error.__cause__:
|
|
212
|
+
self.__cause__ = original_error.__cause__
|
|
213
|
+
elif original_error.__context__:
|
|
214
|
+
self.__context__ = original_error.__context__
|
|
215
|
+
|
|
216
|
+
if extensions is None and underlying_error is not None:
|
|
217
|
+
original_extensions = getattr(underlying_error, "extensions", None)
|
|
218
|
+
if isinstance(original_extensions, dict):
|
|
219
|
+
extensions = original_extensions
|
|
183
220
|
self.extensions = extensions or {}
|
|
184
221
|
if not self.__traceback__:
|
|
185
222
|
self.__traceback__ = exc_info()[2]
|
|
@@ -217,7 +254,7 @@ class GraphQLError(Exception):
|
|
|
217
254
|
and all(
|
|
218
255
|
getattr(self, slot) == getattr(other, slot)
|
|
219
256
|
for slot in self.__slots__
|
|
220
|
-
if slot
|
|
257
|
+
if slot not in ("cause", "original_error")
|
|
221
258
|
)
|
|
222
259
|
) or (
|
|
223
260
|
isinstance(other, dict)
|
|
@@ -225,7 +262,7 @@ class GraphQLError(Exception):
|
|
|
225
262
|
and all(
|
|
226
263
|
slot in self.__slots__ and getattr(self, slot) == other.get(slot)
|
|
227
264
|
for slot in other
|
|
228
|
-
if slot
|
|
265
|
+
if slot not in ("cause", "original_error")
|
|
229
266
|
)
|
|
230
267
|
)
|
|
231
268
|
|
|
@@ -30,7 +30,12 @@ from .types import (
|
|
|
30
30
|
StreamItemsResult,
|
|
31
31
|
)
|
|
32
32
|
from .middleware import MiddlewareManager
|
|
33
|
-
from .values import
|
|
33
|
+
from .values import (
|
|
34
|
+
get_argument_values,
|
|
35
|
+
get_directive_values,
|
|
36
|
+
get_variable_values,
|
|
37
|
+
VariableValues,
|
|
38
|
+
)
|
|
34
39
|
from .execute import (
|
|
35
40
|
create_source_event_stream,
|
|
36
41
|
execute,
|
|
@@ -80,6 +85,7 @@ __all__ = [
|
|
|
80
85
|
"StreamItemsResult",
|
|
81
86
|
"StreamRecord",
|
|
82
87
|
"SubsequentIncrementalExecutionResult",
|
|
88
|
+
"VariableValues",
|
|
83
89
|
"create_source_event_stream",
|
|
84
90
|
"default_field_resolver",
|
|
85
91
|
"default_type_resolver",
|
|
@@ -89,6 +89,7 @@ from .find_schema_changes import (
|
|
|
89
89
|
DangerousChangeType,
|
|
90
90
|
SafeChange,
|
|
91
91
|
SafeChangeType,
|
|
92
|
+
SchemaChange,
|
|
92
93
|
find_breaking_changes,
|
|
93
94
|
find_dangerous_changes,
|
|
94
95
|
find_schema_changes,
|
|
@@ -124,6 +125,7 @@ __all__ = [
|
|
|
124
125
|
"ResolvedSchemaElement",
|
|
125
126
|
"SafeChange",
|
|
126
127
|
"SafeChangeType",
|
|
128
|
+
"SchemaChange",
|
|
127
129
|
"TypeInfo",
|
|
128
130
|
"TypeInfoVisitor",
|
|
129
131
|
"ast_from_value",
|
|
@@ -8,9 +8,9 @@ from typing import NamedTuple
|
|
|
8
8
|
__all__ = ["version", "version_info", "version_info_js", "version_js"]
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
version = "3.3.
|
|
11
|
+
version = "3.3.0b2"
|
|
12
12
|
|
|
13
|
-
version_js = "17.0.
|
|
13
|
+
version_js = "17.0.0b2"
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
_re_version = re.compile(r"(\d+)\.(\d+)\.(\d+)(\D*)(\d*)")
|
|
@@ -77,6 +77,7 @@ def describe_graphql_error():
|
|
|
77
77
|
["a", "b", "c"],
|
|
78
78
|
Exception("test"),
|
|
79
79
|
{"foo": "bar"},
|
|
80
|
+
cause=Exception("test"),
|
|
80
81
|
)
|
|
81
82
|
assert set(e.formatted) == {"message", "path", "locations", "extensions"}
|
|
82
83
|
|
|
@@ -128,6 +129,67 @@ def describe_graphql_error():
|
|
|
128
129
|
assert e.original_error is original
|
|
129
130
|
assert str(e.original_error) == "original"
|
|
130
131
|
|
|
132
|
+
def does_not_add_a_cause_without_a_cause():
|
|
133
|
+
e = GraphQLError("msg")
|
|
134
|
+
assert e.cause is None
|
|
135
|
+
|
|
136
|
+
def does_not_copy_over_the_traceback_of_cause():
|
|
137
|
+
try:
|
|
138
|
+
raise RuntimeError("cause")
|
|
139
|
+
except RuntimeError as runtime_error:
|
|
140
|
+
cause = runtime_error
|
|
141
|
+
e = GraphQLError("msg", cause=cause)
|
|
142
|
+
assert e.cause is cause
|
|
143
|
+
assert e.__cause__ is cause
|
|
144
|
+
assert cause.__traceback__ is not None
|
|
145
|
+
assert e.__traceback__ is not cause.__traceback__
|
|
146
|
+
|
|
147
|
+
def uses_an_error_cause_as_the_original_error_for_compatibility():
|
|
148
|
+
class CustomError(Exception):
|
|
149
|
+
def __init__(self, message: str) -> None:
|
|
150
|
+
super().__init__(message)
|
|
151
|
+
self.extensions = {"original": "extensions"}
|
|
152
|
+
|
|
153
|
+
cause = CustomError("cause")
|
|
154
|
+
e = GraphQLError("msg", cause=cause)
|
|
155
|
+
assert e.message == "msg"
|
|
156
|
+
assert e.cause is cause
|
|
157
|
+
assert e.original_error is cause
|
|
158
|
+
assert e.__cause__ is cause
|
|
159
|
+
assert e.extensions == {"original": "extensions"}
|
|
160
|
+
|
|
161
|
+
def preserves_a_non_error_cause_without_setting_original_error():
|
|
162
|
+
e = GraphQLError("msg", cause="cause")
|
|
163
|
+
assert e.cause == "cause"
|
|
164
|
+
assert e.original_error is None
|
|
165
|
+
assert e.__cause__ is None
|
|
166
|
+
|
|
167
|
+
def prefers_cause_and_original_error_separately():
|
|
168
|
+
try:
|
|
169
|
+
raise RuntimeError("original")
|
|
170
|
+
except RuntimeError as runtime_error:
|
|
171
|
+
original_error = runtime_error
|
|
172
|
+
cause = ValueError("cause")
|
|
173
|
+
e = GraphQLError("msg", original_error=original_error, cause=cause)
|
|
174
|
+
assert e.cause is cause
|
|
175
|
+
assert e.original_error is original_error
|
|
176
|
+
assert e.__cause__ is cause
|
|
177
|
+
assert e.__traceback__ is original_error.__traceback__
|
|
178
|
+
|
|
179
|
+
def creates_new_stack_if_cause_has_no_stack():
|
|
180
|
+
try:
|
|
181
|
+
raise RuntimeError
|
|
182
|
+
except RuntimeError as runtime_error:
|
|
183
|
+
current_traceback = runtime_error.__traceback__
|
|
184
|
+
cause = RuntimeError("cause")
|
|
185
|
+
e = GraphQLError("msg", cause=cause)
|
|
186
|
+
assert cause.__traceback__ is None
|
|
187
|
+
assert current_traceback is not None
|
|
188
|
+
assert e.__traceback__ is current_traceback
|
|
189
|
+
assert e.message == "msg"
|
|
190
|
+
assert e.cause is cause
|
|
191
|
+
assert e.original_error is cause
|
|
192
|
+
|
|
131
193
|
def converts_nodes_to_positions_and_locations():
|
|
132
194
|
e = GraphQLError("msg", [field_node])
|
|
133
195
|
assert e.nodes == [field_node]
|
|
@@ -188,6 +250,25 @@ def describe_graphql_error():
|
|
|
188
250
|
assert own_empty_error.original_error is original_error
|
|
189
251
|
assert own_empty_error.extensions == {}
|
|
190
252
|
|
|
253
|
+
def defaults_to_cause_extension_only_if_arg_is_not_passed():
|
|
254
|
+
original_extensions = {"original": "extensions"}
|
|
255
|
+
cause = GraphQLError("original", extensions=original_extensions)
|
|
256
|
+
inherited_error = GraphQLError("InheritedError", cause=cause)
|
|
257
|
+
assert inherited_error.message == "InheritedError"
|
|
258
|
+
assert inherited_error.cause is cause
|
|
259
|
+
assert inherited_error.extensions is original_extensions
|
|
260
|
+
|
|
261
|
+
own_extensions = {"own": "extensions"}
|
|
262
|
+
own_error = GraphQLError("OwnError", cause=cause, extensions=own_extensions)
|
|
263
|
+
assert own_error.message == "OwnError"
|
|
264
|
+
assert own_error.cause is cause
|
|
265
|
+
assert own_error.extensions is own_extensions
|
|
266
|
+
|
|
267
|
+
own_empty_error = GraphQLError("OwnEmptyError", cause=cause, extensions={})
|
|
268
|
+
assert own_empty_error.message == "OwnEmptyError"
|
|
269
|
+
assert own_empty_error.cause is cause
|
|
270
|
+
assert own_empty_error.extensions == {}
|
|
271
|
+
|
|
191
272
|
def serializes_to_include_message():
|
|
192
273
|
e = GraphQLError("msg")
|
|
193
274
|
assert str(e) == "msg"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/execution/get_variable_signature.py
RENAMED
|
File without changes
|
|
File without changes
|
{graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/execution/incremental_publisher.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/language/schema_coordinate_lexer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{graphql_core-3.3.0b1 → graphql_core-3.3.0b2}/src/graphql/pyutils/boxed_awaitable_or_value.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|