Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch '1.0' into cd-filter-branch
This commit merges 1.0 branch into class-based-dependencies branch. The class-based-dependencies branch has been obtained from the sbt repo by rerunning the filter-branch command that has been used originally to spawn zinc repo out of sbt repo: git filter-branch --index-filter 'git rm --cached -qr -- . && git reset -q $GIT_COMMIT -- compile interface util/classfile util/classpath util/datatype util/relation' --prune-empty That preserved some merges from the original class-based-dependencies branch that didn't make sense so I rebased the filtered branch on top of 7e9ccc1. This commit is the first commit in zinc's history after filtering. Once the rebase was done and I got a cleaner history, I've merged 1.0 into my class-based-dependencies branch. This commit is exactly that merge. The merge itself is very complicated because very non-trivial changes happened in both zinc and my class-based-dependencies branch. What you see here represents the best effort at merging. I expect mistakes to be discovered and fixed in subsequent commits. I got it as far as to compile everything and make most of the test pass. I highlight below some of the least obvious changes I've made: - Analysis.groupBy operation has been nuked. It's been broken in class-based-dependencies and it's not clear who needs it - AnalysisTest is removed as it was mostly testing the Analysis.groupBy - changes to definition.json and other.json are ports of changes from definition and other (from the interface subproject). Consult hisotry of those files to understand those changes - TestAnalyzingCompiler has been adapted to handle invalidation at class level instead of source file level - TestAnalysisCallback has been adapted to changes how apis, products and dependencies are tracked. A lot of code has been copied over from AnalysisCallback. I'm not sure if that the best course of action but I don't understand the role of TestAnalysisCallback exactly to have a better opinion. # Conflicts: # compile/api/src/main/scala/xsbt/api/ShowAPI.scala # compile/api/src/test/scala/xsbt/api/NameHashingSpecification.scala # compile/inc/src/main/scala/sbt/inc/Dependency.scala # compile/integration/src/main/scala/sbt/compiler/AggressiveCompile.scala # compile/integration/src/main/scala/sbt/compiler/IncrementalCompiler.scala # compile/interface/src/main/scala/xsbt/Dependency.scala # compile/persist/src/main/scala/sbt/inc/AnalysisFormats.scala # compile/persist/src/main/scala/xsbt/api/AnalyzedClassFormat.scala # compile/persist/src/main/scala/xsbt/api/SourceFormat.scala # compile/src/test/scala/sbt/compiler/javac/JavaCompilerSpec.scala # incrementalcompiler/src/main/scala/sbt/internal/inc/MixedAnalyzingCompiler.scala # incrementalcompiler/src/main/scala/sbt/internal/inc/javac/AnalyzingJavaCompiler.scala # interface/definition # interface/other # interface/src/main/java/xsbti/DependencyContext.java # interface/src/test/scala/xsbti/TestCallback.scala # internal/compiler-bridge/src-2.10/main/scala/xsbt/API.scala # internal/compiler-bridge/src-2.10/main/scala/xsbt/CompilerInterface.scala # internal/compiler-bridge/src-2.10/main/scala/xsbt/ExtractAPI.scala # internal/compiler-bridge/src-2.10/main/scala/xsbt/ExtractUsedNames.scala # internal/compiler-bridge/src/test/scala/xsbt/DependencySpecification.scala # internal/compiler-bridge/src/test/scala/xsbt/ExtractAPISpecification.scala # internal/compiler-bridge/src/test/scala/xsbt/ExtractUsedNamesSpecification.scala # internal/compiler-bridge/src/test/scala/xsbt/ScalaCompilerForUnitTesting.scala # internal/compiler-interface/src/main/java/xsbti/AnalysisCallback.java # internal/incrementalcompiler-apiinfo/src/main/scala/xsbt/api/APIUtil.scala # internal/incrementalcompiler-apiinfo/src/main/scala/xsbt/api/HashAPI.scala # internal/incrementalcompiler-apiinfo/src/main/scala/xsbt/api/NameHashing.scala # internal/incrementalcompiler-classfile/src/main/scala/sbt/internal/inc/classfile/Analyze.scala # internal/incrementalcompiler-core/src/main/scala/sbt/internal/inc/APIDiff.scala # internal/incrementalcompiler-core/src/main/scala/sbt/internal/inc/APIs.scala # internal/incrementalcompiler-core/src/main/scala/sbt/internal/inc/Analysis.scala # internal/incrementalcompiler-core/src/main/scala/sbt/internal/inc/Compile.scala # internal/incrementalcompiler-core/src/main/scala/sbt/internal/inc/Incremental.scala # internal/incrementalcompiler-core/src/main/scala/sbt/internal/inc/IncrementalAntStyle.scala # internal/incrementalcompiler-core/src/main/scala/sbt/internal/inc/IncrementalCommon.scala # internal/incrementalcompiler-core/src/main/scala/sbt/internal/inc/IncrementalDefaultImpl.scala # internal/incrementalcompiler-core/src/main/scala/sbt/internal/inc/IncrementalNameHashing.scala # internal/incrementalcompiler-core/src/main/scala/sbt/internal/inc/MemberRefInvalidator.scala # internal/incrementalcompiler-core/src/main/scala/sbt/internal/inc/Relations.scala # internal/incrementalcompiler-core/src/test/scala/sbt/inc/AnalysisTest.scala # internal/incrementalcompiler-core/src/test/scala/sbt/inc/TestCaseGenerators.scala # internal/incrementalcompiler-persist/src/main/scala/sbt/internal/inc/TextAnalysisFormat.scala # internal/incrementalcompiler-persist/src/main/scala/xsbt/api/SourceFormat.scala # internal/incrementalcompiler-persist/src/test/scala/sbt/inc/TextAnalysisFormatSpecification.scala
- Loading branch information