Releases: stac-utils/stac-server
Releases · stac-utils/stac-server
v0.5.2
What's Changed
- few minor readme fixes by @philvarner in #353
- ava should use a cmdline flag to serialize integration tests rather than the deprecated 'serial' config property by @philvarner in #347
- Enable typescript support by @philvarner in #348
- fix content types for numerous links by @philvarner in #362
- fix unrestricted index population by waiting on async by @philvarner in #361
Full Changelog: v0.5.1...v0.5.2
v0.5.1
v0.5.0
[0.5.0] - 2022-12-23
Removed
- stac_api_version is no longer field in the root catalog. This was removed from the
STAC API spec several versions ago, in favor of the conformance classes. - STAC_API_VERSION environment variable is no longer supported. The version is now hard-coded
to 1.0.0-rc.2 lambdaHashingVersion: 20201221
is now the default for serverless, and has been removed
from the serverless example config file.
Added
- Adds support for authenticating to OpenSearch with a username and password when
fine-grained access control is enabled. - (Experimental) Aggregation Extension endpoint /aggregate
- Added pre-hook and post-hook Lambda examples
- POST /collections endpoint to create collections
- Configuration of shards and replicas for the indices containing Items can now be done
with environment variables ITEMS_INDICIES_NUM_OF_SHARDS and ITEMS_INDICIES_NUM_OF_REPLICAS. - (Experimental) Adds Item 'thumbnail' link to presign an s3 protocol thumbnail asset ARN
Changed
- ES_HOST variable is now OPENSEARCH_HOST, but both will work for now.
- ES_BATCH_SIZE variable is now INGEST_BATCH_SIZE. Both will work. It is recommended not to
configure this explicitly if not changing the value from the default of 500. - Landing Page (root) now has links for both GET and POST methods of search link relation
- The STAC API version is now 1.0.0-rc.2
- AWS OpenSearch Service OpenSearch 2.3 is used as the default instead of Elasticsearch 7.10.
See migration section in README.md. - The serverless.example.yml file now has zone awareness enabled and an even number of
Elasticsearch nodes - Upgrade serverless to 3.x
- Remove use of serverless-psuedo-parameters
- Upgrade to Node 16
Fixed
- Collections endpoint (/collections) now has
self
androot
link relations.
Deprecated
- ES_BATCH_SIZE variable (replaced by INGEST_BATCH_SIZE)
- ES_HOST variable (replaced by OPENSEARCH_HOST variable)
What's Changed
- Clarify that AWS CLI v2 is required by @marchuffnagle in #285
- Fix formatting of table in README by @marchuffnagle in #284
- Bump vm2 from 3.9.9 to 3.9.11 by @dependabot in #292
- add pre-hook and post-hook examples, upgrade serverless to 3.x, upgra… by @philvarner in #294
- POST /collections endpoint to create collection by @philvarner in #295
- fix a few packages that weren't updated during the node 16 update by @philvarner in #309
- Bump minimatch and @stoplight/spectral-core by @dependabot in #305
- when no collections exist, handle ES error instead of returning 500 by @philvarner in #299
- Use OpenSearch 2.3 by default instead of Elasticsearch 7.10, but provide compatibility for both by @philvarner in #310
- Update stac api version from 1.0.0-beta.5 to 1.0.0-rc.2 by @philvarner in #313
- limit above max no error by @philvarner in #315
- Bump simple-git from 3.14.1 to 3.15.1 by @dependabot in #314
- add search links in root fro both GET and POST by @philvarner in #319
- Fix a typo in a variable name by @kurtmckee in #318
- updates to serverless example for opensearch by @philvarner in #317
- Support for Aggregation Extension by @philvarner in #311
- Add support for fine-grained access control by @philvarner in #322
- add note about WAF SQL injection rule by @philvarner in #326
- add note about usage w/ mention of get query json by @philvarner in #327
- fix various issues with link relations by @philvarner in #328
- add shards and replicas configuration by @philvarner in #329
- Rename symbols that use elasticsearch to generic or opensearch by @philvarner in #323
- add support for collection->index name mapping by @philvarner in #331
- fix aggregate conformance class version by @philvarner in #340
- add self and root links to /items response by @philvarner in #333
- Several dependency upgrades prior to 0.5.0 release by @philvarner in #335
- Add endpoint and link for retrieving a thumbnail by @philvarner in #341
- add guard around item roles not existing in thumbnail check by @philvarner in #343
- add config for thumbnail permissions by @philvarner in #345
New Contributors
- @kurtmckee made their first contribution in #318
Full Changelog: v0.4.1...v0.5.0
v0.4.2
What's Changed
- v.0.4.2 backport: add support for thumbnail endpoint by @philvarner in #342
Full Changelog: v0.4.1...v0.4.2
v0.4.1
Added
- Added proper value for 'collections' parameter in the next page link in the result of a GET request
- Added mappings for 'id' and 'collection' for default sort keys
- Added STAC_API_VERSION as an environment variable to the serverless.yml file
- Added STAC_API_VERSION to display on the API landing page within the api.js file under src/lib/api.js in the collectionsToCatalogLinks function
- Add support for pre- and post-hooks
Changed
- Modified sortby and collections parameters in nextlink
- Used map instead of foreach/push in api.js file
- Changed the rel type to 'server' for the URL to the STAC API webpage inside the Links object
- Modified sortby and collections parameters in nextlink
- Used map instead of foreach/push in api.js file
- Compression of responses is now handled by API Gateway and not Express. This means that the uncompressed response from stac-server must be less than 6 MB.
Removed
- Removed the failed-ingest Lambda function from the serverless.yml file since this function is no longer needed
- Deleted failed-ingest folder from the src/lambdas directory
What's Changed
- Removed Failed-Ingest Lambda and update STAC API Version and rel type by @geomatician in #263
- Use map instead of foreach/push by @geomatician in #264
- Added section on restricting transaction endpoints by @geomatician in #265
- sortby and collections parameters in next link with direction for sortby by @geomatician in #269
- Added mappings for default sort keys by @geomatician in #272
- Add pre- and post-hooks by @marchuffnagle in #271
- Added proper value for GET 'collections' parameter in link to next page by @geomatician in #274
- npm audit fix for a few vulnerabilities by @philvarner in #279
- Bump got from 11.8.3 to 11.8.5 by @dependabot in #275
- Update instructions for URL Proxying by @jlaura in #262
- update changelog and package.json for 0.4.1 release by @philvarner in #278
New Contributors
Full Changelog: v0.4.0...v0.4.1
v0.4.0
Added
- Add conformance classes for
STAC API - Features
andSTAC API - Collections
. Both were already fully-supported, but
were not advertised in the landing page conformsTo attribute or the /conformance endpoint. - Items larger than 256 KB can now be ingested by writing their contents to S3
- API responses are now compressed
- Transaction Extension is now implemented
- Landing Page link relation service-doc now exists, and points to a Redoc instance
- If a request includes the
X-STAC-Endpoint
header, that endpoint will be used when generating link hrefs
Fixed
- Open-ended datetime intervals using either empty string or '..' now work
- Correct content types are now returned
- Searching for a nonexistent collection returns empty results
- Re-ingesting an Item maintains the existing value of properties.created and sets properties.updated to now
- Fixes the responses from
/collections/{collectionId}
,/collections/{collectionId}/items
, and/collection/{collectionId}/items/{itemId}
. - Search limit parameter is now validated to be between 1 and 10000 inclusive
- Search datetime parameter is now strictly validated as a RFC 3339 datetime or interval of two datetimes
- Added
root
link relation to Landing Page (/
) - GET /search only accepts a bbox value of a comma-separated string and POST /search
only accepts a bbox array of numbers. Previously, both methods accepted both formats in
violation of the STAC API spec.
Changed
- Upgrade to Node 14
- Elasticsearch version update 7.9 -> 7.10
- Use Express for API routing
- Item and collection ingest operations will full replace an item with the same ID. Previously, partial-updates were being performed.
- Improvements to Elasticsearch field mappings
- PATCH /collections/:collectionId/items/:itemId now returns 204 No Content as succcess instead
of 200 and the updated Item - Default sortby is now guaranteed to be stable. Previously, it was only by
properties.datetime
, not it is
byproperties.datetime
,id
, andcollection
. - ItemCollection results no longer have a
prev
link relation. This is a by-product of changing
pagination to use Elasticsearch's more performantsearch_after
mechanism rather thanpage
- Pagination works past 10,000 items now
- An invalid search
intersects
parameter may sometimes return a 500 instead of a 400 status code.
Removed
- Querying Items in a Collection by POST to /collections/:collectionId/items is
no longer supported, as this is forbidden by the STAC API - Features
conformance class because it conflicts with the Transaction Extension
What's Changed
- Bump tar from 6.1.0 to 6.1.11 by @dependabot in #113
- Bump nth-check from 2.0.0 to 2.0.1 by @dependabot in #114
- Bump follow-redirects from 1.14.1 to 1.14.7 by @dependabot in #119
- Bump trim-off-newlines from 1.0.1 to 1.0.3 by @dependabot in #125
- Bump trim-off-newlines from 1.0.1 to 1.0.3 in /lambdas/ingest by @dependabot in #122
- Bump trim-off-newlines from 1.0.1 to 1.0.3 in /lambdas/failed-ingest by @dependabot in #121
- Bump trim-off-newlines from 1.0.1 to 1.0.3 in /lambdas/api by @dependabot in #123
- Bump node-fetch from 2.6.1 to 2.6.7 by @dependabot in #124
- Removed STAC_API_VERSION from root catalog by @geomatician in #128
- Bump jszip from 3.6.0 to 3.7.1 by @dependabot in #127
- Bump follow-redirects from 1.14.7 to 1.14.8 by @dependabot in #136
- Bump simple-get from 2.8.1 to 2.8.2 by @dependabot in #143
- Upgrade to Node 14 by @marchuffnagle in #134
- update README, include serverless-offline and instructions for use by @philvarner in #153
- update license to appropriately mention Element 84 by @philvarner in #146
- add GH PR template by @philvarner in #148
- Pv/update stac api version and add collections cc by @philvarner in #154
- fix comma-separated bbox value parsing by @philvarner in #160
- fix behavior when ids param is specified to not override all other params by @philvarner in #157
- upgrade eslint and fix code wrt default linter rules by @philvarner in #150
- Pv/upgrade es 7.9 to 7.10 by @philvarner in #155
- Add architecture diagram by @marchuffnagle in #169
- Fix bug where all ES connections in pool were dead by @marchuffnagle in #167
- Run integration tests in CI by @marchuffnagle in #163
- Code reorganization by @marchuffnagle in #170
- upgrade to ava 4 by @philvarner in #172
- Add ability to use tsc for static code analysis by @marchuffnagle in #173
- Add support for ingesting large items from remote sources by @marchuffnagle in #179
- support open-ended datetime intervals, fix camelcase violations by @philvarner in #180
- Use Express for API routing by @marchuffnagle in #182
- Return the correct API content types by @marchuffnagle in #184
- Return empty results when searching for a nonexistent collection by @marchuffnagle in #185
- Fix npm build problem by @philvarner in #188
- fix service-desc link relation type to use OpenAPI yaml media type by @philvarner in #189
- Split system tests into separate files by @marchuffnagle in #191
- Clean up a couple skipped tests by @marchuffnagle in #192
- Compress API responses by @marchuffnagle in #193
- define routes for transaction endpoints by @philvarner in #194
- Maintain created time when reingesting an item by @marchuffnagle in #196
- Perform full-item replacement on ingest rather than partial update by @marchuffnagle in #197
- Move addEndpoint middleware by @marchuffnagle in #198
- Tests handle their own API server by @marchuffnagle in #199
- Improve Elasticsearch mappings by @philvarner in #181
- fix GET Item endpoint when Item doesn't exist, add Delete Item endpoint impl by @philvarner in #205
- Bump urijs from 1.19.8 to 1.19.9 by @dependabot in #210
- Implement POST and PUT for Items from Transaction Extension by @philvarner in #208
- Pv/retain bbox intersects parameters by @philvarner in #215
- Pv/validate limit parameters by @philvarner in #217
- Bump urijs from 1.19.9 to 1.19.10 by @dependabot in #221
- validate datetime parameter better by @philvarner in #218
- add root link relation in landing page by @philvarner in #225
- fix bbox parameter validation and "type" field in root catalog by @philvarner in #233
- change default sort to be stable by @philvarner in #227
- add docs for migration by @philvarner in #230
- update openapi spec to stac api 1.0.0-beta.5, add redoc service-doc endpoint by @philvarner in #232
- change pagination to use Elasticsearch search_after instead of 'page' by @philvarner in #228
- change proj:centroid and proj:geometry to not have type match on string by @philvarner in #236
- replace constant_score and must with bool and filter for ES queries by @philvarner in #244
- remove dependency on geojson-validation because it's LGPL 3 by @philvarner in #247
- Bump minimist from 1.2.5 to 1.2.6 by @dependabot in #248
- Add support for
X-STAC-Endpoint
header by @marchuffnagle in #251 - update version to 0.4.0-rc.3 by @philvarner in #250
- re-add page parameter by @philvarner in https://github.com/stac-utils/stac-server/pu...
v0.3.1
[0.3.1] - 2021-07-28
Fixed
- Root catalog now properly includes
type: Catalog
v0.3.0
[0.3.0] - 2021-07-06
Added
- Added conformsTo to root catalog
- Added geo_point mapping to items -> properties -> epsg:centroid
Fixed
- Array GET parameters can now be comma-delimited, as per spec
- Collections link rel type changed to
data
- Added required rel=search links in root
- Geometry now properly being serialized
- Multiple security vulnerability updaets in dependent libraries
- Integration tests
Changed
- Elasticsearch version update 6.8 -> 7.9
- Updated all mappings
- Enforce only HTTPS access
- Migrate base configuration from t2.small -> t3.small instances
- Updated integration tests to use more update STAC 1.0.0 spec
- Some fields, such as assets and links, are now excluded from indexing
- Enforce https
- Increase SQS VisibilityTimeout and Ingest Lambda timeout
v0.2.1
[0.2.1] - 2020-12-14
Fixed
- Pagination is now STAC compliant
- Response from
/collections
is now STAC compliant - Return 404 errors when collections or items not found
Removed
- Specified mapping for temporal and spatial properties (will auto map)