All notable changes to this project will be documented in this file.
[IOF 1.8.0] - 2024-09-25
- IOF-614: Added new
display_units option to CSV writer
- IOF-619: Used python stable ABI for PIP package distribution
- IOF-627: Added support for Ubuntu 24.04
- IOF-629: Added new SHA method for validation tool
[IOF 1.7.1] - 2024-09-18
- IOF-637: Fixed support of DS tags in DICOM reader
- IOF-638: Added support for Japanese encoding in Dicom metadata
[IOF 1.7.0] - 2024-06-20
- IOF-602: Fixed several memory leaks and errors
- IOF-589: Support of tiling for TIFF writer Fixed in TIFF reader for binary tiled images
- IOF-603: TIFF extractor now extracts calibration from Phenom TIFF files
- IOF-593: AmiraMesh writer added
- IOF-459: Added missing information for VISILOG plugin + some refactor in plugin chapter
- IOF-616: Fixed DICOM reader for files with special characters. This is a revert on a previous fix which reestablish the same issue on PNG files.
- IOF-609: Added possibility to store stacks as a list of files
- IOF-599: Added support Ubuntu 22.04
[IOF 1.6.1] - 2024-05-21
- IOF-590: Fix issue in Ldm writer when an existing file is overwritten
- IOF-605: Fix problem when trying to open PNG file with special character
- IOF-610: Fix broken links in user guide
[IOF 1.6.0] - 2024-03-27
- IOF-557: Added annotations on Python methods
- IOF-575: Improved StackReader to shorten loading time and increase control of opened files
- IOF-568: Added support of Python 3.12
- IOF-577: Improved handling of .NET exceptions
- IOF-578: Added MSVC17 support
- IOF-579: Fixed OME-TIFF reader when UUID is not present Upgraded TIFF to v4.6.0 Upgraded Zlib to 1.3.1 Upgraded TurboJpeg to 3.0.2 Upgraded OpenJpeg to 2.5.2 Upgraded GDCM to 3.0.23
- IOF-597: Fixed bug in DICOM metadata parsing
- IOF-600: Remove the dependency of PIP package to the stub package
[IOF 1.5.2] - 2024-03-12
- IOF-581: CSV reader can now open files with final separator on lines, and various data types by column
- IOF-580: Make CSV extractor accept files exported from Pandas
- IOF-587: Fix bug in Ldm Writer to support LodImage as input
- IOF-588: Fix bug in setOption of LdmWriter when setting tileSize
- IOF-586: Support units in Tiff Writer
- IOF-584: Avoided warnings in Python when setting options for the writers
[IOF 1.5.1] - 2024-02-16
- IOF-569: Support for TIFF binary images writing
- IOF-576: Add Visilog plugin to nuget package
- IOF-570: Fix metadata decoding in Dicom extractor (exponent values)
[IOF 1.5.0] - 2024-01-15
- IOF-548: Use iolink::UidGenerator in IOFormat to give an Uuid to each extractor
- IOF-560: Upgrade IOFormat configuration file for plugin selection
- IOF-563: Integrate IOLink 1.8
- IOF-553: Fix unicode metadata handling in PNG plugin
[IOF 1.4.2] - 2023-12-20
- IOF-554: PNG metadata are now written in iTXT chunk to support UTF8 encoding.
- IOF-556: Reference manual now available in Python documentation
- IOF-544: Add support for encoding of DICOM metadata strings
- IOF-363: Fix error in Python documentation
- IOF-566: Options now taken into account in WebP writer
- IOF-543: Fix DICOM float metadata extraction
- IOF-543: Fix IOREF writing with no image data
[IOF 1.4.1] - 2023-11-17
- IOF-524: Fixed a bug when opening a path with unicode characters
- IOF-535: Fixed generation of user guide. 'Configuration' page is now available.
- IOF-537: Fixed the catch of several exceptions in Python
- IOF-545: Fixed error with DICOM metadata
[IOF 1.4.0] - 2023-09-26
- IOF-546: fix version of DLL in NuGet package
- IOF-536: Views created with StackReader now support view origin extension
- IOF-536: Integration of IOL 1.7.0
- IOF-522: Add post-treatment on decimal and integer metadata encoded as string
- IOF-520: Legacy and new Tiff writer can store Orientation. Reader can extract Orientation as Metadata.
- IOF-515: add Debian 11 and 12 NuGet testing
- IOF-534: add support for RHEL8, only in C++
- IOF-495: add support for Python 3.11, remove support for Python 3.7 on Windows
- IOF-460: ViewOrigin extension is available for all extractors
- IOF-507: add support for EXIF metadata in TIFF reader and writer
- IOF-502: drop support for Ubuntu 18.04
[IOF 1.3.1] - 2023-09-12
- IOF-516: calibration (origin, spacing) is now written in MRC
- IOF-526: LABEL and BINARY interpretation now supported by TIFF writer
- IOF-528: Fix jpeg reader when reading a whole line
- IOF-530: add csv plugin to NuGet package
- IOF-511: fix a bug while reading TIFF files with custom tags.
- IOF-525: Removed error when RGB images are written in JP2
- IOF-492: Fix error in LDM format for 'no compression' case.
[IOF 1.3.0] - 2023-06-26
- IOF-480: Update IOLink required version to 1.5.1 in Python
- IOF-480: Fix unicode metadata extraction in TIFF in Python
- IOF-499: Fix MRC calibration extraction
- IOF-485: Extract calibration from FeiXmlMetadata tag in Tiff format
- IOF-493: Add support for FEI metadata writing in TIFF
- IOF-487: Extract orientation from DICOM files
- IOF-484: Register FEIMetadata tags in TIFF
- IOF-481: Update the TIFF writer
- IOF-517: add support for the Sample Format extension in TIFF writer
[IOF 1.2.0] - 2023-05-15
- IOF-462: Make package conan forward compatible
- IOF-457: Remove support for RHEL8
- IOF-474: Drop support for MSVC14
- IOF-461: Add support for dotnet 6.0
- IOF-432: Added writer for WebP format
- IOF-448: Fix character encoding problem in PNG metadata
- IOF-490: Update boost package to drop ICU dependency
- IOF-477: Fix exception management for StackReader methods
- IOF-469: Move to C++14 standard
[IOF 1.1.1] - 2023-03-28
- IOF-463: Warning instead of exception when TIFF color space is not supported.
- IOF-476: Fix MRC metadata fullScanFov name in tree
[IOF 1.1] - 2023-02-08
- IOF-427: Upgrade Json (3.11.2), Yaml (0.7.0), GDCM (3.0.19) and WebP (1.2.4) third parties
- IOF-423: Plugins compiled with warning as errors
- IOF-425: Add support of Python 3.8, 3.9, 3.10 for both Ubuntu 18.04 and 20.04
- IOF-400: OME-TIFF format reading support is now available in Tiff plugin
- IOF-451: Upgrade boost to v1.80.0
- IOF-452: Fix issue in Tiff Extractor concerning YCbCr downsampled images
- IOF-441: PNG writer supports metadata writing
- IOF-447: IOFormat config file made optional and renamed into ioformat_config.yml
- IOF-443: Upgrade third parties:
- libpng updated to 1.6.39
- libjpeg-turbo updated to 2.1.4
- tiff updated to 4.5.0
- openjpeg updated to 2.5.0
- zlib updated to 1.2.13
- spdlog updated to 1.11.0
- fmt updated to 9.1.0
- IOF-437: Add support for CSV writing
- IOF-453: Fix issue in OpenJpeg extractor concerning sub-sampled components
- IOF-471: IOLink updated to 1.4 for Python
[IOF 1.0.1] - 2023-01-30
- IOF-436: Better error message when writer does not exist for given format to write
- IOF-429: Fix plugin loggers initialization
- IOF-455: Add exception when LDM tiles can't be read
- IOF-453: Fix issue in OpenJpeg extractor concerning sub-sampled components
[IOF 1.0] - 2022-11-29
- IOF-398: Fix IOlink compatibility
- IOF-389: Add support for MSVC 16 2019
- IOF-383: New extractor for CSV format
- IOF-220: Migrate to dotnet 3.1
- IOF-278: Support for paletted PNG images
- IOF-397: TIFF plugin fallback for OME-TIFF files
- IOF-396: Modification of configuration file mechanism
- IOF-431: Upgrade to IOLink 1.3.0
- IOF-412: Fix .NET documentation publishing
- IOF-419: Remove ImAccess plugin from distribution
- IOF-412: Fix .NET documentation publishing
- IOF-417: Copyright is added to all public headers in Conan package
- IOF-419: Remove ImAccess plugin from distribution
- IOF-422: Added information file for thirdparties
- IOF-438: Minimal IOLink Python version set to 1.3.1
- IOF-430: Fix crash when writing a view into a non-existing path
- IOF-413: Miscellaneous fixes in user guide
- IOF-420: Review and rework of documentation
[IOF 0.34] - 2022-09-07
- IOF-347: readImage method can now handle multi-resolution images
- IOF-322: LDM plugin - histogram is computed and written
- IOF-357: remove support for RHEL7 platform
- IOF-327: LDM - compute and export Min and Max value from input DataSet
- IOF-354: Export .NET XML file into nuget to deliver .NET documentation
- IOF-372: fix dynamic library loading in Python package
- IOF-368: Fix problem of critical error displayed at init in Python
- IOF-380: LDM extractor implements TilingInfo extension
- IOF-377: PNG extractor now reads iTXt, zTXt, and tEXt metadata
- IOF-376: enable StackReader method to handle the case where there are more than 512 files in a stack
- IOF-381: TIFF extractor now provides TilingInfoExtension
- IOF-390: Fix in AmiraMesh extractor to handle corrupted file
- IOF-290: add support for Python 3.9 and 3.10 on Windows
- IOF-392: fix PNG data reading
[IOF 0.33] - 2022-04-29
- IOF-352: Apply API review changes
- IOF-348: Fix in AmiraMesh plugin ('data section not found')
- IOF-339: Add a new tool to generate reference images
- IOF-358: Fixes in IORef tests
- IOF-321: Add support for calibration in LDM writer
- IOF-309: Fixes in web documentation
- IOF-316: Methods from global namespace are now visible in refman
- IOF-353: Extract histogram from LDM format
[IOF 0.32] - 2022-04-15
- IOF-323: LDM Extractor uses input storage to retrieve .dat file
- IOF-320: LDM Extractor extracts origin and spacing properties
- IOF-326: Add a new getView variant to force a format when opening a file
- IOF-329: New plugin for reference image format
- IOF-338: Fix in Tiff extractor when Writable DataAccess as input
- IOF-349: Manage compatibility in Python and .NET by defining a minimum version
- IOF-360: upgrade to IOLink 1.1.0
[IOF 0.31] - 2022-01-26
- IOF-300: Manage the case where a DICOM file does not contain an image (only metadata)
- IOF-306: AmiraMesh plugin now supports multiple data-sections
- IOF-307: AmiraMesh plugin now supports special characters in metadata
[IOF 0.30] - 2021-12-30
- IOF-285: migrate factories to global space
- Fix the default unit in Visilog plugin
[IOF 0.29] - 2021-11-23
- IOF-281: new factories to handle list files
- IOF-255: Import Visilog extractor and writer from ImageDev product
- Upgrade IOLink to 0.29.0
[IOF 0.28] - 2021-10-14
- IOF-280: new API to load a stack of file following a pattern
- IOF-296: Add multiThreadStrategy option to TiffWriter to explicitly controle which strategy to use.
- IOF-175: Add LDM Writer
[IOF 0.27] - 2021-09-16
- IOF-246: new Extractor plugin for DM3 and DM4 support
- IOF-266: fix segfault on Linux when no plugins are loaded
- IOF-268: ImAccessPlugin and GdcmPlugin now handle .dc3 extension
- IOF-260: extract units info for TIFF, MRC, and DICOM plugins
- IOF-277: trying to get the format for an unregistered extension now throw an exception
- IOF-272: handle palette with ImageAccess extractor
- Update IOLink to 0.27
- IOF-270: add support for TIFF files with "separated" interpretation
- IOF-263: add method to force IOFormat initialization
- IOF-269: add support for TIFF binary paletted images
[IOF 0.26.1] - 2021-08-20
- IOF-271: Fix custom EER Tags are not written by TiffWriter
[IOF 0.26] - 2021-07-29
- IOF-261: Tiff writer optimisation and support signed int types.
- Upgrade IOLink to 0.26.0
[IOF 0.25] - 2021-07-01
- IOF-242: add support for Ubuntu 20.04
- IOF-254: fix the page number tag of the TIFF writer
[IOF 0.24] - 2021-06-04
- IOF-197: Add AmiraMesh extractor
- IOF-252: Support of AmiraMesh compressed files
- IOF-256: Add FEI2 format for MrcWriter
- Fix extracted bitmask4 for FEI2 headers
- IOF-250: dll information is available through new API
[IOF 0.23] - 2021-04-29
- IOF-224: Add WebP extractor
- IOF-245: Fix error in MRC Writer when writing single-slice-file
- Fix in WebP plugin to handle access to remote files
- Improvement in Bmp plugin to get a better description in case of EasyBmp error
- IOF-239: Improvements in user guide for the "plugin system" chapter
- Added a page to indicate the IOLink and IOPLuginAPI version compatible with current IOFormat version
__version__ variable in Python is now available to give IOFormat version (and IOLink/IOPluginAPI compatible versions)
- IOF-243: add support for Python 3.7 and 3.8 on Windows
- IOF-223: new GIF extractor
- Fix error in MRC writer when writing metadata
- IOF-244: RHEL8 platform added to NuGet package
- Make exporting methods more generic
- OpenJPEG plugin now support RandomAccess instances as input
- IOF-185: new JPEG2000 writer bases on OpenJPEG
[IOF 0.22] - 2021-04-02
- IOF-211: reactivate plugins logging
- IOF-219: remove OSX support
- IOF-202: Add unit test for .NET FrameWork v4.6.1
- IOF-233: Tiff Reader optimization (new behavior)
- IOF-240: Writers can now accept more kind of input view types (see API_CHANGELOG.md for details)
- Fix in Tiff Writer for case 'path file'
- IOF-221: New plugin OpenJPEG for reading JPEG2000 images
- Upgrade IOLink to 0.22.1
- IOF-222: New plugin EasyBMP for reading BMP images
[IOF 0.21] - 2021-03-04
- IOF-170: Add support for RHEL8
- Add LDM plugin in Nuget package
- IOF-206: update IOFormat code and API according to new IOLink Storage API
- IOF-200: Fixes in user guide and additional information about custom plugin creation
[IOF 0.20] - 2021-02-09
- IOF-188: add support for MRC FEI2 extended header
- IOF-198: use new plugin API (0.5.0)
- Upgrade IOLink to 0.20.1
- IOF-208: Fix overflow case in Tiff writer
[IOF 0.19] - 2021-01-15
- IOF-186: add user guide for Python
- IOF-162: .NET is delivered in one nuget for all supported platforms
- IOF-179: Added DLL details for plugins
- IOF-203:
- dlls are copied for .NET FrameWork
- crash in IOFormat is avoided when ioplugins does not exist
- exception is caught when a plugin cannot be loaded
[IOF 0.18] - 2020-12-10
- Write MRC frame by frame to save memory
- IOF-182: user guide improvement concerning plugin implementation
- IOF-192: DICOM PixelData tag is now well filtered
- IOF-180: Python 3.6 support
- IOF-181: Python naming conventions
- IOF-169: add a reproducer for NET StreamStorage wrapping problems
- upgrade IOLink to 0.18.0
- IOF-193: fixed handling of zero resolution TIFF
- IOF-194: fix support for RGBA TIFF through ExtraSamples tag
[IOF 0.17] - 2020-11-17
- IOF-156 Add support of GZIP in the LDM Extractor
- IOF-184: capture C++ exceptions to raise a python error and avoid console crash
- Fix an issue that caused assert errors in debug when using PNG and JPEG extractors
[IOF 0.16] - 2020-10-15
- IOF-173: propagate C++ exception to .NET layer
- Add metadata in LDMExtrator
- IOF-164: Clarify logger use
[IOF 0.15] - 2020-09-17
- Fix "axisMapping" MRC metadata missing in reader/writer
- IOF-127: Tiff extractor now handles all standard tags
- IOF-131: support for paletted TIFF
- IOF-136: Make ChangeLog and API ChangeLog public in user guide
- Fix crash in JPEG reader when reading image full width.
- IOF-167: support some Thermofisher TIFF custom tags
- IOF-163: IOFormat LogLevel are now dispatched to plugins loggers
- IOF-133: LDM Extractor now works with streams
- IOF-153: extension mappings are now case insensitive
- IOF-128: support for TIFF planar images
- IOF-121: PNG writer accept planar images
[IOF 0.14] - 2020-08-20
- IOF-157: Removed RawWriterFactory
- IOF-123: User guide improvement - Added plugins format acceptance.
- IOF-150: Fix crash when encoding ImageView using alpha in JPEG.
- IOF-138: YCbCR support for TIFF
- IOF-146: Added native JPEG extractor
- IOF-148: support for sample data format TIFF extension
[IOF 0.13] - 2020-07-23
- IOF-147: Add an helper for conversion from extension into format
- IOF-139: Jpeg and PNG writers can now be configured with specific options Writer Factories are removed (except RawWriterFactory)
- IOF-140: Jpeg writing is now done by chunks into stream
- IOF-135: rework logging system to match IOLink's one
- IOF-137: API ChangeLog file creation
- IOF-117: Add basic LDM support through a new plugin
- IOF-141: new APIs to create writers
[IOF 0.12] - 2020-06-18
- Fix IOF-125: Crash while opening some TIFF files
- IOF-79 : Add tiled TIFF support
[IOF 0.11] - 2020-05-25
- Fix IOF-115: JPEG extension not handled by ImageAccess plugin
- Fix IOF-119: Some log still appears even when LogLevel is set to OFF