sorcery 0.16.1 → 0.16.2

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: 0f0614713fb5b564c7273b8f08b71547414613303b574156932f415dee83286e
4
- data.tar.gz: aa2b3081950f5c5f4615dbb21f535fa90ade9a600b29a9d41e3449bdd8551c58
3
+ metadata.gz: c616c0cfea97510b53d2383bb84dfa5fb7026681b8a0a55d762f60b2ad71505b
4
+ data.tar.gz: 07dc2d7787635cc92fea05896318fcf4602e59355ca3c092f448e44763b030d5
5
5
  SHA512:
6
- metadata.gz: 781c5dd4d01ab49353464f4e8eb1f1990351f75e1acf307ef9fb83892e4304fd5a5876afa4b8091e4f4edad6661e1f6a4b6b226eb8cb1b290d0712e30826414b
7
- data.tar.gz: 347e36c6b09f16eaa1028e8ae02eca140763d07c9981a74b867997994e32a968dcde6016b4b8aab61738ee5eaf463989775ae1c1d257bc561e20ec30ac7e4068
6
+ metadata.gz: 45fe6636bfc0785eeaaf276a0d178eb75259c2daf9f8b4f19b26f246a80cd5297c2a931414b98d03df5bd9b4b71d0dad3bdd1a4ed44a2e1aa099988466bb7b43
7
+ data.tar.gz: b9695085f19f77a106c6e5e19eb6ead86e4068efc5ca0adb1909563d42397ee6fbfa6d061bd828eebbf558bd93a579b21a275f7a58a62c942c40f0ad04a2e214
data/CHANGELOG.md CHANGED
@@ -1,6 +1,14 @@
1
1
  # Changelog
2
2
  ## HEAD
3
3
 
