mirror of
https://github.com/jesseduffield/lazygit.git
synced 2026-08-28 10:15:32 -05:00
tcell's filterEvents goroutine sends events into eventQ with a plain
blocking send, while Fini (via finish/finalize) closes eventQ after
closing the quit channel. The goroutine can have already committed to
the ev = <-inQ select arm when quit is closed, so its send into eventQ
races with the close; the race detector flags this (send and close on
the same channel are unsynchronized), and if the close wins, the send
panics with "send on closed channel".
This was caught by the integration tests under the race detector,
where every test drives a real tScreen over a MockTerm and tears it
down via Fini, but it equally affects real-terminal shutdown.
Upstream fixed it in 243630d2 ("Fix screen Init/Fini races") by
tracking the filter goroutine in a WaitGroup that finalize waits for
before closing eventQ, and guarding the send with a select on quit.
That commit is not in a tagged release yet (latest is v3.4.0), so pin
the pseudo-version; the delta over v3.4.0 is just this fix, a Windows
key-release fix, a cell-rendering perf tweak, and dependency bumps.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
80 lines
3.0 KiB
AMPL
80 lines
3.0 KiB
AMPL
module github.com/jesseduffield/lazygit
|
|
|
|
go 1.25.0
|
|
|
|
// This is necessary to ignore test files when executing gofumpt.
|
|
ignore ./test
|
|
|
|
require (
|
|
dario.cat/mergo v1.0.2
|
|
github.com/adrg/xdg v0.5.3
|
|
github.com/atotto/clipboard v0.1.4
|
|
github.com/aybabtme/humanlog v0.4.1
|
|
github.com/cli/go-gh/v2 v2.13.0
|
|
github.com/cloudfoundry/jibber_jabber v0.0.0-20151120183258-bcc4c8345a21
|
|
github.com/creack/pty v1.1.24
|
|
github.com/gdamore/tcell/v3 v3.4.1-0.20260703153331-243630d2fb59
|
|
github.com/go-errors/errors v1.5.1
|
|
github.com/gookit/color v1.6.1
|
|
github.com/integrii/flaggy v1.8.0
|
|
github.com/jesseduffield/generics v0.0.0-20250517122708-b0b4a53a6f5c
|
|
github.com/jesseduffield/lazycore v0.0.0-20221012050358-03d2e40243c5
|
|
github.com/kardianos/osext v0.0.0-20190222173326-2bc1f35cddc0
|
|
github.com/karimkhaleel/jsonschema v0.0.0-20231001195015-d933f0d94ea3
|
|
github.com/kyokomi/emoji/v2 v2.2.13
|
|
github.com/lucasb-eyer/go-colorful v1.4.0
|
|
github.com/mgutz/str v1.2.0
|
|
github.com/mitchellh/go-ps v1.0.0
|
|
github.com/petermattis/goid v0.0.0-20250813065127-a731cc31b4fe
|
|
github.com/rivo/uniseg v0.4.7
|
|
github.com/sahilm/fuzzy v0.1.3
|
|
github.com/samber/lo v1.53.0
|
|
github.com/sanity-io/litter v1.5.8
|
|
github.com/sasha-s/go-deadlock v0.3.9
|
|
github.com/sirupsen/logrus v1.9.4
|
|
github.com/spf13/afero v1.15.0
|
|
github.com/spkg/bom v1.0.1
|
|
github.com/stefanhaller/git-todo-parser v0.0.7-0.20250905083220-c50528f08304
|
|
github.com/stretchr/testify v1.11.1
|
|
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e
|
|
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56
|
|
golang.org/x/sync v0.21.0
|
|
golang.org/x/sys v0.46.0
|
|
gopkg.in/ozeidan/fuzzy-patricia.v3 v3.0.0
|
|
gopkg.in/yaml.v3 v3.0.1
|
|
)
|
|
|
|
require (
|
|
github.com/bahlo/generic-list-go v0.2.0 // indirect
|
|
github.com/buger/jsonparser v1.1.2 // indirect
|
|
github.com/cli/safeexec v1.0.1 // indirect
|
|
github.com/clipperhouse/displaywidth v0.11.0 // indirect
|
|
github.com/clipperhouse/uax29/v2 v2.7.0 // indirect
|
|
github.com/davecgh/go-spew v1.1.1 // indirect
|
|
github.com/fatih/color v1.9.0 // indirect
|
|
github.com/gdamore/encoding v1.0.1 // indirect
|
|
github.com/go-logfmt/logfmt v0.5.0 // indirect
|
|
github.com/google/go-cmp v0.7.0 // indirect
|
|
github.com/hpcloud/tail v1.0.0 // indirect
|
|
github.com/invopop/jsonschema v0.10.0 // indirect
|
|
github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515 // indirect
|
|
github.com/mailru/easyjson v0.7.7 // indirect
|
|
github.com/mattn/go-colorable v0.1.13 // indirect
|
|
github.com/mattn/go-isatty v0.0.20 // indirect
|
|
github.com/onsi/ginkgo v1.10.3 // indirect
|
|
github.com/onsi/gomega v1.34.1 // indirect
|
|
github.com/pmezard/go-difflib v1.0.0 // indirect
|
|
github.com/wk8/go-ordered-map/v2 v2.1.8 // indirect
|
|
golang.org/x/mod v0.36.0 // indirect
|
|
golang.org/x/net v0.55.0 // indirect
|
|
golang.org/x/term v0.44.0 // indirect
|
|
golang.org/x/text v0.38.0 // indirect
|
|
golang.org/x/tools v0.45.0 // indirect
|
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
|
|
gopkg.in/fsnotify.v1 v1.4.7 // indirect
|
|
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 // indirect
|
|
mvdan.cc/gofumpt v0.9.2 // indirect
|
|
)
|
|
|
|
tool mvdan.cc/gofumpt
|