github opensearch-project/OpenSearch-Dashboards 3.7.0

7 hours ago

Version 3.7.0 Release Notes

Compatible with OpenSearch and OpenSearch Dashboards version 3.7.0

Features

  • Add dashboard variables support for dynamic, parameterized dashboards with template syntax interpolation (#11646)
  • Add identity source service for customizing identity management APIs (#9137)
  • Add optional displayName field to index patterns for user-friendly UI labels (#11719)
  • Add icon-based sidebar navigation for Observability workspace (#11811)
  • Add investigation export feature for sharing AI chat results as PDF or Markdown reports (#11764)
  • Add pluggable SQLite storage backend for saved objects (#11771)
  • Add backend compatibility plugin for legacy Elasticsearch 6.x and 7.x support (#11961)
  • Add AnalyticEngine detection and manifest-driven plugin opt-out for data sources (#12023)
  • Add metrics explore tab to discover metrics for browsing metrics without writing queries (#11766)
  • Add metrics builder mode to discover metrics with builder/code toggle (#11775)
  • Add data transformation panel to Explore visualization editor (#11944)
  • Add split chart with custom legend as a universal chart-level setting (#11975)
  • Support multiple fields per axis in bar, line, and area visualizations (#11726)
  • Add query-based tab auto-switching in Discover for Statistic and Visualization tabs (#11635)
  • Add resizable query panel with drag handle to Explore plugin (#11684)
  • Add workspace ACL authorization method for cross-plugin permission checks (#11770)
  • Add OBO token caching with proactive refresh for AG-UI forwarding (#11610)

Enhancements

  • Add maturity-based sync polling and resend affordance for tool result dispatch in chat (#11949)
  • Skip tool result dispatch when another window already submitted it (#11867)
  • Disable chat input based on tool call state to prevent premature user messages (#11982)
  • Improve chat session management and add recent conversations to empty screen (#11808)
  • Register disabled PPL execute query action as fallback on plugin start and restore on unmount (#11693)
  • Restrict field stats tab to only OpenSearch-backed datasets (#11718)
  • Fill the update button with primary color when query changes in Explore (#11823)
  • Restrict response size for S3 datasets by appending default | head 10000 to PPL queries (#11665)
  • Add series limit and truncation warnings in metrics charts (#11829)
  • Enable and optimize dashboard variable experience with type-aware interpolation and workspace-specific UX (#11876)
  • Add dashboard-driven variables with in-context editor integration (#11784)
  • Show alias for user type collaborator in workspace if present (#11929)
  • Add collaborator name lookup support in workspace (#11780)
  • Optimize UI settings client to search only the relevant scope for a given key (#11040)
  • Add cross-origin check for trusted AWS domains in session redirect URL validation (#11791)
  • Disable Data Source management page for unsupported OpenSearch versions (1.3, 2.11) (#11879)
  • Resize the query panel when generating queries using AI mode (#11950)
  • Align input handling across saved-objects import and data_source routes (#12014)
  • Optimize plugin build bundle size by eliminating duplicate core module bundling (#9737)
  • Parallelize release build stages for ~15% faster wall time (#11833)
  • Skip bootstrap when nothing has changed for ~14x faster warm runs (#11831)
  • Remove application-level bundle cache and rely on Rspack persistent cache (#11866)
  • Enable icon side nav by default for Observability workspace (#12047)
  • Integrate Tailwind CSS via PostCSS for osd-apm-topology (#11880)
  • Expose strict and loose CSP rule sets on CspConfig for request-time selection (#11989)
  • Variables UI enhancement with improved dropdown behavior and layout (#11795)
  • Export CSV table from Explore visualizations (#11774)

Bug Fixes

  • Fix chat telemetry incorrectly sending success event after a run error (#11963)
  • Fix tool running state showing incorrectly on snapshot-loaded conversations (#11958)
  • Fix unfinished frontend tool calls not being restored when loading a conversation (#11706)
  • Fix PPL query status lookup to use per-query queryStatusMap instead of overallQueryStatus (#11717)
  • Fix global banner overlap with sidecar (#11893)
  • Fix dashboard table visualization displaying stale data instead of error when PPL query fails (#12004)
  • Fix dashboard panels resetting when switching variables in VIEW mode (#12006)
  • Fix dashboard panels rendering empty for Explore visualizations built from non-INDEX_PATTERN datasets (#11788)
  • Fix DQL/Lucene autocomplete after language switching (#10963)
  • Fix recent queries not working for DQL and Lucene (#10837)
  • Fix misaligned font in Discover query editor for Windows (#11767)
  • Fix CSP violation for visTimeseries plugin on every page load (#11723)
  • Fix banner plugin text rendering after React 18 upgrade (#11503)
  • Fix 'add to dashboard' not working when saving a visualization the second time (#11790)
  • Fix Explore visualization crashes when dashboard variables change due to multi-axis fields (#11934)
  • Fix variables and in-context editor compatibility with newly saved dashboards (#11834)
  • Fix variable import error (#11877)
  • Fix synthetic message ID mismatch and potential XSS in chat export (#11793)
  • Fix scatter chart to allow zero and negative size values (#11744)
  • Fix index patterns disappearing when Query Enhancements is enabled (#11720)
  • Fix saved explore not loading due to DatasetProvider race condition (#11942)
  • Skip failed DataViews in getMultiple() instead of breaking entire dataset list (#11752)
  • Fix time bucket config option not rendering in bar and histogram visualizations (#11897)
  • Fix Data Table visualization filter actions using wrong row after sorting (#11810)
  • Fix autocomplete hiding behind bottom container in Explore (#11747)
  • Fix overflow issue in bottom container caused by drag query (#11746)
  • Fix AI editor resize handle overlapping generated query bar in prompt mode (#11759)
  • Fix beta badge vertical alignment in secondary page header (#11952)
  • Fix Discover initial load 500 error for INDEXES-typed default index patterns (#11887)
  • Fix loading indicator for dashboard embeddable during search source loading (#11894)
  • Fix unable to switch from PromQL to PPL in Explore visualization (#11983)
  • Fix metric visualization sparkline not rendering (#11974)
  • Fix display of object values as JSON in table visualization (#11948)
  • Fix minor bugs in Metric builder including tab switch fallback and code editor shortcuts (#11839)
  • Fix test and placeholder placement on drag in query editor (#11728)
  • Restore UTF-8 BOM in CSV exports for Excel compatibility (#11812)
  • Show time filter and run button in Explore embed mode (#11968)
  • Restore filter and search bar display in dashboard within Observability and Analytics workspaces (#12059)
  • Fix TypeScript strict mode errors in osd-agents ts-node compilation (#11769)
  • Restore gulp-babel and add build sanity check to PR CI (#11822)
  • Fix Tailwind v4 build problems with sass compressed style stripping whitespace (#11945)
  • Anchor Tailwind source scan to each SCSS file's directory for third-party plugins (#12016)
  • Delete query action registry for in-context visualization editor (#12024)
  • Fix React console warnings (#11836)

Infrastructure

  • Add issues write permission to untriaged label workflow (#12000)
  • Pin actions/github-script to exact commit SHA (#12032)
  • Pin jest-canvas-mock to 2.5.1 to mitigate supply chain risk (#11998)
  • Remove final trailing comma for Cypress 13 compatibility (#11901)
  • Remove final trailing comma for Cypress 13 compatibility (#12030)
  • Add Cypress and unit tests for Explore visualization editor (#11688)
  • Add Cypress tests for downloading CSV from Explore visualizations (#11875)
  • Add Cypress testing groups for Observability specs (#11999)
  • Fix unstable Cypress tests for downloading CSV (#11900)
  • Wrap mount() in act() to stabilize embeddable panel test flake (#12035)
  • Update AI PR description skill and add unit test skill (#11686)

Documentation

  • Update Developer Guide to use yarn equivalent for linting (#11531)
  • Fix 'occured' → 'occurred' typos across 7 files (#11773)

Maintenance

  • Add Qxisylolo and Yubo Luo as maintainers and update Emeritus list (#11690)
  • Bump @hono/node-server from 1.19.11 to 1.19.13 (#11707)
  • Bump axios from 1.13.5 to 1.15.0 (#11721)
  • Bump basic-ftp from 5.2.0 to 5.2.1 (#11716)
  • Bump basic-ftp from 5.2.1 to 5.2.2 (#11731)
  • Bump dompurify from 3.3.2 to 3.4.0 (#11763)
  • Bump hono from 4.12.12 to 4.12.14 (#11761)
  • Bump hono from 4.12.9 to 4.12.12 (#11708)
  • Bump mathjs from 11.8.2 to 15.2.0 (#11732)
  • Bump axios from 1.15.0 to 1.15.2 (#11863)
  • Bump fast-xml-parser from 5.5.12 to 5.7.2 (#11837)
  • Bump Node from v22.22.0 to v22.22.3 to address CVEs (#11986)
  • Bump basic-ftp to 5.3.1 and uuid to 11.1.1 to address CVEs (#11936)
  • Bump brace-expansion to 5.0.6 and ws to 8.20.1 to address CVEs (#11995)
  • Bump @types/node to ~22.19.0 to match Node 22.22.0 runtime (#11872)
  • Bump fast-xml-builder from 1.1.5 to 1.2.0 (#11909)
  • Bump hono from 4.12.14 to 4.12.18 (#11904)
  • Bump fast-uri to 3.1.2 to fix path traversal vulnerability (#11907)
  • Bump @babel/plugin-transform-modules-systemjs to 7.29.4, langsmith to 0.5.26, and postcss to 8.5.14 (#11943)
  • Bump simple-git to 3.36.0 to fix RCE vulnerability (#11908)
  • Update Rspack to 1.7.11 and @swc/helpers to 0.5.21 (#11748)
  • Upgrade ip-address to 10.2.0 and replace ip-cidr with internal CIDR utility (#12013)
  • Upgrade @hapi/content to 6.0.1 to fix CVE-2026-35213 (#11785)
  • Upgrade jimp to v1.6.1 to fix CVE-2026-31808 (#12008)
  • Replace dns-sync with Node built-in dns.promises to fix CVE-2017-16100 (#11898)
  • Fix CVE-2026-40190 (#11781)
  • Remove @lhci/cli from package.json to resolve CVE (#11735)
  • Remove unused dependencies from root package.json (#11805)
  • Remove useless changelog files (#11738)
  • Upgrade TypeScript from 4.6.4 to 6.0.2 with full toolchain update (#11687)

Refactoring

  • Refactor bar gauge visualization using HTML and CSS (#11874)
  • Drop resize-observer-polyfill in favor of native ResizeObserver (#11926)
  • Unify panel title handling for Discover visualization saved objects (#11896)

Don't miss a new OpenSearch-Dashboards release

NewReleases is sending notifications on new releases.