mongoid 2.0.0.alpha → 2.0.0.beta.5

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.
Files changed (216) hide show
  1. data/lib/mongoid.rb +11 -5
  2. data/lib/mongoid/associations.rb +112 -107
  3. data/lib/mongoid/associations/belongs_to_related.rb +2 -3
  4. data/lib/mongoid/associations/embedded_in.rb +12 -4
  5. data/lib/mongoid/associations/{embed_many.rb → embeds_many.rb} +101 -32
  6. data/lib/mongoid/associations/{embed_one.rb → embeds_one.rb} +10 -10
  7. data/lib/mongoid/associations/has_many_related.rb +51 -5
  8. data/lib/mongoid/associations/has_one_related.rb +9 -5
  9. data/lib/mongoid/associations/meta_data.rb +2 -1
  10. data/lib/mongoid/associations/options.rb +15 -6
  11. data/lib/mongoid/associations/proxy.rb +14 -21
  12. data/lib/mongoid/attributes.rb +34 -13
  13. data/lib/mongoid/callbacks.rb +1 -2
  14. data/lib/mongoid/collection.rb +4 -3
  15. data/lib/mongoid/collections.rb +41 -0
  16. data/lib/mongoid/collections/master.rb +3 -2
  17. data/lib/mongoid/collections/slaves.rb +3 -2
  18. data/lib/mongoid/components.rb +4 -1
  19. data/lib/mongoid/config.rb +163 -13
  20. data/lib/mongoid/contexts.rb +1 -2
  21. data/lib/mongoid/contexts/enumerable.rb +1 -1
  22. data/lib/mongoid/contexts/mongo.rb +1 -1
  23. data/lib/mongoid/contexts/paging.rb +10 -2
  24. data/lib/mongoid/criteria.rb +13 -22
  25. data/lib/mongoid/criterion/exclusion.rb +3 -3
  26. data/lib/mongoid/criterion/inclusion.rb +17 -0
  27. data/lib/mongoid/criterion/optional.rb +1 -1
  28. data/lib/mongoid/dirty.rb +253 -0
  29. data/lib/mongoid/document.rb +40 -85
  30. data/lib/mongoid/errors.rb +48 -1
  31. data/lib/mongoid/extensions.rb +11 -9
  32. data/lib/mongoid/extensions/big_decimal/conversions.rb +2 -2
  33. data/lib/mongoid/extensions/boolean/conversions.rb +8 -2
  34. data/lib/mongoid/extensions/date/conversions.rb +13 -4
  35. data/lib/mongoid/extensions/datetime/conversions.rb +1 -6
  36. data/lib/mongoid/extensions/float/conversions.rb +5 -1
  37. data/lib/mongoid/extensions/hash/assimilation.rb +12 -3
  38. data/lib/mongoid/extensions/hash/conversions.rb +34 -4
  39. data/lib/mongoid/extensions/integer/conversions.rb +5 -1
  40. data/lib/mongoid/extensions/nil/assimilation.rb +4 -0
  41. data/lib/mongoid/extensions/object/conversions.rb +3 -3
  42. data/lib/mongoid/extensions/string/conversions.rb +1 -1
  43. data/lib/mongoid/extensions/symbol/inflections.rb +5 -2
  44. data/lib/mongoid/extensions/time_conversions.rb +35 -0
  45. data/lib/mongoid/factory.rb +2 -1
  46. data/lib/mongoid/field.rb +15 -2
  47. data/lib/mongoid/fields.rb +1 -1
  48. data/lib/mongoid/identity.rb +3 -3
  49. data/lib/mongoid/indexes.rb +3 -3
  50. data/lib/mongoid/matchers.rb +1 -2
  51. data/lib/mongoid/memoization.rb +8 -2
  52. data/lib/mongoid/named_scope.rb +0 -5
  53. data/lib/mongoid/observable.rb +1 -1
  54. data/lib/mongoid/paths.rb +30 -22
  55. data/lib/mongoid/persistence.rb +218 -0
  56. data/lib/mongoid/persistence/command.rb +39 -0
  57. data/lib/mongoid/persistence/insert.rb +47 -0
  58. data/lib/mongoid/persistence/insert_embedded.rb +38 -0
  59. data/lib/mongoid/persistence/remove.rb +39 -0
  60. data/lib/mongoid/persistence/remove_all.rb +37 -0
  61. data/lib/mongoid/persistence/remove_embedded.rb +50 -0
  62. data/lib/mongoid/persistence/update.rb +63 -0
  63. data/lib/mongoid/railtie.rb +53 -0
  64. data/lib/mongoid/railties/database.rake +37 -0
  65. data/lib/mongoid/timestamps.rb +2 -2
  66. data/lib/mongoid/validations.rb +2 -2
  67. data/lib/mongoid/validations/associated.rb +2 -2
  68. data/lib/mongoid/validations/uniqueness.rb +13 -2
  69. data/lib/mongoid/version.rb +4 -0
  70. data/lib/mongoid/versioning.rb +3 -2
  71. data/lib/rails/generators/mongoid/config/config_generator.rb +41 -0
  72. data/lib/rails/generators/mongoid/config/templates/mongoid.yml +24 -0
  73. data/lib/rails/generators/mongoid/model/model_generator.rb +24 -0
  74. data/lib/rails/generators/mongoid/model/templates/model.rb +15 -0
  75. data/lib/rails/generators/mongoid_generator.rb +61 -0
  76. metadata +76 -301
  77. data/.gitignore +0 -6
  78. data/.watchr +0 -29
  79. data/Rakefile +0 -52
  80. data/VERSION +0 -1
  81. data/caliper.yml +0 -4
  82. data/lib/mongoid/collections/mimic.rb +0 -46
  83. data/lib/mongoid/commands.rb +0 -161
  84. data/lib/mongoid/commands/create.rb +0 -19
  85. data/lib/mongoid/commands/delete.rb +0 -16
  86. data/lib/mongoid/commands/delete_all.rb +0 -23
  87. data/lib/mongoid/commands/deletion.rb +0 -18
  88. data/lib/mongoid/commands/destroy.rb +0 -17
  89. data/lib/mongoid/commands/destroy_all.rb +0 -23
  90. data/lib/mongoid/commands/save.rb +0 -29
  91. data/lib/mongoid/extensions/time/conversions.rb +0 -18
  92. data/mongoid.gemspec +0 -408
  93. data/perf/benchmark.rb +0 -77
  94. data/spec/integration/mongoid/associations_spec.rb +0 -340
  95. data/spec/integration/mongoid/attributes_spec.rb +0 -22
  96. data/spec/integration/mongoid/commands_spec.rb +0 -227
  97. data/spec/integration/mongoid/contexts/enumerable_spec.rb +0 -33
  98. data/spec/integration/mongoid/criteria_spec.rb +0 -272
  99. data/spec/integration/mongoid/document_spec.rb +0 -650
  100. data/spec/integration/mongoid/extensions_spec.rb +0 -22
  101. data/spec/integration/mongoid/finders_spec.rb +0 -119
  102. data/spec/integration/mongoid/inheritance_spec.rb +0 -137
  103. data/spec/integration/mongoid/named_scope_spec.rb +0 -46
  104. data/spec/models/address.rb +0 -39
  105. data/spec/models/animal.rb +0 -6
  106. data/spec/models/callbacks.rb +0 -18
  107. data/spec/models/comment.rb +0 -8
  108. data/spec/models/country_code.rb +0 -6
  109. data/spec/models/employer.rb +0 -5
  110. data/spec/models/game.rb +0 -7
  111. data/spec/models/inheritance.rb +0 -56
  112. data/spec/models/location.rb +0 -5
  113. data/spec/models/mixed_drink.rb +0 -4
  114. data/spec/models/name.rb +0 -13
  115. data/spec/models/namespacing.rb +0 -11
  116. data/spec/models/patient.rb +0 -4
  117. data/spec/models/person.rb +0 -99
  118. data/spec/models/pet.rb +0 -7
  119. data/spec/models/pet_owner.rb +0 -6
  120. data/spec/models/phone.rb +0 -7
  121. data/spec/models/post.rb +0 -15
  122. data/spec/models/translation.rb +0 -5
  123. data/spec/models/vet_visit.rb +0 -5
  124. data/spec/spec.opts +0 -3
  125. data/spec/spec_helper.rb +0 -31
  126. data/spec/unit/mongoid/associations/belongs_to_related_spec.rb +0 -145
  127. data/spec/unit/mongoid/associations/embed_many_spec.rb +0 -516
  128. data/spec/unit/mongoid/associations/embed_one_spec.rb +0 -282
  129. data/spec/unit/mongoid/associations/embedded_in_spec.rb +0 -193
  130. data/spec/unit/mongoid/associations/has_many_related_spec.rb +0 -418
  131. data/spec/unit/mongoid/associations/has_one_related_spec.rb +0 -179
  132. data/spec/unit/mongoid/associations/meta_data_spec.rb +0 -88
  133. data/spec/unit/mongoid/associations/options_spec.rb +0 -192
  134. data/spec/unit/mongoid/associations_spec.rb +0 -595
  135. data/spec/unit/mongoid/attributes_spec.rb +0 -507
  136. data/spec/unit/mongoid/callbacks_spec.rb +0 -55
  137. data/spec/unit/mongoid/collection_spec.rb +0 -187
  138. data/spec/unit/mongoid/collections/cyclic_iterator_spec.rb +0 -75
  139. data/spec/unit/mongoid/collections/master_spec.rb +0 -41
  140. data/spec/unit/mongoid/collections/mimic_spec.rb +0 -43
  141. data/spec/unit/mongoid/collections/slaves_spec.rb +0 -81
  142. data/spec/unit/mongoid/commands/create_spec.rb +0 -31
  143. data/spec/unit/mongoid/commands/delete_all_spec.rb +0 -58
  144. data/spec/unit/mongoid/commands/delete_spec.rb +0 -38
  145. data/spec/unit/mongoid/commands/destroy_all_spec.rb +0 -21
  146. data/spec/unit/mongoid/commands/destroy_spec.rb +0 -51
  147. data/spec/unit/mongoid/commands/save_spec.rb +0 -107
  148. data/spec/unit/mongoid/commands_spec.rb +0 -270
  149. data/spec/unit/mongoid/config_spec.rb +0 -172
  150. data/spec/unit/mongoid/contexts/enumerable_spec.rb +0 -421
  151. data/spec/unit/mongoid/contexts/mongo_spec.rb +0 -682
  152. data/spec/unit/mongoid/contexts_spec.rb +0 -25
  153. data/spec/unit/mongoid/criteria_spec.rb +0 -824
  154. data/spec/unit/mongoid/criterion/complex_spec.rb +0 -19
  155. data/spec/unit/mongoid/criterion/exclusion_spec.rb +0 -91
  156. data/spec/unit/mongoid/criterion/inclusion_spec.rb +0 -219
  157. data/spec/unit/mongoid/criterion/optional_spec.rb +0 -319
  158. data/spec/unit/mongoid/cursor_spec.rb +0 -74
  159. data/spec/unit/mongoid/deprecation_spec.rb +0 -24
  160. data/spec/unit/mongoid/document_spec.rb +0 -818
  161. data/spec/unit/mongoid/errors_spec.rb +0 -103
  162. data/spec/unit/mongoid/extensions/array/accessors_spec.rb +0 -50
  163. data/spec/unit/mongoid/extensions/array/assimilation_spec.rb +0 -24
  164. data/spec/unit/mongoid/extensions/array/conversions_spec.rb +0 -35
  165. data/spec/unit/mongoid/extensions/array/parentization_spec.rb +0 -20
  166. data/spec/unit/mongoid/extensions/big_decimal/conversions_spec.rb +0 -22
  167. data/spec/unit/mongoid/extensions/binary/conversions_spec.rb +0 -22
  168. data/spec/unit/mongoid/extensions/boolean/conversions_spec.rb +0 -49
  169. data/spec/unit/mongoid/extensions/date/conversions_spec.rb +0 -102
  170. data/spec/unit/mongoid/extensions/datetime/conversions_spec.rb +0 -67
  171. data/spec/unit/mongoid/extensions/float/conversions_spec.rb +0 -61
  172. data/spec/unit/mongoid/extensions/hash/accessors_spec.rb +0 -184
  173. data/spec/unit/mongoid/extensions/hash/assimilation_spec.rb +0 -46
  174. data/spec/unit/mongoid/extensions/hash/conversions_spec.rb +0 -21
  175. data/spec/unit/mongoid/extensions/hash/criteria_helpers_spec.rb +0 -17
  176. data/spec/unit/mongoid/extensions/hash/scoping_spec.rb +0 -14
  177. data/spec/unit/mongoid/extensions/integer/conversions_spec.rb +0 -61
  178. data/spec/unit/mongoid/extensions/nil/assimilation_spec.rb +0 -24
  179. data/spec/unit/mongoid/extensions/object/conversions_spec.rb +0 -57
  180. data/spec/unit/mongoid/extensions/proc/scoping_spec.rb +0 -34
  181. data/spec/unit/mongoid/extensions/string/conversions_spec.rb +0 -17
  182. data/spec/unit/mongoid/extensions/string/inflections_spec.rb +0 -208
  183. data/spec/unit/mongoid/extensions/symbol/inflections_spec.rb +0 -91
  184. data/spec/unit/mongoid/extensions/time/conversions_spec.rb +0 -70
  185. data/spec/unit/mongoid/extras_spec.rb +0 -102
  186. data/spec/unit/mongoid/factory_spec.rb +0 -31
  187. data/spec/unit/mongoid/field_spec.rb +0 -143
  188. data/spec/unit/mongoid/fields_spec.rb +0 -181
  189. data/spec/unit/mongoid/finders_spec.rb +0 -404
  190. data/spec/unit/mongoid/identity_spec.rb +0 -109
  191. data/spec/unit/mongoid/indexes_spec.rb +0 -93
  192. data/spec/unit/mongoid/javascript_spec.rb +0 -48
  193. data/spec/unit/mongoid/matchers/all_spec.rb +0 -27
  194. data/spec/unit/mongoid/matchers/default_spec.rb +0 -27
  195. data/spec/unit/mongoid/matchers/exists_spec.rb +0 -56
  196. data/spec/unit/mongoid/matchers/gt_spec.rb +0 -39
  197. data/spec/unit/mongoid/matchers/gte_spec.rb +0 -49
  198. data/spec/unit/mongoid/matchers/in_spec.rb +0 -27
  199. data/spec/unit/mongoid/matchers/lt_spec.rb +0 -39
  200. data/spec/unit/mongoid/matchers/lte_spec.rb +0 -49
  201. data/spec/unit/mongoid/matchers/ne_spec.rb +0 -27
  202. data/spec/unit/mongoid/matchers/nin_spec.rb +0 -27
  203. data/spec/unit/mongoid/matchers/size_spec.rb +0 -27
  204. data/spec/unit/mongoid/matchers_spec.rb +0 -329
  205. data/spec/unit/mongoid/memoization_spec.rb +0 -75
  206. data/spec/unit/mongoid/named_scope_spec.rb +0 -123
  207. data/spec/unit/mongoid/observable_spec.rb +0 -46
  208. data/spec/unit/mongoid/paths_spec.rb +0 -124
  209. data/spec/unit/mongoid/scope_spec.rb +0 -240
  210. data/spec/unit/mongoid/state_spec.rb +0 -83
  211. data/spec/unit/mongoid/timestamps_spec.rb +0 -25
  212. data/spec/unit/mongoid/validations/associated_spec.rb +0 -103
  213. data/spec/unit/mongoid/validations/uniqueness_spec.rb +0 -47
  214. data/spec/unit/mongoid/validations_spec.rb +0 -190
  215. data/spec/unit/mongoid/versioning_spec.rb +0 -41
  216. data/spec/unit/mongoid_spec.rb +0 -46
@@ -0,0 +1,24 @@
1
+ defaults: &defaults
2
+ host: localhost
3
+ # slaves:
4
+ # - host: slave1.local
5
+ # port: 27018
6
+ # - host: slave2.local
7
+ # port: 27019
8
+
9
+ development:
10
+ <<: *defaults
11
+ database: <%= database_name || app_name %>_development
12
+
13
+ test:
14
+ <<: *defaults
15
+ database: <%= database_name || app_name %>_test
16
+
17
+ # set these environment variables on your prod server
18
+ production:
19
+ <<: *defaults
20
+ host: <%%= ENV['MONGOID_HOST'] %>
21
+ port: <%%= ENV['MONGOID_PORT'] %>
22
+ username: <%%= ENV['MONGOID_USERNAME'] %>
23
+ password: <%%= ENV['MONGOID_PASSWORD'] %>
24
+ database: <%%= ENV['MONGOID_DATABASE'] %>
@@ -0,0 +1,24 @@
1
+ # encoding: utf-8
2
+ require "rails/generators/mongoid_generator"
3
+
4
+ module Mongoid #:nodoc:
5
+ module Generators #:nodoc:
6
+ class ModelGenerator < Base #:nodoc:
7
+
8
+ desc "Creates a Mongoid model"
9
+ argument :attributes, :type => :array, :default => [], :banner => "field:type field:type"
10
+
11
+ check_class_collision
12
+
13
+ class_option :timestamps, :type => :boolean
14
+ class_option :parent, :type => :string, :desc => "The parent class for the generated model"
15
+ class_option :versioning, :type => :boolean, :default => false, :desc => "Enable mongoid versioning"
16
+
17
+ def create_model_file
18
+ template "model.rb", File.join("app/models", class_path, "#{file_name}.rb")
19
+ end
20
+
21
+ hook_for :test_framework
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,15 @@
1
+ class <%= class_name %><%= " < #{options[:parent].classify}" if options[:parent] %>
2
+ <% unless options[:parent] -%>
3
+ include Mongoid::Document
4
+ <% end -%>
5
+ <% if options[:timestamps] -%>
6
+ include Mongoid::Timestamps
7
+ <% end -%>
8
+ <%= 'include Mongoid::Versioning' if options[:versioning] -%>
9
+ <% attributes.reject{|attr| attr.reference?}.each do |attribute| -%>
10
+ field :<%= attribute.name %>, :type => <%= attribute.type_class %>
11
+ <% end -%>
12
+ <% attributes.select{|attr| attr.reference? }.each do |attribute| -%>
13
+ embedded_in :<%= attribute.name%>, :inverse_of => :<%= class_name.tableize %>
14
+ <% end -%>
15
+ end
@@ -0,0 +1,61 @@
1
+ # encoding: utf-8
2
+ require "rails/generators/named_base"
3
+ require "rails/generators/active_model"
4
+
5
+ module Mongoid #:nodoc:
6
+ module Generators #:nodoc:
7
+ class Base < ::Rails::Generators::NamedBase #:nodoc:
8
+
9
+ def self.source_root
10
+ @_mongoid_source_root ||=
11
+ File.expand_path("../#{base_name}/#{generator_name}/templates", __FILE__)
12
+ end
13
+ end
14
+
15
+ class ActiveModel < ::Rails::Generators::ActiveModel #:nodoc:
16
+ def self.all(klass)
17
+ "#{klass}.all"
18
+ end
19
+
20
+ def self.find(klass, params=nil)
21
+ "#{klass}.find(#{params})"
22
+ end
23
+
24
+ def self.build(klass, params=nil)
25
+ if params
26
+ "#{klass}.new(#{params})"
27
+ else
28
+ "#{klass}.new"
29
+ end
30
+ end
31
+
32
+ def save
33
+ "#{name}.save"
34
+ end
35
+
36
+ def update_attributes(params=nil)
37
+ "#{name}.update_attributes(#{params})"
38
+ end
39
+
40
+ def errors
41
+ "#{name}.errors"
42
+ end
43
+
44
+ def destroy
45
+ "#{name}.destroy"
46
+ end
47
+ end
48
+ end
49
+ end
50
+
51
+ module Rails
52
+ module Generators
53
+ class GeneratedAttribute #:nodoc:
54
+ def type_class
55
+ return "Time" if type.to_s == "datetime"
56
+ return "String" if type.to_s == "text"
57
+ return type.to_s.camelcase
58
+ end
59
+ end
60
+ end
61
+ end
metadata CHANGED
@@ -6,8 +6,9 @@ version: !ruby/object:Gem::Version
6
6
  - 2
