dcnum 0.20.1__tar.gz → 0.20.2__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.

Potentially problematic release.


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

Files changed (105) hide show
  1. {dcnum-0.20.1 → dcnum-0.20.2}/CHANGELOG +2 -0
  2. {dcnum-0.20.1/src/dcnum.egg-info → dcnum-0.20.2}/PKG-INFO +1 -1
  3. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/_version.py +2 -2
  4. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/logic/ctrl.py +0 -1
  5. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/segm/segm_thresh.py +0 -12
  6. {dcnum-0.20.1 → dcnum-0.20.2/src/dcnum.egg-info}/PKG-INFO +1 -1
  7. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_meta_ppid_segm.py +17 -0
  8. {dcnum-0.20.1 → dcnum-0.20.2}/.github/workflows/check.yml +0 -0
  9. {dcnum-0.20.1 → dcnum-0.20.2}/.github/workflows/deploy_pypi.yml +0 -0
  10. {dcnum-0.20.1 → dcnum-0.20.2}/.gitignore +0 -0
  11. {dcnum-0.20.1 → dcnum-0.20.2}/.readthedocs.yml +0 -0
  12. {dcnum-0.20.1 → dcnum-0.20.2}/LICENSE +0 -0
  13. {dcnum-0.20.1 → dcnum-0.20.2}/README.rst +0 -0
  14. {dcnum-0.20.1 → dcnum-0.20.2}/docs/conf.py +0 -0
  15. {dcnum-0.20.1 → dcnum-0.20.2}/docs/extensions/github_changelog.py +0 -0
  16. {dcnum-0.20.1 → dcnum-0.20.2}/docs/index.rst +0 -0
  17. {dcnum-0.20.1 → dcnum-0.20.2}/docs/requirements.txt +0 -0
  18. {dcnum-0.20.1 → dcnum-0.20.2}/pyproject.toml +0 -0
  19. {dcnum-0.20.1 → dcnum-0.20.2}/setup.cfg +0 -0
  20. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/__init__.py +0 -0
  21. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/__init__.py +0 -0
  22. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/event_extractor_manager_thread.py +0 -0
  23. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_background/__init__.py +0 -0
  24. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_background/base.py +0 -0
  25. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_background/bg_copy.py +0 -0
  26. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_background/bg_roll_median.py +0 -0
  27. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_background/bg_sparse_median.py +0 -0
  28. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_brightness/__init__.py +0 -0
  29. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_brightness/bright_all.py +0 -0
  30. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_brightness/common.py +0 -0
  31. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_contour/__init__.py +0 -0
  32. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_contour/contour.py +0 -0
  33. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_contour/moments.py +0 -0
  34. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_contour/volume.py +0 -0
  35. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_texture/__init__.py +0 -0
  36. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_texture/common.py +0 -0
  37. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/feat_texture/tex_all.py +0 -0
  38. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/gate.py +0 -0
  39. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/feat/queue_event_extractor.py +0 -0
  40. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/logic/__init__.py +0 -0
  41. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/logic/job.py +0 -0
  42. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/logic/json_encoder.py +0 -0
  43. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/meta/__init__.py +0 -0
  44. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/meta/paths.py +0 -0
  45. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/meta/ppid.py +0 -0
  46. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/read/__init__.py +0 -0
  47. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/read/cache.py +0 -0
  48. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/read/const.py +0 -0
  49. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/read/hdf5_data.py +0 -0
  50. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/read/mapped.py +0 -0
  51. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/segm/__init__.py +0 -0
  52. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/segm/segmenter.py +0 -0
  53. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/segm/segmenter_cpu.py +0 -0
  54. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/segm/segmenter_gpu.py +0 -0
  55. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/segm/segmenter_manager_thread.py +0 -0
  56. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/write/__init__.py +0 -0
  57. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/write/deque_writer_thread.py +0 -0
  58. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/write/queue_collector_thread.py +0 -0
  59. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum/write/writer.py +0 -0
  60. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum.egg-info/SOURCES.txt +0 -0
  61. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum.egg-info/dependency_links.txt +0 -0
  62. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum.egg-info/requires.txt +0 -0
  63. {dcnum-0.20.1 → dcnum-0.20.2}/src/dcnum.egg-info/top_level.txt +0 -0
  64. {dcnum-0.20.1 → dcnum-0.20.2}/tests/conftest.py +0 -0
  65. {dcnum-0.20.1 → dcnum-0.20.2}/tests/data/fmt-hdf5_cytoshot_extended-moments-features.zip +0 -0
  66. {dcnum-0.20.1 → dcnum-0.20.2}/tests/data/fmt-hdf5_cytoshot_full-features_2023.zip +0 -0
  67. {dcnum-0.20.1 → dcnum-0.20.2}/tests/data/fmt-hdf5_cytoshot_full-features_2024.zip +0 -0
  68. {dcnum-0.20.1 → dcnum-0.20.2}/tests/data/fmt-hdf5_cytoshot_full-features_legacy_allev_2023.zip +0 -0
  69. {dcnum-0.20.1 → dcnum-0.20.2}/tests/data/fmt-hdf5_shapein_empty.zip +0 -0
  70. {dcnum-0.20.1 → dcnum-0.20.2}/tests/data/fmt-hdf5_shapein_raw-with-variable-length-logs.zip +0 -0
  71. {dcnum-0.20.1 → dcnum-0.20.2}/tests/helper_methods.py +0 -0
  72. {dcnum-0.20.1 → dcnum-0.20.2}/tests/requirements.txt +0 -0
  73. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_feat_background_base.py +0 -0
  74. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_feat_background_bg_copy.py +0 -0
  75. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_feat_background_bg_roll_median.py +0 -0
  76. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_feat_background_bg_sparsemed.py +0 -0
  77. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_feat_brightness.py +0 -0
  78. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_feat_event_extractor_manager.py +0 -0
  79. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_feat_gate.py +0 -0
  80. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_feat_haralick.py +0 -0
  81. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_feat_moments_based.py +0 -0
  82. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_feat_moments_based_extended.py +0 -0
  83. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_feat_volume.py +0 -0
  84. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_init.py +0 -0
  85. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_logic_job.py +0 -0
  86. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_logic_join.py +0 -0
  87. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_logic_json.py +0 -0
  88. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_logic_pipeline.py +0 -0
  89. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_meta_paths.py +0 -0
  90. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_meta_ppid_base.py +0 -0
  91. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_meta_ppid_bg.py +0 -0
  92. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_meta_ppid_data.py +0 -0
  93. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_meta_ppid_feat.py +0 -0
  94. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_meta_ppid_gate.py +0 -0
  95. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_read_basin.py +0 -0
  96. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_read_concat_hdf5.py +0 -0
  97. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_read_hdf5.py +0 -0
  98. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_read_hdf5_basins.py +0 -0
  99. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_read_hdf5_index_mapping.py +0 -0
  100. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_segm_base.py +0 -0
  101. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_segm_no_mask_proc.py +0 -0
  102. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_segm_thresh.py +0 -0
  103. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_write_deque_writer_thread.py +0 -0
  104. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_write_queue_collector_thread.py +0 -0
  105. {dcnum-0.20.1 → dcnum-0.20.2}/tests/test_write_writer.py +0 -0
@@ -1,3 +1,5 @@
1
+ 0.20.2
2
+ - ref: remove __init__ from SegmentThresh
1
3
  0.20.1
2
4
  - fix: relative basin locations not written correctly
3
5
  - enh: increase deque size threshold for waiting for writer
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dcnum
3
- Version: 0.20.1
3
+ Version: 0.20.2
4
4
  Summary: numerics toolbox for imaging deformability cytometry
5
5
  Author: Maximilian Schlögel, Paul Müller
6
6
  Maintainer-email: Paul Müller <dev@craban.de>
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '0.20.1'
16
- __version_tuple__ = version_tuple = (0, 20, 1)
15
+ __version__ = version = '0.20.2'
16
+ __version_tuple__ = version_tuple = (0, 20, 2)
@@ -666,7 +666,6 @@ class DCNumJobRunner(threading.Thread):
666
666
  num_extractors = max(1, num_extractors)
667
667
  num_segmenters = max(1, num_segmenters)
668
668
  self.job.kwargs["segmenter_kwargs"]["num_workers"] = num_segmenters
669
-
670
669
  slot_chunks = mp_spawn.Array("i", num_slots)
671
670
  slot_states = mp_spawn.Array("u", num_slots)
672
671
 
@@ -10,18 +10,6 @@ class SegmentThresh(CPUSegmenter):
10
10
  }
11
11
  requires_background_correction = True
12
12
 
13
- def __init__(self, thresh=-6, *args, **kwargs):
14
- """Simple image thresholding segmentation
15
-
16
- Parameters
17
- ----------
18
- thresh: int
19
- grayscale threshold value for creating the mask image;
20
- For a background-corrected image, pixels with values below
21
- this value are considered to be part of the mask.
22
- """
23
- super(SegmentThresh, self).__init__(thresh=thresh, *args, **kwargs)
24
-
25
13
  @staticmethod
26
14
  def segment_approach(image, *,
27
15
  thresh: float = -6):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dcnum
3
- Version: 0.20.1
3
+ Version: 0.20.2
4
4
  Summary: numerics toolbox for imaging deformability cytometry
5
5
  Author: Maximilian Schlögel, Paul Müller
6
6
  Maintainer-email: Paul Müller <dev@craban.de>
@@ -1,3 +1,4 @@
1
+ from dcnum.meta import ppid
1
2
  from dcnum import segm
2
3
 
3
4
  import pytest
@@ -26,6 +27,22 @@ def test_ppid_decoding_thresh_check_kwargs():
26
27
  assert kwargs["kwargs_mask"]["closing_disk"] == 3
27
28
 
28
29
 
30
+ def test_ppid_kwargs_to_ppid():
31
+ """Make sure that subclasses correctly implement __init__ (if they do)"""
32
+ segm_dict = segm.get_available_segmenters()
33
+ for segm_key in segm_dict:
34
+ segm_cls = segm_dict[segm_key]
35
+ inst = segm_cls()
36
+ kwargs = inst.kwargs
37
+ kwargs["num_workers"] = 2
38
+ ppid.kwargs_to_ppid(
39
+ cls=segm_cls,
40
+ method="segment_approach",
41
+ kwargs=kwargs,
42
+ allow_invalid_keys=False,
43
+ )
44
+
45
+
29
46
  @pytest.mark.parametrize("segm_code", segm.get_available_segmenters().keys())
30
47
  def test_ppid_required_method_definitions(segm_code):
31
48
  segm_class = segm.get_available_segmenters()[segm_code]
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