Recent Releases of matlab-stdlib

matlab-stdlib - add numerous functions, remove WSL functions

distinguish absolute() and resolve()

add getshell(), handle2filename(), hardlinkcount(), isrosetta(), root(), rootname(), filesize(), dropslash(), isprefix(), cpuarch(), osversion(), java_vendor()

ci: add jobs without Java VM "-nojvm"

CI: auto-publish inline documentation

benchmark Java vs. non-Java under example/ directory

all functions default to not use Java, except functions that are only implemented in Java

Most functions GNU Octave compatible

Numerous speed and correctness improvements

CI: test java/non-java for each function so capable.

Remove WSL functions

Test:implement with parameterization for best practice

- MATLAB
Published by scivision over 1 year ago

matlab-stdlib - remove absolute_path() -- use resolve(). Add new functions.

Add functions * getusername() * getowner() * nullfile() * isregularfile() * hostname() * getpid() * getpermissions() * javaversion() * javaapi()

canonical(), resolve() add option expand_tilde (default true)

remove absolute_path() that duplicated resolve() functionality

use non-deprecated Java methods if available in JRE

add documentation for selecting JRE (optional)

- MATLAB
Published by scivision over 1 year ago

matlab-stdlib - v5.3.0

Full Changelog: https://github.com/geospace-code/matlab-stdlib/compare/v5.2.1...v5.3.0

add HDF4 h4{size,exists,variables}

remove h5ndims, ncndims

flatten namespace

- MATLAB
Published by scivision almost 2 years ago

matlab-stdlib - speedup functions

  • h5exists, ncexists: 2x-100x speedup
  • stem, read_symlink: string Posix output
  • use isSymbolicLink, createSymbolicLink if available.

- MATLAB
Published by scivision almost 2 years ago

matlab-stdlib - add numerous functions

add issymlink, createsymlink, read_symlink.

ncsave: require dimensions for non-scalar

add sys.cpucount, touch, getmodtime, setmodtime, relativeto(), proximateto, issubdir, filesystem_type()

isabsolutepath => is_absolute

- MATLAB
Published by scivision almost 2 years ago

matlab-stdlib - require scalar non-empty inputs, add functions

add exists(), is_readable(), is_writable(), sys.cpu_load(), sys.ram_free(), sys.ram_total() all using Java internal to Matlab.

require scalar non-empty inputs to simplify internal code.

- MATLAB
Published by scivision about 2 years ago

matlab-stdlib - add several functions, distinguish canonical from resolve, bugfixes

add function fileio.{parent,stem,filename,suffix,join}

distinguish function fileio.canonical() which returns relative path if not exist from fileio.resolve() that always returns absolute path--if not exist, absolute based on cwd.

expanduser: ignore inputs like ~abc

subprocess_run: correct high level interface nargout and improve test

absolute("") = ""

Internals use posix filesep "/" throughout

Test: shortname: test with Matlab exe so it's always present (vs. notepad)

- MATLAB
Published by scivision about 2 years ago

matlab-stdlib - Java-based functions, add normalize

  • add normalize() function
  • use mostly Java-based internal functions for fileio

- MATLAB
Published by scivision over 2 years ago

matlab-stdlib - remove redundant code

- MATLAB
Published by scivision about 3 years ago

matlab-stdlib - improve tests and correctness. Add several stdlib.* aliases

- MATLAB
Published by scivision about 3 years ago

matlab-stdlib - add sys.wsl* functions

for Windows Subsystem for LInux add functions under stdlib.sys

- MATLAB
Published by scivision over 3 years ago

matlab-stdlib - h5save: add shape checks

to avoid confusing errors, check the shape of "sizeA" vs array size, if given for h5save

- MATLAB
Published by scivision over 3 years ago

matlab-stdlib - work with Matlab >= R2019b

Matlab R2019b is the minimum version because the Matlab syntax dramatically changed for R2019b and we use it everywhere.

- MATLAB
Published by scivision over 3 years ago

matlab-stdlib - works with Matlab >= R2020a, remove copyfile(), add ncvariables(...,group)

*works with Matlab >= R2020a -- CI tests each release from R2020a to R2022b * remove copyfile() * enhance internal argument checks, * add ncvariables(...,group) option

- MATLAB
Published by scivision over 3 years ago

matlab-stdlib - which() enhancements for Windows

stdlib.fileio.which() performs better generally on Windows, where file extension is now optional (.exe is appended and checked also)

h5variables("file.h5", "/not_exist_group") returns empty instead of erroring

some internal cleanup and rearranging

- MATLAB
Published by scivision almost 4 years ago

matlab-stdlib - add h5create_group(), HDF5: allow URL passthrough

HDF5 in general (including Matlab) can use remote storage such as S3. We removed all "isfile", "isfolder" to allow passing through URL or filenames to stdlib.hdf5nc functions.

added h5create_group() function

- MATLAB
Published by scivision almost 4 years ago

matlab-stdlib - Matlab >= R2021a name=value syntax

- MATLAB
Published by scivision almost 4 years ago

matlab-stdlib - handle matlab float32=>single, float64=>double

increase test coverage and fix issue that matlab prefers float32=>single, float64=>double and handles either type specification.

- MATLAB
Published by scivision almost 4 years ago

