gigo 2.0.0 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 712fefdcd90415f02b05a5c1d71b59c7650aeed7
4
+ data.tar.gz: 8645a95acd55340917bad0d9fc080f8325c26fef
5
+ SHA512:
6
+ metadata.gz: 47388733658210b84307e259798c395ae97d07524a19097853605da9071306e0ae0eacb5f8db91b693e22fa16126615af10a3a88923df80c7a17d7ee6fffc5ae
7
+ data.tar.gz: 2c1b9b8ef11693facef2e5a4ddd0f42705a4cb8629b182949ccce9325f95582e45a7c8b1c18843477935841319816df2c4711b8a1556dbbef97edc0956b9c369
data/Appraisals CHANGED
@@ -1,3 +1,7 @@
1
+ appraise 'activesupport23' do
2
+ gem 'activesupport', '~> 2.3.0'
3
+ gem 'iconv'
4
+ end
1
5
 
2
6
  appraise 'activesupport30' do
3
7
  gem 'activesupport', '~> 3.0.0'
@@ -12,6 +16,9 @@ appraise 'activesupport32' do
12
16
  end
13
17
 
14
18
  appraise 'activesupport40' do
15
- gem 'activesupport', :github => 'rails/rails'
19
+ gem 'activesupport', '~> 4.0.0'
16
20
  end
17
21
 
22
+ appraise 'activesupport41' do
23
+ gem 'activesupport', '~> 4.1.0'
24
+ end
data/README.md CHANGED
@@ -16,11 +16,11 @@ Simple, just pass a string to `GIGO.load`. Nil values or properly encoded string
16
16
  GIGO.load "€20 – “Woohoo”"
17
17
  ```
18
18
 
19
- Lets say you have a `comments` column on an ActiveRecord model which is not guaranteed to come back per your default external encoding.
19
+ Lets say you have a `comments` column on an ActiveRecord model which is not guaranteed to come back per your default external encoding. However, take a look at the [gigo-activerecord](https://github.com/customink/gigo-activerecord) gem.
20
20
 
21
21
  ```ruby
22
22
  def comments
23
- GIGO.load read_attribute(:comments)
23
+ GIGO.load(super)
24
24
  end
25
25
  ```
26
26
 
@@ -36,10 +36,18 @@ GIGO transcoders can be any module or class that implements the `transcode` meth
36
36
 
37
37
  GIGO attempts to use each in that order. Upon successful transcoding, we use the [EnsureValidEncoding](http://github.com/jrochkind/ensure_valid_encoding) gem to force an encoding to match the `GIGO.encoding` while removing any non-convertable characters.
38
38
 
39
+ #### Rails/ActiveSupport v2.3.x
40
+
41
+ When using GIGO with Rails/ActiveSupport 2.3., the `GIGO::Transcoders::CharlockHolmes` transcoder will be inserted before the `GIGO::Transcoders::ActiveSupport` one. This is needed because ActiveSupport's multibyte char support is weak in version 2.3.x. You will need to add this to your applications `Gemfile` since `CharlockHolmes` requires it.
42
+
43
+ ```ruby
44
+ gem 'iconv'
45
+ ```
46
+
39
47
 
40
48
  ## Contributing
41
49
 
42
- GIGO is fully tested with ActiveSupport 3.0 to 4 and upward. If you detect a problem, open up a github issue or fork the repo and help out. After you fork or clone the repository, the following commands will get you up and running on the test suite.
50
+ GIGO is fully tested with ActiveSupport 3.0 to 4 and upward. If you detect a problem, open up a github issue or fork the repo and help out. After you fork or clone the repository, the following commands will get you up and running on the test suite.
43
51
 
44
52
  ```shell
45
53
  $ bundle install
@@ -0,0 +1,8 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "activesupport", "~> 2.3.0"
6
+ gem "iconv"
7
+
8
+ gemspec :path=>"../"
@@ -0,0 +1,35 @@
1
+ PATH
2
+ remote: ../
3
+ specs:
4
+ gigo (2.0.0)
5
+ activesupport (>= 2.3)
6
+ charlock_holmes (~> 0.7)
7
+ ensure_valid_encoding (~> 0.5.3)
8
+
9
+ GEM
10
+ remote: https://rubygems.org/
11
+ specs:
12
+ activesupport (2.3.18)
13
+ appraisal (1.0.2)
14
+ bundler
15
+ rake
16
+ thor (>= 0.14.0)
17
+ charlock_holmes (0.7.3)
18
+ ensure_valid_encoding (0.5.3)
19
+ i18n (0.6.11)
20
+ iconv (1.0.4)
21
+ minitest (5.4.2)
22
+ rake (10.3.2)
23
+ thor (0.19.1)
24
+
25
+ PLATFORMS
26
+ ruby
27
+
28
+ DEPENDENCIES
29
+ activesupport (~> 2.3.0)
30
+ appraisal
31
+ gigo!
32
+ i18n
33
+ iconv
34
+ minitest
35
+ rake
@@ -1,21 +1,25 @@
1
1
  PATH
2
- remote: /Users/kencollins/Repositories/customink/gigo
2
+ remote: ../
3
3
  specs:
4
4
  gigo (2.0.0)
5
- activesupport (>= 3.0)
5
+ activesupport (>= 2.3)
6
+ charlock_holmes (~> 0.7)
6
7
  ensure_valid_encoding (~> 0.5.3)
7
8
 
8
9
  GEM
9
10
  remote: https://rubygems.org/
10
11
  specs:
11
12
  activesupport (3.0.20)
12
- appraisal (0.5.2)
13
+ appraisal (1.0.2)
13
14
  bundler
14
15
  rake
16
+ thor (>= 0.14.0)
17
+ charlock_holmes (0.7.3)
15
18
  ensure_valid_encoding (0.5.3)
16
- i18n (0.6.4)
17
- minitest (5.0.1)
18
- rake (10.0.4)
19
+ i18n (0.6.11)
20
+ minitest (5.4.2)
21
+ rake (10.3.2)
22
+ thor (0.19.1)
19
23
 
20
24
  PLATFORMS
21
25
  ruby
@@ -25,5 +29,5 @@ DEPENDENCIES
25
29
  appraisal
26
30
  gigo!
27
31
  i18n
28
- minitest (~> 5.0)
32
+ minitest
29
33
  rake
@@ -1,23 +1,27 @@
1
1
  PATH
2
- remote: /Users/kencollins/Repositories/customink/gigo
2
+ remote: ../
3
3
  specs:
4
4
  gigo (2.0.0)
5
- activesupport (>= 3.0)
5
+ activesupport (>= 2.3)
6
+ charlock_holmes (~> 0.7)
6
7
  ensure_valid_encoding (~> 0.5.3)
7
8
 
8
9
  GEM
9
10
  remote: https://rubygems.org/
10
11
  specs:
11
- activesupport (3.1.10)
12
- multi_json (>= 1.0, < 1.3)
13
- appraisal (0.5.2)
12
+ activesupport (3.1.12)
13
+ multi_json (~> 1.0)
14
+ appraisal (1.0.2)
14
15
  bundler
15
16
  rake
17
+ thor (>= 0.14.0)
18
+ charlock_holmes (0.7.3)
16
19
  ensure_valid_encoding (0.5.3)
17
- i18n (0.6.4)
18
- minitest (5.0.1)
19
- multi_json (1.2.0)
20
- rake (10.0.4)
20
+ i18n (0.6.11)
21
+ minitest (5.4.2)
22
+ multi_json (1.10.1)
23
+ rake (10.3.2)
24
+ thor (0.19.1)
21
25
 
22
26
  PLATFORMS
23
27
  ruby
@@ -27,5 +31,5 @@ DEPENDENCIES
27
31
  appraisal
28
32
  gigo!
29
33
  i18n
30
- minitest (~> 5.0)
34
+ minitest
31
35
  rake
@@ -1,24 +1,28 @@
1
1
  PATH
2
- remote: /Users/kencollins/Repositories/customink/gigo
2
+ remote: ../
3
3
  specs:
4
4
  gigo (2.0.0)
5
- activesupport (>= 3.0)
5
+ activesupport (>= 2.3)
6
+ charlock_holmes (~> 0.7)
6
7
  ensure_valid_encoding (~> 0.5.3)
7
8
 
8
9
  GEM
9
10
  remote: https://rubygems.org/
10
11
  specs:
11
- activesupport (3.2.12)
12
- i18n (~> 0.6)
12
+ activesupport (3.2.19)
13
+ i18n (~> 0.6, >= 0.6.4)
13
14
  multi_json (~> 1.0)
