Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 25 additions & 8 deletions INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,28 +12,45 @@
- Python 3.11 or later
- A running Honua Server instance

## Install via pip
## Install
Comment thread
mikemcdougall marked this conversation as resolved.

**Not yet published to PyPI** -- `pip install honua-sdk` will not resolve
until the first public release lands. Until then, install from a clone:

```bash
git clone https://github.com/honua-io/honua-sdk-python.git
cd honua-sdk-python

# Core data client (REST/HTTP, sync + async)
pip install honua-sdk
pip install ./packages/honua-sdk

# With gRPC support
pip install honua-sdk[grpc]
pip install "./packages/honua-sdk[grpc]"

# With GeoPandas integration (vector result interop)
pip install honua-sdk[geopandas]
pip install "./packages/honua-sdk[geopandas]"

# With raster result interop (rasterio / rioxarray / xarray)
pip install honua-sdk[raster]
pip install "./packages/honua-sdk[raster]"

# Admin / control-plane client
pip install honua-admin
# Admin / control-plane client (installs honua-sdk alongside it)
pip install ./packages/honua-sdk ./packages/honua-admin

# Everything
pip install honua-sdk[grpc,geopandas,raster] honua-admin
pip install "./packages/honua-sdk[grpc,geopandas,raster]" ./packages/honua-admin
```

Or straight from GitHub without cloning:

```bash
pip install "honua-sdk[geopandas] @ git+https://github.com/honua-io/honua-sdk-python.git@python-sdk-v0.1.9#subdirectory=packages/honua-sdk"
```

The repo-root `pyproject.toml` is intentionally **not** installable (it
holds shared tool config only) -- install the per-package directories,
not `.`. Once the packages are published, the commands above collapse to
`pip install honua-sdk[...]` / `pip install honua-admin`.

## Quick Start

```python
Expand Down
3 changes: 1 addition & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,7 @@ pip install "honua-sdk[geopandas] @ git+https://github.com/honua-io/honua-sdk-py

The repo-root `pyproject.toml` is intentionally **not** installable (it holds
shared tool config only) — install the per-package directories, not `.`.
[INSTALL.md](INSTALL.md) has extras details and install-time troubleshooting;
its `pip install honua-sdk` commands apply once the packages are published.
[INSTALL.md](INSTALL.md) has extras details and install-time troubleshooting.

## I want to...

Expand Down
2 changes: 1 addition & 1 deletion packages/honua-admin/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ requires-python = ">=3.11"
authors = [{ name = "Honua" }]
keywords = ["geospatial", "admin", "gis", "honua", "control-plane"]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: Apache Software License",
"Operating System :: OS Independent",
Expand Down
19 changes: 17 additions & 2 deletions packages/honua-sdk/honua_sdk/protocols/scenes.py
Original file line number Diff line number Diff line change
Expand Up @@ -1120,6 +1120,7 @@ def _elevation_value_params(

def _elevation_profile_params(
line: str,
*,
sample_count: int | None,
interval: float | None,
srid: str | int | None,
Expand Down Expand Up @@ -2110,7 +2111,14 @@ def profile(
) -> ElevationProfile:
resolved = _require_dataset_id(dataset_id)
path = f"{self.root}/{_encode_path_segment(resolved)}/profile"
params = _elevation_profile_params(line, sample_count, interval, srid, mosaic_rule, extra_params)
params = _elevation_profile_params(
line,
sample_count=sample_count,
interval=interval,
srid=srid,
mosaic_rule=mosaic_rule,
extra_params=extra_params,
)
response = self._json("GET", path, params=params, timeout=timeout, extra_headers=extra_headers)
return parse_elevation_profile(response)

Expand Down Expand Up @@ -2310,6 +2318,13 @@ async def profile(
) -> ElevationProfile:
resolved = _require_dataset_id(dataset_id)
path = f"{self.root}/{_encode_path_segment(resolved)}/profile"
params = _elevation_profile_params(line, sample_count, interval, srid, mosaic_rule, extra_params)
params = _elevation_profile_params(
line,
sample_count=sample_count,
interval=interval,
srid=srid,
mosaic_rule=mosaic_rule,
extra_params=extra_params,
)
response = await self._json("GET", path, params=params, timeout=timeout, extra_headers=extra_headers)
return parse_elevation_profile(response)
2 changes: 1 addition & 1 deletion packages/honua-sdk/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ requires-python = ">=3.11"
authors = [{ name = "Honua" }]
keywords = ["geospatial", "mobile", "gis", "offline", "sync", "grpc", "honua"]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: Apache Software License",
"Operating System :: OS Independent",
Expand Down
Loading