Opened 5 weeks ago

Last modified 5 weeks ago

#70546 assigned defect

vala @0.56.17_2: Can not install due to cyclic dependency by "+valadoc" (enabled by default)

Reported by: nanigashi-uji (Nanigashi Uji) Owned by: mascguy (Christopher Nielsen)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: ryandesign (Ryan Carsten Schmidt)
Port: vala, vala-devel, gd2, libavif

Description

Vala can not be installed due to cyclic dependency via graphviz.

It can be installed with "-valadoc" variant at least once.

Change History (3)

comment:1 Changed 5 weeks ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign added
Owner: set to mascguy
Port: vala-devel gd2 libavif added
Status: newassigned
Summary: vala [0.56.17_2]: Can not install due to cyclic dependency by "+valadoc" (enabled by default)vala @0.56.17_2: Can not install due to cyclic dependency by "+valadoc" (enabled by default)

Ok, so you've found the workaround: install vala without the +valadoc variant, and then you can install it with the +valadoc variant. But that isn't really a satisfactory situation especially since that variant should not exist and its functionality should be always on; see #70417.

The only reason vala is in the dependency chain of graphviz is that graphviz depends on gd2 which depends on libavif which depends on pandoc which depends on cabal which depends on wget which depends on libproxy which depends on vala.

pandoc specifically is what I would consider a "heavy" dependency and I would not want it in a port's default dependencies unless there is really no other way.

libavif only depends on pandoc in its +docs variant which is on by default. A solution would be to make that variant off by default or to move what it does to a subport.

If that will not be done, gd2 can be changed to no longer depend on libavif, or to do so only in a non-default variant. The libavif dependency was added to gd2 relatively recently so it can clearly do without it.

Previous tickets about this were #69332 and #69566. I had hoped that the resolution of those issues would be one of the above.

comment:2 Changed 5 weeks ago by nanigashi-uji (Nanigashi Uji)

Yes, What I did is simply a coping mechanism. I would appreciate it if you could implement a better best workaround.

comment:3 Changed 5 weeks ago by ryandesign (Ryan Carsten Schmidt)

In db9c39b5aafc88277acfcdb62cc9363fe97bf4fb/macports-ports (master):

gd2: Do not use libavif

See: #70546

Note: See TracTickets for help on using tickets.