Octave Version 6.3.0 has been released and is now available for download. An official Windows binary installer is also available. For macOS see the installation instructions in the wiki.

This version is a bug fixing release:

Important notice

  • This bug fix release breaks ABI compatibility 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).
  • 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).
  • 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).
  • Return proper number of stack frames for dbstack (N) call (bug #60531).
  • Avoid ambiguous match of overloaded function (bug #60531).
  • 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).
  • 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).
  • 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).
  • 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.

Build system / Tests

  • build: Check for stropts.h (bug #60163).
  • build: Make relocation of dependencies with Octave optional (bug #60413).
  • build: Set necessary flags to allow execution on Windows Vista (bug #60746).
  • 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.
  • Declare base_parser destructor virtual.
  • Move top-level REPL from interpreter to evaluator.
  • Fix compilation error with iconv_t on Solaris (bug #60162).
  • 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).
  • Fix error if test suite is run before Octave is installed (bug #60554).
  • 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.
  • rgb2ind.m: Suppress output in test.
  • lscov.m: Relax BIST tolerance to pass with OpenBLAS (bug #60552).

Documentation

  • 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).
  • 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.