dm-devise 1.5.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -3,3 +3,4 @@ coverage/*
3
3
  rdoc/*
4
4
  pkg
5
5
  log
6
+ Gemfile.lock
data/Gemfile CHANGED
@@ -2,15 +2,17 @@ source :rubygems
2
2
 
3
3
  gemspec
4
4
 
5
- gem 'oa-oauth', '~> 0.2.0', :require => 'omniauth/oauth'
6
- gem 'oa-openid', '~> 0.2.0', :require => 'omniauth/openid'
5
+ gem 'omniauth', '~> 1.0.0'
6
+ gem 'omniauth-oauth2', '~> 1.0.0'
7
7
 
8
8
  group :test do
9
+ gem 'omniauth-facebook'
10
+ gem 'omniauth-openid', '~> 1.0.1'
9
11
  gem 'webrat', '0.7.2', :require => false
10
12
  gem 'mocha', :require => false
11
13
  end
12
14
 
13
- DM_VERSION = '~> 1.2.0.rc1'
15
+ DM_VERSION = '~> 1.2.0'
14
16
 
15
17
  group :development do
16
18
  gem 'rails', '~> 3.1.0'
@@ -10,26 +10,26 @@ earlier versions, but it's not been tested (if you try, please let Jared Morgan
10
10
  This README only covers dm-devise specifics. Make sure to read the devise
11
11
  README http://github.com/plataformatec/devise/blob/master/README.rdoc
12
12
 
13
- Last tested against devise master: 2011-09-09, commit ea7f15917f70b82d1ddc9559db968894f2c82cad
14
- Last tested against devise release 1.4.5
13
+ Last tested against devise master: 2011-01-26, commit a71a352822a67f4764a5bd20337c48e8e28ed222
14
+ Last tested against devise release 2.0.0, 1.5.3
15
15
 
16
16
  == Installation
17
17
 
18
18
  Add dm-devise and dm gems to your Gemfile. The following gems are required:
19
19
 
20
- gem 'dm-core', '~> 1.1.0'
21
- gem 'dm-sqlite-adapter', '~> 1.1.0' # or your preferred adapter
22
- gem 'dm-serializer', '~> 1.1.0'
23
- gem 'dm-timestamps', '~> 1.1.0'
24
- gem 'dm-rails', '~> 1.1.0'
25
- gem 'dm-validations', '~> 1.1.0' # Do not include if using data_mapper_active_model
26
- gem 'dm-devise', '~> 1.5.0'
20
+ gem 'dm-core', '~> 1.2.0'
21
+ gem 'dm-sqlite-adapter', '~> 1.2.0' # or your preferred adapter
22
+ gem 'dm-serializer', '~> 1.2.0'
23
+ gem 'dm-timestamps', '~> 1.2.0'
24
+ gem 'dm-rails', '~> 1.2.0'
25
+ gem 'dm-validations', '~> 1.2.0' # Do not include if using data_mapper_active_model
26
+ gem 'dm-devise', '~> 2.0.0'
27
27
 
28
28
  If you're using Active Model validations, do not include dm-validations in your
29
29
  Gemfile.
30
30
 
31
- dm-devise works with versions of DataMapper gems >= 1.0.2 on the 1.0 branch
32
- and >= 1.1.0.rc3 on the 1.1 branch.
31
+ dm-devise works with versions of DataMapper gems >= 1.0.2 on the 1.0 branch,
32
+ >= 1.1.0.rc3 on the 1.1 branch and 1.2.0.
33
33
 
34
34
  Run the generator:
35
35
 
@@ -45,6 +45,14 @@ Add Devise to any of your models using the generator:
45
45
 
46
46
  Read the README for devise at http://github.com/plataformatec/devise/blob/master/README.rdoc
47
47
 
48
+ == Using raise_on_save_failure
49
+
50
+ The default controllers provided by devise will not work correctly if
51
+ raise_on_save_failure is set to true for the devise model. You can customize
52
+ the controllers (See the devise README for details), but I don't know what
53
+ customizations in particular to recommend. See https://github.com/jm81/dm-devise/issues/14
54
+ for discussion.
55
+
48
56
  == Config Options
49
57
 
50
58
  See the generated initializer for all the config options, but dm-devise users
@@ -21,5 +21,5 @@ Gem::Specification.new do |s|
21
21
  s.add_dependency('dm-serializer', '>= 1.0.2', '< 1.3')
22
22
  s.add_dependency('dm-timestamps', '>= 1.0.2', '< 1.3')
23
23
  s.add_dependency('dm-rails', '>= 1.0.3', '< 1.3')
24
- s.add_dependency('devise', '~> 1.3')
24
+ s.add_dependency('devise', '>= 1.3')
25
25
  end
@@ -6,16 +6,12 @@ module Devise
6
6
 
7
7
  module ClassMethods
8
8
  # Hooks for confirmable
9
- def before_create(*args)
10
- wrap_hook(:before, :create, *args)
11
- end
12
-
13
- def after_create(*args)
14
- wrap_hook(:after, :create, *args)
15
- end
16
-
17
- def before_save(*args)
18
- wrap_hook(:before, :save, *args)
9
+ [:before, :after].each do |action|
10
+ [:create, :update, :save].each do |method|
11
+ define_method(:"#{action}_#{method}") do |*args|
12
+ wrap_hook(action, method, *args)
13
+ end
14
+ end
19
15
  end
20
16
 
21
17
  def before_validation(*args)
@@ -26,7 +22,7 @@ module Devise
26
22
  options = args.extract_options!
27
23
 
28
24
  args.each do |callback|
29
- callback_method = :"#{callback}_callback_wrap"
25
+ callback_method = "#{action}_#{method}_#{callback}_callback_wrap".gsub('?', '').to_sym
30
26
  send action, method, callback_method
31
27
  class_eval <<-METHOD, __FILE__, __LINE__ + 1
32
28
  def #{callback_method}
@@ -43,7 +39,7 @@ module Devise
43
39
 
44
40
  def save(options=nil)
45
41
  if options.is_a?(Hash) && options[:validate] == false
46
- save!
42
+ _persist
47
43
  else
48
44
  super()
49
45
  end
@@ -64,6 +60,10 @@ module Devise
64
60
  def email_changed?
65
61
  attribute_dirty?(:email)
66
62
  end
63
+
64
+ def email_was
65
+ original_attributes[:email]
66
+ end
67
67
  end
68
68
  end
69
69
  end
@@ -29,7 +29,7 @@ module Devise
29
29
  if String == type && !options[:length]
30
30
  options[:length] = 255
31
31
  end
32
-
32
+
33
33
  options[:required] ||= false
34
34
 
35
35
  options.delete(:default) if options[:default].nil?
@@ -1,5 +1,5 @@
1
1
  module DataMapper
2
2
  module Devise
3
- VERSION = '1.5.0'.freeze
3
+ VERSION = '2.0.0'.freeze
4
4
  end
5
5
  end
@@ -9,9 +9,52 @@ module DataMapper
9
9
  invoke "data_mapper:model", [name] unless model_exists? && behavior == :invoke
10
10
  end
11
11
 
12
+ def inject_property_types
13
+ inject_into_file model_path, migration_data, :after => "include DataMapper::Resource\n" if model_exists?
14
+ end
15
+
12
16
  def inject_devise_content
13
17
  inject_into_file model_path, model_contents, :after => "include DataMapper::Resource\n" if model_exists?
14
18
  end
19
+
20
+ def migration_data
21
+ <<RUBY
22
+ ## Database authenticatable
23
+ property :email, String, :required => true, :default => "", :length => 255
24
+ property :encrypted_password, String, :required => true, :default => "", :length => 255
25
+
26
+ ## Recoverable
27
+ property :reset_password_token, String
28
+ property :reset_password_sent_at, DateTime
29
+
30
+ ## Rememberable
31
+ property :remember_created_at, DateTime
32
+
33
+ ## Trackable
34
+ property :sign_in_count, Integer, :default => 0
35
+ property :current_sign_in_at, DateTime
36
+ property :last_sign_in_at, DateTime
37
+ property :current_sign_in_ip, String
38
+ property :last_sign_in_ip, String
39
+
40
+ ## Encryptable
41
+ # property :password_salt, String
42
+
43
+ ## Confirmable
44
+ # property :confirmation_token, String
45
+ # property :confirmed_at, DateTime
46
+ # property :confirmation_sent_at, DateTime
47
+ # property :unconfirmed_email, String # Only if using reconfirmable
48
+
49
+ ## Lockable
50
+ # property :failed_attempts, Integer, :default => 0 # Only if lock strategy is :failed_attempts
51
+ # property :unlock_token, String # Only if unlock strategy is :email or :both
52
+ # property :locked_at, DateTime
53
+
54
+ ## Token authenticatable
55
+ # property :authentication_token, String, :length => 255
56
+ RUBY
57
+ end
15
58
  end
16
59
  end
17
60
  end
@@ -4,7 +4,7 @@ class DataMapperCompatibilityTest < ActiveSupport::TestCase
4
4
  def teardown
5
5
  User.raise_on_save_failure = false
6
6
  end
7
-
7
+
8
8
  test 'respects raise_on_save_failure' do
9
9
  User.raise_on_save_failure = true
10
10
  user = new_user(:email => nil)
@@ -7,12 +7,12 @@ if [:data_mapper, :data_mapper_active_model].include?(DEVISE_ORM)
7
7
  tests DataMapper::Generators::DeviseGenerator
8
8
  destination File.expand_path("../../tmp", __FILE__)
9
9
  setup :prepare_destination
10
-
10
+
11
11
  test "all files are properly created" do
12
12
  run_generator %w(monster)
13
13
  assert_file "app/models/monster.rb", /devise/
14
14
  end
15
-
15
+
16
16
  test "all files are properly deleted" do
17
17
  run_generator %w(monster)
18
18
  run_generator %w(monster), :behavior => :revoke
@@ -74,6 +74,10 @@ class DatabaseAuthenticatableTest < ActiveSupport::TestCase
74
74
  user.save
75
75
  assert_equal email.strip, user.email
76
76
  end
77
+
78
+ # :as option is ActiveRecord-specific
79
+ undef :"test_should_update_password_with_valid_current_password_and_:as_option"
80
+ undef :"test_should_update_the_user_without_password_with_:as_option"
77
81
  end
78
82
 
79
83
  class ValidatableTest < ActiveSupport::TestCase
@@ -4,10 +4,30 @@ class Admin
4
4
  include DataMapper::Resource
5
5
 
6
6
  property :id, Serial
7
- property :username, String
7
+
8
+ ## Database authenticatable
9
+ property :email, String, :required => false
10
+ property :encrypted_password, String, :required => false, :length => 255
11
+
12
+ ## Recoverable
13
+ property :reset_password_token, String
14
+ property :reset_password_sent_at, DateTime
15
+
16
+ ## Rememberable
17
+ property :remember_created_at, DateTime
18
+
19
+ ## Confirmable
20
+ property :confirmation_token, String
21
+ property :confirmed_at, DateTime
22
+ property :confirmation_sent_at, DateTime
23
+ property :unconfirmed_email, String # Only if using reconfirmable
24
+
25
+ ## Encryptable
26
+ property :password_salt, String
27
+
28
+ ## Lockable
29
+ property :locked_at, DateTime
8
30
 
9
31
  include SharedAdmin
10
32
  include Shim
11
-
12
- property :remember_token, String
13
33
  end
@@ -6,7 +6,41 @@ class User
6
6
  property :id, Serial
7
7
  property :username, String
8
8
  property :facebook_token, String
9
- property :confirmation_token, String, :writer => :private
9
+
10
+ ## Database authenticatable
11
+ property :email, String, :required => true, :default => ""
12
+ property :encrypted_password, String, :required => true, :default => "", :length => 255
13
+
14
+ ## Recoverable
15
+ property :reset_password_token, String
16
+ property :reset_password_sent_at, DateTime
17
+
18
+ ## Rememberable
19
+ property :remember_created_at, DateTime
20
+
21
+ ## Trackable
22
+ property :sign_in_count, Integer, :default => 0
23
+ property :current_sign_in_at, DateTime
24
+ property :last_sign_in_at, DateTime
25
+ property :current_sign_in_ip, String
26
+ property :last_sign_in_ip, String
27
+
28
+ ## Encryptable
29
+ # property :password_salt, String
30
+
31
+ ## Confirmable
32
+ property :confirmation_token, String, :writer => :private
33
+ property :confirmed_at, DateTime
34
+ property :confirmation_sent_at, DateTime
35
+ # property :unconfirmed_email, String # Only if using reconfirmable
36
+
37
+ ## Lockable
38
+ property :failed_attempts, Integer, :default => 0 # Only if lock strategy is :failed_attempts
39
+ property :unlock_token, String # Only if unlock strategy is :email or :both
40
+ property :locked_at, DateTime
41
+
42
+ # Token authenticatable
43
+ property :authentication_token, String, :length => 255
10
44
  timestamps :at
11
45
 
12
46
  class << self
@@ -22,7 +56,7 @@ class User
22
56
  if VALIDATION_LIB == 'dm-validations'
23
57
  before :valid?, :update_password_confirmation
24
58
 
25
- # DM's validates_confirmation_of requires the confirmation field to be present,
59
+ # DM's validates_confirmation_of requires the confirmation property to be present,
26
60
  # while ActiveModel by default skips the confirmation test if the confirmation
27
61
  # value is nil. This test takes advantage of AM's behavior, so just add the
28
62
  # :password_confirmation value.
metadata CHANGED
@@ -1,167 +1,108 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: dm-devise
3
- version: !ruby/object:Gem::Version
4
- hash: 3
3
+ version: !ruby/object:Gem::Version
4
+ version: 2.0.0
5
5
  prerelease:
6
- segments:
7
- - 1
8
- - 5
9
- - 0
10
- version: 1.5.0
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Jared Morgan
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-09-09 00:00:00 -05:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2012-01-26 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: dm-core
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &78432750 !ruby/object:Gem::Requirement
25
17
  none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 19
30
- segments:
31
- - 1
32
- - 0
33
- - 2
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
34
21
  version: 1.0.2
35
22
  - - <
36
- - !ruby/object:Gem::Version
37
- hash: 9
38
- segments:
39
- - 1
40
- - 3
41
- version: "1.3"
23
+ - !ruby/object:Gem::Version
24
+ version: '1.3'
42
25
  type: :runtime
43
- version_requirements: *id001
44
- - !ruby/object:Gem::Dependency
45
- name: dm-migrations
46
26
  prerelease: false
47
- requirement: &id002 !ruby/object:Gem::Requirement
27
+ version_requirements: *78432750
28
+ - !ruby/object:Gem::Dependency
29
+ name: dm-migrations
30
+ requirement: &77881150 !ruby/object:Gem::Requirement
48
31
  none: false
49
- requirements:
50
- - - ">="
51
- - !ruby/object:Gem::Version
52
- hash: 19
53
- segments:
54
- - 1
55
- - 0
56
- - 2
32
+ requirements:
33
+ - - ! '>='
34
+ - !ruby/object:Gem::Version
57
35
  version: 1.0.2
58
36
  - - <
59
- - !ruby/object:Gem::Version
60
- hash: 9
61
- segments:
62
- - 1
63
- - 3
64
- version: "1.3"
37
+ - !ruby/object:Gem::Version
38
+ version: '1.3'
65
39
  type: :runtime
66
- version_requirements: *id002
67
- - !ruby/object:Gem::Dependency
68
- name: dm-serializer
69
40
  prerelease: false
70
- requirement: &id003 !ruby/object:Gem::Requirement
41
+ version_requirements: *77881150
42
+ - !ruby/object:Gem::Dependency
43
+ name: dm-serializer
44
+ requirement: &77878200 !ruby/object:Gem::Requirement
71
45
  none: false
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- hash: 19
76
- segments:
77
- - 1
78
- - 0
79
- - 2
46
+ requirements:
47
+ - - ! '>='
48
+ - !ruby/object:Gem::Version
80
49
  version: 1.0.2
81
50
  - - <
82
- - !ruby/object:Gem::Version
83
- hash: 9
84
- segments:
85
- - 1
86
- - 3
87
- version: "1.3"
51
+ - !ruby/object:Gem::Version
52
+ version: '1.3'
88
53
  type: :runtime
89
- version_requirements: *id003
90
- - !ruby/object:Gem::Dependency
91
- name: dm-timestamps
92
54
  prerelease: false
93
- requirement: &id004 !ruby/object:Gem::Requirement
55
+ version_requirements: *77878200
56
+ - !ruby/object:Gem::Dependency
57
+ name: dm-timestamps
58
+ requirement: &77877060 !ruby/object:Gem::Requirement
94
59
  none: false
95
- requirements:
96
- - - ">="
97
- - !ruby/object:Gem::Version
98
- hash: 19
99
- segments:
100
- - 1
101
- - 0
102
- - 2
60
+ requirements:
61
+ - - ! '>='
62
+ - !ruby/object:Gem::Version
103
63
  version: 1.0.2
104
64
  - - <
105
- - !ruby/object:Gem::Version
106
- hash: 9
107
- segments:
108
- - 1
109
- - 3
110
- version: "1.3"
65
+ - !ruby/object:Gem::Version
66
+ version: '1.3'
111
67
  type: :runtime
112
- version_requirements: *id004
113
- - !ruby/object:Gem::Dependency
114
- name: dm-rails
115
68
  prerelease: false
116
- requirement: &id005 !ruby/object:Gem::Requirement
69
+ version_requirements: *77877060
70
+ - !ruby/object:Gem::Dependency
71
+ name: dm-rails
72
+ requirement: &77876350 !ruby/object:Gem::Requirement
117
73
  none: false
118
- requirements:
119
- - - ">="
120
- - !ruby/object:Gem::Version
121
- hash: 17
122
- segments:
123
- - 1
124
- - 0
125
- - 3
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
126
77
  version: 1.0.3
127
78
  - - <
128
- - !ruby/object:Gem::Version
129
- hash: 9
130
- segments:
131
- - 1
132
- - 3
133
- version: "1.3"
79
+ - !ruby/object:Gem::Version
80
+ version: '1.3'
134
81
  type: :runtime
135
- version_requirements: *id005
136
- - !ruby/object:Gem::Dependency
137
- name: devise
138
82
  prerelease: false
139
- requirement: &id006 !ruby/object:Gem::Requirement
83
+ version_requirements: *77876350
84
+ - !ruby/object:Gem::Dependency
85
+ name: devise
86
+ requirement: &77875880 !ruby/object:Gem::Requirement
140
87
  none: false
141
- requirements:
142
- - - ~>
143
- - !ruby/object:Gem::Version
144
- hash: 9
145
- segments:
146
- - 1
147
- - 3
148
- version: "1.3"
88
+ requirements:
89
+ - - ! '>='
90
+ - !ruby/object:Gem::Version
91
+ version: '1.3'
149
92
  type: :runtime
150
- version_requirements: *id006
151
- description: dm-devise adds DataMapper support to devise (http://github.com/plataformatec/devise) for authentication support for Rails
93
+ prerelease: false
94
+ version_requirements: *77875880
95
+ description: dm-devise adds DataMapper support to devise (http://github.com/plataformatec/devise)
96
+ for authentication support for Rails
152
97
  email: jmorgan@morgancreative.net
153
98
  executables: []
154
-
155
99
  extensions: []
156
-
157
100
  extra_rdoc_files: []
158
-
159
- files:
101
+ files:
160
102
  - .document
161
103
  - .gitignore
162
104
  - CHANGELOG.rdoc
163
105
  - Gemfile
164
- - Gemfile.lock
165
106
  - LICENSE
166
107
  - README.rdoc
167
108
  - Rakefile
@@ -190,39 +131,28 @@ files:
190
131
  - test/rails_app/config/application.rb
191
132
  - test/rails_app/config/environment.rb
192
133
  - test/test_helper.rb
193
- has_rdoc: true
194
134
  homepage: https://github.com/jm81/dm-devise
195
135
  licenses: []
196
-
197
136
  post_install_message:
198
137
  rdoc_options: []
199
-
200
- require_paths:
138
+ require_paths:
201
139
  - lib
202
- required_ruby_version: !ruby/object:Gem::Requirement
140
+ required_ruby_version: !ruby/object:Gem::Requirement
203
141
  none: false
204
- requirements:
205
- - - ">="
206
- - !ruby/object:Gem::Version
207
- hash: 3
208
- segments:
209
- - 0
210
- version: "0"
211
- required_rubygems_version: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ! '>='
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ required_rubygems_version: !ruby/object:Gem::Requirement
212
147
  none: false
213
- requirements:
214
- - - ">="
215
- - !ruby/object:Gem::Version
216
- hash: 3
217
- segments:
218
- - 0
219
- version: "0"
148
+ requirements:
149
+ - - ! '>='
150
+ - !ruby/object:Gem::Version
151
+ version: '0'
220
152
  requirements: []
221
-
222
153
  rubyforge_project:
223
- rubygems_version: 1.6.2
154
+ rubygems_version: 1.8.10
224
155
  signing_key:
225
156
  specification_version: 3
226
157
  summary: DataMapper support for devise
227
158
  test_files: []
228
-
@@ -1,191 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- dm-devise (1.5.0)
5
- devise (~> 1.3)
6
- dm-core (>= 1.0.2, < 1.3)
7
- dm-migrations (>= 1.0.2, < 1.3)
8
- dm-rails (>= 1.0.3, < 1.3)
9
- dm-serializer (>= 1.0.2, < 1.3)
10
- dm-timestamps (>= 1.0.2, < 1.3)
11
-
12
- GEM
13
- remote: http://rubygems.org/
14
- specs:
15
- actionmailer (3.1.0)
16
- actionpack (= 3.1.0)
17
- mail (~> 2.3.0)
18
- actionpack (3.1.0)
19
- activemodel (= 3.1.0)
20
- activesupport (= 3.1.0)
21
- builder (~> 3.0.0)
22
- erubis (~> 2.7.0)
23
- i18n (~> 0.6)
24
- rack (~> 1.3.2)
25
- rack-cache (~> 1.0.3)
26
- rack-mount (~> 0.8.2)
27
- rack-test (~> 0.6.1)
28
- sprockets (~> 2.0.0)
29
- activemodel (3.1.0)
30
- activesupport (= 3.1.0)
31
- bcrypt-ruby (~> 3.0.0)
32
- builder (~> 3.0.0)
33
- i18n (~> 0.6)
34
- activerecord (3.1.0)
35
- activemodel (= 3.1.0)
36
- activesupport (= 3.1.0)
37
- arel (~> 2.2.1)
38
- tzinfo (~> 0.3.29)
39
- activeresource (3.1.0)
40
- activemodel (= 3.1.0)
41
- activesupport (= 3.1.0)
42
- activesupport (3.1.0)
43
- multi_json (~> 1.0)
44
- addressable (2.2.6)
45
- arel (2.2.1)
46
- bcrypt-ruby (3.0.0)
47
- builder (3.0.0)
48
- data_objects (0.10.6)
49
- addressable (~> 2.1)
50
- devise (1.4.5)
51
- bcrypt-ruby (~> 3.0)
52
- orm_adapter (~> 0.0.3)
53
- warden (~> 1.0.3)
54
- dm-active_model (1.2.0.rc1)
55
- activemodel (~> 3.1.0)
56
- dm-core (~> 1.2.0.rc1)
57
- dm-core (1.2.0.rc1)
58
- addressable (~> 2.2.6)
59
- dm-do-adapter (1.2.0.rc1)
60
- data_objects (~> 0.10.6)
61
- dm-core (~> 1.2.0.rc1)
62
- dm-migrations (1.2.0.rc1)
63
- dm-core (~> 1.2.0.rc1)
64
- dm-rails (1.2.0.rc1)
65
- actionpack (~> 3.1.0)
66
- dm-active_model (~> 1.2.0.rc1)
67
- dm-core (~> 1.2.0.rc1)
68
- railties (~> 3.1.0)
69
- dm-serializer (1.2.0.rc1)
70
- dm-core (~> 1.2.0.rc1)
71
- fastercsv (~> 1.5.4)
72
- json (~> 1.5.4)
73
- json_pure (~> 1.5.4)
74
- multi_json (~> 1.0.3)
75
- dm-sqlite-adapter (1.2.0.rc1)
76
- dm-do-adapter (~> 1.2.0.rc1)
77
- do_sqlite3 (~> 0.10.6)
78
- dm-timestamps (1.2.0.rc1)
79
- dm-core (~> 1.2.0.rc1)
80
- dm-validations (1.2.0.rc1)
81
- dm-core (~> 1.2.0.rc1)
82
- do_sqlite3 (0.10.6)
83
- data_objects (= 0.10.6)
84
- erubis (2.7.0)
85
- faraday (0.6.1)
86
- addressable (~> 2.2.4)
87
- multipart-post (~> 1.1.0)
88
- rack (< 2, >= 1.1.0)
89
- fastercsv (1.5.4)
90
- hike (1.2.1)
91
- i18n (0.6.0)
92
- json (1.5.4)
93
- json_pure (1.5.4)
94
- spruz (~> 0.2.8)
95
- mail (2.3.0)
96
- i18n (>= 0.4.0)
97
- mime-types (~> 1.16)
98
- treetop (~> 1.4.8)
99
- metaclass (0.0.1)
100
- mime-types (1.16)
101
- mocha (0.10.0)
102
- metaclass (~> 0.0.1)
103
- multi_json (1.0.3)
104
- multi_xml (0.2.2)
105
- multipart-post (1.1.3)
106
- nokogiri (1.5.0)
107
- oa-core (0.2.6)
108
- oa-oauth (0.2.6)
109
- faraday (~> 0.6.1)
110
- multi_json (~> 1.0.0)
111
- multi_xml (~> 0.2.2)
112
- oa-core (= 0.2.6)
113
- oauth (~> 0.4.0)
114
- oauth2 (~> 0.4.1)
115
- oa-openid (0.2.6)
116
- oa-core (= 0.2.6)
117
- rack-openid (~> 1.3.1)
118
- ruby-openid-apps-discovery (~> 1.2.0)
119
- oauth (0.4.5)
120
- oauth2 (0.4.1)
121
- faraday (~> 0.6.1)
122
- multi_json (>= 0.0.5)
123
- orm_adapter (0.0.5)
124
- polyglot (0.3.2)
125
- rack (1.3.2)
126
- rack-cache (1.0.3)
127
- rack (>= 0.4)
128
- rack-mount (0.8.3)
129
- rack (>= 1.0.0)
130
- rack-openid (1.3.1)
131
- rack (>= 1.1.0)
132
- ruby-openid (>= 2.1.8)
133
- rack-ssl (1.3.2)
134
- rack
135
- rack-test (0.6.1)
136
- rack (>= 1.0)
137
- rails (3.1.0)
138
- actionmailer (= 3.1.0)
139
- actionpack (= 3.1.0)
140
- activerecord (= 3.1.0)
141
- activeresource (= 3.1.0)
142
- activesupport (= 3.1.0)
143
- bundler (~> 1.0)
144
- railties (= 3.1.0)
145
- railties (3.1.0)
146
- actionpack (= 3.1.0)
147
- activesupport (= 3.1.0)
148
- rack-ssl (~> 1.3.2)
149
- rake (>= 0.8.7)
150
- rdoc (~> 3.4)
151
- thor (~> 0.14.6)
152
- rake (0.9.2)
153
- rdoc (3.9.4)
154
- ruby-openid (2.1.8)
155
- ruby-openid-apps-discovery (1.2.0)
156
- ruby-openid (>= 2.1.7)
157
- sprockets (2.0.0)
158
- hike (~> 1.2)
159
- rack (~> 1.0)
160
- tilt (!= 1.3.0, ~> 1.1)
161
- spruz (0.2.13)
162
- thor (0.14.6)
163
- tilt (1.3.3)
164
- treetop (1.4.10)
165
- polyglot
166
- polyglot (>= 0.3.1)
167
- tzinfo (0.3.29)
168
- warden (1.0.5)
169
- rack (>= 1.0)
170
- webrat (0.7.2)
171
- nokogiri (>= 1.2.0)
172
- rack (>= 1.0)
173
- rack-test (>= 0.5.3)
174
-
175
- PLATFORMS
176
- ruby
177
-
178
- DEPENDENCIES
179
- dm-core (~> 1.2.0.rc1)
180
- dm-devise!
181
- dm-migrations (~> 1.2.0.rc1)
182
- dm-rails (~> 1.2.0.rc1)
183
- dm-serializer (~> 1.2.0.rc1)
184
- dm-sqlite-adapter (~> 1.2.0.rc1)
185
- dm-timestamps (~> 1.2.0.rc1)
186
- dm-validations (~> 1.2.0.rc1)
187
- mocha
188
- oa-oauth (~> 0.2.0)
189
- oa-openid (~> 0.2.0)
190
- rails (~> 3.1.0)
191
- webrat (= 0.7.2)