Version 1.5.0 beta 5
Pre-release
Pre-release
Changes
- Dimension links: Dimensions can now be linked to data objects (DataArray or DataFrame). This links a Dimension object to a specific vector of data, which is either a single vector of a DataArray's data or a single column of a DataFrame.
- This removes the AliasRangeDimension object. The same functionality can be achieved by adding a RangeDimension and then linking it back to the parent DataArray.
- The FILE FORMAT version is now 1.2.0.
- New script
nixio-upgrade: Upgrades files to newest version if there are file format changes. - Every NIX object holds a reference to the open file object it belongs to and can be accessed via
obj.file. - Storage optimisation: Dataset and property creation was causing large per-object overhead which made files with a large number of small objects take up too much space. We changed the way these are initialised so file sizes should be much smaller going forward.
- MultiTags can have extents specified in the constructor.
- MultiTags can now be created by supplying an array or a list for the positions and extents arguments. This will result in the automatic creation of DataArrays to hold these values.
- DataArray now has an
iter_dimensions()method which, when iterated upon, generates a 1-based index along with each dimension of the array. - Changed the structure of the information returned by the
File.validate()method. The information is now organised in a dictionary with two keys,"errors"and"warnings". Each contains dictionary that maps NIX objects to a list of error or warning messages respectively.
Bug fixes
- Fixed the behaviour of the object modification time and the option which disables it.
- Fixed several bugs in the validator module.
- Fixed DataFrame creation using a compound (structured) data type without specifying column names.
Relevant PRs
- #421: Validator part 2
- #423: Validator script
- #432: Add shape when initializing properties to optimize storage
- #434: Fix bug for h5group.root
- #436: Allow supplying np_arrays or list for multi_tags positions
- #438: Add method that returns 1-based index dimension iterators
- #440: Change the search method of index_of() for range_dim
- #442: Enforce unique column names for DataFrame
- #445: Fix bug when create dataframe from compound arrays and add test
- #452: Upgrade script
- #462: File references
- #464: Fixes and simplifications for DataTypes and DataType mappings
- #469: Dimension links