convergence 0.1.8 → 0.1.9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 454a00b43c4a1430553a68eddaeb73103bad92a5
4
- data.tar.gz: 416cda690943feccf3d41226a9573455b7f4779d
3
+ metadata.gz: a839465d475a50eae409d5ca2b011c87bc8901c7
4
+ data.tar.gz: 49f17cd9ba7ed95ad89eee5482023fed50efd405
5
5
  SHA512:
6
- metadata.gz: c99e127b5dcbecc078f2f1f39ce91a5b720a13761872aecc61ef6c98be9672f79bfd7b6cdf63f9c6acf695a52706abf6faf93043a7881eee9a5b8ddaa362a4d2
7
- data.tar.gz: 6bc3eca7161196ebaa4d007f28526c170a56cd3ca205fc661a23fbdb566027568ffe49fb9575d2b01b7bf3e2c9a492eab1d08e26a09816df8a57e252e97a8104
6
+ metadata.gz: 442ac80d6c3ad2e9fb556d7ba7e275e3cc9cdbd74a55b8925ec436bef64abbb02ae689ac18eed61aebb0a551c70608a1d14a27841fa5be3e17336cce5f59a324
7
+ data.tar.gz: 82136a25f4c36988b5bc1e7accbcb16571888b056cf9387ab8c1d3943ee7bdd1c31c4859eb22a85fab8f91d615c3584c46ad5173f3f42e50c068176b467c9738
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- convergence (0.1.8)
4
+ convergence (0.1.9)
5
5
  diff-lcs
6
6
  diffy
7
7
  mysql2
@@ -1,6 +1,7 @@
1
1
  require 'diff/lcs'
2
2
 
3
3
  class Convergence::Diff
4
+ CASE_SENSITIVE_TABLE_OPTIONS = %i(comment)
4
5
  CASE_SENSITIVE_COLUMNS = %i(default comment)
5
6
 
6
7
  def diff(from_database, to_database)
@@ -152,7 +153,8 @@ class Convergence::Diff
152
153
  change_options = (from.table_options.map { |k, _v| { k => nil } }.reduce { |a, e| a.merge(e) } || {})
153
154
  .merge(to.table_options)
154
155
  .reject do |k, v|
155
- !from.table_options[k].nil? && from.table_options[k].to_s.downcase == v.to_s.downcase
156
+ next false if from.table_options[k].nil?
157
+ case_sensitive_table_option?(k) ? from.table_options[k].to_s == v.to_s : from.table_options[k].to_s.downcase == v.to_s.downcase
156
158
  end
157
159
  if remove_auto_increment_option?(from.table_options[:auto_increment], to.table_options[:auto_increment])
158
160
  change_options.delete(:auto_increment)
@@ -164,6 +166,10 @@ class Convergence::Diff
164
166
  from_table.columns.each_key.all? { |name| diff[:remove_column].each_key.include?(name) }
165
167
  end
166
168
 
169
+ def case_sensitive_table_option?(option)
170
+ CASE_SENSITIVE_TABLE_OPTIONS.include?(option)
171
+ end
172
+
167
173
  def case_sensitive_column?(column)
168
174
  CASE_SENSITIVE_COLUMNS.include?(column)
169
175
  end
@@ -1,3 +1,3 @@
1
1
  module Convergence
2
- VERSION = '0.1.8'
2
+ VERSION = '0.1.9'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: convergence
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shinsuke Nishio
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-06-15 00:00:00.000000000 Z
11
+ date: 2016-08-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mysql2