doorkeeper-jwt 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 64ffd893f885b14b10051ffdf40d0c7cce87dbfa
4
- data.tar.gz: 4c18d275274d40a52694984a4cb68a9fd14b6962
2
+ SHA256:
3
+ metadata.gz: 32f8802b270dd6aff8c6ded3545b79fc84be4fa2dc856401e39f60a2818ef986
4
+ data.tar.gz: adfeb942ae99d8631d44cdeb722c6e40967b2319cc1398191bcb22ca50f2e047
5
5
  SHA512:
6
- metadata.gz: 9860fc149da0ca854fc47872c78b86dfbca10e09cfddc59e24c74c4edf80d8688f86a4167d5ec72b1be75ce044f1f361ccbacd1d1a790891cd4f6a966f64af5f
7
- data.tar.gz: 6a39bc5136d5ce4dbdf72b43a006403d10c70383445ae30bd61ae0eb16dd03aa0d66b4e116872cca8c0e6cff694cb832bd24e7a669fd973ccaa210a5444438bf
6
+ metadata.gz: 4a24d1a2a83d19d1bbe96b57da628bd3cd42842e1dd92a782b3bbe16b98cd6fa0594a79f83d61d6b22db6f46716c986b3e3a7eb3b948bce29fd093234baad84b
7
+ data.tar.gz: 55d64e0e301287f05b07548b7110c04c83fbef478bb43d09b4ce03a72d235a45bfaa44349ab77f58922cdb7fe4bfa8918adc25fa818c203c5ec778cf3ac1c846
data/.gitignore CHANGED
@@ -1,10 +1,16 @@
1
- /.bundle/
2
- /.yardoc
3
- /Gemfile.lock
4
- /_yardoc/
1
+ *.gem
5
2
  /coverage/
6
- /doc/
7
3
  /pkg/
8
4
  /spec/reports/
9
5
  /tmp/
10
- *.gem
6
+
7
+ /.yardoc/
8
+ /_yardoc/
9
+ /doc/
10
+
11
+ /.bundle/
12
+
13
+ Gemfile.lock
14
+
15
+ .idea/
16
+ *.iml
@@ -0,0 +1,2 @@
1
+ rubocop:
2
+ config_file: .rubocop.yml
@@ -1,13 +1,26 @@
1
+ ---
2
+ require: rubocop-rspec
3
+
4
+ AllCops:
5
+ DefaultFormatter: progress
6
+ DisplayCopNames: true
7
+ DisplayStyleGuide: false
8
+ ExtraDetails: true
9
+ TargetRubyVersion: 2.5
10
+
1
11
  Metrics/BlockLength:
2
- Exclude:
3
- - spec/**/*
12
+ Enabled: false
13
+
14
+ Metrics/MethodLength:
15
+ Enabled: false
16
+
4
17
 
5
- LineLength:
18
+ Naming/FileName:
6
19
  Exclude:
7
- - spec/**/*
20
+ - lib/doorkeeper-jwt.rb
8
21
 
9
- StringLiterals:
22
+ RSpec/ExampleLength:
10
23
  Enabled: false
11
24
 
12
- Style/Documentation:
25
+ RSpec/MultipleExpectations:
13
26
  Enabled: false
@@ -1,14 +1,23 @@
1
1
  # Change Log
2
2
  All notable changes to this project will be documented in this file.
3
3
 
