dynabix 0.3.1 → 0.3.2

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.
data/.gemfiles CHANGED
@@ -2,9 +2,7 @@
2
2
  .gitattributes
3
3
  .gitignore
4
4
  .rspec
5
- .yardopts
6
5
  Gemfile
7
- Gemfile.lock
8
6
  Guardfile
9
7
  HISTORY.markdown
10
8
  LICENSE
data/.gitignore CHANGED
@@ -1,7 +1,8 @@
1
+ .DS_Store
2
+ Gemfile.lock
1
3
  /pkg/
2
4
  /.bundle/
3
5
  /rdoc/
4
- /.yardoc/
5
6
  rerun.txt
6
7
  tags
7
8
  /tmp/
@@ -7,6 +7,10 @@ Most recent changes are at the top
7
7
  Changes
8
8
  -------
9
9
 
10
+ ### 0.3.2 - 12/21/2017 ###
11
+
12
+ * Update and remove dependencies with known security issues
13
+
10
14
  ### 0.3.1 - 5/7/2012 ###
11
15
 
12
16
  * fix for activerecord not marking nested model serializers dirty
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2012 GearheadForHire, LLC
1
+ Copyright (c) 2012-2017 GearheadForHire, LLC
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
@@ -9,7 +9,18 @@ Overview
9
9
  --------
10
10
 
11
11
  Dynabix dynamically creates read/write accessors on ActiveRecord models for
12
- storing attributes in a serialized Hash.
12
+ storing attributes in a serialized Hash. Read more in our introductory
13
+ [blog article](http://www.gearheadforhire.com/articles/ruby/dynabix/activerecord-gem-for-attribute-serialization).
14
+
15
+ ActiveRecord's native 'store' method
16
+ ------------------------------------
17
+
18
+ ActiveRecord as of 3.2.1, has a very similar native method
19
+ [store](http://apidock.com/rails/ActiveRecord/Store). Dynabix differs
20
+ from store by providing a declarative DSL for defining multiple stores
21
+ (Ruby 1.9+), has separate read/write accessors, and stores to the database
22
+ as HashWithIndifferentAccess. Unless you need one of these specific
23
+ features, using the native 'store' method is recommended.
13
24
 
14
25
  Installation
15
26
  ------------
@@ -74,7 +85,7 @@ the attributes in a separate step.
74
85
  metadata_reader :friends_with_spoons
75
86
  end
76
87
 
77
- Specifying attributes for full attributes accessors in one step
88
+ Specifying attributes for full attribute accessors in one step
78
89
 
79
90
  class Thing < ActiveRecord::Base
80
91
  has_metadata :metadata, :breakfast_food, :wheat_products, :needs_milk
@@ -86,7 +97,7 @@ Using the new accessors
86
97
 
87
98
  thing.breakfast_food = 'a wheat like cereal"
88
99
 
89
- # same thing, but not using the hash directly
100
+ # same thing, but using the hash directly
90
101
  thing.metadata[:breakfast_food] = 'a wheat like cereal"
91
102
 
92
103
  ### Ruby 1.9+
@@ -111,13 +122,13 @@ Specifying multiple metadata serializers (Ruby 1.9 only)
111
122
  has_metadata :chickens, :tasty, :feather_count
112
123
 
113
124
  # read-only
114
- cow_reader :likes_milk, :hates_eggs
125
+ cows_reader :likes_milk, :hates_eggs
115
126
 
116
127
  # write-only
117
- cow_writer :no_wheat_products
128
+ cows_writer :no_wheat_products
118
129
 
119
130
  # extra full accessors for chickens
120
- chicken_accessor :color, :likes_eggs
131
+ chickens_accessor :color, :likes_eggs
121
132
  end
122
133
 
123
134
  Runtime dependencies
@@ -151,4 +162,4 @@ bundle exec rake -T
151
162
  Copyright
152
163
  ---------
153
164
 
154
- Copyright (c) 2012 GearheadForHire, LLC. See [LICENSE](LICENSE) for details.
165
+ Copyright (c) 2012-2017 GearheadForHire, LLC. See [LICENSE](LICENSE) for details.
data/Rakefile CHANGED
@@ -13,33 +13,6 @@ end
13
13
 
14
14
  task :default => :spec
15
15
 
16
- namespace :doc do
17
-
18
- doc_version = File.open(File.join(File.dirname(__FILE__), 'VERSION'), "r") { |f| f.read }
19
- project_root = File.expand_path(File.dirname(__FILE__))
20
- doc_destination = File.join(project_root, 'rdoc')
21
-
22
- require 'yard'
23
-
24
- YARD::Rake::YardocTask.new(:generate) do |yt|
25
- yt.options = ['--output-dir', doc_destination,
26
- '--title', "Dynabix #{doc_version} Documentation",
27
- '--main', "README.markdown"
28
- ]
29
- end
30
-
31
- desc "Remove generated documenation"
32
- task :clean do
33
- rm_r doc_destination if File.exists?(doc_destination)
34
- end
35
-
36
- desc "List undocumented objects"
37
- task :undocumented do
38
- system('yard stats --list-undoc')
39
- end
40
-
41
- end
42
-
43
16
  # put the gemfiles task in the bundler dependency chain
44
17
  task :build => [:gemfiles]
45
18
  task :install => [:gemfiles]
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.1
1
+ 0.3.2
@@ -33,14 +33,15 @@ Gem::Specification.new do |s|
33
33
  s.add_dependency "activerecord", "~> 3.0"
34
34
 
35
35
  s.add_development_dependency "bundler", ">= 1.0.14"
36
- s.add_development_dependency "rspec", ">= 2.6.0"
36
+ s.add_development_dependency "rspec", "~> 2.9.0"
37
37
  s.add_development_dependency "aruba", "= 0.4.5"
38
- s.add_development_dependency "rake", ">= 0.8.7"
38
+ s.add_development_dependency "rake", "~> 0.9.2"
39
39
  s.add_development_dependency "sqlite3-ruby", ">= 0.8.7"
40
40
 
41
- # doc generation
42
- s.add_development_dependency "yard", ">= 0.7.4"
43
- s.add_development_dependency "redcarpet", ">= 1.17.2"
41
+ # lock downs from Arubu to prevent requiring Ruby 2.0+
42
+ s.add_development_dependency "cucumber", "~> 1.1.9"
43
+ s.add_dependency 'tins', '~> 1.6.0'
44
+ s.add_dependency 'term-ansicolor', '~> 1.0.7'
44
45
 
45
46
  # guard, watches files and runs specs and features
46
47
  #
metadata CHANGED
@@ -1,196 +1,205 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: dynabix
3
- version: !ruby/object:Gem::Version
4
- hash: 17
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.3.2
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 3
9
- - 1
10
- version: 0.3.1
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Robert Wahler
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2012-05-07 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
21
- type: :runtime
12
+ date: 2017-12-21 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: activerecord
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '3.0'
22
+ type: :runtime
23
23
  prerelease: false
24
- version_requirements: &id001 !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ~>
28
- - !ruby/object:Gem::Version
29
- hash: 7
30
- segments:
31
- - 3
32
- - 0
33
- version: "3.0"
34
- requirement: *id001
35
- - !ruby/object:Gem::Dependency
36
- type: :development
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '3.0'
30
+ - !ruby/object:Gem::Dependency
37
31
  name: bundler
38
- prerelease: false
39
- version_requirements: &id002 !ruby/object:Gem::Requirement
40
- none: false
41
- requirements:
42
- - - ">="
43
- - !ruby/object:Gem::Version
44
- hash: 11
45
- segments:
46
- - 1
47
- - 0
48
- - 14
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
49
37
  version: 1.0.14
50
- requirement: *id002
51
- - !ruby/object:Gem::Dependency
52
38
  type: :development
53
- name: rspec
54
39
  prerelease: false
55
- version_requirements: &id003 !ruby/object:Gem::Requirement
56
- none: false
57
- requirements:
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- hash: 23
61
- segments:
62
- - 2
63
- - 6
64
- - 0
65
- version: 2.6.0
66
- requirement: *id003
67
- - !ruby/object:Gem::Dependency
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: 1.0.14
46
+ - !ruby/object:Gem::Dependency
47
+ name: rspec
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ~>
52
+ - !ruby/object:Gem::Version
53
+ version: 2.9.0
68
54
  type: :development
69
- name: aruba
70
55
  prerelease: false
71
- version_requirements: &id004 !ruby/object:Gem::Requirement
72
- none: false
73
- requirements:
74
- - - "="
75
- - !ruby/object:Gem::Version
76
- hash: 5
77
- segments:
78
- - 0
79
- - 4
80
- - 5
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 2.9.0
62
+ - !ruby/object:Gem::Dependency
63
+ name: aruba
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - '='
68
+ - !ruby/object:Gem::Version
81
69
  version: 0.4.5
82
- requirement: *id004
83
- - !ruby/object:Gem::Dependency
84
70
  type: :development
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - '='
76
+ - !ruby/object:Gem::Version
77
+ version: 0.4.5
78
+ - !ruby/object:Gem::Dependency
85
79
  name: rake
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ~>
84
+ - !ruby/object:Gem::Version
85
+ version: 0.9.2
86
+ type: :development
86
87
  prerelease: false
87
- version_requirements: &id005 !ruby/object:Gem::Requirement
88
- none: false
89
- requirements:
90
- - - ">="
91
- - !ruby/object:Gem::Version
92
- hash: 49
93
- segments:
94
- - 0
95
- - 8
96
- - 7
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ version: 0.9.2
94
+ - !ruby/object:Gem::Dependency
95
+ name: sqlite3-ruby
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
97
101
  version: 0.8.7
98
- requirement: *id005
99
- - !ruby/object:Gem::Dependency
100
102
  type: :development
101
- name: sqlite3-ruby
102
103
  prerelease: false
103
- version_requirements: &id006 !ruby/object:Gem::Requirement
104
- none: false
105
- requirements:
106
- - - ">="
107
- - !ruby/object:Gem::Version
108
- hash: 49
109
- segments:
110
- - 0
111
- - 8
112
- - 7
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
113
109
  version: 0.8.7
114
- requirement: *id006
115
- - !ruby/object:Gem::Dependency
110
+ - !ruby/object:Gem::Dependency
111
+ name: cucumber
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ~>
116
+ - !ruby/object:Gem::Version
117
+ version: 1.1.9
116
118
  type: :development
117
- name: yard
118
119
  prerelease: false
119
- version_requirements: &id007 !ruby/object:Gem::Requirement
120
- none: false
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- hash: 11
125
- segments:
126
- - 0
127
- - 7
128
- - 4
129
- version: 0.7.4
130
- requirement: *id007
131
- - !ruby/object:Gem::Dependency
132
- type: :development
133
- name: redcarpet
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ~>
124
+ - !ruby/object:Gem::Version
125
+ version: 1.1.9
126
+ - !ruby/object:Gem::Dependency
127
+ name: tins
128
+ requirement: !ruby/object:Gem::Requirement
129
+ none: false
130
+ requirements:
131
+ - - ~>
132
+ - !ruby/object:Gem::Version
133
+ version: 1.6.0
134
+ type: :runtime
134
135
  prerelease: false
135
- version_requirements: &id008 !ruby/object:Gem::Requirement
136
- none: false
137
- requirements:
138
- - - ">="
139
- - !ruby/object:Gem::Version
140
- hash: 87
141
- segments:
142
- - 1
143
- - 17
144
- - 2
145
- version: 1.17.2
146
- requirement: *id008
147
- - !ruby/object:Gem::Dependency
148
- type: :development
149
- name: guard
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ~>
140
+ - !ruby/object:Gem::Version
141
+ version: 1.6.0
142
+ - !ruby/object:Gem::Dependency
143
+ name: term-ansicolor
144
+ requirement: !ruby/object:Gem::Requirement
145
+ none: false
146
+ requirements:
147
+ - - ~>
148
+ - !ruby/object:Gem::Version
149
+ version: 1.0.7
150
+ type: :runtime
150
151
  prerelease: false
151
- version_requirements: &id009 !ruby/object:Gem::Requirement
152
- none: false
153
- requirements:
154
- - - ~>
155
- - !ruby/object:Gem::Version
156
- hash: 15
157
- segments:
158
- - 1
159
- - 0
160
- version: "1.0"
161
- requirement: *id009
162
- - !ruby/object:Gem::Dependency
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ~>
156
+ - !ruby/object:Gem::Version
157
+ version: 1.0.7
158
+ - !ruby/object:Gem::Dependency
159
+ name: guard
160
+ requirement: !ruby/object:Gem::Requirement
161
+ none: false
162
+ requirements:
163
+ - - ~>
164
+ - !ruby/object:Gem::Version
165
+ version: '1.0'
163
166
  type: :development
167
+ prerelease: false
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - ~>
172
+ - !ruby/object:Gem::Version
173
+ version: '1.0'
174
+ - !ruby/object:Gem::Dependency
164
175
  name: guard-rspec
176
+ requirement: !ruby/object:Gem::Requirement
177
+ none: false
178
+ requirements:
179
+ - - ~>
180
+ - !ruby/object:Gem::Version
181
+ version: '0.6'
182
+ type: :development
165
183
  prerelease: false
166
- version_requirements: &id010 !ruby/object:Gem::Requirement
167
- none: false
168
- requirements:
169
- - - ~>
170
- - !ruby/object:Gem::Version
171
- hash: 7
172
- segments:
173
- - 0
174
- - 6
175
- version: "0.6"
176
- requirement: *id010
177
- description: Dynabix dynamically creates read/write accessors on ActiveRecord models for storing attributes in a serialized Hash
178
- email:
184
+ version_requirements: !ruby/object:Gem::Requirement
185
+ none: false
186
+ requirements:
187
+ - - ~>
188
+ - !ruby/object:Gem::Version
189
+ version: '0.6'
190
+ description: Dynabix dynamically creates read/write accessors on ActiveRecord models
191
+ for storing attributes in a serialized Hash
192
+ email:
179
193
  - robert@gearheadforhire.com
180
194
  executables: []
181
-
182
195
  extensions: []
183
-
184
196
  extra_rdoc_files: []
185
-
186
- files:
197
+ files:
187
198
  - .gemfiles
188
199
  - .gitattributes
189
200
  - .gitignore
190
201
  - .rspec
191
- - .yardopts
192
202
  - Gemfile
193
- - Gemfile.lock
194
203
  - Guardfile
195
204
  - HISTORY.markdown
196
205
  - LICENSE
@@ -209,44 +218,35 @@ files:
209
218
  - spec/spec_helper.rb
210
219
  homepage: http://rubygems.org/gems/dynabix
211
220
  licenses: []
212
-
213
221
  post_install_message:
214
- rdoc_options:
222
+ rdoc_options:
215
223
  - --title
216
224
  - Dynabix Documentation
217
225
  - --main
218
226
  - README.markdown
219
227
  - --line-numbers
220
228
  - --inline-source
221
- require_paths:
229
+ require_paths:
222
230
  - lib
223
- required_ruby_version: !ruby/object:Gem::Requirement
231
+ required_ruby_version: !ruby/object:Gem::Requirement
224
232
  none: false
225
- requirements:
226
- - - ">="
227
- - !ruby/object:Gem::Version
228
- hash: 3
229
- segments:
233
+ requirements:
234
+ - - ! '>='
235
+ - !ruby/object:Gem::Version
236
+ version: '0'
237
+ segments:
230
238
  - 0
231
- version: "0"
232
- required_rubygems_version: !ruby/object:Gem::Requirement
239
+ hash: -1254040331280471353
240
+ required_rubygems_version: !ruby/object:Gem::Requirement
233
241
  none: false
234
- requirements:
235
- - - ">="
236
- - !ruby/object:Gem::Version
237
- hash: 23
238
- segments:
239
- - 1
240
- - 3
241
- - 6
242
+ requirements:
243
+ - - ! '>='
244
+ - !ruby/object:Gem::Version
242
245
  version: 1.3.6
243
246
  requirements: []
244
-
245
247
  rubyforge_project: dynabix
246
- rubygems_version: 1.8.21
248
+ rubygems_version: 1.8.23.2
247
249
  signing_key:
248
250
  specification_version: 3
249
251
  summary: An ActiveRecord 3.x Ruby gem for attribute serialization
250
252
  test_files: []
251
-
252
- has_rdoc:
data/.yardopts DELETED
@@ -1,9 +0,0 @@
1
- --verbose
2
- lib/**/*.rb
3
- features/**/*.feature
4
- features/step_definitions/**/*.rb
5
- features/support/env.rb
6
- -
7
- LICENSE
8
- HISTORY.markdown
9
- VERSION
@@ -1,87 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- dynabix (0.3.1)
5
- activerecord (~> 3.0)
6
-
7
- GEM
8
- remote: http://rubygems.org/
9
- specs:
10
- activemodel (3.2.3)
11
- activesupport (= 3.2.3)
12
- builder (~> 3.0.0)
13
- activerecord (3.2.3)
14
- activemodel (= 3.2.3)
15
- activesupport (= 3.2.3)
16
- arel (~> 3.0.2)
17
- tzinfo (~> 0.3.29)
18
- activesupport (3.2.3)
19
- i18n (~> 0.6)
20
- multi_json (~> 1.0)
21
- arel (3.0.2)
22
- aruba (0.4.5)
23
- bcat (>= 0.6.1)
24
- childprocess (>= 0.1.9)
25
- cucumber (>= 0.10.7)
26
- rdiscount (>= 1.6.8)
27
- rspec (>= 2.6.0)
28
- bcat (0.6.2)
29
- rack (~> 1.0)
30
- builder (3.0.0)
31
- childprocess (0.3.1)
32
- ffi (~> 1.0.6)
33
- cucumber (1.1.9)
34
- builder (>= 2.1.2)
35
- diff-lcs (>= 1.1.2)
36
- gherkin (~> 2.9.0)
37
- json (>= 1.4.6)
38
- term-ansicolor (>= 1.0.6)
39
- diff-lcs (1.1.3)
40
- ffi (1.0.11)
41
- gherkin (2.9.0)
42
- json (>= 1.4.6)
43
- guard (1.0.1)
44
- ffi (>= 0.5.0)
45
- thor (~> 0.14.6)
46
- guard-rspec (0.7.0)
47
- guard (>= 0.10.0)
48
- i18n (0.6.0)
49
- json (1.6.6)
50
- libnotify (0.7.2)
51
- ffi (~> 1.0.0)
52
- multi_json (1.3.4)
53
- rack (1.4.1)
54
- rake (0.9.2.2)
55
- rdiscount (1.6.8)
56
- redcarpet (2.1.0)
57
- rspec (2.9.0)
58
- rspec-core (~> 2.9.0)
59
- rspec-expectations (~> 2.9.0)
60
- rspec-mocks (~> 2.9.0)
61
- rspec-core (2.9.0)
62
- rspec-expectations (2.9.1)
63
- diff-lcs (~> 1.1.3)
64
- rspec-mocks (2.9.0)
65
- sqlite3 (1.3.5)
66
- sqlite3-ruby (1.3.3)
67
- sqlite3 (>= 1.3.3)
68
- term-ansicolor (1.0.7)
69
- thor (0.14.6)
70
- tzinfo (0.3.33)
71
- yard (0.7.5)
72
-
73
- PLATFORMS
74
- ruby
75
-
76
- DEPENDENCIES
77
- aruba (= 0.4.5)
78
- bundler (>= 1.0.14)
79
- dynabix!
80
- guard (~> 1.0)
81
- guard-rspec (~> 0.6)
82
- libnotify
83
- rake (>= 0.8.7)
84
- redcarpet (>= 1.17.2)
85
- rspec (>= 2.6.0)
86
- sqlite3-ruby (>= 0.8.7)
87
- yard (>= 0.7.4)