-
-
Notifications
You must be signed in to change notification settings - Fork 8.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove JTidy from core #5521
Remove JTidy from core #5521
Conversation
I have the same results with usage-in-plugins, only the two plugins use it and only the single class. The PR build doesn't have the dependency bundled anymore, otherwise no differences. usage-in-plugins classes file I used
(Including both variants of class name is easier than remembering which one is used) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like a reasonable small cleanup with very little negative impact 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No objections. This dependency is too old to keep maintaining it in the core. JDepends plugin was updated for JEP-200 and Co, and other plugins can be trivially updated as well
We may merge it in 24 hours if there is no negative feedback. Please see the merge process documentation for more information about the merge process |
Formally deprecating plugins left behind in jenkinsci/jenkins#5320, jenkinsci/jenkins#5338, jenkinsci/jenkins#5521, and jenkinsci/jenkins#5526.
Jenkins core ships JTidy 4aug2000r7-dev-hudson-1, a fork of JTidy 04aug2000r7-dev. The original 04aug2000r7-dev release was published on August 1, 2001; the fork was published on July 14, 2008. JTidy was forked by Kohsuke in commit 2fcca36 as part of the fix for JENKINS-1680 to resolve an incompatibility with IBM WebSphere 6.1, which itself reached end-of-life on September 30, 2013.
Carrying this ancient fork of an even more ancient dependency does not seem desirable for the Jenkins project. In recent years there have been efforts to revive the JTidy project on GitHub, but rather than migrating to this revival project I think it makes more sense to remove the JTidy dependency from core. The dependency is effectively unused throughout the entire Jenkins ecosystem, so there is no strong reason to keep bundling it.
Nothing in Jenkins core itself uses JTidy. Running the classes from the JTidy JAR through
usage-in-plugins
and searching for usages in sources, I found only two references in plugins:Proposed changelog entries
Developer: Remove JTidy dependency from Jenkins core. Plugins that use JTidy functionality, including NIS notification lamp, must be updated to explicitly declare a dependency on JTidy rather than relying on Jenkins core to provide this library.
Proposed upgrade guidelines
The JTidy dependency has been removed from Jenkins core. Users of JDepend must upgrade JDepend to the latest version. Other plugins that use JTidy functionality, including NIS notification lamp, must be updated to explicitly declare a dependency on JTidy rather than relying on Jenkins core to provide this library.
Maintainer checklist
Before the changes are marked as
ready-for-merge
:Proposed changelog entries
are correctupgrade-guide-needed
label is set and there is aProposed upgrade guidelines
section in the PR title. (example)lts-candidate
to be considered (see query).