datamappify 0.53.0 → 0.53.1

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.
@@ -1,5 +1,9 @@
1
1
  ## master
2
2
 
3
+ ## 0.53.1 [2013-06-27]
4
+
5
+ - Fixed ruby 1.9 compatibility.
6
+
3
7
  ## 0.53.0 [2013-06-27]
4
8
 
5
9
  - Added support for mapping to namespaced data models.
data/README.md CHANGED
@@ -134,6 +134,8 @@ class User
134
134
  end
135
135
  ```
136
136
 
137
+ #### Entity inheritance
138
+
137
139
  Inheritance is supported for entities, for example:
138
140
 
139
141
  ```ruby
@@ -199,6 +201,8 @@ class UserRepository
199
201
  end
200
202
  ```
201
203
 
204
+ #### Repository inheritance
205
+
202
206
  Inheritance is supported for repositories when your data structure is based on STI ([Single Table Inheritance](http://en.wikipedia.org/wiki/Single_Table_Inheritance)), for example:
203
207
 
204
208
  ```ruby
@@ -215,6 +219,32 @@ end
215
219
 
216
220
  In the above example, both repositories deal with the `ActiveRecord::User` data model.
217
221
 
222
+ #### Override mapped data models
223
+
224
+ Datamappify repository by default creates the underlying data model classes for you. For example:
225
+
226
+ ```ruby
227
+ map_attribute :driver_license, 'ActiveRecord::UserData::DriverLicense#number'
228
+ ```
229
+
230
+ In the above example, a `Datamppify::Data::Record::ActiveRecord::UserDriverLicense` ActiveRecord model will be created. If you would like to customise the data model class, you may do so by creating one either under the default namespace or under the `Datamappify::Data::Record::NameOfDataProvider` namespace:
231
+
232
+ ```ruby
233
+ module UserData
234
+ class DriverLicense < ActiveRecord::Base
235
+ # your customisation...
236
+ end
237
+ end
238
+ ```
239
+
240
+ ```ruby
241
+ module Datamappify::Data::Record::ActiveRecord::UserData
242
+ class DriverLicense < ::ActiveRecord::Base
243
+ # your customisation...
244
+ end
245
+ end
246
+ ```
247
+
218
248
  ### Repository APIs
219
249
 
220
250
  _More repository APIs are being added, below is a list of the currently implemented APIs._
@@ -17,7 +17,7 @@ module Datamappify
17
17
  end
18
18
  CODE
19
19
 
20
- Datamappify::Data::Record::ActiveRecord.const_get(source_class_name)
20
+ "Datamappify::Data::Record::ActiveRecord::#{source_class_name}".constantize
21
21
  end
22
22
 
23
23
  # @return [void]
@@ -17,7 +17,7 @@ module Datamappify
17
17
  end
18
18
  CODE
19
19
 
20
- Datamappify::Data::Record::Sequel.const_get(source_class_name)
20
+ "Datamappify::Data::Record::Sequel::#{source_class_name}".constantize
21
21
  end
22
22
 
23
23
  # @param attribute (see Record#build_association)
@@ -1,3 +1,3 @@
1
1
  module Datamappify
2
- VERSION = '0.53.0'
2
+ VERSION = '0.53.1'
3
3
  end
metadata CHANGED
@@ -1,7 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: datamappify
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.53.0
4
+ version: 0.53.1
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Fred Wu
@@ -13,8 +14,9 @@ dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: virtus
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
- - - '>='
19
+ - - ! '>='
18
20
  - !ruby/object:Gem::Version
19
21
  version: 1.0.0.beta0
20
22
  - - <=
@@ -23,8 +25,9 @@ dependencies:
23
25
  type: :runtime
24
26
  prerelease: false
25
27
  version_requirements: !ruby/object:Gem::Requirement
28
+ none: false
26
29
  requirements:
27
- - - '>='
30
+ - - ! '>='
28
31
  - !ruby/object:Gem::Version
29
32
  version: 1.0.0.beta0
30
33
  - - <=
@@ -33,8 +36,9 @@ dependencies:
33
36
  - !ruby/object:Gem::Dependency
34
37
  name: activemodel
35
38
  requirement: !ruby/object:Gem::Requirement
39
+ none: false
36
40
  requirements:
37
- - - '>='
41
+ - - ! '>='
38
42
  - !ruby/object:Gem::Version
39
43
  version: 4.0.0.rc1
40
44
  - - <
@@ -43,8 +47,9 @@ dependencies:
43
47
  type: :runtime
44
48
  prerelease: false
45
49
  version_requirements: !ruby/object:Gem::Requirement
50
+ none: false
46
51
  requirements:
47
- - - '>='
52
+ - - ! '>='
48
53
  - !ruby/object:Gem::Version
49
54
  version: 4.0.0.rc1
50
55
  - - <
@@ -53,6 +58,7 @@ dependencies:
53
58
  - !ruby/object:Gem::Dependency
54
59
  name: hooks
55
60
  requirement: !ruby/object:Gem::Requirement
61
+ none: false
56
62
  requirements:
57
63
  - - ~>
58
64
  - !ruby/object:Gem::Version
@@ -60,6 +66,7 @@ dependencies:
60
66
  type: :runtime
61
67
  prerelease: false
62
68
  version_requirements: !ruby/object:Gem::Requirement
69
+ none: false
63
70
  requirements:
64
71
  - - ~>
65
72
  - !ruby/object:Gem::Version
@@ -67,6 +74,7 @@ dependencies:
67
74
  - !ruby/object:Gem::Dependency
68
75
  name: bundler
69
76
  requirement: !ruby/object:Gem::Requirement
77
+ none: false
70
78
  requirements:
71
79
  - - ~>
72
80
  - !ruby/object:Gem::Version
@@ -74,6 +82,7 @@ dependencies:
74
82
  type: :development
75
83
  prerelease: false
76
84
  version_requirements: !ruby/object:Gem::Requirement
85
+ none: false
77
86
  requirements:
78
87
  - - ~>
79
88
  - !ruby/object:Gem::Version
@@ -81,148 +90,169 @@ dependencies:
81
90
  - !ruby/object:Gem::Dependency
82
91
  name: rake
83
92
  requirement: !ruby/object:Gem::Requirement
93
+ none: false
84
94
  requirements:
85
- - - '>='
95
+ - - ! '>='
86
96
  - !ruby/object:Gem::Version
87
97
  version: '0'
88
98
  type: :development
89
99
  prerelease: false
90
100
  version_requirements: !ruby/object:Gem::Requirement
101
+ none: false
91
102
  requirements:
92
- - - '>='
103
+ - - ! '>='
93
104
  - !ruby/object:Gem::Version
94
105
  version: '0'
95
106
  - !ruby/object:Gem::Dependency
96
107
  name: redcarpet
97
108
  requirement: !ruby/object:Gem::Requirement
109
+ none: false
98
110
  requirements:
99
- - - '>='
111
+ - - ! '>='
100
112
  - !ruby/object:Gem::Version
101
113
  version: '0'
102
114
  type: :development
103
115
  prerelease: false
104
116
  version_requirements: !ruby/object:Gem::Requirement
117
+ none: false
105
118
  requirements:
106
- - - '>='
119
+ - - ! '>='
107
120
  - !ruby/object:Gem::Version
108
121
  version: '0'
109
122
  - !ruby/object:Gem::Dependency
110
123
  name: yard
111
124
  requirement: !ruby/object:Gem::Requirement
125
+ none: false
112
126
  requirements:
113
- - - '>='
127
+ - - ! '>='
114
128
  - !ruby/object:Gem::Version
115
129
  version: '0'
116
130
  type: :development
117
131
  prerelease: false
118
132
  version_requirements: !ruby/object:Gem::Requirement
133
+ none: false
119
134
  requirements:
120
- - - '>='
135
+ - - ! '>='
121
136
  - !ruby/object:Gem::Version
122
137
  version: '0'
123
138
  - !ruby/object:Gem::Dependency
124
139
  name: rspec
125
140
  requirement: !ruby/object:Gem::Requirement
141
+ none: false
126
142
  requirements:
127
- - - '>='
143
+ - - ! '>='
128
144
  - !ruby/object:Gem::Version
129
145
  version: '0'
130
146
  type: :development
131
147
  prerelease: false
132
148
  version_requirements: !ruby/object:Gem::Requirement
149
+ none: false
133
150
  requirements:
134
- - - '>='
151
+ - - ! '>='
135
152
  - !ruby/object:Gem::Version
136
153
  version: '0'
137
154
  - !ruby/object:Gem::Dependency
138
155
  name: pry
139
156
  requirement: !ruby/object:Gem::Requirement
157
+ none: false
140
158
  requirements:
141
- - - '>='
159
+ - - ! '>='
142
160
  - !ruby/object:Gem::Version
143
161
  version: '0'
144
162
  type: :development
145
163
  prerelease: false
146
164
  version_requirements: !ruby/object:Gem::Requirement
165
+ none: false
147
166
  requirements:
148
- - - '>='
167
+ - - ! '>='
149
168
  - !ruby/object:Gem::Version
150
169
  version: '0'
151
170
  - !ruby/object:Gem::Dependency
152
171
  name: simplecov
153
172
  requirement: !ruby/object:Gem::Requirement
173
+ none: false
154
174
  requirements:
155
- - - '>='
175
+ - - ! '>='
156
176
  - !ruby/object:Gem::Version
157
177
  version: '0'
158
178
  type: :development
159
179
  prerelease: false
160
180
  version_requirements: !ruby/object:Gem::Requirement
181
+ none: false
161
182
  requirements:
162
- - - '>='
183
+ - - ! '>='
163
184
  - !ruby/object:Gem::Version
164
185
  version: '0'
165
186
  - !ruby/object:Gem::Dependency
166
187
  name: cane
167
188
  requirement: !ruby/object:Gem::Requirement
189
+ none: false
168
190
  requirements:
169
- - - '>='
191
+ - - ! '>='
170
192
  - !ruby/object:Gem::Version
171
193
  version: '0'
172
194
  type: :development
173
195
  prerelease: false
174
196
  version_requirements: !ruby/object:Gem::Requirement
197
+ none: false
175
198
  requirements:
176
- - - '>='
199
+ - - ! '>='
177
200
  - !ruby/object:Gem::Version
178
201
  version: '0'
179
202
  - !ruby/object:Gem::Dependency
180
203
  name: coveralls
181
204
  requirement: !ruby/object:Gem::Requirement
205
+ none: false
182
206
  requirements:
183
- - - '>='
207
+ - - ! '>='
184
208
  - !ruby/object:Gem::Version
185
209
  version: '0'
186
210
  type: :development
187
211
  prerelease: false
188
212
  version_requirements: !ruby/object:Gem::Requirement
213
+ none: false
189
214
  requirements:
190
- - - '>='
215
+ - - ! '>='
191
216
  - !ruby/object:Gem::Version
192
217
  version: '0'
193
218
  - !ruby/object:Gem::Dependency
194
219
  name: sqlite3
195
220
  requirement: !ruby/object:Gem::Requirement
221
+ none: false
196
222
  requirements:
197
- - - '>='
223
+ - - ! '>='
198
224
  - !ruby/object:Gem::Version
199
225
  version: '0'
200
226
  type: :development
201
227
  prerelease: false
202
228
  version_requirements: !ruby/object:Gem::Requirement
229
+ none: false
203
230
  requirements:
204
- - - '>='
231
+ - - ! '>='
205
232
  - !ruby/object:Gem::Version
206
233
  version: '0'
207
234
  - !ruby/object:Gem::Dependency
208
235
  name: sequel
209
236
  requirement: !ruby/object:Gem::Requirement
237
+ none: false
210
238
  requirements:
211
- - - '>='
239
+ - - ! '>='
212
240
  - !ruby/object:Gem::Version
213
241
  version: '0'
214
242
  type: :development
215
243
  prerelease: false
216
244
  version_requirements: !ruby/object:Gem::Requirement
245
+ none: false
217
246
  requirements:
218
- - - '>='
247
+ - - ! '>='
219
248
  - !ruby/object:Gem::Version
220
249
  version: '0'
221
250
  - !ruby/object:Gem::Dependency
222
251
  name: activerecord
223
252
  requirement: !ruby/object:Gem::Requirement
253
+ none: false
224
254
  requirements:
225
- - - '>='
255
+ - - ! '>='
226
256
  - !ruby/object:Gem::Version
227
257
  version: 4.0.0.rc1
228
258
  - - <
@@ -231,8 +261,9 @@ dependencies:
231
261
  type: :development
232
262
  prerelease: false
233
263
  version_requirements: !ruby/object:Gem::Requirement
264
+ none: false
234
265
  requirements:
235
- - - '>='
266
+ - - ! '>='
236
267
  - !ruby/object:Gem::Version
237
268
  version: 4.0.0.rc1
238
269
  - - <
@@ -241,6 +272,7 @@ dependencies:
241
272
  - !ruby/object:Gem::Dependency
242
273
  name: database_cleaner
243
274
  requirement: !ruby/object:Gem::Requirement
275
+ none: false
244
276
  requirements:
245
277
  - - ~>
246
278
  - !ruby/object:Gem::Version
@@ -248,6 +280,7 @@ dependencies:
248
280
  type: :development
249
281
  prerelease: false
250
282
  version_requirements: !ruby/object:Gem::Requirement
283
+ none: false
251
284
  requirements:
252
285
  - - ~>
253
286
  - !ruby/object:Gem::Version
@@ -395,26 +428,33 @@ files:
395
428
  homepage: https://github.com/fredwu/datamappify
396
429
  licenses:
397
430
  - MIT
398
- metadata: {}
399
431
  post_install_message:
400
432
  rdoc_options: []
401
433
  require_paths:
402
434
  - lib
403
435
  required_ruby_version: !ruby/object:Gem::Requirement
436
+ none: false
404
437
  requirements:
405
- - - '>='
438
+ - - ! '>='
406
439
  - !ruby/object:Gem::Version
407
440
  version: '0'
441
+ segments:
442
+ - 0
443
+ hash: -4173751016346712187
408
444
  required_rubygems_version: !ruby/object:Gem::Requirement
445
+ none: false
409
446
  requirements:
410
- - - '>='
447
+ - - ! '>='
411
448
  - !ruby/object:Gem::Version
412
449
  version: '0'
450
+ segments:
451
+ - 0
452
+ hash: -4173751016346712187
413
453
  requirements: []
414
454
  rubyforge_project:
415
- rubygems_version: 2.0.3
455
+ rubygems_version: 1.8.25
416
456
  signing_key:
417
- specification_version: 4
457
+ specification_version: 3
418
458
  summary: Compose, decouple and manage domain logic and data persistence separately.
419
459
  Works particularly great for composing form objects!
420
460
  test_files:
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: bad8103a3c5c165af76967bc3b93b2c1a79c303d
4
- data.tar.gz: a84ea4a4f05701f9bdbbb4ef68baba89f2887dc9
5
- SHA512:
6
- metadata.gz: 49c79d48411f0e71f550aeba3d0022cae4e8bf1a61aae621493164da4f64942034f348e34a0a1fe4a66221bc86cf6a744c22cf232c8722ca2580336f758b4463
7
- data.tar.gz: e6e75cdce7912e86ce5e023f3e44fee19e6c890b23c77159b883db53a53ee92b295e456aca40fef871ca997252c49139dfde9ac6190abf317707e55e501ddccc