devise 3.2.4 → 3.3.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of devise might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.gitignore +0 -1
- data/.travis.yml +12 -5
- data/CHANGELOG.md +28 -1
- data/Gemfile +5 -5
- data/Gemfile.lock +98 -92
- data/README.md +22 -16
- data/app/controllers/devise/confirmations_controller.rb +1 -1
- data/app/controllers/devise/registrations_controller.rb +18 -5
- data/app/controllers/devise/sessions_controller.rb +32 -9
- data/app/controllers/devise_controller.rb +3 -3
- data/app/views/devise/registrations/new.html.erb +1 -1
- data/app/views/devise/sessions/new.html.erb +2 -2
- data/app/views/devise/shared/_links.erb +1 -1
- data/config/locales/en.yml +16 -15
- data/gemfiles/Gemfile.rails-3.2-stable +3 -3
- data/gemfiles/Gemfile.rails-3.2-stable.lock +166 -0
- data/gemfiles/Gemfile.rails-4.0-stable +4 -4
- data/gemfiles/Gemfile.rails-4.0-stable.lock +162 -0
- data/gemfiles/Gemfile.rails-head +7 -4
- data/gemfiles/Gemfile.rails-head.lock +190 -0
- data/lib/devise.rb +8 -4
- data/lib/devise/controllers/helpers.rb +77 -6
- data/lib/devise/controllers/sign_in_out.rb +0 -1
- data/lib/devise/controllers/store_location.rb +8 -2
- data/lib/devise/controllers/url_helpers.rb +3 -1
- data/lib/devise/failure_app.rb +6 -6
- data/lib/devise/hooks/activatable.rb +3 -4
- data/lib/devise/hooks/csrf_cleaner.rb +3 -1
- data/lib/devise/hooks/timeoutable.rb +8 -1
- data/lib/devise/mapping.rb +4 -1
- data/lib/devise/models/confirmable.rb +3 -3
- data/lib/devise/models/database_authenticatable.rb +7 -3
- data/lib/devise/models/lockable.rb +2 -2
- data/lib/devise/models/recoverable.rb +23 -7
- data/lib/devise/models/rememberable.rb +2 -2
- data/lib/devise/models/trackable.rb +4 -1
- data/lib/devise/rails/routes.rb +8 -6
- data/lib/devise/strategies/authenticatable.rb +7 -0
- data/lib/devise/version.rb +1 -1
- data/lib/generators/active_record/devise_generator.rb +19 -2
- data/lib/generators/templates/README +1 -1
- data/lib/generators/templates/devise.rb +3 -0
- data/script/cached-bundle +49 -0
- data/script/s3-put +71 -0
- data/test/controllers/custom_registrations_controller_test.rb +35 -0
- data/test/controllers/helpers_test.rb +35 -0
- data/test/controllers/internal_helpers_test.rb +1 -1
- data/test/controllers/passwords_controller_test.rb +1 -1
- data/test/devise_test.rb +18 -5
- data/test/failure_app_test.rb +40 -4
- data/test/generators/active_record_generator_test.rb +6 -0
- data/test/helpers/devise_helper_test.rb +3 -2
- data/test/integration/authenticatable_test.rb +19 -3
- data/test/integration/confirmable_test.rb +49 -9
- data/test/integration/http_authenticatable_test.rb +1 -1
- data/test/integration/lockable_test.rb +6 -6
- data/test/integration/recoverable_test.rb +5 -5
- data/test/integration/registerable_test.rb +32 -22
- data/test/integration/timeoutable_test.rb +8 -2
- data/test/integration/trackable_test.rb +2 -2
- data/test/mailers/confirmation_instructions_test.rb +3 -3
- data/test/mailers/reset_password_instructions_test.rb +3 -3
- data/test/mailers/unlock_instructions_test.rb +3 -3
- data/test/models/authenticatable_test.rb +1 -1
- data/test/models/lockable_test.rb +6 -0
- data/test/models/recoverable_test.rb +12 -0
- data/test/models/rememberable_test.rb +21 -6
- data/test/models/trackable_test.rb +28 -0
- data/test/models/validatable_test.rb +2 -2
- data/test/rails_app/app/active_record/user_on_engine.rb +7 -0
- data/test/rails_app/app/active_record/user_on_main_app.rb +7 -0
- data/test/rails_app/app/controllers/application_controller.rb +3 -0
- data/test/rails_app/app/controllers/application_with_fake_engine.rb +30 -0
- data/test/rails_app/app/controllers/custom/registrations_controller.rb +21 -0
- data/test/rails_app/app/controllers/users/omniauth_callbacks_controller.rb +1 -1
- data/test/rails_app/app/controllers/users_controller.rb +1 -1
- data/test/rails_app/app/mongoid/user_on_engine.rb +39 -0
- data/test/rails_app/app/mongoid/user_on_main_app.rb +39 -0
- data/test/rails_app/config/application.rb +1 -1
- data/test/rails_app/config/initializers/devise.rb +2 -0
- data/test/rails_app/config/routes.rb +17 -0
- data/test/rails_app/lib/shared_user.rb +1 -1
- data/test/rails_app/lib/shared_user_without_omniauth.rb +13 -0
- data/test/routes_test.rb +5 -3
- data/test/support/assertions.rb +2 -3
- data/test/support/integration.rb +2 -2
- data/test/test_helper.rb +2 -0
- data/test/test_helpers_test.rb +22 -32
- metadata +23 -2
@@ -38,7 +38,7 @@ class Devise::ConfirmationsController < DeviseController
|
|
38
38
|
|
39
39
|
# The path used after confirmation.
|
40
40
|
def after_confirmation_path_for(resource_name, resource)
|
41
|
-
if signed_in?
|
41
|
+
if signed_in?(resource_name)
|
42
42
|
signed_in_root_path(resource)
|
43
43
|
else
|
44
44
|
new_session_path(resource_name)
|
@@ -5,6 +5,10 @@ class Devise::RegistrationsController < DeviseController
|
|
5
5
|
# GET /resource/sign_up
|
6
6
|
def new
|
7
7
|
build_resource({})
|
8
|
+
@validatable = devise_mapping.validatable?
|
9
|
+
if @validatable
|
10
|
+
@minimum_password_length = resource_class.password_length.min
|
11
|
+
end
|
8
12
|
respond_with self.resource
|
9
13
|
end
|
10
14
|
|
@@ -12,8 +16,9 @@ class Devise::RegistrationsController < DeviseController
|
|
12
16
|
def create
|
13
17
|
build_resource(sign_up_params)
|
14
18
|
|
15
|
-
|
16
|
-
|
19
|
+
resource_saved = resource.save
|
20
|
+
yield resource if block_given?
|
21
|
+
if resource_saved
|
17
22
|
if resource.active_for_authentication?
|
18
23
|
set_flash_message :notice, :signed_up if is_flashing_format?
|
19
24
|
sign_up(resource_name, resource)
|
@@ -25,6 +30,10 @@ class Devise::RegistrationsController < DeviseController
|
|
25
30
|
end
|
26
31
|
else
|
27
32
|
clean_up_passwords resource
|
33
|
+
@validatable = devise_mapping.validatable?
|
34
|
+
if @validatable
|
35
|
+
@minimum_password_length = resource_class.password_length.min
|
36
|
+
end
|
28
37
|
respond_with resource
|
29
38
|
end
|
30
39
|
end
|
@@ -41,8 +50,9 @@ class Devise::RegistrationsController < DeviseController
|
|
41
50
|
self.resource = resource_class.to_adapter.get!(send(:"current_#{resource_name}").to_key)
|
42
51
|
prev_unconfirmed_email = resource.unconfirmed_email if resource.respond_to?(:unconfirmed_email)
|
43
52
|
|
44
|
-
|
45
|
-
|
53
|
+
resource_updated = update_resource(resource, account_update_params)
|
54
|
+
yield resource if block_given?
|
55
|
+
if resource_updated
|
46
56
|
if is_flashing_format?
|
47
57
|
flash_key = update_needs_confirmation?(resource, prev_unconfirmed_email) ?
|
48
58
|
:update_needs_confirmation : :updated
|
@@ -110,7 +120,10 @@ class Devise::RegistrationsController < DeviseController
|
|
110
120
|
# The path used after sign up for inactive accounts. You need to overwrite
|
111
121
|
# this method in your own RegistrationsController.
|
112
122
|
def after_inactive_sign_up_path_for(resource)
|
113
|
-
|
123
|
+
scope = Devise::Mapping.find_scope!(resource)
|
124
|
+
router_name = Devise.mappings[scope].router_name
|
125
|
+
context = router_name ? send(router_name) : self
|
126
|
+
context.respond_to?(:root_path) ? context.root_path : "/"
|
114
127
|
end
|
115
128
|
|
116
129
|
# The default url to be used after updating a resource. You need to overwrite
|
@@ -1,6 +1,7 @@
|
|
1
1
|
class Devise::SessionsController < DeviseController
|
2
2
|
prepend_before_filter :require_no_authentication, only: [ :new, :create ]
|
3
3
|
prepend_before_filter :allow_params_authentication!, only: :create
|
4
|
+
prepend_before_filter :verify_signed_out_user, only: :destroy
|
4
5
|
prepend_before_filter only: [ :create, :destroy ] { request.env["devise.skip_timeout"] = true }
|
5
6
|
|
6
7
|
# GET /resource/sign_in
|
@@ -21,17 +22,10 @@ class Devise::SessionsController < DeviseController
|
|
21
22
|
|
22
23
|
# DELETE /resource/sign_out
|
23
24
|
def destroy
|
24
|
-
redirect_path = after_sign_out_path_for(resource_name)
|
25
25
|
signed_out = (Devise.sign_out_all_scopes ? sign_out : sign_out(resource_name))
|
26
26
|
set_flash_message :notice, :signed_out if signed_out && is_flashing_format?
|
27
|
-
yield
|
28
|
-
|
29
|
-
# We actually need to hardcode this as Rails default responder doesn't
|
30
|
-
# support returning empty response on GET request
|
31
|
-
respond_to do |format|
|
32
|
-
format.all { head :no_content }
|
33
|
-
format.any(*navigational_formats) { redirect_to redirect_path }
|
34
|
-
end
|
27
|
+
yield if block_given?
|
28
|
+
respond_to_on_destroy
|
35
29
|
end
|
36
30
|
|
37
31
|
protected
|
@@ -50,4 +44,33 @@ class Devise::SessionsController < DeviseController
|
|
50
44
|
def auth_options
|
51
45
|
{ scope: resource_name, recall: "#{controller_path}#new" }
|
52
46
|
end
|
47
|
+
|
48
|
+
private
|
49
|
+
|
50
|
+
# Check if there is no signed in user before doing the sign out.
|
51
|
+
#
|
52
|
+
# If there is no signed in user, it will set the flash message and redirect
|
53
|
+
# to the after_sign_out path.
|
54
|
+
def verify_signed_out_user
|
55
|
+
if all_signed_out?
|
56
|
+
set_flash_message :notice, :already_signed_out if is_flashing_format?
|
57
|
+
|
58
|
+
respond_to_on_destroy
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
def all_signed_out?
|
63
|
+
users = Devise.mappings.keys.map { |s| warden.user(scope: s, run_callbacks: false) }
|
64
|
+
|
65
|
+
users.all?(&:blank?)
|
66
|
+
end
|
67
|
+
|
68
|
+
def respond_to_on_destroy
|
69
|
+
# We actually need to hardcode this as Rails default responder doesn't
|
70
|
+
# support returning empty response on GET request
|
71
|
+
respond_to do |format|
|
72
|
+
format.all { head :no_content }
|
73
|
+
format.any(*navigational_formats) { redirect_to after_sign_out_path_for(resource_name) }
|
74
|
+
end
|
75
|
+
end
|
53
76
|
end
|
@@ -6,8 +6,8 @@ class DeviseController < Devise.parent_controller.constantize
|
|
6
6
|
|
7
7
|
helpers = %w(resource scope_name resource_name signed_in_resource
|
8
8
|
resource_class resource_params devise_mapping)
|
9
|
-
hide_action
|
10
|
-
helper_method
|
9
|
+
hide_action(*helpers)
|
10
|
+
helper_method(*helpers)
|
11
11
|
|
12
12
|
prepend_before_filter :assert_is_devise_resource!
|
13
13
|
respond_to :html if mimes_for_respond_to.empty?
|
@@ -44,7 +44,7 @@ class DeviseController < Devise.parent_controller.constantize
|
|
44
44
|
# loaded before even having a request object.
|
45
45
|
def _prefixes #:nodoc:
|
46
46
|
@_prefixes ||= if self.class.scoped_views? && request && devise_mapping
|
47
|
-
|
47
|
+
["#{devise_mapping.scoped_path}/#{controller_name}"] + super
|
48
48
|
else
|
49
49
|
super
|
50
50
|
end
|
@@ -6,7 +6,7 @@
|
|
6
6
|
<div><%= f.label :email %><br />
|
7
7
|
<%= f.email_field :email, autofocus: true %></div>
|
8
8
|
|
9
|
-
<div><%= f.label :password %><br />
|
9
|
+
<div><%= f.label :password %> <% if @validatable %><i>(<%= @minimum_password_length %> characters minimum)</i><% end %><br />
|
10
10
|
<%= f.password_field :password, autocomplete: "off" %></div>
|
11
11
|
|
12
12
|
<div><%= f.label :password_confirmation %><br />
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<h2>
|
1
|
+
<h2>Log in</h2>
|
2
2
|
|
3
3
|
<%= form_for(resource, as: resource_name, url: session_path(resource_name)) do |f| %>
|
4
4
|
<div><%= f.label :email %><br />
|
@@ -11,7 +11,7 @@
|
|
11
11
|
<div><%= f.check_box :remember_me %> <%= f.label :remember_me %></div>
|
12
12
|
<% end -%>
|
13
13
|
|
14
|
-
<div><%= f.submit "
|
14
|
+
<div><%= f.submit "Log in" %></div>
|
15
15
|
<% end %>
|
16
16
|
|
17
17
|
<%= render "devise/shared/links" %>
|
data/config/locales/en.yml
CHANGED
@@ -3,26 +3,26 @@
|
|
3
3
|
en:
|
4
4
|
devise:
|
5
5
|
confirmations:
|
6
|
-
confirmed: "Your
|
7
|
-
send_instructions: "You will receive an email with instructions
|
8
|
-
send_paranoid_instructions: "If your email address exists in our database, you will receive an email with instructions
|
6
|
+
confirmed: "Your email address has been successfully confirmed."
|
7
|
+
send_instructions: "You will receive an email with instructions for how to confirm your email address in a few minutes."
|
8
|
+
send_paranoid_instructions: "If your email address exists in our database, you will receive an email with instructions for how to confirm your email address in a few minutes."
|
9
9
|
failure:
|
10
10
|
already_authenticated: "You are already signed in."
|
11
11
|
inactive: "Your account is not activated yet."
|
12
12
|
invalid: "Invalid email or password."
|
13
13
|
locked: "Your account is locked."
|
14
|
-
last_attempt: "You have one more attempt before your account
|
15
|
-
not_found_in_database: "Invalid email or password."
|
14
|
+
last_attempt: "You have one more attempt before your account is locked."
|
15
|
+
not_found_in_database: "Invalid email address or password."
|
16
16
|
timeout: "Your session expired. Please sign in again to continue."
|
17
17
|
unauthenticated: "You need to sign in or sign up before continuing."
|
18
|
-
unconfirmed: "You have to confirm your
|
18
|
+
unconfirmed: "You have to confirm your email address before continuing."
|
19
19
|
mailer:
|
20
20
|
confirmation_instructions:
|
21
21
|
subject: "Confirmation instructions"
|
22
22
|
reset_password_instructions:
|
23
23
|
subject: "Reset password instructions"
|
24
24
|
unlock_instructions:
|
25
|
-
subject: "Unlock
|
25
|
+
subject: "Unlock instructions"
|
26
26
|
omniauth_callbacks:
|
27
27
|
failure: "Could not authenticate you from %{kind} because \"%{reason}\"."
|
28
28
|
success: "Successfully authenticated from %{kind} account."
|
@@ -30,22 +30,23 @@ en:
|
|
30
30
|
no_token: "You can't access this page without coming from a password reset email. If you do come from a password reset email, please make sure you used the full URL provided."
|
31
31
|
send_instructions: "You will receive an email with instructions on how to reset your password in a few minutes."
|
32
32
|
send_paranoid_instructions: "If your email address exists in our database, you will receive a password recovery link at your email address in a few minutes."
|
33
|
-
updated: "Your password
|
34
|
-
updated_not_active: "Your password
|
33
|
+
updated: "Your password has been changed successfully. You are now signed in."
|
34
|
+
updated_not_active: "Your password has been changed successfully."
|
35
35
|
registrations:
|
36
|
-
destroyed: "Bye! Your account
|
36
|
+
destroyed: "Bye! Your account has been successfully cancelled. We hope to see you again soon."
|
37
37
|
signed_up: "Welcome! You have signed up successfully."
|
38
38
|
signed_up_but_inactive: "You have signed up successfully. However, we could not sign you in because your account is not yet activated."
|
39
39
|
signed_up_but_locked: "You have signed up successfully. However, we could not sign you in because your account is locked."
|
40
|
-
signed_up_but_unconfirmed: "A message with a confirmation link has been sent to your email address. Please
|
41
|
-
update_needs_confirmation: "You updated your account successfully, but we need to verify your new email address. Please check your email and
|
42
|
-
updated: "
|
40
|
+
signed_up_but_unconfirmed: "A message with a confirmation link has been sent to your email address. Please follow the link to activate your account."
|
41
|
+
update_needs_confirmation: "You updated your account successfully, but we need to verify your new email address. Please check your email and follow the confirm link to confirm your new email address."
|
42
|
+
updated: "Your account has been updated successfully."
|
43
43
|
sessions:
|
44
44
|
signed_in: "Signed in successfully."
|
45
45
|
signed_out: "Signed out successfully."
|
46
|
+
already_signed_out: "Signed out successfully."
|
46
47
|
unlocks:
|
47
|
-
send_instructions: "You will receive an email with instructions
|
48
|
-
send_paranoid_instructions: "If your account exists, you will receive an email with instructions
|
48
|
+
send_instructions: "You will receive an email with instructions for how to unlock your account in a few minutes."
|
49
|
+
send_paranoid_instructions: "If your account exists, you will receive an email with instructions for how to unlock it in a few minutes."
|
49
50
|
unlocked: "Your account has been unlocked successfully. Please sign in to continue."
|
50
51
|
errors:
|
51
52
|
messages:
|
@@ -3,15 +3,15 @@ source "https://rubygems.org"
|
|
3
3
|
gemspec path: '..'
|
4
4
|
|
5
5
|
gem "rails", github: 'rails/rails', branch: '3-2-stable'
|
6
|
-
gem "omniauth", "~> 1.
|
7
|
-
gem "omniauth-oauth2", "~> 1.
|
6
|
+
gem "omniauth", "~> 1.2.0"
|
7
|
+
gem "omniauth-oauth2", "~> 1.1.0"
|
8
8
|
gem "rdoc"
|
9
9
|
|
10
10
|
group :test do
|
11
11
|
gem "omniauth-facebook"
|
12
12
|
gem "omniauth-openid", "~> 1.0.1"
|
13
13
|
gem "webrat", "0.7.3", require: false
|
14
|
-
gem "mocha", "~> 1.
|
14
|
+
gem "mocha", "~> 1.1", require: false
|
15
15
|
end
|
16
16
|
|
17
17
|
platforms :jruby do
|
@@ -0,0 +1,166 @@
|
|
1
|
+
GIT
|
2
|
+
remote: git://github.com/rails/rails.git
|
3
|
+
revision: 11fd052aa815ae0255ea5b2463e88138fb3fec61
|
4
|
+
branch: 3-2-stable
|
5
|
+
specs:
|
6
|
+
actionmailer (3.2.19)
|
7
|
+
actionpack (= 3.2.19)
|
8
|
+
mail (~> 2.5.4)
|
9
|
+
actionpack (3.2.19)
|
10
|
+
activemodel (= 3.2.19)
|
11
|
+
activesupport (= 3.2.19)
|
12
|
+
builder (~> 3.0.0)
|
13
|
+
erubis (~> 2.7.0)
|
14
|
+
journey (~> 1.0.4)
|
15
|
+
rack (~> 1.4.5)
|
16
|
+
rack-cache (~> 1.2)
|
17
|
+
rack-test (~> 0.6.1)
|
18
|
+
sprockets (~> 2.2.1)
|
19
|
+
activemodel (3.2.19)
|
20
|
+
activesupport (= 3.2.19)
|
21
|
+
builder (~> 3.0.0)
|
22
|
+
activerecord (3.2.19)
|
23
|
+
activemodel (= 3.2.19)
|
24
|
+
activesupport (= 3.2.19)
|
25
|
+
arel (~> 3.0.2)
|
26
|
+
tzinfo (~> 0.3.29)
|
27
|
+
activeresource (3.2.19)
|
28
|
+
activemodel (= 3.2.19)
|
29
|
+
activesupport (= 3.2.19)
|
30
|
+
activesupport (3.2.19)
|
31
|
+
i18n (~> 0.6, >= 0.6.4)
|
32
|
+
multi_json (~> 1.0)
|
33
|
+
rails (3.2.19)
|
34
|
+
actionmailer (= 3.2.19)
|
35
|
+
actionpack (= 3.2.19)
|
36
|
+
activerecord (= 3.2.19)
|
37
|
+
activeresource (= 3.2.19)
|
38
|
+
activesupport (= 3.2.19)
|
39
|
+
bundler (~> 1.0)
|
40
|
+
railties (= 3.2.19)
|
41
|
+
railties (3.2.19)
|
42
|
+
actionpack (= 3.2.19)
|
43
|
+
activesupport (= 3.2.19)
|
44
|
+
rack-ssl (~> 1.3.2)
|
45
|
+
rake (>= 0.8.7)
|
46
|
+
rdoc (~> 3.4)
|
47
|
+
thor (>= 0.14.6, < 2.0)
|
48
|
+
|
49
|
+
PATH
|
50
|
+
remote: ..
|
51
|
+
specs:
|
52
|
+
devise (3.3.0)
|
53
|
+
bcrypt (~> 3.0)
|
54
|
+
orm_adapter (~> 0.1)
|
55
|
+
railties (>= 3.2.6, < 5)
|
56
|
+
thread_safe (~> 0.1)
|
57
|
+
warden (~> 1.2.3)
|
58
|
+
|
59
|
+
GEM
|
60
|
+
remote: https://rubygems.org/
|
61
|
+
specs:
|
62
|
+
arel (3.0.3)
|
63
|
+
bcrypt (3.1.7)
|
64
|
+
builder (3.0.4)
|
65
|
+
erubis (2.7.0)
|
66
|
+
faraday (0.9.0)
|
67
|
+
multipart-post (>= 1.2, < 3)
|
68
|
+
hashie (3.2.0)
|
69
|
+
hike (1.2.3)
|
70
|
+
i18n (0.6.11)
|
71
|
+
journey (1.0.4)
|
72
|
+
json (1.8.1)
|
73
|
+
jwt (1.0.0)
|
74
|
+
mail (2.5.4)
|
75
|
+
mime-types (~> 1.16)
|
76
|
+
treetop (~> 1.4.8)
|
77
|
+
metaclass (0.0.4)
|
78
|
+
mime-types (1.25.1)
|
79
|
+
mini_portile (0.6.0)
|
80
|
+
mocha (1.1.0)
|
81
|
+
metaclass (~> 0.0.1)
|
82
|
+
mongoid (3.1.6)
|
83
|
+
activemodel (~> 3.2)
|
84
|
+
moped (~> 1.4)
|
85
|
+
origin (~> 1.0)
|
86
|
+
tzinfo (~> 0.3.29)
|
87
|
+
moped (1.5.2)
|
88
|
+
multi_json (1.10.1)
|
89
|
+
multi_xml (0.5.5)
|
90
|
+
multipart-post (2.0.0)
|
91
|
+
nokogiri (1.6.3.1)
|
92
|
+
mini_portile (= 0.6.0)
|
93
|
+
oauth2 (0.9.4)
|
94
|
+
faraday (>= 0.8, < 0.10)
|
95
|
+
jwt (~> 1.0)
|
96
|
+
multi_json (~> 1.3)
|
97
|
+
multi_xml (~> 0.5)
|
98
|
+
rack (~> 1.2)
|
99
|
+
omniauth (1.2.2)
|
100
|
+
hashie (>= 1.2, < 4)
|
101
|
+
rack (~> 1.0)
|
102
|
+
omniauth-facebook (1.6.0)
|
103
|
+
omniauth-oauth2 (~> 1.1)
|
104
|
+
omniauth-oauth2 (1.1.2)
|
105
|
+
faraday (>= 0.8, < 0.10)
|
106
|
+
multi_json (~> 1.3)
|
107
|
+
oauth2 (~> 0.9.3)
|
108
|
+
omniauth (~> 1.2)
|
109
|
+
omniauth-openid (1.0.1)
|
110
|
+
omniauth (~> 1.0)
|
111
|
+
rack-openid (~> 1.3.1)
|
112
|
+
origin (1.1.0)
|
113
|
+
orm_adapter (0.5.0)
|
114
|
+
polyglot (0.3.5)
|
115
|
+
rack (1.4.5)
|
116
|
+
rack-cache (1.2)
|
117
|
+
rack (>= 0.4)
|
118
|
+
rack-openid (1.3.1)
|
119
|
+
rack (>= 1.1.0)
|
120
|
+
ruby-openid (>= 2.1.8)
|
121
|
+
rack-ssl (1.3.4)
|
122
|
+
rack
|
123
|
+
rack-test (0.6.2)
|
124
|
+
rack (>= 1.0)
|
125
|
+
rake (10.3.2)
|
126
|
+
rdoc (3.12.2)
|
127
|
+
json (~> 1.4)
|
128
|
+
ruby-openid (2.5.0)
|
129
|
+
sprockets (2.2.2)
|
130
|
+
hike (~> 1.2)
|
131
|
+
multi_json (~> 1.0)
|
132
|
+
rack (~> 1.0)
|
133
|
+
tilt (~> 1.1, != 1.3.0)
|
134
|
+
sqlite3 (1.3.9)
|
135
|
+
thor (0.19.1)
|
136
|
+
thread_safe (0.3.4)
|
137
|
+
tilt (1.4.1)
|
138
|
+
treetop (1.4.15)
|
139
|
+
polyglot
|
140
|
+
polyglot (>= 0.3.1)
|
141
|
+
tzinfo (0.3.40)
|
142
|
+
warden (1.2.3)
|
143
|
+
rack (>= 1.0)
|
144
|
+
webrat (0.7.3)
|
145
|
+
nokogiri (>= 1.2.0)
|
146
|
+
rack (>= 1.0)
|
147
|
+
rack-test (>= 0.5.3)
|
148
|
+
|
149
|
+
PLATFORMS
|
150
|
+
ruby
|
151
|
+
|
152
|
+
DEPENDENCIES
|
153
|
+
activerecord-jdbc-adapter
|
154
|
+
activerecord-jdbcsqlite3-adapter
|
155
|
+
devise!
|
156
|
+
jruby-openssl
|
157
|
+
mocha (~> 1.1)
|
158
|
+
mongoid (~> 3.0)
|
159
|
+
omniauth (~> 1.2.0)
|
160
|
+
omniauth-facebook
|
161
|
+
omniauth-oauth2 (~> 1.1.0)
|
162
|
+
omniauth-openid (~> 1.0.1)
|
163
|
+
rails!
|
164
|
+
rdoc
|
165
|
+
sqlite3
|
166
|
+
webrat (= 0.7.3)
|
@@ -3,15 +3,15 @@ source "https://rubygems.org"
|
|
3
3
|
gemspec path: '..'
|
4
4
|
|
5
5
|
gem "rails", github: 'rails/rails', branch: '4-0-stable'
|
6
|
-
gem "omniauth", "~> 1.
|
7
|
-
gem "omniauth-oauth2", "~> 1.
|
6
|
+
gem "omniauth", "~> 1.2.0"
|
7
|
+
gem "omniauth-oauth2", "~> 1.1.0"
|
8
8
|
gem "rdoc"
|
9
9
|
|
10
10
|
group :test do
|
11
11
|
gem "omniauth-facebook"
|
12
12
|
gem "omniauth-openid", "~> 1.0.1"
|
13
13
|
gem "webrat", "0.7.3", require: false
|
14
|
-
gem "mocha", "~> 1.
|
14
|
+
gem "mocha", "~> 1.1", require: false
|
15
15
|
end
|
16
16
|
|
17
17
|
platforms :jruby do
|
@@ -25,5 +25,5 @@ platforms :ruby do
|
|
25
25
|
end
|
26
26
|
|
27
27
|
group :mongoid do
|
28
|
-
gem "mongoid",
|
28
|
+
gem "mongoid", "~> 4.0.0"
|
29
29
|
end
|