patchworks 1.1.0__tar.gz → 1.1.1__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.
Files changed (77) hide show
  1. {patchworks-1.1.0 → patchworks-1.1.1}/PKG-INFO +3 -3
  2. {patchworks-1.1.0 → patchworks-1.1.1}/pyproject.toml +5 -3
  3. {patchworks-1.1.0 → patchworks-1.1.1}/src/patchworks/plugins/napari.py +2 -2
  4. {patchworks-1.1.0 → patchworks-1.1.1}/src/patchworks/plugins/ome_zarr.py +2 -2
  5. {patchworks-1.1.0 → patchworks-1.1.1}/.github/workflows/docs.yml +0 -0
  6. {patchworks-1.1.0 → patchworks-1.1.1}/.github/workflows/lint.yml +0 -0
  7. {patchworks-1.1.0 → patchworks-1.1.1}/.github/workflows/release.yml +0 -0
  8. {patchworks-1.1.0 → patchworks-1.1.1}/.gitignore +0 -0
  9. {patchworks-1.1.0 → patchworks-1.1.1}/.markdownlint-cli2.yaml +0 -0
  10. {patchworks-1.1.0 → patchworks-1.1.1}/LICENSE +0 -0
  11. {patchworks-1.1.0 → patchworks-1.1.1}/README.md +0 -0
  12. {patchworks-1.1.0 → patchworks-1.1.1}/cliff.toml +0 -0
  13. {patchworks-1.1.0 → patchworks-1.1.1}/docs/api/chunks.md +0 -0
  14. {patchworks-1.1.0 → patchworks-1.1.1}/docs/api/cluster.md +0 -0
  15. {patchworks-1.1.0 → patchworks-1.1.1}/docs/api/io.md +0 -0
  16. {patchworks-1.1.0 → patchworks-1.1.1}/docs/api/merge_tile_labels.md +0 -0
  17. {patchworks-1.1.0 → patchworks-1.1.1}/docs/api/plugins/cellpose.md +0 -0
  18. {patchworks-1.1.0 → patchworks-1.1.1}/docs/api/plugins/napari.md +0 -0
  19. {patchworks-1.1.0 → patchworks-1.1.1}/docs/api/plugins/ome_zarr.md +0 -0
  20. {patchworks-1.1.0 → patchworks-1.1.1}/docs/api/relabel.md +0 -0
  21. {patchworks-1.1.0 → patchworks-1.1.1}/docs/api/tile_process.md +0 -0
  22. {patchworks-1.1.0 → patchworks-1.1.1}/docs/assets/logo.png +0 -0
  23. {patchworks-1.1.0 → patchworks-1.1.1}/docs/examples/cellpose_2d.md +0 -0
  24. {patchworks-1.1.0 → patchworks-1.1.1}/docs/examples/cellpose_2d.py +0 -0
  25. {patchworks-1.1.0 → patchworks-1.1.1}/docs/examples/cellpose_3d.md +0 -0
  26. {patchworks-1.1.0 → patchworks-1.1.1}/docs/examples/cellpose_3d.py +0 -0
  27. {patchworks-1.1.0 → patchworks-1.1.1}/docs/examples/custom.md +0 -0
  28. {patchworks-1.1.0 → patchworks-1.1.1}/docs/examples/custom_method.py +0 -0
  29. {patchworks-1.1.0 → patchworks-1.1.1}/docs/examples/standalone_merge.md +0 -0
  30. {patchworks-1.1.0 → patchworks-1.1.1}/docs/examples/stardist.md +0 -0
  31. {patchworks-1.1.0 → patchworks-1.1.1}/docs/examples/stardist_2d.py +0 -0
  32. {patchworks-1.1.0 → patchworks-1.1.1}/docs/getting_started.md +0 -0
  33. {patchworks-1.1.0 → patchworks-1.1.1}/docs/guide/gpu_distributed.md +0 -0
  34. {patchworks-1.1.0 → patchworks-1.1.1}/docs/guide/merging.md +0 -0
  35. {patchworks-1.1.0 → patchworks-1.1.1}/docs/guide/ome_zarr_napari.md +0 -0
  36. {patchworks-1.1.0 → patchworks-1.1.1}/docs/guide/performance.md +0 -0
  37. {patchworks-1.1.0 → patchworks-1.1.1}/docs/guide/pitfalls.md +0 -0
  38. {patchworks-1.1.0 → patchworks-1.1.1}/docs/guide/skip_empty.md +0 -0
  39. {patchworks-1.1.0 → patchworks-1.1.1}/docs/guide/snakemake.md +0 -0
  40. {patchworks-1.1.0 → patchworks-1.1.1}/docs/guide/tiling.md +0 -0
  41. {patchworks-1.1.0 → patchworks-1.1.1}/docs/index.md +0 -0
  42. {patchworks-1.1.0 → patchworks-1.1.1}/mkdocs.yml +0 -0
  43. {patchworks-1.1.0 → patchworks-1.1.1}/src/patchworks/__init__.py +0 -0
  44. {patchworks-1.1.0 → patchworks-1.1.1}/src/patchworks/_chunks.py +0 -0
  45. {patchworks-1.1.0 → patchworks-1.1.1}/src/patchworks/_cluster.py +0 -0
  46. {patchworks-1.1.0 → patchworks-1.1.1}/src/patchworks/_core.py +0 -0
  47. {patchworks-1.1.0 → patchworks-1.1.1}/src/patchworks/_distributed.py +0 -0
  48. {patchworks-1.1.0 → patchworks-1.1.1}/src/patchworks/_io.py +0 -0
  49. {patchworks-1.1.0 → patchworks-1.1.1}/src/patchworks/_merge.py +0 -0
  50. {patchworks-1.1.0 → patchworks-1.1.1}/src/patchworks/_relabel.py +0 -0
  51. {patchworks-1.1.0 → patchworks-1.1.1}/src/patchworks/_relations.py +0 -0
  52. {patchworks-1.1.0 → patchworks-1.1.1}/src/patchworks/plugins/__init__.py +0 -0
  53. {patchworks-1.1.0 → patchworks-1.1.1}/src/patchworks/plugins/cellpose.py +0 -0
  54. {patchworks-1.1.0 → patchworks-1.1.1}/tests/test_core.py +0 -0
  55. {patchworks-1.1.0 → patchworks-1.1.1}/tests/test_distributed.py +0 -0
  56. {patchworks-1.1.0 → patchworks-1.1.1}/tests/test_napari.py +0 -0
  57. {patchworks-1.1.0 → patchworks-1.1.1}/tests/test_ome_zarr.py +0 -0
  58. {patchworks-1.1.0 → patchworks-1.1.1}/tests/test_relations.py +0 -0
  59. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/README.md +0 -0
  60. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/Snakefile +0 -0
  61. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/config/config.yaml +0 -0
  62. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/config/config_cyto.yaml +0 -0
  63. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/config/config_nuclei.yaml +0 -0
  64. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/config/multi.yaml +0 -0
  65. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/pixi.toml +0 -0
  66. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/profile/slurm/config.yaml +0 -0
  67. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/rules/common.smk +0 -0
  68. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/rules/convert.smk +0 -0
  69. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/rules/merge.smk +0 -0
  70. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/rules/segment.smk +0 -0
  71. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/scripts/_pw.py +0 -0
  72. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/scripts/convert.py +0 -0
  73. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/scripts/fetch_model.py +0 -0
  74. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/scripts/merge.py +0 -0
  75. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/scripts/prepare_tiles.py +0 -0
  76. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/scripts/run_multi.py +0 -0
  77. {patchworks-1.1.0 → patchworks-1.1.1}/workflow/scripts/segment_tile.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: patchworks
3
- Version: 1.1.0
3
+ Version: 1.1.1
4
4
  Summary: Tiled processing of arbitrarily large images with globally consistent labels
5
5
  Project-URL: Homepage, https://github.com/imcf/patchworks
6
6
  Project-URL: Issues, https://github.com/imcf/patchworks/issues
@@ -34,7 +34,7 @@ Requires-Dist: glasbey; extra == 'all'
34
34
  Requires-Dist: imaris-ims-file-reader; extra == 'all'
35
35
  Requires-Dist: ipykernel<7; extra == 'all'
36
36
  Requires-Dist: lxml-html-clean; extra == 'all'
37
- Requires-Dist: napari-dask-ndmeasure>=0.1.0; extra == 'all'
37
+ Requires-Dist: napari-chunked-regionprops>=0.1.0; extra == 'all'
38
38
  Requires-Dist: napari[all]>=0.7.1; extra == 'all'
39
39
  Requires-Dist: numpy<2.5; extra == 'all'
40
40
  Requires-Dist: nvidia-ml-py; extra == 'all'
@@ -75,7 +75,7 @@ Provides-Extra: napari
75
75
  Requires-Dist: glasbey; extra == 'napari'
76
76
  Requires-Dist: ipykernel<7; extra == 'napari'
77
77
  Requires-Dist: lxml-html-clean; extra == 'napari'
