New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test suite failures in 4.4.0 beta2 #17

Closed
apjanke opened this Issue Jun 23, 2018 · 8 comments

Comments

1 participant
@apjanke
Contributor

apjanke commented Jun 23, 2018

After fixing the Qt/FLTK crash by building --without-fltk, I'm left with a few failures in the test suite.

Failing tests:

miscellaneous/tar.m
plot/util/copyobj.m
plot/util/hgsave.m
sparse/eigs.m

Bugs for individual test failures:

  • tar failure: #10
  • copyobj/hgsave failure: #20
  • sparse/eigs.m failure: #30

Log excerpt when running in CLI:

  miscellaneous/tar.m .........................................a dir2
a dir2/file2
a file1
 PASS      5/6
                                                                  FAIL    1
...
  plot/util/copyobj.m .........................................GPL Ghostscript 9.21: Can't find initialization file gs_init.ps.
 PASS      1/2
                                                                  FAIL    1
...
  plot/util/hgsave.m ..........................................GPL Ghostscript 9.21: Can't find initialization file gs_init.ps.
 PASS      3/4
                                                                  FAIL    1
...
  sparse/eigs.m ............................................... PASS    180/182
                                                                  FAIL    2
...
Summary:

  PASS                            14932
  FAIL                                5

Log excerpt when running in GUI:

  plot/util/copyobj.m .........................................
set term qt
         ^
line 0: unknown or ambiguous terminal type; type just 'set terminal' for a list

WARNING: Error during initialization

  ./base/gsicc_manage.c:1172: gsicc_open_search(): Could not find default_rgb.icc
| ./base/gsicc_manage.c:1838: gsicc_set_device_profile(): cannot find device profile
 PASS      1/2
                                                                  FAIL    1
...
  plot/util/hgsave.m ..........................................
set term qt
         ^
line 0: unknown or ambiguous terminal type; type just 'set terminal' for a list

WARNING: Error during initialization

  ./base/gsicc_manage.c:1172: gsicc_open_search(): Could not find default_rgb.icc
| ./base/gsicc_manage.c:1838: gsicc_set_device_profile(): cannot find device profile
 PASS      3/4
                                                                  FAIL    1
...
sparse/eigs.m ............................................... PASS    180/182
                                                                  FAIL    2

Details:

>>>>> processing /Applications/Octave-4.4.0.app/Contents/Resources/usr/Cellar/octave_4.4.0/4.4.0/share/octave/4.4.0/m/plot/util/copyobj.m
***** testif HAVE_MAGICK; any (strcmp ("gnuplot", available_graphics_toolkits ()))
 toolkit = graphics_toolkit ();
 graphics_toolkit ("gnuplot");
 unwind_protect
   h1 = figure ("visible", "off");
   x = 0:0.1:2*pi;
   y1 = sin (x);
   y2 = exp (x - 1);
   ax = plotyy (x,y1, x-1,y2, @plot, @semilogy);
   xlabel ("X");
   ylabel (ax(1), "Axis 1");
   ylabel (ax(2), "Axis 2");
   axes (ax(1));
   text (0.5, 0.5, "Left Axis", ...
         "color", [0 0 1], "horizontalalignment", "center");
   axes (ax(2));
   text (4.5, 80, "Right Axis", ...
         "color", [0 0.5 0], "horizontalalignment", "center");
   s1 = hdl2struct (h1);
   h2 = struct2hdl (s1);
   s2 = hdl2struct (h2);
   png1 = [tempname() ".png"];
   png2 = [tempname() ".png"];
   unwind_protect
     print (h1, png1);
     [img1, map1, alpha1] = imread (png1);
     print (h2, png2);
     [img2, map2, alpha2] = imread (png2);
   unwind_protect_cleanup
     unlink (png1);
     unlink (png2);
   end_unwind_protect
   assert (img1, img2);
   assert (map1, map2);
   assert (alpha1, alpha2);
 unwind_protect_cleanup
   close (h1);
   close (h2);
   graphics_toolkit (toolkit);
 end_unwind_protect
