Gradle Profiler Versions Save

A tool for gathering profiling and benchmarking information for Gradle builds

v0.20.0

11 months ago

🚀 New features and improvements

  • Add jmap output when creating a heap dump (#488) @big-guy
  • Measure local build cache size growth (#477) @lptr
  • Remove .db files for build cache (#478) @asodja
  • Add support for Android Studio Giraffe (2022.3) (#472) @asodja

🐛 Bug Fixes

  • Fix deadlock for Android Studio sync (#498) @asodja
  • Chrome traces: normalize file paths in build operation display names (#463) @jjohannes
  • Fix YourKit location for Windows (#457) @asodja
  • Fix detection and handling of Gradle Enterprise plugin (#455) @asodja

🚦 Internal changes

  • Fix :javadoc task (#501) @asodja
  • Revert reorganization back into a single project for most profiler fu… (#500) @big-guy
  • Update RELEASING.md with the information about snapshot versions (#494) @asodja
  • Update profiler.android-studio-setup.gradle.kts (#491) @liutikas
  • Refactor parts of gradle-profiler into multiple subprojects (#485) @big-guy
  • Update CodeQL GitHub actions (#489) @big-guy
  • Update to Gradle 8.1.1 (#486) @big-guy
  • Check ANDROID_HOME first, ANDROID_SDK_ROOT is deprecated (#481) @joshfriend
  • Run all tests on CI (#473) @asodja
  • Simplify Android Studio start logic (#475) @asodja
  • Add arch into agent requirements (#468) @blindpirate
  • Teamcity config changes (#466) @ljacomet

Prebuilt version available from here

Install Gradle profiler 0.20.0 with SDKMAN!:

> sdk install gradleprofiler 0.20.0

v0.19.0

1 year ago

🚀 New features and improvements

  • Allow JFR with OpenJDK 8 (#427) @shanman190
  • Include build operation occurrence counts in tracing information (#449) @alllex
  • Add support for Android Studio Chipmunk (2021.2), Dolphin (2021.3), Electric Eel (2022.1) and IntelliJ with Java17 runtime (#439) @asodja

🐛 Bug Fixes

  • Fix Android Studio syncs for Electric Eel Canary 10+ (#451) @asodja
  • Disable downloading of external annotations for Android Studio and IntelliJ (#445) @asodja
  • Fix parsing classpath for Bumblebee, Chipmunk and Dolphin on Linux and Windows (#442) @asodja

🚦 Internal changes

  • Fix build warnings after Gradle 7.5 update (#444) @nevack
  • Enable Gradle Configuration Caching (#441) @liutikas
  • Upgrade to latest gradle enterprise plugin (#440) @liutikas
  • Upgrade Gradle version to 7.5 (#438) @asodja
  • Bump minimist from 1.2.5 to 1.2.6 (#419) @dependabot

Prebuilt version available from here

Install Gradle profiler 0.19.0 with SDKMAN!:

> sdk install gradleprofiler 0.19.0

v0.18.0

2 years ago

🚀 New features and improvements

  • Add support for running YourKit on Windows (#409) @sambsnyd
  • Upgrade versions to support building and running on M1 macs (#407) @adammurdoch
  • Add support to run profiler with IntelliJ (#406) @asodja
  • Bump cached-path-relative from 1.0.2 to 1.1.0 (#397) @dependabot

🐛 Bug Fixes

  • Fix non-ABI and android resources mutators (#405) @gavra0

🚦 Internal changes

  • Simplify Android Studio download (#410) @wolfs
  • Automatically add issues to GH projects (#404) @wolfs
  • Fix flakiness of AsyncProfilerIntegrationTest and DifferentialFlameGraphIntegrationTest (#402) @asodja
  • Make Android Studio GradleBuildInvokers public (#394) @asodja

Prebuilt version available from here

Install Gradle profiler 0.18.0 with SDKMAN!:

> sdk install gradleprofiler 0.18.0

v0.17.0

2 years ago

🚀 New features and improvements

  • Add project dependency mutation (#368) @asodja
  • Implement automatic Android studio sync (#365) @asodja
  • Add option to run Android Studio sync with clean IDE cache (#370) @asodja
  • Add support for running Android Studio profiler with Linux and Windows (#372) @asodja
  • Add option to override Android Studio jvm args (#384) @asodja
  • Add mutation support for Compose (#357) @chao2zhang
  • Allow a scenario to run a tooling API action (#364) @adammurdoch
  • Add an apply-build-script-change-to mutator (#360) @adammurdoch
  • Update hardcoded Android Studio embedded Java path (#358) @anthonymonori
  • Publish artifact to Maven Central (#343) @wolfs
  • Support configuration client Gradle VM in CliGradleClient (#337) @blindpirate
  • Output Chrome trace file for every invocation (#385) @asodja
  • Produce json file for Chrome trace (#336) @wolfs
  • Create differential flame graphs for async-profiler or JFR (#329) @wolfs
  • Support capturing multiple events with async profiler (#328) @wolfs
  • Consolidate file layout for profiles and flame graphs (#326) @wolfs

🐛 Bug Fixes

  • Allow running tasks without "githubToken" (#345) @wolfs
  • Fix gc measurements for Android Studio benchmarks (#382) @asodja

🚦 Internal changes

  • Bump path-parse from 1.0.6 to 1.0.7 (#349) @dependabot
  • Automatically install Android SDK on CI (#386) @asodja
  • Use absolute paths for async-profiler output files (#383) @asodja
  • Android Studio benchmark internal changes (#366, #369, #374, #375, #379, #380) @asodja
  • Enable parallel builds for gradle-profiler (#376) @liutikas
  • CI build now always uses Java11 as JAVA_HOME (#367) @asodja
  • Update enforce-labels-action to 2.2.2 (#359) @asodja
  • Use version catalog instead of homegrown solution (#341) @wolfs
  • Use newer version of flightrecorder (#346) @wolfs
  • Add additional Metadata and publish Javadocs (#342) @wolfs
  • Sign artifacts for publishing (#340) @wolfs
  • Upgrade gradle to 7.1.1 (#339) @wolfs
  • Fix flamegraph.pl for graphs not created with stack diff (#387) @asodja
  • Generate differential diff in Java (#333) @wolfs
  • Bump elliptic from 6.5.3 to 6.5.4 (#324) @dependabot

Prebuilt version available from here

Install Gradle profiler 0.17.0 with SDKMAN!:

> sdk install gradleprofiler 0.17.0

v0.16.0

3 years ago

🚀 New features and improvements

  • Allow apply-cpp-change-to for other file extensions as well (#305) @carstenhag
  • Normalize stack frames with Lambda class names (#320) @big-guy
  • Use latest build scan plugin version by default (#307) @runningcode
  • Allow configuration cache state to be cleaned up between builds (#295) @bamboo
  • Add a profiler that takes a heap dump at the end of the build (#296) @adammurdoch
  • Gracefully ignore non-existent build operations (#284) @lptr

🐛 Bug Fixes

  • Fix pid instrumentation on Eclipse J9 (#297) @wolfs
  • Support passing JVM arguments with spaces to the Gradle daemon (#290) @wolfs

🚦 Internal changes

  • Update to the same version of javaparser as gradle/gradle (#321) @big-guy
  • Do not publish snapshots or alphas to SDKman (#322) @wolfs
  • Add operating system as input to test task (#311) @wolfs
  • Add a trigger build to run all tests (#312) @wolfs
  • Run some tests on Java 11 (#299) @wolfs
  • Android incremental build examples now use correct path (#292) @carstenhag

Prebuilt version available from here

Install Gradle profiler 0.16.0 with SDKMAN!:

> sdk install gradleprofiler 0.16.0

v0.15.0

3 years ago

🚀 New features and improvements

Improved HTML report

This release features a completely rewritten HTML report with many new features.

New HTML report

Those are the individual PRs:

  • Show benchmark title in HTML report (#264) @lptr
  • Show scenario title on graph labels (#263) @lptr
  • Choose baseline in HTML report (#258) @lptr
  • Add more details to HTML report (#256) @lptr
  • Better HTML report model (#254) @lptr
  • Show cross-hair in HTML report (#250) @lptr
  • Use an HTML template for the report (#242) @lptr
  • Upgrade to Chart.js 3.0.0-beta and improve typography (#255) @lptr
  • Report profiler version (#251) @lptr

Other improvements

  • Measure garbage collection time (#277) @lptr
  • Support generating flame graphs from multiple jfr files (#262) @blindpirate
  • Add support for profiling and benchmarking Android Studio sync (#259) @adammurdoch
  • Support passing toolHome to Maven/Buck/Bazel invoker (#252) @blindpirate
  • Add --help option (#248) @lptr

🐛 Bug Fixes

  • Reduce build operation measurement overhead (#249) @lptr
  • Fix PID instrumentation for configuration caching (#238) @wolfs

🚦 Internal changes

  • Add ToolingApiGradleClient.runOperation (#280) @wolfs
  • Use a BuildService to measure garbage collection time (#278) @lptr
  • Release automatically to SDKMAN (#276) @wolfs
  • Do not allow cleanup actions to run between builds with warm daemon (#274) @lptr
  • Remove all of the transforms cache dir (#273) @lptr
  • Automate tagging when publishing plugin (#271) @blindpirate
  • Extract publication logic to buildSrc (#267) @blindpirate
  • Allow CliInvoker redirect build log to file (#247) @blindpirate
  • Refactoring to prepare for improving support for Android Studio sync (#253) @adammurdoch

Prebuilt version available from here

Install Gradle profiler 0.15.0 with SDKMAN!:

> sdk install gradleprofiler 0.15.0

v0.14.0

3 years ago

Only contains internal changes. Please do not use.

v0.13.0

3 years ago

🚀 New features and improvements

  • Some usability improvements (#221) @adammurdoch
  • Add support for specifying number of iterations in a scenario definition (#208) @paragchandra
  • Support for async-profiler-heap

🐛 Bug Fixes

  • Fix YourKit memory profiling instructions (#223) @bamboo
  • Use canonical paths for temp-files (#222) @wolfs
  • Fix Kotlin non-abi-change mutator so it produces a non-abi-change for java consumers (#215) @eskatos

🚦 Internal changes

  • Use reproducible JARs for the packaged artifacts (#220) @wolfs
  • Use Gradle Enterprise conventions plugin (#218) @wolfs
  • Add release instructions (#207) @wolfs

Prebuilt version available from here

Install Gradle profiler 0.13.0 with SDKMAN!:

> sdk install gradleprofiler 0.13.0

v0.12.0

4 years ago

🚀 New features and improvements

  • Allow scenarios to use different commands than build (#197) @bmuskalla
  • Encourage the use of quotes around system-properties keys (#200) @bamboo
  • Update the gradle-profiler for Gradle 6.5-rc-1 and the configuration cache (#206) @eskatos

🚦 Internal changes

  • Upgrade to Gradle 6.3 (#199) @lptr

Prebuilt version available from here

Install Gradle profiler 0.12.0 with SDKMAN!:

> sdk install gradleprofiler 0.12.0

v0.11.0

4 years ago

🚀 New features and improvements

  • Support build scan profiling for Gradle 6.x (#190) @wolfs

🐛 Bug Fixes

  • Remove shaded gradle API imports (#193) @wolfs

Prebuilt version available from here