matlab-stdlib - bugfix scalar write. write all integer types in Matlab

  • h5save, ncsave can now write all matlab integer types (in addition to double, single, char, string) 'int8', 'int16', 'int32', 'int64', 'uint8', 'uint16', 'uint32', 'uint64'
  • fixed bug in writing scalar variables--would error under certain conditions

- MATLAB
Published by scivision almost 4 years ago

matlab-stdlib - HDF5,NetCDF4: add char/string read/write

  • NetCDF4: for Matlab >= R2021b, read/write of char/string scalar and array is now possible
  • HDF5: read/write of char/string scalar and now vector is possible

- MATLAB
Published by scivision about 4 years ago

matlab-stdlib - add [h5,nc]ndims. [h5,nc]size scalar is empty. h5save write scalar size accurately

  • add functions "h5ndims" and "ncndims" to get rank of disk variables
  • "h5size" and "ncsize" return empty [] if disk variable is scalar. This is like Python etc.
  • "h5save" better respects optional "size" argument to optionally write scalars instead as 1 or more dimensions e.g. [1,1,1]. This is necessary to interface with other languages.

- MATLAB
Published by scivision about 4 years ago

matlab-stdlib - [sha256,md5]sum return string, add mac/windows CI

CI for Matlab now has MacOS, Linux and Windows

improve [sha256,md5]sum by outputting string instead of char, as typical use case is == check.

- MATLAB
Published by scivision over 4 years ago

matlab-stdlib - absolute_path UX, improve test coverage

absolute_path: return UNC paths unmodified, print invalid path if canonicalize fails

add subprocess_run test of env=

test fileio.which: accommodate Matlab on MacOS

- MATLAB
Published by scivision over 4 years ago

matlab-stdlib - use CMake to extract zstd

Most of our users will have CMake already, at least as likely as having zstd without having to use an intermediate temporary file. So it's faster and robust.

- MATLAB
Published by scivision over 4 years ago

matlab-stdlib - improve test coverage, cleanup lint

Improve auto-linter, resolve minor issues thereby discovered

- MATLAB
Published by scivision over 4 years ago

matlab-stdlib - which: streamline logic

allow fpath to be a scalar or array

- MATLAB
Published by scivision over 4 years ago

matlab-stdlib - [h5,nc]save: allow bare filename

- MATLAB
Published by scivision over 4 years ago

matlab-stdlib - HDF5 scalar write, Matlab >= R2020b

Matlab doesn't have a high-level function to write scalar HDF5 dataset, so we added it to our h5save.

To avoid excess code, we put enhanced argument checks in stdlib.hdf5nc functions that require Matlab >= R2020b.

- MATLAB
Published by scivision almost 5 years ago

matlab-stdlib - add fileio.sha256sum

- MATLAB
Published by scivision almost 5 years ago

matlab-stdlib - reorganized as stdlib

combined a few complimentary libraries into this stdlib.

import hdf5nc.* => import stdlib.hdf5nc.*

- MATLAB
Published by scivision almost 5 years ago

matlab-stdlib - bugfix: h5write size type

Some functions may pass a non-double size to h5write, which matlab needs, despite the data inherently being integer. This casts size to double.

- MATLAB
Published by scivision over 5 years ago

matlab-stdlib - emptyness passthrough

the non-writing functions now return empty-like values when empty filename or other parameters are passed in. This seems to be a better match to expected behavior of other Matlab functions: empty in, empty out.

  • {h5,nc}exist
  • {h5,nc}size
  • {h5,nc}variables

Separately, we moved CI to Azure since Travis-CI now has quotas, even for open-source projects.

- MATLAB
Published by scivision over 5 years ago

matlab-stdlib - add numerous tests

go to Class-based unit tests and use parameterization to find more corner cases

add lint tests

- MATLAB
Published by scivision over 5 years ago

matlab-stdlib - make internal functions private

this helps in reusing this code in external projects

- MATLAB
Published by scivision over 5 years ago

matlab-stdlib - re-enable HDF5 string, enhance test coverage

HDF5 can read and write strings again.

Add more type tests and coverage

- MATLAB
Published by scivision over 5 years ago

matlab-stdlib - use function-based tests

improve code test quality by using function-based tests

- MATLAB
Published by scivision over 5 years ago

matlab-stdlib - CI: add Matlab Travis-CI

- MATLAB
Published by scivision over 5 years ago

matlab-stdlib - use R2019b argument validation

Improve reliability, discover and fix bugs by using R2019b argument validation and strings

use name,value options for less common options in {h5,nc}save

- MATLAB
Published by scivision over 5 years ago

matlab-stdlib - package layout for reliability

- MATLAB
Published by scivision over 5 years ago

matlab-stdlib - zenodo doi

No change, enabling zenodo doi

- MATLAB
Published by scivision almost 6 years ago

matlab-stdlib - simplify, robustness

Deduplication and simplify code for robustness.

- MATLAB
Published by scivision almost 6 years ago

matlab-stdlib - auto chunk size

  • handle ~ starting filename as HOME
  • auto determine chunk size
  • dimensions no longer limited to four.

- MATLAB
Published by scivision almost 6 years ago

matlab-stdlib - initial release

we have used these functions on other projects, but gathering them here for easy standalone use.

- MATLAB
Published by scivision almost 6 years ago