Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Aug 28, 2024

Note: This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
graphql (source, changelog) 2.0.322.5.16 age confidence

Release Notes

rmosolgo/graphql-ruby (graphql)

v2.5.16

Compare Source

Bug fixes
  • fiber-storage: properly include dependency on Ruby < 3.2 #​5484
  • Fix typo in legacy_invalid_empty_selections_on_union_with_type warning #​5481

v2.5.15

Compare Source

New features
  • DetailedTrace: add separate spans for debug-only .inspect calls, support debug: false config #​5477
  • required: validator: Raise a developer error when all one_of: options are hidden, support allow_all_hidden: true to allow this case #​5474
  • GraphQL::Testing::MockActionCable: added to support testing ActionCableSubscriptions #​5482
  • legacy_invalid_empty_selections_on_union_with_type: new method added for better metadata about legacy behavior #​5480
Bug fixes
  • Fix typo in date encoding error #​5447
  • Fix schema printer bug #​5468
  • Ensure data exists for execution errors #​5452
  • Improve SDL directive argument coercion #​5469
  • Don't require fiber-storage on Ruby 3.2+ #​5456
  • Visibility: default to preload: true when Rails.env.staging? #​5409

v2.5.14

Compare Source

Bug fixes
  • Fix error when GraphQL-Batch is used (???) #​5444

v2.5.13

Compare Source

New features
  • Testing helpers: support visibility_profile: ... #​5439
Bug fixes
  • Directives: correctly handle schema directive arguments which are lists of input objects #​5440

v2.5.12

Compare Source

New features
  • Runtime: add hooks for experimental custom runtimes #​5425, #​5429
  • Lazy handling and Dataloader have been merged under the hood #​5422
  • Doc: merk load_application_object_failed as public #​5426

v2.5.11

Compare Source

Bug fixes
  • Dataloader: improve compatibility when objects are loaded by GraphQL-Batch but .authorized? uses Dataloader #​5400

v2.5.10

Compare Source

New features
  • Schema: Add .freeze_schema for minimal Ractor support #​5370
Bug fixes
  • Schema: inherit validation configurations #​5382
  • Visibility: fix inheriting visibility with preload: true #​5386
  • Improve error messages with interfaces from SDL #​5372
  • Remove needless counter in execution code #​5392
  • Reduce execution overhead in schemas built from SDL #​5393
  • RequiredValidator: remove hidden definitions from error message #​5396
  • .possible_types: don't return interfaces in this list #​5395
  • dataload_association: fix loading associations with different scopes on the same object #​5398

v2.5.9

Compare Source

New features
  • Improve metadata on Scalar coercion errors #​5375
Bug fixes
  • Directives: fix validation of Ruby values on definition directive arguments #​5377
  • loads:: fix typechecking of Interface loads: values #​5379

v2.5.8

Compare Source

New features
  • Timeout: support disabling during a query #​5361
  • Query::Partial: support running a fragment in isolation #​5362
Bug fixes
  • Visibility: improve performance for loadable? #​5355
  • RequiredValidator: Fix typo #​5359
  • Scalar validation: remove redundant infinity handling #​5358
  • Directives: fix validation of schema definition directives #​5368

v2.5.7

Compare Source

Bug fixes
  • PerfettoTrace: Handle non-ascii strings #​5351
  • Partial: Add #selected_operation_name to support GraphQL::Current #​5353

v2.5.6

Compare Source

New features
  • Execution: Add Query#run_partials for running sub-trees of valid queries #​5183

v2.5.5

Compare Source

Bug fixes
  • Visibility: fix when ::Rails doesn't have .env #​5339
  • Compatibility: restore default (legacy) behavior when no setting is configured #​5343
  • ActiveSupport::Notifications: fix fiber resume without previous event #​5335
  • Simplify non-null input object argument handling #​5333
  • Fix compatibility with ruby-head #​5342

v2.5.4

Compare Source

Bug fixes
  • ActiveRecordSource: Support composite primary keys #​5330
  • ActiveRecordAssociationSource: Support has_many associations #​5331
  • Remove broken Context#path method (use #current_path instead) #​5332

v2.5.3

Compare Source

Deprecations
  • Validation: two non-spec behaviors are deprecated:
    • When a query includes two scalar fields of different types which may occur in the same place in the response, the query was previously allowed. The spec says it should be rejected. This version emits a warning in this case. See Schema.allow_legacy_invalid_return_type_conflicts for migration support. #​4351
    • When a query selects a field which returns a Union, but doesn't make any subselections on the Union, the spec says the query should be rejected as invalid but previous GraphQL-Ruby allowed it. It now emits a warning. See Schema.allow_legacy_invalid_empty_selections_on_union for migration support #​5322
  • Complexity: several bugs about merging complexity cost across branches of a query have been fixed but require opting in. They may produce higher complexity scores. See Schema.complexity_cost_calculation_mode for migration support. #​4843
New features
  • AlwaysVisible: improve speed (using Schema::Visibility) #​5326
  • Return more descriptive errors when non-nullable list elements are null #​5301
  • Visibility: improve performance on large schemas #​5325

v2.5.2

Compare Source

New features
  • Resolver: accept deprecation_reason #​5320
Bug fixes
  • Visibility: hide argument types whose uses are all hidden (to match Warden) #​5291
  • InputObject: fix validation for nested input object with prepare: method configs #​5321

v2.5.1

Compare Source

Bug fixes
  • Fix error when GraphQL-Batch is used (???) #​5444

v2.5.0

Compare Source

Breaking changes
  • Subscriptions: GraphQL-Ruby now implements the spec's requirement that a subscription has only one root selection #​5250
  • Datadog trace: the custom prepare_span hook now receives an execution-related object instead of a hash of keywords. #​5298
New features
  • Tracers: APM tracers have been updated to reflect Dataloader's fiber stops and starts #​5296 #​5298

v2.4.17

Compare Source

v2.4.16

Compare Source

New features
Bug fixes
  • Parser: raise when variable definitions don't include a type name #​5305
  • PerfettoTrace: Don't create zombie ActiveSupport::Notifications subscribers #​5307

v2.4.15

Compare Source

New features
  • Schema.from_definition: support custom base type classes #​5282
  • Schema.from_definition: support type extensions #​5281
Bug fixes
  • Handle GraphQL::ExecutionError from resolve_type #​5274
  • Backtrace: handle inline fragments # 5274
  • run_graphql_field: fix when .authorized? calls Dataloader #​5289
  • InputObject: run validators even when custom def prepare is present #​5285
  • Multiplex: don't attempt to execute zero queries #​5278

v2.4.14

Compare Source

Bug fixes
  • New Relic tracing: fix dataloaded, skipped scalars #​5277

v2.4.13

Compare Source

v2.4.12

Compare Source

Breaking changes
  • Remove InvalidNullError#value which is always nil #​5256
New features
  • validate_timeout is 3 seconds by default #​5258
Bug fixes
  • New Relic: reimplement skipping scalars by default #​5271
  • Resolver: revert inheriting overridden graphql_name #​5260
  • Analysis: manually implement timeout to handle I/O better #​5263
  • Parser: properly handle extra token at the end of the query string #​5267
  • Validation: fix conflicting aliases inside fragment #​5268

v2.4.11

Compare Source

Breaking changes
  • Enums: enum value accessor methods have been switched to opt-in. Add value_methods(true) to your base enum class to opt back in. #​5255
New features
  • InvalidNullError: Improve default handling to add path and locations #​5257
  • DetailedTrace: Add a sampling profiler for creating detailed traces #​5244
Bug fixes
  • InvalidNullError: use GraphQL::Error as a base class #​5248
  • CI: test on Mongoid 8 and 9 #​5251

v2.4.10

Compare Source

New features
  • Dataloader: improve built-in Rails integration #​5213
Bug fixes
  • NewRelicTrace: don't double-count time waiting on Dataloader fibers
  • Fix possible type memberships inherited from superclass #​5236
  • Visibility: properly use configured contexts for visibility profiles #​5235
  • Enum: reduce needless value_method warnings #​5230 #​5220
  • Backtrace: fix error handling with rescue_from #​5227
  • Parser: return a proper error when variable type is missing #​5225

v2.4.9

