Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Normalize include paths when necessary

    • -1
    • +1
    ./DefaultSourceIncludesResolverTest.groovy
  1. … 1 more file in changeset.
Normalize include paths

Absolute paths which enter the virtual file system need to be

normalized.

    • -1
    • +1
    ./DefaultSourceIncludesResolverTest.groovy
  1. … 1 more file in changeset.
Address more review feedback

    • -1
    • +2
    ./IncrementalCompileProcessorTest.groovy
  1. … 1 more file in changeset.
Use a virtual file system everywhere

    • -3
    • +3
    ./DefaultSourceIncludesResolverTest.groovy
    • -0
    • +5
    ./IncrementalCompileProcessorTest.groovy
  1. … 15 more files in changeset.
Replace remaining usages of FileSystemSnapshotter

    • -6
    • +6
    ./IncrementalCompileProcessorTest.groovy
  1. … 22 more files in changeset.
Fix tests

    • -2
    • +2
    ./IncrementalNativeCompilerTest.groovy
  1. … 1 more file in changeset.
Remove some empty lines

    • -1
    • +0
    ./DefaultSourceIncludesResolverTest.groovy
Wrap the patternSet

Instead of using a strategy.

    • -2
    • +2
    ./DefaultSourceIncludesResolverTest.groovy
    • -2
    • +2
    ./IncrementalCompileProcessorTest.groovy
  1. … 35 more files in changeset.
Do not use PatternSet in snapshots package

Use a pluggable type instead.

    • -1
    • +2
    ./DefaultSourceIncludesResolverTest.groovy
    • -2
    • +2
    ./IncrementalCompileProcessorTest.groovy
  1. … 41 more files in changeset.
Spelling (#8199)

Fix several spelling issues.

    • -1
    • +1
    ./sourceparser/PreprocessingReaderTest.groovy
  1. … 36 more files in changeset.
spelling: resolvable

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

    • -12
    • +12
    ./DefaultSourceIncludesResolverTest.groovy
    • -4
    • +4
    ./sourceparser/IncludeDirectivesSerializerTest.groovy
    • -2
    • +2
    ./sourceparser/RegexBackedCSourceParserTest.groovy
  1. … 7 more files in changeset.
Change C++ incremental compile to take preprocessor macros defined on the compile task into account when resolving macro includes.

    • -2
    • +2
    ./DefaultSourceIncludesParserTest.groovy
    • -5
    • +4
    ./IncrementalCompileProcessorTest.groovy
    • -3
    • +3
    ./sourceparser/DefaultSourceIncludesTest.groovy
    • -6
    • +6
    ./sourceparser/IncludeDirectivesSerializerTest.groovy
    • -43
    • +0
    ./sourceparser/IncludeWithSimpleExpressionTest.groovy
    • -0
    • +35
    ./sourceparser/TestIncludeParser.groovy
  1. … 14 more files in changeset.
Move snapshotting files to own package

    • -1
    • +1
    ./DefaultSourceIncludesResolverTest.groovy
    • -1
    • +1
    ./IncrementalCompileProcessorTest.groovy
  1. … 132 more files in changeset.
Merge file and directory cache

Instead of using two different caches for file and directory snapshots,

there is only one. We now cache the metadata of individual files

separately.

    • -1
    • +1
    ./IncrementalCompileProcessorTest.groovy
  1. … 32 more files in changeset.
Rename get{ContentHash -> Hash}

    • -1
    • +1
    ./IncrementalCompileProcessorTest.groovy
  1. … 21 more files in changeset.
Separate fingerprints and snapshots (#5927)

This de-tangles FileContentSnapshot (and removes it) from NormalizedFileSnapshots.

Also it makes clear that only PhysicalSnapshots can be used to check if a file changed the timestamp.

    • -9
    • +1
    ./IncrementalCompileProcessorTest.groovy
  1. … 87 more files in changeset.
Retain hierarchical structure in file system mirror (#5844)

The `FileSystemSnapshotter` now returns a root for each snapshotted file, possible containing all the children in hierarchy as the directory would no the file system.

This PR also contains some performance related changes:

- Stop interning path segments: That was only necessary when we stored the same path segments in many RelativePath objects. We don't do this any more, so interning should not be necessary and make things faster.

Actually, up-to-date assemble on largeMonolithicJavaProject (parallel false)

is about 40ms faster with this change (2.5 %).

- Don't use IndexedNormalizedFileSnapshots: It seems like there are no real performance gains by using IndexedNormalizedFileSnapshots.

    • -5
    • +18
    ./IncrementalCompileProcessorTest.groovy
  1. … 131 more files in changeset.
Split file content caches into mutable and immutable files

Store content information about immutable files in the user home.

This means that things like external dependencies or the gradleApi

jar will only be analyzed once and that this analysis can then be

reused by other builds. This should improve build times after clean

checkouts and will also speed up our own integration tests.

    • -6
    • +6
    ./sourceparser/IncludeDirectivesSerializerTest.groovy
  1. … 15 more files in changeset.
Fix unit test

    • -0
    • +2
    ./IncrementalNativeCompilerTest.groovy
Improve performance of resolving C++ include files from the include path.

    • -4
    • +4
    ./CompilationStateSerializerTest.groovy
  1. … 4 more files in changeset.
Improve performance of C++ compile analysis by attempting to reuse the include file graph of each source file from the last time the compile task ran. The graph for a source file is reused when nothing in that graph has changed and each edge in the graph resolves to the same file as last time. When the graph for a source file can be reused, skip the more expensive calculation of the graph for the source file.

    • -5
    • +5
    ./CompilationStateSerializerTest.groovy
    • -56
    • +108
    ./IncrementalCompileProcessorTest.groovy
  1. … 10 more files in changeset.
Fix issue with header cycle and relative paths

    • -1
    • +1
    ./IncrementalCompileProcessorTest.groovy
  1. … 2 more files in changeset.
Fix issue with header cycle and relative paths

    • -1
    • +1
    ./IncrementalCompileProcessorTest.groovy
  1. … 2 more files in changeset.
Convert dependency management related subprojects to kotlin-dsl (#4498)

This PR also fixes the dependency declarations wrt. api/impl separation

for these and related projects.

It fixes two places in production/test code where dependencies

leaked into the classpath and the wrong classes where imported.

    • -1
    • +1
    ./sourceparser/RegexBackedCSourceParserTest.groovy
  1. … 21 more files in changeset.
Revert unecessary changes

    • -0
    • +1
    ./sourceparser/DefaultSourceIncludesTest.groovy
    • -2
    • +2
    ./sourceparser/RegexBackedCSourceParserTest.groovy
  1. … 1 more file in changeset.
Move indexing logic of macros inside `DefaultIncludeDirectives`

    • -26
    • +10
    ./DefaultSourceIncludesResolverTest.groovy
    • -3
    • +2
    ./IncrementalCompileProcessorTest.groovy
    • -3
    • +1
    ./sourceparser/DefaultSourceIncludesTest.groovy
    • -15
    • +6
    ./sourceparser/IncludeDirectivesSerializerTest.groovy
    • -2
    • +2
    ./sourceparser/RegexBackedCSourceParserTest.groovy
  1. … 6 more files in changeset.
Create lookup table for macros and macro functions

    • -6
    • +26
    ./DefaultSourceIncludesResolverTest.groovy
    • -2
    • +3
    ./IncrementalCompileProcessorTest.groovy
    • -1
    • +2
    ./sourceparser/DefaultSourceIncludesTest.groovy
    • -6
    • +15
    ./sourceparser/IncludeDirectivesSerializerTest.groovy
    • -4
    • +5
    ./sourceparser/RegexBackedCSourceParserTest.groovy
  1. … 5 more files in changeset.
Fix unit test

    • -1
    • +2
    ./IncrementalCompileProcessorTest.groovy
Reworked C/C++ include file analysis to better handle large dependency graphs by generating less garbage and fewer intermediate results.

    • -1
    • +1
    ./DefaultSourceIncludesResolverTest.groovy
  1. … 3 more files in changeset.
Don't track the candidate header locations during C/C++ header dependency analysis, as these are no longer used as inputs to the compile tasks. Only the resolved headers are used as inputs.

    • -90
    • +33
    ./DefaultSourceIncludesResolverTest.groovy
    • -2
    • +7
    ./IncrementalCompileProcessorTest.groovy
  1. … 5 more files in changeset.