doorkeeper-gem / doorkeeper

Doorkeeper is an OAuth 2 provider for Ruby on Rails / Grape.
https://doorkeeper.gitbook.io/guides/
MIT License
5.32k stars 1.07k forks source link

Error serializing preauth hash when ActiveModelSerializers present #1312

Closed vincentvanbush closed 4 years ago

vincentvanbush commented 4 years ago

Steps to reproduce

Access /oauth/authorize in a setup with Rails 5.1, most recent Doorkeeper version and most recent active_model_serializers version.

Expected behavior

Correct JSON rendered.

Actual behavior

500 Internal Server Error response caused by a Stack level too deep error. Deep inside the backtrace, when serializing the JSON via render json: pre_auth_hash, it seems to threat options passed to the encoder as something that has to be merged into the serialized payload, which results in it attempting to serialize a ActiveModelSerializers::SerializationContext object that has url_helpers in it, which leads to a call stack error when it is erroneously attempted to serialize.

Suspected culprit is the following change from v5.2.0.rc3:

[#1288] Allow to pass attributes to the Doorkeeper::OAuth::PreAuthorization#as_json method to customize the PreAuthorization response.

Doorkeeper initializer:

# config/initializers/doorkeeper.rb
Doorkeeper.configure do
  orm :active_record

  resource_owner_authenticator do
    current_user || warden.authenticate!(scope: :user)
  end

  api_only
  reuse_access_token
  default_scopes :public
  enforce_configured_scopes
end

Ruby version: 2.5.1

Gemfile.lock:

Gemfile.lock content ``` GIT remote: https://github.com/glebm/i18n-tasks.git revision: ab8b70dece9e9bdf93770ee964e84925cdedb050 ref: ab8b70dece9e9bdf93770ee964e84925cdedb050 specs: i18n-tasks (0.7.13) activesupport easy_translate (>= 0.5.0) erubis highline i18n term-ansicolor terminal-table GIT remote: https://github.com/mileszs/wicked_pdf.git revision: 2742687ab8a7558bdc703022e93193826c85f032 specs: wicked_pdf (1.4.0) activesupport GIT remote: https://github.com/mknapik/path_expander.git revision: 673499996192feb5d05d8dc496f12a6605b6e7e2 specs: path_expander (1.0.1) GIT remote: https://github.com/pokonski/public_activity.git revision: aff5b50ff474c9434e619c0fb0f8daa6acf47655 specs: public_activity (2.0) actionpack (>= 3.0.0) activerecord (>= 3.0) i18n (>= 0.5.0) railties (>= 3.0.0) GIT remote: https://github.com/sanger/axlsx.git revision: e09c84f1a2182dcdf6cea87f57e29fd0fe928cce branch: hotfix_Fixnum_fixes specs: axlsx (2.0.2sgr) htmlentities (~> 4.3.4) nokogiri (>= 1.6.6) rubyzip (>= 1.2.1) GIT remote: https://gitlab.com/physitrack/attr_encrypted_pgcrypto revision: b9dad2a9164b4ac8e82ea2f1ac26b25694707ec6 specs: attr_encrypted_pgcrypto (1.3.1) activerecord (>= 3.0) activesupport (>= 3.0) attr_encrypted (~> 3.0) GIT remote: https://gitlab.com/physitrack/capistrano-db-tasks revision: 4ddee274498c6b66cfc8358b1a866d2adc69c86d specs: capistrano-db-tasks (0.6) capistrano (>= 3.0.0) GEM remote: https://rubygems.org/ specs: CFPropertyList (2.3.6) actioncable (5.1.7) actionpack (= 5.1.7) nio4r (~> 2.0) websocket-driver (~> 0.6.1) actionmailer (5.1.7) actionpack (= 5.1.7) actionview (= 5.1.7) activejob (= 5.1.7) mail (~> 2.5, >= 2.5.4) rails-dom-testing (~> 2.0) actionpack (5.1.7) actionview (= 5.1.7) activesupport (= 5.1.7) rack (~> 2.0) rack-test (>= 0.6.3) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.0, >= 1.0.2) actionview (5.1.7) activesupport (= 5.1.7) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.0, >= 1.0.3) active_model_serializers (0.10.10) actionpack (>= 4.1, < 6.1) activemodel (>= 4.1, < 6.1) case_transform (>= 0.2) jsonapi-renderer (>= 0.1.1.beta1, < 0.3) active_record_query_trace (1.6.2) activejob (5.1.7) activesupport (= 5.1.7) globalid (>= 0.3.6) activemodel (5.1.7) activesupport (= 5.1.7) activemodel-serializers-xml (1.0.2) activemodel (> 5.x) activesupport (> 5.x) builder (~> 3.1) activerecord (5.1.7) activemodel (= 5.1.7) activesupport (= 5.1.7) arel (~> 8.0) activerecord-analyze (0.2.0) rails (~> 5.1.0) activerecord-import (0.22.0) activerecord (>= 3.2) activesupport (5.1.7) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 0.7, < 2) minitest (~> 5.1) tzinfo (~> 1.1) addressable (2.5.2) public_suffix (>= 2.0.2, < 4.0) adyen (2.3.0) airbrussh (1.3.0) sshkit (>= 1.6.1, != 1.7.0) akami (1.3.1) gyoku (>= 0.4.0) nokogiri algoliasearch (1.19.2) httpclient (~> 2.8, >= 2.8.3) json (>= 1.5.1) algoliasearch-rails (1.20.4) algoliasearch (>= 1.17.0, < 2.0.0) json (>= 1.5.1) ansi (1.5.0) ap (0.1.1) httparty (>= 0.7.7) apitome (0.1.0) kramdown railties rspec_api_documentation arel (8.0.0) ast (2.4.0) astrolabe (1.3.1) parser (~> 2.2) attr_encrypted (3.0.3) encryptor (~> 3.0.0) authy (2.7.2) httpclient (>= 2.5.3.3) autoprefixer-rails (9.5.1.1) execjs awesome_print (1.8.0) aws-eventstream (1.0.3) aws-partitions (1.212.0) aws-sdk-core (3.67.0) aws-eventstream (~> 1.0, >= 1.0.2) aws-partitions (~> 1.0) aws-sigv4 (~> 1.1) jmespath (~> 1.0) aws-sdk-kms (1.24.0) aws-sdk-core (~> 3, >= 3.61.1) aws-sigv4 (~> 1.1) aws-sdk-polly (1.26.0) aws-sdk-core (~> 3, >= 3.61.1) aws-sigv4 (~> 1.1) aws-sdk-s3 (1.48.0) aws-sdk-core (~> 3, >= 3.61.1) aws-sdk-kms (~> 1) aws-sigv4 (~> 1.1) aws-sigv4 (1.1.0) aws-eventstream (~> 1.0, >= 1.0.2) axiom-types (0.1.1) descendants_tracker (~> 0.0.4) ice_nine (~> 0.11.0) thread_safe (~> 0.3, >= 0.3.1) backbone-on-rails (1.2.0.0) eco ejs jquery-rails railties backbone-relational-rails (0.10.0) railties (>= 3.1) bcrypt (3.1.13) bcrypt_pbkdf (1.0.1) benchmark-ips (2.7.2) bootsnap (1.4.4) msgpack (~> 1.0) bootstrap-sass (3.4.1) autoprefixer-rails (>= 5.2.1) sassc (>= 2.0.0) brakeman (4.6.1) browser (2.5.3) builder (3.2.3) bullet (6.0.1) activesupport (>= 3.0.0) uniform_notifier (~> 1.11) bundler-audit (0.6.1) bundler (>= 1.2.0, < 3) thor (~> 0.18) byebug (11.0.1) cancancan (2.1.4) capistrano (3.10.1) airbrussh (>= 1.0.0) i18n rake (>= 10.0.0) sshkit (>= 1.9.0) capistrano-bundler (1.3.0) capistrano (~> 3.1) sshkit (~> 1.2) capistrano-maintenance (1.2.0) capistrano (>= 3.0) capistrano-passenger (0.2.0) capistrano (~> 3.0) capistrano-rails (1.3.1) capistrano (~> 3.1) capistrano-bundler (~> 1.1) capistrano-rbenv (2.1.3) capistrano (~> 3.1) sshkit (~> 1.3) capistrano-sidekiq (1.0.2) capistrano (>= 3.9.0) sidekiq (>= 3.4) capistrano-yarn (2.0.2) capistrano (~> 3.0) capybara (3.25.0) addressable mini_mime (>= 0.1.3) nokogiri (~> 1.8) rack (>= 1.6.0) rack-test (>= 0.6.3) regexp_parser (~> 1.5) xpath (~> 3.2) capybara-screenshot (1.0.23) capybara (>= 1.0, < 4) launchy carmen (1.1.0) activesupport (>= 3.0.0) carrierwave (1.2.2) activemodel (>= 4.0.0) activesupport (>= 4.0.0) mime-types (>= 1.16) carrierwave-aws (1.3.0) aws-sdk-s3 (~> 1.0) carrierwave (>= 0.7, < 2.0) case_transform (0.2) activesupport case_transform2 (1.0.0) childprocess (1.0.1) rake (< 13.0) chronic (0.10.2) chronic_duration (0.10.6) numerizer (~> 0.1.1) chunky_png (1.3.11) coconutrb (2.2.0) multi_json (~> 1.0) codeclimate-engine-rb (0.4.1) virtus (~> 1.0) coderay (1.1.2) coercible (1.0.0) descendants_tracker (~> 0.0.1) coffee-rails (4.2.2) coffee-script (>= 2.2.0) railties (>= 4.0.0) coffee-script (2.4.1) coffee-script-source execjs coffee-script-source (1.12.2) combine_pdf (1.0.16) ruby-rc4 (>= 0.1.5) concurrent-ruby (1.1.5) connection_pool (2.2.1) countries (2.1.4) i18n_data (~> 0.8.0) money (~> 6.9) sixarm_ruby_unaccent (~> 1.1) unicode_utils (~> 1.4) crack (0.4.3) safe_yaml (~> 1.0.0) crass (1.0.4) creek (2.1) httparty (~> 0.15.5) nokogiri (>= 1.7.0) rubyzip (>= 1.0.0) crypt (2.2.1) customerio (1.0.0) multi_json (~> 1.0) dalli (2.7.7) database_cleaner (1.7.0) date_validator (0.9.0) activemodel activesupport ddtrace (0.19.1) msgpack opentracing (>= 0.4.1) decent_exposure (3.0.2) activesupport (>= 4.0) deep_cloneable (2.3.1) activerecord (>= 3.1.0, < 5.2.0) derailed_benchmarks (1.3.6) benchmark-ips (~> 2) get_process_mem (~> 0) heapy (~> 0) memory_profiler (~> 0) rack (>= 1) rake (> 10, < 13) thor (~> 0.19) descendants_tracker (0.0.4) thread_safe (~> 0.3, >= 0.3.1) devise (4.7.1) bcrypt (~> 3.0) orm_adapter (~> 0.1) railties (>= 4.1.0) responders warden (~> 1.2.3) devise-i18n (1.6.1) devise (>= 4.4) diff-lcs (1.3) docile (1.3.2) domain_name (0.5.20170404) unf (>= 0.0.5, < 1.0.0) doorkeeper (5.2.1) railties (>= 5) dotenv (2.2.1) draper (3.0.1) actionpack (~> 5.0) activemodel (~> 5.0) activemodel-serializers-xml (~> 1.0) activesupport (~> 5.0) request_store (~> 1.0) dropbox_api (0.1.10) faraday (~> 0.9, ~> 0.8) oauth2 (~> 1.1) dry-configurable (0.7.0) concurrent-ruby (~> 1.0) dry-container (0.6.0) concurrent-ruby (~> 1.0) dry-configurable (~> 0.1, >= 0.1.3) dry-core (0.4.5) concurrent-ruby (~> 1.0) dry-equalizer (0.2.0) dry-logic (0.4.2) dry-container (~> 0.2, >= 0.2.6) dry-core (~> 0.2) dry-equalizer (~> 0.2) dry-struct (0.4.0) dry-core (~> 0.4, >= 0.4.1) dry-equalizer (~> 0.2) dry-types (~> 0.12, >= 0.12.2) ice_nine (~> 0.11) dry-types (0.12.2) concurrent-ruby (~> 1.0) dry-configurable (~> 0.1) dry-container (~> 0.3) dry-core (~> 0.2, >= 0.2.1) dry-equalizer (~> 0.2) dry-logic (~> 0.4, >= 0.4.2) inflecto (~> 0.0.0, >= 0.0.2) dry-validation (0.11.1) concurrent-ruby (~> 1.0) dry-configurable (~> 0.1, >= 0.1.3) dry-core (~> 0.2, >= 0.2.1) dry-equalizer (~> 0.2) dry-logic (~> 0.4, >= 0.4.0) dry-types (~> 0.12.0) easy_translate (0.5.1) thread thread_safe eco (1.0.0) coffee-script eco-source execjs eco-source (1.1.0.rc.1) ejs (1.1.1) encryptor (3.0.0) enumerize (2.1.2) activesupport (>= 3.2) equalizer (0.0.11) erubi (1.9.0) erubis (2.7.0) et-orbi (1.1.0) tzinfo excon (0.62.0) execjs (2.7.0) factory_bot (4.10.0) activesupport (>= 3.0.0) factory_bot_rails (4.10.0) factory_bot (~> 4.10.0) railties (>= 3.0.0) fakeredis (0.7.0) redis (>= 3.2, < 5.0) faraday (0.12.2) multipart-post (>= 1.2, < 3) fastclick-rails (1.0.1) ffi (1.11.1) firebase (0.2.8) googleauth httpclient (>= 2.5.3) json firebase_dynamic_link (1.0.3) case_transform2 (~> 1.0, >= 1.0.0) dry-configurable (~> 0.6, >= 0.6.0) faraday (~> 0.9, >= 0.9.2) fission (0.5.0) CFPropertyList (~> 2.2) flag_shih_tzu (0.3.19) flay (2.11.0) erubis (~> 2.7.0) path_expander (~> 1.0) ruby_parser (~> 3.0) sexp_processor (~> 4.0) fog (2.0.0) fog-aliyun (>= 0.1.0) fog-atmos fog-aws (>= 0.6.0) fog-brightbox (~> 0.4) fog-cloudatcost (~> 0.1.0) fog-core (~> 1.45) fog-digitalocean (>= 0.3.0) fog-dnsimple (~> 1.0) fog-dynect (~> 0.0.2) fog-ecloud (~> 0.1) fog-google (<= 0.1.0) fog-internet-archive fog-joyent fog-json fog-local fog-openstack fog-ovirt fog-powerdns (>= 0.1.1) fog-profitbricks fog-rackspace fog-radosgw (>= 0.0.2) fog-riakcs fog-sakuracloud (>= 0.0.4) fog-serverlove fog-softlayer fog-storm_on_demand fog-terremark fog-vmfusion fog-voxel fog-vsphere (>= 0.4.0) fog-xenserver fog-xml (~> 0.1.1) ipaddress (~> 0.5) json (~> 2.0) fog-aliyun (0.2.0) fog-core (~> 1.27) fog-json (~> 1.0) ipaddress (~> 0.8) xml-simple (~> 1.1) fog-atmos (0.1.0) fog-core fog-xml fog-aws (2.0.1) fog-core (~> 1.38) fog-json (~> 1.0) fog-xml (~> 0.1) ipaddress (~> 0.8) fog-brightbox (0.14.0) fog-core (~> 1.22) fog-json inflecto (~> 0.0.2) fog-cloudatcost (0.1.2) fog-core (~> 1.36) fog-json (~> 1.0) fog-xml (~> 0.1) ipaddress (~> 0.8) fog-core (1.45.0) builder excon (~> 0.58) formatador (~> 0.2) fog-digitalocean (0.3.0) fog-core (~> 1.42) fog-json (>= 1.0) fog-xml (>= 0.1) ipaddress (>= 0.5) fog-dnsimple (1.0.0) fog-core (~> 1.38) fog-json (~> 1.0) fog-dynect (0.0.3) fog-core fog-json fog-xml fog-ecloud (0.3.0) fog-core fog-xml fog-google (0.1.0) fog-core fog-json fog-xml fog-internet-archive (0.0.1) fog-core fog-json fog-xml fog-joyent (0.0.1) fog-core (~> 1.42) fog-json (>= 1.0) fog-json (1.0.2) fog-core (~> 1.0) multi_json (~> 1.10) fog-local (0.5.0) fog-core (>= 1.27, < 3.0) fog-openstack (0.1.25) fog-core (~> 1.40) fog-json (>= 1.0) ipaddress (>= 0.8) fog-ovirt (1.0.2) fog-core (~> 1.45) fog-json fog-xml (~> 0.1.1) ovirt-engine-sdk (>= 4.1.3) rbovirt (~> 0.1.5) fog-powerdns (0.1.1) fog-core (~> 1.27) fog-json (~> 1.0) fog-xml (~> 0.1) fog-profitbricks (4.1.1) fog-core (~> 1.42) fog-json (~> 1.0) fog-rackspace (0.1.5) fog-core (>= 1.35) fog-json (>= 1.0) fog-xml (>= 0.1) ipaddress (>= 0.8) fog-radosgw (0.0.5) fog-core (>= 1.21.0) fog-json fog-xml (>= 0.0.1) fog-riakcs (0.1.0) fog-core fog-json fog-xml fog-sakuracloud (1.7.5) fog-core fog-json fog-serverlove (0.1.2) fog-core fog-json fog-softlayer (1.1.4) fog-core fog-json fog-storm_on_demand (0.1.1) fog-core fog-json fog-terremark (0.1.0) fog-core fog-xml fog-vmfusion (0.1.0) fission fog-core fog-voxel (0.1.0) fog-core fog-xml fog-vsphere (2.1.0) fog-core rbvmomi (~> 1.9) fog-xenserver (0.3.0) fog-core fog-xml fog-xml (0.1.3) fog-core nokogiri (>= 1.5.11, < 2.0.0) font-awesome-sass (4.7.0) sass (>= 3.2) foreman (0.85.0) thor (~> 0.19.1) formatador (0.2.5) geocoder (1.4.7) get_process_mem (0.2.3) gitlab (4.3.0) httparty terminal-table global_phone (1.0.1) globalid (0.4.2) activesupport (>= 4.2.0) gon (6.2.1) actionpack (>= 3.0) multi_json request_store (>= 1.0) googleauth (0.8.1) faraday (~> 0.12) jwt (>= 1.4, < 3.0) memoist (~> 0.16) multi_json (~> 1.11) os (>= 0.9, < 2.0) signet (~> 0.7) grape (1.2.3) activesupport builder mustermann-grape (~> 1.0.0) rack (>= 1.3.0) rack-accept virtus (>= 1.0.0) gyoku (1.3.1) builder (>= 2.1.2) hash-deep-merge (0.1.1) hashdiff (0.4.0) hashie (3.5.7) hashie-forbidden_attributes (0.1.1) hashie (>= 3.0) headless (2.3.1) heapy (0.1.4) highline (2.0.2) hirb (0.7.3) hiredis (0.6.1) htmlentities (4.3.4) http-2 (0.8.4) http-cookie (1.0.3) domain_name (~> 0.5) httparty (0.15.7) multi_xml (>= 0.5.2) httpclient (2.8.3) httpi (2.4.3) rack socksify i18n (0.9.5) concurrent-ruby (~> 1.0) i18n-js (3.0.5) i18n (>= 0.6.6, < 2) i18n_data (0.8.0) ice_nine (0.11.2) inflecto (0.0.2) interactor (3.1.0) interactor-rails (2.1.1) interactor (~> 3.0) rails (>= 4.2, < 5.2) ipaddress (0.8.3) iso_country_codes (0.7.8) jbuilder (2.7.0) activesupport (>= 4.2.0) multi_json (>= 1.2) jmespath (1.4.0) jquery-rails (4.3.1) rails-dom-testing (>= 1, < 3) railties (>= 4.2.0) thor (>= 0.14, < 2.0) js-routes (1.4.3) railties (>= 3.2) sprockets-rails json (2.2.0) jsonapi-renderer (0.2.2) jwt (1.5.6) kaminari (1.1.1) activesupport (>= 4.1.0) kaminari-actionview (= 1.1.1) kaminari-activerecord (= 1.1.1) kaminari-core (= 1.1.1) kaminari-actionview (1.1.1) actionview kaminari-core (= 1.1.1) kaminari-activerecord (1.1.1) activerecord kaminari-core (= 1.1.1) kaminari-core (1.1.1) kaminari-i18n (0.5.0) kaminari rails kramdown (1.16.2) launchy (2.4.3) addressable (~> 2.3) lazy_high_charts (1.5.8) hash-deep-merge letter_opener (1.7.0) launchy (~> 2.2) libv8 (6.7.288.46.1) lograge (0.10.0) actionpack (>= 4) activesupport (>= 4) railties (>= 4) request_store (~> 1.0) loofah (2.3.0) crass (~> 1.0.2) nokogiri (>= 1.5.9) mail (2.7.1) mini_mime (>= 0.1.1) marionette-rails (2.4.4) railties (>= 3.1) maxminddb (0.1.15) memoist (0.16.0) memory_profiler (0.9.14) method_source (0.9.2) mime-types (3.1) mime-types-data (~> 3.2015) mime-types-data (3.2016.0521) mini_magick (4.9.4) mini_mime (1.0.1) mini_portile2 (2.4.0) mini_racer (0.2.4) libv8 (>= 6.3) minitest (5.12.2) missing_translations (1.1.0) mock_redis (0.21.0) modis (2.1.0) activemodel (>= 3.0) activesupport (>= 3.0) connection_pool (>= 2) hiredis (>= 0.5) msgpack (>= 0.5) redis (>= 3.0) momentjs-rails (2.20.1) railties (>= 3.1) monetize (1.7.0) money (~> 6.9) money (6.10.1) i18n (>= 0.6.4, < 1.0) money-open-exchange-rates (1.2.2) money (~> 6.6) money-rails (1.10.0) activesupport (>= 3.0) monetize (~> 1.7.0) money (~> 6.10.0) railties (>= 3.0) monza (1.3.0) activesupport json msgpack (1.3.1) multi_json (1.13.1) multi_xml (0.6.0) multipart-post (2.0.0) mustache (1.1.0) mustermann (1.0.3) mustermann-grape (1.0.0) mustermann (~> 1.0.0) nested_form (0.3.2) net-http-persistent (2.9.4) net-http2 (0.16.0) http-2 (= 0.8.4) net-scp (1.2.1) net-ssh (>= 2.6.5) net-ssh (4.2.0) netrc (0.11.0) niceql (0.1.25) nio4r (2.3.1) nokogiri (1.10.4) mini_portile2 (~> 2.4.0) nokogumbo (2.0.1) nokogiri (~> 1.8, >= 1.8.4) nori (2.6.0) numerizer (0.1.1) oauth2 (1.4.0) faraday (>= 0.8, < 0.13) jwt (~> 1.0) multi_json (~> 1.3) multi_xml (~> 0.5) rack (>= 1.2, < 3) obscenity (1.0.2) octokit (4.8.0) sawyer (~> 0.8.0, >= 0.5.3) oj (3.9.2) oj_mimic_json (1.0.1) okcomputer (1.17.1) once-ler (0.1.2) activerecord (>= 4.0) rspec (>= 3.0) opentracing (0.5.0) orm_adapter (0.5.0) os (1.0.1) ovirt-engine-sdk (4.2.3) json (>= 1, < 3) ox (2.9.0) parallel (1.17.0) parallel_tests (2.29.1) parallel parser (2.4.0.2) ast (~> 2.3) pg (1.0.0) pg_query (1.0.1) phony (2.16.3) phony_rails (0.14.6) activesupport (>= 3.0) phony (> 2.15) pikaday-gem (1.4.0) railties (>= 3.1) postgres-copy (1.4.0) activerecord (>= 5.1) pg (>= 0.17) responders powerpack (0.1.2) pronto (0.9.5) gitlab (~> 4.0, >= 4.0.0) httparty (>= 0.13.7) octokit (~> 4.7, >= 4.7.0) rainbow (~> 2.1) rugged (~> 0.24, >= 0.23.0) thor (~> 0.19.0) pronto-brakeman (0.9.1) brakeman (>= 3.2.0) pronto (~> 0.9.0) pronto-eslint_npm (0.9.1) pronto (~> 0.9.1) pronto-flay (0.9.0) flay (~> 2.8) pronto (~> 0.9.0) pronto-reek (0.9.0) pronto (~> 0.9.0) reek (~> 4.2) pronto-rubocop (0.9.0) pronto (~> 0.9.0) rubocop (~> 0.38, >= 0.35.0) pronto-scss (0.9.1) pronto (~> 0.9.0) scss_lint (~> 0.43, >= 0.43.0) pry (0.12.2) coderay (~> 1.1.0) method_source (~> 0.9.0) pry-byebug (3.7.0) byebug (~> 11.0) pry (~> 0.10) pry-rails (0.3.9) pry (>= 0.10.4) psych (3.0.2) public_suffix (3.1.1) puma (4.0.0) nio4r (~> 2.0) rack (2.0.7) rack-accept (0.4.5) rack (>= 0.4) rack-protection (2.0.1) rack rack-test (0.6.3) rack (>= 1.0) rack-utf8_sanitizer (1.5.0) rack (>= 1.0, < 3.0) rack_session_access (0.2.0) builder (>= 2.0.0) rack (>= 1.0.0) rails (5.1.7) actioncable (= 5.1.7) actionmailer (= 5.1.7) actionpack (= 5.1.7) actionview (= 5.1.7) activejob (= 5.1.7) activemodel (= 5.1.7) activerecord (= 5.1.7) activesupport (= 5.1.7) bundler (>= 1.3.0) railties (= 5.1.7) sprockets-rails (>= 2.0.0) rails-controller-testing (1.0.4) actionpack (>= 5.0.1.x) actionview (>= 5.0.1.x) activesupport (>= 5.0.1.x) rails-dom-testing (2.0.3) activesupport (>= 4.2.0) nokogiri (>= 1.6) rails-html-sanitizer (1.3.0) loofah (~> 2.3) rails-timeago (2.16.0) actionpack (>= 3.1) activesupport (>= 3.1) railties (5.1.7) actionpack (= 5.1.7) activesupport (= 5.1.7) method_source rake (>= 0.8.7) thor (>= 0.18.1, < 2.0) rainbow (2.2.2) rake rake (12.3.3) randexp (0.1.7) ranked-model (0.4.0) activerecord (>= 3.1.12) rb-fsevent (0.10.3) rb-inotify (0.10.0) ffi (~> 1.0) rbnacl (4.0.2) ffi rbnacl-libsodium (1.0.16) rbnacl (>= 3.0.1) rbovirt (0.1.5) nokogiri rest-client (> 1.7.0) rbvmomi (1.11.7) builder (~> 3.0) json (>= 1.8) nokogiri (~> 1.5) trollop (~> 2.1) react_on_rails (8.0.6) addressable connection_pool execjs (~> 2.5) rails (>= 3.2) rainbow (~> 2.2) recaptcha (4.8.0) json redis (3.3.5) redis-namespace (1.6.0) redis (>= 3.0.4) reek (4.7.3) codeclimate-engine-rb (~> 0.4.0) parser (>= 2.4.0.0, < 2.5) rainbow (~> 2.0) regexp_parser (1.5.1) rein (3.4.0) activerecord (>= 4.0.0, < 6) activesupport (>= 4.0.0, < 6) request_store (1.4.1) rack (>= 1.4) responders (3.0.0) actionpack (>= 5.0) railties (>= 5.0) rest-client (2.0.2) http-cookie (>= 1.0.2, < 2.0) mime-types (>= 1.16, < 4.0) netrc (~> 0.8) rotp (3.3.1) rpush (3.0.2) activesupport ansi multi_json (~> 1.0) net-http-persistent net-http2 (~> 0.14) railties thor (>= 0.18.1, < 2.0) rpush-redis (1.0.1) modis (~> 2.0) rqrcode (0.10.1) chunky_png (~> 1.0) rspec (3.8.0) rspec-core (~> 3.8.0) rspec-expectations (~> 3.8.0) rspec-mocks (~> 3.8.0) rspec-core (3.8.2) rspec-support (~> 3.8.0) rspec-expectations (3.8.4) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.8.0) rspec-instafail (1.0.0) rspec rspec-mocks (3.8.1) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.8.0) rspec-rails (3.8.2) actionpack (>= 3.0) activesupport (>= 3.0) railties (>= 3.0) rspec-core (~> 3.8.0) rspec-expectations (~> 3.8.0) rspec-mocks (~> 3.8.0) rspec-support (~> 3.8.0) rspec-retry (0.6.1) rspec-core (> 3.3) rspec-support (3.8.2) rspec_api_documentation (6.1.0) activesupport (>= 3.0.0) mustache (~> 1.0, >= 0.99.4) rspec (~> 3.0) rspec_junit_formatter (0.4.1) rspec-core (>= 2, < 4, != 2.12.0) rubocop (0.52.1) parallel (~> 1.10) parser (>= 2.4.0.2, < 3.0) powerpack (~> 0.1) rainbow (>= 2.2.2, < 4.0) ruby-progressbar (~> 1.7) unicode-display_width (~> 1.0, >= 1.0.1) rubocop-checkstyle_formatter (0.4.0) rubocop (>= 0.35.1) rubocop-rspec (1.23.0) rubocop (>= 0.52.1) ruby-filemagic (0.7.2) ruby-progressbar (1.10.1) ruby-rc4 (0.1.5) ruby_parser (3.11.0) sexp_processor (~> 4.9) rubyzip (1.2.3) rufus-scheduler (3.4.2) et-orbi (~> 1.0) rugged (0.27.7) safe_yaml (1.0.5) sanitize (5.0.0) crass (~> 1.0.2) nokogiri (>= 1.8.0) nokogumbo (~> 2.0) sass (3.5.7) sass-listen (~> 4.0.0) sass-listen (4.0.0) rb-fsevent (~> 0.9, >= 0.9.4) rb-inotify (~> 0.9, >= 0.9.7) sass-rails (5.0.7) railties (>= 4.0.0, < 6) sass (~> 3.1) sprockets (>= 2.8, < 4.0) sprockets-rails (>= 2.0, < 4.0) tilt (>= 1.1, < 3) sassc (2.0.1) ffi (~> 1.9) rake savon (2.12.0) akami (~> 1.2) builder (>= 2.1.2) gyoku (~> 1.2) httpi (~> 2.3) nokogiri (>= 1.8.1) nori (~> 2.4) wasabi (~> 3.4) sawyer (0.8.1) addressable (>= 2.3.5, < 2.6) faraday (~> 0.8, < 1.0) scss_lint (0.57.0) rake (>= 0.9, < 13) sass (~> 3.5.5) scss_lint_reporter_checkstyle (0.2.0) secure_headers (5.0.5) useragent (>= 0.15.0) select2-rails (4.0.3) thor (~> 0.14) selenium-webdriver (3.142.3) childprocess (>= 0.5, < 2.0) rubyzip (~> 1.2, >= 1.2.2) sentry-raven (2.7.2) faraday (>= 0.7.6, < 1.0) sexp_processor (4.11.0) shoulda-matchers (4.1.0) activesupport (>= 4.2.0) sidekiq (5.1.3) concurrent-ruby (~> 1.0) connection_pool (~> 2.2, >= 2.2.0) rack-protection (>= 1.5.0) redis (>= 3.3.5, < 5) sidekiq-cron (0.6.3) rufus-scheduler (>= 3.3.0) sidekiq (>= 4.2.1) sidekiq-failures (1.0.0) sidekiq (>= 4.0.0) sidekiq-limit_fetch (3.4.0) sidekiq (>= 4) sidekiq-status (1.1.2) chronic_duration sidekiq (>= 3.0) sidekiq-unique-jobs (5.0.10) sidekiq (>= 4.0, <= 6.0) thor (~> 0) signet (0.11.0) addressable (~> 2.3) faraday (~> 0.9) jwt (>= 1.5, < 3.0) multi_json (~> 1.10) silencer (1.0.1) simple_form (3.5.1) actionpack (> 4, < 5.2) activemodel (> 4, < 5.2) simplecov (0.17.0) docile (~> 1.1) json (>= 1.8, < 3) simplecov-html (~> 0.10.0) simplecov-html (0.10.2) simplecov-rcov (0.2.3) simplecov (>= 0.4.1) sitemap_generator (6.0.1) builder (~> 3.0) sixarm_ruby_unaccent (1.2.0) slackistrano (3.8.2) capistrano (>= 3.8.1) socksify (1.7.1) sprockets (3.7.2) concurrent-ruby (~> 1.0) rack (> 1, < 3) sprockets-rails (3.2.1) actionpack (>= 4.0) activesupport (>= 4.0) sprockets (>= 3.0.0) sshkit (1.16.0) net-scp (>= 1.1.2) net-ssh (>= 2.8.0) swagger-blocks (2.0.2) term-ansicolor (1.7.1) tins (~> 1.0) terminal-table (1.8.0) unicode-display_width (~> 1.1, >= 1.1.1) thor (0.19.4) thread (0.2.2) thread_safe (0.3.6) tilt (2.0.8) timecop (0.9.1) tins (1.20.3) transpec (3.3.0) activesupport (>= 3.0, < 6.0) astrolabe (~> 1.2) bundler (~> 1.3) json (>= 1.8, < 3.0) parser (>= 2.3.0.7) rainbow (>= 1.99.1, < 3.0) trollop (2.1.2) twilio-ruby (5.7.2) faraday (~> 0.9) jwt (>= 1.5, <= 2.5) nokogiri (>= 1.6, < 2.0) two_factor_authentication (2.1.0) devise encryptor rails (>= 3.1.1) randexp rotp (>= 3.2.0) tzinfo (1.2.5) thread_safe (~> 0.1) underscore-rails (1.8.3) unf (0.1.4) unf_ext unf_ext (0.0.7.5) unicode-display_width (1.6.0) unicode_utils (1.4.0) uniform_notifier (1.12.1) useragent (0.16.10) validate_url (1.0.2) activemodel (>= 3.0.0) addressable valvat (0.7.2) savon (>= 2.3.0) virtus (1.0.5) axiom-types (~> 0.1) coercible (~> 1.0) descendants_tracker (~> 0.0, >= 0.0.3) equalizer (~> 0.0, >= 0.0.9) warden (1.2.8) rack (>= 2.0.6) warning (0.10.1) wasabi (3.5.0) httpi (~> 2.0) nokogiri (>= 1.4.2) webmock (3.6.0) addressable (>= 2.3.6) crack (>= 0.3.2) hashdiff (>= 0.4.0, < 2.0.0) webpack-rails (0.9.11) railties (>= 3.2.0) websocket-driver (0.6.5) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.4) wine_bouncer (1.0.4) doorkeeper (>= 1.4, < 6.0) grape (>= 0.10, < 1.3) wkhtmltopdf-binary-edge (0.12.5.0) xliffer (1.0.3) nokogiri (~> 1.5) xml-simple (1.1.5) xpath (3.2.0) nokogiri (~> 1.8) PLATFORMS ruby DEPENDENCIES active_model_serializers active_record_query_trace activerecord-analyze activerecord-import adyen airbrussh algoliasearch-rails ap apitome attr_encrypted (~> 3.0.0) attr_encrypted_pgcrypto! authy autoprefixer-rails awesome_print aws-sdk-polly aws-sdk-s3 axlsx! backbone-on-rails backbone-relational-rails bcrypt_pbkdf (>= 1.0, < 2.0) bootsnap bootstrap-sass (< 4.0) brakeman browser bullet bundler-audit cancancan capistrano capistrano-bundler capistrano-db-tasks! capistrano-maintenance capistrano-passenger capistrano-rails capistrano-rbenv capistrano-sidekiq capistrano-yarn capybara capybara-screenshot carmen carrierwave carrierwave-aws chronic coconutrb coffee-rails coffee-script-source combine_pdf countries (>= 2.1.2) creek crypt customerio dalli database_cleaner date_validator ddtrace decent_exposure deep_cloneable derailed_benchmarks devise devise-i18n doorkeeper (~> 5.2.0) dotenv draper dropbox_api dry-struct dry-types dry-validation eco enumerize (~> 2.1.0) factory_bot_rails fakeredis faraday fastclick-rails firebase firebase_dynamic_link flag_shih_tzu fog font-awesome-sass (< 5.0) foreman geocoder global_phone gon grape hashdiff hashie-forbidden_attributes headless hirb htmlentities i18n-js i18n-tasks! interactor-rails iso_country_codes jbuilder jquery-rails js-routes jwt kaminari kaminari-i18n lazy_high_charts letter_opener lograge marionette-rails maxminddb mini_magick mini_racer missing_translations mock_redis momentjs-rails money-open-exchange-rates money-rails (>= 1.9.0) monza multipart-post nested_form net-http-persistent (= 2.9.4) niceql nokogiri (>= 1.8.1) oauth2 obscenity oj oj_mimic_json okcomputer once-ler ox parallel_tests parser path_expander! pg pg_query phony_rails pikaday-gem postgres-copy pronto pronto-brakeman pronto-eslint_npm pronto-flay pronto-reek pronto-rubocop pronto-scss pry-byebug pry-rails psych public_activity! puma rack-test (< 0.7) rack-utf8_sanitizer rack_session_access rails (~> 5.1.0) rails-controller-testing rails-timeago ranked-model rbnacl (>= 3.2, < 5.0) rbnacl-libsodium react_on_rails (~> 8.0) recaptcha redis (< 4.0) redis-namespace rein rpush (>= 3) rpush-redis rqrcode rspec-instafail rspec-rails rspec-retry rspec_api_documentation rspec_junit_formatter rubocop-checkstyle_formatter rubocop-rspec ruby-filemagic ruby-progressbar sanitize sass-rails scss_lint_reporter_checkstyle secure_headers select2-rails selenium-webdriver sentry-raven shoulda-matchers sidekiq sidekiq-cron sidekiq-failures sidekiq-limit_fetch sidekiq-status sidekiq-unique-jobs silencer simple_form simplecov simplecov-rcov sitemap_generator slackistrano sprockets swagger-blocks tilt timecop transpec twilio-ruby two_factor_authentication underscore-rails validate_url valvat warning webmock webpack-rails wicked_pdf! wine_bouncer wkhtmltopdf-binary-edge (~> 0.12.5.0) xliffer RUBY VERSION ruby 2.5.1p57 BUNDLED WITH 1.17.3 ```
nbulaj commented 4 years ago

Hi @vincentvanbush . Thanks for reporting this! Would you like to propose a PR to fix the issue?

vincentvanbush commented 4 years ago

Thanks for responding @nbulaj. I can't commit to producing a PR soon, but I'm going to have a shot at it when I find some spare time.

nbulaj commented 4 years ago

I'm not using AMS with Doorkeeper, so I can't check the issue. If you don't plan to introduce a PR it would be great at least to have some spec or gist with the example if issue reproducing. Thanks!