New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

graphql-ruby-client

Package Overview
Dependencies
Maintainers
1
Versions
72
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

graphql-ruby-client - npm Package Versions

1
8

1.10.0

Diff

Changelog

Source

1.10.0 (20 Jan 2020)

Breaking Changes

  • Class-based schemas using the new interpreter will now use definition classes at runtime. #2363 (Previously, .to_graphql methods were used to generate singletons which were used at runtime.) This means:
    • Methods that used to receive types at runtime will now receive classes instead of those singletons.
    • .name will now call Class#name, which will give the class name. Use .graphql_name to get the name of a GraphQL type. (Fields, arguments and directives have .graphql_name too, so you can use it everywhere.)
    • Some methods that return hashes are slow because they merge hashes according to class inheritance, for example MySchema.types and MyObjectType.fields. Instead:
      • If you only need one item out of the Hash, use .get_type(type_name) or .get_field(field_name) instead. Those methods find a match without performing Hash merges.
      • If you need the whole Hash, get a cached value from context.warden (an instance of GraphQL::Schema::Warden) at runtime. Those values reflect the types and fields which are permitted for the current query, and they're cached for life of the query. Check the API docs to see methods on the warden.
  • Class-based schemas using the interpreter must add use GraphQL::Analysis::AST to their schema (and update their custom analyzers, see https://graphql-ruby.org/queries/ast_analysis.html) #2363
  • ActiveSupport::Notifications events are correctly named in event.library format #2562
  • Field and Argument #authorized? methods now accept three arguments (instead of 2). They now accept (obj, args, ctx), where args is the arguments (for a field) or the argument value (for an argument). #2520
  • Double-null !! is disallowed by the parser #2397
  • (Non-interpreter only) The return value of subscription fields is passed along to execute the subscription. Return nil to get the previous behavior. #2536
  • Schema.from_definition builds a class-based schema from the definition string #2178
  • Only integers are accepted for Int type #2404
  • Custom scalars now call .coerce_input on all input values - previously this call was skipped for null values.

Deprecations

  • .define is deprecated; class-based schema definitions should be used instead. If you're having trouble or you can't find information about an upgrade path, please open an issue on GitHub!

New Features

  • Add tracing events for .authorized? and .resolve_type calls #2660
  • Schema.from_definition accepts using: for installing plugins (equivalent to use ... in class-based schemas) #2307
  • Add $ to variable names in error messages #2531
  • Add invalid value to argument error message #2531
  • Input object arguments with loads: get the loaded object in their authorized? hook, as arg in authorized?(obj, args, ctx). #2536
  • GraphQL::Pagination auto-pagination system #2143
  • Schema.from_definition builds a class-based schema from the definition string #2178

Bug Fixes

  • Fix warnings on Ruby 2.7 #2668
  • Fix Ruby keyword list to support Ruby 2.7 #2640
  • Reduce memory of class-based schema #2636
  • Improve runtime performance of interpreter #2630
  • Big numbers (ie, greater than Ruby's Infinity) no longer :boom: when being reserialized #2320
  • Fix hasNextPage/hasPrevious page when max_page_size limits the items returned #2608
  • Return parse errors for empty documents and empty argument lists #2344
  • Properly serialize defaultValue of input objects containing enum values #2439
  • Don't crash when a query contains !!. #2397
  • Resolver loads: assign the value to argument @loads #2364
  • Only integers are accepted for Int type #2404
rmosolgo
published 1.9.4 •

Changelog

Source

1.9.4 (5 Apr 2019)

Breaking Changes

  • GraphQL::Schema::Resolver::LoadApplicationObjectFailedError was renamed to GraphQL::LoadApplicationObjectFailedError. (This will only break if you're referencing the class by name and running Ruby 2.5+) #2080

New features

  • Add Types::BigInt #2150
  • Add auto-loading arguments support in Input Object types #2080
  • Add analytics tag to Datadog tracing #2154

Bug fixes

  • Fix Query#execute when no explicit query string is passed in #2142
  • Fix when a root type returns nil because unauthorized #2144
  • Fix tracing node by threading owner: through field tracing #2156
  • Fix interpreter handling of exceptions raised during argument preparation #2198
  • Fix ActionCableLink when there are errors but no data #2176
  • Provide empty hash as default option for field resolvers #2189
  • Prevent argument names from overwriting Arguments methods #2171
  • Include array indices in error paths #2162
  • Handle non-node arrays in AST visitor #2161
rmosolgo
published 1.9.3 •

Changelog

Source

1.9.3 (20 Feb 2019)

Bug fixes

  • Fix Schema::Subscription when it has no arguments #2135
  • Don't try to scope nil, just skip scoping altogether #2134
  • Fix when a root .authorized? returns false and there's no root_value #2136
  • Fix platform tracing with interpreter & introspection #2137
  • Support root Subscription types with name other than Subscription #2102
  • Fix nested list-type input object nullability validation #2123
rmosolgo
published 1.9.2 •

Changelog

Source

1.9.2 (15 Feb 2019)

Bug fixes

  • Properly support connection fields with resolve procs #2115
rmosolgo
published 1.9.1 •

Changelog

Source

1.9.1 (14 Feb 2019)

Bug fixes

  • Properly pass errors to Resolver load_application_object_failed methods #2110
rmosolgo
published 1.9.0 •

Changelog

Source

1.9.0 (13 Feb 2019)

Breaking Changes

  • AST nodes are immutable. To modify a parsed GraphQL query, see GraphQL::Language::Visitor for its mutation API, which builds a new AST with the specified mutations applied. #1338, #1740

  • Cursors use urlsafe Base64. This won't break your clients (it's backwards-compatible), but it might break your tests, so it's listed here. #1698

  • Add field(..., resolver_method:) for when GraphQL-Ruby should call a method other than the one whose name matches the field name (#1961). This means that if you're using method: to call a different method on the Schema::Object subclass, you should update that configuration to resolver_method:. (method: is still used to call a different method on the underlying application object.)

  • Int type now applies boundaries as described in the spec #2101. To preserve the previous, unbounded behavior, handle the error in your schema's .type_error(err, ctx) hook, for example:

    class MySchema < GraphQL::Schema
      def self.type_error(err, ctx)
        if err.is_a?(GraphQL::IntegerEncodingError)
          # Preserve the previous unbounded behavior
          # by returning the out-of-bounds value
          err.integer_value
        else
          super
        end
      end
    end
    
  • field(...) configurations don't create implicit method definitions (#1961). If one resolver method depended on the implicitly-created method from another field, you'll have to refactor that call or manually add a def ... for that field.

  • Calling super in a field method doesn't work anymore (#1961)

  • Error "problems" are now in "extensions" : { "problems": ... } #2077

  • Change schema default to error_bubbling false #2069

New Features

  • Add class-based subscriptions with GraphQL::Schema::Subscription #1930
  • Add GraphQL::Execution::Interpreter (#1394) and GraphQL::Analysis::AST (#1824) which together cut GraphQL overhead by half (time and memory)
  • Add Schema.unauthorized_field(err) for when Field#authorized? checks fail (#1994)
  • Add class-based custom directives for the interpreter (#2055)
  • Add Schema::FieldExtension for customizing field execution with class-based fields #1795
  • Add Query#lookahead for root-level selection info #1931
  • Validation errors have "extensions": { ... } which includes metadata about that error #1970

Bug fixes

  • Fix list-type arguments passed with a single value #2085
  • Support false as an Enum value #2050
  • Support hash_key: fields when the key isn't a valid Ruby method name #2016
rmosolgo
published 1.8.2 •

Changelog

Source

1.8.2 (6 June 2018)

Breaking changes

  • Schema::InputObject#to_h recursively transforms hashes to underscorized, symbolized keys. #1555

New features

  • Generators create class-based types #1562
  • Schema::InputObject#to_h returns a underscorized, symbolized hash #1555

Bug fixes

  • Support default_mask in class-based schemas #1563
  • Fix null propagation for list types #1558
  • Validate unique arguments in queries #1557
  • Fix RelayClassicMutations with no arguments #1543
rmosolgo
published 1.8.1 •

Changelog

Source

1.8.1 (1 June 2018)

Breaking changes

  • When filtering items out of a schema, Unions will now be hidden if their possible types are all hidden or if all fields returning it are hidden. #1515

New features

  • GraphQL::ExecutionError.new accepts an extensions: option which will be merged into the "extensions" key in that error's JSON #1552

Bug fixes

  • When filtering items out of a schema, Unions will now be hidden if their possible types are all hidden or if all fields returning it are hidden. #1515
  • Require that fields returning interfaces have selections made on them #1551
  • Correctly mark introspection types and fields as introspection? #1535
  • Remove unused introspection objects #1534
  • use object/context in the upgrader instead of @object/@context #1529
  • (Development) Don't require mongodb for non-mongo tests #1548
  • Track position of union member nodes in the parser #1541
rmosolgo
published 1.8.0 •

Changelog

Source

1.8.0 (17 May 2018)

1.8.0 has been in prerelease for 6 months. See the prerelease changelog for change-by-change details. Here's a high-level changelog, followed by a detailed list of changes since the last prerelease.

High-level changes

Breaking Changes
  • GraphQL-Ruby is not tested on Ruby 2.1. #1070 Because Ruby 2.1 doesn't garbage collect Symbols, it's possible that GraphQL-Ruby will introduce a OOM vulnerability where unique symbols are dynamically created, for example, turning user input into Symbols. No instances of this are known in GraphQL-Ruby ... yet!
  • GraphQL::Delegate, a duplicate of Ruby's Forwardable, was removed. Use Forwardable instead, and update your Ruby if you're on 2.4.0, due to a performance regression in Forwardable in that version.
  • MySchema.subscriptions.trigger asserts that its inputs are valid arguments #1400. So if you were previously passing invalid options there, you'll get an error. Remove those options.
New Features
  • A new class-based API for schema definition. The old API is completely supported, but the new one is much nicer to use. If you migrate, some schema extensions may require a bit of extra work.
  • Built-in support for Mongoid-backed Relay connections
  • .execute(variables: ...) and subscriptions.trigger both accept Symbol-keyed hashes
  • Lots of other small things around SDL parsing, tracing, runtime ... everything. Read the details below for a full list.
Bug Fixes
  • Many, many bug fixes. See the detailed list if you're curious about specific bugs.
rmosolgo
published 1.7.12 •

Changelog

Source

1.7.12 (13 Feb 2018)

Bug fixes

  • typed_children should always return a Hash #1278
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc