diff --git a/CHANGELOG.md b/CHANGELOG.md index 3f64056..3a45fea 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,9 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [2.1.2] - 2021-01-21 +- Prevent crash on corrupted MCD acquisitions in order to keep valid ones + ## [2.1.1] - 2021-01-20 - Update `xtiff` package - FIX: Wrong ROI coordinates for new Fluidigm software versions #104 diff --git a/README.md b/README.md index fd898ef..ed8ebf8 100755 --- a/README.md +++ b/README.md @@ -32,7 +32,7 @@ Version 1.x documentation (deprecated): https://imctools.readthedocs.io Preferable way to install `imctools` is via official PyPI registry. Please define package version explicitly in order to avoid incompatibilities between v1.x and v2.x versions: ``` -pip install imctools==2.1.1 +pip install imctools==2.1.2 ``` In old IMC segmentation pipelines versions 1.x should be used! ``` diff --git a/docs/index.html b/docs/index.html index 8d95717..a3ab055 100644 --- a/docs/index.html +++ b/docs/index.html @@ -49,7 +49,7 @@
Preferable way to install imctools
is via official PyPI registry. Please define package version explicitly in order to avoid incompatibilities between v1.x and v2.x versions:
pip install imctools==2.1.1
+pip install imctools==2.1.2
In old IMC segmentation pipelines versions 1.x should be used!
pip install imctools==1.0.8
diff --git a/docs/io/mcd/mcdparser.html b/docs/io/mcd/mcdparser.html
index ef91280..5624b69 100644
--- a/docs/io/mcd/mcdparser.html
+++ b/docs/io/mcd/mcdparser.html
@@ -89,11 +89,11 @@ Module imctools.io.mcd.mcdparser
if acquisition is None:
return None
data = self._get_acquisition_raw_data(acquisition)
- if data is not None:
+ try:
image_data = reshape_long_2_cyx(data, is_sorted=True)
# Drop first three channels X, Y, Z
image_data = image_data[3:]
- else:
+ except:
image_data = None
acquisition.is_valid = False
logger.warning(f"Error reading MCD acquisition: {acquisition_id}")
@@ -393,11 +393,11 @@ Classes
if acquisition is None:
return None
data = self._get_acquisition_raw_data(acquisition)
- if data is not None:
+ try:
image_data = reshape_long_2_cyx(data, is_sorted=True)
# Drop first three channels X, Y, Z
image_data = image_data[3:]
- else:
+ except:
image_data = None
acquisition.is_valid = False
logger.warning(f"Error reading MCD acquisition: {acquisition_id}")
@@ -693,11 +693,11 @@ Methods
if acquisition is None:
return None
data = self._get_acquisition_raw_data(acquisition)
- if data is not None:
+ try:
image_data = reshape_long_2_cyx(data, is_sorted=True)
# Drop first three channels X, Y, Z
image_data = image_data[3:]
- else:
+ except:
image_data = None
acquisition.is_valid = False
logger.warning(f"Error reading MCD acquisition: {acquisition_id}")
diff --git a/imctools/io/mcd/mcdparser.py b/imctools/io/mcd/mcdparser.py
index 7d2cfc6..8e6c4e0 100644
--- a/imctools/io/mcd/mcdparser.py
+++ b/imctools/io/mcd/mcdparser.py
@@ -61,11 +61,11 @@ def get_acquisition_data(self, acquisition_id: int):
if acquisition is None:
return None
data = self._get_acquisition_raw_data(acquisition)
- if data is not None:
+ try:
image_data = reshape_long_2_cyx(data, is_sorted=True)
# Drop first three channels X, Y, Z
image_data = image_data[3:]
- else:
+ except:
image_data = None
acquisition.is_valid = False
logger.warning(f"Error reading MCD acquisition: {acquisition_id}")
diff --git a/pyproject.toml b/pyproject.toml
index b69ea33..a786249 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api"
[tool.poetry]
name = "imctools"
-version = "2.1.1"
+version = "2.1.2"
description = "Tools to handle Fluidigm IMC data"
license = "MIT"
authors = ["Vito Zanotelli ", "Anton Rau "]
diff --git a/setup.cfg b/setup.cfg
index 58cce3a..b010eab 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,5 +1,5 @@
[bumpversion]
-current_version = 2.1.1
+current_version = 2.1.2
commit = False
tag = False