[MacPorts] #56730: port reclaim fails with circular dependencies
MacPorts
noreply at macports.org
Sun Jun 24 17:50:48 UTC 2018
#56730: port reclaim fails with circular dependencies
----------------------------------+--------------------
Reporter: MarcusCalhoun-Lopez | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: base | Version:
Resolution: | Keywords:
Port: |
----------------------------------+--------------------
Description changed by MarcusCalhoun-Lopez:
Old description:
> Recently, `port reclaim` added the ability [https://github.com/macports
> /macports-base/pull/20 to removed unrequested port].\\
> The procedure loops over every port and decides if it **or one of its
> dependents** is requested.\\
> To facilitate this procedure, the ports are put in
> [https://github.com/macports/macports-
> base/blob/a9579836b7b31158c1b3a67c4c5a7d9ffdbf572f/src/macports1.0/reclaim.tcl#L516
> sorted order].\\
> This works fine if [https://github.com/macports/macports-
> base/blob/a9579836b7b31158c1b3a67c4c5a7d9ffdbf572f/src/macports1.0/reclaim.tcl#L399
> the procedure] `sort_portlist_by_dependendents` works as advertised.\\
> If there is a circular dependency, then this is not possible.
>
> Some circular dependencies are requested by the user.\\
> For example:
> * install `librsvg`
> * install `adwaita-icon-theme` (depends on `librsvg`)
> * install `librsvg +viewer` (depends on `adwaita-icon-theme`)
> This results in `Error: reclaim failed: can't read
> "isrequested(librsvg)": no such element in array`.
>
> This issue was recently discussed on the
> [https://lists.macports.org/pipermail/macports-
> users/2018-June/045272.html mailing list].
New description:
Recently, `port reclaim` added the ability [https://github.com/macports
/macports-base/pull/20 to removed unrequested port].\\
The procedure loops over every port and decides if it **or one of its
dependents** is requested.\\
To facilitate this procedure, the ports are put in
[https://github.com/macports/macports-
base/blob/a9579836b7b31158c1b3a67c4c5a7d9ffdbf572f/src/macports1.0/reclaim.tcl#L516
sorted order].\\
This works fine if [https://github.com/macports/macports-
base/blob/a9579836b7b31158c1b3a67c4c5a7d9ffdbf572f/src/macports1.0/reclaim.tcl#L399
the procedure] `sort_portlist_by_dependendents` works as advertised.\\
If there is a circular dependency, then this is not possible.
Some circular dependencies are requested by the user.\\
For example:
* install `librsvg`
* install `adwaita-icon-theme` (depends on `librsvg`)
* install `librsvg +viewer` (depends on `adwaita-icon-theme`)
This results in `Error: reclaim failed: can't read "isrequested(librsvg)":
no such element in array` if somehow these ports were `unsetrequested`.
This issue was recently discussed on the
[https://lists.macports.org/pipermail/macports-users/2018-June/045272.html
mailing list].
--
--
Ticket URL: <https://trac.macports.org/ticket/56730#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list