-
Notifications
You must be signed in to change notification settings - Fork 86
Description
One of our GeoJSON features violates https://tools.ietf.org/html/rfc7946#section-3.1.4:
For type "LineString", the "coordinates" member is an array of two or more positions.
Our feature looks like this:
{
"type": "Feature",
"properties": {},
"geometry": {
"type": "LineString",
"coordinates": []
}
}
We normally generate the coordinates from a list of recorded locations, so if there aren't enough recorded locations, we violate the spec. Similar to this mapbox sample, which also runs into the same issue: https://docs.mapbox.com/mapbox-gl-js/example/animate-a-line/
However, mapbox-gl-js (internally geojson-vt) happily accepts this GeoJSON.
When we run geobuf on this, the generated feature looks like this:
{
"type": "Feature",
"properties": {},
"geometry": {
"type": "LineString"
}
}
So the entire coordinates field is removed.
Suddenly mapbox-gl-js (internally geojson-vt) trips on this.
It's assumed to exist here and then accessed during conversion, which leads to errors.
I did not check if a similar issue exists for other types, but I'd assume so.