Skip to content

Releases

Bake 0.4.6

Choose a tag to compare

@github-actions github-actions released this 12 Nov 11:41
ae83cb3

Bake 0.4.6 starts new sessions with full access, as Pi does, adds /permission and more answers to an approval, draws Mermaid diagrams in answers, adds an opt-in visualize tool for charts, tables, and diagrams drawn while the model writes them, and gives the status line a state dot, a context gauge, and one palette. Linux remains its only released platform.

  • New sessions have full access, as in Pi. A new session now starts with the danger-full-access preset: tools change any file you can, bash runs outside the sandbox, and nothing asks. Sessions you resume keep the permission they had. To keep the sandbox, set "permission": { "defaultPreset": "workspace-write" } in settings.json or run bake --permission workspace-write; a defaultPreset already saved, from settings.json or a 0.3 home, still applies. Under never, a Claude Code hook's ask is denied without asking; choose workspace-write to be asked.
  • /permission switches the session. /permission lists the presets with their sandbox and approval policy and switches this session; Ctrl+S also saves the default for new sessions, and /permission workspace-write switches at once. The session file keeps the switch, and the next prompt tells the model.
  • More answers to an approval. The approval panel says what the tool wants in words, such as bash wants to run outside the sandbox, shows the command or path first with the model's justification under it, and offers four choices, picked with ↑↓ or a key and confirmed with Enter: allow once (y), allow the same tool the same access for the rest of the session (a), switch the session to full access (f), or deny (n) with an optional note that the model reads with the refusal. Esc still cancels. A session grant is kept in the session file, so a resumed session does not ask again.
  • A status line that shows the session's state at a glance. A dot leads the screen's last row: ○ idle, an orange ● while a turn or compaction runs, a yellow ◆ while Bake waits on you for an approval or a model, and a red ! after a failed turn, until the next prompt. A five-cell gauge before the context's share fills green and turns yellow, orange, and red as the context nears its limit; the prompt cache's share, when shown, is green when most of the prompt came from the cache and warms as less did; and a detached branch is yellow. The model name is in the terminal's normal colour and the rest stays dim. The colours come from one small palette: warm colours mean attention, and the thinking levels moved to cool ones, so xhigh is now violet rather than orange. Under NO_COLOR each state keeps its own glyph.
  • Text copied from the transcript no longer carries an invisible byte-order mark (U+FEFF) from the output it was copied from, such as a CI log; it pasted as a stray character.
  • Mermaid diagrams in answers. As in Pi 1.5, a ```mermaid code block in an answer is drawn as a diagram in box-drawing characters: flowcharts, sequence diagrams, and flat state, class, and entity-relationship diagrams, in the answer's colours, and in ASCII under the classic frame. A diagram too wide for the screen, or one using Mermaid that Bake cannot draw, shows its source as before, with a dim line saying why. While an answer streams, a diagram is drawn as far as its finished lines go. markdown.mermaid in settings.json, also under /settings, takes Pi's values: streaming (the default), final to draw a diagram once its code block is complete, or off. The model sees no change. The renderer is a port of OpenAI Codex's codex-mermaid (Apache-2.0).
  • Charts, tables, and diagrams in the conversation, off by default. The new visualize tool lets the model show you a bar chart, a line chart, a table, or a Mermaid diagram, drawn as text while the model is still writing it: bars in eighth-of-a-cell steps ending in their values, a braille line plot ten rows high with its axis and labels, tables in box-drawing borders with numbers aligned right, and diagrams as an answer's Mermaid code block draws them, from the longest run of finished lines while they arrive. Several series get colours and a legend; with NO_COLOR they are told apart by glyph, and the classic frame draws in ASCII. The drawing reflows when the window is resized and is drawn again when a session is resumed. A diagram is drawn whatever markdown.mermaid says, since the model asked to show it. The model gets back one line saying what you were shown, never the drawing, and a call with a mistake, such as a row with the wrong number of values or Mermaid Bake cannot draw, fails with what to fix, naming the diagram's line or the limit it passes. Turn it on with bake -t +visualize or "defaultTools": ["+visualize"] (bake docs cli); it stays off by default until its effect on models has been measured.

Bake 0.4.5

Choose a tag to compare

@github-actions github-actions released this 12 Nov 06:43
b1d7483

Bake 0.4.5 gives each tool its own card with previews that Ctrl+O expands, shows subagents and background shells as one tasks list, puts what a turn is doing under its latest output and the status line on the screen's last row, and takes Pi 1.5.2's fixes to the file tools, bash timeouts, images, branch summaries, and provider requests. Linux remains its only released platform.

  • One place for work beside the conversation. Subagents and background shells show together as tasks under the composer. One quiet row says how many run, how many failed or finished, and names the newest running one, a shell with its command and time; once everything has finished it stays, dim, while the session keeps them. Ctrl+G, or ↓ past the draft, opens one list of both, subagents then shells, with one selection across them and the selected task's last line of output or last words under it. Enter opens a shell's output or a subagent's details, x stops it, and Esc steps back one level. Marks match the conversation's: a running task shows a running call's mark, held steady, and done, failed, and stopped look alike in both places. bake preview shows sample tasks.
  • Cards for more tools. A write shows the first lines it writes, numbered and coloured, a search its matches under their files, a listing its first entries, and a web search its results by title and site. A read or a fetch says what came back, such as 40 lines or HTTP 200 · 12.4 KB, without repeating it, and an MCP tool's card names its server and tool, github · create_issue, with its arguments as quiet key value pairs.
  • Previews that keep what matters. A failed call keeps the last lines of its output, where the error is. A run of blank lines reads as one, and a reply that is one JSON value, as many MCP tools send, is laid out a member a line and coloured. A card counts its lines only when its preview leaves some out, a long line in an edit's diff is cut to a few rows, and a call whose whole output was saved to a file names that file under its card.
  • Ctrl+O shows every call whole. Every line, the whole diff, every match and entry, a read's content numbered from the line it started at and coloured by its language, and a fetch's text, up to 400 rows a card; Ctrl+O again returns to the previews. It works while a turn runs and while reading back, and keeps your place. Until it is first used, the count of the newest card that has one names it: ⋯ 26 more lines · Ctrl+O. Counts of one read 1 line, as in ↓ 1 line below while reading back.
  • What a turn is doing sits under its latest output, and names the work. While a turn or a compaction runs, one row under the conversation's newest line shows its word, what the latest call is doing, such as reading transcript.rs, running cargo test, or searching ctx.effect, with +2 when two more run beside it, in place of running bash, and its time; the row moves down as the output grows, and scrolled up to read, it stays on the last line above the composer. How the turn ended stays under the newest output until the next prompt, and scrolls out of sight with it. The status line, with the model, its thinking level, the context, and the working directory, is now the screen's last row, under the tasks, and the row above the composer appears only while the tasks list or one task is open, to name it and its keys.
  • Prompt-template arguments keep apostrophes. /review why doesn't the user's cache work no longer drops its apostrophes or shifts $1 and $2: as in Pi 1.5.2, a quote starts quoting only at the beginning of an argument, a quote with no closing match is kept as text, \" inside "..." (or \' inside '...') is a literal quote, and "" or '' is an empty argument.
  • The thinking level survives /tree. After /tree returns to a point recorded with another thinking level, the next prompt records the level in use there, so resuming the session restores it rather than the old one.
  • Image-only messages leave the queue. A steering or follow-up message with images and no text no longer stays listed as queued after the model has received it.
  • Sessions whose project is gone are refused in scripts. bake -p, --output-format, --mode json, and --mode rpc refuse a session whose saved working directory no longer exists, say which directory, and exit 1 before anything is sent or written. --fork copies it into the current directory.
  • Fewer wasted retries. A Z.ai usage limit (error code 1308) is no longer retried, a gateway stream cut short after the reply began is retried, and LiteLLM's "Context Window exceeded" starts compaction, as in Pi 1.5.2.
  • Exported pages from Pi 1.5.2. /share and bake --export pages show the session's system prompt and tools where the session recorded them, open sessions too deep for the old page, and count each reply's recorded cost.
  • grep globs are relative to the searched path. As in Pi 1.5.2, grep with path: "src" and glob: "sub/*.rs" searches src/sub, a leading ./ is ignored, and a glob without / still matches file names at any depth.
  • find and ls limits from Pi 1.5.2. A limit below 1 means 1 and a fractional limit is rounded down, and find says its result limit was reached only when more files exist.
  • Resized photos are sent as JPEG. When read shrinks an image, it sends the smaller of PNG and JPEG, so a large photo no longer reaches the model as a bigger PNG; screenshots and other flat images stay PNG.
  • Cut lines keep whole characters. grep's long lines and the tool results quoted in compaction and branch summaries are cut before a character such as an emoji rather than through it.
  • Clearer bash timeouts. Outside the sandbox, when a command's shell has exited but a background process it started keeps writing until the timeout, bash says so, with the shell's exit code and when it exited. In the Linux sandbox, such processes end with the shell.
  • Branch summaries think. The summary /tree writes of the branch it leaves asks a reasoning model at the session's thinking level, and summarizes the branch as the model's context last showed it, with context edits such as contextMasking's placeholders applied.
  • Room for the answer near the context limit. The output allowance keeps 15% of the estimated input, at least 4,096 tokens, free below the model's context window, so providers that count tokens more generously, such as OpenRouter, no longer refuse a long conversation; when that would leave less than 32,768 tokens for the answer, only the 4,096 are kept and the answer may use up to 32,768.
  • Anthropic models get MCP tools' shared definitions. A tool schema's $defs or definitions is no longer dropped when Bake sends it to an Anthropic model, so its references resolve.
  • Codemode prints NaN and Infinity. console.log, text(), and thrown values show NaN, Infinity, and -Infinity instead of null; inside objects and arrays they are still JSON's null.

Bake 0.4.4

Choose a tag to compare

@github-actions github-actions released this 26 Oct 21:12
6171166

Bake 0.4.4 is easier to run from scripts and other agents, groups /settings by the command each setting shapes, writes compaction summaries from the prompt cache, shows compaction as it runs, and can show token and cache usage in the status line. Linux remains its only released platform.

  • Easier to run from scripts and other agents. bake -p --output-format json prints one JSON object when the run ends: the answer, how the run ended (success, error, truncated, budget_exhausted, or cancelled), the session id and file to continue with --session, and the run's turns, model calls, time, tokens, and cost. --output-format stream-json prints every event and then that object, and text prints the answer, as Claude Code's and Gemini CLI's --output-format do. A startup failure, such as a model that does not exist, prints a result object too. bake docs headless describes it.
  • No more hanging on an open standard input. Beside a prompt argument, piped standard input that sends nothing within a second is left unread with a warning, so a caller that starts bake -p "…" with standard input open no longer waits forever. A bare - waits for piped input however long it takes; with no prompt argument, standard input is still read to its end.
  • Cut-off answers fail. As in Pi 1.4.0, print mode prints an answer cut off at the model's output limit, then says so on standard error and exits 1.
  • /settings is grouped. Its rows sit under the command or part of the screen they shape: Compaction · /compact, Prompts sent during a turn, Branches · /tree, and Status line. Each shows its value and, while selected, what it does. A change applies at once and returns to the list, so several settings can be changed in one visit; Esc closes it and lists the changes.
  • Choose when auto-compaction starts. Compact at in /settings, or compaction.thresholdPercent in settings.json, starts automatic compaction once the context passes a share of the model's window, such as 80%, instead of only when the reserve is reached. Keep recent sets how much recent conversation a compaction keeps, and Branch summary whether /tree asks to summarize the branch it leaves.
  • Cached summaries, on by default. A compaction repeats the conversation the provider has cached and asks for the summary as the next turn, so most of the request is read from the prompt cache and the summary sees every tool result in full rather than its first 2,000 characters. Bake sends it only when the request repeats the last one; otherwise the usual summary runs, and the compaction says why. Turn it off with Cached summary in /settings (compaction.cachedSummary: false). Adapted from pi-cached-compaction 0.2.0.
  • Clearer compaction. While history is compacted, the bar says Compacting history… in blue with what it is doing (reading 182.3k tokens from the cache, summarizing 182.3k tokens) and its time, the composer says Esc cancels it, and an automatic compaction hands the bar back to the turn when it ends. A ruled mark in the transcript shows the context before and after, Compacted · 182.3k → 21.1k tokens, with how much the cache served or why it was not used; resumed sessions mark earlier compactions the same way. --mode json reports each summary request as a compaction_summary event.
  • Token and cache readings in the status line. Status line in /settings (statusLine.tokens and statusLine.cache) adds the session's input and output tokens, ↑12k ↓3.4k, and its prompt cache, cache 99% (R180k W2k): the share of the latest prompt read from the cache, then the cache's reads and writes, as Pi's footer counts them.
  • One set of file lists per summary. A summary whose model copied the previous summary's read and modified file lists no longer ends with them twice.

Bake 0.4.3

Choose a tag to compare

@github-actions github-actions released this 25 Oct 20:39
826a961

Bake 0.4.3 opens with a clearer header, says when an update is published, shows its state in the terminal title, Ghostty, and Herdr, and streams long tool calls faster. Linux remains its only released platform.

  • A clearer opening screen. An interactive session opens with a header in place of the bare "Session saved to" note: the Bake wordmark in a warm gradient on truecolor terminals, the version, the working directory, the session in plain words (new, or resumed · 6 prompts · 2h ago), and tags for the sandbox mode, approval policy, and offline mode. /session still shows the session file.
  • Tips in place of the scroll hint. The scroll keys no longer sit above the status line. In fullscreen, the header shows a dim tip row for about 25 seconds after startup, or until the first turn: the scroll keys first, then two other tips that change from launch to launch.
  • Update notice. On a native install, an interactive session says, under an update tag, when a newer release is published and that bake update installs it. The check runs in the background at most once a day, remembers its answer in update-check.json in the Bake home, and is left out by --offline.
  • Terminal status. The window title names the session and directory, bake - <name> - <directory>, and starts with ◐ while a turn runs or ? while an approval waits; quitting restores the previous title where the terminal keeps it. In Ghostty, a progress bar moves while a turn runs, pauses while an approval waits, and shows an error after a failed turn. A desktop notification says when a turn finishes or a tool needs approval while the window or tab is out of focus. The terminal.showTerminalProgress and terminal.notifications settings turn either on or off in any terminal.
  • Richer Herdr status. A blocked report says what it waits for, such as bash needs approval. A dialog opened by a command such as /model no longer reports blocked. Herdr's agent sidebar can show $model, $thinking, $context, $session, and $activity, which quitting clears.
  • Faster streaming of long tool calls and answers. A tool call's arguments are no longer parsed again from the start for every streamed piece, so a file of about 150 KB that a model writes costs about 1 second of CPU instead of 11. Long answers stream with fewer copies, and --mode json and RPC output no longer build each update's discarded snapshot.

Bake 0.4.2

Choose a tag to compare

@github-actions github-actions released this 25 Oct 14:45
524d1be

Bake 0.4.2 is the first release since 0.4.0 that the installers and bake update deliver: it carries every change of 0.4.1, which was tagged in source only.

  • Updates are published again. curl -fsSL https://bake.justar.dev/install.sh | sh and bake update install 0.4.2 on Linux x64 and arm64.
  • From 0.4.1: the shells' and agents' lists open under the input bar with the conversation kept in view, Shift+Tab cycles the thinking level, /model is grouped by provider and lab, /login is clearer, answers render as Markdown, long bash commands and output are kept to a few rows, Ghostty's Kitty keyboard reporting and Herdr reporting are supported, and a defaultTools list of only +/- entries keeps code mode, the job tools, and the web tools on.
  • Release tooling: releases are built, checked, signed, and published by bake-release, a Rust tool that checks every step with the updater's own code, in place of the retired Bun scripts. The archives keep the same layout and license bundle.

Bake 0.4.1

Choose a tag to compare

@Justar96 Justar96 released this 25 Oct 12:50
6cc090b

Bake 0.4.1 polishes the terminal and keeps Linux as its only released platform.

  • Lists open under the input. The background shells' and agents' lists, one shell's output, and a subagent's details open in a panel under the input bar. The conversation stays in view above it, the selection stays visible on short terminals, and rows out of view are counted.
  • Shift+Tab cycles the thinking level of the session's model.
  • /model is grouped by provider and then by lab, in natural order, with each model's id beside its name.
  • Clearer /login: step titles, the default address as a placeholder that Enter accepts, hints, and a working indicator while the key is checked.
  • Easier-to-read transcript: answers are drawn as Markdown with colour, long bash commands and output keep a few rows with a +N count, a running call shows its newest output, and code mode is labelled like the other tools.
  • Terminals: Ghostty's Kitty keyboard reporting is supported with balanced cleanup, and Bake reports its activity and the command that restores a saved session to Herdr.
  • Settings: a defaultTools list of only + and - entries now changes Bake's default tool set, so code mode, the job tools, and the web tools stay on.
  • Windows (not yet released): a killed process tree whose short children reused an ended child's process id now finishes settling instead of waiting forever.
  • Repository: the Cargo workspace is at the repository root, and the retired TypeScript agent, Bun tooling, distribution automation, eval runners, and archived evidence are removed. This release is tagged in source only; installers and bake update stay on 0.4.0.

No new binaries. This release is tagged in source only: the release workflow was removed in the repository cleanup, so the installers and bake update keep installing 0.4.0.

Bake 0.4.0

Choose a tag to compare

@github-actions github-actions released this 22 Oct 17:20
v0.4.0
ac4cd7a

Bake 0.4.0 is a new native agent, bake, written in Rust. This first release is for Linux.

  • Linux first. Releases are published for Linux x86_64 and arm64 with glibc 2.34 or newer. macOS and Windows support is coming in a later 0.4 release; until then the installers stop on those platforms before they download anything, and on Windows you can install Bake inside WSL.
  • A separate install. curl -fsSL https://bake.justar.dev/install.sh | sh installs bake into ~/.local/share/bake-native and links it into ~/.local/bin; it needs no Node or Bun. It does not upgrade or migrate a Bake 0.3 install: it takes over a 0.3 bake command and records how to restore it (--uninstall-links), leaves 0.3's dsh command alone, and a 0.3 bake update stays on 0.3.
  • The end of 0.3. Bake 0.3, the TypeScript agent, receives no further bug or security fixes, and its dsh command, profile, and package aliases retire with it (D10 and D13). Each BAKE_* environment setting still falls back to its DSH_* name.
  • Your Bake home carries over. bake uses ~/.bake (BAKE_HOME, then DSH_HOME) and reads 0.3's CLIProxyAPI route, key, and default model without changing them. Sessions are saved in pi's session format; 0.3 session logs are not opened.
  • What it does: interactive sessions, fullscreen or inline, where you can steer or stop a turn; model, thinking, session, tree, fork, compaction, and settings commands; /login for a CLIProxyAPI account and models.json for any OpenAI- or Anthropic-compatible provider; sandboxed bash, file, search, web, and code-mode tools under permission presets and approvals; background shells, and opt-in subagents and reminders; AGENTS.md context files, skills, prompt templates, MCP servers, command hooks, and Wasm plugins that can veto tool calls; print, JSON, and RPC modes; and bake update with --rollback. bake docs describes each.
  • Not in 0.4.0: goals and the task router, MCP OAuth, MCP resource subscriptions and prompts, and further slash commands come in later releases.

Bake 0.3.8

Choose a tag to compare

@github-actions github-actions released this 05 Oct 08:10
dcb26d7
  • A bash or pwsh call's command is coloured as shell or PowerShell, on the call's head and on any lines under it, so a multi-line command such as python3 -c "…" reads apart from the output that follows. A failed call in a step gives up the colour so its head reads wholly red.
  • In a step of several calls, a call that finished cleanly under the step's own icon no longer repeats that icon past its branch; running, failed, and other kinds of call keep theirs. The cell stays blank, so names do not shift as calls finish.
  • Fullscreen's hint row sits at the right edge while following output, apart from the transcript, with each key at full brightness and what it does dimmed.
  • The agent no longer holds its turn open waiting on a background job. A job_output read that finds the job still running tells the model to end its turn when nothing else needs doing, because the job's completion notice starts the next one, and a single wait lasts at most 60 seconds instead of 10 minutes (maxWaitTimeoutMs). The terminal goes idle with the job in its Background row instead of spinning for as long as the job runs. The guidance is left out when no completion would reopen the turn: under completionDelivery: quiet, or once the owner's consecutive wakes are spent.
  • dsh headless waits for the background jobs its agent still owns, and for the turns their completions open, before it reports and exits, so a turn that ends while its job runs no longer loses that job. The wait lasts at most 10 minutes (jobWaitMs, 0 to not wait), so a job that never ends, such as a dev server, does not hang the run. Past the limit the run writes a dsh: warning: line, reports, and stops the jobs.
  • Fullscreen selects and copies text with the mouse. Drag across the transcript to select it, double-click a word (a path or hyphenated name whole), or triple-click a row; the selection is drawn in reverse video and copied on release, each row trimmed at its end, and the hint row says Copied or Copy failed. A drag held on the top or bottom row scrolls on, Escape clears the selection, and the selection stays on its text while output arrives. Bake copies with pbcopy, clip, wl-copy, xclip, or xsel, and through the terminal with OSC 52 over SSH, under Windows Terminal in WSL, or when no tool works. Shift-drag, or Option-drag on macOS, still selects with the terminal itself.

Bake 0.3.7

Choose a tag to compare

@github-actions github-actions released this 05 Oct 03:48
e61b4cf
  • Settings, credentials, and profile files are synced to disk when Bake saves them. On some filesystems, a crash or power loss right after a save could leave settings.yaml or .credentials.yaml empty, which Bake then read as no settings or no saved logins, and the next save made the loss permanent. A save now reaches the disk before it replaces the old file, so a crash leaves either the old or the new file whole.
  • bake --help, a mistyped option such as bake tui --bogus, and Ctrl+C or SIGTERM in the first moments of a launch end in about 0.4 s instead of about 5.3 s. Shutdown waited for a configuration reload that could start only once the terminal was up, and the terminal runner waited for its own teardown, so each of these exits lasted until the launcher's 5-second forced exit. Startup also no longer reapplies the cordis.patch.yml files it has just loaded.
  • An unhandled promise rejection after startup no longer ends the session with status 1. Bake appends the error's name, message, and stack to an owner-only rejections.<stamp>.<pid>.jsonl file under <Bake home>/diagnostics/ and logs it. The terminal shows Internal error: <error> · the session continues · details in <file> on its notice line, and dsh headless writes one dsh: warning: line to stderr. Each distinct error is shown once, and at most five a minute. A rejection during shutdown is recorded the same way and leaves the exit status alone. During startup an unhandled rejection still fails the launch, and an uncaught exception is still fatal at any time.
  • bake update checks that a downloaded release launches before switching to it. Instead of only asking the new command for its version, it runs the release's own --self-check, which loads the shipped tui and headless profiles, the agent presets' plugins, and the terminal's runner modules as a launch does, in a private temporary home it removes afterwards, with no TTY, network, or model key, within 60 seconds. A release that would not start, as Bake 0.3.5 on Windows did, is refused, and the message after the current install is unchanged: now names what failed to load. release:pack runs the same check on every archive before it ships.
  • bake update --rollback returns the install to the newest release still installed that is older than the current one: right after an update, the release it replaced. It takes the update's lock, runs the same launch check on that release, says which versions it moved between, and leaves current where it was on any failure; with no older release installed it says there is nothing to roll back to and exits 1.
  • The input caret is a reverse-video cell over the character it stands before, instead of a ▌ inserted into the text, so moving it with ←/→ no longer shifts every character after it by a column. It keeps its reverse video under NO_COLOR, as do selected rows, since reverse video is not colour. The sign-in, question, and picker fields draw it the same way.
  • The input edits by word and line, as readline and pi do: Ctrl+←/→, Alt+←/→, and Alt+B/F move a word, stopping at the dots and slashes of a path; Ctrl+W and Alt+Backspace delete the word before the caret and Alt+D the word after it; Ctrl+U and Ctrl+K delete to the line's start and end; Ctrl+Y pastes back what they deleted and Alt+Y then swaps in an earlier deletion; Ctrl+- (or Ctrl+_ or Ctrl+/) undoes, a whole word at a time. Ctrl+B/F move a character and Ctrl+D deletes forward. A masked sign-in field moves and deletes its whole line at once, so word steps reveal nothing about a secret, and an image placeholder deleted this way unstages its image as Backspace does.
  • Home and End in a wrapped draft go to the start or end of the row the caret is on, and pressed again to the start or end of the line; Ctrl+A and Ctrl+E still go to the line's directly. In fullscreen, clicking the draft puts the caret there.
  • Fullscreen (--screen fullscreen) jumps between turns: Ctrl+↑/↓, or Ctrl+Shift+↑/↓ where the system takes Ctrl+↑, brings the previous or next prompt you sent to the top of the transcript. Past the first prompt it reaches the beginning, and past the last it follows output again. The hint row above the input names the keys.
  • Fullscreen PgUp/PgDn move a page less four rows of overlap instead of half a page. A mouse-wheel notch on its own scrolls one row instead of three, a fast spin up to six rows a notch, and Alt five times as far. A local macOS terminal, which accelerates the wheel itself, scrolls one row a report.
  • Fullscreen turns the terminal's autowrap off while it holds the screen, so a row the terminal draws wider than Bake measured, such as one with a character whose width they disagree on, is clipped at the right edge instead of pushing every row below it down and scrolling the screen. Leaving fullscreen, or handing the terminal to an external editor, turns autowrap back on.

Bake 0.3.6

Choose a tag to compare

@github-actions github-actions released this 04 Oct 15:43
a4cdff2
  • Bake 0.3.5 on Windows starts again. The terminal imported the compaction settings package, which the Windows release did not install for it, so bake exited at once with status 1 and printed nothing; Linux and macOS installs found the package by chance. The release now checks that every package the terminal loads is declared and resolves in the platform's installed layout before it ships.
  • A terminal that cannot start says why instead of exiting silently: a runner module that fails to load prints dsh: could not load the terminal: <reason>, and bake with piped input prints that it needs an interactive terminal.