Skip to content

HDFS-16796 YARN-11331. Upgrade Bootstrap and jQuery UI dependencies - #8749

Open
uselesscoder-forever wants to merge 1 commit into
apache:trunkfrom
uselesscoder-forever:HDFS-16796-YARN-11331-ui-dependency-upgrades
Open

uselesscoder-forever wants to merge 1 commit into
apache:trunkfrom
uselesscoder-forever:HDFS-16796-YARN-11331-ui-dependency-upgrades

Conversation

@uselesscoder-forever

@uselesscoder-forever uselesscoder-forever commented Sep 23, 2026 •

Copy link
Copy Markdown

Description of PR

This patch addresses the Bootstrap and jQuery portions of:

It does not attempt to close every subtask covered by those umbrella issues.

The change:

  • upgrades the HDFS, Router, and Balancer web UIs from Bootstrap 3.4.1 to Bootstrap 5.3.8;
  • upgrades the HDFS and YARN web UIs from jQuery 3.6.0 to jQuery 4.0.0;
  • upgrades the YARN jQuery UI bundle from 1.13.2 to 1.14.2;
  • removes the Bootstrap 3 and bootstrap-editable assets and replaces the latter with a small inline permission editor;
  • adds the Bootstrap 5 DataTables adapter while retaining the existing DataTables core version;
  • updates HDFS/Router markup and JavaScript for Bootstrap 5 component APIs and updates the bundled jsTree code for jQuery 4 removed APIs;
  • permits the Content-Type request header in the DataNode WebHDFS CORS preflight used by browser file uploads;
  • isolates the legacy Application Catalog PhantomJS runner from system OpenSSL 3 configuration on Unix hosts so its Jasmine suite can start reliably; and
  • updates the source and binary license inventories and RAT exclusions for the bundled assets.

The dependency versions are upstream release artifacts under MIT-compatible licenses. No object-store code is changed.

Contains content generated by Codex.

How was this patch tested?

The full Maven unit-test suite was not run locally for this static web dependency migration. The affected legacy Application Catalog test path was run after diagnosing the CI failure. The following builds and validations were run on macOS/aarch64 with Azul JDK 17.0.15:

  • Full 120-module distribution build:
    ./mvnw clean package -Pdist -DskipTests -Dtar -Dmaven.javadoc.skip=true -Dmaven.test.failure.ignore=false
    (BUILD SUCCESS, 44:09).
  • Targeted HDFS build after the WebHDFS CORS change:
    ./mvnw -pl hadoop-hdfs-project/hadoop-hdfs -am package -DskipTests -Dmaven.javadoc.skip=true
    (BUILD SUCCESS, 12 modules, 36.547 s).
  • Targeted Application Catalog Java and Jasmine tests with automatic Unix compatibility-profile activation:
    ./mvnw -pl hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-catalog/hadoop-yarn-applications-catalog-webapp test -DskipJasmineTests=false
    (BUILD SUCCESS; 5 Java tests and 15 Jasmine specs, 0 failures).
  • git diff --cached --check.
  • node --check for every changed JavaScript file.
  • Static scans confirmed that the affected source trees contain no references to Bootstrap 3.4.1, jQuery 3.6.0, jQuery UI 1.13.2, bootstrap-editable, or the old Bootstrap DataTables adapter.
  • Packaged-distribution inspection confirmed Bootstrap 5.3.8, jQuery 4.0.0, and jQuery UI 1.14.2 are present and the superseded assets are absent.
  • A temporary Playwright harness (not included in this patch) started a pseudo-distributed NameNode, DataNode, ResourceManager, NodeManager, and JobHistoryServer, submitted two MapReduce jobs, and ran 115 checks. The final result was 107 passed and 8 intentionally skipped.

The browser validation covered Chromium, Firefox, and WebKit (Safari engine), including a narrow Chromium viewport and live aspect-ratio changes. It checked:

  • all seeded daemon routes, hyperlinks, navigation items, tabs, dropdowns, modals, popovers, DataTables controls, console errors, failed network requests, accessibility contracts, and visual baselines;
  • NameNode-to-DataNode and ResourceManager-to-NodeManager links;
  • ResourceManager application links and JobHistory job/detail pages;
  • aggregated stdout, stderr, and syslog links for both completed MapReduce applications;
  • HDFS File Explorer create, upload, preview, download, move, and delete operations; and
  • DataNode death/recovery as rendered by the NameNode and NodeManager death/recovery as rendered by the ResourceManager.

The local fixture normalized daemon-advertised hostnames to loopback when following cross-daemon links; that fixture is not part of this patch.

For code changes:

  • Does the title of this PR start with the corresponding JIRA issue id (e.g. 'HADOOP-17799. Your PR title ...')?
  • Object storage: Have the integration tests been executed and the endpoint
    declared according to the connector-specific documentation? Not applicable: no object-storage code is changed.
  • If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
  • If applicable, have you updated the LICENSE, LICENSE-binary, NOTICE-binary files?

AI Tooling

If an AI tool was used:

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 0m 0s Docker mode activated.
-1 ❌ patch 0m 18s #8749 does not apply to trunk. Rebase required? Wrong Branch? See https://cwiki.apache.org/confluence/display/HADOOP/How+To+Contribute for help.
Subsystem Report/Notes
Console output https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-8749/1/console
versions git=2.34.1
Powered by Apache Yetus 0.14.1 https://yetus.apache.org

This message was automatically generated.

@uselesscoder-forever
uselesscoder-forever force-pushed the HDFS-16796-YARN-11331-ui-dependency-upgrades branch from c5345eb to 7640954 Compare September 23, 2026 07:27
@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 0m 0s Docker mode activated.
-1 ❌ patch 0m 16s #8749 does not apply to trunk. Rebase required? Wrong Branch? See https://cwiki.apache.org/confluence/display/HADOOP/How+To+Contribute for help.
Subsystem Report/Notes
Console output https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-8749/2/console
versions git=2.34.1
Powered by Apache Yetus 0.14.1 https://yetus.apache.org

This message was automatically generated.

@uselesscoder-forever

Copy link
Copy Markdown
Author

I rebased the single commit onto the current Apache trunk (2014707f8c) and force-pushed commit 76409549cc.

The second Yetus failure is not a patch conflict. Its archived input.patch is a GitHub HTML page (<!DOCTYPE html>), so git apply reports no valid patch and Yetus emits the generic “does not apply to trunk” message. The same console log also reports that the Jenkins GitHub token is expired or lacks repo:status permission.

For verification, I downloaded the refreshed GitHub PR patch and ran git apply --check successfully in a clean detached worktree at Apache trunk. GitHub also reports the PR as mergeable.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 0m 0s Docker mode activated.
-1 ❌ patch 0m 18s #8749 does not apply to trunk. Rebase required? Wrong Branch? See https://cwiki.apache.org/confluence/display/HADOOP/How+To+Contribute for help.
Subsystem Report/Notes
Console output https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-8749/3/console
versions git=2.34.1
Powered by Apache Yetus 0.14.1 https://yetus.apache.org

This message was automatically generated.

