session_rememberable 0.2.1 → 0.3.1

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: c8d42747d3cd1711cbad85859b2327fa359f0eb0dc06b4f559939c9059914309
4
- data.tar.gz: aa2136df09b6bcc560a20143ce9ba130dd9d89c3dd1eba934e33f338e71920d4
3
+ metadata.gz: 2bab239455bc7b525f614fdbfea7cc51cb7916ee910ab2b61702ae77c12b0dea
4
+ data.tar.gz: 4fc69684d8405580620990fd2d8b6836ba4113a8259b79639110f3ad20e33cbd
5
5
  SHA512:
6
- metadata.gz: fdea891b6729f6621bdf3d5595af3ac19e2928750cd4a5aebc8671532b1983e4193c05c085b83b6f6fbf4e471fd827a555629c43f42c997060fcf6cd70f3ccdc
7
- data.tar.gz: 8ee6000ca992b1f049b26208f26561d254839a3abfad435e954d80f9956db174d5d509aee6258981cc59759788594870d10d39f6d8277e88d39b3be7463122f1
6
+ metadata.gz: bde2bd889e9ba131bd3ebbd75a62c5df7ae17c8d454592256159d17ee9e806f39ebd7a5ed082c234044521e24f0689167466be8ff7220db175e1a677345df696
7
+ data.tar.gz: 5a16083e0ab1ca4b1acf11452a373235c534eb25e052a1ca97ec08ec3c50acc06ba1eb51dea9118b55d7137a59ae15b11b204b3b484bc8421170c1d4e7d76702
data/.gitignore CHANGED
@@ -6,3 +6,16 @@
6
6
  /pkg/
7
7
  /spec/reports/
8
8
  /tmp/
