tiddle 0.6.0 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/.travis.yml +10 -2
- data/Appraisals +7 -0
- data/CHANGELOG.md +4 -0
- data/CONTRIBUTING.md +12 -0
- data/README.md +12 -0
- data/Rakefile +6 -1
- data/gemfiles/rails4.2.gemfile +7 -0
- data/gemfiles/rails5.0.gemfile +7 -0
- data/lib/tiddle/version.rb +1 -1
- data/tiddle.gemspec +3 -3
- metadata +18 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bbff5c3f0edbfb99abd2f26f6d5df6abb065e814
|
4
|
+
data.tar.gz: bdc3e06b474d85e37250d7381cc29fcd182a4b68
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a507666669e952ab4267a1aa4da9848d50729ae64dc992ff1413ced2edd5ab1abdfc3283ff7eccb596512d958819a0ebe028563854dcab6cba0ef48e5e2d59a9
|
7
|
+
data.tar.gz: 470dc04acced63b0c4af4288721e0e9040b26dfffeac2f9830c8c364e5986714307b04612fbb37f64d321a668866145737f954b2811f56a6ff7d01724ce14e4a
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
data/Appraisals
ADDED
data/CHANGELOG.md
CHANGED
data/CONTRIBUTING.md
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
# Contributing
|
2
|
+
|
3
|
+
1. Fork the repo.
|
4
|
+
2. Run the tests:
|
5
|
+
|
6
|
+
```
|
7
|
+
appraisal install
|
8
|
+
rake
|
9
|
+
```
|
10
|
+
3. Introduce your change. If it's a new feature then write a test for it as well.
|
11
|
+
4. Make sure that tests are passing.
|
12
|
+
5. Push to your fork and submit a pull request.
|
data/README.md
CHANGED
@@ -3,11 +3,16 @@
|
|
3
3
|
[![Build Status](https://travis-ci.org/adamniedzielski/tiddle.svg?branch=master)](https://travis-ci.org/adamniedzielski/tiddle)
|
4
4
|
[![Coverage Status](https://coveralls.io/repos/adamniedzielski/tiddle/badge.svg?branch=master)](https://coveralls.io/r/adamniedzielski/tiddle?branch=master)
|
5
5
|
[![Code Climate](https://codeclimate.com/github/adamniedzielski/tiddle/badges/gpa.svg)](https://codeclimate.com/github/adamniedzielski/tiddle)
|
6
|
+
[![Get help on Codementor](https://cdn.codementor.io/badges/get_help_github.svg)](https://www.codementor.io/adamsunday?utm_source=github&utm_medium=button&utm_term=adamsunday&utm_campaign=github)
|
6
7
|
|
7
8
|
Tiddle provides Devise strategy for token authentication in API-only Ruby on Rails applications. Its main feature is **support for multiple tokens per user**.
|
8
9
|
|
9
10
|
Tiddle is lightweight and non-configurable. It does what it has to do and leaves some manual implementation to you.
|
10
11
|
|
12
|
+
## Versions
|
13
|
+
|
14
|
+
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.
|
15
|
+
|
11
16
|
## Installation
|
12
17
|
|
13
18
|
Add this line to your application's Gemfile:
|
@@ -100,3 +105,10 @@ More: http://adamniedzielski.github.io/blog/2015/04/04/token-authentication-with
|
|
100
105
|
## Using field other than email
|
101
106
|
|
102
107
|
Change ```config.authentication_keys``` in Devise intitializer and Tiddle will use this value.
|
108
|
+
|
109
|
+
|
110
|
+
## Security
|
111
|
+
|
112
|
+
Usually it makes sense to remove user's tokens after a password change. Depending on the project and on your taste, this can be done using various methods like running `user.authentication_tokens.destroy_all` after the password change or with an `after_save` callback in your model which runs `authentication_tokens.destroy_all if encrypted_password_changed?`.
|
113
|
+
|
114
|
+
In case of a security breach, remove all existing tokens.
|
data/Rakefile
CHANGED
@@ -1,10 +1,15 @@
|
|
1
1
|
require "bundler/gem_tasks"
|
2
2
|
require 'rspec/core/rake_task'
|
3
3
|
require 'rubocop/rake_task'
|
4
|
+
require 'appraisal'
|
4
5
|
|
5
6
|
RSpec::Core::RakeTask.new(spec: :rubocop)
|
6
7
|
RuboCop::RakeTask.new(:rubocop) do |task|
|
7
8
|
task.fail_on_error = false
|
8
9
|
end
|
9
10
|
|
10
|
-
|
11
|
+
if !ENV["APPRAISAL_INITIALIZED"] && !ENV["TRAVIS"]
|
12
|
+
task default: :appraisal
|
13
|
+
else
|
14
|
+
task default: :spec
|
15
|
+
end
|
data/lib/tiddle/version.rb
CHANGED
data/tiddle.gemspec
CHANGED
@@ -19,12 +19,12 @@ Gem::Specification.new do |spec|
|
|
19
19
|
|
20
20
|
spec.required_ruby_version = '>= 2.1.0'
|
21
21
|
|
22
|
-
spec.add_dependency "devise", ">=
|
23
|
-
spec.add_dependency "activerecord", "
|
22
|
+
spec.add_dependency "devise", ">= 4.0.0.rc1", "< 4.3"
|
23
|
+
spec.add_dependency "activerecord", ">= 4.2.0"
|
24
24
|
spec.add_development_dependency "bundler", "~> 1.7"
|
25
25
|
spec.add_development_dependency "rake", "~> 10.0"
|
26
26
|
spec.add_development_dependency "rspec-rails"
|
27
|
-
spec.add_development_dependency "
|
27
|
+
spec.add_development_dependency "appraisal"
|
28
28
|
spec.add_development_dependency "sqlite3"
|
29
29
|
spec.add_development_dependency "coveralls"
|
30
30
|
spec.add_development_dependency "simplecov"
|
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: 0.
|
4
|
+
version: 0.7.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: 2016-07-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: devise
|
@@ -16,32 +16,32 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 4.0.0.rc1
|
20
20
|
- - "<"
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: '3
|
22
|
+
version: '4.3'
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
26
26
|
requirements:
|
27
27
|
- - ">="
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version:
|
29
|
+
version: 4.0.0.rc1
|
30
30
|
- - "<"
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: '3
|
32
|
+
version: '4.3'
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: activerecord
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
|
-
- - "
|
37
|
+
- - ">="
|
38
38
|
- !ruby/object:Gem::Version
|
39
39
|
version: 4.2.0
|
40
40
|
type: :runtime
|
41
41
|
prerelease: false
|
42
42
|
version_requirements: !ruby/object:Gem::Requirement
|
43
43
|
requirements:
|
44
|
-
- - "
|
44
|
+
- - ">="
|
45
45
|
- !ruby/object:Gem::Version
|
46
46
|
version: 4.2.0
|
47
47
|
- !ruby/object:Gem::Dependency
|
@@ -87,19 +87,19 @@ dependencies:
|
|
87
87
|
- !ruby/object:Gem::Version
|
88
88
|
version: '0'
|
89
89
|
- !ruby/object:Gem::Dependency
|
90
|
-
name:
|
90
|
+
name: appraisal
|
91
91
|
requirement: !ruby/object:Gem::Requirement
|
92
92
|
requirements:
|
93
|
-
- - "
|
93
|
+
- - ">="
|
94
94
|
- !ruby/object:Gem::Version
|
95
|
-
version:
|
95
|
+
version: '0'
|
96
96
|
type: :development
|
97
97
|
prerelease: false
|
98
98
|
version_requirements: !ruby/object:Gem::Requirement
|
99
99
|
requirements:
|
100
|
-
- - "
|
100
|
+
- - ">="
|
101
101
|
- !ruby/object:Gem::Version
|
102
|
-
version:
|
102
|
+
version: '0'
|
103
103
|
- !ruby/object:Gem::Dependency
|
104
104
|
name: sqlite3
|
105
105
|
requirement: !ruby/object:Gem::Requirement
|
@@ -167,12 +167,16 @@ files:
|
|
167
167
|
- ".rspec"
|
168
168
|
- ".rubocop.yml"
|
169
169
|
- ".travis.yml"
|
170
|
+
- Appraisals
|
170
171
|
- CHANGELOG.md
|
172
|
+
- CONTRIBUTING.md
|
171
173
|
- Gemfile
|
172
174
|
- LICENSE.txt
|
173
175
|
- README.md
|
174
176
|
- Rakefile
|
175
177
|
- config/locales/en.yml
|
178
|
+
- gemfiles/rails4.2.gemfile
|
179
|
+
- gemfiles/rails5.0.gemfile
|
176
180
|
- lib/tiddle.rb
|
177
181
|
- lib/tiddle/model.rb
|
178
182
|
- lib/tiddle/model_name.rb
|
@@ -217,7 +221,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
217
221
|
version: '0'
|
218
222
|
requirements: []
|
219
223
|
rubyforge_project:
|
220
|
-
rubygems_version: 2.
|
224
|
+
rubygems_version: 2.5.1
|
221
225
|
signing_key:
|
222
226
|
specification_version: 4
|
223
227
|
summary: Token authentication for Devise which supports multiple tokens per model
|