Skip to content

Conversation

@mat10d
Copy link
Collaborator

@mat10d mat10d commented Feb 5, 2026

Description

Thank you for your contribution to Brieflow!
Please succinctly summarize your proposed change.
What motivated you to make this change?

Please also link to any relevant issues that your code is associated with.

What is the nature of your change?

  • Bug fix (fixes an issue).
  • Enhancement (adds functionality).
  • Breaking change (fix or feature that would cause existing functionality to not work as expected).
  • This change requires a documentation update.

Checklist

Please ensure that all boxes are checked before indicating that a pull request is ready for review.

  • My code follows the conventions of this project.
  • I have updated the pyproject.toml to reflect the change as designated by semantic versioning.
  • I have checked linting and formatting with ruff check and ruff format.
  • I have performed a self-review of my own code.
  • I have commented my code, particularly in hard-to-understand areas.
  • I have made corresponding changes to the documentation.
  • My changes generate no new warnings.
  • I have deleted all non-relevant text in this pull request template.

petercla0119 and others added 30 commits January 30, 2026 10:01
- Updated `write_image_omezarr` and `write_labels_omezarr` functions to accept pixel sizes as float, tuple, or dictionary, allowing for more flexible input formats.
- Introduced `_parse_pixel_sizes` helper function to standardize pixel size extraction and validation.
- Enhanced metadata extraction in `extract_metadata_tile_nd2` and `extract_metadata_well_nd2` to include pixel size, objective magnification, zoom magnification, and binning information.
- Updated `export_omezarr_image` script to read image data from TIFF or raw formats, improving compatibility with different data sources.
- Added warnings for potential inconsistencies in pixel size calibration.
- Introduced `conftest.py` to ensure the repository root is included in `sys.path` for test imports.
- Updated `test_preprocess.py` to assert required columns in metadata instead of exact counts.
- Modified `test_omezarr_exports.py` to check for any Zarr files in the output directory.
- Enhanced `write_image_omezarr` to accept new parameters: `coarsening_factor`, `max_levels`, and `is_label`, improving flexibility in image writing.
- Added error handling for `max_levels` and `coarsening_factor` to ensure valid values.
- Updated metadata handling in `write_image_omezarr` to accommodate label images and ensure proper storage of pixel sizes.
omezarr_writer.py moved under lib/shared
resolves issue with failed labels import into napari
…ss_zarr_v4

Cherry-picked from 1161474 on 79f1eea_preprocess_zarr_v4.
- Add dynamic key selection (CONVERT_SBS_KEY/CONVERT_PHENOTYPE_KEY) based on OME_ZARR_ENABLED
- IC fields respect IC_EXT (zarr vs tiff) based on config
- Downstream rules (sbs.smk, phenotype.smk) use dynamic keys for preprocess inputs
- Add image_to_omezarr.py script that uses convert_to_array + write_image_omezarr
- Add convert_sbs_omezarr and convert_phenotype_omezarr rules
- Update CONVERT_*_KEY selection to use _omezarr variants when USE_OME_ZARR=True
- This allows direct ND2→Zarr conversion, bypassing TIFF intermediates entirely
- Added integration tests for Zarr preprocessing functionality, ensuring nd2_to_zarr conversion produces outputs equivalent to TIFF conversion.
- Updated pytest markers to include integration tests.
- Modified existing tests to prioritize Zarr format over TIFF where applicable.
- Introduced new rules for Zarr conversion in the Snakemake workflow, allowing for flexible output formats based on configuration.
- Implemented a script for direct ND2 to standard Zarr conversion, streamlining the preprocessing pipeline.
@review-notebook-app
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants