Download Latest Version Jaeger UI v2.18.0 source code.tar.gz (2.8 MB)
Email in envelope

Get an email when there's a new version of Jaeger UI

Home / v2.18.0
Name Modified Size InfoDownloads / Week
Parent folder
assets.tar.gz 2026-05-13 1.4 MB
Jaeger UI v2.18.0 source code.tar.gz 2026-05-13 2.8 MB
Jaeger UI v2.18.0 source code.zip 2026-05-13 3.3 MB
README.md 2026-05-13 9.3 kB
Totals: 4 Items   7.6 MB 3

⛔ Breaking Changes

✨ New Features

  • Feat(ui): auto-detect url prefix from window.location at page load (@yurishkuro in #3874)

🐞 Bug fixes, Minor Improvements

  • Fix monitor page chart widths on initial load (@gulshank0 in #3555)
  • Fix: use compact duration format consistently across ui (@yurishkuro in #3846)
  • Fix(search): restore time picker options broken by [#3781] (@yurishkuro in #3845)
  • Fix(search): use compact duration format in search results (@Copilot in #3844)
  • Fix: add keyboard accessibility to span name and child expander in trace timeline (@swetalin-10 in #3807)
  • Restore trace timeline column resizing in embedded mode (uiembed=v0) (@Copilot in #3823)
  • Fix: include backend error in otlp conversion error message (@yurishkuro in #3827)
  • Fix: stop click propagation in clicktocopy to prevent header collapse (@Copilot in #3818)
  • Fix(trace): restore "back to search" link broken by react router v6 migration (@yurishkuro in #3785)
  • Feat(trace): add service filter to prune spans by service in timeline (@yurishkuro in #3765)
  • Fix: prevent timeline tick labels from overlapping when column is narrow (@aabhinavvvvvvv in #3768)
  • Fix(ui): sort services alphabetically (@bender316 in #3734)
  • 🔒 fix command injection in prepare-release.py (@jkowall in #3717)
  • Perf: optimize tracestatistics grouping (@jkowall in #3718)
  • Add environment checks to prepare-release target (@jkowall in #3512)
  • Fix: prevent infinite loop on tracediff with empty trace ids (@parshipcy in #3714)
  • Adjust search results for smaller screens (@lpmi-13 in #3697)

👷 CI Improvements

⚙️ Refactoring

  • Refactor(spanview): extract relativebar component from tracespanview (@yurishkuro in #3855)
  • Refactor(stats): migrate tracestatisticsheader to functional component (@WasThatRudy in #3842)
  • Part of phase 1 (1f): remove config redux slice; use getconfig via useconfig (@parshipcy in #3781)
  • Part of phase 1 (1e): migrate embed flags off redux (@parshipcy in #3761)
  • Part of phase 1 (1d): move ddg view modifiers from redux to zustand (@parshipcy in #3750)
  • Fix(lint): replace new array(n) with array.from, promote no-new-array to error (@mateenali66 in #3754)
  • Fix(lint): clear unused vars/imports, promote no-unused-vars to error in ts (@mateenali66 in #3753)
  • Fix(lint): fix jest expects to have matcher calls, promote valid-expect to error (@Pasta-coder in #3752)
  • Fix(lint): drop useless array spread, promote no-useless-spread to error (@mateenali66 in #3749)
  • Chore(lint): move oxlint config into vite.config.ts (@yurishkuro in #3748)
  • Fix(lint): pass children as arg, promote no-children-prop to error (@yurishkuro in #3747)
  • Chore: fix all knip unused-export warnings; enable failure mode (@yurishkuro in #3745)
  • Chore: unexport 32 types not imported outside their own file (@yurishkuro in #3744)
  • Chore: fix knip dead-code warnings (@yurishkuro in #3743)
  • Part of phase1 (sub-2-1c): migrate collapse/expand and detail state to zustand (@parshipcy in #3721)
  • Convert measurablenode to functional component (@thc1006 in #3407)
  • Migrate tracespanview to functional component (@whiplashvin in #3470)
  • Part of phase 1 (sub-1c): move trace timeline layout prefs to zustand (@parshipcy in #3719)
  • Part of phase 1 (1b): archive notifier migrated from redux to zustand (@parshipcy in #3715)
  • Part of phase 1: refactor: migrate trace diff state from redux to zustand (@parshipcy in #3702)
  • Refactor: convert spangraph to functional component (@tmchow in #3705)
  • Test(jaeger-ui): migrate tests from jest to vitest (@yurishkuro in #3695)
  • Test: add mockdefault helper for default-export mocks (@yurishkuro in #3694)
  • Test: replace arrow ctor mocks with regular functions (@yurishkuro in #3693)
  • Chore(jaeger-ui): replace require() in test bodies with static imports (@yurishkuro in #3692)
  • Chore(jaeger-ui): rename jsx test files from .js to .jsx (@yurishkuro in #3691)
  • [adr/007] migrate packages/plexus tests from jest to vitest (@yurishkuro in #3690)
  • [adr/007] consolidate jaeger-ui tsconfigs (step e) (@yurishkuro in #3689)
Source: README.md, updated 2026-05-13