tiddle 1.4.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +1 -1
- data/.travis.yml +16 -7
- data/Appraisals +8 -10
- data/CHANGELOG.md +8 -0
- data/README.md +0 -4
- data/gemfiles/rails4.2.gemfile +1 -0
- data/gemfiles/rails5.2.gemfile +1 -0
- data/gemfiles/{rails5.0.gemfile → rails6.0.gemfile} +3 -2
- data/lib/tiddle.rb +1 -1
- data/lib/tiddle/strategy.rb +8 -0
- data/lib/tiddle/version.rb +1 -1
- data/spec/rails_app_mongoid/config/application.rb +0 -1
- data/spec/spec_helper.rb +4 -4
- data/spec/support/backend.rb +8 -1
- data/spec/support/warningless_get.rb +2 -0
- data/tiddle.gemspec +1 -3
- metadata +5 -35
- data/gemfiles/rails5.1.gemfile +0 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3bd6e3feb1ccba22684e65085d74f245e894178246b8535c4ccc4d885984b154
|
4
|
+
data.tar.gz: c12348cf95c0731af63b99b8804e825652791e7c166d35d8f539a172fbb78601
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c8e9eaf42c24032583f36906d73950ebaab11252193629f5b82045a8d81f51b39ca98beefb58ccec234499458407f4cdf0406902a166a5232ff713678d704207
|
7
|
+
data.tar.gz: d80bf9abe5d72446839eaab8f7dcb6d5c6521f8c15f0d646c564b8bb635c0d3475cf177cfbc917aab7a68b469613b3722657085a2a8599ffc5a394f087f0168e
|
data/.rubocop.yml
CHANGED
data/.travis.yml
CHANGED
@@ -1,18 +1,27 @@
|
|
1
1
|
language: ruby
|
2
|
+
branches:
|
3
|
+
only:
|
4
|
+
- master
|
2
5
|
before_install:
|
3
6
|
- gem uninstall -v '>= 2' -i $(rvm gemdir)@global -ax bundler || true
|
4
7
|
- gem install bundler -v '< 2'
|
5
8
|
services:
|
6
9
|
- mongodb
|
7
10
|
rvm:
|
8
|
-
- "2.
|
9
|
-
- "2.
|
10
|
-
- "2.
|
11
|
+
- "2.4.6"
|
12
|
+
- "2.5.5"
|
13
|
+
- "2.6.3"
|
14
|
+
- "2.7.1"
|
11
15
|
gemfile:
|
12
|
-
-
|
13
|
-
-
|
14
|
-
-
|
15
|
-
- "gemfiles/rails5.2.gemfile"
|
16
|
+
- gemfiles/rails4.2.gemfile
|
17
|
+
- gemfiles/rails5.2.gemfile
|
18
|
+
- gemfiles/rails6.0.gemfile
|
16
19
|
env:
|
17
20
|
- BACKEND=mongoid
|
18
21
|
- BACKEND=active_record
|
22
|
+
jobs:
|
23
|
+
exclude:
|
24
|
+
- rvm: "2.4.6"
|
25
|
+
gemfile: gemfiles/rails6.0.gemfile
|
26
|
+
- rvm: "2.7.1"
|
27
|
+
gemfile: gemfiles/rails4.2.gemfile
|
data/Appraisals
CHANGED
@@ -1,19 +1,17 @@
|
|
1
1
|
appraise "rails4.2" do
|
2
2
|
gem "rails", "~> 4.2.0"
|
3
3
|
gem "mongoid", "~> 5"
|
4
|
-
|
5
|
-
|
6
|
-
appraise "rails5.0" do
|
7
|
-
gem "rails", "~> 5.0.0"
|
8
|
-
gem "mongoid", "~> 6"
|
9
|
-
end
|
10
|
-
|
11
|
-
appraise "rails5.1" do
|
12
|
-
gem "rails", "~> 5.1.0"
|
13
|
-
gem "mongoid", "~> 6"
|
4
|
+
gem "sqlite3", "~> 1.3.13"
|
14
5
|
end
|
15
6
|
|
16
7
|
appraise "rails5.2" do
|
17
8
|
gem "rails", "~> 5.2.1"
|
18
9
|
gem "mongoid", "~> 6"
|
10
|
+
gem "sqlite3", "~> 1.3.13"
|
11
|
+
end
|
12
|
+
|
13
|
+
appraise "rails6.0" do
|
14
|
+
gem "rails", "~> 6.0.0"
|
15
|
+
gem "mongoid", "~> 7"
|
16
|
+
gem "sqlite3"
|
19
17
|
end
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -8,10 +8,6 @@ Tiddle provides Devise strategy for token authentication in API-only Ruby on Rai
|
|
8
8
|
|
9
9
|
Tiddle is lightweight and non-configurable. It does what it has to do and leaves some manual implementation to you.
|
10
10
|
|
11
|
-
## Versions
|
12
|
-
|
13
|
-
Versions 0.7.x+ are meant to support Rails 5.0, but they require Devise 4. If you want to use Devise 3 with Rails 4.2 then take a look at the ```0.6.x``` branch.
|
14
|
-
|
15
11
|
## Installation
|
16
12
|
|
17
13
|
Add this line to your application's Gemfile:
|
data/gemfiles/rails4.2.gemfile
CHANGED
data/gemfiles/rails5.2.gemfile
CHANGED
data/lib/tiddle.rb
CHANGED
@@ -6,7 +6,7 @@ require "tiddle/token_issuer"
|
|
6
6
|
|
7
7
|
module Tiddle
|
8
8
|
def self.create_and_return_token(resource, request, options = {})
|
9
|
-
TokenIssuer.build.create_and_return_token(resource, request, options)
|
9
|
+
TokenIssuer.build.create_and_return_token(resource, request, **options)
|
10
10
|
end
|
11
11
|
|
12
12
|
def self.expire_token(resource, request)
|
data/lib/tiddle/strategy.rb
CHANGED
@@ -28,6 +28,14 @@ module Devise
|
|
28
28
|
false
|
29
29
|
end
|
30
30
|
|
31
|
+
# Avoid CSRF clean up for token authentication as it might trigger session creation in API
|
32
|
+
# environments even if CSRF prevention is not being used.
|
33
|
+
# Devise provides a `clean_up_csrf_token_on_authentication` option but it's not always viable
|
34
|
+
# in applications with multiple user models and authentication strategies.
|
35
|
+
def clean_up_csrf?
|
36
|
+
false
|
37
|
+
end
|
38
|
+
|
31
39
|
private
|
32
40
|
|
33
41
|
def authentication_keys_from_headers
|
data/lib/tiddle/version.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
@@ -13,16 +13,16 @@ end
|
|
13
13
|
ENV["RAILS_ENV"] = 'test'
|
14
14
|
ENV["DATABASE_URL"] = "sqlite3:db/test.sqlite3"
|
15
15
|
|
16
|
-
require
|
17
|
-
|
16
|
+
Dir[__dir__ + "/support/**/*.rb"].each { |f| require f }
|
17
|
+
|
18
18
|
require 'devise'
|
19
19
|
require 'tiddle'
|
20
20
|
|
21
|
-
Dir[__dir__ + "/support/**/*.rb"].each { |f| require f }
|
22
|
-
|
23
21
|
backend = Backend.from_name(ENV['BACKEND'])
|
24
22
|
backend.load!
|
25
23
|
|
24
|
+
require 'rspec/rails'
|
25
|
+
|
26
26
|
# This file was generated by the `rspec --init` command. Conventionally, all
|
27
27
|
# specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
|
28
28
|
# The generated `.rspec` file contains `--require spec_helper` which will cause
|
data/spec/support/backend.rb
CHANGED
@@ -23,11 +23,18 @@ module Backend
|
|
23
23
|
# Do initial migration
|
24
24
|
path = File.expand_path("../rails_app_active_record/db/migrate/", File.dirname(__FILE__))
|
25
25
|
|
26
|
-
|
26
|
+
# rubocop:disable Performance/RegexpMatch
|
27
|
+
if Gem::Requirement.new(">= 6.0.0") =~ Rails.gem_version
|
28
|
+
ActiveRecord::MigrationContext.new(
|
29
|
+
path,
|
30
|
+
ActiveRecord::SchemaMigration
|
31
|
+
).migrate
|
32
|
+
elsif Gem::Requirement.new(">= 5.2.0") =~ Rails.gem_version
|
27
33
|
ActiveRecord::MigrationContext.new(path).migrate
|
28
34
|
else
|
29
35
|
ActiveRecord::Migrator.migrate(path)
|
30
36
|
end
|
37
|
+
# rubocop:enable Performance/RegexpMatch
|
31
38
|
end
|
32
39
|
end
|
33
40
|
|
data/tiddle.gemspec
CHANGED
@@ -16,15 +16,13 @@ Gem::Specification.new do |spec|
|
|
16
16
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
17
17
|
spec.require_paths = ["lib"]
|
18
18
|
|
19
|
-
spec.required_ruby_version = '>= 2.
|
19
|
+
spec.required_ruby_version = '>= 2.4.0'
|
20
20
|
|
21
21
|
spec.add_dependency "devise", ">= 4.0.0.rc1", "< 5"
|
22
22
|
spec.add_dependency "activerecord", ">= 4.2.0"
|
23
|
-
spec.add_development_dependency "bundler", "~> 1.7"
|
24
23
|
spec.add_development_dependency "rake", "~> 12.0"
|
25
24
|
spec.add_development_dependency "rspec-rails"
|
26
25
|
spec.add_development_dependency "appraisal"
|
27
|
-
spec.add_development_dependency "sqlite3", "< 1.4"
|
28
26
|
spec.add_development_dependency "coveralls"
|
29
27
|
spec.add_development_dependency "simplecov"
|
30
28
|
spec.add_development_dependency "rubocop"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tiddle
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Adam Niedzielski
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-08-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: devise
|
@@ -44,20 +44,6 @@ dependencies:
|
|
44
44
|
- - ">="
|
45
45
|
- !ruby/object:Gem::Version
|
46
46
|
version: 4.2.0
|
47
|
-
- !ruby/object:Gem::Dependency
|
48
|
-
name: bundler
|
49
|
-
requirement: !ruby/object:Gem::Requirement
|
50
|
-
requirements:
|
51
|
-
- - "~>"
|
52
|
-
- !ruby/object:Gem::Version
|
53
|
-
version: '1.7'
|
54
|
-
type: :development
|
55
|
-
prerelease: false
|
56
|
-
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
requirements:
|
58
|
-
- - "~>"
|
59
|
-
- !ruby/object:Gem::Version
|
60
|
-
version: '1.7'
|
61
47
|
- !ruby/object:Gem::Dependency
|
62
48
|
name: rake
|
63
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -100,20 +86,6 @@ dependencies:
|
|
100
86
|
- - ">="
|
101
87
|
- !ruby/object:Gem::Version
|
102
88
|
version: '0'
|
103
|
-
- !ruby/object:Gem::Dependency
|
104
|
-
name: sqlite3
|
105
|
-
requirement: !ruby/object:Gem::Requirement
|
106
|
-
requirements:
|
107
|
-
- - "<"
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
version: '1.4'
|
110
|
-
type: :development
|
111
|
-
prerelease: false
|
112
|
-
version_requirements: !ruby/object:Gem::Requirement
|
113
|
-
requirements:
|
114
|
-
- - "<"
|
115
|
-
- !ruby/object:Gem::Version
|
116
|
-
version: '1.4'
|
117
89
|
- !ruby/object:Gem::Dependency
|
118
90
|
name: coveralls
|
119
91
|
requirement: !ruby/object:Gem::Requirement
|
@@ -190,9 +162,8 @@ files:
|
|
190
162
|
- Rakefile
|
191
163
|
- config/locales/en.yml
|
192
164
|
- gemfiles/rails4.2.gemfile
|
193
|
-
- gemfiles/rails5.0.gemfile
|
194
|
-
- gemfiles/rails5.1.gemfile
|
195
165
|
- gemfiles/rails5.2.gemfile
|
166
|
+
- gemfiles/rails6.0.gemfile
|
196
167
|
- lib/tiddle.rb
|
197
168
|
- lib/tiddle/model.rb
|
198
169
|
- lib/tiddle/model_name.rb
|
@@ -243,15 +214,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
243
214
|
requirements:
|
244
215
|
- - ">="
|
245
216
|
- !ruby/object:Gem::Version
|
246
|
-
version: 2.
|
217
|
+
version: 2.4.0
|
247
218
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
248
219
|
requirements:
|
249
220
|
- - ">="
|
250
221
|
- !ruby/object:Gem::Version
|
251
222
|
version: '0'
|
252
223
|
requirements: []
|
253
|
-
|
254
|
-
rubygems_version: 2.7.3
|
224
|
+
rubygems_version: 3.1.2
|
255
225
|
signing_key:
|
256
226
|
specification_version: 4
|
257
227
|
summary: Token authentication for Devise which supports multiple tokens per model
|