activerecord 1.0.0 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of activerecord might be problematic. Click here for more details.

Files changed (178) hide show
  1. data/CHANGELOG +5518 -76
  2. data/README.rdoc +222 -0
  3. data/examples/performance.rb +162 -0
  4. data/examples/simple.rb +14 -0
  5. data/lib/active_record/aggregations.rb +192 -80
  6. data/lib/active_record/association_preload.rb +403 -0
  7. data/lib/active_record/associations/association_collection.rb +545 -53
  8. data/lib/active_record/associations/association_proxy.rb +295 -0
  9. data/lib/active_record/associations/belongs_to_association.rb +91 -0
  10. data/lib/active_record/associations/belongs_to_polymorphic_association.rb +78 -0
  11. data/lib/active_record/associations/has_and_belongs_to_many_association.rb +127 -36
  12. data/lib/active_record/associations/has_many_association.rb +108 -84
  13. data/lib/active_record/associations/has_many_through_association.rb +116 -0
  14. data/lib/active_record/associations/has_one_association.rb +143 -0
  15. data/lib/active_record/associations/has_one_through_association.rb +40 -0
  16. data/lib/active_record/associations/through_association_scope.rb +154 -0
  17. data/lib/active_record/associations.rb +2086 -368
  18. data/lib/active_record/attribute_methods/before_type_cast.rb +33 -0
  19. data/lib/active_record/attribute_methods/dirty.rb +95 -0
  20. data/lib/active_record/attribute_methods/primary_key.rb +50 -0
  21. data/lib/active_record/attribute_methods/query.rb +39 -0
  22. data/lib/active_record/attribute_methods/read.rb +116 -0
  23. data/lib/active_record/attribute_methods/time_zone_conversion.rb +61 -0
  24. data/lib/active_record/attribute_methods/write.rb +37 -0
  25. data/lib/active_record/attribute_methods.rb +60 -0
  26. data/lib/active_record/autosave_association.rb +369 -0
  27. data/lib/active_record/base.rb +1603 -721
  28. data/lib/active_record/callbacks.rb +176 -225
  29. data/lib/active_record/connection_adapters/abstract/connection_pool.rb +365 -0
  30. data/lib/active_record/connection_adapters/abstract/connection_specification.rb +113 -0
  31. data/lib/active_record/connection_adapters/abstract/database_limits.rb +57 -0
  32. data/lib/active_record/connection_adapters/abstract/database_statements.rb +329 -0
  33. data/lib/active_record/connection_adapters/abstract/query_cache.rb +81 -0
  34. data/lib/active_record/connection_adapters/abstract/quoting.rb +72 -0
  35. data/lib/active_record/connection_adapters/abstract/schema_definitions.rb +739 -0
  36. data/lib/active_record/connection_adapters/abstract/schema_statements.rb +543 -0
  37. data/lib/active_record/connection_adapters/abstract_adapter.rb +165 -279
  38. data/lib/active_record/connection_adapters/mysql_adapter.rb +594 -82
  39. data/lib/active_record/connection_adapters/postgresql_adapter.rb +988 -135
  40. data/lib/active_record/connection_adapters/sqlite3_adapter.rb +53 -0
  41. data/lib/active_record/connection_adapters/sqlite_adapter.rb +365 -71
  42. data/lib/active_record/counter_cache.rb +115 -0
  43. data/lib/active_record/dynamic_finder_match.rb +53 -0
  44. data/lib/active_record/dynamic_scope_match.rb +32 -0
  45. data/lib/active_record/errors.rb +172 -0
  46. data/lib/active_record/fixtures.rb +941 -105
  47. data/lib/active_record/locale/en.yml +40 -0
  48. data/lib/active_record/locking/optimistic.rb +172 -0
  49. data/lib/active_record/locking/pessimistic.rb +55 -0
  50. data/lib/active_record/log_subscriber.rb +48 -0
  51. data/lib/active_record/migration.rb +617 -0
  52. data/lib/active_record/named_scope.rb +138 -0
  53. data/lib/active_record/nested_attributes.rb +417 -0
  54. data/lib/active_record/observer.rb +105 -36
  55. data/lib/active_record/persistence.rb +291 -0
  56. data/lib/active_record/query_cache.rb +36 -0
  57. data/lib/active_record/railtie.rb +91 -0
  58. data/lib/active_record/railties/controller_runtime.rb +38 -0
  59. data/lib/active_record/railties/databases.rake +512 -0
  60. data/lib/active_record/reflection.rb +364 -87
  61. data/lib/active_record/relation/batches.rb +89 -0
  62. data/lib/active_record/relation/calculations.rb +286 -0
  63. data/lib/active_record/relation/finder_methods.rb +355 -0
  64. data/lib/active_record/relation/predicate_builder.rb +41 -0
  65. data/lib/active_record/relation/query_methods.rb +261 -0
  66. data/lib/active_record/relation/spawn_methods.rb +112 -0
  67. data/lib/active_record/relation.rb +393 -0
  68. data/lib/active_record/schema.rb +59 -0
  69. data/lib/active_record/schema_dumper.rb +195 -0
  70. data/lib/active_record/serialization.rb +60 -0
  71. data/lib/active_record/serializers/xml_serializer.rb +244 -0
  72. data/lib/active_record/session_store.rb +340 -0
  73. data/lib/active_record/test_case.rb +67 -0
  74. data/lib/active_record/timestamp.rb +88 -0
  75. data/lib/active_record/transactions.rb +329 -75
  76. data/lib/active_record/validations/associated.rb +48 -0
  77. data/lib/active_record/validations/uniqueness.rb +185 -0
  78. data/lib/active_record/validations.rb +58 -179
  79. data/lib/active_record/version.rb +9 -0
  80. data/lib/active_record.rb +100 -24
  81. data/lib/rails/generators/active_record/migration/migration_generator.rb +25 -0
  82. data/lib/rails/generators/active_record/migration/templates/migration.rb +17 -0
  83. data/lib/rails/generators/active_record/model/model_generator.rb +38 -0
  84. data/lib/rails/generators/active_record/model/templates/migration.rb +16 -0
  85. data/lib/rails/generators/active_record/model/templates/model.rb +5 -0
  86. data/lib/rails/generators/active_record/model/templates/module.rb +5 -0
  87. data/lib/rails/generators/active_record/observer/observer_generator.rb +15 -0
  88. data/lib/rails/generators/active_record/observer/templates/observer.rb +2 -0
  89. data/lib/rails/generators/active_record/session_migration/session_migration_generator.rb +24 -0
  90. data/lib/rails/generators/active_record/session_migration/templates/migration.rb +16 -0
  91. data/lib/rails/generators/active_record.rb +27 -0
  92. metadata +216 -158
  93. data/README +0 -361
  94. data/RUNNING_UNIT_TESTS +0 -36
  95. data/dev-utils/eval_debugger.rb +0 -9
  96. data/examples/associations.rb +0 -87
  97. data/examples/shared_setup.rb +0 -15
  98. data/examples/validation.rb +0 -88
  99. data/install.rb +0 -60
  100. data/lib/active_record/deprecated_associations.rb +0 -70
  101. data/lib/active_record/support/class_attribute_accessors.rb +0 -43
  102. data/lib/active_record/support/class_inheritable_attributes.rb +0 -37
  103. data/lib/active_record/support/clean_logger.rb +0 -10
  104. data/lib/active_record/support/inflector.rb +0 -70
  105. data/lib/active_record/vendor/mysql.rb +0 -1117
  106. data/lib/active_record/vendor/simple.rb +0 -702
  107. data/lib/active_record/wrappers/yaml_wrapper.rb +0 -15
  108. data/lib/active_record/wrappings.rb +0 -59
  109. data/rakefile +0 -122
  110. data/test/abstract_unit.rb +0 -16
  111. data/test/aggregations_test.rb +0 -34
  112. data/test/all.sh +0 -8
  113. data/test/associations_test.rb +0 -477
  114. data/test/base_test.rb +0 -513
  115. data/test/class_inheritable_attributes_test.rb +0 -33
  116. data/test/connections/native_mysql/connection.rb +0 -24
  117. data/test/connections/native_postgresql/connection.rb +0 -24
  118. data/test/connections/native_sqlite/connection.rb +0 -24
  119. data/test/deprecated_associations_test.rb +0 -336
  120. data/test/finder_test.rb +0 -67
  121. data/test/fixtures/accounts/signals37 +0 -3
  122. data/test/fixtures/accounts/unknown +0 -2
  123. data/test/fixtures/auto_id.rb +0 -4
  124. data/test/fixtures/column_name.rb +0 -3
  125. data/test/fixtures/companies/first_client +0 -6
  126. data/test/fixtures/companies/first_firm +0 -4
  127. data/test/fixtures/companies/second_client +0 -6
  128. data/test/fixtures/company.rb +0 -37
  129. data/test/fixtures/company_in_module.rb +0 -33
  130. data/test/fixtures/course.rb +0 -3
  131. data/test/fixtures/courses/java +0 -2
  132. data/test/fixtures/courses/ruby +0 -2
  133. data/test/fixtures/customer.rb +0 -30
  134. data/test/fixtures/customers/david +0 -6
  135. data/test/fixtures/db_definitions/mysql.sql +0 -96
  136. data/test/fixtures/db_definitions/mysql2.sql +0 -4
  137. data/test/fixtures/db_definitions/postgresql.sql +0 -113
  138. data/test/fixtures/db_definitions/postgresql2.sql +0 -4
  139. data/test/fixtures/db_definitions/sqlite.sql +0 -85
  140. data/test/fixtures/db_definitions/sqlite2.sql +0 -4
  141. data/test/fixtures/default.rb +0 -2
  142. data/test/fixtures/developer.rb +0 -8
  143. data/test/fixtures/developers/david +0 -2
  144. data/test/fixtures/developers/jamis +0 -2
  145. data/test/fixtures/developers_projects/david_action_controller +0 -2
  146. data/test/fixtures/developers_projects/david_active_record +0 -2
  147. data/test/fixtures/developers_projects/jamis_active_record +0 -2
  148. data/test/fixtures/entrant.rb +0 -3
  149. data/test/fixtures/entrants/first +0 -3
  150. data/test/fixtures/entrants/second +0 -3
  151. data/test/fixtures/entrants/third +0 -3
  152. data/test/fixtures/fixture_database.sqlite +0 -0
  153. data/test/fixtures/fixture_database_2.sqlite +0 -0
  154. data/test/fixtures/movie.rb +0 -5
  155. data/test/fixtures/movies/first +0 -2
  156. data/test/fixtures/movies/second +0 -2
  157. data/test/fixtures/project.rb +0 -3
  158. data/test/fixtures/projects/action_controller +0 -2
  159. data/test/fixtures/projects/active_record +0 -2
  160. data/test/fixtures/reply.rb +0 -21
  161. data/test/fixtures/subscriber.rb +0 -5
  162. data/test/fixtures/subscribers/first +0 -2
  163. data/test/fixtures/subscribers/second +0 -2
  164. data/test/fixtures/topic.rb +0 -20
  165. data/test/fixtures/topics/first +0 -9
  166. data/test/fixtures/topics/second +0 -8
  167. data/test/fixtures_test.rb +0 -20
  168. data/test/inflector_test.rb +0 -104
  169. data/test/inheritance_test.rb +0 -125
  170. data/test/lifecycle_test.rb +0 -110
  171. data/test/modules_test.rb +0 -21
  172. data/test/multiple_db_test.rb +0 -46
  173. data/test/pk_test.rb +0 -57
  174. data/test/reflection_test.rb +0 -78
  175. data/test/thread_safety_test.rb +0 -33
  176. data/test/transactions_test.rb +0 -83
  177. data/test/unconnected_test.rb +0 -24
  178. data/test/validations_test.rb +0 -126
@@ -0,0 +1,16 @@
1
+ class <%= migration_class_name %> < ActiveRecord::Migration
2
+ def self.up
3
+ create_table :<%= table_name %> do |t|
4
+ <% for attribute in attributes -%>
5
+ t.<%= attribute.type %> :<%= attribute.name %>
6
+ <% end -%>
7
+ <% if options[:timestamps] %>
8
+ t.timestamps
9
+ <% end -%>
10
+ end
11
+ end
12
+
13
+ def self.down
14
+ drop_table :<%= table_name %>
15
+ end
16
+ end
@@ -0,0 +1,5 @@
1
+ class <%= class_name %> < <%= parent_class_name.classify %>
2
+ <% attributes.select {|attr| attr.reference? }.each do |attribute| -%>
3
+ belongs_to :<%= attribute.name %>
4
+ <% end -%>
5
+ end
@@ -0,0 +1,5 @@
1
+ module <%= class_path.map(&:camelize).join('::') %>
2
+ def self.table_name_prefix
3
+ '<%= class_path.join('_') %>_'
4
+ end
5
+ end
@@ -0,0 +1,15 @@
1
+ require 'rails/generators/active_record'
2
+
3
+ module ActiveRecord
4
+ module Generators
5
+ class ObserverGenerator < Base
6
+ check_class_collision :suffix => "Observer"
7
+
8
+ def create_observer_file
9
+ template 'observer.rb', File.join('app/models', class_path, "#{file_name}_observer.rb")
10
+ end
11
+
12
+ hook_for :test_framework
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,2 @@
1
+ class <%= class_name %>Observer < ActiveRecord::Observer
2
+ end
@@ -0,0 +1,24 @@
1
+ require 'rails/generators/active_record'
2
+
3
+ module ActiveRecord
4
+ module Generators
5
+ class SessionMigrationGenerator < Base
6
+ argument :name, :type => :string, :default => "add_sessions_table"
7
+
8
+ def create_migration_file
9
+ migration_template "migration.rb", "db/migrate/#{file_name}.rb"
10
+ end
11
+
12
+ protected
13
+
14
+ def session_table_name
15
+ current_table_name = ActiveRecord::SessionStore::Session.table_name
16
+ if ["sessions", "session"].include?(current_table_name)
17
+ current_table_name = (ActiveRecord::Base.pluralize_table_names ? 'session'.pluralize : 'session')
18
+ end
19
+ current_table_name
20
+ end
21
+
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,16 @@
1
+ class <%= migration_class_name %> < ActiveRecord::Migration
2
+ def self.up
3
+ create_table :<%= session_table_name %> do |t|
4
+ t.string :session_id, :null => false
5
+ t.text :data
6
+ t.timestamps
7
+ end
8
+
9
+ add_index :<%= session_table_name %>, :session_id
10
+ add_index :<%= session_table_name %>, :updated_at
11
+ end
12
+
13
+ def self.down
14
+ drop_table :<%= session_table_name %>
15
+ end
16
+ end
@@ -0,0 +1,27 @@
1
+ require 'rails/generators/named_base'
2
+ require 'rails/generators/migration'
3
+ require 'rails/generators/active_model'
4
+ require 'active_record'
5
+
6
+ module ActiveRecord
7
+ module Generators
8
+ class Base < Rails::Generators::NamedBase #:nodoc:
9
+ include Rails::Generators::Migration
10
+
11
+ # Set the current directory as base for the inherited generators.
12
+ def self.base_root
13
+ File.dirname(__FILE__)
14
+ end
15
+
16
+ # Implement the required interface for Rails::Generators::Migration.
17
+ def self.next_migration_number(dirname) #:nodoc:
18
+ next_migration_number = current_migration_number(dirname) + 1
19
+ if ActiveRecord::Base.timestamped_migrations
20
+ [Time.now.utc.strftime("%Y%m%d%H%M%S"), "%.14d" % next_migration_number].max
21
+ else
22
+ "%.3d" % next_migration_number
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
metadata CHANGED
@@ -1,166 +1,224 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.8.1
3
- specification_version: 1
4
2
  name: activerecord
5
3
  version: !ruby/object:Gem::Version
6
- version: 1.0.0
7
- date: 2004-10-25
8
- summary: Implements the ActiveRecord pattern for ORM.
9
- require_paths:
10
- - lib
11
- author: David Heinemeier Hansson
12
- email: david@loudthinking.com
13
- homepage: http://activerecord.rubyonrails.org
14
- rubyforge_project: activerecord
15
- description: "Implements the ActiveRecord pattern (Fowler, PoEAA) for ORM. It ties database tables and classes together for business objects, like Customer or Subscription, that can find, save, and destroy themselves without resorting to manual SQL."
16
- autorequire: active_record
17
- default_executable:
4
+ hash: 7
5
+ prerelease: false
6
+ segments:
7
+ - 3
8
+ - 0
9
+ - 0
10
+ version: 3.0.0
11
+ platform: ruby
12
+ authors:
13
+ - David Heinemeier Hansson
14
+ autorequire:
18
15
  bindir: bin
19
- has_rdoc: true
20
- required_ruby_version: !ruby/object:Gem::Version::Requirement
21
- requirements:
22
- -
23
- - ">"
16
+ cert_chain: []
17
+
18
+ date: 2010-08-29 00:00:00 -05:00
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: activesupport
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - "="
24
28
  - !ruby/object:Gem::Version
25
- version: 0.0.0
26
- version:
27
- platform: ruby
28
- files:
29
- - rakefile
30
- - install.rb
31
- - README
32
- - RUNNING_UNIT_TESTS
33
- - CHANGELOG
34
- - lib/active_record
35
- - lib/active_record.rb
36
- - lib/active_record/aggregations.rb
37
- - lib/active_record/associations
38
- - lib/active_record/associations.rb
39
- - lib/active_record/base.rb
40
- - lib/active_record/callbacks.rb
41
- - lib/active_record/connection_adapters
42
- - lib/active_record/deprecated_associations.rb
43
- - lib/active_record/fixtures.rb
44
- - lib/active_record/observer.rb
45
- - lib/active_record/reflection.rb
46
- - lib/active_record/support
47
- - lib/active_record/transactions.rb
48
- - lib/active_record/validations.rb
49
- - lib/active_record/vendor
50
- - lib/active_record/wrappers
51
- - lib/active_record/wrappings.rb
52
- - lib/active_record/associations/association_collection.rb
53
- - lib/active_record/associations/has_and_belongs_to_many_association.rb
54
- - lib/active_record/associations/has_many_association.rb
55
- - lib/active_record/connection_adapters/abstract_adapter.rb
56
- - lib/active_record/connection_adapters/mysql_adapter.rb
57
- - lib/active_record/connection_adapters/postgresql_adapter.rb
58
- - lib/active_record/connection_adapters/sqlite_adapter.rb
59
- - lib/active_record/support/class_attribute_accessors.rb
60
- - lib/active_record/support/class_inheritable_attributes.rb
61
- - lib/active_record/support/clean_logger.rb
62
- - lib/active_record/support/inflector.rb
63
- - lib/active_record/vendor/mysql.rb
64
- - lib/active_record/vendor/simple.rb
65
- - lib/active_record/wrappers/yaml_wrapper.rb
66
- - test/abstract_unit.rb
67
- - test/aggregations_test.rb
68
- - test/all.sh
69
- - test/associations_test.rb
70
- - test/base_test.rb
71
- - test/class_inheritable_attributes_test.rb
72
- - test/connections
73
- - test/deprecated_associations_test.rb
74
- - test/finder_test.rb
75
- - test/fixtures
76
- - test/fixtures_test.rb
77
- - test/inflector_test.rb
78
- - test/inheritance_test.rb
79
- - test/lifecycle_test.rb
80
- - test/modules_test.rb
81
- - test/multiple_db_test.rb
82
- - test/pk_test.rb
83
- - test/reflection_test.rb
84
- - test/thread_safety_test.rb
85
- - test/transactions_test.rb
86
- - test/unconnected_test.rb
87
- - test/validations_test.rb
88
- - test/connections/native_mysql
89
- - test/connections/native_postgresql
90
- - test/connections/native_sqlite
91
- - test/connections/native_mysql/connection.rb
92
- - test/connections/native_postgresql/connection.rb
93
- - test/connections/native_sqlite/connection.rb
94
- - test/fixtures/accounts
95
- - test/fixtures/auto_id.rb
96
- - test/fixtures/column_name.rb
97
- - test/fixtures/companies
98
- - test/fixtures/company.rb
99
- - test/fixtures/company_in_module.rb
100
- - test/fixtures/course.rb
101
- - test/fixtures/courses
102
- - test/fixtures/customer.rb
103
- - test/fixtures/customers
104
- - test/fixtures/db_definitions
105
- - test/fixtures/default.rb
106
- - test/fixtures/developer.rb
107
- - test/fixtures/developers
108
- - test/fixtures/developers_projects
109
- - test/fixtures/entrant.rb
110
- - test/fixtures/entrants
111
- - test/fixtures/fixture_database.sqlite
112
- - test/fixtures/fixture_database_2.sqlite
113
- - test/fixtures/movie.rb
114
- - test/fixtures/movies
115
- - test/fixtures/project.rb
116
- - test/fixtures/projects
117
- - test/fixtures/reply.rb
118
- - test/fixtures/subscriber.rb
119
- - test/fixtures/subscribers
120
- - test/fixtures/topic.rb
121
- - test/fixtures/topics
122
- - test/fixtures/accounts/signals37
123
- - test/fixtures/accounts/unknown
124
- - test/fixtures/companies/first_client
125
- - test/fixtures/companies/first_firm
126
- - test/fixtures/companies/second_client
127
- - test/fixtures/courses/java
128
- - test/fixtures/courses/ruby
129
- - test/fixtures/customers/david
130
- - test/fixtures/db_definitions/mysql.sql
131
- - test/fixtures/db_definitions/mysql2.sql
132
- - test/fixtures/db_definitions/postgresql.sql
133
- - test/fixtures/db_definitions/postgresql2.sql
134
- - test/fixtures/db_definitions/sqlite.sql
135
- - test/fixtures/db_definitions/sqlite2.sql
136
- - test/fixtures/developers/david
137
- - test/fixtures/developers/jamis
138
- - test/fixtures/developers_projects/david_action_controller
139
- - test/fixtures/developers_projects/david_active_record
140
- - test/fixtures/developers_projects/jamis_active_record
141
- - test/fixtures/entrants/first
142
- - test/fixtures/entrants/second
143
- - test/fixtures/entrants/third
144
- - test/fixtures/movies/first
145
- - test/fixtures/movies/second
146
- - test/fixtures/projects/action_controller
147
- - test/fixtures/projects/active_record
148
- - test/fixtures/subscribers/first
149
- - test/fixtures/subscribers/second
150
- - test/fixtures/topics/first
151
- - test/fixtures/topics/second
152
- - examples/associations.png
153
- - examples/associations.rb
154
- - examples/shared_setup.rb
155
- - examples/validation.rb
156
- - dev-utils/eval_debugger.rb
157
- test_files: []
158
- rdoc_options:
159
- - "--main"
160
- - README
161
- extra_rdoc_files:
162
- - README
29
+ hash: 7
30
+ segments:
31
+ - 3
32
+ - 0
33
+ - 0
34
+ version: 3.0.0
35
+ type: :runtime
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: activemodel
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - "="
44
+ - !ruby/object:Gem::Version
45
+ hash: 7
46
+ segments:
47
+ - 3
48
+ - 0
49
+ - 0
50
+ version: 3.0.0
51
+ type: :runtime
52
+ version_requirements: *id002
53
+ - !ruby/object:Gem::Dependency
54
+ name: arel
55
+ prerelease: false
56
+ requirement: &id003 !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ hash: 23
62
+ segments:
63
+ - 1
64
+ - 0
65
+ - 0
66
+ version: 1.0.0
67
+ type: :runtime
68
+ version_requirements: *id003
69
+ - !ruby/object:Gem::Dependency
70
+ name: tzinfo
71
+ prerelease: false
72
+ requirement: &id004 !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ hash: 61
78
+ segments:
79
+ - 0
80
+ - 3
81
+ - 23
82
+ version: 0.3.23
83
+ type: :runtime
84
+ version_requirements: *id004
85
+ description: Databases on Rails. Build a persistent domain model by mapping database tables to Ruby classes. Strong conventions for associations, validations, aggregations, migrations, and testing come baked-in.
86
+ email: david@loudthinking.com
163
87
  executables: []
