Releases: nelson-lang/nelson
v0.4.7
v0.4.6
0.4.6 (2020-06-27)
-
[IN PROGRESS] C MEX API:
-
extends mex function to manage interleaved complex option and c flags.
-
all C MEX API implemented, full API documentation and examples in progress.
-
mxMakeArrayReal, mxMakeArrayComplex functions.
-
mxGetImagData, mxSetImagData functions.
-
mxGetLogicals, mxIsLogicalScalar, mxIsLogicalScalarTrue functions.
-
mxGetInt8s, mxSetInt8s, mxGetComplexInt8s, mxSetComplexInt8s, mxGetUint8s, mxSetUint8s, mxGetComplexUint8s
mxSetComplexUint8s, mxGetInt16s, mxSetInt16s, mxGetComplexInt16s, mxSetComplexInt16s, mxGetUint16s, mxGetComplexUint16s
mxSetComplexUint16s, mxGetInt32s, mxSetInt32s, mxGetComplexInt32s, mxSetComplexInt32s, mxGetUint32s, mxSetUint32s
mxGetComplexUint32s, mxSetComplexUint32s, mxSetUint16s, mxGetInt64s, mxSetInt64s, mxGetComplexInt64s, mxSetComplexInt64s
mxGetUint64s, mxSetUint64s, mxGetComplexUint64s, mxSetComplexUint64s functions. -
mxIsObject, mxIsFunctionHandle, mxIsOpaque functions.
-
mxIsInt8, mxIsInt16, mxIsInt32, mxIsInt64, mxIsUint8, mxIsUint16, mxIsUint32, mxIsUint64 functions.
-
mxCreateStringFromNChars, mxGetNChars
-
mxRemoveField, mxAddField, mxSetField, mxSetFieldByNumber, mxGetFieldNumber, mxGetFieldNameByNumber functions.
-
mexGetVariable, mexGetVariablePtr, mexPutVariable functions.
-
mexMakeArrayPersistent, mexMakeMemoryPersistent functions.
-
Next month C MEX API project will be finished with full help and examples.
Compilation:
-
boost 1.73.0 on Windows.
-
ninja-build used with github actions CI.
v0.4.5
0.4.5 (2020-05-23)
-
graphic object type added.
-
figure builtin: creates figure.
-
gcf builtin: get current figure.
-
groot builtin: returns graphic root object.
-
get, set, isvalid, class, fieldnames, delete, disp builtin overloaded to manage graphic objects.
-
test_run: tests are sorted on all platforms.
-
[IN PROGRESS] C MEX API:
-
C MEX supports build with MinGW compiler.
-
mxArray and ArrayOf conversion optimized.
-
C MEX interleaved complex support.
-
C MEX Sparse type fully supported.
-
mxGetClassName, mxSetClassName fully supported.
-
mxGetProperty, mxSetProperty fully supported (handle, graphic object, ...).
-
Bug Fixes:
- #295: sort did not return an wrong error message for struct.
Compilation:
-
libcurl 7.70.0 on Windows.
-
cmake 3.17.2 on Windows.
-
CA certificate (Wed Jan 1 04:12:10 2020 GMT)
v0.4.4
0.4.4 (2020-04-29)
-
lookandfeel builtin: set default current application look and feel.
-
clear builtin extended to clear mex functions.
-
mex function used to build MEX files.
-
[IN PROGRESS] MEX C API allows to access Nelson, GNU Octave and commercial software functions.
documentation and tests will be extended in next version.
Feedback and external tests are welcome.
Compilation:
-
MacOs X Catalina fully working.
-
Ubuntu 20.04 LTS supported.
v0.4.3
0.4.3 (2020-03-30)
-
mean builtin: Mean elements of an array with nanflag and 'all' support.
-
sum and prod optimized.
-
save and load with .mat, .nh5 files support unicode filename on all platforms.
-
simplify builtin default prototype (breaking change). Evaluator is no more required for builtin.
-
NelsonPrint internal function added.
Bug Fixes:
-
#287: Parser error message are not localized.
-
#286: [end] = sin(1) did not return an syntax error.
-
#284: Nth dimensions assignation of an empty array with 2d matrix did not work.
Compilation:
-
MATIO 1.5.17 with unicode support
-
HDF5 1.12.0 support
-
BISON 3.5.0
v0.4.2
0.4.2 (2020-02-25)
-
min, max builtin: Minimum/Maximum elements of an array with nanflag and 'all' support.
-
flipud: Flip array up to down.
-
fliplr: Flip array left to right.
-
flip: Flip order of elements.
-
flipdim: Flip array along specified dimension.
-
log2 builtin: Base 2 logarithm and floating-point number dissection.
-
colon operator optimized.
-
faster algorithm to convert variable to different data type.
-
replaces hashmap used for functions and variables.
-
some few speed optimization about evaluator.
v0.4.1
0.4.1 (2020-01-27)
-
rework and speed optimization for times, divide, addition, subtraction operators.
-
sum builtin: sum of array elements.
-
linspace builtin: linearly spaced vector constructor.
-
logspace builtin: logarithmically spaced vectors constructor.
-
log10 builtin: Common logarithm (base 10).
-
log1p builtin: log(1+x) accurately for small values of x.
-
replaces dot animation by percent display about help indexing.
-
html style about table simplified.
Compilation:
-
uses ASIO C++ library in place of BOOST ASIO.
-
Add Qt 5.14.0 support.
-
Open MP support added.
v0.3.12
0.3.12 (2019-12-27)
-
sort builtin: sort double, single, integers, cell and strings.
-
diag builtin: Get diagonal elements of matrix or create diagonal matrix.
-
Continous Integration tools for external modules (see module skeleton example).
-
modules installed with nmm are 'autoload' by default.
-
.nmz file extension used as module container.
-
nmm('package', module_name, destination_dir) package an external module.
-
nmm('install', module.nmz) installs a prebuilt external module.
-
'-frozen' option added to addpath builtin.
-
rmfield builtin: Remove fields from structure.
-
extends sprintf and fprintf to manage backspace characters.
-
fix display of vector with NaN or Inf as first element.
Bug Fixes:
- #260: disable files watch for internal modules.
Happy end of year holidays
v0.3.11
0.3.11 (2019-11-26)
-
nmm: Nelson Modules Manager (package manager for Nelson)
- list : get list of installed modules,
- load : load an installed module for current session,
- autoload : load modules "marked" as autoload at startup,
- install : install a distant module,
- uninstall : uninstall an installed module.
-
Module skeleton moved to an dedicated git repository
- template with builtin and macros: https://github.com/Nelson-numerical-software/module_skeleton
- template with macros only: https://github.com/Nelson-numerical-software/module_skeleton_basic
-
usermodulesdir builtin: returns directory where user's modules are saved.
-
toolboxdir builtin: Root folder for specified toolbox.
-
nmm_build_help, nmm_build_loader: helper's functions to build module skeleton.
-
semver builtin: semantic versioner.
-
executable option added: '--nousermodules' disables load of user's modules.
-
add capability to load some user's modules: see nmm('autoload', ...) and nmm('load', ...)
-
add // <--NO USER MODULES--> tag for test_run (disable load of user modules for a test)
-
fullpath builtin: converts an relative path to full path name.
-
getLastReport builtin: returns last formatted error message.
-
extends repo to manage plain text authentification.
-
repo('export', ...) exports an git repository without .git directory.
-
getfield macro replaced by an builtin.
-
extends isequal, isequaln, isequalto for structure arrays.
Bug Fixes:
-
#261: add a detailed documentation about module.json used in external modules.
-
#259: extraction decomplexify values.
-
#257: dllibisloaded optimized.
-
#49: Some qml demos crashed on Windows 32 bits.
Compilation:
- Qt 5.13.2 on Windows.
v0.3.10
0.3.10 (2019-10-29)
-
extends 'getmodules' to return module versions using new required 'module.json' (see module's template).
-
all core's modules are protected and cannot removed during an nelson's session.
-
increase max execution time for tests (2 minutes) and benchs (6 minutes).
-
split benchs and tests execution for CI.
-
repo builtin: clone, checkout branch or tag, ... from an GIT repository.
Compilation:
-
Visual studio 2019 Community and Pro upgrade (required)
Dependencies updated:- ICU 64.2 on Windows
- libffi updated VS 2019 build
- libxml 2.9.9 VS 2019 build
- libcurl 7.66.0_2
- CMake 5.15.3 update for Windows
- MKL 2019 update 5
- HDF5 1.10.5 VS 2019 build
- MATIO 1.5.17 VS 2019 build
-
appveyor script updated to build with VS 2019
-
Innosetup 6 support