sequel_rails3 1.1.0 → 1.1.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.
- data/lib/sequel_rails3/railtie.rb +23 -2
- data/lib/sequel_rails3/version.rb +1 -1
- metadata +9 -9
@@ -43,13 +43,34 @@ module SequelRails3
|
|
43
43
|
def self.schema(action)
|
44
44
|
case action
|
45
45
|
when :dump
|
46
|
-
File.open(
|
46
|
+
File.open(schema_file, "w") do |f|
|
47
47
|
f.write("# Database schema version: #{migrator.current}\n")
|
48
48
|
f.write(db.dump_schema_migration)
|
49
49
|
end
|
50
|
+
when :up
|
51
|
+
migration, version = read_schema
|
52
|
+
eval(migration).apply(db, :up)
|
53
|
+
db[:schema_info].insert(:version => version)
|
54
|
+
when :down
|
55
|
+
migration, version = read_schema
|
56
|
+
db_version = db[:schema_info].select(:version).first.try(:[], :version)
|
57
|
+
raise RuntimeError, "schema version in schema file (#{version}) differs from version in database (#{db_version})" unless version == db_version
|
58
|
+
eval(migration).apply(db, :down)
|
50
59
|
else
|
51
|
-
|
60
|
+
raise ArgumentError, "invalid schema action '#{action}'"
|
52
61
|
end
|
53
62
|
end
|
63
|
+
|
64
|
+
def self.schema_file
|
65
|
+
File.join(Rails.root, 'db', 'schema.rb')
|
66
|
+
end
|
67
|
+
|
68
|
+
def self.read_schema
|
69
|
+
data = File.read(schema_file)
|
70
|
+
version = data.match(/# Database schema version: (\d+)\n/)[1]
|
71
|
+
raise RuntimeError, "unable to determine schema version from schema file" unless version
|
72
|
+
[data, version.to_i]
|
73
|
+
end
|
54
74
|
end
|
55
75
|
end
|
76
|
+
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sequel_rails3
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2011-08-10 00:00:00.000000000Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
16
|
-
requirement: &
|
16
|
+
requirement: &17134900 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '3.0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *17134900
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: sequel
|
27
|
-
requirement: &
|
27
|
+
requirement: &17131580 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '3.0'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *17131580
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rspec
|
38
|
-
requirement: &
|
38
|
+
requirement: &17129540 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '2.5'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *17129540
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rspec-rails
|
49
|
-
requirement: &
|
49
|
+
requirement: &17126760 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,7 +54,7 @@ dependencies:
|
|
54
54
|
version: '2.5'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *17126760
|
58
58
|
description: This gem allows you to easily use sequel instead of activerecord with
|
59
59
|
rails 3.x.x
|
60
60
|
email:
|