Releases: nelson-lang/nelson
v1.10.0
1.10.0 (2024-12-14)
Added
detectImportOptions
: Generate import options from the file's content.readtable
: Read table from file.writetable
: Write table to file.readcell
: Read cell array from file.writecell
: write cell array to file.readmatrix
: read matrix from file.writematrix
: write matrix to file.csvread
: Read comma-separated value (CSV) file.csvwrite
: Write comma-separated value (CSV) file.dlmread
: Read ASCII-delimited file of numeric data into matrix.realmin
: Smallest normalized floating-point number.- #1288
mustBeMatrix
,mustBeRow
,mustBeColumn
validator functions. join
: Combine strings.- #1292 Large Table Display.
- #1290
VariableTypes
property for table: Specify the data types of table in Nelson. hour
,minute
,second
component of input date and time.
Changed
narginchk
,nargoutchk
support for check only minimun argumentsnarginchk(3, Inf)
.- Fedora 41 CI
title
:Visible
property is inherited from the parent if not explicitly defined.- i18n: migration PO files to JSON.
dlmwrite
: rework the function to be more fast and robust.strjust
: rework the function to be more fast and robust.datenum
: support '' as format for compatibility.
Fixed
v1.9.0
1.9.0 (2024-10-26)
Added
-
Table direct computation:
- unary functions:
abs
,acos
,acosh
,acot
,acotd
,acoth
,
acsc
,acscd
,acsch
,asec
,asecd
,asech
,
asin
,asind
,asinh
,atan
,atand
,atanh
,
ceil
,cosd
,cosh
,cospi
,cot
,cotd
,
coth
,csc
,cscd
,csch
,exp
,fix
,
floor
,log
,log10
,log1p
,log2
,nextpow2
,
round
,sec
,secd
,sech
,sin
,sind
,
sinh
,sinpi
,sqrt
,tan
,tand
,tanh
,
var
,acosd
,not
. - binary functions:
plus
,minus
,times
,eq
,ge
,gt
,le
,
ne
,lt
,rdivide
,rem
,power
,pow2
,or
,mod
,ldivide
.
- unary functions:
-
end
magic keyword can be overloaded for classes (applied totable
class). -
#1250
head
,tail
functions for table and array. -
#1248
removevars
,renamevars
functions for table.
Changed
- #1259 Add macOS Sequoia and remove macOS Monterey CI support.
- Qt 6.8 LTS support (used on Windows 64 bits binary).
- Python 3.13.0 on Windows.
- Boost 1.86 on Windows.
v1.8.0
1.8.0 (2024-10-04)
Added
-
table
Data Type:-
Introduced the
table
data type, offering enhanced functionality for structured data manipulation. -
Overloaded methods specific to the
table
data type:disp
,display
for table display.horzcat
,vertcat
for horizontal and vertical concatenation.isempty
to check if the table is empty.isequal
,isequalto
for table comparison.properties
for accessing table metadata.subsasgn
for subscripted assignment.subsref
for subscripted referencing.
-
Conversion functions added:
array2table
: Convert an array to a table.cell2table
: Convert a cell array to a table.struct2table
: Convert a structure to a table.table2array
: Convert a table to an array.table2cell
: Convert a table to a cell array.table2struct
: Convert a table to a structure.
-
Utility functions introduced:
width
: Retrieve the number of columns in the tableheight
: Retrieve the number of rows in the tableistable
: Check if a variable is of thetable
data type
-
-
Resize
- Resize figure property. -
#36
datenum
format compatibility extended. -
#37
datestr
Convert date and time to string format.
Changed
- CodeQL Github action updated.
Fixed
- fix 'units' refresh for 'axes' object.
v1.7.0
1.7.0 (2024-08-28)
Added
uicontrol
Create user interface control (button, slider, edit, list box, etc.).waitfor
Block execution and wait for condition.waitforbuttonpress
— Wait for click or key press.im2double
— Convert image to double.CloseRequestFcn
— Close request callback forfigure
.CreateFcn
— Create callback for all graphic objects.DeleteFcn
— Delete callback for all graphic objects.BusyAction
— Busy action for all graphic objects.Interruptible
— Interruptible property for all graphic objects.BeingDeleted
— Being deleted property for all graphic objects.KeyPressFcn
,KeyReleaseFcn
,ButtonDownFcn
properties forfigure
.
Changed
-
Refactor the internal implementation of the 'system' built-in function.
-
Python 3.12.5 on Windows.
v1.6.0
1.6.0 (2024-06-29)
Added
unique
: Unique values.ndgrid
: Rectangular grid in N-D space.nthroot
: Real nth root of real numbers.allfinite
: Check if all array elements are finite.j
as imaginary unit number is also supported. example3+2j
equivalent to3+2i
.FollowLocation
option forweboptions
- oneAPI Threading Building Blocks optional dependency.
- Ubuntu 24.04 debian package.
- Ubuntu 24.04 CI
Changed
-
sort
: speed optimization. -
Windows dependencies updated and rebuild with minimal dependencies:
- Qt 6.7.1,
- Visual C++ 2022 Redistributable v14.40.33810.00,
- boost 1.85,
- Python 3.12.4,
- Intel Math Kernel Library 2024.1.1,
- Intel runtime,
- SLICOT,
- gettext 0.22.5,
- cmake 3.30.0 rc3,
- libsndfile 1.2.2,
- portaudio 19.7.5,
- taglib 2.0,
- libzip1 1.3.1,
- libcurl 8.8.0,
- icu4c 74.2,
- libffi 3.4.6,
- libxml2 2.11.7
-
Unicode® Standard, Version 15.1 support
-
simdutf 5.2.8
-
fast_float 6.1.1
-
dtl 1.2.0
Fixed
v1.5.0
1.5.0 (2024-05-31)
Added
-
dictionary
data type.dictionary
: Object that maps unique keys to values.configureDictionary
: Create dictionary with specified key and value types.insert
: Add entries to a dictionary.lookup
: Find value in dictionary by key.remove
: Remove dictionary entries.entries
: Key-value pairs of dictionary.keys
: Keys of dictionary.values
: Values of dictionary.types
: Types of dictionary keys and values.numEntries
: Number of key-value pairs in dictionary.isConfigured
: Determine if dictionary has types assigned to keys and values.isKey
: Determine if dictionary contains key.keyHash
: Generate hash code for dictionary key.keyMatch
: Determine if two dictionary keys are the same.
-
bernsteinMatrix
: Bernstein matrix. -
orderedfields
: Order fields of structure array. -
Python interface (part 3):
- #1160 Python operators in Nelson.
keyHash
,keyMatch
for python objects.isa
builtin support python types.- python dictionary to Nelson dictionary
dictionary(pyDict)
- conversion dictionary to python dictionary.
Changed
- help files generated sorted by name on all platforms.
- on windows, Qt libraries used are in debug mode.
Fixed
- #1195
strcmp({'a'},["a"])
did not return expected value.
v1.4.0
1.4.0 (2024-04-27)
Added
-
Python interface (part 2):
- #1168 Run Python script file from Nelson.
- #1141 Help about Managing Data between Python and Nelson.
- #1149 python bytes, and bytearray types were not managed.
- #1163 pyenv searchs python by version on Windows.
- #1164 Embed python distribution on Windows.
- #1167 Help about how to install Python package from Nelson.
- numpy types support if numpy available.
pyenv
: can use environment variables to set values.
-
getenv
: Retrieve the values of several environment variables. -
pyenv
: can use environment variables to set values. -
pyrun
: Python code object allowed as first input argument. -
nelson --without_python
starts nelson without python engine. -
skip_testsuite
: allows to skip test suite dynamically on condition.
Changed
- Allow to call method of a variable of CLASS/HANDLE type like a function (currently, only plugged for python subtype).
- #1142 Github Actions updated.
- #1157 Qt 6.7 support (used on Windows 64 bits binary).
copyfile
,isfile
,isdir
,mkdir
allow string array type as input.- warning about 'Matrix is singular to working precision' for inv matrix.
- tests webtools skipped if connection fails or not available.
Fixed
- #1144 test_run markdown help file had a typo.
- #1143 Linux Snapcraft version did not allow to use python.
- #1148 pyrun('print(A)','A','A',string(NaN)) did not return expected value.
single(int64([1 2; 3 4]))
returned a wrong value.py.tuple
,py.list
compatibility increased.pyenv
did not manage python's path with space on Windows.- Matio 1.5.27 compatibility on ArchLinux.
- Ubuntu 24.04 LTS support.
- #1178 Fedora 40 support (CI).
- #1134 [CI] MacOS X Ventura restored.
v1.3.0
1.3.0 (2024-03-30)
Added
-
Python interface (part 1):
- CMake: Optional Python3 detection.
pyenv
Change default environment of Python interpreter.pyrun
Run Python statements from Nelson.- Major types conversions are compatible (numpy in the next upcoming version).
-
ArchLinux packaging (https://aur.archlinux.org/packages/nelson-git).
-
contour
Contour plot of matrix. -
contour3
3-D contour plot. -
shiftdim
Shift array dimensions. -
xcorr2
2-D cross-correlation. -
deconv
Deconvolution and polynomial division. -
vecnorm
Vector-wise norm. -
normpdf
Normal probability density function. -
#310
gammaln
Logarithm of gamma function. -
#1112
gradient
Numerical gradient. -
#1126
isspace
Determine which characters are space characters.
Changed
- #1110 Eigen master branch (352ede96e4c331daae4e1be9a5f3f50fff951b8d) ready to use.
- #1134 [CI] MacOS X Ventura disabled (Install dependencies fails)
struct
supports scalar string array as field name.
Fixed
- #1110 add help about build and use C/C++ on fly.
- #1124 unexpected result from long statements on Multiple Lines.
- #1127 Nelson could crash if an mxn characters is displayed in the variable browser.
- #1125 Unsupported colon operator with char operands.
- Missing 'zoom in', 'zoom out' icons for help viewer in linux package.
gcd
without argument returned wrong error message.- #1133 [CI] [ARCH LINUX] Warning about MPI.
v1.2.0
1.2.0 (2024-02-25)
Added
- Recursive completion on Graphic handle, struct, handle, class (properties, methods).
- Adding links between documents about mex and supported compilers.
- GitHub CI for macOS Sonoma (Apple Silicon) support.
Export to ...
context menu for console and text editor as pdf.CTRL + Mouse wheel
orCTRL + +/-
to zoom in/out on console, editor, help.- Toolbar for figure with print, zoom in, zoom out, rotation, pan, restore axes.
zoom
,pan
,rotate3d
functions.MenuBar
,ToolBar
figure properties.- Window menu on graphic window, list all others available windows.
feature
builtin (undocument features, debug, tests, ...) content can change with next releases.GridAlpha
,GridColor
,View
properties for Axes.- CTRL+C in help viewer, copy selected text.
checkupdate
function and check update menu.isScalarStringArray
iinternal API C++ method.
Changed
- Clicking on an axis automatically sets it as the current axes object.
- Clicking on an figure automatically sets it as the current figure object.
saveas
exports the figure as a PDF page with centered alignment.- Default color of grid for axes.
- Default figure size updated.
- Default
MarkerFaceColor
value for compatibility. - view function returns azimuth and elevation values.
- Camera view reworked.
- Minimal screen resolution supported 800x600.
Fixed
- Change directory with file browser line editor did not work as expected.
- Template to create a function with file browser was wrong.
- Do not allow to select multiple variable in workspace browser.
- File browser checks if files with the extension ".m" have a valid name before enable 'run' context menu.
- Paste in editor with multiple tab.
- Starting the Nelson desktop was taking longer than necessary.