Clone Tools
  • last updated a few seconds ago
Constraints: committers
Constraints: files
Constraints: dates
Fix cache-hit in flakiness detection performance test (#8482)

We don't want build cache hit in performance flakiness detection, however, previously the coordinator build resolves "flakiness-detection-commit" baseline to real commit id "5.3-commit-237a600", resulting in unexpected cache hit.

This PR fixes it by:

- On coordinator's side, pass "flakiness-detection-commit" as it is to worker build.

- On worker's side, worker build resolves "flakiness-detection-commit" to real commit version - this disables build cache.

Since `DetermineBaselines` is becoming more and more complex, this PR also adds a unit test for `DetermineBaselines` class.

Add a build step which reruns previous failed test classes (#8470)

This closes

We've been bitten by flaky tests for a long time. This PR adds an extra build step which reruns failed test classes again.

  1. … 3 more files in changeset.
Use '' as repository URL

Detect flaky performance test scenarios (#8367)

As part of , we want to detect flaky performance test with a weekly job, in order to know which scenarios are flaky.

  1. … 21 more files in changeset.
Replace :patchExternalModules with :kotlinCompilerEmbeddable

Only the kotlin-compiler-embeddable jar needs to be patched now.

Some patch actions were not needed anymore.

There's now a :kotlinCompilerEmbeddable subproject responsible for

building the patched kotlin-compiler-embeddable jar.

Only :kotlinDsl depends on it.

This greatly simplified the setup in the root project build script.

Various places required to be adjusted to account for the new setup.

The patching itself was rewritten to work in a streaming fashiong to

reduce i/o operations and disk usage. It was also moved up the

dependency tree.

All in all this should provide with a noticeable build speed up.

Signed-off-by: Paul Merlin <>

  1. … 8 more files in changeset.
gradlebuild.api-parameter-names-index precompiled plugin script

Signed-off-by: Paul Merlin <>

Prefer sourceSets over java.SourceSets

Signed-off-by: Paul Merlin <>

  1. … 3 more files in changeset.
Fix ParameterNamesIndex task corner case issue

where types of parameter names from the same package as the observed

method were unqualified

impact was misses when querying the index for parameter names

this is an opportunistic fix as the issue doesn't affect currently

considered methods

Signed-off-by: Paul Merlin <>

  1. … 1 more file in changeset.
Revert "Mark `compile` and `runtime` configurations as not resolvable"

The IDEA sync resolves the compile and runtime configurations and fails

if these cannot be resolved.

This reverts commit 15043188d7bce27d5536343cd82246ad3de9a73f.

Mark `compile` and `runtime` configurations as not resolvable

This doesn't fix anything, but allows us to capture some errors sooner,

in particular badly behaving plugins.

fix issue

  1. … 1 more file in changeset.
Add environment specific versions of test tasks

  1. … 10 more files in changeset.
Let each module jar contain an api parameter names index

for the GradleApiParameterNamesTransform to consume them

instead of regenerating it on each xform

this makes the build configuration back to normal speed

the :module:parameterNamesIndex task is cacheable but isn't that cheep

:apiMetadata:apiParameterNamesIndex is still required until the next

wrapper update

Signed-off-by: Paul Merlin <>

    • -0
    • +41
  1. … 10 more files in changeset.
Replace external modules binary dependencies by project dependencies

at this stage the build produces distributions that embed kotlin-dsl

built from subprojects instead of downloading artifacts produced by


Signed-off-by: Paul Merlin <>

  1. … 3 more files in changeset.
Let buildSrc kotlin code satisfy comment formating ktlint rule

Signed-off-by: Paul Merlin <>

  1. … 4 more files in changeset.
Disable fork point commit detection

Disable fork point commit detection

Fetch branch name from environment variable when necessary (#7947)

Previously we use JGit's branch, which might be not accurate.

Now we prefer environment variable over JGit.

  1. … 1 more file in changeset.
Build commit distribution when necessary (#7616)

This fixes and partially fixes .

In we supported running performance tests against fork point commit, now we want to make `5.1-commit-1a2b3c4d` a valid baseline version - users can specify this version in `--baselines` parameter:

- If commit baseline is set explicitly (like `5.1-commit-1a2b3c4d`), then build the corresponding commit distribution.

- Otherwise, if the current branch is not `master` or `release`, calculate the fork point commit then build the corresponding commit distribution.

This PR also publishes build scan to TeamCity build log and reuses `RemoteProject` logic and get rid of duplicate `git clone` code.

  1. … 3 more files in changeset.
Add comments to IDEA import workarounds in build scripts

  1. … 1 more file in changeset.
Revert "Do not add Gradle out folders as source folders to IDEA when using Sync"

This reverts commit 5d47f9be477247f5b972cbe051e94eb88adf5fda.

Do not add Gradle out folders as source folders to IDEA when using Sync

This is not needed, because IDEA adds the addition resource folders

automatically as additional dependencies to the corresponding modules.

See also:

Ignore issues with classfiles

Remove empty performanceReport task

Migrate Pegdown to flexmark (#7575)

This fixes

We were using Pegdown to render markdown to html, but Pegdown is already deprecated. We also see timeout frequently recently, so I think it's time to get rid of it. `flexmark` is officially recommended as Pegdown's successor.

  1. … 5 more files in changeset.
Fix deprecations in buildSrc

Signed-off-by: Paul Merlin <>

Run performance test against fork point commit (#7337)

This closes

Basically, the idea is, we should run feature branch performance tests against the distribution which is built from the "fork point commit". This can reduce the effects of performance regression which is not introduced by the feature branch.

Two tasks are added into the build and depended by performance task:

- `determineForkPoint`, run `git` command to determine the fork point commit. It's done during the execution phase, then it sets the commit for `buildForkPointDistribution` task.

- `buildForkPointDistribution`, try to build a distribution from the fork point commit.

`buildForkPointDistribution` is cachable so it only needs to run once. Its input is the fork point commit, the output is two files: a binary distribution and a tooling api jar. The generated binary distribution is used to run individual worker tests.

  1. … 10 more files in changeset.
Rework intTestImage and distributions and docs to use variants

  1. … 7 more files in changeset.
Fix gradle/gradle from using disallowed method

  1. … 2 more files in changeset.
Dogfood Kotlin DSL improvements in buildSrc build scripts

Signed-off-by: Paul Merlin <>

  1. … 15 more files in changeset.