Skip to content

Commit 86e65d0

Browse files
authored
Move sfeos-tools to a new repo (stac-utils#493)
**Related Issue(s):** - None **Description:** Moved the new sfeos-tools to its own repository, Updated readme and changelog to reflect this change. **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
1 parent 616f4fa commit 86e65d0

File tree

7 files changed

+23
-433
lines changed

7 files changed

+23
-433
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
1111

1212
- Spatial search support for collections via `bbox` parameter on `/collections` endpoint. Collections are now indexed with a `bbox_shape` field (GeoJSON polygon) derived from their spatial extent for efficient geospatial queries when created or updated. [#481](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/481)
1313
- Introduced SFEOS Tools (`sfeos_tools/`) - An installable Click-based CLI package for managing SFEOS deployments. Initial command `add-bbox-shape` adds the `bbox_shape` field to existing collections for spatial search compatibility. Install with `pip install sfeos-tools[elasticsearch]` or `pip install sfeos-tools[opensearch]`. [#481](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/481)
14+
- Moved SFEOS Tools to its own repository at [Healy-Hyperspatial/sfeos-tools](https://github.com/Healy-Hyperspatial/sfeos-tools). The CLI package is now maintained separately. [#PR_NUMBER]
1415
- CloudFerro logo to sponsors and supporters list [#485](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/485)
1516
- Latest news section to README [#485](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/485)
1617

README.md

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,20 @@ The following organizations have contributed time and/or funding to support the
3030

3131
## Latest News
3232

33-
<div style="max-height: 200px; overflow-y: auto; padding: 10px; border: 1px solid #eaecef; border-radius: 6px; margin-bottom: 16px;">
34-
35-
- **10/12/2025:** Collections search **bbox** functionality added! The collections search extension now supports bbox queries. Collections will need to be updated via the API or with the new **[SFEOS-tools](#sfeos-tools-cli)** CLI package to support geospatial discoverability. Thanks again to **CloudFerro** for their sponsorship of this work!
33+
- **10/15/2025:** 🚀 SFEOS Tools v0.1.0 Released! - The new `sfeos-tools` CLI is now available on [PyPI](https://pypi.org/project/sfeos-tools/)
34+
- **10/15/2025:** Added `reindex` command to **[SFEOS-tools](https://github.com/Healy-Hyperspatial/sfeos-tools)** for zero-downtime index updates when changing mappings or settings. The new `reindex` command makes it easy to apply mapping changes, update index settings, or migrate to new index structures without any service interruption, ensuring high availability of your STAC API during maintenance operations.
35+
- **10/12/2025:** Collections search **bbox** functionality added! The collections search extension now supports bbox queries. Collections will need to be updated via the API or with the new **[SFEOS-tools](https://github.com/Healy-Hyperspatial/sfeos-tools)** CLI package to support geospatial discoverability. 🙏 Thanks again to **CloudFerro** for their sponsorship of this work!
3636
- **10/04/2025:** The **[CloudFerro](https://cloudferro.com/)** logo has been added to the sponsors and supporters list above. Their sponsorship of the ongoing collections search extension work has been invaluable. This is in addition to the many other important changes and updates their developers have added to the project.
3737

38-
</div>
38+
<details style="border: 1px solid #eaecef; border-radius: 6px; padding: 10px; margin-bottom: 16px; background-color: #f9f9f9;">
39+
<summary style="cursor: pointer; font-weight: bold; margin: -10px -10px 0; padding: 10px; background-color: #f0f0f0; border-bottom: 1px solid #eaecef; border-top-left-radius: 6px; border-top-right-radius: 6px;">View Older News (Click to Expand)</summary>
40+
41+
-------------
42+
- **09/25/2025:** v6.5.0 adds a new GET/POST /collections-search endpoint (disabled by default via ENABLE_COLLECTIONS_SEARCH_ROUTE) to avoid conflicts with the Transactions Extension, and enhances collections search with structured filtering (CQL2 JSON/text), query, and datetime filtering. These changes make collection discovery more powerful and configurable while preserving compatibility with transaction-enabled deployments.
43+
<!-- Add more older news items here in Markdown format; GitHub will parse them thanks to the blank line implicit in this structure -->
44+
45+
</details>
46+
3947

4048
## Project Introduction - What is SFEOS?
4149

@@ -170,7 +178,7 @@ These endpoints support advanced collection discovery features including:
170178
- **Implementation Note**: When collections are created or updated, a `bbox_shape` field is automatically generated from the collection's spatial extent and indexed as a GeoJSON polygon for efficient geospatial queries
171179
- **Migrating Legacy Collections**: Collections created before this feature was added will not be discoverable via bbox search until they have the `bbox_shape` field added. You can either:
172180
- Update each collection via the API (PUT `/collections/{collection_id}` with the existing collection data)
173-
- Run the migration tool (see [SFEOS Tools CLI](#sfeos-tools-cli) for installation and connection options):
181+
- Use the [SFEOS Tools CLI](https://github.com/Healy-Hyperspatial/sfeos-tools) (install with `pip install sfeos-tools[elasticsearch]` or `pip install sfeos-tools[opensearch]`):
174182
- `sfeos-tools add-bbox-shape --backend elasticsearch --no-ssl`
175183
- `sfeos-tools add-bbox-shape --backend opensearch --host db.example.com --no-ssl`
176184

@@ -488,7 +496,7 @@ The system uses a precise naming convention:
488496

489497
## SFEOS Tools CLI
490498

491-
- **Overview**: SFEOS Tools is an installable CLI package for managing and maintaining SFEOS deployments.
499+
- **Overview**: [SFEOS Tools](https://github.com/Healy-Hyperspatial/sfeos-tools) is an installable CLI package for managing and maintaining SFEOS deployments. This CLI package provides utilities for managing and maintaining SFEOS deployments.
492500

493501
- **Installation**:
494502
```shell
@@ -498,14 +506,11 @@ The system uses a precise naming convention:
498506
# For OpenSearch (from PyPI)
499507
pip install sfeos-tools[opensearch]
500508

501-
# For local development
502-
pip install -e sfeos_tools[elasticsearch]
503-
# or
504-
pip install -e sfeos_tools[opensearch]
505509
```
506510

507511
- **Available Commands**:
508512
- `add-bbox-shape`: Add bbox_shape field to existing collections for spatial search support
513+
- `reindex`: Reindex all STAC indices (collections and per-collection items) to new versioned indices and update aliases; supports both Elasticsearch and OpenSearch backends. Use this when you need to apply mapping changes, update index settings, or migrate to a new index structure. The command handles the entire process including creating new indices, reindexing data, and atomically updating aliases with zero downtime.
509514

510515
- **Basic Usage**:
511516
```shell
@@ -540,9 +545,15 @@ The system uses a precise naming convention:
540545
# Using --help for more information
541546
sfeos-tools --help
542547
sfeos-tools add-bbox-shape --help
548+
sfeos-tools reindex --help
549+
543550
```
544551

545-
For more details, see the [SFEOS Tools README](./sfeos_tools/README.md).
552+
- **Documentation**:
553+
For complete documentation, examples, and advanced usage, please visit the [SFEOS Tools GitHub repository](https://github.com/Healy-Hyperspatial/sfeos-tools).
554+
555+
- **Contributing**:
556+
Contributions, bug reports, and feature requests are welcome! Please file them on the [SFEOS Tools issue tracker](https://github.com/Healy-Hyperspatial/sfeos-tools/issues).
546557

547558
## Ingesting Sample Data CLI Tool
548559

sfeos_tools/LICENSE

Lines changed: 0 additions & 21 deletions
This file was deleted.

sfeos_tools/README.md

Lines changed: 0 additions & 113 deletions
This file was deleted.

sfeos_tools/setup.py

Lines changed: 0 additions & 56 deletions
This file was deleted.

sfeos_tools/sfeos_tools/__init__.py

Lines changed: 0 additions & 3 deletions
This file was deleted.

0 commit comments

Comments
 (0)