|Summary:||databases/py-psycopg2: Flavor @py36 does not install because of wrong PYTHON*_SITELIBDIR|
|Product:||Ports & Packages||Reporter:||Rainer Hurling <rhurlin>|
|Component:||Individual Port(s)||Assignee:||Sunpoet Po-Chuan Hsieh <sunpoet>|
|Status:||Closed Unable to Reproduce|
|Severity:||Affects Only Me||CC:||rhurlin, se|
koobs: maintainer-feedback? (se)
|Bug Depends on:|
Description Rainer Hurling 2018-12-02 11:06:45 UTC
Created attachment 199742 [details] patch SITELIBDIR for @py36 In the process of preparing my new port graphics/qgis with QGIS 3, I found databases/py-psycopg2 as a showstopper, because it is not able to install for flavor @py36. I think, this is because databases/py-psycopg2@py37 tries to install the Python files wrongly in PYTHON_SITELIBDIR instead of PYTHONPREFIX_SITELIBDIR. The attached patch seems to solve the problem, now both @py27 and @py36 are installable at the same time. Tested with Poudriere (F11.2i/a, F12.0-RC1i/a, and HEADi/a). 'portlint -AC' seems fine.
Comment 1 Sunpoet Po-Chuan Hsieh 2018-12-03 15:00:04 UTC
I cannot reproduce the problem. And our building cluster generates the packages successfully .  https://pkg.freebsd.org/FreeBSD:11:amd64/latest/All/py36-psycopg2-126.96.36.199.txz  https://pkg.freebsd.org/FreeBSD:12:amd64/latest/All/py36-psycopg2-188.8.131.52.txz
Comment 2 Rainer Hurling 2018-12-03 19:47:47 UTC
(In reply to Sunpoet Po-Chuan Hsieh from comment #1) I am sorry my analysis in the initial report was wrong, because I did not understand, what happens. Investigating again in this problem turns out, that there is something wrong with the behaviour of portmaster in this situation. This happens only on real world boxes (not in Poudriere), when I use Portmaster AND @py36 (a non default flavor) is not installed before (first time install): #portmaster databases/py-psycopg2@py36 ===> Installing for py36-psycopg2-184.108.40.206 ===> Checking if py36-psycopg2 already installed ===> Registering installation for py36-psycopg2-220.127.116.11 Installing py36-psycopg2-18.104.22.168... ===>>> Installation of databases/py-psycopg2@py36 (py27-psycopg2-22.214.171.124) complete ^^^^ ^^^^ In fact, after that, the correct @py36 flavor is installed: #pkg info | grep psycopg2 py36-psycopg2-126.96.36.199 But, in /var/db/pkg there is instead an entry (directory) with the wrong flavor: #ls -ldU /var/db/pkg/*-psycopg2-* drwxr-xr-x 2 root wheel 512 3 Dez. 20:36 /var/db/pkg/py27-psycopg2-188.8.131.52 This does not happen, if I install via: cd /usr/ports/databases/py-psycopg2 make clean install FLAVOR=py36 or if I reinstall the already existing port a second time with Portmaster. So it seems, that Portmaster does something wrong here. The right port and flavor is installed, but the bookkeeping under /var/db/pkg is wrong in the first time.
Comment 3 Kubilay Kocak 2019-01-04 02:40:41 UTC
@Rainer Is this still an issue? Get Stefans thoughts on potential issue with portmaster. Please re-assign and update summary according to investigation results