see_as_vee 0.5.0 → 0.5.1
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 +5 -5
- data/README.md +4 -1
- data/lib/see_as_vee/sheet.rb +4 -2
- data/lib/see_as_vee/version.rb +1 -1
- data/lib/see_as_vee.rb +4 -4
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 5103ec586ff4c0a7416764d563dfaecea3d52c22
|
4
|
+
data.tar.gz: 9313bbd50e3cf2aacf3949be68af21624eebcc3c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 58e8894f237cb6b25e08a8c7e2a51f1ad11a423bfa36d939edc180b819126f86c449b646e1370fefeecf047c4773c5e162a8361683199efa89bcf3388aacb954
|
7
|
+
data.tar.gz: 573e25fc183ad9d3e48e553f2d769c584c986bf6dda632cfa3ac79fe08dd9b93222d754dfe6094ccfba1ff86b2e2601974a1f6595b0c0b01fd420ec71a97a9af
|
data/README.md
CHANGED
@@ -37,7 +37,8 @@ Or install it yourself as:
|
|
37
37
|
sheet = SeeAsVee.harvest(
|
38
38
|
'spec/fixtures/velocity.xlsx', # file exists ⇒ will be loaded
|
39
39
|
formatters: { reference: ->(v) { v.round.to_s } }, # safe reference input
|
40
|
-
checkers: { reference: ->(v) { v.nil? } } # must be present
|
40
|
+
checkers: { reference: ->(v) { v.nil? } }, # must be present
|
41
|
+
skip_blank_rows: true # Optional, defaults to false
|
41
42
|
) do |idx, errors, hash| # row index, errors, row as hash { header: value }
|
42
43
|
# Errors: {"Reference"=>"☣2̶4̶3̶7̶2̶3̶1̶1̶4̶"}
|
43
44
|
expect(errors["Reference"]).to eq "#{SeeAsVee::Sheet::CELL_ERROR_MARKER}2̶4̶3̶7̶2̶3̶1̶1̶4̶"
|
@@ -125,6 +126,8 @@ From the version `0.4.5` we support expanding the column produced by `GROUP_CONC
|
|
125
126
|
|
126
127
|
## Changelog
|
127
128
|
|
129
|
+
### `0.5.1` _`skip_blank_rows`_
|
130
|
+
|
128
131
|
### `0.5.0` supporting all versions of `dry-validation`
|
129
132
|
|
130
133
|
### `0.4.9` _`squish`_
|
data/lib/see_as_vee/sheet.rb
CHANGED
@@ -14,12 +14,14 @@ module SeeAsVee
|
|
14
14
|
|
15
15
|
attr_reader :rows, :formatters, :checkers
|
16
16
|
|
17
|
-
def initialize whatever, formatters: {}, checkers: {}
|
17
|
+
def initialize whatever, formatters: {}, checkers: {}, skip_blank_rows: false
|
18
18
|
@formatters = formatters.map { |k, v| [str_to_sym(k), v] }.to_h
|
19
19
|
@checkers = checkers.map { |k, v| [str_to_sym(k), v] }.to_h
|
20
20
|
@rows = whatever.is_a?(Array) ? whatever : Helpers.harvest_csv(whatever)
|
21
21
|
|
22
|
-
@rows = @rows.map
|
22
|
+
@rows = @rows.map do |row|
|
23
|
+
row unless skip_blank_rows && row.compact.empty?
|
24
|
+
end.compact.map.with_index do |row, idx|
|
23
25
|
idx.zero? ? row : plough_row(row)
|
24
26
|
end
|
25
27
|
end
|
data/lib/see_as_vee/version.rb
CHANGED
data/lib/see_as_vee.rb
CHANGED
@@ -25,8 +25,8 @@ require 'see_as_vee/sheet'
|
|
25
25
|
require 'see_as_vee/producers/hashes'
|
26
26
|
|
27
27
|
module SeeAsVee
|
28
|
-
def harvest whatever, formatters: {}, checkers: {}
|
29
|
-
sheet = SeeAsVee::Sheet.new whatever, formatters: formatters, checkers: checkers
|
28
|
+
def harvest whatever, formatters: {}, checkers: {}, skip_blank_rows: false
|
29
|
+
sheet = SeeAsVee::Sheet.new whatever, formatters: formatters, checkers: checkers, skip_blank_rows: skip_blank_rows
|
30
30
|
return sheet.each unless block_given?
|
31
31
|
|
32
32
|
sheet.each(&Proc.new)
|
@@ -51,7 +51,7 @@ module SeeAsVee
|
|
51
51
|
end
|
52
52
|
|
53
53
|
class String
|
54
|
-
def harvest_csv formatters: {}, checkers: {}
|
55
|
-
SeeAsVee.harvest self, formatters: formatters, checkers: checkers
|
54
|
+
def harvest_csv formatters: {}, checkers: {}, skip_blank_rows: false
|
55
|
+
SeeAsVee.harvest self, formatters: formatters, checkers: checkers, skip_blank_rows: skip_blank_rows
|
56
56
|
end
|
57
57
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: see_as_vee
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Aleksei Matiushkin
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-06-
|
11
|
+
date: 2018-06-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: simple_xlsx_reader
|
@@ -185,7 +185,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
185
185
|
version: '0'
|
186
186
|
requirements: []
|
187
187
|
rubyforge_project:
|
188
|
-
rubygems_version: 2.
|
188
|
+
rubygems_version: 2.4.8
|
189
189
|
signing_key:
|
190
190
|
specification_version: 4
|
191
191
|
summary: Really easy CSV/XLSX reader/writer.
|