Fixup memoization key_factory bugs.

Review Request #2317 — Created June 3, 2015 and submitted — Latest diff uploaded

jsirois
pants
jsirois/memo/harden
1632
d9d89f4...
pants-reviews
benjyw, patricklaw, zundel
Patrick pointed out 2 issues in 4ee47c085380a8175e5c2d1795e9f367809cda
that can lead to bad cache keys and thus incorrect memoized function
return values.

This adds a failing test for the ambiguous *args/**kwargs case and fixes
it.  The GC'd object `id()` case is not tested/testable.

 src/python/pants/util/memo.py             | 16 +++++++++++++---
 tests/python/pants_test/util/test_memo.py | 14 ++++++++++++++
 2 files changed, 27 insertions(+), 3 deletions(-)
CI went green here:
  https://travis-ci.org/pantsbuild/pants/builds/65258867
Loading...