rack_warden 0.0.7 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +15 -0
- data/lib/rack_warden.rb +26 -8
- data/lib/rack_warden/app.rb +40 -21
- data/lib/rack_warden/frameworks.rb +2 -2
- data/lib/rack_warden/frameworks/rails.rb +5 -4
- data/lib/rack_warden/frameworks/sinatra.rb +4 -4
- data/lib/rack_warden/models.rb +16 -7
- data/lib/rack_warden/version.rb +1 -1
- data/lib/rack_warden/views/rw_dbinfo.html.erb +9 -0
- data/lib/rack_warden/views/rw_protected.html.erb +0 -6
- data/rack_warden.gemspec +1 -0
- metadata +154 -159
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
Zjc4YzFlOTkwNzRhN2EyNjVmZWJjZDZmOGEzZTZjNjY5NmE1YjQ3OA==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
NzFlMzJjNmE5ZGM5ZGRhYzVkYmZhNzRmMDFlY2ExODkzMTM0MzhmYQ==
|
7
|
+
SHA512:
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
ZmVhMmMyMmI1MTI0NDRmNmEwYzA1YWQ0MTE2YjdiM2M3NGI0OTQwM2VmNDgz
|
10
|
+
ZTY5MGVlOGJlODY4ZjM3ZDBlNWI0YTE0MmQxN2QwN2Y1Y2I2MmI2ZmVmZjc1
|
11
|
+
NzIwNGFiNTM1MzBiZTM0MWI5YWIxY2VkMDYyNmM5ZjFjZjgxYTI=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
NzgyMWUwMzcwYWIzYTZkMjJkODdmODY4ZTkzYzlmYTE5OWNkMmY1NTJhOTZk
|
14
|
+
YTEwNTgwMTUwYjhiNDQyMzQwYmEyYTZhMzY2YzA0OTIxYjMzYzk2YjIzMWJl
|
15
|
+
NWM4Y2E4NzcxZmY4ZTgzYjMzNjU5ZmJkN2JlYjA4MjE4ZGYyMzk=
|
data/lib/rack_warden.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
module RackWarden
|
2
2
|
# Incase you are using this library without the gem loaded.
|
3
3
|
PATH = File.expand_path(File.dirname(__FILE__))
|
4
|
-
puts "RW PATH #{PATH}"
|
4
|
+
#puts "RW PATH #{PATH}"
|
5
5
|
$LOAD_PATH.unshift(PATH) unless $LOAD_PATH.include?(PATH)
|
6
6
|
end
|
7
7
|
|
@@ -11,13 +11,7 @@ require 'bcrypt'
|
|
11
11
|
require 'data_mapper'
|
12
12
|
require 'warden'
|
13
13
|
require 'open-uri'
|
14
|
-
|
15
|
-
# gem 'data_mapper'
|
16
|
-
# gem 'dm-sqlite-adapter'
|
17
|
-
# gem 'warden'
|
18
|
-
|
19
|
-
# require "rack_warden/app"
|
20
|
-
# require "rack_warden/version"
|
14
|
+
require 'yaml'
|
21
15
|
|
22
16
|
module RackWarden
|
23
17
|
autoload :App, 'rack_warden/app'
|
@@ -29,4 +23,28 @@ module RackWarden
|
|
29
23
|
autoload :Sinatra, 'rack_warden/frameworks/sinatra'
|
30
24
|
autoload :Rails, 'rack_warden/frameworks/rails'
|
31
25
|
end
|
26
|
+
|
27
|
+
# Make this module a pseudo-class appropriate for middlware stack. Use RackWarden for older rails apps (rather than 'RackWarden::App')
|
28
|
+
def self.new(*args)
|
29
|
+
App.new(*args)
|
30
|
+
end
|
31
|
+
|
32
|
+
|
33
|
+
# Utility to get middleware stack. Maybe temporary.
|
34
|
+
def self.middleware_classes(app=nil)
|
35
|
+
r = [app || Rack::Builder.parse_file(File.join(Dir.pwd, 'config.ru')).first]
|
36
|
+
|
37
|
+
while ((next_app = r.last.instance_variable_get(:@app)) != nil)
|
38
|
+
r << next_app
|
39
|
+
end
|
40
|
+
|
41
|
+
r.map{|e| e.instance_variable_defined?(:@app) ? e.class : e }
|
42
|
+
end
|
43
|
+
#app = Rack::Builder.parse_file('config.ru').first
|
44
|
+
#puts middleware_classes(app).inspect
|
45
|
+
|
46
|
+
def self.settings
|
47
|
+
App.settings
|
48
|
+
end
|
49
|
+
|
32
50
|
end
|
data/lib/rack_warden/app.rb
CHANGED
@@ -14,14 +14,24 @@ module RackWarden
|
|
14
14
|
set :recaptcha, Hash.new
|
15
15
|
set :require_login, nil
|
16
16
|
set :allow_public_signup, false
|
17
|
-
set :log_path,
|
17
|
+
set :log_path, "#{Dir.pwd}/log/rack_warden.#{settings.environment}.log"
|
18
18
|
set :user_table_name, nil
|
19
|
+
set :views, File.expand_path("../views/", __FILE__) unless views
|
20
|
+
set :initialized, false
|
19
21
|
|
20
22
|
# Load config from file, if any exist.
|
21
23
|
Hash.new.tap do |hash|
|
22
|
-
config_files.each {|c| hash.merge!
|
24
|
+
config_files.each {|c| puts File.join(Dir.pwd, c); hash.merge!(YAML.load_file(File.join(Dir.pwd, c))) rescue nil}
|
23
25
|
set hash
|
24
26
|
end
|
27
|
+
|
28
|
+
begin
|
29
|
+
enable :logging
|
30
|
+
set :log_file, File.new(settings.log_path, 'a+')
|
31
|
+
settings.log_file.sync = true
|
32
|
+
use Rack::CommonLogger, settings.log_file
|
33
|
+
rescue
|
34
|
+
end
|
25
35
|
|
26
36
|
|
27
37
|
# WBR - This will receive params and a block from the parent "use" statement.
|
@@ -30,32 +40,35 @@ module RackWarden
|
|
30
40
|
# when you call "use RackWarden::App"
|
31
41
|
# Example:
|
32
42
|
#
|
33
|
-
# use RackWarden::App :layout=>:'my_layout' do |rack_warden_instance,
|
43
|
+
# use RackWarden::App :layout=>:'my_layout' do |rack_warden_instance, app|
|
34
44
|
# set :myvar, 'something'
|
35
45
|
# end
|
36
46
|
#
|
37
47
|
def initialize(parent_app_instance=nil, *args, &block)
|
48
|
+
#@app = parent_app_instance
|
49
|
+
super(parent_app_instance, &Proc.new{})
|
38
50
|
initialization_args = args.dup
|
39
|
-
puts "RW INITIALIZE middleware instance [
|
51
|
+
#puts "RW INITIALIZE middleware instance [app, self, args, block]: #{[app, self, args, block]}"
|
52
|
+
puts "RW new instance with parent: #{@app}"
|
40
53
|
# extract options.
|
41
54
|
opts = args.last.is_a?(Hash) ? args.pop : {}
|
42
|
-
|
43
|
-
if
|
44
|
-
puts "RW
|
55
|
+
#settings = self.class
|
56
|
+
if app && !settings.initialized
|
57
|
+
puts "RW initializing settings"
|
45
58
|
|
46
59
|
# Save original views from opts.
|
47
|
-
#
|
48
|
-
|
60
|
+
#settings.set(:original_views, opts.has_key?(:views) ? settings.views : nil)
|
61
|
+
settings.set(:original_views, settings.views)
|
49
62
|
|
50
63
|
# Set app settings with remainder of opts.
|
51
|
-
|
64
|
+
settings.set opts if opts.any?
|
52
65
|
|
53
66
|
# Eval the use-block from the parent app, in context of this app.
|
54
|
-
|
67
|
+
settings.instance_exec(self, app, &block) if block_given?
|
55
68
|
|
56
69
|
# Do framework setup.
|
57
70
|
framework_module = Frameworks::Base.select_framework(binding)
|
58
|
-
puts "RW
|
71
|
+
puts "RW selected framework module #{framework_module}"
|
59
72
|
if framework_module
|
60
73
|
framework_module.setup_framework
|
61
74
|
|
@@ -68,16 +81,17 @@ module RackWarden
|
|
68
81
|
#new_views << original_views if original_views
|
69
82
|
#self.class.set(:views => [new_views, Array(self.class.views)].flatten.compact.uniq) if new_views.any?
|
70
83
|
|
71
|
-
new_views.unshift
|
72
|
-
new_views.unshift framework_module.views_path unless
|
73
|
-
new_views.unshift
|
74
|
-
|
84
|
+
new_views.unshift settings.original_views
|
85
|
+
new_views.unshift framework_module.views_path unless settings.views==false
|
86
|
+
new_views.unshift settings.views
|
87
|
+
settings.set :views, new_views.flatten.compact.uniq
|
75
88
|
|
76
|
-
puts "RW views: #{
|
89
|
+
puts "RW compiled views: #{settings.views.inspect}"
|
77
90
|
end
|
91
|
+
settings.set :initialized, true
|
78
92
|
end
|
79
93
|
# finally, send parent app to super, but don't send the use-block (thus the empty proc)
|
80
|
-
super(
|
94
|
+
#super(app, &Proc.new{})
|
81
95
|
end
|
82
96
|
|
83
97
|
# For testing interception of request.
|
@@ -151,7 +165,7 @@ module RackWarden
|
|
151
165
|
end
|
152
166
|
|
153
167
|
def warden
|
154
|
-
env['warden']
|
168
|
+
request.env['warden']
|
155
169
|
end
|
156
170
|
|
157
171
|
def current_user
|
@@ -221,7 +235,6 @@ module RackWarden
|
|
221
235
|
|
222
236
|
flash(:rwarden)[:success] = warden.message || "Successful login"
|
223
237
|
|
224
|
-
puts "RETURN_TO #{session[:return_to]}"
|
225
238
|
if session[:return_to].nil?
|
226
239
|
redirect url(settings.default_route, false)
|
227
240
|
else
|
@@ -260,7 +273,8 @@ module RackWarden
|
|
260
273
|
post '/auth/unauthenticated' do
|
261
274
|
# I had to remove the condition, since it was not updating return path when it should have.
|
262
275
|
session[:return_to] = env['warden.options'][:attempted_path] if !request.xhr? && !env['warden.options'][:attempted_path][/login|new|create/]
|
263
|
-
puts "
|
276
|
+
puts "RW attempted path: #{env['warden.options'][:attempted_path]}"
|
277
|
+
puts "RW will return-to #{session[:return_to]}"
|
264
278
|
puts warden
|
265
279
|
# if User.count > 0
|
266
280
|
flash(:rwarden)[:error] = warden.message || "Please login to continue"
|
@@ -277,6 +291,11 @@ module RackWarden
|
|
277
291
|
erb :'rw_protected.html', :layout=>settings.layout
|
278
292
|
end
|
279
293
|
|
294
|
+
get "/auth/dbinfo" do
|
295
|
+
warden.authenticate!
|
296
|
+
erb :'rw_dbinfo.html', :layout=>settings.layout
|
297
|
+
end
|
298
|
+
|
280
299
|
get '/auth/admin' do
|
281
300
|
warden.authenticate!
|
282
301
|
erb :'rw_admin.html', :layout=>settings.layout
|
@@ -6,9 +6,8 @@ module RackWarden
|
|
6
6
|
class << self
|
7
7
|
# Select the framework of the parent app.
|
8
8
|
def select_framework(env)
|
9
|
-
puts "RW framework constants: #{Frameworks.constants}"
|
9
|
+
#puts "RW framework constants: #{Frameworks.constants}"
|
10
10
|
Frameworks.constants.dup.tap{|_constants| _constants.delete(:Base)}.each do |c|
|
11
|
-
puts "RW framework constant #{c}"
|
12
11
|
r = Frameworks.const_get(c).framework_selector(env) #rescue nil
|
13
12
|
return r if r
|
14
13
|
end
|
@@ -30,6 +29,7 @@ module RackWarden
|
|
30
29
|
# and runs the framework selector logic.
|
31
30
|
# Returns the framework module or nil.
|
32
31
|
def framework_selector(env)
|
32
|
+
#puts "RW testing framework #{self}"
|
33
33
|
#puts "BASE.framework_selector #{self} env: #{env.eval 'self'} locals: #{env.eval 'local_variables'}"
|
34
34
|
@initialization_args = env.eval 'initialization_args'
|
35
35
|
@parent_app_instance = env.eval 'parent_app_instance'
|
@@ -5,8 +5,8 @@ module RackWarden
|
|
5
5
|
extend Base
|
6
6
|
|
7
7
|
def selector
|
8
|
-
puts "RW Rails.selector parent_app.ancestors #{parent_app.ancestors}"
|
9
|
-
parent_app.ancestors.find{|x| x.to_s[/Rails|ActionDispatch/]}
|
8
|
+
#puts "RW Rails.selector parent_app.ancestors #{parent_app.ancestors}"
|
9
|
+
parent_app.ancestors.find{|x| x.to_s[/Rails|ActionDispatch/]} or defined?(Rails)
|
10
10
|
end
|
11
11
|
|
12
12
|
def views_path
|
@@ -14,11 +14,12 @@ module RackWarden
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def setup_framework
|
17
|
-
puts "RW
|
17
|
+
#puts "RW setup_framework for rails"
|
18
18
|
ApplicationController.send(:include, RackWarden::App::RackWardenHelpers)
|
19
19
|
|
20
20
|
# Define class method 'require_login' on framework controller.
|
21
|
-
#parent_app_class.instance_eval do
|
21
|
+
#parent_app_class.instance_eval do
|
22
|
+
# Probably more reliable to use this.
|
22
23
|
ApplicationController.instance_eval do
|
23
24
|
def self.require_login(*args)
|
24
25
|
before_filter(:require_login, *args) do
|
@@ -5,7 +5,7 @@ module RackWarden
|
|
5
5
|
extend Base
|
6
6
|
|
7
7
|
def selector
|
8
|
-
puts "RW Sinatra.selector parent_app.ancestors #{parent_app.ancestors}"
|
8
|
+
#puts "RW Sinatra.selector parent_app.ancestors #{parent_app.ancestors}"
|
9
9
|
parent_app.ancestors.find{|x| x.to_s=='Sinatra::Base'}
|
10
10
|
end
|
11
11
|
|
@@ -14,15 +14,15 @@ module RackWarden
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def setup_framework
|
17
|
-
puts "RW
|
17
|
+
#puts "RW setup_framework for sinatra"
|
18
18
|
parent_app.helpers(RackWarden::App::RackWardenHelpers)
|
19
19
|
|
20
20
|
# Define class method 'require_login' on framework controller.
|
21
21
|
parent_app.instance_eval do
|
22
22
|
def self.require_login(*args)
|
23
|
-
puts "RW class #{self}.require_login #{args}"
|
23
|
+
#puts "RW class #{self}.require_login #{args}"
|
24
24
|
before(*args) do
|
25
|
-
puts "RW instance #{self}.require_login #{request.path_info}"
|
25
|
+
#puts "RW instance #{self}.require_login #{request.path_info}"
|
26
26
|
require_login
|
27
27
|
end
|
28
28
|
end
|
data/lib/rack_warden/models.rb
CHANGED
@@ -3,27 +3,35 @@ module RackWarden
|
|
3
3
|
|
4
4
|
# Best guess at framework database settings.
|
5
5
|
def self.get_database_config
|
6
|
+
#puts ActiveRecord::Base.configurations[(RackWarden::App.environment || :development).to_s].to_yaml
|
7
|
+
#conf = case
|
6
8
|
case
|
9
|
+
when App.database_config.to_s.downcase == 'file'; "sqlite3:///#{Dir.pwd}/rack_warden.sqlite3.db"
|
7
10
|
when App.database_config.to_s.downcase == 'auto';
|
8
11
|
(ActiveRecord::Base.connection_config rescue nil) ||
|
12
|
+
(ActiveRecord::Base.configurations[(RackWarden::App.environment || :development).to_s] rescue nil) ||
|
9
13
|
(DataMapper.repository(:default).adapter[:options] rescue nil) ||
|
10
14
|
App.database_default
|
11
15
|
when App.database_config; App.database_config
|
12
16
|
else App.database_default
|
13
17
|
end
|
18
|
+
#... sort out environment HERE
|
19
|
+
#conf = RackWarden::App.environment || :development).to_s
|
14
20
|
end
|
15
21
|
|
16
|
-
puts "RW DataMapper using log_path #{App.log_path}"
|
17
|
-
|
22
|
+
#puts "RW DataMapper using log_path #{App.log_path}"
|
23
|
+
### CAUTION - There may be a file conflict between this and rack::commonlogger.
|
24
|
+
DataMapper::Logger.new(settings.log_file) #$stdout) #App.log_path)
|
25
|
+
|
18
26
|
|
19
|
-
puts "RW get_database_config #{get_database_config}"
|
20
27
|
DataMapper.setup(:default, get_database_config)
|
21
28
|
# Do DataMapper.repository.adapter to get connection info for this connection.
|
29
|
+
puts "RW DataMapper.setup #{DataMapper.repository.adapter}"
|
22
30
|
|
23
|
-
puts "RW requiring model files in #{File.join(File.dirname(__FILE__), 'models/*')}"
|
24
|
-
Dir.glob(File.join(File.dirname(__FILE__), 'models/*')).each {|f|
|
31
|
+
#puts "RW requiring model files in #{File.join(File.dirname(__FILE__), 'models/*')}"
|
32
|
+
Dir.glob(File.join(File.dirname(__FILE__), 'models/*')).each {|f| require f}
|
25
33
|
|
26
|
-
puts "RW DataMapper.finalize"
|
34
|
+
#puts "RW DataMapper.finalize"
|
27
35
|
# Tell DataMapper the models are done being defined
|
28
36
|
DataMapper.finalize
|
29
37
|
|
@@ -31,6 +39,7 @@ module RackWarden
|
|
31
39
|
# Update the database to match the properties of User.
|
32
40
|
DataMapper.auto_upgrade!
|
33
41
|
|
34
|
-
|
42
|
+
# Careful! This will expose sensitive db login info.
|
43
|
+
#puts "RW DataMapper repository #{DataMapper.repository.adapter.options}"
|
35
44
|
|
36
45
|
end # module
|
data/lib/rack_warden/version.rb
CHANGED
@@ -0,0 +1,9 @@
|
|
1
|
+
<p>
|
2
|
+
<h2>RackWarden db info</h2>
|
3
|
+
</p>
|
4
|
+
|
5
|
+
<p>
|
6
|
+
<%= DataMapper.repository.adapter.select('select * from SQLITE_MASTER').to_yaml.gsub(/\n|\r/, '<br>').gsub(/ /, ' ') %>
|
7
|
+
<br><br>
|
8
|
+
<%= DataMapper.repository.adapter.to_yaml.gsub(/\n|\r/, '<br>') %>
|
9
|
+
</p>
|
data/rack_warden.gemspec
CHANGED
metadata
CHANGED
@@ -1,174 +1,177 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: rack_warden
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 0
|
9
|
-
- 7
|
10
|
-
version: 0.0.7
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.8
|
11
5
|
platform: ruby
|
12
|
-
authors:
|
6
|
+
authors:
|
13
7
|
- William Richardson
|
14
8
|
autorequire:
|
15
9
|
bindir: bin
|
16
10
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
- !ruby/object:Gem::Dependency
|
21
|
-
version_requirements: &id001 !ruby/object:Gem::Requirement
|
22
|
-
none: false
|
23
|
-
requirements:
|
24
|
-
- - ~>
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
hash: 1
|
27
|
-
segments:
|
28
|
-
- 1
|
29
|
-
- 7
|
30
|
-
version: "1.7"
|
31
|
-
prerelease: false
|
32
|
-
requirement: *id001
|
11
|
+
date: 2015-01-08 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
33
14
|
name: bundler
|
34
|
-
|
35
|
-
|
36
|
-
version_requirements: &id002 !ruby/object:Gem::Requirement
|
37
|
-
none: false
|
38
|
-
requirements:
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
39
17
|
- - ~>
|
40
|
-
- !ruby/object:Gem::Version
|
41
|
-
|
42
|
-
|
43
|
-
- 10
|
44
|
-
- 0
|
45
|
-
version: "10.0"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.7'
|
20
|
+
type: :development
|
46
21
|
prerelease: false
|
47
|
-
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ~>
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.7'
|
27
|
+
- !ruby/object:Gem::Dependency
|
48
28
|
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ~>
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '10.0'
|
49
34
|
type: :development
|
50
|
-
- !ruby/object:Gem::Dependency
|
51
|
-
version_requirements: &id003 !ruby/object:Gem::Requirement
|
52
|
-
none: false
|
53
|
-
requirements:
|
54
|
-
- - ">="
|
55
|
-
- !ruby/object:Gem::Version
|
56
|
-
hash: 3
|
57
|
-
segments:
|
58
|
-
- 0
|
59
|
-
version: "0"
|
60
35
|
prerelease: false
|
61
|
-
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ~>
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '10.0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
62
42
|
name: tux
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ! '>='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
63
48
|
type: :development
|
64
|
-
- !ruby/object:Gem::Dependency
|
65
|
-
version_requirements: &id004 !ruby/object:Gem::Requirement
|
66
|
-
none: false
|
67
|
-
requirements:
|
68
|
-
- - ">="
|
69
|
-
- !ruby/object:Gem::Version
|
70
|
-
hash: 3
|
71
|
-
segments:
|
72
|
-
- 0
|
73
|
-
version: "0"
|
74
49
|
prerelease: false
|
75
|
-
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
76
56
|
name: thin
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
77
62
|
type: :development
|
78
|
-
- !ruby/object:Gem::Dependency
|
79
|
-
version_requirements: &id005 !ruby/object:Gem::Requirement
|
80
|
-
none: false
|
81
|
-
requirements:
|
82
|
-
- - ">="
|
83
|
-
- !ruby/object:Gem::Version
|
84
|
-
hash: 3
|
85
|
-
segments:
|
86
|
-
- 0
|
87
|
-
version: "0"
|
88
63
|
prerelease: false
|
89
|
-
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ! '>='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
90
70
|
name: sinatra
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ! '>='
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
91
76
|
type: :runtime
|
92
|
-
- !ruby/object:Gem::Dependency
|
93
|
-
version_requirements: &id006 !ruby/object:Gem::Requirement
|
94
|
-
none: false
|
95
|
-
requirements:
|
96
|
-
- - ">="
|
97
|
-
- !ruby/object:Gem::Version
|
98
|
-
hash: 3
|
99
|
-
segments:
|
100
|
-
- 0
|
101
|
-
version: "0"
|
102
77
|
prerelease: false
|
103
|
-
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ! '>='
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
104
84
|
name: sinatra-flash
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ! '>='
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
105
90
|
type: :runtime
|
106
|
-
- !ruby/object:Gem::Dependency
|
107
|
-
version_requirements: &id007 !ruby/object:Gem::Requirement
|
108
|
-
none: false
|
109
|
-
requirements:
|
110
|
-
- - ">="
|
111
|
-
- !ruby/object:Gem::Version
|
112
|
-
hash: 3
|
113
|
-
segments:
|
114
|
-
- 0
|
115
|
-
version: "0"
|
116
91
|
prerelease: false
|
117
|
-
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ! '>='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
118
98
|
name: bcrypt
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ! '>='
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
119
104
|
type: :runtime
|
120
|
-
- !ruby/object:Gem::Dependency
|
121
|
-
version_requirements: &id008 !ruby/object:Gem::Requirement
|
122
|
-
none: false
|
123
|
-
requirements:
|
124
|
-
- - ">="
|
125
|
-
- !ruby/object:Gem::Version
|
126
|
-
hash: 3
|
127
|
-
segments:
|
128
|
-
- 0
|
129
|
-
version: "0"
|
130
105
|
prerelease: false
|
131
|
-
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ! '>='
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
132
112
|
name: data_mapper
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ! '>='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
133
118
|
type: :runtime
|
134
|
-
- !ruby/object:Gem::Dependency
|
135
|
-
version_requirements: &id009 !ruby/object:Gem::Requirement
|
136
|
-
none: false
|
137
|
-
requirements:
|
138
|
-
- - ">="
|
139
|
-
- !ruby/object:Gem::Version
|
140
|
-
hash: 3
|
141
|
-
segments:
|
142
|
-
- 0
|
143
|
-
version: "0"
|
144
119
|
prerelease: false
|
145
|
-
|
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: :runtime
|
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
|
146
140
|
name: dm-sqlite-adapter
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - ! '>='
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '0'
|
147
146
|
type: :runtime
|
148
|
-
- !ruby/object:Gem::Dependency
|
149
|
-
version_requirements: &id010 !ruby/object:Gem::Requirement
|
150
|
-
none: false
|
151
|
-
requirements:
|
152
|
-
- - ">="
|
153
|
-
- !ruby/object:Gem::Version
|
154
|
-
hash: 3
|
155
|
-
segments:
|
156
|
-
- 0
|
157
|
-
version: "0"
|
158
147
|
prerelease: false
|
159
|
-
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - ! '>='
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '0'
|
153
|
+
- !ruby/object:Gem::Dependency
|
160
154
|
name: warden
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - ! '>='
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '0'
|
161
160
|
type: :runtime
|
162
|
-
|
163
|
-
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - ! '>='
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '0'
|
167
|
+
description: A warden/sinatra mini-app providing authentication and user management
|
168
|
+
for any rack-based app.
|
169
|
+
email:
|
164
170
|
- wbr@mac.com
|
165
171
|
executables: []
|
166
|
-
|
167
172
|
extensions: []
|
168
|
-
|
169
173
|
extra_rdoc_files: []
|
170
|
-
|
171
|
-
files:
|
174
|
+
files:
|
172
175
|
- .gitignore
|
173
176
|
- Gemfile
|
174
177
|
- LICENSE.txt
|
@@ -184,44 +187,36 @@ files:
|
|
184
187
|
- lib/rack_warden/models/user.rb
|
185
188
|
- lib/rack_warden/version.rb
|
186
189
|
- lib/rack_warden/views/rw_admin.html.erb
|
190
|
+
- lib/rack_warden/views/rw_dbinfo.html.erb
|
187
191
|
- lib/rack_warden/views/rw_index.html.erb
|
188
192
|
- lib/rack_warden/views/rw_layout.html.erb
|
189
193
|
- lib/rack_warden/views/rw_login.html.erb
|
190
194
|
- lib/rack_warden/views/rw_new_user.html.erb
|
191
195
|
- lib/rack_warden/views/rw_protected.html.erb
|
192
196
|
- rack_warden.gemspec
|
193
|
-
homepage:
|
194
|
-
licenses:
|
197
|
+
homepage: ''
|
198
|
+
licenses:
|
195
199
|
- MIT
|
200
|
+
metadata: {}
|
196
201
|
post_install_message:
|
197
202
|
rdoc_options: []
|
198
|
-
|
199
|
-
require_paths:
|
203
|
+
require_paths:
|
200
204
|
- lib
|
201
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
none: false
|
212
|
-
requirements:
|
213
|
-
- - ">="
|
214
|
-
- !ruby/object:Gem::Version
|
215
|
-
hash: 3
|
216
|
-
segments:
|
217
|
-
- 0
|
218
|
-
version: "0"
|
205
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
206
|
+
requirements:
|
207
|
+
- - ! '>='
|
208
|
+
- !ruby/object:Gem::Version
|
209
|
+
version: '0'
|
210
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
211
|
+
requirements:
|
212
|
+
- - ! '>='
|
213
|
+
- !ruby/object:Gem::Version
|
214
|
+
version: '0'
|
219
215
|
requirements: []
|
220
|
-
|
221
216
|
rubyforge_project:
|
222
|
-
rubygems_version:
|
217
|
+
rubygems_version: 2.4.5
|
223
218
|
signing_key:
|
224
|
-
specification_version:
|
225
|
-
summary: A warden/sinatra mini-app providing authentication and user management for
|
219
|
+
specification_version: 4
|
220
|
+
summary: A warden/sinatra mini-app providing authentication and user management for
|
221
|
+
any rack-based app
|
226
222
|
test_files: []
|
227
|
-
|