7
7
  - 0
8
8
  - 0
9
- - alpha
10
- version: 2.0.0.alpha
9
+ - beta
10
+ - 5
11
+ version: 2.0.0.beta.5
11
12
  platform: ruby
12
13
  authors:
13
14
  - Durran Jordan
@@ -15,7 +16,7 @@ autorequire:
15
16
  bindir: bin
16
17
  cert_chain: []
17
18
 
18
- date: 2010-03-24 00:00:00 -05:00
19
+ date: 2010-05-17 00:00:00 -04:00
19
20
  default_executable:
20
21
  dependencies:
21
22
  - !ruby/object:Gem::Dependency
@@ -23,13 +24,14 @@ dependencies:
23
24
  prerelease: false
24
25
  requirement: &id001 !ruby/object:Gem::Requirement
25
26
  requirements:
26
- - - ">="
27
+ - - "="
27
28
  - !ruby/object:Gem::Version
28
29
  segments:
29
30
  - 3
30
31
  - 0
31
- - pre
32
- version: 3.0.pre
32
+ - 0
33
+ - beta3
34
+ version: 3.0.0.beta3
33
35
  type: :runtime
34
36
  version_requirements: *id001
35
37
  - !ruby/object:Gem::Dependency
@@ -37,7 +39,7 @@ dependencies:
37
39
  prerelease: false
