SignalK / specification

Signal K is a JSON-based format for storing and sharing marine data from different sources (e.g. nmea 0183, 2000, seatalk, etc)
Other
91 stars 68 forks source link

chore: remove dependency on tv4-formats #498

Closed sarfata closed 5 years ago

sarfata commented 6 years ago

TV4-Format provides some JSON validation helper for common string formats. It was loaded only when validating the full model (not delta) and all the tests run without it so I propose we remove it.

Reason for me looking into this is that this library causes problem with webpack because of a heuristic they use to require one of their dependency. This is a known issue that they have fixed in a later version and I have confirmed that upgrading the package fixes the issue for us too. However, if we do not use the library I think it's better to completely remove it.

For more info: https://github.com/ikr/tv4-formats/commit/61450dc7499440980169a67bc51d554a67c5c30d

sarfata commented 5 years ago

ping? @tkurki are you ok merging this?

tkurki commented 5 years ago

all the tests run without it does not mean that it is not used: try mangling a timestamp in one of the test full files and run the tests - they will fail. This dependency adds validation of date-time JSON Schema data type that is in use in the schema.

Options on how to move forward:

Then there is the issue of separating the schema js API #435 (including validation) from the actual schema data itself, versioning them separately. Then we would have the option two npm packages, one with schema data and js access to it and another for validation, versioned independently.

sarfata commented 5 years ago

@tjkurki Sorry about that. My bad.

Pushed #501 instead. Hopefully this works for you.