Breaks cardboard up into a collection of repos where each repo represents one type of index. The main repo, represented a dataset-feature index. All other indexes should be derived by following a stream off of this DynamoDB table.
- Expose unprocessed items on batch requests.
- Follow AWS specified exponential back-off for batch requests.
- Bump
aws-sdk
semver.
- Adds
cardboard.metadata.applyChanges
to apply a batch of feature adjustments to the dataset's metadata
- Adds a `GeometryCollection specific error message.
- Fixes a bug where number property values would sometimes change when encoding and decoding them.
- Fixes a bug in handling unprocessed item responses from DynamoDB.
- Fixes a bug that only updated dataset metadata if a metadata document did not already exist.
- Fixes bug where editcount was being over written when recalculating the other metadata.
- Adds editcount to metadata. This can be used to know if a derived source is from and older version of the dataset or the current one.
- Add cardboard.metadata.featureInfo(), a pre-flight function to check metadata about a feature
- Adjusts size calculations to be based on geobuf sizes instead of JSON.stringify(feature).length
- Made BBOX queries simpler (and slower) but added paging to BBOX. -- future index changes help bbox speed.
- Wrap geobuf parsing inside a try/catch.
- Features are now only stored in S3 if they don't fit in DynamoDB
- Fix feature pagination
- Switch back to https://github.com/ericelliott/cuid for id generation -- some downstream applications expect ordered ids
- Switch to https://github.com/substack/node-hat for id generation
- Calculates an ideal min/max zoom for a dataset when metadata is read
- Exposes methods for incremental updates to dataset metadata
- Improves responses in the event of partial failure during a
cardboard.batch.put
orcardboard.batch.remove
operation
- Fixes ambiguity in handling of edge-case user-provided IDs (
null
and numeric values) - Fixes issues caused by user-provided IDs containing an exclamation point (
!
)