38
40
  requirement: &id002 !ruby/object:Gem::Requirement
39
41
  requirements:
40
- - - ">="
42
+ - - "="
41
43
  - !ruby/object:Gem::Version
42
44
  segments:
43
45
  - 3
@@ -51,21 +53,35 @@ dependencies:
51
53
  prerelease: false
52
54
  requirement: &id003 !ruby/object:Gem::Requirement
53
55
  requirements:
54
- - - ">="
56
+ - - ~>
55
57
  - !ruby/object:Gem::Version
56
58
  segments:
59
+ - 1
57
60
  - 0
58
- - 19
59
61
  - 1
60
- version: 0.19.1
62
+ version: 1.0.1
61
63
  type: :runtime
62
64
  version_requirements: *id003
63
65
  - !ruby/object:Gem::Dependency
64
- name: rspec
66
+ name: bson
65
67
  prerelease: false
66
68
  requirement: &id004 !ruby/object:Gem::Requirement
67
69
  requirements:
68
- - - ">="
70
+ - - ~>
71
+ - !ruby/object:Gem::Version
72
+ segments:
73
+ - 1
74
+ - 0
75
+ - 1
76
+ version: 1.0.1
77
+ type: :runtime
78
+ version_requirements: *id004
79
+ - !ruby/object:Gem::Dependency
80
+ name: rspec
81
+ prerelease: false
82
+ requirement: &id005 !ruby/object:Gem::Requirement
83
+ requirements:
84
+ - - "="
69
85
  - !ruby/object:Gem::Version
70
86
  segments:
71
87
  - 1
@@ -73,13 +89,13 @@ dependencies:
73
89
  - 0
74
90
  version: 1.3.0
75
91
  type: :development
76
- version_requirements: *id004
92
+ version_requirements: *id005
77
93
  - !ruby/object:Gem::Dependency
78
94
  name: mocha
79
95
  prerelease: false
80
- requirement: &id005 !ruby/object:Gem::Requirement
96
+ requirement: &id006 !ruby/object:Gem::Requirement
81
97
  requirements:
