Bruno (tool)

usebruno/bruno last check 172 releases
Notes
no notes yet
Release notes
v4.0.0
view on github

Changelog

Features

  • feat(app): migrate ctx API to bru.ctx by @gopu-bruno in #8557
  • feat(overview): show human-readable size for unloaded requests by @chirag-bruno in #8580
  • feat(description): file binary description implementation by @sid-bruno in #8434
  • feat(ai): AI model handling with reasoning support by @naman-bruno in #8539
  • feat: variable descriptions by @sid-bruno in #8269
  • feat(snapshot): implement active workspace tab type tracking by @sid-bruno in #8487
  • feat: Added the option for bruno version edit in the collection overview by @sachin-bruno in #8424
  • feat(auth): akamai auth integration by @shubh-bruno in #8199
  • feat(ai): add security preferences management to AI settings by @naman-bruno in #8453
  • feat: Added collection name and minor UI changes to the generate doc modal by @sachin-bruno in #8391
  • feat(cli): persist env, global-env, and collection var changes from scripts by @sanish-bruno in #8387
  • feat(import): set yml as a default file format across all types of imports by @sharan-bruno in #8363
  • feat(electron): add pkg configuration for installation location by @sid-bruno in #8403
  • feat(variables): persist scripted variable changes by default and re-enable disabled scripting APIs by @sanish-bruno in #8315
  • feat(ai): mode toggle UI and add AI support for folder & collection by @naman-bruno in #8385
  • feat(environments): split variables and secrets into separate tabs by @pooja-bruno in #8191
  • feat(ai): add AI chat sidebar with code block and diff view components by @naman-bruno in #8358
  • feat(ai): OpenAI-compatible endpoints support by @naman-bruno in #8365
  • feat(woof): add WOOF easter egg by @sanish-bruno in #8301
  • feat(app): introduce app functionality by @naman-bruno in #8338
  • feat(network-ui): added resizable columns in network panel by @sachin-thakur-bruno in #8265
  • feat: integrate Markdown into NotificationDetail by @naman-bruno in #8335
  • feat(ai): implement AI autocomplete by @naman-bruno in #8300
  • feat: add cli offline bundle script by @sid-bruno in #8192
  • feat: faster collection mount via file cache (Beta) by @chirag-bruno in #8222
  • feat(ai-assist): add docs generation with folder and collection context by @utkarsh-bruno and @ravindra-bruno in #8246
  • feat: Choose environments to include and show versions in the Generate Documentation modal by @sachin-bruno in #8268
  • feat: variable data types support by @lohit-bruno in #8046
  • feat: redesign notification modal by @prateek-bruno in #8140
  • feat(websocket): show full message name in a tooltip on hover by @pooja-bruno in #8299
  • feat(import): hide File Format option and default collections to Open… by @ravindra-bruno in #8247
  • feat: implement file mode by @naman-bruno, @shubh-bruno, and @chirag-bruno in #8258
  • feat(openapi-sync): preserve user-configured request values on sync by @sundram-bruno in #8204
  • feat(app): scroll to and highlight error line on script error by @pooja-bruno in #8183
  • feat(dev-tools-rquest-resize): dev tools details panel can be resized horizontally via a drag handle by @sachin-thakur-bruno in #8234
  • feat(dev-tools): adds sorting on columns with verticle borders by @sachin-thakur-bruno in #8238
  • feat(workspace): move external collections into the workspace by @gopu-bruno in #8196
  • feat: integrate AIAssist for script editing by @naman-bruno in #8220
  • feat(ws): multiple messages support in websockets by @pooja-bruno in #8115
  • feat(ai): implement organization policy checks for AI features by @naman-bruno
  • feat: add trial upgrade dynamic url flow by @prateek-bruno
  • feat(telemetry): add per-generation documentation telemetry (BRU-3673) by @arpit-bruno
  • feat: secrets managers ui revamp by @lohit-bruno
  • feat(telemetry): track v2 collection mount (file cache) usage by @chirag-bruno
  • feat(notifications): enhance notification handling by @naman-bruno
  • feat(runner): revamp runner results table by @chirag-bruno
  • feat(mount): support js files in collection parsing and tree building by @chirag-bruno
  • feat(electron): add pkg configuration for installation location by @sid-bruno

