Breaking changes
- 💥layout: the resize rebind ids grow-sidebar, shrink-sidebar and reset-sidebar are now grow-pane, shrink-pane and reset-pane, and
[ / ] resize the focused pane rather than always the sidebar
Features
- ✨layout: dock panels to any edge #338
- ✨layout: make the problems panel a resizable pane #337
- ✨layout: zoom the focused pane with m #339
Bug fixes
- 🐛deps: bump opentui to 0.4.5 & unbreak the compiled build #333
- 🐛layout: cycle focus through the panes that are open #341
- 🐛problems: keep the panel cursor on a finding #342
Features
- ✨help: explain the tree & gutter marks in the ? overlay #331
Bug fixes
- 🐛diagnostics: unblock intel on servers with no load phase #329
Breaking changes
- 💥config: the search pane's scope picker moved from
ctrl-s to ctrl-o - 💥config: top-level servers moved to diagnostics.servers and the flat icons glyph map moved to icons.glyphs
Features
- ✨config: save session settings to config w/
ctrl-s #313 - ✨config: shape user config by feature w/ off switches #310
- ✨diagnostics: deliver json/yaml schema validation & intel capabilities #326
- ✨diagnostics: discover Python servers in virtualenvs #302
- ✨go: add diagnostics & code intel via gopls #308
- ✨icons: swap the json & git file glyphs #306
- ✨keys: configurable keybindings #315
- ✨problems: copy entries and focus by mouse #316
- ✨sidebar: reopen a collapsed sidebar with
] #304 - ✨status: context-aware status bar over source-tagged alerts #317
- ✨theme: honor the
NO_COLOR convention #311
Bug fixes
- 🐛mouse: reset double-click tracker on ignored row clicks #323
- 🐛theme: honor NO_COLOR=0/false per no-color.org #324
- 🐛tree: keep sidebar row text on one line #307
- 🐛viewer: restore drag selection & add edge auto-scroll #305
Breaking changes
- 💥config: Replace combined language entries with separate files, icons, languages, and servers registries.
Features
- ✨config: make file support user configurable #299
- ✨diagnostics: per-repo server gates via when & firstOf, adding ty #282
- ✨diff: highlight
.npmrc and .prettierrc #294 - ✨editor: open the IDE rooted at the repo for
o #298
Bug fixes
- ✨diagnostics: tell language servers when files change #281
Features
- ✨icons: add icons for alembic.ini, .mako, & README #286
- ✨worktree: surface which worktree agents are working in #284
Bug fixes
- 🐛header: drop the worktree-activity cue #287
- 🐛worktree: avoid stale worktree-deletion exits #288
- 🐛worktree: filter the picker by what tells worktrees apart #293
Features
- ✨config: add languages to the user config #266
- ✨icons: add icons for .sql, Procfile, & .txt #274
- ✨python: add diagnostics, intel & lsp support #273
- ✨status: recent changed file by kind color & recency dot #271
- ✨tree: use minimal Material outline folder glyphs #275
- ✨viewer: add a per-line provenance rail #276
- ✨viewer: show image & binary metadata #270
Features
- ✨diagnostics: hold documents open across runs #254
- ✨diagnostics: provision rust-analyzer through a binary #256
- ✨diagnostics: pull diagnostics where servers advertise them #251
- ✨header: surface git identity & scope #261
Bug fixes
- 🐛icons: add gradle-wrapper.properties #247
- 🐛install: point pinned downloads at the stet-v tag format #245
Breaking changes
- 💥keymap:
q now opens a Quit alert dialog (confirm with y); esc no longer quits (it only closes panels); ctrl-c still exits instantly
Features
- ✨icons: add icons for CODEOWNERS, xls/xlsx, & cpuprofile #242
- ✨keymap: confirm before quitting via an alert dialog #237
Bug fixes
- 🐛intel: drive cache invalidation from watcher writes #243
Bug fixes
- 🐛bump opentui and shiki deps #234
- 🐛help: single-source keybindings for the ? overlay & --help #235
- 🐛viewer: keep caret restore for the settled diff #233
Performance improvements
- ⚡️intel: eliminate intel action latency #229
Bug fixes
- 🐛npm: publish the launcher as @jimmy.codes/stet #227
Breaking changes
- 💥the binary, npm package (stet), Homebrew formula, config dir (~/.config/stet), cache dir (~/.cache/stet), and env vars (STET_EDITOR, STET_IDE, STET_NO_LSP_DOWNLOAD, STET_INSTALL_DIR) are all renamed; re-point existing config and environment
Features
- ✨rename
sideye to stet #223
Features
- ✨diagnostics: live status while language servers download #221
- ✨ui: quiet panel borders with corner-tick focus #222
- ✨viewer: add line selection and copy #216
- ✨viewer: diff gutter w/ a change bar & diagnostic glyphs #218
Bug fixes
- 🐛diagnostics: pin and bound LSP auto-provisioning #220
Breaking changes
- 💥viewer: the viewer's
z key now folds/expands regions; long-line wrap moved from z to x - 💥scope: the default scope reads "uncommitted" (was "all changes" in the picker and "worktree vs HEAD" in the header)
Features
- ✨intel: add find implementations #213
- ✨intel: call hierarchy via LSP #212
- ✨ruby: highlight & icon .rb.tmpl formula templates #206
- ✨scope: group the scope menu and unify its labels #210
- ✨tree: add test/spec and storybook file icons #209
- ✨viewer: add code folding and expandable git gaps #214
- ✨viewer: add symbol outline / find symbols #208
Features
- ✨icons: add icons for astro, pdf, video, & license files #204
- ✨scope: view any recent commit as its own diff #199
Bug fixes
- 🐛highlight: resolve languages by basename #201
- 🐛upgrade: stack the release notice #205
Features
- ✨ui: context-aware command menu #195
- ✨ui: highlight file finder matches on single-line rows #197
- ✨ui: spread file icons & syntax highlighting across lists #196
Bug fixes
- 🐛bump deps #194
- 🐛references: follow the cursor when navigating the results #198
- 🐛ui: restore the scrollbar for windowed lists #192
Performance improvements
- ⚡️diff: compute per-file diffs in-process #190
Performance improvements
- ⚡️ui: add virtualization for lists #187
Breaking changes
- 💥search: the file tree sidebar toggle moved from
b to ctrl-b
Features
- ✨diagnostics: register JSON & YAML language servers #170
- ✨intel: find references via LSP (Shift+F12) #172
- ✨search: full-view project search pane #185
Bug fixes
- 🐛git: sanitize inherited GIT_* env vars in subprocess calls #176
- 🐛status: keep the recent file's name when its path is long #175
- 🐛viewer: restore and dedup history on jump navigation #177
Features
- ✨diagnostics: support Biome as a repo-gated LSP source #163
- ✨finder: better fuzzy ranking & support multi-word search #168
- ✨intel: add in-flight status while resolving a definition #166
- ✨viewer: reserve a footer for truncated files #169
Bug fixes
- 🐛tree: stabilize the file tree during the cold-start load #161
Features
- ✨intel: hover type/docs via a anchored decoration seam #162
- ✨logs: color status & terminal output by severity #156
- ✨sidebar: author an empty state for the file tree #159
- ✨upgrade: check the latest release & surface updates #154
Performance improvements
- ⚡️skip O(N) allocs in reactive cascade on every git poll #151
Bug fixes
- 🐛intel: wait for tsserver project load before go-to-definition #150
- 🐛memory: bound diagnostics state and diff caches #148
Features
- ✨cli: add upgrade command for self-updating #127
- ✨intel: add go to definition through intel #138
- ✨intel: refcount shared LSP document opens per uri #146
- ✨intel: skip non-providers via static registry capability hints #144
- ✨overlays: filter worktrees with a combobox #135
- ✨overlays: group the help dialog keys by category #136
- ✨viewer: add back/forward history & preview/pin tabs #123
- ✨viewer: copy the entire file with Y #145
- ✨viewer: in-line word caret w/ diagnostic columns #129
Bug fixes
- 🐛intel: relativize symlinked-root definitions #143
- 🐛viewer: wrap diff lines again when toggling long-line mode #134
- 🐛watcher: drop spurious .git-internal events that flood refreshes #137
Features
- ✨viewer: add ability to open in editors #109
Bug fixes
- 🐛viewer: pin non-wrap diff rows to one terminal row #120
Breaking changes
- 💥y in the viewer copies path:line only; the line's code snippet is no longer appended.
Features
- ✨copy file path from the file tree #110
- ✨theme: runtime theme switcher #112
Bug fixes
- 🐛theme: render focused overlay input text in theme color #116
Performance improvements
- refresh: ⚡️cut refresh load & harden exit/startup #115
Features
- ✨config: user config w/ custom themes & live following #106
- ✨icons: add icons for .csv, .http & NOTICE #105
- ✨input: add mouse navigation across panes & overlays #99
- ✨scopes: add session & last-commit scopes behind a picker #102
- ✨title: set terminal title for tab bars #98
Bug fixes
- 🐛theme: darken active diff line in light mode #104
- 🐛viewer: keep whole-file view scrolled to the change after toggling #93
- 🐛worktree: defer full-tree load when switching worktrees #103
Features
- ✨problems: group diagnostics by file w/ aligned columns #92
- ✨theme: new palette, fix diff current-line/diagnostic cues #87
- ✨tree: highlight Gradle files and add JVM file-type icons #91
Bug fixes
- 🐛viewer: follow the cursor with a scroll-off margin #89
Features
- ✨theme: adopt a Catppuccin-grounded, pink-forward palette #80
- ✨tree: broaden file-icon coverage #83
- ✨tree: render symlinks as their target path #84
- ✨ui: vanish the scrollbar track into its surface #85
Bug fixes
- 🐛sidebar: stop the file tree scrollbox from hijacking arrow keys #86
- 🐛viewer: stop wheel scroll from blanking the lower viewport #82
Features
- ✨diff: highlight any Shiki language on demand #77
- ✨ui: quiet the visual language & follow the terminal theme #79
Features
- ✨viewer: own the diff renderer on @pierre/diffs and Shiki #75
Features
- ✨worktree: recover when the active worktree is deleted #72
Bug fixes
- 🐛git: force canonical a//b/ diff prefixes #74
Features
- ✨viewer: toggleable word wrap for long lines #69
Features
- ✨git: refresh from a filesystem watcher #68
- ✨sidebar: resize the sidebar width with [ / ] / \ #66
Features
- ✨diagnostics: add oxlint findings alongside typescript #53
- ✨find: add in-buffer find (/) to the viewer #55
- ✨search: add project content search (ctrl-f) #56
Bug fixes
- 🐛git: prevent index.lock conflicts with concurrent git processes #50
- 🐛quit: exit instantly on ctrl-c #52
Breaking changes
- 💥diagnostics: Diagnostics are now powered by an LSP
Features
- ✨diagnostics: to an auto provisioning LSP client #46
- ✨tree: add Nerd Font file-type icons to the file tree #44
Bug fixes
- 🐛checker: run checkers via the repo's package manager #41
Features
- ✨ui: mute scrollbars to theme colors #39
Bug fixes
- 🐛file: classify deleted binaries on the git-show path #36
- 🐛syntax: highlight JSX with the tsx grammar #38
- 🐛ui: stop the tree-navigation freeze w/ solidjs #33
Features
- ✨ui: display version in header #21
- ✨ui: switch git worktrees with w key #23
Features
- ✨diagnostics: support monorepo workspace typecheck discovery #11
- ✨ui: smart truncate tree names preserving extension #18
- ✨ui: surface activity on collapsed directories #15
- ✨ui: toggle file tree sidebar with b key #19
Bug fixes
- 🐛install: add sideye bin to PATH automatically #14
- 🐛ui: reserve badge space when tree rows #20
Performance improvements
- ⚡️defer repo file enumeration to after initial render #13
- ⚡️lint: enable perf oxlint rules #16
Performance improvements
- ⚡️two-tier polling to reduce ls-files frequency on large repos #8
Bug fixes
- 🐛pass NPM_TOKEN to npm publish step #6
Bug fixes
- 🐛exclude CHANGELOG.md from oxfmt checks #4
Features
- ✨initial version of
sideye #2