You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* make Zarr3 default DataFormat
* compress=True
* remove deprecations
* test fixes
* down to 16
* changelog
* test fixes
* fix /test_dataset_add_remote_mag_and_layer.py
* stuff
* ci
* ci
* error on fork
* ci
* ci
* less alignment checks
* allow_unaligned
* ci.yml aktualisieren
* ci testing
* ci
* sequential tests
* ci
* ci
* ci
* ci
* parameterize python for kubernetes dockerfile
* test
* change defaults
* mirrored test images
* mp logging
* mp debugging
* debug
* debug
* debug
* debugging
* pyproject.toml
* py3.12
* debugging
* wip
* all python versions
* revert debug changes in cluster_tools
* fixes
* larger ci runner
* default ci runner
* rm pytest-timeout
* test
* Revert "rm pytest-timeout"
This reverts commit 6bc2185.
* Revert "test"
This reverts commit 8d57971.
* ci
* ci
* ci
* ci
* ci
* ci
* properly implement SequentialExecutor
* ci
* changelog
* allow_unaligned wip
* ci
* wip
* fix tests
* fix test
* examples
* longer sleep in slurm test
* format
* longer sleep in slurm test
* Apply suggestions from code review
Co-authored-by: Philipp Otto <[email protected]>
* add methods
* more robust patch
* comment
* derive_nd_bounding_box_from_shape
* refactor Dataset.open to not require an additional IOop
* cassettes
* format
* lint
* docs
* MagLike + mag in write_layer
* doc
* docstring
* change default data_format in cli
* docs
* pr feedback
---------
Co-authored-by: Philipp Otto <[email protected]>
- Changed writing behavior. There is a new argument `allow_resize` for `MagView.write`, which defaults to `False`. If set to `True`, the bounding box of the underlying `Layer` will be resized to fit the to-be-written data. That largely mirrors the previous behavior. However, it is not safe for concurrent operations, so it is disabled by default. It is recommended to set the `Layer.bounding_box` to the desired size before writing. Additionally, by default, writes need to be aligned with the underlying shard grid to guard against concurrency issues and avoid performance footguns. There is a new argument `allow_unaligned`, which defaults to `False`. If set to `True`, the check for shard alignment is skipped.
17
+
- Removed deprecated functions, properties and arguments:
18
+
- Functions:
19
+
-`open_annotation`, use `Annotation.load()` instead
20
+
-`Dataset.get_color_layer`, use `Dataset.get_color_layers()` instead
21
+
-`Dataset.get_segmentation_layer`, use `Dataset.get_segmentation_layers()` instead
22
+
-`Dataset.create`, use `Dataset.__init__` instead
23
+
-`Dataset.get_or_create`, use `Dataset.__init__` with `exist_ok=True` instead
24
+
-`Layer.get_best_mag`, use `Layer.get_finest_mag` instead
25
+
-`View.read_bbox`, use `read` with `relative_bounding_box` or `absolute_bounding_box` instead
26
+
-`View.__enter__` and `View.__exit__`, context managers are not needed anymore
27
+
-`open_nml`, use `Skeleton.load()` instead
28
+
-`Group.add_graph`, use `Group.add_tree` instead
29
+
-`Group.get_max_graph_id`, use `Group.get_max_tree_id` instead
30
+
-`Group.flattened_graphs`, use `Group.flattened_trees` instead
31
+
-`Group.get_graph_by_id`, use `Group.get_tree_by_id` instead
32
+
-`Skeleton.from_path`, use `Skeleton.load()` instead
33
+
-`Skeleton.write`, use `Skeleton.save()` instead
34
+
- Properties:
35
+
-`Annotation.username`, use `Annotation.owner_name` instead
36
+
-`Annotation.scale`, use `Annotation.voxel_size` instead
37
+
-`Annotation.user_id`, use `Annotation.owner_id` instead
38
+
-`ArrayInfo.shard_size`, use `ArrayInfo.shard_shape` instead
39
+
-`Dataset.scale`, use `Dataset.voxel_size` instead
40
+
-`MagView.global_offset`, always `(0, 0, 0, ...)`
41
+
-`MagView.size`, use `mag_view.bounding_box.in_mag(mag_view.mag).bottomright`
42
+
-`MagViewProperties.resolution`, use `MagViewProperties.mag` instead
43
+
-`LayerProperties.resolutions`, use `LayerProperties.mags` instead
44
+
-`View.header`, use `View.info` instead
45
+
-`View.global_offset`, use `view.bounding_box.in_mag(view.mag).topleft` instead
46
+
-`View.size`, use `view.bounding_box.in_mag(view.mag).size` instead
47
+
-`Group.graphs`, use `Group.trees`
48
+
-`Skeleton.scale`, use `Skeleton.voxel_size` instead
49
+
- Arguments:
50
+
-`annotation_type` in `Annotation.download`, not needed anymore
51
+
-`annotation_type` in `Annotation.open_as_remote_dataset`, not needed anymore
52
+
-`size` in `BufferedSliceReader.__init__`, use `relative_bounding_box` or `absolute_bounding_box` instead
53
+
-`offset` in `BufferedSliceReader.__init__`, use `relative_bounding_box` or `absolute_bounding_box` instead
54
+
-`offset` in `BufferedSliceWriter.__init__`, use `relative_bounding_box` or `absolute_bounding_box` instead
55
+
-`json_update_allowed` in `BufferedSliceWriter.__init__`, not supported anymore
56
+
-`offset` in `BufferedSliceWriter.reset_offset`, use `relative_offset` or `absolute_offset` instead
57
+
-`scale` in `Dataset.__init__`, use `voxel_size` or `voxel_size_with_unit` instead
58
+
-`dtype` in `Dataset.add_layer`, use `dtype_per_channel` instead
59
+
-`dtype` in `Dataset.get_or_add_layer`, use `dtype_per_channel` instead
60
+
-`chunk_size` in `Dataset.add_layer_from_images`, use `chunk_shape` instead
61
+
-`chunk_size` in `Dataset.copy_dataset`, use `chunk_shape` instead
62
+
-`block_len` in `Dataset.copy_dataset`, use `chunk_shape` instead
63
+
-`file_len` in `Dataset.copy_dataset`, use `chunks_per_shard` instead
64
+
-`args` in `Dataset.copy_dataset`, use `executor` instead
65
+
-`chunk_size` in `Layer.add_mag`, use `chunk_shape` instead
66
+
-`block_len` in `Layer.add_mag`, use `chunk_shape` instead
67
+
-`file_len` in `Layer.add_mag`, use `chunks_per_shard` instead
68
+
-`chunk_size` in `Layer.get_or_add_mag`, use `chunk_shape` instead
69
+
-`block_len` in `Layer.get_or_add_mag`, use `chunk_shape` instead
70
+
-`file_len` in `Layer.get_or_add_mag`, use `chunks_per_shard` instead
71
+
-`args` in `Layer.downsample`, use `executor` instead
72
+
-`args` in `Layer.downsample_mag`, use `executor` instead
73
+
-`args` in `Layer.redownsample`, use `executor` instead
74
+
-`args` in `Layer.downsample_mag_list`, use `executor` instead
75
+
-`args` in `Layer.downsample_mag_list`, use `executor` instead
76
+
-`buffer_edge_len` in `Layer.upsample`, use `buffer_shape` instead
77
+
-`args` in `Layer.upsample`, use `executor` instead
78
+
-`min_mag` in `Layer.upsample`, use `finest_mag` instead
79
+
-`offset` in `MagView.write`, use `relative_offset`, `absolute_offset`, `relative_bounding_box`, or `absolute_bounding_box` instead
80
+
-`json_update_allowed` in `MagView.write`, use `allow_resize` instead
81
+
-`args` in `MagView.compress`, use `executor` instead
82
+
-`offset` in `View.write`, use `relative_offset`, `absolute_offset`, `relative_bounding_box`, or `absolute_bounding_box` instead
83
+
-`json_update_allowed` in `View.write`, not supported anymore
84
+
-`offset` in `View.read`, use `relative_offset`, `absolute_offset`, `relative_bounding_box`, or `absolute_bounding_box` instead
85
+
-`offset` in `View.get_view`, use `relative_offset`, `absolute_offset`, `relative_bounding_box`, or `absolute_bounding_box` instead
86
+
-`offset` in `View.get_buffered_slice_writer`, use `relative_offset`, `absolute_offset`, `relative_bounding_box`, or `absolute_bounding_box` instead
87
+
-`offset` in `View.get_buffered_slice_reader`, use `relative_bounding_box`, or `absolute_bounding_box` instead
88
+
-`size` in `View.get_buffered_slice_reader`, use `relative_bounding_box`, or `absolute_bounding_box` instead
89
+
-`chunk_size` in `View.for_each_chunk`, use `chunk_shape` instead
90
+
-`source_chunk_size` in `View.for_zipped_chunks`, use `source_chunk_shape` instead
91
+
-`target_chunk_size` in `View.for_zipped_chunks`, use `target_chunk_shape` instead
92
+
-`args` in `View.content_is_equal`, use `executor` instead
93
+
- Classes:
94
+
-`Graph`, use `Tree` instead
95
+
- Changed defaults:
96
+
-`exist_ok` in `Dataset.__init__` is now `False`
97
+
-`compress` in `Dataset.from_images` is now `True`
98
+
-`compress` in `Dataset.add_layer_from_images` is now `True`
99
+
-`DEFAULT_DATA_FORMAT` is now `Zarr3`
100
+
-`compress` in `Layer.add_mag` is now `True`
101
+
-`compress` in `Layer.upsample` is now `True`
102
+
-`buffer_size` in `View.get_buffered_slice_reader` is now computed from the shard shape
103
+
-`buffer_size` in `View.get_buffered_slice_writer` is now computed from the shard shape
104
+
- Added arguments:
105
+
-`allow_resize` in `MagView.write` with default `False`
106
+
-`allow_unaligned` in `MagView.write` with default `False`
0 commit comments