4b38ee855540aeebbe09e0abbfe08a3beb690125
[scilab.git] / scilab / CHANGES_5.3.X
1                Changes between version 5.2.X and 5.3.0 of Scilab
2                =================================================
3
4
5 Performance:
6 ============
7
8 * Faster access to primitive table (internal). This change improves the overall
9   speed of Scilab.
10
11 * Improved access to the list of functions increases the performances.
12
13 FFTW:
14 =====
15
16 * On Windows, Scilab can use FFTW3 wrapper of Intel Math Kernel Library.
17   Select "Download FFTW3 wrapper optimized by Intel Math Kernel Library" during
18   installation.
19
20 Graphics:
21 =========
22
23 * the set, get and uicontrol functions are now overloadable.
24
25 * Datatips tools added, the frequency response plots ("bode", "black", "nyquist",
26   "gainplot",...) supports cutomized datatips.
27
28 * bug 2651 fixed - "plot2d" was not working when the x argument was not given
29                    and some optional arguments were given.
30
31 * bug 3100 fixed - The "xselect" function has been made obsolete, in accordance
32                    with its help page.
33
34 * bug 3975 fixed - The "xload" function was not able to load the contents of a previously
35                    saved graphics figure into a different one.
36
37 * bug 4658 fixed - When some graphic functions were called without any arguments,
38                    the error was not explicit enough.
39
40 * bug 5284 fixed - In some case function "legend" drew line segments in its box
41                    in a reverse order.
42
43 * bug 6532 fixed - In some case text entity rendering order was wrong.
44
45 * bug 6676 fixed - When we executed "twinkle(gca())", data related to the
46                    current axes were not twinkling.
47
48 * bug 6786 fixed - The "polarplot" function did not correctly display the polar
49                    coordinates grid when negative rho values were plotted.
50
51 * bug 6835 fixed - Performing an interactive rotation after having executed the
52                    "plot3d" function caused Scilab to freeze on 64-bit Windows.
53
54 * bug 6958 fixed - The "tics_labels" property from "axes" rejected column vector of labels.
55
56 * bug 6959 fixed - axis.tics_labels did not accept $..$ LaTeXed labels
57
58 * bug 7024 fixed - Error messages from "twinkle" were not standard.
59
60 * bug 7028 fixed - When scilab printed an "axis" graphic handle, string array
61                    size for "tics_labels" was erroneous.
62
63 * bug 7065 fixed - "getColorIndex" used some global variables prohibiting
64                    user's calls.
65
66 * bug 7067 fixed - The "isoview" macro created an unnecessary "plot" object.
67
68 * bug 7079 fixed - The "mtlb_get" used a "h" global variable instead of the
69                    given "H" argument.
70
71 Localization:
72 =============
73
74 * Polish localization added. Thanks to Paweł Dąbrowski, Ernest Życiński, 
75   Sebastian Sławski, Kamil Dąbrowsk, Kamil Strojek, Kamil Dąbrowski, 
76   Michał Snoc, Piotr Seroka...
77
78 * bug 7059 fixed - Remove the tag X-Launchpad-Export-Date to avoid huge and
79                    useless diff after a launchpad synchronization
80
81 API_Scilab:
82 ===========
83
84 * Error(x) is now deprecated and will be removed in Scilab 5.4. 
85   Please consider SciError(x).
86
87 Documentation:
88 ==============
89
90 * It is now possible to use LaTeX inline in the documentation. Thanks to 
91   Calixte Denizet for this feature. (See bug #4329)
92
93 * bug 6630 fixed - JavaHelp does not update existing image files when 
94                    building help.
95
96 * bug 6852 fixed - JavaHelp did not center the LaTeX formulas containing an
97                    attribute align="center" 
98
99 Optimization:
100 =============
101
102 * Simulated annealing: Added documentation for accept_func_default and 
103   accept_func_vfsa.  
104
105 Xcos:
106 =====
107
108 * modelica compiler 1.12.1
109
110 * The default palettes can now be manipulated by the user.
111
112 * LaTeX formulas can be used on any TextBlock using the Scilab tag based 
113   description.
114
115 * builnewblock.sci rewritten to use scilab dynamic link module tools.
116
117 * bug 4156 fixed - scicos defines some temp. variables on stack without remove.
118
119 * bug 4705 fixed - scicos used a non existing file BEpsf
120
121 * bug 4898 fixed - The scifunction_block stored list() parameters on the ipar 
122                    field instead of the opar field.
123
124 * bug 4977 fixed - Some icons were duplicated between Gui and Xcos.
125
126 * bug 5161 fixed - The export to SVG did not work with images or html.
127
128 * bug 5596 fixed - It was not possible to change text block properties (font
129                    and color)
130
131 * bug 6440 fixed - xcos demos did not work and returned an error "Unable to 
132                    open file".
133
134 * bug 6527 fixed - There was several instances of the same variable name
135                    in the workspace when a data set was exported via a
136                    "To Workspace" block.
137
138 * bug 6661 fixed - "Code Generation" menu failed.
139
140 * bug 6672 fixed - "Code generation" failed if superblock had 
141                    some gain blocks.
142
143 * bug 6674 fixed - modelica generic block did not work.
144
145 * bug 6668 fixed - Xcos modelica demos did not work with the new 
146                    modelica compiler.
147
148 * bug 6814 fixed - Link point positions (link.xx and link.yy) were not exported
149                    as column vectors.
150
151 * bug 6900 fixed - The block interfunction was escaped when calling scilab
152                    macros.
153
154 * bug 6903 fixed - modelicat called ocamlrun (wrong dependency on Windows).
155
156 * bug 6981 fixed - the Scilab 'exit' call was killing Xcos session without 
157                    prompting the user if modified diagrams must be saved before 
158                    exiting.
159
160 * bug 7099 fixed - xml2modelica called ocamlrun (wrong dependency on Windows).
161
162 * bug 7053 fixed - Rotated saved blocks were not loaded with the right rotation 
163                    value.
164
165 Dynamic link:
166 =============
167
168 * bug 4265 fixed - In the dynamic link functions (ilib_*), when a compiler was
169                    not available, the execution continued.
170
171 Compilation:
172 ============
173
174 * On Windows, Pentium III class (or equivalent) with SSE instructions is 
175   required.
176
177 * Windows 2000 is no more supported as operating system.
178
179 * Scilab Mac OS X distribution relies only on Java 1.6 and is therefor now
180   only available under 64 bits OS (Most of 10.5 and all 10.6 Mac OS X versions)
181
182 * Under Mac OS X, uses /usr/libexec/java_home instead of hardcoded paths to
183   retrieve JAVA_HOME
184
185 * tclsci module is dynamically loaded by Scilab.
186
187 * pvm module is dynamically loaded by Scilab.
188
189 * fix many warnings detected by Intel Fortran 11.1.051 and more on Windows.
190
191 * Better detection system of the version of the dependencies
192
193 * Add a check of the minimal installations of hdf5 (1.8.4), batik (1.7)
194
195 * /usr/share/*/lib added to the Java search path for OpenSuse
196
197 * Option --enable-compilation-tests added to the configure. With this option, 
198   if TestNG has been found, tests will be launched at compilation time.
199
200 * bug 4300 fixed - Moving Command Queue management to core.
201
202 * bug 6432 fixed - Checkstyle disabled on SWIG (Java/JNI) generated files
203
204 * bug 6643 fixed - --without-gui failed to disable Ocaml build (A xcos 
205                    dependency)
206
207 * bug 6857 fixed - make CXXFLAGS="-myflag" was removing some C++ arguments.
208
209 helptools:
210 ==========
211
212 * %helps_modules (global variable in scilab) is defined only when 
213   scilab build help and no more at scilab's startup.
214
215 Matlab to Scilab conversion tools:
216 ==================================
217
218 * Unitary tests added.
219
220 * Matlab-Scilab equivalents dictionnary added in documentation.
221
222 * In 'mfile2sci', option only_double is now set to %T as default.
223
224 * Conversion updated with new Scilab functions:
225   - 'filesep' now converted by 'filesep' instead of 'pathconvert'.
226
227 Core:
228 =====
229
230 * Under GNU/Linux, Unix and Mac OS X, for security purposes, temporary
231   directory name are now randomized and permissions are limited to the user.
232   (See bug #3493)
233
234 * Under GNU/Linux, Unix and Mac OS X, if TMPDIR is set, Scilab will honor it 
235   to store its temporary files (See bug #3493)
236
237 * Under non-Windows system, the name of the temporary directory has been changed
238   from SD_* to SCI_TMP_* to match the current Windows behavior.
239
240 Tests:
241 ======
242
243 * Mechanism of unitary tests for Java code based on TestNG added and used.
244
245 Text Rendering:
246 ===============
247
248 * Antialiasing activated by default to render text
249
250 License:
251 ========
252
253 * The demos files (modules/*/demos/**/*.dem.*) are now released in the public
254   domain. (See bug #4902)
255
256 Obsolete Functions:
257 ===================
258
259 * 'MSDOS' obsolete see 'getos' (SEP #39).
260
261 Removed functions (previously declared as obsolete):
262 ====================================================
263
264 * 'textprint', 'pol2tex' replaced by 'prettyprint'.
265
266 * 'tk_savefile' replaced by 'uigetfile'.
267
268 * 'tk_getdir' replaced by 'uigetdir'.
269
270 * 'tk_choose' replaced by 'x_choose'.
271
272 * 'sci2excel' replaced by 'write_csv'.
273
274 * 'excel2sci' replaced by 'read_csv'.
275
276 * 'x_message_modeless' replaced by 'messagebox'.
277
278 * 'sethomedirectory' replaced by 'SCIHOME'.
279
280 * 'getcwd' replaced by 'pwd'.
281
282 * 'xbasc' replaced by 'clf'.
283
284 * 'getf' replaced by 'exec'.
285
286 * 'NumTokens' replaced by 'tokens'.
287
288 * 'sort' replaced by 'gsort'.
289
290 * 'scilab_demos' replaced by 'demo_gui'.
291
292 * 'with_gtk' replaced by 'getversion'.
293
294 * 'readc_' replaced by 'input'.
295
296
297 ATOMS:
298 ======
299
300 * The ATOMS GUI ergonomics has been improved.
301
302 * ATOMS GUI: When a module is not up-to-date, a warning is displayed on the
303   corresponding sheet.
304
305 * bug 6596 fixed - When the ATOMS GUI started, nothing was displayed. Now, the
306                    list of already installed modules appears on the home page.
307
308 * bug 6842 fixed - If the installed version of a module was not the most recent
309                    one, the ATOMS GUI claimed that the newest version was
310                    installed.
311
312 * bug 6977 fixed - ATOMS GUI: In the presentation frame, URLs and emails were
313                    not hyperlinked.
314
315 Bug fixes:
316 ==========
317
318 * bug 1304 fixed - macr2tree now works with a Scilab expression as input.
319
320 * bug 2076 fixed - pspect did not use the last data window.
321
322 * bug 2654 partially fixed - exec returned a wrong error if line had more 
323                    than 4096 characters.
324
325 * bug 2775 fixed - Multiplication of 0 times infinity did not work because of
326                    ATLAS under Windows.
327
328 * bug 3780 fixed - The function loadmatfile did not ignore comments found in 
329                    ASCII files while loading them, resulting in an error message.
330                    For Matlab compatibility, when this function is called with 
331                    one input argument load(filename), it now looks for a binary 
332                    file (if filename as no extension or .mat extension) or for an
333                    ASCII file if filename has an other extension.
334
335 * bug 3796 fixed - In some situation the "tf2ss()" function failed to
336                    compute correctly the state space representation of
337                    a transfer function.
338
339 * bug 3811 fixed - Documention about "typeof" and overload prefixes was not
340                    up-to-date (help overloading).
341
342 * bug 3937 fixed - Buttons size in "x_choices" window was related to the labels one.
343
344 * bug 4075 fixed - a basic uicontrol example crashed scilab 5.0.3
345
346 * bug 4117 fixed - Closing via the user interface a graphics figure which had a
347                    non-existing event handler attached did not destroy 
348                    its associated data structure.
349
350 * bug 4359 fixed - M(:,:)='anything' produced erroneous result.
351
352 * bug 4362 fixed - test_run("gui","checkbox") no more freezes Scilab.
353
354 * bug 4572 fixed - scilab did a SIGSEGV after stacksize('max') + stacksize().
355
356 * bug 4625 fixed - intersci-n was broken on Windows.
357
358 * bug 4640 fixed - plot2d() put CPU utilization at 100% on Windows.
359
360 * bug 4672 fixed - Internal function AddFunctionInTable renamed to 
361                    getFunctionByName to avoid confusions on the actual usage
362                    of this function. Thanks to Yuvraj Tomar.
363
364 * bug 4699 fixed - xml2test.pl: Paths were badly displayed in some cases.
365
366 * bug 4783 fixed - comparison between sparse complex matrix and a full one was 
367                    wrong when the sparse matrix contains a  zero row.
368
369 * bug 4799 fixed - Sometime the bode, nyquist , ... function reported a
370                    "non convergence" error
371                    
372 * bug 4841 fixed - functions created by 'getd' were unknown to scilab.
373
374 * bug 4948 fixed - a simple Runge Kutta method for solving a second order 
375                    differential equation had a strange behaviour.
376
377 * bug 4857 fixed - help file of 'gsort' updated about sort of complex numbers
378                    and overloading.
379
380 * bug 4985 fixed - mgetl did not use fgets (C function).
381
382 * bug 4996 fixed - mgetl() was not located in the right module. It has been
383                    moved to "fileio" module
384
385 * bug 5110 fixed - incomplete mgetstr documentation.
386
387 * bug 5123 fixed - help about '%helps' was wrong.
388
389 * bug 5136 fixed - information about dependant platform display of 
390                    exponential form (%e) was missing in the prinft_conversion
391                    documentation.
392
393 * bug 5149 fixed - test_run(): Calls to exec() were no more logged by diary().
394
395 * bug 5216 fixed - URLs are now active in uicontrols of style "text". This 
396                    feature is used in ATOMS GUI (modules description).
397
398 * bug 5432 fixed - a link to http://www.tcl.tk/doc/ added in help files about
399                    Tcl/Tk.
400
401 * bug 5512 fixed - The display order of input arguments was not described in 
402                    the disp() documention.
403
404 * bug 5541 fixed - In the API documentation, the information that data must be
405                    allocated before calling API functions was missing.
406
407 * bug 5575 fixed - Wrong german translation fixed (Standart => Standard)
408
409 * bug 5583 fixed - exec() did not manage correctly UTF-8 and ANSI/ASCII files 
410                    encoded.
411
412 * bug 5588 fixed - Assigning null() in a tlist or mlist field shifted all remaining
413                    values with respect to  field names.
414
415 * bug 5609 fixed - documentation stated incorrectly fieldnames works on cells
416
417 * bug 5629 fixed - export_to_hdf5 to a file overwrote a directory 
418                    with the same name (now trigger an error).
419
420 * bug 5630 fixed - export_to_hdf5 to a file with a directory named 
421                    the same altered the permission of the directory.
422
423 * bug 5724 fixed - erfinv and erf missed references to similar functions
424
425 * bug 6332 fixed - stacksize had problems on Mac OS X and 64 bit platforms.
426
427 * bug 6419 fixed - gstacksize() There was no way to retrieve minimum 
428                    from Scilab.
429
430 * bug 6428 fixed - fscanfMat did not manage format parameter as fprintfMat.
431
432 * bug 6435 fixed - error 4 returned a wrong message.
433
434 * bug 6447 fixed - unix_g() and dos() did not support properly neither UTF8
435                    nor ANSI encoded output.
436
437 * bug 6449 fixed - regexp returned a wrong value with a string returned by mgetl.
438
439 * bug 6451 fixed - length returned a wrong value with a string returned by mgetl.
440
441 * bug 6452 fixed - part returned a wrong value with a string returned by mgetl.
442
443 * bug 6484 fixed - file did not return filename of a opened fortran file.
444
445 * bug 6504 fixed - Copy/paste the contents of message boxes was not available.
446
447 * bug 6510 fixed - modules/helptools/help_en_US.xsl and
448                    modules/helptools/help_fr_FR.xsl were useless but not removed.
449
450 * bug 6511 fixed - mseek and mtell did not manage files > 2 Gbytes on 64 bits 
451                    Windows.
452
453 * bug 6516 fixed - fullfile did not remove blanks and not create a valid path.
454
455 * bug 6535 fixed - The property 'ListboxTop' of the graphic user interface object
456                    'listbox' had no effect.
457
458 * bug 6543 fixed - neldermead issues for automatic restarts.
459
460 * bug 6549 fixed - genlib function had a behavior which was not consistent with
461                    the load function.
462
463 * bug 6550 fixed - lib(".") returned a relative path in library variable 
464                    created.
465
466 * bug 6556 fixed - fprintf() returned an error if it's called 2 times (or more)
467                    on the same file.
468
469 * bug 6635 fixed - Incorrectly drawn Bode plots (calfrq bug).
470
471 * bug 6666 fixed - emptystr() gave a wrong result instead of complaining 
472                    about hypermatrix.
473
474 * bug 6682 fixed - mprintf, msprintf, mfprintf did not manage octal (%o) format.
475
476 * bug 6731 fixed - Information on the output argument was missing from the 
477                    lib() documentation.
478
479 * bug 6740 fixed - It was not possible to launch Scilab as Minimized 
480                    or Maximized Window.
481
482 * bug 6744 fixed - p_margin() returned an erroneous result.
483
484 * bug 6745 fixed - g_margin() returned an erroneous result.
485
486 * bug 6750 fixed - TMPDIR constant had no help page.
487
488 * bug 6774 fixed - Calling get_param generated a "funcprot" warning when  
489                    the value of an option which was a function.
490
491 * bug 6783 fixed - Solving a system of linear equation by backslash ("\")
492                    caused a crash, when using complex numbers on Windows.
493
494 * bug 6784 fixed - It was not possible to move a Scilab installation without
495                    breaking the (previously installed) ATOMS packages load.
496
497 * bug 6827 fixed - The error printed by spchol if the variable was complex
498                    was wrong.
499
500 * bug 6830 fixed - C2F(scistring) in stack2.c was broken for macro names of 
501                    exactly 2 characters.
502
503 * bug 6831 fixed - in cli (=nwni) mode, tbx_build_help failed.
504
505 * bug 6861 fixed - yulewalk example failed on Windows.
506
507 * bug 6862 fixed - Help page for 'vectorfind' missed some explanations about 
508                    input arguments types. Moreover there were missing checks
509                    about input arguments number and types in the function.
510
511 * bug 6864 fixed - Some error messages were wrong in data_structures module.
512
513 * bug 6867 fixed - The error message when base2dec() was called with an invalid
514                    base representation was wrong.
515
516 * bug 6889 fixed - 'fscanfMat' crashed with wrong formatted files.
517
518 * bug 6891 fixed - 'whos' did not display global variables.
519
520 * bug 6893 fixed - Some files +~JF****.tmp where created outside of the Scilab
521                    temporary directory.
522
523 * bug 6901 fixed - This script with 'exec' produced a weird warning.
524
525 * bug 6923 fixed - Some localized messages were wrong in 'qmr'.
526
527 * bug 6924 fixed - Some error messages were wrong in 'gmres' and 'qmr'.
528
529 * bug 6932 fixed - Unitary test for function 'exit' failed in Linux binary
530                    version.
531
532 * bug 6933 fixed - Some temporary files (dict_*.tmp) were created when using
533                    search engine of the help browser.
534
535 * bug 6940 fixed - An error message was wrong in 'pvm_send'.
536
537 * bug 6946 fixed - information about optional input arguments 'column separator'
538                    and 'decimal mark' were missing in the write_csv documentation.
539
540 * bug 6947 fixed - Some demos in "Optimization and Simulation" failed, 
541                    without write rights in SCI subdirectory.
542
543 * bug 6951 fixed - stacksize had a strange behaviour.
544
545 * bug 6952 fixed - stacksize('max') did not return maximum value.
546
547 * bug 6962 fixed - bvode generated an error on Windows.
548
549 * bug 6964 fixed - Scilab could detect a wrong SCI path on Windows.
550
551 * bug 6971 fixed - after launching a toolbox by loader.sce, variable v was
552                    predefined.
553
554 * bug 6990 fixed - "and" and "or" did not work on hypermatrices.
555
556 * bug 7006 fixed - exec removed spaces at the end of filename when it returned
557                    an error.
558
559 * bug 7014 fixed - ilib_verbose value was modified after toolbox_skeleton.
560
561 * bug 7019 fixed - resume() produced an incorrect error message.
562
563 * bug 7021 fixed - Scilab did not start and returned a system error (193)
564                    on Windows.
565
566 * bug 7033 fixed - newfun was randomly crashing (mostly on 32 bits) writing to
567                    unallocated memory.
568
569 * bug 7036 fixed - the plot2d document was incomplete (missing optional argument).
570
571 * bug 7042 fixed - Insertion of an empty matrix into a struct (to remove a row or column)
572                    was buggy when multiple index is used.
573
574 * bug 7057 fixed - isdigit and isalphanum crashed with a matrix of string
575                    as input argument.
576
577 * bug 7077 fixed - uigetfont crashed Scilab when the cancel button was clicked.
578
579 * bug 7094 fixed - If badly called, ode made Scilab crash.
580
581 * bug 7109 fixed - 'lu' function with some complex matrices crashed on Windows.
582
583 * bug 7123 fixed - No completion was possible if the name of a variable is 
584                    preceded by ~ or @ or < or >