New Ticket     Tickets     Wiki     Browse Source     Timeline     Roadmap     Ticket Reports     Search

Ticket #29238 (closed update: fixed)

Opened 3 years ago

Last modified 3 years ago

parrot new version 3.3.0

Reported by: l2g@… Owned by: l2g@…
Priority: Normal Milestone:
Component: ports Version:
Keywords: haspatch Cc: will@…, bfulgham@…
Port: parrot

Description

Version 3.3.0 of Parrot was released a few days ago (April 19), and it has been designated a "supported" release.

I've played with it by building it and running its tests, and while a number of tests fail that are "TODO" tests, I also get one test failure that isn't a TODO: test number 27 in t/dynpmc/os.t. If I can figure it out before you all do, I will follow up here.

Attachments

Portfile.diff (1.2 KB) - added by l2g@… 3 years ago.
Update parrot to 3.3.0 and include a patch to fix a broken test
patch-t-dynpmc-os.t.diff (230 bytes) - added by l2g@… 3 years ago.
New patch to include in lang/parrot/files

Change History

comment:1 Changed 3 years ago by l2g@…

I was able to dig down into the test output to find the failure:

#   Failed test 'Test chroot'
#   at t/dynpmc/os.t line 659.
#                   '/
# chroot failed: Too many levels of symbolic links
# current instr.: 'main' pc 42 (/opt/local/var/macports/build/_Users_larry_work_macports_dports_lang_parrot/work/parrot-3.3.0/t/dynpmc/os_27.pir:10)
# '
#     doesn't match '/\/
# chroot failed
# /
# '
# './parrot -D40 --gc-debug  "/opt/local/var/macports/build/_Users_larry_work_macports_dports_lang_parrot/work/parrot-3.3.0/t/dynpmc/os_27.pir"' failed with exit code 1
# Looks like you failed 1 test of 34.

So chroot fails, as the test intended, but the error message indicates the cause of failure ("Too many symbolic links"), which the test wasn't expecting.

It may be possible that there's more than one way for chroot to fail here, and that one of them may really not give any reason for the failure. Otherwise, it might be okay just to patch this test to look only as far as "chroot failed" in the error message and call that good.

comment:2 Changed 3 years ago by l2g@…

This is the PIR code run by the test:

.sub main :main
        $P0 = loadlib 'os'
        $P1 = new ['OS']

        $P1.'chdir'('my-super-chroot')
        $P1.'chroot'('.')
        $S0 = $P1.'cwd'()
        say $S0

        $P1.'chroot'('loop')
.end

So I think the point of the test is just to make sure chroot fails appropriately in event of a loop, not to see how specific the error message is. So if it were me, I'd go ahead and patch the test.

I'll attach the changes I've made: a patch for the portfile, and a new patch to put in the files/ directory.

Changed 3 years ago by l2g@…

Update parrot to 3.3.0 and include a patch to fix a broken test

Changed 3 years ago by l2g@…

New patch to include in lang/parrot/files

comment:3 Changed 3 years ago by l2g@…

  • Keywords haspatch added

comment:4 follow-up: ↓ 6 Changed 3 years ago by will@…

Opened a ticket in parrot's trac system to track this request 4 weeks ago:

https://trac.macports.org/ticket/29238

comment:5 Changed 3 years ago by will@…

Go ahead and apply the patches - We should be able to get the dynpmc patch pushed upstream.

comment:6 in reply to: ↑ 4 Changed 3 years ago by ryandesign@…

Replying to will@…:

Opened a ticket in parrot's trac system to track this request 4 weeks ago:

https://trac.macports.org/ticket/29238

I assume you mean:

http://trac.parrot.org/parrot/ticket/2102

comment:7 Changed 3 years ago by snc@…

  • Cc bfulgham@… added
  • Owner changed from bfulgham@… to l2g@…

comment:8 Changed 3 years ago by l2g@…

  • Status changed from new to assigned

Committed (r79402).

comment:9 Changed 3 years ago by l2g@…

  • Status changed from assigned to closed
  • Resolution set to fixed
Note: See TracTickets for help on using tickets.