async-geotiff 0.1.0b1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- async_geotiff-0.1.0b1/PKG-INFO +35 -0
- async_geotiff-0.1.0b1/README.md +20 -0
- async_geotiff-0.1.0b1/pyproject.toml +66 -0
- async_geotiff-0.1.0b1/src/async_geotiff/__init__.py +10 -0
- async_geotiff-0.1.0b1/src/async_geotiff/_crs.py +621 -0
- async_geotiff-0.1.0b1/src/async_geotiff/_geotiff.py +405 -0
- async_geotiff-0.1.0b1/src/async_geotiff/_overview.py +86 -0
- async_geotiff-0.1.0b1/src/async_geotiff/_version.py +6 -0
- async_geotiff-0.1.0b1/src/async_geotiff/enums.py +59 -0
- async_geotiff-0.1.0b1/src/async_geotiff/py.typed +0 -0
- async_geotiff-0.1.0b1/src/async_geotiff/tms.py +141 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
Metadata-Version: 2.3
|
|
2
|
+
Name: async-geotiff
|
|
3
|
+
Version: 0.1.0b1
|
|
4
|
+
Summary: Async GeoTIFF reader for Python
|
|
5
|
+
Author: Kyle Barron
|
|
6
|
+
Author-email: Kyle Barron <kyle@developmentseed.org>
|
|
7
|
+
Requires-Dist: affine>=2.4.0
|
|
8
|
+
Requires-Dist: async-tiff>=0.4.0
|
|
9
|
+
Requires-Dist: numpy>2
|
|
10
|
+
Requires-Dist: pyproj>=3.7.2
|
|
11
|
+
Requires-Dist: morecantile>=7.0,<8.0 ; extra == 'morecantile'
|
|
12
|
+
Requires-Python: >=3.11
|
|
13
|
+
Provides-Extra: morecantile
|
|
14
|
+
Description-Content-Type: text/markdown
|
|
15
|
+
|
|
16
|
+
# async-geotiff
|
|
17
|
+
|
|
18
|
+
Async GeoTIFF and [Cloud-Optimized GeoTIFF][cogeo] (COG) reader for Python, wrapping [`async-tiff`].
|
|
19
|
+
|
|
20
|
+
[`async-tiff`]: https://github.com/developmentseed/async-tiff
|
|
21
|
+
[cogeo]: https://cogeo.org/
|
|
22
|
+
|
|
23
|
+
## Project Goals:
|
|
24
|
+
|
|
25
|
+
- Support only for GeoTIFF and Cloud-Optimized GeoTIFF (COG) formats
|
|
26
|
+
- Support for reading only, no writing support
|
|
27
|
+
- Full type hinting.
|
|
28
|
+
- API similar to rasterio where possible.
|
|
29
|
+
- We won't support the full rasterio API, but we'll try to when it's possible to implement rasterio APIs with straightforward maintenance requirements.
|
|
30
|
+
- For methods where we do intentionally try to match with rasterio, the tests should match against rasterio.
|
|
31
|
+
- Initially, we'll try to support a core set of GeoTIFF formats. Obscure GeoTIFF files may not be supported.
|
|
32
|
+
|
|
33
|
+
## References
|
|
34
|
+
|
|
35
|
+
- aiocogeo: https://github.com/geospatial-jeff/aiocogeo
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# async-geotiff
|
|
2
|
+
|
|
3
|
+
Async GeoTIFF and [Cloud-Optimized GeoTIFF][cogeo] (COG) reader for Python, wrapping [`async-tiff`].
|
|
4
|
+
|
|
5
|
+
[`async-tiff`]: https://github.com/developmentseed/async-tiff
|
|
6
|
+
[cogeo]: https://cogeo.org/
|
|
7
|
+
|
|
8
|
+
## Project Goals:
|
|
9
|
+
|
|
10
|
+
- Support only for GeoTIFF and Cloud-Optimized GeoTIFF (COG) formats
|
|
11
|
+
- Support for reading only, no writing support
|
|
12
|
+
- Full type hinting.
|
|
13
|
+
- API similar to rasterio where possible.
|
|
14
|
+
- We won't support the full rasterio API, but we'll try to when it's possible to implement rasterio APIs with straightforward maintenance requirements.
|
|
15
|
+
- For methods where we do intentionally try to match with rasterio, the tests should match against rasterio.
|
|
16
|
+
- Initially, we'll try to support a core set of GeoTIFF formats. Obscure GeoTIFF files may not be supported.
|
|
17
|
+
|
|
18
|
+
## References
|
|
19
|
+
|
|
20
|
+
- aiocogeo: https://github.com/geospatial-jeff/aiocogeo
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
[project]
|
|
2
|
+
name = "async-geotiff"
|
|
3
|
+
version = "0.1.0-beta.1"
|
|
4
|
+
description = "Async GeoTIFF reader for Python"
|
|
5
|
+
readme = "README.md"
|
|
6
|
+
authors = [{ name = "Kyle Barron", email = "kyle@developmentseed.org" }]
|
|
7
|
+
requires-python = ">=3.11"
|
|
8
|
+
dependencies = [
|
|
9
|
+
"affine>=2.4.0",
|
|
10
|
+
"async-tiff>=0.4.0",
|
|
11
|
+
"numpy>2",
|
|
12
|
+
"pyproj>=3.7.2",
|
|
13
|
+
]
|
|
14
|
+
|
|
15
|
+
[project.optional-dependencies]
|
|
16
|
+
morecantile = ["morecantile>=7.0,<8.0"]
|
|
17
|
+
|
|
18
|
+
[dependency-groups]
|
|
19
|
+
dev = [
|
|
20
|
+
"affine>=3.0rc1",
|
|
21
|
+
"ipykernel>=7.1.0",
|
|
22
|
+
"jsonschema>=4.26.0",
|
|
23
|
+
"morecantile>=7.0.2",
|
|
24
|
+
"obstore>=0.8.2",
|
|
25
|
+
"pydantic>=2.12.5",
|
|
26
|
+
"pytest>=9.0.2",
|
|
27
|
+
"pytest-asyncio>=1.3.0",
|
|
28
|
+
"rasterio>=1.4.4",
|
|
29
|
+
"types-jsonschema>=4.26.0.20260109",
|
|
30
|
+
]
|
|
31
|
+
|
|
32
|
+
[build-system]
|
|
33
|
+
requires = ["uv_build>=0.8.8,<0.9.0"]
|
|
34
|
+
build-backend = "uv_build"
|
|
35
|
+
|
|
36
|
+
[tool.ruff]
|
|
37
|
+
extend-exclude = ["fixtures"]
|
|
38
|
+
|
|
39
|
+
[[tool.mypy.overrides]]
|
|
40
|
+
module = [
|
|
41
|
+
# Should be fixed in affine 3.0
|
|
42
|
+
# https://github.com/rasterio/affine/issues/135
|
|
43
|
+
"affine.*",
|
|
44
|
+
"async_tiff.store.*",
|
|
45
|
+
]
|
|
46
|
+
ignore_missing_imports = true
|
|
47
|
+
|
|
48
|
+
[tool.ruff.lint]
|
|
49
|
+
select = ["ALL"]
|
|
50
|
+
ignore = [
|
|
51
|
+
"EM101", # raw string in exception
|
|
52
|
+
"EM102", # f-string in exception
|
|
53
|
+
"FIX002", # todo statements
|
|
54
|
+
"PYI051", # literal strings redundant with str in type union
|
|
55
|
+
"TD002", # todo without author name
|
|
56
|
+
"TRY003", # define exceptions in the exception class
|
|
57
|
+
]
|
|
58
|
+
|
|
59
|
+
[tool.ruff.lint.per-file-ignores]
|
|
60
|
+
"tests/*" = [
|
|
61
|
+
"ANN001", # annotation in function argument
|
|
62
|
+
"ANN201", # return type annotation
|
|
63
|
+
"S101", # assert
|
|
64
|
+
"SLF001", # private member access
|
|
65
|
+
"D", # docstring
|
|
66
|
+
]
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"""Async GeoTIFF and [Cloud-Optimized GeoTIFF][cogeo] (COG) reader for Python.
|
|
2
|
+
|
|
3
|
+
[cogeo]: https://cogeo.org/
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
from ._geotiff import GeoTIFF
|
|
7
|
+
from ._overview import Overview
|
|
8
|
+
from ._version import __version__
|
|
9
|
+
|
|
10
|
+
__all__ = ["GeoTIFF", "Overview", "__version__"]
|