see_as_vee 0.2.1 → 0.2.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 489c54011297afe0f38f4af5bfe9bcc026f8a304
4
- data.tar.gz: 55f1697ea9f48162617506fa6b6e60dc04faf1eb
3
+ metadata.gz: 5075cfa19a8905986ff93a370c532971bd38511a
4
+ data.tar.gz: 74a685e2e96bcf93bf2c45a6095f907d881507d4
5
5
  SHA512:
6
- metadata.gz: db90971d6e54a91f9e5145d94a05edff2c1ca5af14bbf0c046c4f61892871ece27328d20cc883b4b6b1aa6837a2a65b615cf6dab0fccb49c4c15db538a273425
7
- data.tar.gz: f270a133e5865e3e662264e94abd578cfa299cfef1dba8eb571fe6e5d2e3600866b84db0799c49ee1907a4416bbbce8a02c8fdf528bb5f7eb85eee984d145a6c
6
+ metadata.gz: 6e31eb9763a979e0cc42618dd591c35ae5b15540666ca8cd49b045f8251850d6ce8e525034f910b117661d7633f57c8cc2ad61c78b808abcd93ac58553ab92c6
7
+ data.tar.gz: 681e6511ab6cbbee85cda869ef211aa0a9200bc740ab342b69ec91dd8de67ac994c1e9995468fbed74f33ed3a6c99997eae08661732acba2cd9ad1d54fd44774
@@ -10,7 +10,11 @@ module SeeAsVee
10
10
  else
11
11
  raise SeeAsVee::Exceptions::BadInputError.new(whatever)
12
12
  end
13
- [file, Privates.handler_name(FileMagic.new.file(file.path))].tap do |_, handle|
13
+ if (Kernel.const_defined?('FileMagic'))
14
+ [file, Privates.handler_name(FileMagic.new.file(file.path))]
15
+ else
16
+ [file, Privates.handler_by_ext(file.path[/(?<=\.).*\z/])]
17
+ end.tap do |_, handle|
14
18
  raise SeeAsVee::Exceptions::FileFormatError.new(file.path) if handle.nil?
15
19
  end
16
20
  end
@@ -29,7 +33,7 @@ module SeeAsVee
29
33
  }.freeze
30
34
 
31
35
  def tempfile bytes
32
- Tempfile.new('see_as_vee').tap { |f| f.syswrite(bytes) if bytes }
36
+ Tempfile.new(['see_as_vee', '.csv']).tap { |f| f.syswrite(bytes) if bytes }
33
37
  end
34
38
  module_function :tempfile
35
39
 
@@ -38,6 +42,11 @@ module SeeAsVee
38
42
  end
39
43
  module_function :handler_name
40
44
 
45
+ def handler_by_ext ext
46
+ ext.to_sym if %w|xlsx csv|.include?(ext)
47
+ end
48
+ module_function :handler_by_ext
49
+
41
50
  def xlsx_to_array path
42
51
  SimpleXlsxReader.open(path).sheets.first.rows
43
52
  end
@@ -1,3 +1,3 @@
1
1
  module SeeAsVee
2
- VERSION = "0.2.1"
2
+ VERSION = "0.2.2"
3
3
  end
data/lib/see_as_vee.rb CHANGED
@@ -1,4 +1,8 @@
1
- require 'filemagic'
1
+ begin
2
+ require 'filemagic'
3
+ rescue LoadError => e
4
+ end
5
+
2
6
  require 'axlsx'
3
7
  require 'simple_xlsx_reader'
4
8
  require 'csv'
data/see_as_vee.gemspec CHANGED
@@ -27,7 +27,7 @@ Gem::Specification.new do |spec|
27
27
 
28
28
  spec.add_dependency 'simple_xlsx_reader'
29
29
  spec.add_dependency 'axlsx'
30
- spec.add_dependency 'ruby-filemagic'
30
+ # spec.add_dependency 'ruby-filemagic', require: false
31
31
  spec.add_dependency 'mutations', '~> 0.7'
32
32
 
33
33
  spec.add_development_dependency 'bundler', '~> 1.10'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: see_as_vee
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aleksei Matiushkin
@@ -38,20 +38,6 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: ruby-filemagic
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :runtime
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: mutations
57
43
  requirement: !ruby/object:Gem::Requirement