dbdiff 0.1.0 → 0.2.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.
- data/CHANGELOG +4 -0
- data/COPYING +340 -0
- data/lib/dbdiff.rb +63 -33
- data/lib/dbdiff/database.rb +50 -4
- data/lib/dbdiff/dbdiff_version.rb +3 -0
- data/lib/dbdiff/delta.rb +89 -0
- data/lib/dbdiff/function.rb +14 -0
- data/lib/dbdiff/procedure.rb +13 -0
- data/lib/dbdiff/routine.rb +30 -0
- data/lib/dbdiff/row.rb +9 -1
- data/lib/dbdiff/table.rb +2 -2
- data/lib/dbdiff/trigger.rb +36 -0
- data/lib/dbdiff/view.rb +33 -0
- data/test/function/source.sql +3 -0
- data/test/function/target.sql +1 -0
- data/test/modify_function/source.sql +3 -0
- data/test/modify_function/target.sql +2 -0
- data/test/modify_procedure/source.sql +8 -0
- data/test/modify_procedure/target.sql +9 -0
- data/test/modify_trigger/source.sql +9 -0
- data/test/modify_trigger/target.sql +9 -0
- data/test/modify_view/source.sql +7 -0
- data/test/modify_view/target.sql +7 -0
- data/test/procedure/source.sql +8 -0
- data/test/procedure/target.sql +1 -0
- data/test/suite.rb +3 -0
- data/test/test_dbdiff.rb +13 -5
- data/test/test_function.rb +69 -0
- data/test/test_procedure.rb +64 -0
- data/test/test_row.rb +45 -9
- data/test/test_trigger.rb +68 -0
- data/test/trigger/source.sql +9 -0
- data/test/trigger/target.sql +7 -0
- data/test/view/source.sql +7 -0
- data/test/view/target.sql +9 -0
- metadata +37 -2
@@ -0,0 +1,8 @@
|
|
1
|
+
CREATE TABLE authors (
|
2
|
+
`id` int(11) NOT NULL auto_increment,
|
3
|
+
`name` char(60) NOT NULL,
|
4
|
+
`address` char(60) NULL,
|
5
|
+
PRIMARY KEY (`id`)
|
6
|
+
) ENGINE=innodb DEFAULT CHARSET=latin1;
|
7
|
+
|
8
|
+
CREATE PROCEDURE simpleproc (OUT param1 INT) BEGIN SELECT COUNT(*) INTO param1 FROM authors; END;
|
@@ -0,0 +1 @@
|
|
1
|
+
|
data/test/suite.rb
CHANGED
data/test/test_dbdiff.rb
CHANGED
@@ -38,7 +38,7 @@ class TestDbDiff < Test::Unit::TestCase
|
|
38
38
|
def apply_sql(dbh, database, sql)
|
39
39
|
|
40
40
|
dbh.select_db(database)
|
41
|
-
sql.split(
|
41
|
+
sql.split(/;$/).each do |q|
|
42
42
|
q.strip!
|
43
43
|
next unless q.length > 0
|
44
44
|
dbh.query(q)
|
@@ -47,8 +47,14 @@ class TestDbDiff < Test::Unit::TestCase
|
|
47
47
|
|
48
48
|
def process_diff
|
49
49
|
|
50
|
+
logger =Logger.new('out.log')
|
51
|
+
logger.level = Logger::DEBUG
|
52
|
+
|
50
53
|
dbdiff = DbDiff.new( {:host => '127.0.0.1', :password => nil, :user => 'root', :name => SOURCE_DB},
|
51
|
-
{:host => '127.0.0.1', :password => nil, :user => 'root', :name => TARGET_DB},
|
54
|
+
{:host => '127.0.0.1', :password => nil, :user => 'root', :name => TARGET_DB},
|
55
|
+
:replicate_tables => ['authors'],
|
56
|
+
:logger => logger
|
57
|
+
)
|
52
58
|
|
53
59
|
dbdiff.dry_run = false
|
54
60
|
dbdiff.diff
|
@@ -62,7 +68,7 @@ class TestDbDiff < Test::Unit::TestCase
|
|
62
68
|
assert(dbdiff.target.deltas.size == 0)
|
63
69
|
|
64
70
|
dbdiff = DbDiff.new( {:host => '127.0.0.1', :password => nil, :user => 'root', :name => SOURCE_DB},
|
65
|
-
{:host => '127.0.0.1', :password => nil, :user => 'root', :name => TARGET_DB}, :
|
71
|
+
{:host => '127.0.0.1', :password => nil, :user => 'root', :name => TARGET_DB}, :replicate_tables => %w(authors))
|
66
72
|
|
67
73
|
dbdiff.diff
|
68
74
|
|
@@ -73,14 +79,16 @@ class TestDbDiff < Test::Unit::TestCase
|
|
73
79
|
def run_diff(dbh, dir)
|
74
80
|
source = File.open("./test/" + dir + "/source.sql").read
|
75
81
|
target = File.open("./test/" + dir + "/target.sql").read
|
82
|
+
#return unless dir == 'procedure'
|
76
83
|
|
77
|
-
|
84
|
+
#
|
85
|
+
# puts "processing #{dir}"
|
78
86
|
|
79
87
|
prep_databases(dbh, source, target)
|
80
88
|
|
81
89
|
process_diff
|
82
90
|
|
83
|
-
|
91
|
+
# puts "processing opposite #{dir}"
|
84
92
|
|
85
93
|
prep_databases(dbh, target, source)
|
86
94
|
|
@@ -0,0 +1,69 @@
|
|
1
|
+
require 'dbdiff'
|
2
|
+
require 'test/unit'
|
3
|
+
|
4
|
+
class TestFunction < Test::Unit::TestCase
|
5
|
+
|
6
|
+
def test_load
|
7
|
+
f = DbDiff::Function.new(
|
8
|
+
'name' => 'my_func',
|
9
|
+
'body' => %q|return concat('hello, ', s , '!')|,
|
10
|
+
'param_list' => 's char(20)',
|
11
|
+
'type' => 'FUNCTION',
|
12
|
+
'returns' => 'char(50)'
|
13
|
+
)
|
14
|
+
|
15
|
+
assert(f.definition == %q|return concat('hello, ', s , '!')|)
|
16
|
+
assert(f.param_list == 's char(20)')
|
17
|
+
assert(f.routine_type == 'FUNCTION')
|
18
|
+
assert(f.name == 'my_func')
|
19
|
+
assert(f.returns == 'char(50)')
|
20
|
+
|
21
|
+
end
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
def test_not_equal
|
26
|
+
f1 = DbDiff::Function.new(
|
27
|
+
'name' => 'my_func',
|
28
|
+
'body' => %q|return concat('hello, ', s , '!')|,
|
29
|
+
'param_list' => 's char(20)',
|
30
|
+
'type' => 'FUNCTION',
|
31
|
+
'returns' => 'char(50)'
|
32
|
+
)
|
33
|
+
|
34
|
+
f2 = DbDiff::Function.new(
|
35
|
+
'name' => 'my_func2',
|
36
|
+
'body' => %q|return concat('hello, ', s , '!')|,
|
37
|
+
'param_list' => 's char(20)',
|
38
|
+
'type' => 'FUNCTION',
|
39
|
+
'returns' => 'char(50)'
|
40
|
+
)
|
41
|
+
|
42
|
+
assert(f1 != f2)
|
43
|
+
|
44
|
+
end
|
45
|
+
|
46
|
+
|
47
|
+
def test_equal
|
48
|
+
|
49
|
+
f1 = DbDiff::Function.new(
|
50
|
+
'name' => 'my_func',
|
51
|
+
'body' => %q|return concat('hello, ', s , '!')|,
|
52
|
+
'param_list' => 's char(20)',
|
53
|
+
'type' => 'FUNCTION',
|
54
|
+
'returns' => 'char(50)'
|
55
|
+
)
|
56
|
+
|
57
|
+
f2 = DbDiff::Function.new(
|
58
|
+
'name' => 'my_func',
|
59
|
+
'body' => %q|return concat('hello, ', s , '!')|,
|
60
|
+
'param_list' => 's char(20)',
|
61
|
+
'type' => 'FUNCTION',
|
62
|
+
'returns' => 'char(50)'
|
63
|
+
)
|
64
|
+
|
65
|
+
assert(f1 == f2)
|
66
|
+
end
|
67
|
+
|
68
|
+
end
|
69
|
+
|
@@ -0,0 +1,64 @@
|
|
1
|
+
require 'dbdiff'
|
2
|
+
require 'test/unit'
|
3
|
+
|
4
|
+
class TestProcedure < Test::Unit::TestCase
|
5
|
+
|
6
|
+
def test_load
|
7
|
+
p = DbDiff::Procedure.new(
|
8
|
+
'name' => 'simpleproc',
|
9
|
+
'body' => %q(BEGIN SELECT COUNT(*) INTO param1 FROM authors2; END),
|
10
|
+
'param_list' => 'OUT param1 INT',
|
11
|
+
'type' => 'PROCEDURE'
|
12
|
+
)
|
13
|
+
|
14
|
+
assert(p.definition == %q|BEGIN SELECT COUNT(*) INTO param1 FROM authors2; END|)
|
15
|
+
assert(p.param_list == 'OUT param1 INT')
|
16
|
+
assert(p.routine_type == 'PROCEDURE')
|
17
|
+
assert(p.name == 'simpleproc')
|
18
|
+
assert(p.returns == nil)
|
19
|
+
|
20
|
+
end
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
def test_not_equal
|
25
|
+
|
26
|
+
p1 = DbDiff::Procedure.new(
|
27
|
+
'name' => 'simpleproc',
|
28
|
+
'body' => %q|BEGIN SELECT COUNT(*) INTO param1 FROM authors2; END|,
|
29
|
+
'param_list' => 'OUT param1 INT',
|
30
|
+
'type' => 'PROCEDURE'
|
31
|
+
)
|
32
|
+
|
33
|
+
p2 = DbDiff::Procedure.new(
|
34
|
+
'name' => 'simpleproc2',
|
35
|
+
'body' => %q|BEGIN SELECT COUNT(*) INTO param1 FROM authors2; END|,
|
36
|
+
'param_list' => 'OUT param1 INT',
|
37
|
+
'type' => 'PROCEDURE'
|
38
|
+
)
|
39
|
+
|
40
|
+
assert(p1 != p2)
|
41
|
+
|
42
|
+
end
|
43
|
+
|
44
|
+
|
45
|
+
def test_equal
|
46
|
+
p1 = DbDiff::Procedure.new(
|
47
|
+
'name' => 'simpleproc',
|
48
|
+
'body' => %q|BEGIN SELECT COUNT(*) INTO param1 FROM authors2; END|,
|
49
|
+
'param_list' => 'OUT param1 INT',
|
50
|
+
'type' => 'PROCEDURE'
|
51
|
+
)
|
52
|
+
|
53
|
+
p2 = DbDiff::Procedure.new(
|
54
|
+
'name' => 'simpleproc',
|
55
|
+
'body' => %q|BEGIN SELECT COUNT(*) INTO param1 FROM authors2; END|,
|
56
|
+
'param_list' => 'OUT param1 INT',
|
57
|
+
'type' => 'PROCEDURE'
|
58
|
+
)
|
59
|
+
|
60
|
+
assert(p1 == p2)
|
61
|
+
end
|
62
|
+
|
63
|
+
end
|
64
|
+
|
data/test/test_row.rb
CHANGED
@@ -6,13 +6,14 @@ class TestRow < Test::Unit::TestCase
|
|
6
6
|
def test_load
|
7
7
|
|
8
8
|
t = DbDiff::Table.new( 'ENGINE' => 'InnoDB', 'TABLE_COLLATION' => 'latin1', 'TABLE_NAME' => 'mytable')
|
9
|
-
t.keys << DbDiff::Key.new(t.name,
|
9
|
+
t.keys << DbDiff::Key.new(t.name,
|
10
10
|
'Key_name' => 'PRIMARY',
|
11
11
|
'Seq_in_index' => '1',
|
12
12
|
'Column_name' => 'id',
|
13
13
|
'Non_unique' => '0'
|
14
14
|
)
|
15
15
|
|
16
|
+
|
16
17
|
row = DbDiff::Row.new(
|
17
18
|
t,
|
18
19
|
'id' => '1',
|
@@ -28,13 +29,15 @@ class TestRow < Test::Unit::TestCase
|
|
28
29
|
|
29
30
|
|
30
31
|
def test_not_equal
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
32
|
+
t = DbDiff::Table.new( 'ENGINE' => 'InnoDB', 'TABLE_COLLATION' => 'latin1', 'TABLE_NAME' => 'mytable')
|
33
|
+
t.keys << DbDiff::Key.new(t.name,
|
34
|
+
'Key_name' => 'PRIMARY',
|
35
|
+
'Seq_in_index' => '1',
|
36
|
+
'Column_name' => 'id',
|
37
|
+
'Non_unique' => '0'
|
38
|
+
)
|
39
|
+
|
40
|
+
|
38
41
|
|
39
42
|
r1 = DbDiff::Row.new(
|
40
43
|
t,
|
@@ -54,15 +57,48 @@ class TestRow < Test::Unit::TestCase
|
|
54
57
|
|
55
58
|
end
|
56
59
|
|
60
|
+
def test_equal_dates
|
61
|
+
t = DbDiff::Table.new( 'ENGINE' => 'InnoDB', 'TABLE_COLLATION' => 'latin1', 'TABLE_NAME' => 'mytable')
|
62
|
+
t.keys << DbDiff::Key.new(t.name,
|
63
|
+
'Key_name' => 'PRIMARY',
|
64
|
+
'Seq_in_index' => '1',
|
65
|
+
'Column_name' => 'id',
|
66
|
+
'Non_unique' => '0'
|
67
|
+
)
|
68
|
+
|
69
|
+
|
70
|
+
|
71
|
+
r1 = DbDiff::Row.new(
|
72
|
+
t,
|
73
|
+
'id' => '1',
|
74
|
+
'name' => 'foo',
|
75
|
+
'address' => 'blah',
|
76
|
+
'created_on' => '2006-08-01 11:11:11',
|
77
|
+
'updated_on' => '2006-08-02 11:11:11'
|
78
|
+
)
|
79
|
+
|
80
|
+
r2 = DbDiff::Row.new(
|
81
|
+
t,
|
82
|
+
'id' => '1',
|
83
|
+
'name' => 'foo',
|
84
|
+
'address' => 'blah',
|
85
|
+
'created_on' => '2006-08-08 11:11:11',
|
86
|
+
'updated_on' => '2006-08-08 11:11:11'
|
87
|
+
)
|
88
|
+
|
89
|
+
assert(r1 == r2)
|
90
|
+
end
|
91
|
+
|
57
92
|
def test_equal
|
58
93
|
t = DbDiff::Table.new( 'ENGINE' => 'InnoDB', 'TABLE_COLLATION' => 'latin1', 'TABLE_NAME' => 'mytable')
|
59
|
-
t.keys << DbDiff::Key.new(t.name,
|
94
|
+
t.keys << DbDiff::Key.new(t.name,
|
60
95
|
'Key_name' => 'PRIMARY',
|
61
96
|
'Seq_in_index' => '1',
|
62
97
|
'Column_name' => 'id',
|
63
98
|
'Non_unique' => '0'
|
64
99
|
)
|
65
100
|
|
101
|
+
|
66
102
|
r1 = DbDiff::Row.new(
|
67
103
|
t,
|
68
104
|
'id' => '1',
|
@@ -0,0 +1,68 @@
|
|
1
|
+
require 'dbdiff'
|
2
|
+
require 'test/unit'
|
3
|
+
|
4
|
+
class TestTrigger < Test::Unit::TestCase
|
5
|
+
|
6
|
+
def test_load
|
7
|
+
t = DbDiff::Trigger.new(
|
8
|
+
'TRIGGER_NAME' => 'my_trig',
|
9
|
+
'EVENT_OBJECT_TABLE' => 'authors',
|
10
|
+
'ACTION_STATEMENT' => 'BEGIN INSERT INTO blah SET id = NEW.id; END',
|
11
|
+
'ACTION_TIMING' => 'BEFORE',
|
12
|
+
'EVENT_MANIPULATION' => 'INSERT'
|
13
|
+
)
|
14
|
+
|
15
|
+
assert(t.table_name == 'authors')
|
16
|
+
|
17
|
+
assert(t.definition == 'BEGIN INSERT INTO blah SET id = NEW.id; END')
|
18
|
+
assert(t.timing == 'BEFORE')
|
19
|
+
assert(t.event == 'INSERT')
|
20
|
+
|
21
|
+
end
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
def test_not_equal
|
26
|
+
t1 = DbDiff::Trigger.new(
|
27
|
+
'TRIGGER_NAME' => 'my_trig',
|
28
|
+
'EVENT_OBJECT_TABLE' => 'authors',
|
29
|
+
'ACTION_STATMENT' => 'BEGIN INSERT INTO blah SET id = NEW.id; END',
|
30
|
+
'ACTION_TIMING' => 'BEFORE',
|
31
|
+
'EVENT_MANIPULATION' => 'INSERT'
|
32
|
+
)
|
33
|
+
|
34
|
+
t2 = DbDiff::Trigger.new(
|
35
|
+
'TRIGGER_NAME' => 'my_trig2',
|
36
|
+
'EVENT_OBJECT_TABLE' => 'authors',
|
37
|
+
'ACTION_STATMENT' => 'BEGIN INSERT INTO blah SET id = NEW.id; END',
|
38
|
+
'ACTION_TIMING' => 'BEFORE',
|
39
|
+
'EVENT_MANIPULATION' => 'INSERT'
|
40
|
+
)
|
41
|
+
|
42
|
+
assert(t1 != t2)
|
43
|
+
|
44
|
+
end
|
45
|
+
|
46
|
+
|
47
|
+
def test_equal
|
48
|
+
t1 = DbDiff::Trigger.new(
|
49
|
+
'TRIGGER_NAME' => 'my_trig',
|
50
|
+
'EVENT_OBJECT_TABLE' => 'authors',
|
51
|
+
'ACTION_STATMENT' => 'BEGIN INSERT INTO blah SET id = NEW.id; END',
|
52
|
+
'ACTION_TIMING' => 'BEFORE',
|
53
|
+
'EVENT_MANIPULATION' => 'INSERT'
|
54
|
+
)
|
55
|
+
|
56
|
+
t2 = DbDiff::Trigger.new(
|
57
|
+
'TRIGGER_NAME' => 'my_trig',
|
58
|
+
'EVENT_OBJECT_TABLE' => 'authors',
|
59
|
+
'ACTION_STATMENT' => 'BEGIN INSERT INTO blah SET id = NEW.id; END',
|
60
|
+
'ACTION_TIMING' => 'BEFORE',
|
61
|
+
'EVENT_MANIPULATION' => 'INSERT'
|
62
|
+
)
|
63
|
+
|
64
|
+
assert(t1 == t2)
|
65
|
+
end
|
66
|
+
|
67
|
+
end
|
68
|
+
|
@@ -0,0 +1,9 @@
|
|
1
|
+
CREATE TABLE authors (
|
2
|
+
`id` int(11) NOT NULL auto_increment,
|
3
|
+
`name` char(60) NOT NULL,
|
4
|
+
`address` char(60) NULL,
|
5
|
+
PRIMARY KEY (`id`)
|
6
|
+
) ENGINE=innodb DEFAULT CHARSET=latin1;
|
7
|
+
|
8
|
+
create trigger my_auth BEFORE INSERT on authors FOR EACH ROW BEGIN SET NEW.name = 'fOO'; END;
|
9
|
+
|
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.0
|
|
3
3
|
specification_version: 1
|
4
4
|
name: dbdiff
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.
|
7
|
-
date: 2006-09-
|
6
|
+
version: 0.2.0
|
7
|
+
date: 2006-09-19 00:00:00 -07:00
|
8
8
|
summary: DbDiff performs diffs between two databases and applies changes
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -31,6 +31,7 @@ authors:
|
|
31
31
|
files:
|
32
32
|
- test/column
|
33
33
|
- test/multi_unique_key
|
34
|
+
- test/procedure
|
34
35
|
- test/test_row.rb
|
35
36
|
- test/multi_key
|
36
37
|
- test/test_key.rb
|
@@ -38,27 +39,39 @@ files:
|
|
38
39
|
- test/suite.rb
|
39
40
|
- test/test_column.rb
|
40
41
|
- test/unique_key
|
42
|
+
- test/test_procedure.rb
|
41
43
|
- test/table_fk2
|
42
44
|
- test/table_fk
|
43
45
|
- test/modify_key_fk
|
46
|
+
- test/view
|
44
47
|
- test/test_dbdiff.rb
|
45
48
|
- test/test_table.rb
|
46
49
|
- test/modify_table
|
47
50
|
- test/ai_column
|
48
51
|
- test/modify_column
|
52
|
+
- test/modify_view
|
53
|
+
- test/test_function.rb
|
54
|
+
- test/trigger
|
49
55
|
- test/fk
|
50
56
|
- test/modify_key_fk_ref
|
51
57
|
- test/change_pk
|
52
58
|
- test/key
|
53
59
|
- test/row
|
54
60
|
- test/table
|
61
|
+
- test/test_trigger.rb
|
62
|
+
- test/modify_function
|
63
|
+
- test/modify_procedure
|
55
64
|
- test/test_foreign_key.rb
|
56
65
|
- test/modify_fk
|
66
|
+
- test/modify_trigger
|
67
|
+
- test/function
|
57
68
|
- test/modify_row
|
58
69
|
- test/column/source.sql
|
59
70
|
- test/column/target.sql
|
60
71
|
- test/multi_unique_key/source.sql
|
61
72
|
- test/multi_unique_key/target.sql
|
73
|
+
- test/procedure/source.sql
|
74
|
+
- test/procedure/target.sql
|
62
75
|
- test/multi_key/source.sql
|
63
76
|
- test/multi_key/target.sql
|
64
77
|
- test/multi_fk/source.sql
|
@@ -71,12 +84,18 @@ files:
|
|
71
84
|
- test/table_fk/target.sql
|
72
85
|
- test/modify_key_fk/source.sql
|
73
86
|
- test/modify_key_fk/target.sql
|
87
|
+
- test/view/source.sql
|
88
|
+
- test/view/target.sql
|
74
89
|
- test/modify_table/source.sql
|
75
90
|
- test/modify_table/target.sql
|
76
91
|
- test/ai_column/source.sql
|
77
92
|
- test/ai_column/target.sql
|
78
93
|
- test/modify_column/source.sql
|
79
94
|
- test/modify_column/target.sql
|
95
|
+
- test/modify_view/source.sql
|
96
|
+
- test/modify_view/target.sql
|
97
|
+
- test/trigger/source.sql
|
98
|
+
- test/trigger/target.sql
|
80
99
|
- test/fk/source.sql
|
81
100
|
- test/fk/target.sql
|
82
101
|
- test/modify_key_fk_ref/source.sql
|
@@ -89,8 +108,16 @@ files:
|
|
89
108
|
- test/row/target.sql
|
90
109
|
- test/table/source.sql
|
91
110
|
- test/table/target.sql
|
111
|
+
- test/modify_function/source.sql
|
112
|
+
- test/modify_function/target.sql
|
113
|
+
- test/modify_procedure/source.sql
|
114
|
+
- test/modify_procedure/target.sql
|
92
115
|
- test/modify_fk/source.sql
|
93
116
|
- test/modify_fk/target.sql
|
117
|
+
- test/modify_trigger/source.sql
|
118
|
+
- test/modify_trigger/target.sql
|
119
|
+
- test/function/source.sql
|
120
|
+
- test/function/target.sql
|
94
121
|
- test/modify_row/source.sql
|
95
122
|
- test/modify_row/target.sql
|
96
123
|
- lib/dbdiff.rb
|
@@ -98,14 +125,21 @@ files:
|
|
98
125
|
- lib/dbdiff/key.rb
|
99
126
|
- lib/dbdiff/row.rb
|
100
127
|
- lib/dbdiff/foreign_key.rb
|
128
|
+
- lib/dbdiff/dbdiff_version.rb
|
101
129
|
- lib/dbdiff/database.rb
|
102
130
|
- lib/dbdiff/column.rb
|
131
|
+
- lib/dbdiff/routine.rb
|
103
132
|
- lib/dbdiff/delta.rb
|
104
133
|
- lib/dbdiff/table_element.rb
|
134
|
+
- lib/dbdiff/function.rb
|
135
|
+
- lib/dbdiff/procedure.rb
|
105
136
|
- lib/dbdiff/table.rb
|
137
|
+
- lib/dbdiff/view.rb
|
138
|
+
- lib/dbdiff/trigger.rb
|
106
139
|
- README
|
107
140
|
- CHANGELOG
|
108
141
|
- LICENSE
|
142
|
+
- COPYING
|
109
143
|
test_files: []
|
110
144
|
|
111
145
|
rdoc_options:
|
@@ -117,6 +151,7 @@ extra_rdoc_files:
|
|
117
151
|
- README
|
118
152
|
- CHANGELOG
|
119
153
|
- LICENSE
|
154
|
+
- COPYING
|
120
155
|
executables: []
|
121
156
|
|
122
157
|
extensions: []
|