fix(deps): update module github.com/charmbracelet/bubbletea to v1 #35

Open
abs3nt wants to merge 1 commits from renovate/github.com-charmbracelet-bubbletea-1.x into master
Owner

This PR contains the following updates:

Package Type Update Change
github.com/charmbracelet/bubbletea require major v0.27.1 -> v1.1.1

Release Notes

charmbracelet/bubbletea (github.com/charmbracelet/bubbletea)

v1.1.1

Compare Source

Don't panic!

Panicking is a part of life…and a part of workin’ in Go. This release addresses two edge cases where a panic() could tank Bubble Tea and break your terminal:

Panics outside of Bubble Tea

If a panic occurs outside of Bubble Tea you can use Program.Kill to restore the terminal state before exiting:

func main() {
	p := tea.NewProgram(model{})

	go func() {
		time.Sleep(3 * time.Second)
		defer p.Kill()
		panic("Urgh")
	}()

	if _, err := p.Run(); err != nil {
		log.Fatal(err)
	}
}

Panics in Cmds

If a panic occurs in a Cmd Bubble Tea will now automatically restore the terminal to its natural state before exiting.

type model struct{}

// This command will totally panic.
func pancikyCmd() tea.Msg {
	panic("Oh no! Jk.")
}

func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
	switch msg := msg.(type) {
	case tea.KeyMsg:
		switch msg.String() {
		case "enter":
			// Panic time! But everything will be OK.
			return m, pancikyCmd
		}
	}
	return m, nil
}

Happy panicking (if that makes any sense).

Changelog

Fixed!

The Charm logo

Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.

v1.1.0

Compare Source

Let’s Focus

Lose focus much? This release contains support for focus-blur window events.

Usage

All you need to do is to add the program option to your application:

p := tea.NewProgram(model{}, tea.WithReportFocus())
if _, err := p.Run(); err != nil {
	fmt.Fprintln(os.Stderr, "Oof:", err)
	os.Exit(1)
}

Then later in your Update function, you can listen for focus-blur messages:

func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
	switch msg := msg.(type) {
	case tea.FocusMsg:
		// Focused!
	case tea.BlurMsg:
		// Not focused :(
        }
        return m, nil
}

For details, see WithReportFocus.

Tmux

If you're using tmux, make sure you enable the focus-events option in your config.

set-option -g focus-events on

Happy focusing (whatever that means)!


The Charm logo

Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.

v1.0.1

Compare Source

This release that fixes the way carriage returns are handled with using the WithoutRenderer ProgramOption and improves the way it works overall by not altering the terminal the way we normally do when starting a Program. For details see #​1120.


The Charm logo

Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.

v1.0.0

Compare Source

At last: v1.0.0

This is an honorary release denoting that Bubble Tea is now stable. Thank you, open source community, for all your love, support, and great taste in beverage over the past four years.

Stay tuned for v2: we have some great things coming.


