registry with multiple portfiles

Joshua Root jmr at macports.org
Thu Jul 13 16:08:23 UTC 2017


On 2017-7-13 20:28 , db wrote:
> On 13 Jul 2017, at 03:37, Joshua Root <jmr at macports.org> wrote:
>> I don't know. Theoretically if the script doesn't print something then a row in the ports table matched it.
> 
> Here's an extract of my filter, reg portfiles dir + db row(s). It doesn't make sense as port dir it's different from the actual port in db.
> 
> /opt/local/var/macports/registry/portfiles/clang-3.7-3.7.1_5
> 465|llvm-3.7|791b9f5c2268d5a8a3cbcbea2c09baf5c1f2a3f8166556b7b0372dda28faee4e-21225|/opt/local/var/macports/software/llvm-3.7/llvm-3.7-3.7.1_4.darwin_12.x86_64.tbz2|1|3.7.1|4|||installed|1492270652|image|x86_64|0|darwin|12
> 
> /opt/local/var/macports/registry/portfiles/py-ipaddr-2.1.11_0
> 860|py27-ipaddr|5335e8a8dc79a72f33027a9c6ea0ece99cb8e3d0c6c68d7ed5ab71371a265dba-1532|/opt/local/var/macports/software/py27-ipaddr/py27-ipaddr-2.1.11_0.darwin_12.x86_64.tbz2|0|2.1.11|0|||installed|1499887736|image|x86_64|0|darwin|12
> 
> /opt/local/var/macports/registry/portfiles/py35-certifi-2017.04.17_0
> 501|py27-certifi|d20c4c50b90ce475a1991311671f3e6f5a752e543e07ab2c7edf037b9772acaa-1007|/opt/local/var/macports/software/py27-certifi/py27-certifi-2017.04.17_0.darwin_12.noarch.tbz2|0|2017.04.17|0|||installed|1492701114|image|noarch|0|darwin|12
> 
> /opt/local/var/macports/registry/portfiles/py36-virtualenv-15.1.0_0
> 295|py27-virtualenv|08371508a0c82f3c7bb2e91f12207900d7a145d2d08ce18a2eb6f548f2cfecb6-1707|/opt/local/var/macports/software/py27-virtualenv/py27-virtualenv-15.1.0_0.darwin_12.noarch.tbz2|0|15.1.0|0|||installed|1492256983|image|noarch|0|darwin|12 300|py-virtualenv|08371508a0c82f3c7bb2e91f12207900d7a145d2d08ce18a2eb6f548f2cfecb6-1707|/opt/local/var/macports/software/py-virtualenv/py-virtualenv-15.1.0_0.darwin_12.noarch.tbz2|0|15.1.0|0|||installed|1492257000|image|noarch|1|darwin|12

Aha, I understand the problem now. The check is for whether *any* 
installed port has a portfile with the same hash and size, but we are 
only deleting the directory for the particular subport we are 
uninstalling. Other subports will of course have an identical portfile.

Fixed in master: 
<https://github.com/macports/macports-base/commit/6c8c70b370753b9015400b27afdcd303b7a0cb63>

- Josh


More information about the macports-dev mailing list