Payload refactor

Review Request #1063 - Created Sept. 22, 2014 and submitted

Information
Patrick Lawson
pants
https://github.com/patricklaw/pants/tree/pl.payload_refactor_final
6c051d5...
Reviewers
pants-reviews
benjyw, ity, jsirois, zundel

Payload refactor.

  • Break Payload into a Payload/PayloadField abstraction, and fix the major design flaw preventing clean Target subclassing.
  • Allow explicit freezing of Payloads and always freeze Payloads in the Target superclass __init__.
  • Tighten up invalidation hashing (fingerprinting) and testing.
  • Change the name of "invalidation hash" in general to "fingerprint", since the former is ambiguous and used to mean different things in several different places.
  • Make Repository and Wiki plain objects rather than Target subclasses. Users who want to expose a custom Repository instance in all BUILD files now register this instance in their internal backend's register.py as an exposed object. Then consumers of this Repository refer to this object directly. This allowed the removal of the horrible hack in JvmTarget.provides. It gets us much closer to having truly immutable Payloads.

ci.sh is green locally

CI is green: https://travis-ci.org/pantsbuild/pants/builds/36363381

Issues

  • 0
  • 3
  • 6
  • 9
Description From Last Updated
Patrick Lawson
John Sirois
Patrick Lawson
John Sirois
Patrick Lawson
Eric Ayers
John Sirois
Patrick Lawson
John Sirois
Patrick Lawson
Patrick Lawson
Patrick Lawson
Patrick Lawson
Patrick Lawson
Patrick Lawson
Ity Kaul
John Sirois
John Sirois
Patrick Lawson
Patrick Lawson
John Sirois
Patrick Lawson
John Sirois
John Sirois
John Sirois
John Sirois
Patrick Lawson
Patrick Lawson
Patrick Lawson
Patrick Lawson
Patrick Lawson
Jin Feng
Patrick Lawson
Patrick Lawson
Patrick Lawson
Ity Kaul
Eric Ayers
Patrick Lawson
Patrick Lawson
Ity Kaul
Patrick Lawson
Patrick Lawson
Review request changed

Status: Closed (submitted)

Change Summary:

Thanks all, submitted at 7bcd00e8c7c98719055411bce758d04e838a8b45
Loading...