head 1.5; access; symbols pkgsrc-2024Q1:1.5.0.12 pkgsrc-2024Q1-base:1.5 pkgsrc-2023Q4:1.5.0.10 pkgsrc-2023Q4-base:1.5 pkgsrc-2023Q3:1.5.0.8 pkgsrc-2023Q3-base:1.5 pkgsrc-2023Q2:1.5.0.6 pkgsrc-2023Q2-base:1.5 pkgsrc-2023Q1:1.5.0.4 pkgsrc-2023Q1-base:1.5 pkgsrc-2022Q4:1.5.0.2 pkgsrc-2022Q4-base:1.5 pkgsrc-2022Q3:1.4.0.12 pkgsrc-2022Q3-base:1.4 pkgsrc-2022Q2:1.4.0.10 pkgsrc-2022Q2-base:1.4 pkgsrc-2022Q1:1.4.0.8 pkgsrc-2022Q1-base:1.4 pkgsrc-2021Q4:1.4.0.6 pkgsrc-2021Q4-base:1.4 pkgsrc-2021Q3:1.4.0.4 pkgsrc-2021Q3-base:1.4 pkgsrc-2021Q2:1.4.0.2 pkgsrc-2021Q2-base:1.4 pkgsrc-2021Q1:1.3.0.38 pkgsrc-2021Q1-base:1.3 pkgsrc-2020Q4:1.3.0.36 pkgsrc-2020Q4-base:1.3 pkgsrc-2020Q3:1.3.0.34 pkgsrc-2020Q3-base:1.3 pkgsrc-2020Q2:1.3.0.30 pkgsrc-2020Q2-base:1.3 pkgsrc-2020Q1:1.3.0.10 pkgsrc-2020Q1-base:1.3 pkgsrc-2019Q4:1.3.0.32 pkgsrc-2019Q4-base:1.3 pkgsrc-2019Q3:1.3.0.28 pkgsrc-2019Q3-base:1.3 pkgsrc-2019Q2:1.3.0.26 pkgsrc-2019Q2-base:1.3 pkgsrc-2019Q1:1.3.0.24 pkgsrc-2019Q1-base:1.3 pkgsrc-2018Q4:1.3.0.22 pkgsrc-2018Q4-base:1.3 pkgsrc-2018Q3:1.3.0.20 pkgsrc-2018Q3-base:1.3 pkgsrc-2018Q2:1.3.0.18 pkgsrc-2018Q2-base:1.3 pkgsrc-2018Q1:1.3.0.16 pkgsrc-2018Q1-base:1.3 pkgsrc-2017Q4:1.3.0.14 pkgsrc-2017Q4-base:1.3 pkgsrc-2017Q3:1.3.0.12 pkgsrc-2017Q3-base:1.3 pkgsrc-2017Q2:1.3.0.8 pkgsrc-2017Q2-base:1.3 pkgsrc-2017Q1:1.3.0.6 pkgsrc-2017Q1-base:1.3 pkgsrc-2016Q4:1.3.0.4 pkgsrc-2016Q4-base:1.3 pkgsrc-2016Q3:1.3.0.2 pkgsrc-2016Q3-base:1.3 pkgsrc-2016Q2:1.2.0.4 pkgsrc-2016Q2-base:1.2 pkgsrc-2016Q1:1.2.0.2 pkgsrc-2016Q1-base:1.2 pkgsrc-2015Q4:1.1.0.16 pkgsrc-2015Q4-base:1.1 pkgsrc-2015Q3:1.1.0.14 pkgsrc-2015Q3-base:1.1 pkgsrc-2015Q2:1.1.0.12 pkgsrc-2015Q2-base:1.1 pkgsrc-2015Q1:1.1.0.10 pkgsrc-2015Q1-base:1.1 pkgsrc-2014Q4:1.1.0.8 pkgsrc-2014Q4-base:1.1 pkgsrc-2014Q3:1.1.0.6 pkgsrc-2014Q3-base:1.1 pkgsrc-2014Q2:1.1.0.4 pkgsrc-2014Q2-base:1.1 pkgsrc-2014Q1:1.1.0.2 pkgsrc-2014Q1-base:1.1; locks; strict; comment @ * @; 1.5 date 2022.10.24.18.02.19; author adam; state Exp; branches; next 1.4; commitid M0831PF29oyoXZYD; 1.4 date 2021.05.31.07.16.51; author thor; state Exp; branches; next 1.3; commitid 7MSxdKdaZKj5NgVC; 1.3 date 2016.08.06.13.03.35; author prlw1; state Exp; branches; next 1.2; commitid 2bKkwPzhM1mxgfhz; 1.2 date 2016.02.16.04.21.40; author dbj; state Exp; branches; next 1.1; commitid hnQrzL067GiWU5Vy; 1.1 date 2014.03.06.23.09.04; author jperkin; state Exp; branches; next ; commitid Brvqro4gVAb53Hrx; desc @@ 1.5 log @octave: updated to 7.2.0 Summary of bugs fixed for version 7.2.0 (2022-07-28): ---------------------------------------------------- For Improvements and fixes - Avoid out-of-bounds indexing when checking for broadcastable inplace operators - `hdl2struct.m`: Fix saving of `uibuttongroups` - Fix `ls` with glob patterns on Windows - `pkg.m`: Create directory before saving file - `nchoosek.m`: Fix freeze-up for certain integer inputs - `nchoosek.m`: Restore fast path code for floating point inputs - `betainc.m`: Use sophisticated technique for calculating exponents to avoid inaccuracies - `ls.m`: Fix handling of `\` on UNIX platforms - `findobj.m`: Fix input validation of graphics handles - `newplot.m`: Backed out changeset fdd58773ac02 - `__print_parse_opts__.m`: Initialize variables in all cases for print warnings - `__wglob__`: Correctly handle `.` and `..` in patterns on Windows - `datenum.m`: Correctly handle arrays with leading singleton dimensions - Stop incorrect error when `reset()` called on `uimenu` handle - Emit more informative error message on empty input when setting axis limits - `msgbox.m`: Allow "custom" `cdata` for icon - Fix memory leak with nested functions and anonymous functions - `__wglob__`: Retain trailing file separator on Windows - `pkg`: Avoid error when unlinking non-existent files - `mkoctfile.m`: Trim whitespace (newline) around system output. - `subplot.m`: Avoid error when mixing `rcn` and `"position"` calling form - `plot`: Deprecate using numbers to select line colors - Don't shut down interpreter immediately on `execute` - `isprime.m` and `__isprimelarge__.cc`: Minor performance tweaks. - `__wglob__`: Handle patterns with UNC paths on Windows - Change wording of error message when using a variable as function - `inputParser.m`: Adapt for interpreter changes regarding number of output arguments - Store token ID, not keyword ID when parsing keywords - `canonicalize_file_name`: Do not translate mapped network drive to UNC path - `inputParser`: Correctly handle cell default values for optional parameters - `factor.m`: Performance tweak to avoid division in certain cases. - Fix regression with `\color[rgb]` TeX pattern - `regexp`: Check pattern length before accessing it - `pkg.m`: Create `PREFIX` and `ARCHPREFIX` directories - `pkg`: Replace `OCTAVE_HOME` in `PREFIX` and `ARCHPREFIX` independently - `randmtzig.cc`: Add missing `#include ` - `pkg`: Fix formatting of `copyfile` message - `pkg`: Escape special characters in `OCTAVE_HOME` for `regexprep` GUI - Fix removing trailing spaces on closing a modified file - Replace use of deprecated `QDesktopWidget` in GUI. - Fix display in Variable Editor when `fixed_point_format` is on - Fix file length when saving shorter content in editor Build system / Tests - `addpref.m`: Recode test to work with multiple running instances of Octave. - Don't leak build directories in installed directories - Import `hash-buffer` modules from gnulib - Remove `.dirstamp` files from `test/` directory with `maintainer-clean` target. - Add tests for `__FILE__` and `__LINE__` Documentation - `datestr.m`: Fix minor typo. - `ls.m`: Improve wording in docstring - `dir.m`: Clarify wildcard behavior on Windows in docstring - `memory.m`: Redo documentation to be formatted correctly in Info output. - Document contracted `format` arguments - `humps.m`: Fix mismatch between TeX docstring and non-TeX docstring. - `warning_ids.m`: Add new warning ID `"Octave:deprecated-option"`. - `primes.m`: Move code examples before math theory. - `primes.m`: Mark variables in docstring with `@@var{}` macro. - Rewrite section on automatic type conversions - `subsasgn`: Correct example code @ text @$NetBSD: patch-libgnu_stdio.in.h,v 1.4 2021/05/31 07:16:51 thor Exp $ Do not re-define gets() on SunOS, incompatible prototype. --- libgnu/stdio.in.h.orig 2022-07-28 13:08:26.000000000 +0000 +++ libgnu/stdio.in.h @@@@ -934,10 +934,12 @@@@ _GL_WARN_ON_USE (getline, "getline is un /* It is very rare that the developer ever has full control of stdin, so any use of gets warrants an unconditional warning; besides, C11 removed it. */ +#ifndef __sun #undef gets #if HAVE_RAW_DECL_GETS && !defined __cplusplus _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); #endif +#endif #if @@GNULIB_MDA_GETW@@ /* On native Windows, map 'getw' to '_getw', so that -loldnames is not @ 1.4 log @octave: udpate to 6.2.0 This updates octave and also gets some more recommened dependencies in, namely qrupdate and Mesalib (for osmesa) and gl2ps as well as the qscintilla editor. The glpk option is on by default again. This version of octave comes rather close to a standard build, with optimzied BLAS and GUI fluff. We are still missing SuiteSparse and SUNDIALS solvers, see https://octave.org/doc/v6.2.0/External-Packages.html PortAudio should also be considered, and LLVM be watched if that experimental JIT settles in. Upstream changes since 5.x: 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"` @ text @d1 1 a1 1 $NetBSD: patch-libgnu_stdio.in.h,v 1.3 2016/08/06 13:03:35 prlw1 Exp $ d5 1 a5 1 --- libgnu/stdio.in.h.orig 2021-02-19 17:36:34.000000000 +0000 d7 1 a7 1 @@@@ -838,10 +838,12 @@@@ _GL_WARN_ON_USE (getline, "getline is un d18 2 a19 2 #if defined _WIN32 && !defined __CYGWIN__ # undef getw @ 1.3 log @Update octave to 4.0.3 XXX installs lib/charset.alias - is this a problem? Bugs Fixed in GNU Octave 4.0.3 * doc: clarify differences between atan and atan2 (bug #48178) * doc: delete mention of unsupported syntax for looping over structs (bug #48064) * ver.m: return empty struct for unknown package (bug #48235). * Update gnulib subrepo for texinfo formatting fixes (bug #48001) * Fix typos in Java conversion of 32 and 64 bit integers (bug #48107) * Create valid gnuplot commands even for single-entry colormaps (bug #48083). * orderfields.m: Remove trailing bracket in docstring (bug #48063). * Don't overly restrict options passed to Java jvm (bug #39063). * Write integers with correct byte order on big-endian systems (bug #47434) * doc: Document syntax for specifying color when using Tex interpreter (bug #47907). * Round quantized pixel values before writing uintN images (bug #47746) * Fix popen2 error on Windows when child writes to stderr (bug #43036) * it_IT.ts: Correct Italian translation of "col:" (bug #47857). * avoid crash in audiowrite argument processing (bug #47875) * make __magick_read__ a built-in function (bug #41699) * sortrows.m: Improve docstring (bug #47844). * doc: Fix typo in exec docstring. * Use correct URL for Online Documentation (bug #47835). * Fix autoscale affecting legend axes objects (bug #47765). * configure.ac: Remove AC_CHECK_FUNC for pipe now that gnulib::pipe used. * doc: fix on manual the syntax to empty elements from cell array. * octave.texi: Set document encoding to UTF-8. * Enable the pipe function on Windows (bug #47614) * avoid mulitple definitions of static function-scope vars (bug #47372) * Array-sym.cc: Delete obsolete file. * Initialize variable to stop unstable results for lgamma (bug #47524). * call openmp function at initialization (bug #47372) * macros.texi: Colorized links for PDF files with Texinfo 6.x. @ text @d1 1 a1 1 $NetBSD: patch-libgnu_stdio.in.h,v 1.2 2016/02/16 04:21:40 dbj Exp $ d5 1 a5 1 --- libgnu/stdio.in.h.orig 2016-07-01 18:43:45.000000000 +0000 d7 1 a7 1 @@@@ -722,10 +722,12 @@@@ _GL_WARN_ON_USE (getline, "getline is un d18 2 a19 2 #if @@GNULIB_OBSTACK_PRINTF@@ || @@GNULIB_OBSTACK_PRINTF_POSIX@@ struct obstack; @ 1.2 log @update to octave-4.0.0 Octave 4.0 is a major new release with many new features, including a graphical user interface, support for classdef object-oriented programming, better compatibility with Matlab, and many new and improved functions. A list of important user-visible changes is availble at http://octave.org/NEWS-4.0.html, by selecting the Release Notes item in the News menu of the GUI, or by typing news at the Octave command prompt. @ text @d1 1 a1 1 $NetBSD: patch-libgnu_stdio.in.h,v 1.1 2014/03/06 23:09:04 jperkin Exp $ d5 1 a5 1 --- libgnu/stdio.in.h.orig 2015-05-23 14:36:17.000000000 +0000 d13 1 a13 1 #if HAVE_RAW_DECL_GETS a17 1 d19 1 @ 1.1 log @Do not re-define gets() on SunOS, incompatible prototype. @ text @d1 1 a1 1 $NetBSD$ d5 1 a5 1 --- libgnu/stdio.in.h.orig 2013-02-21 20:21:19.000000000 +0000 d7 1 a7 1 @@@@ -704,10 +704,12 @@@@ _GL_WARN_ON_USE (getline, "getline is un @