Terminal-Print
Terminal-Print copied to clipboard
Fails to build on moar-2016.12
Using rakudobrew + panda, both installed with:
$ rakudbrew build moar 2016.12
$ rakudobrew switch moar-2016.12
$ rakudbrew build panda
$ panda install Terminal::Print
==> Fetching Terminal::Print
==> Building Terminal::Print
==> Testing Terminal::Print
===SORRY!===
Type check failed in binding; expected Associative but got Any (Any)
t/00-basics.t ..
Dubious, test returned 1 (wstat 256, 0x100)
No subtests run
===SORRY!===
Type check failed in binding; expected Associative but got Any (Any)
t/10-grid.t ....
Dubious, test returned 1 (wstat 256, 0x100)
No subtests run
===SORRY!===
Type check failed in binding; expected Associative but got Any (Any)
t/11-golf.t ....
Dubious, test returned 1 (wstat 256, 0x100)
No subtests run
...
zackvolz, could you check if https://github.com/ab5tract/Terminal-Print/issues/32#issuecomment-269165344 works for you?
I tried, but the github link to version 1.0 of OO::Monitors is dead.
OK, this worked so far: I uninstalled OO::Monitors, cloned the project and checked out revision 3e9975f. I installed that with:
$ panda --force install .
Halas, building Terminal::Print still fails with the same error.
zackvolz, when you say the github link is dead, what do you mean? (I checked the link was working just now, and I got a valid tarball from it -- maybe it was a temporary glitch?)
Also, does it only fail for you for moar-2016.12 or does it fail with current (nom) as well?
Finally, what is your build environment? (32- or 64-bit; Intel or non-Intel CPU; Linux, BSD, macOS, Windows; OS and compiler versions; etc.)
I suspect they were trying to recreate these steps with panda
japhb, the platform is Xubuntu 16.04 (LTS) 64-bit. I will try nom now and tell you how it went. Compiler is: gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)
As for the dead link: seems indeed to have been a temporary glitch. And no, it wasn't a typo, because I copy-n-pasted the link from my shell history.
I get the same error on moar-nom, both with the current version of OO::Monitors and revision 3e9975f.
Strange, maybe there are leftover precompilation files that are not being invalidated.
@zackvolz If you run the follow commands and show the output (where requested) we could rule out OO::Monitors as a culprit. If these commands do allow it to work then we can probably assume something isn't getting cleaned up when it should be.
I've followed all of these steps myself and everything worked, so if you can't reproduce it then there is certainly another problem.
# Setup Perl6 env (don't show us the output of these)
$ rakudobrew nuke moar-blead
$ rakudobrew build moar-blead
$ rakudobrew switch moar-blead
$ rakudobrew build zef
$ rakudobrew rehash
$ zef nuke site home StoreDir
# We actually just deleted zef with the last command so we need to reinstall it again
$ rakudobrew build zef
$ rakudobrew rehash
# Setup modules/dependencies
# (From this point on copy & paste each command and its output)
$ zef install https://github.com/jnthn/oo-monitors/archive/3e9975f.tar.gz
$ zef --depsonly install Terminal::Print
$ zef list --installed
$ zef look Terminal::Print
# See if this all actually worked
$ prove -v -e 'perl6 -Ilib' t/
$ perl6 -Ilib examples/snowfall.p6
Here we go (of course I replaced the first line with rakudobrew nuke moar-nom and answered each prompt for zef nuke ... with "y"):
$ zef install https://github.com/jnthn/oo-monitors/archive/3e9975f.tar.gz
===> Fetching: https://github.com/jnthn/oo-monitors/archive/3e9975f.tar.gz
===> Testing: OO::Monitors:ver('1.0')
t/BUILD.t ...... ok
t/basic.t ...... ok
WARNINGS for /home/jc/.zef/store/3e9975f.tar.gz/oo-monitors-3e9975f8c1436381cf774d01d24a049cc41de7e9/t/condition.t:
Useless use of constant value not-empty in sink context (lines 15, 20)
Useless use of constant value not-full in sink context (lines 12, 22)
t/condition.t .. ok
t/new.t ........ ok
t/precomp.t .... ok
All tests successful.
$ zef --depsonly install Terminal::Print
===> Searching for: Terminal::Print
===> Searching for missing dependencies: Terminal::ANSIColor
===> Fetching: Terminal::ANSIColor
===> Testing: Terminal::ANSIColor:ver('0.2')
t/00-load.t .. ok
All tests successful.
Files=1, Tests=1, 0 wallclock secs
Result: PASS
===> Testing [OK] for Terminal::ANSIColor:ver('0.2')
===> Installing: Terminal::ANSIColor:ver('0.2')
Test Summary Report
-------------------
Files=5, Tests=13, 7 wallclock secs
Result: PASS
===> Testing [OK] for OO::Monitors:ver('1.0')
===> Installing: OO::Monitors:ver('1.0')
$ zef list --installed
===> Found via /home/jc/.rakudobrew/moar-blead-nom/install/share/perl6/site
Terminal::ANSIColor:ver('0.2')
OO::Monitors:ver('1.0')
zef:auth('github:ugexe')
===> Found via /home/jc/.rakudobrew/moar-blead-nom/install/share/perl6
CORE:ver('6.c'):auth('perl')
$ zef look Terminal::Print
===> Searching for: Terminal::Print
===> Fetching: Terminal::Print
===> Shelling into directory: /home/jc/.zef/store/Terminal-Print.git/a5c54896e773bcfe68c02dbd6731026a4131c0e1
$ prove -v -e 'perl6 -Ilib' t/
t/00-basics.t .. ===SORRY!===
Type check failed in binding; expected Associative but got Any (Any)
Dubious, test returned 1 (wstat 256, 0x100)
No subtests run
t/10-grid.t .... ===SORRY!===
Type check failed in binding; expected Associative but got Any (Any)
Dubious, test returned 1 (wstat 256, 0x100)
No subtests run
t/11-golf.t .... ===SORRY!===
Type check failed in binding; expected Associative but got Any (Any)
Dubious, test returned 1 (wstat 256, 0x100)
No subtests run
Test Summary Report
-------------------
t/00-basics.t (Wstat: 256 Tests: 0 Failed: 0)
Non-zero exit status: 1
Parse errors: No plan found in TAP output
t/10-grid.t (Wstat: 256 Tests: 0 Failed: 0)
Non-zero exit status: 1
Parse errors: No plan found in TAP output
t/11-golf.t (Wstat: 256 Tests: 0 Failed: 0)
Non-zero exit status: 1
Parse errors: No plan found in TAP output
Files=3, Tests=0, 5 wallclock secs ( 0.02 usr 0.01 sys + 5.02 cusr 0.41 csys = 5.46 CPU)
Result: FAIL
$ perl6 -Ilib examples/snowfall.p6
===SORRY!===
Type check failed in binding; expected Associative but got Any (Any)
Thanks @zackvolz
You've clearly shown there is a problem, but I'm not sure where to investigate further. The only other thing I would ask is if you can run perl6 --ll-exception -Ilib examples/snowfall.p6 (note the --ll-exception), which should show us where this Any is being assigned to an Associative.
Still no luck with moar-2017.02. Could it be something with my terminal or shell?
Stale (*m -> *s) -> Closed.