4
+ ## 0.16.2
5
+
6
+ * Inline core migration index definition [#281](https://github.com/Sorcery/sorcery/pull/281)
7
+ * Add missing remember_me attributes to config [#180](https://github.com/Sorcery/sorcery/pull/180)
8
+ * Fix MongoID adapter breaking on save [#284](https://github.com/Sorcery/sorcery/pull/284)
9
+ * Don't pass token to Slack in query params. Prevents 'invalid_auth' error [#287](https://github.com/Sorcery/sorcery/pull/287)
10
+ * Fix valid_password? not using configured values when called alone [#293](https://github.com/Sorcery/sorcery/pull/293)
11
+
4
12
  ## 0.16.1
5
13
 
6
14
  * Fix default table name being incorrect in migration generator [#274](https://github.com/Sorcery/sorcery/pull/274)
data/README.md CHANGED
@@ -2,9 +2,7 @@
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/sorcery.svg)](https://rubygems.org/gems/sorcery)
4
4
  [![Gem Downloads](https://img.shields.io/gem/dt/sorcery.svg)](https://rubygems.org/gems/sorcery)
5
- [![Build Status](https://travis-ci.org/Sorcery/sorcery.svg?branch=master)](https://travis-ci.org/Sorcery/sorcery)
6
- [![Code Climate](https://codeclimate.com/github/Sorcery/sorcery.svg)](https://codeclimate.com/github/Sorcery/sorcery)
7
- [![Join the chat at https://gitter.im/Sorcery/sorcery](https://badges.gitter.im/join_chat.svg)](https://gitter.im/Sorcery/sorcery?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
5
+ [![Build Status](https://github.com/Sorcery/sorcery/actions/workflows/ruby.yml/badge.svg?branch=master)](https://github.com/Sorcery/sorcery/actions/workflows/ruby.yml)
8
6
 
9
7
  Magical Authentication for Rails. Supports ActiveRecord, DataMapper, Mongoid and MongoMapper.
10
8
 
@@ -306,6 +306,16 @@ Rails.application.config.sorcery.configure do |config|
306
306
  # user.subclasses_inherit_config =
307
307
 
308
308
  # -- remember_me --
309
+ # change default remember_me_token attribute.
310
+ # Default: `:remember_me_token`
311
+ #
312
+ # user.remember_me_token_attribute_name =
313
+
314
+ # change default remember_me_token_expires_at attribute.
315
+ # Default: `:remember_me_token_expires_at`
316
+ #
317
+ # user.remember_me_token_expires_at_attribute_name =
318
+
309
319
  # How long in seconds the session length will be
310
320
  # Default: `60 * 60 * 24 * 7`
311
321
  #
@@ -1,13 +1,11 @@
1
1
  class SorceryCore < <%= migration_class_name %>
2
2
  def change
3
3
  create_table :<%= tableized_model_class %> do |t|
4
- t.string :email, null: false
4
+ t.string :email, null: false, index: { unique: true }
5
5
  t.string :crypted_password
6
6
  t.string :salt
7
7
 
8
8
  t.timestamps null: false
9
9
  end
10
-
11
- add_index :<%= tableized_model_class %>, :email, unique: true
12
10
  end
13
11
  end
@@ -32,7 +32,7 @@ module Sorcery
32
32
  end
33
33
 
34
34
  def define_callback(time, event, method_name, options = {})
35
- @klass.send callback_name(time, event, options), method_name, options.slice(:if)
35
+ @klass.send callback_name(time, event, options), method_name, **options.slice(:if)
36
36
  end
37
37
 
38
38
  def callback_name(time, event, options)
data/lib/sorcery/model.rb CHANGED
@@ -131,6 +131,14 @@ module Sorcery
131
131
  @sorcery_config.encryption_provider.encrypt(*tokens)
132
132
  end
133
133
 
134
+ # FIXME: This method of passing config to the hashing provider is
135
+ # questionable, and has been refactored in Sorcery v1.
136
+ def set_encryption_attributes
137
+ @sorcery_config.encryption_provider.stretches = @sorcery_config.stretches if @sorcery_config.encryption_provider.respond_to?(:stretches) && @sorcery_config.stretches
138
+ @sorcery_config.encryption_provider.join_token = @sorcery_config.salt_join_token if @sorcery_config.encryption_provider.respond_to?(:join_token) && @sorcery_config.salt_join_token
139
+ @sorcery_config.encryption_provider.pepper = @sorcery_config.pepper if @sorcery_config.encryption_provider.respond_to?(:pepper) && @sorcery_config.pepper
140
+ end
141
+
134
142
  protected
135
143
 
136
144
  def authentication_response(options = {})
@@ -139,12 +147,6 @@ module Sorcery
139
147
  options[:return_value]
140
148
  end
141
149
 
142
- def set_encryption_attributes
143
- @sorcery_config.encryption_provider.stretches = @sorcery_config.stretches if @sorcery_config.encryption_provider.respond_to?(:stretches) && @sorcery_config.stretches
144
- @sorcery_config.encryption_provider.join_token = @sorcery_config.salt_join_token if @sorcery_config.encryption_provider.respond_to?(:join_token) && @sorcery_config.salt_join_token
145
- @sorcery_config.encryption_provider.pepper = @sorcery_config.pepper if @sorcery_config.encryption_provider.respond_to?(:pepper) && @sorcery_config.pepper
146
- end
147
-
148
150
  def add_config_inheritance
149
151
  class_eval do
150
152
  def self.inherited(subclass)
@@ -177,6 +179,9 @@ module Sorcery
177
179
  crypted = send(sorcery_config.crypted_password_attribute_name)
178
180
  return crypted == pass if sorcery_config.encryption_provider.nil?
179
181
 
182
+ # Ensure encryption provider is using configured values
183
+ self.class.set_encryption_attributes
184
+
180
185
  salt = send(sorcery_config.salt_attribute_name) unless sorcery_config.salt_attribute_name.nil?
181
186
 
182
187
  sorcery_config.encryption_provider.matches?(crypted, pass, salt)
@@ -18,7 +18,7 @@ module Sorcery
18
18
  end
19
19
 
20
20
  def get_user_hash(access_token)
21
- response = access_token.get(user_info_path, params: { token: access_token.token })
21
+ response = access_token.get(user_info_path)
22
22
  auth_hash(access_token).tap do |h|
23
23
  h[:user_info] = JSON.parse(response.body)
24
24
  h[:user_info]['email'] = h[:user_info]['user']['email']
@@ -1,3 +1,3 @@
1
1
  module Sorcery
2
- VERSION = '0.16.1'.freeze
2
+ VERSION = '0.16.2'.freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sorcery
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.1
4
+ version: 0.16.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Noam Ben Ari
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2021-04-30 00:00:00.000000000 Z
15
+ date: 2021-11-28 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: bcrypt
@@ -386,7 +386,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
386
386
  - !ruby/object:Gem::Version
387
387
  version: '0'
388
388
  requirements: []
389
- rubygems_version: 3.1.4
389
+ rubygems_version: 3.2.3
390
390
  signing_key:
391
391
  specification_version: 4
392
392
  summary: Magical authentication for Rails applications