Skip to content

Commit c4789ce

Browse files
authored
Add allow_overwrite parameter to Layer.downsample() (#614)
* add only_setup_mag(s) parameter to downsample methods to allow parallel downsampling without writing outdated datasource-properties.json * update changelog * add test * add allow_overwrite parameter to Layer.downsample() * update changelog
1 parent d65f440 commit c4789ce

File tree

3 files changed

+12
-0
lines changed

3 files changed

+12
-0
lines changed

webknossos/Changelog.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@ For upgrade instructions, please check the respective *Breaking Changes* section
1212
### Breaking Changes
1313

1414
### Added
15+
- Added `only_setup_mag` parameter to downsample-related methods in `Layer`. This parameter allows creating output magnifications before parallelizing downsampling invocations to avoid outdated writes to datasource-properties.json. [#610](https://github.com/scalableminds/webknossos-libs/pull/610)
16+
- Added `Task.create()` method to create tasks by prodiving a dataset name, location, and rotation. [#605](https://github.com/scalableminds/webknossos-libs/pull/605)
17+
- Added `allow_overwrite` parameter to `Layer.downsample()`. [#614](https://github.com/scalableminds/webknossos-libs/pull/614)
1518

1619
### Changed
1720

webknossos/webknossos/dataset/layer.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -515,6 +515,7 @@ def downsample(
515515
buffer_edge_len: Optional[int] = None,
516516
force_sampling_scheme: bool = False,
517517
args: Optional[Namespace] = None,
518+
allow_overwrite: bool = False,
518519
only_setup_mags: bool = False,
519520
) -> None:
520521
"""
@@ -603,6 +604,7 @@ def downsample(
603604
compress=compress,
604605
buffer_edge_len=buffer_edge_len,
605606
args=args,
607+
allow_overwrite=allow_overwrite,
606608
only_setup_mag=only_setup_mags,
607609
)
608610

wkcuber/tests/test_downsampling.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -364,6 +364,13 @@ def test_downsample_mag_list_with_only_setup_mags() -> None:
364364
layer.get_mag(m).read((0, 0, 0), (10, 20, 30)) == 0
365365
), "The mags should be empty."
366366

367+
layer.downsample_mag_list(
368+
from_mag=Mag(1), target_mags=target_mags, allow_overwrite=True
369+
)
370+
371+
for m in target_mags:
372+
assert m in layer.mags
373+
367374

368375
def test_downsample_with_invalid_mag_list() -> None:
369376
ds = Dataset(TESTOUTPUT_DIR / "downsample_mag_list", scale=(1, 1, 2))

0 commit comments

Comments
 (0)