Skip to content

Tags: stac-utils/stac-fastapi-elasticsearch-opensearch

Tags

v6.0.0

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Update to v6.0.0 (#406)

### Added

- Added support for PATCH update through [RFC
6902](https://datatracker.ietf.org/doc/html/rfc6902) and [RFC
7396](https://datatracker.ietf.org/doc/html/rfc7396)
[#291](#291)

### Changed

- Updated stac-fastapi parent libraries to v6.0.0
[#291](#291)

v5.0.0

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
v5.0.0 release (#404)

**Related Issue(s):**

- None

**Description:**
- v5.0.0 release

**PR Checklist:**

- [x] Code is formatted and linted (run `pre-commit run --all-files`)
- [x] Tests pass (run `make test`)
- [x] Documentation has been updated to reflect changes, if applicable
- [x] Changes are added to the changelog

v5.0.0a1

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Update version to v5.0.0a1 (#389)

**Related Issue(s):**

- None

**Description:**
- Updated mkdocs/ sfeos doucmentation page 
- Added the ability to authenticate with OpenSearch/ElasticSearch with
SSL disabled

**PR Checklist:**

- [x] Code is formatted and linted (run `pre-commit run --all-files`)
- [x] Tests pass (run `make test`)
- [x] Documentation has been updated to reflect changes, if applicable
- [x] Changes are added to the changelog

v5.0.0a0

update mkdocs deploy

v4.2.0

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
release v4.2.0 (#377)

**Related Issue(s):**

- None

**Description:**

- v4.2.0 release

**PR Checklist:**

- [x] Code is formatted and linted (run `pre-commit run --all-files`)
- [x] Tests pass (run `make test`)
- [x] Documentation has been updated to reflect changes, if applicable
- [x] Changes are added to the changelog

v4.1.0

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Bump version to 4.1.0 across all files and update changelog (#365)

**Related Issue(s):**

- None

**Description:**

- v4.1.0 release

**PR Checklist:**

- [x] Code is formatted and linted (run `pre-commit run --all-files`)
- [x] Tests pass (run `make test`)
- [x] Documentation has been updated to reflect changes, if applicable
- [x] Changes are added to the changelog

v4.0.0

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Update to v4.0.0 (#362)

**Description:**

**Changes from 3.2.5:**

#### Added
- Added support for dynamically-generated queryables based on
Elasticsearch/OpenSearch mappings, with extensible metadata augmentation
[#351](#351)
- Included default queryables configuration for seamless integration.
[#351](#351)
- Added support for high-performance direct response mode for both
Elasticsearch and Opensearch backends, controlled by the
`ENABLE_DIRECT_RESPONSE` environment variable. When enabled
(`ENABLE_DIRECT_RESPONSE=true`), endpoints return Starlette Response
objects directly, bypassing FastAPI's jsonable_encoder and Pydantic
serialization for significantly improved performance on large search
responses. **Note:** In this mode, all FastAPI dependencies (including
authentication, custom status codes, and validation) are disabled for
all routes. Default is `false` for safety. A warning is logged at
startup if enabled. See [issue
#347](#347)
and [PR
#359](#359).
- Added robust tests for the `ENABLE_DIRECT_RESPONSE` environment
variable, covering both Elasticsearch and OpenSearch backends. Tests
gracefully handle missing backends by attempting to import both configs
and skipping if neither is available.
[#359](#359)

#### Changed
- Refactored database logic to reduce duplication
[#351](#351)
- Replaced `fastapi-slim` with `fastapi` dependency
[#351](#351)
- Changed minimum Python version to 3.9
[#354](#354)
- Updated stac-fastapi api, types, and extensions libraries to 5.1.1
from 3.0.0 and made various associated changes
[#354](#354)
- Changed makefile commands from 'docker-compose' to 'docker compose'
[#354](#354)
- Updated package names in setup.py files to use underscores instead of
periods for PEP 625 compliance
[#358](#358)
  - Changed `stac_fastapi.opensearch` to `stac_fastapi_opensearch`
  - Changed `stac_fastapi.elasticsearch` to `stac_fastapi_elasticsearch`
  - Changed `stac_fastapi.core` to `stac_fastapi_core`
  - Updated all related dependencies to use the new naming convention
- Renamed `docker-compose.yml` to `compose.yml` to align with Docker
Compose V2 conventions
[#358](#358)
- Removed deprecated `version` field from all compose files
[#358](#358)
- Updated `STAC_FASTAPI_VERSION` environment variables to 4.0.0 in all
compose files
[#362](#362)
- Bumped version from 4.0.0a2 to 4.0.0 for the PEP 625 compliant release
[#362](#362)
- Updated dependency requirements to use compatible release specifiers
(~=) for more controlled updates while allowing for bug fixes and
security patches
[#358](#358)
- Removed elasticsearch-dsl dependency as it's now part of the
elasticsearch package since version 8.18.0
[#358](#358)
- Updated test suite to use `httpx.ASGITransport(app=...)` for FastAPI
app testing (removes deprecation warning).
[#359](#359)
- Updated stac-fastapi parent libraries to 5.2.0.
[#359](#359)
- Migrated Elasticsearch index template creation from legacy
`put_template` to composable `put_index_template` API in
`database_logic.py`. This resolves deprecation warnings and ensures
compatibility with Elasticsearch 7.x and 8.x.
[#359](#359)
- Updated all Pydantic models to use `ConfigDict` instead of class-based
`Config` for Pydantic v2 compatibility. This resolves deprecation
warnings and prepares for Pydantic v3.
[#359](#359)
- Migrated all Pydantic `@root_validator` validators to
`@model_validator` for Pydantic v2 compatibility.
[#359](#359)
- Migrated startup event handling from deprecated
`@app.on_event("startup")` to FastAPI's recommended lifespan context
manager. This removes deprecation warnings and ensures compatibility
with future FastAPI versions.
[#361](#361)
- Refactored all boolean environment variable parsing in both
Elasticsearch and OpenSearch backends to use the shared `get_bool_env`
utility. This ensures robust and consistent handling of environment
variables such as `ES_USE_SSL`, `ES_HTTP_COMPRESS`, and
`ES_VERIFY_CERTS` across both backends.
[#359](#359)

#### Fixed
- Improved performance of `mk_actions` and `filter-links` methods
[#351](#351)
- Fixed inheritance relating to BaseDatabaseSettings and ApiBaseSettings
[#355](#355)
- Fixed delete_item and delete_collection methods return types
[#355](#355)
- Fixed inheritance relating to DatabaseLogic and BaseDatabaseLogic, and
ApiBaseSettings
[#355](#355)

**PR Checklist:**

- [x] Code is formatted and linted (run `pre-commit run --all-files`)
- [x] Tests pass (run `make test`)
- [x] Documentation has been updated to reflect changes, if applicable
- [x] Changes are added to the changelog

v4.0.0a2

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Enable direct response, stac-fastapi 5.2.0, deprecation warnings (#359)

**Related Issue(s):**

- #347 

**Description:**

#### v4.0.0a2 release 

#### Added
- Added support for high-performance direct response mode for both
Elasticsearch and Opensearch backends, controlled by the
`ENABLE_DIRECT_RESPONSE` environment variable. When enabled
(`ENABLE_DIRECT_RESPONSE=true`), endpoints return Starlette Response
objects directly, bypassing FastAPI's jsonable_encoder and Pydantic
serialization for significantly improved performance on large search
responses. **Note:** In this mode, all FastAPI dependencies (including
authentication, custom status codes, and validation) are disabled for
all routes. Default is `false` for safety. A warning is logged at
startup if enabled. See [issue
#347](#347)

#### Changed
- Updated test suite to use `httpx.ASGITransport(app=...)` for FastAPI
app testing (removes deprecation warning).
- Updated stac-fastapi parent libraries to 5.2.0. 
- Migrated Elasticsearch index template creation from legacy
`put_template` to composable `put_index_template` API in
`database_logic.py`. This resolves deprecation warnings and ensures
compatibility with Elasticsearch 7.x and 8.x.
- Updated all Pydantic models to use `ConfigDict` instead of class-based
`Config` for Pydantic v2 compatibility. This resolves deprecation
warnings and prepares for Pydantic v3.
- Migrated all Pydantic `@root_validator` validators to
`@model_validator` for Pydantic v2 compatibility.
- Migrated startup event handling from deprecated
`@app.on_event("startup")` to FastAPI's recommended lifespan context
manager. This removes deprecation warnings and ensures compatibility
with future FastAPI versions.

**PR Checklist:**

- [x] Code is formatted and linted (run `pre-commit run --all-files`)
- [x] Tests pass (run `make test`)
- [x] Documentation has been updated to reflect changes, if applicable
- [x] Changes are added to the changelog

v4.0.0a1

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Update package names for Pep625 compliance (#358)

**Related Issue(s):**

#337 

**Description:**

- Updated package names in setup.py files to use underscores instead of
periods for PEP 625 compliance
  - Changed `stac_fastapi.opensearch` to `stac_fastapi_opensearch`
  - Changed `stac_fastapi.elasticsearch` to `stac_fastapi_elasticsearch`
  - Changed `stac_fastapi.core` to `stac_fastapi_core`
  - Updated all related dependencies to use the new naming convention
- Renamed `docker-compose.yml` to `compose.yml` to align with Docker
Compose V2 conventions
- Removed deprecated `version` field from all compose files
- Updated `STAC_FASTAPI_VERSION` environment variables to 4.0.0a1 in all
compose files
- Bumped version from 4.0.0a0 to 4.0.0a1 for the PEP 625 compliant
release
- Updated dependency requirements to use compatible release specifiers
(~=) for more controlled updates while allowing for bug fixes and
security patches
- Removed elasticsearch-dsl dependency as it's now part of the
elasticsearch package since version 8.18.0

**PR Checklist:**

- [x] Code is formatted and linted (run `pre-commit run --all-files`)
- [x] Tests pass (run `make test`)
- [x] Documentation has been updated to reflect changes, if applicable
- [x] Changes are added to the changelog

v4.0.0a0

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Update CHANGELOG.md - add date