activerecord_enum 0.3.0 → 0.4.0
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 +7 -0
- data/.gitignore +1 -0
- data/.ruby-version +1 -0
- data/.travis.yml +5 -2
- data/README.markdown +39 -11
- data/Rakefile +18 -1
- data/activerecord_enum.gemspec +1 -1
- data/lib/activerecord_enum/activerecord_enum_post42.rb +63 -0
- data/lib/activerecord_enum/activerecord_enum_pre42.rb +46 -0
- data/lib/activerecord_enum/version.rb +1 -1
- data/lib/activerecord_enum.rb +5 -45
- data/spec/Gemfile.rails_4_0 +1 -1
- data/spec/Gemfile.rails_4_1 +4 -0
- data/spec/Gemfile.rails_4_2 +4 -0
- data/spec/enum_spec.rb +8 -8
- data/spec/set_spec.rb +8 -8
- data/spec/spec_helper.rb +1 -1
- metadata +31 -39
- data/spec/all_rails +0 -7
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: f6e9e6b41679748cd07a916dfa48727efbeed9fc
|
4
|
+
data.tar.gz: cdfeea56ecd2d3a377e744296d5d6e630709b43c
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 25bfcf50c45bc6a199b002667920c64e74dd6075b58ec01010d27c09276b3812cf805c574d931f552e5208e0b78ca88df4768afc07bf561e489960663bdbc90e
|
7
|
+
data.tar.gz: b91575ff89b2d1ada7a72548d72f06608d6182a66458b9a85ece4733fd19e3b254e89e23379c7764b3ad011e7b6b26db1585208d165007983bec1b7705c4b378
|
data/.gitignore
CHANGED
data/.ruby-version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
2.1.2
|
data/.travis.yml
CHANGED
@@ -1,8 +1,11 @@
|
|
1
1
|
language: ruby
|
2
2
|
rvm:
|
3
3
|
- 1.9.3
|
4
|
-
- 2.0
|
4
|
+
- "2.0"
|
5
|
+
- "2.1"
|
6
|
+
- "2.2"
|
5
7
|
before_script:
|
6
8
|
- "mysql -e 'create database activerecord_enum_test;' >/dev/null"
|
7
9
|
- "cp spec/{.travis.,}database.yml"
|
8
|
-
script:
|
10
|
+
script: bundle exec rake spec:rails_all
|
11
|
+
sudo: false
|
data/README.markdown
CHANGED
@@ -1,22 +1,32 @@
|
|
1
1
|
# ActiveRecord Enum #
|
2
2
|
|
3
|
-
Provides ActiveRecord support for the nonstandard `ENUM` and `SET` data types.
|
3
|
+
Provides ActiveRecord (and thus Rails) support for the nonstandard `ENUM` and `SET` data types.
|
4
4
|
|
5
5
|
[](http://travis-ci.org/iangreenleaf/activerecord_enum)
|
6
6
|
|
7
|
-
##
|
7
|
+
## How now? ##
|
8
8
|
|
9
|
-
|
9
|
+
It sucks to have ActiveRecord not understand your `ENUM` columns and constantly write the wrong thing to your `schema.rb`.
|
10
|
+
It also sucks to work with a database that uses `ENUM` in production when you'd prefer sqlite in development.
|
11
|
+
Wait no longer...
|
10
12
|
|
11
|
-
|
13
|
+
```ruby
|
14
|
+
create_table :balloons, :force => true do |t|
|
15
|
+
t.enum "color", :limit => ['red', 'gold'], :default => 'gold', :null => false
|
16
|
+
# or...
|
17
|
+
t.column "size", :enum, :limit => ['small', 'medium', 'large']
|
18
|
+
end
|
19
|
+
```
|
12
20
|
|
13
|
-
|
21
|
+
Your schema<->db coupling will work again, and it will fall back to a `VARCHAR` column on any adapters that don't support `ENUM`.
|
14
22
|
|
15
|
-
|
23
|
+
## Installation ##
|
16
24
|
|
17
|
-
|
25
|
+
```
|
26
|
+
gem 'activerecord_enum'
|
27
|
+
```
|
18
28
|
|
19
|
-
|
29
|
+
Boy, that was easy.
|
20
30
|
|
21
31
|
## Hypothetically asked questions ##
|
22
32
|
|
@@ -24,9 +34,9 @@ To run the tests for just one adapter:
|
|
24
34
|
|
25
35
|
It currently works with:
|
26
36
|
|
27
|
-
*
|
37
|
+
* ActiveRecord 3.x and 4.0, 4.1, and 4.2.
|
28
38
|
* The `mysql2` and `sqlite` adapters.
|
29
|
-
* Ruby 1.9.3, 2.0.
|
39
|
+
* Ruby 1.9.3, 2.0.x, 2.1.x, and 2.2.x.
|
30
40
|
|
31
41
|
If you'd like to support other adapters, pull requests are welcome!
|
32
42
|
|
@@ -48,4 +58,22 @@ This isn't a plugin everyone should use. There are a number of plugins to simula
|
|
48
58
|
|
49
59
|
However, sometimes we can't or won't avoid working with these data types. When that happens, I got you covered.
|
50
60
|
|
51
|
-
##
|
61
|
+
## Contributing ##
|
62
|
+
|
63
|
+
Pull requests welcome! Join
|
64
|
+
[this lovely bunch of people](https://github.com/iangreenleaf/activerecord_enum/graphs/contributors).
|
65
|
+
|
66
|
+
|
67
|
+
### Running the tests ###
|
68
|
+
|
69
|
+
To run the tests for all supported database adapters:
|
70
|
+
|
71
|
+
rake spec:all
|
72
|
+
|
73
|
+
To run the tests for all adapters and all versions of ActiveRecord:
|
74
|
+
|
75
|
+
rake spec:rails_all
|
76
|
+
|
77
|
+
To run the tests for just one adapter:
|
78
|
+
|
79
|
+
DB=mysql rake spec
|
data/Rakefile
CHANGED
@@ -3,6 +3,7 @@ require 'yaml'
|
|
3
3
|
Bundler::GemHelper.install_tasks
|
4
4
|
|
5
5
|
DB_CONFIG = "spec/database.yml"
|
6
|
+
GEMFILES = "spec/Gemfile.rails_[0-9]_[0-9]"
|
6
7
|
|
7
8
|
require 'rake'
|
8
9
|
desc 'Default: run all unit tests.'
|
@@ -20,7 +21,10 @@ end
|
|
20
21
|
|
21
22
|
require "rspec/core/rake_task"
|
22
23
|
desc 'Run the test suite.'
|
23
|
-
RSpec::Core::RakeTask.new(:spec)
|
24
|
+
RSpec::Core::RakeTask.new(:spec) do |t|
|
25
|
+
t.pattern = 'spec/*_spec.rb'
|
26
|
+
t.exclude_pattern = 'spec/**/vendor/*'
|
27
|
+
end
|
24
28
|
|
25
29
|
desc 'Run the test suite for all DBs.'
|
26
30
|
namespace :spec do
|
@@ -32,4 +36,17 @@ namespace :spec do
|
|
32
36
|
Rake::Task["spec"].invoke
|
33
37
|
end
|
34
38
|
end
|
39
|
+
|
40
|
+
desc 'Run the test suite for all supported versions of rails and all DBs'
|
41
|
+
task :rails_all do
|
42
|
+
STDOUT.sync = true
|
43
|
+
versions = Dir.glob(GEMFILES)
|
44
|
+
versions.each do |gemfile|
|
45
|
+
puts "Running specs for Gemfile: #{gemfile}"
|
46
|
+
Bundler.with_clean_env do
|
47
|
+
sh "bundle install --gemfile '#{gemfile}' --path 'vendor/#{File.extname(gemfile).slice(1..-1)}'"
|
48
|
+
sh "BUNDLE_GEMFILE='#{gemfile}' bundle exec rake spec:all"
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
35
52
|
end
|
data/activerecord_enum.gemspec
CHANGED
@@ -19,7 +19,7 @@ Gem::Specification.new do |s|
|
|
19
19
|
s.add_development_dependency "bundler"
|
20
20
|
s.add_development_dependency "mysql2", "~> 0.3.11"
|
21
21
|
s.add_development_dependency "sqlite3", "~>1.3.4"
|
22
|
-
s.add_development_dependency "rspec", "~>
|
22
|
+
s.add_development_dependency "rspec", "~> 3.1.0"
|
23
23
|
|
24
24
|
s.files = `git ls-files`.split("\n")
|
25
25
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
@@ -0,0 +1,63 @@
|
|
1
|
+
module ActiveRecord
|
2
|
+
module ConnectionAdapters
|
3
|
+
if defined?(AbstractMysqlAdapter)
|
4
|
+
class AbstractMysqlAdapter
|
5
|
+
protected
|
6
|
+
def initialize_type_map_with_enum(m)
|
7
|
+
initialize_without_enum(m)
|
8
|
+
register_enum_type(m, %r(^enum)i)
|
9
|
+
register_set_type(m, %r(^set)i)
|
10
|
+
end
|
11
|
+
|
12
|
+
alias_method :initialize_without_enum, :initialize_type_map
|
13
|
+
alias_method :initialize_type_map, :initialize_type_map_with_enum
|
14
|
+
|
15
|
+
def register_enum_type(mapping, key)
|
16
|
+
mapping.register_type(key) do |sql_type|
|
17
|
+
if sql_type =~ /(?:enum)\(([^)]+)\)/i
|
18
|
+
limit = $1.scan( /'([^']*)'/ ).flatten
|
19
|
+
Type::Enum.new(limit: limit)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def register_set_type(mapping, key)
|
25
|
+
mapping.register_type(key) do |sql_type|
|
26
|
+
if sql_type =~ /(?:set)\(([^)]+)\)/i
|
27
|
+
limit = $1.scan( /'([^']*)'/ ).flatten
|
28
|
+
Type::Set.new(limit: limit)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
module Type
|
37
|
+
class Enum < Type::Value
|
38
|
+
def type
|
39
|
+
:enum
|
40
|
+
end
|
41
|
+
|
42
|
+
def initialize(options = {})
|
43
|
+
options.assert_valid_keys(:limit)
|
44
|
+
@limit = options[:limit]
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
class Set < Type::Value
|
49
|
+
def type
|
50
|
+
:set
|
51
|
+
end
|
52
|
+
|
53
|
+
def initialize(options = {})
|
54
|
+
options.assert_valid_keys(:limit)
|
55
|
+
@limit = options[:limit]
|
56
|
+
end
|
57
|
+
|
58
|
+
def type_cast_from_database(value)
|
59
|
+
value.split(",")
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module ActiveRecord
|
2
|
+
module ConnectionAdapters
|
3
|
+
class Column
|
4
|
+
def initialize_with_enum name, default, sql_type=nil, *args
|
5
|
+
initialize_without_enum name, default, sql_type, *args
|
6
|
+
@type = simplified_type_with_enum sql_type
|
7
|
+
@limit = extract_limit_with_enum sql_type
|
8
|
+
@default = extract_default_with_enum default
|
9
|
+
end
|
10
|
+
alias_method :initialize_without_enum, :initialize
|
11
|
+
alias_method :initialize, :initialize_with_enum
|
12
|
+
|
13
|
+
def simplified_type_with_enum field_type
|
14
|
+
if field_type =~ /enum|set/i
|
15
|
+
$&.to_sym
|
16
|
+
else
|
17
|
+
simplified_type field_type
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
def extract_limit_with_enum field_type
|
22
|
+
if field_type =~ /(?:enum|set)\(([^)]+)\)/i
|
23
|
+
$1.scan( /'([^']*)'/ ).flatten
|
24
|
+
else
|
25
|
+
extract_limit field_type
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
def extract_default_with_enum default
|
30
|
+
if type == :set
|
31
|
+
default.split "," if default.present?
|
32
|
+
else
|
33
|
+
extract_default default
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
def set?
|
38
|
+
type == :set
|
39
|
+
end
|
40
|
+
|
41
|
+
def enum?
|
42
|
+
type == :enum
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
data/lib/activerecord_enum.rb
CHANGED
@@ -5,52 +5,12 @@ require 'active_record/connection_adapters/abstract/schema_definitions.rb'
|
|
5
5
|
require 'connection_adapters/sqlite3' if defined?( SQLite3 )
|
6
6
|
require 'connection_adapters/mysql2' if defined?( Mysql2 )
|
7
7
|
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
initialize_without_enum name, default, sql_type, *args
|
13
|
-
@type = simplified_type_with_enum sql_type
|
14
|
-
@limit = extract_limit_with_enum sql_type
|
15
|
-
@default = extract_default_with_enum default
|
16
|
-
end
|
17
|
-
alias_method :initialize_without_enum, :initialize
|
18
|
-
alias_method :initialize, :initialize_with_enum
|
19
|
-
|
20
|
-
def simplified_type_with_enum field_type
|
21
|
-
if field_type =~ /enum|set/i
|
22
|
-
$&.to_sym
|
23
|
-
else
|
24
|
-
simplified_type field_type
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
def extract_limit_with_enum field_type
|
29
|
-
if field_type =~ /(?:enum|set)\(([^)]+)\)/i
|
30
|
-
$1.scan( /'([^']*)'/ ).flatten
|
31
|
-
else
|
32
|
-
extract_limit field_type
|
33
|
-
end
|
34
|
-
end
|
35
|
-
|
36
|
-
def extract_default_with_enum default
|
37
|
-
if type == :set
|
38
|
-
default.split "," if default.present?
|
39
|
-
else
|
40
|
-
extract_default default
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
def set?
|
45
|
-
type == :set
|
46
|
-
end
|
47
|
-
|
48
|
-
def enum?
|
49
|
-
type == :enum
|
50
|
-
end
|
51
|
-
end
|
52
|
-
end
|
8
|
+
if ActiveRecord::VERSION::MAJOR < 4 || (ActiveRecord::VERSION::MAJOR == 4 && ActiveRecord::VERSION::MINOR <= 1)
|
9
|
+
require 'activerecord_enum/activerecord_enum_pre42.rb'
|
10
|
+
else
|
11
|
+
require 'activerecord_enum/activerecord_enum_post42.rb'
|
53
12
|
end
|
13
|
+
|
54
14
|
module ActiveRecord
|
55
15
|
module ConnectionAdapters
|
56
16
|
class TableDefinition
|
data/spec/Gemfile.rails_4_0
CHANGED
data/spec/enum_spec.rb
CHANGED
@@ -7,15 +7,15 @@ describe "ENUM datatype" do
|
|
7
7
|
subject { dumped_schema }
|
8
8
|
|
9
9
|
it "dumps native format" do
|
10
|
-
subject.
|
10
|
+
expect(subject).to match %r{t\.enum\s+"color",\s+(:limit =>|limit:) \["blue", "red", "yellow"\]}
|
11
11
|
end
|
12
12
|
|
13
13
|
it "dumps default option" do
|
14
|
-
subject.
|
14
|
+
expect(subject).to match %r{t\.enum\s+"color",.+(:default =>|default:) "red"}
|
15
15
|
end
|
16
16
|
|
17
17
|
it "dumps null option" do
|
18
|
-
subject.
|
18
|
+
expect(subject).to match %r{t\.enum\s+"color",.+(:null =>|null:) false$}
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
@@ -24,24 +24,24 @@ describe "ENUM datatype" do
|
|
24
24
|
subject { column_props :balloons, :color }
|
25
25
|
|
26
26
|
it "loads native format", :db_support => true do
|
27
|
-
subject[
|
27
|
+
expect(subject[:type]).to eq("enum('red','gold')")
|
28
28
|
end
|
29
29
|
|
30
30
|
it "falls back to text when missing db support", :db_support => false do
|
31
|
-
subject[
|
31
|
+
expect(subject[:type]).to match(/varchar/)
|
32
32
|
end
|
33
33
|
|
34
34
|
it "loads default option" do
|
35
|
-
subject[
|
35
|
+
expect(subject[:default]).to eq("gold")
|
36
36
|
end
|
37
37
|
|
38
38
|
it "loads null option" do
|
39
|
-
subject[
|
39
|
+
expect(subject[:null]).to eq(false)
|
40
40
|
end
|
41
41
|
|
42
42
|
it "loads native column format", :db_support => true do
|
43
43
|
subject = column_props :balloons, :size
|
44
|
-
subject[
|
44
|
+
expect(subject[:type]).to eq("enum('small','medium','large')")
|
45
45
|
end
|
46
46
|
end
|
47
47
|
end
|
data/spec/set_spec.rb
CHANGED
@@ -7,15 +7,15 @@ describe "SET datatype" do
|
|
7
7
|
subject { dumped_schema }
|
8
8
|
|
9
9
|
it "dumps native format" do
|
10
|
-
subject.
|
10
|
+
expect(subject).to match %r{t\.set\s+"gadgets",\s+(:limit =>|limit:) \["propeller", "tail gun", "gps"\]}
|
11
11
|
end
|
12
12
|
|
13
13
|
it "dumps default option" do
|
14
|
-
subject.
|
14
|
+
expect(subject).to match %r{t\.set\s+"gadgets",.+(:default =>|default:) \["propeller", "gps"\]}
|
15
15
|
end
|
16
16
|
|
17
17
|
it "dumps null option" do
|
18
|
-
subject.
|
18
|
+
expect(subject).to match %r{t\.set\s+"gadgets",.+(:null =>|null:) false$}
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
@@ -24,24 +24,24 @@ describe "SET datatype" do
|
|
24
24
|
subject { column_props :balloons, :ribbons }
|
25
25
|
|
26
26
|
it "loads native format", :db_support => true do
|
27
|
-
subject[
|
27
|
+
expect(subject[:type]).to eq("set('red','green','gold')")
|
28
28
|
end
|
29
29
|
|
30
30
|
it "falls back to text when missing db support", :db_support => false do
|
31
|
-
subject[
|
31
|
+
expect(subject[:type]).to match(/varchar/)
|
32
32
|
end
|
33
33
|
|
34
34
|
it "loads default option" do
|
35
|
-
subject[
|
35
|
+
expect(subject[:default]).to eq("green,gold")
|
36
36
|
end
|
37
37
|
|
38
38
|
it "loads null option" do
|
39
|
-
subject[
|
39
|
+
expect(subject[:null]).to eq(false)
|
40
40
|
end
|
41
41
|
|
42
42
|
it "loads native column format", :db_support => true do
|
43
43
|
subject = column_props :balloons, :gasses
|
44
|
-
subject[
|
44
|
+
expect(subject[:type]).to eq("set('helium','hydrogen')")
|
45
45
|
end
|
46
46
|
end
|
47
47
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -42,7 +42,7 @@ require db_config[db]["adapter"]
|
|
42
42
|
require 'activerecord_enum'
|
43
43
|
|
44
44
|
ActiveRecord::Base.configurations = db_config
|
45
|
-
ActiveRecord::Base.establish_connection db
|
45
|
+
ActiveRecord::Base.establish_connection db.to_sym
|
46
46
|
RSpec.configure do |c|
|
47
47
|
c.filter_run_excluding :db_support => ! db_config[db]["supports_enums"]
|
48
48
|
end
|
metadata
CHANGED
@@ -1,112 +1,99 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activerecord_enum
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.4.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Ian Young
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2015-04-30 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: activerecord
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ">="
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '3.0'
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '3.0'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rake
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - ">="
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: '0'
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - ">="
|
44
39
|
- !ruby/object:Gem::Version
|
45
40
|
version: '0'
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: bundler
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- -
|
45
|
+
- - ">="
|
52
46
|
- !ruby/object:Gem::Version
|
53
47
|
version: '0'
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - ">="
|
60
53
|
- !ruby/object:Gem::Version
|
61
54
|
version: '0'
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: mysql2
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
|
-
- - ~>
|
59
|
+
- - "~>"
|
68
60
|
- !ruby/object:Gem::Version
|
69
61
|
version: 0.3.11
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
|
-
- - ~>
|
66
|
+
- - "~>"
|
76
67
|
- !ruby/object:Gem::Version
|
77
68
|
version: 0.3.11
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
70
|
name: sqlite3
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
83
|
-
- - ~>
|
73
|
+
- - "~>"
|
84
74
|
- !ruby/object:Gem::Version
|
85
75
|
version: 1.3.4
|
86
76
|
type: :development
|
87
77
|
prerelease: false
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
|
-
- - ~>
|
80
|
+
- - "~>"
|
92
81
|
- !ruby/object:Gem::Version
|
93
82
|
version: 1.3.4
|
94
83
|
- !ruby/object:Gem::Dependency
|
95
84
|
name: rspec
|
96
85
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
86
|
requirements:
|
99
|
-
- - ~>
|
87
|
+
- - "~>"
|
100
88
|
- !ruby/object:Gem::Version
|
101
|
-
version:
|
89
|
+
version: 3.1.0
|
102
90
|
type: :development
|
103
91
|
prerelease: false
|
104
92
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
93
|
requirements:
|
107
|
-
- - ~>
|
94
|
+
- - "~>"
|
108
95
|
- !ruby/object:Gem::Version
|
109
|
-
version:
|
96
|
+
version: 3.1.0
|
110
97
|
description: Adds the ENUM data type natively to ActiveRecord.
|
111
98
|
email:
|
112
99
|
- ian.greenleaf+github@gmail.com
|
@@ -114,14 +101,17 @@ executables: []
|
|
114
101
|
extensions: []
|
115
102
|
extra_rdoc_files: []
|
116
103
|
files:
|
117
|
-
- .gitignore
|
118
|
-
- .
|
104
|
+
- ".gitignore"
|
105
|
+
- ".ruby-version"
|
106
|
+
- ".travis.yml"
|
119
107
|
- Gemfile
|
120
108
|
- LICENSE
|
121
109
|
- README.markdown
|
122
110
|
- Rakefile
|
123
111
|
- activerecord_enum.gemspec
|
124
112
|
- lib/activerecord_enum.rb
|
113
|
+
- lib/activerecord_enum/activerecord_enum_post42.rb
|
114
|
+
- lib/activerecord_enum/activerecord_enum_pre42.rb
|
125
115
|
- lib/activerecord_enum/version.rb
|
126
116
|
- lib/connection_adapters/mysql2.rb
|
127
117
|
- lib/connection_adapters/sqlite3.rb
|
@@ -130,7 +120,8 @@ files:
|
|
130
120
|
- spec/Gemfile.rails_3_1
|
131
121
|
- spec/Gemfile.rails_3_2
|
132
122
|
- spec/Gemfile.rails_4_0
|
133
|
-
- spec/
|
123
|
+
- spec/Gemfile.rails_4_1
|
124
|
+
- spec/Gemfile.rails_4_2
|
134
125
|
- spec/database.yml.tmpl
|
135
126
|
- spec/enum_spec.rb
|
136
127
|
- spec/schema/enum_new.rb
|
@@ -141,34 +132,34 @@ files:
|
|
141
132
|
- spec/spec_helper.rb
|
142
133
|
homepage: ''
|
143
134
|
licenses: []
|
135
|
+
metadata: {}
|
144
136
|
post_install_message:
|
145
137
|
rdoc_options: []
|
146
138
|
require_paths:
|
147
139
|
- lib
|
148
140
|
required_ruby_version: !ruby/object:Gem::Requirement
|
149
|
-
none: false
|
150
141
|
requirements:
|
151
|
-
- -
|
142
|
+
- - ">="
|
152
143
|
- !ruby/object:Gem::Version
|
153
144
|
version: '0'
|
154
145
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
155
|
-
none: false
|
156
146
|
requirements:
|
157
|
-
- -
|
147
|
+
- - ">="
|
158
148
|
- !ruby/object:Gem::Version
|
159
149
|
version: '0'
|
160
150
|
requirements: []
|
161
151
|
rubyforge_project: activerecord_enum
|
162
|
-
rubygems_version:
|
152
|
+
rubygems_version: 2.4.2
|
163
153
|
signing_key:
|
164
|
-
specification_version:
|
154
|
+
specification_version: 4
|
165
155
|
summary: Enum data types for ActiveRecord
|
166
156
|
test_files:
|
167
157
|
- spec/Gemfile.rails_3_0
|
168
158
|
- spec/Gemfile.rails_3_1
|
169
159
|
- spec/Gemfile.rails_3_2
|
170
160
|
- spec/Gemfile.rails_4_0
|
171
|
-
- spec/
|
161
|
+
- spec/Gemfile.rails_4_1
|
162
|
+
- spec/Gemfile.rails_4_2
|
172
163
|
- spec/database.yml.tmpl
|
173
164
|
- spec/enum_spec.rb
|
174
165
|
- spec/schema/enum_new.rb
|
@@ -177,3 +168,4 @@ test_files:
|
|
177
168
|
- spec/schema/set_old.rb
|
178
169
|
- spec/set_spec.rb
|
179
170
|
- spec/spec_helper.rb
|
171
|
+
has_rdoc:
|