From 62ed30e55a3791e30d4bd1eb94aacb338a00f152 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 20 Feb 2019 20:51:35 -0500 Subject: [PATCH 01/32] Suppress warnings for advapi32 --- core/src/main/java/hudson/util/jna/Advapi32.java | 1 + 1 file changed, 1 insertion(+) diff --git a/core/src/main/java/hudson/util/jna/Advapi32.java b/core/src/main/java/hudson/util/jna/Advapi32.java index fd929d963b..bef26018ac 100644 --- a/core/src/main/java/hudson/util/jna/Advapi32.java +++ b/core/src/main/java/hudson/util/jna/Advapi32.java @@ -30,6 +30,7 @@ import java.util.List; * * @author TB */ +@SuppressWarnings("UnusedReturnValue") public interface Advapi32 extends StdCallLibrary { Advapi32 INSTANCE = (Advapi32) Native.loadLibrary("Advapi32", Advapi32.class, Options.UNICODE_OPTIONS); From 4469f157182e97b6c742ba6d107566be7d3c1591 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 20 Feb 2019 20:53:09 -0500 Subject: [PATCH 02/32] !...anyMatch() -> noneMatch() --- core/src/main/java/jenkins/util/VirtualFile.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/jenkins/util/VirtualFile.java b/core/src/main/java/jenkins/util/VirtualFile.java index 9d08782198..a54dd3b5dc 100644 --- a/core/src/main/java/jenkins/util/VirtualFile.java +++ b/core/src/main/java/jenkins/util/VirtualFile.java @@ -233,7 +233,7 @@ public abstract class VirtualFile implements Comparable, Serializab } return r.stream().filter(p -> { TokenizedPath path = new TokenizedPath(p.replace('/', File.separatorChar)); - return includePatterns.stream().anyMatch(patt -> patt.matchPath(path, true)) && !excludePatterns.stream().anyMatch(patt -> patt.matchPath(path, true)); + return includePatterns.stream().anyMatch(patt -> patt.matchPath(path, true)) && excludePatterns.stream().noneMatch(patt -> patt.matchPath(path, true)); }).collect(Collectors.toSet()); } private static final class CollectFiles extends MasterToSlaveCallable, IOException> { From 893e5c089190ffd904988127b930ea680df16a26 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 20 Feb 2019 20:55:26 -0500 Subject: [PATCH 03/32] Remove unused imports --- core/src/main/java/hudson/ExtensionFinder.java | 1 - core/src/main/java/hudson/ExtensionPoint.java | 1 - core/src/main/java/hudson/FileSystemProvisioner.java | 1 - core/src/main/java/hudson/Util.java | 1 - core/src/main/java/hudson/cli/handlers/package-info.java | 1 - .../hudson/init/impl/InstallUncaughtExceptionHandler.java | 4 ---- core/src/main/java/hudson/init/package-info.java | 1 - .../main/java/hudson/lifecycle/WindowsInstallerLink.java | 1 - core/src/main/java/hudson/logging/LogRecorderManager.java | 1 - core/src/main/java/hudson/model/AbstractCIBase.java | 1 - core/src/main/java/hudson/model/AbstractItem.java | 1 - core/src/main/java/hudson/model/Cause.java | 1 - core/src/main/java/hudson/model/Computer.java | 1 - core/src/main/java/hudson/model/Descriptor.java | 1 - core/src/main/java/hudson/model/DownloadService.java | 1 - core/src/main/java/hudson/model/JDK.java | 1 - core/src/main/java/hudson/model/Job.java | 2 -- core/src/main/java/hudson/model/LargeText.java | 1 - core/src/main/java/hudson/model/MyViewsProperty.java | 2 -- core/src/main/java/hudson/model/Node.java | 1 - core/src/main/java/hudson/model/Run.java | 2 -- core/src/main/java/hudson/model/RunParameterDefinition.java | 3 --- .../main/java/hudson/model/TransientUserActionFactory.java | 2 +- core/src/main/java/hudson/model/UpdateCenter.java | 1 - core/src/main/java/hudson/model/User.java | 4 ---- core/src/main/java/hudson/model/UserIdMigrator.java | 1 - core/src/main/java/hudson/model/ViewDescriptor.java | 4 +--- core/src/main/java/hudson/model/ViewGroupMixIn.java | 2 +- core/src/main/java/hudson/model/listeners/ItemListener.java | 2 -- core/src/main/java/hudson/model/listeners/RunListener.java | 2 -- core/src/main/java/hudson/security/ACLContext.java | 1 - .../main/java/hudson/security/AuthorizationStrategy.java | 1 - .../java/hudson/security/BasicAuthenticationFilter.java | 1 - .../java/hudson/security/GlobalSecurityConfiguration.java | 1 - .../hudson/slaves/EnvironmentVariablesNodeProperty.java | 1 - .../main/java/hudson/tasks/BuildStepCompatibilityLayer.java | 2 -- core/src/main/java/hudson/triggers/Trigger.java | 1 - core/src/main/java/hudson/util/HttpResponses.java | 1 - core/src/main/java/hudson/util/Iterators.java | 1 - core/src/main/java/hudson/util/LRUStringConverter.java | 2 -- .../main/java/hudson/util/RobustReflectionConverter.java | 1 - .../java/hudson/util/io/RewindableFileOutputStream.java | 1 - core/src/main/java/hudson/util/io/TarArchiver.java | 1 - core/src/main/java/hudson/util/io/ZipArchiver.java | 1 - core/src/main/java/hudson/widgets/BuildHistoryWidget.java | 1 - core/src/main/java/jenkins/AgentProtocol.java | 2 +- core/src/main/java/jenkins/PluginSubtypeMarker.java | 2 -- core/src/main/java/jenkins/diagnosis/HsErrPidList.java | 6 ++---- core/src/main/java/jenkins/install/InstallUtil.java | 1 - .../jenkins/management/AdministrativeMonitorsDecorator.java | 4 ---- core/src/main/java/jenkins/model/Uptime.java | 1 - .../java/jenkins/model/identity/IdentityRootAction.java | 1 - .../java/jenkins/model/queue/AsynchronousExecution.java | 1 - core/src/main/java/jenkins/scm/RunWithSCM.java | 1 - core/src/main/java/jenkins/security/ApiTokenProperty.java | 1 - .../src/main/java/jenkins/security/BasicApiTokenHelper.java | 2 -- .../main/java/jenkins/security/CryptoConfidentialKey.java | 2 -- .../jenkins/security/ImpersonatingUserDetailsService.java | 2 -- .../main/java/jenkins/security/MasterToSlaveCallable.java | 2 -- .../security/QueueItemAuthenticatorConfiguration.java | 1 - core/src/main/java/jenkins/security/SecurityListener.java | 1 - .../main/java/jenkins/slaves/JnlpSlaveAgentProtocol.java | 2 -- .../main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java | 6 ------ .../main/java/jenkins/telemetry/impl/StaplerDispatches.java | 1 - core/src/main/java/jenkins/util/AntClassLoader.java | 1 - core/src/main/java/jenkins/util/JSONSignatureValidator.java | 1 - core/src/main/java/jenkins/util/ProgressiveRendering.java | 1 - core/src/main/java/jenkins/util/VirtualFile.java | 1 - core/src/main/java/jenkins/util/io/FileBoolean.java | 1 - core/src/main/java/jenkins/util/xml/XMLUtils.java | 2 -- 70 files changed, 6 insertions(+), 105 deletions(-) diff --git a/core/src/main/java/hudson/ExtensionFinder.java b/core/src/main/java/hudson/ExtensionFinder.java index 1ff0638c10..9e9c18f63b 100644 --- a/core/src/main/java/hudson/ExtensionFinder.java +++ b/core/src/main/java/hudson/ExtensionFinder.java @@ -42,7 +42,6 @@ import com.google.inject.spi.ProvisionListener; import hudson.init.InitMilestone; import hudson.model.Descriptor; import hudson.model.Hudson; -import hudson.util.ReflectionUtils; import jenkins.ExtensionComponentSet; import jenkins.ExtensionFilter; import jenkins.ExtensionRefreshException; diff --git a/core/src/main/java/hudson/ExtensionPoint.java b/core/src/main/java/hudson/ExtensionPoint.java index e544ed7576..f49a5a096c 100644 --- a/core/src/main/java/hudson/ExtensionPoint.java +++ b/core/src/main/java/hudson/ExtensionPoint.java @@ -29,7 +29,6 @@ import static java.lang.annotation.ElementType.TYPE; import java.lang.annotation.Retention; import static java.lang.annotation.RetentionPolicy.RUNTIME; import java.lang.annotation.Target; -import jenkins.util.io.OnMaster; /** * Marker interface that designates extensible components diff --git a/core/src/main/java/hudson/FileSystemProvisioner.java b/core/src/main/java/hudson/FileSystemProvisioner.java index 13f55b7370..901ff79a6a 100644 --- a/core/src/main/java/hudson/FileSystemProvisioner.java +++ b/core/src/main/java/hudson/FileSystemProvisioner.java @@ -40,7 +40,6 @@ import org.jenkinsci.Symbol; import java.io.BufferedOutputStream; import java.io.File; -import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; diff --git a/core/src/main/java/hudson/Util.java b/core/src/main/java/hudson/Util.java index 1492f36451..64ebe02eb7 100644 --- a/core/src/main/java/hudson/Util.java +++ b/core/src/main/java/hudson/Util.java @@ -91,7 +91,6 @@ import javax.crypto.SecretKey; import javax.crypto.spec.SecretKeySpec; import org.apache.commons.io.FileUtils; -import org.kohsuke.stapler.Ancestor; import org.kohsuke.stapler.StaplerRequest; /** diff --git a/core/src/main/java/hudson/cli/handlers/package-info.java b/core/src/main/java/hudson/cli/handlers/package-info.java index ee7dee536f..65a4bb7adf 100644 --- a/core/src/main/java/hudson/cli/handlers/package-info.java +++ b/core/src/main/java/hudson/cli/handlers/package-info.java @@ -3,4 +3,3 @@ */ package hudson.cli.handlers; -import org.kohsuke.args4j.spi.OptionHandler; \ No newline at end of file diff --git a/core/src/main/java/hudson/init/impl/InstallUncaughtExceptionHandler.java b/core/src/main/java/hudson/init/impl/InstallUncaughtExceptionHandler.java index a092a5123a..454af18cb3 100644 --- a/core/src/main/java/hudson/init/impl/InstallUncaughtExceptionHandler.java +++ b/core/src/main/java/hudson/init/impl/InstallUncaughtExceptionHandler.java @@ -5,12 +5,8 @@ import java.io.EOFException; import jenkins.model.Jenkins; import org.kohsuke.stapler.WebApp; import org.kohsuke.stapler.compression.CompressionFilter; -import org.kohsuke.stapler.compression.UncaughtExceptionHandler; -import javax.servlet.ServletContext; import javax.servlet.ServletException; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.logging.Level; import java.util.logging.Logger; diff --git a/core/src/main/java/hudson/init/package-info.java b/core/src/main/java/hudson/init/package-info.java index 5f66063ca3..57dbab8fd5 100644 --- a/core/src/main/java/hudson/init/package-info.java +++ b/core/src/main/java/hudson/init/package-info.java @@ -44,4 +44,3 @@ */ package hudson.init; -import org.jvnet.hudson.reactor.Task; \ No newline at end of file diff --git a/core/src/main/java/hudson/lifecycle/WindowsInstallerLink.java b/core/src/main/java/hudson/lifecycle/WindowsInstallerLink.java index b218d59640..64bd857be7 100644 --- a/core/src/main/java/hudson/lifecycle/WindowsInstallerLink.java +++ b/core/src/main/java/hudson/lifecycle/WindowsInstallerLink.java @@ -54,7 +54,6 @@ import org.kohsuke.stapler.interceptor.RequirePOST; import javax.servlet.ServletException; import java.io.File; -import java.io.FileInputStream; import java.io.IOException; import java.util.logging.Logger; import java.util.logging.Level; diff --git a/core/src/main/java/hudson/logging/LogRecorderManager.java b/core/src/main/java/hudson/logging/LogRecorderManager.java index 765253341b..78c24c2a2e 100644 --- a/core/src/main/java/hudson/logging/LogRecorderManager.java +++ b/core/src/main/java/hudson/logging/LogRecorderManager.java @@ -25,7 +25,6 @@ package hudson.logging; import hudson.FeedAdapter; import hudson.Functions; -import hudson.PluginManager; import hudson.init.Initializer; import static hudson.init.InitMilestone.PLUGINS_PREPARED; import hudson.model.AbstractModelObject; diff --git a/core/src/main/java/hudson/model/AbstractCIBase.java b/core/src/main/java/hudson/model/AbstractCIBase.java index d82afd6488..073099e548 100644 --- a/core/src/main/java/hudson/model/AbstractCIBase.java +++ b/core/src/main/java/hudson/model/AbstractCIBase.java @@ -39,7 +39,6 @@ import java.util.concurrent.CopyOnWriteArraySet; import java.util.logging.Level; import java.util.logging.Logger; import javax.annotation.CheckForNull; -import javax.annotation.Nonnull; import jenkins.model.Configuration; diff --git a/core/src/main/java/hudson/model/AbstractItem.java b/core/src/main/java/hudson/model/AbstractItem.java index 1374429381..b52c646a74 100644 --- a/core/src/main/java/hudson/model/AbstractItem.java +++ b/core/src/main/java/hudson/model/AbstractItem.java @@ -38,7 +38,6 @@ import hudson.model.queue.Tasks; import hudson.model.queue.WorkUnit; import hudson.security.ACLContext; import hudson.security.AccessControlled; -import hudson.security.Permission; import hudson.security.ACL; import hudson.util.AlternativeUiTextProvider; import hudson.util.AlternativeUiTextProvider.Message; diff --git a/core/src/main/java/hudson/model/Cause.java b/core/src/main/java/hudson/model/Cause.java index c0286bc55a..d05cd867b5 100644 --- a/core/src/main/java/hudson/model/Cause.java +++ b/core/src/main/java/hudson/model/Cause.java @@ -25,7 +25,6 @@ package hudson.model; import java.util.ArrayList; import java.util.Arrays; -import java.util.Collections; import java.util.List; import hudson.console.ModelHyperlinkNote; diff --git a/core/src/main/java/hudson/model/Computer.java b/core/src/main/java/hudson/model/Computer.java index 3a9fde57dc..e4c3a661b8 100644 --- a/core/src/main/java/hudson/model/Computer.java +++ b/core/src/main/java/hudson/model/Computer.java @@ -31,7 +31,6 @@ import hudson.Extension; import hudson.Launcher.ProcStarter; import hudson.slaves.Cloud; import jenkins.security.stapler.StaplerDispatchable; -import jenkins.util.SystemProperties; import hudson.Util; import hudson.cli.declarative.CLIResolver; import hudson.console.AnnotatedLargeText; diff --git a/core/src/main/java/hudson/model/Descriptor.java b/core/src/main/java/hudson/model/Descriptor.java index b7fc8097e8..3d941cd058 100644 --- a/core/src/main/java/hudson/model/Descriptor.java +++ b/core/src/main/java/hudson/model/Descriptor.java @@ -53,7 +53,6 @@ import org.apache.commons.io.IOUtils; import static hudson.util.QuotedStringTokenizer.*; import static javax.servlet.http.HttpServletResponse.SC_NOT_FOUND; -import javax.annotation.PostConstruct; import javax.servlet.ServletException; import javax.servlet.RequestDispatcher; import java.io.File; diff --git a/core/src/main/java/hudson/model/DownloadService.java b/core/src/main/java/hudson/model/DownloadService.java index ada651bbe4..27510ec1a4 100644 --- a/core/src/main/java/hudson/model/DownloadService.java +++ b/core/src/main/java/hudson/model/DownloadService.java @@ -50,7 +50,6 @@ import java.util.logging.Level; import java.util.logging.Logger; import jenkins.model.DownloadSettings; import jenkins.model.Jenkins; -import jenkins.util.JSONSignatureValidator; import net.sf.json.JSONException; import net.sf.json.JSONObject; import org.apache.commons.io.IOUtils; diff --git a/core/src/main/java/hudson/model/JDK.java b/core/src/main/java/hudson/model/JDK.java index abcb1a9f74..043a5f392f 100644 --- a/core/src/main/java/hudson/model/JDK.java +++ b/core/src/main/java/hudson/model/JDK.java @@ -39,7 +39,6 @@ import hudson.util.XStream2; import java.io.File; import java.io.IOException; import java.lang.reflect.Constructor; -import java.lang.reflect.InvocationTargetException; import java.util.Map; import java.util.List; import java.util.Arrays; diff --git a/core/src/main/java/hudson/model/Job.java b/core/src/main/java/hudson/model/Job.java index f8510221c6..047e90a85f 100644 --- a/core/src/main/java/hudson/model/Job.java +++ b/core/src/main/java/hudson/model/Job.java @@ -29,7 +29,6 @@ import hudson.EnvVars; import hudson.Extension; import hudson.ExtensionPoint; import hudson.FeedAdapter; -import hudson.FilePath; import hudson.PermalinkList; import hudson.Util; import hudson.cli.declarative.CLIResolver; @@ -67,7 +66,6 @@ import java.awt.Color; import java.awt.Paint; import java.io.File; import java.io.IOException; -import java.nio.file.Files; import java.util.ArrayList; import java.util.Calendar; import java.util.Collection; diff --git a/core/src/main/java/hudson/model/LargeText.java b/core/src/main/java/hudson/model/LargeText.java index 705c0242ef..0d63147adc 100644 --- a/core/src/main/java/hudson/model/LargeText.java +++ b/core/src/main/java/hudson/model/LargeText.java @@ -26,7 +26,6 @@ package hudson.model; import hudson.util.ByteBuffer; import hudson.util.CharSpool; import hudson.util.LineEndNormalizingWriter; -import org.apache.commons.fileupload.util.Closeable; import org.kohsuke.stapler.StaplerRequest; import org.kohsuke.stapler.StaplerResponse; import org.kohsuke.stapler.framework.io.WriterOutputStream; diff --git a/core/src/main/java/hudson/model/MyViewsProperty.java b/core/src/main/java/hudson/model/MyViewsProperty.java index c7852d926d..b4b246e2ca 100644 --- a/core/src/main/java/hudson/model/MyViewsProperty.java +++ b/core/src/main/java/hudson/model/MyViewsProperty.java @@ -27,7 +27,6 @@ import hudson.Extension; import hudson.Util; import hudson.model.Descriptor.FormException; import hudson.security.ACL; -import hudson.security.Permission; import hudson.util.FormValidation; import hudson.views.MyViewsTabBar; import hudson.views.ViewsTabBar; @@ -45,7 +44,6 @@ import javax.servlet.ServletException; import jenkins.model.Jenkins; import net.sf.json.JSONObject; -import org.acegisecurity.AccessDeniedException; import org.jenkinsci.Symbol; import org.kohsuke.accmod.Restricted; import org.kohsuke.accmod.restrictions.NoExternalUse; diff --git a/core/src/main/java/hudson/model/Node.java b/core/src/main/java/hudson/model/Node.java index c61ee7abc1..d06021406a 100644 --- a/core/src/main/java/hudson/model/Node.java +++ b/core/src/main/java/hudson/model/Node.java @@ -39,7 +39,6 @@ import hudson.remoting.Callable; import hudson.remoting.VirtualChannel; import hudson.security.ACL; import hudson.security.AccessControlled; -import hudson.security.Permission; import hudson.slaves.Cloud; import hudson.slaves.ComputerListener; import hudson.slaves.NodeDescriptor; diff --git a/core/src/main/java/hudson/model/Run.java b/core/src/main/java/hudson/model/Run.java index 57c312cd61..7fd26f2544 100644 --- a/core/src/main/java/hudson/model/Run.java +++ b/core/src/main/java/hudson/model/Run.java @@ -95,7 +95,6 @@ import java.util.Map; import java.util.Set; import java.util.logging.Level; import static java.util.logging.Level.*; -import static javax.servlet.http.HttpServletResponse.SC_NOT_FOUND; import java.util.logging.Logger; import javax.annotation.CheckForNull; @@ -125,7 +124,6 @@ import org.apache.commons.lang.ArrayUtils; import org.kohsuke.accmod.Restricted; import org.kohsuke.accmod.restrictions.NoExternalUse; import org.kohsuke.stapler.HttpResponse; -import org.kohsuke.stapler.HttpResponses; import org.kohsuke.stapler.QueryParameter; import org.kohsuke.stapler.Stapler; import org.kohsuke.stapler.StaplerProxy; diff --git a/core/src/main/java/hudson/model/RunParameterDefinition.java b/core/src/main/java/hudson/model/RunParameterDefinition.java index 7a33e5c3f1..c4b6c6a73e 100644 --- a/core/src/main/java/hudson/model/RunParameterDefinition.java +++ b/core/src/main/java/hudson/model/RunParameterDefinition.java @@ -23,9 +23,6 @@ */ package hudson.model; -import static java.util.logging.Level.WARNING; - -import java.util.logging.Level; import java.util.logging.Logger; import jenkins.model.Jenkins; import net.sf.json.JSONObject; diff --git a/core/src/main/java/hudson/model/TransientUserActionFactory.java b/core/src/main/java/hudson/model/TransientUserActionFactory.java index d45aebdfbf..d042afb490 100644 --- a/core/src/main/java/hudson/model/TransientUserActionFactory.java +++ b/core/src/main/java/hudson/model/TransientUserActionFactory.java @@ -26,7 +26,7 @@ package hudson.model; import hudson.Extension; import hudson.ExtensionList; import hudson.ExtensionPoint; -import jenkins.model.Jenkins; + import java.util.Collection; import java.util.Collections; diff --git a/core/src/main/java/hudson/model/UpdateCenter.java b/core/src/main/java/hudson/model/UpdateCenter.java index 88ea713426..bfdacecddf 100644 --- a/core/src/main/java/hudson/model/UpdateCenter.java +++ b/core/src/main/java/hudson/model/UpdateCenter.java @@ -63,7 +63,6 @@ import jenkins.RestartRequiredException; import jenkins.install.InstallUtil; import jenkins.model.Jenkins; import jenkins.util.io.OnMaster; -import jenkins.util.java.JavaUtils; import net.sf.json.JSONObject; import org.acegisecurity.Authentication; diff --git a/core/src/main/java/hudson/model/User.java b/core/src/main/java/hudson/model/User.java index 10cdc71ffc..9c09bb94d0 100644 --- a/core/src/main/java/hudson/model/User.java +++ b/core/src/main/java/hudson/model/User.java @@ -87,8 +87,6 @@ import org.apache.commons.lang.StringUtils; import org.jenkinsci.Symbol; import org.kohsuke.accmod.Restricted; import org.kohsuke.accmod.restrictions.NoExternalUse; -import org.kohsuke.stapler.HttpResponses; -import org.kohsuke.stapler.Stapler; import org.kohsuke.stapler.StaplerProxy; import org.kohsuke.stapler.StaplerRequest; import org.kohsuke.stapler.StaplerResponse; @@ -97,8 +95,6 @@ import org.kohsuke.stapler.export.ExportedBean; import org.kohsuke.stapler.interceptor.RequirePOST; import org.springframework.dao.DataAccessException; -import static javax.servlet.http.HttpServletResponse.SC_NOT_FOUND; - /** * Represents a user. * diff --git a/core/src/main/java/hudson/model/UserIdMigrator.java b/core/src/main/java/hudson/model/UserIdMigrator.java index f5b6b2f43f..d16a034ecc 100644 --- a/core/src/main/java/hudson/model/UserIdMigrator.java +++ b/core/src/main/java/hudson/model/UserIdMigrator.java @@ -29,7 +29,6 @@ import org.kohsuke.accmod.restrictions.NoExternalUse; import java.io.File; import java.io.IOException; -import java.nio.file.CopyOption; import java.nio.file.Files; import java.nio.file.StandardCopyOption; import java.util.HashMap; diff --git a/core/src/main/java/hudson/model/ViewDescriptor.java b/core/src/main/java/hudson/model/ViewDescriptor.java index 933ad74dcb..fe3ced2bda 100644 --- a/core/src/main/java/hudson/model/ViewDescriptor.java +++ b/core/src/main/java/hudson/model/ViewDescriptor.java @@ -27,8 +27,7 @@ import hudson.util.FormValidation; import hudson.views.ListViewColumn; import hudson.views.ListViewColumnDescriptor; import hudson.views.ViewJobFilter; -import java.lang.reflect.ParameterizedType; -import java.lang.reflect.Type; + import java.util.Iterator; import java.util.List; import javax.annotation.CheckForNull; @@ -36,7 +35,6 @@ import javax.annotation.Nonnull; import jenkins.model.DirectlyModifiableTopLevelItemGroup; import jenkins.model.Jenkins; import org.apache.commons.lang.StringUtils; -import org.jvnet.tiger_types.Types; import org.kohsuke.accmod.Restricted; import org.kohsuke.accmod.restrictions.DoNotUse; import org.kohsuke.stapler.AncestorInPath; diff --git a/core/src/main/java/hudson/model/ViewGroupMixIn.java b/core/src/main/java/hudson/model/ViewGroupMixIn.java index 313e07eceb..6547a8c5ae 100644 --- a/core/src/main/java/hudson/model/ViewGroupMixIn.java +++ b/core/src/main/java/hudson/model/ViewGroupMixIn.java @@ -27,7 +27,7 @@ import hudson.model.ItemGroupMixIn; import hudson.model.View; import hudson.model.ViewGroup; import java.util.Locale; -import java.util.logging.Level; + import org.kohsuke.stapler.export.Exported; import java.io.IOException; diff --git a/core/src/main/java/hudson/model/listeners/ItemListener.java b/core/src/main/java/hudson/model/listeners/ItemListener.java index f72a8acff3..20be92f1c2 100644 --- a/core/src/main/java/hudson/model/listeners/ItemListener.java +++ b/core/src/main/java/hudson/model/listeners/ItemListener.java @@ -24,7 +24,6 @@ package hudson.model.listeners; import com.google.common.base.Function; -import hudson.AbortException; import hudson.ExtensionPoint; import hudson.ExtensionList; import hudson.Extension; @@ -35,7 +34,6 @@ import hudson.model.Items; import hudson.security.ACL; import java.util.logging.Level; import java.util.logging.Logger; -import org.acegisecurity.AccessDeniedException; /** * Receives notifications about CRUD operations of {@link Item}. diff --git a/core/src/main/java/hudson/model/listeners/RunListener.java b/core/src/main/java/hudson/model/listeners/RunListener.java index 4c9a58434a..1803386d2a 100644 --- a/core/src/main/java/hudson/model/listeners/RunListener.java +++ b/core/src/main/java/hudson/model/listeners/RunListener.java @@ -28,12 +28,10 @@ import hudson.ExtensionListView; import hudson.Extension; import hudson.ExtensionList; import hudson.FilePath; -import hudson.Functions; import hudson.Launcher; import hudson.model.AbstractBuild; import hudson.model.BuildListener; import hudson.model.Environment; -import hudson.model.Job; import hudson.model.JobProperty; import hudson.model.Run; import hudson.model.Run.RunnerAbortedException; diff --git a/core/src/main/java/hudson/security/ACLContext.java b/core/src/main/java/hudson/security/ACLContext.java index 95c3337692..aa8455737b 100644 --- a/core/src/main/java/hudson/security/ACLContext.java +++ b/core/src/main/java/hudson/security/ACLContext.java @@ -23,7 +23,6 @@ */ package hudson.security; -import javax.annotation.CheckForNull; import javax.annotation.Nonnull; import org.acegisecurity.Authentication; import org.acegisecurity.context.SecurityContext; diff --git a/core/src/main/java/hudson/security/AuthorizationStrategy.java b/core/src/main/java/hudson/security/AuthorizationStrategy.java index 4c246a40d4..c8ee16e681 100644 --- a/core/src/main/java/hudson/security/AuthorizationStrategy.java +++ b/core/src/main/java/hudson/security/AuthorizationStrategy.java @@ -39,7 +39,6 @@ import jenkins.model.Jenkins; import jenkins.security.stapler.StaplerAccessibleType; import net.sf.json.JSONObject; -import org.acegisecurity.Authentication; import org.jenkinsci.Symbol; import org.kohsuke.stapler.StaplerRequest; diff --git a/core/src/main/java/hudson/security/BasicAuthenticationFilter.java b/core/src/main/java/hudson/security/BasicAuthenticationFilter.java index 737108560b..c75b619acb 100644 --- a/core/src/main/java/hudson/security/BasicAuthenticationFilter.java +++ b/core/src/main/java/hudson/security/BasicAuthenticationFilter.java @@ -26,7 +26,6 @@ package hudson.security; import hudson.model.User; import jenkins.model.Jenkins; import hudson.util.Scrambler; -import jenkins.security.ApiTokenProperty; import jenkins.security.SecurityListener; import org.acegisecurity.Authentication; import jenkins.security.BasicApiTokenHelper; diff --git a/core/src/main/java/hudson/security/GlobalSecurityConfiguration.java b/core/src/main/java/hudson/security/GlobalSecurityConfiguration.java index 629c8bba69..a2e78eeffc 100644 --- a/core/src/main/java/hudson/security/GlobalSecurityConfiguration.java +++ b/core/src/main/java/hudson/security/GlobalSecurityConfiguration.java @@ -50,7 +50,6 @@ import net.sf.json.JSONObject; import org.jenkinsci.Symbol; import org.kohsuke.accmod.Restricted; -import org.kohsuke.accmod.restrictions.DoNotUse; import org.kohsuke.accmod.restrictions.NoExternalUse; import org.kohsuke.stapler.StaplerRequest; import org.kohsuke.stapler.StaplerResponse; diff --git a/core/src/main/java/hudson/slaves/EnvironmentVariablesNodeProperty.java b/core/src/main/java/hudson/slaves/EnvironmentVariablesNodeProperty.java index 90f95efb4e..d054c4a51b 100644 --- a/core/src/main/java/hudson/slaves/EnvironmentVariablesNodeProperty.java +++ b/core/src/main/java/hudson/slaves/EnvironmentVariablesNodeProperty.java @@ -40,7 +40,6 @@ import java.io.IOException; import java.util.Arrays; import java.util.List; import java.util.Map; -import java.util.Set; import java.util.stream.Collectors; /** diff --git a/core/src/main/java/hudson/tasks/BuildStepCompatibilityLayer.java b/core/src/main/java/hudson/tasks/BuildStepCompatibilityLayer.java index d47a246aad..17a80931e9 100644 --- a/core/src/main/java/hudson/tasks/BuildStepCompatibilityLayer.java +++ b/core/src/main/java/hudson/tasks/BuildStepCompatibilityLayer.java @@ -31,12 +31,10 @@ import hudson.model.Action; import hudson.model.Project; import hudson.model.AbstractBuild; import hudson.model.AbstractProject; -import hudson.util.ReflectionUtils; import hudson.Launcher; import hudson.Util; import java.io.IOException; -import java.lang.reflect.Method; import java.util.Collection; import java.util.Collections; diff --git a/core/src/main/java/hudson/triggers/Trigger.java b/core/src/main/java/hudson/triggers/Trigger.java index b37fd7ce05..12df0f05f9 100644 --- a/core/src/main/java/hudson/triggers/Trigger.java +++ b/core/src/main/java/hudson/triggers/Trigger.java @@ -60,7 +60,6 @@ import antlr.ANTLRException; import javax.annotation.CheckForNull; import javax.annotation.Nonnull; -import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import hudson.model.Items; import jenkins.model.ParameterizedJobMixIn; import org.jenkinsci.Symbol; diff --git a/core/src/main/java/hudson/util/HttpResponses.java b/core/src/main/java/hudson/util/HttpResponses.java index ef731f3ff8..206db06530 100644 --- a/core/src/main/java/hudson/util/HttpResponses.java +++ b/core/src/main/java/hudson/util/HttpResponses.java @@ -29,7 +29,6 @@ import org.kohsuke.stapler.HttpResponse; import org.kohsuke.stapler.StaplerRequest; import org.kohsuke.stapler.StaplerResponse; -import javax.annotation.CheckForNull; import javax.annotation.Nonnull; import javax.servlet.ServletException; import java.io.File; diff --git a/core/src/main/java/hudson/util/Iterators.java b/core/src/main/java/hudson/util/Iterators.java index 8d93d72262..d07e97f38b 100644 --- a/core/src/main/java/hudson/util/Iterators.java +++ b/core/src/main/java/hudson/util/Iterators.java @@ -33,7 +33,6 @@ import java.util.List; import java.util.NoSuchElementException; import java.util.ListIterator; import java.util.AbstractList; -import java.util.Arrays; import java.util.Set; import java.util.HashSet; import javax.annotation.Nonnull; diff --git a/core/src/main/java/hudson/util/LRUStringConverter.java b/core/src/main/java/hudson/util/LRUStringConverter.java index 4be36ab0d7..3e9fd9e2ba 100644 --- a/core/src/main/java/hudson/util/LRUStringConverter.java +++ b/core/src/main/java/hudson/util/LRUStringConverter.java @@ -1,11 +1,9 @@ package hudson.util; import com.thoughtworks.xstream.converters.basic.AbstractSingleValueConverter; -import com.thoughtworks.xstream.converters.basic.StringConverter; import org.apache.commons.collections.map.LRUMap; import java.util.Collections; -import java.util.HashMap; import java.util.Map; public class LRUStringConverter extends AbstractSingleValueConverter { diff --git a/core/src/main/java/hudson/util/RobustReflectionConverter.java b/core/src/main/java/hudson/util/RobustReflectionConverter.java index 3ec65ec994..92271bf1c3 100644 --- a/core/src/main/java/hudson/util/RobustReflectionConverter.java +++ b/core/src/main/java/hudson/util/RobustReflectionConverter.java @@ -44,7 +44,6 @@ import hudson.model.Saveable; import java.lang.reflect.Field; import java.util.ArrayList; import java.util.Collection; -import java.util.Collections; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; diff --git a/core/src/main/java/hudson/util/io/RewindableFileOutputStream.java b/core/src/main/java/hudson/util/io/RewindableFileOutputStream.java index d75e43fcaa..6b8a7db113 100644 --- a/core/src/main/java/hudson/util/io/RewindableFileOutputStream.java +++ b/core/src/main/java/hudson/util/io/RewindableFileOutputStream.java @@ -25,7 +25,6 @@ package hudson.util.io; import java.io.File; import java.io.FileNotFoundException; -import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; import java.nio.file.Files; diff --git a/core/src/main/java/hudson/util/io/TarArchiver.java b/core/src/main/java/hudson/util/io/TarArchiver.java index 5d97aaa43b..2e8f151744 100644 --- a/core/src/main/java/hudson/util/io/TarArchiver.java +++ b/core/src/main/java/hudson/util/io/TarArchiver.java @@ -30,7 +30,6 @@ import hudson.util.FileVisitor; import hudson.util.IOUtils; import java.io.File; -import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; diff --git a/core/src/main/java/hudson/util/io/ZipArchiver.java b/core/src/main/java/hudson/util/io/ZipArchiver.java index 20da13cbc3..1ed1f04e3c 100644 --- a/core/src/main/java/hudson/util/io/ZipArchiver.java +++ b/core/src/main/java/hudson/util/io/ZipArchiver.java @@ -34,7 +34,6 @@ import org.apache.tools.zip.Zip64Mode; import org.apache.tools.zip.ZipOutputStream; import java.io.File; -import java.io.FileInputStream; import java.io.IOException; import java.io.OutputStream; diff --git a/core/src/main/java/hudson/widgets/BuildHistoryWidget.java b/core/src/main/java/hudson/widgets/BuildHistoryWidget.java index efd81da9d1..eb1986e718 100644 --- a/core/src/main/java/hudson/widgets/BuildHistoryWidget.java +++ b/core/src/main/java/hudson/widgets/BuildHistoryWidget.java @@ -28,7 +28,6 @@ import hudson.model.Queue.Item; import hudson.model.Queue.Task; import jenkins.widgets.HistoryPageFilter; -import java.util.Collection; import java.util.LinkedList; import java.util.List; diff --git a/core/src/main/java/jenkins/AgentProtocol.java b/core/src/main/java/jenkins/AgentProtocol.java index 587fdefa69..39a7f0f13a 100644 --- a/core/src/main/java/jenkins/AgentProtocol.java +++ b/core/src/main/java/jenkins/AgentProtocol.java @@ -9,7 +9,7 @@ import java.io.IOException; import java.net.Socket; import java.util.Set; import javax.annotation.CheckForNull; -import javax.annotation.Nonnull; + import jenkins.model.Jenkins; /** diff --git a/core/src/main/java/jenkins/PluginSubtypeMarker.java b/core/src/main/java/jenkins/PluginSubtypeMarker.java index c18eac83fb..71e0413c93 100644 --- a/core/src/main/java/jenkins/PluginSubtypeMarker.java +++ b/core/src/main/java/jenkins/PluginSubtypeMarker.java @@ -43,8 +43,6 @@ import javax.tools.FileObject; import javax.tools.StandardLocation; import java.io.IOException; import java.io.OutputStreamWriter; -import java.io.PrintWriter; -import java.io.StringWriter; import java.io.Writer; import java.nio.charset.StandardCharsets; import java.util.Set; diff --git a/core/src/main/java/jenkins/diagnosis/HsErrPidList.java b/core/src/main/java/jenkins/diagnosis/HsErrPidList.java index c38bdb06f4..c497206431 100644 --- a/core/src/main/java/jenkins/diagnosis/HsErrPidList.java +++ b/core/src/main/java/jenkins/diagnosis/HsErrPidList.java @@ -6,9 +6,8 @@ import hudson.Functions; import hudson.Util; import hudson.model.AdministrativeMonitor; import hudson.util.jna.Kernel32Utils; -import java.nio.file.Files; + import java.nio.file.InvalidPathException; -import java.nio.file.OpenOption; import java.nio.file.StandardOpenOption; import jenkins.model.Jenkins; import jenkins.security.stapler.StaplerDispatchable; @@ -18,7 +17,6 @@ import org.apache.tools.ant.types.FileSet; import java.io.BufferedReader; import java.io.File; -import java.io.FileInputStream; import java.io.FileReader; import java.io.IOException; import java.io.Reader; @@ -29,7 +27,7 @@ import java.util.ArrayList; import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; -import org.apache.commons.io.IOUtils; + import org.jenkinsci.Symbol; /** diff --git a/core/src/main/java/jenkins/install/InstallUtil.java b/core/src/main/java/jenkins/install/InstallUtil.java index 7552f9fa35..8ee5f1a57b 100644 --- a/core/src/main/java/jenkins/install/InstallUtil.java +++ b/core/src/main/java/jenkins/install/InstallUtil.java @@ -48,7 +48,6 @@ import com.google.common.base.Function; import com.thoughtworks.xstream.XStream; import hudson.Functions; -import hudson.Main; import hudson.model.UpdateCenter.DownloadJob.InstallationStatus; import hudson.model.UpdateCenter.DownloadJob.Installing; import hudson.model.UpdateCenter.InstallationJob; diff --git a/core/src/main/java/jenkins/management/AdministrativeMonitorsDecorator.java b/core/src/main/java/jenkins/management/AdministrativeMonitorsDecorator.java index 77ea0758e3..ade826367a 100644 --- a/core/src/main/java/jenkins/management/AdministrativeMonitorsDecorator.java +++ b/core/src/main/java/jenkins/management/AdministrativeMonitorsDecorator.java @@ -28,17 +28,13 @@ import hudson.Functions; import hudson.diagnosis.ReverseProxySetupMonitor; import hudson.model.AdministrativeMonitor; import hudson.model.PageDecorator; -import hudson.util.HttpResponses; import hudson.util.HudsonIsLoading; import hudson.util.HudsonIsRestarting; import jenkins.diagnostics.URICheckEncodingMonitor; import jenkins.model.Jenkins; -import net.sf.json.JSON; -import net.sf.json.JSONObject; import org.kohsuke.accmod.Restricted; import org.kohsuke.accmod.restrictions.NoExternalUse; import org.kohsuke.stapler.Ancestor; -import org.kohsuke.stapler.HttpResponse; import org.kohsuke.stapler.Stapler; import org.kohsuke.stapler.StaplerRequest; diff --git a/core/src/main/java/jenkins/model/Uptime.java b/core/src/main/java/jenkins/model/Uptime.java index 190c678ff7..5884e1bfe0 100644 --- a/core/src/main/java/jenkins/model/Uptime.java +++ b/core/src/main/java/jenkins/model/Uptime.java @@ -1,7 +1,6 @@ package jenkins.model; import hudson.Extension; -import hudson.ExtensionList; import hudson.init.InitMilestone; import hudson.init.Initializer; diff --git a/core/src/main/java/jenkins/model/identity/IdentityRootAction.java b/core/src/main/java/jenkins/model/identity/IdentityRootAction.java index 6497c012d1..a58d9a9d83 100644 --- a/core/src/main/java/jenkins/model/identity/IdentityRootAction.java +++ b/core/src/main/java/jenkins/model/identity/IdentityRootAction.java @@ -4,7 +4,6 @@ import hudson.Extension; import hudson.model.UnprotectedRootAction; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; -import java.security.interfaces.RSAPrivateKey; import java.security.interfaces.RSAPublicKey; import org.apache.commons.codec.Charsets; import org.apache.commons.codec.binary.Base64; diff --git a/core/src/main/java/jenkins/model/queue/AsynchronousExecution.java b/core/src/main/java/jenkins/model/queue/AsynchronousExecution.java index c99dd40de6..3da69e2217 100644 --- a/core/src/main/java/jenkins/model/queue/AsynchronousExecution.java +++ b/core/src/main/java/jenkins/model/queue/AsynchronousExecution.java @@ -39,7 +39,6 @@ import javax.annotation.Nonnull; import javax.annotation.concurrent.GuardedBy; import jenkins.model.Jenkins; import org.kohsuke.accmod.Restricted; -import org.kohsuke.accmod.restrictions.DoNotUse; import org.kohsuke.accmod.restrictions.NoExternalUse; /** diff --git a/core/src/main/java/jenkins/scm/RunWithSCM.java b/core/src/main/java/jenkins/scm/RunWithSCM.java index 1523b5a2ad..95e86a8cd3 100644 --- a/core/src/main/java/jenkins/scm/RunWithSCM.java +++ b/core/src/main/java/jenkins/scm/RunWithSCM.java @@ -26,7 +26,6 @@ package jenkins.scm; import com.google.common.collect.ImmutableSet; import hudson.model.Job; -import hudson.model.Queue; import hudson.model.Result; import hudson.model.Run; import hudson.model.User; diff --git a/core/src/main/java/jenkins/security/ApiTokenProperty.java b/core/src/main/java/jenkins/security/ApiTokenProperty.java index 8e61e0350a..9cb01b6268 100644 --- a/core/src/main/java/jenkins/security/ApiTokenProperty.java +++ b/core/src/main/java/jenkins/security/ApiTokenProperty.java @@ -50,7 +50,6 @@ import org.kohsuke.stapler.StaplerResponse; import java.io.IOException; import java.security.SecureRandom; -import java.text.SimpleDateFormat; import java.time.ZonedDateTime; import java.time.format.DateTimeFormatter; import java.util.Collection; diff --git a/core/src/main/java/jenkins/security/BasicApiTokenHelper.java b/core/src/main/java/jenkins/security/BasicApiTokenHelper.java index ed45727b43..5c73ba5f94 100644 --- a/core/src/main/java/jenkins/security/BasicApiTokenHelper.java +++ b/core/src/main/java/jenkins/security/BasicApiTokenHelper.java @@ -31,8 +31,6 @@ import org.kohsuke.accmod.Restricted; import org.kohsuke.accmod.restrictions.NoExternalUse; import javax.annotation.CheckForNull; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; import java.nio.charset.StandardCharsets; import java.security.MessageDigest; diff --git a/core/src/main/java/jenkins/security/CryptoConfidentialKey.java b/core/src/main/java/jenkins/security/CryptoConfidentialKey.java index 836e71dd69..bfc7758490 100644 --- a/core/src/main/java/jenkins/security/CryptoConfidentialKey.java +++ b/core/src/main/java/jenkins/security/CryptoConfidentialKey.java @@ -2,9 +2,7 @@ package jenkins.security; import hudson.Main; import hudson.util.Secret; -import jenkins.model.Jenkins; import org.kohsuke.accmod.Restricted; -import org.kohsuke.accmod.restrictions.DoNotUse; import org.kohsuke.accmod.restrictions.NoExternalUse; import javax.crypto.Cipher; diff --git a/core/src/main/java/jenkins/security/ImpersonatingUserDetailsService.java b/core/src/main/java/jenkins/security/ImpersonatingUserDetailsService.java index 5e3d62e49a..2df00eafa0 100644 --- a/core/src/main/java/jenkins/security/ImpersonatingUserDetailsService.java +++ b/core/src/main/java/jenkins/security/ImpersonatingUserDetailsService.java @@ -8,8 +8,6 @@ import org.acegisecurity.userdetails.UserDetailsService; import org.acegisecurity.userdetails.UsernameNotFoundException; import org.springframework.dao.DataAccessException; -import static java.util.Collections.*; - /** * {@link UserDetailsService} for those {@link SecurityRealm} * that doesn't allow query of other users. diff --git a/core/src/main/java/jenkins/security/MasterToSlaveCallable.java b/core/src/main/java/jenkins/security/MasterToSlaveCallable.java index d8ef8b09ee..5f5560a1bb 100644 --- a/core/src/main/java/jenkins/security/MasterToSlaveCallable.java +++ b/core/src/main/java/jenkins/security/MasterToSlaveCallable.java @@ -5,8 +5,6 @@ import hudson.remoting.Channel; import hudson.remoting.ChannelClosedException; import jenkins.slaves.RemotingVersionInfo; import org.jenkinsci.remoting.RoleChecker; -import org.kohsuke.accmod.Restricted; -import org.kohsuke.accmod.restrictions.NoExternalUse; /** diff --git a/core/src/main/java/jenkins/security/QueueItemAuthenticatorConfiguration.java b/core/src/main/java/jenkins/security/QueueItemAuthenticatorConfiguration.java index c6283401b2..4b5b15fb01 100644 --- a/core/src/main/java/jenkins/security/QueueItemAuthenticatorConfiguration.java +++ b/core/src/main/java/jenkins/security/QueueItemAuthenticatorConfiguration.java @@ -6,7 +6,6 @@ import hudson.model.queue.Tasks; import hudson.util.DescribableList; import jenkins.model.GlobalConfiguration; import jenkins.model.GlobalConfigurationCategory; -import jenkins.model.Jenkins; import net.sf.json.JSONObject; import org.jenkinsci.Symbol; import org.kohsuke.stapler.StaplerRequest; diff --git a/core/src/main/java/jenkins/security/SecurityListener.java b/core/src/main/java/jenkins/security/SecurityListener.java index c473a85fb4..7b28bc5e07 100644 --- a/core/src/main/java/jenkins/security/SecurityListener.java +++ b/core/src/main/java/jenkins/security/SecurityListener.java @@ -26,7 +26,6 @@ package jenkins.security; import hudson.ExtensionList; import hudson.ExtensionPoint; -import hudson.security.AbstractPasswordBasedSecurityRealm; import hudson.security.SecurityRealm; import java.util.ArrayList; import java.util.List; diff --git a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol.java b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol.java index 69720d9cce..b2386ffd2c 100644 --- a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol.java +++ b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol.java @@ -2,7 +2,6 @@ package jenkins.slaves; import hudson.Extension; import hudson.ExtensionList; -import hudson.Util; import hudson.model.Computer; import java.io.IOException; import java.net.Socket; @@ -10,7 +9,6 @@ import java.util.Collections; import java.util.logging.Logger; import javax.inject.Inject; import jenkins.AgentProtocol; -import jenkins.model.Jenkins; import jenkins.security.HMACConfidentialKey; import org.jenkinsci.Symbol; import org.jenkinsci.remoting.engine.JnlpConnectionState; diff --git a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java index fcc4e240e9..9be7c9bcb3 100644 --- a/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java +++ b/core/src/main/java/jenkins/slaves/JnlpSlaveAgentProtocol3.java @@ -1,22 +1,16 @@ package jenkins.slaves; -import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import hudson.Extension; import hudson.ExtensionList; -import hudson.Util; import hudson.model.Computer; import java.io.IOException; import java.net.Socket; import java.util.Collections; import javax.inject.Inject; import jenkins.AgentProtocol; -import jenkins.model.Jenkins; -import jenkins.util.SystemProperties; import org.jenkinsci.Symbol; import org.jenkinsci.remoting.engine.JnlpConnectionState; import org.jenkinsci.remoting.engine.JnlpProtocol3Handler; -import org.kohsuke.accmod.Restricted; -import org.kohsuke.accmod.restrictions.NoExternalUse; /** * Master-side implementation for JNLP3-connect protocol. diff --git a/core/src/main/java/jenkins/telemetry/impl/StaplerDispatches.java b/core/src/main/java/jenkins/telemetry/impl/StaplerDispatches.java index 6e73a73e95..ad9f1a6a9d 100644 --- a/core/src/main/java/jenkins/telemetry/impl/StaplerDispatches.java +++ b/core/src/main/java/jenkins/telemetry/impl/StaplerDispatches.java @@ -25,7 +25,6 @@ package jenkins.telemetry.impl; import hudson.Extension; import hudson.PluginWrapper; -import hudson.model.UsageStatistics; import hudson.util.VersionNumber; import jenkins.model.Jenkins; import jenkins.telemetry.Telemetry; diff --git a/core/src/main/java/jenkins/util/AntClassLoader.java b/core/src/main/java/jenkins/util/AntClassLoader.java index 980aa25c00..8fb59d620a 100644 --- a/core/src/main/java/jenkins/util/AntClassLoader.java +++ b/core/src/main/java/jenkins/util/AntClassLoader.java @@ -35,7 +35,6 @@ import org.kohsuke.accmod.restrictions.NoExternalUse; import java.io.ByteArrayOutputStream; import java.io.File; -import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.lang.reflect.Constructor; diff --git a/core/src/main/java/jenkins/util/JSONSignatureValidator.java b/core/src/main/java/jenkins/util/JSONSignatureValidator.java index 15b573a4a6..ec6f20da9b 100644 --- a/core/src/main/java/jenkins/util/JSONSignatureValidator.java +++ b/core/src/main/java/jenkins/util/JSONSignatureValidator.java @@ -17,7 +17,6 @@ import org.jvnet.hudson.crypto.SignatureOutputStream; import java.io.ByteArrayInputStream; import java.io.File; -import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStreamWriter; diff --git a/core/src/main/java/jenkins/util/ProgressiveRendering.java b/core/src/main/java/jenkins/util/ProgressiveRendering.java index 77582d74ce..e675b945f4 100644 --- a/core/src/main/java/jenkins/util/ProgressiveRendering.java +++ b/core/src/main/java/jenkins/util/ProgressiveRendering.java @@ -24,7 +24,6 @@ package jenkins.util; -import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.lang.reflect.Field; import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; diff --git a/core/src/main/java/jenkins/util/VirtualFile.java b/core/src/main/java/jenkins/util/VirtualFile.java index a54dd3b5dc..24c32b211b 100644 --- a/core/src/main/java/jenkins/util/VirtualFile.java +++ b/core/src/main/java/jenkins/util/VirtualFile.java @@ -44,7 +44,6 @@ import java.net.URI; import java.net.URL; import java.nio.file.Files; import java.nio.file.InvalidPathException; -import java.nio.file.LinkOption; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; diff --git a/core/src/main/java/jenkins/util/io/FileBoolean.java b/core/src/main/java/jenkins/util/io/FileBoolean.java index 7caa25e9e3..c43eefea63 100644 --- a/core/src/main/java/jenkins/util/io/FileBoolean.java +++ b/core/src/main/java/jenkins/util/io/FileBoolean.java @@ -5,7 +5,6 @@ import java.nio.file.InvalidPathException; import jenkins.model.Jenkins; import java.io.File; -import java.io.FileOutputStream; import java.io.IOException; import java.util.logging.Level; import java.util.logging.Logger; diff --git a/core/src/main/java/jenkins/util/xml/XMLUtils.java b/core/src/main/java/jenkins/util/xml/XMLUtils.java index 85d37f30ea..9469adc65e 100644 --- a/core/src/main/java/jenkins/util/xml/XMLUtils.java +++ b/core/src/main/java/jenkins/util/xml/XMLUtils.java @@ -4,7 +4,6 @@ import java.io.InputStream; import java.nio.file.Files; import java.nio.file.InvalidPathException; import jenkins.util.SystemProperties; -import org.apache.commons.io.IOUtils; import org.kohsuke.accmod.Restricted; import org.kohsuke.accmod.restrictions.NoExternalUse; import org.w3c.dom.Document; @@ -14,7 +13,6 @@ import org.xml.sax.XMLReader; import org.xml.sax.helpers.XMLReaderFactory; import java.io.File; -import java.io.FileInputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.Reader; From 22b272003675b50c3266361388db0a2dd6195109 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 20 Feb 2019 21:35:37 -0500 Subject: [PATCH 04/32] Java 5: foreach --- core/src/main/java/hudson/ExtensionList.java | 3 +-- core/src/main/java/hudson/Util.java | 4 ++-- .../main/java/hudson/model/DependencyGraph.java | 5 ++--- .../security/TokenBasedRememberMeServices2.java | 6 +++--- .../main/java/hudson/tasks/Fingerprinter.java | 4 ++-- .../hudson/util/MultipartFormDataParser.java | 4 ++-- .../hudson/util/RobustReflectionConverter.java | 3 +-- .../validator/routines/RegexValidator.java | 16 ++++++++-------- .../commons/validator/routines/UrlValidator.java | 4 ++-- .../security/LastGrantedAuthoritiesProperty.java | 6 +++--- core/src/main/java/jenkins/util/TreeString.java | 4 ++-- core/src/main/java/jenkins/util/VirtualFile.java | 3 +-- 12 files changed, 29 insertions(+), 33 deletions(-) diff --git a/core/src/main/java/hudson/ExtensionList.java b/core/src/main/java/hudson/ExtensionList.java index 566e3de404..b4d32bd06d 100644 --- a/core/src/main/java/hudson/ExtensionList.java +++ b/core/src/main/java/hudson/ExtensionList.java @@ -245,8 +245,7 @@ public class ExtensionList extends AbstractList implements OnMaster { } private boolean removeComponent(Collection> collection, Object t) { - for (Iterator> itr = collection.iterator(); itr.hasNext();) { - ExtensionComponent c = itr.next(); + for (ExtensionComponent c : collection) { if (c.getInstance().equals(t)) { return collection.remove(c); } diff --git a/core/src/main/java/hudson/Util.java b/core/src/main/java/hudson/Util.java index 64ebe02eb7..9699df02c8 100644 --- a/core/src/main/java/hudson/Util.java +++ b/core/src/main/java/hudson/Util.java @@ -1463,9 +1463,9 @@ public class Util { public static int permissionsToMode(Set permissions) { PosixFilePermission[] allPermissions = PosixFilePermission.values(); int result = 0; - for (int i = 0; i < allPermissions.length; i++) { + for (PosixFilePermission allPermission : allPermissions) { result <<= 1; - result |= permissions.contains(allPermissions[i]) ? 1 : 0; + result |= permissions.contains(allPermission) ? 1 : 0; } return result; } diff --git a/core/src/main/java/hudson/model/DependencyGraph.java b/core/src/main/java/hudson/model/DependencyGraph.java index 237eba1b40..6c7469a302 100644 --- a/core/src/main/java/hudson/model/DependencyGraph.java +++ b/core/src/main/java/hudson/model/DependencyGraph.java @@ -339,10 +339,9 @@ public class DependencyGraph implements Comparator { set = new ArrayList(); map.put(key,set); } - for (ListIterator it = set.listIterator(); it.hasNext();) { - DependencyGroup d = it.next(); + for (DependencyGroup d : set) { // Check for existing edge that connects the same two projects: - if (d.getUpstreamProject()==dep.getUpstreamProject() && d.getDownstreamProject()==dep.getDownstreamProject()) { + if (d.getUpstreamProject() == dep.getUpstreamProject() && d.getDownstreamProject() == dep.getDownstreamProject()) { d.add(dep); return; } diff --git a/core/src/main/java/hudson/security/TokenBasedRememberMeServices2.java b/core/src/main/java/hudson/security/TokenBasedRememberMeServices2.java index c93d4c77c2..c412919d59 100644 --- a/core/src/main/java/hudson/security/TokenBasedRememberMeServices2.java +++ b/core/src/main/java/hudson/security/TokenBasedRememberMeServices2.java @@ -189,9 +189,9 @@ public class TokenBasedRememberMeServices2 extends TokenBasedRememberMeServices return null; } - for (int i = 0; i < cookies.length; i++) { - if (ACEGI_SECURITY_HASHED_REMEMBER_ME_COOKIE_KEY.equals(cookies[i].getName())) { - return cookies[i].getValue(); + for (Cookie cookie : cookies) { + if (ACEGI_SECURITY_HASHED_REMEMBER_ME_COOKIE_KEY.equals(cookie.getName())) { + return cookie.getValue(); } } diff --git a/core/src/main/java/hudson/tasks/Fingerprinter.java b/core/src/main/java/hudson/tasks/Fingerprinter.java index c563180e01..959bbaebc0 100644 --- a/core/src/main/java/hudson/tasks/Fingerprinter.java +++ b/core/src/main/java/hudson/tasks/Fingerprinter.java @@ -154,8 +154,8 @@ public class Fingerprinter extends Recorder implements Serializable, DependencyD RunList builds = owner.getBuilds(); Set seenUpstreamProjects = new HashSet(); - for ( ListIterator iter = builds.listIterator(); iter.hasNext(); ) { - Run build = (Run) iter.next(); + for (Object build1 : builds) { + Run build = (Run) build1; for (FingerprintAction action : build.getActions(FingerprintAction.class)) { for (AbstractProject key : action.getDependencies().keySet()) { if (key == owner) { diff --git a/core/src/main/java/hudson/util/MultipartFormDataParser.java b/core/src/main/java/hudson/util/MultipartFormDataParser.java index a09a153046..96296247a8 100644 --- a/core/src/main/java/hudson/util/MultipartFormDataParser.java +++ b/core/src/main/java/hudson/util/MultipartFormDataParser.java @@ -96,8 +96,8 @@ public class MultipartFormDataParser implements AutoCloseable { return false; } - for (int i = 0; i < parts.length; i++) { - if ("multipart/form-data".equals(parts[i])) { + for (String part : parts) { + if ("multipart/form-data".equals(part)) { return true; } } diff --git a/core/src/main/java/hudson/util/RobustReflectionConverter.java b/core/src/main/java/hudson/util/RobustReflectionConverter.java index 92271bf1c3..68d2dc816f 100644 --- a/core/src/main/java/hudson/util/RobustReflectionConverter.java +++ b/core/src/main/java/hudson/util/RobustReflectionConverter.java @@ -212,8 +212,7 @@ public class RobustReflectionConverter implements Converter { if (mapping != null) { if (mapping.getItemFieldName() != null) { Collection list = (Collection) newObj; - for (Iterator iter = list.iterator(); iter.hasNext();) { - Object obj = iter.next(); + for (Object obj : list) { writeField(fieldName, mapping.getItemFieldName(), mapping.getItemType(), definedIn, obj); } } else { diff --git a/core/src/main/java/jenkins/org/apache/commons/validator/routines/RegexValidator.java b/core/src/main/java/jenkins/org/apache/commons/validator/routines/RegexValidator.java index eebc3747d9..c6a7bb1cb2 100644 --- a/core/src/main/java/jenkins/org/apache/commons/validator/routines/RegexValidator.java +++ b/core/src/main/java/jenkins/org/apache/commons/validator/routines/RegexValidator.java @@ -149,8 +149,8 @@ public class RegexValidator implements Serializable { if (value == null) { return false; } - for (int i = 0; i < patterns.length; i++) { - if (patterns[i].matcher(value).matches()) { + for (Pattern pattern : patterns) { + if (pattern.matcher(value).matches()) { return true; } } @@ -169,13 +169,13 @@ public class RegexValidator implements Serializable { if (value == null) { return null; } - for (int i = 0; i < patterns.length; i++) { - Matcher matcher = patterns[i].matcher(value); + for (Pattern pattern : patterns) { + Matcher matcher = pattern.matcher(value); if (matcher.matches()) { int count = matcher.groupCount(); String[] groups = new String[count]; for (int j = 0; j < count; j++) { - groups[j] = matcher.group(j+1); + groups[j] = matcher.group(j + 1); } return groups; } @@ -196,8 +196,8 @@ public class RegexValidator implements Serializable { if (value == null) { return null; } - for (int i = 0; i < patterns.length; i++) { - Matcher matcher = patterns[i].matcher(value); + for (Pattern pattern : patterns) { + Matcher matcher = pattern.matcher(value); if (matcher.matches()) { int count = matcher.groupCount(); if (count == 1) { @@ -205,7 +205,7 @@ public class RegexValidator implements Serializable { } StringBuilder buffer = new StringBuilder(); for (int j = 0; j < count; j++) { - String component = matcher.group(j+1); + String component = matcher.group(j + 1); if (component != null) { buffer.append(component); } diff --git a/core/src/main/java/jenkins/org/apache/commons/validator/routines/UrlValidator.java b/core/src/main/java/jenkins/org/apache/commons/validator/routines/UrlValidator.java index f309b177e6..3d7e082f35 100644 --- a/core/src/main/java/jenkins/org/apache/commons/validator/routines/UrlValidator.java +++ b/core/src/main/java/jenkins/org/apache/commons/validator/routines/UrlValidator.java @@ -284,8 +284,8 @@ public class UrlValidator implements Serializable { schemes = DEFAULT_SCHEMES; } allowedSchemes = new HashSet(schemes.length); - for(int i=0; i < schemes.length; i++) { - allowedSchemes.add(schemes[i].toLowerCase(Locale.ENGLISH)); + for (String scheme : schemes) { + allowedSchemes.add(scheme.toLowerCase(Locale.ENGLISH)); } } diff --git a/core/src/main/java/jenkins/security/LastGrantedAuthoritiesProperty.java b/core/src/main/java/jenkins/security/LastGrantedAuthoritiesProperty.java index 5172188b17..2f851ac2d7 100644 --- a/core/src/main/java/jenkins/security/LastGrantedAuthoritiesProperty.java +++ b/core/src/main/java/jenkins/security/LastGrantedAuthoritiesProperty.java @@ -56,10 +56,10 @@ public class LastGrantedAuthoritiesProperty extends UserProperty { List grantedAuthorities = new ArrayList<>(roles.length + 1); grantedAuthorities.add(new GrantedAuthorityImpl(authenticatedRole)); - for (int i = 0; i < roles.length; i++){ + for (String role : roles) { // to avoid having twice that role - if(!authenticatedRole.equals(roles[i])){ - grantedAuthorities.add(new GrantedAuthorityImpl(roles[i])); + if (!authenticatedRole.equals(role)) { + grantedAuthorities.add(new GrantedAuthorityImpl(role)); } } diff --git a/core/src/main/java/jenkins/util/TreeString.java b/core/src/main/java/jenkins/util/TreeString.java index 86dbced012..6d54889144 100644 --- a/core/src/main/java/jenkins/util/TreeString.java +++ b/core/src/main/java/jenkins/util/TreeString.java @@ -124,8 +124,8 @@ public final class TreeString implements Serializable { public int hashCode() { int h = parent == null ? 0 : parent.hashCode(); - for (int i = 0; i < label.length; i++) { - h = 31 * h + label[i]; + for (char c : label) { + h = 31 * h + c; } assert toString().hashCode() == h; diff --git a/core/src/main/java/jenkins/util/VirtualFile.java b/core/src/main/java/jenkins/util/VirtualFile.java index 24c32b211b..a79c06a2f2 100644 --- a/core/src/main/java/jenkins/util/VirtualFile.java +++ b/core/src/main/java/jenkins/util/VirtualFile.java @@ -191,8 +191,7 @@ public abstract class VirtualFile implements Comparable, Serializab public @Nonnull List listOnlyDescendants() throws IOException { VirtualFile[] children = list(); List result = new ArrayList<>(); - for (int i = 0; i < children.length; i++) { - VirtualFile child = children[i]; + for (VirtualFile child : children) { if (child.isDescendant("")) { result.add(child); } From f63ca4c737ce22be0265c65af5f91084e43d373c Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 20 Feb 2019 21:35:56 -0500 Subject: [PATCH 05/32] Java 5: contains --- core/src/main/java/hudson/util/FormFieldValidator.java | 2 +- core/src/main/java/hudson/util/FormValidation.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/hudson/util/FormFieldValidator.java b/core/src/main/java/hudson/util/FormFieldValidator.java index a12941c9c7..5f0bb33f67 100644 --- a/core/src/main/java/hudson/util/FormFieldValidator.java +++ b/core/src/main/java/hudson/util/FormFieldValidator.java @@ -273,7 +273,7 @@ public abstract class FormFieldValidator { protected boolean findText(BufferedReader in, String literal) throws IOException { String line; while((line=in.readLine())!=null) - if(line.indexOf(literal)!=-1) + if(line.contains(literal)) return true; return false; } diff --git a/core/src/main/java/hudson/util/FormValidation.java b/core/src/main/java/hudson/util/FormValidation.java index a306f66d2d..60b63b18ac 100644 --- a/core/src/main/java/hudson/util/FormValidation.java +++ b/core/src/main/java/hudson/util/FormValidation.java @@ -499,7 +499,7 @@ public abstract class FormValidation extends IOException implements HttpResponse protected boolean findText(BufferedReader in, String literal) throws IOException { String line; while((line=in.readLine())!=null) - if(line.indexOf(literal)!=-1) + if(line.contains(literal)) return true; return false; } From fbdc8f79463dd4abf4743eea08cb526e0c073704 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 20 Feb 2019 21:44:28 -0500 Subject: [PATCH 06/32] Java 5: use thread-unsafe StringBuilder --- core/src/main/java/jenkins/util/AntClassLoader.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/jenkins/util/AntClassLoader.java b/core/src/main/java/jenkins/util/AntClassLoader.java index 8fb59d620a..3362c2f543 100644 --- a/core/src/main/java/jenkins/util/AntClassLoader.java +++ b/core/src/main/java/jenkins/util/AntClassLoader.java @@ -545,7 +545,7 @@ public class AntClassLoader extends ClassLoader implements SubBuildListener { * separated by the path separator for the system. */ public String getClasspath() { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); boolean firstPass = true; Enumeration componentEnum = pathComponents.elements(); while (componentEnum.hasMoreElements()) { @@ -1561,8 +1561,7 @@ public class AntClassLoader extends ClassLoader implements SubBuildListener { ReflectUtil.newInstance(subClassToLoad, CONSTRUCTOR_ARGS, new Object[] { - parent, project, path, - Boolean.valueOf(parentFirst) + parent, project, path, parentFirst }); } return new AntClassLoader(parent, project, path, parentFirst); From 64ab6e48b50d759dd6072edd8dea683015fcc24c Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 20 Feb 2019 21:44:55 -0500 Subject: [PATCH 07/32] No need for a boxed double --- core/src/main/java/hudson/Functions.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/hudson/Functions.java b/core/src/main/java/hudson/Functions.java index a2275d7d1f..118a1f70fa 100644 --- a/core/src/main/java/hudson/Functions.java +++ b/core/src/main/java/hudson/Functions.java @@ -2006,7 +2006,7 @@ public class Functions { if(size < 1024){ return size + " " + measure; } - Double number = new Double(size); + double number = size; if(number>=1024){ number = number/1024; measure = "KB"; From 47daeb4cc1d2dc87d420838551e2383cf7ac3ad7 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 20 Feb 2019 21:46:06 -0500 Subject: [PATCH 08/32] Java 5: skip (un)boxing --- core/src/main/java/hudson/ProxyConfiguration.java | 2 +- core/src/main/java/hudson/logging/LogRecorder.java | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/core/src/main/java/hudson/ProxyConfiguration.java b/core/src/main/java/hudson/ProxyConfiguration.java index 11d90e17d9..3d73d7c78c 100644 --- a/core/src/main/java/hudson/ProxyConfiguration.java +++ b/core/src/main/java/hudson/ProxyConfiguration.java @@ -395,7 +395,7 @@ public final class ProxyConfiguration extends AbstractDescribableImpl 0 ? DEFAULT_CONNECT_TIMEOUT_MILLIS : new Integer(30 * 1000)); + method.getParams().setParameter("http.socket.timeout", DEFAULT_CONNECT_TIMEOUT_MILLIS > 0 ? DEFAULT_CONNECT_TIMEOUT_MILLIS : 30 * 1000); HttpClient client = new HttpClient(); if (Util.fixEmptyAndTrim(name) != null && !isNoProxyHost(host, noProxyHost)) { diff --git a/core/src/main/java/hudson/logging/LogRecorder.java b/core/src/main/java/hudson/logging/LogRecorder.java index 51549a3bd3..06b0563bec 100644 --- a/core/src/main/java/hudson/logging/LogRecorder.java +++ b/core/src/main/java/hudson/logging/LogRecorder.java @@ -156,7 +156,7 @@ public class LogRecorder extends AbstractModelObject implements Saveable { continue; } - if (match.booleanValue()) { + if (match) { // most specific logger matches, so publish super.publish(record); } @@ -215,14 +215,14 @@ public class LogRecorder extends AbstractModelObject implements Saveable { public Boolean matches(LogRecord r) { boolean levelSufficient = r.getLevel().intValue() >= level; if (name.length() == 0) { - return Boolean.valueOf(levelSufficient); // include if level matches + return levelSufficient; // include if level matches } String logName = r.getLoggerName(); if(logName==null || !logName.startsWith(name)) return null; // not in the domain of this logger String rest = logName.substring(name.length()); if (rest.startsWith(".") || rest.length()==0) { - return Boolean.valueOf(levelSufficient); // include if level matches + return levelSufficient; // include if level matches } return null; } From 68113283208d6a668b2369679e58b5a7cfd2ce58 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Wed, 20 Feb 2019 21:46:39 -0500 Subject: [PATCH 09/32] Java 5: foreach loop --- core/src/main/java/hudson/util/NoOverlapCategoryAxis.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/hudson/util/NoOverlapCategoryAxis.java b/core/src/main/java/hudson/util/NoOverlapCategoryAxis.java index f7b2a78045..03508ce50d 100644 --- a/core/src/main/java/hudson/util/NoOverlapCategoryAxis.java +++ b/core/src/main/java/hudson/util/NoOverlapCategoryAxis.java @@ -70,10 +70,9 @@ public class NoOverlapCategoryAxis extends CategoryAxis { Rectangle2D r = null; int categoryIndex = 0; - Iterator iterator = ticks.iterator(); - while (iterator.hasNext()) { + for (Object tick1 : ticks) { - CategoryTick tick = (CategoryTick) iterator.next(); + CategoryTick tick = (CategoryTick) tick1; g2.setFont(getTickLabelFont(tick.getCategory())); g2.setPaint(getTickLabelPaint(tick.getCategory())); From 0ad7d000993412ef916e5363a3fa1bd2e6b91aeb Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Tue, 26 Feb 2019 12:13:41 -0500 Subject: [PATCH 10/32] Switch to using TimeUnit.UNIT.toUnit(...) --- core/src/main/java/hudson/Proc.java | 4 ++-- core/src/main/java/hudson/ProxyConfiguration.java | 5 +++-- core/src/main/java/hudson/model/ComputerPinger.java | 3 ++- core/src/main/java/hudson/model/DownloadService.java | 3 ++- core/src/main/java/hudson/model/LoadStatistics.java | 3 ++- core/src/main/java/hudson/model/UpdateCenter.java | 3 ++- core/src/main/java/hudson/model/ViewJob.java | 5 +++-- core/src/main/java/hudson/slaves/ChannelPinger.java | 3 ++- core/src/main/java/hudson/slaves/Channels.java | 3 ++- .../main/java/hudson/slaves/ComputerRetentionWork.java | 3 ++- .../src/main/java/hudson/slaves/RetentionStrategy.java | 4 ++-- core/src/main/java/hudson/triggers/Trigger.java | 3 ++- core/src/main/java/hudson/util/ProcessTree.java | 7 ++++--- core/src/main/java/jenkins/model/Jenkins.java | 10 +++++----- .../java/hudson/model/WorkspaceCleanupThreadTest.java | 5 +++-- 15 files changed, 38 insertions(+), 26 deletions(-) diff --git a/core/src/main/java/hudson/Proc.java b/core/src/main/java/hudson/Proc.java index 26d74984cf..b218017522 100644 --- a/core/src/main/java/hudson/Proc.java +++ b/core/src/main/java/hudson/Proc.java @@ -325,8 +325,8 @@ public abstract class Proc { // see https://jenkins.io/redirect/troubleshooting/process-leaked-file-descriptors // problems like that shows up as infinite wait in join(), which confuses great many users. // So let's do a timed wait here and try to diagnose the problem - if (copier!=null) copier.join(10*1000); - if(copier2!=null) copier2.join(10*1000); + if (copier!=null) copier.join(TimeUnit.SECONDS.toMillis(10)); + if(copier2!=null) copier2.join(TimeUnit.SECONDS.toMillis(10)); if((copier!=null && copier.isAlive()) || (copier2!=null && copier2.isAlive())) { // looks like handles are leaking. // closing these handles should terminate the threads. diff --git a/core/src/main/java/hudson/ProxyConfiguration.java b/core/src/main/java/hudson/ProxyConfiguration.java index 3d73d7c78c..f6560c6a05 100644 --- a/core/src/main/java/hudson/ProxyConfiguration.java +++ b/core/src/main/java/hudson/ProxyConfiguration.java @@ -47,6 +47,7 @@ import java.net.URL; import java.net.URLConnection; import java.util.Collections; import java.util.List; +import java.util.concurrent.TimeUnit; import java.util.regex.Pattern; import javax.annotation.CheckForNull; import jenkins.model.Jenkins; @@ -85,7 +86,7 @@ public final class ProxyConfiguration extends AbstractDescribableImpl 0 ? DEFAULT_CONNECT_TIMEOUT_MILLIS : 30 * 1000); + method.getParams().setParameter("http.socket.timeout", DEFAULT_CONNECT_TIMEOUT_MILLIS > 0 ? DEFAULT_CONNECT_TIMEOUT_MILLIS : TimeUnit.SECONDS.toMillis(30)); HttpClient client = new HttpClient(); if (Util.fixEmptyAndTrim(name) != null && !isNoProxyHost(host, noProxyHost)) { diff --git a/core/src/main/java/hudson/model/ComputerPinger.java b/core/src/main/java/hudson/model/ComputerPinger.java index ecf81abceb..1cf4114a00 100644 --- a/core/src/main/java/hudson/model/ComputerPinger.java +++ b/core/src/main/java/hudson/model/ComputerPinger.java @@ -6,6 +6,7 @@ import hudson.ExtensionPoint; import java.io.IOException; import java.net.InetAddress; +import java.util.concurrent.TimeUnit; import java.util.logging.Logger; /** @@ -57,7 +58,7 @@ public abstract class ComputerPinger implements ExtensionPoint { public static class BuiltInComputerPinger extends ComputerPinger { @Override public boolean isReachable(InetAddress ia, int timeout) throws IOException { - return ia.isReachable(timeout * 1000); + return ia.isReachable((int)TimeUnit.SECONDS.toMillis(timeout)); } } diff --git a/core/src/main/java/hudson/model/DownloadService.java b/core/src/main/java/hudson/model/DownloadService.java index 27510ec1a4..f21675b019 100644 --- a/core/src/main/java/hudson/model/DownloadService.java +++ b/core/src/main/java/hudson/model/DownloadService.java @@ -46,6 +46,7 @@ import java.net.URLConnection; import java.net.URLEncoder; import java.util.ArrayList; import java.util.List; +import java.util.concurrent.TimeUnit; import java.util.logging.Level; import java.util.logging.Logger; import jenkins.model.DownloadSettings; @@ -91,7 +92,7 @@ public class DownloadService extends PageDecorator { if(Jenkins.getInstance().hasPermission(Jenkins.READ)) { long now = System.currentTimeMillis(); for (Downloadable d : Downloadable.all()) { - if(d.getDue()") .append("Behaviour.addLoadEvent(function() {") .append(" downloadService.download(") diff --git a/core/src/main/java/hudson/model/LoadStatistics.java b/core/src/main/java/hudson/model/LoadStatistics.java index 5b87c5789b..a3ddfe183e 100644 --- a/core/src/main/java/hudson/model/LoadStatistics.java +++ b/core/src/main/java/hudson/model/LoadStatistics.java @@ -51,6 +51,7 @@ import java.io.IOException; import java.io.Serializable; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.concurrent.TimeUnit; import java.util.List; import javax.annotation.CheckForNull; @@ -376,7 +377,7 @@ public abstract class LoadStatistics { /** * Load statistics clock cycle in milliseconds. Specify a small value for quickly debugging this feature and node provisioning through cloud. */ - public static int CLOCK = SystemProperties.getInteger(LoadStatistics.class.getName() + ".clock", 10 * 1000); + public static int CLOCK = SystemProperties.getInteger(LoadStatistics.class.getName() + ".clock", (int)TimeUnit.SECONDS.toMillis(10)); /** * Periodically update the load statistics average. diff --git a/core/src/main/java/hudson/model/UpdateCenter.java b/core/src/main/java/hudson/model/UpdateCenter.java index bfdacecddf..0185e4f854 100644 --- a/core/src/main/java/hudson/model/UpdateCenter.java +++ b/core/src/main/java/hudson/model/UpdateCenter.java @@ -35,6 +35,7 @@ import hudson.security.ACLContext; import hudson.util.VersionNumber; import java.nio.file.Files; import java.nio.file.InvalidPathException; +import java.util.concurrent.TimeUnit; import jenkins.security.stapler.StaplerDispatchable; import jenkins.util.SystemProperties; @@ -159,7 +160,7 @@ public class UpdateCenter extends AbstractModelObject implements Saveable, OnMas /** * Read timeout when downloading plugins, defaults to 1 minute */ - private static final int PLUGIN_DOWNLOAD_READ_TIMEOUT = SystemProperties.getInteger(UpdateCenter.class.getName()+".pluginDownloadReadTimeoutSeconds", 60) * 1000; + private static final int PLUGIN_DOWNLOAD_READ_TIMEOUT = (int)TimeUnit.SECONDS.toMillis(SystemProperties.getInteger(UpdateCenter.class.getName()+".pluginDownloadReadTimeoutSeconds", 60)); public static final String PREDEFINED_UPDATE_SITE_ID = "default"; diff --git a/core/src/main/java/hudson/model/ViewJob.java b/core/src/main/java/hudson/model/ViewJob.java index 42c963a478..2bf7fa9766 100644 --- a/core/src/main/java/hudson/model/ViewJob.java +++ b/core/src/main/java/hudson/model/ViewJob.java @@ -29,6 +29,7 @@ import java.io.IOException; import java.util.LinkedHashSet; import java.util.Set; import java.util.SortedMap; +import java.util.concurrent.TimeUnit; import java.util.logging.Level; import java.util.logging.Logger; import javax.servlet.ServletException; @@ -145,7 +146,7 @@ public abstract class ViewJob, RunT extends Run< reload(); } finally { reloadingInProgress = false; - nextUpdate = reloadPeriodically ? System.currentTimeMillis()+1000*60 : Long.MAX_VALUE; + nextUpdate = reloadPeriodically ? System.currentTimeMillis()+TimeUnit.MINUTES.toMillis(1) : Long.MAX_VALUE; } } @@ -187,7 +188,7 @@ public abstract class ViewJob, RunT extends Run< // reload operations might eat InterruptException, // so check the status every so often while(reloadQueue.isEmpty() && !terminating()) - reloadQueue.wait(60*1000); + reloadQueue.wait(TimeUnit.MINUTES.toMillis(1)); if(terminating()) throw new InterruptedException(); // terminate now ViewJob job = reloadQueue.iterator().next(); diff --git a/core/src/main/java/hudson/slaves/ChannelPinger.java b/core/src/main/java/hudson/slaves/ChannelPinger.java index 8493fe13fb..d92ef1bff9 100644 --- a/core/src/main/java/hudson/slaves/ChannelPinger.java +++ b/core/src/main/java/hudson/slaves/ChannelPinger.java @@ -42,6 +42,7 @@ import java.io.IOException; import java.util.concurrent.atomic.AtomicBoolean; import java.util.logging.Level; import java.util.logging.Logger; +import java.util.concurrent.TimeUnit; /** * Establish a periodic ping to keep connections between {@link Slave agents} @@ -184,7 +185,7 @@ public class ChannelPinger extends ComputerListener { public static void setUpPingForChannel(final Channel channel, final SlaveComputer computer, int timeoutSeconds, int intervalSeconds, final boolean analysis) { LOGGER.log(Level.FINE, "setting up ping on {0} with a {1} seconds interval and {2} seconds timeout", new Object[] {channel.getName(), intervalSeconds, timeoutSeconds}); final AtomicBoolean isInClosed = new AtomicBoolean(false); - final PingThread t = new PingThread(channel, timeoutSeconds * 1000L, intervalSeconds * 1000L) { + final PingThread t = new PingThread(channel, TimeUnit.SECONDS.toMillis(timeoutSeconds), TimeUnit.SECONDS.toMillis(intervalSeconds)) { @Override protected void onDead(Throwable cause) { if (analysis) { diff --git a/core/src/main/java/hudson/slaves/Channels.java b/core/src/main/java/hudson/slaves/Channels.java index 4b0b910b37..0657cc0ae3 100644 --- a/core/src/main/java/hudson/slaves/Channels.java +++ b/core/src/main/java/hudson/slaves/Channels.java @@ -49,6 +49,7 @@ import java.net.ServerSocket; import java.net.Socket; import java.util.Map; import java.util.concurrent.ExecutorService; +import java.util.concurrent.TimeUnit; import java.util.logging.Level; import java.util.logging.Logger; @@ -210,7 +211,7 @@ public class Channels { public static Channel newJVM(String displayName, TaskListener listener, JVMBuilder vmb, FilePath workDir, ClasspathBuilder classpath) throws IOException { ServerSocket serverSocket = new ServerSocket(); serverSocket.bind(new InetSocketAddress("localhost",0)); - serverSocket.setSoTimeout(10*1000); + serverSocket.setSoTimeout((int)TimeUnit.SECONDS.toMillis(10)); // use -cp + FQCN instead of -jar since remoting.jar can be rebundled (like in the case of the swarm plugin.) vmb.classpath().addJarOf(Channel.class); diff --git a/core/src/main/java/hudson/slaves/ComputerRetentionWork.java b/core/src/main/java/hudson/slaves/ComputerRetentionWork.java index 36ec97ab3b..ee246750a0 100644 --- a/core/src/main/java/hudson/slaves/ComputerRetentionWork.java +++ b/core/src/main/java/hudson/slaves/ComputerRetentionWork.java @@ -25,6 +25,7 @@ package hudson.slaves; import java.util.Map; import java.util.WeakHashMap; +import java.util.concurrent.TimeUnit; import hudson.model.Computer; import hudson.model.Queue; @@ -70,7 +71,7 @@ public class ComputerRetentionWork extends PeriodicWork { // at the moment I don't trust strategies to wait more than 60 minutes // strategies need to wait at least one minute final long waitInMins = Math.max(1, Math.min(60, c.getRetentionStrategy().check(c))); - nextCheck.put(c, startRun + waitInMins*1000*60 /*MINS->MILLIS*/); + nextCheck.put(c, startRun + TimeUnit.MINUTES.toMillis(waitInMins)); } } }); diff --git a/core/src/main/java/hudson/slaves/RetentionStrategy.java b/core/src/main/java/hudson/slaves/RetentionStrategy.java index c2237c3a56..f2137c9f3c 100644 --- a/core/src/main/java/hudson/slaves/RetentionStrategy.java +++ b/core/src/main/java/hudson/slaves/RetentionStrategy.java @@ -249,7 +249,7 @@ public abstract class RetentionStrategy extends AbstractDesc Node checkedNode = c.getNode(); if (needExecutor && checkedNode != null && checkedNode.canTake(item) == null) { demandMilliseconds = System.currentTimeMillis() - item.buildableStartMilliseconds; - needComputer = demandMilliseconds > inDemandDelay * 1000 * 60 /*MINS->MILLIS*/; + needComputer = demandMilliseconds > TimeUnit.MINUTES.toMillis(inDemandDelay); break; } } @@ -262,7 +262,7 @@ public abstract class RetentionStrategy extends AbstractDesc } } else if (c.isIdle()) { final long idleMilliseconds = System.currentTimeMillis() - c.getIdleStartMilliseconds(); - if (idleMilliseconds > idleDelay * 1000 * 60 /*MINS->MILLIS*/) { + if (idleMilliseconds > TimeUnit.MINUTES.toMillis(idleDelay)) { // we've been idle for long enough logger.log(Level.INFO, "Disconnecting computer {0} as it has been idle for {1}", new Object[]{c.getName(), Util.getTimeSpanString(idleMilliseconds)}); diff --git a/core/src/main/java/hudson/triggers/Trigger.java b/core/src/main/java/hudson/triggers/Trigger.java index 12df0f05f9..4423c0137d 100644 --- a/core/src/main/java/hudson/triggers/Trigger.java +++ b/core/src/main/java/hudson/triggers/Trigger.java @@ -52,6 +52,7 @@ import java.util.Collections; import java.util.Date; import java.util.GregorianCalendar; import java.util.List; +import java.util.concurrent.TimeUnit; import java.util.concurrent.Future; import java.util.logging.Level; import java.util.logging.Logger; @@ -215,7 +216,7 @@ public abstract class Trigger implements Describable> } public long getInitialDelay() { - return MIN - (Calendar.getInstance().get(Calendar.SECOND) * 1000); + return MIN - TimeUnit.SECONDS.toMillis(Calendar.getInstance().get(Calendar.SECOND)); } public void doRun() { diff --git a/core/src/main/java/hudson/util/ProcessTree.java b/core/src/main/java/hudson/util/ProcessTree.java index 73438b2989..fd33d2f995 100644 --- a/core/src/main/java/hudson/util/ProcessTree.java +++ b/core/src/main/java/hudson/util/ProcessTree.java @@ -68,6 +68,7 @@ import java.util.Map; import java.util.Map.Entry; import java.util.Optional; import java.util.SortedMap; +import java.util.concurrent.TimeUnit; import java.util.logging.Level; import java.util.logging.Logger; @@ -550,7 +551,7 @@ public abstract class ProcessTree implements Iterable, IProcessTree, } // after that wait for it to cease to exist - long deadline = System.nanoTime() + softKillWaitSeconds * 1000000000; + long deadline = System.nanoTime() + TimeUnit.SECONDS.toNanos(softKillWaitSeconds); int sleepTime = 10; // initially we sleep briefly, then sleep up to 1sec do { if (!p.isRunning()) { @@ -759,7 +760,7 @@ public abstract class ProcessTree implements Iterable, IProcessTree, */ public void kill() throws InterruptedException { // after sending SIGTERM, wait for the process to cease to exist - long deadline = System.nanoTime() + softKillWaitSeconds * 1000000000; + long deadline = System.nanoTime() + TimeUnit.SECONDS.toNanos(softKillWaitSeconds); kill(deadline); } @@ -798,7 +799,7 @@ public abstract class ProcessTree implements Iterable, IProcessTree, public void killRecursively() throws InterruptedException { // after sending SIGTERM, wait for the processes to cease to exist until the deadline - long deadline = System.nanoTime() + softKillWaitSeconds * 1000000000; + long deadline = System.nanoTime() + TimeUnit.SECONDS.toNanos(softKillWaitSeconds); killRecursively(deadline); } diff --git a/core/src/main/java/jenkins/model/Jenkins.java b/core/src/main/java/jenkins/model/Jenkins.java index a75df79b0a..5f363a6f40 100644 --- a/core/src/main/java/jenkins/model/Jenkins.java +++ b/core/src/main/java/jenkins/model/Jenkins.java @@ -3830,7 +3830,7 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve while (isQuietingDown && (timeout <= 0 || System.currentTimeMillis() < waitUntil) && !RestartListener.isAllReady()) { - Thread.sleep(1000); + Thread.sleep(TimeUnit.SECONDS.toMillis(1)); } } return new HttpRedirect("."); @@ -3889,7 +3889,7 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve // if the result isn't available in 5 sec, ignore that. // this is a precaution against hang nodes - long endTime = System.currentTimeMillis() + 5000; + long endTime = System.currentTimeMillis() + TimeUnit.SECONDS.toMillis(5); Map> r = new HashMap>(); for (Entry>> e : future.entrySet()) { @@ -4246,7 +4246,7 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve ACL.impersonate(ACL.SYSTEM); // give some time for the browser to load the "reloading" page - Thread.sleep(5000); + Thread.sleep(TimeUnit.SECONDS.toMillis(5)); LOGGER.info(String.format("Restarting VM as requested by %s",exitUser)); for (RestartListener listener : RestartListener.all()) listener.onRestart(); @@ -4282,7 +4282,7 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve servletContext.setAttribute("app",new HudsonIsRestarting()); // give some time for the browser to load the "reloading" page LOGGER.info("Restart in 10 seconds"); - Thread.sleep(10000); + Thread.sleep(TimeUnit.SECONDS.toMillis(10)); LOGGER.info(String.format("Restarting VM as requested by %s",exitUser)); for (RestartListener listener : RestartListener.all()) listener.onRestart(); @@ -4587,7 +4587,7 @@ public class Jenkins extends AbstractCIBase implements DirectlyModifiableTopLeve if(ALLOWED_RESOURCE_EXTENSIONS.contains(extension)) { URL url = pluginManager.uberClassLoader.getResource(path); if(url!=null) { - long expires = MetaClass.NO_CACHE ? 0 : 365L * 24 * 60 * 60 * 1000; /*1 year*/ + long expires = MetaClass.NO_CACHE ? 0 : TimeUnit.DAYS.toMillis(365); rsp.serveFile(req,url,expires); return; } diff --git a/test/src/test/java/hudson/model/WorkspaceCleanupThreadTest.java b/test/src/test/java/hudson/model/WorkspaceCleanupThreadTest.java index dc2c8e0c5c..49057a1245 100644 --- a/test/src/test/java/hudson/model/WorkspaceCleanupThreadTest.java +++ b/test/src/test/java/hudson/model/WorkspaceCleanupThreadTest.java @@ -33,6 +33,7 @@ import hudson.util.StreamTaskListener; import java.io.File; import java.io.IOException; +import java.util.concurrent.TimeUnit; import java.util.logging.Level; import jenkins.MasterToSlaveFileCallable; @@ -135,7 +136,7 @@ public class WorkspaceCleanupThreadTest { FilePath ws = createOldWorkspaceOn(r.jenkins, p); createOldWorkspaceOn(r.createOnlineSlave(), p); - long twoDaysOld = System.currentTimeMillis() - 2 * 24 * 60 * 60 * 1000; + long twoDaysOld = System.currentTimeMillis() - TimeUnit.DAYS.toMillis(2); ws.act(new Touch(twoDaysOld)); WorkspaceCleanupThread.retainForDays = 3; @@ -151,7 +152,7 @@ public class WorkspaceCleanupThreadTest { @Test @WithoutJenkins public void recurrencePeriodIsInHours() { assertEquals( - WorkspaceCleanupThread.recurrencePeriodHours * 60 * 60 * 1000 , + TimeUnit.HOURS.toMillis(WorkspaceCleanupThread.recurrencePeriodHours), new WorkspaceCleanupThread().getRecurrencePeriod() ); } From cfbef24071d16fe700c3418968e0f36af5ab2c00 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Tue, 26 Feb 2019 12:21:06 -0500 Subject: [PATCH 11/32] switch to ArrayUtils --- .../java/hudson/util/MultipartFormDataParser.java | 13 ++----------- core/src/main/java/jenkins/util/TreeString.java | 5 ++--- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/core/src/main/java/hudson/util/MultipartFormDataParser.java b/core/src/main/java/hudson/util/MultipartFormDataParser.java index 96296247a8..466962e4a3 100644 --- a/core/src/main/java/hudson/util/MultipartFormDataParser.java +++ b/core/src/main/java/hudson/util/MultipartFormDataParser.java @@ -27,6 +27,7 @@ import org.apache.commons.fileupload.servlet.ServletFileUpload; import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.FileUploadException; +import org.apache.commons.lang.ArrayUtils; import javax.annotation.CheckForNull; import javax.servlet.http.HttpServletRequest; @@ -92,16 +93,6 @@ public class MultipartFormDataParser implements AutoCloseable { } String[] parts = contentType.split(";"); - if (parts.length == 0) { - return false; - } - - for (String part : parts) { - if ("multipart/form-data".equals(part)) { - return true; - } - } - - return false; + return ArrayUtils.contains(parts, "multipart/form-data"); } } diff --git a/core/src/main/java/jenkins/util/TreeString.java b/core/src/main/java/jenkins/util/TreeString.java index 6d54889144..09ea85a93e 100644 --- a/core/src/main/java/jenkins/util/TreeString.java +++ b/core/src/main/java/jenkins/util/TreeString.java @@ -26,6 +26,7 @@ package jenkins.util; import java.io.Serializable; import java.util.Map; +import org.apache.commons.lang.ArrayUtils; import org.apache.commons.lang.StringUtils; import com.thoughtworks.xstream.XStream; @@ -124,9 +125,7 @@ public final class TreeString implements Serializable { public int hashCode() { int h = parent == null ? 0 : parent.hashCode(); - for (char c : label) { - h = 31 * h + c; - } + h = 31 * h + ArrayUtils.hashCode(label); assert toString().hashCode() == h; return h; From 95c25750621e8ae9d9e18cf70d2ea70f5ddfab1d Mon Sep 17 00:00:00 2001 From: Wadeck Follonier Date: Wed, 27 Feb 2019 11:34:56 +0100 Subject: [PATCH 12/32] [JENKINS-52818] Add the missing @since - avoid git-archeology to find when the interface was added --- core/src/main/java/hudson/model/PersistentDescriptor.java | 1 + 1 file changed, 1 insertion(+) diff --git a/core/src/main/java/hudson/model/PersistentDescriptor.java b/core/src/main/java/hudson/model/PersistentDescriptor.java index 837d154cfb..80a2f829e4 100644 --- a/core/src/main/java/hudson/model/PersistentDescriptor.java +++ b/core/src/main/java/hudson/model/PersistentDescriptor.java @@ -8,6 +8,7 @@ import javax.annotation.PostConstruct; * {@link Descriptor#load()} method is annotated as {@link PostConstruct} so it get automatically invoked after * constructor and field injection. * @author Nicolas De Loof + * @since 2.140 */ public interface PersistentDescriptor extends Saveable { From 73609ddf59622e54d61d3aee2156daf3e46e7709 Mon Sep 17 00:00:00 2001 From: Wadeck Follonier Date: Wed, 27 Feb 2019 12:05:03 +0100 Subject: [PATCH 13/32] Change the Logger name for Legacy API Token monitor --- .../security/apitoken/LegacyApiTokenAdministrativeMonitor.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/core/src/main/java/jenkins/security/apitoken/LegacyApiTokenAdministrativeMonitor.java b/core/src/main/java/jenkins/security/apitoken/LegacyApiTokenAdministrativeMonitor.java index bb00783c38..d2463aa404 100644 --- a/core/src/main/java/jenkins/security/apitoken/LegacyApiTokenAdministrativeMonitor.java +++ b/core/src/main/java/jenkins/security/apitoken/LegacyApiTokenAdministrativeMonitor.java @@ -26,7 +26,6 @@ package jenkins.security.apitoken; import hudson.Extension; import hudson.model.AdministrativeMonitor; import hudson.model.User; -import hudson.node_monitors.AbstractAsyncNodeMonitorDescriptor; import hudson.util.HttpResponses; import jenkins.security.ApiTokenProperty; import org.jenkinsci.Symbol; @@ -53,7 +52,7 @@ import java.util.stream.Collectors; @Symbol("legacyApiTokenUsage") @Restricted(NoExternalUse.class) public class LegacyApiTokenAdministrativeMonitor extends AdministrativeMonitor { - private static final Logger LOGGER = Logger.getLogger(AbstractAsyncNodeMonitorDescriptor.class.getName()); + private static final Logger LOGGER = Logger.getLogger(LegacyApiTokenAdministrativeMonitor.class.getName()); public LegacyApiTokenAdministrativeMonitor() { super("legacyApiToken"); From 38949730cfaa2915766947f21d3ab9109bfaef5f Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Thu, 28 Feb 2019 01:24:30 -0500 Subject: [PATCH 14/32] [JENKINS-42443] Fix spinner interaction with tabbar.less --- war/src/main/js/widgets/config/tabbar.less | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/war/src/main/js/widgets/config/tabbar.less b/war/src/main/js/widgets/config/tabbar.less index 82b9dc7cd2..0298d91cb3 100644 --- a/war/src/main/js/widgets/config/tabbar.less +++ b/war/src/main/js/widgets/config/tabbar.less @@ -228,7 +228,7 @@ height:@input-line-height; line-height:@input-line-height; } - select{ + select:not(.select-ajax-pending) { border-radius:0; background:@brightest; } From 8825451f67d25e908d7ee0616072339d5d8fbd51 Mon Sep 17 00:00:00 2001 From: Josh Soref Date: Thu, 28 Feb 2019 08:12:37 -0500 Subject: [PATCH 15/32] spelling: dependent (#3821) * spelling: dependent Writers following British writing convention often confuse dependent and dependant. Those following US writing convention have an easier time with these words because Americans do not use dependant. A dependant is a person who is dependent on someone else. (For example, a child is dependent on its parents. Therefore, a child is a dependant of its parents.) Jenkins does not deal with people, thus the UK rule which is confusing does not apply. * Add deprecated shims --- core/src/main/java/hudson/PluginManager.java | 50 ++--- core/src/main/java/hudson/PluginWrapper.java | 179 +++++++++++------- .../java/hudson/cli/DisablePluginCommand.java | 32 ++-- .../main/resources/hudson/Messages.properties | 2 +- .../resources/hudson/PluginManager/_table.js | 116 ++++++------ .../hudson/PluginManager/installed.jelly | 14 +- .../PluginManager/installed_bg.properties | 4 +- .../PluginManager/installed_de.properties | 4 +- .../PluginManager/installed_it.properties | 4 +- .../PluginManager/installed_sr.properties | 4 +- .../resources/hudson/cli/Messages.properties | 2 +- .../hudson/PluginManagerInstalledGUITest.java | 32 ++-- .../hudson/cli/DisablePluginCommandTest.java | 16 +- war/src/main/webapp/css/style.css | 10 +- 14 files changed, 258 insertions(+), 211 deletions(-) diff --git a/core/src/main/java/hudson/PluginManager.java b/core/src/main/java/hudson/PluginManager.java index 96dddf8abd..c26ca2439d 100644 --- a/core/src/main/java/hudson/PluginManager.java +++ b/core/src/main/java/hudson/PluginManager.java @@ -591,10 +591,10 @@ public abstract class PluginManager extends AbstractModelObject implements OnMas }); // All plugins are loaded. Now we can figure out who depends on who. - requires(PLUGINS_PREPARED).attains(COMPLETED).add("Resolving Dependant Plugins Graph", new Executable() { + requires(PLUGINS_PREPARED).attains(COMPLETED).add("Resolving Dependent Plugins Graph", new Executable() { @Override public void run(Reactor reactor) throws Exception { - resolveDependantPlugins(); + resolveDependentPlugins(); } }); }}); @@ -948,7 +948,7 @@ public abstract class PluginManager extends AbstractModelObject implements OnMas } // Redo who depends on who. - resolveDependantPlugins(); + resolveDependentPlugins(); try { Jenkins.get().refreshExtensions(); @@ -960,40 +960,40 @@ public abstract class PluginManager extends AbstractModelObject implements OnMas } @Restricted(NoExternalUse.class) - public synchronized void resolveDependantPlugins() { + public synchronized void resolveDependentPlugins() { for (PluginWrapper plugin : plugins) { - // Set of optional dependants plugins of plugin - Set optionalDependants = new HashSet<>(); - Set dependants = new HashSet<>(); - for (PluginWrapper possibleDependant : plugins) { - // No need to check if plugin is dependant of itself - if(possibleDependant.getShortName().equals(plugin.getShortName())) { + // Set of optional dependents plugins of plugin + Set optionalDependents = new HashSet<>(); + Set dependents = new HashSet<>(); + for (PluginWrapper possibleDependent : plugins) { + // No need to check if plugin is dependent of itself + if(possibleDependent.getShortName().equals(plugin.getShortName())) { continue; } // The plugin could have just been deleted. If so, it doesn't - // count as a dependant. - if (possibleDependant.isDeleted()) { + // count as a dependent. + if (possibleDependent.isDeleted()) { continue; } - List dependencies = possibleDependant.getDependencies(); + List dependencies = possibleDependent.getDependencies(); for (Dependency dependency : dependencies) { if (dependency.shortName.equals(plugin.getShortName())) { - dependants.add(possibleDependant.getShortName()); + dependents.add(possibleDependent.getShortName()); - // If, in addition, the dependency is optional, add to the optionalDependants list + // If, in addition, the dependency is optional, add to the optionalDependents list if (dependency.optional) { - optionalDependants.add(possibleDependant.getShortName()); + optionalDependents.add(possibleDependent.getShortName()); } - // already know possibleDependant depends on plugin, no need to continue with the rest of - // dependencies. We continue with the next possibleDependant + // already know possibleDependent depends on plugin, no need to continue with the rest of + // dependencies. We continue with the next possibleDependent break; } } } - plugin.setDependants(dependants); - plugin.setOptionalDependants(optionalDependants); + plugin.setDependents(dependents); + plugin.setOptionalDependents(optionalDependents); } } @@ -1545,7 +1545,7 @@ public abstract class PluginManager extends AbstractModelObject implements OnMas } // Fire a one-off thread to wait for the plugins to be deployed and then - // refresh the dependant plugins list. + // refresh the dependent plugins list. new Thread() { @Override public void run() { @@ -1563,7 +1563,7 @@ public abstract class PluginManager extends AbstractModelObject implements OnMas } } // All the plugins are installed. It's now safe to refresh. - resolveDependantPlugins(); + resolveDependentPlugins(); break; } } @@ -1941,10 +1941,10 @@ public abstract class PluginManager extends AbstractModelObject implements OnMas } /** - * Disable a list of plugins using a strategy for their dependants plugins. - * @param strategy the strategy regarding how the dependant plugins are processed + * Disable a list of plugins using a strategy for their dependents plugins. + * @param strategy the strategy regarding how the dependent plugins are processed * @param plugins the list of plugins - * @return the list of results for every plugin and their dependant plugins. + * @return the list of results for every plugin and their dependent plugins. * @throws IOException see {@link PluginWrapper#disable()} */ public @NonNull List disablePlugins(@NonNull PluginWrapper.PluginDisableStrategy strategy, @NonNull List plugins) throws IOException { diff --git a/core/src/main/java/hudson/PluginWrapper.java b/core/src/main/java/hudson/PluginWrapper.java index 8c16b0c6f8..be78e2d192 100644 --- a/core/src/main/java/hudson/PluginWrapper.java +++ b/core/src/main/java/hudson/PluginWrapper.java @@ -208,12 +208,12 @@ public class PluginWrapper implements Comparable, ModelObject { /** * List of plugins that depend on this plugin. */ - private Set dependants = Collections.emptySet(); + private Set dependents = Collections.emptySet(); /** * List of plugins that depend optionally on this plugin. */ - private Set optionalDependants = Collections.emptySet(); + private Set optionalDependents = Collections.emptySet(); /** * The core can depend on a plugin if it is bundled. Sometimes it's the only thing that @@ -223,37 +223,69 @@ public class PluginWrapper implements Comparable, ModelObject { /** * Set the list of components that depend on this plugin. - * @param dependants The list of components that depend on this plugin. + * @param dependents The list of components that depend on this plugin. */ - public void setDependants(@Nonnull Set dependants) { - this.dependants = dependants; + public void setDependents(@Nonnull Set dependents) { + this.dependents = dependents; + } + + /** + * @deprecated Please use {@link setDependents}. + */ + @Deprecated + public void setDependants(@Nonnull Set dependents) { + setDependents(dependents); } /** * Set the list of components that depend optionally on this plugin. - * @param optionalDependants The list of components that depend optionally on this plugin. + * @param optionalDependents The list of components that depend optionally on this plugin. */ - public void setOptionalDependants(@Nonnull Set optionalDependants) { - this.optionalDependants = optionalDependants; + public void setOptionalDependents(@Nonnull Set optionalDependents) { + this.optionalDependents = optionalDependents; + } + + /** + * @deprecated Please use {@link setOptionalDependents}. + */ + @Deprecated + public void setOptionalDependants(@Nonnull Set optionalDependents) { + setOptionalDependents(dependents); } /** * Get the list of components that depend on this plugin. * @return The list of components that depend on this plugin. */ - public @Nonnull Set getDependants() { - if (isBundled && dependants.isEmpty()) { + public @Nonnull Set getDependents() { + if (isBundled && dependents.isEmpty()) { return CORE_ONLY_DEPENDANT; } else { - return dependants; + return dependents; } } + /** + * @deprecated Please use {@link getDependents}. + */ + @Deprecated + public @Nonnull Set getDependants() { + return getDependents(); + } + /** * @return The list of components that depend optionally on this plugin. */ + public @Nonnull Set getOptionalDependents() { + return optionalDependents; + } + + /** + * @deprecated Please use {@link getOptionalDependents}. + */ + @Deprecated public @Nonnull Set getOptionalDependants() { - return optionalDependants; + return getOptionalDependents(); } /** @@ -261,8 +293,16 @@ public class PluginWrapper implements Comparable, ModelObject { * @return {@code true} if something (Jenkins core, or another plugin) depends on this * plugin, otherwise {@code false}. */ + public boolean hasDependents() { + return (isBundled || !dependents.isEmpty()); + } + + /** + * @deprecated Please use {@link hasDependents}. + */ + @Deprecated public boolean hasDependants() { - return (isBundled || !dependants.isEmpty()); + return hasDependents(); } /** @@ -270,10 +310,17 @@ public class PluginWrapper implements Comparable, ModelObject { * @return {@code true} if something (Jenkins core, or another plugin) depends optionally on this * plugin, otherwise {@code false}. */ - public boolean hasOptionalDependants() { - return !optionalDependants.isEmpty(); + public boolean hasOptionalDependents() { + return !optionalDependents.isEmpty(); } + /** + * @deprecated Please use {@link hasOptionalDependents}. + */ + @Deprecated + public boolean hasOptionalDependants() { + return hasOptionalDependents(); + } /** * Does this plugin depend on any other plugins. @@ -597,7 +644,7 @@ public class PluginWrapper implements Comparable, ModelObject { /** * Disable this plugin using a strategy. * @param strategy strategy to use - * @return an object representing the result of the disablement of this plugin and its dependants plugins. + * @return an object representing the result of the disablement of this plugin and its dependents plugins. */ public @Nonnull PluginDisableResult disable(@Nonnull PluginDisableStrategy strategy) { PluginDisableResult result = new PluginDisableResult(shortName); @@ -608,55 +655,55 @@ public class PluginWrapper implements Comparable, ModelObject { return result; } - // Act as a flag indicating if this plugin, finally, can be disabled. If there is a not-disabled-dependant + // Act as a flag indicating if this plugin, finally, can be disabled. If there is a not-disabled-dependent // plugin, this one couldn't be disabled. - String aDependantNotDisabled = null; + String aDependentNotDisabled = null; - // List of dependants plugins to 'check'. 'Check' means disable for mandatory or all strategies, or review if - // this dependant-mandatory plugin is enabled in order to return an error for the NONE strategy. - Set dependantsToCheck = dependantsToCheck(strategy); + // List of dependents plugins to 'check'. 'Check' means disable for mandatory or all strategies, or review if + // this dependent-mandatory plugin is enabled in order to return an error for the NONE strategy. + Set dependentsToCheck = dependentsToCheck(strategy); - // Review all the dependants and add to the plugin result what happened with its dependants - for (String dependant : dependantsToCheck) { - PluginWrapper dependantPlugin = parent.getPlugin(dependant); + // Review all the dependents and add to the plugin result what happened with its dependents + for (String dependent : dependentsToCheck) { + PluginWrapper dependentPlugin = parent.getPlugin(dependent); - // The dependant plugin doesn't exist, add an error to the report - if (dependantPlugin == null) { - PluginDisableResult dependantStatus = new PluginDisableResult(dependant, NO_SUCH_PLUGIN, Messages.PluginWrapper_NoSuchPlugin(dependant)); - result.addDependantDisableStatus(dependantStatus); + // The dependent plugin doesn't exist, add an error to the report + if (dependentPlugin == null) { + PluginDisableResult dependentStatus = new PluginDisableResult(dependent, NO_SUCH_PLUGIN, Messages.PluginWrapper_NoSuchPlugin(dependent)); + result.addDependentDisableStatus(dependentStatus); - // If the strategy is none and there is some enabled dependant plugin, the plugin cannot be disabled. If - // this dependant plugin is not enabled, continue searching for one enabled. + // If the strategy is none and there is some enabled dependent plugin, the plugin cannot be disabled. If + // this dependent plugin is not enabled, continue searching for one enabled. } else if (strategy.equals(PluginDisableStrategy.NONE)) { - if (dependantPlugin.isEnabled()) { - aDependantNotDisabled = dependant; - break; // in this case, we don't need to continue with the rest of its dependants + if (dependentPlugin.isEnabled()) { + aDependentNotDisabled = dependent; + break; // in this case, we don't need to continue with the rest of its dependents } - // If the strategy is not none and this dependant plugin is not enabled, add it as already disabled - } else if (!dependantPlugin.isEnabled()) { - PluginDisableResult dependantStatus = new PluginDisableResult(dependant, ALREADY_DISABLED, Messages.PluginWrapper_Already_Disabled(dependant)); - result.addDependantDisableStatus(dependantStatus); + // If the strategy is not none and this dependent plugin is not enabled, add it as already disabled + } else if (!dependentPlugin.isEnabled()) { + PluginDisableResult dependentStatus = new PluginDisableResult(dependent, ALREADY_DISABLED, Messages.PluginWrapper_Already_Disabled(dependent)); + result.addDependentDisableStatus(dependentStatus); - // If the strategy is not none and this dependant plugin is enabled, disable it + // If the strategy is not none and this dependent plugin is enabled, disable it } else { // As there is no cycles in the plugin dependencies, the recursion shouldn't be infinite. The - // strategy used is the same for its dependants plugins - PluginDisableResult dependantResult = dependantPlugin.disable(strategy); - PluginDisableStatus dependantStatus = dependantResult.status; + // strategy used is the same for its dependents plugins + PluginDisableResult dependentResult = dependentPlugin.disable(strategy); + PluginDisableStatus dependentStatus = dependentResult.status; - // If something wrong happened, flag this dependant plugin to set the plugin later as not-disabled due - // to its dependants plugins. - if (ERROR_DISABLING.equals(dependantStatus) || NOT_DISABLED_DEPENDANTS.equals(dependantStatus)) { - aDependantNotDisabled = dependant; - break; // we found a dependant plugin enabled, stop looking for dependant plugins to disable. + // If something wrong happened, flag this dependent plugin to set the plugin later as not-disabled due + // to its dependents plugins. + if (ERROR_DISABLING.equals(dependentStatus) || NOT_DISABLED_DEPENDANTS.equals(dependentStatus)) { + aDependentNotDisabled = dependent; + break; // we found a dependent plugin enabled, stop looking for dependent plugins to disable. } - result.addDependantDisableStatus(dependantResult); + result.addDependentDisableStatus(dependentResult); } } - // If there is no enabled-dependant plugin, disable this plugin and add it to the result - if (aDependantNotDisabled == null) { + // If there is no enabled-dependent plugin, disable this plugin and add it to the result + if (aDependentNotDisabled == null) { try { this.disableWithoutCheck(); result.setMessage(Messages.PluginWrapper_Plugin_Disabled(shortName)); @@ -665,30 +712,30 @@ public class PluginWrapper implements Comparable, ModelObject { result.setMessage(Messages.PluginWrapper_Error_Disabling(shortName, io.toString())); result.setStatus(ERROR_DISABLING); } - // if there is yet some not disabled dependant plugin (only possible with none strategy), this plugin cannot + // if there is yet some not disabled dependent plugin (only possible with none strategy), this plugin cannot // be disabled. } else { - result.setMessage(Messages.PluginWrapper_Plugin_Has_Dependant(shortName, aDependantNotDisabled, strategy)); + result.setMessage(Messages.PluginWrapper_Plugin_Has_Dependent(shortName, aDependentNotDisabled, strategy)); result.setStatus(NOT_DISABLED_DEPENDANTS); } return result; } - private Set dependantsToCheck(PluginDisableStrategy strategy) { - Set dependantsToCheck; + private Set dependentsToCheck(PluginDisableStrategy strategy) { + Set dependentsToCheck; switch (strategy) { case ALL: - // getDependants returns all the dependant plugins, mandatory or optional. - dependantsToCheck = this.getDependants(); + // getDependents returns all the dependent plugins, mandatory or optional. + dependentsToCheck = this.getDependents(); break; default: // It includes MANDATORY, NONE: - // with NONE, the process only fail if mandatory dependant plugins exists - // As of getDependants has all the dependants, we get the difference between them and only the optionals - dependantsToCheck = Sets.difference(this.getDependants(), this.getOptionalDependants()); + // with NONE, the process only fail if mandatory dependent plugins exists + // As of getDependents has all the dependents, we get the difference between them and only the optionals + dependentsToCheck = Sets.difference(this.getDependents(), this.getOptionalDependents()); } - return dependantsToCheck; + return dependentsToCheck; } /** @@ -1001,13 +1048,13 @@ public class PluginWrapper implements Comparable, ModelObject { } /** - * The result of the disablement of a plugin and its dependants plugins. + * The result of the disablement of a plugin and its dependents plugins. */ public static class PluginDisableResult { private String plugin; private PluginDisableStatus status; private String message; - private Set dependantsDisableStatus = new HashSet<>(); + private Set dependentsDisableStatus = new HashSet<>(); public PluginDisableResult(String plugin) { this.plugin = plugin; @@ -1052,12 +1099,12 @@ public class PluginWrapper implements Comparable, ModelObject { this.message = message; } - public Set getDependantsDisableStatus() { - return dependantsDisableStatus; + public Set getDependentsDisableStatus() { + return dependentsDisableStatus; } - public void addDependantDisableStatus(PluginDisableResult dependantDisableStatus) { - dependantsDisableStatus.add(dependantDisableStatus); + public void addDependentDisableStatus(PluginDisableResult dependentDisableStatus) { + dependentsDisableStatus.add(dependentDisableStatus); } } @@ -1132,7 +1179,7 @@ public class PluginWrapper implements Comparable, ModelObject { archive.delete(); // Redo who depends on who. - jenkins.getPluginManager().resolveDependantPlugins(); + jenkins.getPluginManager().resolveDependentPlugins(); return HttpResponses.redirectViaContextPath("/pluginManager/installed"); // send back to plugin manager } diff --git a/core/src/main/java/hudson/cli/DisablePluginCommand.java b/core/src/main/java/hudson/cli/DisablePluginCommand.java index 354d69a561..101576e904 100644 --- a/core/src/main/java/hudson/cli/DisablePluginCommand.java +++ b/core/src/main/java/hudson/cli/DisablePluginCommand.java @@ -47,10 +47,10 @@ public class DisablePluginCommand extends CLICommand { @Option(name = "-restart", aliases = "-r", usage = "Restart Jenkins after disabling plugins.") private boolean restart; - @Option(name = "-strategy", aliases = "-s", metaVar = "strategy", usage = "How to process the dependant plugins. \n" + - "- none: if a mandatory dependant plugin exists and it is enabled, the plugin cannot be disabled (default value).\n" + - "- mandatory: all mandatory dependant plugins are also disabled, optional dependant plugins remain enabled.\n" + - "- all: all dependant plugins are also disabled, no matter if its dependency is optional or mandatory.") + @Option(name = "-strategy", aliases = "-s", metaVar = "strategy", usage = "How to process the dependent plugins. \n" + + "- none: if a mandatory dependent plugin exists and it is enabled, the plugin cannot be disabled (default value).\n" + + "- mandatory: all mandatory dependent plugins are also disabled, optional dependent plugins remain enabled.\n" + + "- all: all dependent plugins are also disabled, no matter if its dependency is optional or mandatory.") private String strategy = PluginWrapper.PluginDisableStrategy.NONE.toString(); @Option(name = "-quiet", aliases = "-q", usage = "Be quiet, print only the error messages") @@ -140,10 +140,10 @@ public class DisablePluginCommand extends CLICommand { } printIndented(indent, Messages.DisablePluginCommand_StatusMessage(oneResult.getPlugin(), oneResult.getStatus(), oneResult.getMessage())); - if (oneResult.getDependantsDisableStatus().size() > 0) { + if (oneResult.getDependentsDisableStatus().size() > 0) { indent += INDENT_SPACE; - for (PluginWrapper.PluginDisableResult oneDependantResult : oneResult.getDependantsDisableStatus()) { - printResult(oneDependantResult, indent); + for (PluginWrapper.PluginDisableResult oneDependentResult : oneResult.getDependentsDisableStatus()) { + printResult(oneDependentResult, indent); } } } @@ -163,9 +163,9 @@ public class DisablePluginCommand extends CLICommand { } /** - * Restart if this particular result of the disablement of a plugin and its dependant plugins (depending on the + * Restart if this particular result of the disablement of a plugin and its dependent plugins (depending on the * strategy used) has a plugin disablexd. - * @param oneResult the result of a plugin (and its dependants). + * @param oneResult the result of a plugin (and its dependents). * @return true if it end up in restarting jenkins. */ private boolean restartIfNecessary(PluginWrapper.PluginDisableResult oneResult) throws RestartNotSupportedException { @@ -175,9 +175,9 @@ public class DisablePluginCommand extends CLICommand { return true; } - if (oneResult.getDependantsDisableStatus().size() > 0) { - for (PluginWrapper.PluginDisableResult oneDependantResult : oneResult.getDependantsDisableStatus()) { - if (restartIfNecessary(oneDependantResult)) { + if (oneResult.getDependentsDisableStatus().size() > 0) { + for (PluginWrapper.PluginDisableResult oneDependentResult : oneResult.getDependentsDisableStatus()) { + if (restartIfNecessary(oneDependentResult)) { return true; } } @@ -191,7 +191,7 @@ public class DisablePluginCommand extends CLICommand { * Calculate the result code of the full process based in what went on during the process * @param results he list of results for the disablement of each plugin * @return the status code. 0 if all plugins disabled. {@link #RETURN_CODE_NOT_DISABLED_DEPENDANTS} if some - * dependant plugin is not disabled (with strategy NONE), {@link #RETURN_CODE_NO_SUCH_PLUGIN} if some passed + * dependent plugin is not disabled (with strategy NONE), {@link #RETURN_CODE_NO_SUCH_PLUGIN} if some passed * plugin doesn't exist. Whatever happens first. */ private int getResultCode(List results) { @@ -208,7 +208,7 @@ public class DisablePluginCommand extends CLICommand { /** * Calculate the result code of the disablement of one plugin based in what went on during the process of this one - * and its dependant plugins. + * and its dependent plugins. * @param result the result of the disablement of this plugin * @return the status code */ @@ -223,8 +223,8 @@ public class DisablePluginCommand extends CLICommand { } if (returnCode == 0) { - for (PluginWrapper.PluginDisableResult oneDependantResult : result.getDependantsDisableStatus()) { - returnCode = getResultCode(oneDependantResult); + for (PluginWrapper.PluginDisableResult oneDependentResult : result.getDependentsDisableStatus()) { + returnCode = getResultCode(oneDependentResult); if (returnCode != 0) { break; } diff --git a/core/src/main/resources/hudson/Messages.properties b/core/src/main/resources/hudson/Messages.properties index 7ee5f14f93..20f79ad0b0 100644 --- a/core/src/main/resources/hudson/Messages.properties +++ b/core/src/main/resources/hudson/Messages.properties @@ -89,7 +89,7 @@ PluginWrapper.obsoleteCore=You must update Jenkins from version {0} to version { PluginWrapper.obsoleteJava=You must update Java from version {0} to version {1} or later to run this plugin. PluginWrapper.PluginWrapperAdministrativeMonitor.DisplayName=Plugins Failed To Load PluginWrapper.Already.Disabled=The plugin ''{0}'' was already disabled -PluginWrapper.Plugin.Has.Dependant=The plugin ''{0}'' has, at least, one dependant plugin ({1}) and the disable strategy is {2}, so it cannot be disabled +PluginWrapper.Plugin.Has.Dependent=The plugin ''{0}'' has, at least, one dependent plugin ({1}) and the disable strategy is {2}, so it cannot be disabled PluginWrapper.Plugin.Disabled=Plugin ''{0}'' disabled PluginWrapper.NoSuchPlugin=No such plugin found with the name ''{0}'' PluginWrapper.Error.Disabling=There was an error disabling the ''{0}'' plugin. Error: ''{1}'' diff --git a/core/src/main/resources/hudson/PluginManager/_table.js b/core/src/main/resources/hudson/PluginManager/_table.js index 845185ef6d..107ee8a8c9 100644 --- a/core/src/main/resources/hudson/PluginManager/_table.js +++ b/core/src/main/resources/hudson/PluginManager/_table.js @@ -58,7 +58,7 @@ Behaviour.specify("#filter-box", '_table', 0, function(e) { /** * Code for handling the enable/disable behavior based on plugin - * dependencies and dependants. + * dependencies and dependents. */ (function(){ function selectAll(selector, element) { @@ -127,41 +127,41 @@ Behaviour.specify("#filter-box", '_table', 0, function(e) { return ids; } - function markAllDependantsDisabled(pluginTR) { + function markAllDependentsDisabled(pluginTR) { var jenkinsPluginMetadata = pluginTR.jenkinsPluginMetadata; - var dependantIds = jenkinsPluginMetadata.dependantIds; + var dependentIds = jenkinsPluginMetadata.dependentIds; - if (dependantIds) { - // If the only dependant is jenkins-core (it's a bundle plugin), then lets - // treat it like all its dependants are disabled. We're really only interested in - // dependant plugins in this case. + if (dependentIds) { + // If the only dependent is jenkins-core (it's a bundle plugin), then lets + // treat it like all its dependents are disabled. We're really only interested in + // dependent plugins in this case. // Note: This does not cover "implied" dependencies ala detached plugins. See https://goo.gl/lQHrUh - if (dependantIds.length === 1 && dependantIds[0] === 'jenkins-core') { - pluginTR.addClassName('all-dependants-disabled'); + if (dependentIds.length === 1 && dependentIds[0] === 'jenkins-core') { + pluginTR.addClassName('all-dependents-disabled'); return; } - for (var i = 0; i < dependantIds.length; i++) { - var dependantId = dependantIds[i]; + for (var i = 0; i < dependentIds.length; i++) { + var dependentId = dependentIds[i]; - if (dependantId === 'jenkins-core') { + if (dependentId === 'jenkins-core') { // Jenkins core is always enabled. So, make sure it's not possible to disable/uninstall // any plugins that it "depends" on. (we sill have bundled plugins) - pluginTR.removeClassName('all-dependants-disabled'); + pluginTR.removeClassName('all-dependents-disabled'); return; } - // The dependant is a plugin.... - var dependantPluginTr = getPluginTR(dependantId); - if (dependantPluginTr && dependantPluginTr.jenkinsPluginMetadata.enableInput.checked) { + // The dependent is a plugin.... + var dependentPluginTr = getPluginTR(dependentId); + if (dependentPluginTr && dependentPluginTr.jenkinsPluginMetadata.enableInput.checked) { // One of the plugins that depend on this plugin, is marked as enabled. - pluginTR.removeClassName('all-dependants-disabled'); + pluginTR.removeClassName('all-dependents-disabled'); return; } } } - pluginTR.addClassName('all-dependants-disabled'); + pluginTR.addClassName('all-dependents-disabled'); } function markHasDisabledDependencies(pluginTR) { @@ -185,12 +185,12 @@ Behaviour.specify("#filter-box", '_table', 0, function(e) { function setEnableWidgetStates() { for (var i = 0; i < pluginTRs.length; i++) { var pluginMetadata = pluginTRs[i].jenkinsPluginMetadata; - if (pluginTRs[i].hasClassName('has-dependants-but-disabled')) { + if (pluginTRs[i].hasClassName('has-dependents-but-disabled')) { if (pluginMetadata.enableInput.checked) { - pluginTRs[i].removeClassName('has-dependants-but-disabled'); + pluginTRs[i].removeClassName('has-dependents-but-disabled'); } } - markAllDependantsDisabled(pluginTRs[i]); + markAllDependentsDisabled(pluginTRs[i]); markHasDisabledDependencies(pluginTRs[i]); } } @@ -244,48 +244,48 @@ Behaviour.specify("#filter-box", '_table', 0, function(e) { infoContainer.appendChild(dependenciesDiv); return true; - } if (pluginTR.hasClassName('has-dependants')) { - if (!pluginTR.hasClassName('all-dependants-disabled')) { - var dependantIds = pluginMetadata.dependantIds; + } if (pluginTR.hasClassName('has-dependents')) { + if (!pluginTR.hasClassName('all-dependents-disabled')) { + var dependentIds = pluginMetadata.dependentIds; - // If the only dependant is jenkins-core (it's a bundle plugin), then lets - // treat it like all its dependants are disabled. We're really only interested in - // dependant plugins in this case. + // If the only dependent is jenkins-core (it's a bundle plugin), then lets + // treat it like all its dependents are disabled. We're really only interested in + // dependent plugins in this case. // Note: This does not cover "implied" dependencies ala detached plugins. See https://goo.gl/lQHrUh - if (dependantIds.length === 1 && dependantIds[0] === 'jenkins-core') { - pluginTR.addClassName('all-dependants-disabled'); + if (dependentIds.length === 1 && dependentIds[0] === 'jenkins-core') { + pluginTR.addClassName('all-dependents-disabled'); return false; } - var dependantsDiv = pluginMetadata.dependantsDiv; - var dependantSpans = pluginMetadata.dependants; + var dependentsDiv = pluginMetadata.dependentsDiv; + var dependentSpans = pluginMetadata.dependents; - infoContainer.update('
' + i18n('cannot-disable') + '
' + i18n('enabled-dependants') + '.
'); + infoContainer.update('
' + i18n('cannot-disable') + '
' + i18n('enabled-dependents') + '.
'); - // Go through each dependant element. Show the spans where the dependant is + // Go through each dependent element. Show the spans where the dependent is // enabled. Hide the others. - for (var i = 0; i < dependantSpans.length; i++) { - var dependantSpan = dependantSpans[i]; - var dependantId = dependantSpan.getAttribute('data-plugin-id'); + for (var i = 0; i < dependentSpans.length; i++) { + var dependentSpan = dependentSpans[i]; + var dependentId = dependentSpan.getAttribute('data-plugin-id'); - if (dependantId === 'jenkins-core') { + if (dependentId === 'jenkins-core') { // show the span - dependantSpan.setStyle({display: 'inline-block'}); + dependentSpan.setStyle({display: 'inline-block'}); } else { - var depPluginTR = getPluginTR(dependantId); + var depPluginTR = getPluginTR(dependentId); var depPluginMetadata = depPluginTR.jenkinsPluginMetadata; if (depPluginMetadata.enableInput.checked) { // It's enabled ... show the span - dependantSpan.setStyle({display: 'inline-block'}); + dependentSpan.setStyle({display: 'inline-block'}); } else { // It's disabled ... hide the span - dependantSpan.setStyle({display: 'none'}); + dependentSpan.setStyle({display: 'none'}); } } } - dependantsDiv.setStyle({display: 'inherit'}); - infoContainer.appendChild(dependantsDiv); + dependentsDiv.setStyle({display: 'inherit'}); + infoContainer.appendChild(dependentsDiv); return true; } @@ -299,21 +299,21 @@ Behaviour.specify("#filter-box", '_table', 0, function(e) { infoContainer.removeAttribute('class'); infoContainer.addClassName('uninstall-state-info'); - if (pluginTR.hasClassName('has-dependants')) { + if (pluginTR.hasClassName('has-dependents')) { var pluginMetadata = pluginTR.jenkinsPluginMetadata; - var dependantsDiv = pluginMetadata.dependantsDiv; - var dependantSpans = pluginMetadata.dependants; + var dependentsDiv = pluginMetadata.dependentsDiv; + var dependentSpans = pluginMetadata.dependents; - infoContainer.update('
' + i18n('cannot-uninstall') + '
' + i18n('installed-dependants') + '.
'); + infoContainer.update('
' + i18n('cannot-uninstall') + '
' + i18n('installed-dependents') + '.
'); - // Go through each dependant element. Show them all. - for (var i = 0; i < dependantSpans.length; i++) { - var dependantSpan = dependantSpans[i]; - dependantSpan.setStyle({display: 'inline-block'}); + // Go through each dependent element. Show them all. + for (var i = 0; i < dependentSpans.length; i++) { + var dependentSpan = dependentSpans[i]; + dependentSpan.setStyle({display: 'inline-block'}); } - dependantsDiv.setStyle({display: 'inherit'}); - infoContainer.appendChild(dependantsDiv); + dependentsDiv.setStyle({display: 'inherit'}); + infoContainer.appendChild(dependentsDiv); return true; } @@ -324,23 +324,23 @@ Behaviour.specify("#filter-box", '_table', 0, function(e) { function initPluginRowHandling(pluginTR) { var enableInput = select('.enable input', pluginTR); var dependenciesDiv = select('.dependency-list', pluginTR); - var dependantsDiv = select('.dependant-list', pluginTR); + var dependentsDiv = select('.dependent-list', pluginTR); var enableTD = select('td.enable', pluginTR); var uninstallTD = select('td.uninstall', pluginTR); pluginTR.jenkinsPluginMetadata = { enableInput: enableInput, dependenciesDiv: dependenciesDiv, - dependantsDiv: dependantsDiv + dependentsDiv: dependentsDiv }; if (dependenciesDiv) { pluginTR.jenkinsPluginMetadata.dependencies = selectAll('span', dependenciesDiv); pluginTR.jenkinsPluginMetadata.dependencyIds = processSpanSet(pluginTR.jenkinsPluginMetadata.dependencies); } - if (dependantsDiv) { - pluginTR.jenkinsPluginMetadata.dependants = selectAll('span', dependantsDiv); - pluginTR.jenkinsPluginMetadata.dependantIds = processSpanSet(pluginTR.jenkinsPluginMetadata.dependants); + if (dependentsDiv) { + pluginTR.jenkinsPluginMetadata.dependents = selectAll('span', dependentsDiv); + pluginTR.jenkinsPluginMetadata.dependentIds = processSpanSet(pluginTR.jenkinsPluginMetadata.dependents); } // Setup event handlers... diff --git a/core/src/main/resources/hudson/PluginManager/installed.jelly b/core/src/main/resources/hudson/PluginManager/installed.jelly index f2cdc4b13c..12dccd3dee 100644 --- a/core/src/main/resources/hudson/PluginManager/installed.jelly +++ b/core/src/main/resources/hudson/PluginManager/installed.jelly @@ -48,8 +48,8 @@ THE SOFTWARE. data-cannot-disable="${%This plugin cannot be disabled}" data-cannot-uninstall="${%This plugin cannot be uninstalled}" data-disabled-dependencies="${%It has one or more disabled dependencies}" - data-enabled-dependants="${%It has one or more enabled dependants}" - data-installed-dependants="${%It has one or more installed dependants}" + data-enabled-dependents="${%It has one or more enabled dependents}" + data-installed-dependents="${%It has one or more installed dependents}" /> @@ -67,7 +67,7 @@ THE SOFTWARE. - +
${%Uninstall}
${%Uninstallation pending}

- -
- - + +
+ +
diff --git a/core/src/main/resources/hudson/PluginManager/installed_bg.properties b/core/src/main/resources/hudson/PluginManager/installed_bg.properties index 60dc8c4e29..226fb91952 100644 --- a/core/src/main/resources/hudson/PluginManager/installed_bg.properties +++ b/core/src/main/resources/hudson/PluginManager/installed_bg.properties @@ -48,7 +48,7 @@ Warning=\ \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 This\ plugin\ cannot\ be\ uninstalled=\ \u0422\u0430\u0437\u0438 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0430 \u043d\u0435 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0434\u0435\u0438\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430 -It\ has\ one\ or\ more\ enabled\ dependants=\ +It\ has\ one\ or\ more\ enabled\ dependents=\ \u0418\u043c\u0430 \u043f\u043e\u043d\u0435 \u0435\u0434\u043d\u0430 \u0434\u0440\u0443\u0433\u0430 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0430, \u043a\u043e\u044f\u0442\u043e \u0437\u0430\u0432\u0438\u0441\u0438 \u043e\u0442 \u043d\u0435\u044f It\ has\ one\ or\ more\ disabled\ dependencies=\ \u0418\u043c\u0430 \u043f\u043e\u043d\u0435 \u0435\u0434\u043d\u0430 \u0434\u0440\u0443\u0433\u0430 \u0438\u0437\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0430, \u043a\u043e\u044f\u0442\u043e \u0437\u0430\u0432\u0438\u0441\u0438 \u043e\u0442 \u043d\u0435\u044f @@ -61,7 +61,7 @@ Filter=\ requires.restart=\ \u0422\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0442\u0435 Jenkins, \u043f\u0440\u0435\u0434\u0438 \u0434\u0430 \u043f\u0440\u0430\u0432\u0438\u0442\u0435 \u043f\u043e\u0432\u0435\u0447\u0435 \u043f\u0440\u043e\u043c\u0435\u043d\u0438 \u043f\u043e\ \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0438\u0442\u0435. \u041e\u043f\u0430\u0441\u043d\u043e \u0435 \u0434\u0430 \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0438\u0442\u0435 \u0431\u0435\u0437 \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435. -It\ has\ one\ or\ more\ installed\ dependants=\ +It\ has\ one\ or\ more\ installed\ dependents=\ \u041a\u044a\u043c \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u0430\u0442\u0430 \u0435 \u0438\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043d\u0430 \u043f\u043e\u043d\u0435 \u0435\u0434\u043d\u0430 \u0434\u0440\u0443\u0433\u0430 \u043a\u0430\u0442\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442. No\ description\ available.=\ \u0411\u0435\u0437 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 diff --git a/core/src/main/resources/hudson/PluginManager/installed_de.properties b/core/src/main/resources/hudson/PluginManager/installed_de.properties index 442d08f127..2148e128ad 100644 --- a/core/src/main/resources/hudson/PluginManager/installed_de.properties +++ b/core/src/main/resources/hudson/PluginManager/installed_de.properties @@ -34,10 +34,10 @@ Uninstallation\ pending=Zur Deinstallation vorgemerkt Update\ Center=Update-Center This\ plugin\ cannot\ be\ disabled=Dieses Plugin kann nicht deaktiviert werden. requires.restart=Jenkins erfordert einen Neustart. Die Plugin-Konfiguration sollte nicht weiter ge\u00E4ndert werden. Starten Sie Jenkins neu, bevor Sie fortfahren. -It\ has\ one\ or\ more\ installed\ dependants=Mindestens ein Plugin ist von diesem abh\u00E4ngig +It\ has\ one\ or\ more\ installed\ dependents=Mindestens ein Plugin ist von diesem abh\u00E4ngig Warning=Warnung Filter=Filter -It\ has\ one\ or\ more\ enabled\ dependants=Mindestens ein aktives Plugin ist von diesem abh\u00E4ngig +It\ has\ one\ or\ more\ enabled\ dependents=Mindestens ein aktives Plugin ist von diesem abh\u00E4ngig It\ has\ one\ or\ more\ disabled\ dependencies=Mindestens eine Abh\u00E4ngigkeit ist deaktiviert This\ plugin\ cannot\ be\ uninstalled=Dieses Plugin kann nicht deinstalliert werden. No\ description\ available.=Keine Beschreibung verf\u00FCgbar. diff --git a/core/src/main/resources/hudson/PluginManager/installed_it.properties b/core/src/main/resources/hudson/PluginManager/installed_it.properties index a1361443e9..67ea17da65 100644 --- a/core/src/main/resources/hudson/PluginManager/installed_it.properties +++ b/core/src/main/resources/hudson/PluginManager/installed_it.properties @@ -35,8 +35,8 @@ This\ plugin\ cannot\ be\ uninstalled=Impossibile disinstallare questo plugin requires.restart=Quest''istanza di Jenkins deve essere riavviata. La modifica dello stato dei plugin in questa condizione è caldamente sconsigliata. Riavviare Jenkins prima di procedere. No\ plugins\ installed.=Nessun plugin installato. Filter=Filtro -It\ has\ one\ or\ more\ installed\ dependants=Ha uno o più plugin dipendenti installati -It\ has\ one\ or\ more\ enabled\ dependants=Ha uno o più plugin dipendenti abilitati +It\ has\ one\ or\ more\ installed\ dependents=Ha uno o più plugin dipendenti installati +It\ has\ one\ or\ more\ enabled\ dependents=Ha uno o più plugin dipendenti abilitati This\ plugin\ cannot\ be\ enabled=Questo plugin non può essere abilitato This\ plugin\ cannot\ be\ disabled=Questo plugin non può essere disabilitato No\ description\ available.=Nessuna descrizione disponibile. diff --git a/core/src/main/resources/hudson/PluginManager/installed_sr.properties b/core/src/main/resources/hudson/PluginManager/installed_sr.properties index b555a4dbe9..0d54c1472d 100644 --- a/core/src/main/resources/hudson/PluginManager/installed_sr.properties +++ b/core/src/main/resources/hudson/PluginManager/installed_sr.properties @@ -8,8 +8,8 @@ This\ plugin\ cannot\ be\ enabled=\u041E\u0432\u0430 \u043C\u043E\u0434\u0443\u0 This\ plugin\ cannot\ be\ disabled=\u041E\u0432\u0430 \u043C\u043E\u0434\u0443\u043B\u0430 \u043D\u0435\u043C\u043E\u0436\u0435 \u0431\u0438\u0442\u0438 \u043E\u043D\u0435\u043C\u043E\u0433\u0443\u045B\u0435\u043D\u0430 This\ plugin\ cannot\ be\ uninstalled=\u041E\u0432\u0430 \u043C\u043E\u0434\u0443\u043B\u0430 \u043D\u0435\u043C\u043E\u0436\u0435 \u0432\u0438\u0442\u0438 \u0434\u0435\u0438\u043D\u0441\u0442\u0430\u043B\u0438\u0440\u0430\u043D\u0430 It\ has\ one\ or\ more\ disabled\ dependencies=\u041F\u043E\u0441\u0442\u043E\u0458\u0438 \u043D\u0430\u0458\u043C\u0430\u045A\u0435 \u0458\u0435\u0434\u043D\u0430 \u0438\u0441\u043A\u0459\u0443\u0447\u0435\u043D\u0430 \u043C\u043E\u0434\u0443\u043B\u0430 \u043E\u0434 \u043A\u043E\u0458\u0435 \u043E\u0432\u0430 \u0437\u0430\u0432\u0438\u0441\u0438 -It\ has\ one\ or\ more\ enabled\ dependants=\u041F\u043E\u0441\u0442\u043E\u0458\u0438 \u043D\u0430\u0458\u043C\u0430\u045A\u0435 \u0458\u0435\u043D\u0434\u0430 \u0434\u0440\u0443\u0433\u0430 \u043C\u043E\u0434\u0443\u043B\u0430 \u043A\u043E\u0458\u0430 \u0437\u0430\u0432\u0438\u0441\u0438 \u043E\u0434 \u045A\u0435 -It\ has\ one\ or\ more\ installed\ dependants=\u041F\u043E\u0441\u0442\u043E\u0458\u0438 \u043D\u0430\u0458\u043C\u0430\u045A\u0435 \u0458\u0435\u043D\u0434\u0430 \u0434\u0440\u0443\u0433\u0430 \u043C\u043E\u0434\u0443\u043B\u0430 \u043A\u043E\u0458\u0430 \u0437\u0430\u0432\u0438\u0441\u0438 \u043E\u0434 \u045A\u0435 +It\ has\ one\ or\ more\ enabled\ dependents=\u041F\u043E\u0441\u0442\u043E\u0458\u0438 \u043D\u0430\u0458\u043C\u0430\u045A\u0435 \u0458\u0435\u043D\u0434\u0430 \u0434\u0440\u0443\u0433\u0430 \u043C\u043E\u0434\u0443\u043B\u0430 \u043A\u043E\u0458\u0430 \u0437\u0430\u0432\u0438\u0441\u0438 \u043E\u0434 \u045A\u0435 +It\ has\ one\ or\ more\ installed\ dependents=\u041F\u043E\u0441\u0442\u043E\u0458\u0438 \u043D\u0430\u0458\u043C\u0430\u045A\u0435 \u0458\u0435\u043D\u0434\u0430 \u0434\u0440\u0443\u0433\u0430 \u043C\u043E\u0434\u0443\u043B\u0430 \u043A\u043E\u0458\u0430 \u0437\u0430\u0432\u0438\u0441\u0438 \u043E\u0434 \u045A\u0435 No\ plugins\ installed.=\u041D\u0435\u043C\u0430 \u0438\u043D\u0441\u0442\u0430\u043B\u0438\u0440\u0430\u043D\u0438\u0445 \u043C\u043E\u0434\u0443\u043B\u0430 Uncheck\ to\ disable\ the\ plugin=\u0423\u043A\u043B\u043E\u043D\u0438\u0442\u0435 \u043A\u0432\u0430\u0447\u0438\u0446\u0443 \u0434\u0430 \u043E\u043D\u0435\u043C\u043E\u0433\u0443\u045B\u0438\u0442\u0435 \u043C\u043E\u0434\u0443\u043B\u0443 Enabled=\u0410\u043A\u0442\u0438\u043D\u0432\u043E diff --git a/core/src/main/resources/hudson/cli/Messages.properties b/core/src/main/resources/hudson/cli/Messages.properties index 604b31395c..4b22f967d4 100644 --- a/core/src/main/resources/hudson/cli/Messages.properties +++ b/core/src/main/resources/hudson/cli/Messages.properties @@ -98,5 +98,5 @@ DisablePluginCommand.ShortDescription=\ Disable one or more installed plugins. DisablePluginCommand.NoSuchStrategy=This strategy ({0}) does not exist. Allowed strategies are {1} DisablePluginCommand.PrintUsageSummary=\ -Disable the plugins with the given short names. You can define how to proceed with the dependant plugins and if a restart after should be done. You can also set the quiet mode to avoid extra info in the console. +Disable the plugins with the given short names. You can define how to proceed with the dependent plugins and if a restart after should be done. You can also set the quiet mode to avoid extra info in the console. DisablePluginCommand.StatusMessage=Disabling ''{0}'': {1} ({2}) diff --git a/test/src/test/java/hudson/PluginManagerInstalledGUITest.java b/test/src/test/java/hudson/PluginManagerInstalledGUITest.java index 2b035e29ab..f654e06874 100644 --- a/test/src/test/java/hudson/PluginManagerInstalledGUITest.java +++ b/test/src/test/java/hudson/PluginManagerInstalledGUITest.java @@ -79,8 +79,8 @@ public class PluginManagerInstalledGUITest { InstalledPlugin tasksPlugin = installedPlugins.get("tasks"); InstalledPlugin cvsPlugin = installedPlugins.get("cvs"); - tasksPlugin.assertHasNoDependants(); - cvsPlugin.assertHasDependants(); + tasksPlugin.assertHasNoDependents(); + cvsPlugin.assertHasDependents(); // Tasks plugin should be enabled and it should be possible to disable it // because no other plugins depend on it. @@ -189,10 +189,10 @@ public class PluginManagerInstalledGUITest { } public void assertEnabledStateChangeable() { - if (!hasDependants() && !hasDisabledDependency() && !allDependantsDisabled()) { + if (!hasDependents() && !hasDisabledDependency() && !allDependentsDisabled()) { return; } - if (allDependantsDisabled() && !hasDisabledDependency()) { + if (allDependentsDisabled() && !hasDisabledDependency()) { return; } @@ -200,10 +200,10 @@ public class PluginManagerInstalledGUITest { } public void assertEnabledStateNotChangeable() { - if (hasDependants() && !hasDisabledDependency() && !allDependantsDisabled()) { + if (hasDependents() && !hasDisabledDependency() && !allDependentsDisabled()) { return; } - if (!hasDependants() && hasDisabledDependency()) { + if (!hasDependents() && hasDisabledDependency()) { return; } @@ -211,19 +211,19 @@ public class PluginManagerInstalledGUITest { } public void assertUninstallable() { - Assert.assertFalse("Plugin '" + getId() + "' cannot be uninstalled.", hasDependants()); + Assert.assertFalse("Plugin '" + getId() + "' cannot be uninstalled.", hasDependents()); } public void assertNotUninstallable() { - Assert.assertTrue("Plugin '" + getId() + "' can be uninstalled.", hasDependants()); + Assert.assertTrue("Plugin '" + getId() + "' can be uninstalled.", hasDependents()); } - public void assertHasDependants() { - Assert.assertTrue(hasDependants()); + public void assertHasDependents() { + Assert.assertTrue(hasDependents()); } - public void assertHasNoDependants() { - Assert.assertFalse(hasDependants()); + public void assertHasNoDependents() { + Assert.assertFalse(hasDependents()); } private boolean hasClassName(String className) { @@ -236,12 +236,12 @@ public class PluginManagerInstalledGUITest { return hasClassName("has-disabled-dependency"); } - private boolean allDependantsDisabled() { - return hasClassName("all-dependants-disabled"); + private boolean allDependentsDisabled() { + return hasClassName("all-dependents-disabled"); } - private boolean hasDependants() { - return hasClassName("has-dependants"); + private boolean hasDependents() { + return hasClassName("has-dependents"); } } } diff --git a/test/src/test/java/hudson/cli/DisablePluginCommandTest.java b/test/src/test/java/hudson/cli/DisablePluginCommandTest.java index a14dc7c4c2..1172ea6a69 100644 --- a/test/src/test/java/hudson/cli/DisablePluginCommandTest.java +++ b/test/src/test/java/hudson/cli/DisablePluginCommandTest.java @@ -67,7 +67,7 @@ public class DisablePluginCommandTest { @Test @Issue("JENKINS-27177") @WithPlugin({"depender-0.0.2.hpi", "dependee-0.0.2.hpi", "mandatory-depender-0.0.2.hpi"}) - public void canDisablePluginWithDependantsDisabledStrategyNone() throws IOException { + public void canDisablePluginWithDependentsDisabledStrategyNone() throws IOException { disablePlugin("mandatory-depender"); CLICommandInvoker.Result result = disablePluginsCLiCommand("-strategy", "NONE", "dependee"); @@ -198,7 +198,7 @@ public class DisablePluginCommandTest { } /** - * All the dependant plugins, mandatory or optional, are disabled using -strategy all. + * All the dependent plugins, mandatory or optional, are disabled using -strategy all. */ @Test @Issue("JENKINS-27177") @@ -216,7 +216,7 @@ public class DisablePluginCommandTest { } /** - * Only the mandatory dependant plugins are disabled using -strategy mandatory. + * Only the mandatory dependent plugins are disabled using -strategy mandatory. */ @Test @Issue("JENKINS-27177") @@ -249,13 +249,13 @@ public class DisablePluginCommandTest { } /** - * The return code is the first error distinct of 0 found during the process. In this case dependant plugins not + * The return code is the first error distinct of 0 found during the process. In this case dependent plugins not * disabled. */ @Test @Issue("JENKINS-27177") @WithPlugin({"dependee-0.0.2.hpi", "mandatory-depender-0.0.2.hpi"}) - public void returnCodeFirstErrorIsDependants() { + public void returnCodeFirstErrorIsDependents() { CLICommandInvoker.Result result = disablePluginsCLiCommand("dependee", "badplugin"); assertThat(result, failedWith(RETURN_CODE_NOT_DISABLED_DEPENDANTS)); @@ -310,12 +310,12 @@ public class DisablePluginCommandTest { } /** - * In quiet mode, only the errors (dependants plugins) are printed. + * In quiet mode, only the errors (dependents plugins) are printed. */ @Test @Issue("JENKINS-27177") @WithPlugin({"depender-0.0.2.hpi", "dependee-0.0.2.hpi", "mandatory-depender-0.0.2.hpi"}) - public void quietModeWithErrorDependants() { + public void quietModeWithErrorDependents() { CLICommandInvoker.Result result = disablePluginsCLiCommand("-quiet", "-strategy", "none", "dependee"); assertThat(result, failedWith(RETURN_CODE_NOT_DISABLED_DEPENDANTS)); @@ -359,7 +359,7 @@ public class DisablePluginCommandTest { /** * Disable a list of plugins using the CLI command. * @param args Arguments to pass to the command. - * @return Result of the command. 0 if succeed, 16 if some plugin couldn't be disabled due to dependant plugins. + * @return Result of the command. 0 if succeed, 16 if some plugin couldn't be disabled due to dependent plugins. */ private CLICommandInvoker.Result disablePluginsCLiCommand(String... args) { return new CLICommandInvoker(j, new DisablePluginCommand()).invokeWithArgs(args); diff --git a/war/src/main/webapp/css/style.css b/war/src/main/webapp/css/style.css index ebc646374d..14c3f1250a 100644 --- a/war/src/main/webapp/css/style.css +++ b/war/src/main/webapp/css/style.css @@ -1295,25 +1295,25 @@ TABLE.fingerprint-in-build TD { border: 1px solid #5788a1; } -#plugins tr.has-dependants input.uninstall { +#plugins tr.has-dependents input.uninstall { background-color: #e0e0e0; border: 1px solid #cccccc; color: #505050; background-color: white; } -#plugins tr.all-dependants-disabled .enable input { +#plugins tr.all-dependents-disabled .enable input { pointer-events: auto; opacity: 1.0; visibility: visible; } -#plugins tr.has-dependants input, #plugins tr.has-disabled-dependency .enable input { +#plugins tr.has-dependents input, #plugins tr.has-disabled-dependency .enable input { pointer-events: none; opacity: 0.2; } -#plugins tr.has-dependants-but-disabled .enable input { +#plugins tr.has-dependents-but-disabled .enable input { pointer-events: auto; opacity: 1.0; visibility: visible; @@ -1327,7 +1327,7 @@ TABLE.fingerprint-in-build TD { visibility: hidden !important; } -#plugins .dependant-list, #plugins .dependency-list { +#plugins .dependent-list, #plugins .dependency-list { display: none; } From c43610cdb7278860e0847426a0736c4d832f7f15 Mon Sep 17 00:00:00 2001 From: Daniel Beck Date: Fri, 1 Mar 2019 21:05:31 +0100 Subject: [PATCH 16/32] Add message to the build log when a build is running as SYSTEM (#3908) * Add message to the build log when a build is running as SYSTEM * Match previous log message --- core/src/main/java/hudson/model/Run.java | 4 +++- core/src/main/resources/hudson/model/Messages.properties | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/hudson/model/Run.java b/core/src/main/java/hudson/model/Run.java index 57c312cd61..5612df59bc 100644 --- a/core/src/main/java/hudson/model/Run.java +++ b/core/src/main/java/hudson/model/Run.java @@ -1798,7 +1798,9 @@ public abstract class Run ,RunT extends Run Date: Sun, 3 Mar 2019 19:03:21 -0800 Subject: [PATCH 17/32] [maven-release-plugin] prepare release jenkins-2.167 --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test-jdk8/pom.xml | 2 +- test-pom/pom.xml | 2 +- test/pom.xml | 2 +- war/pom.xml | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index b02df3123e..b417443eb1 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.167 cli diff --git a/core/pom.xml b/core/pom.xml index 388f0a7930..1f0d617684 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.167 jenkins-core diff --git a/pom.xml b/pom.xml index 5d5ac185ed..77cdee9ef9 100644 --- a/pom.xml +++ b/pom.xml @@ -34,7 +34,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.167 pom Jenkins main module @@ -60,7 +60,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - ${scmTag} + jenkins-2.167 diff --git a/test-jdk8/pom.xml b/test-jdk8/pom.xml index 70c4870837..78bdaef0ca 100644 --- a/test-jdk8/pom.xml +++ b/test-jdk8/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-test-parent - ${revision}${changelist} + 2.167 ../test-pom diff --git a/test-pom/pom.xml b/test-pom/pom.xml index c6514ccfdb..3e87ec34d3 100644 --- a/test-pom/pom.xml +++ b/test-pom/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.167 jenkins-test-parent diff --git a/test/pom.xml b/test/pom.xml index 4c5abecc6f..0e204f611c 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-test-parent - ${revision}${changelist} + 2.167 ../test-pom diff --git a/war/pom.xml b/war/pom.xml index a8e8058cc3..dc742cbb16 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.167 jenkins-war From 4d54883e0748d87ac51b581ee724989a63273375 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Sun, 3 Mar 2019 19:03:29 -0800 Subject: [PATCH 18/32] [maven-release-plugin] prepare for next development iteration --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 6 +++--- test-jdk8/pom.xml | 2 +- test-pom/pom.xml | 2 +- test/pom.xml | 2 +- war/pom.xml | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index b417443eb1..b02df3123e 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main jenkins-parent - 2.167 + ${revision}${changelist} cli diff --git a/core/pom.xml b/core/pom.xml index 1f0d617684..388f0a7930 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - 2.167 + ${revision}${changelist} jenkins-core diff --git a/pom.xml b/pom.xml index 77cdee9ef9..5fb986b557 100644 --- a/pom.xml +++ b/pom.xml @@ -34,7 +34,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - 2.167 + ${revision}${changelist} pom Jenkins main module @@ -60,7 +60,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - jenkins-2.167 + ${scmTag} @@ -76,7 +76,7 @@ THE SOFTWARE. - 2.167 + 2.168 -SNAPSHOT + + diff --git a/core/src/main/resources/hudson/util/HudsonIsLoading/index.jelly b/core/src/main/resources/hudson/util/HudsonIsLoading/index.jelly index 2ed44ba863..11f826607f 100644 --- a/core/src/main/resources/hudson/util/HudsonIsLoading/index.jelly +++ b/core/src/main/resources/hudson/util/HudsonIsLoading/index.jelly @@ -39,6 +39,8 @@ THE SOFTWARE. ${%Starting Jenkins} + + diff --git a/core/src/main/resources/hudson/util/HudsonIsRestarting/index.jelly b/core/src/main/resources/hudson/util/HudsonIsRestarting/index.jelly index 65f30b5d94..a372dda355 100644 --- a/core/src/main/resources/hudson/util/HudsonIsRestarting/index.jelly +++ b/core/src/main/resources/hudson/util/HudsonIsRestarting/index.jelly @@ -39,6 +39,8 @@ THE SOFTWARE. ${%Restarting Jenkins} + + diff --git a/core/src/main/resources/jenkins/model/Jenkins/login.jelly b/core/src/main/resources/jenkins/model/Jenkins/login.jelly index 7fbe3dc26f..a2d20b3b76 100644 --- a/core/src/main/resources/jenkins/model/Jenkins/login.jelly +++ b/core/src/main/resources/jenkins/model/Jenkins/login.jelly @@ -57,6 +57,8 @@ THE SOFTWARE. ${%signIn} [Jenkins] + + diff --git a/war/src/main/webapp/css/signup.css b/war/src/main/webapp/css/signup.css index 17a7b58a38..01fc1c7c03 100644 --- a/war/src/main/webapp/css/signup.css +++ b/war/src/main/webapp/css/signup.css @@ -22,17 +22,15 @@ * THE SOFTWARE. */ .signup{ - min-width: 480px; max-width: 480px; - width: 480px; + width: 100%; } .signupIntroDefault { text-align: center; } form.signup{ - min-width: 480px; max-width: 480px; - width: 480px; + width: 100%; text-align: left; } .inputHeader { @@ -53,4 +51,4 @@ label { } #passwordStrengthWrapper { margin-top: 4px; -} \ No newline at end of file +} diff --git a/war/src/main/webapp/css/simple-page.css b/war/src/main/webapp/css/simple-page.css index d269ceb791..df1e953c6d 100644 --- a/war/src/main/webapp/css/simple-page.css +++ b/war/src/main/webapp/css/simple-page.css @@ -30,6 +30,7 @@ html { .simple-page h1 { font-size: 24px; + line-height: normal; } .simple-page { @@ -132,4 +133,4 @@ html { .layout-large { font-size: 18px; -} \ No newline at end of file +} From 14fd7a779a1f21312a60024a22843d85d76bf487 Mon Sep 17 00:00:00 2001 From: Daniel Beck Date: Fri, 8 Mar 2019 11:16:47 +0100 Subject: [PATCH 23/32] [JENKINS-24513] Only warn in case of actual jobs --- .../jenkins/security/QueueItemAuthenticatorMonitor.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/jenkins/security/QueueItemAuthenticatorMonitor.java b/core/src/main/java/jenkins/security/QueueItemAuthenticatorMonitor.java index 432541fa66..8e3d903d58 100644 --- a/core/src/main/java/jenkins/security/QueueItemAuthenticatorMonitor.java +++ b/core/src/main/java/jenkins/security/QueueItemAuthenticatorMonitor.java @@ -25,6 +25,7 @@ package jenkins.security; import hudson.Extension; import hudson.model.AdministrativeMonitor; +import hudson.model.Job; import hudson.model.Queue; import hudson.model.queue.QueueListener; import hudson.security.ACL; @@ -119,11 +120,17 @@ public class QueueItemAuthenticatorMonitor extends AdministrativeMonitor { displayName = executable.toString(); } + if (!(li.task instanceof Job)) { + // Only care about jobs for now -- Do not react to folder scans and similar + LOGGER.log(Level.FINE, displayName + " is not a job"); + return; + } + // TODO this is probably not intended to be used as a getter -- seems potentially unstable Authentication buildAuthentication = li.authenticate(); boolean buildRunsAsSystem = buildAuthentication == ACL.SYSTEM; if (!buildRunsAsSystem) { - LOGGER.log(Level.FINE, li.getDisplayName() + " does not run as SYSTEM"); + LOGGER.log(Level.FINE, displayName + " does not run as SYSTEM"); return; } From dd13c42d28c5aeebc6d182739a8dc646a06b8368 Mon Sep 17 00:00:00 2001 From: Wadeck Follonier Date: Sat, 9 Mar 2019 12:20:19 +0100 Subject: [PATCH 24/32] Correct small JS bug Context: The "Manage Legacy API Token usage" page, used for migrating the legacy API Token. Problem: If you click on a line, the checkbox is checked and the line is highlighted. But if you click on the checkbox, the behavior should be the same. This is not the case for all the lines, except the last one. Root cause: In the code, I used a `var` inside a loop. Due to the JS behavior, the `var` are not scoped to their "block", but to their "function block". That results in the `onCheckChanged(checkBox)`, the checkBox change it's value, due to the closure, that keep the reference to a variable that is changed. Solution: Either using `let` instead of `var` or using the `this` that corresponds to the checkbox in this case. --- .../apitoken/LegacyApiTokenAdministrativeMonitor/resources.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/resources/jenkins/security/apitoken/LegacyApiTokenAdministrativeMonitor/resources.js b/core/src/main/resources/jenkins/security/apitoken/LegacyApiTokenAdministrativeMonitor/resources.js index 58207a0dc0..31cedefeba 100644 --- a/core/src/main/resources/jenkins/security/apitoken/LegacyApiTokenAdministrativeMonitor/resources.js +++ b/core/src/main/resources/jenkins/security/apitoken/LegacyApiTokenAdministrativeMonitor/resources.js @@ -144,7 +144,7 @@ function onCheckChanged(checkBox){ var allCheckBoxes = document.querySelectorAll('.token-to-revoke'); for(var i = 0; i < allCheckBoxes.length; i++){ var checkBox = allCheckBoxes[i]; - checkBox.onchange = function(){ onCheckChanged(checkBox); }; + checkBox.onchange = function(){ onCheckChanged(this); }; } }); -})() \ No newline at end of file +})() From d9c20b68af3ca8f25e6da043051a1942ce7f0f9c Mon Sep 17 00:00:00 2001 From: Adrien Lecharpentier Date: Sun, 10 Mar 2019 20:44:10 +0100 Subject: [PATCH 25/32] Correct DownloadService TimeUnit mix on lastAttempt (#3928) * Revert DownloadService TimeUnit mix on lastAttempt Downloadable.lastAttempt is set in milliseconds but the PR-3913 change the test to toMillis(millis+seconds) * Fix DownloadService missing import --- core/src/main/java/hudson/model/DownloadService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/hudson/model/DownloadService.java b/core/src/main/java/hudson/model/DownloadService.java index f21675b019..125d58a394 100644 --- a/core/src/main/java/hudson/model/DownloadService.java +++ b/core/src/main/java/hudson/model/DownloadService.java @@ -92,7 +92,7 @@ public class DownloadService extends PageDecorator { if(Jenkins.getInstance().hasPermission(Jenkins.READ)) { long now = System.currentTimeMillis(); for (Downloadable d : Downloadable.all()) { - if(d.getDue()") .append("Behaviour.addLoadEvent(function() {") .append(" downloadService.download(") From 1e48792e61ceb0b19c5f88856987179010bea527 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Sun, 10 Mar 2019 22:55:05 -0700 Subject: [PATCH 26/32] [maven-release-plugin] prepare release jenkins-2.168 --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test-jdk8/pom.xml | 2 +- test-pom/pom.xml | 2 +- test/pom.xml | 2 +- war/pom.xml | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index b02df3123e..9e9f422461 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.168 cli diff --git a/core/pom.xml b/core/pom.xml index 388f0a7930..9a8b0f0215 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.168 jenkins-core diff --git a/pom.xml b/pom.xml index 5fb986b557..99a0c03d44 100644 --- a/pom.xml +++ b/pom.xml @@ -34,7 +34,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.168 pom Jenkins main module @@ -60,7 +60,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - ${scmTag} + jenkins-2.168 diff --git a/test-jdk8/pom.xml b/test-jdk8/pom.xml index 70c4870837..28d27ef2a8 100644 --- a/test-jdk8/pom.xml +++ b/test-jdk8/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-test-parent - ${revision}${changelist} + 2.168 ../test-pom diff --git a/test-pom/pom.xml b/test-pom/pom.xml index c6514ccfdb..7f67325f43 100644 --- a/test-pom/pom.xml +++ b/test-pom/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.168 jenkins-test-parent diff --git a/test/pom.xml b/test/pom.xml index 4c5abecc6f..d14defad31 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-test-parent - ${revision}${changelist} + 2.168 ../test-pom diff --git a/war/pom.xml b/war/pom.xml index a8e8058cc3..a2786f1fa0 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.168 jenkins-war From 1c9eb43283e7321ee4d3a0e1e9995453493ff04a Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Sun, 10 Mar 2019 22:55:12 -0700 Subject: [PATCH 27/32] [maven-release-plugin] prepare for next development iteration --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 6 +++--- test-jdk8/pom.xml | 2 +- test-pom/pom.xml | 2 +- test/pom.xml | 2 +- war/pom.xml | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 9e9f422461..b02df3123e 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main jenkins-parent - 2.168 + ${revision}${changelist} cli diff --git a/core/pom.xml b/core/pom.xml index 9a8b0f0215..388f0a7930 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - 2.168 + ${revision}${changelist} jenkins-core diff --git a/pom.xml b/pom.xml index 99a0c03d44..d3b272320e 100644 --- a/pom.xml +++ b/pom.xml @@ -34,7 +34,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - 2.168 + ${revision}${changelist} pom Jenkins main module @@ -60,7 +60,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - jenkins-2.168 + ${scmTag} @@ -76,7 +76,7 @@ THE SOFTWARE. - 2.168 + 2.169 -SNAPSHOT org.jenkins-ci winstone - 5.1 + 5.2-20190321.102154-2 test From ed0c80c8510b63cf4b077e95bd653527cced6b37 Mon Sep 17 00:00:00 2001 From: olivier lamy Date: Fri, 22 Mar 2019 10:43:33 +1000 Subject: [PATCH 30/32] [JENKINS-56659] winstone 5.2 Signed-off-by: olivier lamy --- war/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/war/pom.xml b/war/pom.xml index f8f64a13c3..bc8f98da18 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -89,7 +89,7 @@ THE SOFTWARE. --> org.jenkins-ci winstone - 5.2-20190321.102154-2 + 5.2 test From a273d4f2688ded0e6dbbe4c2ab651c985664f63d Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Sun, 24 Mar 2019 18:13:18 -0700 Subject: [PATCH 31/32] [maven-release-plugin] prepare release jenkins-2.169 --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 4 ++-- test-jdk8/pom.xml | 2 +- test-pom/pom.xml | 2 +- test/pom.xml | 2 +- war/pom.xml | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index b02df3123e..169440b943 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.169 cli diff --git a/core/pom.xml b/core/pom.xml index 388f0a7930..5d45c7743a 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.169 jenkins-core diff --git a/pom.xml b/pom.xml index d3b272320e..26cd71b7e6 100644 --- a/pom.xml +++ b/pom.xml @@ -34,7 +34,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.169 pom Jenkins main module @@ -60,7 +60,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - ${scmTag} + jenkins-2.169 diff --git a/test-jdk8/pom.xml b/test-jdk8/pom.xml index 70c4870837..8b356e9b71 100644 --- a/test-jdk8/pom.xml +++ b/test-jdk8/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-test-parent - ${revision}${changelist} + 2.169 ../test-pom diff --git a/test-pom/pom.xml b/test-pom/pom.xml index c6514ccfdb..c1ca36104c 100644 --- a/test-pom/pom.xml +++ b/test-pom/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.169 jenkins-test-parent diff --git a/test/pom.xml b/test/pom.xml index 4c5abecc6f..027a95d9f9 100644 --- a/test/pom.xml +++ b/test/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-test-parent - ${revision}${changelist} + 2.169 ../test-pom diff --git a/war/pom.xml b/war/pom.xml index bc8f98da18..62e7336ae6 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -28,7 +28,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - ${revision}${changelist} + 2.169 jenkins-war From 659b6af1904ff4aa89b1e987bf60bc609082b900 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Sun, 24 Mar 2019 18:13:28 -0700 Subject: [PATCH 32/32] [maven-release-plugin] prepare for next development iteration --- cli/pom.xml | 2 +- core/pom.xml | 2 +- pom.xml | 6 +++--- test-jdk8/pom.xml | 2 +- test-pom/pom.xml | 2 +- test/pom.xml | 2 +- war/pom.xml | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/cli/pom.xml b/cli/pom.xml index 169440b943..b02df3123e 100644 --- a/cli/pom.xml +++ b/cli/pom.xml @@ -5,7 +5,7 @@ org.jenkins-ci.main jenkins-parent - 2.169 + ${revision}${changelist} cli diff --git a/core/pom.xml b/core/pom.xml index 5d45c7743a..388f0a7930 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -29,7 +29,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - 2.169 + ${revision}${changelist} jenkins-core diff --git a/pom.xml b/pom.xml index 26cd71b7e6..e05adb4008 100644 --- a/pom.xml +++ b/pom.xml @@ -34,7 +34,7 @@ THE SOFTWARE. org.jenkins-ci.main jenkins-parent - 2.169 + ${revision}${changelist} pom Jenkins main module @@ -60,7 +60,7 @@ THE SOFTWARE. scm:git:git://github.com/jenkinsci/jenkins.git scm:git:ssh://git@github.com/jenkinsci/jenkins.git https://github.com/jenkinsci/jenkins - jenkins-2.169 + ${scmTag} @@ -76,7 +76,7 @@ THE SOFTWARE. - 2.169 + 2.170 -SNAPSHOT