[MacPorts] #56817: `port activate`: error selecting already active variant
MacPorts
noreply at macports.org
Mon Jul 16 02:59:32 UTC 2018
#56817: `port activate`: error selecting already active variant
--------------------------+--------------------
Reporter: chrstphrchvz | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: base | Version: 2.5.3
Keywords: | Port:
--------------------------+--------------------
If there are multiple variants of a port installed, using `port activate
portname` brings up an interactive prompt to select which variant to
activate. If the one marked `(active)` is selected, it exits with an
`Image error`. However, if there was only one variant installed, there is
no prompt and no error, so this behavior is somewhat inconsistent.
As discussed with jmr_mp this morning on IRC:
{{{
Sunday, July 15th, 2018 (CDT)
1:35 AM <chrstphrchvz> I notice that activating an already-active port
with one variant installed exits without error, but activating an already
active variant of a port with multiple variants installed exits *with* an
error. Is this right?
4:06 AM <jmr_mp> chrstphrchvz: with or without specifying which one you
mean unambiguously?
4:28 AM <chrstphrchvz> jmr_mp, Unambiguously? I'm not sure I understand.
To clarify, if I run `port activate portname` and am prompted with a list
of installed variants, it will error if I select the one marked `active`
4:43 AM <jmr_mp> chrstphrchvz: ah, interactive mode - yeah that sounds
like a bug
4:44 AM if you say 'port activate portname' in a non-interactive context,
that's ambiguous when there is more than one version of portname
installed, and an error is appropriate
4:45 AM the solution being to say portname @1.0_0+foo or whatever instead
4:49 AM interactive mode gets to resolve the ambiguity with user input, so
it shouldn't ever error for that reason
4:49 AM it arguably shouldn't even offer the one that's currently active
4:50 AM although then you might accidentally activate a version you didn't
really want active, if it just assumed the inactive one
4:51 AM (in the case where there's only one active and one inactive)
4:57 AM <chrstphrchvz> jmr_mp: ahh, I was missing the `@version`, so that
led to the promot. Though it probably is nice for the prompt to indicate
which variant is currently active
4:58 AM <jmr_mp> yeah, should probably just be labelled a bit differently
4:58 AM anyway definitely shouldn't error because you selected one of the
choices offered
}}}
--
Ticket URL: <https://trac.macports.org/ticket/56817>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list