polystore 0.2.3__tar.gz → 0.2.4__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.
- {polystore-0.2.3/src/polystore.egg-info → polystore-0.2.4}/PKG-INFO +1 -1
- {polystore-0.2.3 → polystore-0.2.4}/pyproject.toml +1 -1
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/omero_tables.py +9 -2
- {polystore-0.2.3 → polystore-0.2.4/src/polystore.egg-info}/PKG-INFO +1 -1
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_omero_tables.py +13 -0
- {polystore-0.2.3 → polystore-0.2.4}/LICENSE +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/README.md +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/setup.cfg +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/__init__.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/array_payload.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/async_init.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/atomic.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/backend_registry.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/base.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/bioformats_java.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/bioformats_storage.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/config.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/constants.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/disk.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/exceptions.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/fiji_stream.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/filemanager.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/formats.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/imagej_runtime.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/lazy_imports.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/memory.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/metadata_migration.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/metadata_writer.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/napari_stream.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/ome_zarr_storage.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/omero_local.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/omero_text.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/roi.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/roi_converters.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/__init__.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/_streaming_backend.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/base.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/handlers/__init__.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/handlers/fiji_images.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/handlers/fiji_rois.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/identity.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/receivers/__init__.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/receivers/batching/__init__.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/receivers/core/__init__.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/receivers/core/batch_engine.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/receivers/core/contracts.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/receivers/core/window_projection.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/receivers/fiji/__init__.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/receivers/fiji/fiji_batch_processor.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/receivers/napari/__init__.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/receivers/napari/layer_key.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/receivers/napari/napari_batch_processor.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/viewer_transport.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming_constants.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/utils.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/virtual_workspace.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/zarr.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/zarr_batch.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore/zmq_config.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore.egg-info/SOURCES.txt +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore.egg-info/dependency_links.txt +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore.egg-info/requires.txt +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/src/polystore.egg-info/top_level.txt +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_array_payload.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_backend_registry.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_basic.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_bioformats_java.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_bioformats_storage.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_disk_backend.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_disk_coverage.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_disk_more.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_filemanager_backends.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_filemanager_extended.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_imagej_runtime.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_lazy_package_exports.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_memory_backend.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_memory_coverage.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_memory_type_authority.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_napari_batch_processor.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_ome_zarr_storage.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_omero_image_plane_batch.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_omero_text.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_png_format.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_roi.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_streaming_identity.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_streaming_metadata.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_streaming_receiver_core.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_streaming_shared_memory.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_viewer_transport.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_zarr_backend.py +0 -0
- {polystore-0.2.3 → polystore-0.2.4}/tests/test_zarr_batch.py +0 -0
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "polystore"
|
|
7
|
-
version = "0.2.
|
|
7
|
+
version = "0.2.4"
|
|
8
8
|
description = "Framework-agnostic multi-backend storage abstraction for ML and scientific computing"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.11"
|
|
@@ -122,8 +122,8 @@ class OMEROTableService:
|
|
|
122
122
|
|
|
123
123
|
return bool(connection.c.sf.sharedResources().areTablesEnabled())
|
|
124
124
|
|
|
125
|
-
def
|
|
126
|
-
"""
|
|
125
|
+
def wait_until_available(self, connection: Any) -> Any:
|
|
126
|
+
"""Return shared resources after the declared table capability is ready."""
|
|
127
127
|
|
|
128
128
|
resources = connection.c.sf.sharedResources()
|
|
129
129
|
retry_delays = iter(self.readiness_retry_delays_seconds)
|
|
@@ -139,6 +139,13 @@ class OMEROTableService:
|
|
|
139
139
|
)
|
|
140
140
|
time.sleep(retry_delay)
|
|
141
141
|
|
|
142
|
+
return resources
|
|
143
|
+
|
|
144
|
+
def create_table(self, connection: Any, path: str) -> Any:
|
|
145
|
+
"""Create one table through a ready service and repository declaration."""
|
|
146
|
+
|
|
147
|
+
resources = self.wait_until_available(connection)
|
|
148
|
+
|
|
142
149
|
repository_map = resources.repositories()
|
|
143
150
|
descriptions = repository_map.descriptions
|
|
144
151
|
if not descriptions:
|
|
@@ -142,6 +142,19 @@ def test_table_service_waits_on_capability_instead_of_exception_text(
|
|
|
142
142
|
assert resources.created_tables == [(7, "measurements.h5")]
|
|
143
143
|
|
|
144
144
|
|
|
145
|
+
def test_table_service_exposes_declared_readiness_wait(monkeypatch) -> None:
|
|
146
|
+
observed_delays: list[float] = []
|
|
147
|
+
monkeypatch.setattr("polystore.omero_tables.time.sleep", observed_delays.append)
|
|
148
|
+
resources = _Resources([False, True])
|
|
149
|
+
|
|
150
|
+
ready_resources = OMEROTableService(
|
|
151
|
+
readiness_retry_delays_seconds=(0.1,),
|
|
152
|
+
).wait_until_available(_connection(resources))
|
|
153
|
+
|
|
154
|
+
assert ready_resources is resources
|
|
155
|
+
assert observed_delays == [0.1]
|
|
156
|
+
|
|
157
|
+
|
|
145
158
|
def test_table_service_fails_before_create_when_capability_stays_unavailable() -> None:
|
|
146
159
|
resources = _Resources([False])
|
|
147
160
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/receivers/core/window_projection.py
RENAMED
|
File without changes
|
|
File without changes
|
{polystore-0.2.3 → polystore-0.2.4}/src/polystore/streaming/receivers/fiji/fiji_batch_processor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|