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