IOLink  IOL_v1.6.1_release
CHANGELOG

All notable changes to this project will be documented in this file.

[IOL 1.6.1] - 2023-08-31

  • IOL-741: throw exception when initializing vectors with the wrong number of elements
  • IOL-759: Fix adapter flip for small regions
  • IOL-751: better error message when a file cannot be opened
  • IOL-746: better error message when giving an ImageView with the wrong capabilities to NumPy interoperability.

[IOL 1.6.0] - 2023-06-26

  • IOL-720: Add precision in API documentation to restrict MEMORY_ACCESS capability usage (now reserved for CPU memory only)
  • IOL-734: Fix missing ViewOrigin extension initialization for DataFrameView
  • IOL-728: Add extension to View so as to retrieve data origins
  • IOL-629: Add string representation for DataFrameView, and also html in Python only.

[IOL 1.5.1] - 2023-06-14

  • IOL-738: Relax errors when decoding unicode strings in python

[IOL 1.5.0] - 2023-05-05

  • IOL-698: New helper to know if 2 views have common ancestors
  • IOL-678: Add shortcut to set elements of data frames
  • IOL-648: Implement ParallelAccess extension in all ImageView implementations
  • IOL-687: Add an allocate method to create empty in-memory DataFrameViews
  • IOL-681: Add shortcuts in ImageView to ease ImageProperties access
  • IOL-551: Upgrade to C++14
  • IOL-673: Drop support for MSVC14
  • IOL-652: Add support for dotnet 6.0
  • IOL-695: Remove RHEL8 platform
  • IOL-601: New extension to ImageView to retrieve information about parallel access capabilities
  • IOL-718: Fixed error in internal memory region copier for fast copy.
  • IOL-713: Handle MULTICHANNEL image in ExtractChannel factory

[IOL 1.4.2] - 2023-04-26

  • IOL-699: catch exceptions for methods of ReadOnlyMetadataNode class in Python

[IOL 1.4.1] - 2023-03-21

  • IOL-685: Fix Python wrapping to avoid error message when using Extensions
  • IOL-657: Catch exception in .NET and Python if TilingInfo extension is not available
  • IOL-663: Exceptions in DecodeArrayX were not caught in Python and .NET
  • IOL-670: Fixes in from_numpy inter-op methods in Python
  • IOL-654: Fix bug with .NET streams
  • IOL-671: Python enums are now returned instead of anonymous integers

[IOL 1.4.0] - 2023-02-03

  • IOL-616: Add serialization support for ArrayX
  • IOL-617: DataFrameView serialization is now available
  • IOL-618: Add methods for Matrix serialization
  • IOL-557: ArrayX::toString method now displays array content (Numpy-style)
  • IOL-571: Add support of python 3.8, 3.9 and 3.10 on Ubuntu18.04 and python 3.9, 3.10 on Ubuntu 20.04
  • IOL-608: Update dependencies and remove checker library from conan package
  • IOL-609: Upgrade boost to v1.80.0
  • IOL-619: Miscellaneous fixes in user guide and ref-man
  • IOL-630: Add dataframe cell value access
  • IOL-636: Fix in ImageView serialization to not repeat header twice
  • IOL-680: Fix wrapping issue with TilingInfoExtension::writeTile method
  • IOL-682: Remove Error.h include from DataFrameView.h

[IOL 1.3.2] - 2023-01-18

  • IOL-655: Miscellaneous fixes for public headers independency
  • IOL-634: Fix ImageInterpretation when ImageViewFactory::stack method is called on CHANNEL dimension
  • IOL-626: Fix DataFrameViewFactory input checks in Python

[IOL 1.3.1] - 2022-11-21

  • IOL-606: Fix problem with windows min and max macros
  • IOL-621: Fix problem in python wrapping which raised a warning at generation and an error in IOFormat
  • IOL-605: Fix in AdapterRegion and AdapterRegionPack to set interpretation to UNKNOWN if CHANNEL dimension is reduced
  • IOL-603: Fix extractAdjustedRegion method with 5D images

[IOL 1.3.0] - 2022-10-07

  • IOL-578: Add memory implementation for DataFrameView
  • IOL-581: Add equality operators for ArrayX
  • IOL-440: Possibility to convert ImageView to Numpy with dimensions reorder
  • IOL-524: Add support for Visual Studio 16 2019
  • IOL-585: Inter-operability between StreamAccess and RAW IOBase python interface
  • IOL-590: RegionX can now be stored in containers
  • IOL-580: Update Poco to release 1.12.2
  • IOL-594: Possibility for user to convert a Numpy into ImageView and set major properties
  • IOL-600: Fix data frame providers

[IOL 1.2.1] - 2022-08-09

  • IOL-573: Fix error in region adapters when dimension > 3
  • IOL-575: Fix behavior of toNumpy method in Python.

[IOL 1.2.0] - 2022-07-11

  • IOL-522: Add equality operators in ImageInfoProperty and SpatialCalibrationProperty
  • IOL-513: ImageType can now be initialized from an integer
  • IOL-401: add support for Python 3.9 and 3.10 on Windows
  • IOL-529: Add missing checks on inputs, now exceptions are raised when null objects are given.
  • IOL-542: make Conan package compatible with recent version of compilers
  • IOL-550: remove RHEL7 from the supported platforms
  • IOL-530: Removed ambiguity during call to flip method in Python
  • IOL-566: Fix in flip method for error case
  • IOL-537: Python is now built using MSVC 14.0 toolkit
  • IOL-541: fix warning messages when stacking
  • IOL-553: Added possibility to serialize ImageViews
  • IOL-535: add a new extension for tiling information in ImageView instances

[IOL 1.1.1] - 2021-05-30

  • IOL-515: remove cassert include from public headers
  • IOL-528: enable implicit conversion for DataType.standard_range method in Python
  • IOL-443: Add missing documentation for Numpy interop
  • IOF-539: export XML into NuGet to activate IntelliSense.
  • IOL-527: fix in RandomAccessFactory::extractRegion
  • IOL-532: fix ImageViewFactory.uniform method in Python
  • IOL-526: fix of RandomAccess.from_buffer in Python
  • IOL-517: various documentation fixes
  • IOL-570: fix repr for ReadOnly MetadataNode, ImageProperties, VariantDatavalue, and for new objects

[IOL 1.1.0] - 2021-03-29

  • IOL-272: Add ToString methods to most common objects
  • IOL-482: new friendly variant of ReadRegion in C# IOLink
  • IOL-427: Add possibility in Python to initialize a Vector/VectorX with an iterable
  • IOL-450: make capabilities more user friendly in Python
  • IOL-500: Add simple method in Python to read a region from an ImageView
  • IOL-466: enhance MetadataNodeHelper
  • IOL-458: make enum more readable in Python by using enum module
  • IOL-469: make capabilities more user friendly in C#
  • IOL-484: make MetadataNode implement Enumerable<T> in CSharp
  • IOL-505: Add 'support' method for all objects with capabilities
  • IOL-499: fix the wrapping of enums in Python to use 64 bits
  • IOL-475: Matrix value initialization in C#
  • IOL-358: Python slice operator available on ImageView to extract a region
  • IOL-498: fixed errors in python documentation
  • IOL-372: use C# properties for more user friendly getters and setters
  • IOL-483: .NET Factory methods now usable as extension for ImageView, MultiImageView, RandomAccess and StreamAccess
  • IOL-518: fix StreamAccessBridge origin storage accessor
  • IOL-501: make accessors as properties in Python
  • IOL-508: C++ Exceptions are intercepted in Python wrapping
  • IOL-502: create readonly wrappers around const objects in dotnet
  • IOL-533: Add missing checks on inputs in NumpyInterop in Python
  • IOL-503: add readonly wrappers for ImageProperties and MetadataNode in Python
  • IOL-523: fix truncated DataTypeId enum in dotnet
  • IOL-546: fix compatibility problem of conan package with 1.0.0
  • IOL-399: C# documentation (reference manual and user guide) is now available
  • IOL-525: fix ambiguity of MultiImageViewFactory::unstack in Python
  • IOL-540: fix typo in DataType::PrimitiveType method name
  • IOL-515: remove cassert includes from public headers
  • IOL-528: Enable implicit conversion for DataType.standard_range method in Python

[IOL 1.0.1] - 2021-03-14

  • IOL-496: Fix problem with Uri containing queries

[IOL 1.0.0] - 2021-01-20

  • IOL-441: homogenize integers in API
  • IOL-442: handle copy of constant references output in Python
  • IOL-436: Impact of API Review on properties
  • IOL-453: Move Endianess converter in DataConverter class
  • IOL-448: arrays API review
  • IOL-445: API review on Region class
  • IOL-456: Implementation of RegionXDivider is made private and renaming
  • IOL-462: Fix in RegionXDivider
  • IOL-446: rework of Indexer API
  • IOL-455: Remove ComposedView interface
  • IOL-455: Error implementation made private
  • IOL-447: API review impact on DataType and DataTypeId
  • IOL-452: changes after DataAccess API review
  • IOL-472: fix an include typo in HTTPHeaders.h
  • IOL-454: API Review impact on Matrix
  • IOL-444: changes after vector API review
  • IOL-432: Fixes in documentation
  • IOL-463: Add method to check the presence of a child in a MetadataNode
  • IOL-439: remove warning about 'extend' when stacking on CHANNEL dimension
  • IOL-451: wrap const references output as values in dotnet
  • IOL-459: remove numpy limitations (not-aligned data) when exporting to ImageView
  • IOL-460: Remove lockers for threadsafety access to improve performance
  • IOL-479: make conan package dependencies really private.
  • IOL-491: ImageInfoProperty passed by reference in ImageProperties constructor
  • IOL-514: fix NET wrapping issues

[IOL 0.30.0] - 2021-12-16

  • IOL-429: add copyright header to include files in Conan package
  • IOL-408: MetadataNode refactored as a class
  • IOL-434: add extension system on views
  • IOL-437: Refactor ImageViewFactory after API Review
  • IOL-438: remove optional parameters from public API
  • IOL-435: ImageView API changes after API review
  • IOL-464: fix MetadataNode memory leaks

[IOL 0.29.0] - 2021-11-17

  • IOL-390: calibration property rework to work in 3D space
  • IOL-295: cross product and normalization for vectors
  • IOL-415: new class to create a flag system from an enum
  • IOL-409: ImageView refactoring for runtime capabilities
  • IOL-375: reinforce DataAccess interfaces contract
  • IOL-411: Refactor DataAccess to make capabilities Runtime
  • IOL-410: MultiImageView refact for runtime capabilities
  • remove an useless assert
  • fix stream seeking
  • enable to read from end of stream without an error
  • fix StackAdapter capabilities
  • fix handling of StreamAccess directors in dotnet

[IOL 0.28.0] - 2021-10-07

  • IOL-379: new factory to flip an ImageView
  • IOL-384: prefix log levels by LOG
  • IOL-396: Fix shape computation when importing Numpy with new dimension order
  • IOL-395: fix OffsetReadRandomAccess assert clause
  • IOL-403: Fix resourceId field of any DataAccess created through a bridge (RandomAccess <--> StreamAccess)
  • IOL-391: Manage the conversion of sliced numpy array into ImageView

[IOL 0.27.0] - 2021-09-09

  • IOL-343: rework of Array for interoperability
  • IOL-383: Fix in adapters, as units were not connectly managed
  • IOL-386: Fix missing symbol in GCC48 of Matrix constructor
  • IOL-381: add a factory to address a subset of a RandomAccess

[IOL 0.26.0] - 2021-07-22

  • IOL-365: new chapter about custom interface implementation in user guide
  • IOL-355: a checker is available for Interface implementation
  • IOL-364: hide attributes of public classes
  • IOL-362: uniformization of factories
  • IOL-373: make disk ImageView use classical file streams
  • IOL-361: rework of ImageView API
  • IOL-389: Add new factory to wrap a StreamAccess into standard IOStream
  • IOL-388: Add new factory to subSample an ImageView

[IOL 0.25.0] - 2021-06-24

  • IOL-346: versioning utilities
  • IOL-336: modify the function to import NumPy arrays
  • IOL-312: remove converter method in ImageView factory
  • IOL-347: Add a chapter in user guide about DLL issues when shared between many components
  • IOL-334: add support for Ubuntu 20.04 platform
  • IOL-356: Factory added to load an ImageView onto disk
  • IOL-367: add support for writing on disassembled image views
  • IOL-342: new Matrix type
  • IOL-328: Shrink a MemoryImageView shape now reduces memory consumption

[IOL 0.24.0] - 2021-06-10

  • IOL-354: Fix threadsafety issues when reading a disassembled view
  • Fix an issue in DataType constructor
  • Added exceptions raised in Region/X and MemoryImageView when giving invalid arguments
  • Fix issue when stacking a read-only ImageView

[IOL 0.23.0] - 2021-04-29

  • IOL-322: Add disassembleChannels method to transform a vectorial-type ImageView into planar image ImageViewFactory::assembleChannels method can now handle the case CHANNEL dimension is not the last one
  • Fix in Stack method
  • Add a new mapped file storage.
  • IOL-321: add job and packages for Python 3.7 and Python 3.8 on Windows
  • IOL-299: New method ImageViewFactory::allocateOnDisk to create an ImageView from a mapped file in memory.
  • Fix: Input properties and metadata are now cloned when creating a View.
  • IOL-332: Deliver .NET for Rhel8 platform in IOLink Nuget
  • IOL-340: In python, version is available to display iolink version
  • Some fixes in Python User guide - code snippets
  • IOL-339: Add Endianness converter for samples

[IOL 0.22.1] - 2021-04-01

  • IOL-337: fix the problem of View released while associated Numpy array still in use
  • IOL-335: Seeking over the end is now allowed for MemoryStream. The stream is automatically resized.

[IOL 0.22.0] - 2021-03-25

  • IOL-292: Added unit test to check public header independency
  • IOL-323: rename RandomAccessProvider::toRead to RandomAccessProvider::toRandom
  • IOL-310: Add units in CalibrationProperties
  • IOL-202: Added test for .NET framework v4.6.1 in CI
  • IOL-324: Remove support for OSX platform
  • IOL-330: Remove resetProperties parameter from reshape method
  • IOL-329: Fix behavior in MemoryRandomAccess
  • Replace assert by raising exception to handle user input errors
  • IOL-326: New method ImageViewFactory::fromImageView allowing to apply specific properties/metadata to a ReadImageView without impact on originals.

[IOL 0.21.0] - 2021-02-25

  • Wrap LodImageView in Python
  • IOL-307: new storage and accessor interfaces
  • IOL-319: improve ImageView::Stack method to handle all possible cases
  • IOL-304: some fixes in reference manual (missing method descriptions in StreamAccessFactory)
  • Exceptions now handled in the Python wrapping of ImageView
  • Fix Uri on Windows (file:///)

[IOL 0.20.1] - 2021-02-08

  • Fix output properties issues from Image factories

[IOL 0.20.0] - 2021-01-29

  • HTTPStorage: Set the HTTP keep-alive timeout value to 18000 seconds.
  • IOL-298: NympyInterop.to_numpy_array now uses Numpy convention for dimension order
  • IOL-287: add a string representation for python objects
  • IOL-294: Possibility to create/allocate an in-memory stream
  • IOL-309: Dimension info properties are now impacted by unstack operation

[IOL 0.19.1] - 2021-01-14

  • IOL-263 add RHEL8 support
  • IOL-305 Fix problem for .NET framework. Native Dlls are now copied in generation folder

[IOL 0.19] - 2021-01-07

  • IOL-282: Python naming conventions
  • IOL-297: fix RandomAccessStorage symbols export
  • IOL-296: add .NET comparison operators to ImageType
  • IOL-300: fix .NET disposing on views

[IOL 0.18] - 2020-12-03

  • IOL-289: fix the calibration of the View created by ImageViewFactory::stack
  • IOL-273: add new DataType interpretations for symmetric matrices.
  • IOL-281: handle NumpyArrays with C-layout for conversion into ImageViews
  • IOL-285: allow reinterpretOrder method to reorder existing dimensions
  • IOL-283: expose publicly the method swig getCPtr() and pointer constructor
  • IOL-293: avoid ImageTypeId values from being modified in .NET
  • IOL-266: now only one nuget is delivered for all supported platforms
  • IOL-284: python user guide and refman

[IOL 0.17.1] - 2020-11-13

  • Fix the symbols exported, causing a problem on OSX

[IOL 0.17] - 2020-11-05

  • IOL-271: reinterpret ImageType and re-order dimensions
  • IOL-276: fix some miscellaneous errors in code and refman
    • IOL-270: python method orderFromNumpyArray is added to reorder dimensions when importing Numpy arrays
      • some improvements in Python wrapping
  • IOL-279: fix a bug linked to directors and shared pointers
  • IOL-274: deinterlace and unstack multi-channel images now provide ImageInterpretation as metadata

[IOL 0.16] - 2020-10-09

  • Fix readRegion size when reading full region from a storage view
  • IOL-267: add catches clauses in .NET wrapping to retreive C++ exception in C#
  • IOL-269: take into account feedbacks from user about refman
  • IOL-261: Add way to get a MetadataNode from a path through the MetadataNodeHelper class.
  • IOL-268: new convert method in ImageView factory to remove or add alpha channel
  • IOL-259: new API to reset properties or not when reshaping a view
  • IOL-271: new methods in ImageFactory to reinterpret ImageType and reorder dimensions

[IOL 0.15] - 2020-09-08

  • IOL-262: a StreamStorage can now be loaded in memory with StreamStorageFactory method
  • fix in Storage seek method
  • IOL-241: Make ChangeLog and API ChangeLog public in user guide
  • IOL-260: Added peek to IStreamStorage and a check for infinite streams in ReadRandomAccessStorageBridge

[IOL 0.14] - 2020-08-13

  • IOL-234: properties MkII
  • IOL-250: rework Java packaging
  • IOL-255: [.NET] Writing into an empty memory stream was not accepted
  • IOL-254: Impossible to seek in the stream after reading the end of the stream.

[IOL 0.13] - 2020-07-15

  • IOL-245: Add a 'slice' method for Region and RegionX to quicky create slice from a region
  • Fix in reference manual for 'DataType'
  • Some fixes and improvements in User guide for properties and metadata
  • IOL-244 : Writer interface is completed with new methods to get name and version, and to set options
  • IOL-236: Correct ImageInterpretations values
  • IOL-228: New public logging interface
  • IOL-232 : [.NET] The method ImageViewFactory.Uniform required an System.IntPtr for the value, it was not user friendly.
  • Added toString conversion in MetadataValueConverter
  • IOL-238 : Added provider for LodImageView (it helps for LodImageView discrimination from view and conversion)

[IOL 0.12] - 2020-06-18

  • IOL-184 : Add converter (MetadataValueConverter) which allows you to convert any single numerical MetadataValue to any other numerical type
  • VectorX API consistency: pass VectorXu64 by reference when possible, instead of by value
  • IOL-233 : Fix invalid writing when posting data consecutively to an HTTP server.

[IOL 0.11] - 2020-05-19

  • IOL-182 : Add Interlace method in ImageViewFactory This method allows to interlace frames from a MultiImageView into a single ImageView.