datamappify 0.53.0 → 0.53.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -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