Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use hexWKB in JSON diff/show output #71

Merged
merged 10 commits into from
May 7, 2020
Merged

Use hexWKB in JSON diff/show output #71

merged 10 commits into from
May 7, 2020

Commits on May 7, 2020

  1. Use hexWKB in JSON diff/show output

    This replaces GeoJSON geometries with (little-endian) hex-encoded WKB
    in `show --json` and `diff --json` commands. `--geojson` output is
    unaffected.
    
    This:
     * reduces patch/diff size by quite a lot, especially for large
    geometries
     * makes patch generation/consumption more efficient; no pass via OGR is
       required in most circumstances.
     * improves support for exotic geometries (GeoJSON doesn't support
       curved geometry types)
    
    fixes #62
    craigds committed May 7, 2020
    Configuration menu
    Copy the full SHA
    f3044e5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    fd4ae27 View commit details
    Browse the repository at this point in the history
  3. More comprehensive tests for GPKG geom conversion

    Including endianness and envelopes
    craigds committed May 7, 2020
    Configuration menu
    Copy the full SHA
    95b103a View commit details
    Browse the repository at this point in the history
  4. Drop 'type' key from json-serialized rows

    They're not GeoJSON anymore anyway, because we're using hexWKB
    geometries, so best not to pretend they are.
    craigds committed May 7, 2020
    Configuration menu
    Copy the full SHA
    0399a40 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    704b4c8 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    b99e0ef View commit details
    Browse the repository at this point in the history
  7. Use ISO WKB instead of OGC WKB

    Supports curves and POINT EMPTY
    craigds committed May 7, 2020
    Configuration menu
    Copy the full SHA
    ba53ebe View commit details
    Browse the repository at this point in the history
  8. Comments and review tweaks

    craigds committed May 7, 2020
    Configuration menu
    Copy the full SHA
    304c827 View commit details
    Browse the repository at this point in the history
  9. Reinstate test-diff asserts

    Possibly commented out by accident in
    b5f7c7c
    craigds committed May 7, 2020
    Configuration menu
    Copy the full SHA
    cec3a13 View commit details
    Browse the repository at this point in the history
  10. Fix HTML diff output

    Generate it from the `geojson` diff rather than the `json` one,
    because the `json` one now uses hexWKB geometries.
    
    Because the layout's a bit different, this means the JS in the
    HTML template needs to do a bit more work, but it's quite achievable.
    Yay for ES7
    craigds committed May 7, 2020
    Configuration menu
    Copy the full SHA
    cb28c3b View commit details
    Browse the repository at this point in the history