@uselesscoder-forever
uselesscoder-forever force-pushed the HDFS-16796-YARN-11331-ui-dependency-upgrades branch from 89b9233 to b390cc2 Compare September 23, 2026 08:06
@uselesscoder-forever uselesscoder-forever changed the title HDFS-16796. YARN-11331. Upgrade Bootstrap and jQuery UI dependencies HDFS-16796 YARN-11331. Upgrade Bootstrap and jQuery UI dependencies Sep 23, 2026
@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 7m 26s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 1s No case conflicting files found.
+0 🆗 codespell 0m 0s codespell was not available.
+0 🆗 detsecrets 0m 0s detect-secrets was not available.
+0 🆗 xmllint 0m 0s xmllint was not available.
+0 🆗 jshint 0m 0s jshint was not available.
+0 🆗 shelldocs 0m 0s Shelldocs was not available.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 1 new or modified test files.
_ trunk Compile Tests _
+0 🆗 mvndep 2m 9s Maven dependency ordering for branch
+1 💚 mvninstall 27m 50s trunk passed
+1 💚 compile 8m 41s trunk passed with JDK Ubuntu-21.0.12.1+1-1-24.04.4-Ubuntu
+1 💚 compile 8m 57s trunk passed with JDK Ubuntu-17.0.20.1+1-1-24.04-Ubuntu
+1 💚 checkstyle 3m 4s trunk passed
+1 💚 mvnsite 9m 55s trunk passed
+1 💚 javadoc 6m 10s trunk passed with JDK Ubuntu-21.0.12.1+1-1-24.04.4-Ubuntu
+1 💚 javadoc 5m 55s trunk passed with JDK Ubuntu-17.0.20.1+1-1-24.04-Ubuntu
-1 ❌ spotbugs 19m 31s /branch-spotbugs-root-warnings.html root in trunk has 94 extant spotbugs warnings.
+1 💚 shadedclient 16m 8s branch has no errors when building and testing our client artifacts.
_ Patch Compile Tests _
+0 🆗 mvndep 0m 17s Maven dependency ordering for patch
+1 💚 mvninstall 22m 4s the patch passed
+1 💚 compile 8m 45s the patch passed with JDK Ubuntu-21.0.12.1+1-1-24.04.4-Ubuntu
+1 💚 javac 8m 45s the patch passed
+1 💚 compile 8m 49s the patch passed with JDK Ubuntu-17.0.20.1+1-1-24.04-Ubuntu
+1 💚 javac 8m 49s the patch passed
-1 ❌ blanks 0m 0s /blanks-tabs.txt The patch 10 line(s) with tabs.
+1 💚 checkstyle 2m 59s the patch passed
+1 💚 mvnsite 9m 52s the patch passed
+1 💚 shellcheck 0m 0s No new issues.
+1 💚 javadoc 6m 6s the patch passed with JDK Ubuntu-21.0.12.1+1-1-24.04.4-Ubuntu
+1 💚 javadoc 5m 58s the patch passed with JDK Ubuntu-17.0.20.1+1-1-24.04-Ubuntu
+1 💚 spotbugs 24m 13s the patch passed
+1 💚 shadedclient 34m 40s patch has no errors when building and testing our client artifacts.
_ Other Tests _
-1 ❌ unit 629m 17s /patch-unit-root.txt root in the patch failed.
+1 💚 asflicense 1m 11s The patch does not generate ASF License warnings.
859m 1s
Subsystem Report/Notes
Docker ClientAPI=1.56 ServerAPI=1.56 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-8749/4/artifact/out/Dockerfile
GITHUB PR #8749
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient codespell detsecrets xmllint jshint spotbugs checkstyle shellcheck shelldocs
uname Linux d96bb6242a08 5.15.0-190-generic #200-Ubuntu SMP Fri Aug 7 15:06:04 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/bin/hadoop.sh
git revision trunk / b390cc2
Default Java Ubuntu-17.0.20.1+1-1-24.04-Ubuntu
Multi-JDK versions /usr/lib/jvm/java-21-openjdk-amd64:Ubuntu-21.0.12.1+1-1-24.04.4-Ubuntu /usr/lib/jvm/java-17-openjdk-amd64:Ubuntu-17.0.20.1+1-1-24.04-Ubuntu
Test Results https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-8749/4/testReport/
Max. process+thread count 5107 (vs. ulimit of 10000)
modules C: hadoop-hdfs-project/hadoop-hdfs hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common hadoop-hdfs-project/hadoop-hdfs-rbf . U: .
Console output https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-8749/4/console
versions git=2.43.0 maven=3.9.15 spotbugs=4.9.7 shellcheck=0.9.0
Powered by Apache Yetus 0.14.1 https://yetus.apache.org

This message was automatically generated.

@uselesscoder-forever
uselesscoder-forever force-pushed the HDFS-16796-YARN-11331-ui-dependency-upgrades branch from b390cc2 to be41529 Compare September 24, 2026 06:38
@uselesscoder-forever

Copy link
Copy Markdown
Author

CI follow-up:

  • Fixed all 10 added tab-indented lines reported by the blanks check. The refreshed patch has no added lines containing tabs and passes git diff --check.
  • The unit failure in build 4 is unrelated to this patch. The only failed module was the unchanged hadoop-yarn-applications-catalog-webapp; its legacy PhantomJS process timed out before opening http://localhost:3523/status, so no Jasmine assertion ran. The fork-side full build for the same prior commit completed successfully: https://github.com/uselesscoder-forever/hadoop/actions/runs/35835301379

Commit be41529fc05581e97d298cfd78c32268c2aa7e02 has triggered clean fork Build and Yetus reruns.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 0m 23s Docker mode activated.
-1 ❌ patch 0m 4s #8749 does not apply to trunk. Rebase required? Wrong Branch? See https://cwiki.apache.org/confluence/display/HADOOP/How+To+Contribute for help.
Subsystem Report/Notes
Docker ClientAPI=1.56 ServerAPI=1.56 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-8749/5/artifact/out/Dockerfile
Console output https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-8749/5/console
versions git=2.43.0
Powered by Apache Yetus 0.14.1 https://yetus.apache.org

This message was automatically generated.

Upgrade the HDFS web interfaces to Bootstrap 5.3.8 and move HDFS and YARN to jQuery 4.0.0. Update jQuery UI, DataTables integration, legacy jsTree compatibility, WebHDFS upload CORS, and bundled dependency licensing.

Generated-by: Codex
@uselesscoder-forever
uselesscoder-forever force-pushed the HDFS-16796-YARN-11331-ui-dependency-upgrades branch from be41529 to c8100a2 Compare September 24, 2026 08:01
@uselesscoder-forever

Copy link
Copy Markdown
Author

Follow-up on the build 4 unit failure: although it was outside the UI files changed by the original patch, this revision now fixes the underlying CI incompatibility. PhantomJS 2.1.1 was reading Ubuntu 24.04's OpenSSL 3 configuration and exiting before WebDriver opened /status. On Unix hosts the build now generates a small PhantomJS launcher that sets OPENSSL_CONF=/dev/null only for that child process; the existing Jasmine browser/runtime remains unchanged.

