Release Notes

Release Notes

Latest release: v1.0.48 · July 18, 2026 ·Download Setup.exe ·MSI

v1.0.48 — Tab management

July 18, 2026
  • New File menu commands for working with multiple queries:
  • New Query (Same Properties) — a fresh query that inherits the current language and namespace imports.
  • Clone Query — duplicate the current query into a new tab.
  • Close All Tabs, Close Unmodified Tabs, Close Untitled Tabs — tidy up in one click. Closing tabs with unsaved changes asks first; there's always at least one tab left open.

v1.0.47 — Search Scripts

July 18, 2026
  • Find and open your saved queries fast. File → Search Scripts (Ctrl+P for quick-open, Ctrl+Shift+F for search) opens one dialog that searches across your recent files and the scripts in your folder.
  • Type a file name to quick-open it, or type any text to find the scripts that contain it — matches show the line they were found on.
  • Use ↑/↓ to move through results and Enter to open the selected one (or just click).

v1.0.46 — Query Properties (F4)

July 18, 2026
  • Each query now has a Properties window — Query → Query Properties (F4).
  • Namespace imports: add import paths (e.g. java.util.* or kotlin.math.max) and use those types in the query without writing the import. They apply on every run and are saved with the query (.brpad).
  • At a glance: the query's language, connection, and dependency count, with a shortcut to Manage Dependencies.

v1.0.45 — Run Tests

July 18, 2026
  • Write tests right in a query and run them. Query → Run Tests (Alt+Shift+T) finds every @Test method your Kotlin query declares, runs it, and reports pass/fail per test with the failure message and duration.
  • JUnit's @Test and kotlin.test assertions now ship with ByteRunner, so you can just write them.
  • Results appear as a table, titled with the tally (e.g. "Tests: 3/4 passed").
  • Queries can now use import statements. Previously any query starting with an import failed to compile ("Expecting an element") because ByteRunner's injected helpers landed above it. Imports are now hoisted correctly — this affected Kotlin and Groovy queries alike.

v1.0.44 — My Extensions

July 15, 2026
  • Define helper functions and types once, use them in every query. File → Edit My Extensions opens a per-language file (Kotlin or Groovy) that ByteRunner prepends to your scripts automatically.
  • Write fun greet(name: String) = "Hello, $name!" in My Extensions, then call greet("world") from any Kotlin query — no import needed.
  • import lines in the file are supported (they're hoisted to the top for you).
  • Edit it like any file; Ctrl+S saves, and the changes apply on your next run.

v1.0.43 — Preferences dialog

July 15, 2026
  • Settings now live in one place — Tools → Preferences (Ctrl+,):
  • Editor — font size, word wrap, line numbers, code folding, and auto-indent.
  • Appearance — dark/light theme.
  • Startup — show the welcome screen or not.
  • Changes apply instantly and are remembered across restarts. Your editor font size and the other editor toggles now persist — previously they reset every launch.

v1.0.42 — Update notifications

July 13, 2026
  • ByteRunner now checks for new versions on startup and tells you when one is available, with a link to the download page. You can also check any time from Help → Check for Updates.
  • Notify-only — ByteRunner never installs anything on its own.
  • What’s New → View Online now opens this release-notes page.

v1.0.41 — What's New dialog

July 11, 2026
  • A "What's New" dialog now appears once after each update, summarizing what changed — and it's available any time from Help → What's New. The notes ship inside the app, so it works instantly and offline.
  • Fixed: the About dialog now reports the correct version (earlier builds always showed 1.0.0).

v1.0.40 — Results-pane layout controls

July 9, 2026
  • Full-Screen Results (F8) maximizes the output pane; press F8 again to restore.
  • Hide Editor collapses the editor so results fill the area.
  • Results Side-by-Side (Ctrl+F8) places the editor and results next to each other instead of stacked. Your choice is remembered across restarts.

v1.0.39 — Run Isolated (killable)

July 9, 2026
  • A new Query → Run Isolated (Killable) action (Ctrl+F5) runs your Kotlin/Groovy script in a separate process whose Stop actually terminates it — even a runaway while (true) {} loop.
  • The normal Run (F5) is unchanged: fast, in-process, with database, dependencies, and cross-run session variables.

v1.0.38 — Debug menu + shortcuts

July 8, 2026
  • The debugger is now first-class: a Debug menu exposes Start Debugging, Continue, Stop, Step Over/Into/Out, Run to Cursor, Toggle Breakpoint, and Clear All Breakpoints.
  • Editor shortcuts: F9 toggle breakpoint, F10 step over, F11 step into, Shift+F11 step out, Ctrl+F10 run to cursor.