the second option is the most appealing to me, lik...
# announce
w
the second option is the most appealing to me, likely because i haven't thought about what it would take to correctly identify the sources that would need to be included
i think that this might look like introspecting the python path to identify the relevant sources to include. guessing that that is not easy to do transitively.
oh, hm. that module has no transitive deps
that makes this more appealing i think. it would look like introspecting all sources in that module and then dumping them into a pex
Copy code
$ ./pants dependencies contrib/python/src/python/pants/contrib/python/checks/checker:: | sort

3rdparty/python:future
3rdparty/python:pycodestyle
3rdparty/python:pyflakes
3rdparty/python:requirements.txt
3rdparty/python:six
contrib/python/src/python/pants/contrib/python/checks/checker:bin
contrib/python/src/python/pants/contrib/python/checks/checker:checker
future==0.16.0
pycodestyle==2.4.0
pyflakes==2.0.0
six<2,>=1.9.0
and 3rdparty deps.
but also, i suppose that this is potentially more challenging to maintain long term... if you wanted to break the checker binary up into more modules, you'd need to load all of them and their 3rdparty deps manually.