14
- appraisal (0.5.2)
15
+ appraisal (1.0.2)
15
16
  bundler
16
17
  rake
18
+ thor (>= 0.14.0)
19
+ charlock_holmes (0.7.3)
17
20
  ensure_valid_encoding (0.5.3)
18
- i18n (0.6.4)
19
- minitest (5.0.1)
20
- multi_json (1.7.3)
21
- rake (10.0.4)
21
+ i18n (0.6.11)
22
+ minitest (5.4.2)
23
+ multi_json (1.10.1)
24
+ rake (10.3.2)
25
+ thor (0.19.1)
22
26
 
23
27
  PLATFORMS
24
28
  ruby
@@ -28,5 +32,5 @@ DEPENDENCIES
28
32
  appraisal
29
33
  gigo!
30
34
  i18n
31
- minitest (~> 5.0)
35
+ minitest
32
36
  rake
@@ -2,6 +2,6 @@
2
2
 
3
3
  source "https://rubygems.org"
4
4
 
5
- gem "activesupport", :github=>"rails/rails"
5
+ gem "activesupport", "~> 4.0.0"
6
6
 
7
7
  gemspec :path=>"../"
@@ -1,44 +1,41 @@
1
- GIT
2
- remote: git://github.com/rails/rails.git
3
- revision: d71b0935a956ebedea0bb975525fc0f5672e4088
4
- specs:
5
- activesupport (4.1.0.beta)
6
- i18n (~> 0.6, >= 0.6.4)
7
- json (~> 1.7)
8
- minitest (~> 5.0)
9
- thread_safe (~> 0.1)
10
- tzinfo (~> 0.3.37)
11
-
12
1
  PATH
13
- remote: /Users/kencollins/Repositories/customink/gigo
2
+ remote: ../
14
3
  specs:
15
4
  gigo (2.0.0)
16
- activesupport (>= 3.0)
5
+ activesupport (>= 2.3)
6
+ charlock_holmes (~> 0.7)
17
7
  ensure_valid_encoding (~> 0.5.3)
18
8
 
19
9
  GEM
20
10
  remote: https://rubygems.org/
21
11
  specs:
22
- appraisal (0.5.2)
12
+ activesupport (4.0.11)
13
+ i18n (~> 0.6, >= 0.6.9)
14
+ minitest (~> 4.2)
15
+ multi_json (~> 1.3)
16
+ thread_safe (~> 0.1)
17
+ tzinfo (~> 0.3.37)
18
+ appraisal (1.0.2)
23
19
  bundler
24
20
  rake
25
- atomic (1.1.9)
21
+ thor (>= 0.14.0)
22
+ charlock_holmes (0.7.3)
26
23
  ensure_valid_encoding (0.5.3)
27
- i18n (0.6.4)
28
- json (1.8.0)
29
- minitest (5.0.1)
30
- rake (10.0.4)
31
- thread_safe (0.1.0)
32
- atomic
33
- tzinfo (0.3.37)
24
+ i18n (0.6.11)
25
+ minitest (4.7.5)
26
+ multi_json (1.10.1)
27
+ rake (10.3.2)
28
+ thor (0.19.1)
29
+ thread_safe (0.3.4)
30
+ tzinfo (0.3.42)
34
31
 
35
32
  PLATFORMS
36
33
  ruby
37
34
 
38
35
  DEPENDENCIES
39
- activesupport!
36
+ activesupport (~> 4.0.0)
40
37
  appraisal
41
38
  gigo!
42
39
  i18n
43
- minitest (~> 5.0)
40
+ minitest
44
41
  rake
@@ -0,0 +1,7 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "activesupport", "~> 4.1.0"
6
+
7
+ gemspec :path=>"../"
@@ -0,0 +1,42 @@
1
+ PATH
2
+ remote: ../
3
+ specs:
4
+ gigo (2.0.0)
5
+ activesupport (>= 2.3)
6
+ charlock_holmes (~> 0.7)
7
+ ensure_valid_encoding (~> 0.5.3)
8
+
9
+ GEM
10
+ remote: https://rubygems.org/
11
+ specs:
12
+ activesupport (4.1.4)
13
+ i18n (~> 0.6, >= 0.6.9)
14
+ json (~> 1.7, >= 1.7.7)
15
+ minitest (~> 5.1)
16
+ thread_safe (~> 0.1)
17
+ tzinfo (~> 1.1)
18
+ appraisal (1.0.2)
19
+ bundler
20
+ rake
21
+ thor (>= 0.14.0)
22
+ charlock_holmes (0.7.3)
23
+ ensure_valid_encoding (0.5.3)
24
+ i18n (0.6.11)
25
+ json (1.8.1)
26
+ minitest (5.4.2)
27
+ rake (10.3.2)
28
+ thor (0.19.1)
29
+ thread_safe (0.3.4)
30
+ tzinfo (1.2.2)
31
+ thread_safe (~> 0.1)
32
+
33
+ PLATFORMS
34
+ ruby
35
+
36
+ DEPENDENCIES
37
+ activesupport (~> 4.1.0)
38
+ appraisal
39
+ gigo!
40
+ i18n
41
+ minitest
42
+ rake
data/gigo.gemspec CHANGED
@@ -15,10 +15,11 @@ Gem::Specification.new do |gem|
15
15
  gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
16
16
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
17
17
  gem.require_paths = ["lib"]
18
- gem.add_runtime_dependency 'activesupport', '>= 3.0'
18
+ gem.add_runtime_dependency 'activesupport', '>= 2.3'
19
19
  gem.add_runtime_dependency 'ensure_valid_encoding', '~> 0.5.3'
20
+ gem.add_runtime_dependency 'charlock_holmes', '~> 0.7'
20
21
  gem.add_development_dependency 'appraisal'
21
22
  gem.add_development_dependency 'i18n' # Older ActiveSupport does not have a proper dep.
22
23
  gem.add_development_dependency 'rake'
23
- gem.add_development_dependency 'minitest', '~> 5.0'
24
+ gem.add_development_dependency 'minitest'
24
25
  end
data/lib/gigo.rb CHANGED
@@ -1,6 +1,8 @@
1
1
  require 'active_support/all'
2
+ require 'active_support/version'
2
3
  require 'ensure_valid_encoding'
3
4
  require 'gigo/transcoders'
5
+ require 'gigo/transcoders/charlock_holmes' if ActiveSupport::VERSION::STRING < '3.0'
4
6
  require 'gigo/transcoders/active_support'
5
7
  require 'gigo/transcoders/blind'
6
8
  require 'gigo/version'
@@ -8,7 +10,6 @@ require 'gigo/version'
8
10
  module GIGO
9
11
 
10
12
  mattr_accessor :encoding
11
- self.encoding = Encoding.default_internal || Encoding::UTF_8
12
13
 
13
14
  def self.load(data, options = {})
14
15
  return data if data.nil? || !data.acts_like?(:string)
@@ -18,6 +19,11 @@ module GIGO
18
19
  encoded_string
19
20
  end
20
21
 
22
+ def self.reset_encoding!
23
+ self.encoding = Encoding.default_internal || Encoding::UTF_8
24
+ end
25
+ reset_encoding!
26
+
21
27
 
22
28
  protected
23
29
 
@@ -1,6 +1,6 @@
1
1
  module GIGO
2
2
  module Transcoders
3
-
3
+
4
4
  end
5
5
  mattr_accessor :transcoders
6
6
  self.transcoders = []
@@ -7,7 +7,7 @@ module GIGO
7
7
  def self.transcode(data)
8
8
  ::ActiveSupport::Multibyte.proxy_class.new(data).tidy_bytes.to_s
9
9
  end
10
-
10
+
11
11
  end
12
12
  end
13
13
  end
@@ -7,7 +7,7 @@ module GIGO
7
7
  def self.transcode(data)
8
8
  data.encode GIGO.encoding, :undef => :replace, :invalid => :replace
9
9
  end
10
-
10
+
11
11
  end
12
12
  end
13
13
  end
@@ -0,0 +1,26 @@
1
+ require 'iconv'
2
+ require 'charlock_holmes'
3
+
4
+ module GIGO
5
+ module Transcoders
6
+ module CharlockHolmes
7
+
8
+ GIGO.transcoders << self
9
+
10
+ def self.transcode(data)
11
+ ::CharlockHolmes::Converter.convert data, detect_encoding(data), GIGO.encoding.name
12
+ end
13
+
14
+ private
15
+
16
+ def self.detect_encoding(data)
17
+ encoding = ::CharlockHolmes::EncodingDetector.detect(data)[:encoding]
18
+ case encoding
19
+ when 'UTF-16BE' then 'CP1252'
20
+ else encoding
21
+ end
22
+ end
23
+
24
+ end
25
+ end
26
+ end
data/lib/gigo/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module GIGO
2
- VERSION = "2.0.0"
2
+ VERSION = "2.1.0"
3
3
  end
@@ -30,7 +30,7 @@ module GIGO
30
30
  end
31
31
 
32
32
  describe '.load' do
33
-
33
+
34
34
  it 'ignores if string is not present' do
35
35
  GIGO.load('').must_equal ''
36
36
  GIGO.load(nil).must_be_nil
@@ -59,7 +59,7 @@ module GIGO
59
59
  GIGO.load(data_medico_unknown).must_equal "Med�co"
60
60
  end
61
61
 
62
- it 'makes sure UTF-8 data read in as US-ASCII us fixed' do
62
+ it 'makes sure UTF-8 data read in as US-ASCII is fixed' do
63
63
  GIGO.load(data_medico_utf8.force_encoding('US-ASCII')).must_equal 'Medíco'
64
64
  end
65
65
 
@@ -79,7 +79,7 @@ module GIGO
79
79
  GIGO.load(data_medico_iso88591.force_encoding('US-ASCII')).must_equal 'Medíco'
80
80
  end
81
81
 
82
- it 'can make sure to it is really a valid encoding afterward' do
82
+ it 'readly bad data can be html escaped afterward' do
83
83
  html_escape GIGO.load(data_really_bad)
84
84
  end
85
85
 
@@ -88,13 +88,14 @@ module GIGO
88
88
  describe '.transcoders' do
89
89
 
90
90
  it 'is an array of default transcoders' do
91
- GIGO.transcoders.must_equal [
92
- GIGO::Transcoders::ActiveSupport,
93
- GIGO::Transcoders::Blind
94
- ]
91
+ if ActiveSupport::VERSION::STRING < '3.0'
92
+ GIGO.transcoders.must_equal [GIGO::Transcoders::CharlockHolmes, GIGO::Transcoders::ActiveSupport, GIGO::Transcoders::Blind]
93
+ else
94
+ GIGO.transcoders.must_equal [GIGO::Transcoders::ActiveSupport, GIGO::Transcoders::Blind]
95
+ end
95
96
  end
96
97
 
97
98
  end
98
-
99
+
99
100
  end
100
101
  end
data/test/test_helper.rb CHANGED
@@ -7,20 +7,18 @@ module GIGO
7
7
  class TestCase < MiniTest::Spec
8
8
 
9
9
  include ERB::Util
10
+ @@default_internal_encoding = Encoding.default_internal
10
11
 
11
- before { setup_gigo }
12
- after { teardown_gigo }
12
+ before { reset_encodings }
13
13
 
14
14
 
15
15
  private
16
16
 
17
- def setup_gigo
18
- @_default_gigo_encoding = GIGO.encoding
17
+ def reset_encodings
18
+ Encoding.default_internal = @@default_internal_encoding
19
+ GIGO.reset_encoding!
19
20
  end
20
21
 
21
- def teardown_gigo
22
- GIGO.encoding = @_default_gigo_encoding
23
- end
24
-
22
+
25
23
  end
26
24
  end
metadata CHANGED
@@ -1,112 +1,113 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gigo
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
5
- prerelease:
4
+ version: 2.1.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Ken Collins
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-05-19 00:00:00.000000000 Z
11
+ date: 2014-11-07 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: activesupport
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
- version: '3.0'
19
+ version: '2.3'
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
- version: '3.0'
26
+ version: '2.3'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: ensure_valid_encoding
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.5.3
38
34
  type: :runtime
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.5.3
41
+ - !ruby/object:Gem::Dependency
42
+ name: charlock_holmes
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '0.7'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '0.7'
46
55
  - !ruby/object:Gem::Dependency
47
56
  name: appraisal
48
57
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
58
  requirements:
51
- - - ! '>='
59
+ - - ">="
52
60
  - !ruby/object:Gem::Version
53
61
  version: '0'
54
62
  type: :development
55
63
  prerelease: false
56
64
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
65
  requirements:
59
- - - ! '>='
66
+ - - ">="
60
67
  - !ruby/object:Gem::Version
61
68
  version: '0'
62
69
  - !ruby/object:Gem::Dependency
63
70
  name: i18n
64
71
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
72
  requirements:
67
- - - ! '>='
73
+ - - ">="
68
74
  - !ruby/object:Gem::Version
69
75
  version: '0'
70
76
  type: :development
71
77
  prerelease: false
72
78
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
79
  requirements:
75
- - - ! '>='
80
+ - - ">="
76
81
  - !ruby/object:Gem::Version
77
82
  version: '0'
78
83
  - !ruby/object:Gem::Dependency
79
84
  name: rake
80
85
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
86
  requirements:
83
- - - ! '>='
87
+ - - ">="
84
88
  - !ruby/object:Gem::Version
85
89
  version: '0'
86
90
  type: :development
87
91
  prerelease: false
88
92
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
93
  requirements:
91
- - - ! '>='
94
+ - - ">="
92
95
  - !ruby/object:Gem::Version
93
96
  version: '0'
94
97
  - !ruby/object:Gem::Dependency
95
98
  name: minitest
96
99
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
100
  requirements:
99
- - - ~>
101
+ - - ">="
100
102
  - !ruby/object:Gem::Version
101
- version: '5.0'
103
+ version: '0'
102
104
  type: :development
103
105
  prerelease: false
104
106
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
107
  requirements:
107
- - - ~>
108
+ - - ">="
108
109
  - !ruby/object:Gem::Version
109
- version: '5.0'
110
+ version: '0'
110
111
  description: Garbage in, garbage out. Fix ruby encoded strings at all costs.
111
112
  email:
112
113
  - kcollins@customink.com
@@ -114,12 +115,14 @@ executables: []
114
115
  extensions: []
115
116
  extra_rdoc_files: []
116
117
  files:
117
- - .gitignore
118
+ - ".gitignore"
118
119
  - Appraisals
119
120
  - Gemfile
120
121
  - LICENSE.txt
121
122
  - README.md
122
123
  - Rakefile
124
+ - gemfiles/activesupport23.gemfile
125
+ - gemfiles/activesupport23.gemfile.lock
123
126
  - gemfiles/activesupport30.gemfile
124
127
  - gemfiles/activesupport30.gemfile.lock
125
128
  - gemfiles/activesupport31.gemfile
@@ -128,43 +131,39 @@ files:
128
131
  - gemfiles/activesupport32.gemfile.lock
129
132
  - gemfiles/activesupport40.gemfile
130
133
  - gemfiles/activesupport40.gemfile.lock
134
+ - gemfiles/activesupport41.gemfile
135
+ - gemfiles/activesupport41.gemfile.lock
131
136
  - gigo.gemspec
132
137
  - lib/gigo.rb
133
138
  - lib/gigo/transcoders.rb
134
139
  - lib/gigo/transcoders/active_support.rb
135
140
  - lib/gigo/transcoders/blind.rb
141
+ - lib/gigo/transcoders/charlock_holmes.rb
136
142
  - lib/gigo/version.rb
137
143
  - test/cases/gigo_test.rb
138
144
  - test/test_helper.rb
139
145
  homepage: http://github.com/customink/gigo
140
146
  licenses: []
147
+ metadata: {}
141
148
  post_install_message:
142
149
  rdoc_options: []
143
150
  require_paths:
144
151
  - lib
145
152
  required_ruby_version: !ruby/object:Gem::Requirement
146
- none: false
147
153
  requirements:
148
- - - ! '>='
154
+ - - ">="
149
155
  - !ruby/object:Gem::Version
150
156
  version: '0'
151
- segments:
152
- - 0
153
- hash: 952284011809381427
154
157
  required_rubygems_version: !ruby/object:Gem::Requirement
155
- none: false
156
158
  requirements:
157
- - - ! '>='
159
+ - - ">="
158
160
  - !ruby/object:Gem::Version
159
161
  version: '0'
160
- segments:
161
- - 0
162
- hash: 952284011809381427
163
162
  requirements: []
164
163
  rubyforge_project:
165
- rubygems_version: 1.8.25
164
+ rubygems_version: 2.4.2
166
165
  signing_key:
167
- specification_version: 3
166
+ specification_version: 4
168
167
  summary: The gigo gem aims to solve bad data, likely from a legacy database. It is
169
168
  an anti-pattern and you should really consider standardizing what encoding you both
170
169
  put in and take out of your data stores.