The Charm logo

Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.


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 Renovate Bot.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github.com/charmbracelet/bubbletea](https://github.com/charmbracelet/bubbletea) | require | major | `v0.27.1` -> `v1.1.1` | --- ### Release Notes <details> <summary>charmbracelet/bubbletea (github.com/charmbracelet/bubbletea)</summary> ### [`v1.1.1`](https://github.com/charmbracelet/bubbletea/releases/tag/v1.1.1) [Compare Source](https://github.com/charmbracelet/bubbletea/compare/v1.1.0...v1.1.1) ### Don't panic! Panicking is a part of life…and a part of workin’ in Go. This release addresses two edge cases where a `panic()` could tank Bubble Tea and break your terminal: #### Panics outside of Bubble Tea If a panic occurs outside of Bubble Tea you can use [`Program.Kill`](https://pkg.go.dev/github.com/charmbracelet/bubbletea#Program.Kill) to restore the terminal state before exiting: ```go func main() { p := tea.NewProgram(model{}) go func() { time.Sleep(3 * time.Second) defer p.Kill() panic("Urgh") }() if _, err := p.Run(); err != nil { log.Fatal(err) } } ``` #### Panics in Cmds If a panic occurs in a `Cmd` Bubble Tea will now automatically restore the terminal to its natural state before exiting. ```go type model struct{} // This command will totally panic. func pancikyCmd() tea.Msg { panic("Oh no! Jk.") } func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) { switch msg := msg.(type) { case tea.KeyMsg: switch msg.String() { case "enter": // Panic time! But everything will be OK. return m, pancikyCmd } } return m, nil } ``` Happy panicking (if that makes any sense). #### Changelog ##### Fixed! - [`0589921`](https://github.com/charmbracelet/bubbletea/commit/0589921d2e5a1ee33e0dba1d54836946e78fe059): fix: recover from panics within cmds ([@&#8203;aymanbagabas](https://github.com/aymanbagabas)) - [`6e71f52`](https://github.com/charmbracelet/bubbletea/commit/6e71f52a8add0fdeba202d4e1bdd289182b156ac): fix: restore the terminal on kill ([@&#8203;aymanbagabas](https://github.com/aymanbagabas)) *** <a href="https://charm.sh/"><img alt="The Charm logo" src="https://stuff.charm.sh/charm-badge.jpg" width="400"></a> Thoughts? Questions? We love hearing from you. Feel free to reach out on [Twitter](https://twitter.com/charmcli), [The Fediverse](https://mastodon.technology/@&#8203;charm), or on [Discord](https://charm.sh/chat). ### [`v1.1.0`](https://github.com/charmbracelet/bubbletea/releases/tag/v1.1.0) [Compare Source](https://github.com/charmbracelet/bubbletea/compare/v1.0.1...v1.1.0) ### Let’s Focus Lose focus much? This release contains support for focus-blur window events. #### Usage All you need to do is to add the program option to your application: ```go p := tea.NewProgram(model{}, tea.WithReportFocus()) if _, err := p.Run(); err != nil { fmt.Fprintln(os.Stderr, "Oof:", err) os.Exit(1) } ``` Then later in your `Update` function, you can listen for focus-blur messages: ```go func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) { switch msg := msg.(type) { case tea.FocusMsg: // Focused! case tea.BlurMsg: // Not focused :( } return m, nil } ``` For details, see [WithReportFocus](https://pkg.go.dev/github.com/charmbracelet/bubbletea#WithReportFocus). #### Tmux If you're using `tmux`, make sure you enable the `focus-events` option in your config. ```config set-option -g focus-events on ``` Happy focusing (whatever that means)! *** <a href="https://charm.sh/"><img alt="The Charm logo" src="https://stuff.charm.sh/charm-badge.jpg" width="400"></a> Thoughts? Questions? We love hearing from you. Feel free to reach out on [Twitter](https://twitter.com/charmcli), [The Fediverse](https://mastodon.technology/@&#8203;charm), or on [Discord](https://charm.sh/chat). ### [`v1.0.1`](https://github.com/charmbracelet/bubbletea/releases/tag/v1.0.1) [Compare Source](https://github.com/charmbracelet/bubbletea/compare/v1.0.0...v1.0.1) This release that fixes the way carriage returns are handled with using the [WithoutRenderer](https://pkg.go.dev/github.com/charmbracelet/bubbletea#WithoutRenderer) `ProgramOption` and improves the way it works overall by not altering the terminal the way we normally do when starting a `Program`. For details see [#&#8203;1120](https://github.com/charmbracelet/bubbletea/issues/1120). - [`c69bd97`](https://github.com/charmbracelet/bubbletea/commit/c69bd971e65f6774aaa0347df035c8f1f3f36275): fix: we don't initialize the terminal when using a nilRenderer ([#&#8203;1120](https://github.com/charmbracelet/bubbletea/issues/1120)) ([@&#8203;aymanbagabas](https://github.com/aymanbagabas)) *** <a href="https://charm.sh/"><img alt="The Charm logo" src="https://stuff.charm.sh/charm-badge.jpg" width="400"></a> Thoughts? Questions? We love hearing from you. Feel free to reach out on [Twitter](https://twitter.com/charmcli), [The Fediverse](https://mastodon.technology/@&#8203;charm), or on [Discord](https://charm.sh/chat). ### [`v1.0.0`](https://github.com/charmbracelet/bubbletea/releases/tag/v1.0.0) [Compare Source](https://github.com/charmbracelet/bubbletea/compare/v0.27.1...v1.0.0) ### At last: v1.0.0 <p><img src="https://github.com/user-attachments/assets/880437d6-da9b-4881-9033-5ce22dc93c82" width="540"</p> This is an honorary release denoting that Bubble Tea is now stable. Thank you, open source community, for all your love, support, and great taste in beverage over the past four years. Stay tuned for v2: we have some great things coming. *** <a href="https://charm.sh/"><img alt="The Charm logo" src="https://stuff.charm.sh/charm-badge.jpg" width="400"></a> Thoughts? Questions? We love hearing from you. Feel free to reach out on [Twitter](https://twitter.com/charmcli), [The Fediverse](https://mastodon.technology/@&#8203;charm), or on [Discord](https://charm.sh/chat). </details> --- ### 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. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC41Ni4zIiwidXBkYXRlZEluVmVyIjoiMzguNzQuMSIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6W119-->
abs3nt added 1 commit 2024-08-28 15:48:49 +00:00
fix(deps): update module github.com/charmbracelet/bubbletea to v1
All checks were successful
builder / build (push) Successful in 46s
7137fce538
abs3nt force-pushed renovate/github.com-charmbracelet-bubbletea-1.x from 7137fce538 to bca4a1d6f4 2024-08-29 17:48:36 +00:00 Compare
abs3nt force-pushed renovate/github.com-charmbracelet-bubbletea-1.x from bca4a1d6f4 to b14c5f890b 2024-08-30 13:48:51 +00:00 Compare
abs3nt force-pushed renovate/github.com-charmbracelet-bubbletea-1.x from b14c5f890b to cb6f7caa5d 2024-09-11 17:49:22 +00:00 Compare
All checks were successful
builder / build (push) Successful in 51s
This pull request can be merged automatically.
You are not authorized to merge this pull request.

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/github.com-charmbracelet-bubbletea-1.x:renovate/github.com-charmbracelet-bubbletea-1.x
git checkout renovate/github.com-charmbracelet-bubbletea-1.x
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: abs3nt/gspot#35
No description provided.