v2.15.0

usebruno/brunov2.15.0Nov 28, 2025by helloanoop

AI Summary

Feature-rich release introducing user prompt variables, HTTP streaming support, gRPC v1 reflection, collection test results filtering, and a revamped test runner UI.

Key Highlights

  • User prompt variables
  • HTTP Streaming support
  • gRPC v1 reflection for server reflection
  • Collection test results and filtering
  • Test runner UI revamp
  • Variable interpolation for WebSocket requests
  • Newlines in params and variables support
  • Stop request button in API URL bar
  • Ctrl/cmd + click to open URLs in codemirror
  • Close all collections at once
  • Mask secret values in CLI reports

New Features

  • User prompt variables
  • HTTP Streaming
  • gRPC v1 reflection support
  • Collection test results filtering
  • Test runner UI revamp
  • Variable interpolation for WebSocket
  • Newlines in params and variables
  • Edit variable in place
  • Prompt save before collection close
  • Stop request button
  • Close all collections at once
  • Ultimate edition self serve trials

Full Release Notes

## Features
- feat: Allow ctrl/cmd + click to open URLs present in codemirror by @abansal21 @chirag-bruno @sid-bruno in [#5930](https://github.com/usebruno/bruno/pull/5930)
- feat: add stop request button in api url bar by @adarshajit in [#5993](https://github.com/usebruno/bruno/pull/5993)
- feat: support newlines in params, and variables by @pooja-bruno in [#5795](https://github.com/usebruno/bruno/pull/5795)
- feat: edit variable in place by @pooja-bruno in [#6069](https://github.com/usebruno/bruno/pull/6069)
- feat: prompt save before collection close by @chirag-bruno in [#6062](https://github.com/usebruno/bruno/pull/6062)
- feat: user prompt variables by @rbonestell @bijin-bruno in [#6104](https://github.com/usebruno/bruno/pull/6104)
- feat: add variable interpolation support for WebSocket requests by @chirag-bruno in [#6064](https://github.com/usebruno/bruno/pull/6064)
- feat: HTTP Streaming by @davirxavier @sid-bruno in [#6074](https://github.com/usebruno/bruno/pull/6074)
- feat: collection test results and filtering by @morgan-se @sid-bruno in [#6070](https://github.com/usebruno/bruno/pull/6070)
- feat: support v1 reflection for grpc server reflection by @sanish-bruno in [#5653](https://github.com/usebruno/bruno/pull/5653)
- feat: Add tabs component for pre-request and post-response scripts by @pooja-bruno in [#5926](https://github.com/usebruno/bruno/pull/5926)
- feat: encapsulate tab boundaries into a hook for managing pane dimensions by @barelyhuman in [#5878](https://github.com/usebruno/bruno/pull/5878)
- feat: close all collections at once by @Kwaadpepper @sanjaikumar-bruno in [#5994](https://github.com/usebruno/bruno/pull/5994)
- feat: test runner ui revamp by @chirag-bruno in [#6011](https://github.com/usebruno/bruno/pull/6011)
- feat: mask secret values from --env-var flags in CLI reports by @sanjaikumar-bruno
- feat: ultimate edition self serve trials by @sid-bruno


## Fixes
- fix: modify bruno to postman converter to include tests in event section by @abhishek-bruno in [#6051](https://github.com/usebruno/bruno/pull/6051)
- fix: update json request and response formatting logic by @lohit-bruno in [#6079](https://github.com/usebruno/bruno/pull/6079)
- fix: handle `escaped forward slashes` by `fast-json-format` library upgrade by @lohit-bruno in [#6075](https://github.com/usebruno/bruno/pull/6075)
- fix: curl import fails for custom content-types by @dawidgora in [#6083](https://github.com/usebruno/bruno/pull/6083)
- fix: import multiple types of example formats from openapi by @sanish-bruno in [#6039](https://github.com/usebruno/bruno/pull/6039)
- fix: update result structure to use 'name' instead of 'suitename' in JUnit output by @abhishek-bruno in [#6120](https://github.com/usebruno/bruno/pull/6120)
- fix: environment display in HTML report by @sanjaikumar-bruno in [#6055](https://github.com/usebruno/bruno/pull/6055)
- fix: prevent import failure for Postman collections with missing responses by @pooja-bruno in [#6129](https://github.com/usebruno/bruno/pull/6129)
- fix: push event only if `exec` has content by @Pragadesh-45 in [#6121](https://github.com/usebruno/bruno/pull/6121)
- fix: sync bruno to postman converter with enterprise edition by @bijin-bruno in [#6162](https://github.com/usebruno/bruno/pull/6162)
- fix: reduce font size of tab test by @pooja-bruno in [#6169](https://github.com/usebruno/bruno/pull/6169)
- fix(security): prototype pollution vulnerability in js-yaml by @bijin-bruno in [#6168](https://github.com/usebruno/bruno/pull/6168)
- fix: Add Error constructors to NodeVM context to fix jsonwebtoken test failures by @chirag-bruno in [#6209](https://github.com/usebruno/bruno/pull/6209)
- fix: grpc messages vanishes after save if the body contains variables by @sanish-bruno in [#6216](https://github.com/usebruno/bruno/pull/6216)
- fix: fetching reflection adds draft state in gRPC by @sanish-bruno in [#6218](https://github.com/usebruno/bruno/pull/6218)
- fix: Enhance Request Item sequencing by @Skewnart @abhishek-bruno in [#5975](https://github.com/usebruno/bruno/pull/5975)
- fix: hashicorp error message by @ganesh-bruno
- fix: improve runner results ui layout and fix autoscroll behaviour by @chirag-bruno

## Others
- chore: refactor bruno to postman converter by @bijin-bruno in [#6162](https://github.com/usebruno/bruno/pull/6162)
- test: Add test for restoring duplicate hashes in patternHasher by @barelyhuman in [#6071](https://github.com/usebruno/bruno/pull/6071)
- add: tests for grpc requests by @sanish-bruno in [#5800](https://github.com/usebruno/bruno/pull/5800)
- refactor: update deprecation messages for Presets and Post Response Vars by @sanjaikumar-bruno in [#6230](https://github.com/usebruno/bruno/pull/6230)
- add: coderabbit integration by @sid-bruno in [#6141](https://github.com/usebruno/bruno/pull/6141)
- add: draft for collection and folder settings by @pooja-bruno in [#5947](https://github.com/usebruno/bruno/pull/5947)
- refactor: update runner tests to use new filter implementation and reusable helpers by @chirag-bruno in [#6085](https://github.com/usebruno/bruno/pull/6085)
- move: import setting into import collection modal by @pooja-bruno in [#5929](https://github.com/usebruno/bruno/pull/5929)
- feat: Add deprecation warnings for Presets and Post Response Vars by @sanjaikumar-bruno in [#6212](https://github.com/usebruno/bruno/pull/6212)
- feat: combine Import Summary & Settings by @pooja-bruno

## New Contributors
* @morgan-se made their first contribution in https://github.com/usebruno/bruno/pull/3808
* @davirxavier made their first contribution in https://github.com/usebruno/bruno/pull/4472
* @sajadoncode made their first contribution in https://github.com/usebruno/bruno/pull/6027
* @adarshajit made their first contribution in https://github.com/usebruno/bruno/pull/5993
* @dawidgora made their first contribution in https://github.com/usebruno/bruno/pull/6083

**Full Changelog**: https://github.com/usebruno/bruno/compare/v2.14.2...v2.15.0