canvod-store 0.2.0__py3-none-any.whl

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.
@@ -0,0 +1,23 @@
1
+ """canvod-store: Icechunk storage for GNSS VOD data.
2
+
3
+ This package provides versioned storage for GNSS VOD data using Icechunk.
4
+ Manages both RINEX observation storage and VOD analysis results.
5
+ """
6
+
7
+ from canvod.store.manager import GnssResearchSite
8
+ from canvod.store.reader import IcechunkDataReader
9
+ from canvod.store.store import (
10
+ MyIcechunkStore,
11
+ create_rinex_store,
12
+ create_vod_store,
13
+ )
14
+
15
+ __version__ = "0.1.0"
16
+
17
+ __all__ = [
18
+ "GnssResearchSite",
19
+ "IcechunkDataReader",
20
+ "MyIcechunkStore",
21
+ "create_rinex_store",
22
+ "create_vod_store",
23
+ ]
@@ -0,0 +1,35 @@
1
+ """File registry (ingest ledger) helpers for Icechunk-backed stores.
2
+
3
+ This module manages the per-file tracking table stored at
4
+ ``{group}/metadata/table`` inside an Icechunk store. Each row records
5
+ a single ingested file: its hash, temporal range, filename, path, etc.
6
+
7
+ **Not to be confused with** ``canvod.store_metadata`` (the separate package),
8
+ which manages store-level provenance: identity, creator, environment,
9
+ software versions, STAC/DataCite/ACDD compliance, etc.
10
+
11
+ Terminology
12
+ -----------
13
+ - **File registry** (this module): *which files* went into a store group.
14
+ - **Store metadata** (``canvod.store_metadata``): *who/what/when/how* about
15
+ the store as a whole.
16
+ """
17
+
18
+ from typing import Any
19
+
20
+ from canvodpy.logging import get_logger
21
+
22
+
23
+ class FileRegistryManager:
24
+ """Manage file registry table CRUD, backups, and deduplication for groups.
25
+
26
+ Parameters
27
+ ----------
28
+ logger : Any, optional
29
+ Logger-like object to use. Defaults to the configured context logger.
30
+ """
31
+
32
+ def __init__(self, logger: Any | None = None) -> None:
33
+ self._logger = logger or get_logger(__name__)
34
+
35
+ # TODO: Future refactor — extract metadata table methods from MyIcechunkStore.
@@ -0,0 +1,9 @@
1
+ """Grid adapters for hemisphere grid storage in Icechunk."""
2
+
3
+ # These will be enabled when canvod-grids is migrated
4
+ # from canvod.store.grid_adapters.complete_grid_vod_workflow import (
5
+ # store_grid_to_vod_store,
6
+ # load_grid_from_vod_store,
7
+ # )
8
+
9
+ __all__ = []