csvlint 0.3.2 → 1.0.0
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 -13
- data/.github/ISSUE_TEMPLATE.md +24 -0
- data/.github/PULL_REQUEST_TEMPLATE.md +7 -0
- data/.github/dependabot.yml +7 -0
- data/.github/workflows/push.yml +23 -0
- data/.gitignore +1 -0
- data/.ruby-version +1 -1
- data/CHANGELOG.md +85 -130
- data/CODE_OF_CONDUCT.md +74 -0
- data/CONTRIBUTING.md +32 -0
- data/Gemfile +0 -3
- data/README.md +54 -47
- data/bin/create_schema +2 -2
- data/csvlint.gemspec +9 -6
- data/features/fixtures/white space in filename.csv +3 -0
- data/features/support/aruba.rb +4 -3
- data/features/support/env.rb +1 -1
- data/features/support/load_tests.rb +12 -12
- data/features/support/webmock.rb +2 -0
- data/lib/csvlint/cli.rb +18 -24
- data/lib/csvlint/csvw/property_checker.rb +9 -2
- data/lib/csvlint/csvw/table.rb +6 -4
- data/lib/csvlint/schema.rb +18 -3
- data/lib/csvlint/validate.rb +18 -13
- data/lib/csvlint/version.rb +1 -1
- data/lib/csvlint.rb +1 -1
- data/spec/schema_spec.rb +2 -2
- data/spec/spec_helper.rb +1 -1
- data/spec/validator_spec.rb +14 -9
- metadata +103 -80
- data/.travis.yml +0 -35
data/spec/schema_spec.rb
CHANGED
@@ -174,7 +174,7 @@ describe Csvlint::Schema do
|
|
174
174
|
end
|
175
175
|
|
176
176
|
it "should create a schema from a JSON Table URL" do
|
177
|
-
schema = Csvlint::Schema.
|
177
|
+
schema = Csvlint::Schema.load_from_uri("http://example.com/example.json")
|
178
178
|
expect( schema.uri ).to eql("http://example.com/example.json")
|
179
179
|
expect( schema.fields.length ).to eql(3)
|
180
180
|
expect( schema.fields[0].name ).to eql("ID")
|
@@ -203,7 +203,7 @@ describe Csvlint::Schema do
|
|
203
203
|
end
|
204
204
|
|
205
205
|
it "should create a table group from a CSVW metadata URL" do
|
206
|
-
schema = Csvlint::Schema.
|
206
|
+
schema = Csvlint::Schema.load_from_uri("http://example.com/metadata.json")
|
207
207
|
expect( schema.class ).to eq(Csvlint::Csvw::TableGroup)
|
208
208
|
end
|
209
209
|
end
|
data/spec/spec_helper.rb
CHANGED
data/spec/validator_spec.rb
CHANGED
@@ -28,6 +28,12 @@ describe Csvlint::Validator do
|
|
28
28
|
expect(validator.data.size).to eql(3)
|
29
29
|
end
|
30
30
|
|
31
|
+
it "should validate from a file path including whitespace" do
|
32
|
+
validator = Csvlint::Validator.new(File.new(File.join(File.dirname(__FILE__),'..','features','fixtures','white space in filename.csv')))
|
33
|
+
|
34
|
+
expect(validator.valid?).to eql(true)
|
35
|
+
end
|
36
|
+
|
31
37
|
context "multi line CSV validation with included schema" do
|
32
38
|
|
33
39
|
end
|
@@ -46,7 +52,7 @@ describe Csvlint::Validator do
|
|
46
52
|
|
47
53
|
it ".each() -> parse_contents method validates a well formed CSV" do
|
48
54
|
# when invoking parse contents
|
49
|
-
data = StringIO.new("
|
55
|
+
data = StringIO.new(%Q{"Foo","Bar","Baz"\r\n"1","2","3"\r\n"1","2","3"\r\n"3","2","1"})
|
50
56
|
|
51
57
|
validator = Csvlint::Validator.new(data)
|
52
58
|
|
@@ -61,20 +67,19 @@ describe Csvlint::Validator do
|
|
61
67
|
|
62
68
|
it ".each() -> `parse_contents` parses malformed CSV and catches unclosed quote" do
|
63
69
|
# doesn't build warnings because check_consistency isn't invoked
|
64
|
-
|
65
|
-
data = StringIO.new("\"Foo\",\"Bar\",\"Baz\"\r\n\"1\",\"2\",\"3\"\r\n\"1\",\"2\",\"3\"\r\n\"3\",\"2\",\"1\" ")
|
70
|
+
data = StringIO.new(%Q{"Foo","Bar","Baz"\r\n"1","2","3"\r\n"1","2","3"\r\n"3","2","1})
|
66
71
|
|
67
72
|
validator = Csvlint::Validator.new(data)
|
68
73
|
|
69
74
|
expect(validator.valid?).to eql(false)
|
70
|
-
expect(validator.errors.first.type).to eql(:unclosed_quote)
|
71
75
|
expect(validator.errors.count).to eql(1)
|
76
|
+
expect(validator.errors.first.type).to eql(:unclosed_quote)
|
72
77
|
end
|
73
78
|
|
74
79
|
it ".each() -> `parse_contents` parses malformed CSV and catches whitespace and edge case" do
|
75
80
|
# when this data gets passed the header it rescues a whitespace error, resulting in the header row being discarded
|
76
81
|
# TODO - check if this is an edge case, currently passing because it requires advice on how to specify
|
77
|
-
data = StringIO.new(
|
82
|
+
data = StringIO.new(%Q{ "Foo","Bar","Baz"\r\n"1","2","3"\r\n"1","2","3"\r\n"3","2","1" })
|
78
83
|
|
79
84
|
validator = Csvlint::Validator.new(data)
|
80
85
|
|
@@ -84,13 +89,13 @@ describe Csvlint::Validator do
|
|
84
89
|
end
|
85
90
|
|
86
91
|
it "handles line breaks within a cell" do
|
87
|
-
data = StringIO.new("
|
92
|
+
data = StringIO.new(%Q{"a","b","c"\r\n"d","e","this is\r\nvalid"\r\n"a","b","c"})
|
88
93
|
validator = Csvlint::Validator.new(data)
|
89
94
|
expect(validator.valid?).to eql(true)
|
90
95
|
end
|
91
96
|
|
92
97
|
it "handles multiple line breaks within a cell" do
|
93
|
-
data = StringIO.new("
|
98
|
+
data = StringIO.new(%Q{"a","b","c"\r\n"d","this is\r\n valid","as is this\r\n too"})
|
94
99
|
validator = Csvlint::Validator.new(data)
|
95
100
|
expect(validator.valid?).to eql(true)
|
96
101
|
end
|
@@ -125,7 +130,7 @@ describe Csvlint::Validator do
|
|
125
130
|
|
126
131
|
it ".each() -> `validate` to pass input in streaming fashion" do
|
127
132
|
# warnings are built when validate is used to call all three methods
|
128
|
-
data = StringIO.new("
|
133
|
+
data = StringIO.new(%Q{"Foo","Bar","Baz"\r\n"1","2","3"\r\n"1","2","3"\r\n"3","2","1"})
|
129
134
|
validator = Csvlint::Validator.new(data)
|
130
135
|
|
131
136
|
expect(validator.valid?).to eql(true)
|
@@ -136,7 +141,7 @@ describe Csvlint::Validator do
|
|
136
141
|
end
|
137
142
|
|
138
143
|
it ".each() -> `validate` parses malformed CSV, populates errors, warnings & info_msgs,invokes finish()" do
|
139
|
-
data = StringIO.new("
|
144
|
+
data = StringIO.new(%Q{"Foo","Bar","Baz"\r\n"1","2","3"\r\n"1","2","3"\r\n"1","two","3"\r\n"3","2", "1"})
|
140
145
|
|
141
146
|
validator = Csvlint::Validator.new(data)
|
142
147
|
|
metadata
CHANGED
@@ -1,377 +1,391 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: csvlint
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- pezholio
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-07-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: rainbow
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: open_uri_redirections
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: activesupport
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: addressable
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: typhoeus
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- -
|
73
|
+
- - ">="
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: '0'
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- -
|
80
|
+
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
84
|
+
name: escape_utils
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- -
|
87
|
+
- - ">="
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: '0'
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- -
|
94
|
+
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
98
|
+
name: uri_template
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- -
|
101
|
+
- - ">="
|
102
102
|
- !ruby/object:Gem::Version
|
103
103
|
version: '0'
|
104
104
|
type: :runtime
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- -
|
108
|
+
- - ">="
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
112
|
+
name: thor
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
|
-
- -
|
115
|
+
- - ">="
|
116
116
|
- !ruby/object:Gem::Version
|
117
117
|
version: '0'
|
118
118
|
type: :runtime
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
|
-
- -
|
122
|
+
- - ">="
|
123
123
|
- !ruby/object:Gem::Version
|
124
124
|
version: '0'
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
|
-
name:
|
126
|
+
name: rack
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
|
-
- -
|
129
|
+
- - ">="
|
130
130
|
- !ruby/object:Gem::Version
|
131
131
|
version: '0'
|
132
132
|
type: :runtime
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
|
-
- -
|
136
|
+
- - ">="
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: net-http-persistent
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - ">="
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '0'
|
146
|
+
type: :runtime
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - ">="
|
137
151
|
- !ruby/object:Gem::Version
|
138
152
|
version: '0'
|
139
153
|
- !ruby/object:Gem::Dependency
|
140
154
|
name: bundler
|
141
155
|
requirement: !ruby/object:Gem::Requirement
|
142
156
|
requirements:
|
143
|
-
- -
|
157
|
+
- - ">="
|
144
158
|
- !ruby/object:Gem::Version
|
145
159
|
version: '1.3'
|
146
160
|
type: :development
|
147
161
|
prerelease: false
|
148
162
|
version_requirements: !ruby/object:Gem::Requirement
|
149
163
|
requirements:
|
150
|
-
- -
|
164
|
+
- - ">="
|
151
165
|
- !ruby/object:Gem::Version
|
152
166
|
version: '1.3'
|
153
167
|
- !ruby/object:Gem::Dependency
|
154
168
|
name: rake
|
155
169
|
requirement: !ruby/object:Gem::Requirement
|
156
170
|
requirements:
|
157
|
-
- -
|
171
|
+
- - ">="
|
158
172
|
- !ruby/object:Gem::Version
|
159
173
|
version: '0'
|
160
174
|
type: :development
|
161
175
|
prerelease: false
|
162
176
|
version_requirements: !ruby/object:Gem::Requirement
|
163
177
|
requirements:
|
164
|
-
- -
|
178
|
+
- - ">="
|
165
179
|
- !ruby/object:Gem::Version
|
166
180
|
version: '0'
|
167
181
|
- !ruby/object:Gem::Dependency
|
168
182
|
name: cucumber
|
169
183
|
requirement: !ruby/object:Gem::Requirement
|
170
184
|
requirements:
|
171
|
-
- -
|
185
|
+
- - ">="
|
172
186
|
- !ruby/object:Gem::Version
|
173
187
|
version: '0'
|
174
188
|
type: :development
|
175
189
|
prerelease: false
|
176
190
|
version_requirements: !ruby/object:Gem::Requirement
|
177
191
|
requirements:
|
178
|
-
- -
|
192
|
+
- - ">="
|
179
193
|
- !ruby/object:Gem::Version
|
180
194
|
version: '0'
|
181
195
|
- !ruby/object:Gem::Dependency
|
182
196
|
name: simplecov
|
183
197
|
requirement: !ruby/object:Gem::Requirement
|
184
198
|
requirements:
|
185
|
-
- -
|
199
|
+
- - ">="
|
186
200
|
- !ruby/object:Gem::Version
|
187
201
|
version: '0'
|
188
202
|
type: :development
|
189
203
|
prerelease: false
|
190
204
|
version_requirements: !ruby/object:Gem::Requirement
|
191
205
|
requirements:
|
192
|
-
- -
|
206
|
+
- - ">="
|
193
207
|
- !ruby/object:Gem::Version
|
194
208
|
version: '0'
|
195
209
|
- !ruby/object:Gem::Dependency
|
196
210
|
name: simplecov-rcov
|
197
211
|
requirement: !ruby/object:Gem::Requirement
|
198
212
|
requirements:
|
199
|
-
- -
|
213
|
+
- - ">="
|
200
214
|
- !ruby/object:Gem::Version
|
201
215
|
version: '0'
|
202
216
|
type: :development
|
203
217
|
prerelease: false
|
204
218
|
version_requirements: !ruby/object:Gem::Requirement
|
205
219
|
requirements:
|
206
|
-
- -
|
220
|
+
- - ">="
|
207
221
|
- !ruby/object:Gem::Version
|
208
222
|
version: '0'
|
209
223
|
- !ruby/object:Gem::Dependency
|
210
224
|
name: spork
|
211
225
|
requirement: !ruby/object:Gem::Requirement
|
212
226
|
requirements:
|
213
|
-
- -
|
227
|
+
- - ">="
|
214
228
|
- !ruby/object:Gem::Version
|
215
229
|
version: '0'
|
216
230
|
type: :development
|
217
231
|
prerelease: false
|
218
232
|
version_requirements: !ruby/object:Gem::Requirement
|
219
233
|
requirements:
|
220
|
-
- -
|
234
|
+
- - ">="
|
221
235
|
- !ruby/object:Gem::Version
|
222
236
|
version: '0'
|
223
237
|
- !ruby/object:Gem::Dependency
|
224
238
|
name: webmock
|
225
239
|
requirement: !ruby/object:Gem::Requirement
|
226
240
|
requirements:
|
227
|
-
- -
|
241
|
+
- - ">="
|
228
242
|
- !ruby/object:Gem::Version
|
229
243
|
version: '0'
|
230
244
|
type: :development
|
231
245
|
prerelease: false
|
232
246
|
version_requirements: !ruby/object:Gem::Requirement
|
233
247
|
requirements:
|
234
|
-
- -
|
248
|
+
- - ">="
|
235
249
|
- !ruby/object:Gem::Version
|
236
250
|
version: '0'
|
237
251
|
- !ruby/object:Gem::Dependency
|
238
252
|
name: rspec
|
239
253
|
requirement: !ruby/object:Gem::Requirement
|
240
254
|
requirements:
|
241
|
-
- -
|
255
|
+
- - ">="
|
242
256
|
- !ruby/object:Gem::Version
|
243
257
|
version: '0'
|
244
258
|
type: :development
|
245
259
|
prerelease: false
|
246
260
|
version_requirements: !ruby/object:Gem::Requirement
|
247
261
|
requirements:
|
248
|
-
- -
|
262
|
+
- - ">="
|
249
263
|
- !ruby/object:Gem::Version
|
250
264
|
version: '0'
|
251
265
|
- !ruby/object:Gem::Dependency
|
252
266
|
name: rspec-pride
|
253
267
|
requirement: !ruby/object:Gem::Requirement
|
254
268
|
requirements:
|
255
|
-
- -
|
269
|
+
- - ">="
|
256
270
|
- !ruby/object:Gem::Version
|
257
271
|
version: '0'
|
258
272
|
type: :development
|
259
273
|
prerelease: false
|
260
274
|
version_requirements: !ruby/object:Gem::Requirement
|
261
275
|
requirements:
|
262
|
-
- -
|
276
|
+
- - ">="
|
263
277
|
- !ruby/object:Gem::Version
|
264
278
|
version: '0'
|
265
279
|
- !ruby/object:Gem::Dependency
|
266
280
|
name: rspec-expectations
|
267
281
|
requirement: !ruby/object:Gem::Requirement
|
268
282
|
requirements:
|
269
|
-
- -
|
283
|
+
- - ">="
|
270
284
|
- !ruby/object:Gem::Version
|
271
285
|
version: '0'
|
272
286
|
type: :development
|
273
287
|
prerelease: false
|
274
288
|
version_requirements: !ruby/object:Gem::Requirement
|
275
289
|
requirements:
|
276
|
-
- -
|
290
|
+
- - ">="
|
277
291
|
- !ruby/object:Gem::Version
|
278
292
|
version: '0'
|
279
293
|
- !ruby/object:Gem::Dependency
|
280
294
|
name: coveralls
|
281
295
|
requirement: !ruby/object:Gem::Requirement
|
282
296
|
requirements:
|
283
|
-
- -
|
297
|
+
- - ">="
|
284
298
|
- !ruby/object:Gem::Version
|
285
299
|
version: '0'
|
286
300
|
type: :development
|
287
301
|
prerelease: false
|
288
302
|
version_requirements: !ruby/object:Gem::Requirement
|
289
303
|
requirements:
|
290
|
-
- -
|
304
|
+
- - ">="
|
291
305
|
- !ruby/object:Gem::Version
|
292
306
|
version: '0'
|
293
307
|
- !ruby/object:Gem::Dependency
|
294
|
-
name:
|
308
|
+
name: byebug
|
295
309
|
requirement: !ruby/object:Gem::Requirement
|
296
310
|
requirements:
|
297
|
-
- -
|
311
|
+
- - ">="
|
298
312
|
- !ruby/object:Gem::Version
|
299
313
|
version: '0'
|
300
314
|
type: :development
|
301
315
|
prerelease: false
|
302
316
|
version_requirements: !ruby/object:Gem::Requirement
|
303
317
|
requirements:
|
304
|
-
- -
|
318
|
+
- - ">="
|
305
319
|
- !ruby/object:Gem::Version
|
306
320
|
version: '0'
|
307
321
|
- !ruby/object:Gem::Dependency
|
308
322
|
name: github_changelog_generator
|
309
323
|
requirement: !ruby/object:Gem::Requirement
|
310
324
|
requirements:
|
311
|
-
- -
|
325
|
+
- - ">="
|
312
326
|
- !ruby/object:Gem::Version
|
313
327
|
version: '0'
|
314
328
|
type: :development
|
315
329
|
prerelease: false
|
316
330
|
version_requirements: !ruby/object:Gem::Requirement
|
317
331
|
requirements:
|
318
|
-
- -
|
332
|
+
- - ">="
|
319
333
|
- !ruby/object:Gem::Version
|
320
334
|
version: '0'
|
321
335
|
- !ruby/object:Gem::Dependency
|
322
336
|
name: aruba
|
323
337
|
requirement: !ruby/object:Gem::Requirement
|
324
338
|
requirements:
|
325
|
-
- -
|
339
|
+
- - ">="
|
326
340
|
- !ruby/object:Gem::Version
|
327
341
|
version: '0'
|
328
342
|
type: :development
|
329
343
|
prerelease: false
|
330
344
|
version_requirements: !ruby/object:Gem::Requirement
|
331
345
|
requirements:
|
332
|
-
- -
|
346
|
+
- - ">="
|
333
347
|
- !ruby/object:Gem::Version
|
334
348
|
version: '0'
|
335
349
|
- !ruby/object:Gem::Dependency
|
336
350
|
name: rdf
|
337
351
|
requirement: !ruby/object:Gem::Requirement
|
338
352
|
requirements:
|
339
|
-
- -
|
353
|
+
- - "<"
|
340
354
|
- !ruby/object:Gem::Version
|
341
|
-
version: '0'
|
355
|
+
version: '4.0'
|
342
356
|
type: :development
|
343
357
|
prerelease: false
|
344
358
|
version_requirements: !ruby/object:Gem::Requirement
|
345
359
|
requirements:
|
346
|
-
- -
|
360
|
+
- - "<"
|
347
361
|
- !ruby/object:Gem::Version
|
348
|
-
version: '0'
|
362
|
+
version: '4.0'
|
349
363
|
- !ruby/object:Gem::Dependency
|
350
364
|
name: rdf-turtle
|
351
365
|
requirement: !ruby/object:Gem::Requirement
|
352
366
|
requirements:
|
353
|
-
- -
|
367
|
+
- - ">="
|
354
368
|
- !ruby/object:Gem::Version
|
355
369
|
version: '0'
|
356
370
|
type: :development
|
357
371
|
prerelease: false
|
358
372
|
version_requirements: !ruby/object:Gem::Requirement
|
359
373
|
requirements:
|
360
|
-
- -
|
374
|
+
- - ">="
|
361
375
|
- !ruby/object:Gem::Version
|
362
376
|
version: '0'
|
363
377
|
- !ruby/object:Gem::Dependency
|
364
378
|
name: henry
|
365
379
|
requirement: !ruby/object:Gem::Requirement
|
366
380
|
requirements:
|
367
|
-
- -
|
381
|
+
- - ">="
|
368
382
|
- !ruby/object:Gem::Version
|
369
383
|
version: '0'
|
370
384
|
type: :development
|
371
385
|
prerelease: false
|
372
386
|
version_requirements: !ruby/object:Gem::Requirement
|
373
387
|
requirements:
|
374
|
-
- -
|
388
|
+
- - ">="
|
375
389
|
- !ruby/object:Gem::Version
|
376
390
|
version: '0'
|
377
391
|
description: CSV Validator
|
@@ -383,12 +397,17 @@ executables:
|
|
383
397
|
extensions: []
|
384
398
|
extra_rdoc_files: []
|
385
399
|
files:
|
386
|
-
- .coveralls.yml
|
387
|
-
- .gitattributes
|
388
|
-
- .
|
389
|
-
- .
|
390
|
-
- .
|
400
|
+
- ".coveralls.yml"
|
401
|
+
- ".gitattributes"
|
402
|
+
- ".github/ISSUE_TEMPLATE.md"
|
403
|
+
- ".github/PULL_REQUEST_TEMPLATE.md"
|
404
|
+
- ".github/dependabot.yml"
|
405
|
+
- ".github/workflows/push.yml"
|
406
|
+
- ".gitignore"
|
407
|
+
- ".ruby-version"
|
391
408
|
- CHANGELOG.md
|
409
|
+
- CODE_OF_CONDUCT.md
|
410
|
+
- CONTRIBUTING.md
|
392
411
|
- Gemfile
|
393
412
|
- LICENSE.md
|
394
413
|
- README.md
|
@@ -414,6 +433,7 @@ files:
|
|
414
433
|
- features/fixtures/valid.csv
|
415
434
|
- features/fixtures/valid_many_rows.csv
|
416
435
|
- features/fixtures/w3.org/.well-known/csvm
|
436
|
+
- features/fixtures/white space in filename.csv
|
417
437
|
- features/fixtures/windows-line-endings.csv
|
418
438
|
- features/information.feature
|
419
439
|
- features/parse_csv.feature
|
@@ -460,28 +480,30 @@ files:
|
|
460
480
|
- spec/schema_spec.rb
|
461
481
|
- spec/spec_helper.rb
|
462
482
|
- spec/validator_spec.rb
|
463
|
-
homepage:
|
483
|
+
homepage: https://github.com/theodi/csvlint.rb
|
464
484
|
licenses:
|
465
485
|
- MIT
|
466
486
|
metadata: {}
|
467
|
-
post_install_message:
|
487
|
+
post_install_message:
|
468
488
|
rdoc_options: []
|
469
489
|
require_paths:
|
470
490
|
- lib
|
471
491
|
required_ruby_version: !ruby/object:Gem::Requirement
|
472
492
|
requirements:
|
473
|
-
- -
|
493
|
+
- - ">="
|
474
494
|
- !ruby/object:Gem::Version
|
475
|
-
version: '
|
495
|
+
version: '2.5'
|
496
|
+
- - "<"
|
497
|
+
- !ruby/object:Gem::Version
|
498
|
+
version: '3.2'
|
476
499
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
477
500
|
requirements:
|
478
|
-
- -
|
501
|
+
- - ">="
|
479
502
|
- !ruby/object:Gem::Version
|
480
503
|
version: '0'
|
481
504
|
requirements: []
|
482
|
-
|
483
|
-
|
484
|
-
signing_key:
|
505
|
+
rubygems_version: 3.3.7
|
506
|
+
signing_key:
|
485
507
|
specification_version: 4
|
486
508
|
summary: CSV Validator
|
487
509
|
test_files:
|
@@ -503,6 +525,7 @@ test_files:
|
|
503
525
|
- features/fixtures/valid.csv
|
504
526
|
- features/fixtures/valid_many_rows.csv
|
505
527
|
- features/fixtures/w3.org/.well-known/csvm
|
528
|
+
- features/fixtures/white space in filename.csv
|
506
529
|
- features/fixtures/windows-line-endings.csv
|
507
530
|
- features/information.feature
|
508
531
|
- features/parse_csv.feature
|