What does interpreter_search_paths actually do for...
# general
p
What does interpreter_search_paths actually do for pants? is that for the python that pants uses itself to run? Or the python pants uses to run python code?
w
only for the latter (the former is driven exclusively by the
pants
launcher script)
and pants feeds the value of the search path to PEX to drive which interpreter is used.
p
it FEELS like people are seeing their macs pick up different interpreters outside of this setting
we are also on an old pants, so maybe this was fixed (after 1.27?)
w
there have been further fixes there, yes.
p
im guessing it’s better in 1.30?
w
possibly. i know that those fixes are in 2.0.x
p
would u recall any weirdness in 1.27 that would cause this? we are actually seeing problems in intellij, which is super weird, but we also cannot see what environment it uses (how mac os starts up intellij)
w
i’m not precisely sure what “this” is…
p
oh sorry, pants using an incorrect interpreter, one outside of that list in interpreter_search_paths
w
one other possibility (that i know is fixed in
2.0.x
), is that PEX will also consider the interpreter that it is started under when applying the constraints
and in pre-
2.0.x
, PEX might be started under the python that pants itself is using (…i.e., the one that the
pants
script chooses). that’s still only your “interpreter constraints” match it though
@polite-vase-75369: would you mind refreshing my memory: what’s blocking your upgrade to pants 2?
p
scala support
w
got it.
p
we’re mostly a scala shop with some python (and we suck at python 😛 )
w
heh, got it.
h
Hmmm someone else had a question about the PATH used when intellij runs pants
yesterday
p
i think that was my coworker lol
he said he is going to try setting the PEX path
p
yep
h
So this ends up being a "how does MacOS set the PATH when it runs IntelliJ" question
p
i read that you can set environment variables in a plist file
h
Note that the error @mysterious-action-44812 posted was about the interpreter Pants uses to run itself, not your Python code.
Which I think means you need to have the relevant interpreter on PATH