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

Charlie Li <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]
              Flags|maintainer-feedback?(python |maintainer-feedback+
                   |@FreeBSD.org)               |
         Resolution|---                         |Works As Intended
             Status|New                         |Closed

--- Comment #12 from Charlie Li <[email protected]> ---
(In reply to Jan Martin Mikkelsen from comment #11)
> In our build system, making devel/py-wheel explicitly depend on 
> devel/py-setuptools resolved the build issues.
This is a circular dependency, even with the "temporary" declaration/use of
devel/py-wheel044 in setuptools 63.

Everything aside, there are multiple points that need to be made clear, as to
why this all "works as intended":

Comment 3 is correct, you must remove devel/py-wheel before building
devel/py-setuptools 63 (the current version in the ports tree). To allow
devel/py-wheel and devel/py-wheel044 to not conflict with each other, the
latter is only installed into setuptools's source vendor directory, not
site-packages, with a path file so the setuptools build process can find it.
However, the build process only uses vendored dependencies when they are not
already present/installed in the environment, ie site-packages. Thus, when
devel/py-wheel is present/installed, ie in site-packages, the setuptools build
process will use that instead of devel/py-wheel044. This is the correct
behaviour.

All this demonstrates that Python package building effectively requires
(temporal) environment isolation/separation. In pure Python, this is achieved
via virtual environments. poudriere is effectively the closest FreeBSD
non-Python analogue primarily through automating jail creation and destruction.
You don't have to use poudriere, but you must isolate your environments
somehow.

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to