db-evolve 0.3.4 → 0.3.5
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 +4 -4
- data/lib/tasks/db.rb +7 -1
- data/lib/tasks/db_mock.rb +18 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 930ccea720e436d84f54b60a3a77ac5d58dedaab
|
4
|
+
data.tar.gz: f9c37425c90e6ce783f4f18fc392cd124031a47a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b14194ef9dee5ff00f6f1876eb6f73fb1ed6a0fbfb2af98bce989a532bca819a1d026af1b1508e079f41145303a240f0648ff8c24e525c8cf224ff98319812fe
|
7
|
+
data.tar.gz: 81edbca721139aa41baa8833cea4da3976b76e8c0c63152054f012eec167670095760841ed9cf8f72bb0b73d019e92152e989c6d29f1697b28b1631a4a3cb4de
|
data/lib/tasks/db.rb
CHANGED
@@ -81,10 +81,12 @@ end
|
|
81
81
|
|
82
82
|
def do_evolve(noop, yes, nowait)
|
83
83
|
existing_tables, existing_indexes = load_existing_tables()
|
84
|
+
server_version = load_server_version()
|
84
85
|
|
85
86
|
require_relative 'db_mock'
|
86
87
|
|
87
88
|
ActiveRecord::ConnectionAdapters::PostgreSQLAdapter.existing_tables = existing_tables
|
89
|
+
ActiveRecord::ConnectionAdapters::PostgreSQLAdapter.server_version = server_version
|
88
90
|
|
89
91
|
require Rails.root + 'db/schema'
|
90
92
|
|
@@ -333,6 +335,10 @@ def load_existing_tables()
|
|
333
335
|
return existing_tables, existing_indexes
|
334
336
|
end
|
335
337
|
|
338
|
+
def load_server_version()
|
339
|
+
server_version = build_pg_connection.server_version rescue nil
|
340
|
+
return server_version
|
341
|
+
end
|
336
342
|
|
337
343
|
|
338
344
|
|
@@ -526,7 +532,7 @@ end
|
|
526
532
|
def gen_pg_adapter()
|
527
533
|
$tmp_to_run = []
|
528
534
|
a = ActiveRecord::ConnectionAdapters::PostgreSQLAdapter.allocate
|
529
|
-
ActiveRecord::ConnectionAdapters::AbstractAdapter.instance_method(:initialize).bind(a).call
|
535
|
+
ActiveRecord::ConnectionAdapters::AbstractAdapter.instance_method(:initialize).bind(a).call build_pg_connection
|
530
536
|
return a
|
531
537
|
end
|
532
538
|
|
data/lib/tasks/db_mock.rb
CHANGED
@@ -9,19 +9,26 @@ module ActiveRecord
|
|
9
9
|
def values
|
10
10
|
return []
|
11
11
|
end
|
12
|
+
def first
|
13
|
+
return {}
|
14
|
+
end
|
12
15
|
def clear
|
13
16
|
return nil
|
14
17
|
end
|
15
18
|
end
|
16
19
|
class PostgreSQLAdapter
|
17
20
|
def execute(sql, name = nil)
|
18
|
-
$tmp_to_run.append sql
|
21
|
+
$tmp_to_run.append sql unless skip? sql
|
19
22
|
return FakeResult.new
|
20
23
|
end
|
21
24
|
def async_exec(sql, params_result_format)
|
22
|
-
$tmp_to_run.append sql
|
25
|
+
$tmp_to_run.append sql unless skip? sql
|
23
26
|
return FakeResult.new
|
24
27
|
end
|
28
|
+
def skip? sql
|
29
|
+
return true if sql.end_with?("'::regtype::oid") and sql.start_with?("SELECT '")
|
30
|
+
return false
|
31
|
+
end
|
25
32
|
def table_exists?(name)
|
26
33
|
false
|
27
34
|
end
|
@@ -31,6 +38,15 @@ module ActiveRecord
|
|
31
38
|
def self.existing_tables= existing_tables
|
32
39
|
@@existing_tables = existing_tables
|
33
40
|
end
|
41
|
+
def self.server_version= server_version
|
42
|
+
@@server_version = server_version
|
43
|
+
end
|
44
|
+
def server_version
|
45
|
+
return @@server_version
|
46
|
+
end
|
47
|
+
def initialize_type_map m
|
48
|
+
# do nothing
|
49
|
+
end
|
34
50
|
def clear_cache!
|
35
51
|
end
|
36
52
|
def quote_string s
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: db-evolve
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Derek Anderson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-03-
|
11
|
+
date: 2016-03-22 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: A diff/patch-esque tool to replace schema migrations in Ruby. See https://github.com/keredson/ruby-db-evolve
|
14
14
|
for details.
|