This release adds two new features as well as a few other small-ish improvements.
New: Headless Mode
WithoutRenderer is a new program option that, when set, will tell Bubble Tea not to manage rendering. With the renderer disabled print and log statements will, by default, go straight to standard output. This opens up a few possibilities:
Daemon Mode: It's now possible for your Bubble Tea program to also operate as a daemon in addition to a TUI. See the daemon-tui-combo example for an example implementation.
Non-TTY Mode: If output’s not a TTY your Bubble Tea program can simply print or log output to stdout. See the daemon-tui-combo example for an example implementation.
General Purpose Application Development: It's possible to use the Bubble Tea framework for general purpose application development. That is to say, your can take advantage of this implementation of The Elm Architecture to build other types of applications, like servers, GUIs and so on.
New: Toggle the Alt Screen
Previously, you had to choose whether your application would be inline or fullscreen prior to starting your Bubble Tea program. Now you can jump in and out of the altscreen with the new EnterAltScreen and ExitAltScreen commands.
Changelog
New
Added option WithoutRenderer for disabling the Bubble Tea renderer in non-TTY, daemon and general-purpose application development contexts (details)
New EnterAltScreen and ExitAltScreen commands for jumping into and out of the alternate screen buffer (read: full window mode)
Bubble Tea will not automatically exit the alternate screen buffer on quit
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps github.com/charmbracelet/bubbletea from 0.12.5 to 0.13.1.
Release notes
Sourced from github.com/charmbracelet/bubbletea's releases.
Commits
a72db29
Mutex protect buffer access in standard rendererac28669
Enable golint as linterf981b99
Fix ineffectual assignment in spinner exampleb6c7f93
Fix various typos in examplesd2c1d9b
Omit unhandled errorb664dee
Fix typo231fa2c
Make altscreen demo slightly fancier01878b5
Make tui-daemon-combo demo look a little more enticinga87e82a
Bump Bubble Tea and Termenv dependencies in examplesc310475
Add Gembro to list of things made with Bubble TeaDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)