Skip to content

Commit

Permalink
chore: speed up releases loading
Browse files Browse the repository at this point in the history
  • Loading branch information
RaczeQ committed Oct 24, 2024
1 parent 994051c commit e78b016
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 22 deletions.
18 changes: 4 additions & 14 deletions overturemaestro/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,17 +20,6 @@ def _version_callback(value: bool) -> None:
raise typer.Exit()


# def _display_osm_extracts_callback(ctx: typer.Context, value: bool) -> None:
# if value:
# from quackosm.osm_extracts import display_available_extracts

# param_values = {p.name: p.default for p in ctx.command.params}
# param_values.update(ctx.params)
# osm_source = cast(str, param_values.get("osm_extract_source"))
# display_available_extracts(source=osm_source, use_full_names=True, use_pager=True)
# raise typer.Exit()


def _display_release_versions_callback(ctx: typer.Context, value: bool) -> None:
if value:
from rich import print as rprint
Expand Down Expand Up @@ -60,7 +49,7 @@ def _display_theme_type_pairs_callback(ctx: typer.Context, value: bool) -> None:
param_values = {p.name: p.default for p in ctx.command.params}
param_values.update(ctx.params)
release_version = cast(
str, param_values.get("release_version", get_newest_release_version())
str, param_values.get("release_version") or get_newest_release_version()
)
theme_type_pairs = get_available_theme_type_pairs(release=release_version)

Expand All @@ -87,14 +76,15 @@ def _empty_path_callback(ctx: typer.Context, value: Path) -> Optional[Path]:


class BboxGeometryParser(click.ParamType): # type: ignore
"""Parser for geometry in WKT form."""
"""Parser for geometry in bounding box form."""

name = "BBOX"

def convert(self, value, param=None, ctx=None): # type: ignore
"""Convert parameter value."""
try:
from shapely import box

bbox_values = [float(x.strip()) for x in value.split(",")]
return box(*bbox_values)
except ValueError: # ValueError raised when passing non-numbers to float()
Expand Down Expand Up @@ -555,7 +545,7 @@ def main(
from overturemaestro import convert_geometry_to_parquet, get_available_theme_type_pairs

if (theme_value, type_value) not in get_available_theme_type_pairs(
release=release_version # type: ignore[arg-type]
release=release_version # type: ignore[arg-type]
):
raise typer.BadParameter(
f"Dataset of theme = {theme_value} and type = {type_value} doesn't exist."
Expand Down
9 changes: 1 addition & 8 deletions overturemaestro/release_index.py
Original file line number Diff line number Diff line change
Expand Up @@ -278,13 +278,6 @@ def get_available_theme_type_pairs(release: Optional[str] = None) -> list[tuple[
)
index_content = pd.read_json(index_content_file_url)

# if not release_index_path.exists():
# raise FileNotFoundError(
# f"Index for release {release} isn't cached locally. "
# "Please download or generate the index first using "
# "download_existing_release_index or generate_release_index function."
# )

return sorted(index_content[["theme", "type"]].itertuples(index=False, name=None))

# theme_type_tuples = json.loads(release_index_path.read_text())
Expand Down Expand Up @@ -517,7 +510,7 @@ def _get_index_file_name(theme_value: str, type_value: str) -> str:


def _load_all_available_release_versions_from_github() -> list[str]:
gh_fs = GithubFileSystem(org="kraina-ai", repo="overturemaps-releases-indexes")
gh_fs = GithubFileSystem(org="kraina-ai", repo="overturemaps-releases-indexes", sha="main")
release_versions = [file_path.split("/")[1] for file_path in gh_fs.ls("release_indexes")]
return release_versions

Expand Down

0 comments on commit e78b016

Please sign in to comment.