Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#61033 closed defect (fixed)

zeek conflicts with caf

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: Schamschula (Marius Schamschula)
Priority: Normal Milestone:
Component: ports Version: 2.6.99
Keywords: Cc:
Port: zeek caf

Description

--->  Activating zeek @3.2.0_1+python38
Error: Failed to activate zeek: Image error: /Users/rschmidt/mp/include/caf/abstract_actor.hpp is being used by the active caf port.  Please deactivate this port first, or use 'port -f activate zeek' to force the activation.

Change History (7)

comment:1 Changed 4 years ago by Schamschula (Marius Schamschula)

Indeed. I'll add a deactivate hack.

comment:2 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

Well wait a minute. The deactivate hack is appropriate if files that were provided by one port have moved to one of its dependencies. Did that happen here?

Last edited 4 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:3 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

It looks to me like what's happening is that zeek is distributing a bundled copy of caf. If so, why is it doing that? Can it declare a dependency on caf and use that copy of caf instead? If so, then yes, you would need to add the deactivate hack to caf so that it would deactivate any already-installed zeek-with-caf.

comment:4 Changed 4 years ago by Schamschula (Marius Schamschula)

Resolution: fixed
Status: assignedclosed

In e16992b2da9e41100c97d20d58ce00a2e614c7f5/macports-ports (master):

zeek: add deactivvate hack for caf

Closes: #61033

comment:5 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

That is not the fix I was looking for. zeek and caf continue to conflict. If both ports will continue to exist and provide caf files, then you need to declare the conflict between the ports using the conflicts keyword in both ports.

Why must zeek use a bundled caf? Can't it use the one from the caf port?

Alternately, since you appear to have originally added caf to MacPorts just so that it could be a dependency of zeek, and now nothing depends on it, consider discontinuing the caf port and marking it replaced_by zeek.

comment:6 Changed 4 years ago by Schamschula (Marius Schamschula)

True. I should have declared conflicts in both ports.

The reason I switched to the bundled copy of caf is based on the recommendation of the upstream developers.

See: https://github.com/zeek/zeek/issues/1123

Unless there is another package that depends on caf, there is none, that port can be marked obsolete, or immediately removed.

comment:7 Changed 4 years ago by Schamschula (Marius Schamschula)

In 12640ff826c9b9cdaa564badae146c6a25c3e9a0/macports-ports (master):

caf: remove port w/o dependencies

zeek uses bundled version
See: #61033

Note: See TracTickets for help on using tickets.