-
Improvement
-
Resolution: Fixed
-
Major
-
-
1.13+build.202109302210
See JENKINS-65988. Jenkins core is using Guava 11.0.1, which was released on January 9, 2012. Jenkins core would like to upgrade to Guava 30.1.1, which was released on March 19, 2021. Plugins must be prepared to be compatible with both Guava 11.0.1 and Guava 30.1.1 in advance of this core transition.
Stopwatch
In particular, this plugin has been identified as using the com.google.common.base.Stopwatch API, which has changed between Guava 11.0.1 and latest. The following methods exist in Guava 11.0.1 but not latest:
- Stopwatch#elapsedMillis()
- Stopwatch#elapsedTime(TimeUnit desiredUnit)
- Stopwatch#toString(int significantDigits)
To facilitate the Jenkins core transition, this plugin must be prepared and released such that it works with both Guava 11.0.1 and latest. Please consider migrating away from the Stopwatch API and using System#nanoTime directly.
Objects#toStringHelper
In particular, this plugin has been identified as using the com.google.common.base.Objects#toStringHelper method, which existed in Guava 11.0.1 but was removed in later versions.
To facilitate the Jenkins core transition, this plugin must be prepared and released such that it works with both Guava 11.0.1 and latest. The general recommendation is to migrate away from Objects#toStringHelper and rewrite the code to use the native functionality provided by the Java Platform. Another option is to use Apache Commons Lang 2.4 (which is bundled in Jenkins core) and its org.apache.commons.lang.builder.ToStringBuilder API.