4
- The format is based on [Keep a Changelog](http://keepachangelog.com/)
5
- and this project adheres to [Semantic Versioning](http://semver.org/).
4
+ The format is based on [Keep a Changelog](http://keepachangelog.com/) and this
5
+ project adheres to [Semantic Versioning](http://semver.org/).
6
+
7
+ ## master
8
+
9
+ ### Changed
10
+
11
+ ## [0.4.0] - 2019-06-11
12
+
13
+ - Restructured library files to follow naming conventions. (https://guides.rubygems.org/name-your-gem/).
14
+ - Add support of new doorkeeper with encryption [#30](https://github.com/doorkeeper-gem/doorkeeper-jwt/pull/30)
6
15
 
7
16
  ## [0.3.0] - 2018-10-01
8
17
 
9
18
  ### Added
10
19
 
11
- - Bump JWT gem version. Via [#27](https://github.com/doorkeeper-gem/doorkeeper-jwt/pull/27) by [@pacop](https://github.com/pacop/)
20
+ - Bump JWT gem version. Via [#27](https://github.com/doorkeeper-gem/doorkeeper-jwt/pull/27) by [@pacop](https://github.com/pacop/).
12
21
 
13
22
  ## [0.2.1] - 2017-06-07
14
23
 
@@ -20,4 +29,5 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
20
29
 
21
30
  ### Added
22
31
 
23
- - Added support for ["kid" (Key ID) Header Parameter](https://tools.ietf.org/html/rfc7515#section-4.1.4) @travisofthenorth. Allows custom token headers.
32
+ - Added support for ["kid" (Key ID) Header Parameter](https://tools.ietf.org/html/rfc7515#section-4.1.4)
33
+ @travisofthenorth. Allows custom token headers.
data/Gemfile CHANGED
@@ -1,6 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
 
3
5
  # Specify your gem's dependencies in doorkeeper-jwt.gemspec
4
6
  gemspec
5
7
 
6
8
  gem 'coveralls', require: false
9
+ gem 'rubocop', '~> 0.59.2', require: false
10
+ gem 'rubocop-rspec', '~> 1.30', require: false
data/README.md CHANGED
@@ -1,3 +1,4 @@
1
+ [![Gem Version](https://badge.fury.io/rb/doorkeeper-jwt.svg)](https://rubygems.org/gems/doorkeeper-jwt)
1
2
  [![Coverage Status](https://coveralls.io/repos/github/doorkeeper-gem/doorkeeper-jwt/badge.svg?branch=master)](https://coveralls.io/github/doorkeeper-gem/doorkeeper-jwt?branch=master)
2
3
  [![Build Status](https://travis-ci.org/doorkeeper-gem/doorkeeper-jwt.svg?branch=master)](https://travis-ci.org/doorkeeper-gem/doorkeeper-jwt)
3
4
  [![Maintainability](https://api.codeclimate.com/v1/badges/ca4d81b49acabda27e0c/maintainability)](https://codeclimate.com/github/doorkeeper-gem/doorkeeper-jwt/maintainability)
@@ -40,16 +41,17 @@ Then add a `Doorkeeper::JWT.configure` block below the `Doorkeeper.configure` bl
40
41
  ```ruby
41
42
  Doorkeeper::JWT.configure do
42
43
  # Set the payload for the JWT token. This should contain unique information
43
- # about the user.
44
- # Defaults to a randomly generated token in a hash
45
- # { token: "RANDOM-TOKEN" }
44
+ # about the user. Defaults to a randomly generated token in a hash:
45
+ # { token: "RANDOM-TOKEN" }
46
46
  token_payload do |opts|
47
47
  user = User.find(opts[:resource_owner_id])
48
48
 
49
49
  {
50
50
  iss: 'My App',
51
51
  iat: Time.current.utc.to_i,
52
- jti: SecureRandom.uuid, # @see JWT reserved claims - https://tools.ietf.org/html/draft-jones-json-web-token-07#page-7
52
+
53
+ # @see JWT reserved claims - https://tools.ietf.org/html/draft-jones-json-web-token-07#page-7
54
+ jti: SecureRandom.uuid,
53
55
 
54
56
  user: {
55
57
  id: user.id,
@@ -58,47 +60,44 @@ Doorkeeper::JWT.configure do
58
60
  }
59
61
  end
60
62
 
61
- # Optionally set additional headers for the JWT. See https://tools.ietf.org/html/rfc7515#section-4.1
63
+ # Optionally set additional headers for the JWT. See
64
+ # https://tools.ietf.org/html/rfc7515#section-4.1
62
65
  token_headers do |opts|
63
- {
64
- kid: opts[:application][:uid]
65
- }
66
+ { kid: opts[:application][:uid] }
66
67
  end
67
68
 
68
- # Use the application secret specified in the Access Grant token
69
- # Defaults to false
70
- # If you specify `use_application_secret true`, both secret_key and secret_key_path will be ignored
69
+ # Use the application secret specified in the access grant token. Defaults to
70
+ # `false`. If you specify `use_application_secret true`, both `secret_key` and
71
+ # `secret_key_path` will be ignored.
71
72
  use_application_secret false
72
73
 
73
74
  # Set the encryption secret. This would be shared with any other applications
74
- # that should be able to read the payload of the token.
75
- # Defaults to "secret"
75
+ # that should be able to read the payload of the token. Defaults to "secret".
76
76
  secret_key ENV['JWT_SECRET']
77
77
 
78
- # If you want to use RS* encoding specify the path to the RSA key
79
- # to use for signing.
80
- # If you specify a secret_key_path it will be used instead of secret_key
78
+ # If you want to use RS* encoding specify the path to the RSA key to use for
79
+ # signing. If you specify a `secret_key_path` it will be used instead of
80
+ # `secret_key`.
81
81
  secret_key_path File.join('path', 'to', 'file.pem')
82
82
 
83
- # Specify encryption type. Supports any algorithm in
84
- # https://github.com/progrium/ruby-jwt
85
- # defaults to nil
83
+ # Specify encryption type (https://github.com/progrium/ruby-jwt). Defaults to
84
+ # `nil`.
86
85
  encryption_method :hs512
87
86
  end
88
87
  ```
89
88
 
90
89
  ## Development
91
90
 
92
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `bin/console` for an interactive
93
- prompt that will allow you to experiment.
91
+ After checking out the repo, run `bin/setup` to install dependencies. Then, run `bin/console` for an interactive prompt
92
+ that will allow you to experiment.
94
93
 
95
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update
96
- the version number in `version.rb`, and then run `bundle exec rake release` to create a git tag for the
97
- version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
94
+ To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the
95
+ version number in `version.rb`, and then run `bundle exec rake release` to create a git tag for the version, push git
96
+ commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
98
97
 
99
98
  ## Contributing
100
99
 
101
- 1. Fork it ( https://github.com/[my-github-username]/doorkeeper-jwt/fork )
100
+ 1. Fork it (https://github.com/[my-github-username]/doorkeeper-jwt/fork)
102
101
  2. Create your feature branch (`git checkout -b my-new-feature`)
103
102
  3. Commit your changes (`git commit -am 'Add some feature'`)
104
103
  4. Push to the branch (`git push origin my-new-feature`)
data/Rakefile CHANGED
@@ -1,5 +1,7 @@
1
- require "bundler/gem_tasks"
2
- require "rspec/core/rake_task"
1
+ # frozen_string_literal: true
2
+
3
+ require 'bundler/gem_tasks'
4
+ require 'rspec/core/rake_task'
3
5
 
4
6
  RSpec::Core::RakeTask.new
5
7
 
@@ -1,14 +1,17 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
- require "bundler/setup"
4
- require "doorkeeper-jwt"
4
+ require 'bundler/setup'
5
+ require 'doorkeeper-jwt'
5
6
 
6
7
  # You can add fixtures and/or initialization code here to make experimenting
7
8
  # with your gem easier. You can also use a different console, if you like.
8
9
 
9
10
  # (If you use this, don't forget to add pry to your Gemfile!)
10
- # require "pry"
11
+ # require 'pry'
12
+ #
11
13
  # Pry.start
12
14
 
13
- require "irb"
15
+ require 'irb'
16
+
14
17
  IRB.start
data/bin/setup CHANGED
@@ -1,7 +1,8 @@
1
- #!/bin/bash
1
+ #!/usr/bin/env bash
2
+
2
3
  set -euo pipefail
3
4
  IFS=$'\n\t'
4
5
 
5
6
  bundle install
6
7
 
7
- # Do any other automated setup that you need to do here
8
+ # Do any other automated setup that you need to do here.
@@ -1,27 +1,31 @@
1
+ # frozen_string_literal: true
2
+
1
3
  lib = File.expand_path('lib', __dir__)
2
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
- require 'doorkeeper-jwt/version'
5
+
6
+ require 'doorkeeper/jwt/version'
4
7
 
5
8
  Gem::Specification.new do |spec|
6
- spec.name = "doorkeeper-jwt"
7
- spec.version = Doorkeeper::JWT.gem_version
8
- spec.authors = ["Chris Warren"]
9
- spec.email = ["chris@expectless.com"]
9
+ spec.name = 'doorkeeper-jwt'
10
+ spec.version = Doorkeeper::JWT.gem_version
11
+ spec.authors = ['Chris Warren']
12
+ spec.email = ['chris@expectless.com']
10
13
 
11
- spec.summary = 'JWT token generator for Doorkeeper'
12
- spec.description = 'JWT token generator extension for Doorkeeper'
13
- spec.homepage = "https://github.com/chriswarren/doorkeeper-jwt"
14
- spec.license = "MIT"
14
+ spec.summary = 'JWT token generator for Doorkeeper'
15
+ spec.description = 'JWT token generator extension for Doorkeeper'
16
+ spec.homepage = 'https://github.com/chriswarren/doorkeeper-jwt'
17
+ spec.license = 'MIT'
15
18
 
19
+ spec.bindir = 'exe'
16
20
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
17
- spec.bindir = "exe"
18
21
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
19
- spec.require_paths = ["lib"]
22
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
23
+ spec.require_paths = ['lib']
20
24
 
21
- spec.add_dependency "jwt", "~> 2.1.0", ">= 2.1.0"
25
+ spec.add_dependency 'jwt', '~> 2.1'
22
26
 
23
- spec.add_development_dependency "bundler", "~> 1.8", ">= 1.8"
24
- spec.add_development_dependency "pry", "~> 0"
25
- spec.add_development_dependency "rake", "~> 10.0", ">= 10.0"
26
- spec.add_development_dependency "rspec", "~> 3.2.0", ">= 3.2"
27
+ spec.add_development_dependency 'bundler', '>= 1.16', '< 3'
28
+ spec.add_development_dependency 'pry', '~> 0'
29
+ spec.add_development_dependency 'rake', '~> 12.3'
30
+ spec.add_development_dependency 'rspec', '~> 3.8'
27
31
  end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "doorkeeper-jwt/version"
4
- require "doorkeeper-jwt/config"
3
+ require 'doorkeeper/jwt/version'
4
+ require 'doorkeeper/jwt/config'
5
5
  require 'jwt'
6
6
 
7
7
  module Doorkeeper
@@ -19,11 +19,11 @@ module Doorkeeper
19
19
  private
20
20
 
21
21
  def token_payload(opts = {})
22
- Doorkeeper::JWT.configuration.token_payload.call opts
22
+ Doorkeeper::JWT.configuration.token_payload.call(opts)
23
23
  end
24
24
 
25
25
  def token_headers(opts = {})
26
- Doorkeeper::JWT.configuration.token_headers.call opts
26
+ Doorkeeper::JWT.configuration.token_headers.call(opts)
27
27
  end
28
28
 
29
29
  def secret_key(opts)
@@ -33,6 +33,7 @@ module Doorkeeper
33
33
  return secret_key_file unless secret_key_file.nil?
34
34
  return rsa_key if rsa_encryption?
35
35
  return ecdsa_key if ecdsa_encryption?
36
+
36
37
  Doorkeeper::JWT.configuration.secret_key
37
38
  end
38
39
 
@@ -43,7 +44,8 @@ module Doorkeeper
43
44
  end
44
45
 
45
46
  def encryption_method
46
- return "none" unless Doorkeeper::JWT.configuration.encryption_method
47
+ return 'none' unless Doorkeeper::JWT.configuration.encryption_method
48
+
47
49
  Doorkeeper::JWT.configuration.encryption_method.to_s.upcase
48
50
  end
49
51
 
@@ -53,17 +55,32 @@ module Doorkeeper
53
55
 
54
56
  def application_secret(opts)
55
57
  if opts[:application].nil?
56
- raise "JWT `use_application_secret` is enabled but application is " \
57
- "nil. This can happen if `client_id` was absent in the request " \
58
- "params."
58
+ raise(
59
+ 'JWT `use_application_secret` is enabled, but application is nil.' \
60
+ ' This can happen if `client_id` was absent in the request params.'
61
+ )
59
62
  end
60
63
 
61
- if opts[:application][:secret].nil?
62
- raise "JWT `use_application_secret` is enabled but the application " \
63
- "secret is nil."
64
+ secret = if opts[:application].respond_to?(:plaintext_secret)
65
+ unless opts[:application].secret_strategy.allows_restoring_secrets?
66
+ raise(
67
+ "JWT `use_application_secret` is enabled, but secret strategy " \
68
+ "doesn't allow plaintext secret restoring"
69
+ )
70
+ end
71
+ opts[:application].plaintext_secret
72
+ else
73
+ opts[:application][:secret]
74
+ end
75
+
76
+ if secret.nil?
77
+ raise(
78
+ 'JWT `use_application_secret` is enabled, but the application' \
79
+ ' secret is nil.'
80
+ )
64
81
  end
65
82
 
66
- opts[:application][:secret]
83
+ secret
67
84
  end
68
85
 
69
86
  def rsa_encryption?
@@ -13,7 +13,7 @@ module Doorkeeper
13
13
  end
14
14
 
15
15
  def self.configuration
16
- @config || (raise MissingConfiguration)
16
+ @config || raise(MissingConfiguration)
17
17
  end
18
18
 
19
19
  class Config
@@ -27,76 +27,73 @@ module Doorkeeper
27
27
  @config
28
28
  end
29
29
 
30
- def use_application_secret(use_application_secret)
31
- @config.instance_variable_set(
32
- '@use_application_secret',
33
- use_application_secret
34
- )
30
+ def use_application_secret(value)
31
+ @config.instance_variable_set('@use_application_secret', value)
35
32
  end
36
33
 
37
- def secret_key(secret_key)
38
- @config.instance_variable_set('@secret_key', secret_key)
34
+ def secret_key(value)
35
+ @config.instance_variable_set('@secret_key', value)
39
36
  end
40
37
 
41
- def secret_key_path(secret_key_path)
42
- @config.instance_variable_set('@secret_key_path', secret_key_path)
38
+ def secret_key_path(value)
39
+ @config.instance_variable_set('@secret_key_path', value)
43
40
  end
44
41
 
45
- def encryption_method(encryption_method)
46
- @config.instance_variable_set(
47
- '@encryption_method', encryption_method
48
- )
42
+ def encryption_method(value)
43
+ @config.instance_variable_set('@encryption_method', value)
49
44
  end
50
45
  end
51
46
 
52
47
  module Option
53
- # Defines configuration option
48
+ # Defines configuration options.
54
49
  #
55
- # When you call option, it defines two methods. One method will take place
56
- # in the +Config+ class and the other method will take place in the
57
- # +Builder+ class.
50
+ # When you call option, it defines two methods. One method will take
51
+ # place in the +Config+ class and the other method will take place in
52
+ # the +Builder+ class.
58
53
  #
59
- # The +name+ parameter will set both builder method and config attribute.
60
- # If the +:as+ option is defined, the builder method will be the specified
61
- # option while the config attribute will be the +name+ parameter.
54
+ # The +name+ parameter will set both builder method and config
55
+ # attribute. If the +:as+ option is defined, the builder method will be
56
+ # the specified option while the config attribute will be the +name+
57
+ # parameter.
62
58
  #
63
- # If you want to introduce another level of config DSL you can
64
- # define +builder_class+ parameter.
65
- # Builder should take a block as the initializer parameter and respond to function +build+
66
- # that returns the value of the config attribute.
59
+ # If you want to introduce another level of config DSL you can define
60
+ # +builder_class+ parameter. Builder should take a block as the
61
+ # initializer parameter and respond to function +build+ that returns the
62
+ # value of the config attribute.
67
63
  #
68
64
  # ==== Options
69
65
  #
70
- # * [:+as+] Set the builder method that goes inside +configure+ block
71
- # * [+:default+] The default value in case no option was set
66
+ # * [+:as+] Set the builder method that goes inside +configure+ block.
67
+ # * [+:default+] The default value in case no option was set.
72
68
  #
73
69
  # ==== Examples
74
70
  #
75
- # option :name
76
- # option :name, as: :set_name
77
- # option :name, default: 'My Name'
78
- # option :scopes builder_class: ScopesBuilder
79
- #
71
+ # option :name
72
+ # option :name, as: :set_name
73
+ # option :name, default: 'My Name'
74
+ # option :scopes, builder_class: ScopesBuilder
80
75
  def option(name, options = {})
81
76
  attribute = options[:as] || name
82
77
  attribute_builder = options[:builder_class]
78
+ attribute_symbol = :"@#{attribute}"
83
79
 
84
80
  Builder.instance_eval do
85
81
  define_method name do |*args, &block|
86
82
  # TODO: is builder_class option being used?
87
- value = if attribute_builder
88
- attribute_builder.new(&block).build
89
- else
90
- block || args.first
91
- end
92
-
93
- @config.instance_variable_set(:"@#{attribute}", value)
83
+ value =
84
+ if attribute_builder
85
+ attribute_builder.new(&block).build
86
+ else
87
+ block || args.first
88
+ end
89
+
90
+ @config.instance_variable_set(attribute_symbol, value)
94
91
  end
95
92
  end
96
93
 
97
94
  define_method attribute do |*|
98
- if instance_variable_defined?(:"@#{attribute}")
99
- instance_variable_get(:"@#{attribute}")
95
+ if instance_variable_defined?(attribute_symbol)
96
+ instance_variable_get(attribute_symbol)
100
97
  else
101
98
  options[:default]
102
99
  end
@@ -112,8 +109,11 @@ module Doorkeeper
112
109
 
113
110
  extend Option
114
111
 
115
- option :token_payload,
116
- default: proc { { token: SecureRandom.method(:hex) } }
112
+ option(
113
+ :token_payload,
114
+ default: proc { { token: SecureRandom.method(:hex) } }
115
+ )
116
+
117
117
  option :token_headers, default: proc { {} }
118
118
  option :use_application_secret, default: false
119
119
  option :secret_key, default: nil
@@ -9,7 +9,7 @@ module Doorkeeper
9
9
  module VERSION
10
10
  # Semantic versioning
11
11
  MAJOR = 0
12
- MINOR = 3
12
+ MINOR = 4
13
13
  TINY = 0
14
14
  PRE = nil
15
15
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: doorkeeper-jwt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Warren
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-10-01 00:00:00.000000000 Z
11
+ date: 2019-10-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jwt
@@ -16,40 +16,34 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 2.1.0
20
- - - ">="
21
- - !ruby/object:Gem::Version
22
- version: 2.1.0
19
+ version: '2.1'
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
24
  - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: 2.1.0
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- version: 2.1.0
26
+ version: '2.1'
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: bundler
35
29
  requirement: !ruby/object:Gem::Requirement
36
30
  requirements:
37
- - - "~>"
38
- - !ruby/object:Gem::Version
39
- version: '1.8'
40
31
  - - ">="
41
32
  - !ruby/object:Gem::Version
42
- version: '1.8'
33
+ version: '1.16'
34
+ - - "<"
35
+ - !ruby/object:Gem::Version
36
+ version: '3'
43
37
  type: :development
44
38
  prerelease: false
45
39
  version_requirements: !ruby/object:Gem::Requirement
46
40
  requirements:
47
- - - "~>"
48
- - !ruby/object:Gem::Version
49
- version: '1.8'
50
41
  - - ">="
51
42
  - !ruby/object:Gem::Version
52
- version: '1.8'
43
+ version: '1.16'
44
+ - - "<"
45
+ - !ruby/object:Gem::Version
46
+ version: '3'
53
47
  - !ruby/object:Gem::Dependency
54
48
  name: pry
55
49
  requirement: !ruby/object:Gem::Requirement
@@ -70,40 +64,28 @@ dependencies:
70
64
  requirements:
71
65
  - - "~>"
72
66
  - !ruby/object:Gem::Version
73
- version: '10.0'
74
- - - ">="
75
- - !ruby/object:Gem::Version
76
- version: '10.0'
67
+ version: '12.3'
77
68
  type: :development
78
69
  prerelease: false
79
70
  version_requirements: !ruby/object:Gem::Requirement
80
71
  requirements:
81
72
  - - "~>"
82
73
  - !ruby/object:Gem::Version
83
- version: '10.0'
84
- - - ">="
85
- - !ruby/object:Gem::Version
86
- version: '10.0'
74
+ version: '12.3'
87
75
  - !ruby/object:Gem::Dependency
88
76
  name: rspec
89
77
  requirement: !ruby/object:Gem::Requirement
90
78
  requirements:
91
79
  - - "~>"
92
80
  - !ruby/object:Gem::Version
93
- version: 3.2.0
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '3.2'
81
+ version: '3.8'
97
82
  type: :development
98
83
  prerelease: false
99
84
  version_requirements: !ruby/object:Gem::Requirement
100
85
  requirements:
101
86
  - - "~>"
102
87
  - !ruby/object:Gem::Version
103
- version: 3.2.0
104
- - - ">="
105
- - !ruby/object:Gem::Version
106
- version: '3.2'
88
+ version: '3.8'
107
89
  description: JWT token generator extension for Doorkeeper
108
90
  email:
109
91
  - chris@expectless.com
@@ -112,6 +94,7 @@ extensions: []
112
94
  extra_rdoc_files: []
113
95
  files:
114
96
  - ".gitignore"
97
+ - ".hound.yml"
115
98
  - ".rspec"
116
99
  - ".rubocop.yml"
117
100
  - ".travis.yml"
@@ -123,10 +106,9 @@ files:
123
106
  - bin/console
124
107
  - bin/setup
125
108
  - doorkeeper-jwt.gemspec
126
- - lib/doorkeeper-jwt.rb
127
- - lib/doorkeeper-jwt/config.rb
128
- - lib/doorkeeper-jwt/doorkeeper-jwt.rb
129
- - lib/doorkeeper-jwt/version.rb
109
+ - lib/doorkeeper/jwt.rb
110
+ - lib/doorkeeper/jwt/config.rb
111
+ - lib/doorkeeper/jwt/version.rb
130
112
  homepage: https://github.com/chriswarren/doorkeeper-jwt
131
113
  licenses:
132
114
  - MIT
@@ -146,8 +128,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
146
128
  - !ruby/object:Gem::Version
147
129
  version: '0'
148
130
  requirements: []
149
- rubyforge_project:
150
- rubygems_version: 2.6.11
131
+ rubygems_version: 3.0.2
151
132
  signing_key:
152
133
  specification_version: 4
153
134
  summary: JWT token generator for Doorkeeper
@@ -1,3 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'doorkeeper-jwt/version'