78
- Requires-Dist: napari-dask-ndmeasure>=0.1.0; extra == 'napari'
78
+ Requires-Dist: napari-chunked-regionprops>=0.1.0; extra == 'napari'
79
79
  Requires-Dist: napari[all]>=0.7.1; extra == 'napari'
80
80
  Requires-Dist: numpy<2.5; extra == 'napari'
81
81
  Provides-Extra: workflow
@@ -67,16 +67,18 @@ imaris = ["imaris-ims-file-reader"]
67
67
  # - lxml-html-clean: napari's notebook_display imports lxml.html.clean, split
68
68
  # into a separate package in lxml >= 5.2 (else ImportError on Viewer()).
69
69
  # - glasbey: distinct high-contrast label LUTs for view_in_napari.
70
- # - napari-dask-ndmeasure: out-of-core regionprops-style measurements
70
+ # - napari-chunked-regionprops: out-of-core regionprops-style measurements
71
71
  # (area/centroid/intensity stats) for huge Labels layers, straight off
72
- # their backing dask/zarr arrays — the "Measure" dock widget.
72
+ # their backing dask/zarr arrays — the "Measure" dock widget. Formerly
73
+ # napari-dask-ndmeasure; renamed when its engine dropped dask_image.ndmeasure
74
+ # for a chunk-local map/merge that scales with chunk count, not object count.
73
75
  napari = [
74
76
  "napari[all]>=0.7.1",
75
77
  "numpy<2.5",
76
78
  "ipykernel<7",
77
79
  "lxml-html-clean",
78
80
  "glasbey",
79
- "napari-dask-ndmeasure>=0.1.0",
81
+ "napari-chunked-regionprops>=0.1.0",
80
82
  ]
81
83
  # workflow runs the Snakemake pipeline (per-tile SLURM jobs across GPUs).
82
84
  workflow = ["snakemake>=8", "snakemake-executor-plugin-slurm"]
@@ -187,8 +187,8 @@ def _label_hint(path: Union[str, Path]) -> dict[str, Any]:
187
187
  during the merge) — the exact id set is then ``range(1, n_objects +
188
188
  1)`` by construction, with no scan needed. Passed through as a Labels
189
189
  layer's ``metadata`` so a downstream consumer (e.g.
190
- napari-dask-ndmeasure) can use it instead of re-deriving the id set
191
- from the array itself.
190
+ napari-chunked-regionprops) can use it instead of re-deriving the id
191
+ set from the array itself.
192
192
 
193
193
  Parameters
194
194
  ----------
@@ -1083,8 +1083,8 @@ def register_labels(
1083
1083
  ``sequential_labels=True``, which means ``ids == range(1, n_objects
1084
1084
  + 1)`` by construction). When given, written into the label group's
1085
1085
  attrs as ``n_objects``/``sequential_labels`` so a downstream reader
1086
- (e.g. napari-dask-ndmeasure) can use the known id set instead of
1087
- re-deriving it with a full-volume scan of its own.
1086
+ (e.g. napari-chunked-regionprops) can use the known id set instead
1087
+ of re-deriving it with a full-volume scan of its own.
1088
1088
 
1089
1089
  Returns
1090
1090
  -------
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes