Changelog
Features
- feat: Red status indicator for script errors in Request, Collection, and Folder Script tabs by @Pragadesh-45 in #7035
- feat: set map support for logging by @james-ha-bruno in #6043
- feat: add ZIP file import for collections by @naman-bruno in #7063
- feat: enhance translation capabilities for Bruno to Postman conversion by @sanish-bruno in #7052
- feat: add translations for direct cookie access methods by @sanish-bruno in #7070
- feat: enhance axios shim error handling and add comprehensive tests by @Pragadesh-45 in #6349
- feat: support missing env apis by @sanish-bruno in #7069
- feat: scratch requests by @chirag-bruno and @gopu-bruno in #7087
- feat: move import collection from git url and spec url from enterprise edition to opensource by @abhishek-bruno in #7127
- feat: remove headers from request using scripts by @shubh-bruno in #7122
- feat: Object Variable Interpolation by @TheUnCola in #6317
- feat: add some doc about variable usage by @simonaubertbd in #6443
- feat: f2-rename-shortcut by @tobiasgjerstrup in #7077
- feat: add reveal in file manager option to workspace collections menu by @datlechin in #6944
- feat: refactor github workflow for tests by @bijin-bruno in #7252
- feat: interface zoom control settings by @shubh-bruno in #7255
- feat: add options to skip request and response bodies in reporter output by @abhishek-bruno in #7114
- feat: change default collection location to default location by @gopu-bruno in #7291
- feat: Support
multipart/mixedby @Pragadesh-45 in #7155 - feat: implement onboarding preferences and welcome modal for new users by @naman-bruno in #7319
- feat: add
tokenTypesupport for OAuth2 by @lohit-bruno in #7314 - feat: improve stack traces for script and test failures by @gopu-bruno in #7181
- feat(sidebar): show "Add request" cta when collection or folder is empty by @gopu-bruno in #7273
- feat: enhance API spec export with environment variables support by @abhishek-bruno in #7170
- feat: inline create collection and workspace editor by @gopu-bruno in #7324
- feat: openapi sync by @abhishek-bruno in #7279
- feat: implement temporary workspace creation and confirmation flow by @naman-bruno in #7462
- feat: integrate deferred loading for saving state in DotEnvFileEditor by @naman-bruno in #7463
- feat: remove .bru reference in error message by @fantpmas in #7479
- feat(bruno-js): add hasCookie function to cookie jar shim by @sanish-bruno in #7501
- feat: gRPC - Unix Socket and Named Pipes by @chirag-bruno in #7021
- feat: add custom mount path for Vault AppRole auth by @gopu-bruno
- feat: add iteration data translations for Bruno and Postman by @sanish-bruno
- feat: CLI release check skeleton job to workflow by @helloanoop
- feat: add workspace-level git tab and restore collection toolbar features by @chirag-bruno
- feat: add history logging for collection runner and fix interpolation in history url by @gopu-bruno
- feat: enhance telemetry tracking for session and activation actions by @naman-bruno
- feat: QOL additions to trial flow by @sid-bruno
- feat: include environments in API spec export functionality by @abhishek-bruno
- feat: welcome modal A/B testing by @naman-bruno
- feat: openapi sync limit by @abhishek-bruno
- feat: add periodic license re-verification to LicenseGuard by @naman-bruno
- feat: enhance telemetry tracking for OpenAPI sync and git by @naman-bruno
Fixes
- fix: add missing URL helper translations for Bruno to Postman export by @pooja-bruno in #7026
- fix: preserve empty query param equal sign by @pooja-bruno in #7031
- fix: runner results enhancement by @sanjaikumar-bruno in #7040
- fix: code editor null value crash by @pooja-bruno in #7039
- fix: close saved deleting collections by @chirag-bruno in #7048
- fix: improve error message formatting by @chirag-bruno in #7059
- fix: import tests by @naman-bruno in #7067
- fix: header and var tooltip overflow by @pooja-bruno in #7082
- fix: disable text-overflow ellipsis on checkbox column by @gopu-bruno in #7080
- fix: openapi content level example by @pooja-bruno in #7091
- fix(
bruno-requests): marknode.js built-inmodules asexternalin rollup config by @lohit-bruno in #7095 - fix: improve value handling in editor components by @sid-bruno in #7098
- fix: env color picker ui by @pooja-bruno in #7096
- fix: improve environment variable comparison by stripping UIDs by @sid-bruno in #7100
- fix: filter existing paths for apispec in workspace by @naman-bruno in #7104
- fix: persist environment color on import/export by @pooja-bruno in #7045
- fix: update codemirror bg for pastel light theme by @gopu-bruno in #7110
- fix: pass
app-level proxyconfig tobru.sendRequestby @lohit-bruno in #7113 - fix: example response statusCode not persisted in yml file by @abhishek-bruno in #7117
- fix(save-all): fix save all modified requests while closing the app by @bijin-bruno in #7118
- fix: enhance tag handling and validation in collection import/export by @abhishek-bruno in #7107
- fix(node-vm):
scripting contextandmodule resolutionby @lohit-bruno in #7033 - fix: graphQL variables interpolation consistency (UI and CLI) by @sanjaikumar-bruno in #7049
- fix: multipart form-data file param export/import for Postman by @chirag-bruno in #7111
- fix: cURL import NDJSON in request body as text by @shubh-bruno in #7002
- fix: env draft loss on color change and rename by @pooja-bruno in #7130
- fix: update header validation test to use triple-click for selecting all text by @bijin-bruno in #7140
- fix: flaky tests - standardize save keyboard shortcut across tests by @bijin-bruno in #7141
- fix: improve visual hierarchy of markdown headers in docs by @SahilShameerDev in #7145
- fix: importing from openapi excludes documentation for requests by @NuageTompis in #6439
- fix: incorrect response formatting when saving examples by @jokj624 in #6528
- fix: sse response download button by @pooja-bruno in #7081
- fix: parsing dates from insomnia by @egmen in #7003
- fix: cookies not being set when follow redirect = false by @JeroenVinke in #6679
- fix: collection scope undefined var by @pooja-bruno in #7211
- fix: import ndjson-curl handling binary data check with type file or not by @shubh-bruno in #7210
- fix: env var edit by @pooja-bruno in #7066
- fix: incorrect translations by @sanish-bruno in #7214
- fix: consistent button size on save requests modal by @bastiendmt in #7197
- fix:
oauth2 credentialmanagement improvements by @lohit-bruno in #7220 - fix: load
shell environment variableson app startup by @lohit-bruno in #7223 - fix: call
initializeShellEnvdirectly in app ready handler by @lohit-bruno in #7228 - fix: updated error message for renaming requests under same parent entity by @shubh-bruno in #7010
- fix: collection reorder not persisting after restart by @sanjaikumar-bruno in #7093
- fix: openapi cli import by @pooja-bruno in #7028
- fix: response viewer not updating when focused (read-only editors) by @sanjaikumar-bruno in #7218
- fix: phone number faker function by @pooja-bruno in #7046
- fix: skip null query parameters in Postman to Bruno conversion by @sanish-bruno in #7193
- fix: default
normalizeProxyUrltohttpprotocol for all proxy URLs by @lohit-bruno in #7285 - fix: Environment Search Behavior, UI Updates, and Result Handling by @Pragadesh-45 in #7287
- fix: storing status in example for yml file by @shubh-bruno in #6876
- fix(graphql): handle invalid schemas gracefully in query editor by @chirag-bruno in #7269
- fix(schema): support all Unicode letters in tag validation by @numsu in #7311
- fix(batch-events): fix order of directory file and folder events by @sid-bruno in #7300
- fix: tags validation error for openapi import for BRU and YAML compatibility by @shubh-bruno in #7294
- fix: wrong workspace request shown after closing tab by @sanjaikumar-bruno in #7259
- fix: Postman import compatibility for multipart form-data file params by @chirag-bruno in #7325
- fix(
oauth2): prevent false callback matches onroot path URLsby @lohit-bruno in #7315 - fix: ensure system proxy is initialized before use in network calls by @lohit-bruno in #7264
- fix: allow user to delete default bruno headers in pre-request by @shubh-bruno in #7331
- fix: file extension for clone and rename request by @pooja-bruno in #7278
- fix: persistence of additional parameters using open-collection format by @xIceFox in #7296
- fix: enable
SSL session cachingandHTTP agent reusefor faster consecutive requests by @kxbnb and @lohit-bruno in #6987 - fix: prevent triggering rename action with modifier keys by @naman-bruno in #7322
- fix: show '+ Add request' when only transient items exist by @gopu-bruno in #7361
- fix: focus and text selection in workspace creation flow by @gopu-bruno in #7363
- fix: use Title Case for default Untitled Collection and Untitled Workspace names by @gopu-bruno in #7389
- fix: preserve existing
process.envvalues ininitializeShellEnvby @lohit-bruno in #7390 - fix: update collection path handling to use path.join for consistency by @naman-bruno in #7394
- fix: app crash error (Rendered fewer hooks than expected) by @sanish-bruno in #7407
- fix: normalize paths when comparing workspace and redux collection paths on Windows by @chirag-bruno in #7436
- fix: cookie wrapper callback mode returns never-resolving Promise by @lohit-bruno in #7442
- fix: multipart header check by @pooja-bruno in #7444
- fix(collection-watcher): prevent crash when deleting collections by @abhishek-bruno in #7470
- fix: add missing scrollbar-color property by @bohat-y in #7481
- fix(RequestTabPanel): update loading message for better user feedback by @chirag-bruno in #7492
- fix: loading state for ZIP file import by @naman-bruno
- fix: clear trial license on deactivation by @sid-bruno
- fix: git commit details page not able scrollable to bottom by @gopu-bruno
- fix: update visual diff handling and improve auth, body rendering by @naman-bruno
- fix: cli duration summary by @pooja-bruno
- fix: history tab layout rendering and ui distorted issues by @gopu-bruno
- fix: correct report parsing in CLI combined environment tests by @abhishek-bruno
- fix: postman zip import test by @bijin-bruno
- fix: make history log scrollable to bottom with dev tools open by @gopu-bruno
- fix: import collection workspace toast by @pooja-bruno
- fix: use
getOrCreateAgentsin license and vault utils by @lohit-bruno - fix: reset trial used by @sid-bruno
- fix: auto populate location when cloning git repo workspace by @gopu-bruno
- fix: ensure preferences are decrypted before sending to renderer by @naman-bruno
- fix: update workspace creation logic to exclude creating workspaces by @naman-bruno
Others
- Enable encodeUrl setting to control URL encoding in generated snippets by @sanish-bruno in #7187
- Make autocomplete work with substrings by @fantpmas in #5189
- handle unsaved changes in dot env file editor by @naman-bruno in #7094
- chore: update swagger-ui-react by @sanjaikumar-bruno in #7086
- refactor: enhance gRPC methods loading with cache indication by @sanish-bruno in #7022
- test: fix breaking tests by @sid-bruno in #7132
- chore: fix flaky tests by @bijin-bruno in #7144
- chore: fix flaky playwright tests by @bijin-bruno in #7159
- chore(playwright): enhance playwright config to reduce flakiness by @bijin-bruno in #7174
- chore: redux state to keep currently active script tab in state by @Joren-vanGoethem in #6947
- Clear input after adding a tag by @K3UL in #7180
- chore: fix tab selection by @bijin-bruno in #7260
- perf: Improve search performance in code editor by @Its-treason in #6920
- fix#6247: Interpolate dynamic variables in path param by @NikHillAgar in #6251
- Force text/plain mimetype when copying request code by @austenadler in #7321
- chore: copyright year to 2026 by @melroy89 in #7302
- chore: update coderabbit instructions to make sure the code is os agnostic by @bijin-bruno in #7355
- refactor: comment out unused APIs by @sanish-bruno in #7323
- Mark test script errors as failed in runner by @KaranPradhan266 in #6261
- Enhance error handling for script execution by introducing isScriptError flag in test results by @sanjaikumar-bruno in #7029
- refactor: update path imports to use utils/common/path by @naman-bruno in #7440
- refactor: simplify environment list actions and improve styling by @Pragadesh-45 in #7459
- refactor: optimize debounced save functionality by @naman-bruno in #7495
- refactor: improve OpenAPI spec export by combining duplicate status codes by @sanish-bruno
- chore: fix copy-js playwright test by @bijin-bruno
- chore: fix auto save playwright test by @bijin-bruno
- chore(playwright): postman import test by @bijin-bruno
- refactor: consolidate proxy/TLS agent logic into shared getPreferencesHttpHttpsAgents by @lohit-bruno
- refactor: replace trial modal with workspace limit modal by @naman-bruno
New Contributors
- @SahilShameerDev made their first contribution in #7145
- @NuageTompis made their first contribution in #6439
- @TheUnCola made their first contribution in #6317
- @simonaubertbd made their first contribution in #6443
- @egmen made their first contribution in #7003
- @Joren-vanGoethem made their first contribution in #6947
- @tobiasgjerstrup made their first contribution in #7077
- @bastiendmt made their first contribution in #7197
- @K3UL made their first contribution in #7180
- @rameshsunkara made their first contribution in #7207
- @datlechin made their first contribution in #6944
- @numsu made their first contribution in #7311
- @austenadler made their first contribution in #7321
- @melroy89 made their first contribution in #7302
- @xIceFox made their first contribution in #7296
- @bohat-y made their first contribution in #7481
Full Changelog: v3.1.4...v3.2.0