v0.1.0
Highlights
- Implementation of stac-fastapi async clients for smooth concurrency
- Accurate Elasticsearch index mappings, the same ones stac-server uses
- Support for Extensions: Transaction (without PATCH, as that is not yet implemented in core stac-fastapi), Sort, Context,
- Support for Bulk Transactions, through POST of an ItemCollection to /collections/{c_id}/items (async, recommended) or the stac-fastapi proprietary endpoint /collections/{c_id}/bulk_items (not async, not recommended, will block the server)
- Pagination via Elasticsearch search_after
- Dockerfile for a deployable image
- Configuration parameters for auth and TLS access to Elasticsearch
What's Changed
- Elasticsearch by @jonhealy1 in #1
- change mappings by @jonhealy1 in #2
- add check for floats by @jonhealy1 in #3
- Publish to test-pypi by @jonhealy1 in #5
- update build command by @jonhealy1 in #6
- implement bulk transactions by @jonhealy1 in #10
- clean up publishing by @jonhealy1 in #9
- Prep mongo release by @jonhealy1 in #11
- Update serializers by @jonhealy1 in #12
- Merge dev by @jonhealy1 in #13
- Push es to test-pypi by @jonhealy1 in #14
- add limited and count by @jonhealy1 in #15
- Fix limit by @jonhealy1 in #16
- mongo 2.3.0 by @jonhealy1 in #17
- Push dev to main by @jonhealy1 in #18
- add postman collection to repo by @jonhealy1 in #21
- remove mongodb related code by @philvarner in #20
- rename a few targets, and fix references to them by @philvarner in #22
- Ingest sample data by @jonhealy1 in #32
- iterate over the Item values rather than the Items string keys by @philvarner in #33
- Provide the option to insert a feature collection to the items endpoint by @jonhealy1 in #38
- Clean up transactions logic by @jonhealy1 in #39
- Create better error messaging when indices haven't been created yet by @jonhealy1 in #36
- replace use of RFC339 constant with equivalent code by @philvarner in #40
- rework datetime values by @philvarner in #41
- Reformat transactions, add docs, etc. by @philvarner in #45
- Pv/update es mappings by @philvarner in #47
- add support for Elasticsearch 8, default to running that for local tests, and test both 7 and 8 in CI by @philvarner in #50
- use a stable sort by default for all queries for Items by @philvarner in #52
- Bump actions/checkout from 2 to 3 by @dependabot in #53
- Bump pre-commit/action from 2.0.0 to 2.0.3 by @dependabot in #54
- Bump actions/setup-python from 2 to 3 by @dependabot in #55
- create indexes at startup rather than when ingesting, add collection index schema by @philvarner in #57
- use concatenation of id and collection for elasticsearch _id value by @philvarner in #58
- Pull database logic out of core.py and transaction.py by @jonhealy1 in #62
- Fix tests in test_item.py etc by @jonhealy1 in #66
- move classes in transactions.py to core.py, to align with parent class organization by @philvarner in #67
- refactor tests to not need sleep, use fixture for setup/teardown by @philvarner in #69
- convert to async and refactor tests by @philvarner in #74
- Pv/create docker image for deploy by @philvarner in #79
- await index creation by @philvarner in #78
- add env vars to configure auth and ssl for ES instance by @philvarner in #81
- convert all uses of query to filter by @philvarner in #84
- add pagination with search_after, other refactoring by @philvarner in #85
- do bulk insert using asyncio executor instead of blocking by @philvarner in #86
- run count and search concurrently, but don't wait for count to be done by @philvarner in #88
New Contributors
- @jonhealy1 made their first contribution in #1
- @philvarner made their first contribution in #20
- @dependabot made their first contribution in #53
Full Changelog: https://github.com/stac-utils/stac-fastapi-elasticsearch/commits/v0.1.0