pymmcore-plus 0.13.6__tar.gz → 0.13.7__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.
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/PKG-INFO +1 -3
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/pyproject.toml +0 -2
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/_cli.py +4 -2
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/_util.py +11 -8
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/.gitignore +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/LICENSE +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/README.md +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/__init__.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/_benchmark.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/_build.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/_logger.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/_pymmcore.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/__init__.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/_adapter.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/_config.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/_config_group.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/_constants.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/_device.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/_metadata.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/_mmcore_plus.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/_property.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/_sequencing.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/events/__init__.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/events/_device_signal_view.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/events/_norm_slot.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/events/_prop_event_mixin.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/events/_protocol.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/events/_psygnal.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/events/_qsignals.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/experimental/__init__.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/experimental/unicore/__init__.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/experimental/unicore/_device_manager.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/experimental/unicore/_proxy.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/experimental/unicore/_unicore.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/experimental/unicore/devices/__init__.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/experimental/unicore/devices/_device.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/experimental/unicore/devices/_properties.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/experimental/unicore/devices/_stage.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/install.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/__init__.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/_engine.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/_protocol.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/_runner.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/_thread_relay.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/events/__init__.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/events/_protocol.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/events/_psygnal.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/events/_qsignals.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/handlers/_5d_writer_base.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/handlers/__init__.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/handlers/_img_sequence_writer.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/handlers/_ome_tiff_writer.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/handlers/_ome_zarr_writer.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/handlers/_tensorstore_handler.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/handlers/_util.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/metadata/__init__.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/metadata/functions.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/metadata/schema.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/metadata/serialize.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mocks.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/model/__init__.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/model/_config_file.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/model/_config_group.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/model/_core_device.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/model/_core_link.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/model/_device.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/model/_microscope.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/model/_pixel_size_config.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/model/_property.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/py.typed +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/seq_tester.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/__init__.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/conftest.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/io/test_image_sequence_writer.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/io/test_ome_tiff.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/io/test_zarr_writers.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/local_config.cfg +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_adapter_class.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_bench.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_cli.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_config_group_class.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_core.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_device_class.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_events.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_mda.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_metadata.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_misc.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_model.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_pixel_config_class.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_property_class.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_sequencing.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_slm_image.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/test_thread_relay.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/unicore/test_unicore.py +0 -0
- {pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/tests/unicore/test_xy_stage.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pymmcore-plus
|
|
3
|
-
Version: 0.13.
|
|
3
|
+
Version: 0.13.7
|
|
4
4
|
Summary: pymmcore superset providing improved APIs, event handling, and a pure python acquisition engine
|
|
5
5
|
Project-URL: Source, https://github.com/pymmcore-plus/pymmcore-plus
|
|
6
6
|
Project-URL: Tracker, https://github.com/pymmcore-plus/pymmcore-plus/issues
|
|
@@ -63,8 +63,6 @@ Requires-Dist: pyside2>=5.15; extra == 'pyside2'
|
|
|
63
63
|
Provides-Extra: pyside6
|
|
64
64
|
Requires-Dist: pyside6<6.8,>=6.4.0; extra == 'pyside6'
|
|
65
65
|
Provides-Extra: test
|
|
66
|
-
Requires-Dist: mm-device-adapters; (sys_platform == 'darwin' and platform_machine == 'x86_64') and extra == 'test'
|
|
67
|
-
Requires-Dist: mm-device-adapters; (sys_platform == 'win32') and extra == 'test'
|
|
68
66
|
Requires-Dist: msgpack; extra == 'test'
|
|
69
67
|
Requires-Dist: msgspec; extra == 'test'
|
|
70
68
|
Requires-Dist: pytest-cov>=4; extra == 'test'
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
# do NOT use __future__.annotations here. It breaks typer.
|
|
2
|
+
import contextlib
|
|
2
3
|
import os
|
|
3
4
|
import shutil
|
|
4
5
|
import subprocess
|
|
@@ -143,12 +144,13 @@ def mmstudio() -> None: # pragma: no cover
|
|
|
143
144
|
if mm
|
|
144
145
|
else None
|
|
145
146
|
)
|
|
146
|
-
if not app: # pragma: no cover
|
|
147
|
+
if not mm or not app: # pragma: no cover
|
|
147
148
|
print(f":x: [bold red]No MMStudio application found in {mm!r}")
|
|
148
149
|
print("[magenta]run `mmcore install` to install a version of Micro-Manager")
|
|
149
150
|
raise typer.Exit(1)
|
|
150
151
|
cmd = ["open", "-a", str(app)] if PLATFORM == "Darwin" else [str(app)]
|
|
151
|
-
|
|
152
|
+
with contextlib.chdir(mm):
|
|
153
|
+
raise typer.Exit(subprocess.run(cmd).returncode)
|
|
152
154
|
|
|
153
155
|
|
|
154
156
|
@app.command()
|
|
@@ -181,14 +181,17 @@ def find_micromanager(return_first: bool = True) -> str | None | list[str]:
|
|
|
181
181
|
app_path = applications[sys.platform]
|
|
182
182
|
pth = next(app_path.glob("[m,M]icro-[m,M]anager*"), None)
|
|
183
183
|
if return_first:
|
|
184
|
-
if pth
|
|
185
|
-
logger.error(
|
|
186
|
-
"could not find micromanager directory. Please run 'mmcore install'"
|
|
187
|
-
)
|
|
188
|
-
return None
|
|
189
|
-
if _mm_path_has_compatible_div(pth): # pragma: no cover
|
|
184
|
+
if pth and _mm_path_has_compatible_div(pth): # pragma: no cover
|
|
190
185
|
logger.debug("using MM path found in applications: %s", pth)
|
|
191
186
|
return str(pth)
|
|
187
|
+
from . import _pymmcore
|
|
188
|
+
|
|
189
|
+
div = _pymmcore.version_info.device_interface
|
|
190
|
+
logger.error(
|
|
191
|
+
f"could not find micromanager directory for device interface {div}. "
|
|
192
|
+
"Please run 'mmcore install'"
|
|
193
|
+
)
|
|
194
|
+
return None
|
|
192
195
|
if pth is not None:
|
|
193
196
|
full_list[str(pth)] = None
|
|
194
197
|
return list(full_list)
|
|
@@ -659,9 +662,9 @@ def get_device_interface_version(lib_path: str | Path) -> int:
|
|
|
659
662
|
import ctypes
|
|
660
663
|
|
|
661
664
|
if sys.platform.startswith("win"):
|
|
662
|
-
lib = ctypes.WinDLL(lib_path)
|
|
665
|
+
lib = ctypes.WinDLL(str(lib_path))
|
|
663
666
|
else:
|
|
664
|
-
lib = ctypes.CDLL(lib_path)
|
|
667
|
+
lib = ctypes.CDLL(str(lib_path))
|
|
665
668
|
|
|
666
669
|
try:
|
|
667
670
|
func = lib.GetDeviceInterfaceVersion
|
|
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
|
{pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/events/_device_signal_view.py
RENAMED
|
File without changes
|
|
File without changes
|
{pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/core/events/_prop_event_mixin.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/experimental/unicore/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/experimental/unicore/_proxy.py
RENAMED
|
File without changes
|
{pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/experimental/unicore/_unicore.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
|
{pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/handlers/_5d_writer_base.py
RENAMED
|
File without changes
|
|
File without changes
|
{pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/handlers/_img_sequence_writer.py
RENAMED
|
File without changes
|
{pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/handlers/_ome_tiff_writer.py
RENAMED
|
File without changes
|
{pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/handlers/_ome_zarr_writer.py
RENAMED
|
File without changes
|
{pymmcore_plus-0.13.6 → pymmcore_plus-0.13.7}/src/pymmcore_plus/mda/handlers/_tensorstore_handler.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
|