[MacPorts] #67055: python portgroup overwrites PYTHONPATH in test.env
MacPorts
noreply at macports.org
Mon Mar 13 01:47:20 UTC 2023
#67055: python portgroup overwrites PYTHONPATH in test.env
----------------------+------------------------
Reporter: dgilman | Owner: reneeotten
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: |
----------------------+------------------------
Comment (by reneeotten):
Replying to [comment:6 jmroot]:
> Replying to [comment:4 dgilman]:
> > A portfile with only `python.test_framework pytest` and `test.run yes`
also emits an empty PYTHONPATH
>
> That at least is expected, since it gets the value by globbing in
$worksrcpath, so if that's empty, so will be the glob result. At minimum
it probably makes sense to not set the environment variable if the glob
doesn't match anything.
It appears that when using {{{setuptools}}} as the backend for
{{{python.pep517}}} you always get something in
{{{${worksrcpath}/build/lib*}}}, whereas at least in this case with
{{{flit}}} as backend you don't (not sure if that's always true).
However, if the globbing is empty and thus as a result {{{PYTHONPATH}}} is
so as well; this is set as {{{test.env-append}}} in the {{{pre-test}}}
phase, which then overriden in the Portfile with
{{{
test.env FOO=bar PYTHONPATH=${worksrcpath}/src
}}}
so I fail to see how this empty variable can be originating from the
Portfile....
I can try and figure out how to not set this if the glob-result is empty
but don't understand how/if this is the actual underlying reason for the
reported error.
--
Ticket URL: <https://trac.macports.org/ticket/67055#comment:7>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list