swcgeom 0.19.0__py3-none-any.whl → 0.19.1__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.

Potentially problematic release.


This version of swcgeom might be problematic. Click here for more details.

swcgeom/images/io.py CHANGED
@@ -17,6 +17,7 @@
17
17
 
18
18
  import os
19
19
  import re
20
+ import sys
20
21
  import warnings
21
22
  from abc import ABC, abstractmethod
22
23
  from collections.abc import Callable, Iterable
@@ -28,7 +29,6 @@ import numpy as np
28
29
  import numpy.typing as npt
29
30
  import tifffile
30
31
  from typing_extensions import deprecated
31
- from v3dpy.loaders import PBD, Raw
32
32
 
33
33
  __all__ = ["read_imgs", "save_tiff", "read_images"]
34
34
 
@@ -263,25 +263,48 @@ class NrrdImageStack(NDArrayImageStack[ScalarType]):
263
263
  self.header = header
264
264
 
265
265
 
266
- class V3dImageStack(NDArrayImageStack[ScalarType]):
267
- """v3d image stack."""
266
+ if sys.version_info < (3, 13):
267
+ from v3dpy.loaders import PBD, Raw
268
268
 
269
- def __init_subclass__(cls, loader: Raw | PBD) -> None:
270
- super().__init_subclass__()
271
- cls._loader = loader
269
+ class V3dImageStack(NDArrayImageStack[ScalarType]):
270
+ """v3d image stack."""
272
271
 
273
- def __init__(self, fname: str, *, dtype: ScalarType, **kwargs) -> None:
274
- r = self._loader()
275
- imgs = r.load(fname)
276
- super().__init__(imgs, dtype=dtype, **kwargs)
272
+ def __init_subclass__(cls, loader: Raw | PBD) -> None:
273
+ super().__init_subclass__()
274
+ cls._loader = loader
275
+
276
+ def __init__(self, fname: str, *, dtype: ScalarType, **kwargs) -> None:
277
+ r = self._loader()
278
+ imgs = r.load(fname)
279
+ super().__init__(imgs, dtype=dtype, **kwargs)
280
+
281
+ class V3drawImageStack(V3dImageStack[ScalarType], loader=Raw):
282
+ """v3draw image stack."""
283
+
284
+ class V3dpbdImageStack(V3dImageStack[ScalarType], loader=PBD):
285
+ """v3dpbd image stack."""
286
+
287
+ else:
288
+
289
+ def _v3d_not_supported(*args, **kwargs):
290
+ raise RuntimeError(
291
+ "v3d-py-helper is not supported in Python 3.13 or newer. See #33"
292
+ )
293
+
294
+ class V3dImageStack:
295
+ """v3d image stack (disabled due to unsupported Python version)."""
296
+
297
+ __init__ = _v3d_not_supported
277
298
 
299
+ class V3drawImageStack:
300
+ """v3draw image stack (disabled due to unsupported Python version)."""
278
301
 
279
- class V3drawImageStack(V3dImageStack[ScalarType], loader=Raw):
280
- """v3draw image stack."""
302
+ __init__ = _v3d_not_supported
281
303
 
304
+ class V3dpbdImageStack:
305
+ """v3dpbd image stack (disabled due to unsupported Python version)."""
282
306
 
283
- class V3dpbdImageStack(V3dImageStack[ScalarType], loader=PBD):
284
- """v3dpbd image stack."""
307
+ __init__ = _v3d_not_supported
285
308
 
286
309
 
287
310
  class TeraflyImageStack(ImageStack[ScalarType]):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: swcgeom
3
- Version: 0.19.0
3
+ Version: 0.19.1
4
4
  Summary: Neuron geometry library for swc format
5
5
  Author-email: yzx9 <pypi@yzx9.xyz>
6
6
  License: Apache-2.0
@@ -20,7 +20,7 @@ Requires-Dist: seaborn>=0.12.0
20
20
  Requires-Dist: tifffile>=2022.8.12
21
21
  Requires-Dist: typing-extensions>=4.4.0
22
22
  Requires-Dist: tqdm>=4.46.1
23
- Requires-Dist: v3d-py-helper>=0.4.1
23
+ Requires-Dist: v3d-py-helper>=0.4.1; python_version < "3.13"
24
24
  Provides-Extra: all
25
25
  Requires-Dist: beautifulsoup4>=4.11.1; extra == "all"
26
26
  Requires-Dist: certifi>=2023.5.7; extra == "all"
@@ -30,7 +30,7 @@ swcgeom/images/__init__.py,sha256=gwBZzrsswJ2hyRQA72khFk2JPo1JfWko4-huuAYNCOU,70
30
30
  swcgeom/images/augmentation.py,sha256=3ZWPRee3h1x1v_k2dDpAxCeUApvn2hu0TOPhTwuTe2g,4586
31
31
  swcgeom/images/contrast.py,sha256=fLA8snaEJS-0dXkgitDmXepsMgpa4OE9MMGrU5YBz4M,2462
32
32
  swcgeom/images/folder.py,sha256=YKJn5M090SKRVf-y5IG7sAmL6d8PsV2QeSquiuzFGHk,6847
33
- swcgeom/images/io.py,sha256=p0Vm1VAQOlF-EbvOMFnf6xllWVsaJn-2NhFII7rejlI,20310
33
+ swcgeom/images/io.py,sha256=0vwn1DqfKvXUClsQEseyptAJ4urqkkWyeeGYqtVr448,21011
34
34
  swcgeom/transforms/__init__.py,sha256=nE4Uyn5vpYyNiMltTiNHDRkyjYbW6B4ToyZOxUj0TU0,1370
35
35
  swcgeom/transforms/base.py,sha256=v1EIpL5Kxg2Q1AfzZ8wSkocjSWHpD9cTeBk8dSmzDRc,4951
36
36
  swcgeom/transforms/branch.py,sha256=gWR3lmd5b0PWYypF4WRRQ25O5DSlXok4wfm3Ycmxnbs,7560
@@ -60,8 +60,8 @@ swcgeom/utils/sdf.py,sha256=wqetIH-7j3TKalIdkgIf-w4CarElvFMFSMJqCPv8IIE,10966
60
60
  swcgeom/utils/solid_geometry.py,sha256=YoGDTqCs9lCS8YXrHyKhuA34zOUcPGaRZP_LvjIGSQ8,4578
61
61
  swcgeom/utils/transforms.py,sha256=gTT4G6AvmCg2JFDx45OjUQaa4eoWQjP8_iLvk2rE70o,9576
62
62
  swcgeom/utils/volumetric_object.py,sha256=fbTU_4rebc7r1dlYNnIeHfLg-vKdXP0ohrINVhe8RRg,15307
63
- swcgeom-0.19.0.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
64
- swcgeom-0.19.0.dist-info/METADATA,sha256=58gMTGMhk-QInpjCbn7HYHGdBHup0PBYEt8KiHsJ7YU,2323
65
- swcgeom-0.19.0.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
66
- swcgeom-0.19.0.dist-info/top_level.txt,sha256=hmLyUXWS61Gxl07haswFEKKefYPBVJYlUlol8ghNkjY,8
67
- swcgeom-0.19.0.dist-info/RECORD,,
63
+ swcgeom-0.19.1.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
64
+ swcgeom-0.19.1.dist-info/METADATA,sha256=7sq8aasLivq_AbuC3LxmFfom0CFvdsvI10QkqeK8jjg,2348
65
+ swcgeom-0.19.1.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
66
+ swcgeom-0.19.1.dist-info/top_level.txt,sha256=hmLyUXWS61Gxl07haswFEKKefYPBVJYlUlol8ghNkjY,8
67
+ swcgeom-0.19.1.dist-info/RECORD,,