82
- - - ">="
98
+ - - "="
83
99
  - !ruby/object:Gem::Version
84
100
  segments:
85
101
  - 0
@@ -87,57 +103,42 @@ dependencies:
87
103
  - 8
88
104
  version: 0.9.8
89
105
  type: :development
90
- version_requirements: *id005
91
- description:
92
- email: durran@gmail.com
106
+ version_requirements: *id006
107
+ description: Mongoid is an ODM (Object Document Mapper) Framework for MongoDB, written in Ruby.
108
+ email:
109
+ - durran@gmail.com
93
110
  executables: []
94
111
 
95
112
  extensions: []
96
113
 
97
- extra_rdoc_files:
98
- - README.rdoc
114
+ extra_rdoc_files: []
115
+
99
116
  files:
100
- - .gitignore
101
- - .watchr
102
- - MIT_LICENSE
103
- - README.rdoc
104
- - Rakefile
105
- - VERSION
106
- - caliper.yml
107
- - lib/mongoid.rb
108
- - lib/mongoid/associations.rb
109
117
  - lib/mongoid/associations/belongs_to_related.rb
110
- - lib/mongoid/associations/embed_many.rb
111
- - lib/mongoid/associations/embed_one.rb
112
118
  - lib/mongoid/associations/embedded_in.rb
119
+ - lib/mongoid/associations/embeds_many.rb
120
+ - lib/mongoid/associations/embeds_one.rb
113
121
  - lib/mongoid/associations/has_many_related.rb
114
122
  - lib/mongoid/associations/has_one_related.rb
115
123
  - lib/mongoid/associations/meta_data.rb
116
124
  - lib/mongoid/associations/options.rb
117
125
  - lib/mongoid/associations/proxy.rb
126
+ - lib/mongoid/associations.rb
118
127
  - lib/mongoid/attributes.rb
119
128
  - lib/mongoid/callbacks.rb
120
129
  - lib/mongoid/collection.rb
121
130
  - lib/mongoid/collections/cyclic_iterator.rb
122
131
  - lib/mongoid/collections/master.rb
123
- - lib/mongoid/collections/mimic.rb
124
132
  - lib/mongoid/collections/operations.rb
125
133
  - lib/mongoid/collections/slaves.rb
126
- - lib/mongoid/commands.rb
127
- - lib/mongoid/commands/create.rb
128
- - lib/mongoid/commands/delete.rb
129
- - lib/mongoid/commands/delete_all.rb
130
- - lib/mongoid/commands/deletion.rb
131
- - lib/mongoid/commands/destroy.rb
132
- - lib/mongoid/commands/destroy_all.rb
133
- - lib/mongoid/commands/save.rb
134
+ - lib/mongoid/collections.rb
134
135
  - lib/mongoid/components.rb
135
136
  - lib/mongoid/config.rb
136
- - lib/mongoid/contexts.rb
137
137
  - lib/mongoid/contexts/enumerable.rb
138
138
  - lib/mongoid/contexts/ids.rb
139
139
  - lib/mongoid/contexts/mongo.rb
140
140
  - lib/mongoid/contexts/paging.rb
141
+ - lib/mongoid/contexts.rb
141
142
  - lib/mongoid/criteria.rb
142
143
  - lib/mongoid/criterion/complex.rb
143
144
  - lib/mongoid/criterion/exclusion.rb
@@ -145,9 +146,9 @@ files:
145
146
  - lib/mongoid/criterion/optional.rb
146
147
  - lib/mongoid/cursor.rb
147
148
  - lib/mongoid/deprecation.rb
149
+ - lib/mongoid/dirty.rb
148
150
  - lib/mongoid/document.rb
149
151
  - lib/mongoid/errors.rb
150
- - lib/mongoid/extensions.rb
151
152
  - lib/mongoid/extensions/array/accessors.rb
152
153
  - lib/mongoid/extensions/array/aliasing.rb
153
154
  - lib/mongoid/extensions/array/assimilation.rb
@@ -172,7 +173,8 @@ files:
172
173
  - lib/mongoid/extensions/string/conversions.rb
173
174
  - lib/mongoid/extensions/string/inflections.rb
174
175
  - lib/mongoid/extensions/symbol/inflections.rb
175
- - lib/mongoid/extensions/time/conversions.rb
176
+ - lib/mongoid/extensions/time_conversions.rb
177
+ - lib/mongoid/extensions.rb
176
178
  - lib/mongoid/extras.rb
177
179
  - lib/mongoid/factory.rb
178
180
  - lib/mongoid/field.rb
@@ -180,9 +182,8 @@ files:
180
182
  - lib/mongoid/finders.rb
181
183
  - lib/mongoid/identity.rb
182
184
  - lib/mongoid/indexes.rb
183
- - lib/mongoid/javascript.rb
184
185
  - lib/mongoid/javascript/functions.yml
185
- - lib/mongoid/matchers.rb
186
+ - lib/mongoid/javascript.rb
186
187
  - lib/mongoid/matchers/all.rb
187
188
  - lib/mongoid/matchers/default.rb
188
189
  - lib/mongoid/matchers/exists.rb
@@ -194,150 +195,45 @@ files:
194
195
  - lib/mongoid/matchers/ne.rb
195
196
  - lib/mongoid/matchers/nin.rb
196
197
  - lib/mongoid/matchers/size.rb
198
+ - lib/mongoid/matchers.rb
197
199
  - lib/mongoid/memoization.rb
198
200
  - lib/mongoid/named_scope.rb
199
201
  - lib/mongoid/observable.rb
200
202
  - lib/mongoid/paths.rb
203
+ - lib/mongoid/persistence/command.rb
204
+ - lib/mongoid/persistence/insert.rb
205
+ - lib/mongoid/persistence/insert_embedded.rb
206
+ - lib/mongoid/persistence/remove.rb
207
+ - lib/mongoid/persistence/remove_all.rb
208
+ - lib/mongoid/persistence/remove_embedded.rb
209
+ - lib/mongoid/persistence/update.rb
210
+ - lib/mongoid/persistence.rb
211
+ - lib/mongoid/railtie.rb
212
+ - lib/mongoid/railties/database.rake
201
213
  - lib/mongoid/scope.rb
