changeset 30463:0ae858447508 stable

Add file extension .md to recent NEWS.x files. * etc/NEWS.5.md, etc/NEWS.6.md, etc/NEWS.7.md: Rename from NEWS.5, NEWS.6, NEWS.7. * etc/module.mk: Rename files. * Makefile.am: Adapt build rule for renamed file.
author Markus Mützel <markus.muetzel@gmx.de>
date Wed, 08 Dec 2021 08:42:35 +0100
parents 6ad0187ea175
children f10f093452d0 ce42e027cd40
files Makefile.am etc/NEWS.5 etc/NEWS.5.md etc/NEWS.6 etc/NEWS.6.md etc/NEWS.7 etc/NEWS.7.md etc/module.mk
diffstat 8 files changed, 1398 insertions(+), 1398 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile.am	Wed Dec 08 09:49:04 2021 +0100
+++ b/Makefile.am	Wed Dec 08 08:42:35 2021 +0100
@@ -393,7 +393,7 @@
 .gdbinit: etc/gdbinit
 	$(AM_V_GEN)$(gdbinit-install-rule)
 
-NEWS: etc/NEWS.$(OCTAVE_MAJOR_VERSION)
+NEWS: etc/NEWS.$(OCTAVE_MAJOR_VERSION).md
 	$(AM_V_GEN)cp $< $@
 .PHONY: NEWS
 