Fixes

  • fix(app): point generated docs to api-docs CDN path by @sundram-bruno in #8633
  • fix(variable-tooltip): mask secret variables of non-string dataType by @pooja-bruno in #8606
  • fix(description): bulk edit round trip looses description information by @sid-bruno in #8595
  • fix: remove broken markdown in README_pt_br by @BraianS in #8375
  • fix(ui): Added Horizontal Scroll On CollectionHeader to avoid overlapping and squeezing of contents by @ravindra-bruno in #8511
  • fix(ui): websocket and grpc tooltip overflow fixed in request panel by @sachin-thakur-bruno in #8544
  • fix: handle missing location header in redirect error response by @Pragadesh-45 in #7725
  • fix(oauth2): prevent code injection in OAuth2 callback handling by @abhishekp-bruno and @kOaDT in #8405
  • fix: system proxy refresh by @abhishekp-bruno and @sid-bruno in #8535
  • fix(ui): fixed overflow size column issue on first load by @sachin-thakur-bruno in #8525
  • fix(ToggleSwitch): correct onChange handler for response pane by @sid-bruno in #8520
  • fix(openapi): validate API spec imports by @adwait-bruno in #8322
  • fix(app): scope env variable/secret search per tab by @pooja-bruno in #8491
  • fix(request-panel): changed request panel static width to percentage width of screen width by @sachin-thakur-bruno in #8499
  • fix(snapshot): active workspace restoration from snapshot by @sid-bruno in #8392
  • fix(variables): correct scripted-variable persistence races and cross-request propagation by @sanish-bruno in #8406
  • fix: Draft icon indicator on Workspace Environment tab by @adwait-bruno in #8342
  • fix(app): move env save-all icon to header actions by @pooja-bruno in #8449
  • fix(import): linting issue in Import fails for gRPC request without URL in exported collection by @sharan-bruno in #8462
  • fix: serialize object variable values before copying to clipboard by @adwait-bruno in #8362
  • fix(import): Import fails for gRPC request without URL in exported collection by @sharan-bruno in #8367
  • fix(lang): filter multipart multi file by @sid-bruno in #8444
  • fix(workspace-watcher): use workspace-environment IPC channels so env file changes hot-reload by @sanish-bruno in #8370
  • fix(openapi): copy cURL icon now respects the theme variables by @adwait-bruno in #8314
  • fix: prevent redundant workspace switch toast by @DeviSriSaiCharan in #8229
  • fix(transient): scope bruno- lookup to transient base, not full path by @chirag-bruno in #8273
  • fix: correctly parse insomnia exported yaml by @prateek-bruno in #7966
  • fix(import): Postman import: OAuth2 tokenPlacement not set correctly, Header Prefix field hidden and value lost by @rajashreehj-bruno in #8197
  • fix(request-parser): preserve literal colon path segments without path param value by @utkarsh-bruno in #8157
  • fix(ui): open response pane at a minimum height on expand by @gopu-bruno in #8236
  • fix: Preserve folder order from seq attribute by @sachin-bruno in #8213
  • fix(sse): sse response body is empty in res.getBody() for app and cli by @sachin-thakur-bruno in #8212
  • fix: open panes at default size on expand from collapsed state by @gopu-bruno in #8133
  • fix(ui): prevent empty header row from persisting state and crashing CLI by @sharan-bruno in #8167
  • fix(cli): use path name for classname in JUnit reports instead of request URL by @sharan-bruno in #8169
  • fix(grpc): gRPC request loses all messages except the first on save for yaml collection by @sharan-bruno in #8203
  • fix(generate-code): generate code URL issues by @shubh-bruno in #8136
  • fix(ui): correct “modified” indicator state across collection, folder, request, and presets/auth tabs (#3386) by @sharan-bruno in #8027
  • fix: show correct New Request shortcut in response placeholder by @gengjiawen in #8116
  • fix(postman-import): OAuth2 Implicit Grant Type Silently Converted to Client Credentials on Import by @rajashreehj-bruno in #8113
  • fix(ui): use primary accent in OpenAPI Sync settings modal by @sundram-bruno in #8161
  • fix: Remove Beta badge from openAPI sync by @sachin-bruno in #8250
  • fix(ui): Version edit modal minor UI fixes by @sachin-bruno in #8549
  • fix(sidebar): remove deleted JS files from the sidebar by @pooja-bruno
  • fix(mount): build js items as script nodes instead of request nodes by @chirag-bruno
  • fix: with email open upgrade url by @prateek-bruno
  • fix: refresh full-git when git-ui is active tab by @prateek-bruno
  • fix(environments): keep env row's secret flag in sync with active tab by @shubh-bruno
  • fix(watcher): added a value to the present param on collection addWatcher method by @utkarsh-bruno
  • fix(mountv2): attach git watcher after collection watcher by @chirag-bruno
  • fix(environments): remove draft indicator from variable & secret tabs by @pooja-bruno
  • fix: update tab state structure for environment tabs and enhance tests by @sid-bruno
  • fix: throttle git calls to an acceptable amount by @sid-bruno
  • fix(cli): swap persistPaths / bailAbortSignal args in runSingleRequest calls by @sanish-bruno
  • fix(runner): Remove iteration data from runtime variables by @rajashreehj-bruno
  • fix: use portal to prevent z-index issues by @prateek-bruno
  • fix: Added file js as well in the doc generation order by @sachin-bruno
  • fix(git-provider): cache settings page for revisits by @gopu-bruno
  • fix(ui): OpenAPI sync "Syncs Used" counter not updating after sync by @sundram-bruno
  • fix: style responsiveness by @Pragadesh44-Bruno
  • fix: update lodash version to 4.18.1 across multiple packages by @sid-bruno

Others

  • test(sidebar): move sidebar locators to a dedicated file by @pooja-bruno in #8634
  • test(folder): folder no auth test description by @pooja-bruno in #8560
  • test: update openFolderRequest function for tests by @shubh-bruno in #8506
  • test(e2e): update runner to run on self-hosted instances by @sid-bruno in #8524
  • test: flaky bound action tests by @shubh-bruno in #8071
  • test: await the websocket visibility assertion so it actually runs by @voidmatcha in #8317
  • test: fix flaky tests by @bijin-bruno in #8319
  • test: update timeline item locators and improve response status code assertion by @sharan-bruno in #8202
  • test: update locators for save button in presets indicator tests by @sharan-bruno in #8201
  • docs: update guidelines on 'Readability and Abstractions' section by @gopu-bruno in #8623
  • test(tabs): enhance tab migration tests and add restoreTabs functionality by @utkarsh-bruno in #8609
  • refactor: separate app items from requests in sidebar & sorting logic by @naman-bruno in #8577
  • chore(electron): update notarization team ID and add app requirements by @sid-bruno in #8578
  • test(auth): fix modified-indicator inherit spec test by @pooja-bruno in #8550
  • refactor(environments): use tabState.environment.tab for env tabs by @pooja-bruno in #8528
  • style(app): app mode toggle button styling by @naman-bruno in #8523
  • chore: update coding conventions and best practices for this repo by @bijin-bruno in #8482
  • CDN docs url change by @sachin-bruno in #8466
  • chore: update lodash to version 4.18.1 across all packages by @sid-bruno in #8455
  • chore: improve bug report issue template by @rreyn-bruno in #8369
  • ci: use env vars instead of hard coded paths by @sid-bruno in #8389
  • test: workspace import and validation testcase by @mohit-bruno in #8349
  • chore: change app builder to bruno team by @sid-bruno in #8218
  • ci: group the runner to PR by @sid-bruno in #8343
  • test(preferences): set default preferences values by @bijin-bruno in #8321
  • test: fix test and update default retry in local to 0 by @bijin-bruno in #8316
  • test: run playwright e2e fully parallel by @bijin-bruno in #8313
  • add: change log tab by @naman-bruno and @utkarsh-bruno in #8289
  • test(core): current mount pipeline by @chirag-bruno in #7466
  • docs: update README to include Bruno CLI and Docker usage instructions by @abhishek-bruno in #8184
  • chore: remove deps array from playwright test by @pooja-bruno in #8181
  • test: import buildPreferencesLocators from its source module by @lohit-bruno
  • test: update test for externally added remotes by @sid-bruno
  • test: make git tests less flaky by @prateek-bruno
  • test(e2e): fix git-providers tests on local and CI by @Pragadesh44-Bruno
  • test(cli): use bru.runner.iterationData in bail-iter fixtures by @sanish-bruno
  • chore: fix typo by @prateek-bruno
  • switch file-mode sync e2e tests to shared helpers and retrying assertions by @ravindra-bruno
  • Telemetry tracking for AI and app features by @naman-bruno
  • import-workspace-limit: unlicensed user is blocked with the by @mohit-bruno
  • test(cli): cover persistence for iteration-count, bail, and parallel by @sanish-bruno
  • Added file-mode sync e2e tests to use view-mode toggle after upstream UI sync by @ravindra-bruno
  • File Format toggle for Bulk collection import by @ravindra-bruno
  • test: fix data test it for failing tests by @bijin-bruno
  • perf(runner): virtualize iterations table for high iteration counts by @chirag-bruno

New contributors

Full Changelog: https://github.com/usebruno/bruno/compare/v3.5.3...v4.0.0