annotate etc/NEWS.9.md @ 32047:e3de59065cf1

inputParser.m: Re-architect internal data structures for 60% speed improvement. Key idea is to replace Parameter and Switch structs with name field containing a nested struct (def, val fields) with a struct array that has fields "name", "def", and "val". This makes it possible to eliminate for loops. * NEWS.9.md: Announce performance improvement. * inputParser.m: Declare "Parameter" and "Switch" properties as struct arrays. Add new private property "last_idx" which caches the last Parameter or Switch lookup. * inputParser.m (addRequired): Adjust input validation to use numel() now rather than numfields(). * inputParser.m (addOptional): Adjust input validation to use numel() now rather than numfields(). * inputParser.m (addParameter): Change code to add new Parameter to a struct array. * inputParser.m (addSwitch): Change code to add new Switch to a struct array. * inputParser.m (parse): Adjust initialization of internal variables ParameterNames and SwitchNames to match new data structure. Use last_idx to simplify call to validate_arg() for Parameters. * inputParser.m (validate_arg): Move creation of error message to code path when error has been found---No need to do it for every function call. Don't capture "exception" variable in try/catch as it is no longer used. * inputParser.m (is_argname): Cache "last_idx" if match was found. * inputParser.m (add_missing): Replace call to setdiff() with in-place code which can take advantage of implicit knowledge to eliminate calls to unique and input validation. Replace for loop with cell2struct/struct2cell combination.
author Rik <rik@octave.org>
date Fri, 21 Apr 2023 11:01:40 -0700
parents 29671873411a
children ada96a467a28
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
31441
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
1 Summary of important user-visible changes for version 9 (yyyy-mm-dd):
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
2 ---------------------------------------------------------------------
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
3
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
4 ### General improvements
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
5
31484
601b08ce0c00 oruntests.m: Change to directory containing tests (bug #62780).
Markus Mützel <markus.muetzel@gmx.de>
parents: 31472
diff changeset
6 - `oruntests`: The current directory now changes to the directory
601b08ce0c00 oruntests.m: Change to directory containing tests (bug #62780).
Markus Mützel <markus.muetzel@gmx.de>
parents: 31472
diff changeset
7 containing the files with the tests for the duration of the test. This
601b08ce0c00 oruntests.m: Change to directory containing tests (bug #62780).
Markus Mützel <markus.muetzel@gmx.de>
parents: 31472
diff changeset
8 aligns the behavior of this function with Octave's test suite. This also
601b08ce0c00 oruntests.m: Change to directory containing tests (bug #62780).
Markus Mützel <markus.muetzel@gmx.de>
parents: 31472
diff changeset
9 means that the file encoding specified in the `.oct-config` file for the
601b08ce0c00 oruntests.m: Change to directory containing tests (bug #62780).
Markus Mützel <markus.muetzel@gmx.de>
parents: 31472
diff changeset
10 respective directory is taken into account for the tests.
601b08ce0c00 oruntests.m: Change to directory containing tests (bug #62780).
Markus Mützel <markus.muetzel@gmx.de>
parents: 31472
diff changeset
11
31848
1f3f7e874203 dec2base.m: Accept negative and fractional inputs (bug #63282)
Arun Giridhar <arungiridhar@gmail.com>
parents: 31819
diff changeset
12 - `dec2base`, `dec2bin`, and `dec2hex` have all been overhauled. All three
1f3f7e874203 dec2base.m: Accept negative and fractional inputs (bug #63282)
Arun Giridhar <arungiridhar@gmail.com>
parents: 31819
diff changeset
13 functions now accommodate negative inputs and fractional inputs, and repeated
1f3f7e874203 dec2base.m: Accept negative and fractional inputs (bug #63282)
Arun Giridhar <arungiridhar@gmail.com>
parents: 31819
diff changeset
14 code between the functions has been reduced or eliminated. Previously only
1f3f7e874203 dec2base.m: Accept negative and fractional inputs (bug #63282)
Arun Giridhar <arungiridhar@gmail.com>
parents: 31819
diff changeset
15 `dec2bin` and `dec2hex` accepted negative inputs but `dec2base` did not, and
1f3f7e874203 dec2base.m: Accept negative and fractional inputs (bug #63282)
Arun Giridhar <arungiridhar@gmail.com>
parents: 31819
diff changeset
16 none of the three accepted fractional inputs. But now,
1f3f7e874203 dec2base.m: Accept negative and fractional inputs (bug #63282)
Arun Giridhar <arungiridhar@gmail.com>
parents: 31819
diff changeset
17 `dec2base (100*pi, 16, 4, 6)` for exampele returns a base-16 string with four
1f3f7e874203 dec2base.m: Accept negative and fractional inputs (bug #63282)
Arun Giridhar <arungiridhar@gmail.com>
parents: 31819
diff changeset
18 places for the integer part and six places for the fractional part. Omitting
1f3f7e874203 dec2base.m: Accept negative and fractional inputs (bug #63282)
Arun Giridhar <arungiridhar@gmail.com>
parents: 31819
diff changeset
19 the number of decimal places (the fourth input) retains old behavior for
1f3f7e874203 dec2base.m: Accept negative and fractional inputs (bug #63282)
Arun Giridhar <arungiridhar@gmail.com>
parents: 31819
diff changeset
20 backward compatibility, except that non-integer inputs will no longer error.
1f3f7e874203 dec2base.m: Accept negative and fractional inputs (bug #63282)
Arun Giridhar <arungiridhar@gmail.com>
parents: 31819
diff changeset
21
32038
29671873411a __quiver__.m: Honor scaling factor input for single quiver arrow (bug #39552)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 32035
diff changeset
22 - `quiver` now honors the scaling factor input when there is only a single
29671873411a __quiver__.m: Honor scaling factor input for single quiver arrow (bug #39552)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 32035
diff changeset
23 arrow, whereas the factor was previously ignored in that case.
29671873411a __quiver__.m: Honor scaling factor input for single quiver arrow (bug #39552)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 32035
diff changeset
24
32047
e3de59065cf1 inputParser.m: Re-architect internal data structures for 60% speed improvement.
Rik <rik@octave.org>
parents: 32038
diff changeset
25 - The `inputParser` function has been re-architected for a 60% performance
e3de59065cf1 inputParser.m: Re-architect internal data structures for 60% speed improvement.
Rik <rik@octave.org>
parents: 32038
diff changeset
26 improvement.
e3de59065cf1 inputParser.m: Re-architect internal data structures for 60% speed improvement.
Rik <rik@octave.org>
parents: 32038
diff changeset
27
31441
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
28 ### Graphical User Interface
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
29
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
30 ### Graphics backend
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
31
31975
72d005398818 hold.m: Print current hold state to Command Window when toggling state (bug #63923)
John W. Eaton <jwe@octave.org>
parents: 31918
diff changeset
32 * The `set` function now accepts any combination of name/value pairs,
31819
4db921b57ace Extend set() to process any combination of acceptable inputs.
Rik <rik@octave.org>
parents: 31818
diff changeset
33 cell array of names / cell array of values, or property structures.
4db921b57ace Extend set() to process any combination of acceptable inputs.
Rik <rik@octave.org>
parents: 31818
diff changeset
34 This change is Matlab-compatible.
4db921b57ace Extend set() to process any combination of acceptable inputs.
Rik <rik@octave.org>
parents: 31818
diff changeset
35
31975
72d005398818 hold.m: Print current hold state to Command Window when toggling state (bug #63923)
John W. Eaton <jwe@octave.org>
parents: 31918
diff changeset
36 * When the `hold` function is used without arguments to toggle the current
72d005398818 hold.m: Print current hold state to Command Window when toggling state (bug #63923)
John W. Eaton <jwe@octave.org>
parents: 31918
diff changeset
37 state the resulting value is now displayed in the Command Window for
72d005398818 hold.m: Print current hold state to Command Window when toggling state (bug #63923)
John W. Eaton <jwe@octave.org>
parents: 31918
diff changeset
38 informational purposes.
72d005398818 hold.m: Print current hold state to Command Window when toggling state (bug #63923)
John W. Eaton <jwe@octave.org>
parents: 31918
diff changeset
39
31441
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
40 ### Matlab compatibility
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
41
32035
80fef9315743 inputParser.m: Implement "PartialMatching" property (bug #64050)
Rik <rik@octave.org>
parents: 32011
diff changeset
42 - The `inputParser` function now implements the `PartialMatching` property
80fef9315743 inputParser.m: Implement "PartialMatching" property (bug #64050)
Rik <rik@octave.org>
parents: 32011
diff changeset
43 for `Parameter` and `Switch` names. For Matlab compatibility,
80fef9315743 inputParser.m: Implement "PartialMatching" property (bug #64050)
Rik <rik@octave.org>
parents: 32011
diff changeset
44 `PartialMatching` is now set to true by default which may change the behavior
80fef9315743 inputParser.m: Implement "PartialMatching" property (bug #64050)
Rik <rik@octave.org>
parents: 32011
diff changeset
45 of existing code.
80fef9315743 inputParser.m: Implement "PartialMatching" property (bug #64050)
Rik <rik@octave.org>
parents: 32011
diff changeset
46
31868
c6eeb8b44c28 Port statistics pkg mean, median, var, & std into core (patch #10314)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31848
diff changeset
47 - Overhauled `mean`, `median`, `var`, and `std` functions have been imported
c6eeb8b44c28 Port statistics pkg mean, median, var, & std into core (patch #10314)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31848
diff changeset
48 from statistics package v1.5.4 to compatibly implement 'nanflag' (bug #50571),
c6eeb8b44c28 Port statistics pkg mean, median, var, & std into core (patch #10314)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31848
diff changeset
49 'all' (bug #58116), and 'vecdim' (bug #58089) options, preserve output class,
c6eeb8b44c28 Port statistics pkg mean, median, var, & std into core (patch #10314)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31848
diff changeset
50 and match expected output behavior for empty (bug #50583) and sparse inputs
c6eeb8b44c28 Port statistics pkg mean, median, var, & std into core (patch #10314)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31848
diff changeset
51 (bug #63291). Both `median` and `mean` can handle large int values without
31872
cfeda68b01ad mean: Process single as double to avoid precision limits (bug #63848).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31868
diff changeset
52 overflow or precision concerns (bug #54567), and `mean` avoids errors due to
cfeda68b01ad mean: Process single as double to avoid precision limits (bug #63848).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31868
diff changeset
53 limits of single precision by processing as doubles (bug #63848). `median`
cfeda68b01ad mean: Process single as double to avoid precision limits (bug #63848).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31868
diff changeset
54 has also adopted the 'outtype' option from `mean`.
31868
c6eeb8b44c28 Port statistics pkg mean, median, var, & std into core (patch #10314)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31848
diff changeset
55
31993
e4bd4349af42 mad.m: Improve compatibility using new mean/median functions (patch #10331)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31976
diff changeset
56 - `mad` function now produces Matlab compatible output using improved `mean`
e4bd4349af42 mad.m: Improve compatibility using new mean/median functions (patch #10331)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31976
diff changeset
57 and `median` functions. 'vecdim' and 'all' options are now supported. `mad`
e4bd4349af42 mad.m: Improve compatibility using new mean/median functions (patch #10331)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31976
diff changeset
58 ignores all NaN values (using 'omitnan' mean/median option) and produces
e4bd4349af42 mad.m: Improve compatibility using new mean/median functions (patch #10331)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31976
diff changeset
59 expected output behavior for empty inputs.
e4bd4349af42 mad.m: Improve compatibility using new mean/median functions (patch #10331)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31976
diff changeset
60
31918
e67b7b85670b cov.m: Overhaul function for matlab compatibility (bug #50583).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31917
diff changeset
61 - `mode` now produces Matlab compatible output for empty inputs (bug #50583).
e67b7b85670b cov.m: Overhaul function for matlab compatibility (bug #50583).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31917
diff changeset
62
32011
ce36dddf5427 normalize.m: Enable compatible NaN handling (bug #50571)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31993
diff changeset
63 - `normalize` now produces Matlab compatible output for inputs containing NaN
ce36dddf5427 normalize.m: Enable compatible NaN handling (bug #50571)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31993
diff changeset
64 values (bug #50571).
ce36dddf5427 normalize.m: Enable compatible NaN handling (bug #50571)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31993
diff changeset
65
31918
e67b7b85670b cov.m: Overhaul function for matlab compatibility (bug #50583).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31917
diff changeset
66 - `cov` now processes the input form cov(x,y) with two separate data arrays
e67b7b85670b cov.m: Overhaul function for matlab compatibility (bug #50583).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31917
diff changeset
67 x and y, as cov(x(:),y(:)) to maintain Matlab compatibility. It also accepts
e67b7b85670b cov.m: Overhaul function for matlab compatibility (bug #50583).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31917
diff changeset
68 a NANFLAG option to allow ignoring NaN entries in input data (bug #50571)
e67b7b85670b cov.m: Overhaul function for matlab compatibility (bug #50583).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31917
diff changeset
69 and produces Matlab compatible outputs for empty inputs (bug #50583). `corr`
e67b7b85670b cov.m: Overhaul function for matlab compatibility (bug #50583).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31917
diff changeset
70 and `corrcoef` internal code has been adapted to the new `cov` behavior with
e67b7b85670b cov.m: Overhaul function for matlab compatibility (bug #50583).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31917
diff changeset
71 no change to user interface. Packages using the octave core's `cov` that rely
e67b7b85670b cov.m: Overhaul function for matlab compatibility (bug #50583).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31917
diff changeset
72 on the previous calling form may need to make similar adaptations. Calls for
e67b7b85670b cov.m: Overhaul function for matlab compatibility (bug #50583).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31917
diff changeset
73 cov(x) with a vector x expecting a scalar return can get the previous results
e67b7b85670b cov.m: Overhaul function for matlab compatibility (bug #50583).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31917
diff changeset
74 from `cov(x)(2)`, and calls to cov(x,y) with x and y matrices expecting
e67b7b85670b cov.m: Overhaul function for matlab compatibility (bug #50583).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31917
diff changeset
75 columnwise covariance calculation can obtain the previous results using
e67b7b85670b cov.m: Overhaul function for matlab compatibility (bug #50583).
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31917
diff changeset
76 `cov([x,y])(1:nx, nx+1:end)`, where nx = columns(x).
31887
96ed8d1d0c59 mode.m: Emtpy input produces Matlab compatible NaN output (bug #48690)
Nicholas R. Jankowski <jankowski.nicholas@gmail.com>
parents: 31873
diff changeset
77
31976
e6b24d0d485c qz: Handle input and output arguments in a Matlab-compatible way.
Sébastien Villemot <sebastien@debian.org>
parents: 31975
diff changeset
78 - `qz` now handles input and output arguments in a Matlab compatible
e6b24d0d485c qz: Handle input and output arguments in a Matlab-compatible way.
Sébastien Villemot <sebastien@debian.org>
parents: 31975
diff changeset
79 way. It always computes the complex QZ decomposition if there are only
e6b24d0d485c qz: Handle input and output arguments in a Matlab-compatible way.
Sébastien Villemot <sebastien@debian.org>
parents: 31975
diff changeset
80 two input arguments, and it accepts an optional third input argument
e6b24d0d485c qz: Handle input and output arguments in a Matlab-compatible way.
Sébastien Villemot <sebastien@debian.org>
parents: 31975
diff changeset
81 'real' or 'complex' to select the type of decomposition. The output
e6b24d0d485c qz: Handle input and output arguments in a Matlab-compatible way.
Sébastien Villemot <sebastien@debian.org>
parents: 31975
diff changeset
82 arguments are always in the same order independently of the input
e6b24d0d485c qz: Handle input and output arguments in a Matlab-compatible way.
Sébastien Villemot <sebastien@debian.org>
parents: 31975
diff changeset
83 arguments, and the generalized eigenvalues are no longer returned (one
e6b24d0d485c qz: Handle input and output arguments in a Matlab-compatible way.
Sébastien Villemot <sebastien@debian.org>
parents: 31975
diff changeset
84 can use the `ordeig` function for that purpose). The optional reordering
e6b24d0d485c qz: Handle input and output arguments in a Matlab-compatible way.
Sébastien Villemot <sebastien@debian.org>
parents: 31975
diff changeset
85 of the generalized eigenvalues has been removed (one can use the `ordqz`
e6b24d0d485c qz: Handle input and output arguments in a Matlab-compatible way.
Sébastien Villemot <sebastien@debian.org>
parents: 31975
diff changeset
86 function for that purpose).
e6b24d0d485c qz: Handle input and output arguments in a Matlab-compatible way.
Sébastien Villemot <sebastien@debian.org>
parents: 31975
diff changeset
87
31441
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
88 ### Alphabetical list of new functions added in Octave 9
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
89
31917
655e757c7522 isuniform.m: New function.
Rik <rik@octave.org>
parents: 31914
diff changeset
90 * `isuniform`
31547
212cc32100f5 Add new function 'tensorprod' (patch #10288)
Kasper H. Filtenborg <kasper.filtenborg@gmail.com>
parents: 31484
diff changeset
91 * `tensorprod`
212cc32100f5 Add new function 'tensorprod' (patch #10288)
Kasper H. Filtenborg <kasper.filtenborg@gmail.com>
parents: 31484
diff changeset
92
31441
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
93 ### Deprecated functions, properties, and operators
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
94
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
95 The following functions and properties have been deprecated in Octave 9
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
96 and will be removed from Octave 11 (or whatever version is the second
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
97 major release after 9):
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
98
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
99 - Functions
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
100
31457
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
101 Function | Replacement
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
102 -----------------------|------------------
31441
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
103
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
104 - Properties
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
105
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
106 The following property names are discouraged, but there is no fixed
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
107 date for their removal.
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
108
31457
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
109 Object | Property | Replacement
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
110 -----------------|-------------|------------
31441
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
111
31811
8e6a9cf412c1 maint: Deprecate obsolete idx_vector::bool() function.
Rik <rik@octave.org>
parents: 31547
diff changeset
112 - Core
8e6a9cf412c1 maint: Deprecate obsolete idx_vector::bool() function.
Rik <rik@octave.org>
parents: 31547
diff changeset
113
8e6a9cf412c1 maint: Deprecate obsolete idx_vector::bool() function.
Rik <rik@octave.org>
parents: 31547
diff changeset
114 * The `idx_vector::bool()` function is obsolete and always returns true.
8e6a9cf412c1 maint: Deprecate obsolete idx_vector::bool() function.
Rik <rik@octave.org>
parents: 31547
diff changeset
115 Any uses can simply be removed from existing code with no loss of function.
8e6a9cf412c1 maint: Deprecate obsolete idx_vector::bool() function.
Rik <rik@octave.org>
parents: 31547
diff changeset
116
8e6a9cf412c1 maint: Deprecate obsolete idx_vector::bool() function.
Rik <rik@octave.org>
parents: 31547
diff changeset
117 * The `all_ok(const Array<octave::idx_vector>&)` function in `Array-util.h`
8e6a9cf412c1 maint: Deprecate obsolete idx_vector::bool() function.
Rik <rik@octave.org>
parents: 31547
diff changeset
118 is obsolete and always returns true. Any uses can simply be removed from
8e6a9cf412c1 maint: Deprecate obsolete idx_vector::bool() function.
Rik <rik@octave.org>
parents: 31547
diff changeset
119 existing code with no loss of function.
8e6a9cf412c1 maint: Deprecate obsolete idx_vector::bool() function.
Rik <rik@octave.org>
parents: 31547
diff changeset
120
31818
758de955caca Deprecate octave_base_value::count member variable.
Rik <rik@octave.org>
parents: 31811
diff changeset
121 * The member variable `octave_base_value::count` is deprecated and will be removed from Octave 11. Replace all instances with the new name `m_count`.
758de955caca Deprecate octave_base_value::count member variable.
Rik <rik@octave.org>
parents: 31811
diff changeset
122
31457
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
123 The following features were deprecated in Octave 7 and have been removed
31441
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
124 from Octave 9.
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
125
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
126 - Functions
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
127
31457
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
128 Function | Replacement
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
129 ---------------------------|------------------
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
130 disable_diagonal_matrix | optimize_diagonal_matrix
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
131 disable_permutation_matrix | optimize_permutation_matrix
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
132 disable_range | optimize_range
31441
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
133
31464
344e1152ed88 remove operators deprecated in version 7
John W. Eaton <jwe@octave.org>
parents: 31457
diff changeset
134 - Operators
344e1152ed88 remove operators deprecated in version 7
John W. Eaton <jwe@octave.org>
parents: 31457
diff changeset
135
344e1152ed88 remove operators deprecated in version 7
John W. Eaton <jwe@octave.org>
parents: 31457
diff changeset
136 Operator | Replacement
344e1152ed88 remove operators deprecated in version 7
John W. Eaton <jwe@octave.org>
parents: 31457
diff changeset
137 ---------|------------
344e1152ed88 remove operators deprecated in version 7
John W. Eaton <jwe@octave.org>
parents: 31457
diff changeset
138 .+ | +
344e1152ed88 remove operators deprecated in version 7
John W. Eaton <jwe@octave.org>
parents: 31457
diff changeset
139 .+= | +=
344e1152ed88 remove operators deprecated in version 7
John W. Eaton <jwe@octave.org>
parents: 31457
diff changeset
140 .- | -
344e1152ed88 remove operators deprecated in version 7
John W. Eaton <jwe@octave.org>
parents: 31457
diff changeset
141 .-= | -=
344e1152ed88 remove operators deprecated in version 7
John W. Eaton <jwe@octave.org>
parents: 31457
diff changeset
142 ** | ^
344e1152ed88 remove operators deprecated in version 7
John W. Eaton <jwe@octave.org>
parents: 31457
diff changeset
143 **= | ^=
344e1152ed88 remove operators deprecated in version 7
John W. Eaton <jwe@octave.org>
parents: 31457
diff changeset
144 .** | .^
344e1152ed88 remove operators deprecated in version 7
John W. Eaton <jwe@octave.org>
parents: 31457
diff changeset
145 .**= | .^=
344e1152ed88 remove operators deprecated in version 7
John W. Eaton <jwe@octave.org>
parents: 31457
diff changeset
146
31472
2ad979f8c265 maint: Remove deprecated line continuation code.
Rik <rik@octave.org>
parents: 31464
diff changeset
147 - Interpreter
2ad979f8c265 maint: Remove deprecated line continuation code.
Rik <rik@octave.org>
parents: 31464
diff changeset
148
2ad979f8c265 maint: Remove deprecated line continuation code.
Rik <rik@octave.org>
parents: 31464
diff changeset
149 * The use of `'...'` for line continuations *inside* double-quoted
2ad979f8c265 maint: Remove deprecated line continuation code.
Rik <rik@octave.org>
parents: 31464
diff changeset
150 strings has been removed. Use `'\'` for line continuations inside strings
2ad979f8c265 maint: Remove deprecated line continuation code.
Rik <rik@octave.org>
parents: 31464
diff changeset
151 instead.
2ad979f8c265 maint: Remove deprecated line continuation code.
Rik <rik@octave.org>
parents: 31464
diff changeset
152
2ad979f8c265 maint: Remove deprecated line continuation code.
Rik <rik@octave.org>
parents: 31464
diff changeset
153 * The use of `'\'` as a line continuation *outside* of double-quoted
2ad979f8c265 maint: Remove deprecated line continuation code.
Rik <rik@octave.org>
parents: 31464
diff changeset
154 strings has been removed. Use `'...'` for line continuations instead.
2ad979f8c265 maint: Remove deprecated line continuation code.
Rik <rik@octave.org>
parents: 31464
diff changeset
155
2ad979f8c265 maint: Remove deprecated line continuation code.
Rik <rik@octave.org>
parents: 31464
diff changeset
156 * Support for trailing whitespace after a `'\'` line continuation has been
2ad979f8c265 maint: Remove deprecated line continuation code.
Rik <rik@octave.org>
parents: 31464
diff changeset
157 removed. Delete unnecessary trailing whitespace.
2ad979f8c265 maint: Remove deprecated line continuation code.
Rik <rik@octave.org>
parents: 31464
diff changeset
158
31457
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
159 - For plot functions, the use of numbers to select line colors in
31917
655e757c7522 isuniform.m: New function.
Rik <rik@octave.org>
parents: 31914
diff changeset
160 shorthand formats was an undocumented feature that was removed in Octave 9.
31441
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
161
31457
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
162 - The environment variable used by `mkoctfile` for linker flags is now
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
163 `LDFLAGS` rather than `LFLAGS`. `LFLAGS` was deprecated in Octave 6
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
164 and has been removed.
a96f68a48e9e maint: Remove more deprecated code from Octave 9.
Rik <rik@octave.org>
parents: 31443
diff changeset
165
31873
5eb1f1a77614 NEWS.9.md: list bugs fixed so far with Octave 9
Arun Giridhar <arungiridhar@gmail.com>
parents: 31872
diff changeset
166 Summary of bugs fixed for version 9.1.0 (yyyy-mm-dd):
5eb1f1a77614 NEWS.9.md: list bugs fixed so far with Octave 9
Arun Giridhar <arungiridhar@gmail.com>
parents: 31872
diff changeset
167 ----------------------------------------------------
5eb1f1a77614 NEWS.9.md: list bugs fixed so far with Octave 9
Arun Giridhar <arungiridhar@gmail.com>
parents: 31872
diff changeset
168
5eb1f1a77614 NEWS.9.md: list bugs fixed so far with Octave 9
Arun Giridhar <arungiridhar@gmail.com>
parents: 31872
diff changeset
169 - Bugfixes to `whos -file`, `urlread`, `mat2cell`, `set`.
5eb1f1a77614 NEWS.9.md: list bugs fixed so far with Octave 9
Arun Giridhar <arungiridhar@gmail.com>
parents: 31872
diff changeset
170
5eb1f1a77614 NEWS.9.md: list bugs fixed so far with Octave 9
Arun Giridhar <arungiridhar@gmail.com>
parents: 31872
diff changeset
171 - Memory usage reduced for `movfun` by eliminating temporary copies.
5eb1f1a77614 NEWS.9.md: list bugs fixed so far with Octave 9
Arun Giridhar <arungiridhar@gmail.com>
parents: 31872
diff changeset
172
5eb1f1a77614 NEWS.9.md: list bugs fixed so far with Octave 9
Arun Giridhar <arungiridhar@gmail.com>
parents: 31872
diff changeset
173 - Memory usage reduced when saving to file, preventing OOM and data loss.
5eb1f1a77614 NEWS.9.md: list bugs fixed so far with Octave 9
Arun Giridhar <arungiridhar@gmail.com>
parents: 31872
diff changeset
174
5eb1f1a77614 NEWS.9.md: list bugs fixed so far with Octave 9
Arun Giridhar <arungiridhar@gmail.com>
parents: 31872
diff changeset
175 - Several race conditions removed in signal handler.
5eb1f1a77614 NEWS.9.md: list bugs fixed so far with Octave 9
Arun Giridhar <arungiridhar@gmail.com>
parents: 31872
diff changeset
176
5eb1f1a77614 NEWS.9.md: list bugs fixed so far with Octave 9
Arun Giridhar <arungiridhar@gmail.com>
parents: 31872
diff changeset
177 - Performance improvements: avoid unnecessary string construction, use
5eb1f1a77614 NEWS.9.md: list bugs fixed so far with Octave 9
Arun Giridhar <arungiridhar@gmail.com>
parents: 31872
diff changeset
178 static casts instead of dynamic casts where possible.
5eb1f1a77614 NEWS.9.md: list bugs fixed so far with Octave 9
Arun Giridhar <arungiridhar@gmail.com>
parents: 31872
diff changeset
179
31441
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
180 ### Old release news
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
181
31442
2bc8a40b5b75 NEWS.9.md: Fix typo (7 --> 8)
Arun Giridhar <arungiridhar@gmail.com>
parents: 31441
diff changeset
182 - [Octave 8.x](etc/NEWS.8)
31441
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
183 - [Octave 7.x](etc/NEWS.7)
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
184 - [Octave 6.x](etc/NEWS.6)
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
185 - [Octave 5.x](etc/NEWS.5)
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
186 - [Octave 4.x](etc/NEWS.4)
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
187 - [Octave 3.x](etc/NEWS.3)
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
188 - [Octave 2.x](etc/NEWS.2)
e1cd3203bfb3 maint: Add NEWS.9.md to repository and update build system.
Rik <rik@octave.org>
parents:
diff changeset
189 - [Octave 1.x](etc/NEWS.1)