Various refactoring of PythonChroot and related code.

Review Request #2327 — Created June 5, 2015 and submitted

benjyw
pants
1641
4490d87...
pants-reviews
jsirois, patricklaw

- Fold all pex interaction into PythonChroot/temporary_chroot().
Clients of PythonChroot no longer use PEX, PEXBuilder etc. directly.
- Get rid of resolver.py and move its functionality into its only
client - PythonChroot. So instead of passing in many arguments,
it can read from self.
- Make most optional arguments required, in methods we were always
passing those arguments into anyway.
- Rename the egg_cache_dir option to the more precise 'resolver_cache_dir',
and move the global cache ttl option to be a PythonSetup option.
- Make the order of various arguments uniform.

All this simplification is good in its own right, but my motivation for doing it now is as a means to the future end of implementing caching of entire chroots, which in turn will make many things, including test running, much faster.

CI passed here: https://travis-ci.org/pantsbuild/pants/builds/65667369.

BE
JS
  1. 
      
  2. consider a set comprehension
  3. kill extra blank line
  4. Probably also advanced - it seems like a repo-wide policy to have short or long TTLs.
  5. 
      
BE
BE
BE
Review request changed

Status: Closed (submitted)

Change Summary:

Submitted as 3a71d12e60140cf8c61a102a046fe69e1fe428be.

Loading...