rack_warden 0.0.6 → 0.0.7
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.
- data/lib/rack_warden/app.rb +29 -10
- data/lib/rack_warden/frameworks.rb +4 -2
- data/lib/rack_warden/frameworks/rails.rb +3 -3
- data/lib/rack_warden/frameworks/sinatra.rb +9 -7
- data/lib/rack_warden/models.rb +10 -7
- data/lib/rack_warden/models/user.rb +6 -4
- data/lib/rack_warden/version.rb +1 -1
- data/lib/rack_warden/views/rw_protected.html.erb +6 -0
- metadata +159 -139
- checksums.yaml +0 -15
data/lib/rack_warden/app.rb
CHANGED
@@ -5,15 +5,17 @@ module RackWarden
|
|
5
5
|
class App < Sinatra::Base
|
6
6
|
enable :sessions
|
7
7
|
register Sinatra::Flash
|
8
|
-
|
8
|
+
|
9
9
|
set :config_files, [ENV['RACK_WARDEN_CONFIG_FILE'], 'rack_warden.yml', 'config/rack_warden.yml'].compact.uniq
|
10
10
|
set :layout, :'rw_layout.html'
|
11
11
|
set :default_route, '/'
|
12
12
|
set :database_config => nil #, "sqlite3:///#{Dir.pwd}/rack_warden.sqlite3.db"
|
13
|
+
set :database_default => "sqlite3::memory:" #"sqlite3:///#{Dir.pwd}/rack_warden.sqlite3.db"
|
13
14
|
set :recaptcha, Hash.new
|
14
15
|
set :require_login, nil
|
15
16
|
set :allow_public_signup, false
|
16
17
|
set :log_path, File.join(Dir.pwd, 'log', 'rack_warden.log')
|
18
|
+
set :user_table_name, nil
|
17
19
|
|
18
20
|
# Load config from file, if any exist.
|
19
21
|
Hash.new.tap do |hash|
|
@@ -34,7 +36,7 @@ module RackWarden
|
|
34
36
|
#
|
35
37
|
def initialize(parent_app_instance=nil, *args, &block)
|
36
38
|
initialization_args = args.dup
|
37
|
-
puts "INITIALIZE middleware instance [parent_app_instance, self, args, block]: #{[parent_app_instance, self, args, block]}"
|
39
|
+
puts "RW INITIALIZE middleware instance [parent_app_instance, self, args, block]: #{[parent_app_instance, self, args, block]}"
|
38
40
|
# extract options.
|
39
41
|
opts = args.last.is_a?(Hash) ? args.pop : {}
|
40
42
|
rack_warden_app_class = self.class
|
@@ -42,7 +44,8 @@ module RackWarden
|
|
42
44
|
puts "RW has parent: #{parent_app_instance}"
|
43
45
|
|
44
46
|
# Save original views from opts.
|
45
|
-
rack_warden_app_class.set(:original_views, opts.has_key?(:views) ? rack_warden_app_class.views : nil)
|
47
|
+
#rack_warden_app_class.set(:original_views, opts.has_key?(:views) ? rack_warden_app_class.views : nil)
|
48
|
+
rack_warden_app_class.set(:original_views, rack_warden_app_class.views)
|
46
49
|
|
47
50
|
# Set app settings with remainder of opts.
|
48
51
|
rack_warden_app_class.set opts if opts.any?
|
@@ -52,24 +55,40 @@ module RackWarden
|
|
52
55
|
|
53
56
|
# Do framework setup.
|
54
57
|
framework_module = Frameworks::Base.select_framework(binding)
|
58
|
+
puts "RW framework_module #{framework_module}"
|
55
59
|
if framework_module
|
56
60
|
framework_module.setup_framework
|
57
61
|
|
58
62
|
# Manipulate views
|
59
63
|
new_views = []
|
60
|
-
original_views = self.class.original_views
|
64
|
+
#original_views = self.class.original_views
|
61
65
|
# append parent rails views folder unless opts.has_key?(:views)
|
62
|
-
#new_views <<
|
63
|
-
new_views << framework_module.views_path unless opts.has_key?(:views)
|
66
|
+
#new_views << framework_module.views_path unless opts[:views]==false #opts.has_key?(:views)
|
64
67
|
# append original_views, if original_views
|
65
|
-
new_views << original_views if original_views
|
66
|
-
self.class.set(:views => [new_views, Array(self.class.views)].flatten.compact.uniq) if new_views.any?
|
68
|
+
#new_views << original_views if original_views
|
69
|
+
#self.class.set(:views => [new_views, Array(self.class.views)].flatten.compact.uniq) if new_views.any?
|
70
|
+
|
71
|
+
new_views.unshift rack_warden_app_class.original_views
|
72
|
+
new_views.unshift framework_module.views_path unless rack_warden_app_class.views==false
|
73
|
+
new_views.unshift rack_warden_app_class.views
|
74
|
+
rack_warden_app_class.set :views, new_views.flatten.compact.uniq
|
75
|
+
|
67
76
|
puts "RW views: #{self.class.views}"
|
68
77
|
end
|
69
78
|
end
|
70
79
|
# finally, send parent app to super, but don't send the use-block (thus the empty proc)
|
71
80
|
super(parent_app_instance, &Proc.new{})
|
72
81
|
end
|
82
|
+
|
83
|
+
# For testing interception of request.
|
84
|
+
# This might be breaking older rails installations
|
85
|
+
# if development?
|
86
|
+
# def call(env={})
|
87
|
+
# puts "RW instance.app #{app}"
|
88
|
+
# puts "RW instance.call(env) #{env.to_yaml}"
|
89
|
+
# super(env)
|
90
|
+
# end
|
91
|
+
# end
|
73
92
|
|
74
93
|
use Warden::Manager do |config|
|
75
94
|
# Tell Warden how to save our User info into a session.
|
@@ -83,11 +102,11 @@ module RackWarden
|
|
83
102
|
config.scope_defaults :default,
|
84
103
|
# "strategies" is an array of named methods with which to
|
85
104
|
# attempt authentication. We have to define this later.
|
86
|
-
strategies
|
105
|
+
:strategies => [:password],
|
87
106
|
# The action is a route to send the user to when
|
88
107
|
# warden.authenticate! returns a false answer. We'll show
|
89
108
|
# this route below.
|
90
|
-
action
|
109
|
+
:action => 'auth/unauthenticated'
|
91
110
|
# When a user tries to log in and cannot, this specifies the
|
92
111
|
# app to send the user to.
|
93
112
|
config.failure_app = self
|
@@ -7,7 +7,8 @@ module RackWarden
|
|
7
7
|
# Select the framework of the parent app.
|
8
8
|
def select_framework(env)
|
9
9
|
puts "RW framework constants: #{Frameworks.constants}"
|
10
|
-
Frameworks.constants.dup.tap{|_constants| _constants.delete(Base)}.each do |c|
|
10
|
+
Frameworks.constants.dup.tap{|_constants| _constants.delete(:Base)}.each do |c|
|
11
|
+
puts "RW framework constant #{c}"
|
11
12
|
r = Frameworks.const_get(c).framework_selector(env) #rescue nil
|
12
13
|
return r if r
|
13
14
|
end
|
@@ -23,7 +24,7 @@ module RackWarden
|
|
23
24
|
|
24
25
|
### Methods extended into framework module ###
|
25
26
|
|
26
|
-
attr_accessor :parent_app_instance, :parent_app_class, :rack_warden_app_instance, :rack_warden_app_class
|
27
|
+
attr_accessor :parent_app_instance, :parent_app_class, :parent_app, :rack_warden_app_instance, :rack_warden_app_class
|
27
28
|
|
28
29
|
# Sets framework module with variables from env (the scope of the parent app's initializer),
|
29
30
|
# and runs the framework selector logic.
|
@@ -33,6 +34,7 @@ module RackWarden
|
|
33
34
|
@initialization_args = env.eval 'initialization_args'
|
34
35
|
@parent_app_instance = env.eval 'parent_app_instance'
|
35
36
|
@parent_app_class = @parent_app_instance.class
|
37
|
+
@parent_app = @parent_app_instance.is_a?(Class) ? @parent_app_instance : @parent_app_class
|
36
38
|
@rack_warden_app_instance = env.eval 'self'
|
37
39
|
@rack_warden_app_class = @rack_warden_app_instance.class
|
38
40
|
selector && self
|
@@ -5,8 +5,8 @@ module RackWarden
|
|
5
5
|
extend Base
|
6
6
|
|
7
7
|
def selector
|
8
|
-
puts "RW Rails.selector"
|
9
|
-
|
8
|
+
puts "RW Rails.selector parent_app.ancestors #{parent_app.ancestors}"
|
9
|
+
parent_app.ancestors.find{|x| x.to_s[/Rails|ActionDispatch/]} #{|x| x.to_s=='ActionDispatch'}
|
10
10
|
end
|
11
11
|
|
12
12
|
def views_path
|
@@ -14,7 +14,7 @@ module RackWarden
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def setup_framework
|
17
|
-
puts "RW Rails.setup_framework
|
17
|
+
puts "RW Rails.setup_framework parent_app #{parent_app}"
|
18
18
|
ApplicationController.send(:include, RackWarden::App::RackWardenHelpers)
|
19
19
|
|
20
20
|
# Define class method 'require_login' on framework controller.
|
@@ -5,27 +5,29 @@ module RackWarden
|
|
5
5
|
extend Base
|
6
6
|
|
7
7
|
def selector
|
8
|
-
puts "RW Sinatra.selector"
|
9
|
-
|
8
|
+
puts "RW Sinatra.selector parent_app.ancestors #{parent_app.ancestors}"
|
9
|
+
parent_app.ancestors.find{|x| x.to_s=='Sinatra::Base'}
|
10
10
|
end
|
11
11
|
|
12
12
|
def views_path
|
13
|
-
[File.join(Dir.pwd, "views/rack_warden"), File.join(Dir.pwd,"views")
|
13
|
+
[File.join(Dir.pwd, "views/rack_warden"), File.join(Dir.pwd,"views")]
|
14
14
|
end
|
15
15
|
|
16
16
|
def setup_framework
|
17
|
-
puts "RW Sinatra.setup_framework
|
18
|
-
|
17
|
+
puts "RW Sinatra.setup_framework parent_app #{parent_app}"
|
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
24
|
before(*args) do
|
25
|
+
puts "RW instance #{self}.require_login #{request.path_info}"
|
24
26
|
require_login
|
25
27
|
end
|
26
28
|
end
|
27
29
|
end
|
28
|
-
|
30
|
+
parent_app.require_login(rack_warden_app_class.require_login) if rack_warden_app_class.require_login != false
|
29
31
|
end
|
30
32
|
|
31
33
|
end # Sinatra
|
data/lib/rack_warden/models.rb
CHANGED
@@ -1,13 +1,16 @@
|
|
1
|
-
|
1
|
+
# Setup the database connection, schema, etc.
|
2
2
|
module RackWarden
|
3
3
|
|
4
4
|
# Best guess at framework database settings.
|
5
5
|
def self.get_database_config
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
6
|
+
case
|
7
|
+
when App.database_config.to_s.downcase == 'auto';
|
8
|
+
(ActiveRecord::Base.connection_config rescue nil) ||
|
9
|
+
(DataMapper.repository(:default).adapter[:options] rescue nil) ||
|
10
|
+
App.database_default
|
11
|
+
when App.database_config; App.database_config
|
12
|
+
else App.database_default
|
13
|
+
end
|
11
14
|
end
|
12
15
|
|
13
16
|
puts "RW DataMapper using log_path #{App.log_path}"
|
@@ -20,7 +23,7 @@ module RackWarden
|
|
20
23
|
puts "RW requiring model files in #{File.join(File.dirname(__FILE__), 'models/*')}"
|
21
24
|
Dir.glob(File.join(File.dirname(__FILE__), 'models/*')).each {|f| puts f; require f}
|
22
25
|
|
23
|
-
puts "RW
|
26
|
+
puts "RW DataMapper.finalize"
|
24
27
|
# Tell DataMapper the models are done being defined
|
25
28
|
DataMapper.finalize
|
26
29
|
|
@@ -4,10 +4,12 @@ module RackWarden
|
|
4
4
|
class User
|
5
5
|
include DataMapper::Resource
|
6
6
|
include BCrypt
|
7
|
+
|
8
|
+
storage_names[:default] = App.user_table_name if App.user_table_name
|
7
9
|
|
8
|
-
property :id, Serial, key
|
9
|
-
property :username, String, length
|
10
|
-
property :email, String, length
|
10
|
+
property :id, Serial, :key => true
|
11
|
+
property :username, String, :length => 128, :unique => true, :required => true, :default => lambda {|r,v| r.instance_variable_get :@email}
|
12
|
+
property :email, String, :length => 128, :unique => true, :required => true #, :default => 'error'
|
11
13
|
|
12
14
|
property :password, BCryptHash
|
13
15
|
|
@@ -30,7 +32,7 @@ module RackWarden
|
|
30
32
|
|
31
33
|
# # Create a test User
|
32
34
|
# if User.count == 0
|
33
|
-
# @user = User.create(username
|
35
|
+
# @user = User.create(:username => "admin")
|
34
36
|
# @user.password = "admin"
|
35
37
|
# @user.save
|
36
38
|
# end
|
data/lib/rack_warden/version.rb
CHANGED
metadata
CHANGED
@@ -1,163 +1,174 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: rack_warden
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 17
|
5
|
+
prerelease:
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 0
|
9
|
+
- 7
|
10
|
+
version: 0.0.7
|
5
11
|
platform: ruby
|
6
|
-
authors:
|
12
|
+
authors:
|
7
13
|
- William Richardson
|
8
14
|
autorequire:
|
9
15
|
bindir: bin
|
10
16
|
cert_chain: []
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
+
|
18
|
+
date: 2015-01-07 00:00:00 Z
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
21
|
+
version_requirements: &id001 !ruby/object:Gem::Requirement
|
22
|
+
none: false
|
23
|
+
requirements:
|
17
24
|
- - ~>
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
|
20
|
-
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
hash: 1
|
27
|
+
segments:
|
28
|
+
- 1
|
29
|
+
- 7
|
30
|
+
version: "1.7"
|
21
31
|
prerelease: false
|
22
|
-
|
23
|
-
|
32
|
+
requirement: *id001
|
33
|
+
name: bundler
|
34
|
+
type: :development
|
35
|
+
- !ruby/object:Gem::Dependency
|
36
|
+
version_requirements: &id002 !ruby/object:Gem::Requirement
|
37
|
+
none: false
|
38
|
+
requirements:
|
24
39
|
- - ~>
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
|
27
|
-
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
hash: 35
|
42
|
+
segments:
|
43
|
+
- 10
|
44
|
+
- 0
|
45
|
+
version: "10.0"
|
46
|
+
prerelease: false
|
47
|
+
requirement: *id002
|
28
48
|
name: rake
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - ~>
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '10.0'
|
34
49
|
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"
|
35
60
|
prerelease: false
|
36
|
-
|
37
|
-
requirements:
|
38
|
-
- - ~>
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: '10.0'
|
41
|
-
- !ruby/object:Gem::Dependency
|
61
|
+
requirement: *id003
|
42
62
|
name: tux
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - ! '>='
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '0'
|
48
63
|
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"
|
49
74
|
prerelease: false
|
50
|
-
|
51
|
-
requirements:
|
52
|
-
- - ! '>='
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '0'
|
55
|
-
- !ruby/object:Gem::Dependency
|
75
|
+
requirement: *id004
|
56
76
|
name: thin
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - ! '>='
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
62
77
|
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"
|
63
88
|
prerelease: false
|
64
|
-
|
65
|
-
requirements:
|
66
|
-
- - ! '>='
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: '0'
|
69
|
-
- !ruby/object:Gem::Dependency
|
89
|
+
requirement: *id005
|
70
90
|
name: sinatra
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - ! '>='
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '0'
|
76
91
|
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"
|
77
102
|
prerelease: false
|
78
|
-
|
79
|
-
requirements:
|
80
|
-
- - ! '>='
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: '0'
|
83
|
-
- !ruby/object:Gem::Dependency
|
103
|
+
requirement: *id006
|
84
104
|
name: sinatra-flash
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - ! '>='
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '0'
|
90
105
|
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"
|
91
116
|
prerelease: false
|
92
|
-
|
93
|
-
requirements:
|
94
|
-
- - ! '>='
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '0'
|
97
|
-
- !ruby/object:Gem::Dependency
|
117
|
+
requirement: *id007
|
98
118
|
name: bcrypt
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - ! '>='
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '0'
|
104
119
|
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"
|
105
130
|
prerelease: false
|
106
|
-
|
107
|
-
requirements:
|
108
|
-
- - ! '>='
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: '0'
|
111
|
-
- !ruby/object:Gem::Dependency
|
131
|
+
requirement: *id008
|
112
132
|
name: data_mapper
|
113
|
-
requirement: !ruby/object:Gem::Requirement
|
114
|
-
requirements:
|
115
|
-
- - ! '>='
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: '0'
|
118
133
|
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"
|
119
144
|
prerelease: false
|
120
|
-
|
121
|
-
requirements:
|
122
|
-
- - ! '>='
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
version: '0'
|
125
|
-
- !ruby/object:Gem::Dependency
|
145
|
+
requirement: *id009
|
126
146
|
name: dm-sqlite-adapter
|
127
|
-
requirement: !ruby/object:Gem::Requirement
|
128
|
-
requirements:
|
129
|
-
- - ! '>='
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
version: '0'
|
132
147
|
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"
|
133
158
|
prerelease: false
|
134
|
-
|
135
|
-
requirements:
|
136
|
-
- - ! '>='
|
137
|
-
- !ruby/object:Gem::Version
|
138
|
-
version: '0'
|
139
|
-
- !ruby/object:Gem::Dependency
|
159
|
+
requirement: *id010
|
140
160
|
name: warden
|
141
|
-
requirement: !ruby/object:Gem::Requirement
|
142
|
-
requirements:
|
143
|
-
- - ! '>='
|
144
|
-
- !ruby/object:Gem::Version
|
145
|
-
version: '0'
|
146
161
|
type: :runtime
|
147
|
-
|
148
|
-
|
149
|
-
requirements:
|
150
|
-
- - ! '>='
|
151
|
-
- !ruby/object:Gem::Version
|
152
|
-
version: '0'
|
153
|
-
description: A warden/sinatra mini-app providing authentication and user management
|
154
|
-
for any rack-based app.
|
155
|
-
email:
|
162
|
+
description: A warden/sinatra mini-app providing authentication and user management for any rack-based app.
|
163
|
+
email:
|
156
164
|
- wbr@mac.com
|
157
165
|
executables: []
|
166
|
+
|
158
167
|
extensions: []
|
168
|
+
|
159
169
|
extra_rdoc_files: []
|
160
|
-
|
170
|
+
|
171
|
+
files:
|
161
172
|
- .gitignore
|
162
173
|
- Gemfile
|
163
174
|
- LICENSE.txt
|
@@ -179,29 +190,38 @@ files:
|
|
179
190
|
- lib/rack_warden/views/rw_new_user.html.erb
|
180
191
|
- lib/rack_warden/views/rw_protected.html.erb
|
181
192
|
- rack_warden.gemspec
|
182
|
-
homepage:
|
183
|
-
licenses:
|
193
|
+
homepage: ""
|
194
|
+
licenses:
|
184
195
|
- MIT
|
185
|
-
metadata: {}
|
186
196
|
post_install_message:
|
187
197
|
rdoc_options: []
|
188
|
-
|
198
|
+
|
199
|
+
require_paths:
|
189
200
|
- lib
|
190
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
201
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
202
|
+
none: false
|
203
|
+
requirements:
|
204
|
+
- - ">="
|
205
|
+
- !ruby/object:Gem::Version
|
206
|
+
hash: 3
|
207
|
+
segments:
|
208
|
+
- 0
|
209
|
+
version: "0"
|
210
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
211
|
+
none: false
|
212
|
+
requirements:
|
213
|
+
- - ">="
|
214
|
+
- !ruby/object:Gem::Version
|
215
|
+
hash: 3
|
216
|
+
segments:
|
217
|
+
- 0
|
218
|
+
version: "0"
|
200
219
|
requirements: []
|
220
|
+
|
201
221
|
rubyforge_project:
|
202
|
-
rubygems_version:
|
222
|
+
rubygems_version: 1.8.30
|
203
223
|
signing_key:
|
204
|
-
specification_version:
|
205
|
-
summary: A warden/sinatra mini-app providing authentication and user management for
|
206
|
-
any rack-based app
|
224
|
+
specification_version: 3
|
225
|
+
summary: A warden/sinatra mini-app providing authentication and user management for any rack-based app
|
207
226
|
test_files: []
|
227
|
+
|
checksums.yaml
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
---
|
2
|
-
!binary "U0hBMQ==":
|
3
|
-
metadata.gz: !binary |-
|
4
|
-
NDMyOGMzYTQzNmVlODAwMTRjMDIxZGE4ZmQyNmJjNDRmNDIxNGUwZA==
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
NzIwMTkzZWNhMmFkYjk5MmE4MGRhYzMxODE3MTA1MjMwZWFlMmI4MA==
|
7
|
-
SHA512:
|
8
|
-
metadata.gz: !binary |-
|
9
|
-
YmUzYWRkMDZjZWI4MTBiZmYxZGMyZGE1M2ZmMGI3ZTU0ZDA4NDZkYzAzOThm
|
10
|
-
YjE3NTI1ZmViNDZmMmJkNDBmMTAxZGU4NTUyYWJhNDY0YzRkYzkxODJlYWI5
|
11
|
-
MDA4MTJlNTM0YTk1MDc0NzlmNTQ3YTdhMTk4M2MwNTY2M2E3Njk=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
ZjMyZjgwNzlmYWZkOTllODA2OTVhNDZmMzM4ZjU2ZTlhYzA1ZmIzZTVkMDdl
|
14
|
-
MjMzODU4ZTVjOWYyNGEwNmFmYzY2NGI0ZWVhNjY0MjZmOTlhZTQ0OTAyODYz
|
15
|
-
YTEwMjZkYzdkZDM1M2ZlOTMxZjBiMzBmNjdjMjQyOTM0NTllNDI=
|