tiddle 1.4.0 → 1.5.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
2
  SHA256:
3
- metadata.gz: a0e5143097b75f1bc0ffb7231b9d20b2a0f1bb4ce3936103f34779300b8f3aab
4
- data.tar.gz: b18ce38bb5cb29eaaa606cc3d2658a789c3b38475d367e04061504a93f449135
3
+ metadata.gz: 3bd6e3feb1ccba22684e65085d74f245e894178246b8535c4ccc4d885984b154
4
+ data.tar.gz: c12348cf95c0731af63b99b8804e825652791e7c166d35d8f539a172fbb78601
5
5
  SHA512:
6
- metadata.gz: ae553ceb3221decfa04a9b119add2f7244ad305cce18a919ca20132dba87b962bce058dde18ad496f4d17edbabbbc68b9f38177a3e0c76ef73aaaf235a6a5238
7
- data.tar.gz: 435c9c1c88c5b6a00260ad12caf8484d8b3d50e8f6ace5b7f5669c1543a19c4379619821e1e6cecd5708b42c99cd7b7068e09a4a60e8c299837fef07a905fa9b
6
+ metadata.gz: c8e9eaf42c24032583f36906d73950ebaab11252193629f5b82045a8d81f51b39ca98beefb58ccec234499458407f4cdf0406902a166a5232ff713678d704207
7
+ data.tar.gz: d80bf9abe5d72446839eaab8f7dcb6d5c6521f8c15f0d646c564b8bb635c0d3475cf177cfbc917aab7a68b469613b3722657085a2a8599ffc5a394f087f0168e
@@ -1,5 +1,5 @@
1
1
  AllCops:
2
- TargetRubyVersion: 2.3
2
+ TargetRubyVersion: 2.4
3
3
  Include:
4
4
  - 'lib'
5
5
  - 'spec'
@@ -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.3.5"
9
- - "2.4.2"
10
- - "2.5.0"
11
+ - "2.4.6"
12
+ - "2.5.5"
13
+ - "2.6.3"
14
+ - "2.7.1"
11
15
  gemfile:
12
- - "gemfiles/rails4.2.gemfile"
13
- - "gemfiles/rails5.0.gemfile"
14
- - "gemfiles/rails5.1.gemfile"
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
- end
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
@@ -1,3 +1,11 @@
1
+ ### 1.5.0
2
+
3
+ Add Rails 6 support
4
+
5
+ Fix warning on Ruby 2.7 (Andy Klimczak)
6
+
7
+ Skip CSRF clean up (Marcelo Silveira)
8
+
1
9
  ### 1.4.0
2
10
 
3
11
  Support for Devise 4.6.
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:
@@ -5,5 +5,6 @@ source "https://rubygems.org"
5
5
  gem "rubocop", "~> 0.52.0"
6
6
  gem "rails", "~> 4.2.0"
7
7
  gem "mongoid", "~> 5"
8
+ gem "sqlite3", "~> 1.3.13"
8
9
 
9
10
  gemspec path: "../"
@@ -5,5 +5,6 @@ source "https://rubygems.org"
5
5
  gem "rubocop", "~> 0.52.0"
6
6
  gem "rails", "~> 5.2.1"
7
7
  gem "mongoid", "~> 6"
8
+ gem "sqlite3", "~> 1.3.13"
8
9
 
9
10
  gemspec path: "../"
@@ -3,7 +3,8 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "rubocop", "~> 0.52.0"
6
- gem "rails", "~> 5.0.0"
7
- gem "mongoid", "~> 6"
6
+ gem "rails", "~> 6.0.0"
7
+ gem "mongoid", "~> 7"
8
+ gem "sqlite3"
8
9
 
9
10
  gemspec path: "../"
@@ -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)
@@ -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
@@ -1,3 +1,3 @@
1
1
  module Tiddle
2
- VERSION = "1.4.0".freeze
2
+ VERSION = "1.5.0".freeze
3
3
  end
@@ -11,6 +11,5 @@ module RailsApp
11
11
  config.eager_load = true
12
12
  config.root = File.expand_path('../../.', __FILE__)
13
13
  config.consider_all_requests_local = true
14
- config.active_record.sqlite3.represent_boolean_as_integer = true if config.active_record.sqlite3
15
14
  end
16
15
  end
@@ -13,16 +13,16 @@ end
13
13
  ENV["RAILS_ENV"] = 'test'
14
14
  ENV["DATABASE_URL"] = "sqlite3:db/test.sqlite3"
15
15
 
16
- require 'rails/all'
17
- require 'rspec/rails'
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
@@ -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
- if Gem::Requirement.new(">= 5.2.0.rc1") =~ Rails.gem_version
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
 
@@ -1,7 +1,9 @@
1
1
  def warningless_get(path, headers:)
2
+ # rubocop:disable Performance/RegexpMatch
2
3
  if Gem::Requirement.new(">= 5") =~ Rails.gem_version
3
4
  get path, headers: headers
4
5
  else
5
6
  get path, {}, headers
6
7
  end
8
+ # rubocop:enable Performance/RegexpMatch
7
9
  end
@@ -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.3.0'
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.0
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: 2019-03-15 00:00:00.000000000 Z
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.3.0
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
- rubyforge_project:
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
@@ -1,9 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "rubocop", "~> 0.52.0"
6
- gem "rails", "~> 5.1.0"
7
- gem "mongoid", "~> 6"
8
-
9
- gemspec path: "../"