--- a/etc/NEWS.5	Wed Dec 08 09:49:04 2021 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,443 +0,0 @@
-Summary of bugs fixed for version 5.2.0 (2020-01-31):
-----------------------------------------------------
-
-See: https://www.octave.org/news/release/2020/01/31/octave-5.2.0-released.html
-
-For (bug #XXXXX) see https://savannah.gnu.org/bugs/?XXXXX
-
-### Improvements
-
-- Lock amd and symbfact to avoid segmentation fault with SuiteSparse (bug #57435)
-- Fix segfault when calculating patch vertex normals (bug #57353)
-- Fix segfault in constructing patch normals for lighting (bug #57353)
-- mat2str.m: Fix for logical matrix (add `transpose`).
-- improve file equality check for MS Windows (bug #55161)
-- ismember.m: Fix second return argument when values are complex (bug #52437)
-- findobj.m: Fix typo and correctly handle numeric properties (bug #57030)
-- Correctly display integer types with format hex (bug #56966)
-- Cast `winqueryreg` `REG_DWORD` types to `DWORD` (bug #56703)
-- Fix numerous errors in `audiowrite` / `audioread` (bug #56889)
-- print.m: Pass quoted path to `octave-svgconvert` (bug #56768)
-- dir.m: Fix occasionally returning incorrect folder field (bug #55448)
-- Stop segfault when calling 3-input form of `diag` with cell arrays (bug #56711)
-- improve message for setting breakpoint in nonexistent function (bug #56157)
-- Use framebuffer object for printing invisible Qt figures on mac (bug #55268)
-- Escape backslash characters in `EPS` output (bug #56448)
-- Use replacement characters to display non UTF-8 strings in figures (bug #55974)
-- inputrc: Add warning about modification (bug #56079)
-- documentation.cc (global_search): just return if query string is empty (bug #56388)
-- Default (c)transpose for old style class arrays (bug #56323)
-- Always reserve at least 1 element of storage for sparse matrices (bug #56232)
-- Don't segfault at exit after reading malformed HDF5 file (bug #56149)
-- Fix pause() with no arguments called on Windows (bug #55943)
-- refactor minimum eigenvalue index search in `qp` (bug #56037)
-- qp: fix obscure corner case when calculating `qp` caused by a typo (bug #56037)
-- use `std::streampos` instead of `std::ios::streampos` (patch #9782).
-- fix `pause` and `kbhit` with glibc 2.28 end-of-file state behavior (bug #55029)
-- Fix return of left-handed vectors when inputs are complex (bug #56026)
-- waitbar.m: Fix hang when using `createcancelbtn` property (bug #55963)
-- shading.m: Fix unexpected error when multiple `hggroups` present (bug #55993)
-- dec2base.m: Correctly handle zero matrix input (bug #56005)
-- eliminate duplicate graphics callback object stack (bug #55908)
-- Improve performance when closing figures (bug #55908)
-- Reduce time to process `pkg -forge list` by 30X (bug #39479)
-- Feed `fig2dev` with PDF files converted from svg (bug #55906)
-- Improve error checking for `iconv_open`.
-- poly.m: fix the fix for input of complex conjugate pairs (bug #53897)
-- mkoctfile: use the `TMPDIR` environment variable if set (bug #55814)
-- line.m: Fix creation of unwanted axes (bug #55840)
-- Accept 4-input form for quiver3 (bug #55570)
-- pkg.m: restore installing packages from zip archives (bug #55788)
-- axis.m: Fix issues with `equal` argument (bug #55619, bug #55614, bug #55574,
-  bug #55514, bug #54848, bug #53724, bug #53504, bug #53336, bug #51938, bug #50356).
-- ordeig.m: Do not fail on 1x1 matrices (bug #55779)
-
-### GUI
-
-- fix editors search and replace in selection (bug #56405)
-- undo a complete replace all action in the editor (bug #56405)
-- fix missing unlock of mutex when gui editor is not present (bug #56097)
-- prevent unnamed editor tab from being closed by `rmdir` (bug #55888)
-- prevent editor from closing files that are not affected by `rmdir` (bug #55823)
-- fix creating keyword files for editor autocompletion (bug #55835)
-- fix dock widget position when being dragged out of the main window (bug #55704)
-
-### Build system / Tests
-
-- configure: prevent overlinking when SUNDIALS is disabled (bug #55956)
-- use QtCore and Qt5Gui modules instead of Qt5OpenGL (bug #55735)
-- make building with Qt4 QGLWidget work again (bug #55735)
-- build: adapt mk-qthelp.pl to changes in Texinfo 6.7.
-- BIST should not rely on the current directory to be writable.
-- bp-table.cc: Fix test.
-- maint: Make old style class tests Matlab compatible.
-- Add BIST tests for `unlink` (bug #56097)
-
-### Documentation
-
-- fix many spelling errors (bug #57613)
-- help: improve documentation for the `startup.m` user script.
-- avoid conflict with @seealso macro in Texinfo 6.6 (bug #55952)
-- mk-doc-cache.pk: Also translate `@seealso` here. (bug #55952)
-- __makeinfo__.m: Also translate `@seealso` here (bug #55952)
-- polar.m: Document that input is expected to be in radians (bug #57052)
-- gallery.m: Fix typo in docstring for poisson (bug #56267)
-- Add 1024x1024 Octave logo icon (bug #55836)
-- add `.editorconfig` for default file encoding and indentation.
-- octave.doap: Copy localized (short) description over from appdata (bug #55279)
-- org.octave.Octave.appdata.xml: Add German and French description (bug #55279)
-- languages/*.ts: updated language files (bug #55772)
-- quiver3.m: Fix texinfo typo in docstring from cset f7b10bd40045.
-- doc: fix `.` Operator Index entry to build with Texinfo 6.7.
-- doc: improve example of using global variables from oct-files.
-- doc: Create en-dashes and em-dashes correctly in documentation.
-- doc: expand `page_output_immediately` doc string, mention `page_screen_output`.
-- doc: Clarify documentation of `history_file` (bug #57027)
-- doc: Improve documentation for `get_help_text`, `get_help_text_from_file`.
-- doc: Add documentation for `GNUTERM` variable used with gnuplot (bug #56906)
-- doc: Improve `contour` docstring example (bug #56849)
-- doc: Add example to show limitations of the given BLAS integer size.
-- doc: Improve documentation of sparse functions.
-- doc: Improve spelling of `bicgstab` (bug #56812)
-- doc: Remove `Map` functions `keys`, `values`, `remove` from unimplemented list (bug #56718)
-- doc: Add function index entry for alias `inverse` (bug #56629)
-- add content rating declaration to AppStream metadata (bug #56466)
-- doc: Remove stray semicolons from `pie`, `pie3` calling forms.
-- doc: Redo documentation for `rats` function.
-- doc: Specify `position` property for text objects is a three-element vector (bug #56303)
-- doc: state that Octave can only load HDF5 files created by itself (bug #56148)
-- doc: Fix names of options in `issorted` (bug #56087)
-- doc: Small fixes to `mat2cell` and `polyeig` docstrings (bug #55985)
-- doc: Improve example code for using `-pdflatexstandalone` (bug #55945)
-- doc: Refer to "root object" rather than "root figure object".
-- doc: Place cross-reference from list of graphics object properties back to object (bug #46076)
-- doc: document the newline character in warning messages (bug #49158)
-- doc: pkg versions can be more general than "x.y.z" (bug #55798)
-
-
-Summary of important user-visible changes for version 5 (2019-02-23):
---------------------------------------------------------------------
-
-See: https://www.octave.org/NEWS-5.1.html
-
-### General improvements
-
-- The Octave plotting system now supports high resolution screens,
-  i.e., those with greater than 96 DPI which are referred to as
-  HiDPI/Retina monitors.
-
-- Unicode character support for files and folders in Windows.
-
-- A new core function `movfun` will apply a function to a sliding
-  window of arbitrary size on a dataset and accumulate the results.
-  Many common cases have been implemented using the naming
-  scheme `movXXX` where `XXX` is the function that will be applied.
-  For example, the moving average over a dataset is `movmean`.
-  New moving window functions:
-
-  `movfun`  `movslice`
-  `movmad`  `movmax`   `movmean`  `movmedian`  `movmin`  `movprod`
-  `movstd`  `movsum`   `movvar`
-
-- The `fsolve` function has been tweaked to use larger step sizes when
-  calculating the Jacobian of a function with finite differences.
-  This leads to faster convergence.
-
-- The `ranks` function has been recoded for performance and is now 25X
-  faster.  In addition, it now supports a third argument that specifies
-  how to resolve the ranking of tie values.
-
-- The function `randi` has been recoded to produce an unbiased (all
-  results are equally likely) sample of integers.  This may produce
-  different results in existing code.  If it is necessary to reproduce
-  the exact random integer sequence as in previous versions use
-
-  `ri = imin + floor ((imax - imin + 1) * rand ());`
-
-- The function `isdefinite` now returns `true` or `false` rather than
-  `-1`, `0`, or `1`.  To test for a positive semi-definite matrix (old
-  output of `0`) check whether the following two conditions hold:
-
-    `isdefinite (A) => 0`  and  `isdefinite (A + 5*TOL, TOL) => 1`
-
-- The `intmax`, `intmin`, and `flintmax` functions now accept a variable
-  as input.  Existing code to query the range of an existing variable can
-  be simplified by removing the call to `class` that was previously
-  required.  For example defining the variable `x = int8 (3)` in the
-  workspace, calls like
-
-    `range = [ intmin(class(x)), intmax(class(x)) ]`
-
-  can in Octave 5 be simplified to `range = [ intmin(x), intmax(x) ]`.
-
-- The path handling functions no longer perform variable or brace
-  expansion on path elements and Octave's load-path is no longer
-  subject to these expansions.
-
-- A new printing device is available, `"-ddumb"`, which produces ASCII
-  art for plots.  This device is only available with the gnuplot toolkit.
-
-- The `msgbox` function has changed in two respects: the default WindowStyle
-  is now `"non-modal"`, and the default interpreter for the message is now
-  `"tex"`.  Both WindowStyle and Interpreter can be controlled by passing an
-  option struct argument.
-
-### Dependencies
-
-- The GUI requires Qt libraries.  The minimum Qt4 version supported is
-  Qt4.8.  Qt5 of any version is preferred.
-
-- The OSMesa library is no longer used.  To print invisible figures
-  when using OpenGL graphics, the Qt `QOFFSCREENSURFACE` feature must be
-  available and you must use the qt graphics toolkit.
-
-- The FFTW library is now required to perform FFT calculations.
-  The FFTPACK sources have been removed from Octave.
-
-
-### Matlab compatibility
-
-- The determination of an object's dimensions, size, and shape by the
-  functions `ndims`, `rows`, `columns`, `isscalar`, `isvector`,
-  `isrow`, `iscolumn`, `ismatrix`, and `issquare` now fully depends
-  on the function size.  Thus, any user-defined object can ensure correct
-  treatment by the aforementioned functions by properly overloading the
-  `size` function.
-
-- The functions `issymmetric` and `ishermitian` accept an option
-  `"nonskew"` or `"skew"` to calculate the symmetric or skew-symmetric
-  property of a matrix.  Performance has also been increased.
-
-- The `issorted` function now uses a direction option of `"ascend"`
-  or `"descend"`.  Change all uses of `"ascending"` and `"descending"`
-  in existing code to the new options.
-
-- The `strncmp` and `strncmpi` functions now return `true` if the two
-  input strings match, even though the number of characters specified
-  by `n` exceeds the string length.  For Example:
-
-    `strncmp ("abc", "abc", 100)`
-
-  returns `true` in Octave 5 and `false` in older versions of Octave.
-
-- The `str2func` function no longer accepts a second `"global"` argument.
-  This argument was typically used to allow functions that accept
-  function names as arguments to avoid conflicts with subfunctions or
-  nested functions.  Instead, it's best to avoid this situation
-  entirely and require users to pass function handles rather than
-  function names.
-
-- Using `clear` with no arguments now removes only local variables
-  from the current workspace.  Global variables will no longer be
-  visible, but they continue to exist in the global workspace and
-  possibly other workspaces such as the base workspace.
-
-
-#### Nonlinear Equations
-
-Several default solver options have been changed to be Matlab compatible.
-This *may* result in existing code producing different results.
-
-- `fsolve`
-
-  Option         |   New Default    | Old Default
-  ---------------|------------------|-------------
-  `FinDiffType`  |    `"forward"`   |  `"central"`
-  `MaxFunEvals`  | `100*length(x0)` |    `Inf`
-  `TolFun`       |     `1e-6`       |    `1e-7`
-  `TolX`         |     `1e-6`       |    `1e-7`
-  `Updating`     |     `"off"`      |    `"on"`
-
-- `fminsearch`
-
-  Option   | New Default | Old Default
-  ---------|-------------|------------
-  `TolFun` |   `1e-7`    |   `1e-4`
-
-- `fminbnd`
-
-  Option         | New Default | Old Default
-  ---------------|-------------|------------
-  `MaxFunEvals`  |     `500`   |   `Inf`
-  `MaxIter`      |     `500`   |   `Inf`
-  `TolX`         |    `1e-4`   |   `1e-8`
-
-- `fminunc`
-
-  Option         |   New Default    | Old Default
-  ---------------|------------------|------------
-  `FinDiffType`  |   `"forward"`    | `"central"`
-  `MaxFunEvals`  | `100*length(x0)` |   `Inf`
-  `TolX`         |     `1e-6`       |   `1e-7`
-  `TolFun`       |     `1e-6`       |   `1e-7`
-
-
-#### Graphic objects
-
-- Figure graphic objects have a new property `"Number"` which is
-  read-only and will return the handle (number) of the figure.
-  However, if the property `"IntegerHandle"` has been set to `"off"`
-  then the property will return an empty matrix `[]`.
-
-- Patch and surface graphic objects now use the `"FaceNormals"` property
-  for flat lighting.
-
-- `"FaceNormals"` and `"VertexNormals"` for patch and surface graphic
-  objects are now calculated only when necessary to improve graphics
-  performance.  In order for any normals to be calculated the
-  `"FaceLighting"` property must be set to `"flat"` (FaceNormals) or
-  `"gouraud"` (VertexNormals), **and** a light object must be present
-  in the axes.
-
-- The `"Margin"` property of `text`-objects has a new default of `3`
-  rather than `2`.
-
-- Printing to raster formats (bitmaps like PNG or JPEG) now uses an
-  OpenGL-based method by default.  The print options `"-opengl"`
-  (raster) and `"-painters"` (vector) have been added ("qt" toolkit
-  only).  The figure property `"renderer"` specifies which renderer to
-  use.  When the property `"renderermode"` is `"auto"` Octave will select
-  `"-opengl"` for a raster output format and `"-painters"` for a vector
-  output format.
-
-- A new print option `"-RGBImage"` has been added which captures the
-  pixels of a figure as an image.  This is similar to screen capture
-  tools, except that print formatting options can be used to, for
-  example, change the resolution or display the image in black and
-  white.
-
-- Two new print options for page-based formats (PDF, PostScript) have
-  been added.  The `"-fillpage"` option will stretch the plot to occupy
-  the entire page with 0.25 inch margins all around.  The `"-bestfit"`
-  option will expand the plot to take up as much room as possible on
-  the page without distorting the original aspect ratio of the plot.
-
-- Printing using the `"-dtiff"` output device will now create compressed
-  images using LZW compression.  To produce uncompressed images use the
-  `"-dtiffn"` device.
-
-
-### Legacy functions
-
-The following functions have been declared legacy functions which
-means they are obsolete and should not be used in any new code.
-Unlike deprecated functions, however, their removal from Octave has
-not yet been scheduled.
-
-  Function               | Replacement
-  -----------------------|------------------
-  `findstr`              | `strfind`
-  `flipdim`              | `flip`
-  `isdir`                | `isfolder` or `dir_in_loadpath`
-  `isequalwithequalnans` | `isequaln`
-  `isstr`                | `ischar`
-  `setstr`               | `char`
-  `strmatch`             | `strncmp` or `strcmp`
-  `strread`              | `textscan`
-  `textread`             | `textscan`
-
-
-### Deprecated functions and properties
-
-The following functions and graphics properties have been deprecated
-in Octave 5 and will be removed from Octave 7 (or whatever version
-is the second major release after 5):
-
-- Functions
-
-  Function                 | Replacement
-  -------------------------|-------------------
-  `output_max_field_width` | `output_precision`
-  `is_keyword`             | `iskeyword`
-
-- Graphics properties
-
-  Object           | Property      | Value
-  -----------------|---------------|------------
-  `text`           | `fontangle`   | `"oblique"`
-  `uibuttongroup`  | `fontangle`   | `"oblique"`
-  `uicontrol`      | `fontangle`   | `"oblique"`
-  `uipanel`        | `fontangle`   | `"oblique"`
-  `uitable`        | `fontangle`   | `"oblique"`
-
-- Specifying `legend` position with a numeric argument is deprecated.
-  Use a string argument instead.
-
-- The environment variable used by `mkoctfile` for linker flags is now
-  `LDFLAGS` rather than `LFLAGS`.  `LFLAGS` is deprecated, and a warning
-  is emitted if is used, but it will continue to work.
-
-
-### Removed functions and properties
-
-The following functions and properties were deprecated in Octave 4.2
-and have been removed from Octave 5.
-
-- Functions
-
-  Function               | Replacement
-  -----------------------|------------------
-  `bitmax`               | `flintmax`
-  `mahalanobis`          | `mahal` in Octave Forge statistics pkg
-  `md5sum`               | `hash`
-  `octave_config_info`   | `__octave_config_info__`
-  `onenormest`           | `normest1`
-  `sleep`                | `pause`
-  `usleep`               | `pause`
-  `wavread`              | `audioread`
-  `wavwrite`             | `audiowrite`
-
-- Properties
-
-  Object      | Property          | Value
-  ------------|-------------------|---------
-  `axes`      | `xaxislocation`   | `"zero"`
-              | `yaxislocation`   | `"zero"`
-  `hggroup`   | `erasemode`       |
-  `image`     | `erasemode`       |
-  `line`      | `erasemode`       |
-  `patch`     | `erasemode`       |
-  `patch`     | `normalmode`      |
-  `surface`   | `erasemode`       |
-  `surface`   | `normalmode`      |
-  `text`      | `erasemode`       |
-
-
-### Alphabetical list of new functions added in 5
-
-- `clearvars`
-- `isfile`
-- `isfolder`
-- `matlab.lang.makeUniqueStrings`
-- `matlab.lang.makeValidName`
-- `movegui`
-- `movfun`
-- `movie`
-- `movmad`
-- `movmax`
-- `movmean`
-- `movmedian`
-- `movmin`
-- `movprod`
-- `movslice`
-- `movstd`
-- `movsum`
-- `movvar`
-- `openfig`
-- `ordeig`
-- `savefig`
-- `uitable`
-
-
-### Old release news
-
-- [Octave 4.4.x](etc/NEWS.4)
-- [Octave 4.2.x](etc/NEWS.4)
-- [Octave 4.0.x](etc/NEWS.4)
-- [Octave 3.8.x](etc/NEWS.3)
-- [Octave 3.6.x](etc/NEWS.3)
-- [Octave 3.4.x](etc/NEWS.3)
-- [Octave 3.2.x](etc/NEWS.3)
-- [Octave 3.0.x](etc/NEWS.3)
-- [Octave 2.x](etc/NEWS.2)
-- [Octave 1.x](etc/NEWS.1)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/NEWS.5.md	Wed Dec 08 08:42:35 2021 +0100
@@ -0,0 +1,443 @@
+Summary of bugs fixed for version 5.2.0 (2020-01-31):
+----------------------------------------------------
+
+See: https://www.octave.org/news/release/2020/01/31/octave-5.2.0-released.html
+
+For (bug #XXXXX) see https://savannah.gnu.org/bugs/?XXXXX
+
+### Improvements
+
+- Lock amd and symbfact to avoid segmentation fault with SuiteSparse (bug #57435)
+- Fix segfault when calculating patch vertex normals (bug #57353)
+- Fix segfault in constructing patch normals for lighting (bug #57353)
+- mat2str.m: Fix for logical matrix (add `transpose`).
+- improve file equality check for MS Windows (bug #55161)
+- ismember.m: Fix second return argument when values are complex (bug #52437)
+- findobj.m: Fix typo and correctly handle numeric properties (bug #57030)
+- Correctly display integer types with format hex (bug #56966)
+- Cast `winqueryreg` `REG_DWORD` types to `DWORD` (bug #56703)
+- Fix numerous errors in `audiowrite` / `audioread` (bug #56889)
+- print.m: Pass quoted path to `octave-svgconvert` (bug #56768)
+- dir.m: Fix occasionally returning incorrect folder field (bug #55448)
+- Stop segfault when calling 3-input form of `diag` with cell arrays (bug #56711)
+- improve message for setting breakpoint in nonexistent function (bug #56157)
+- Use framebuffer object for printing invisible Qt figures on mac (bug #55268)
+- Escape backslash characters in `EPS` output (bug #56448)
+- Use replacement characters to display non UTF-8 strings in figures (bug #55974)
+- inputrc: Add warning about modification (bug #56079)
+- documentation.cc (global_search): just return if query string is empty (bug #56388)
+- Default (c)transpose for old style class arrays (bug #56323)
+- Always reserve at least 1 element of storage for sparse matrices (bug #56232)
+- Don't segfault at exit after reading malformed HDF5 file (bug #56149)
+- Fix pause() with no arguments called on Windows (bug #55943)
+- refactor minimum eigenvalue index search in `qp` (bug #56037)
+- qp: fix obscure corner case when calculating `qp` caused by a typo (bug #56037)
+- use `std::streampos` instead of `std::ios::streampos` (patch #9782).
+- fix `pause` and `kbhit` with glibc 2.28 end-of-file state behavior (bug #55029)
+- Fix return of left-handed vectors when inputs are complex (bug #56026)
+- waitbar.m: Fix hang when using `createcancelbtn` property (bug #55963)
+- shading.m: Fix unexpected error when multiple `hggroups` present (bug #55993)
+- dec2base.m: Correctly handle zero matrix input (bug #56005)
+- eliminate duplicate graphics callback object stack (bug #55908)
+- Improve performance when closing figures (bug #55908)
+- Reduce time to process `pkg -forge list` by 30X (bug #39479)
+- Feed `fig2dev` with PDF files converted from svg (bug #55906)
+- Improve error checking for `iconv_open`.
+- poly.m: fix the fix for input of complex conjugate pairs (bug #53897)
+- mkoctfile: use the `TMPDIR` environment variable if set (bug #55814)
+- line.m: Fix creation of unwanted axes (bug #55840)
+- Accept 4-input form for quiver3 (bug #55570)
+- pkg.m: restore installing packages from zip archives (bug #55788)
+- axis.m: Fix issues with `equal` argument (bug #55619, bug #55614, bug #55574,
+  bug #55514, bug #54848, bug #53724, bug #53504, bug #53336, bug #51938, bug #50356).
+- ordeig.m: Do not fail on 1x1 matrices (bug #55779)
+
+### GUI
+
+- fix editors search and replace in selection (bug #56405)
+- undo a complete replace all action in the editor (bug #56405)
+- fix missing unlock of mutex when gui editor is not present (bug #56097)
+- prevent unnamed editor tab from being closed by `rmdir` (bug #55888)
+- prevent editor from closing files that are not affected by `rmdir` (bug #55823)
+- fix creating keyword files for editor autocompletion (bug #55835)
+- fix dock widget position when being dragged out of the main window (bug #55704)
+
+### Build system / Tests
+
+- configure: prevent overlinking when SUNDIALS is disabled (bug #55956)
+- use QtCore and Qt5Gui modules instead of Qt5OpenGL (bug #55735)
+- make building with Qt4 QGLWidget work again (bug #55735)
+- build: adapt mk-qthelp.pl to changes in Texinfo 6.7.
+- BIST should not rely on the current directory to be writable.
+- bp-table.cc: Fix test.
+- maint: Make old style class tests Matlab compatible.
+- Add BIST tests for `unlink` (bug #56097)
+
+### Documentation
+
+- fix many spelling errors (bug #57613)
+- help: improve documentation for the `startup.m` user script.
+- avoid conflict with @seealso macro in Texinfo 6.6 (bug #55952)
+- mk-doc-cache.pk: Also translate `@seealso` here. (bug #55952)
+- __makeinfo__.m: Also translate `@seealso` here (bug #55952)
+- polar.m: Document that input is expected to be in radians (bug #57052)
+- gallery.m: Fix typo in docstring for poisson (bug #56267)
+- Add 1024x1024 Octave logo icon (bug #55836)
+- add `.editorconfig` for default file encoding and indentation.
+- octave.doap: Copy localized (short) description over from appdata (bug #55279)
+- org.octave.Octave.appdata.xml: Add German and French description (bug #55279)
+- languages/*.ts: updated language files (bug #55772)
+- quiver3.m: Fix texinfo typo in docstring from cset f7b10bd40045.
+- doc: fix `.` Operator Index entry to build with Texinfo 6.7.
+- doc: improve example of using global variables from oct-files.
+- doc: Create en-dashes and em-dashes correctly in documentation.
+- doc: expand `page_output_immediately` doc string, mention `page_screen_output`.
+- doc: Clarify documentation of `history_file` (bug #57027)
+- doc: Improve documentation for `get_help_text`, `get_help_text_from_file`.
+- doc: Add documentation for `GNUTERM` variable used with gnuplot (bug #56906)
+- doc: Improve `contour` docstring example (bug #56849)
+- doc: Add example to show limitations of the given BLAS integer size.
+- doc: Improve documentation of sparse functions.
+- doc: Improve spelling of `bicgstab` (bug #56812)
+- doc: Remove `Map` functions `keys`, `values`, `remove` from unimplemented list (bug #56718)
+- doc: Add function index entry for alias `inverse` (bug #56629)
+- add content rating declaration to AppStream metadata (bug #56466)
+- doc: Remove stray semicolons from `pie`, `pie3` calling forms.
+- doc: Redo documentation for `rats` function.
+- doc: Specify `position` property for text objects is a three-element vector (bug #56303)
+- doc: state that Octave can only load HDF5 files created by itself (bug #56148)
+- doc: Fix names of options in `issorted` (bug #56087)
+- doc: Small fixes to `mat2cell` and `polyeig` docstrings (bug #55985)
+- doc: Improve example code for using `-pdflatexstandalone` (bug #55945)
+- doc: Refer to "root object" rather than "root figure object".
+- doc: Place cross-reference from list of graphics object properties back to object (bug #46076)
+- doc: document the newline character in warning messages (bug #49158)
+- doc: pkg versions can be more general than "x.y.z" (bug #55798)
+
+
+Summary of important user-visible changes for version 5 (2019-02-23):
+--------------------------------------------------------------------
+
+See: https://www.octave.org/NEWS-5.1.html
+
+### General improvements
+
+- The Octave plotting system now supports high resolution screens,
+  i.e., those with greater than 96 DPI which are referred to as
+  HiDPI/Retina monitors.
+
+- Unicode character support for files and folders in Windows.
+
+- A new core function `movfun` will apply a function to a sliding
+  window of arbitrary size on a dataset and accumulate the results.
+  Many common cases have been implemented using the naming
+  scheme `movXXX` where `XXX` is the function that will be applied.
+  For example, the moving average over a dataset is `movmean`.
+  New moving window functions:
+
+  `movfun`  `movslice`
+  `movmad`  `movmax`   `movmean`  `movmedian`  `movmin`  `movprod`
+  `movstd`  `movsum`   `movvar`
+
+- The `fsolve` function has been tweaked to use larger step sizes when
+  calculating the Jacobian of a function with finite differences.
+  This leads to faster convergence.
+
+- The `ranks` function has been recoded for performance and is now 25X
+  faster.  In addition, it now supports a third argument that specifies
+  how to resolve the ranking of tie values.
+
+- The function `randi` has been recoded to produce an unbiased (all
+  results are equally likely) sample of integers.  This may produce
+  different results in existing code.  If it is necessary to reproduce
+  the exact random integer sequence as in previous versions use
+
+  `ri = imin + floor ((imax - imin + 1) * rand ());`
+
+- The function `isdefinite` now returns `true` or `false` rather than
+  `-1`, `0`, or `1`.  To test for a positive semi-definite matrix (old
+  output of `0`) check whether the following two conditions hold:
+
+    `isdefinite (A) => 0`  and  `isdefinite (A + 5*TOL, TOL) => 1`
+
+- The `intmax`, `intmin`, and `flintmax` functions now accept a variable
+  as input.  Existing code to query the range of an existing variable can
+  be simplified by removing the call to `class` that was previously
+  required.  For example defining the variable `x = int8 (3)` in the
+  workspace, calls like
+
+    `range = [ intmin(class(x)), intmax(class(x)) ]`
+
+  can in Octave 5 be simplified to `range = [ intmin(x), intmax(x) ]`.
+
+- The path handling functions no longer perform variable or brace
+  expansion on path elements and Octave's load-path is no longer
+  subject to these expansions.
+
+- A new printing device is available, `"-ddumb"`, which produces ASCII
+  art for plots.  This device is only available with the gnuplot toolkit.
+
+- The `msgbox` function has changed in two respects: the default WindowStyle
+  is now `"non-modal"`, and the default interpreter for the message is now
+  `"tex"`.  Both WindowStyle and Interpreter can be controlled by passing an
+  option struct argument.
+
+### Dependencies
+
+- The GUI requires Qt libraries.  The minimum Qt4 version supported is
+  Qt4.8.  Qt5 of any version is preferred.
+
+- The OSMesa library is no longer used.  To print invisible figures
+  when using OpenGL graphics, the Qt `QOFFSCREENSURFACE` feature must be
+  available and you must use the qt graphics toolkit.
+
+- The FFTW library is now required to perform FFT calculations.
+  The FFTPACK sources have been removed from Octave.
+
+
+### Matlab compatibility
+
+- The determination of an object's dimensions, size, and shape by the
+  functions `ndims`, `rows`, `columns`, `isscalar`, `isvector`,
+  `isrow`, `iscolumn`, `ismatrix`, and `issquare` now fully depends
+  on the function size.  Thus, any user-defined object can ensure correct
+  treatment by the aforementioned functions by properly overloading the
+  `size` function.
+
+- The functions `issymmetric` and `ishermitian` accept an option
+  `"nonskew"` or `"skew"` to calculate the symmetric or skew-symmetric
+  property of a matrix.  Performance has also been increased.
+
+- The `issorted` function now uses a direction option of `"ascend"`
+  or `"descend"`.  Change all uses of `"ascending"` and `"descending"`
+  in existing code to the new options.
+
+- The `strncmp` and `strncmpi` functions now return `true` if the two
+  input strings match, even though the number of characters specified
+  by `n` exceeds the string length.  For Example:
+
+    `strncmp ("abc", "abc", 100)`
+
+  returns `true` in Octave 5 and `false` in older versions of Octave.
+
+- The `str2func` function no longer accepts a second `"global"` argument.
+  This argument was typically used to allow functions that accept
+  function names as arguments to avoid conflicts with subfunctions or
+  nested functions.  Instead, it's best to avoid this situation
+  entirely and require users to pass function handles rather than
+  function names.
+
+- Using `clear` with no arguments now removes only local variables
+  from the current workspace.  Global variables will no longer be
+  visible, but they continue to exist in the global workspace and
+  possibly other workspaces such as the base workspace.
+
+
+#### Nonlinear Equations
+
+Several default solver options have been changed to be Matlab compatible.
+This *may* result in existing code producing different results.
+
+- `fsolve`
+
+  Option         |   New Default    | Old Default
+  ---------------|------------------|-------------
+  `FinDiffType`  |    `"forward"`   |  `"central"`
+  `MaxFunEvals`  | `100*length(x0)` |    `Inf`
+  `TolFun`       |     `1e-6`       |    `1e-7`
+  `TolX`         |     `1e-6`       |    `1e-7`
+  `Updating`     |     `"off"`      |    `"on"`
+
+- `fminsearch`
+
+  Option   | New Default | Old Default
+  ---------|-------------|------------
+  `TolFun` |   `1e-7`    |   `1e-4`
+
+- `fminbnd`
+
+  Option         | New Default | Old Default
+  ---------------|-------------|------------
+  `MaxFunEvals`  |     `500`   |   `Inf`
+  `MaxIter`      |     `500`   |   `Inf`
+  `TolX`         |    `1e-4`   |   `1e-8`
+
+- `fminunc`
+
+  Option         |   New Default    | Old Default
+  ---------------|------------------|------------
+  `FinDiffType`  |   `"forward"`    | `"central"`
+  `MaxFunEvals`  | `100*length(x0)` |   `Inf`
+  `TolX`         |     `1e-6`       |   `1e-7`
+  `TolFun`       |     `1e-6`       |   `1e-7`
+
+
+#### Graphic objects
+
+- Figure graphic objects have a new property `"Number"` which is
+  read-only and will return the handle (number) of the figure.
+  However, if the property `"IntegerHandle"` has been set to `"off"`
+  then the property will return an empty matrix `[]`.
+
+- Patch and surface graphic objects now use the `"FaceNormals"` property
+  for flat lighting.
+
+- `"FaceNormals"` and `"VertexNormals"` for patch and surface graphic
+  objects are now calculated only when necessary to improve graphics
+  performance.  In order for any normals to be calculated the
+  `"FaceLighting"` property must be set to `"flat"` (FaceNormals) or
+  `"gouraud"` (VertexNormals), **and** a light object must be present
+  in the axes.
+
+- The `"Margin"` property of `text`-objects has a new default of `3`
+  rather than `2`.
+
+- Printing to raster formats (bitmaps like PNG or JPEG) now uses an
+  OpenGL-based method by default.  The print options `"-opengl"`
+  (raster) and `"-painters"` (vector) have been added ("qt" toolkit
+  only).  The figure property `"renderer"` specifies which renderer to
+  use.  When the property `"renderermode"` is `"auto"` Octave will select
+  `"-opengl"` for a raster output format and `"-painters"` for a vector
+  output format.
+
+- A new print option `"-RGBImage"` has been added which captures the
+  pixels of a figure as an image.  This is similar to screen capture
+  tools, except that print formatting options can be used to, for
+  example, change the resolution or display the image in black and
+  white.
+
+- Two new print options for page-based formats (PDF, PostScript) have
+  been added.  The `"-fillpage"` option will stretch the plot to occupy
+  the entire page with 0.25 inch margins all around.  The `"-bestfit"`
+  option will expand the plot to take up as much room as possible on
+  the page without distorting the original aspect ratio of the plot.
+
+- Printing using the `"-dtiff"` output device will now create compressed
+  images using LZW compression.  To produce uncompressed images use the
+  `"-dtiffn"` device.
+
+
+### Legacy functions
+
+The following functions have been declared legacy functions which
+means they are obsolete and should not be used in any new code.
+Unlike deprecated functions, however, their removal from Octave has
+not yet been scheduled.
+
+  Function               | Replacement
+  -----------------------|------------------
+  `findstr`              | `strfind`
+  `flipdim`              | `flip`
+  `isdir`                | `isfolder` or `dir_in_loadpath`
+  `isequalwithequalnans` | `isequaln`
+  `isstr`                | `ischar`
+  `setstr`               | `char`
+  `strmatch`             | `strncmp` or `strcmp`
+  `strread`              | `textscan`
+  `textread`             | `textscan`
+
+
+### Deprecated functions and properties
+
+The following functions and graphics properties have been deprecated
+in Octave 5 and will be removed from Octave 7 (or whatever version
+is the second major release after 5):
+
+- Functions
+
+  Function                 | Replacement
+  -------------------------|-------------------
+  `output_max_field_width` | `output_precision`
+  `is_keyword`             | `iskeyword`
+
+- Graphics properties
+
+  Object           | Property      | Value
+  -----------------|---------------|------------
+  `text`           | `fontangle`   | `"oblique"`
+  `uibuttongroup`  | `fontangle`   | `"oblique"`
+  `uicontrol`      | `fontangle`   | `"oblique"`
+  `uipanel`        | `fontangle`   | `"oblique"`
+  `uitable`        | `fontangle`   | `"oblique"`
+
+- Specifying `legend` position with a numeric argument is deprecated.
+  Use a string argument instead.
+
+- The environment variable used by `mkoctfile` for linker flags is now
+  `LDFLAGS` rather than `LFLAGS`.  `LFLAGS` is deprecated, and a warning
+  is emitted if is used, but it will continue to work.
+
+
+### Removed functions and properties
+
+The following functions and properties were deprecated in Octave 4.2
+and have been removed from Octave 5.
+
+- Functions
+
+  Function               | Replacement
+  -----------------------|------------------
+  `bitmax`               | `flintmax`
+  `mahalanobis`          | `mahal` in Octave Forge statistics pkg
+  `md5sum`               | `hash`
+  `octave_config_info`   | `__octave_config_info__`
+  `onenormest`           | `normest1`
+  `sleep`                | `pause`
+  `usleep`               | `pause`
+  `wavread`              | `audioread`
+  `wavwrite`             | `audiowrite`
+
+- Properties
+
+  Object      | Property          | Value
+  ------------|-------------------|---------
+  `axes`      | `xaxislocation`   | `"zero"`
+              | `yaxislocation`   | `"zero"`
+  `hggroup`   | `erasemode`       |
+  `image`     | `erasemode`       |
+  `line`      | `erasemode`       |
+  `patch`     | `erasemode`       |
+  `patch`     | `normalmode`      |
+  `surface`   | `erasemode`       |
+  `surface`   | `normalmode`      |
+  `text`      | `erasemode`       |
+
+
+### Alphabetical list of new functions added in 5
+
+- `clearvars`
+- `isfile`
+- `isfolder`
+- `matlab.lang.makeUniqueStrings`
+- `matlab.lang.makeValidName`
+- `movegui`
+- `movfun`
+- `movie`
+- `movmad`
+- `movmax`
+- `movmean`
+- `movmedian`
+- `movmin`
+- `movprod`
+- `movslice`
+- `movstd`
+- `movsum`
+- `movvar`
+- `openfig`
+- `ordeig`
+- `savefig`
+- `uitable`
+
+
+### Old release news
+
+- [Octave 4.4.x](etc/NEWS.4)
+- [Octave 4.2.x](etc/NEWS.4)
+- [Octave 4.0.x](etc/NEWS.4)
+- [Octave 3.8.x](etc/NEWS.3)
+- [Octave 3.6.x](etc/NEWS.3)
+- [Octave 3.4.x](etc/NEWS.3)
+- [Octave 3.2.x](etc/NEWS.3)
+- [Octave 3.0.x](etc/NEWS.3)
+- [Octave 2.x](etc/NEWS.2)
+- [Octave 1.x](etc/NEWS.1)
--- a/etc/NEWS.6	Wed Dec 08 09:49:04 2021 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,542 +0,0 @@
-Summary of bugs fixed for version 6.4.0 (2021-10-30)
-----------------------------------------------------
-
-For (bug #XXXXX) see https://savannah.gnu.org/bugs/?XXXXX
-
-### Improvements and fixes
-
-- Reduce memory usage in BISTs for `copyobj`, `hgsave` (bug #57591).
-- `hgsave.m`, `copyobj.m`: Use `'qt'` graphics toolkit in BISTs.
-- `main.cc`: Use `getopt` to parse command line arguments (bug #60886).
-- `main.cc`: Remove invalid case (bug #60886).
-- Disable `getopt` error reporting in wrapper program (bug #60886).
-- `interp1.m`: Don't interpret later numeric input as `xi` (bug #60967).
-- `pkg`: Improve similar package name suggestion (bug #61067).
-- Store parent name in function object when caching parents in scope (bug #61105).
-- Avoid internal error and segfault with `eval` and scripts (bug #61191).
-- `rmpath`: Prevent removing the current directory from the load path (bug #61216).
-
-### GUI
-
-- Fix missing interpreter event in `octave-scintilla`.
-- Fix opening a file in a custom editor (bug #60990).
-
-### Documentation
-
-- Improve docstring for `disable_diagonal_matrix`, `disable_diagonal_matrix`,
-  and `disable_range` (patch #10089).
-- `cbrt`: Clarify that function errors for non-real input.
-- `dsearchn.m`: Added optional distance output description (bug #61156).
-- Add Hungarian translation for project description files.
-- Document fsolve output "info" -2 (bug #61310).
-
-### Build system
-
-- Correct error message for incompatible CXSparse (bug #61385).
-
-
-Summary of bugs fixed for version 6.3.0 (2021-07-11)
-----------------------------------------------------
-
-For (bug #XXXXX) see https://savannah.gnu.org/bugs/?XXXXX
-
-### Important notice
-
-- This bug fix release breaks ABI compatiblity with Octave 6.2.0. Re-build
-  binaries (like .oct or .mex files) when updating to this version.
-
-### Improvements and fixes
-
-- `ls-hdf5.cc`: Avoid throwing inside HDF5 function (bug #60081).
-- `ls-hdf5.cc`: Handle non-zero terminated type strings (bug #60081).
-- Fix occasional segfault in `symbfact` (bug #60101).
-- `fsolve.m`: Fix undefined output error when using `Output` function (bug #60144).
-- Fix compilation error with `iconv_t` on Solaris (bug #60162).
-- build: Check for `stropts.h` (bug #60163).
-- Avoid ambiguous call to `pow` (bug #60169).
-- Fix context link when creating handle to nested function.
-- `print.m`: Warn when figure is too large to be printed to output page (bug #60236).
-- Defer clearing function vars until stack frame is deleted (bug #60137).
-- Avoid memory leaks when returning handles to nested functions.
-- Hold references to closure frames in anon functions if needed (bug #60237).
-- `eigs`: Prevent possible segmentation fault at exit (bug #60311).
-- Issue warning when gnuplot graphics toolkit is initialized.
-- mpoles.m: Fix detection of pole multiplicity (bug #60384).
-- Perform shutdown actions in interpreter destructor (bug #60334).
-- build: Make relocation of dependencies with Octave optional (bug #60413).
-- `qz.cc`: Return correct number of eigenvalues (bug #60357).
-- `qz.cc`: Let test pass with LAPACK 3.9.1 and earlier versions (bug #60357).
-- `pkg.m`: Use default prefixes unless otherwise set previously (bug #60472).
-- `betaincinv.m`: Correctly handle small inputs (bug #60528).
-- `betaincinv.m`: Correctly handle inputs very close to 1.0 (bug #60528).
-- `unistd-wrappers.c`: Allocate sufficient memory for `new_argv` (bug #60535).
-- Mark system functions correctly if `OCTAVE_HOME` is non-canonical (bug #60554).
-- Mark compiled system functions correctly if `OCTAVE_HOME` is non-canonical (bug #60554).
-- Fix error if test suite is run before Octave is installed (bug #60554).
-- `lo-array-errwarn.cc`: Include `<limits>` (bug #60470).
-- Use `std::size_t` and `std::ptrdiff_t` in C++ code (bug #60471).
-- Use `std::size_t` in more instances (bug #60471).
-- Return proper number of stack frames for `dbstack (N)` call (bug #60531).
-- Avoid ambiguous match of overloaded function (bug #60531).
-- `lscov.m`: Relax BIST tolerance to pass with OpenBLAS (bug #60552).
-- `print`: Fix error when `"px"` word is present in a figure (bug #60641).
-- `logm.m`: Fix check for real negative values in complex vector (bug #60738).
-- build: Set necessary flags to allow execution on Windows Vista (bug #60746).
-- Declare base_parser destructor virtual.
-- `hist.m`: Improve handling and docstring for third parameter "norm" (bug #60783).
-- `logm.m`: Allow tolerance in check for real negative values in complex vector (bug #60738).
-- `expm.m`, `logm.m`: Use function `isdiag` to detect if input is a diagonal matrix (bug #60738).
-- tests: Relax tolerance for some tests on macOS.
-- `logspace.m`: Mark tests as known to fail on macOS (bug #55538).
-- `hist.m`: Use deterministic test (bug #60783).
-- `rgb2ind.m`: Reduce memory usage and eliminate randomness in test.
-- `logm.m`: Allow larger tolerance for test on macOS.
-- build: Use correct path to `octave` binary in build tree on macOS.
-- build: Fix typo in folder to libraries when building `.oct` or `.mex` files.
-- build: Set DL_LDFLAGS in the build rules for .oct or .mex files.
-- `rgb2ind.m`: Suppress output in test.
-- Improve documentation for `log2` function (bug #60817).
-- `ind2sub`: Fix typo in "see also" section of docstring (bug #60842).
-- `mrdivide`, `mldivide`: Document that functions might return minimum norm solutions (bug #60839).
-- Fix scoping issue for handles to sibling nested functions (bug #60845).
-- `ls-mat5.cc`: Avoid integer overflow in calculation of buffer size for zlib (bug #55427).
-- Move top-level REPL from interpreter to evaluator.
-- Avoid crash with `dbquit` when executing command in terminal from GUI (bug #60813).
-
-### GUI
-
-- Fix calling external editor (bug #60198).
-- Fix missing file suffix .m when saving a new script (bug #60214).
-- Do not run files that are not saved as Octave files (bug #60214).
-- Fix confirm overwrite for native editor file "save as" dialogs (bug #60214).
-- Fix crash when GUI tries to restore missing previous Octave dir (bug #60255).
-- Fix restoring the horizontal position of docked GUI widgets (bug #59426).
-- Prevent floating widgets from re-opening after restart (bug #60279).
-- Avoid crash in GUI for `rmdir("")` (bug #60473).
-- Fix EOL mode when saving files under new names (bug #60585).
-- Fix auto indentation of switch-structure in GUI editor (bug #60649).
-- Avoid crash when closing GUI with open editor tabs (bug #60500).
-- `octave-qscintilla.cc` (`contextmenu_run`): Fix keyboard command handling.
-
-### Documentation
-
-- Improve Differential Equations chapter and example for lsode (bug #57508).
-- Clarify usage of "Depends" keyword in package `DESCRIPTION` file (bug #60053).
-- Add note that wildcard patterns for `save` are glob patterns (bug #60157).
-- Change example for Delaunay triangulation to match the generating code (bug #60216).
-- Document single precision issues with OpenGL graphics toolkits (bug #59418).
-- Minor changes to documentation of single precision issues with OpenGL (bug #59418).
-- Expand on documentation for command syntax (bug #60084).
-- `isprop.m`: Document that function only works on graphics objects in Octave 6.X (bug #60295).
-- Explain how to write dual-purpose executable scripts and Octave functions (bug #60291).
-- Update keyword docstrings (bug #60275).
-- Use Texinfo commands to improve `transpose()` docstring rendering.
-- `betainc.m`, `betaincinv.m`: Correct non-TeX definition of beta incomplete integral.
-- Grammarcheck documentation ahead of 6.3 release.
-- Spellcheck documentation ahead of 6.3 release.
-
-
-Summary of bugs fixed for version 6.2.0 (2021-02-19):
-----------------------------------------------------
-
-See: https://www.octave.org/news/release/2021/02/20/octave-6.2.0-released.html
-
-For (bug #XXXXX) see https://savannah.gnu.org/bugs/?XXXXX
-
-### Improvements
-
-- `bicgstab.m`, `cgs.m`: Fix typo in `"iter_min"` variable name (bug #60071).
-- Compute with `NA` correctly on MIPS architecture (bug #59830).
-- Fix lookup of `"caller"` stack frame (bug #59847).
-- Also wait on `main_thread` after interpreter shuts down (bug #56952).
-- Fix symbol lookup issue with anonymous functions (bug #55989).
-- Line buffer input in `terminal_reader` class.
-- `qr`: Error for dense `A` and `B` with three output arguments (bug #58944).
-- `strmatch.m`: Always return column vector for Matlab compatibility (bug #59917)
-- Avoid crash when `evalin` global variables into existence in script (bug #59937)
-- Avoid crash on null statement list (bug #59938).
-- Fix ignored output from user function in left side of assignment (bug #59704).
-- Temporarily set lvalue list to null (bug #59704).
-- `fminbnd.m`: do not ignore `"OutputFcn"` (bug #59901).
-- `load-path.cc`: Reduce number of times `"canonicalize_file_name"` is called (bug #59711).
-- `interpn.m`: Use `size_equal` for 10X speedup in cset 067b663529bb (bug #59856).
-- `interpn.m`: Fix check for scattered point coordinates (bug #59856).
-- Avoid `YYUSE` in Octave parser files (see bug #59806).
-- `struct2hdl.m`: Set `"units"` property early.
-- `load-path.cc`: Avoid copying string for loop variable.
-- `pcg.m`: Return correct `FLAG` and correct `RELRES` output (bug #59776).
-- Use static keyword on regexp pattern in `file_stat` (bug #59706).
-- `stat`: Improve regular expression for UNC roots on Windows (bug #59706).
-- `stat`: Use `"make_absolute"` instead of `"canonicalize_file_name"` on Windows (bug #59706).
-- Improve `class_simple` function handle function lookup (bug #59661).
-- `hdl2struct.m`: store hidden text properties (bug #57241).
-- Mark script created with commands from history as modified.
-- `replem.m`: Fix operations with sparse matrices (bug #59705).
-- `ode_event_handler.m`: Fix mishandling of event edge types and multiple events (bug #59709).
-- Increase size of dynamic variable `new_argv` by 1 to avoid indexing out of array.
-- Fix incorrect results for set functions with `"legacy"` option (bug #59708).
-- `dir.m`: Return folder (not including file) in field `"folder"` (bug #59689).
-- Avoid memory leak with function handles (bug #59659).
-- Avoid dispatch error if method argument is a function handle (bug #59617).
-- Avoid crash due to accessing first element of empty list (bug #59656).
-- Don't propagate prevailing `isargout` info through `mexCallMATLAB` (bug #59597).
-- Show original error when failing to create a graphics object (bug #59620).
-- Fix regression with superclass lookup in classdef constructors (bug #59602).
-- Allow Octave class `execution_exception` to catch `std::exception` objects (bug #59592).
-
-### GUI
-
-- Fix restoring editor session after having closed all tabs (bug #60051).
-- Maybe convert TAB to SPC in GUI terminal pasted text (bug #59916).
-- Make bracketed paste mode work in GUI terminal.
-- Fix regression in variable editor when printing without selection.
-- Avoid gui when octave is launched in non-interactive mode (bug #59628).
-- `file-editor-tab.cc` (dtor): do not delete `m_edit_area` (bug #59628).
-- Fix error when restoring previous main window layout (bug #59426).
-- Improve default sizes of gui dock widgets.
-- Clean up constructing main window layout of the gui.
-- Fix focus command window after command execution (bug #59609).
-- Check object size before plotting from variable editor (bug #56685).
-- `documentation.cc`: Include missing header (bug #59553).
-
-### Build system / Tests
-
-- Add default value to `OCTAVE_MIPS_NAN` configure macro for cross-compiling (bug #59830).
-- tests: Function name should match file name (bug #59704).
-- Avoid build errors with Qt4 (bug #59813).
-- eigs.m: Make tests that depend on CHOLMOD conditional.
-- tests: Make tests that depend on CXSparse conditional.
-- build: Use `SPARSE_XCPPFLAGS` in `CPP_FLAGS` for libcorefcn (bug #59806).
-- Add test case for bug #59661.
-- `hgsave.m`: Allow test to run with qt or gnuplot graphics toolkits (bug #57241).
-
-### Documentation
-
-- `embedded.cc`: Fix syntax error interpreter shutdown.
-- Update Octave Project Developers copyright for the new year.
-- Use the same comment style for copyright headers in .m files and shell scripts.
-
-
-Summary of important user-visible changes for version 6.1.0 (2020-11-26):
-------------------------------------------------------------------------
-
-### General improvements
-
-- The `intersect`, `setdiff`, `setxor`, `union`, and `unique` functions
-  accept a new sorting option `"stable"` which will return output values
-  in the same order as the input, rather than in ascending order.
-
-- Complex RESTful web services can now be accessed by the `webread` and
-  `webwrite` functions alongside with the `weboptions` structure.  One
-  major feature is the support for cookies to enable RESTful
-  communication with the web service.
-
-  Additionally, the system web browser can be opened by the `web`
-  function.
-
-- The `linspace` function now produces symmetrical sequences when the
-  endpoints are symmetric.  This is more intuitive and also compatible
-  with recent changes made in Matlab R2019b.
-
-- The underlying algorithm of the `rand` function has been changed.
-  For single precision outputs, the algorithm has been fixed so that it
-  produces values strictly in the range (0, 1).  Previously, it could
-  occasionally generate the right endpoint value of 1 (See bug #41742).
-  In addition, the new implementation uses a uniform interval between
-  floating point values in the range (0, 1) rather than targeting a
-  uniform density (# of random integers / length along real number
-  line).
-
-- Numerical integration has been improved.  The `quadv` function has
-  been re-written so that it can compute integrands of periodic
-  functions.  At the same time, performance is better with ~3.5X fewer
-  function evaluations required.  A bug in `quadgk` that caused complex
-  path integrals specified with `"Waypoints"` to occasionally be
-  calculated in the opposite direction was fixed.
-
-- The `edit` function option `"editinplace"` now defaults to `true` and
-  the option `"home"` now defaults to the empty matrix `[]`.  Files will
-  no longer be copied to the user's HOME directory for editing.  The old
-  behavior can be restored by setting `"editinplace"` to `false` and
-  `"home"` to `"~/octave"`.
-
-- The `format` command supports two new options: `uppercase` and
-  `lowercase` (default).  With the default, print a lowercase 'e' for
-  the exponent character in scientific notation and lowercase 'a-f' for
-  the hex digits representing 10-15.  With `uppercase`, print 'E' and
-  'A-F' instead.  The previous uppercase formats, `E` and `G`, no longer
-  control the case of the output.
-
-  Additionally, the `format` command can be called with multiple options
-  for controlling the format, spacing, and case in arbitrary order.
-  For example:
-
-        format long e uppercase loose
-
-  Note, in the case of multiple competing format options the rightmost
-  one is used, and, in case of an error, the previous format remains
-  unchanged.
-
-- L-value references (e.g., increment (++), decrement (--), and all
-  in-place assignment operators (+=, -=, *=, /=, etc.)) are no longer
-  allowed in anonymous functions.
-
-- New warnings have been added about questionable uses of the colon ':'
-  range operator.  Each has a new warning ID so that it can be disabled
-  if desired.
-
-  >  `Octave:colon-complex-argument`   : when any arg is complex
-  >  `Octave:colon-nonscalar-argument` : when any arg is non-scalar
-
-- The `regexp` and related functions now correctly handle and *require*
-  strings in UTF-8 encoding.  As with any other function that requires
-  strings to be encoded in Octave's native encoding, you can use
-  `native2unicode` to convert from your preferred locale.  For example,
-  the copyright symbol in UTF-8 is `native2unicode (169, "latin1")`.
-
-- The startup file `octaverc` can now be located in the platform
-  dependent location for user local configuration files (e.g.,
-  ${XDG_CONFIG_HOME}/octave/octaverc on Unix-like operating systems or
-  %APPDATA%\octave\octaverc on Windows).
-
-- `pkg describe` now lists dependencies and inverse dependencies
-  (i.e., other installed packages that depend on the package in
-  question).
-
-- `pkg test` now tests all functions in a package.
-
-- When unloading a package, `pkg` now checks if any remaining loaded
-  packages depend on the one to be removed.  If this is the case `pkg`
-  aborts with an explanatory error message.  This behavior can be
-  overridden with the `-nodeps` option.
-
-- The command
-
-    dbstop in CLASS at METHOD
-
-  now works to set breakpoints in classdef constructors and methods.
-
-#### Graphics backend
-
-- The use of Qt4 for graphics and the GUI is deprecated in Octave
-  version 6 and no further bug fixes will be made.  Qt4 support will be
-  removed completely in Octave version 7.
-
-- The `legend` function has been entirely rewritten.  This fixes a
-  number of historical bugs, and also implements new properties such as
-  `"AutoUpdate"` and `"NumColumns"`.  The gnuplot toolkit---which is no
-  longer actively maintained---still uses the old legend function.
-
-- The `axis` function was updated which resolved 10 bugs affecting
-  axes to which `"equal"` had been applied.
-
-- Graphic primitives now accept a color property value of `"none"`
-  which is useful when a particular primitive needs to be hidden
-  (for example, the Y-axis of an axes object with `"ycolor" = "none"`)
-  without hiding the entire primitive `"visibility" = "off"`.
-
-- A new property `"FontSmoothing"` has been added to text and axes
-  objects that controls whether anti-aliasing is used during the
-  rendering of characters.  The default is `"on"` which produces smooth,
-  more visually appealing text.
-
-- The figure property `"windowscrollwheelfcn"`is now implemented.
-  This makes it possible to provide a callback function to be executed
-  when users manipulate the mouse wheel on a given figure.
-
-- The figure properties `"pointer"`, `"pointershapecdata"`, and
-  `"pointershapehotspot"` are now implemented.  This makes it possible
-  to change the shape of the cursor (pointer in Matlab-speak) displayed
-  in a plot window.
-
-- The figure property `"paperpositionmode"` now has the default `"auto"`
-  rather than `"manual"`.  This change is more intuitive and is
-  Matlab compatible.
-
-- The appearance of patterned lines `"LineStyle" = ":"|"--"|"-."` has
-  been improved for small widths (`"LineWidth"` less than 1.5 pixels)
-  which is a common scenario.
-
-- Printing to EPS files now uses a tight bounding box (`"-tight"`
-  argument to print) by default.  This makes more sense for EPS
-  files which are normally embedded within other documents, and is
-  Matlab compatible.  If necessary use the `"-loose"` option to
-  reproduce figures as they appeared in previous versions of Octave.
-
-- The following print devices are no longer officially supported: cdr,
-  corel, aifm, ill, cgm, hpgl, mf and dxf.  A warning will be thrown
-  when using those devices, and the code for supporting those formats
-  will eventually be removed from a future version of Octave.
-
-- The placement of text subscripts and superscripts has been
-  re-engineered and now produces visually attractive results similar to
-  Latex.
-
-### Matlab compatibility
-
-- The function `unique` now returns column index vectors for the second
-  and third outputs.  When duplicate values are present, the default
-  index to return is now the `"first"` occurrence.  The previous Octave
-  behavior, or Matlab behavior from releases prior to R2012b, can be
-  obtained by using the `"legacy"` flag.
-
-- The function `setdiff` with the `"rows"` argument now returns Matlab
-  compatible results.  The previous Octave behavior, or Matlab behavior
-  from releases prior to R2012b, can be obtained by using the `"legacy"`
-  flag.
-
-- The functions `intersect`, `setxor`, and `union` now accept a
-  `"legacy"` flag which changes the index values (second and third
-  outputs) as well as the orientation of all outputs to match Matlab
-  releases prior to R2012b.
-
-- The function `streamtube` is Matlab compatible and plots tubes along
-  streamlines which are scaled by the vector field divergence. The
-  Octave-only extension `ostreamtube` can be used to visualize the flow
-  expansion and contraction of the vector field due to the local
-  crossflow divergence.
-
-- The interpreter now supports handles to nested functions.
-
-- The graphics properties `"LineWidth"` and `"MarkerSize"` are now
-  measured in points, *not* pixels.  Compared to previous versions
-  of Octave, some lines and markers will appear 4/3 larger.
-
-- The meta.class property "SuperClassList" has been renamed
-  "Superclasslist" for Matlab compatibility.  The original name will
-  exist as an alias until Octave version 8.1.
-
-- Inline functions created by the function `inline` are now of type
-  "inline" when interrogated with the `class` function.  In previous
-  versions of Octave, the class returned was "function_handle".  This
-  change is Matlab compatible.  Inline functions are deprecated in
-  both Matlab and Octave and support may eventually be removed.
-  Anonymous functions can be used to replace all instances of inline
-  functions.
-
-- The function `javaaddpath` now prepends new directories to the
-  existing dynamic classpath by default.  To append them instead, use
-  the new `"-end"` argument.  Multiple directories may now be specified
-  in a cell array of strings.
-
-- An undocumented function `gui_mainfcn` has been added, for compatibility
-  with figures created with Matlab's GUIDE.
-
-- Several validator functions of type `mustBe*` have been added.  See
-  the list of new functions below.
-
-### Alphabetical list of new functions added in Octave 6
-
-* `auto_repeat_debug_command`
-* `commandhistory`
-* `commandwindow`
-* `filebrowser`
-* `is_same_file`
-* `lightangle`
-* `mustBeFinite`
-* `mustBeGreaterThan`
-* `mustBeGreaterThanOrEqual`
-* `mustBeInteger`
-* `mustBeLessThan`
-* `mustBeLessThanOrEqual`
-* `mustBeMember`
-* `mustBeNegative`
-* `mustBeNonempty`
-* `mustBeNonNan`
-* `mustBeNonnegative`
-* `mustBeNonpositive`
-* `mustBeNonsparse`
-* `mustBeNonzero`
-* `mustBeNumeric`
-* `mustBeNumericOrLogical`
-* `mustBePositive`
-* `mustBeReal`
-* `namedargs2cell`
-* `newline`
-* `ode23s`
-* `ostreamtube`
-* `rescale`
-* `rotx`
-* `roty`
-* `rotz`
-* `stream2`
-* `stream3`
-* `streamline`
-* `streamtube`
-* `uisetfont`
-* `verLessThan`
-* `web`
-* `weboptions`
-* `webread`
-* `webwrite`
-* `workspace`
-
-
-### Deprecated functions and properties
-
-The following functions and properties have been deprecated in Octave 6
-and will be removed from Octave 8 (or whatever version is the second
-major release after 6):
-
-- Functions
-
-  Function               | Replacement
-  -----------------------|------------------
-  `runtests`             | `oruntests`
-
-- Properties
-
-  Object           | Property      | Value
-  -----------------|---------------|------------
-                   |               |
-
-- The environment variable used by `mkoctfile` for linker flags is now
-  `LDFLAGS` rather than `LFLAGS`.  `LFLAGS` is deprecated, and a warning
-  is emitted if it is used, but it will continue to work.
-
-
-### Removed functions and properties
-
-The following functions and properties were deprecated in Octave 4.4
-and have been removed from Octave 6.
-
-- Functions
-
-  Function             | Replacement
-  ---------------------|------------------
-  `chop`               | `sprintf` for visual results
-  `desktop`            | `isguirunning`
-  `tmpnam`             | `tempname`
-  `toascii`            | `double`
-  `java2mat`           | `__java2mat__`
-
-- Properties
-
-  Object               | Property                  | Value
-  ---------------------|---------------------------|-----------------------
-  `annotation`         | `edgecolor ("rectangle")` |
-  `axes`               | `drawmode`                |
-  `figure`             | `doublebuffer`            |
-                       | `mincolormap`             |
-                       | `wvisual`                 |
-                       | `wvisualmode`             |
-                       | `xdisplay`                |
-                       | `xvisual`                 |
-                       | `xvisualmode`             |
-  `line`               | `interpreter`             |
-  `patch`              | `interpreter`             |
-  `surface`            | `interpreter`             |
-  `text`               | `fontweight`              | `"demi"` and `"light"`
-  `uibuttongroup`      | `fontweight`              | `"demi"` and `"light"`
-  `uicontrol`          | `fontweight`              | `"demi"` and `"light"`
-  `uipanel`            | `fontweight`              | `"demi"` and `"light"`
-  `uitable`            | `fontweight`              | `"demi"` and `"light"`
-
-
-### Old release news
-
-- [Octave 5.x](etc/NEWS.5)
-- [Octave 4.x](etc/NEWS.4)
-- [Octave 3.x](etc/NEWS.3)
-- [Octave 2.x](etc/NEWS.2)
-- [Octave 1.x](etc/NEWS.1)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/NEWS.6.md	Wed Dec 08 08:42:35 2021 +0100
@@ -0,0 +1,542 @@
+Summary of bugs fixed for version 6.4.0 (2021-10-30)
+----------------------------------------------------
+
+For (bug #XXXXX) see https://savannah.gnu.org/bugs/?XXXXX
+
+### Improvements and fixes
+
+- Reduce memory usage in BISTs for `copyobj`, `hgsave` (bug #57591).
+- `hgsave.m`, `copyobj.m`: Use `'qt'` graphics toolkit in BISTs.
+- `main.cc`: Use `getopt` to parse command line arguments (bug #60886).
+- `main.cc`: Remove invalid case (bug #60886).
+- Disable `getopt` error reporting in wrapper program (bug #60886).
+- `interp1.m`: Don't interpret later numeric input as `xi` (bug #60967).
+- `pkg`: Improve similar package name suggestion (bug #61067).
+- Store parent name in function object when caching parents in scope (bug #61105).
+- Avoid internal error and segfault with `eval` and scripts (bug #61191).
+- `rmpath`: Prevent removing the current directory from the load path (bug #61216).
+
+### GUI
+
+- Fix missing interpreter event in `octave-scintilla`.
+- Fix opening a file in a custom editor (bug #60990).
+
+### Documentation
+
+- Improve docstring for `disable_diagonal_matrix`, `disable_diagonal_matrix`,
+  and `disable_range` (patch #10089).
+- `cbrt`: Clarify that function errors for non-real input.
+- `dsearchn.m`: Added optional distance output description (bug #61156).
+- Add Hungarian translation for project description files.
+- Document fsolve output "info" -2 (bug #61310).
+
+### Build system
+
+- Correct error message for incompatible CXSparse (bug #61385).
+
+
+Summary of bugs fixed for version 6.3.0 (2021-07-11)
+----------------------------------------------------
+
+For (bug #XXXXX) see https://savannah.gnu.org/bugs/?XXXXX
+
+### Important notice
+
+- This bug fix release breaks ABI compatiblity with Octave 6.2.0. Re-build
+  binaries (like .oct or .mex files) when updating to this version.
+
+### Improvements and fixes
+
+- `ls-hdf5.cc`: Avoid throwing inside HDF5 function (bug #60081).
+- `ls-hdf5.cc`: Handle non-zero terminated type strings (bug #60081).
+- Fix occasional segfault in `symbfact` (bug #60101).
+- `fsolve.m`: Fix undefined output error when using `Output` function (bug #60144).
+- Fix compilation error with `iconv_t` on Solaris (bug #60162).
+- build: Check for `stropts.h` (bug #60163).
+- Avoid ambiguous call to `pow` (bug #60169).
+- Fix context link when creating handle to nested function.
+- `print.m`: Warn when figure is too large to be printed to output page (bug #60236).
+- Defer clearing function vars until stack frame is deleted (bug #60137).
+- Avoid memory leaks when returning handles to nested functions.
+- Hold references to closure frames in anon functions if needed (bug #60237).
+- `eigs`: Prevent possible segmentation fault at exit (bug #60311).
+- Issue warning when gnuplot graphics toolkit is initialized.
+- mpoles.m: Fix detection of pole multiplicity (bug #60384).
+- Perform shutdown actions in interpreter destructor (bug #60334).
+- build: Make relocation of dependencies with Octave optional (bug #60413).
+- `qz.cc`: Return correct number of eigenvalues (bug #60357).
+- `qz.cc`: Let test pass with LAPACK 3.9.1 and earlier versions (bug #60357).
+- `pkg.m`: Use default prefixes unless otherwise set previously (bug #60472).
+- `betaincinv.m`: Correctly handle small inputs (bug #60528).
+- `betaincinv.m`: Correctly handle inputs very close to 1.0 (bug #60528).
+- `unistd-wrappers.c`: Allocate sufficient memory for `new_argv` (bug #60535).
+- Mark system functions correctly if `OCTAVE_HOME` is non-canonical (bug #60554).
+- Mark compiled system functions correctly if `OCTAVE_HOME` is non-canonical (bug #60554).
+- Fix error if test suite is run before Octave is installed (bug #60554).
+- `lo-array-errwarn.cc`: Include `<limits>` (bug #60470).
+- Use `std::size_t` and `std::ptrdiff_t` in C++ code (bug #60471).
+- Use `std::size_t` in more instances (bug #60471).
+- Return proper number of stack frames for `dbstack (N)` call (bug #60531).
+- Avoid ambiguous match of overloaded function (bug #60531).
+- `lscov.m`: Relax BIST tolerance to pass with OpenBLAS (bug #60552).
+- `print`: Fix error when `"px"` word is present in a figure (bug #60641).
+- `logm.m`: Fix check for real negative values in complex vector (bug #60738).
+- build: Set necessary flags to allow execution on Windows Vista (bug #60746).
+- Declare base_parser destructor virtual.
+- `hist.m`: Improve handling and docstring for third parameter "norm" (bug #60783).
+- `logm.m`: Allow tolerance in check for real negative values in complex vector (bug #60738).
+- `expm.m`, `logm.m`: Use function `isdiag` to detect if input is a diagonal matrix (bug #60738).
+- tests: Relax tolerance for some tests on macOS.
+- `logspace.m`: Mark tests as known to fail on macOS (bug #55538).
+- `hist.m`: Use deterministic test (bug #60783).
+- `rgb2ind.m`: Reduce memory usage and eliminate randomness in test.
+- `logm.m`: Allow larger tolerance for test on macOS.
+- build: Use correct path to `octave` binary in build tree on macOS.
+- build: Fix typo in folder to libraries when building `.oct` or `.mex` files.
+- build: Set DL_LDFLAGS in the build rules for .oct or .mex files.
+- `rgb2ind.m`: Suppress output in test.
+- Improve documentation for `log2` function (bug #60817).
+- `ind2sub`: Fix typo in "see also" section of docstring (bug #60842).
+- `mrdivide`, `mldivide`: Document that functions might return minimum norm solutions (bug #60839).
+- Fix scoping issue for handles to sibling nested functions (bug #60845).
+- `ls-mat5.cc`: Avoid integer overflow in calculation of buffer size for zlib (bug #55427).
+- Move top-level REPL from interpreter to evaluator.
+- Avoid crash with `dbquit` when executing command in terminal from GUI (bug #60813).
+
+### GUI
+
+- Fix calling external editor (bug #60198).
+- Fix missing file suffix .m when saving a new script (bug #60214).
+- Do not run files that are not saved as Octave files (bug #60214).
+- Fix confirm overwrite for native editor file "save as" dialogs (bug #60214).
+- Fix crash when GUI tries to restore missing previous Octave dir (bug #60255).
+- Fix restoring the horizontal position of docked GUI widgets (bug #59426).
+- Prevent floating widgets from re-opening after restart (bug #60279).
+- Avoid crash in GUI for `rmdir("")` (bug #60473).
+- Fix EOL mode when saving files under new names (bug #60585).
+- Fix auto indentation of switch-structure in GUI editor (bug #60649).
+- Avoid crash when closing GUI with open editor tabs (bug #60500).
+- `octave-qscintilla.cc` (`contextmenu_run`): Fix keyboard command handling.
+
+### Documentation
+
+- Improve Differential Equations chapter and example for lsode (bug #57508).
+- Clarify usage of "Depends" keyword in package `DESCRIPTION` file (bug #60053).
+- Add note that wildcard patterns for `save` are glob patterns (bug #60157).
+- Change example for Delaunay triangulation to match the generating code (bug #60216).
+- Document single precision issues with OpenGL graphics toolkits (bug #59418).
+- Minor changes to documentation of single precision issues with OpenGL (bug #59418).
+- Expand on documentation for command syntax (bug #60084).
+- `isprop.m`: Document that function only works on graphics objects in Octave 6.X (bug #60295).
+- Explain how to write dual-purpose executable scripts and Octave functions (bug #60291).
+- Update keyword docstrings (bug #60275).
+- Use Texinfo commands to improve `transpose()` docstring rendering.
+- `betainc.m`, `betaincinv.m`: Correct non-TeX definition of beta incomplete integral.
+- Grammarcheck documentation ahead of 6.3 release.
+- Spellcheck documentation ahead of 6.3 release.
+
+
+Summary of bugs fixed for version 6.2.0 (2021-02-19):
+----------------------------------------------------
+
+See: https://www.octave.org/news/release/2021/02/20/octave-6.2.0-released.html
+
+For (bug #XXXXX) see https://savannah.gnu.org/bugs/?XXXXX
+
+### Improvements
+
+- `bicgstab.m`, `cgs.m`: Fix typo in `"iter_min"` variable name (bug #60071).
+- Compute with `NA` correctly on MIPS architecture (bug #59830).
+- Fix lookup of `"caller"` stack frame (bug #59847).
+- Also wait on `main_thread` after interpreter shuts down (bug #56952).
+- Fix symbol lookup issue with anonymous functions (bug #55989).
+- Line buffer input in `terminal_reader` class.
+- `qr`: Error for dense `A` and `B` with three output arguments (bug #58944).
+- `strmatch.m`: Always return column vector for Matlab compatibility (bug #59917)
+- Avoid crash when `evalin` global variables into existence in script (bug #59937)
+- Avoid crash on null statement list (bug #59938).
+- Fix ignored output from user function in left side of assignment (bug #59704).
+- Temporarily set lvalue list to null (bug #59704).
+- `fminbnd.m`: do not ignore `"OutputFcn"` (bug #59901).
+- `load-path.cc`: Reduce number of times `"canonicalize_file_name"` is called (bug #59711).
+- `interpn.m`: Use `size_equal` for 10X speedup in cset 067b663529bb (bug #59856).
+- `interpn.m`: Fix check for scattered point coordinates (bug #59856).
+- Avoid `YYUSE` in Octave parser files (see bug #59806).
+- `struct2hdl.m`: Set `"units"` property early.
+- `load-path.cc`: Avoid copying string for loop variable.
+- `pcg.m`: Return correct `FLAG` and correct `RELRES` output (bug #59776).
+- Use static keyword on regexp pattern in `file_stat` (bug #59706).
+- `stat`: Improve regular expression for UNC roots on Windows (bug #59706).
+- `stat`: Use `"make_absolute"` instead of `"canonicalize_file_name"` on Windows (bug #59706).
+- Improve `class_simple` function handle function lookup (bug #59661).
+- `hdl2struct.m`: store hidden text properties (bug #57241).
+- Mark script created with commands from history as modified.
+- `replem.m`: Fix operations with sparse matrices (bug #59705).
+- `ode_event_handler.m`: Fix mishandling of event edge types and multiple events (bug #59709).
+- Increase size of dynamic variable `new_argv` by 1 to avoid indexing out of array.
+- Fix incorrect results for set functions with `"legacy"` option (bug #59708).
+- `dir.m`: Return folder (not including file) in field `"folder"` (bug #59689).
+- Avoid memory leak with function handles (bug #59659).
+- Avoid dispatch error if method argument is a function handle (bug #59617).
+- Avoid crash due to accessing first element of empty list (bug #59656).
+- Don't propagate prevailing `isargout` info through `mexCallMATLAB` (bug #59597).
+- Show original error when failing to create a graphics object (bug #59620).
+- Fix regression with superclass lookup in classdef constructors (bug #59602).
+- Allow Octave class `execution_exception` to catch `std::exception` objects (bug #59592).
+
+### GUI
+
+- Fix restoring editor session after having closed all tabs (bug #60051).
+- Maybe convert TAB to SPC in GUI terminal pasted text (bug #59916).
+- Make bracketed paste mode work in GUI terminal.
+- Fix regression in variable editor when printing without selection.
+- Avoid gui when octave is launched in non-interactive mode (bug #59628).
+- `file-editor-tab.cc` (dtor): do not delete `m_edit_area` (bug #59628).
+- Fix error when restoring previous main window layout (bug #59426).
+- Improve default sizes of gui dock widgets.
+- Clean up constructing main window layout of the gui.
+- Fix focus command window after command execution (bug #59609).
+- Check object size before plotting from variable editor (bug #56685).
+- `documentation.cc`: Include missing header (bug #59553).
+
+### Build system / Tests
+
+- Add default value to `OCTAVE_MIPS_NAN` configure macro for cross-compiling (bug #59830).
+- tests: Function name should match file name (bug #59704).
+- Avoid build errors with Qt4 (bug #59813).
+- eigs.m: Make tests that depend on CHOLMOD conditional.
+- tests: Make tests that depend on CXSparse conditional.
+- build: Use `SPARSE_XCPPFLAGS` in `CPP_FLAGS` for libcorefcn (bug #59806).
+- Add test case for bug #59661.
+- `hgsave.m`: Allow test to run with qt or gnuplot graphics toolkits (bug #57241).
+
+### Documentation
+
+- `embedded.cc`: Fix syntax error interpreter shutdown.
+- Update Octave Project Developers copyright for the new year.
+- Use the same comment style for copyright headers in .m files and shell scripts.
+
+
+Summary of important user-visible changes for version 6.1.0 (2020-11-26):
+------------------------------------------------------------------------
+
+### General improvements
+
+- The `intersect`, `setdiff`, `setxor`, `union`, and `unique` functions
+  accept a new sorting option `"stable"` which will return output values
+  in the same order as the input, rather than in ascending order.
+
+- Complex RESTful web services can now be accessed by the `webread` and
+  `webwrite` functions alongside with the `weboptions` structure.  One
+  major feature is the support for cookies to enable RESTful
+  communication with the web service.
+
+  Additionally, the system web browser can be opened by the `web`
+  function.
+
+- The `linspace` function now produces symmetrical sequences when the
+  endpoints are symmetric.  This is more intuitive and also compatible
+  with recent changes made in Matlab R2019b.
+
+- The underlying algorithm of the `rand` function has been changed.
+  For single precision outputs, the algorithm has been fixed so that it
+  produces values strictly in the range (0, 1).  Previously, it could
+  occasionally generate the right endpoint value of 1 (See bug #41742).
+  In addition, the new implementation uses a uniform interval between
+  floating point values in the range (0, 1) rather than targeting a
+  uniform density (# of random integers / length along real number
+  line).
+
+- Numerical integration has been improved.  The `quadv` function has
+  been re-written so that it can compute integrands of periodic
+  functions.  At the same time, performance is better with ~3.5X fewer
+  function evaluations required.  A bug in `quadgk` that caused complex
+  path integrals specified with `"Waypoints"` to occasionally be
+  calculated in the opposite direction was fixed.
+
+- The `edit` function option `"editinplace"` now defaults to `true` and
+  the option `"home"` now defaults to the empty matrix `[]`.  Files will
+  no longer be copied to the user's HOME directory for editing.  The old
+  behavior can be restored by setting `"editinplace"` to `false` and
+  `"home"` to `"~/octave"`.
+
+- The `format` command supports two new options: `uppercase` and
+  `lowercase` (default).  With the default, print a lowercase 'e' for
+  the exponent character in scientific notation and lowercase 'a-f' for
+  the hex digits representing 10-15.  With `uppercase`, print 'E' and
+  'A-F' instead.  The previous uppercase formats, `E` and `G`, no longer
+  control the case of the output.
+
+  Additionally, the `format` command can be called with multiple options
+  for controlling the format, spacing, and case in arbitrary order.
+  For example:
+
+        format long e uppercase loose
+
+  Note, in the case of multiple competing format options the rightmost
+  one is used, and, in case of an error, the previous format remains
+  unchanged.
+
+- L-value references (e.g., increment (++), decrement (--), and all
+  in-place assignment operators (+=, -=, *=, /=, etc.)) are no longer
+  allowed in anonymous functions.
+
+- New warnings have been added about questionable uses of the colon ':'
+  range operator.  Each has a new warning ID so that it can be disabled
+  if desired.
+
+  >  `Octave:colon-complex-argument`   : when any arg is complex
+  >  `Octave:colon-nonscalar-argument` : when any arg is non-scalar
+
+- The `regexp` and related functions now correctly handle and *require*
+  strings in UTF-8 encoding.  As with any other function that requires
+  strings to be encoded in Octave's native encoding, you can use
+  `native2unicode` to convert from your preferred locale.  For example,
+  the copyright symbol in UTF-8 is `native2unicode (169, "latin1")`.
+
+- The startup file `octaverc` can now be located in the platform
+  dependent location for user local configuration files (e.g.,
+  ${XDG_CONFIG_HOME}/octave/octaverc on Unix-like operating systems or
+  %APPDATA%\octave\octaverc on Windows).
+
+- `pkg describe` now lists dependencies and inverse dependencies
+  (i.e., other installed packages that depend on the package in
+  question).
+
+- `pkg test` now tests all functions in a package.
+
+- When unloading a package, `pkg` now checks if any remaining loaded
+  packages depend on the one to be removed.  If this is the case `pkg`
+  aborts with an explanatory error message.  This behavior can be
+  overridden with the `-nodeps` option.
+
+- The command
+
+    dbstop in CLASS at METHOD
+
+  now works to set breakpoints in classdef constructors and methods.
+
+#### Graphics backend
+
+- The use of Qt4 for graphics and the GUI is deprecated in Octave
+  version 6 and no further bug fixes will be made.  Qt4 support will be
+  removed completely in Octave version 7.
+
+- The `legend` function has been entirely rewritten.  This fixes a
+  number of historical bugs, and also implements new properties such as
+  `"AutoUpdate"` and `"NumColumns"`.  The gnuplot toolkit---which is no
+  longer actively maintained---still uses the old legend function.
+
+- The `axis` function was updated which resolved 10 bugs affecting
+  axes to which `"equal"` had been applied.
+
+- Graphic primitives now accept a color property value of `"none"`
+  which is useful when a particular primitive needs to be hidden
+  (for example, the Y-axis of an axes object with `"ycolor" = "none"`)
+  without hiding the entire primitive `"visibility" = "off"`.
+
+- A new property `"FontSmoothing"` has been added to text and axes
+  objects that controls whether anti-aliasing is used during the
+  rendering of characters.  The default is `"on"` which produces smooth,
+  more visually appealing text.
+
+- The figure property `"windowscrollwheelfcn"`is now implemented.
+  This makes it possible to provide a callback function to be executed
+  when users manipulate the mouse wheel on a given figure.
+
+- The figure properties `"pointer"`, `"pointershapecdata"`, and
+  `"pointershapehotspot"` are now implemented.  This makes it possible
+  to change the shape of the cursor (pointer in Matlab-speak) displayed
+  in a plot window.
+
+- The figure property `"paperpositionmode"` now has the default `"auto"`
+  rather than `"manual"`.  This change is more intuitive and is
+  Matlab compatible.
+
+- The appearance of patterned lines `"LineStyle" = ":"|"--"|"-."` has
+  been improved for small widths (`"LineWidth"` less than 1.5 pixels)
+  which is a common scenario.
+
+- Printing to EPS files now uses a tight bounding box (`"-tight"`
+  argument to print) by default.  This makes more sense for EPS
+  files which are normally embedded within other documents, and is
+  Matlab compatible.  If necessary use the `"-loose"` option to
+  reproduce figures as they appeared in previous versions of Octave.
+
+- The following print devices are no longer officially supported: cdr,
+  corel, aifm, ill, cgm, hpgl, mf and dxf.  A warning will be thrown
+  when using those devices, and the code for supporting those formats
+  will eventually be removed from a future version of Octave.
+
+- The placement of text subscripts and superscripts has been
+  re-engineered and now produces visually attractive results similar to
+  Latex.
+
+### Matlab compatibility
+
+- The function `unique` now returns column index vectors for the second
+  and third outputs.  When duplicate values are present, the default
+  index to return is now the `"first"` occurrence.  The previous Octave
+  behavior, or Matlab behavior from releases prior to R2012b, can be
+  obtained by using the `"legacy"` flag.
+
+- The function `setdiff` with the `"rows"` argument now returns Matlab
+  compatible results.  The previous Octave behavior, or Matlab behavior
+  from releases prior to R2012b, can be obtained by using the `"legacy"`
+  flag.
+
+- The functions `intersect`, `setxor`, and `union` now accept a
+  `"legacy"` flag which changes the index values (second and third
+  outputs) as well as the orientation of all outputs to match Matlab
+  releases prior to R2012b.
+
+- The function `streamtube` is Matlab compatible and plots tubes along
+  streamlines which are scaled by the vector field divergence. The
+  Octave-only extension `ostreamtube` can be used to visualize the flow
+  expansion and contraction of the vector field due to the local
+  crossflow divergence.
+
+- The interpreter now supports handles to nested functions.
+
+- The graphics properties `"LineWidth"` and `"MarkerSize"` are now
+  measured in points, *not* pixels.  Compared to previous versions
+  of Octave, some lines and markers will appear 4/3 larger.
+
+- The meta.class property "SuperClassList" has been renamed
+  "Superclasslist" for Matlab compatibility.  The original name will
+  exist as an alias until Octave version 8.1.
+
+- Inline functions created by the function `inline` are now of type
+  "inline" when interrogated with the `class` function.  In previous
+  versions of Octave, the class returned was "function_handle".  This
+  change is Matlab compatible.  Inline functions are deprecated in
+  both Matlab and Octave and support may eventually be removed.
+  Anonymous functions can be used to replace all instances of inline
+  functions.
+
+- The function `javaaddpath` now prepends new directories to the
+  existing dynamic classpath by default.  To append them instead, use
+  the new `"-end"` argument.  Multiple directories may now be specified
+  in a cell array of strings.
+
+- An undocumented function `gui_mainfcn` has been added, for compatibility
+  with figures created with Matlab's GUIDE.
+
+- Several validator functions of type `mustBe*` have been added.  See
+  the list of new functions below.
+
+### Alphabetical list of new functions added in Octave 6
+
+* `auto_repeat_debug_command`
+* `commandhistory`
+* `commandwindow`
+* `filebrowser`
+* `is_same_file`
+* `lightangle`
+* `mustBeFinite`
+* `mustBeGreaterThan`
+* `mustBeGreaterThanOrEqual`
+* `mustBeInteger`
+* `mustBeLessThan`
+* `mustBeLessThanOrEqual`
+* `mustBeMember`
+* `mustBeNegative`
+* `mustBeNonempty`
+* `mustBeNonNan`
+* `mustBeNonnegative`
+* `mustBeNonpositive`
+* `mustBeNonsparse`
+* `mustBeNonzero`
+* `mustBeNumeric`
+* `mustBeNumericOrLogical`
+* `mustBePositive`
+* `mustBeReal`
+* `namedargs2cell`
+* `newline`
+* `ode23s`
+* `ostreamtube`
+* `rescale`
+* `rotx`
+* `roty`
+* `rotz`
+* `stream2`
+* `stream3`
+* `streamline`
+* `streamtube`
+* `uisetfont`
+* `verLessThan`
+* `web`
+* `weboptions`
+* `webread`
+* `webwrite`
+* `workspace`
+
+
+### Deprecated functions and properties
+
+The following functions and properties have been deprecated in Octave 6
+and will be removed from Octave 8 (or whatever version is the second
+major release after 6):
+
+- Functions
+
+  Function               | Replacement
+  -----------------------|------------------
+  `runtests`             | `oruntests`
+
+- Properties
+
+  Object           | Property      | Value
+  -----------------|---------------|------------
+                   |               |
+
+- The environment variable used by `mkoctfile` for linker flags is now
+  `LDFLAGS` rather than `LFLAGS`.  `LFLAGS` is deprecated, and a warning
+  is emitted if it is used, but it will continue to work.
+
+
+### Removed functions and properties
+
+The following functions and properties were deprecated in Octave 4.4
+and have been removed from Octave 6.
+
+- Functions
+
+  Function             | Replacement
+  ---------------------|------------------
+  `chop`               | `sprintf` for visual results
+  `desktop`            | `isguirunning`
+  `tmpnam`             | `tempname`
+  `toascii`            | `double`
+  `java2mat`           | `__java2mat__`
+
+- Properties
+
+  Object               | Property                  | Value
+  ---------------------|---------------------------|-----------------------
+  `annotation`         | `edgecolor ("rectangle")` |
+  `axes`               | `drawmode`                |
+  `figure`             | `doublebuffer`            |
+                       | `mincolormap`             |
+                       | `wvisual`                 |
+                       | `wvisualmode`             |
+                       | `xdisplay`                |
+                       | `xvisual`                 |
+                       | `xvisualmode`             |
+  `line`               | `interpreter`             |
+  `patch`              | `interpreter`             |
+  `surface`            | `interpreter`             |
+  `text`               | `fontweight`              | `"demi"` and `"light"`
+  `uibuttongroup`      | `fontweight`              | `"demi"` and `"light"`
+  `uicontrol`          | `fontweight`              | `"demi"` and `"light"`
+  `uipanel`            | `fontweight`              | `"demi"` and `"light"`
+  `uitable`            | `fontweight`              | `"demi"` and `"light"`
+
+
+### Old release news
+
+- [Octave 5.x](etc/NEWS.5.md)
+- [Octave 4.x](etc/NEWS.4)
+- [Octave 3.x](etc/NEWS.3)
+- [Octave 2.x](etc/NEWS.2)
+- [Octave 1.x](etc/NEWS.1)
--- a/etc/NEWS.7	Wed Dec 08 09:49:04 2021 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,409 +0,0 @@
-Summary of important user-visible changes for version 7 (yyyy-mm-dd):
-----------------------------------------------------------------------
-
-### General improvements
-
-- Many functions in Octave can be called in a command form---no
-parentheses for invocation and no return argument assignment---or in a
-functional form---parentheses and '=' for assignment of return values.
-
-    **Command Form Example**
-
-    `mkdir new_directory`
-
-    **Function Form Example**
-
-    `status = mkdir ("new_directory")`
-
-    Octave now handles errors that occur in a consistent manner.  If
-    called in command form and there is a failure, an error is thrown
-    and a message printed.  If called in functional form, no error or
-    message is printed and the failure is communicated to the programmer
-    via the output status variable.
-
-    The following list of functions have been modified.
-
-    * `copyfile`
-    * `fcntl`
-    * `fileattrib`
-    * `kill`
-    * `link`
-    * `mkfifo`
-    * `movefile`
-    * `rename`
-    * `rmdir`
-    * `symlink`
-    * `unlink`
-
-- Calling a user-defined function with too many inputs or outputs is now
-an error.  The interpreter makes this check automatically.  If a
-function uses varargin then the check is skipped for function inputs,
-and if a function uses varargout then the check is skipped for function
-outputs.  Input validation for functions typically begins with checking
-that the number of inputs and outputs match expectations.  Existing code
-can be simplified by removing these checks which are now done by the
-interpreter.  Typically, code blocks like the following can simply be
-deleted.
-
-        ## Checking number of inputs
-        if (nargin > 2)
-          print_usage ();
-        endif
-
-        ## Checking number of outputs
-        if (nargout > 1)
-          print_usage ();
-        endif
-
-- Binary and hexadecimal constants like `0b101` and `0xDEADBEEF` now
-create integers (unsigned by default) with sizes determined from the
-number of digits present.  For example, `0xff` creates a `uint8` value
-and `0xDEADBEEF` creates a `uint64` value.  You may also use a suffix of
-the form `u8`, `u16`, `u32`, `u64`, `s8`, `s16`, `s32`, or `s64` to
-explicitly specify the data type to use (`u` or `s` to indicate unsigned
-or signed and the number to indicate the integer size).
-
-    Binary constants are limited to 64 binary digits and hexadecimal
-constants are limited to 16 hexadecimal digits with no automatic
-rounding or conversion to floating point values.  Note that this may
-cause problems in existing code.  For example, an expression like
-`[0x1; 0x100; 0x10000]` will be uint8 (because of the rules of
-concatenating integers of different sizes) with the larger values
-truncated (because of the saturation semantics of integer values).  To
-avoid these kinds of problems either: 1) declare the first integer to be
-of the desired size such as `[0x1u32; 0x100; 0x10000]`, or 2) pad
-constants in array expressions with leading zeros so that they use the
-same number of digits for each value such as
-`[0x00_00_01; 0x00_01_00; 0x01_00_00]`.
-
-- The increment and decrement operators `++` and `--` must "hug" their
-corresponding variables.  In previous versions of Octave, whitespaces
-between these operators and the variable they affect were allowed.  That
-is no longer the case.
-
-- The `mldivide` function (i.e., the `\` operator) now uses an LU
-decomposition to solve nearly singular full square matrices.  This is
-Matlab-compatible and yields results which more nearly minimize `norm
-(A*x - b)`.  Previously, Octave computed a minimum-norm solution.
-
-- The `factor` function has been overhauled for speed.  For large
-inputs > 1e14, it can be up to 10,000 times faster.
-
-- The `isprime` function uses a new primality testing algorithm
-that is up to 50,000 times faster for inputs > 1e14.
-
-- The `betainc` function now calculates an exact output for the
-important special cases where a or b are 1.
-
-- The `whos` function now displays an additional attribute 's' when
-the variable is a sparse type.
-
-- As part of GSoC 2020, Abdallah K. Elshamy implemented the
-`jsondecode` and `jsonencode` functions to read and write JSON data.
-
-- As part of GSoC 2021, Abdallah K. Elshamy implemented the
-`jupyter_notebook` classdef class.  This class supports running and
-filling Jupyter Notebooks using the Octave language kernel from Octave
-itself.  Making the evaluation of long-running Jupyter Notebooks on a
-computing server without permanent browser connection possible.
-
-- By default, the history file is now located at $DATA/octave/history,
-where $DATA is a platform dependent location for (roaming) user data
-files (e.g., ${XDG_DATA_HOME} or, if that is not set, ~/.local/share on
-Unix-like operating systems or %APPDATA% on Windows).
-
-- For Octave on Windows OS, the minimum required version of the Windows
-API is now 6.1 (Windows 7 or newer).
-
-- The non-re-entrant version of the QHull library "libqhull" was
-deprecated upstream.  Octave now (optionally) requires the re-entrant
-version of that library "libqhull_r" instead.
-
-- Octave's libraries are now built using symbol visibility by default.
-That means that less symbols are exported from these libraries.
-Configure with `--disable-lib-visibility-flags` to export all symbols
-(as in previous versions).
-
-- Octave's build system no longer appends "++" to the end of the
-"magick++" library name (set with the `--with-magick=` configure flag).
-The real name of the "magick++" library (including any potentially
-trailing "++") needs to be set in that option now.
-
-- The `pkg update` command now accepts options that are passed to `pkg
-install` for each updated package.  Specifying @option{-local} or
-@option{-global} will restrict update checks to local or global
-installed packages, respectively.
-
-### Graphical User Interface
-
-- The graphical user interface is now available in Hungarian and
-Turkish.
-
-- In debug mode, symbol values are now shown in tooltips when hovering
-variables in the editor panel.
-
-- The "Disable global shortcuts when Command Window has focus" GUI
-preference under the Shortcuts tab is now disabled by default.  This
-option disables keyboard shortcuts to avoid interference with readline
-key strokes in the Command Window.  Unlike versions prior to Octave 7,
-this preference now also affects the Ctrl-C/V shortcuts for copy/paste.
-
-### Graphics backend
-
-- Support for Qt4 for both graphics and the GUI has been removed.
-
-- If a working LaTeX tool chain is found on the path, including `latex`,
-`dvipng`, and `dvisvgm` binaries, then text strings can now be rendered
-properly when using the `"latex"` value for the text objects'
-`"interpreter"` property and axes objects' `"ticklabelinterpreter"`.
-Type `doc "latex interpreter"` for further info.
-
-- The `"Marker"` property for plot objects now accepts `|` which draws
-a vertical line or `_` which draws a horizontal line.
-
-- The `FMT` format argument for plot commands now accepts long forms for
-color names which may be more understandable than the existing
-one-letter codes.  For example, the RGB value `[0 0 0]` can now be
-specified by `"black"` in addition to `"k"`.
-
-- The color graphics properties, for example `"EdgeColor"` or
-`"FaceColor"`, now accept HTML specifications.  An HTML specification is
-a string that begins with the character '#' and is followed by either 3
-or 6 hexadecimal digits.  For example, magenta which is 100% red and
-blue values can specified by `"#FF00FF"` or `"#F0F"`.
-
-- The additional property `"contextmenu"` has been added to all graphics
-objects.  It is equivalent to the previously used `"uicontextmenu"`
-property which is hidden now.
-
-- `uicontrol` objects now fully implement the `"Off"` and `"Inactive"`
-values of the `"Enable"` property.  When the value is `"Off"`, no
-interaction with the object occurs and the `uicontrol` changes color
-(typically to gray) to indicate it is disabled.  When the value is
-`"Inactive"`, the object appears normally (no change in color), but it
-is not possible to change the value of the object (such as modifying
-text in an `Edit` box or clicking on a `RadioButton`).
-
-- The `"ListBoxTop"` property for `uicontrol` objects has been
-implemented for `set` commands.
-
-- The `Title` property for print formats such as PDF or SVG is now set
-to the title displayed on the figure window which contains the plot.
-
-- Additional properties have been added to the `axes` graphics object:
-    * `"alphamap"` (not yet implemented)
-    * `"alphascale"` (not yet implemented)
-    * `"colorscale"` (not yet implemented)
-    * `"fontsizemode"` (not yet implemented)
-    * `"innerposition"` (equivalent to `"position"`)
-    * `"interactions"` (not yet implemented)
-    * `"layout"` (not yet implemented)
-    * `"legend"` (not yet implemented)
-    * `"nextseriesindex"` (read-only, used by `scatter`
-      graphics objects)
-    * `"positionconstraint"` (replacement for `"activepositionproperty"`
-      which is now a hidden property.  No plans for removal.)
-    * `"toolbar"` (not yet implemented)
-    * `"xaxis"` (not yet implemented)
-    * `"yaxis"` (not yet implemented)
-    * `"zaxis"` (not yet implemented)
-
-### Matlab compatibility
-
-- The function `griddata` now implements the `"v4"` Biharmonic Spline
-Interpolation method.  In adddition, the function now accepts 3-D inputs
-by passing the data to `griddata3`.
-
-- Coordinate transformation functions `cart2sph`, `sph2cart`,
-`cart2pol`, and `pol2cart` now accept either row or column vectors for
-coordinate inputs.  A single coordinate matrix with one variable per
-column can still be used as function input, but a single output variable
-will now contain just the first output coordinate, and will no longer
-return the full output coordinate matrix.  Output size matches the size
-of input vectors, or in the case of an input matrix will be column
-vectors with rows corresponding to the input coordinate matrix.
-
-- The function `dec2bin` and `dec2hex` now support negative numbers.
-
-- The function `factor` now supports uint64 inputs larger than
-`flintmax`.
-
-- The function `primes` now supports char inputs.
-
-- The functions `quantile` and `prctile` now permit operating on
-dimensions greater than `ndims (x)`.
-
-- The function `iqr` now uses Matlab compatible interpolation for
-quantile values.  The dimension input now allows a vector, "all", and
-dimensions greater than `ndims (x)`.  The function also handles
-`Inf` and `NaN` input values in a Matlab-compatible manner.
-
-- The function `importdata` now produces more compatible results when
-the file contains a 2-D text matrix.
-
-- The file functions `copyfile`, `mkdir`, `movefile`, `rmdir` now return
-a logical value (true/false) rather than a numeric value (1/0).
-
-- `uimenu` now accepts property `"Text"` which is identical to
-`"Label"`.  Matlab recommends using `"Text"` in new code, although there
-is no announced date for deprecating `"Label"`.
-
-- The functions `scatter` and `scatter3` now return a handle to a
-scatter graphics object.  For compatibility, they return an `hggroup` of
-patch graphics objects when the `"gnuplot"` graphics toolkit is used.  In
-previous versions of Octave, these functions returned an `hggroup` of
-patch graphics objects for all graphics toolkits.
-
-- The functions `bar` and `barh` now handle stacked negative bar values
-in a Matlab-compatible manner.  Negative values now stack below the zero
-axis independently of a positive value bars in the same stack.
-Previously the negative bars could overlap positive bars depending on
-drawing order.
-
-- The functions `bar` and `barh` now use colors from the `"ColorOrder"`
-axes property rather than the `"Colormap"` figure property unless one
-of the histogram options (@qcode{"hist"}, @qcode{"histc"} was specified.
-
-- The function `saveas` now defaults to saving in Octave figure format
-(.ofig) rather than PDF (.pdf).
-
-- A new warning ID (`"Octave:unimplemented-matlab-functionality"`) has
-been added which prints a warning when Octave's parser recognizes valid
-Matlab code, but for which Octave does not yet implement the
-functionality.  By default, this warning is enabled.
-
-- When Octave is started with the `--traditional` option for maximum
-compatibility the `print_struct_array_contents` internal variable is set
-to true.
-
-- The function `repelem` now produces a row vector output when the input is
-a scalar.
-
-- The functions `var` and `std` now accept a weight vector as input and
-compute the weigthed variance.  Dimension input now allows a vector and
-the keyword "all".
-
-### Alphabetical list of new functions added in Octave 7
-
-* `cospi`
-* `getpixelposition`
-* `endsWith`
-* `fill3`
-* `jsondecode`
-* `jsonencode`
-* `jupyter_notebook`
-* `listfonts`
-* `matlab.net.base64decode`
-* `matlab.net.base64encode`
-* `memory`
-* `ordqz`
-* `rng`
-* `sinpi`
-* `startsWith`
-* `streamribbon`
-* `turbo`
-* `uniquetol`
-* `xtickangle`
-* `ytickangle`
-* `ztickangle`
-
-### Deprecated functions, properties, and operators
-
-The following functions and properties have been deprecated in Octave 7
-and will be removed from Octave 9 (or whatever version is the second
-major release after 7):
-
-- Functions
-
-  Function                   | Replacement
-  -------------------------- |----------------------------
-  disable_diagonal_matrix    | optimize_diagonal_matrix
-  disable_permutation_matrix | optimize_permutation_matrix
-  disable_range              | optimize_range
-
-- Properties
-
-  Object           | Property      | Value
-  -----------------|---------------|------------
-                   |               |
-- Operators
-
-  Operator | Replacement | Description
-  ---------|-------------|------------
-  **       | ^           | Matrix exponent
-  .**      | .^          | Element-by-element exponent
-  .+       | +           | Element-by-element exponent
-  .-       | -           | Element-by-element exponent
-
-- Interpreter
-
-    * The use of `'...'` for line continuations *inside* double-quoted
-    strings has been deprecated.  Use `'\'` for line continuations
-    inside strings instead.
-
-    * The use of `'\'` as a line continuation *outside* of double-quoted
-    strings has been deprecated.  Use `'...'` for line continuations
-    instead.
-
-    * Any trailing whitespace after a `'\'` line continuation has been
-    deprecated.  Delete unnecessary trailing whitespace.
-
-
-The following functions were deprecated in Octave 6 and will be removed
-from Octave 8 (or whatever version is the second major release after 6):
-
-- Functions
-
-  Function               | Replacement
-  -----------------------|------------------
-  `runtests`             | `oruntests`
-
-- The environment variable used by `mkoctfile` for linker flags is now
-  `LDFLAGS` rather than `LFLAGS`.  `LFLAGS` was deprecated in Octave 6,
-  and a warning is now emitted if it is used, but it will continue to
-  work.
-
-
-### Removed functions, properties, and features
-
-The following functions and properties were deprecated in Octave 5
-and have been removed from Octave 7.
-
-- Functions
-
-  Function                 | Replacement
-  -------------------------|------------------
-  `output_max_field_width` | `output_precision`
-  `is_keyword`             | `iskeyword`
-
-- Properties
-
-  Object           | Property      | Value
-  -----------------|---------------|------------
-  `text`           | `fontangle`   | `"oblique"`
-  `uibuttongroup`  | `fontangle`   | `"oblique"`
-  `uicontrol`      | `fontangle`   | `"oblique"`
-  `uipanel`        | `fontangle`   | `"oblique"`
-  `uitable`        | `fontangle`   | `"oblique"`
-
-- The prototype JIT compiler has been removed from Octave.  Since it was
-first added as part of a Google Summer of Code project in 2012, no one
-has ever seriously taken on further development of it and it still does
-nothing significant.  It is out of date with the default interpreter
-that walks the parse tree.  Even though we have fixed the configure
-script to disable it by default, people still ask questions about how to
-build it, but it doesn’t seem that they are doing that to work on it but
-because they think it will make Octave code run faster (it never did,
-except for some extremely simple bits of code as examples for
-demonstration purposes only).  The following functions related to the
-JIT compiler have also been removed: `debug_jit`, `jit_enable`,
-`jit_failcnt`, and `jit_startcnt`.
-
-### Old release news
-
-- [Octave 6.x](etc/NEWS.6)
-- [Octave 5.x](etc/NEWS.5)
-- [Octave 4.x](etc/NEWS.4)
-- [Octave 3.x](etc/NEWS.3)
-- [Octave 2.x](etc/NEWS.2)
-- [Octave 1.x](etc/NEWS.1)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/NEWS.7.md	Wed Dec 08 08:42:35 2021 +0100
@@ -0,0 +1,409 @@
+Summary of important user-visible changes for version 7 (yyyy-mm-dd):
+----------------------------------------------------------------------
+
+### General improvements
+
+- Many functions in Octave can be called in a command form---no
+parentheses for invocation and no return argument assignment---or in a
+functional form---parentheses and '=' for assignment of return values.
+
+    **Command Form Example**
+
+    `mkdir new_directory`
+
+    **Function Form Example**
+
+    `status = mkdir ("new_directory")`
+
+    Octave now handles errors that occur in a consistent manner.  If
+    called in command form and there is a failure, an error is thrown
+    and a message printed.  If called in functional form, no error or
+    message is printed and the failure is communicated to the programmer
+    via the output status variable.
+
+    The following list of functions have been modified.
+
+    * `copyfile`
+    * `fcntl`
+    * `fileattrib`
+    * `kill`
+    * `link`
+    * `mkfifo`
+    * `movefile`
+    * `rename`
+    * `rmdir`
+    * `symlink`
+    * `unlink`
+
+- Calling a user-defined function with too many inputs or outputs is now
+an error.  The interpreter makes this check automatically.  If a
+function uses varargin then the check is skipped for function inputs,
+and if a function uses varargout then the check is skipped for function
+outputs.  Input validation for functions typically begins with checking
+that the number of inputs and outputs match expectations.  Existing code
+can be simplified by removing these checks which are now done by the
+interpreter.  Typically, code blocks like the following can simply be
+deleted.
+
+        ## Checking number of inputs
+        if (nargin > 2)
+          print_usage ();
+        endif
+
+        ## Checking number of outputs
+        if (nargout > 1)
+          print_usage ();
+        endif
+
+- Binary and hexadecimal constants like `0b101` and `0xDEADBEEF` now
+create integers (unsigned by default) with sizes determined from the
+number of digits present.  For example, `0xff` creates a `uint8` value
+and `0xDEADBEEF` creates a `uint64` value.  You may also use a suffix of
+the form `u8`, `u16`, `u32`, `u64`, `s8`, `s16`, `s32`, or `s64` to
+explicitly specify the data type to use (`u` or `s` to indicate unsigned
+or signed and the number to indicate the integer size).
+
+    Binary constants are limited to 64 binary digits and hexadecimal
+constants are limited to 16 hexadecimal digits with no automatic
+rounding or conversion to floating point values.  Note that this may
+cause problems in existing code.  For example, an expression like
+`[0x1; 0x100; 0x10000]` will be uint8 (because of the rules of
+concatenating integers of different sizes) with the larger values
+truncated (because of the saturation semantics of integer values).  To
+avoid these kinds of problems either: 1) declare the first integer to be
+of the desired size such as `[0x1u32; 0x100; 0x10000]`, or 2) pad
+constants in array expressions with leading zeros so that they use the
+same number of digits for each value such as
+`[0x00_00_01; 0x00_01_00; 0x01_00_00]`.
+
+- The increment and decrement operators `++` and `--` must "hug" their
+corresponding variables.  In previous versions of Octave, whitespaces
+between these operators and the variable they affect were allowed.  That
+is no longer the case.
+
+- The `mldivide` function (i.e., the `\` operator) now uses an LU
+decomposition to solve nearly singular full square matrices.  This is
+Matlab-compatible and yields results which more nearly minimize `norm
+(A*x - b)`.  Previously, Octave computed a minimum-norm solution.
+
+- The `factor` function has been overhauled for speed.  For large
+inputs > 1e14, it can be up to 10,000 times faster.
+
+- The `isprime` function uses a new primality testing algorithm
+that is up to 50,000 times faster for inputs > 1e14.
+
+- The `betainc` function now calculates an exact output for the
+important special cases where a or b are 1.
+
+- The `whos` function now displays an additional attribute 's' when
+the variable is a sparse type.
+
+- As part of GSoC 2020, Abdallah K. Elshamy implemented the
+`jsondecode` and `jsonencode` functions to read and write JSON data.
+
+- As part of GSoC 2021, Abdallah K. Elshamy implemented the
+`jupyter_notebook` classdef class.  This class supports running and
+filling Jupyter Notebooks using the Octave language kernel from Octave
+itself.  Making the evaluation of long-running Jupyter Notebooks on a
+computing server without permanent browser connection possible.
+
+- By default, the history file is now located at $DATA/octave/history,
+where $DATA is a platform dependent location for (roaming) user data
+files (e.g., ${XDG_DATA_HOME} or, if that is not set, ~/.local/share on
+Unix-like operating systems or %APPDATA% on Windows).
+
+- For Octave on Windows OS, the minimum required version of the Windows
+API is now 6.1 (Windows 7 or newer).
+
+- The non-re-entrant version of the QHull library "libqhull" was
+deprecated upstream.  Octave now (optionally) requires the re-entrant
+version of that library "libqhull_r" instead.
+
+- Octave's libraries are now built using symbol visibility by default.
+That means that less symbols are exported from these libraries.
+Configure with `--disable-lib-visibility-flags` to export all symbols
+(as in previous versions).
+
+- Octave's build system no longer appends "++" to the end of the
+"magick++" library name (set with the `--with-magick=` configure flag).
+The real name of the "magick++" library (including any potentially
+trailing "++") needs to be set in that option now.
+
+- The `pkg update` command now accepts options that are passed to `pkg
+install` for each updated package.  Specifying @option{-local} or
+@option{-global} will restrict update checks to local or global
+installed packages, respectively.
+
+### Graphical User Interface
+
+- The graphical user interface is now available in Hungarian and
+Turkish.
+
+- In debug mode, symbol values are now shown in tooltips when hovering
+variables in the editor panel.
+
+- The "Disable global shortcuts when Command Window has focus" GUI
+preference under the Shortcuts tab is now disabled by default.  This
+option disables keyboard shortcuts to avoid interference with readline
+key strokes in the Command Window.  Unlike versions prior to Octave 7,
+this preference now also affects the Ctrl-C/V shortcuts for copy/paste.
+
+### Graphics backend
+
+- Support for Qt4 for both graphics and the GUI has been removed.
+
+- If a working LaTeX tool chain is found on the path, including `latex`,
+`dvipng`, and `dvisvgm` binaries, then text strings can now be rendered
+properly when using the `"latex"` value for the text objects'
+`"interpreter"` property and axes objects' `"ticklabelinterpreter"`.
+Type `doc "latex interpreter"` for further info.
+
+- The `"Marker"` property for plot objects now accepts `|` which draws
+a vertical line or `_` which draws a horizontal line.
+
+- The `FMT` format argument for plot commands now accepts long forms for
+color names which may be more understandable than the existing
+one-letter codes.  For example, the RGB value `[0 0 0]` can now be
+specified by `"black"` in addition to `"k"`.
+
+- The color graphics properties, for example `"EdgeColor"` or
+`"FaceColor"`, now accept HTML specifications.  An HTML specification is
+a string that begins with the character '#' and is followed by either 3
+or 6 hexadecimal digits.  For example, magenta which is 100% red and
+blue values can specified by `"#FF00FF"` or `"#F0F"`.
+
+- The additional property `"contextmenu"` has been added to all graphics
+objects.  It is equivalent to the previously used `"uicontextmenu"`
+property which is hidden now.
+
+- `uicontrol` objects now fully implement the `"Off"` and `"Inactive"`
+values of the `"Enable"` property.  When the value is `"Off"`, no
+interaction with the object occurs and the `uicontrol` changes color
+(typically to gray) to indicate it is disabled.  When the value is
+`"Inactive"`, the object appears normally (no change in color), but it
+is not possible to change the value of the object (such as modifying
+text in an `Edit` box or clicking on a `RadioButton`).
+
+- The `"ListBoxTop"` property for `uicontrol` objects has been
+implemented for `set` commands.
+
+- The `Title` property for print formats such as PDF or SVG is now set
+to the title displayed on the figure window which contains the plot.
+
+- Additional properties have been added to the `axes` graphics object:
+    * `"alphamap"` (not yet implemented)
+    * `"alphascale"` (not yet implemented)
+    * `"colorscale"` (not yet implemented)
+    * `"fontsizemode"` (not yet implemented)
+    * `"innerposition"` (equivalent to `"position"`)
+    * `"interactions"` (not yet implemented)
+    * `"layout"` (not yet implemented)
+    * `"legend"` (not yet implemented)
+    * `"nextseriesindex"` (read-only, used by `scatter`
+      graphics objects)
+    * `"positionconstraint"` (replacement for `"activepositionproperty"`
+      which is now a hidden property.  No plans for removal.)
+    * `"toolbar"` (not yet implemented)
+    * `"xaxis"` (not yet implemented)
+    * `"yaxis"` (not yet implemented)
+    * `"zaxis"` (not yet implemented)
+
+### Matlab compatibility
+
+- The function `griddata` now implements the `"v4"` Biharmonic Spline
+Interpolation method.  In adddition, the function now accepts 3-D inputs
+by passing the data to `griddata3`.
+
+- Coordinate transformation functions `cart2sph`, `sph2cart`,
+`cart2pol`, and `pol2cart` now accept either row or column vectors for
+coordinate inputs.  A single coordinate matrix with one variable per
+column can still be used as function input, but a single output variable
+will now contain just the first output coordinate, and will no longer
+return the full output coordinate matrix.  Output size matches the size
+of input vectors, or in the case of an input matrix will be column
+vectors with rows corresponding to the input coordinate matrix.
+
+- The function `dec2bin` and `dec2hex` now support negative numbers.
+
+- The function `factor` now supports uint64 inputs larger than
+`flintmax`.
+
+- The function `primes` now supports char inputs.
+
+- The functions `quantile` and `prctile` now permit operating on
+dimensions greater than `ndims (x)`.
+
+- The function `iqr` now uses Matlab compatible interpolation for
+quantile values.  The dimension input now allows a vector, "all", and
+dimensions greater than `ndims (x)`.  The function also handles
+`Inf` and `NaN` input values in a Matlab-compatible manner.
+
+- The function `importdata` now produces more compatible results when
+the file contains a 2-D text matrix.
+
+- The file functions `copyfile`, `mkdir`, `movefile`, `rmdir` now return
+a logical value (true/false) rather than a numeric value (1/0).
+
+- `uimenu` now accepts property `"Text"` which is identical to
+`"Label"`.  Matlab recommends using `"Text"` in new code, although there
+is no announced date for deprecating `"Label"`.
+
+- The functions `scatter` and `scatter3` now return a handle to a
+scatter graphics object.  For compatibility, they return an `hggroup` of
+patch graphics objects when the `"gnuplot"` graphics toolkit is used.  In
+previous versions of Octave, these functions returned an `hggroup` of
+patch graphics objects for all graphics toolkits.
+
+- The functions `bar` and `barh` now handle stacked negative bar values
+in a Matlab-compatible manner.  Negative values now stack below the zero
+axis independently of a positive value bars in the same stack.
+Previously the negative bars could overlap positive bars depending on
+drawing order.
+
+- The functions `bar` and `barh` now use colors from the `"ColorOrder"`
+axes property rather than the `"Colormap"` figure property unless one
+of the histogram options (@qcode{"hist"}, @qcode{"histc"} was specified.
+
+- The function `saveas` now defaults to saving in Octave figure format
+(.ofig) rather than PDF (.pdf).
+
+- A new warning ID (`"Octave:unimplemented-matlab-functionality"`) has
+been added which prints a warning when Octave's parser recognizes valid
+Matlab code, but for which Octave does not yet implement the
+functionality.  By default, this warning is enabled.
+
+- When Octave is started with the `--traditional` option for maximum
+compatibility the `print_struct_array_contents` internal variable is set
+to true.
+
+- The function `repelem` now produces a row vector output when the input is
+a scalar.
+
+- The functions `var` and `std` now accept a weight vector as input and
+compute the weigthed variance.  Dimension input now allows a vector and
+the keyword "all".
+
+### Alphabetical list of new functions added in Octave 7
+
+* `cospi`
+* `getpixelposition`
+* `endsWith`
+* `fill3`
+* `jsondecode`
+* `jsonencode`
+* `jupyter_notebook`
+* `listfonts`
+* `matlab.net.base64decode`
+* `matlab.net.base64encode`
+* `memory`
+* `ordqz`
+* `rng`
+* `sinpi`
+* `startsWith`
+* `streamribbon`
+* `turbo`
+* `uniquetol`
+* `xtickangle`
+* `ytickangle`
+* `ztickangle`
+
+### Deprecated functions, properties, and operators
+
+The following functions and properties have been deprecated in Octave 7
+and will be removed from Octave 9 (or whatever version is the second
+major release after 7):
+
+- Functions
+
+  Function                   | Replacement
+  -------------------------- |----------------------------
+  disable_diagonal_matrix    | optimize_diagonal_matrix
+  disable_permutation_matrix | optimize_permutation_matrix
+  disable_range              | optimize_range
+
+- Properties
+
+  Object           | Property      | Value
+  -----------------|---------------|------------
+                   |               |
+- Operators
+
+  Operator | Replacement | Description
+  ---------|-------------|------------
+  **       | ^           | Matrix exponent
+  .**      | .^          | Element-by-element exponent
+  .+       | +           | Element-by-element exponent
+  .-       | -           | Element-by-element exponent
+
+- Interpreter
+
+    * The use of `'...'` for line continuations *inside* double-quoted
+    strings has been deprecated.  Use `'\'` for line continuations
+    inside strings instead.
+
+    * The use of `'\'` as a line continuation *outside* of double-quoted
+    strings has been deprecated.  Use `'...'` for line continuations
+    instead.
+
+    * Any trailing whitespace after a `'\'` line continuation has been
+    deprecated.  Delete unnecessary trailing whitespace.
+
+
+The following functions were deprecated in Octave 6 and will be removed
+from Octave 8 (or whatever version is the second major release after 6):
+
+- Functions
+
+  Function               | Replacement
+  -----------------------|------------------
+  `runtests`             | `oruntests`
+
+- The environment variable used by `mkoctfile` for linker flags is now
+  `LDFLAGS` rather than `LFLAGS`.  `LFLAGS` was deprecated in Octave 6,
+  and a warning is now emitted if it is used, but it will continue to
+  work.
+
+
+### Removed functions, properties, and features
+
+The following functions and properties were deprecated in Octave 5
+and have been removed from Octave 7.
+
+- Functions
+
+  Function                 | Replacement
+  -------------------------|------------------
+  `output_max_field_width` | `output_precision`
+  `is_keyword`             | `iskeyword`
+
+- Properties
+
+  Object           | Property      | Value
+  -----------------|---------------|------------
+  `text`           | `fontangle`   | `"oblique"`
+  `uibuttongroup`  | `fontangle`   | `"oblique"`
+  `uicontrol`      | `fontangle`   | `"oblique"`
+  `uipanel`        | `fontangle`   | `"oblique"`
+  `uitable`        | `fontangle`   | `"oblique"`
+
+- The prototype JIT compiler has been removed from Octave.  Since it was
+first added as part of a Google Summer of Code project in 2012, no one
+has ever seriously taken on further development of it and it still does
+nothing significant.  It is out of date with the default interpreter
+that walks the parse tree.  Even though we have fixed the configure
+script to disable it by default, people still ask questions about how to
+build it, but it doesn’t seem that they are doing that to work on it but
+because they think it will make Octave code run faster (it never did,
+except for some extremely simple bits of code as examples for
+demonstration purposes only).  The following functions related to the
+JIT compiler have also been removed: `debug_jit`, `jit_enable`,
+`jit_failcnt`, and `jit_startcnt`.
+
+### Old release news
+
+- [Octave 6.x](etc/NEWS.6.md)
+- [Octave 5.x](etc/NEWS.5.md)
+- [Octave 4.x](etc/NEWS.4)
+- [Octave 3.x](etc/NEWS.3)
+- [Octave 2.x](etc/NEWS.2)
+- [Octave 1.x](etc/NEWS.1)
--- a/etc/module.mk	Wed Dec 08 09:49:04 2021 +0100
+++ b/etc/module.mk	Wed Dec 08 08:42:35 2021 +0100
@@ -9,9 +9,9 @@
   %reldir%/NEWS.2 \
   %reldir%/NEWS.3 \
   %reldir%/NEWS.4 \
-  %reldir%/NEWS.5 \
-  %reldir%/NEWS.6 \
-  %reldir%/NEWS.7 \
+  %reldir%/NEWS.5.md \
+  %reldir%/NEWS.6.md \
+  %reldir%/NEWS.7.md \
   %reldir%/PROJECTS \
   %reldir%/gdbinit