18ac5cea8e229dca4ba9cd9263581e589dba6593
[scilab.git] / scilab / CHANGES
1
2
3         Welcome to Scilab 6
4         ===================
5
6 This file details the changes between Scilab 6.0.0-beta-1,
7 this release, and the previous release 5.5.2. For changelogs with
8 earlier release, please see Scilab 5.5.2.
9
10 This file is intended for the specific needs of advanced users, and
11 describes:
12  - New and modified features, in each module,
13  - Changes in functions (removed/added/modified),
14  - Changes in the language,
15  - Bug fixes.
16
17 This changelog is most likely incomplete, as an enormous amount of
18 code has changed between 5.5.2 and 6. Please report any thing we could
19 have missed, on the mailing lists or on http://bugzilla.scilab.org,
20 and we will correct it before the final Scilab 6.0.0 release.
21
22 Main new Features
23 =================
24
25 For high-level description of the main new features of this release,
26 please consult the file modules/helptools/data/pages/homepage-en_US.html.
27 It is also available as the "What's new" page of the help, by simply typing
28 "help" in Scilab console.
29
30 In summary, the main new features are:
31
32  * New language parser and interpreter, ensuring:
33    - Support for bigger data sets: dynamic memory usage.
34      No need for "stacksize" anymore.
35    - Xcos also uses the new re-written Scilab engine.
36
37  * New code productivity features: full-featured debugger, profiler
38    and coverage tool, and "lint"-like commands.
39
40  * Newsfeed, providing a continuous feed of news, tips, and general
41    communication from the community and from Scilab Enterprises.
42
43  * Licensing change: Scilab is now released under the terms of the GNU
44    General Public License (GPL) v2.0 (but continues to be available
45    under the terms of the CeCILL v2.1).
46
47
48 API modification
49 ================
50
51  * (new in 6.0.0 beta-1) A new set of C APIs to write C or C++
52    extensions (toolboxes) to Scilab. It allows defining native
53    functions (commonly called “gateways”), getting input parameters
54    for such functions, setting return parameters, accessing local
55    variables, using common helper functions for accessing environment
56    information (such as warning level), generate errors... It also
57    includes ways to overload existing Scilab functions to support
58    additional parameter types (see scilab_overload). Finally, you can
59    call back Scilab functions (macros and built-in functions) from
60    your gateway (see scilab_call).
61
62 * User-defined functions written in C (gateways) must now use the
63   "pvApiCtx" name for their second parameter, for example:
64
65
66      int sci_Levkov(char *fname, void* pvApiCtx)
67
68  instead of any "unsigned long l". This is now requires for some
69  macros, such as Rhs(), to work. (Although not strictly an API change,
70  it may require gateway code to be modified).
71
72
73 Other feature changes
74 =====================
75
76 * Valgrind error detection added to test_run (on Linux only)
77
78 * Addition or subtraction with an empty matrix now return an empty matrix.
79
80 * SSE2, Streaming SIMD Extensions 2 support is now mandatory to run
81   Scilab on Linux i686.
82
83 * A call stack limit has been introduced. Default maximum depth is
84   setup to 1000 andcan be changed by new function recursionlimit or by
85   preferences interface.
86
87 * The floating point exception mode (ieee) is now set to 2 by default:
88   floating point exceptions now produce "Inf" or "Nan", and do not
89   cause any error. The previous behavior can be recalled by simply
90   calling: ieee(0)
91
92
93 Other feature additions
94 =======================
95
96 * scatter/scatter3 plot with different mark colors is now available.
97
98 * parulacolormap is now available.
99
100 * name2rgb can now handle a single string and a matrix of strings.
101
102
103 Installation
104 ============
105
106 * Under Windows, MKL packages are now included in Scilab installer and
107   are not more downloaded anymore while installing Scilab.
108
109
110 Compilation
111 ===========
112
113 * A C++11 compliant compiler is now needed.
114
115 * Java minimal version switch to 1.8.
116
117 * Ant minimal version switched to 1.9.0 (for Java 1.8 compatibility).
118
119 * ecj minimal version switched to 4.4.0 (for Java 1.8 compatibility).
120
121 * --without-xcos now only disable Xcos compilation. Xcos graphical
122     interface is disabled using --without-gui.
123
124
125 Dependencies
126 =============
127
128 * Apache xmlgraphics stack upgraded to the latest versions :
129   - xmlgraphics-commons 2.0.1
130   - Batik 1.8
131   - FOP 2.0
132
133
134 Packaging & Supported Operating Systems
135 =======================================
136
137 * Scilab embedded JVM has been upgraded to Java 1.8. To run or compile
138   Scilab 6.0.0 you need at least:
139    - Windows:
140         Windows 8 (Desktop)
141         Windows 7
142         Windows Vista SP2
143         Windows Server 2008 R2 SP1 (64-bit)
144         Windows Server 2012 (64-bit)
145    - Mac OS X:
146         Intel-based Mac running Mac OS X 10.8.3+, 10.9+
147    - Linux:
148         Red Hat Enterprise Linux 5.5+, 6.x (32-bit), 6.x (64-bit), 7.x (64-bit)
149         Oracle Linux 5.5+, 6.x (32-bit), 6.x (64-bit), 7.x (64-bit)
150         Ubuntu Linux 12.04 LTS, 13.x
151         Suse Linux Enterprise Server 10 SP2+, 11.x
152 For more information, please consult: http://java.com/en/download/help/sysreq.xml
153
154
155 Signal Processing
156 ==================
157
158 * amell function:
159   - now checks its parameters are real numbers,
160   - now throws an error if the second parameter is not a scalar.
161
162
163 Input/Output File
164 ==================
165
166 * The use of I/O console is now allowed with the following functions:
167   mget, mgetl, mgetstr, mput, mputl and mputstr.
168
169 * mclearerr now returns a flag indicating the file identifier validity.
170
171 * fileinfo can now take a row vector as input.
172
173 * msprintf no more returns an error message when there are too many
174   input arguments (more values that format needs).
175
176
177 Data Structures
178 ================
179
180 * cells and structs are now native types, hence improving performances.
181
182 * cells:
183   - insertion and extraction must be done via () or {}.
184   - .dims and .entries fields have been removed, please use size and () instead.
185
186 * struct
187   - dims field has been removed, please use size instead.
188
189 * hypermatrix:
190   - hypermatrices are natively managed (without mlist overloading).
191   - typeof function now returns real type like constant, string, ... instead of hypermat
192   - type function returns real type like 1, 10, ... instead of 17 (mlist).
193   - .dims and .entries fields have been removed, please use size and () instead.
194
195
196 Removed Functions
197 ==================
198
199 * maxfiles function is now obsolete.
200
201 * intersci has been removed. Please use swig instead.
202
203 * numdiff has been removed. Please use numderivative instead.
204
205 * derivative has been removed. Please use numderivative instead.
206
207 * curblockc has been removed. Please use curblock instead.
208
209 * extract_help_examples has been removed. (Undocumented and based on former help format).
210
211 * Symbolic module functions have been removed:
212   - addf
213   - cmb_lin
214   - ldivf
215   - mulf
216   - rdivf
217   - solve
218   - subf
219   - trianfml
220   - trisolve
221   - block2exp
222
223
224 Removed Functions (based on former Scilab stack)
225 ================================================
226
227 * comp.
228
229 * errcatch.
230
231 * iserror.
232
233 * fun2string.
234
235 * getvariablesonstack.
236
237 * gstacksize.
238
239 * macr2lst.
240
241 * stacksize.
242
243 * code2str.
244
245 * str2code.
246
247 * -mem option (used to set stacksize at startup).
248
249
250 Modified Functions
251 ===================
252
253 * exec: exec of macro executes the body in the current scope but the prototype must have zero input and output arguments.
254 * error: an error number in input is deprecated.
255 * impl: Recall impl with the same parameters as in its previous stop is now available.
256 * ode: y0 is restricted to a column vector.
257 * pppdiv: Return a scalar of type 'constant' when the rank is 0.
258 * pdiv: Return a matrix of type 'constant' when all the rank are 0.
259 * typeof: Add a 2nd argument "overload" of get overloaded name (typeof(cell(), "overload") -> "ce")
260
261
262 Syntax Modifications
263 =====================
264
265 * Declaration of a number on two lines is no longer allowed:
266  1..
267  2
268
269 * {"foo"} returns a cell not a string matrix.
270
271 * Declaring non-homogenous strings ("string' or 'string") is no more allowed.
272
273 * New shortcut operators have been introduced: && and ||.
274
275
276 Deprecated Behaviors
277 =====================
278
279 * {} becomes different of [] and will be used on cells.
280
281 * Syntax %i:10 is now deprecated (only real scalars can be used).
282
283 * Writing string or string matrix in a file does not add blanck space before each value:
284     write("TMPDIR/test", ["test", "sample"; "sample", "test"])
285     "-" + mgetl("TMPDIR/test") + "-"
286
287 * while/else control instruction is no more supported.
288
289 * (a=b) executed like a == b is now deprecated and returns an error.
290
291
292 Known issues
293 =============
294
295 * This version will start in English by default.
296
297
298 Bug Fixes
299 =========
300
301 In 6.0.0:
302
303 * Bug #9456 fixed  - bench_run did not work on a path or in a toolbox
304
305 * Bug #13810  fixed - householder(v, k*v) returned column of %nan. Input parameters were not checked. The Householder matrix could not be returned. Help pages were inaccurate and without examples. There was no householder() demo.
306
307 * Bug #13869 fixed - bench_run with option nb_run=10 did not override the NB RUN tags
308
309 * Bug #14035 fixed - ndgrid did not manage all homogeneous data type (booleans, integers, polynomials, rationals, strings, [])
310
311 * Bug #14099 fixed - sci2exp macro was fixed to avoid "a+[] Warning"
312
313 * Bug #14347 fixed - plot2d crashed with multiple entries (non regression test).
314
315 * Bug #14359 fixed - Black Hole demo updated. Stop and Clear buttons did not have priority tag set. Callback_type property has been added and set to 10.
316
317 * Bug #14389 fixed - Updated int8(), type(), typeof(), overloading(), iconvert() and inttype() help pages. Added int64() and uint64() descriptions.
318
319 * Bug #14415 fixed - Corrected some spellings error in help pages
320
321 * Bug #14416 fixed - The file extension filter in Scinotes "Save as" window did not re-used the active file's extension when applicable.
322
323 * Bug #14423 fixed - bench_run did not have a return value, export file was not configurable
324
325 * Bug #14433 fixed - acoth (which call atanh) crash scilab
326
327 * Bug #14434 fixed - PlotSparse did not work anymore.
328
329 In 6.0.0 beta-1:
330
331 * Bug #6057 fixed  - trailing space after minus sign has been removed from the display of values
332
333 * Bug #9560  fixed - (1./M) was parsed as (1. / M) instead of (1 ./ M)
334
335 * Bug #11511 fixed - error() did non accept string matrix (non regression test).
336
337 * Bug #12044 fixed - Adding or substracting the empty matrix now return an empty matrix.
338
339 * Bug #12419 fixed - objects were cleared before the scilab.quit was called
340
341 * Bug #12928 fixed - int functions with %nan and %inf return wrong values.
342
343 * Bug #13298 fixed - Static analysis bugs detected by PVS-Studio fixed.
344
345 * Bug #13709 fixed - unique function sometimes returned wrong index values.
346
347 * Bug #13750 fixed V- Calling ss2ss function with flag = 2 returned an error.
348
349 * Bug #13780 fixed - size with two input and output arguments did not return an error.
350
351 * Bug #13795 fixed - grep with regexp option did not match the empty string properly
352
353 * Bug #13843 fixed - Scilab crashed when polarplot and plot2d were called with wrong strf value.
354
355 * Bug #13853 fixed - plzr() returned wrong results for discrete-time systems with a numeric time step.
356
357 * Bug #13862 fixed - There was no lazy evaluation of 'or' operands in 'if' tests.
358
359 * Bug #13864 fixed - macro %l_isequal was useless in Scilab 6.
360
361 * Bug #13872 fixed - Non regression test added for unique function (the indices returned were wrong)
362
363 * Bug #13890 fixed - getd did not return loaded symbols in previous scope.
364
365 * Bug #13893 fixed - simp() function did not set a rational denominator at 1 when numerator was equal to zero.
366
367 * Bug #13894 fixed - Default working directory of the previous session did not work.
368
369 * Bug #13903 fixed - get_function_path() returned a path with a missing file separator.
370
371 * Bug #13907 fixed - Avoids the gray background on the right panel of the palette Browser.
372
373 * Bug #13908 fixed - part(text, n:$) was very slow.
374
375 * Bug #13918 fixed - Unmanaged operations on hypermatrix did not call overload functions.
376
377 * Bug #13919 fixed - Scilab parsed "hidden" as a reserved keyword but it is not used.
378
379 * Bug #13920 fixed - `getscilabkeywords` help page should be in the "Scilab keywords" section.
380
381 * Bug #13931 fixed - handle "aarch64" processor for some Linux distribution.
382
383 * Bug #13944 fixed - The menu "Toolboxes" was missing.
384
385 * Bug #13983 fixed - who_user returned wrong values.
386
387 * Bug #13986 fixed - setdefaultlanguage did not set value correctly in Windows registry.
388
389 * Bug #13990 fixed - `gettext` did not manage the added '_W' macro.
390
391 * Bug #13990 fixed - Windows installer did not ship all localization files.
392
393 * Bug #13999 fixed - editor() was modal. It locked the console using an external editor.
394
395 * Bug #14020 fixed - Incorrect carriage return ascii code.
396
397 * Bug #14022 fixed - getscilabkeywords() was KO (+gateway what() added).
398
399 * Bug #14023 fixed - It was not possible to concatenate cells.
400
401 * Bug #14024 fixed - Print of macrofile display a debug message
402                      instead of macro prototype.
403
404 * Bug #14025 fixed - head_comments did not take into account compiled functions.
405
406 * Bug #14028 fixed - force flag of genlib did not rebuild bin file.
407
408 * Bug #14030 fixed - Linear algebra demo crashed due to a bad delete in schur implementation and free a NULL pointer in fft implementation.
409
410 * Bug #14036 fixed - tag and user_data properties were not displayed and not documented for light entity.
411
412 * Bug #14038 fixed - Encoded integers were no longer accepted for list extraction.
413
414 * Bug #14040 fixed - graphic property setting fails when using array of handles
415
416 * Bug #14041 fixed - genlib crash when the file is locked by another program.
417
418 * Bug #14043 fixed - Examples of api Scilab help pages had to be updated (pvApiCtx in gateway prototypes).
419
420 * Bug #14047 fixed - wrong behaviour of break ( continue ) in if outside of loop.
421
422 * Bug #14049 fixed - genlib hangs if an unexpected endfunction occurs.
423
424 * Bug #14055 fixed - overload on matrix concatenation did not called with [].
425
426 * Bug #14057 fixed - grand(m,n) returned a wrong error and grand(m,n,p) called an overloading function instead of returning an error.
427
428 * Bug #14058 fixed - Scilab crashed with 'file("close", file())' instruction
429
430 * Bug #14059 fixed - Lack of performance on deletion of matrix elements.
431
432 * Bug #14065 fixed - Change "java size" in points in graphics font help page.
433
434 * Bug #14082 fixed - m=1; m()=1; made Scilab crash.
435
436 * Bug #14093 fixed - atanh returns NaN for values with an absolute value greater than 1
437
438 * Bug #14095 fixed - Scilab crashed when a .fig file was loaded with loadmatfile function.
439
440 * Bug #14096 fixed - Issue with mscanf Function.
441
442 * Bug #14097 fixed - genlib no more adds a separator at the end of the lib path if it is not given in the directory path.
443
444 * Bug #14105 fixed - New block comments /*...*/ feature was not documented.
445
446 * Bug #14107 fixed - lstcat of a string and a list did not produce consistent results.
447
448 * Bug #14109 fixed - lsq function crashed Scilab when Scilab version depended on mkl library.
449
450 * Bug #14113 fixed - Scilab 6 did not detect infinite loop.
451
452 * Bug #14135 fixed - crash when running "Graphics -> Matplot -> Java Image" demonstration.
453
454 * Bug #14141 fixed - recursive insertion: gcf().attribute=value => "Wrong insertion : function or macro are not expected".
455
456 * Bug #14144 fixed - Scilab crashed with int64(2^63).
457
458 * Bug #14149 fixed - hdf5 could not restore hypermatrix with good dimensions.
459
460 * Bug #14150 fixed - The Windows SDK was not found on Windows 8.1.
461
462 * Bug #14156 fixed - mfscanf returned an empty matrix when datafile contained a header.
463
464 * Bug #14159 fixed - Matplot crashed Scilab on boolean input.
465
466
467 * Bug #14178 fixed - tcl/tk unavailability on MacOS is now documented.
468
469 * Bug #14181 fixed - Calling intg (or integrate) in a function that is being integrated failed.
470
471 * Bug #14187 fixed - fscanfMat failed to read format %d, %i and %f.
472
473 * Bug #14199 fixed - sqrt returned wrong dimension results on matrix with more than dimensions.
474
475 * Bug #14203 fixed - Improve some error messages, some help pages and some comments.
476
477 * Bug #14204 fixed - dec2bin ( dec2base ) must show a better error message for too large values.
478
479 * Bug #14205 fixed - Console crash when assigning uint32 numbers to double matrix.
480
481 * Bug #14209 fixed - 1:245 created infinite loop.
482
483 * Bug #14212 fixed - Scilab 6 did not load array of struct from Scilab 5.5 files correctly
484
485 * Bug #14219 fixed - As bug #14203, improve some error messages, some help pages and some comments.
486
487 * Bug #14223 fixed - det returned an error when it is used with a singular matrix.
488
489 * Bug #14225 fixed - command-line option "-quit" should set the processs Exit status
490
491 * Bug #14228 fixed - Setting rotation_angles property to a matrix of any size did not return error message.
492
493 * Bug #14232 fixed - Typos in Xcos.
494
495 * Bug #14245 fixed - Problem in recursive extraction using list with struct.
496
497 * Bug #14247 fixed - sqrt function did not work on hypermatrices (non regression test).
498
499 * Bug #14249 fixed - ctrl-c can be used to stop writing control expression.
500
501 * Bug #14251 fixed - `spec` leaked some memory.
502
503 * Bug #14253 fixed - Insertion in a struct contained in a list fixed.
504
505 * Bug #14255 fixed - fftw without MKL leaked in internal withMKL function.
506
507 * Bug #14300 fixed - Crash when playing with structures.
508
509 * Bug #14303 fixed - matrix display for large number was not correctly aligned
510
511 * Bug #14304 fixed - find(x, nmax) returned [] (non regression test).
512
513 * Bug #14313 fixed - Parser did not create a column separator after spaces and '...' at the end of lines
514
515 * Bug #14316 fixed - Operation scalar^matrix was identical to scalar.^matrix instead of being expm( log(scalar) * matrix )
516
517 * Bug #14331 fixed - The third argument of lsq crashed Scilab.
518
519 * Bug #14348 fixed - Scilab did not open sce/sci file from Windows explorer.
520
521 In 6.0.0 alpha-2 and earlier:
522
523 * Bug #11511 fixed - error() did non accept string matrix (non regression test).
524
525 * Bug #12044 fixed - Adding or substracting the empty matrix now return an empty matrix.
526
527 * Bug #12419 fixed - objects were cleared before the scilab.quit was called
528
529 * Bug #12928 fixed - int functions with %nan and %inf return wrong values.
530
531 * Bug #13709 fixed - unique function sometimes returned wrong index values.
532
533 * Bug #13750 fixed - Calling ss2ss function with flag = 2 returned an error.
534
535 * Bug #13780 fixed - size with two input and output arguments did not return an error.
536
537 * Bug #13843 fixed - Scilab crashed when polarplot and plot2d were called with wrong strf value.
538
539 * Bug #13853 fixed - plzr() returned wrong results for discrete-time systems with a numeric time step.
540
541 * Bug #13862 fixed - There was no lazy evaluation of 'or' operands in 'if' tests.
542
543 * Bug #13864 fixed - macro %l_isequal was useless in Scilab 6.
544
545 * Bug #13872 fixed - Non regression test added for unique function (the indices returned were wrong)
546
547 * Bug #13890 fixed - getd did not return loaded symbols in previous scope.
548
549 * Bug #13893 fixed - simp() function did not set a rational denominator at 1 when numerator was equal to zero.
550
551 * Bug #13894 fixed - Default working directory of the previous session did not work.
552
553 * Bug #13903 fixed - get_function_path() returned a path with a missing file separator.
554
555 * Bug #13907 fixed - Avoids the gray background on the right panel of the palette Browser.
556
557 * Bug #13908 fixed - part(text, n:$) was very slow.
558
559 * Bug #13919 fixed - Scilab parsed "hidden" as a reserved keyword but it is not used.
560
561 * Bug #13920 fixed - `getscilabkeywords` help page should be in the "Scilab keywords" section.
562
563 * Bug #13931 fixed - handle "aarch64" processor for some Linux distribution.
564
565 * Bug #13944 fixed - The menu "Toolboxes" was missing.
566
567 * Bug #13983 fixed - who_user returned wrong values.
568
569 * Bug #13990 fixed - `gettext` did not manage the added '_W' macro.
570
571 * Bug #14020 fixed - Incorrect carriage return ascii code.
572
573 * Bug #14022 fixed - getscilabkeywords() was KO (+gateway what() added).
574
575 * Bug #14023 fixed - It was not possible to concatenate cells.
576
577 * Bug #14024 fixed - Print of macrofile display a debug message
578                      instead of macro prototype.
579
580 * Bug #14025 fixed - head_comments did not take into account compiled functions.
581
582 * Bug #14028 fixed - force flag of genlib did not rebuild bin file.
583
584 * Bug #14036 fixed - tag and user_data properties were not displayed and not documented for light entity.
585
586 * Bug #14038 fixed - Encoded integers were no longer accepted for list extraction.
587
588 * Bug #14040 fixed - graphic property setting fails when using array of handles
589
590 * Bug #14043 fixed - Examples of api Scilab help pages had to be updated (pvApiCtx in gateway prototypes).
591
592 * Bug #14047 fixed - wrong behaviour of break ( continue ) in if outside of loop.
593
594 * Bug #14049 fixed - genlib hangs if an unexpected endfunction occurs.
595
596 * Bug #14055 fixed - overload on matrix concatenation did not called with [].
597
598 * Bug #14057 fixed - grand(m,n) returned a wrong error and grand(m,n,p) called an overloading function instead of returning an error.
599
600 * Bug #14058 fixed - Scilab crashed with 'file("close", file())' instruction
601
602 * Bug #14059 fixed - Lack of performance on deletion of matrix elements.
603
604 * Bug #14065 fixed - Change "java size" in points in graphics font help page.
605
606 * Bug #14082 fixed - m=1; m()=1; made Scilab crash.
607
608 * Bug #14093 fixed - atanh returns NaN for values with an absolute value greater than 1
609
610 * Bug #14095 fixed - Scilab crashed when a .fig file was loaded with loadmatfile function.
611
612 * Bug #14097 fixed - genlib no more adds a separator at the end of the lib path if it is not given in the directory path.
613
614 * Bug #14105 fixed - New block comments /*...*/ feature was not documented.
615
616 * Bug #14107 fixed - lstcat of a string and a list did not produce consistent results.
617
618 * Bug #14109 fixed - lsq function crashed Scilab when Scilab version depended on mkl library.
619
620 * Bug #14113 fixed - Scilab 6 did not detect infinite loop.
621
622 * Bug #14135 fixed - crash when running "Graphics -> Matplot -> Java Image" demonstration.
623
624 * Bug #14141 fixed - recursive insertion: gcf().attribute=value => "Wrong insertion : function or macro are not expected".
625
626 * Bug #14144 fixed - Scilab crashed with int64(2^63).
627
628 * Bug #14149 fixed - hdf5 could not restore hypermatrix with good dimensions.
629
630 * Bug #14150 fixed - The Windows SDK was not found on Windows 8.1.
631
632 * Bug #14156 fixed - mfscanf returned an empty matrix when datafile contained a header.
633
634 * Bug #14159 fixed - Matplot crashed Scilab on boolean input.
635
636 * Bug #14187 fixed - fscanfMat failed to read format %d, %i and %f.
637
638 * Bug #14199 fixed - sqrt returned wrong dimension results on matrix with more than dimensions.
639
640 * Bug #14203 fixed - Improve some error messages, some help pages and some comments.
641
642 * Bug #14204 fixed - dec2bin ( dec2base ) must show a better error message for too large values.
643
644 * Bug #14205 fixed - Console crash when assigning uint32 numbers to double matrix.
645
646 * Bug #14209 fixed - 1:245 created infinite loop.
647
648 * Bug #14212 fixed - Scilab 6 did not load array of struct from Scilab 5.5 files correctly
649
650 * Bug #14219 fixed - As bug #14203, improve some error messages, some help pages and some comments.
651
652 * Bug #14223 fixed - det returned an error when it is used with a singular matrix.
653
654 * Bug #14225 fixed - command-line option "-quit" should set the processs Exit status
655
656 * Bug #14228 fixed - Setting rotation_angles property to a matrix of any size did not return error message.
657
658 * Bug #14232 fixed - Typos in Xcos.
659
660 * Bug #6064 fixed - scatter function did not exist in Scilab.
661
662 * Bug #8990 fixed - zoom_auto feature was missing on the plot toolbar.
663
664 * Bug #9621 fixed - A tlist with undefined fields can now be saved.
665
666 * Bug #12202 fixed - Mixing int8 and doubles with colon operator led to wrong results.
667
668 * Bug #13289 fixed - Using non-integer indexes for mlists made Scilab crash.
669
670 * Bug #13517 fixed - isdef crashed Scilab when called with a vector of strings
671                      as input in a function and after a declaration of variable.
672
673 * Bug #13807 fixed - Invalid margins were computed when figure was not visible.
674
675 * Bug #13829 fixed - mean and sum functions returned wrong results for hypermatrices.
676
677 * Bug #13834 fixed - Drawing a high number of strings in a figure generated a Java exception.
678
679 * Bug #13838 fixed - Sparse and complex substraction made Scilab crash.
680
681 * Bug #13854 fixed - Under some operating systems, SciNotes did not initialize a new document at startup.
682
683 * Bug #13866 fixed - There were some issues with FFTW3 library.
684
685 * Bug #13881 fixed - datatipRemoveAll did not work.
686
687 * Bug #13924 fixed - rationals r1==r2 and r1~=r2 might sometimes be wrong.
688
689 * Bug #13925 fixed - SciNotes used the wrong paired bracket highlight style.
690
691 * Bug #13941 fixed - Internal timestamps of HDF5 files prevented having a fixed
692                      hash for an unvarying set of saved objects.
693
694 * Bug #13942 fixed - Now the palette browser tree is always resized when
695                      expanded/collapsed.
696
697 * Bug #13971 fixed - A space has been added between Scilab prompt and cursor.
698
699 * Bug #13972 fixed - Wildcard ('*') was not managed in printf expressions.
700
701 * Bug #14043 fixed - Gateway C prototype changed from int sci_...(char *fname, unsigned long l)
702                      to sci_...(char *fname, void* pvApiCtx). Variable name has to be
703                      exactly "pvApyCtx" when macros are used in a gateway.
704
705 * Bug #14044 fixed - MALLOC.h is now renamed to sci_malloc.h.