Skip to content

Commit db65ed7

Browse files
authored
Switch to pyproject.toml (stac-utils#505)
**Related Issue(s):** - stac-utils#503 **Description:** **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 5c0d44f commit db65ed7

File tree

13 files changed

+250
-206
lines changed

13 files changed

+250
-206
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
2121
- Removed ENV_MAX_LIMIT environment variable; maximum limits are now handled by the default global limit environment variable. [#482](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/482)
2222
- Changed the default and maximum pagination limits for collections/items endpoints. [#482](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/482)
2323
- Removed the `rel=child` links to the collections from the landing page, as the listing was incomplete due to pagination. [#496](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/496)
24+
- Changed to pyproject.toml file from setup.py [#505](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/505)
2425

2526
### Fixed
2627

stac_fastapi/core/pyproject.toml

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
[build-system]
2+
requires = ["hatchling"]
3+
build-backend = "hatchling.build"
4+
5+
[project]
6+
name = "stac_fastapi_core"
7+
description = "Core library for the Elasticsearch and Opensearch stac-fastapi backends."
8+
readme = "README.md"
9+
requires-python = ">=3.9"
10+
license = {text = "MIT"}
11+
authors = []
12+
classifiers = [
13+
"Intended Audience :: Developers",
14+
"Intended Audience :: Information Technology",
15+
"Intended Audience :: Science/Research",
16+
"Programming Language :: Python :: 3.9",
17+
"Programming Language :: Python :: 3.10",
18+
"Programming Language :: Python :: 3.11",
19+
"Programming Language :: Python :: 3.12",
20+
"Programming Language :: Python :: 3.13",
21+
"Programming Language :: Python :: 3.14",
22+
"License :: OSI Approved :: MIT License",
23+
]
24+
keywords = [
25+
"STAC",
26+
"STAC-API",
27+
"FastAPI",
28+
"stac-fastapi",
29+
"Elasticsearch",
30+
"Opensearch",
31+
]
32+
dynamic = ["version"]
33+
dependencies = [
34+
"fastapi~=0.109.0",
35+
"attrs>=23.2.0",
36+
"pydantic>=2.4.1,<3.0.0",
37+
"stac_pydantic~=3.3.0",
38+
"stac-fastapi.types==6.0.0",
39+
"stac-fastapi.api==6.0.0",
40+
"stac-fastapi.extensions==6.0.0",
41+
"orjson~=3.11.0",
42+
"overrides~=7.4.0",
43+
"geojson-pydantic~=1.0.0",
44+
"pygeofilter~=0.3.1",
45+
"jsonschema~=4.0.0",
46+
"slowapi~=0.1.9",
47+
]
48+
49+
[project.urls]
50+
Homepage = "https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch"
51+
52+
[tool.hatch.version]
53+
path = "stac_fastapi/core/version.py"
54+
55+
[tool.hatch.build.targets.sdist]
56+
exclude = ["alembic", "tests", "scripts"]
57+
58+
[tool.hatch.build.targets.wheel]
59+
only-include = ["stac_fastapi"]

stac_fastapi/core/setup.cfg

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

stac_fastapi/core/setup.py

Lines changed: 0 additions & 47 deletions
This file was deleted.
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
[build-system]
2+
requires = ["hatchling"]
3+
build-backend = "hatchling.build"
4+
5+
[project]
6+
name = "stac_fastapi_elasticsearch"
7+
description = "An implementation of STAC API based on the FastAPI framework with Elasticsearch."
8+
readme = "README.md"
9+
requires-python = ">=3.9"
10+
license = {text = "MIT"}
11+
authors = []
12+
classifiers = [
13+
"Intended Audience :: Developers",
14+
"Intended Audience :: Information Technology",
15+
"Intended Audience :: Science/Research",
16+
"Programming Language :: Python :: 3.9",
17+
"Programming Language :: Python :: 3.10",
18+
"Programming Language :: Python :: 3.11",
19+
"Programming Language :: Python :: 3.12",
20+
"Programming Language :: Python :: 3.13",
21+
"Programming Language :: Python :: 3.14",
22+
"License :: OSI Approved :: MIT License",
23+
]
24+
keywords = [
25+
"STAC",
26+
"STAC-API",
27+
"FastAPI",
28+
"Elasticsearch",
29+
"stac-fastapi",
30+
]
31+
dynamic = ["version"]
32+
dependencies = [
33+
"stac-fastapi-core==6.5.1",
34+
"sfeos-helpers==6.5.1",
35+
"elasticsearch[async]~=8.19.1",
36+
"uvicorn~=0.23.0",
37+
"starlette>=0.35.0,<0.36.0",
38+
]
39+
40+
[project.urls]
41+
Homepage = "https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch"
42+
43+
[project.optional-dependencies]
44+
dev = [
45+
"pytest~=8.0",
46+
"pytest-cov~=4.0.0",
47+
"pytest-asyncio~=0.21.0",
48+
"pre-commit~=3.0.0",
49+
"ciso8601~=2.3.0",
50+
"httpx>=0.24.0,<0.28.0",
51+
]
52+
docs = [
53+
"mkdocs~=1.4.0",
54+
"mkdocs-material~=9.0.0",
55+
"pdocs~=1.2.0",
56+
]
57+
server = [
58+
"uvicorn[standard]~=0.23.0",
59+
]
60+
61+
[project.scripts]
62+
stac-fastapi-elasticsearch = "stac_fastapi.elasticsearch.app:run"
63+
64+
[tool.hatch.version]
65+
path = "stac_fastapi/elasticsearch/version.py"
66+
67+
[tool.hatch.build.targets.sdist]
68+
exclude = ["alembic", "tests", "scripts"]
69+
70+
[tool.hatch.build.targets.wheel]
71+
only-include = ["stac_fastapi"]

stac_fastapi/elasticsearch/setup.cfg

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

stac_fastapi/elasticsearch/setup.py

Lines changed: 0 additions & 59 deletions
This file was deleted.
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
[build-system]
2+
requires = ["hatchling"]
3+
build-backend = "hatchling.build"
4+
5+
[project]
6+
name = "stac_fastapi_opensearch"
7+
description = "An implementation of STAC API based on the FastAPI framework with Opensearch."
8+
readme = "README.md"
9+
requires-python = ">=3.9"
10+
license = {text = "MIT"}
11+
authors = []
12+
classifiers = [
13+
"Intended Audience :: Developers",
14+
"Intended Audience :: Information Technology",
15+
"Intended Audience :: Science/Research",
16+
"Programming Language :: Python :: 3.9",
17+
"Programming Language :: Python :: 3.10",
18+
"Programming Language :: Python :: 3.11",
19+
"Programming Language :: Python :: 3.12",
20+
"Programming Language :: Python :: 3.13",
21+
"Programming Language :: Python :: 3.14",
22+
"License :: OSI Approved :: MIT License",
23+
]
24+
keywords = [
25+
"STAC",
26+
"STAC-API",
27+
"FastAPI",
28+
"Opensearch",
29+
"stac-fastapi",
30+
]
31+
dynamic = ["version"]
32+
dependencies = [
33+
"stac-fastapi-core==6.5.1",
34+
"sfeos-helpers==6.5.1",
35+
"opensearch-py~=2.8.0",
36+
"opensearch-py[async]~=2.8.0",
37+
"uvicorn~=0.23.0",
38+
"starlette>=0.35.0,<0.36.0",
39+
]
40+
41+
[project.urls]
42+
Homepage = "https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch"
43+
44+
[project.optional-dependencies]
45+
dev = [
46+
"pytest~=8.0",
47+
"pytest-cov~=4.0.0",
48+
"pytest-asyncio~=0.21.0",
49+
"pre-commit~=3.0.0",
50+
"ciso8601~=2.3.0",
51+
"httpx>=0.24.0,<0.28.0",
52+
]
53+
docs = [
54+
"mkdocs~=1.4.0",
55+
"mkdocs-material~=9.0.0",
56+
"pdocs~=1.2.0",
57+
]
58+
server = [
59+
"uvicorn[standard]~=0.23.0",
60+
]
61+
62+
[project.scripts]
63+
stac-fastapi-opensearch = "stac_fastapi.opensearch.app:run"
64+
65+
[tool.hatch.version]
66+
path = "stac_fastapi/opensearch/version.py"
67+
68+
[tool.hatch.build.targets.sdist]
69+
exclude = ["alembic", "tests", "scripts"]
70+
71+
[tool.hatch.build.targets.wheel]
72+
only-include = ["stac_fastapi"]

stac_fastapi/opensearch/setup.cfg

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

stac_fastapi/opensearch/setup.py

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

0 commit comments

Comments
 (0)