9
+ *.gem
10
+ coverage/*
11
+ Gemfile.lock
12
+ *~
13
+ .bundle
14
+ .rvmrc
15
+ log/*
16
+ measurement/*
17
+ pkg/*
18
+ .DS_Store
19
+ .env
20
+ spec/dummy/tmp/*
21
+ spec/dummy/log/*.log
data/.rspec ADDED
@@ -0,0 +1,4 @@
1
+ --color
2
+ --require spec_helper
3
+ --order rand
4
+ --format doc
data/Gemfile CHANGED
@@ -3,4 +3,4 @@ source "https://rubygems.org"
3
3
  # Specify your gem's dependencies in session_rememberable.gemspec
4
4
  gemspec
5
5
 
6
- gem "rake", "~> 12.0"
6
+ gem "rake", "~> 12.0"
data/Gemfile.lock CHANGED
@@ -1,33 +1,186 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- session_rememberable (0.2.1)
4
+ session_rememberable (0.3.1)
5
+ actionpack
5
6
  activesupport
6
7
 
7
8
  GEM
8
9
  remote: https://rubygems.org/
9
10
  specs:
11
+ actioncable (6.1.3.2)
12
+ actionpack (= 6.1.3.2)
13
+ activesupport (= 6.1.3.2)
14
+ nio4r (~> 2.0)
15
+ websocket-driver (>= 0.6.1)
16
+ actionmailbox (6.1.3.2)
17
+ actionpack (= 6.1.3.2)
18
+ activejob (= 6.1.3.2)
19
+ activerecord (= 6.1.3.2)
20
+ activestorage (= 6.1.3.2)
21
+ activesupport (= 6.1.3.2)
22
+ mail (>= 2.7.1)
23
+ actionmailer (6.1.3.2)
24
+ actionpack (= 6.1.3.2)
25
+ actionview (= 6.1.3.2)
26
+ activejob (= 6.1.3.2)
27
+ activesupport (= 6.1.3.2)
28
+ mail (~> 2.5, >= 2.5.4)
29
+ rails-dom-testing (~> 2.0)
30
+ actionpack (6.1.3.2)
31
+ actionview (= 6.1.3.2)
32
+ activesupport (= 6.1.3.2)
33
+ rack (~> 2.0, >= 2.0.9)
34
+ rack-test (>= 0.6.3)
35
+ rails-dom-testing (~> 2.0)
36
+ rails-html-sanitizer (~> 1.0, >= 1.2.0)
37
+ actiontext (6.1.3.2)
38
+ actionpack (= 6.1.3.2)
39
+ activerecord (= 6.1.3.2)
40
+ activestorage (= 6.1.3.2)
41
+ activesupport (= 6.1.3.2)
42
+ nokogiri (>= 1.8.5)
43
+ actionview (6.1.3.2)
44
+ activesupport (= 6.1.3.2)
45
+ builder (~> 3.1)
46
+ erubi (~> 1.4)
47
+ rails-dom-testing (~> 2.0)
48
+ rails-html-sanitizer (~> 1.1, >= 1.2.0)
49
+ activejob (6.1.3.2)
50
+ activesupport (= 6.1.3.2)
51
+ globalid (>= 0.3.6)
52
+ activemodel (6.1.3.2)
53
+ activesupport (= 6.1.3.2)
54
+ activerecord (6.1.3.2)
55
+ activemodel (= 6.1.3.2)
56
+ activesupport (= 6.1.3.2)
57
+ activestorage (6.1.3.2)
58
+ actionpack (= 6.1.3.2)
59
+ activejob (= 6.1.3.2)
60
+ activerecord (= 6.1.3.2)
61
+ activesupport (= 6.1.3.2)
62
+ marcel (~> 1.0.0)
63
+ mini_mime (~> 1.0.2)
10
64
  activesupport (6.1.3.2)
11
65
  concurrent-ruby (~> 1.0, >= 1.0.2)
12
66
  i18n (>= 1.6, < 2)
13
67
  minitest (>= 5.1)
14
68
  tzinfo (~> 2.0)
15
69
  zeitwerk (~> 2.3)
70
+ builder (3.2.4)
71
+ codecov (0.6.0)
72
+ simplecov (>= 0.15, < 0.22)
16
73
  concurrent-ruby (1.1.8)
74
+ crass (1.0.6)
75
+ diff-lcs (1.5.0)
76
+ docile (1.4.0)
77
+ dotenv (2.7.6)
78
+ erubi (1.10.0)
79
+ globalid (1.0.0)
80
+ activesupport (>= 5.0)
17
81
  i18n (1.8.10)
18
82
  concurrent-ruby (~> 1.0)
83
+ loofah (2.13.0)
84
+ crass (~> 1.0.2)
85
+ nokogiri (>= 1.5.9)
86
+ mail (2.7.1)
87
+ mini_mime (>= 0.1.1)
88
+ marcel (1.0.2)
89
+ method_source (1.0.0)
90
+ mini_mime (1.0.3)
91
+ mini_portile2 (2.6.1)
19
92
  minitest (5.14.4)
93
+ nio4r (2.5.8)
94
+ nokogiri (1.12.5)
95
+ mini_portile2 (~> 2.6.1)
96
+ racc (~> 1.4)
97
+ racc (1.6.0)
98
+ rack (2.2.3)
99
+ rack-test (1.1.0)
100
+ rack (>= 1.0, < 3)
101
+ rails (6.1.3.2)
102
+ actioncable (= 6.1.3.2)
103
+ actionmailbox (= 6.1.3.2)
104
+ actionmailer (= 6.1.3.2)
105
+ actionpack (= 6.1.3.2)
106
+ actiontext (= 6.1.3.2)
107
+ actionview (= 6.1.3.2)
108
+ activejob (= 6.1.3.2)
109
+ activemodel (= 6.1.3.2)
110
+ activerecord (= 6.1.3.2)
111
+ activestorage (= 6.1.3.2)
112
+ activesupport (= 6.1.3.2)
113
+ bundler (>= 1.15.0)
114
+ railties (= 6.1.3.2)
115
+ sprockets-rails (>= 2.0.0)
116
+ rails-dom-testing (2.0.3)
117
+ activesupport (>= 4.2.0)
118
+ nokogiri (>= 1.6)
119
+ rails-html-sanitizer (1.4.2)
120
+ loofah (~> 2.3)
121
+ railties (6.1.3.2)
122
+ actionpack (= 6.1.3.2)
123
+ activesupport (= 6.1.3.2)
124
+ method_source
125
+ rake (>= 0.8.7)
126
+ thor (~> 1.0)
20
127
  rake (12.3.3)
128
+ rspec (3.10.0)
129
+ rspec-core (~> 3.10.0)
130
+ rspec-expectations (~> 3.10.0)
131
+ rspec-mocks (~> 3.10.0)
132
+ rspec-core (3.10.1)
133
+ rspec-support (~> 3.10.0)
134
+ rspec-expectations (3.10.1)
135
+ diff-lcs (>= 1.2.0, < 2.0)
136
+ rspec-support (~> 3.10.0)
137
+ rspec-mocks (3.10.2)
138
+ diff-lcs (>= 1.2.0, < 2.0)
139
+ rspec-support (~> 3.10.0)
140
+ rspec-rails (5.0.2)
141
+ actionpack (>= 5.2)
142
+ activesupport (>= 5.2)
143
+ railties (>= 5.2)
144
+ rspec-core (~> 3.10)
145
+ rspec-expectations (~> 3.10)
146
+ rspec-mocks (~> 3.10)
147
+ rspec-support (~> 3.10)
148
+ rspec-support (3.10.3)
149
+ simplecov (0.21.2)
150
+ docile (~> 1.1)
151
+ simplecov-html (~> 0.11)
152
+ simplecov_json_formatter (~> 0.1)
153
+ simplecov-html (0.12.3)
154
+ simplecov_json_formatter (0.1.3)
155
+ sprockets (4.0.2)
156
+ concurrent-ruby (~> 1.0)
157
+ rack (> 1, < 3)
158
+ sprockets-rails (3.4.2)
159
+ actionpack (>= 5.2)
160
+ activesupport (>= 5.2)
161
+ sprockets (>= 3.0.0)
162
+ sqlite3 (1.4.2)
163
+ thor (1.1.0)
21
164
  tzinfo (2.0.4)
22
165
  concurrent-ruby (~> 1.0)
166
+ websocket-driver (0.7.5)
167
+ websocket-extensions (>= 0.1.0)
168
+ websocket-extensions (0.1.5)
23
169
  zeitwerk (2.4.2)
24
170
 
25
171
  PLATFORMS
26
172
  ruby
27
173
 
28
174
  DEPENDENCIES
175
+ codecov
176
+ dotenv
177
+ rails
29
178
  rake (~> 12.0)
179
+ rspec
180
+ rspec-rails
30
181
  session_rememberable!
182
+ simplecov
183
+ sqlite3
31
184
 
32
185
  BUNDLED WITH
33
- 2.1.4
186
+ 2.2.30
data/README.md CHANGED
@@ -1,8 +1,6 @@
1
1
  # SessionRememberable
2
2
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/session_rememberable`. To experiment with that code, run `bin/console` for an interactive prompt.
4
-
5
- TODO: Delete this and the text above, and describe your gem
3
+ Quick gem for remembering and forgetting data in a session.
6
4
 
7
5
  ## Installation
8
6
 
@@ -22,15 +20,57 @@ Or install it yourself as:
22
20
 
23
21
  ## Usage
24
22
 
25
- TODO: Write usage instructions here
23
+ Incluce SessionRememberable concern in your application controller and define some keys to remember.
26
24
 
27
- ## Development
25
+ ```ruby
26
+ class ApplicationController < ActionController::Base
27
+ include SessionRememberable
28
28
 
29
- After checking out the repo, run `bin/setup` to install dependencies. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
29
+ remember :cart
30
+ remember :customer, class_name: 'User'
31
+ remember :visits, static_data: true
32
+ end
33
+ ```
30
34
 
31
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
35
+ In your controllers
32
36
 
33
- ## Contributing
37
+ ```ruby
38
+ class CustomersController < ApplicationController
39
+
40
+ def create
41
+ customer = User.new(permitted_params)
42
+
43
+ if customer.save
44
+ remember_customer customer
45
+ redirect_to customer
46
+ else
47
+ render :new
48
+ end
49
+ end
50
+
51
+ def destroy
52
+ customer = User.find(params[:id])
53
+
54
+ if customer.destroy
55
+ forget_customer
56
+ redirect_to root_path
57
+ else
58
+ render :edit
59
+ end
60
+ end
61
+
62
+ private
63
+
64
+ def permitted_params
65
+ params.require(:customer).permit(:name, :email)
66
+ end
67
+ end
68
+ ```
34
69
 
35
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/session_rememberable.
70
+ In your views (.html.haml)
36
71
 
72
+ ```ruby
73
+ %h1
74
+ Welcome
75
+ = current_customer.name
76
+ ```
data/Rakefile CHANGED
@@ -1,2 +1,11 @@
1
1
  require "bundler/gem_tasks"
2
- task :default => :spec
2
+ require 'rake'
3
+ begin
4
+ require 'bundler/setup'
5
+ Bundler::GemHelper.install_tasks
6
+ rescue LoadError
7
+ puts 'although not required, bundler is recommended for running the tests'
8
+ end
9
+ task default: :spec
10
+ require 'rspec/core/rake_task'
11
+ RSpec::Core::RakeTask.new(:spec)
@@ -0,0 +1,31 @@
1
+ module SessionRememberable
2
+ module ClassMethods
3
+ def remember(key, class_name: nil, static_data: false)
4
+ define_method(:"current_#{key}") do
5
+ instance_var = instance_variable_get("@current_#{key}")
6
+ return instance_var if instance_var
7
+
8
+ if static_data
9
+ instance_variable_set "@current_#{key}", session["current_#{key}"]
10
+ else
11
+ class_name ||= key.to_s.titleize
12
+ instance_variable_set "@current_#{key}", class_name.constantize.find_by(id: session["current_#{key}"])
13
+ end
14
+ end
15
+ helper_method :"current_#{key}"
16
+ end
17
+ end
18
+
19
+ def remember(object, name=nil)
20
+ key = "current_#{name || object.class}".downcase
21
+ data = object.respond_to?(:id) ? object.id : object.to_s
22
+ session[key] = data
23
+ instance_variable_set "@#{key}", object
24
+ end
25
+
26
+ def forget(object, name=nil)
27
+ key = "current_#{name || object.class}".downcase
28
+ session[key] = nil
29
+ instance_variable_set "@#{key}", nil
30
+ end
31
+ end
@@ -0,0 +1,121 @@
1
+ module SessionRememberable
2
+ # This cookie-based session store is the Rails default. It is
3
+ # dramatically faster than the alternatives.
4
+ #
5
+ # Sessions typically contain at most a user_id and flash message; both fit
6
+ # within the 4096 bytes cookie size limit. A CookieOverflow exception is raised if
7
+ # you attempt to store more than 4096 bytes of data.
8
+ #
9
+ # The cookie jar used for storage is automatically configured to be the
10
+ # best possible option given your application's configuration.
11
+ #
12
+ # Your cookies will be encrypted using your apps secret_key_base. This
13
+ # goes a step further than signed cookies in that encrypted cookies cannot
14
+ # be altered or read by users. This is the default starting in Rails 4.
15
+ #
16
+ # Configure your session store in an initializer:
17
+ #
18
+ # Rails.application.config.session_store :cookie_store, key: '_your_app_session'
19
+ #
20
+ # In the development and test environments your application's secret key base is
21
+ # generated by Rails and stored in a temporary file in <tt>tmp/development_secret.txt</tt>.
22
+ # In all other environments, it is stored encrypted in the
23
+ # <tt>config/credentials.yml.enc</tt> file.
24
+ #
25
+ # If your application was not updated to Rails 5.2 defaults, the secret_key_base
26
+ # will be found in the old <tt>config/secrets.yml</tt> file.
27
+ #
28
+ # Note that changing your secret_key_base will invalidate all existing session.
29
+ # Additionally, you should take care to make sure you are not relying on the
30
+ # ability to decode signed cookies generated by your app in external
31
+ # applications or JavaScript before changing it.
32
+ #
33
+ # Because CookieStore extends Rack::Session::Abstract::Persisted, many of the
34
+ # options described there can be used to customize the session cookie that
35
+ # is generated. For example:
36
+ #
37
+ # Rails.application.config.session_store :cookie_store, expire_after: 14.days
38
+ #
39
+ # would set the session cookie to expire automatically 14 days after creation.
40
+ # Other useful options include <tt>:key</tt>, <tt>:secure</tt> and
41
+ # <tt>:httponly</tt>.
42
+ class Store < ActionDispatch::Session::AbstractSecureStore
43
+ class SessionId < DelegateClass(Rack::Session::SessionId)
44
+ attr_reader :cookie_value
45
+
46
+ def initialize(session_id, cookie_value = {})
47
+ super(session_id)
48
+ @cookie_value = cookie_value
49
+ end
50
+ end
51
+
52
+ def initialize(app, options = {})
53
+ @permanent = options.dig(:rememberable_options, :permanent).present?
54
+ super(app, options.merge!(cookie_only: true))
55
+ end
56
+
57
+ def delete_session(req, _session_id, options)
58
+ new_sid = generate_sid unless options[:drop]
59
+ # Reset hash and Assign the new session id
60
+ req.set_header('action_dispatch.request.unsigned_session_cookie',
61
+ new_sid ? { 'session_id' => new_sid.public_id } : {})
62
+ new_sid
63
+ end
64
+
65
+ def load_session(req)
66
+ stale_session_check! do
67
+ data = unpacked_cookie_data(req)
68
+ data = persistent_session_id!(data)
69
+ [Rack::Session::SessionId.new(data['session_id']), data]
70
+ end
71
+ end
72
+
73
+ private
74
+
75
+ def extract_session_id(req)
76
+ stale_session_check! do
77
+ sid = unpacked_cookie_data(req)['session_id']
78
+ sid && Rack::Session::SessionId.new(sid)
79
+ end
80
+ end
81
+
82
+ def unpacked_cookie_data(req)
83
+ req.fetch_header('action_dispatch.request.unsigned_session_cookie') do |k|
84
+ v = stale_session_check! do
85
+ if data = get_cookie(req)
86
+ data.stringify_keys!
87
+ end
88
+ data || {}
89
+ end
90
+ req.set_header k, v
91
+ end
92
+ end
93
+
94
+ def persistent_session_id!(data, sid = nil)
95
+ data ||= {}
96
+ data['session_id'] ||= sid || generate_sid.public_id
97
+ data
98
+ end
99
+
100
+ def write_session(_req, sid, session_data, _options)
101
+ session_data['session_id'] = sid.public_id
102
+ SessionId.new(sid, session_data)
103
+ end
104
+
105
+ def set_cookie(request, _session_id, cookie)
106
+ cookie_jar(request)[@key] = cookie
107
+ end
108
+
109
+ def get_cookie(req)
110
+ cookie_jar(req)[@key]
111
+ end
112
+
113
+ def cookie_jar(request)
114
+ if @permanent
115
+ request.cookie_jar.permanent.signed_or_encrypted
116
+ else
117
+ request.cookie_jar.signed_or_encrypted
118
+ end
119
+ end
120
+ end
121
+ end
@@ -1,3 +1,3 @@
1
1
  module SessionRememberable
2
- VERSION = "0.2.1"
2
+ VERSION = "0.3.1"
3
3
  end
@@ -1,31 +1,6 @@
1
+ require_relative 'session_rememberable/methods'
2
+ require_relative 'session_rememberable/store'
3
+
1
4
  module SessionRememberable
2
5
  extend ActiveSupport::Concern
3
-
4
- module ClassMethods
5
-
6
- def remember(key, class_name: nil, static_data: false)
7
- define_method(:"current_#{key}") do
8
- instance_var = instance_variable_get("@current_#{key}")
9
- return instance_var if instance_var
10
-
11
- if static_data
12
- instance_variable_set "@current_#{key}", session["session_#{key}"]
13
- else
14
- class_name = class_name || key.to_s.titleize
15
- instance_variable_set "@current_#{key}", class_name.constantize.find_by(id: session["session_#{key}"])
16
- end
17
- end
18
- helper_method :"current_#{key}"
19
-
20
- define_method(:"remember_#{key}") do |param|
21
- data = param.respond_to?(:id) && !static_data ? param.id : param
22
- session["session_#{key}"] = data
23
- end
24
-
25
- define_method(:"forget_#{key}") do
26
- session["session_#{key}"] = nil
27
- instance_variable_set "@current_#{key}", nil
28
- end
29
- end
30
- end
31
6
  end
@@ -22,5 +22,17 @@ Gem::Specification.new do |spec|
22
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
23
  spec.require_paths = ["lib"]
24
24
 
25
+ spec.add_runtime_dependency 'actionpack'
26
+
25
27
  spec.add_dependency 'activesupport'
28
+
29
+ spec.add_development_dependency 'codecov'
30
+ spec.add_development_dependency 'dotenv'
31
+ spec.add_development_dependency 'rails'
32
+ spec.add_development_dependency 'rake'
33
+ spec.add_development_dependency 'rspec'
34
+ spec.add_development_dependency 'rspec-rails'
35
+ spec.add_development_dependency 'sqlite3'
36
+ # rubocop dependencies...
37
+ spec.add_development_dependency 'simplecov'
26
38
  end
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: session_rememberable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - wynk182
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-05-16 00:00:00.000000000 Z
11
+ date: 2021-12-25 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: actionpack
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: activesupport
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -24,7 +38,119 @@ dependencies:
24
38
  - - ">="
25
39
  - !ruby/object:Gem::Version
26
40
  version: '0'
27
- description:
41
+ - !ruby/object:Gem::Dependency
42
+ name: codecov
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: dotenv
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rails
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rake
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rspec
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: rspec-rails
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: sqlite3
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: simplecov
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ description:
28
154
  email:
29
155
  - wynk182@gmail.com
30
156
  executables: []
@@ -32,6 +158,7 @@ extensions: []
32
158
  extra_rdoc_files: []
33
159
  files:
34
160
  - ".gitignore"
161
+ - ".rspec"
35
162
  - Gemfile
36
163
  - Gemfile.lock
37
164
  - README.md
@@ -39,6 +166,8 @@ files:
39
166
  - bin/console
40
167
  - bin/setup
41
168
  - lib/session_rememberable.rb
169
+ - lib/session_rememberable/methods.rb
170
+ - lib/session_rememberable/store.rb
42
171
  - lib/session_rememberable/version.rb
43
172
  - session_rememberable.gemspec
44
173
  homepage: https://www.wynk182.com
@@ -46,7 +175,7 @@ licenses: []
46
175
  metadata:
47
176
  source_code_uri: https://github.com/wynk182/session_rememberable
48
177
  homepage_uri: https://www.wynk182.com
49
- post_install_message:
178
+ post_install_message:
50
179
  rdoc_options: []
51
180
  require_paths:
52
181
  - lib
@@ -61,8 +190,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
61
190
  - !ruby/object:Gem::Version
62
191
  version: '0'
63
192
  requirements: []
64
- rubygems_version: 3.1.2
65
- signing_key:
193
+ rubygems_version: 3.0.3
194
+ signing_key:
66
195
  specification_version: 4
67
196
  summary: Quick concern for session variables
68
197
  test_files: []