This file details the changes between Scilab 2026.0.0 (this version) and the previous 2025.1.0 stable release.
For changelogs of earlier releases, please see Scilab 2025.1.0.
Summary:
Please report anything we may have missed on Discourse or GitLab.
For a high-level description of the main new features in this release, please consult the homepage of the embedded documentation, available by simply typing doc
in the Scilab console.
cdftnc()
: Cumulative distribution function of the non-central student's T distribution.dbscan()
: Density-based clustering.enumeration()
: Get the enumeration of a classdef or an object.estimate_bandwidth()
: Estimate an appropriate bandwidth for mean shift clustering.gallery()
: Generate test matrices.gradient()
: Compute numerical gradient.isa()
: Check variable type.meanshift()
: Mean shift clustering algorithm.methods()
: Get accessible methods of a classdef or an object.properties()
: Get accessible properties of a classdef or an object.sortrows()
: Sort rows of a vector, matrix, table, or timeseries.spset()
: Set non-zero entries of a sparse matrix.host()
has been rewritten and is now used as backend for all other functions that perform system calls (dos()
, unix()
, unix_g()
, unix_s()
, unix_w()
, and unix_x()
) which are now obsolete.intersect()
now manages duration
, datetime
, table
, and timeseries
types.lib()
can now load a library without exposing its symbols (default behavior remains unchanged).setdiff()
now manages duration
, datetime
, table
, and timeseries
types.table()
and timeseries()
now manage integers.union()
now manages duration
, datetime
, table
, and timeseries
types.duration()
, calendarDuration()
, datetime()
, timeseries()
, and table()
functions.classdef
, enumeration
, properties
& methods
keywords.end
keyword can now be used to specify the last row/column index of an array, similarly to $
.All these functions and features will be removed in Scilab 2026.1.0 (May 2026):
demo_begin()
: Please use exec()
instead.demo_choose()
: Please use x_choose()
instead.demo_compiler()
: Please use haveacompiler()
instead.demo_end()
: Please use exec()
instead.demo_file_choice()
: Please use x_choose()
instead.demo_function_choice()
: Please use x_choose()
instead.demo_run()
: Please use exec()
instead.All these functions and features will be removed in Scilab 2027.0.0 (October 2026):
dos()
: Please use host()
instead.unix()
: Please use host()
instead.unix_g()
: Please use host()
instead.unix_s()
: Please use host()
instead.unix_w()
: Please use host()
instead.unix_x()
: Please use host()
instead.The following functions have been removed:
demo_folder_choice()
: undocumented and not used, replaced by x_choose()
.lft(P, p, R, r)
: obsolete since 2025.0.0, no more supported.h2norm(Sl [,tol])
(with Sl
a matrix of doubles): obsolete since 2025.0.0, no more supported.linf(g [,eps, tol])
(with g
a matrix of doubles): obsolete since 2025.0.0, no more supported.nicholschart(modules,, colors)
(syntax with skipped arguments): obsolete since 2025.0.0, no more supported.st_ility(Sl [,tol])
(with Sl
a matrix of doubles): obsolete since 2025.0.0, no more supported.syssize(Sl)
(with Sl
a matrix of doubles): obsolete since 2025.0.0, no more supported.help()
: obsolete since 2025.0.0, please use doc()
instead.daskr()
: obsolete since 2024.1.0, please use dae()
instead.dasrt()
: obsolete since 2024.1.0, please use dae()
instead.dassl()
: obsolete since 2024.1.0, please use dae()
instead.impl()
: obsolete since 2025.0.0, please use dae()
instead.testmatrix()
: obsolete since 2025.0.0, please use magic()
, invhilb()
or frank()
instead.captions()
: obsolete since 2025.0.0, please use legend()
instead.figure_style
property: obsolete since 2025.1.0, no more supported.princomp()
: obsolete since 2025.0.0, please use pca()
instead.genlib()
no more loads generated library (see #15918). lib()
function must be called to load the generated library.host()
function now returns 0
(success) instead of 1
(error) when called with an empty character string as input.If you are familiar with building Scilab from sources, the following dependencies have been updated.
demo_compiler()
was a useless wrapper for haveacompiler()
and has been removed.host()
function.demo_begin()
and demo_end)
were no longer maintained; they are now tagged as obsolete.Matplot()
extension to (#,#,3) true colors ND-arrays was not documented.spset(A, v)
, dual of [ij, v]=spget(A)
was missing.demo_run(file)
was useless and no longer maintained; it is now tagged as obsolete.ticks_format
and ticks_st properties
were no more taken into account.printf()
did not handle "uint64" integers greater than 2^32-1.mylib = lib(libdir)
registered functions in the default library instead of in the one given as output argument.msprintf("%ld\n", i)
and mprintf("%ld\n", i)
appended some "d" for "int64" or "uint64" inputs.cdft()
, T-distribution, returned wrong values when used with a low degree of freedom.unix_g()
did not read standard error output when exit code was 0 or 1 and did not read stdout when exit code was 2 or more.demo_file_choice()
was no longer maintained; it is now tagged as obsolete.jarray()
could not be used/initialized.csvRead()
was extremely slow to detect errors in column structure.table()
Matlab example did not work in Scilab.table()
creation did not support empty matrices.xsave()
and save()
no more worked with accented letters in the filename since Scilab 2025.0.0 on Windows.copyfile()
(used by tbx_package()
) ddid not preserve symbolic links.isvector()
documentation was wrong for scalar case.java.nio.file.AccessDeniedException
errors were displayed by FileBrowser.genlib()
made Scilab crash when macro code contained extra parentheses.std::from_chars
is now replaced by fast_float::from_chars
for FreeBSD & macOS.call_scilab
examples could not be built on recent GCC versions.demo_function_choice()
was no longer maintained; it is now tagged as obsolete.plot()
for data with a varying X
and a close-to-constant Y
.DISPLAY
variable was set.