Add a New Comment (Rich Markup)
Comment Type & Canned Response: None None > Multiple Canned Responses Fixed in development Crash with no stack trace Already fixed in newer version Fixed in stable Bad description Bad description and crash Bad stack trace Obsolete version Duplicate and not fixed Duplicate and needs more info Duplicate and fixed Need info and old
( Jump to the original submission )
Closing as fixed, according to comment #11
I have re-tested the image package with the latest Octave 7.0.92 release candidate (under linux only, so far). And now there are ZERO failing BIST tests, when running "pkg test image" any more. I think this is because bug #61788 has been fixed in core Octave, now.
If you don't hear anything from me in the next weeks, this issue can be CLOSED as fixed.
With the current state of the latest Octave (stable) repository and the current state of the image-package repository, nearly all BIST tests of the image package now pass.
The only failing BIST that is left in the image-package is one single test in im2bw.m. This waits for a fix in core Octave, see bug #61788, regarding arrays of int types.
Re comment #6: The interpreter can't check if a function is called with too few input arguments. That's the responsibility of the function itself. It can (and does since Octave 7) check whether a function is called with more arguments than its prototype allows.
Oh, I see bug #61783 now. Sorry I missed it.
@Arun: Yes, the image package cannot even be installed, currently. This a known issue and is been worked on (in other bug reports). If you want to tests things out here, you can either use the Windows exe-installer, that comes with an pre-installed image package (this works because of some extra patches to mxe-octave). Or you just copy the relevant image package functions individually to a folder and then use Octave 7.0.90 to run them.
Some failing BIST tests (at least the one in colorangle.m) are due to the new compiler behavior, that automatically throws error messages in user-defined functions with too few or too many input arguments. And this automatic error for too many input arguments does not have an error-id any more.
I have filed a bug report for core Octave to ask if this could be changed or improved, to make life easier for packages: bug #61789.
The image package cannot even be installed for me. I get the following errors and warnings on "pkg install -forge image":
Namespace collision error with Octave core, which prevents the package from building:
In file included from strel.cc:27: In file included from /usr/local/include/octave-8.0.0/octave/../octave/parse.h:41: In file included from /usr/local/include/octave-8.0.0/octave/pt-misc.h:32: In file included from /usr/local/include/octave-8.0.0/octave/pt-decl.h:36: In file included from /usr/local/include/octave-8.0.0/octave/pt-cmd.h:35: In file included from /usr/local/include/octave-8.0.0/octave/pt-bp.h:35: In file included from /usr/local/include/octave-8.0.0/octave/interpreter.h:47: /usr/local/include/octave-8.0.0/octave/graphics.h:8214:21: error: redefinition of 'image' as different kind of symbol class OCTINTERP_API image : public base_graphics_object ^ ./strel.h:50:13: note: previous definition is here namespace image ^
Multiple deprecated warnings from the Octave API about Range and fortran_vec:
hough_line.cc:50:59: warning: 'Range' is deprecated [-Wdeprecated-declarations] const ColumnVector thetas = (DEF_THETA) ? ColumnVector (Range (-M_PI/2.0, M_PI/2.0, M_PI/180.0).matrix_value ()) ^ /usr/local/include/octave-8.0.0/octave/Range.h:427:3: note: 'Range' has been explicitly marked deprecated here OCTAVE_DEPRECATED (7, "use the 'octave::range<double>' class instead") ^ /usr/local/include/octave-8.0.0/octave/oct-conf-post-public.h:50:57: note: expanded from macro 'OCTAVE_DEPRECATED' # define OCTAVE_DEPRECATED(ver, msg) __attribute__ ((__deprecated__))
80 C++ warnings like these which can be fixed with "std::abs":
__custom_gaussian_smoothing__.cc:58:43: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value] const octave_idx_type rur = abs (k*(ct*sqrtv2 - st*sqrtv1)); // 'rur' means 'row-upper-right' ^ __custom_gaussian_smoothing__.cc:58:43: note: use function 'std::abs' instead const octave_idx_type rur = abs (k*(ct*sqrtv2 - st*sqrtv1)); // 'rur' means 'row-upper-right' ^~~ std::abs
The BIST failure in label2rgb.m was due to a missing input parameter in the shared BIST function. This is necessary for the automatic check of input parameter number in Octave 7. I added it with this commit: https://hg.code.sf.net/p/octave/image/rev/78e5dc44db96
The above BIST failure in im2bw.m might also be a regression in core Octave 7.0.90. See bug #61788.
The failing BIST in imlincomb.m due to the not yet hugging "--" operator should be fixed with this commit: https://hg.code.sf.net/p/octave/image/rev/0d26d6ae9e94
The above BIST failures with connection to "hist" seem to be a regression in core Octave 7.0.90, see bug #61787.
Currently the release candidate 7.0.90 under Windows comes bundled with the latest released image package version (2.12.0.). Via some patches in mxe-octave to the image package, the image package installs fine (i.e. without errors during "pkg install") on Octave 7.
But: Running "pkg test image" under Octave 7.0.90 produces many failing tests, for several reasons. Several of the image package funtions probably not work at all under Octave 7. A first glance gave me the impression that some changes to core Octave result in those test failurs.
This issue is ment to collect and eventually solve these test failures. Here is a short overview of failing unit tests, including a short first comment to what the problem seems to be:
Probably some of those issues are also present in image package functions, that do not have any unit tests...
(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)
Attach Files: Comment:
No files currently attached
Depends on the following items: None found
Items that depend on this one: None found
There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.
Only project members can vote.
Please enter the title of George Orwell's famous dystopian book (it's a date):
Follow 5 latest changes.
Copyright © 2022 Free Software Foundation, Inc. Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved. The Levitating, Meditating, Flute-playing Gnu logo is a GNU GPL'ed image provided by the Nevrax Design Team. Source Code
Powered by Savane 3.9