[JENKINS-75350] Displays plugin health score in Plugin Manager#10351
Conversation
|
On Plugin site the values are given in % so I would do this here as well |
|
Why should no score values be shown when at least on plugin is missing it? Can't we then just show |
|
This needs a corresponding (also conditional) change below to balance the potential new column. |
|
I suggest you consider adding this information to https://github.com/jenkinsci/jenkins/blob/master/core/src/main/resources/hudson/PluginManager/installed.jelly -- while not as straightforward, it would help admins decide continued use of already installed plugins, especially on longer-lived instances. (If too scope-creepy, could also be added later.) |
Yes definitively. For now, I'm not "happy" with how the value are shown but couldn't think of a good way to do it. I opened the pull request so that we can discuss about it, see if we want plane values or using a card..
@mawinter69 when a instance has a custom plugin for example. Some company have developed in-house plugins and those won't have any scores. I didn't think about the
As the column definition is done in the Jelly file but I couldn't find a way to test either or not we would have the health score in it, we could have a "grey" cell when there is no health score to display.
It is my intention to have it there and in |
|
Potentially a chip pattern sort of thing? https://m2.material.io/components/chips There's this but might be a bit much: https://weekly.ci.jenkins.io/design-library/banner/ |
I was experimenting with something like this for suggested plugins:
Maybe a progress bar around the outside could work too? |
around the outside? What do you mean? I was afraid that using a progress bar would be too much of a distraction on the page. |
|
The |
|
with 3370920, we have the score displayed on all installed, updates and available page. I've updated the pull request description with screenshots. |
|
@alecharp In my opinion, having a progress bar in this context would be confusing. If all users could realistically achieve a health score of 100/100, it would make sense—but in many cases, perfect isn't attainable. Seeing an always-unfinished progress bar could feel discouraging. Similarly, displaying a percentage (%) might be frustrating for users. A simple and effective alternative, commonly used with health scores, is color-coding the number using a red/orange/green scheme. I've attached an example from HubSpot, where they pair this approach with chip-style badges labeled Healthy, Neutral, and At-Risk. These text-based labels ensure accessibility for color-blind users while avoiding the negative connotation of an "incomplete" score. |
I totally agree.
well, showing
Yes, this is what we did on the plugin-site search page. However, I wanted those colours to be based on statistics on all the scores. Like, having red for anything below the 1st quartile, orange between 1st and 3rd quartile and green for anything over 3rd quartile. But we don't have those statistics in the update-center and I don't think we should / could have them there, what do you think @daniel-beck ? |
|
@cristina-pizzagalli I made some changes. Not yet ready to be pushed because I cannot change the colour based on the health score for now. But here what I can look like:
The green would only be for scores > 90, orange for 50-90 and red for the rest. We can discuss the thresholds but know that currently:
|
|
Ideally we have the same thresholds as we use on plugins.jenkins.io |
I agree. I just wanted to note that static thresholds might not be great. But I'm more than ok to have the same as plugin-site. |
🚧 Requires to change color of the border based on score value
|
Ok, I failed to see how I can have different CSS class applied to the link based on the health score. I tried creating an helper, even a partial but I either couldn't write it correctly or use it correctly. @janfaracik if you could give me some pointer, that would be great. |
|
What about?
cc @MarkEWaite / @kmartens27 |
I think this is an alright description. I would adjust some of the phrasing here so that it reads more of a quantity vs yes/no (maintenance activity vs active maintenance) since there are multiple factors for the scores noted. However, that's just me being nit-picky and if it's too wordy then it's not necessary. Also just something to add in the security aspect of the score. Something like: |
|
FWIW I prefer the short version and Learn more doesn't need three dots imo. (not a blocker) |
|
Right, I forgot it was supposed to be the tooltip. I would go with the shorter version in this case. |
|
Noted. Implementing this and trying to find how to reference other |
|
I sadly had to copy the message in different places, not being able to find how to reference the message present for another page. |
|
Test failing is likely related |
yes. I'm trying to resolve it but it's not running locally, I have to rely on CI. |
If the issue is in your IDE (lots of tests fail that way). Then run it directly with maven on the CLI |
I tried both. Each time, I have Maybe because I tried to only run this specific test. |
My point is that we should not create such a badge as private thing of the update manager code, this should be moved to our core UI elements (design library). There we can add more generalizations like colors, etc. See also jenkinsci/design-library-plugin#42 |
|
I tried to create the |
|
Should we move forward on this or is there anything I need to fix on it? |
|
/label ready-for-merge This PR is now ready for merge, after ~24 hours, we will merge it if there's no negative feedback. Thanks! |
* [JENKINS-75605] sl message catalog typo fix (jenkinsci#10601) JENKINS-75605: sl message catalog typo fix Co-authored-by: Marko Pohajač <marko.pohajac@hycu.com> * Update dependency org.jenkins-ci.plugins:matrix-project to v849 (jenkinsci#10593) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency webpack to v5.99.7 (jenkinsci#10605) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency stylelint to v16.19.1 (jenkinsci#10608) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * [maven-release-plugin] prepare release jenkins-2.508 * [maven-release-plugin] prepare for next development iteration * Update a single `InterruptedBuildAction` rather than creating a second one * Regression test * [JENKINS-75615] remove jenkins-avatar class the jenkins-avatar class should only be applied on the UserAction and not on every icon. * [JENKINS-75533] Remove jbcrypt mindrot, use Spring Security instead (jenkinsci#10604) Co-authored-by: Daniel Beck <daniel-beck@users.noreply.github.com> Co-authored-by: James Nord <jtnord@users.noreply.github.com> * [JENKINS-75465] (Recreate) Delete RunIdMigrator as it has been 10 years since this migration (jenkinsci#10521) * [JENKINS-75350] Displays plugin health score in Plugin Manager (jenkinsci#10351) Co-authored-by: Markus Winter <m.winter@sap.com> Co-authored-by: Tim Jacomb <21194782+timja@users.noreply.github.com> Co-authored-by: Daniel Beck <1831569+daniel-beck@users.noreply.github.com> Co-authored-by: Daniel Beck <daniel-beck@users.noreply.github.com> * Let renovate automatically update to node LTS versions (jenkinsci#10613) * Update dependency org.jenkins-ci.main:jenkins-test-harness to v2443 (jenkinsci#10616) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update babel monorepo to v7.27.1 (jenkinsci#10614) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Simpler `InboundAgentRule.AgentArguments` constructor (jenkinsci#10615) * [JENKINS-75081] Avoid heap allocation when rendering large logs (jenkinsci#10515) * Update Winstone and Jetty (jenkinsci#10617) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency io.jenkins.plugins:ionicons-api to v87 (jenkinsci#10618) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Remove legacy compat for LogRecorder (jenkinsci#10612) * Run `GlobalBuildDiscarderListener` asynch (jenkinsci#10555) Co-authored-by: Vincent Latombe <vincent@latombe.net> * Update stapler.version to v1981 (major) (jenkinsci#10606) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Render `t:artifactList` lazily * Tracked down the icon problem * `yarn lint:fix` * Running `RenderOnDemandTest.testMemoryConsumption` and it is not good * 10× * Calling `releaseMe` does not appear to work * Update dependency io.jenkins.plugins:ionicons-api to v88 * [maven-release-plugin] prepare release jenkins-2.509 * [maven-release-plugin] prepare for next development iteration * Test may have been misleading; now it seems `releaseMe` does in fact work * `querySelector` Co-authored-by: Tim Jacomb <21194782+timja@users.noreply.github.com> * Remove deprecated IOException2 * Render lazily only for custom `ArtifactManager`; and cleaner not to use `renderOnDemand` at all * Remove obsolete attributes (copy in `WorkflowJob/main.jelly` is harmless) * Update dependency org.jenkins-ci.main:remoting to v3309 (jenkinsci#10621) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency org.jenkins-ci.main:jenkins-test-harness to v2444 (jenkinsci#10620) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update eslint monorepo to v9.26.0 (jenkinsci#10622) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update Stapler from 1981 to 1982, add test for jenkinsci/stapler#655 (jenkinsci#10500) * Add test for jenkinsci/stapler#655 * Newer snapshot, amend test --------- Co-authored-by: Daniel Beck <daniel-beck@users.noreply.github.com> * Friendlier error message when the password is too long (jenkinsci#10626) * Friendlier error message when the password is too long * Remove CTA Co-authored-by: Tim Jacomb <21194782+timja@users.noreply.github.com> * Remove "yours" --------- Co-authored-by: Daniel Beck <daniel-beck@users.noreply.github.com> Co-authored-by: Tim Jacomb <21194782+timja@users.noreply.github.com> * Replace with skeleton * Tidy * [JENKINS-75621] Fix visual regression on Thread Dump page (jenkinsci#10627) Co-authored-by: Kris Stern <krisstern@outlook.com> * Add notice for legacy .behavior-loading, fix in unit test * Update skeleton.jelly * `RunListener.createLoadAllower` * Update dependency webpack to v5.99.8 (jenkinsci#10635) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency eslint-config-prettier to v10.1.3 (jenkinsci#10637) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * [JENKINS-75634] Restore children context menu for breadcrumbs (jenkinsci#10629) * Init * Format * Update jumplists.js * Tidy * Update jumplists.js * Update jumplists.js * Update jumplists.js * Don't use async/awai * Update dependency globals to v16.1.0 (jenkinsci#10638) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency org.jenkins-ci:jenkins to v1.132 (jenkinsci#10633) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> * Update babel monorepo to v7.27.2 (jenkinsci#10636) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency org.jenkins-ci.plugins:junit to v1334 (jenkinsci#10642) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update stapler.version to v1983 (major) (jenkinsci#10639) Update stapler.version to v1983 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency org.jenkins-ci.main:jenkins-test-harness to v2447 (jenkinsci#10641) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency eslint-config-prettier to v10.1.5 (jenkinsci#10640) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * [maven-release-plugin] prepare release jenkins-2.510 * [maven-release-plugin] prepare for next development iteration * Update dependency org.jenkins-ci.plugins.workflow:workflow-api to v1373 (jenkinsci#10643) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency org.jenkins-ci.plugins:junit to v1335 * Update Winstone and Jetty (jenkinsci#10644) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency sass to v1.88.0 (jenkinsci#10648) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency org.springframework:spring-framework-bom to v6.2.7 * [JENKINS-75664] Revert call to `BoundObjectTable#releaseMe` (jenkinsci#10647) Revert call to `BoundObjectTable#releaseMe` * Add retry to flaky test in ResponseTimeMonitorTest (jenkinsci#10654) * Add retry to flaky test in ResponseTimeMonitorTest * Retry with awaitility * Update test/src/test/java/hudson/node_monitors/ResponseTimeMonitorTest.java Co-authored-by: Tim Jacomb <21194782+timja@users.noreply.github.com> --------- Co-authored-by: Tim Jacomb <21194782+timja@users.noreply.github.com> * handle ConnectionRefusalException * Update dependency stylelint-config-standard-scss to v15 (jenkinsci#10646) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> * Update Node.js to v22.15.1 (jenkinsci#10652) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Add skeleton items to the sidebar for job configure pages * Restore skeleton to appearance page * Relax checks for flaky tests in ComputerStateTest (jenkinsci#10656) Co-authored-by: Tim Jacomb <21194782+timja@users.noreply.github.com> * Update dependency io.jenkins.plugins:commons-text-api to v1.13.1-176.v74d88f22034b_ * Update dependency sass to v1.89.0 (jenkinsci#10658) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * don't suggest pam-auth plugin * Fix dropdown menu close when hover on sub dropdown * Update eslint monorepo to v9.27.0 (jenkinsci#10665) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * [maven-release-plugin] prepare release jenkins-2.511 * [maven-release-plugin] prepare for next development iteration * Update dependency org.springframework.security:spring-security-bom to v6.5.0 (jenkinsci#10664) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update xmlunit.version to v2.10.1 (jenkinsci#10660) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Use XMLUnit BOM * Update dependency org.jenkins-ci.plugins:bouncycastle-api to v2.30.1.80-261.v00c0e2618ec3 (jenkinsci#10661) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency org.jenkins-ci.main:jenkins-test-harness to v2451 (jenkinsci#10666) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update mheap/github-action-required-labels digest to fb29a14 * Update dependency org.jenkins-ci.main:jenkins-test-harness to v2455 (jenkinsci#10672) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * [JENKINS-75388] Remove `?path` and `?pattern` support from DBS (jenkinsci#10650) Co-authored-by: Daniel Beck <daniel-beck@users.noreply.github.com> * Update dependency stylelint-config-standard-scss to v15.0.1 (jenkinsci#10670) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update Node.js to v22.16.0 (jenkinsci#10671) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Replaced groovy file with jelly for `GlobalSCMRetryCountConfiguration` (jenkinsci#10673) * Removed dead code from `Queue.ItemList` (jenkinsci#10674) * Update utils.js * Update dependency org.jenkins-ci.plugins:jackson2-api to v2.19.0-404.vb_b_0fd2fea_e10 (jenkinsci#10677) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency com.puppycrawl.tools:checkstyle to v10.24.0 (jenkinsci#10675) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency webpack to v5.99.9 (jenkinsci#10680) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update jenkins/ath Docker tag to v6242 (jenkinsci#10682) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency org.xmlunit:xmlunit-bom to v2.10.2 * Update dependency io.jenkins.plugins:json-api to v20250517 * [maven-release-plugin] prepare release jenkins-2.512 * [maven-release-plugin] prepare for next development iteration * Migrate tests to JUnit5 (core / hudson / 1) (jenkinsci#10576) * Migrate annotations and imports * Migrate assertions * Remove public visibility for test classes and methods * Minor code cleanup Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> * Allow to configure the views tab bar per user (jenkinsci#10379) * allow to configure the views tab bar per user * apply prettier * fix spotbugs * add license header * Update commons-fileupload2.version to v2.0.0-M3 (jenkinsci#10686) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency globals to v16.2.0 (jenkinsci#10688) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Migrate tests to JUnit5 (core / jenkins / 3) (jenkinsci#10578) * Migrate annotations and imports * Migrate assertions * Remove public visibility for test classes and methods * Minor code cleanup Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> * Use Jenkins color palette for CodeMirror (jenkinsci#10687) * Init * Update _codemirror.scss * Update _codemirror.scss * Reset files * Fix FileChannelWriterTest and VirtualFileTest by reverting to JUnit 4 (jenkinsci#10698) * Fix FileChannelWriterTest by reverting to JUnit 4 Test does not fail on my local Windows computer with JUnit 5 or with JUnit 4. Reverting this to see if it resolves the issue so that other pull requests will not be blocked by the failing test. * Fix VirtualFileTest by reverting back to JUnit 4 (cherry picked from commit dc3ae00) * Revert "Update jackson2-api to v2.19.0-404.vb_b_0fd2fea_e10" (jenkinsci#10699) The kubernetes client has issues with Jackson 2.19.0. Original pull request that updated to 2.19.0 was: * jenkinsci#10677 Reverted from the Jenkins plugin BOM in pull request: * jenkinsci/bom#5114 Distribution suspended from Jenkins update center in: * jenkins-infra/update-center2#869 Refer to the following Kubernetes client API issues: * fabric8io/kubernetes-client#7036 * fabric8io/kubernetes-client#7106 Backport of the Jackson 2.19.0 change to Kubernetes client 6.x has been requested at: * fabric8io/kubernetes-client#7107 Also described in detail in Spring Cloud issue report: * spring-cloud/spring-cloud-kubernetes#1923 Also described in Jenkins issue report: * https://issues.jenkins.io/browse/JENKINS-75712 Also verified as failing in kubernetes plugin pull request: * jenkinsci/kubernetes-plugin#1702 Also mentioned in Kubernetes client API upgrade pull request: * jenkinsci/kubernetes-client-api-plugin#292 This reverts commit 11e5d5c. * Update dependency io.jenkins.plugins:design-library to v388 (jenkinsci#10697) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency org.jenkins-ci.plugins:cloudbees-folder to v6.1023.v4fcb_72152519 (jenkinsci#10690) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update jenkins/ath Docker tag to v6250 (jenkinsci#10692) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency webpack-remove-empty-scripts to v1.1.1 (jenkinsci#10693) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Move Jackson 2.19.0 exclusion into packageRule section (jenkinsci#10701) Testing done: npx --package renovate -- renovate-config-validator .github/renovate.json INFO: Config validated successfully * Update dependency @babel/core to v7.27.3 (jenkinsci#10702) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency postcss to v8.5.4 (jenkinsci#10703) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency postcss-preset-env to v10.2.0 (jenkinsci#10704) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency stylelint to v16.20.0 (jenkinsci#10705) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Set `SameSite` attribute on cookies (jenkinsci#10630) * Set SameSite attribute on cookies * Fix link --------- Co-authored-by: Daniel Beck <daniel-beck@users.noreply.github.com> * Migrate tests to JUnit5 (cli) (jenkinsci#10559) Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> * Complete Japanese translation for keepDependencies help file (jenkinsci#10366) * Complete Japanese translation for keepDependencies help file * refactor: improve phrasing for more natural, native-like expression * Prevent horizontal overflow on script console (jenkinsci#10694) * Prevent horizontal overflow on script console * Handle resizer positioning --------- Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> * Use secondary text color CSS variable (jenkinsci#10695) Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> * Accept UserIdCause or LegacyCodeCause in disconnectCause test (jenkinsci#10700) * Accept UserIdCause or LegacyCodeCause in disconnectCause test The hudson.model.ExecutorTest.disconnectCause() test fails in up to 10% of jobs on ci.jenkins.io because the cause is a LegacyCodeCause instead of the expected UserIdCause. In my 140 runs on my local Linux computer, I never saw a LegacyCodeCause, but it seems safe to check one of two failure messages rather than fail the test. * Fix compilation error * Update dependency org.jenkins-ci.main:jenkins-test-harness to v2457 (jenkinsci#10706) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency org.jenkins-ci.plugins:structs to v350 (jenkinsci#10707) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency commons-beanutils:commons-beanutils to v1.11.0 [SECURITY] (jenkinsci#10691) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Add 'jenkins-!-text-color-secondary' class (jenkinsci#10708) * Increase contrast of colorful buttons (jenkinsci#10709) * Init * Refine further * Update _theme.scss * Update border for dropdowns too * Fix border not showing in submenus * Migrate tests to JUnit5 (test / hudson / 2) (jenkinsci#10580) * Migrate annotations and imports * Migrate assertions * Remove public visibility for test classes and methods * Minor code cleanup Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> * Migrate tests to JUnit5 (test / jenkins / 3) (jenkinsci#10581) * Migrate tests to JUnit5 (test / jenkins / 3) * Migrate annotations and imports * Migrate assertions * Remove public visibility for test classes and methods * Minor code cleanup * Stabilize SetupWizardTest --------- Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> Co-authored-by: Kris Stern <krisstern@outlook.com> * Update dependency io.jenkins.plugins:design-library to v392 (jenkinsci#10714) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency com.puppycrawl.tools:checkstyle to v10.25.0 (jenkinsci#10710) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Migrate tests to JUnit5 (test / hudson / 1) (jenkinsci#10579) Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> * Add copy-to-clipboard button to oops' stacktrace (jenkinsci#10712) Co-authored-by: Tim Jacomb <21194782+timja@users.noreply.github.com> * Fix FileChannelWriterTest and VirtualFileTest for JUnit 5 (jenkinsci#10713) * Update dependency @babel/core to v7.27.4 (jenkinsci#10717) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update eslint monorepo to v9.28.0 (jenkinsci#10718) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency sass to v1.89.1 (jenkinsci#10719) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * [maven-release-plugin] prepare release jenkins-2.513 * [maven-release-plugin] prepare for next development iteration * Migrate tests to JUnit5 (test / misc / 4) (jenkinsci#10582) * Migrate annotations and imports * Migrate assertions * Remove public visibility for test classes and methods * Minor code cleanup Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> Co-authored-by: Tim Jacomb <21194782+timja@users.noreply.github.com> * Update Winstone and Jetty (jenkinsci#10720) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update stapler.version to v1990 (major) (jenkinsci#10723) Update stapler.version to v1990 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update Yarn to v4.9.2 (jenkinsci#10724) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update jenkins/ath Docker tag to v6254 (jenkinsci#10727) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Fill in since annotations (jenkinsci#10728) Co-authored-by: timja <21194782+timja@users.noreply.github.com> * Refine dialogs and Command Palette (jenkinsci#10721) * Init * Update index.js * Update index.js * Update _dialogs.scss * Improve appearance * Update _dialogs.scss * Tidy * Update _theme.scss * Format * Fix glow in dark themes * Update dependency org.apache.maven:maven-core to v3.9.10 (jenkinsci#10730) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency postcss-preset-env to v10.2.1 * [JENKINS-75683] Restore transient view actions (jenkinsci#10676) Restore view actions * Fix url in search result list when running at root context (jenkinsci#10725) fix url when running at root when the rootURL is empty the urls would start with a double slash which is interpreted by browser like a complete url including domain. That leads to non working links. Use the same approach for the url as used by command pallete to include the additional slash only when the url is not starting with a slash * Cleanup HudsonPrivateSecurityRealmTest * [maven-release-plugin] prepare release jenkins-2.514 * [maven-release-plugin] prepare for next development iteration * Update dependency org.jenkins-ci.main:jenkins-test-harness to v2460 (jenkinsci#10734) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update softprops/action-gh-release action to v2.3.2 (jenkinsci#10733) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency org.springframework:spring-framework-bom to v6.2.8 * Update core/src/main/resources/lib/layout/skeleton.jelly Co-authored-by: Alexander Brandes <brandes.alexander@web.de> * Update dependency postcss-preset-env to v10.2.2 * Update jenkins/ath Docker tag to v6260 (jenkinsci#10741) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency io.jenkins.plugins:checks-api to v373 (jenkinsci#10740) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency sass to v1.89.2 (jenkinsci#10737) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency postcss-preset-env to v10.2.3 * Update dependency postcss to v8.5.5 * Update dawidd6/action-send-mail action to v6 * Update dependency org.jenkins-ci.main:jenkins-test-harness to v2462 (jenkinsci#10745) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Distinguish between primary and secondary actions in the header This PR distinguishes between primary and secondary Actions for the header. Primary actions are always shown, and secondary actions are by default in the Hamburger menu. When the current page is the page for the secondary action (or a parent thereof) the action is put in the main header action list and not in the hamburger menu. * Update commons-fileupload2.version to v2.0.0-M4 (jenkinsci#10746) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update eslint monorepo to v9.29.0 (jenkinsci#10748) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency org.springframework.security:spring-security-bom to v6.5.1 (jenkinsci#10750) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency postcss to v8.5.6 (jenkinsci#10751) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * remove actions-overflow * [maven-release-plugin] prepare release jenkins-2.515 * [maven-release-plugin] prepare for next development iteration * Fix Typo Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix inverted badgeClass Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * [JENKINS-75683] re-introduce actions for Jenkins with custom action.jelly actions without a URL but a custom action.jelly where not shown correctly in the header. This re-introduces them and allows custom rendering of actions again (by using an action.jelly). adjust the task taglib so that it renders in the style of the header when in the header. Nested tasks work, but when expanded the original looses its tooltip. move subtasks to the dropdown use tasks class to fix layout fix scss formatting * [JENKINS-75794] Fix CodeMirror component being hidden after skeleton loading * Update jenkins/ath Docker tag to v6266 * start introducing data-testids for test usage The Header rework exposed numerous test failures due to changes in structure. This could have been avoided if we had already been using data-testid attributes for the various things. This starts small with the signin button. Using "login" as the testid as this is what cloudbees had already been using in our custom header and the jelly is still loginLink * Update dependency org.xmlunit:xmlunit-bom to v2.10.3 (jenkinsci#10753) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency org.jenkins-ci.plugins:cloudbees-folder to v6.1026.ve06dfa_cf31c3 (jenkinsci#10757) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency stylelint to v16.21.0 (jenkinsci#10761) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency com.puppycrawl.tools:checkstyle to v10.25.1 * Update mheap/github-action-required-labels digest to 8afbe8a (jenkinsci#10763) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * [JENKINS-75727] Distinguish between primary and secondary actions in the header (jenkinsci#10729) * Distinguish between primary and secondary actions in the header This PR distinguishes between primary and secondary Actions for the header. Primary actions are always shown, and secondary actions are by default in the Hamburger menu. When the current page is the page for the secondary action (or a parent thereof) the action is put in the main header action list and not in the hamburger menu. * remove actions-overflow * Fix Typo Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix inverted badgeClass Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update Javadoc comment for isPrimaryAction Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> * add ID to header "More Actions" button --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> * Implement `SystemProperties.getDuration` (jenkinsci#10561) Co-authored-by: Tim Jacomb <21194782+timja@users.noreply.github.com> Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> * Update jenkins/ath Docker tag to v6269 (jenkinsci#10766) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * [maven-release-plugin] prepare release jenkins-2.516 * [maven-release-plugin] prepare for next development iteration * Update Node.js to v22.17.0 (jenkinsci#10770) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update stapler.version to v1997 (major) (jenkinsci#10769) Update stapler.version to v1997 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * Update dependency com.puppycrawl.tools:checkstyle to v10.26.0 (jenkinsci#10768) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --------- Co-authored-by: vandrewskis <vandrewskis@users.noreply.github.com> Co-authored-by: Marko Pohajač <marko.pohajac@hycu.com> Co-authored-by: Kris Stern <krisstern@outlook.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Jenkins Release Bot <66998184+jenkins-release-bot@users.noreply.github.com> Co-authored-by: Jesse Glick <jglick@cloudbees.com> Co-authored-by: Markus Winter <m.winter@sap.com> Co-authored-by: Daniel Beck <1831569+daniel-beck@users.noreply.github.com> Co-authored-by: Daniel Beck <daniel-beck@users.noreply.github.com> Co-authored-by: James Nord <jtnord@users.noreply.github.com> Co-authored-by: Guruprasad Bhat <gbhat@cloudbees.com> Co-authored-by: Adrien Lecharpentier <alecharpentier@cloudbees.com> Co-authored-by: Tim Jacomb <21194782+timja@users.noreply.github.com> Co-authored-by: Vincent Latombe <vincent@latombe.net> Co-authored-by: strangelookingnerd <49242855+strangelookingnerd@users.noreply.github.com> Co-authored-by: Jan Faracik <43062514+janfaracik@users.noreply.github.com> Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> Co-authored-by: car-roll <cchiou@cloudbees.com> Co-authored-by: yen-cheng <lin0905580802@gmail.com> Co-authored-by: Basil Crow <me@basilcrow.com> Co-authored-by: Stefan Spieker <S.Spieker@gmx.net> Co-authored-by: Ahmed Fatthi <91102592+AhmedFatthy1040@users.noreply.github.com> Co-authored-by: Alexander Brandes <mc.cache@web.de> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Alexander Brandes <brandes.alexander@web.de> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>





See JENKINS-75350.
Display the plugin health score within the Jenkins plugin manager.
This is using:
Plugin Updates
Available Plugins
Installed Plugins
Testing done
I ran an instance locally, in development mode, using a classic update-center, one generated from update center PR 840 and one where I removed some of the plugins scores.
This allowed me to see that I have the same behaviour with current update-center, that I can display score when all the plugins have one and don't display it when at least one plugin doesn't have one.
Proposed changelog entries
Proposed changelog category
/label major-rfe
Proposed upgrade guidelines
N/A
Submitter checklist
@Restrictedor have@since TODOJavadocs, as appropriate.@Deprecated(since = "TODO")or@Deprecated(forRemoval = true, since = "TODO"), if applicable.evalto ease future introduction of Content Security Policy (CSP) directives (see documentation).Desired reviewers
@daniel-beck @timja @janfaracik
Before the changes are marked as
ready-for-merge:Maintainer checklist
upgrade-guide-neededlabel is set and there is a Proposed upgrade guidelines section in the pull request title (see example).lts-candidateto be considered (see query).