88
+
164
89
  extensions: []
90
+
91
+ extra_rdoc_files:
92
+ - README.rdoc
93
+ files:
94
+ - CHANGELOG
95
+ - README.rdoc
96
+ - examples/associations.png
97
+ - examples/performance.rb
98
+ - examples/simple.rb
99
+ - lib/active_record/aggregations.rb
100
+ - lib/active_record/association_preload.rb
101
+ - lib/active_record/associations/association_collection.rb
102
+ - lib/active_record/associations/association_proxy.rb
103
+ - lib/active_record/associations/belongs_to_association.rb
104
+ - lib/active_record/associations/belongs_to_polymorphic_association.rb
105
+ - lib/active_record/associations/has_and_belongs_to_many_association.rb
106
+ - lib/active_record/associations/has_many_association.rb
107
+ - lib/active_record/associations/has_many_through_association.rb
108
+ - lib/active_record/associations/has_one_association.rb
109
+ - lib/active_record/associations/has_one_through_association.rb
110
+ - lib/active_record/associations/through_association_scope.rb
111
+ - lib/active_record/associations.rb
112
+ - lib/active_record/attribute_methods/before_type_cast.rb
113
+ - lib/active_record/attribute_methods/dirty.rb
114
+ - lib/active_record/attribute_methods/primary_key.rb
115
+ - lib/active_record/attribute_methods/query.rb
116
+ - lib/active_record/attribute_methods/read.rb
117
+ - lib/active_record/attribute_methods/time_zone_conversion.rb
118
+ - lib/active_record/attribute_methods/write.rb
119
+ - lib/active_record/attribute_methods.rb
120
+ - lib/active_record/autosave_association.rb
121
+ - lib/active_record/base.rb
122
+ - lib/active_record/callbacks.rb
123
+ - lib/active_record/connection_adapters/abstract/connection_pool.rb
124
+ - lib/active_record/connection_adapters/abstract/connection_specification.rb
125
+ - lib/active_record/connection_adapters/abstract/database_limits.rb
126
+ - lib/active_record/connection_adapters/abstract/database_statements.rb
127
+ - lib/active_record/connection_adapters/abstract/query_cache.rb
128
+ - lib/active_record/connection_adapters/abstract/quoting.rb
129
+ - lib/active_record/connection_adapters/abstract/schema_definitions.rb
130
+ - lib/active_record/connection_adapters/abstract/schema_statements.rb
131
+ - lib/active_record/connection_adapters/abstract_adapter.rb
132
+ - lib/active_record/connection_adapters/mysql_adapter.rb
133
+ - lib/active_record/connection_adapters/postgresql_adapter.rb
134
+ - lib/active_record/connection_adapters/sqlite3_adapter.rb
135
+ - lib/active_record/connection_adapters/sqlite_adapter.rb
136
+ - lib/active_record/counter_cache.rb
137
+ - lib/active_record/dynamic_finder_match.rb
138
+ - lib/active_record/dynamic_scope_match.rb
139
+ - lib/active_record/errors.rb
140
+ - lib/active_record/fixtures.rb
141
+ - lib/active_record/locale/en.yml
142
+ - lib/active_record/locking/optimistic.rb
143
+ - lib/active_record/locking/pessimistic.rb
144
+ - lib/active_record/log_subscriber.rb
145
+ - lib/active_record/migration.rb
146
+ - lib/active_record/named_scope.rb
147
+ - lib/active_record/nested_attributes.rb
148
+ - lib/active_record/observer.rb
149
+ - lib/active_record/persistence.rb
150
+ - lib/active_record/query_cache.rb
151
+ - lib/active_record/railtie.rb
152
+ - lib/active_record/railties/controller_runtime.rb
153
+ - lib/active_record/railties/databases.rake
154
+ - lib/active_record/reflection.rb
155
+ - lib/active_record/relation/batches.rb
156
+ - lib/active_record/relation/calculations.rb
157
+ - lib/active_record/relation/finder_methods.rb
158
+ - lib/active_record/relation/predicate_builder.rb
159
+ - lib/active_record/relation/query_methods.rb
160
+ - lib/active_record/relation/spawn_methods.rb
161
+ - lib/active_record/relation.rb
162
+ - lib/active_record/schema.rb
163
+ - lib/active_record/schema_dumper.rb
164
+ - lib/active_record/serialization.rb
165
+ - lib/active_record/serializers/xml_serializer.rb
166
+ - lib/active_record/session_store.rb
167
+ - lib/active_record/test_case.rb
168
+ - lib/active_record/timestamp.rb
169
+ - lib/active_record/transactions.rb
170
+ - lib/active_record/validations/associated.rb
171
+ - lib/active_record/validations/uniqueness.rb
172
+ - lib/active_record/validations.rb
173
+ - lib/active_record/version.rb
174
+ - lib/active_record.rb
175
+ - lib/rails/generators/active_record/migration/migration_generator.rb
176
+ - lib/rails/generators/active_record/migration/templates/migration.rb
177
+ - lib/rails/generators/active_record/model/model_generator.rb
178
+ - lib/rails/generators/active_record/model/templates/migration.rb
179
+ - lib/rails/generators/active_record/model/templates/model.rb
180
+ - lib/rails/generators/active_record/model/templates/module.rb
181
+ - lib/rails/generators/active_record/observer/observer_generator.rb
182
+ - lib/rails/generators/active_record/observer/templates/observer.rb
183
+ - lib/rails/generators/active_record/session_migration/session_migration_generator.rb
184
+ - lib/rails/generators/active_record/session_migration/templates/migration.rb
185
+ - lib/rails/generators/active_record.rb
186
+ has_rdoc: true
187
+ homepage: http://www.rubyonrails.org
188
+ licenses: []
189
+
190
+ post_install_message:
191
+ rdoc_options:
192
+ - --main
193
+ - README.rdoc
194
+ require_paths:
195
+ - lib
196
+ required_ruby_version: !ruby/object:Gem::Requirement
197
+ none: false
198
+ requirements:
199
+ - - ">="
200
+ - !ruby/object:Gem::Version
201
+ hash: 57
202
+ segments:
203
+ - 1
204
+ - 8
205
+ - 7
206
+ version: 1.8.7
207
+ required_rubygems_version: !ruby/object:Gem::Requirement
208
+ none: false
209
+ requirements:
210
+ - - ">="
211
+ - !ruby/object:Gem::Version
212
+ hash: 3
213
+ segments:
214
+ - 0
215
+ version: "0"
165
216
  requirements: []
166
- dependencies: []
217
+
218
+ rubyforge_project: activerecord
219
+ rubygems_version: 1.3.7
220
+ signing_key:
221
+ specification_version: 3
222
+ summary: Object-relational mapper framework (part of Rails).
223
+ test_files: []
224
+