Diff
1diff --git a/go.mod b/go.mod
2index be57b5809e22f70b2999fca8c3688a8178bdd212..9fbd9d81d16b368c9651e59c7f1ffcf684cc1a7c 100644
3--- a/go.mod
4+++ b/go.mod
5@@ -3,10 +3,7 @@ module github.com/charmbracelet/soft-serve
6 go 1.23.0
7
8 require (
9- github.com/charmbracelet/bubbletea v1.3.4 // indirect
10 github.com/charmbracelet/glamour v0.9.1
11- github.com/charmbracelet/lipgloss v1.1.0
12- github.com/charmbracelet/wish v1.4.6
13 github.com/dustin/go-humanize v1.0.1
14 github.com/go-git/go-git/v5 v5.14.0
15 github.com/matryer/is v1.4.1
16@@ -17,6 +14,7 @@ require (
17
18 require (
19 github.com/alecthomas/chroma/v2 v2.15.0
20+ github.com/aymanbagabas/bubblezone/v2 v2.0.0-20250319214444-bb232f16d5e3
21 github.com/aymanbagabas/git-module v1.8.4-0.20231101154130-8d27204ac6d2
22 github.com/caarlos0/duration v0.0.0-20240108180406-5d492514f3c7
23 github.com/caarlos0/env/v11 v11.2.2
24@@ -40,7 +38,6 @@ require (
25 github.com/hashicorp/golang-lru/v2 v2.0.7
26 github.com/jmoiron/sqlx v1.4.0
27 github.com/lib/pq v1.10.9
28- github.com/lrstanley/bubblezone v0.0.0-20240723130623-7fd58a7b1f91
29 github.com/muesli/mango-cobra v1.2.0
30 github.com/muesli/roff v0.1.0
31 github.com/prometheus/client_golang v1.21.1
32@@ -57,11 +54,11 @@ require (
33 require (
34 github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be // indirect
35 github.com/atotto/clipboard v0.1.4 // indirect
36- github.com/aymanbagabas/bubblezone/v2 v2.0.0-20250319214444-bb232f16d5e3 // indirect
37 github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
38 github.com/aymerick/douceur v0.2.0 // indirect
39 github.com/beorn7/perks v1.0.1 // indirect
40 github.com/cespare/xxhash/v2 v2.3.0 // indirect
41+ github.com/charmbracelet/lipgloss v1.1.0 // indirect
42 github.com/charmbracelet/log/v2 v2.0.0-20250226163916-c379e29ff706 // indirect
43 github.com/charmbracelet/x/cellbuf v0.0.13 // indirect
44 github.com/charmbracelet/x/conpty v0.1.0 // indirect
45@@ -72,7 +69,6 @@ require (
46 github.com/charmbracelet/x/windows v0.2.0 // indirect
47 github.com/creack/pty v1.1.21 // indirect
48 github.com/dlclark/regexp2 v1.11.4 // indirect
49- github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect
50 github.com/felixge/httpsnoop v1.0.4 // indirect
51 github.com/git-lfs/pktline v0.0.0-20230103162542-ca444d533ef1 // indirect
52 github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
53@@ -82,11 +78,9 @@ require (
54 github.com/klauspost/compress v1.17.11 // indirect
55 github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
56 github.com/mattn/go-isatty v0.0.20 // indirect
57- github.com/mattn/go-localereader v0.0.1 // indirect
58 github.com/mattn/go-runewidth v0.0.16 // indirect
59 github.com/mcuadros/go-version v0.0.0-20190830083331-035f6764e8d2 // indirect
60 github.com/microcosm-cc/bluemonday v1.0.27 // indirect
61- github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 // indirect
62 github.com/muesli/cancelreader v0.2.2 // indirect
63 github.com/muesli/mango v0.2.0 // indirect
64 github.com/muesli/mango-pflag v0.1.0 // indirect
65diff --git a/go.sum b/go.sum
66index 919a7c3772c3b02ad1f01ad250635e548716fd49..6655db7d3b67c61670ef5680a56bab373d7884bb 100644
67--- a/go.sum
68+++ b/go.sum
69@@ -30,8 +30,6 @@ github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UF
70 github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
71 github.com/charmbracelet/bubbles/v2 v2.0.0-alpha.2.0.20250318132216-bd20b89a3e80 h1:RlfUmUVZpshOB7YP4sdnIymgXb6tXhHeQ2854afgKoU=
72 github.com/charmbracelet/bubbles/v2 v2.0.0-alpha.2.0.20250318132216-bd20b89a3e80/go.mod h1:OQsv1nZAu5v8GtZqNTqS4yY5mfR0VgImkpe2F0QYEfs=
73-github.com/charmbracelet/bubbletea v1.3.4 h1:kCg7B+jSCFPLYRA52SDZjr51kG/fMUEoPoZrkaDHyoI=
74-github.com/charmbracelet/bubbletea v1.3.4/go.mod h1:dtcUCyCGEX3g9tosuYiut3MXgY/Jsv9nKVdibKKRRXo=
75 github.com/charmbracelet/bubbletea/v2 v2.0.0-alpha.2.0.20250318133619-2ce107c85fed h1:Fsn31oc6fmX7YgfZ1Am+19HVorJ8Bf6wJTebVNLcQP0=
76 github.com/charmbracelet/bubbletea/v2 v2.0.0-alpha.2.0.20250318133619-2ce107c85fed/go.mod h1:ks5r0VCpADtYFlNU15krnFIbMn545yV3U6ee6UJrlto=
77 github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc h1:4pZI35227imm7yK2bGPcfpFEmuY1gc2YSTShr4iJBfs=
78@@ -52,8 +50,6 @@ github.com/charmbracelet/log/v2 v2.0.0-20250226163916-c379e29ff706 h1:WkwO6Ks3mS
79 github.com/charmbracelet/log/v2 v2.0.0-20250226163916-c379e29ff706/go.mod h1:mjJGp00cxcfvD5xdCa+bso251Jt4owrQvuimJtVmEmM=
80 github.com/charmbracelet/ssh v0.0.0-20250128164007-98fd5ae11894 h1:Ffon9TbltLGBsT6XE//YvNuu4OAaThXioqalhH11xEw=
81 github.com/charmbracelet/ssh v0.0.0-20250128164007-98fd5ae11894/go.mod h1:hg+I6gvlMl16nS9ZzQNgBIrrCasGwEw0QiLsDcP01Ko=
82-github.com/charmbracelet/wish v1.4.6 h1:27WRqMTUmyFoZASoaAaEe78Je7LTU4VqyoBxnl4d9XA=
83-github.com/charmbracelet/wish v1.4.6/go.mod h1:RRy2LFW3WQ3tlPmMMGgEeSMDVlFd5yqklGBVZWQSHmk=
84 github.com/charmbracelet/wish/v2 v2.0.0-20250319172925-3ae4bfe9c24e h1:WjrZFTFMjmm9dyc+KzXpY8z2viWdwShU6Qqqu3ixAss=
85 github.com/charmbracelet/wish/v2 v2.0.0-20250319172925-3ae4bfe9c24e/go.mod h1:olUvE0hW+a8zFU1vNvlEm6PJS+ElY1V5pcaV5pjzaGI=
86 github.com/charmbracelet/x/ansi v0.8.0 h1:9GTq3xq9caJW8ZrBTe0LIe2fvfLR/bYXKTx2llXn7xE=
87@@ -84,8 +80,6 @@ github.com/dlclark/regexp2 v1.11.4 h1:rPYF9/LECdNymJufQKmri9gV604RvvABwgOA8un7yA
88 github.com/dlclark/regexp2 v1.11.4/go.mod h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8=
89 github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY=
90 github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto=
91-github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f h1:Y/CXytFA4m6baUTXGLOoWe4PQhGxaX0KpnayAqC48p4=
92-github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f/go.mod h1:vw97MGsxSvLiUE2X8qFplwetxpGLQrlU1Q9AUEIzCaM=
93 github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg=
94 github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U=
95 github.com/git-lfs/pktline v0.0.0-20230103162542-ca444d533ef1 h1:mtDjlmloH7ytdblogrMz1/8Hqua1y8B4ID+bh3rvod0=
96@@ -141,16 +135,12 @@ github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0
97 github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw=
98 github.com/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw=
99 github.com/lib/pq v1.10.9/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o=
100-github.com/lrstanley/bubblezone v0.0.0-20240723130623-7fd58a7b1f91 h1:NIU7JKWRT1sQcopTxZJ6h5zNAaTy1WE1i6phrMKj8mw=
101-github.com/lrstanley/bubblezone v0.0.0-20240723130623-7fd58a7b1f91/go.mod h1:fMHACHXouhQO+NLAFvHEeKdVSzG7L/O1khqsvswCTmk=
102 github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY=
103 github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0=
104 github.com/matryer/is v1.4.1 h1:55ehd8zaGABKLXQUe2awZ99BD/PTc2ls+KV/dXphgEQ=
105 github.com/matryer/is v1.4.1/go.mod h1:8I/i5uYgLzgsgEloJE1U6xx5HkBQpAZvepWuujKwMRU=
106 github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=
107 github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
108-github.com/mattn/go-localereader v0.0.1 h1:ygSAOl7ZXTx4RdPYinUpg6W99U8jWvWi9Ye2JC/oIi4=
109-github.com/mattn/go-localereader v0.0.1/go.mod h1:8fBrzywKY7BI3czFoHkuzRoWE9C+EiG4R1k4Cjx5p88=
110 github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk=
111 github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc=
112 github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
113@@ -161,8 +151,6 @@ github.com/mcuadros/go-version v0.0.0-20190830083331-035f6764e8d2 h1:YocNLcTBdEd
114 github.com/mcuadros/go-version v0.0.0-20190830083331-035f6764e8d2/go.mod h1:76rfSfYPWj01Z85hUf/ituArm797mNKcvINh1OlsZKo=
115 github.com/microcosm-cc/bluemonday v1.0.27 h1:MpEUotklkwCSLeH+Qdx1VJgNqLlpY2KXwXFM08ygZfk=
116 github.com/microcosm-cc/bluemonday v1.0.27/go.mod h1:jFi9vgW+H7c3V0lb6nR74Ib/DIB5OBs92Dimizgw2cA=
117-github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 h1:ZK8zHtRHOkbHy6Mmr5D264iyp3TiX5OmNcI5cIARiQI=
118-github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6/go.mod h1:CJlz5H+gyd6CUWT45Oy4q24RdLyn7Md9Vj2/ldJBSIo=
119 github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA=
120 github.com/muesli/cancelreader v0.2.2/go.mod h1:3XuTXfFS2VjM+HTLZY9Ak0l6eUKfijIfMUZ4EgX0QYo=
121 github.com/muesli/mango v0.2.0 h1:iNNc0c5VLQ6fsMgAqGQofByNUBH2Q2nEbD6TaI+5yyQ=
122@@ -262,7 +250,6 @@ golang.org/x/sync v0.12.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
123 golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
124 golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
125 golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
126-golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
127 golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
128 golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
129 golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
130diff --git a/pkg/ssh/cmd/token.go b/pkg/ssh/cmd/token.go
131index 6fb8295379189c7e42cf26907c26e08862f0da7d..6a11ebfcedbc9a5a3f2aa07ffb4cfb5f997002ad 100644
132--- a/pkg/ssh/cmd/token.go
133+++ b/pkg/ssh/cmd/token.go
134@@ -6,7 +6,7 @@ import (
135 "time"
136
137 "github.com/caarlos0/duration"
138- "github.com/charmbracelet/lipgloss/table"
139+ "github.com/charmbracelet/lipgloss/v2/table"
140 "github.com/charmbracelet/soft-serve/pkg/backend"
141 "github.com/charmbracelet/soft-serve/pkg/proto"
142 "github.com/dustin/go-humanize"
143diff --git a/pkg/ssh/cmd/webhooks.go b/pkg/ssh/cmd/webhooks.go
144index e7409ebbaeafd43b2ad37c48695d2ab1729bccf7..ca6e8978929c1ca283d3b5aff470ffed34358132 100644
145--- a/pkg/ssh/cmd/webhooks.go
146+++ b/pkg/ssh/cmd/webhooks.go
147@@ -5,7 +5,7 @@ import (
148 "strconv"
149 "strings"
150
151- "github.com/charmbracelet/lipgloss/table"
152+ "github.com/charmbracelet/lipgloss/v2/table"
153 "github.com/charmbracelet/soft-serve/pkg/backend"
154 "github.com/charmbracelet/soft-serve/pkg/webhook"
155 "github.com/dustin/go-humanize"
156diff --git a/pkg/ssh/session_test.go b/pkg/ssh/session_test.go
157index 792759c167361c4bd9c10783dda279983e6bc890..d8d8bab850790ff76602bc8abbb257dac423b8b7 100644
158--- a/pkg/ssh/session_test.go
159+++ b/pkg/ssh/session_test.go
160@@ -17,8 +17,8 @@ import (
161 "github.com/charmbracelet/soft-serve/pkg/store/database"
162 "github.com/charmbracelet/soft-serve/pkg/test"
163 "github.com/charmbracelet/ssh"
164- bm "github.com/charmbracelet/wish/bubbletea"
165- "github.com/charmbracelet/wish/testsession"
166+ bm "github.com/charmbracelet/wish/v2/bubbletea"
167+ "github.com/charmbracelet/wish/v2/testsession"
168 "github.com/matryer/is"
169 "github.com/muesli/termenv"
170 gossh "golang.org/x/crypto/ssh"