wjordan213-csvlint 0.2.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.coveralls.yml +1 -0
- data/.gitattributes +2 -0
- data/.gitignore +28 -0
- data/.ruby-version +1 -0
- data/.travis.yml +32 -0
- data/CHANGELOG.md +361 -0
- data/Gemfile +7 -0
- data/LICENSE.md +22 -0
- data/README.md +328 -0
- data/Rakefile +17 -0
- data/bin/create_schema +32 -0
- data/bin/csvlint +10 -0
- data/features/check_format.feature +46 -0
- data/features/cli.feature +210 -0
- data/features/csv_options.feature +35 -0
- data/features/csvupload.feature +145 -0
- data/features/csvw_schema_validation.feature +127 -0
- data/features/fixtures/cr-line-endings.csv +0 -0
- data/features/fixtures/crlf-line-endings.csv +0 -0
- data/features/fixtures/inconsistent-line-endings-unquoted.csv +0 -0
- data/features/fixtures/inconsistent-line-endings.csv +0 -0
- data/features/fixtures/invalid-byte-sequence.csv +0 -0
- data/features/fixtures/invalid_many_rows.csv +0 -0
- data/features/fixtures/lf-line-endings.csv +0 -0
- data/features/fixtures/spreadsheet.xls +0 -0
- data/features/fixtures/spreadsheet.xlsx +0 -0
- data/features/fixtures/title-row.csv +0 -0
- data/features/fixtures/valid.csv +0 -0
- data/features/fixtures/valid_many_rows.csv +0 -0
- data/features/fixtures/windows-line-endings.csv +0 -0
- data/features/information.feature +22 -0
- data/features/parse_csv.feature +90 -0
- data/features/schema_validation.feature +105 -0
- data/features/sources.feature +17 -0
- data/features/step_definitions/cli_steps.rb +11 -0
- data/features/step_definitions/csv_options_steps.rb +24 -0
- data/features/step_definitions/information_steps.rb +13 -0
- data/features/step_definitions/parse_csv_steps.rb +42 -0
- data/features/step_definitions/schema_validation_steps.rb +33 -0
- data/features/step_definitions/sources_steps.rb +7 -0
- data/features/step_definitions/validation_errors_steps.rb +90 -0
- data/features/step_definitions/validation_info_steps.rb +22 -0
- data/features/step_definitions/validation_warnings_steps.rb +60 -0
- data/features/support/aruba.rb +56 -0
- data/features/support/env.rb +26 -0
- data/features/support/load_tests.rb +114 -0
- data/features/support/webmock.rb +1 -0
- data/features/validation_errors.feature +147 -0
- data/features/validation_info.feature +16 -0
- data/features/validation_warnings.feature +86 -0
- data/lib/csvlint.rb +27 -0
- data/lib/csvlint/cli.rb +165 -0
- data/lib/csvlint/csvw/column.rb +359 -0
- data/lib/csvlint/csvw/date_format.rb +182 -0
- data/lib/csvlint/csvw/metadata_error.rb +13 -0
- data/lib/csvlint/csvw/number_format.rb +211 -0
- data/lib/csvlint/csvw/property_checker.rb +761 -0
- data/lib/csvlint/csvw/table.rb +204 -0
- data/lib/csvlint/csvw/table_group.rb +165 -0
- data/lib/csvlint/error_collector.rb +27 -0
- data/lib/csvlint/error_message.rb +15 -0
- data/lib/csvlint/field.rb +196 -0
- data/lib/csvlint/schema.rb +92 -0
- data/lib/csvlint/validate.rb +599 -0
- data/lib/csvlint/version.rb +3 -0
- data/spec/csvw/column_spec.rb +112 -0
- data/spec/csvw/date_format_spec.rb +49 -0
- data/spec/csvw/number_format_spec.rb +417 -0
- data/spec/csvw/table_group_spec.rb +143 -0
- data/spec/csvw/table_spec.rb +90 -0
- data/spec/field_spec.rb +252 -0
- data/spec/schema_spec.rb +211 -0
- data/spec/spec_helper.rb +17 -0
- data/spec/validator_spec.rb +619 -0
- data/wjordan213_csvlint.gemspec +46 -0
- metadata +490 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: e57f8fff77c0d82a3b8c4b011f501895c9b95dd1
|
4
|
+
data.tar.gz: 4dbdb7315ec6c3d41f8e7d20352fdcff6c2f56b4
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: c017e828359f2ecc1478b710e11509f5125b388e875110ac61550db443a0a3bc17d6c4ce365ea9891f6f1077a5be56d26982a7cf6196ba5ae9f2bf1a3c35a96c
|
7
|
+
data.tar.gz: 23ae3c1c7f9774ac9a300db52387a70dfa1c57a003f68eb91e336efa13f5d2de7cba9a1b5fe52f9cde727378775e998553b3344f1ba744f2b095105d2bedfe00
|
data/.coveralls.yml
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
service_name: travis-ci
|
data/.gitattributes
ADDED
data/.gitignore
ADDED
@@ -0,0 +1,28 @@
|
|
1
|
+
*.gem
|
2
|
+
*.rbc
|
3
|
+
.bundle
|
4
|
+
.config
|
5
|
+
.yardoc
|
6
|
+
Gemfile.lock
|
7
|
+
InstalledFiles
|
8
|
+
_yardoc
|
9
|
+
coverage
|
10
|
+
doc/
|
11
|
+
lib/bundler/man
|
12
|
+
pkg
|
13
|
+
rdoc
|
14
|
+
spec/reports
|
15
|
+
test/tmp
|
16
|
+
test/version_tmp
|
17
|
+
tmp
|
18
|
+
coverage/
|
19
|
+
/.rspec
|
20
|
+
|
21
|
+
.idea
|
22
|
+
.DS_Store
|
23
|
+
features/csvw_validation_tests.feature
|
24
|
+
features/fixtures/csvw
|
25
|
+
|
26
|
+
bin/run-csvw-tests
|
27
|
+
|
28
|
+
features/csvw_json_transformation_tests.feature
|
data/.ruby-version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
2.1.4
|
data/.travis.yml
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
rvm:
|
2
|
+
- 2.0.0
|
3
|
+
- 2.1.0
|
4
|
+
- 2.2.0
|
5
|
+
sudo: false
|
6
|
+
cache: bundler
|
7
|
+
notifications:
|
8
|
+
irc:
|
9
|
+
channels:
|
10
|
+
- irc.freenode.net#theodi
|
11
|
+
template:
|
12
|
+
- '%{repository} %{branch} - %{message} %{build_url}'
|
13
|
+
on_success: change
|
14
|
+
on_failure: always
|
15
|
+
deploy:
|
16
|
+
provider: rubygems
|
17
|
+
api_key:
|
18
|
+
secure: fjnPS61/skQ1PsRJu1SYWIct0vjdkTyQhj0ria9zfcJfbWbfiHnpehVh1ege3sTUkDSTvoOFT35jzEeozvtKZOlAWMU5QbL8LTXu+JSp9olOdSuGeWRWVuQT3NLgRJW0+2c7N66piZvnRUUTyt2P8VIR8c/Ltuhc32bUGL7X6Gw=
|
19
|
+
gem: csvlint
|
20
|
+
on:
|
21
|
+
tags: true
|
22
|
+
repo: theodi/csvlint.rb
|
23
|
+
all_branches: true
|
24
|
+
after_success:
|
25
|
+
- export GEM_VERSION=`ruby -e "puts Gem::Specification.load(Dir['*.gemspec'].first).version.to_s"`
|
26
|
+
- '[ "$TRAVIS_BRANCH" == "master" ] && [ "$TRAVIS_PULL_REQUEST" == "false" ] && curl
|
27
|
+
-v -X POST -d ''{"ref":"refs/tags/''$GEM_VERSION''","sha":"''$TRAVIS_COMMIT''"}'' --header
|
28
|
+
"Content-Type:application/json" -u $GITHUB_USER:$GITHUB_PASSWORD "https://api.github.com/repos/$TRAVIS_REPO_SLUG/git/refs"'
|
29
|
+
env:
|
30
|
+
global:
|
31
|
+
- secure: hM8Pv/EAZoB4fGGEUwKQQ/2+mgKbUac+PH2cwud25l2MJ64eoKEMZzfy4TF6+XMIzXhlWpsg4s51y6K3+W8pUyRAuwo2MsN5Iee7HnLz+LlYTiT0//iQdAmxQ0JlOyh8vd2SEFBcVfwpp/iZFIHAfbBO73ZDXhtGMEieMk025I0=
|
32
|
+
- secure: hsKbZ0kVKVU/e8oVCPJpRmBxbbieN2tVbyjdhJo/UYchcyLWeGAmAj/ApUDL4SyR0HZxpfi+SIsGFNRy5LnrFeCFgY9aZ6u9ma4n0Y2cTElMRt5kvI/c28FehsRjCzAe6W8dxwhJ8wSkvFDNpLml47/iy8bw4a7aUZDdq3OYXck=
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,361 @@
|
|
1
|
+
# Change Log
|
2
|
+
|
3
|
+
## [0.2.5](https://github.com/theodi/csvlint.rb/tree/0.2.5) (2015-11-16)
|
4
|
+
|
5
|
+
[Full Changelog](https://github.com/theodi/csvlint.rb/compare/0.2.4...0.2.5)
|
6
|
+
|
7
|
+
**Merged pull requests:**
|
8
|
+
|
9
|
+
- Use STDIN instead of ARGF [\#169](https://github.com/theodi/csvlint.rb/pull/169) ([pezholio](https://github.com/pezholio))
|
10
|
+
|
11
|
+
## [0.2.4](https://github.com/theodi/csvlint.rb/tree/0.2.4) (2015-10-20)
|
12
|
+
|
13
|
+
[Full Changelog](https://github.com/theodi/csvlint.rb/compare/0.2.3...0.2.4)
|
14
|
+
|
15
|
+
**Merged pull requests:**
|
16
|
+
|
17
|
+
- Fixes for CLI [\#164](https://github.com/theodi/csvlint.rb/pull/164) ([pezholio](https://github.com/pezholio))
|
18
|
+
|
19
|
+
## [0.2.3](https://github.com/theodi/csvlint.rb/tree/0.2.3) (2015-10-20)
|
20
|
+
|
21
|
+
[Full Changelog](https://github.com/theodi/csvlint.rb/compare/0.2.2...0.2.3)
|
22
|
+
|
23
|
+
**Closed issues:**
|
24
|
+
|
25
|
+
- Include field name with error [\#161](https://github.com/theodi/csvlint.rb/issues/161)
|
26
|
+
|
27
|
+
- Refactor the binary [\#150](https://github.com/theodi/csvlint.rb/issues/150)
|
28
|
+
|
29
|
+
**Merged pull requests:**
|
30
|
+
|
31
|
+
- Refactor CLI [\#163](https://github.com/theodi/csvlint.rb/pull/163) ([pezholio](https://github.com/pezholio))
|
32
|
+
|
33
|
+
- Update schema file example to clarify type [\#162](https://github.com/theodi/csvlint.rb/pull/162) ([wachunga](https://github.com/wachunga))
|
34
|
+
|
35
|
+
## [0.2.2](https://github.com/theodi/csvlint.rb/tree/0.2.2) (2015-10-09)
|
36
|
+
|
37
|
+
[Full Changelog](https://github.com/theodi/csvlint.rb/compare/0.2.1...0.2.2)
|
38
|
+
|
39
|
+
**Closed issues:**
|
40
|
+
|
41
|
+
- Eliminate some date and time formats \(for speed\) [\#105](https://github.com/theodi/csvlint.rb/issues/105)
|
42
|
+
|
43
|
+
**Merged pull requests:**
|
44
|
+
|
45
|
+
- Check characters in validate\_line method [\#160](https://github.com/theodi/csvlint.rb/pull/160) ([pezholio](https://github.com/pezholio))
|
46
|
+
|
47
|
+
- Further optimisations [\#159](https://github.com/theodi/csvlint.rb/pull/159) ([pezholio](https://github.com/pezholio))
|
48
|
+
|
49
|
+
- More optimizations after \#157 [\#158](https://github.com/theodi/csvlint.rb/pull/158) ([jpmckinney](https://github.com/jpmckinney))
|
50
|
+
|
51
|
+
- Memoize the result of CSV\#encode\_re [\#157](https://github.com/theodi/csvlint.rb/pull/157) ([jpmckinney](https://github.com/jpmckinney))
|
52
|
+
|
53
|
+
- Don't pass leading string to parse\_line [\#155](https://github.com/theodi/csvlint.rb/pull/155) ([pezholio](https://github.com/pezholio))
|
54
|
+
|
55
|
+
## [0.2.1](https://github.com/theodi/csvlint.rb/tree/0.2.1) (2015-10-07)
|
56
|
+
|
57
|
+
[Full Changelog](https://github.com/theodi/csvlint.rb/compare/0.2.0...0.2.1)
|
58
|
+
|
59
|
+
**Implemented enhancements:**
|
60
|
+
|
61
|
+
- Get total rows number about the CSV file that was validated [\#143](https://github.com/theodi/csvlint.rb/issues/143)
|
62
|
+
|
63
|
+
**Closed issues:**
|
64
|
+
|
65
|
+
- Optimization: Stream CSV [\#122](https://github.com/theodi/csvlint.rb/issues/122)
|
66
|
+
|
67
|
+
**Merged pull requests:**
|
68
|
+
|
69
|
+
- Add `row\_count` method [\#153](https://github.com/theodi/csvlint.rb/pull/153) ([pezholio](https://github.com/pezholio))
|
70
|
+
|
71
|
+
- Streaming validation [\#146](https://github.com/theodi/csvlint.rb/pull/146) ([pezholio](https://github.com/pezholio))
|
72
|
+
|
73
|
+
## [0.2.0](https://github.com/theodi/csvlint.rb/tree/0.2.0) (2015-10-05)
|
74
|
+
|
75
|
+
[Full Changelog](https://github.com/theodi/csvlint.rb/compare/0.1.4...0.2.0)
|
76
|
+
|
77
|
+
**Closed issues:**
|
78
|
+
|
79
|
+
- CSV on the web support [\#141](https://github.com/theodi/csvlint.rb/issues/141)
|
80
|
+
|
81
|
+
**Merged pull requests:**
|
82
|
+
|
83
|
+
- Recover from `ArgumentError`s when attempting to locate a schema and detect bad schema when JSON is malformed [\#152](https://github.com/theodi/csvlint.rb/pull/152) ([pezholio](https://github.com/pezholio))
|
84
|
+
|
85
|
+
- Catch errors if link headers are don't have particular values [\#151](https://github.com/theodi/csvlint.rb/pull/151) ([pezholio](https://github.com/pezholio))
|
86
|
+
|
87
|
+
- Rescue excel warning [\#149](https://github.com/theodi/csvlint.rb/pull/149) ([quadrophobiac](https://github.com/quadrophobiac))
|
88
|
+
|
89
|
+
- CSVW-based validation! [\#142](https://github.com/theodi/csvlint.rb/pull/142) ([JeniT](https://github.com/JeniT))
|
90
|
+
|
91
|
+
## [0.1.4](https://github.com/theodi/csvlint.rb/tree/0.1.4) (2015-08-06)
|
92
|
+
|
93
|
+
[Full Changelog](https://github.com/theodi/csvlint.rb/compare/0.1.3...0.1.4)
|
94
|
+
|
95
|
+
**Merged pull requests:**
|
96
|
+
|
97
|
+
- change made to the constraint parameter in order that it is more cons… [\#140](https://github.com/theodi/csvlint.rb/pull/140) ([quadrophobiac](https://github.com/quadrophobiac))
|
98
|
+
|
99
|
+
## [0.1.3](https://github.com/theodi/csvlint.rb/tree/0.1.3) (2015-07-24)
|
100
|
+
|
101
|
+
[Full Changelog](https://github.com/theodi/csvlint.rb/compare/0.1.2...0.1.3)
|
102
|
+
|
103
|
+
**Merged pull requests:**
|
104
|
+
|
105
|
+
- Error reporting schema expanded test suite [\#138](https://github.com/theodi/csvlint.rb/pull/138) ([quadrophobiac](https://github.com/quadrophobiac))
|
106
|
+
|
107
|
+
- Validate header size improvement [\#137](https://github.com/theodi/csvlint.rb/pull/137) ([adamc00](https://github.com/adamc00))
|
108
|
+
|
109
|
+
- Invalid schema [\#132](https://github.com/theodi/csvlint.rb/pull/132) ([bcouston](https://github.com/bcouston))
|
110
|
+
|
111
|
+
## [0.1.2](https://github.com/theodi/csvlint.rb/tree/0.1.2) (2015-07-15)
|
112
|
+
|
113
|
+
[Full Changelog](https://github.com/theodi/csvlint.rb/compare/0.1.1...0.1.2)
|
114
|
+
|
115
|
+
**Closed issues:**
|
116
|
+
|
117
|
+
- When an encoding error is thrown the line content is put into the column field in the error object [\#131](https://github.com/theodi/csvlint.rb/issues/131)
|
118
|
+
|
119
|
+
**Merged pull requests:**
|
120
|
+
|
121
|
+
- Catch invalid URIs [\#133](https://github.com/theodi/csvlint.rb/pull/133) ([pezholio](https://github.com/pezholio))
|
122
|
+
|
123
|
+
- Emit a warning when the CSV header does not match the supplied schema [\#127](https://github.com/theodi/csvlint.rb/pull/127) ([adamc00](https://github.com/adamc00))
|
124
|
+
|
125
|
+
## [0.1.1](https://github.com/theodi/csvlint.rb/tree/0.1.1) (2015-07-13)
|
126
|
+
|
127
|
+
[Full Changelog](https://github.com/theodi/csvlint.rb/compare/0.1.0...0.1.1)
|
128
|
+
|
129
|
+
**Closed issues:**
|
130
|
+
|
131
|
+
- Add Command Line Support [\#128](https://github.com/theodi/csvlint.rb/issues/128)
|
132
|
+
|
133
|
+
- BUG: Incorrect inconsistent\_values error on numeric columns [\#106](https://github.com/theodi/csvlint.rb/issues/106)
|
134
|
+
|
135
|
+
**Merged pull requests:**
|
136
|
+
|
137
|
+
- Fixes line content incorrectly being put into the row column field when there is an encoding error. [\#130](https://github.com/theodi/csvlint.rb/pull/130) ([glacier](https://github.com/glacier))
|
138
|
+
|
139
|
+
- Add command line help [\#129](https://github.com/theodi/csvlint.rb/pull/129) ([pezholio](https://github.com/pezholio))
|
140
|
+
|
141
|
+
- Remove stray q character. [\#125](https://github.com/theodi/csvlint.rb/pull/125) ([adamc00](https://github.com/adamc00))
|
142
|
+
|
143
|
+
- csvlint utility can take arguments to specify a schema and pp errors [\#124](https://github.com/theodi/csvlint.rb/pull/124) ([adamc00](https://github.com/adamc00))
|
144
|
+
|
145
|
+
- Fixed warning - use expect\( \) rather than .should [\#123](https://github.com/theodi/csvlint.rb/pull/123) ([jezhiggins](https://github.com/jezhiggins))
|
146
|
+
|
147
|
+
- Fixed spelling mistake [\#121](https://github.com/theodi/csvlint.rb/pull/121) ([jezhiggins](https://github.com/jezhiggins))
|
148
|
+
|
149
|
+
- Avoid using \#blank? if unnecessary [\#120](https://github.com/theodi/csvlint.rb/pull/120) ([jpmckinney](https://github.com/jpmckinney))
|
150
|
+
|
151
|
+
- eliminate some date and time formats, related \#105 [\#119](https://github.com/theodi/csvlint.rb/pull/119) ([jpmckinney](https://github.com/jpmckinney))
|
152
|
+
|
153
|
+
- Match another CSV error about line endings [\#118](https://github.com/theodi/csvlint.rb/pull/118) ([jpmckinney](https://github.com/jpmckinney))
|
154
|
+
|
155
|
+
- fixed typo mistake in README [\#117](https://github.com/theodi/csvlint.rb/pull/117) ([railsfactory-kumaresan](https://github.com/railsfactory-kumaresan))
|
156
|
+
|
157
|
+
- Integrate @jpmickinney's build\_formats improvements [\#112](https://github.com/theodi/csvlint.rb/pull/112) ([Floppy](https://github.com/Floppy))
|
158
|
+
|
159
|
+
- make limit\_lines into a non-dialect option [\#110](https://github.com/theodi/csvlint.rb/pull/110) ([Floppy](https://github.com/Floppy))
|
160
|
+
|
161
|
+
- fix coveralls stats [\#109](https://github.com/theodi/csvlint.rb/pull/109) ([Floppy](https://github.com/Floppy))
|
162
|
+
|
163
|
+
- Limit lines [\#101](https://github.com/theodi/csvlint.rb/pull/101) ([Hoedic](https://github.com/Hoedic))
|
164
|
+
|
165
|
+
## [0.1.0](https://github.com/theodi/csvlint.rb/tree/0.1.0) (2014-11-27)
|
166
|
+
|
167
|
+
**Implemented enhancements:**
|
168
|
+
|
169
|
+
- Blank values shouldn't count as inconsistencies [\#90](https://github.com/theodi/csvlint.rb/issues/90)
|
170
|
+
|
171
|
+
- Make sure we don't check schema column count and ragged row count together [\#66](https://github.com/theodi/csvlint.rb/issues/66)
|
172
|
+
|
173
|
+
- Include the failed constraints in error message when doing field validation [\#64](https://github.com/theodi/csvlint.rb/issues/64)
|
174
|
+
|
175
|
+
- Include the column value in error message when field validation fails [\#63](https://github.com/theodi/csvlint.rb/issues/63)
|
176
|
+
|
177
|
+
- Expose optional JSON table schema fields [\#55](https://github.com/theodi/csvlint.rb/issues/55)
|
178
|
+
|
179
|
+
- Ensure header rows are properly handled and validated [\#48](https://github.com/theodi/csvlint.rb/issues/48)
|
180
|
+
|
181
|
+
- Support zipped CSV? [\#30](https://github.com/theodi/csvlint.rb/issues/30)
|
182
|
+
|
183
|
+
- Improve feedback on inconsistent values [\#29](https://github.com/theodi/csvlint.rb/issues/29)
|
184
|
+
|
185
|
+
- Reported error positions are not massively useful [\#15](https://github.com/theodi/csvlint.rb/issues/15)
|
186
|
+
|
187
|
+
**Fixed bugs:**
|
188
|
+
|
189
|
+
- undefined method `\[\]' for nil:NilClass from fetch\_error [\#71](https://github.com/theodi/csvlint.rb/issues/71)
|
190
|
+
|
191
|
+
- Inconsistent column bases [\#69](https://github.com/theodi/csvlint.rb/issues/69)
|
192
|
+
|
193
|
+
- Improve error handling in Schema loading [\#42](https://github.com/theodi/csvlint.rb/issues/42)
|
194
|
+
|
195
|
+
- Recover from some line ending problems [\#41](https://github.com/theodi/csvlint.rb/issues/41)
|
196
|
+
|
197
|
+
- Inconsistent values due to number format differences [\#32](https://github.com/theodi/csvlint.rb/issues/32)
|
198
|
+
|
199
|
+
- New lines in quoted fields are valid [\#31](https://github.com/theodi/csvlint.rb/issues/31)
|
200
|
+
|
201
|
+
- Wrongly reporting incorrect file extension [\#23](https://github.com/theodi/csvlint.rb/issues/23)
|
202
|
+
|
203
|
+
- Incorrect extension reported when URL has query options at the end [\#14](https://github.com/theodi/csvlint.rb/issues/14)
|
204
|
+
|
205
|
+
**Closed issues:**
|
206
|
+
|
207
|
+
- Get gem continuously deploying [\#93](https://github.com/theodi/csvlint.rb/issues/93)
|
208
|
+
|
209
|
+
- Publish on rubygems.org [\#92](https://github.com/theodi/csvlint.rb/issues/92)
|
210
|
+
|
211
|
+
- Duplicate column names [\#87](https://github.com/theodi/csvlint.rb/issues/87)
|
212
|
+
|
213
|
+
- Return code is always 0 \(except when it isn't\) [\#85](https://github.com/theodi/csvlint.rb/issues/85)
|
214
|
+
|
215
|
+
- Can't pipe data to csvlint [\#84](https://github.com/theodi/csvlint.rb/issues/84)
|
216
|
+
|
217
|
+
- They have some validator running if someone wants to inspect it for "inspiration" [\#27](https://github.com/theodi/csvlint.rb/issues/27)
|
218
|
+
|
219
|
+
- Allow CSV parsing options to be configured as a parameter [\#6](https://github.com/theodi/csvlint.rb/issues/6)
|
220
|
+
|
221
|
+
- Use explicit CSV parsing options [\#5](https://github.com/theodi/csvlint.rb/issues/5)
|
222
|
+
|
223
|
+
- Improving encoding detection [\#2](https://github.com/theodi/csvlint.rb/issues/2)
|
224
|
+
|
225
|
+
**Merged pull requests:**
|
226
|
+
|
227
|
+
- Speed up \#build\_formats \(changes its API\) [\#103](https://github.com/theodi/csvlint.rb/pull/103) ([jpmckinney](https://github.com/jpmckinney))
|
228
|
+
|
229
|
+
- Continuously deploy gem [\#102](https://github.com/theodi/csvlint.rb/pull/102) ([pezholio](https://github.com/pezholio))
|
230
|
+
|
231
|
+
- Make csvlint way faster [\#99](https://github.com/theodi/csvlint.rb/pull/99) ([jpmckinney](https://github.com/jpmckinney))
|
232
|
+
|
233
|
+
- Update README.md [\#98](https://github.com/theodi/csvlint.rb/pull/98) ([rmalecky](https://github.com/rmalecky))
|
234
|
+
|
235
|
+
- Undeclared header error [\#95](https://github.com/theodi/csvlint.rb/pull/95) ([Floppy](https://github.com/Floppy))
|
236
|
+
|
237
|
+
- Blank values shouldn't count as inconsistencies [\#91](https://github.com/theodi/csvlint.rb/pull/91) ([pezholio](https://github.com/pezholio))
|
238
|
+
|
239
|
+
- Use `reject` instead of `delete\_if` [\#89](https://github.com/theodi/csvlint.rb/pull/89) ([pezholio](https://github.com/pezholio))
|
240
|
+
|
241
|
+
- Raise a warning if a title row is found [\#88](https://github.com/theodi/csvlint.rb/pull/88) ([pezholio](https://github.com/pezholio))
|
242
|
+
|
243
|
+
- Improve executable [\#86](https://github.com/theodi/csvlint.rb/pull/86) ([pezholio](https://github.com/pezholio))
|
244
|
+
|
245
|
+
- Feature undeclared header [\#83](https://github.com/theodi/csvlint.rb/pull/83) ([ldodds](https://github.com/ldodds))
|
246
|
+
|
247
|
+
- Support xsd:integer [\#82](https://github.com/theodi/csvlint.rb/pull/82) ([ldodds](https://github.com/ldodds))
|
248
|
+
|
249
|
+
- Downgrade header errors [\#81](https://github.com/theodi/csvlint.rb/pull/81) ([ldodds](https://github.com/ldodds))
|
250
|
+
|
251
|
+
- Go home, pry [\#78](https://github.com/theodi/csvlint.rb/pull/78) ([pikesley](https://github.com/pikesley))
|
252
|
+
|
253
|
+
- Use type validations to check consistency [\#77](https://github.com/theodi/csvlint.rb/pull/77) ([pezholio](https://github.com/pezholio))
|
254
|
+
|
255
|
+
- Add data accessor [\#76](https://github.com/theodi/csvlint.rb/pull/76) ([Floppy](https://github.com/Floppy))
|
256
|
+
|
257
|
+
- Add failed constraints to schema errors [\#75](https://github.com/theodi/csvlint.rb/pull/75) ([ldodds](https://github.com/ldodds))
|
258
|
+
|
259
|
+
- Only perform ragged row check if there's no schema [\#74](https://github.com/theodi/csvlint.rb/pull/74) ([ldodds](https://github.com/ldodds))
|
260
|
+
|
261
|
+
- Handle tempfiles [\#73](https://github.com/theodi/csvlint.rb/pull/73) ([pezholio](https://github.com/pezholio))
|
262
|
+
|
263
|
+
- Catch errors if regex doesn't match [\#72](https://github.com/theodi/csvlint.rb/pull/72) ([pezholio](https://github.com/pezholio))
|
264
|
+
|
265
|
+
- Inconsistent column base [\#70](https://github.com/theodi/csvlint.rb/pull/70) ([ldodds](https://github.com/ldodds))
|
266
|
+
|
267
|
+
- include column name in :header\_name message [\#68](https://github.com/theodi/csvlint.rb/pull/68) ([Floppy](https://github.com/Floppy))
|
268
|
+
|
269
|
+
- Record default dialect [\#67](https://github.com/theodi/csvlint.rb/pull/67) ([pezholio](https://github.com/pezholio))
|
270
|
+
|
271
|
+
- Schema validation message improvements [\#65](https://github.com/theodi/csvlint.rb/pull/65) ([Floppy](https://github.com/Floppy))
|
272
|
+
|
273
|
+
- Fix ignore empty fields [\#62](https://github.com/theodi/csvlint.rb/pull/62) ([ldodds](https://github.com/ldodds))
|
274
|
+
|
275
|
+
- Create stub schema from existing CSV file [\#61](https://github.com/theodi/csvlint.rb/pull/61) ([ldodds](https://github.com/ldodds))
|
276
|
+
|
277
|
+
- Validate dates [\#59](https://github.com/theodi/csvlint.rb/pull/59) ([ldodds](https://github.com/ldodds))
|
278
|
+
|
279
|
+
- add schema access from validator [\#58](https://github.com/theodi/csvlint.rb/pull/58) ([Floppy](https://github.com/Floppy))
|
280
|
+
|
281
|
+
- Allow schema and fields to have title and description [\#57](https://github.com/theodi/csvlint.rb/pull/57) ([ldodds](https://github.com/ldodds))
|
282
|
+
|
283
|
+
- Feature min max ranges [\#56](https://github.com/theodi/csvlint.rb/pull/56) ([ldodds](https://github.com/ldodds))
|
284
|
+
|
285
|
+
- Check header without schema [\#54](https://github.com/theodi/csvlint.rb/pull/54) ([ldodds](https://github.com/ldodds))
|
286
|
+
|
287
|
+
- Validate types [\#53](https://github.com/theodi/csvlint.rb/pull/53) ([pikesley](https://github.com/pikesley))
|
288
|
+
|
289
|
+
- Added open\_uri\_redirections to allow HTTP/HTTPS transfers [\#52](https://github.com/theodi/csvlint.rb/pull/52) ([ldodds](https://github.com/ldodds))
|
290
|
+
|
291
|
+
- Added docs on CSV options and header error/warning messages [\#51](https://github.com/theodi/csvlint.rb/pull/51) ([ldodds](https://github.com/ldodds))
|
292
|
+
|
293
|
+
- Feature header validation [\#50](https://github.com/theodi/csvlint.rb/pull/50) ([ldodds](https://github.com/ldodds))
|
294
|
+
|
295
|
+
- Handle unique columns [\#49](https://github.com/theodi/csvlint.rb/pull/49) ([pikesley](https://github.com/pikesley))
|
296
|
+
|
297
|
+
- Validate all the fields [\#47](https://github.com/theodi/csvlint.rb/pull/47) ([ldodds](https://github.com/ldodds))
|
298
|
+
|
299
|
+
- Tolerate incomplete schemas [\#46](https://github.com/theodi/csvlint.rb/pull/46) ([ldodds](https://github.com/ldodds))
|
300
|
+
|
301
|
+
- Add accessor for line breaks [\#45](https://github.com/theodi/csvlint.rb/pull/45) ([Floppy](https://github.com/Floppy))
|
302
|
+
|
303
|
+
- update README for info messages and new error types [\#44](https://github.com/theodi/csvlint.rb/pull/44) ([Floppy](https://github.com/Floppy))
|
304
|
+
|
305
|
+
- Info messages for line breaks [\#43](https://github.com/theodi/csvlint.rb/pull/43) ([Floppy](https://github.com/Floppy))
|
306
|
+
|
307
|
+
- Add category to messages [\#40](https://github.com/theodi/csvlint.rb/pull/40) ([ldodds](https://github.com/ldodds))
|
308
|
+
|
309
|
+
- Badges [\#39](https://github.com/theodi/csvlint.rb/pull/39) ([pikesley](https://github.com/pikesley))
|
310
|
+
|
311
|
+
- Generic field validation using JSON Table Schema [\#38](https://github.com/theodi/csvlint.rb/pull/38) ([ldodds](https://github.com/ldodds))
|
312
|
+
|
313
|
+
- Feature validate strings and files [\#37](https://github.com/theodi/csvlint.rb/pull/37) ([ldodds](https://github.com/ldodds))
|
314
|
+
|
315
|
+
- Support reporting of column number in errors [\#36](https://github.com/theodi/csvlint.rb/pull/36) ([ldodds](https://github.com/ldodds))
|
316
|
+
|
317
|
+
- Fix up casing of keys in CSV DDF options [\#35](https://github.com/theodi/csvlint.rb/pull/35) ([ldodds](https://github.com/ldodds))
|
318
|
+
|
319
|
+
- Add errors for incorrect newlines [\#34](https://github.com/theodi/csvlint.rb/pull/34) ([pezholio](https://github.com/pezholio))
|
320
|
+
|
321
|
+
- Change from parsing CSV line by line to using CSV.new and trapping errors [\#33](https://github.com/theodi/csvlint.rb/pull/33) ([ldodds](https://github.com/ldodds))
|
322
|
+
|
323
|
+
- Improved the README, tweaked LICENSE [\#28](https://github.com/theodi/csvlint.rb/pull/28) ([ldodds](https://github.com/ldodds))
|
324
|
+
|
325
|
+
- Handle 404s [\#26](https://github.com/theodi/csvlint.rb/pull/26) ([pezholio](https://github.com/pezholio))
|
326
|
+
|
327
|
+
- Create more fine-grained errors and warnings for content type issues [\#25](https://github.com/theodi/csvlint.rb/pull/25) ([ldodds](https://github.com/ldodds))
|
328
|
+
|
329
|
+
- Report trailing empty rows as an error. Previously threw exception [\#24](https://github.com/theodi/csvlint.rb/pull/24) ([ldodds](https://github.com/ldodds))
|
330
|
+
|
331
|
+
- Simplify the guessing of column types [\#22](https://github.com/theodi/csvlint.rb/pull/22) ([ldodds](https://github.com/ldodds))
|
332
|
+
|
333
|
+
- Class-ify error messages [\#21](https://github.com/theodi/csvlint.rb/pull/21) ([pezholio](https://github.com/pezholio))
|
334
|
+
|
335
|
+
- Error extracts [\#20](https://github.com/theodi/csvlint.rb/pull/20) ([Floppy](https://github.com/Floppy))
|
336
|
+
|
337
|
+
- Return headers [\#19](https://github.com/theodi/csvlint.rb/pull/19) ([pezholio](https://github.com/pezholio))
|
338
|
+
|
339
|
+
- Return a warning if no character set specified [\#18](https://github.com/theodi/csvlint.rb/pull/18) ([pezholio](https://github.com/pezholio))
|
340
|
+
|
341
|
+
- Ignore query params [\#17](https://github.com/theodi/csvlint.rb/pull/17) ([Floppy](https://github.com/Floppy))
|
342
|
+
|
343
|
+
- Add invalid\_encoding error for invalid byte sequences [\#16](https://github.com/theodi/csvlint.rb/pull/16) ([ldodds](https://github.com/ldodds))
|
344
|
+
|
345
|
+
- Check inconsistent values [\#13](https://github.com/theodi/csvlint.rb/pull/13) ([pezholio](https://github.com/pezholio))
|
346
|
+
|
347
|
+
- Add CSV dialect options [\#11](https://github.com/theodi/csvlint.rb/pull/11) ([pezholio](https://github.com/pezholio))
|
348
|
+
|
349
|
+
- Return warning if extension doesn't match content type [\#10](https://github.com/theodi/csvlint.rb/pull/10) ([pezholio](https://github.com/pezholio))
|
350
|
+
|
351
|
+
- Return warnings for file extension [\#8](https://github.com/theodi/csvlint.rb/pull/8) ([pezholio](https://github.com/pezholio))
|
352
|
+
|
353
|
+
- Detect blank rows [\#7](https://github.com/theodi/csvlint.rb/pull/7) ([pezholio](https://github.com/pezholio))
|
354
|
+
|
355
|
+
- Detect bad content type [\#3](https://github.com/theodi/csvlint.rb/pull/3) ([pezholio](https://github.com/pezholio))
|
356
|
+
|
357
|
+
- Return information about CSV [\#1](https://github.com/theodi/csvlint.rb/pull/1) ([pezholio](https://github.com/pezholio))
|
358
|
+
|
359
|
+
|
360
|
+
|
361
|
+
\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*
|