Open pezholio opened 8 years ago
There has been discussion within Octopub on including the most current version of JSON table schema (now called Table Schema) - see https://github.com/theodi/octopub/issues/205 - which makes this ticket a higher priority IMO
It seems most sensible to make the changes discussed in Octopub from this gem upwards given that it will yield knock on improvements to other apps, like CSVlint.io and Comma Chameleon.
@pezholio when you said
Need to make sure we keep backwards compatibility for the current schema format though. could you elaborate what you meant?
I think a refactoring of this gem is advised given that the developments with TableSchema necessitate some level of refactoring anyway. I'm basing that assumption on how this gem is currently utilised in other Toolbox applications (see https://github.com/theodi/octopub/issues/428). So I'm trying to break down the work involved:
As I understand the codebase most of the table schema validation is contained within lib/csvlint/schema.rb
- would you agree it makes more sense to now include https://github.com/frictionlessdata/tableschema-rb as a gem level dependency (apolz if my nomenclature is erroneous)
The new version of JSON table schema has moved on quite a bit now, and now is much more fully featured than when we first built CSVlint. Crucially, we can also use our JSON Table Schema gem to do the schema validation part.
Need to make sure we keep backwards compatibility for the current schema format though.