Compare Source

New features
  • Enum: Enum types now have methods to access GraphQL-ready values directly #​5206 #​5218
Bug fixes
  • Validation: fix order dependency and mutual exclusion bug in required: { one_of: [ ... ] }
  • Backtrace: simplify trace setup and rendering code
  • Fix dependencies for Ruby 3.4 #​5199
  • Resolver: inherit description from superclass #​5195
  • Visibility: fix for when multiple implementations are all hidden #​5191

v2.4.8

Compare Source

New features
  • Subscriptions: support calling write_subscription within resolve #​5142
Bug fixes
  • Autoloading: improve autoloading of Tracing classes #​5190

v2.4.7

Compare Source

Bug fixes
  • Remove warning when code isn't eager-loaded #​5187
  • Add missing require "ostruct" in ActionCableSubscriptions #​5184

v2.4.6

Compare Source

Bug fixes
  • Autoloading: fix referencing built-in types #​5181
  • Autoloading: use Rails config.before_eager_load hook for better integration #​5182
  • loads:: Check possible types for loads:-only unions #​5180

v2.4.5

Compare Source

Breaking changes
  • In non-Rails production environments, GraphQL-Ruby will emit a warning about calling .eager_load! for better boot performance. #​5178
New features
  • Loading: GraphQL-Ruby now uses Ruby's autoload ... for many constants. #​5178
  • Input objects may be pattern matched (they implement #deconstruct_keys) #​5170
Bug fixes
  • Visibility: hide definition directives in SDL #​5175
  • Internals: use Fiber[...] for internal state instead of Thread.current #​5176
  • Dataloader: properly handle arrays of all falsey values #​5167 #​5169
  • Visibility: hide directives when their uses are all hidden #​5163
  • Require object types to have fields and require input objects to have arguments (to comply with the GraphQL spec) #​5137
  • Improve error message when a misplaced - is encountered #​5115

v2.4.4

Compare Source

  • Visibility: improve performance with sync #​5161

v2.4.3

Compare Source

Bug fixes
  • Lookahead: return an empty hash for .arguments when they raised a GraphQL::ExecutionError #​5155
  • Visibility: fix error when Mutation is lazy-loaded #​5158
  • Visibility: improve performance of Schema.types #​5157

v2.4.2

Compare Source

Bug fixes
  • Validation: fix error message when selections are made on an enum #​5144 #​5145
  • Visibility: fix preloading when no profiles are named #​5148

v2.4.1

Compare Source

New features
Bug fixes
  • Parser: raise when variable definitions don't include a type name #​5305
  • PerfettoTrace: Don't create zombie ActiveSupport::Notifications subscribers #​5307

v2.4.0

Compare Source

Deprecations
  • Visibility: Implementing visible? now requires use GraphQL::Schema::Visibility or use GraphQL::Schema::Warden in your schema definition #​5123
New features
  • Validation: Add "did you mean" to error messages when DidYouMean is available #​4966
  • Schema: types can be lazy-loaded when using GraphQL::Schema::Visibility #​4919

v2.3.22

Compare Source

v2.3.21

Compare Source

v2.3.20

Compare Source

Bug fixes
  • Arguments: suppress warning for objectId arguments #​5124
  • Arguments: don't require input object arguments when a default value is configured

v2.3.19

Compare Source

New features
  • Dataloader: accept a fiber_limit: option #​5132
Bug fixes
  • Argument Validation: improve the one_of: error message #​5130
  • Lookahead: return a null lookahead from Query#lookahead when no operation is selected #​5129
  • Static Validation: speed up FieldsWillMerge when some fields are not defined #​5125

v2.3.18

Compare Source

Bug fixes
  • Properly use trace options when trace_with is used after trace_class #​5118

v2.3.17

Compare Source

Bug fixes
  • Fix InvalidNullError#inspect #​5103
  • Add server-side tests for ActionCableSubscriptions #​5108
  • RuboCop: Fix FieldTypeInBlock for list types and interface types #​5107 #​5112
  • Subscriptions: Fix triggering with nested input objects #​5117
  • Extensions: fix extensions which add other extensions #​5116

v2.3.16

Compare Source

Bug fixes
  • RuboCop: fix FieldTypeInBlock for single-line classes #​5098
  • Testing: Add context[:current_field] to testing helpers #​5096

v2.3.15

Compare Source

New features
  • Type definitions accept comment("...") for annotating SDL #​5067
  • Parser: add tokens_count method #​5066
  • Schema: allow validate_timeout to be reset #​5062
Bug fixes
  • Optimize Language.escape_single_quoted_newlines #​5095
  • Generators: Add # frozen_string_literal: true to base resolver #​5092
  • Parser: Properly handle minus followed by name #​5090
  • Migrate some attr_reader methods #​5080
  • Handle variable definition directives #​5072
  • Handle GraphQL::ExecutionError when loading arguments during analysis #​5071
  • NotificationsTrace: properly call super
  • Use symbols for namespaced_types generator option #​5068
  • Reduce memory usage in lazy resolution #​5061
  • Fix default trace inheritance #​5045

v2.3.14

Compare Source

Bug fixes
  • Subscriptions: fix subscriptions when subscription type is added after subscription plug-in #​5063

v2.3.13

Compare Source

New features
  • Authorization: Call EnumValue#authorized? during execution #​5058
  • Subset: support lazy-loading root types and field return types (not documented yet) #​5055, #​5054
Bug fixes
  • Validation: don't validate nil if null value is permitted for incoming lists #​5048
  • Multiplex: fix Mutation#ready? dataloader cache in multiplexes #​5059

v2.3.12

Compare Source

Bug fixes
  • Add fiber-storage dependency for Ruby < 3.2 support

v2.3.11

Compare Source

New features
  • GraphQL::Current offers globally-available methods for runtime metadata #​5034
  • Continue improving Schema::Subset (not production-ready yet, though) #​5018 #​5039
Bug fixes
  • Fix Node#line and Node#col when nodes are created by manually #​5047
  • Remove unused interpreter?, using_ast_analysis? and new_connections? flag methods #​5039
  • Clean up .compare_by_identity usages #​5037

v2.3.10

Compare Source

Bug fixes
  • Parser: fix parsing operation names that match keywords #​5033
  • Parser: support leading pipes in Union type definitions #​5027
  • Validation: remove rule that prohibits non-null variables from having default values #​5030
  • Dataloader: raise fresh error instances when sources return errors #​5021
  • Enum and Union: don't create nested error classes in anonymous classes (eg, when parsing SDL -- to improve bug tracker integration) #​5022

v2.3.9

Compare Source

Bug fixes
  • Subscriptions: fix subscriptionType in introspection #​5019

v2.3.8

Compare Source

New features
  • Input validation: Add all: { ... } validator #​5013
  • Visibility: Add Query#types for future type filtering improvements #​4998
  • Broadcast: Add default_broadcast(true) option for Connection and Edge types #​5012
Bug fixes
  • Remove unused InvalidTypeError #​5003
  • Parser: remove unused previous_token and Token #​5015

v2.3.7

Compare Source

Bug fixes
  • Properly merge field directives and resolver directives #​5001

v2.3.6

Compare Source

New features
  • Analysis classes are now in GraphQL::Analysis (GraphQL::Analysis::AST still works, too) #​4996
  • Resolvers and Mutations accept directive ... configurations #​4995
Bug fixes
  • AsyncDataloader: Copy Fiber-local variables into Async tasks #​4994
  • Dataloader: properly batch fetch calls with loads: arguments that call Dataloader sources during .authorized? #​4997

v2.3.5

Compare Source

Breaking changes
  • Remove default load_* implementations in arguments -- this could break calls to super if you have redefined this method in subclasses #​4978
  • Schema.possible_types and Schema.references_to now use type classes as keys instead of type names (Strings). You can create a new Hash with the old structure using .transform_keys(&:graphql_name). #​4986 #​4971
Bug fixes

v2.3.4

Compare Source

New features
  • Async Dataloader: document integration with Rails database connections #​4944 #​4964
Bug fixes
  • Query#fingerprint: handle nil query strings like "" #​4963
  • Language::Nodes: support marshalling parsed ASTs #​4959
  • Directives: fix directives in nested fragment spreads #​4958
  • Tracing: fix conflicts between Sentry and Prometheus traces #​4957

v2.3.3

Compare Source

New features
  • Max Complexity: add count_introspection: option #​4939
Bug fixes
  • Language: Fix regression in Nodes#line and Nodes#col #​4949
  • Runtime: Simplify runtime state management #​4935

v2.3.2

Compare Source

Bug fixes
  • Arguments: suppress warning for objectId arguments #​5124
  • Arguments: don't require input object arguments when a default value is configured

v2.3.1

Compare Source

New features
  • Dataloader: accept a fiber_limit: option #​5132
Bug fixes
  • Argument Validation: improve the one_of: error message #​5130
  • Lookahead: return a null lookahead from Query#lookahead when no operation is selected #​5129
  • Static Validation: speed up FieldsWillMerge when some fields are not defined #​5125

v2.3.0

Compare Source

Breaking Changes
  • orphan_types: Only object types are accepted here; other types may be added to the schema through extra_types instead. #​4869
  • Parser: line terminators are no longer allowed in single-quoted strings (as per the GraphQL spec). Escape newline characters instead; see GraphQL::Language.escape_single_quoted_newline(query_str) if you need to transform incoming query strings #​4834
Deprecations
Bug fixes
  • Parser: handle some escaped character edge cases according to the GraphQL spec #​4824
  • Analyzers: fix fragment skip/include tracking #​4865
  • Remove unused Context modules #​4876

v2.2.17

Compare Source

v2.2.16

Compare Source

v2.2.15

Compare Source

v2.2.14

Compare Source

Bug fixes
  • Parser: properly handle stray hyphens in query strings #​4879

v2.2.13

Compare Source

Bug fixes
  • Tracing: when a new base :default trace class is added, merge already-configured trace modules into it #​4875

v2.2.12

Compare Source

Deprecations
  • Schema.{query|mutation|subscription}_execution_strategy methods are deprecated without replacement #​4867
Breaking Changes
  • Connections: Revert changes to hasNextPage returning false when no first is given (previously changed in 2.2.6) #​4866
Bug fixes
  • Complexity: handle unauthorized argument errors better #​4868
  • Pass context when fetching argument for loads: ... #​4870

v2.2.11

Compare Source

New features
  • Sentry: support transaction names in tracing #​4853
Bug fixes
  • Tracing: handle unknown trace modes at runtime #​4856

v2.2.10

Compare Source

New features
  • Parser: support directives on variable definitions #​4847
Bug fixes
  • Fix compatibility with Ruby 3.4 #​4846
  • Tracing: Fix applying default options to non-default modes #​4849, #​4850

v2.2.9

Compare Source

New features
  • Complexity: Treat custom Connection fields as metadata (like totalCount), not as if they were evaluated for each item in the list #​4842
  • Subscriptions: Serialize ActiveRecord::Relations given to .trigger #​4840
Bug fixes
  • Complexity: apply configured complexity ... to connection fields #​4841
  • Authorization: properly handle Resolver arguments that return false for #authorized? #​4839

v2.2.8

Compare Source

New features
  • Responses have "errors" before "data", as recommended by the GraphQL spec #​4823
Bug fixes
  • Sentry: fix integration with other trace modules #​4830
  • Sentry: fix when child span is nil (test environments) #​4828
  • Remove needless Base64 backport #​4820
  • Fix module arrangement to support RDoc #​4819

v2.2.7

Compare Source

Deprecations
  • Deprecate returning .resolve dataloader requests (use .load instead) #​4807
  • Deprecate error_bubbling(true), no replacement. Please open an issue if you need this option. #​4813
Bug fixes
  • Remove unused racc dependency #​4814
  • Fix backtrace: true when used with @defer and batch-loaded lists #​4815
  • Accept input objects when required arguments aren't provided but have default values #​4811

v2.2.6

Compare Source

Deprecations
  • instrument(:query | :multiplex, ...) was deprecated, use a trace_with module instead. #​4771
  • Legacy PlatformTracing classes are deprecated, use a PlatformTrace module instead #​4779
New features
  • FieldUsage analyzer: returns a used_deprecated_enum_values: ... array in its result Hash #​4805
  • validate_timeout applies to query analysis as well as static validation #​4800
  • SentryTrace is added for instrumenting with Sentry #​4775
Bug fixes
  • FieldUsage analyzer: properly find deprecated arguments in non-null input objects #​4805
  • DataDog: replace usage of span_type setter with span setter #​4776
  • Fix coercion error handing with given null values #​4799
  • Raise a better error when variables are defined with non-input types #​4791
  • Fix hasNextPage when max_page_size is set #​4780

v2.2.5

Compare Source

Bug fixes
  • Parser: fix enum values named type #​4772
  • GraphQL::Deprecation: remove this unused helper module #​4769

v2.2.4

Compare Source

Bug fixes
  • AsyncDataloader: don't resolve fields with event loop #​4757
  • Parser: properly parse some fields and args named after keywords #​4759
  • Performance: use all? to check classes directly #​4760

v2.2.3

Compare Source

Bug fixes
  • AsyncDataloader: avoid leftover suspended Fibers #​4754
  • Generators: fix path and constant name of BaseResolver #​4755

v2.2.2

Compare Source

Bug fixes
  • Dataloader: remove Fiber#transfer support because Ruby's control flow is unpredictable (#​4748, #​4752, #​4743)
  • Parser: fix handling of single-token document
  • QueryComplexity: improve performance

v2.2.1

Compare Source

Bug fixes
  • Parser: properly handle stray hyphens in query strings #​4879

v2.2.0

Compare Source

Breaking changes
  • loads: now requires a schema's self.resolve_type method to be implemented so that loaded objects can be verified to be of the expected type #​4678
  • Tracing: the new Ruby-based parser doesn't emit a "lex" event. (graphql/c_parser still does.)
New features
  • GraphQL::Dataloader::AsyncDataloader: a Dataloader class that uses the async gem to run I/O from fields and Dataloader sources in parallel #​4727
  • Parser: use a heavily-optimized lexer and a hand-written parser for better performance #​4718
  • run_graphql_field: a helper method for running fields in tests #​4732

v2.1.15

Compare Source

v2.1.13

[Compare Source](https://redirect.github.com/rmosolgo/graphql-ruby


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, 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.

@renovate renovate bot force-pushed the renovate/graphql-2.x-lockfile branch from 5838e13 to 506d96c Compare September 10, 2024 15:45
@renovate renovate bot changed the title Update dependency graphql to v2.3.14 Update dependency graphql to v2.3.15 Sep 10, 2024
@renovate renovate bot force-pushed the renovate/graphql-2.x-lockfile branch from 506d96c to bcfd185 Compare September 12, 2024 15:44
@renovate renovate bot changed the title Update dependency graphql to v2.3.15 Update dependency graphql to v2.3.16 Sep 12, 2024
@renovate renovate bot force-pushed the renovate/graphql-2.x-lockfile branch 26 times, most recently from 03b8699 to 6024063 Compare September 24, 2024 06:29
@renovate renovate bot force-pushed the renovate/graphql-2.x-lockfile branch 2 times, most recently from 6eedaac to 7e5efbd Compare December 10, 2025 18:05
@renovate renovate bot changed the title Update dependency graphql to v2.5.15 Update dependency graphql to v2.5.16 Dec 10, 2025
@renovate renovate bot force-pushed the renovate/graphql-2.x-lockfile branch 11 times, most recently from 037bb71 to 5b2d7e5 Compare December 18, 2025 00:09
@renovate renovate bot force-pushed the renovate/graphql-2.x-lockfile branch 5 times, most recently from fea885e to 632e2ae Compare December 24, 2025 17:44
@renovate renovate bot force-pushed the renovate/graphql-2.x-lockfile branch 7 times, most recently from 1f155cb to 531751b Compare January 6, 2026 00:27
@renovate renovate bot force-pushed the renovate/graphql-2.x-lockfile branch 2 times, most recently from cd3a3be to 652677c Compare January 6, 2026 09:09
@renovate renovate bot force-pushed the renovate/graphql-2.x-lockfile branch from 652677c to baf5e0f Compare January 7, 2026 01:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant