From 4dfd17f14194c59105f81a3605998d8aa099700e Mon Sep 17 00:00:00 2001 From: Markus Winter Date: Sat, 20 Jul 2024 21:08:52 +0200 Subject: [PATCH] experimental flag to run Jenkins without YUI The YUI library is old and no longer maintained. Add a user experimental flag to disable YUI. It's disabled by default. When enabling all the YUI related js libraries and css classes are not loaded. Following PR are required to get Jenkins to not show any errors eventually #7569 Some plugins that use YUI (not complete): credentials ldap global-build-stats build-monitor categorized-view Plugins that make use of makeButton (not complete) credentials (fixed with https://github.com/jenkinsci/credentials-plugin/pull/533) openid acceptance-test-harness --- .../RemoveYuiUserExperimentalFlag.java | 22 +++++++++ .../main/resources/lib/layout/layout.jelly | 47 ++++++++++--------- 2 files changed, 48 insertions(+), 21 deletions(-) create mode 100644 core/src/main/java/jenkins/model/experimentalflags/RemoveYuiUserExperimentalFlag.java diff --git a/core/src/main/java/jenkins/model/experimentalflags/RemoveYuiUserExperimentalFlag.java b/core/src/main/java/jenkins/model/experimentalflags/RemoveYuiUserExperimentalFlag.java new file mode 100644 index 0000000000000..c2fc5912402a1 --- /dev/null +++ b/core/src/main/java/jenkins/model/experimentalflags/RemoveYuiUserExperimentalFlag.java @@ -0,0 +1,22 @@ +package jenkins.model.experimentalflags; + +import edu.umd.cs.findbugs.annotations.Nullable; +import hudson.Extension; + +@Extension +public class RemoveYuiUserExperimentalFlag extends BooleanUserExperimentalFlag { + public RemoveYuiUserExperimentalFlag() { + super("remove-vui.flag"); + } + + @Override + public String getDisplayName() { + return "Remove YUI"; + } + + @Nullable + @Override + public String getShortDescription() { + return "Remove YUI from all Jenkins UI pages. This will break anything that depends on YUI"; + } +} diff --git a/core/src/main/resources/lib/layout/layout.jelly b/core/src/main/resources/lib/layout/layout.jelly index 21ac81ff18b67..210ca66f855a3 100644 --- a/core/src/main/resources/lib/layout/layout.jelly +++ b/core/src/main/resources/lib/layout/layout.jelly @@ -128,31 +128,36 @@ THE SOFTWARE. - - - - - - - + + + + + + + + + + + + + + + + + + + + - - - - - - - - - -