!!!!! test failed
imread: unable to find file '/var/folders/_4/9mx5ryp52bb_z6drbcbrhwl40000gn/T/oct-CyNAqA.png'
...
>>>>> processing /Applications/Octave-4.4.0.app/Contents/Resources/usr/Cellar/octave_4.4.0/4.4.0/share/octave/4.4.0/m/plot/util/hgsave.m
***** testif HAVE_MAGICK; any (strcmp ("gnuplot", available_graphics_toolkits ()))
 toolkit = graphics_toolkit ();
 graphics_toolkit ("gnuplot");
 unwind_protect
   h1 = figure ("visible", "off");
   x = 0:0.1:2*pi;
   y1 = sin (x);
   y2 = exp (x - 1);
   ax = plotyy (x,y1, x-1,y2, @plot, @semilogy);
   xlabel ("X");
   ylabel (ax(1), "Axis 1");
   ylabel (ax(2), "Axis 2");
   axes (ax(1));
   text (0.5, 0.5, "Left Axis", ...
         "color", [0 0 1], "horizontalalignment", "center");
   axes (ax(2));
   text (4.5, 80, "Right Axis", ...
         "color", [0 0.5 0], "horizontalalignment", "center");
   ftmp = [tempname() ".ofig"];
   png1 = [tempname() ".png"];
   png2 = [tempname() ".png"];
   unwind_protect
     hgsave (h1, ftmp);
     print (h1, png1);
     [img1, map1, alpha1] = imread (png1);
     h2 = hgload (ftmp);
     print (h2, png2);
     [img2, map2, alpha2] = imread (png2);
   unwind_protect_cleanup
     unlink (ftmp);
     unlink (png1);
     unlink (png2);
   end_unwind_protect
   assert (img1, img2);
   assert (map1, map2);
   assert (alpha1, alpha2);
 unwind_protect_cleanup
   close (h1);
   close (h2);
   graphics_toolkit (toolkit);
 end_unwind_protect
!!!!! test failed
'h2' undefined near line 40 column 11
...
>>>>> processing /Applications/Octave-4.4.0.app/Contents/Resources/usr/Cellar/octave_4.4.0/4.4.0/share/octave/4.4.0/m/sparse/eigs.m
***** testif HAVE_ARPACK
 A = toeplitz ([0, 1, zeros(1, 8)], [0, -1, zeros(1, 8)]);
 A = kron (A, eye (10)) + kron (eye (10), A);
 opts.v0 = (1:100)';
 opts.maxit = 5;
 warning ("off", "Octave:eigs:UnconvergedEigenvalues", "local");
 d = eigs (A, 4, "lm", opts);
 assert (d(3:4), [NaN+1i*NaN; NaN+1i*NaN]);
!!!!! test failed
ASSERT errors for:  assert (d (3:4),[NaN + 1i * NaN; NaN + 1i * NaN])

  Location  |  Observed  |  Expected  |  Reason
    (1)      -3.4694e-18+3.6015i   NaN+NaNi     'NaN' mismatch
    (2)      -3.4694e-18-3.6015i   NaN+NaNi     'NaN' mismatch
***** testif HAVE_ARPACK
 A = toeplitz ([0, 1, zeros(1, 8)], [0, -1, zeros(1, 8)]);
 A = kron (A, eye (10)) + kron (eye (10), A);
 Afun = @(x) A * x;
 opts.v0 = (1:100)';
 opts.maxit = 5;
 warning ("off", "Octave:eigs:UnconvergedEigenvalues", "local");
 d = eigs (Afun, 100, 4, "lm", opts);
 assert (d(3:4), [NaN+1i*NaN; NaN+1i*NaN]);
!!!!! test failed
ASSERT errors for:  assert (d (3:4),[NaN + 1i * NaN; NaN + 1i * NaN])

  Location  |  Observed  |  Expected  |  Reason
    (1)      -3.4694e-18+3.6015i   NaN+NaNi     'NaN' mismatch
    (2)      -3.4694e-18-3.6015i   NaN+NaNi     'NaN' mismatch
...

@apjanke apjanke self-assigned this Jun 23, 2018

@apjanke apjanke added the bug label Jun 23, 2018

@apjanke apjanke added this to Needs triage in Octave.app via automation Jun 23, 2018

@apjanke apjanke added this to the 4.4.0 milestone Jun 23, 2018

@apjanke

This comment has been minimized.

Show comment
Hide comment
@apjanke

apjanke Jun 23, 2018

Contributor

Here's the full tests log from the CLI: fntests.log

And the full tests log from the GUI: fntests.log

Contributor

apjanke commented Jun 23, 2018

Here's the full tests log from the CLI: fntests.log

And the full tests log from the GUI: fntests.log

@apjanke apjanke changed the title from Test suite failures to Test suite failures in 4.4.0 beta2 Jun 23, 2018

@apjanke apjanke moved this from Needs triage to High priority in Octave.app Jun 23, 2018

@apjanke

This comment has been minimized.

Show comment
Hide comment
@apjanke

apjanke Jun 23, 2018

Contributor

The same ghostscript initialization failures happen in a plain Homebrew-installed octave, so it's not specific to Octave.app

  plot/util/hgsave.m ..........................................GPL Ghostscript 9.21: Can't find initialization file gs_init.ps.
 PASS      3/4
                                                                  FAIL    1

It looks like ghostscript is looking in a default /usr/local location, and not the path it was actually installed to.

$ gs -h
GPL Ghostscript 9.21 (2017-03-16)
...
Search path:
   /usr/local/share/ghostscript/9.21/Resource/Init :
   /usr/local/share/ghostscript/9.21/lib :
   /usr/local/share/ghostscript/9.21/Resource/Font :
   /usr/local/share/ghostscript/fonts :
   /usr/local/share/fonts/default/ghostscript :
   /usr/local/share/fonts/default/Type1 :
   /usr/local/share/fonts/default/TrueType : /usr/lib/DPS/outline/base :
   /usr/openwin/lib/X11/fonts/Type1 : /usr/openwin/lib/X11/fonts/TrueType :
   /usr/share/cups/fonts

This is a problem because Homebrew installs it under $HOMEBREW_PREFIX/Cellar, which is not the same as /usr/local. May need to fix the ghostscript formula, or report this upstream to Ghostscript itself.

Contributor

apjanke commented Jun 23, 2018

The same ghostscript initialization failures happen in a plain Homebrew-installed octave, so it's not specific to Octave.app

  plot/util/hgsave.m ..........................................GPL Ghostscript 9.21: Can't find initialization file gs_init.ps.
 PASS      3/4
                                                                  FAIL    1

It looks like ghostscript is looking in a default /usr/local location, and not the path it was actually installed to.

$ gs -h
GPL Ghostscript 9.21 (2017-03-16)
...
Search path:
   /usr/local/share/ghostscript/9.21/Resource/Init :
   /usr/local/share/ghostscript/9.21/lib :
   /usr/local/share/ghostscript/9.21/Resource/Font :
   /usr/local/share/ghostscript/fonts :
   /usr/local/share/fonts/default/ghostscript :
   /usr/local/share/fonts/default/Type1 :
   /usr/local/share/fonts/default/TrueType : /usr/lib/DPS/outline/base :
   /usr/openwin/lib/X11/fonts/Type1 : /usr/openwin/lib/X11/fonts/TrueType :
   /usr/share/cups/fonts

This is a problem because Homebrew installs it under $HOMEBREW_PREFIX/Cellar, which is not the same as /usr/local. May need to fix the ghostscript formula, or report this upstream to Ghostscript itself.

@apjanke

This comment has been minimized.

Show comment
Hide comment
@apjanke

apjanke Jun 23, 2018

Contributor

The sparese/eigs.m failure looks like it was already reported upstream:

https://savannah.gnu.org/bugs/index.php?53700
https://savannah.gnu.org/bugs/index.php?53433

Those aren't exactly the failure we're seeing, but pretty close.

Same failure happens in plain Homebrew-installed octave, so I don't think it's Octave.app-specific.

Contributor

apjanke commented Jun 23, 2018

The sparese/eigs.m failure looks like it was already reported upstream:

https://savannah.gnu.org/bugs/index.php?53700
https://savannah.gnu.org/bugs/index.php?53433

Those aren't exactly the failure we're seeing, but pretty close.

Same failure happens in plain Homebrew-installed octave, so I don't think it's Octave.app-specific.

@apjanke

This comment has been minimized.

Show comment
Hide comment
@apjanke

apjanke Jun 23, 2018

Contributor

Oh. I have a non-Homebrewed Ghostscript installation on my machine. That could be interfering with things.

Contributor

apjanke commented Jun 23, 2018

Oh. I have a non-Homebrewed Ghostscript installation on my machine. That could be interfering with things.

@apjanke

This comment has been minimized.

Show comment
Hide comment
@apjanke

apjanke Jun 23, 2018

Contributor

I'm breaking this out into separate Issues:

#20 - Ghostscript initialization issue
#10 - tar test failure

Contributor

apjanke commented Jun 23, 2018

I'm breaking this out into separate Issues:

#20 - Ghostscript initialization issue
#10 - tar test failure

@apjanke

This comment has been minimized.

Show comment
Hide comment
@apjanke

apjanke Jun 24, 2018

Contributor

I ran the test suite under the normal, non-Qt Homebrewed octave. plot/util/copyobj.m, plot/util/hgsave, and sparse/eigs.m are all failing there too. I'm confident this is not an Octave.app-specific issue, and therefore not a blocker for a 4.4.0 release.

Contributor

apjanke commented Jun 24, 2018

I ran the test suite under the normal, non-Qt Homebrewed octave. plot/util/copyobj.m, plot/util/hgsave, and sparse/eigs.m are all failing there too. I'm confident this is not an Octave.app-specific issue, and therefore not a blocker for a 4.4.0 release.

@apjanke apjanke moved this from High priority to Low priority in Octave.app Jun 24, 2018

@apjanke

This comment has been minimized.

Show comment
Hide comment
@apjanke

apjanke Jun 24, 2018

Contributor

Upstream bug submitted for plut/util/(copyobj|hgsave).m: https://savannah.gnu.org/bugs/?54174

Contributor

apjanke commented Jun 24, 2018

Upstream bug submitted for plut/util/(copyobj|hgsave).m: https://savannah.gnu.org/bugs/?54174

@apjanke apjanke moved this from Low priority to High priority in Octave.app Jun 24, 2018

@apjanke

This comment has been minimized.

Show comment
Hide comment
@apjanke

apjanke Jun 24, 2018

Contributor

The test suite is now passing!

Closed.

Contributor

apjanke commented Jun 24, 2018

The test suite is now passing!

Closed.

@apjanke apjanke closed this Jun 24, 2018

Octave.app automation moved this from High priority to Closed Jun 24, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment