merge 6.0 into master 69/20169/1
Clément DAVID [Wed, 20 Jun 2018 14:45:28 +0000 (16:45 +0200)]
Change-Id: I4311eff1d39c5944133bd11adec5b97e71b2eb38

1  2 
scilab/CHANGES.md
scilab/modules/ast/src/cpp/ast/runvisitor.cpp
scilab/modules/helptools/etc/images_md5.txt
scilab/modules/scinotes/src/java/org/scilab/modules/scinotes/SciNotes.java
scilab/modules/slint/src/cpp/DeprecatedChecker.cpp

@@@ -74,20 -104,142 +74,21 @@@ Packaging & Supported Operating System
  Feature changes and additions
  -----------------------------
  
 -* Addition or subtraction with an empty matrix now returns an empty matrix.
 -* `scatter/scatter3` plot with different mark colors is now available.
 -* `parulacolormap` is now available.
 -* `name2rgb` can now handle a single string and a matrix of strings.
 -* `isoview`, `isoview on`, `isoview off`, `isoview(idGraphics, "on"|"off")` are now supported.
 -* `twinkle` and `twinkle(n)` are now supported: by default, the current element `gce` blinks.
 -* `replot` has been upgraded:
 -  - a bound set to `%inf` now gets the position of the most marginal object,
 -  - `replot` can now be used to reframe axes to all their contents,
 -  - option `tigh_limits` added,
 -  - Any handle having some Axes as direct children -- as uicontrol-frame -- is now supported.
 -* `householder` can now return the reflection matrix and has a demo.
 -* `ndgrid` can now work with any types of homogeneous data
 -* `permute` now supports arrays of rationals.
 -* `bench_run` can now return its results and/or record them in a file
 -* `typeof(.., "overload")` allows now to get the overloading type-code of an object
 -* `sign` can now handle a sparse matrix.
 -* `sleep(..,'s')` allows now to specify the duration in seconds.
 -* `real`, `imag`, `conj` and `isreal` now accept rational fractions.
 -* A call stack limit has been introduced. Default maximum depth is set up to `1000`
 -and can be changed by `recursionlimit` or through the Preferences interface.
 -* The floating point exception mode `ieee` is now set to `2` by default: floating
 -point exceptions now produce `Inf` or `Nan`, and do not cause any error.
 -The previous behavior can be recalled by simply calling: `ieee(0)`.
 -* Datatips:
 -  - The property `z_component = 'on|off'` is renamed to `display_components = 'xyz'`.
 -  It is now possible to choose which components to display, and in which order.
 -  The `.z_component` property will be ignored in former `*.scg` files.
 -  - A new `detached_position` property is available to display the datatip away from but linked to its anchor on the curve.
 -  - A new `Polyline.datatip_display_mode` property now allows to display each datatip of the curve only on `mouseover` its anchor or only on `mouseclick`.
 -* Valgrind error detection added to `test_run` (on Linux only).
 -* `amell` now:
 -  - checks if its parameters are real numbers,
 -  - throws an error if the second parameter is not a scalar.
 -* The use of I/O console is now allowed with the following functions: `mget`,
 -`mgetl`, `mgetstr`, `mput`, `mputl` and `mputstr`.
 -* `mclearerr` now returns a flag indicating the file identifier validity.
 -* `fileinfo` can now take a row vector as input.
 -* `msprintf` does not return an error message anymore when there are too many
 -input arguments (more values that format needs).
 -* `deletefile` can delete multiple files at once.
 -* `exec` of macro executes the body in the current scope, but the prototype must have zero
 -input and output arguments.
 -* `error`: an error number in the input is deprecated.
 -* `impl`: Recall `impl` with the same parameters as in its previous stop is now available.
 -* `ode`: `y0` is restricted to a column vector.
 -* `pppdiv`: Returns a scalar of type 'constant' when the rank is 0.
 -* `pdiv`: Returns a matrix of type 'constant' when all the rank is 0.
 -* `assert_checkalmostequal` can now work with polynomials.
 -* `test_run` can now take `[]` as argument to be used on console; for instance: `test_run string [] no_check_ref`.
 -* `type(:)` now returns `129` instead of `1`.
 -* `typeof(:)` and `typeof(n:$)` now return `"implicitlist"` instead of respectively `"constant"` and `"size implicit"`.
 -* `linspace(a, b, n<=0)` now returns `[]` instead of b.
 -* `strange([])` now returns `%nan` instead of `[]`, as all other functions for statistical dispersion.
 -* `stdev(x, dir>ndims(x))` now yields an error instead of returning `zeros(x)`.
 -* `mean` and `stdev` can now be overloaded.
 -* `write`: Writing string or string matrix in a file does not add blank space before each value.
 -* `bitor`, `bitxor` and `bitand` are upgraded:
 -   - positive signed encoded integers are now accepted.
 -   - inputs with new `int64` or `uint64` encodings are now accepted.
 -   - operands with mixed types or/and integer types are now accepted.
 -   - distributive input scalars as in `bit###(scalar, array)` or `bit###(array, scalar)` are now accepted.
 -   - results with decimal-encoded integers > 2^32 are now correct.
 -   - decimal-encoded integers > 2^52 are now supported up to the biggest 1.80D+308.
 -   - `bitxor` is now vectorized and fast.
 -* `resize_matrix`: Its conversion option is extended to the new `int64` and `uint64` integer types.
 -* Interactively setting a common zoom box on multiple neighboring or overlaying axes, and with bounds selected out of the axes areas is now restored, after the Scilab 5.4 regression.
 -* Scroll to zoom:
 -  - Scrolling over overlaying axes now zooms all of them together.
 -  - Pressing CTRL while scrolling now zooms all axes in the current figure.
 -* `MPI_Create_comm` creates a new communicator from MPI_COMM_WORLD using MPI world ranks.
 -* The `grand` non-free `fsultra` generator is no longer available.
 -* The original `rpoly` algorithm is removed in favor of a C++11 implementation
 -* When `Axes.view=="2d"`, the rotation is now impossible.
 -* The zero-pole-gain (zpk) representation is now available for linear dynamical systems.
 -* On a figure, the contextual menu now proposes an entry `Label -> Title` to interactively set the title of any axes.
 -* `getPreferencesValue` can now read a tag having multiple occurrences, and accepts the path to a preference file instead of its XML handle.
 -* The function `stripblanks` now supports an option to remove trailing or leading spaces or both.
 -* `atomsSetConfig` does not update cache.
 -* `lqi` function added to compute "linear quadratic integral compensator".
 -* A new console `File => Go to Favorite directory` menu allows to go to a favorite directory selected in a dynamical list set from Scinotes favorite and most recent directories.
 -* The console `File => Open a file` menu allows now to open xcos, zcos, scg or lib files with the proper Scilab component, and other files with the proper OS application. All files were opened in Scinotes and could freeze it.
 -* `size` is now overloadable for `tlist` lists, as it already could for `mlist` lists.
 -* For arrays of cells or structures, `length` now returns their number of elements.
 -* `gcd` now accepts `int64` and `uint64` integers. The input can now be an array instead of a row vector.
 -* `gcd` and `lcm` of integers now always return a positive result.
 -* `cat` has been rewritten. It is now fast and can process heavy arrays at high dimensions.
 -* Warnings from `fplot3d1` called without an option were removed.
 -* `whereis` has been upgraded:
 -  - It can now be used for built-in functions.
 -  - When the same function name is registered in several libraries, `whereis` now returns all of them instead of only the last loaded one.
 -  - For unregistered user-defined macros, `"script"` is now returned instead of `[]`.
 -* `mgetl` speed has been improved for files with a lot of lines.
 -* `ndgrid(x)` now accepts only one input `x`, with by default `y=x`.
 -* `banner()` updated with ESI Group a 2017-2018 copyright.
 -* `%io` is now protected (read-only).
 -* The demo GUI can now be set as not-dockable through the Preferences => General => Demos.
 -* Compatibility functions `mtlb_int8` `mtlb_int16` `mtlb_int32` `mtlb_uint8` `mtlb_uint16` `mtlb_uint32` have been rewritten to actually comply with Matlab versions. `mtlb_int64` and `mtlb_uint64` have been added.
 -* `gamma()` can now process an hypermatrix.
 -* `surf()` and `mesh()`: It is now possible to specify the `foreground`, `facecolor`, `markforeground` and `markbackground` global properties with any color name of the full predefined colors list. Up to now, only the 9 main colors names were usable. Moreover, colors can now be specified with their "#RRGGBB" hexa code or their indices in the color map.
 -* `unique` can now unduplicate a set of complex numbers.
 +* Empty strings are used as the default values on String allocation
 +* HTTP get, post, put, upload, patch, delete functions added
 +* JSON encoding / decoding for Scilab datatypes added
 +* Memory invalid accesses have been greatly reduced thanks to :
 +  - PVS-Studio inspections blog report
 +  - Coverity scan weekly source analysis
 +* bitget() is upgraded:
 +  - It now accepts positive Signed encoded integers.
 +  - It now supports the new uint64 and int64 types of encoded integers.
 +  - For decimal numbers: bits with indices > 52 can now be retrieved (up to `log2(number_properties("huge"))` = 1024).
 +  - For decimal numbers `x > 2^52`, querried bits below `%eps` (indices < log2(x)-52) now return `Nan` instead of 0.
 +  - Several bits can now be retrieved from each component of an input array.
 +* `edit` now accepts a line number as text (like "23").
 +
  Help pages:
  -----------
  
@@@ -1060,11 -1057,7 +1060,10 @@@ householder_1.png=8a7bce8cfadfbf5d70436
  hsv2rgb_1.png=7d20c259e94301d9763fbddb7bff4784
  hsvcolormap_1.png=11918d88bcc793200af0b9f1b58b0554
  iir_1.png=e675c2755f68ddc4611c849895b63012
 -intdec_1.png=d3d3cbde187a5f74a07b3d5611e66257
 +implicitplot_1.png=d2d7b1b26a127ab8775517c742824770
 +implicitplot_2.png=e16dce51c9990d82807c47fe535c6d61
 +implicitplot_3.png=5201f1980df1b1ba7afb7b3a92b68611
 +implicitplot_4.png=74aeae6ec05b661c78c12c90d50b3aec
- intdec_1.png=9bf5d8f1a6aeddee68d7c5d831ef2d05
  interp1_1.png=e9a3f4319b2818ce4921b9bc3008d80
  interp2d_1.png=f4af61bc3faf493d778169ec7decc7ae
  interp2d_2.png=a62363849a3a9a3571dc1942fcebfbd3