Opened 15 years ago

Closed 12 years ago

#7361 closed defect (fixed)

BUG: activation status of dependencies is not checked before installation

Reported by: opendarwin.nospam@… Owned by: macports-tickets@…
Priority: High Milestone: MacPorts 1.7.0
Component: base Version:
Keywords: haspatch Cc: vinc17@…, rhwood@…, jmroot (Joshua Root)
Port:

Description (last modified by jmpp@…)

assuming i want to install port A that depends on port B. in case that port B is already installed but currently not activated for some reason, "port install portA" does not complain and begins to install port A nonetheless. the installation will most likely fail in the configure, or build phase because it cannot locate port B that it depends on.

this has bitten me several times by now and can be quite confusing, especially when a port is unintentionally inactive due to a prior installation/activation error.

i really would expect that darwinports moans when i try to install a port that has inactive dependencies. imho it should spit out a warning at least.

Attachments (1)

_mportispresent.diff (2.1 KB) - added by jmroot (Joshua Root) 13 years ago.
proposed fix

Download all attachments as: .zip

Change History (15)

comment:1 Changed 15 years ago by opendarwin.nospam@…

Summary: activation status of dependencies is not checked before installationBUG: activation status of dependencies is not checked before installation

comment:2 Changed 14 years ago by pipping@…

Milestone: Port Bugs

comment:3 Changed 14 years ago by pipping@…

Milestone: Port BugsMacPorts 1.4

comment:4 Changed 14 years ago by jmpp@…

Description: modified (diff)
Milestone: MacPorts 1.4Needs developer review
Owner: changed from macports-tickets@… to macports-dev@…
Priority: ExpectedImportant
severity: normalNormal

comment:5 Changed 14 years ago by jmpp@…

Milestone: Needs developer reviewMacPorts base bugs

Milestone Needs developer review deleted

comment:6 Changed 14 years ago by nox@…

Priority: ImportantHigh
Version: 1.2

comment:7 Changed 14 years ago by vinc17@…

Cc: vinc17@… added

Any news?

comment:8 Changed 13 years ago by rhwood@…

Cc: rhwood@… added

This bug has bitten us badly with the replacement of scrollkeeper with rarian. The problem was that for the most part, rarian was automatically installed as a dependency of other ports before scrollkeeper could be removed, so rarian is sitting around inactive on systems where it should be active.

See also #14971

comment:9 Changed 13 years ago by jmroot (Joshua Root)

Keywords: haspatch added
Milestone: MacPorts base bugsMacPorts 1.6.1

Nominating for the upcoming release.

comment:10 Changed 13 years ago by jmroot (Joshua Root)

Cc: jmr@… added

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

Image mode is still optional and users can still choose not to use it in macports.conf. Therefore there should be a distinction whether we are in image mode or not.

comment:12 in reply to:  11 Changed 13 years ago by jmroot (Joshua Root)

Replying to raimue@macports.org:

Image mode is still optional and users can still choose not to use it in macports.conf. Therefore there should be a distinction whether we are in image mode or not.

Attaching a new patch that checks that, and also checks for activation in another place I missed before.

Changed 13 years ago by jmroot (Joshua Root)

Attachment: _mportispresent.diff added

proposed fix

comment:13 Changed 13 years ago by jmroot (Joshua Root)

Committed the patch to trunk in r36735. There is a corner case where if you've selected different variants when installing the dependent than the inactive dependency was built with, a new version of the dependency will be built with the new variants (instead of the existing version being activated). I'm not sure if this should be considered a bug or a feature.

comment:14 Changed 12 years ago by jmroot (Joshua Root)

Resolution: fixed
Status: newclosed

Closing since 1.6.1 has turned into 1.7.

Note: See TracTickets for help on using tickets.