Your message dated Tue, 22 Apr 2025 17:43:19 +0200
with message-id <aae5f0wc8wgeg...@laboissiere.net>
and subject line Re: Bug#1103896: octave: unlink raises an error on failure, 
but his is undocumented
has caused the Debian Bug report #1103896,
regarding octave: unlink raises an error on failure, but his is undocumented
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
1103896: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1103896
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: octave
Version: 9.4.0-1
Severity: normal

octave> unlink nonexistent_file
error: unlink: operation failed: No such file or directory

An old script of mine fails because of this.  Once upon a time Octave did not 
raise an error upno failure of unlink.  This should be documented

-- System Information:
Debian Release: trixie/sid
  APT prefers testing
  APT policy: (990, 'testing'), (101, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.12.11-amd64 (SMP w/24 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_WARN, TAINT_OOT_MODULE, 
TAINT_UNSIGNED_MODULE
Locale: LANG=C.UTF-8, LC_CTYPE=it_IT.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages octave depends on:
ii  libamd3                                1:7.10.1+dfsg-1
ii  libarpack2t64                          3.9.1-6
ii  libatlas3-base [liblapack.so.3]        3.10.3-14
ii  libblas3 [libblas.so.3]                3.12.1-2
ii  libbz2-1.0                             1.0.8-6
ii  libc6                                  2.41-7
ii  libccolamd3                            1:7.10.1+dfsg-1
ii  libcholmod5                            1:7.10.1+dfsg-1
ii  libcolamd3                             1:7.10.1+dfsg-1
ii  libcurl3t64-gnutls                     8.13.0-1
ii  libcxsparse4                           1:7.10.1+dfsg-1
ii  libfftw3-double3                       3.3.10-2+b1
ii  libfftw3-single3                       3.3.10-2+b1
ii  libfltk-gl1.3t64                       1.3.11-1
ii  libfltk1.3t64                          1.3.11-1
ii  libfontconfig1                         2.15.0-2.3
ii  libfreetype6                           2.13.3+dfsg-1
ii  libgcc-s1                              14.2.0-19
ii  libgfortran5                           14.2.0-19
ii  libgl1                                 1.7.0-1+b2
ii  libgl2ps1.4                            1.4.2+dfsg1-2
ii  libglpk40                              5.0-1+b2
ii  libglu1-mesa [libglu1]                 9.0.2-1.1+b3
ii  libgomp1                               14.2.0-19
ii  libgraphicsmagick++-q16-12t64          1.4+really1.3.45+hg17696-1
ii  libgraphicsmagick-q16-3t64             1.4+really1.3.45+hg17696-1
ii  libhdf5-310                            1.14.5+repack-3
ii  liblapack3 [liblapack.so.3]            3.12.1-2
ii  libopenblas0-pthread [liblapack.so.3]  0.3.29+ds-3
ii  libpcre2-8-0                           10.45-1
ii  libportaudio2                          19.6.0-1.2+b3
ii  libqhull-r8.0                          2020.2-6+b2
ii  libqrupdate1                           1.1.5-1
ii  libqscintilla2-qt6-15                  2.14.1+dfsg-1+b4
ii  libqt6core5compat6                     6.8.2-3+b1
ii  libqt6core6t64                         6.8.2+dfsg-5+b1
ii  libqt6gui6                             6.8.2+dfsg-5+b1
ii  libqt6help6                            6.8.2-4
ii  libqt6network6                         6.8.2+dfsg-5+b1
ii  libqt6opengl6                          6.8.2+dfsg-5+b1
ii  libqt6openglwidgets6                   6.8.2+dfsg-5+b1
ii  libqt6printsupport6                    6.8.2+dfsg-5+b1
ii  libqt6widgets6                         6.8.2+dfsg-5+b1
ii  libqt6xml6                             6.8.2+dfsg-5+b1
ii  libreadline8t64                        8.2-6
ii  libsndfile1                            1.2.2-2+b1
ii  libspqr4                               1:7.10.1+dfsg-1
ii  libstdc++6                             14.2.0-19
ii  libsuitesparseconfig7                  1:7.10.1+dfsg-1
ii  libumfpack6                            1:7.10.1+dfsg-1
ii  libx11-6                               2:1.8.12-1
ii  octave-common                          9.4.0-1
ii  texinfo                                7.1.1-1
ii  zlib1g                                 1:1.3.dfsg+really1.3.1-1+b1

Versions of packages octave recommends:
ii  default-jre-headless      2:1.21-76
ii  epstool                   3.09-4
ii  gnuplot-qt [gnuplot-x11]  6.0.2+dfsg1-1
ii  libopenblas0              0.3.29+ds-3
ii  octave-doc                9.4.0-1
ii  pstoedit                  4.02-1+b1

Versions of packages octave suggests:
pn  octave-dev  <none>

-- no debconf information

--- End Message ---
--- Begin Message ---
* Francesco Potortì <poto...@isti.cnr.it> [2025-04-22 17:14]:

Package: octave
Version: 9.4.0-1
Severity: normal

 octave> unlink nonexistent_file
 error: unlink: operation failed: No such file or directory

An old script of mine fails because of this. Once upon a time Octave did not raise an error upno failure of unlink. This should be documented

The behavior of unlink and many other functions has been changed in version 7.0 of Octave. This is well documented. Here is an excerpt of the file etc/NEWS.7.md:

[https://hg.octave.org/octave/file/tip/etc/NEWS.7.md]

==========================================================================

 ### 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`

==========================================================================

You must change your script like this:

    [ret, status] = unlink ("nonexistent_file");

I am hereby closing this bug report. Please, feel free to reopen it if you disagree with me.

Best,

Rafael Laboissière

--- End Message ---

Reply via email to