Skip to content
This repository has been archived by the owner on Nov 10, 2017. It is now read-only.

Analysis split, merge, rebase and reload operations fail when name hashing is enabled #68

Open
gkossakowski opened this issue Feb 6, 2015 · 5 comments
Labels

Comments

@gkossakowski
Copy link
Contributor

This is reflected by test failures:

[info] analysis/merge
[info]  + ! zinc -status
[info]  + zinc -nailed -analysis-cache analysis/a -d classes a/A.scala
[info]  + zinc -nailed -analysis-cache analysis/b -d classes b/B.scala
[info]  + zinc -nailed -analysis-cache analysis/c -d classes c/C.scala
[error] ! zinc -nailed -analysis -cache analysis/abc -merge analysis/a:analysis/b:analysis/c
[error]   /Users/grek/scala/zinc/src/scriptit/analysis/merge/test:11
[error]   [error] Merging of Analyses that have`relations.memberRefAndInheritanceDeps` set to `true` is not supported.

[error] ! zinc -nailed -analysis -cache a2 -rebase c1:c2
[error]   /Users/grek/scala/zinc/src/scriptit/analysis/rebase/test:11
[error]   [error] The `direct` source dependencies relation is not supported when `nameHashing` flag is disabled.

[error] ! zinc -nailed -analysis -cache a1 -rebase c1:c2
[error]   /Users/grek/scala/zinc/src/scriptit/analysis/reload/test:15
[error]   [error] The `direct` source dependencies relation is not supported when `nameHashing` flag is disabled.

[error] ! zinc -nailed -analysis -cache analysis/abc -split a:analysis/a,b:analysis/b,c:analysis/c
[error]   /Users/grek/scala/zinc/src/scriptit/analysis/split/test:7
[error]   [error] Grouping of Analyses that have`relations.memberRefAndInheritanceDeps` set to `true` is not supported.
@gkossakowski
Copy link
Contributor Author

The workaround is to use no-name-hashing option that is being introduced in #70.

@gkossakowski
Copy link
Contributor Author

The issue will be mentioned in release notes for zinc 0.3.6 and 0.3.7.

@benjyw
Copy link

benjyw commented Mar 20, 2015

We don't use the split/merge/rebase functionality in zinc due to performance and correctness issues. We implemented our own in python which performs a lot better because it operates purely on text, instead of hydrating a huge JVM object graph.

@benjyw
Copy link

benjyw commented Mar 20, 2015

To clarify: I believe that those features were added for our (Pants) use, and we are fine with those features being removed entirely.

@gkossakowski
Copy link
Contributor Author

I see. Thanks for the info!

retronym pushed a commit to retronym/zinc-legacy that referenced this issue Nov 1, 2017
…lename

FPORT: Do not rely on filename of package objects
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

2 participants