Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 9 Jun 2017 23:51:21 +1000
From:      Kubilay Kocak <koobs@FreeBSD.org>
To:        Vick Khera <vivek@khera.org>, FreeBSD Ports List <ports@freebsd.org>
Cc:        python <python@FreeBSD.org>
Subject:   Re: trouble building py3-requests -- dependencies build against wrong version of python.
Message-ID:  <1950b1b1-f424-96a6-c0e5-1ed68749eb57@FreeBSD.org>
In-Reply-To: <CALd%2BdccErvuGOazXANEV%2Bfa3mg1=9Ncsn4LuwuBtE5rfYG279Q@mail.gmail.com>
References:  <CALd%2BdccErvuGOazXANEV%2Bfa3mg1=9Ncsn4LuwuBtE5rfYG279Q@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 6/9/17 11:47 PM, Vick Khera wrote:
> I'm trying to build py3-iocage, which has as one dependeny py3-requests.
> When building this with poudriere, the py3-requests port somehow causes
> py27-chardet to be built instead of py36-chardet, which then results in
> py3-requests failing to find the dependency (which it just tried to build).
> 
> Here is a test I just ran:
> 
> % rm /usr/local/poudriere/data/packages/freebsd:11:x86:64/All/py*-chardet*
> % poudriere bulk -j 11amd64 -J 4:6 www/py3-requests
> 
> The build fails with this:
> 
> [00:00:08] ====>> [01][00:00:00] Starting build of textproc/py-chardet
> [00:00:14] ====>> [01][00:00:06] Finished build of textproc/py-chardet:
> Success
> [00:00:14] ====>> [01][00:00:00] Starting build of www/py3-requests
> [00:00:19] ====>> [01][00:00:05] Finished build of www/py3-requests:
> Failed: run-depends
> 
> 
> Looking in the log file from poudriere we have:
> 
> =======================<phase: run-depends    >============================
> ===>   py36-requests-2.17.3 depends on package: py36-chardet>=3.0.2 - not found
> ===>   py36-requests-2.17.3 depends on package:
> /packages/All/py36-chardet-3.0.3.txz - not found
> ===>   USE_PACKAGE_DEPENDS_ONLY set - not building missing dependency
> from source
> 
> and we see that py27-chardet was actually built:
> 
> % ls -l
> /usr/local/poudriere/data/packages/freebsd:11:x86:64/All/py*-chardet*
> -rw-r--r--  1 root  wheel  155212 Jun  9 09:24
> /usr/local/poudriere/data/packages/freebsd:11:x86:64/All/py27-chardet-3.0.3.txz
> 
> If I explicitly build py3-chardet I get the right version:
> 
> % rm /usr/local/poudriere/data/packages/freebsd:11:x86:64/All/py*-chardet*
> % poudriere bulk -j 11amd64 -J 4:6 textproc/py3-chardet
> % ls -l
> /usr/local/poudriere/data/packages/freebsd:11:x86:64/All/py*-chardet*
> -rw-r--r--  1 root  wheel  157916 Jun  9 09:35
> /usr/local/poudriere/data/packages/freebsd:11:x86:64/All/py36-chardet-3.0.3.txz
> 
> When I subsequently build py3-requests it finds the py36-chardet package,
> but then fails on its other dependencies with the same error pattern (ie,
> it built py27-idna instead of py36-idna, etc.)
> 
> 
> How can I convince py3-requests to build py3-chardet rather than py-chardet
> (and py36-idna, etc.) like it does above? It seems to me that the "include"
> method of making the py3 modules child ports of the py modules is failing
> here with py3-requests.
> 
> My poudriere make.conf file has
> 
> DEFAULT_VERSIONS=mysql=5.6 pgsql=9.4 apache=2.4 perl5=5.24 ssl=openssl
> php=7.0 python3=3.6
> 
> That is the only mention of python in there.
> 
> Running FreeBSD 11.0/amd64, ports tree updated as of this morning with
> portsnap.

Hi Vick,

The underlying py-requests/py3-requests issue underlying being unable to
build iocage is being tracked here:

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219833

As far as poudriere results go, you may want to poudriere pkgclean the
jail in question and attempt a py3-requests build again. Apart from
incorrect version-conditional dependencies (enum34 wont be installed for
those using python33), it should be ok at the moment for other versions.

If not it would be good to know what's failing.

Make sure you update your ports tree to ensure the latest revisions of
all ports involved (there were many)




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1950b1b1-f424-96a6-c0e5-1ed68749eb57>