Non-chunk-specific logic in jvm compilation now in prepare_execute.

Review Request #439 — Created June 2, 2014 and submitted

benjyw
pants
pants-reviews
jsirois
- Fixes the global analysis splitting bug.
- Classpaths are now modified once, up front.

(Previously the classes/resources dirs were added to the classpath
 multiple times, once per chunk. Also, there was some bogus logic
 that updated the classpath at the end of execute(), implying that
 the update was only for downstream tasks. However the update would
 be visible in the next chunk, so that was misleading, and also
 led to the first chunk being 'special'.)
All unittests pass. 

Various manual compiles of varying complexity pass.

Global analysis splitting bug verified to be fixed.

Still want to do more manual testing on foursquare.web, but wanted to get this out for review in parallel, as I'm traveling soon and don't want to delay.
PA
  1. 
      
  2. Yeah this makes sense to me.
  3. 
      
JS
  1. An integration linked in to tests/python/pants_test:integration would be ideal to verify the cross chunk dependency case is properly invalidated by zinc going forward.
  2. pydoc would be great here - why would I use this instead of or in addition to invalidated?
  3. I think so - or at least there should be a utility to mix in.  Pants should work in bare source distributions too though, so lack of a local scm must be handled gracefully.
  4. 
      
BE
  1. 
      
  2. Good idea. Done.
  3. 
      
BE
Review request changed

Status: Closed (submitted)

Loading...