202
214
  - lib/mongoid/state.rb
203
215
  - lib/mongoid/timestamps.rb
204
- - lib/mongoid/validations.rb
205
216
  - lib/mongoid/validations/associated.rb
206
217
  - lib/mongoid/validations/locale/en.yml
207
218
  - lib/mongoid/validations/uniqueness.rb
219
+ - lib/mongoid/validations.rb
220
+ - lib/mongoid/version.rb
208
221
  - lib/mongoid/versioning.rb
209
- - mongoid.gemspec
210
- - perf/benchmark.rb
211
- - spec/integration/mongoid/associations_spec.rb
212
- - spec/integration/mongoid/attributes_spec.rb
213
- - spec/integration/mongoid/commands_spec.rb
214
- - spec/integration/mongoid/contexts/enumerable_spec.rb
215
- - spec/integration/mongoid/criteria_spec.rb
216
- - spec/integration/mongoid/document_spec.rb
217
- - spec/integration/mongoid/extensions_spec.rb
218
- - spec/integration/mongoid/finders_spec.rb
219
- - spec/integration/mongoid/inheritance_spec.rb
220
- - spec/integration/mongoid/named_scope_spec.rb
221
- - spec/models/address.rb
222
- - spec/models/animal.rb
223
- - spec/models/callbacks.rb
224
- - spec/models/comment.rb
225
- - spec/models/country_code.rb
226
- - spec/models/employer.rb
227
- - spec/models/game.rb
228
- - spec/models/inheritance.rb
229
- - spec/models/location.rb
230
- - spec/models/mixed_drink.rb
231
- - spec/models/name.rb
232
- - spec/models/namespacing.rb
233
- - spec/models/patient.rb
234
- - spec/models/person.rb
235
- - spec/models/pet.rb
236
- - spec/models/pet_owner.rb
237
- - spec/models/phone.rb
238
- - spec/models/post.rb
239
- - spec/models/translation.rb
240
- - spec/models/vet_visit.rb
241
- - spec/spec.opts
242
- - spec/spec_helper.rb
243
- - spec/unit/mongoid/associations/belongs_to_related_spec.rb
244
- - spec/unit/mongoid/associations/embed_many_spec.rb
245
- - spec/unit/mongoid/associations/embed_one_spec.rb
246
- - spec/unit/mongoid/associations/embedded_in_spec.rb
247
- - spec/unit/mongoid/associations/has_many_related_spec.rb
248
- - spec/unit/mongoid/associations/has_one_related_spec.rb
249
- - spec/unit/mongoid/associations/meta_data_spec.rb
250
- - spec/unit/mongoid/associations/options_spec.rb
251
- - spec/unit/mongoid/associations_spec.rb
252
- - spec/unit/mongoid/attributes_spec.rb
253
- - spec/unit/mongoid/callbacks_spec.rb
254
- - spec/unit/mongoid/collection_spec.rb
255
- - spec/unit/mongoid/collections/cyclic_iterator_spec.rb
256
- - spec/unit/mongoid/collections/master_spec.rb
257
- - spec/unit/mongoid/collections/mimic_spec.rb
258
- - spec/unit/mongoid/collections/slaves_spec.rb
259
- - spec/unit/mongoid/commands/create_spec.rb
260
- - spec/unit/mongoid/commands/delete_all_spec.rb
261
- - spec/unit/mongoid/commands/delete_spec.rb
262
- - spec/unit/mongoid/commands/destroy_all_spec.rb
263
- - spec/unit/mongoid/commands/destroy_spec.rb
264
- - spec/unit/mongoid/commands/save_spec.rb
265
- - spec/unit/mongoid/commands_spec.rb
266
- - spec/unit/mongoid/config_spec.rb
267
- - spec/unit/mongoid/contexts/enumerable_spec.rb
268
- - spec/unit/mongoid/contexts/mongo_spec.rb
269
- - spec/unit/mongoid/contexts_spec.rb
270
- - spec/unit/mongoid/criteria_spec.rb
271
- - spec/unit/mongoid/criterion/complex_spec.rb
272
- - spec/unit/mongoid/criterion/exclusion_spec.rb
273
- - spec/unit/mongoid/criterion/inclusion_spec.rb
274
- - spec/unit/mongoid/criterion/optional_spec.rb
275
- - spec/unit/mongoid/cursor_spec.rb
276
- - spec/unit/mongoid/deprecation_spec.rb
277
- - spec/unit/mongoid/document_spec.rb
278
- - spec/unit/mongoid/errors_spec.rb
279
- - spec/unit/mongoid/extensions/array/accessors_spec.rb
280
- - spec/unit/mongoid/extensions/array/assimilation_spec.rb
281
- - spec/unit/mongoid/extensions/array/conversions_spec.rb
282
- - spec/unit/mongoid/extensions/array/parentization_spec.rb
283
- - spec/unit/mongoid/extensions/big_decimal/conversions_spec.rb
284
- - spec/unit/mongoid/extensions/binary/conversions_spec.rb
285
- - spec/unit/mongoid/extensions/boolean/conversions_spec.rb
286
- - spec/unit/mongoid/extensions/date/conversions_spec.rb
287
- - spec/unit/mongoid/extensions/datetime/conversions_spec.rb
288
- - spec/unit/mongoid/extensions/float/conversions_spec.rb
289
- - spec/unit/mongoid/extensions/hash/accessors_spec.rb
290
- - spec/unit/mongoid/extensions/hash/assimilation_spec.rb
291
- - spec/unit/mongoid/extensions/hash/conversions_spec.rb
292
- - spec/unit/mongoid/extensions/hash/criteria_helpers_spec.rb
293
- - spec/unit/mongoid/extensions/hash/scoping_spec.rb
294
- - spec/unit/mongoid/extensions/integer/conversions_spec.rb
295
- - spec/unit/mongoid/extensions/nil/assimilation_spec.rb
296
- - spec/unit/mongoid/extensions/object/conversions_spec.rb
297
- - spec/unit/mongoid/extensions/proc/scoping_spec.rb
298
- - spec/unit/mongoid/extensions/string/conversions_spec.rb
299
- - spec/unit/mongoid/extensions/string/inflections_spec.rb
300
- - spec/unit/mongoid/extensions/symbol/inflections_spec.rb
301
- - spec/unit/mongoid/extensions/time/conversions_spec.rb
302
- - spec/unit/mongoid/extras_spec.rb
303
- - spec/unit/mongoid/factory_spec.rb
304
- - spec/unit/mongoid/field_spec.rb
305
- - spec/unit/mongoid/fields_spec.rb
306
- - spec/unit/mongoid/finders_spec.rb
307
- - spec/unit/mongoid/identity_spec.rb
308
- - spec/unit/mongoid/indexes_spec.rb
309
- - spec/unit/mongoid/javascript_spec.rb
310
- - spec/unit/mongoid/matchers/all_spec.rb
311
- - spec/unit/mongoid/matchers/default_spec.rb
312
- - spec/unit/mongoid/matchers/exists_spec.rb
313
- - spec/unit/mongoid/matchers/gt_spec.rb
314
- - spec/unit/mongoid/matchers/gte_spec.rb
315
- - spec/unit/mongoid/matchers/in_spec.rb
316
- - spec/unit/mongoid/matchers/lt_spec.rb
317
- - spec/unit/mongoid/matchers/lte_spec.rb
318
- - spec/unit/mongoid/matchers/ne_spec.rb
319
- - spec/unit/mongoid/matchers/nin_spec.rb
320
- - spec/unit/mongoid/matchers/size_spec.rb
321
- - spec/unit/mongoid/matchers_spec.rb
322
- - spec/unit/mongoid/memoization_spec.rb
323
- - spec/unit/mongoid/named_scope_spec.rb
324
- - spec/unit/mongoid/observable_spec.rb
325
- - spec/unit/mongoid/paths_spec.rb
326
- - spec/unit/mongoid/scope_spec.rb
327
- - spec/unit/mongoid/state_spec.rb
328
- - spec/unit/mongoid/timestamps_spec.rb
329
- - spec/unit/mongoid/validations/associated_spec.rb
330
- - spec/unit/mongoid/validations/uniqueness_spec.rb
331
- - spec/unit/mongoid/validations_spec.rb
332
- - spec/unit/mongoid/versioning_spec.rb
333
- - spec/unit/mongoid_spec.rb
222
+ - lib/mongoid.rb
223
+ - lib/rails/generators/mongoid/config/config_generator.rb
224
+ - lib/rails/generators/mongoid/config/templates/mongoid.yml
225
+ - lib/rails/generators/mongoid/model/model_generator.rb
226
+ - lib/rails/generators/mongoid/model/templates/model.rb
227
+ - lib/rails/generators/mongoid_generator.rb
228
+ - MIT_LICENSE
229
+ - README.rdoc
334
230
  has_rdoc: true
