typesafehub/zinc — pull request #24 by foursquare-markcc (2013-01-04 21:49:23+00:00)
Title: Add flag to mirror the analysis cache as text.

When working with zinc in a non-java based builder, it is useful to be able to
look at the same analysis cache being used by the compiler. The current
"printRelations" flag requests that a compilation emits a textual
version of the cache. For compilation, this is adequate. However, after
compilation, we frequently need to manipulate the analysis cache, doing merges
and splits to have analysis caches that match the build system's compilation
groupings.

In order to enable us to have a textual cache in sync with the
merged/split/rebased cache, in this change, I've added an option to the analysis
manipulation commands, "-mirror-cache-as-text". When this flag is specified, a
readable text ".relations" file is generated, side-by-side with the original cache.

In order to test this, the change also adds a command to scriptit to check that
a particular file does not exists. This allowed me to write tests that
verified that the text mirror files were only generated when the option was
passed.