csv_orm 0.2.1 → 0.2.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/csv_orm-0.2.0.gem +0 -0
- data/csv_orm-0.2.1.gem +0 -0
- data/lib/csv_orm/ingestor.rb +6 -1
- data/lib/csv_orm/version.rb +1 -1
- metadata +3 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7ccb7b21d2983da421f5a3cf706b9535f14b91d4
|
4
|
+
data.tar.gz: 1482bcf77f51b8c05cb6b15ab00fe709c2ed903b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: de35f0bb2e1c77d9e05bda57a537f02bb8fb422dc562356af50dcd69e75c819ea62e170b65562d2feef51956baf18856bf4b8b6beb3c207aaa817b67ce0335a7
|
7
|
+
data.tar.gz: 30afb86c10489613671fe20b6072ec83c9f5c71bcaf1154045ae35c43c23375d69f54fc08df8943f53a9ff9831905ec98e902be555307cb7a2fd3767616df9c7
|
data/csv_orm-0.2.0.gem
ADDED
Binary file
|
data/csv_orm-0.2.1.gem
ADDED
Binary file
|
data/lib/csv_orm/ingestor.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
module CsvOrm
|
2
2
|
class Ingestor
|
3
|
-
attr_accessor :file, :path, :headers, :headers_defined, :data_set
|
3
|
+
attr_accessor :file, :path, :headers, :headers_defined, :data_set, :options
|
4
4
|
|
5
5
|
def initialize(file_path, options={})
|
6
6
|
@path = File.expand_path(file_path)
|
@@ -9,9 +9,11 @@ module CsvOrm
|
|
9
9
|
@headers_defined = false
|
10
10
|
@data_set = []
|
11
11
|
@smart = options[:smart] == false ? false : true
|
12
|
+
@logging = options[:logging]
|
12
13
|
end
|
13
14
|
|
14
15
|
def parse
|
16
|
+
begin_time = Time.now
|
15
17
|
CSV.parse(file) do |row|
|
16
18
|
unless @headers_defined
|
17
19
|
@headers = row.map {|header| header.gsub(' ', '_').downcase.to_sym }
|
@@ -19,7 +21,10 @@ module CsvOrm
|
|
19
21
|
parsed_row = row.map {|field| infer_data_type(field) }
|
20
22
|
@data_set << OpenStruct.new(Hash[headers.zip(parsed_row)]) if @headers_defined
|
21
23
|
@headers_defined = true
|
24
|
+
puts "Parsed row #{$.}" if @logging
|
22
25
|
end
|
26
|
+
end_time = Time.now
|
27
|
+
puts "Parsed @file.path in #{end_time - start_time} seconds" if @logging
|
23
28
|
true # suppress potentially massive @data_set
|
24
29
|
end
|
25
30
|
|
data/lib/csv_orm/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: csv_orm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Lerner
|
@@ -113,6 +113,8 @@ files:
|
|
113
113
|
- bin/console
|
114
114
|
- bin/setup
|
115
115
|
- csv_orm-0.1.0.gem
|
116
|
+
- csv_orm-0.2.0.gem
|
117
|
+
- csv_orm-0.2.1.gem
|
116
118
|
- csv_orm.gemspec
|
117
119
|
- lib/csv_orm.rb
|
118
120
|
- lib/csv_orm/ingestor.rb
|