335
231
  homepage: http://mongoid.org
336
232
  licenses: []
337
233
 
338
234
  post_install_message:
339
- rdoc_options:
340
- - --charset=UTF-8
235
+ rdoc_options: []
236
+
341
237
  require_paths:
342
238
  - lib
343
239
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -349,140 +245,19 @@ required_ruby_version: !ruby/object:Gem::Requirement
349
245
  version: "0"
350
246
  required_rubygems_version: !ruby/object:Gem::Requirement
351
247
  requirements:
352
- - - ">"
248
+ - - ">="
353
249
  - !ruby/object:Gem::Version
354
250
  segments:
355
251
  - 1
356
252
  - 3
357
- - 1
358
- version: 1.3.1
253
+ - 6
254
+ version: 1.3.6
359
255
  requirements: []
360
256
 
361
- rubyforge_project:
257
+ rubyforge_project: mongoid
362
258
  rubygems_version: 1.3.6
363
259
  signing_key:
364
260
  specification_version: 3
365
- summary: ODM framework for MongoDB
366
- test_files:
367
- - spec/integration/mongoid/associations_spec.rb
368
- - spec/integration/mongoid/attributes_spec.rb
369
- - spec/integration/mongoid/commands_spec.rb
370
- - spec/integration/mongoid/contexts/enumerable_spec.rb
371
- - spec/integration/mongoid/criteria_spec.rb
372
- - spec/integration/mongoid/document_spec.rb
373
- - spec/integration/mongoid/extensions_spec.rb
374
- - spec/integration/mongoid/finders_spec.rb
375
- - spec/integration/mongoid/inheritance_spec.rb
376
- - spec/integration/mongoid/named_scope_spec.rb
377
- - spec/models/address.rb
378
- - spec/models/animal.rb
379
- - spec/models/callbacks.rb
380
- - spec/models/comment.rb
381
- - spec/models/country_code.rb
382
- - spec/models/employer.rb
383
- - spec/models/game.rb
384
- - spec/models/inheritance.rb
385
- - spec/models/location.rb
386
- - spec/models/mixed_drink.rb
387
- - spec/models/name.rb
388
- - spec/models/namespacing.rb
389
- - spec/models/patient.rb
390
- - spec/models/person.rb
391
- - spec/models/pet.rb
392
- - spec/models/pet_owner.rb
393
- - spec/models/phone.rb
394
- - spec/models/post.rb
395
- - spec/models/translation.rb
396
- - spec/models/vet_visit.rb
397
- - spec/spec_helper.rb
398
- - spec/unit/mongoid/associations/belongs_to_related_spec.rb
399
- - spec/unit/mongoid/associations/embed_many_spec.rb
400
- - spec/unit/mongoid/associations/embed_one_spec.rb
401
- - spec/unit/mongoid/associations/embedded_in_spec.rb
402
- - spec/unit/mongoid/associations/has_many_related_spec.rb
403
- - spec/unit/mongoid/associations/has_one_related_spec.rb
404
- - spec/unit/mongoid/associations/meta_data_spec.rb
405
- - spec/unit/mongoid/associations/options_spec.rb
406
- - spec/unit/mongoid/associations_spec.rb
407
- - spec/unit/mongoid/attributes_spec.rb
408
- - spec/unit/mongoid/callbacks_spec.rb
409
- - spec/unit/mongoid/collection_spec.rb
410
- - spec/unit/mongoid/collections/cyclic_iterator_spec.rb
411
- - spec/unit/mongoid/collections/master_spec.rb
412
- - spec/unit/mongoid/collections/mimic_spec.rb
413
- - spec/unit/mongoid/collections/slaves_spec.rb
414
- - spec/unit/mongoid/commands/create_spec.rb
415
- - spec/unit/mongoid/commands/delete_all_spec.rb
416
- - spec/unit/mongoid/commands/delete_spec.rb
417
- - spec/unit/mongoid/commands/destroy_all_spec.rb
418
- - spec/unit/mongoid/commands/destroy_spec.rb
419
- - spec/unit/mongoid/commands/save_spec.rb
420
- - spec/unit/mongoid/commands_spec.rb
421
- - spec/unit/mongoid/config_spec.rb
422
- - spec/unit/mongoid/contexts/enumerable_spec.rb
423
- - spec/unit/mongoid/contexts/mongo_spec.rb
424
- - spec/unit/mongoid/contexts_spec.rb
425
- - spec/unit/mongoid/criteria_spec.rb
426
- - spec/unit/mongoid/criterion/complex_spec.rb
427
- - spec/unit/mongoid/criterion/exclusion_spec.rb
428
- - spec/unit/mongoid/criterion/inclusion_spec.rb
429
- - spec/unit/mongoid/criterion/optional_spec.rb
430
- - spec/unit/mongoid/cursor_spec.rb
431
- - spec/unit/mongoid/deprecation_spec.rb
432
- - spec/unit/mongoid/document_spec.rb
433
- - spec/unit/mongoid/errors_spec.rb
434
- - spec/unit/mongoid/extensions/array/accessors_spec.rb
435
- - spec/unit/mongoid/extensions/array/assimilation_spec.rb
436
- - spec/unit/mongoid/extensions/array/conversions_spec.rb
437
- - spec/unit/mongoid/extensions/array/parentization_spec.rb
438
- - spec/unit/mongoid/extensions/big_decimal/conversions_spec.rb
439
- - spec/unit/mongoid/extensions/binary/conversions_spec.rb
440
- - spec/unit/mongoid/extensions/boolean/conversions_spec.rb
441
- - spec/unit/mongoid/extensions/date/conversions_spec.rb
442
- - spec/unit/mongoid/extensions/datetime/conversions_spec.rb
443
- - spec/unit/mongoid/extensions/float/conversions_spec.rb
444
- - spec/unit/mongoid/extensions/hash/accessors_spec.rb
445
- - spec/unit/mongoid/extensions/hash/assimilation_spec.rb
446
- - spec/unit/mongoid/extensions/hash/conversions_spec.rb
447
- - spec/unit/mongoid/extensions/hash/criteria_helpers_spec.rb
448
- - spec/unit/mongoid/extensions/hash/scoping_spec.rb
449
- - spec/unit/mongoid/extensions/integer/conversions_spec.rb
450
- - spec/unit/mongoid/extensions/nil/assimilation_spec.rb
451
- - spec/unit/mongoid/extensions/object/conversions_spec.rb
452
- - spec/unit/mongoid/extensions/proc/scoping_spec.rb
453
- - spec/unit/mongoid/extensions/string/conversions_spec.rb
454
- - spec/unit/mongoid/extensions/string/inflections_spec.rb
455
- - spec/unit/mongoid/extensions/symbol/inflections_spec.rb
456
- - spec/unit/mongoid/extensions/time/conversions_spec.rb
457
- - spec/unit/mongoid/extras_spec.rb
458
- - spec/unit/mongoid/factory_spec.rb
459
- - spec/unit/mongoid/field_spec.rb
460
- - spec/unit/mongoid/fields_spec.rb
461
- - spec/unit/mongoid/finders_spec.rb
462
- - spec/unit/mongoid/identity_spec.rb
463
- - spec/unit/mongoid/indexes_spec.rb
464
- - spec/unit/mongoid/javascript_spec.rb
465
- - spec/unit/mongoid/matchers/all_spec.rb
466
- - spec/unit/mongoid/matchers/default_spec.rb
467
- - spec/unit/mongoid/matchers/exists_spec.rb
468
- - spec/unit/mongoid/matchers/gt_spec.rb
469
- - spec/unit/mongoid/matchers/gte_spec.rb
470
- - spec/unit/mongoid/matchers/in_spec.rb
471
- - spec/unit/mongoid/matchers/lt_spec.rb
472
- - spec/unit/mongoid/matchers/lte_spec.rb
473
- - spec/unit/mongoid/matchers/ne_spec.rb
474
- - spec/unit/mongoid/matchers/nin_spec.rb
475
- - spec/unit/mongoid/matchers/size_spec.rb
476
- - spec/unit/mongoid/matchers_spec.rb
477
- - spec/unit/mongoid/memoization_spec.rb
478
- - spec/unit/mongoid/named_scope_spec.rb
479
- - spec/unit/mongoid/observable_spec.rb
480
- - spec/unit/mongoid/paths_spec.rb
481
- - spec/unit/mongoid/scope_spec.rb
482
- - spec/unit/mongoid/state_spec.rb
483
- - spec/unit/mongoid/timestamps_spec.rb
484
- - spec/unit/mongoid/validations/associated_spec.rb
485
- - spec/unit/mongoid/validations/uniqueness_spec.rb
486
- - spec/unit/mongoid/validations_spec.rb
487
- - spec/unit/mongoid/versioning_spec.rb
488
- - spec/unit/mongoid_spec.rb
261
+ summary: Elegent Persistance in Ruby for MongoDB.
262
+ test_files: []
263
+