has_metadata_column 1.1.6 → 1.1.8
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.
- checksums.yaml +5 -5
- data/README.md +4 -0
- data/has_metadata_column.gemspec +17 -8
- data/lib/has_metadata_column.rb +4 -2
- metadata +15 -10
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: b7b3be993aa7c30e66ac6eff5e552d9e7fb1a9a568acecb6200b28696f6cb8f7
|
|
4
|
+
data.tar.gz: 5eff407ec7e9559f61cf68ce60847fe6b08c18a1073a088b990bb58d1b998661
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: ca658a6cacab7e14064fd0210e680d202af1fd7bfbe8ae284d0f75ac0b4d0da6e1784b2bebb1f7df2154a7161d7139cd2b313a65add6d4b7a1751c0ff8a557b2
|
|
7
|
+
data.tar.gz: bbf8bd2460cc49f0a08abcd348127a2ea35eb7c124f4d9acfdbd4aa3ffa21528c003c99fb1b1417ae351a63e09ff45d733792e51cd35913c4da9003d1a594501
|
data/README.md
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
> ⚠️ **DEPRECATED:** `has_metadata_column` is no longer maintained. Modern Rails
|
|
2
|
+
> has native JSON column support (`store_accessor`, JSONB columns) that covers
|
|
3
|
+
> the same use cases. The final release is v1.1.8.
|
|
4
|
+
|
|
1
5
|
Has Metadata Column -- Keep your tables narrow
|
|
2
6
|
===================
|
|
3
7
|
|
data/has_metadata_column.gemspec
CHANGED
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
|
3
3
|
# Instead, edit Juwelier::Tasks in Rakefile, and run 'rake gemspec'
|
|
4
4
|
# -*- encoding: utf-8 -*-
|
|
5
|
-
# stub: has_metadata_column 1.1.
|
|
5
|
+
# stub: has_metadata_column 1.1.8 ruby lib
|
|
6
6
|
|
|
7
7
|
Gem::Specification.new do |s|
|
|
8
8
|
s.name = "has_metadata_column".freeze
|
|
9
|
-
s.version = "1.1.
|
|
9
|
+
s.version = "1.1.8"
|
|
10
10
|
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
|
|
12
12
|
s.require_paths = ["lib".freeze]
|
|
13
13
|
s.authors = ["Tim Morgan".freeze]
|
|
14
|
-
s.date = "
|
|
14
|
+
s.date = "2017-05-09"
|
|
15
15
|
s.description = "Reduce your table width and migration overhead by moving non-indexed columns to a separate metadata column.".freeze
|
|
16
16
|
s.email = "git@timothymorgan.info".freeze
|
|
17
17
|
s.extra_rdoc_files = [
|
|
@@ -26,14 +26,23 @@ Gem::Specification.new do |s|
|
|
|
26
26
|
s.homepage = "http://github.com/riscfuture/has_metadata_column".freeze
|
|
27
27
|
s.licenses = ["MIT".freeze]
|
|
28
28
|
s.required_ruby_version = Gem::Requirement.new(">= 1.9".freeze)
|
|
29
|
-
s.rubygems_version = "2.6.
|
|
30
|
-
s.summary = "Schemaless metadata using JSON columns".freeze
|
|
29
|
+
s.rubygems_version = "2.6.12".freeze
|
|
30
|
+
s.summary = "[DEPRECATED] Schemaless metadata using JSON columns".freeze
|
|
31
|
+
s.post_install_message = <<~MSG
|
|
32
|
+
|
|
33
|
+
⚠️ DEPRECATED: has_metadata_column is no longer maintained.
|
|
34
|
+
|
|
35
|
+
No longer maintained. Modern Rails has native JSON column support (`store_accessor`, JSONB columns) that covers the same use cases.
|
|
36
|
+
|
|
37
|
+
This is the final release. No further updates are planned.
|
|
38
|
+
|
|
39
|
+
MSG
|
|
31
40
|
|
|
32
41
|
if s.respond_to? :specification_version then
|
|
33
42
|
s.specification_version = 4
|
|
34
43
|
|
|
35
44
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
|
36
|
-
s.add_runtime_dependency(%q<rails>.freeze, [">= 5.
|
|
45
|
+
s.add_runtime_dependency(%q<rails>.freeze, [">= 5.1"])
|
|
37
46
|
s.add_runtime_dependency(%q<boolean>.freeze, [">= 0"])
|
|
38
47
|
s.add_development_dependency(%q<rspec>.freeze, [">= 0"])
|
|
39
48
|
s.add_development_dependency(%q<sqlite3>.freeze, [">= 0"])
|
|
@@ -42,7 +51,7 @@ Gem::Specification.new do |s|
|
|
|
42
51
|
s.add_development_dependency(%q<juwelier>.freeze, [">= 0"])
|
|
43
52
|
s.add_development_dependency(%q<activemodel-serializers-xml>.freeze, [">= 0"])
|
|
44
53
|
else
|
|
45
|
-
s.add_dependency(%q<rails>.freeze, [">= 5.
|
|
54
|
+
s.add_dependency(%q<rails>.freeze, [">= 5.1"])
|
|
46
55
|
s.add_dependency(%q<boolean>.freeze, [">= 0"])
|
|
47
56
|
s.add_dependency(%q<rspec>.freeze, [">= 0"])
|
|
48
57
|
s.add_dependency(%q<sqlite3>.freeze, [">= 0"])
|
|
@@ -52,7 +61,7 @@ Gem::Specification.new do |s|
|
|
|
52
61
|
s.add_dependency(%q<activemodel-serializers-xml>.freeze, [">= 0"])
|
|
53
62
|
end
|
|
54
63
|
else
|
|
55
|
-
s.add_dependency(%q<rails>.freeze, [">= 5.
|
|
64
|
+
s.add_dependency(%q<rails>.freeze, [">= 5.1"])
|
|
56
65
|
s.add_dependency(%q<boolean>.freeze, [">= 0"])
|
|
57
66
|
s.add_dependency(%q<rspec>.freeze, [">= 0"])
|
|
58
67
|
s.add_dependency(%q<sqlite3>.freeze, [">= 0"])
|
data/lib/has_metadata_column.rb
CHANGED
|
@@ -22,7 +22,7 @@ module HasMetadataColumn
|
|
|
22
22
|
included { prepend Extensions }
|
|
23
23
|
|
|
24
24
|
# Valid values for the `:type` option.
|
|
25
|
-
TYPES = [String,
|
|
25
|
+
TYPES = [String, Integer, Float, Hash, Array, TrueClass, FalseClass, Boolean, NilClass, Date, Time]
|
|
26
26
|
|
|
27
27
|
# @private
|
|
28
28
|
def self.metadata_typecast(value, type=nil)
|
|
@@ -30,7 +30,7 @@ module HasMetadataColumn
|
|
|
30
30
|
raise ArgumentError, "Can't convert objects of type #{type.to_s}" unless TYPES.include?(type)
|
|
31
31
|
|
|
32
32
|
if value.kind_of?(String) then
|
|
33
|
-
if type == Integer
|
|
33
|
+
if type == Integer then
|
|
34
34
|
begin
|
|
35
35
|
return Integer(value.sub(/^0+/, '')) # so that it doesn't think it's in octal
|
|
36
36
|
rescue ArgumentError
|
|
@@ -118,6 +118,8 @@ module HasMetadataColumn
|
|
|
118
118
|
type_validate = !options.delete(:skip_type_validation)
|
|
119
119
|
options.delete :default
|
|
120
120
|
|
|
121
|
+
attribute name
|
|
122
|
+
|
|
121
123
|
validate do |obj|
|
|
122
124
|
value = obj.send(name)
|
|
123
125
|
if !HasMetadataColumn.metadata_typecast(value, type).kind_of?(type) &&
|
metadata
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: has_metadata_column
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.1.
|
|
4
|
+
version: 1.1.8
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Tim Morgan
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 2017-05-09 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: rails
|
|
@@ -16,14 +15,14 @@ dependencies:
|
|
|
16
15
|
requirements:
|
|
17
16
|
- - ">="
|
|
18
17
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '5.
|
|
18
|
+
version: '5.1'
|
|
20
19
|
type: :runtime
|
|
21
20
|
prerelease: false
|
|
22
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
22
|
requirements:
|
|
24
23
|
- - ">="
|
|
25
24
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '5.
|
|
25
|
+
version: '5.1'
|
|
27
26
|
- !ruby/object:Gem::Dependency
|
|
28
27
|
name: boolean
|
|
29
28
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -139,7 +138,14 @@ homepage: http://github.com/riscfuture/has_metadata_column
|
|
|
139
138
|
licenses:
|
|
140
139
|
- MIT
|
|
141
140
|
metadata: {}
|
|
142
|
-
post_install_message:
|
|
141
|
+
post_install_message: |2+
|
|
142
|
+
|
|
143
|
+
⚠️ DEPRECATED: has_metadata_column is no longer maintained.
|
|
144
|
+
|
|
145
|
+
No longer maintained. Modern Rails has native JSON column support (`store_accessor`, JSONB columns) that covers the same use cases.
|
|
146
|
+
|
|
147
|
+
This is the final release. No further updates are planned.
|
|
148
|
+
|
|
143
149
|
rdoc_options: []
|
|
144
150
|
require_paths:
|
|
145
151
|
- lib
|
|
@@ -154,9 +160,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
154
160
|
- !ruby/object:Gem::Version
|
|
155
161
|
version: '0'
|
|
156
162
|
requirements: []
|
|
157
|
-
|
|
158
|
-
rubygems_version: 2.6.6
|
|
159
|
-
signing_key:
|
|
163
|
+
rubygems_version: 4.0.11
|
|
160
164
|
specification_version: 4
|
|
161
|
-
summary: Schemaless metadata using JSON columns
|
|
165
|
+
summary: "[DEPRECATED] Schemaless metadata using JSON columns"
|
|
162
166
|
test_files: []
|
|
167
|
+
...
|