Targeted verification passed:
./mvnw -pl hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-catalog/hadoop-yarn-applications-catalog-webapp test -DskipJasmineTests=false

Result: 5 Java tests and 15 Jasmine specs passed with 0 failures. git diff --check also passes, and the patch has no added tab characters.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 0m 29s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 1s No case conflicting files found.
+0 🆗 codespell 0m 0s codespell was not available.
+0 🆗 detsecrets 0m 0s detect-secrets was not available.
+0 🆗 xmllint 0m 0s xmllint was not available.
+0 🆗 jshint 0m 0s jshint was not available.
+0 🆗 shelldocs 0m 0s Shelldocs was not available.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 1 new or modified test files.
_ trunk Compile Tests _
+0 🆗 mvndep 3m 48s Maven dependency ordering for branch
+1 💚 mvninstall 34m 0s trunk passed
+1 💚 compile 9m 37s trunk passed with JDK Ubuntu-21.0.12.1+1-1-24.04.4-Ubuntu
+1 💚 compile 9m 30s trunk passed with JDK Ubuntu-17.0.20.1+1-1-24.04-Ubuntu
+1 💚 checkstyle 3m 1s trunk passed
+1 💚 mvnsite 10m 11s trunk passed
+1 💚 javadoc 6m 22s trunk passed with JDK Ubuntu-21.0.12.1+1-1-24.04.4-Ubuntu
+1 💚 javadoc 5m 51s trunk passed with JDK Ubuntu-17.0.20.1+1-1-24.04-Ubuntu
-1 ❌ spotbugs 20m 52s /branch-spotbugs-root-warnings.html root in trunk has 94 extant spotbugs warnings.
+1 💚 shadedclient 17m 40s branch has no errors when building and testing our client artifacts.
_ Patch Compile Tests _
+0 🆗 mvndep 0m 18s Maven dependency ordering for patch
+1 💚 mvninstall 22m 43s the patch passed
+1 💚 compile 8m 38s the patch passed with JDK Ubuntu-21.0.12.1+1-1-24.04.4-Ubuntu
+1 💚 javac 8m 38s the patch passed
+1 💚 compile 8m 55s the patch passed with JDK Ubuntu-17.0.20.1+1-1-24.04-Ubuntu
+1 💚 javac 8m 55s the patch passed
+1 💚 blanks 0m 0s The patch has no blanks issues.
+1 💚 checkstyle 2m 59s the patch passed
+1 💚 mvnsite 9m 55s the patch passed
+1 💚 shellcheck 0m 0s No new issues.
+1 💚 javadoc 6m 11s the patch passed with JDK Ubuntu-21.0.12.1+1-1-24.04.4-Ubuntu
+1 💚 javadoc 5m 56s the patch passed with JDK Ubuntu-17.0.20.1+1-1-24.04-Ubuntu
+1 💚 spotbugs 25m 1s the patch passed
+1 💚 shadedclient 34m 54s patch has no errors when building and testing our client artifacts.
_ Other Tests _
+1 💚 unit 627m 19s root in the patch passed.
+1 💚 asflicense 1m 14s The patch does not generate ASF License warnings.
865m 1s
Subsystem Report/Notes
Docker ClientAPI=1.56 ServerAPI=1.56 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-8749/6/artifact/out/Dockerfile
GITHUB PR #8749
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient codespell detsecrets xmllint jshint spotbugs checkstyle shellcheck shelldocs
uname Linux 3e326f56109f 5.15.0-190-generic #200-Ubuntu SMP Fri Aug 7 15:06:04 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/bin/hadoop.sh
git revision trunk / c8100a2
Default Java Ubuntu-17.0.20.1+1-1-24.04-Ubuntu
Multi-JDK versions /usr/lib/jvm/java-21-openjdk-amd64:Ubuntu-21.0.12.1+1-1-24.04.4-Ubuntu /usr/lib/jvm/java-17-openjdk-amd64:Ubuntu-17.0.20.1+1-1-24.04-Ubuntu
Test Results https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-8749/6/testReport/
Max. process+thread count 4048 (vs. ulimit of 10000)
modules C: hadoop-hdfs-project/hadoop-hdfs hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common hadoop-hdfs-project/hadoop-hdfs-rbf hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-catalog/hadoop-yarn-applications-catalog-webapp . U: .
Console output https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-8749/6/console
versions git=2.43.0 maven=3.9.15 spotbugs=4.9.7 shellcheck=0.9.0
Powered by Apache Yetus 0.14.1 https://yetus.apache.org

This message was automatically generated.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants