charmbracelet/bubbletea (github.com/charmbracelet/bubbletea)
### [`v0.26.2`](https://togithub.com/charmbracelet/bubbletea/releases/tag/v0.26.2)
[Compare Source](https://togithub.com/charmbracelet/bubbletea/compare/v0.26.1...v0.26.2)
This fixes a small regression that was introduced in v0.26.0 related to the first line on the first render not being displayed correctly. Thank you [@mistakenelf](https://togithub.com/mistakenelf) for pointing this out in [https://github.com/charmbracelet/bubbletea/issues/1000](https://togithub.com/charmbracelet/bubbletea/issues/1000)!
#### What's Changed
- fix: stop and drain timers by [@caarlos0](https://togithub.com/caarlos0) in [https://github.com/charmbracelet/bubbletea/pull/993](https://togithub.com/charmbracelet/bubbletea/pull/993)
- chore(lint): minor lint-related improvements by [@meowgorithm](https://togithub.com/meowgorithm) in [https://github.com/charmbracelet/bubbletea/pull/1007](https://togithub.com/charmbracelet/bubbletea/pull/1007)
- fix: renderer: reset the cursor on the first line by [@aymanbagabas](https://togithub.com/aymanbagabas) in [https://github.com/charmbracelet/bubbletea/pull/1008](https://togithub.com/charmbracelet/bubbletea/pull/1008)
- chore(deps): bump golang.org/x/sys from 0.19.0 to 0.20.0 by [@dependabot](https://togithub.com/dependabot) in [https://github.com/charmbracelet/bubbletea/pull/1003](https://togithub.com/charmbracelet/bubbletea/pull/1003)
- chore(deps): bump golangci/golangci-lint-action from 5 to 6 by [@dependabot](https://togithub.com/dependabot) in [https://github.com/charmbracelet/bubbletea/pull/1005](https://togithub.com/charmbracelet/bubbletea/pull/1005)
- chore(deps): bump golang.org/x/term from 0.19.0 to 0.20.0 by [@dependabot](https://togithub.com/dependabot) in [https://github.com/charmbracelet/bubbletea/pull/1002](https://togithub.com/charmbracelet/bubbletea/pull/1002)
**Full Changelog**: https://github.com/charmbracelet/bubbletea/compare/v0.26.1...v0.26.2
***
Thoughts? Questions? We love hearing from you. Feel free to reach out on [Twitter](https://twitter.com/charmcli), [The Fediverse](https://mastodon.social/@charmcli), or [Discord](https://charm.sh/chat).
### [`v0.26.1`](https://togithub.com/charmbracelet/bubbletea/releases/tag/v0.26.1)
[Compare Source](https://togithub.com/charmbracelet/bubbletea/compare/v0.26.0...v0.26.1)
This is a quick one to fix a Windows shortcoming in the last release acutely identified by our pal [@jon4hz](https://togithub.com/jon4hz). Thank you!
#### What's Changed
- fix: support more shift and ctrl modifiers on windows by [@jon4hz](https://togithub.com/jon4hz) in [https://github.com/charmbracelet/bubbletea/pull/995](https://togithub.com/charmbracelet/bubbletea/pull/995)
**Full Changelog**: https://github.com/charmbracelet/bubbletea/compare/v0.26.0...v0.26.1
***
Thoughts? Questions? We love hearing from you. Feel free to reach out on [Twitter](https://twitter.com/charmcli), [The Fediverse](https://mastodon.social/@charmcli), or [Discord](https://charm.sh/chat).
### [`v0.26.0`](https://togithub.com/charmbracelet/bubbletea/releases/tag/v0.26.0)
[Compare Source](https://togithub.com/charmbracelet/bubbletea/compare/v0.25.0...v0.26.0)
### Bracketed Paste, Windows Improvements, Mainframes, and more
What do tapioca balls, IBM mainframes, and the Microsoft Windows Console API have in common? Bubble Tea v0.26.0, that’s what. Let’s get to it.
#### ⚡️ Windows Input Improvements
A few years ago [@erikgeiser](https://togithub.com/erikgeiser), a penetration tester and ex-particle physicist, wrote this awesome library called [coninput](https://togithub.com/erikgeiser/coninput) to majorly improve Bubble Tea input on Windows. [@aymanbagabas](https://togithub.com/aymanbagabas) has implemented the library in Bubble Tea and input on Windows is roughly 1000 times better now. In the short term, this means that for Windows users inputting non-Latin characters (like Greek, Cyrillic, Korean, Chinese and so on) stuff will “just work.”
The bigger news, however, is that this paves the way for Windows parity with our forthcoming support for super high fidelity input via [Kitty Keyboard](https://sw.kovidgoyal.net/kitty/keyboard-protocol/) and [Fixterms](https://www.leonerd.org.uk/hacks/fixterms/).
#### 🍳 Hot Windows Resize Events
Terminal emulators on Windows don’t support the `SIGWINCH` signal, which is sent when the terminal is resized. It’s been a huge bummer for a really long time. Thanks (again) to [@erikgeiser](https://togithub.com/erikgeiser) and [@aymanbagabas](https://togithub.com/aymanbagabas), we’re now able to reach deep into Windows’ underpinnings, detect window resizes, and send [`tea.WindowSizeMsg`](https://pkg.go.dev/github.com/charmbracelet/bubbletea@v0.26.0#WindowSizeMsg)s accordingly! This is a glorious moment for Bubble Tea on Windows indeed.
#### 🫠 Bracketed Paste
While building a query editor for a CockroachDB client, [@knz](https://togithub.com/knz) noticed that Bubble Tea didn't support [Bracketed Paste](https://cirw.in/blog/bracketed-paste). Performance-wise, that sucks because it means pasting large bodies of text (like SQL queries) will normally be seen as a bunch of little successive keypresses. That’s where Bracketed Paste comes in. When enabled at the terminal-level Bracketed Paste lets you slam down a bunch of text with one big, fat input event.
Bubble Tea enables bracketed paste by default, however you can opt out of it with the [`WithoutBracketedPaste()`](https://pkg.go.dev/github.com/charmbracelet/bubbletea@v0.26.0#WithoutBracketedPaste) program option:
```go
p := tea.NewProgram(myCuteModel, tea.WithoutBracketedPaste())
```
You can also enable and disable it on demand with the [`EnableBracketedPaste()`](https://pkg.go.dev/github.com/charmbracelet/bubbletea@v0.26.0#EnableBracketedPaste) and [`DisableBracketedPaste()`](https://pkg.go.dev/github.com/charmbracelet/bubbletea@v0.26.0#DisableBracketedPaste) commands.
#### 🌿 Multiline `tea.Println`
In case you forgot, [`tea.Println`](https://pkg.go.dev/github.com/charmbracelet/bubbletea@v0.26.0#Println) (and it’s brother [`tea.Printf`](https://pkg.go.dev/github.com/charmbracelet/bubbletea@v0.26.0#Printf)) is a `Cmd` that lets you print unmanaged output above a Bubble Tea program, similar to what you see with package managers like `apt-get`. Thanks to [@Adjective-Object](https://togithub.com/Adjective-Object) (who also implemented `tea.Println` in the first place) now you can send multi-line output, too. For a `tea.Println` refresher see [the package manager example](https://togithub.com/charmbracelet/bubbletea/tree/master/examples/package-manager).
#### 📀 Hello, z/OS
Don’t you think it’s about time we all ran Bubble Tea apps on our mainframes? Thanks to [@dustin-ward](https://togithub.com/dustin-ward) that dream is now a reality, so long as you have a [z/OS](https://www.ibm.com/products/zos) mainframe. We're thrilled to announce that Bubble Tea is now fully supported on z/OS.
#### 🌹 Bug fixes
Bugfixes are the unsung heroes that sometimes get buried below the feature listings. This release has them and they’re good ones; see the changelog below for details.
#### Changelog
##### New!
- bracketed paste by [@knz](https://togithub.com/knz) in [https://github.com/charmbracelet/bubbletea/pull/397](https://togithub.com/charmbracelet/bubbletea/pull/397)
- use windows console input buffer + resize events on windows by [@aymanbagabas](https://togithub.com/aymanbagabas) in [https://github.com/charmbracelet/bubbletea/pull/878](https://togithub.com/charmbracelet/bubbletea/pull/878)
- multiline `tea.Println()` messages by [@Adjective-Object](https://togithub.com/Adjective-Object) in [https://github.com/charmbracelet/bubbletea/pull/490](https://togithub.com/charmbracelet/bubbletea/pull/490)
- z/OS support by [@dustin-ward](https://togithub.com/dustin-ward) in [https://github.com/charmbracelet/bubbletea/pull/913](https://togithub.com/charmbracelet/bubbletea/pull/913)
##### Changed
- use go 1.18; update bubbles by [@caarlos0](https://togithub.com/caarlos0) in [https://github.com/charmbracelet/bubbletea/pull/916](https://togithub.com/charmbracelet/bubbletea/pull/916)
##### Fixed
- fix deadlock condition on model init panic by [@eolso](https://togithub.com/eolso) in [https://github.com/charmbracelet/bubbletea/pull/926](https://togithub.com/charmbracelet/bubbletea/pull/926)
- reduce console/term dependencies by [@aymanbagabas](https://togithub.com/aymanbagabas) in [https://github.com/charmbracelet/bubbletea/pull/897](https://togithub.com/charmbracelet/bubbletea/pull/897)
- optimize batches with one item by [@systay](https://togithub.com/systay) in [https://github.com/charmbracelet/bubbletea/pull/875](https://togithub.com/charmbracelet/bubbletea/pull/875)
##### New Contributors
- [@kevgo](https://togithub.com/kevgo) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/893](https://togithub.com/charmbracelet/bubbletea/pull/893)
- [@canack](https://togithub.com/canack) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/890](https://togithub.com/charmbracelet/bubbletea/pull/890)
- [@Pheon-Dev](https://togithub.com/Pheon-Dev) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/621](https://togithub.com/charmbracelet/bubbletea/pull/621)
- [@rusinikita](https://togithub.com/rusinikita) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/835](https://togithub.com/charmbracelet/bubbletea/pull/835)
- [@hedhyw](https://togithub.com/hedhyw) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/864](https://togithub.com/charmbracelet/bubbletea/pull/864)
- [@mat2cc](https://togithub.com/mat2cc) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/871](https://togithub.com/charmbracelet/bubbletea/pull/871)
- [@stefanlogue](https://togithub.com/stefanlogue) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/855](https://togithub.com/charmbracelet/bubbletea/pull/855)
- [@BigJk](https://togithub.com/BigJk) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/885](https://togithub.com/charmbracelet/bubbletea/pull/885)
- [@sharunkumar](https://togithub.com/sharunkumar) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/839](https://togithub.com/charmbracelet/bubbletea/pull/839)
- [@timmattison](https://togithub.com/timmattison) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/908](https://togithub.com/charmbracelet/bubbletea/pull/908)
- [@dustin-ward](https://togithub.com/dustin-ward) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/913](https://togithub.com/charmbracelet/bubbletea/pull/913)
- [@jaymorelli96](https://togithub.com/jaymorelli96) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/802](https://togithub.com/charmbracelet/bubbletea/pull/802)
- [@siddhantac](https://togithub.com/siddhantac) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/906](https://togithub.com/charmbracelet/bubbletea/pull/906)
- [@taigrr](https://togithub.com/taigrr) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/853](https://togithub.com/charmbracelet/bubbletea/pull/853)
- [@systay](https://togithub.com/systay) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/875](https://togithub.com/charmbracelet/bubbletea/pull/875)
- [@gabe565](https://togithub.com/gabe565) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/728](https://togithub.com/charmbracelet/bubbletea/pull/728)
- [@zMoooooritz](https://togithub.com/zMoooooritz) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/902](https://togithub.com/charmbracelet/bubbletea/pull/902)
- [@j178](https://togithub.com/j178) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/709](https://togithub.com/charmbracelet/bubbletea/pull/709)
- [@arisnacg](https://togithub.com/arisnacg) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/948](https://togithub.com/charmbracelet/bubbletea/pull/948)
- [@braheezy](https://togithub.com/braheezy) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/950](https://togithub.com/charmbracelet/bubbletea/pull/950)
- [@dhth](https://togithub.com/dhth) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/949](https://togithub.com/charmbracelet/bubbletea/pull/949)
- [@tearingItUp786](https://togithub.com/tearingItUp786) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/944](https://togithub.com/charmbracelet/bubbletea/pull/944)
- [@aschey](https://togithub.com/aschey) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/597](https://togithub.com/charmbracelet/bubbletea/pull/597)
- [@petergloor](https://togithub.com/petergloor) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/955](https://togithub.com/charmbracelet/bubbletea/pull/955)
- [@kaifulee](https://togithub.com/kaifulee) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/957](https://togithub.com/charmbracelet/bubbletea/pull/957)
- [@danenania](https://togithub.com/danenania) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/971](https://togithub.com/charmbracelet/bubbletea/pull/971)
- [@cuibuwei](https://togithub.com/cuibuwei) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/977](https://togithub.com/charmbracelet/bubbletea/pull/977)
- [@agvxov](https://togithub.com/agvxov) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/972](https://togithub.com/charmbracelet/bubbletea/pull/972)
- [@eolso](https://togithub.com/eolso) made their first contribution in [https://github.com/charmbracelet/bubbletea/pull/926](https://togithub.com/charmbracelet/bubbletea/pull/926)
**Full Changelog**: https://github.com/charmbracelet/bubbletea/compare/v0.25.0...v0.25.1
***
Thoughts? Questions? We love hearing from you. Feel free to reach out on [Twitter](https://twitter.com/charmcli), [The Fediverse](https://mastodon.social/@charmcli), or [Discord](https://charm.sh/chat).
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
v0.25.0
->v0.26.2
Release Notes
charmbracelet/bubbletea (github.com/charmbracelet/bubbletea)
### [`v0.26.2`](https://togithub.com/charmbracelet/bubbletea/releases/tag/v0.26.2) [Compare Source](https://togithub.com/charmbracelet/bubbletea/compare/v0.26.1...v0.26.2) This fixes a small regression that was introduced in v0.26.0 related to the first line on the first render not being displayed correctly. Thank you [@mistakenelf](https://togithub.com/mistakenelf) for pointing this out in [https://github.com/charmbracelet/bubbletea/issues/1000](https://togithub.com/charmbracelet/bubbletea/issues/1000)! #### What's Changed - fix: stop and drain timers by [@caarlos0](https://togithub.com/caarlos0) in [https://github.com/charmbracelet/bubbletea/pull/993](https://togithub.com/charmbracelet/bubbletea/pull/993) - chore(lint): minor lint-related improvements by [@meowgorithm](https://togithub.com/meowgorithm) in [https://github.com/charmbracelet/bubbletea/pull/1007](https://togithub.com/charmbracelet/bubbletea/pull/1007) - fix: renderer: reset the cursor on the first line by [@aymanbagabas](https://togithub.com/aymanbagabas) in [https://github.com/charmbracelet/bubbletea/pull/1008](https://togithub.com/charmbracelet/bubbletea/pull/1008) - chore(deps): bump golang.org/x/sys from 0.19.0 to 0.20.0 by [@dependabot](https://togithub.com/dependabot) in [https://github.com/charmbracelet/bubbletea/pull/1003](https://togithub.com/charmbracelet/bubbletea/pull/1003) - chore(deps): bump golangci/golangci-lint-action from 5 to 6 by [@dependabot](https://togithub.com/dependabot) in [https://github.com/charmbracelet/bubbletea/pull/1005](https://togithub.com/charmbracelet/bubbletea/pull/1005) - chore(deps): bump golang.org/x/term from 0.19.0 to 0.20.0 by [@dependabot](https://togithub.com/dependabot) in [https://github.com/charmbracelet/bubbletea/pull/1002](https://togithub.com/charmbracelet/bubbletea/pull/1002) **Full Changelog**: https://github.com/charmbracelet/bubbletea/compare/v0.26.1...v0.26.2 ***Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.