Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#56225 closed defect (fixed)

mpbb: sort-with-subports.tcl chokes on circular dependency, fails silently

Reported by: raimue (Rainer Müller) Owned by: admin@…
Priority: Normal Milestone:
Component: buildbot/mpbb Version:
Keywords: Cc: jmroot (Joshua Root), neverpanic (Clemens Lang)
Port:

Description

mpbb did not try to build any port for a recent commit: https://build.macports.org/builders/ports-10.13_x86_64-watcher/builds/4667 (same for other macOS versions)

Although mpbb list-subports failed, the overall build was successful. We need to fix this in order to detect such failures.

The error for list-subports was:

$ ./mpbb list-subports gnuradio
./mpbb: error: None of the specified ports were found in the port index.
./mpbb: error: `list-subports' failed to run successfully

The problem was caused by gnuradio, which appears to have a circular dependency somewhere:

$ /opt/local/bin/port-tclsh ./tools/sort-with-subports.tcl gnuradio |& head
too many nested evaluations (infinite loop?)
    (procedure "process_port_deps" line 1)
    invoked from within
"process_port_deps $portdep portdeps portlist"
    (procedure "process_port_deps" line 7)
    invoked from within
...

Change History (3)

comment:1 Changed 3 years ago by raimue (Rainer Müller)

The circular dependency was removed in [ebb1a0c497826d48ca82c9dba42368dff5731f48/macports-ports], so to reproduce this you need to use an older commit.

comment:2 Changed 3 years ago by jmroot (Joshua Root)

Resolution: fixed
Status: newclosed

In 190764eb33839464bed5aeaebf375a929e46827c/mpbb:

Break dependency cycles when listing subports

Remove ports from the set of ports to be processed before processing
their dependencies.

Fixes: #56225

comment:3 Changed 3 years ago by raimue (Rainer Müller)

In b015bb55029bcf34c9db6393c294b37afa155af7/macports-infrastructure:

buildbot: Halt build if list-subports failed

See: #56225

Note: See TracTickets for help on using tickets.