Skip to content

Latest commit

 

History

History
333 lines (174 loc) · 11 KB

CHANGELOG.md

File metadata and controls

333 lines (174 loc) · 11 KB

0.5.10 (UNRELEASED)

  • #525: use fast_float library to parse numbers .

  • #520: inputname get variable name of function input.

  • #528: Assignment in cell did not work in this case [c{:}] = ind2sub (dv, i)

0.5.9 (2021-09-29)

  • leapyear function: determine leap year.

  • meshgrid function: Cartesian rectangular grid in 2-D or 3-D.

  • sub2ind function: linear index to matrix subscript values.

  • ind2sub function: matrix subscript values to linear index.

  • #518: isStringScalar checks if input is string array with one element.

  • #516: ind = 2; ind(false) logical extraction on scalar should return empty matrix.

  • #514: C{3} = 4 should create a cell with good dimensions.

  • #512: Assign must not change left assign type when it is possible.

  • #509: horzcat vertcat generic support for class object.

  • #508: Change default seed for 'rand' with Mersenne Twister algo.

  • #506: Modernize windows installer style.

Compilation:

  • #496: Eigen 3.4 used.

  • #503: Boost 1.77 support (default on Windows).

0.5.8 (2021-08-25)

Features:

  • test_run displays errors with file and line number.

  • CTRL-C throws an error.

  • some warnings detected by LGTM or VS fixed.

  • allows .m file empty to be called.

  • #477: update files watcher algo.

  • #489: display builtin and associated overload.

  • #490: update default prompt.

Bug Fixes:

  • #480: publisher name updated for windows installer.

  • #483: extern modules no more build if boost not available.

  • #486: inmem help was missing.

  • #464: simplify macos build (catalina & BigSur support only).

  • #499: rename getContentAsUnsignedInt64Scalar to getContentAsUnsignedInteger64Scalar.

  • #495: some mtimes call failed.

0.5.7 (2021-07-24)

Features:

  • macros in memory reworked to support also MEX.

  • C MEX compatibility, load and build fully compatible with other softwares.

  • inmem builtin returns names of functions, MEX-files in memory.

  • mexext builtin returns binary MEX file-name extension.

  • main function in .m no more require to be the first in file.

  • checks in the .m function that other local function names are not duplicated.

  • .m timestamp checked if addpath(...,'-frozen') is not enabled.

  • function_handle reworked to have an compatible behavior.

  • struct behavior with function_handle.

  • clear reworked to support mex in memory.

  • nargin, nargout behavior with mex updated.

  • #474: exist: extended to manage mex function.

  • #449: conv2: 2-D convolution and conv: Convolution and polynomial multiplication.

Bug Fixes:

  • #468: A(':') = [] was not managed.

0.5.6 (2021-06-27)

BREAKING CHANGE:

Features:

  • function ... endfunction and function ... end are equivalent (increase compatibility ;).

  • file extension .m is managed by Nelson.

    • About compatibility: scripts and functions developed with Nelson should work with other tools managing .m files. The reciprocal is not necessarily true.

    • .m is default and alone file extension.

  • module skeleton updated to use to .m extension (Please update your code)

  • run builtin can also evaluate a macro function.

  • macro functions also searched in current directory.

  • parser cleaned and generated with Bison 3.7.4

  • narginchk builtin: checks number of input arguments.

  • nargoutchk builtin: checks number of outnput arguments.

  • #448: data analysis module (Code refactoring).

Bug Fixes:

  • nmm('install', existing_module_directory) did not work as expected.

  • #451: var() returns an unexpected error.

Compilation:

  • #455: M1 macOS apple native support. It works but some gui features can crash due to young Qt support on M1.

  • Update fmt library to 8.0.

0.5.5 (2021-05-24)

Features:

  • Validators functions available from Nelson and C++ API (part 2):

    • mustBeFile,
    • mustBeNonempty, mustBeNonNan, mustBeNonZero, mustBeNonSparse,
    • mustBeA, mustBeReal, mustBeInteger, mustBeNonmissing,
    • mustBePositive, mustBeNonpositive, mustBeNonnegative, mustBeNegative,
    • mustBeGreaterThan, mustBeGreaterThanOrEqual, mustBeLessThan,
    • mustBeNumericOrLogical, mustBeText, mustBeNonzeroLengthText,
    • mustBeMember, mustBeInRange.
  • test_run manages SEQUENTIAL TEST REQUIRED and NATIVE_ARCHITECTURE TEST REQUIRED tags.

  • benchs are executed sequentialy (better bench results).

  • all, any behavior with empty matrix updated.

  • extends all to manage over all elements.

  • ismember builtin: Array elements that are members of another array.

  • #439: split elementary_functions module and creates operators modules.

Changed:

  • comment symbol is '%'. others previous supported comment symbol removed.

Bug Fixes:

  • #435: maxNumCompThreads did not return number of threads but number of cores.

Compilation:

  • Move Windows build to GitHub CI. Appveyor is no more the principal build CI for Windows.

  • #441: Circle CI (ArchLinux build) fixed.

  • #357: Curl 7.76.1 on Windows.

0.5.4 (2021-04-24)

Features:

  • Validators functions available from Nelson and C++ API (part 1):

    • mustBeLogicalScalar, mustBeLogical, mustBeFloat,
    • mustBeFinite, mustBeScalarOrEmpty, mustBeVector,
    • mustBeValidVariableName,
    • mustBeTextScalar, mustBeFolder,
    • mustBeNumeric.
  • Functions using SIMD extensions:

    • ceil, round, fix, floor, abs, conj,
    • exp, sqrt, log1p, log10, log
    • cos, sin, tan
    • atan2, acos, asin
    • addition, substraction, multiplication, division vectors.
  • system allows to run shell command execution in parallel.

  • test_run executes on parallel process.

  • extends assert_checkerror to check also error identifier.

  • isvector, isscalar support overload.

  • isvarname builtin: check if input is valid variable name.

  • isdir manages string array.

  • time returns current time as the number of seconds or nanoseconds since the epoch.

Bug Fixes:

  • #352: number of input arguments checked in macro.

  • #382: optimize corrcoef.

0.5.3 (2021-03-24)

Features:

  • #373: sign builtin.

  • #313: atanh builtin: inverse hyperbolic tangent.

  • MException comes default exception in Nelson.

  • try, catch extended to manage MException.

  • throw, throwAsCaller, rethrow functions added.

  • error extended to manage identifier.

  • callstack reworks, available with MException.

  • for loop faster > x2.

  • assignment does not copy matrix.

  • reworks ArrayOfVector (internal).

  • C++ API nargincheck, nargoutcheck helpers added.

  • rename mexception to MException

Bug Fixes:

  • #413: circle CI Arch docker did not work.

  • #412 docker fedora 35 support.

0.5.2 (2021-02-27)

Features:

  • triu builtin: Upper triangular part of matrix.

  • tril builtin: Lower triangular part of matrix.

  • istriu checks if matrix is upper triangular part of matrix.

  • istril: checks if matrix is lower triangular part of matrix.

  • isdiag: checks if matrix is diagonal.

Compilation:

  • MacOS build uses openBLAS. lapacke included in openBLAS. No more thirdparty repository required for MacOS build.

  • rename ArrayOf::getLength to ArrayOf::getElementCount method.

  • rework simple assignement.

  • add benchs about loop to identify existing bottleneck for next iteration.

  • rework loop to prepare next iteration.

0.5.1 (2021-01-30)

Features:

  • qt_version builtin: returns the version number of Qt at run-time.

  • qt_constant builtin: returns value of an Qt constant.

  • #374: num2str builtin: converts numbers to character array.

Bug Fixes:

  • #388: Windows x64 build failed (elementary_functions module was too big).

  • #385: corrcoef, mean, var, cov moved in statistics module.

Compilation:

  • 0.5 family (CHANGELOG)

  • Eigen 3.3.9 used.

  • libsndfile 1.0.31 on Windows.

  • libboost 1.75 on Windows.

  • fix cirle CI build.

  • #394: Upgrade socket.IO dependency to v3.0.

  • #367: add fftw_init_threads and fftw_plan_with_nthreads to MKL wrapper for FFTW.

  • #356: MKL OneAPI v2021 support.

  • #355: Qt6 support.

  • #317: uses fmtlib.

Previous changelog:

Changelog v0.4.x

Changelog v0.3.x

Changelog v0.2.x

Changelog v0.1.x