csv-query 0.1.4 → 0.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 10fa9309ef16778b09c787a1d5b7599f7f43c13f6f008abb137edaeb5b55d105
4
- data.tar.gz: fa035f772cb501e385af0455052ceed566b2803c3199ec40880dc6127945a96d
3
+ metadata.gz: f79a9263dd25c72224f5218f8a44387d035ed1b4d1f3cbfbd724a2b1c6bab4dd
4
+ data.tar.gz: 381b2a506e76f471abf1ed23ccc91dab4a99b918372ea720757b8b8248ef04eb
5
5
  SHA512:
6
- metadata.gz: f716f81e81916c68bed25209aabb43fd4a8489e9855940148c96686e038a0925c29d4a21056f0d18ebce04ee438109b4315343b6a48a4d709eddc801b23e7da2
7
- data.tar.gz: c6ccf2468d29c920327ff458a9e4d08ec2c9079a0f8eb5001220166be02fa1c18ab7e809cb12e1fec41b05342919a415942054df039d3a73eb6aa654013b14e1
6
+ metadata.gz: 40769ba62e4779cdf6a15fddb5a127d11e23712df2309e44100f6cf80053ea1affd0b6424a0f705c5978f14ea30291e3f7853b259a7c30d9ddd7e00ad53ae91f
7
+ data.tar.gz: 395a7f3dc55740e7e14ddbe35aeb37ed3d30e82ecf03b027d9e3d5abd902a588d2c0a41e4162fe25648dc2f4fb76397d8f5b92b12ddf08c9b659322047c052a5
data/Gemfile.lock CHANGED
@@ -3,6 +3,7 @@ PATH
3
3
  specs:
4
4
  csv-query (0.1.4)
5
5
  activerecord
6
+ charlock_holmes
6
7
  sqlite3
7
8
 
8
9
  GEM
@@ -20,6 +21,7 @@ GEM
20
21
  minitest (~> 5.1)
21
22
  tzinfo (~> 1.1)
22
23
  arel (9.0.0)
24
+ charlock_holmes (0.7.6)
23
25
  concurrent-ruby (1.0.5)
24
26
  diff-lcs (1.3)
25
27
  i18n (1.0.1)
data/README.md CHANGED
@@ -1,8 +1,6 @@
1
1
  # Csv::Query
2
2
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/csv/query`. To experiment with that code, run `bin/console` for an interactive prompt.
4
-
5
- TODO: Delete this and the text above, and describe your gem
3
+ manage csv with ActiveRecord, Sqlite3(InMemory) via cli, terminal
6
4
 
7
5
  ## Installation
8
6
 
data/csv-query.gemspec CHANGED
@@ -32,6 +32,7 @@ Gem::Specification.new do |spec|
32
32
 
33
33
  spec.add_dependency "sqlite3"
34
34
  spec.add_dependency "activerecord"
35
+ spec.add_dependency "charlock_holmes"
35
36
 
36
37
  spec.add_development_dependency "bundler", "~> 1.16"
37
38
  spec.add_development_dependency "rake", "~> 10.0"
@@ -1,5 +1,5 @@
1
1
  module Csv
2
2
  module Query
3
- VERSION = "0.1.4"
3
+ VERSION = "0.1.5"
4
4
  end
5
5
  end
data/lib/csv/query.rb CHANGED
@@ -4,6 +4,7 @@ require 'sqlite3'
4
4
  require 'active_record'
5
5
  require 'optparse'
6
6
  require 'pp'
7
+ require 'charlock_holmes/string'
7
8
 
8
9
  # usage: $ bundle exec csv-query --file ~/Downloads/head10.csv --query 'InMemoryAR::Record.all'
9
10
  module Csv
@@ -34,7 +35,14 @@ module Csv
34
35
  end
35
36
 
36
37
  def csv
37
- CSV.read(file_path, encoding: "SJIS:UTF-8", headers: true, header_converters: header_converter)
38
+ contents = File.read(file_path)
39
+ detection = contents.detect_encoding
40
+ case detection[:encoding]
41
+ when "Shift_JIS"
42
+ CSV.read(file_path, encoding: "SJIS:UTF-8", headers: true, header_converters: header_converter)
43
+ when "UTF-8"
44
+ CSV.read(file_path, encoding: "UTF-8:UTF-8", headers: true, header_converters: header_converter)
45
+ end
38
46
  end
39
47
 
40
48
  def csv_headers
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: csv-query
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - naofumi-fujii
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-05-29 00:00:00.000000000 Z
11
+ date: 2018-05-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sqlite3
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
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'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: bundler
43
57
  requirement: !ruby/object:Gem::Requirement