Releases: grafana/xk6-dashboard
v0.8.0
xk6-dashboard v0.8.0 is here 🎉!
This is a significant architectural release that improves the project structure and maintainability.
New Features
Frontend Assets Extraction
The frontend assets (UI, report, model, view, and config packages) have been extracted to a separate repository. This change:
- Reduces the main repository size by ~7,000 lines of code
- Removes Node.js/yarn toolchain requirements for backend development
- Enables independent versioning and release cycles for frontend and backend
- Maintains the same user experience and functionality
Impact: This change is transparent to end users. The extension continues to work exactly as before, with all frontend assets embedded in the binary at build time.
Improved Project Architecture
- Separation of Concerns: Frontend and backend development can now be managed independently
- Simplified Development Workflow: Backend developers no longer need Node.js tooling installed
- Pre-built Assets: Frontend assets are pre-built and distributed as a Go module
- Better Build Process: Streamlined build pipeline with reduced complexity
Full Changelog: v0.7.14...v0.8.0
v0.7.14
xk6-dashboard v0.7.14 is here 🎉!
This patch release resolves security vulnerabilities and updates dependencies, including:
vitetov5.4.21(security update)k6tov1.4.0Goto1.25.xin tooling- Various ESLint and build tool dependencies
Other Changes
- Handling the flood of Renovate pull requests by @szkiba in #298
- chore(deps): update dependency vite to v5.4.21 [security] by @renovate-sh-app[bot] in #256
- chore(deps): update dependency lerna to v8.2.4 by @renovate-sh-app[bot] in #261
- chore(deps): update grafana/xk6 action to v1.2.6 by @renovate-sh-app[bot] in #271
- chore(deps): update dependency eslint-plugin-react-refresh to v0.4.24 by @renovate-sh-app[bot] in #259
- chore(deps): update dependency eslint-plugin-prettier to v5.5.4 by @renovate-sh-app[bot] in #255
- chore(deps): update dependency eslint-config-prettier to v9.1.2 by @renovate-sh-app[bot] in #254
- chore(deps): pin dependencies by @renovate-sh-app[bot] in #257
- chore(deps): pin dependencies by @renovate-sh-app[bot] in #252
- chore(deps): pin dependencies by @renovate-sh-app[bot] in #251
v0.7.13
xk6-dashboard v0.7.13 is here 🎉!
This patch release resolves security vulnerabilities, through upgrading:
tsupto^8.0.0viteto^5.0.0
Other Changes
v0.7.12
xk6-dashboard v0.7.12 is here 🎉!
This patch release resolves security vulnerabilities, through upgrading:
viteto^4.5.14esbuildto^0.25.0tmpto^0.2.4
The following vulnerabilities have been addressed:
- CVE-2024-47068
- CVE-2024-45811
- CVE-2025-24010
- CVE-2025-46565
- CVE-2025-32395
- CVE-2025-30208
- GHSA-67mh-4wv8-2f99
- CVE-2025-31125
- CVE-2025-31486
- CVE-2024-45812
Other Changes
- docs: Add instructions for frontend development by @cristianoventura in #229
- fix: CONTRIBUTING.md broken link by @cristianoventura in #230
- Bump dashboard packages to address CVEs by @e-fisher in #235
New Contributors
v0.7.11
xk6-dashboard v0.7.11 is here 🎉!
This patch release resolves one security vulnerability, through upgrading lerna to v8.2.4
The following vulnerability have been addressed:
v0.7.10
xk6-dashboard v0.7.10 is here 🎉!
This patch release resolves several security vulnerabilities, primarily through dependency updates.
The following vulnerabilities have been addressed:
v0.7.9
xk6-dashboard v0.7.9 is here 🎉!
This release is a prerequisite for the feature request in grafana/k6 to enable the web dashboard by default.
Changes
Gracefully Handle Default Port Binding Errors
When multiple k6 instances are run in parallel (e.g., in a CI environment), each instance tries to launch the web dashboard and bind to the default port, 5665. The first instance succeeds, but all subsequent instances fail with a "port in use" error. This fatal error terminates the test run, preventing parallel execution when the dashboard is active.
The solution
The dashboard's error handling for port binding now more flexible. Specifically, if a port binding error occurs on the default port (5665), the behavior is:
- A warning message is logged to the console, informing the user that the dashboard couldn't start on the default port.
- The error is treated as non-fatal.
- The k6 test proceeds to run normally, as if the dashboard were disabled for that specific instance.
This change makes the dashboard's behavior consistent with other k6 services (like the REST API) and would allow for the dashboard to be enabled by default in k6 without breaking parallel test execution workflows.
Downgraded spf13/cobra to 1.4.0
To maintain compatibility and continue the integration of xk6-dashboard with the main Grafana k6 repository, the spf13/cobra dependency downgraded from its current version (v1.9.1) to v1.4.0. This is to align with the version of spf13/cobra currently in use by Grafana k6.
Problem
The upstream Grafana k6 project uses an older version of the spf13/cobra library (v1.4.0). The current version in this repository (v1.9.1) creates a dependency conflict, which blocks the seamless integration of newer xk6-dashboard versions into Grafana k6.
Impact
As a direct consequence of this downgrade, the szkiba/docsme build-time tool, which is used for automatically generating the cmd/k6-web-dashboard/README.md file, will no longer be compatible.
Therefore, any future updates to the cmd/k6-web-dashboard/README.md file will need to be performed manually. This manual process will remain in effect until the spf13/cobra library is updated in the Grafana k6 repository.
v0.7.8
xk6-dashboard v0.7.8 is here 🎉!
This release is a prerequisite for the feature request in grafana/k6 to enable the web dashboard by default.
Changes
Gracefully Handle Default Port Binding Errors
When multiple k6 instances are run in parallel (e.g., in a CI environment), each instance tries to launch the web dashboard and bind to the default port, 5665. The first instance succeeds, but all subsequent instances fail with a "port in use" error. This fatal error terminates the test run, preventing parallel execution when the dashboard is active.
The solution
The dashboard's error handling for port binding now more flexible. Specifically, if a port binding error occurs on the default port (5665), the behavior is:
- A warning message is logged to the console, informing the user that the dashboard couldn't start on the default port.
- The error is treated as non-fatal.
- The k6 test proceeds to run normally, as if the dashboard were disabled for that specific instance.
This change makes the dashboard's behavior consistent with other k6 services (like the REST API) and would allow for the dashboard to be enabled by default in k6 without breaking parallel test execution workflows.
Downgraded spf13/cobra to 1.4.0
To maintain compatibility and continue the integration of xk6-dashboard with the main Grafana k6 repository, the spf13/cobra dependency downgraded from its current version (v1.9.1) to v1.4.0. This is to align with the version of spf13/cobra currently in use by Grafana k6.
Problem
The upstream Grafana k6 project uses an older version of the spf13/cobra library (v1.4.0). The current version in this repository (v1.9.1) creates a dependency conflict, which blocks the seamless integration of newer xk6-dashboard versions into Grafana k6.
Impact
As a direct consequence of this downgrade, the szkiba/docsme build-time tool, which is used for automatically generating the cmd/k6-web-dashboard/README.md file, will no longer be compatible.
Therefore, any future updates to the cmd/k6-web-dashboard/README.md file will need to be performed manually. This manual process will remain in effect until the spf13/cobra library is updated in the Grafana k6 repository.
v0.7.7
v0.7.6
xk6-dashboard v0.7.6 is here 🎉!
This is a maintenance release, changes:
- Updated k6 to v1.0.0
- Use shared GitHub workflows from xk6
- Updated tooling dependencies
go: 1.24golangci-lint: 2.1.6xk6: 0.19.2gosec: 2.22.4govulncheck: 1.1.4goreleaser: 2.9.0
- Added support for Development Containers
- Generate Makefile from
CONTRIBUTING.md