schema-stitching
schema-stitching copied to clipboard
chore(deps): update dependency graphql to v1.13.23
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| graphql (source, changelog) | 1.11.6 -> 1.13.23 |
Release Notes
rmosolgo/graphql-ruby (graphql)
v1.13.23
v1.13.22
v1.13.21
v1.13.20
v1.13.19
Bug fixes
- Performance: don't re-encode schema member names #​4323
- Performance: fix a duplicate field.type call #​4316
- Performance: use
scope: falsefor introspection types #​4315 - Performance: improve argument coercion and validation #​4312
- Performance: improve interface type membership lookup #​4309
v1.13.18
New Features
hash_key:: perform[...]lookups even when the underlying object isn't a Hash #​4286
v1.13.17
Bug fixes
- Handle ExecutionErrors from prepare hooks when calculating complexity #​4248
v1.13.16
New Features
- Make variable validation respect
validate_max_errors#​4178
v1.13.15
Bug fixes
- Remove partial OpenTelementry tracing #​4086
- Properly use
Query#validateto skip static validation #​3881
v1.13.14
New Features
v1.13.13
New features
- Datadog: update tracer for ddtrace 1.0 #​4038
- Datadog: Add
#prepare_spanhook for custom tags #​4067 - Tracing: Add
OpenTelementrytracing #​4077
v1.13.12
- Pass
context[:dataloader]to multiplex context #​4026 - Add a deprecation warning to
.accepts_definitions#​4002
v1.13.11
Deprecations
RangeAddwarns whencontext:isn't provided (it's required in GraphQL-Ruby 2.0) #​3996
v1.13.10
Breaking changes
idfields: #​3914 Previously, when a field was created withglobal_id_field, it would pass a legacy-style type definition (an instance ofGraphQL::ObjectType) toSchema.id_from_object(...). Now, it passes a class-based definition instead. If yourid_from_object(...)method was using any methods from those legacy definitions, they should be migrated. (Most notably, uses oftype.nameshould be migrated totype.graphql_name.)
Deprecations
- Connections: deprecation warnings were added to configuration methods
.bidirectional_pagination = ...and.default_nodes_field = .... These two configurations don't apply to the new pagination implementation, so they can be removed. #​3918
v1.13.9
Breaking changes
-
Authorization: #​3903 In graphql-ruby v1.12.17-1.13.8, when input objects used
prepare: -> { ... }, the returned values were not authorized at all. However, this release goes back to the behavior from 1.12.16 and before, where a returnedHashis validated just like an input object that didn't have aprepare:hook. To get the previous behavior, you can implementdef self.authorized?in the input object you want to skip authorization in:class Types::BaseInputObject < GraphQL::Schema::InputObject def self.authorized?(obj, value, ctx) if value.is_a?(self) super else true # graphql-ruby skipped auth in this case for v1.12.17-v1.13.8 end end end
Bug fixes
- Support re-setting
query.validate = ...after a query is initialized #​3881 - Handle validation errors in connection complexity calculations #​3906
- Input Objects: try to authorize values when
prepare:returns a Hash (this was default < v1.12.16) #​3903 - SDL: fix when a type has two directives
v1.13.8
Bug fixes
- Introspection query: hide newly-supported fields behind arguments, maintain backwards-compatible INTROSPECTION_QUERY #​3877
v1.13.7
New Features
- Arguments:
replace_null_with_default: truereplaces incomingnulls with the configureddefault_value:#​3871 - Arguments: support
dig: [key1, key2, ...]for nested hash key access #​3856 - Generators: support more Postgresql field types #​3577
- Generators: support downcased generator argument types #​3577
- Generators: add an input type generator #​3577
- Generators: support namespaces in generators #​3577
Bug Fixes
- Field: better error for nil
owner#​3870 - ISO8601DateTime: don't accept inputs with partial time parts #​3862
- SDL: fix for base connection classes that implement interfaces #​3859
- Cops: find
required: trueonf.argumentcalls (with explicit receiver) #​3858 - Analysis: handle undefined or hidden fields with
nilinvisitor.field_definition#​3857
v1.13.6
New features
- Introspection: support
__Schema.description,__Directive.isRepeatable,__Type.specifiedByUrl, and__DirectiveLocation.VARIABLE_DEFINITION#​3854 - Directives: Call
Directive.resolve_eachfor list items #​3853 - Dataloader: Run each list item in its own fiber (to support batching across list items) #​3841
Bug fixes
- RelationConnection: Preserve
OFFSETwhen it's already set on the relation #​3846 Types::ISO8601Date: Accept default values as Ruby date objects #​3563
v1.13.5
New features
- Directives: support
repeatabledirectives #​3837 - Tracing: use
context[:fallback_transaction_name]when operations aren't named #​3778
Bug fixes
- Performance: improve performance of queries with directives #​3835
- Fix crash on undefined constant
NodeField#​3832 - Fix crash on partially-required
ActiveSupport#​3829
v1.13.4
Bug fixes
- Connections: Fix regression in 1.13.3 on unbounded Relation connections #​3822
v1.13.3
Deprecations
GraphQL::Relay::NodeFieldandGraphQL::Relay::NodesFieldare deprecated; useGraphQL::Types::Relay::HasNodesFieldorGraphQL::Types::Relay::HasNodeFieldinstead. (The underlying field instances require a reference to their owner type, butNodeFieldandNodesFieldcan't do that, since they're shared instances) #​3791
New features
- Arguments: support
required: :nullableto make an argument required to be present, even if it'snull#​3784 - Connections: When paginating an AR::Relation, use already-loaded results if possible #​3790
- Tracing: Support DRY::Notifications #​3776
- Improve the error when a Ruby method doesn't support the defined GraphQL arguments #​3785
- Input Objects: call
.authorized?on them at runtime #​3786 - Field extensions: add
extras(...)for extension-related extras with automatic cleanup #​3787
Bug fixes
- Validation: accept nullable variable types for arguments with default values #​3819
- Validation: raise a better error when a schema receives a
query { ... }but has no query root #​3815 - Improve the error message when
Schema.get_fieldcan't make sense of the arguments #​3815 - Subscriptions: losslessly serialize Rails 7 TimeWithZone #​3774
- Field Usage analyzer: handle errors from
prepare:hooks #​3794 - Schema from definition: fix default values with camelized arguments #​3780
v1.13.2
Bug fixes
- Authorization: only authorize arguments once, after they've been loaded with
loads:#​3782 - Execution: always provide an
Interpreter::Argumentsinstance ascontext[:current_arguments]#​3783
v1.13.1
Bug fixes
- Performance: don't re-encode schema member names #​4323
- Performance: fix a duplicate field.type call #​4316
- Performance: use
scope: falsefor introspection types #​4315 - Performance: improve argument coercion and validation #​4312
- Performance: improve interface type membership lookup #​4309
v1.13.0
Since this version, GraphQL-Ruby is tested on Ruby 2.4+ and Rails 4+ only.
Breaking changes
- ActionCable Subscriptions: No update is delivered if all subscriptions return
NO_UPDATE#​3713 - Subscription classes: If a subscription has a
scope ...configuration, then ascope:option is required in.trigger(...). Usescope ..., optional: trueto get the old behavior. #​3692 - Arguments whose default values are used aren't checked for authorization #​3665
- Complexity: Connection fields have a default complexity implementation based on
first/last/max_page_size#​3609 - Arguments: if arguments are configured to return
falsefor.visible?(context), their default values won't be applied
New features
- Visibility: A schema may contain multiple members with the same name. For each name, GraphQL-Ruby will use the one that returns true for
.visible?(context)for each query (and raise an error if multiple objects with the same name are visible). #​3651 #​3716 #​3725 - Dataloader:
nonblocking: truewill make GraphQL::Dataloader useFiber.schedulerto run fields and load data with sources, supporting non-blocking IO. #​3482 null: trueandrequired: trueare now default. GraphQL-Ruby includes some RuboCop cops,GraphQL/DefaultNullTrueandGraphQL/DefaultRequiredTrue, which identify and remove those needless configurations. #​3612- Interfaces may
implement ...other interfaces #​3613
Bug fixes
- Enum
value(...)and Input Objectargument(...)methods return the defined object #​3727 - When a field returns an array of mixed errors and values, the result will contain
nilwhere there were errors in the list #​3656
v1.12.24
Bug fixes
- SDL: fix parsing schemas where types have multiple directives #​3886
v1.12.23
Bug fixes
- FieldUsage analyzer: handle arguments that raise an error during
prepare:#​3795
v1.12.22
Bug fixes
- Static validation: fix regression and improve performance of fields_will_merge validation #​3761
v1.12.21
Bug fixes
- Validators: Fix
format:/allow_blank: trueto correctly accept a blank string #​3726 - Generators: generate a correct
Schema.type_errorhook #​3722
v1.12.20
New Features
- Static validation: improve error messages when fields won't merge #​3698
- Generators: improve id_from_object and type_error suggested implementations #​3710
- Connections: make the new connections module fall back to old connections #​3704
Bug fixes
- Dataloader: re-enqueue sources when one call to
yielddidn't satisfy their pending requests #​3707 - Subscriptions: Fix when JSON-typed arguments are used #​3705
v1.12.19
New Features
- Argument validation: Make
allow_nullandallow_blankwork standalone #​3671 - Add field and path info to Encoding errors #​3697
- Add
Resolver#unauthorized_objectfor handling loaded but unauthorized objects #​3689
Bug fixes
- Properly hook up
Schema.validate_max_errorsat runtime #​3691
v1.12.18
New features
- Subscriptions: Add
NO_UPDATEconstant for skipping subscription updates #​3664 - Validation: Add
Schema.validate_max_errors(integer)for halting validation when it reaches a certain number #​3683 - Call
self.load_...methods on Input objects for loading arguments #​3682 - Use
import_methodsin Refinements when available #​3674 AppsignalTracing: Addset_action_name#​3659
Bug fixes
- Authorize objects returned from custom
def load_...methods #​3682 - Fix
context[:current_field]when argumentprepare:hooks raise an error #​3666 - Raise a helpful error when a Resolver doesn't have a configured
type(...)#​3679 - Better error message when subscription clients are using ActionCable #​3668
- Dataloader: Fix dataloading of input object arguments #​3666
- Subscriptions: Fix parsing time zones #​3667
- Subscriptions: Fix parsing with non-null arguments #​3620
- Authorization: Call
schema.unauthorized_fieldfor unauthorized resolvers - Fix when literal
nullis used as a value for a list argument #​3660
v1.12.17
New features
- Support
extras: [:parent]#​3645 - Support ranges in
NumericalityValidator#​3635 - Add some Dataloader methods for testing #​3335
Bug fixes
- Support input object arguments called
context#​3654 - Support single-item default values for list arguments #​3652
- Ensure query strings are strings before running a query #​3628
- Fix empty hash kwargs for Ruby 3 #​3610
- Fix wrongly detecting Ipnut objects in authorization #​3606
v1.12.16
New features
- Connections: automatically support Mongoid 7.3 #​3599
- Support
def self.topic_forin Subscription classes for server-filtered streams #​3597 - When a list item or object field has an invalid null, stop executing that list or
Bug fixes
- Perf: don't refine String when unnecessary #​3593
- BigInt: always parse as base 10 #​3586
- Errors: only return one error when a node in a non-null connection has an invalid null #​3601
v1.12.15
New Features
- Subscriptions: add support for multi-tenant setups when deserializing context #​3574
- Analyzers: also track deprecated arguments #​3549
v1.12.14
Bug fixes
- SDL: support directive arguments referencing overridden built-in scalars #​3564
- Use
"_"as the name forfield :_, ...fields #​3560 - Support
sanitized_printer(...)in the schema definition forQuery#sanitized_query_string GraphQL::Backtrace: fix multiplex support
v1.12.13
Breaking changes
- Add a trailing newline to the
Schema.to_definitionoutput string #​3541
Bug fixes
- Properly handled list results in GraphQL::Backtrace #​3540
- Return plain
Hashes andArrays from queries instead of customized subclasses #​3533 - Fix errors raised from non-null fields #​3537
- Resolver: don't pass frozen array of extensions when none were configured #​3515
- Configure the right
ownerfornodeandnodesfields #​3509 - Improve error message for invalid enum value #​3507
- Properly halt on lazily-returned
context.skips #​3514 - Fix: call overridden
to_hmethods on InputObject classes #​3539 - Halt execution when a runtime directive argument raises a
GraphQL::ExecutionError#​3542
v1.12.12
Bug fixes
- Directives on inline fragments and fragment spreads receive
.resolve(...)calls #​3499
v1.12.11
Bug fixes
- Validate argument default values when adding them to the schema #​3496
- Resolvers inherit extensions from superclasses #​3500
- Greatly reduce runtime overhead #​3494, #​3505
- Remove hidden directives from introspection #​3488
v1.12.10
New features
- Use
GlobalID::Locator.locate_manyfor arrays of global Ids #​3481 - Support runtime directives (call
.resolve) onQUERY#​3474
Bug fixes
- Don't override Resolver
#load_*methods when they're inherited #​3486 - Fix validation of runtime directive arguments that have input objects #​3485
- Add a final newline to rake task output
- Don't add connection arguments to fields loaded from introspection responses #​3470
- Fix
rescue_fromon loading arguments #​3471
v1.12.9
New features
- Overriding
.authorized_new(...)to call.new(...)effectively skips object authorization #​3446 - Dataloader copies Fiber-local values from
Thread.current[...]when initializing new Fibers #​3461
Bug fixes
- Fix introspection of default value input objects #​3456
- Add
StandardError => ...condition to the generated GraphqlController #​3460 - Fix
Dataloader::Sourceon Ruby 3 with keyword arguments - Respect directive visibility at runtime #​3450
- ActionCable subscriptions: only deserialize the broadcast payload once #​3443
- Don't re-add
graphiql-railswhengenerate graphql:installis run twice #​3441 - Allow differing selections on mutually exclusive interfaces #​3063
- Respect
max_page_size: niloverride in fields #​3438
v1.12.8
Bug fixes
- Fix loading single-key hashes in Subscriptions #​3428
- Fix looking up
rescue_fromhandlers inherited from parent schema classes #​3431
v1.12.7
Breaking changes
Execution::Errors(which implementsrescue_from) was refactored so that, when an error matches more than one registered handler, it picks the most specific handler instead of the first match in the underlying Hash. This might "break" your code if your application registered a handler for a parent class and a child class, but expects instances of the child class to be handled by the handler for the parent class. (This seems very unlikely -- I consider the change to be a "breaking fix.") #​3404
New features
- Errors: pick the most specific error handlers (instead of an order-dependent selection) #​3404
- Add
node_nullable(...)connection configuration options #​3389 - Add
has_nodes_field(true|false)connection configuration option #​3388 - Store more metadata in argument-related static validation errors #​3406
Bug fixes
- Fix connection nullability settings to properly handle
false#​3386 - Fix returning
RawValues as part of a list #​3403 - Fix introspection for deprecated directive arguments #​3416
- Optimize
has_next_pagefor ActiveRecord::Relation connections #​3414 - Tracing: consistent event sequencing when queries are executed with
Query#result#​3408
v1.12.6
Breaking changes
- Static validation: previously, variables passed as arguments to input objects were not properly type-checked. #​3370 fixed type checking in this case, but may case existing (invalid) queries to break.
New features
- Connection types: support
edges_nullable(false)andedge_nullable(false)for non-null fields #​3376 - Connections: add
.argumentsreader to newPagination::Connectionclasses #​3360
Bug fixes
- Relation connection: Remove extra
COUNTquery from some scenarios #​3373 - Add a Bootsnap-style parsing cache when Bootsnap is detected #​3156
- Fix input validation for input object variables #​3370
v1.12.5
New features
- Resolvers: support
max_page_sizeconfig #​3338 - RangeAdd: call
range_add_edge(if supported) to improve stable connection support #​3341
Bug fixes
- Backtrace: fix new tracer when analyzing multiplex without executing it #​3342
- Dataloader: pass along
throws #​3333 - Skip possible_types filtering for non-interface types #​3336
- Improve debugging message for ListResultFailedError #​3339
v1.12.4
Bug fixes
- Allow prepended modules to add fields #​3325
- Fix ConnectionExtension when another extension short-circuits
resolve#​3326 - Backtrace: Fix GraphQL::Backtrace with static validation (used by graphql-client) #​3324
- Dataloader: Fix yield from root fiber when accessing arguments from analyzers. Fix arguments sometimes containing unresolved
Execution::Lazys #​3320 - Dataloader: properly pass raised errors to
handle_errorhandlers #​3319 - Fix NameError in validation error #​3303
- Dataloader: properly batch when parent fields were not batched #​3312
v1.12.3
Bug fixes
- Fix constant names for legacy scalar types
v1.12.2
Bug fixes
- SDL: fix parsing schemas where types have multiple directives #​3886
v1.12.1
New Features
- Argument validation: Make
allow_nullandallow_blankwork standalone #​3671 - Add field and path info to Encoding errors #​3697
- Add
Resolver#unauthorized_objectfor handling loaded but unauthorized objects #​3689
Bug fixes
- Properly hook up
Schema.validate_max_errorsat runtime #​3691
v1.12.0
Breaking changes
-
GraphQL::Schemadefaults toGraphQL::Execution::Interpreter,GraphQL::Analysis::AST,GraphQL::Pagination::Connections, andGraphQL::Execution::Errors. (#​3145) To get the previous (deprecated) behaviors:
v1.11.10
Bug fixes
- Properly hook up
Schema.max_validation_errorsat query runtime #​3690
v1.11.9
New Features
Schema.max_validation_errors(val)limits the number of errors that can be added during static validation #​3675
v1.11.8
Bug fixes
- Improve performance of
Schema.possible_types(t)for object types #​3172
v1.11.7
Breaking changes
-
Incoming integer values are properly bound (as per the spec) #​3206 To continue receiving out-of-bound integer values, add this to your schema's
def self.type_error(err, ctx)hook:def self.type_error(err, ctx) if err.is_a?(GraphQL::IntegerDecodingError) return err.integer_value # return it anyways, since this is how graphql-ruby used to work end
...
end
##### New features
- Support Ruby 3.0 #​3278
- Add validation timeout option #​3234
- Support Prometheus custom_labels in GraphQLCollector #​3215
##### Bug fixes
- Handle `GraphQL::UnauthorizedError` in interpreter in from arguments #​3276
- Set description for auto-generated `input:` argument #​3141
- Improve performance of fields will merge validation #​3228
- Use `Float` graphql type for ActiveRecord decimal columns #​3246
- Add some custom methods to ArrayConnection #​3238
- Fix generated fields for types ending Connection #​3223
- Improve runtime performance #​3217
- Improve argument handling when extensions shortcut the defined resolve #​3212
- Bind scalar ints as per the spec #​3206
- Validate that input object names are unique #​3205
#### 1.11.6 (29 October 2020)
##### Breaking changes
FieldExtension: pass extended values instead of originals to `after_resolve` #​3168
##### Deprecations
##### New features
- Accept additional options in `global_id_field` macro #​3196
##### Bug fixes
- Use `graphql_name` in `UnauthorizedError` default message (fixes #​3174) #​3176
- Improve error handling for base 64 decoding (in `UniqueWithinType`) #​3179
- Fix `.valid_isolated_input?` on parsed schemas (fixes #​3181) #​3182
- Fix fields nullability in subscriptions documentation #​3194
- Update `RangeAdd` to use new connections when available #​3195
#### 1.11.5 (30 September 2020)
##### New features
- SanitizedPrinter: accept `inline_variables: false` option and add `#redact_argument_value?` and `#redacted_argument_value` hooks #​3167
- GraphQL::Schema::Timeoout#max_seconds(query) can provide a per-query timeout duration #​3167
- Implement Interpreter::Arguments#fetch
- Assign `current_{path,field,arguments,object}` in `query.context` #​3139. The values at these keys change while the query is running.
- ActionCableSubscriptions: accept `use(..., namespace: "...")` for running multiple schemas in the same application #​3076
- Add `deprecation_reason:` to arguments #​3015
##### Bug fixes
- SanitizedPrinter: Fix lists and JSON scalars #​3171
- Improve retained memory in Schema.from_definition #​3153
- Make it easier to cache schema parsing #​3153
- Make sure deprecated arguments aren't required #​3137
- Use `.empty?` instead of `.length.zero?` in lexer #​3134
- Return a proper error when a stack error happens #​3129
- Assert valid input types on arguments #​3120
- Improve Validator#validate performance #​3125
- Don't wrap `RawValue` in ConnectionExtension #​3122
- Fix interface possible types visibility #​3124
#### 1.11.4 (24 August 2020)
##### Breaking changes
##### New features
- Add `node_nullable` option for `edge_type` #​3083
- Use module namespacing for template generators #​3098
##### Bug fixes
- Rescue `SystemStackError`s during validation #​3107
- Add `require 'digest/sha2'` for fingerprint #​3103
- Optimize `GraphQL::Query::Context#dig` #​3090
- Check if new connections before calling method on it (fixes #​3059) #​3100
- Thread field owner type through interpreter runtime (fixes #​3086) #​3099
- Check for visible interfaces on the type in warden #​3096
- Update `AppOpticsTracing` with latest changes in `PlatformTracing` #​3097
- Use throw instead of raise to halt subscriptions early #​3084
- Optimize `GraphQL::Query::Context#fetch` #​3081
#### 1.11.3 (13 August 2020)
##### Breaking changes
- Reverted the `required` and `default_value` argument behaviour change in 1.11.2 since it was not spec compliant #​3066
##### New features
- Improve resolver method conflict warning #​3069, #​3062
- Store arguments on `Mutation` instances after they're loaded #​3073
##### Bug fixes
- Fix connection wrappers on lazy lists #​3070
#### 1.11.2 (1 August 2020)
##### Breaking changes
- Previously, GraphQL-Ruby allowed _both_ `default_value: ...` and `required: true` in argument definitions. However, this definition doesn't make sense -- a default value is never used for a `required: true` argument. This configuration now raises an error. Remove the `default_value:` to get rid of the error. #​3011
##### New features
- Support Date, Time and OpenStruct in Subscription::Serialize #​3057
##### Bug fixes
- Speed up `DELETE_NODE` check #​3053
- Reject invalid enum values during definition #​3055
- Fix `.trigger` from unsubscribed ActionCable channel #​3051
- Fix error message from VariablesAreUsedAndDefined for anonymous queries #​3050
- Fix renaming variable identifiers in AST visitor #​3045
- Reject `default_value: ...` used with `required: true` during definition #​3011
- Use the configured `edge_class:` with new connections #​3036
- Don't call visible for unused arguments #​3030, #​3031
- Properly load directives from introspection results #​3021
- Reject interfaces as members of unions #​3024
- Load deprecation reason from introspection results #​3014
- Fix arguments caching when extension modify arguments #​3009
#### 1.11.1 (17 June 2020)
##### New Features
- Add `StatsdTracing` #​2996
##### Bug Fixes
- Raise the proper `InvalidNullError` when a mutation field returns an invalid `nil` #​2997
#### 1.11.0 (13 June 2020)
##### Breaking changes
- Global tracers are removed (deprecated since 1.7.4) #​2936
- Fields defined in camel case (`field :doStuff`) will not line up to methods that are underscore case (`def do_stuff`). Instead, the given symbol is used _verbatim_. #​2938 To work around this:
- Change the name of the method to match the field (eg, `def doStuff`)
- Change the name of the field to match the method (eg, `field :do_stuff`, let graphql-ruby camelize it for you)
- Or, add `resolver_method: :do_stuff` to explicitly map the field to a method on the object type definition
You can probably find instances of this in your application with a regexp like `/field :[a-z]+[A-Z]/`, and review them.
##### New features
- `extend SubscriptionRoot` is no longer necessary #​2770
- Add `broadcast: true` option to subscriptions #​2959
- Add `Edge#parent` to new connection classes #​2961
##### Bug fixes
- Use the field name as configured for hash key or method name #​2906
#### 1.10.12 (13 June 2020)
##### Bug fixes
- Fix compatibility of `YYYY-mm-dd` with `Types::ISO8601DateTime` #​2989
- Remove unused ivar in InputObject #​2987
#### 1.9.21 (12 June 2020)
##### Bug fixes
- Fix `extras:` on subscription fields #​2983
#### 1.10.11 (11 June 2020)
##### New features
- Scout tracer adds transaction name to traces #​2969
- `resolve_type` can optionally return a resolved object #​2976
- DateTime scalar returns a `Time` for better timezone handling #​2973
- Interpreter memory improvements #​2980, #​2978
- Support lazy values from field-level authorization hooks #​2977
- Object generator infers fields from model classes #​2954
- Add type-specific runtime errors #​2957
##### Bug fixes
- Fix for error when using `extras:` with subscription fields #​2984
- Improve Schema.error_handler inheritance #​2975
- Add raw_value to conflict warning list #​2958
- Arguments#each_value yields ArgumentValues #​2956
#### 1.10.10 (20 May 2020)
##### Bug Fixes
- Fix lazy `loads:` with list arguments #​2949
- Show object fields even when inherited ones are hidden #​2950
- Use `reverse_each` in instrumenters #​2945
- Fix underscored names in introspection loader #​2941
- Fix array input to Date/DateTime types #​2927
- Fix method conflict warnings on schema loader #​2934
- Fix some Ruby 2.7 warnings #​2925
#### 1.9.20 (20 May 2020)
##### Bug fixes
- Fix `default_value: {}` on Ruby 2.7
#### 1.10.9 (4 May 2020)
##### New features
- Add `Interpreter::Arguments#dig` #​2912
#### 1.10.8 (27 April 2020)
##### Breaking changes
- With the interpreter, `Query#arguments_for` returns `Interpreter::Arguments` instances instead of plain hashes. (They should work mostly the same, though.) #​2881
##### New features
- `Schema::Field#introspection?` returns true for built-in introspection-related fields
##### Bug fixes
- Fix Ruby 2.7 warning on `Schema.to_json` #​2905
- Pass `&block` to nested method calls to reduce stack depths #​2900
- Fix lazy `loads:` with list arguments #​2894
- Fix `loads:` on nested input object #​2895
- Rescue base64 encoding errors in the encoder #​2896
#### 1.10.7 (16 April 2020)
##### Breaking changes
- `Schema.from_introspection(...)` builds class-based schemas #​2876
##### New features
- `Date` and `DateTime` types also accept well-formatted strings #​2848
- `Schema.from_introspection(...)` builds class-based schemas #​2876
- `Schema#to_definition` now dumps all directives that were part of the original IDL, if the schema was parsed with `.from_definition` #​2879
##### Bug fixes
- Fix memory leak in legacy runtime #​2884
- Fix interface inheritance in legacy runtime #​2882
- Fix description on `List` and `NonNull` types (for introspection) #​2875
- Fix over-rescue of NoMethodError when building list responses #​2887
#### 1.10.6 (6 April 2020)
##### New features
- Add options to `implements(...)` and interface type visibility #​2791
- Add `Query#fingerprint` for logging #​2859
- Add `--playground` option to install generator #​2839
- Support lazy-loaded objects from input object `loads:` #​2834
##### Bug fixes
- Fix `Language::Nodes` equality: move `eql?` to `==` #​2861
- Make rake task properly detect rails `environment` task #​2862
- Fix `nil` override for `max_page_size` #​2843
- Fix `pageInfo` methods when they're called before `nodes` #​2845
- Make the default development error match a normal GraphQL error #​2825
- Fix `loads:` with `require: false` #​2833
- Fix typeerror for `BigInt` given `nil` #​2827
#### 1.10.5 (12 March 2020)
##### New features
- Add `#field_complexity` hook to `AST::QueryComplexity` analyzer #​2807
##### Bug fixes
- Pass `nonce: true` when encoding cursors #​2821
- Ignore empty-string cursors #​2821
- Properly pass along `Analysis::AST` to schema instances #​2820
- Support filtering unreachable types in schemas from IDL #​2816
- Use `Query#arguments_for` for lookahead arguments #​2811
- Fix pagination bug on old connections #​2799
- Support new connection system on old runtime #​2798
- Add details to raise CoercionErrors #​2796
#### 1.10.4 (3 March 2020)
##### Breaking changes
- When an argument is defined with a symbol (`argument :my_arg, ...`), that symbol is used _verbatim_ to build Ruby keyword arguments. Previously it was converted to underscore-case, but this autotransform was confusing and wrong in some cases. You may have to change the symbol in your `argument(...)` configuration if you were depending on that underscorization. #​2792
- Schemas from `.from_definition` previously had half-way connection support. It's now completely removed, so you have to add connection wrappers manually. See #​2782 for migration notes.
##### New features
- Add `Appoptics` tracing #​2789
- Add `Query#sanitized_query_string` #​2785
- Improved duplicate type error message #​2777
##### Bug fixes
- Fix arguments ending in numbers, so they're injected with the same name that they're configured with #​2792
- Improve `Query#arguments_for` with interpreter #​2781
- Fix visitor replacement of variable definitions #​2752
- Remove half-broken connection handling from `Schema.from_definition` #​2782
#### 1.10.3 (17 Feb 2020)
##### New features
- Support `loads:` with plain field arguments #​2720
- Support `raw_value(...)` to halt execution with a certain value #​2699
- `.read_subscription` can return `nil` to bypass executing a subscription #​2741
##### Bug fixes
- Connection wrappers are properly inherited #​2750
- `prepare(...)` is properly applied to default values in subscription fields #​2748
- Code tidying for RSpec warnings #​2741
- Include new analysis module when generating a schema #​2734
- Include directive argument types in printed schemas #​2733
- Use `module_parent_name` in Rails #​2713
- Fix overriding default scalars in build_from_definition #​2722
- Fix some non-null errors in lists
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
â™» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
- [ ] If you want to rebase/retry this PR, check this box
This PR was generated by Mend Renovate. View the repository job log.
💻 Website Preview
The latest changes are available as preview in: https://e727fda3.schema-stitching.pages.dev