Commit 85569b1
committed
Serialize WSL toggle requests and gate node-pty rebuild for packaged installs
- Queue concurrent wsl-set-config IPC calls behind a single in-flight
promise (wslConfigUpdateInFlight). Two rapid toggles previously raced
through stopBackend / startBackend in interleaved order, leaving the
backend pinned to whichever spawn won the race and the on-disk config
ahead of reality.
- Always roll back the persisted wsl-config.json when the swap fails,
not just when startBackend resolves to false. Wrap stopBackend /
startBackend / waitForBackendWindowReady in a single try block so
synchronous spawn failures, missing distros, or HTTP-readiness timeouts
all unwind the on-disk config to the previous value before the IPC
call rejects. Without this, an unhandled spawn throw left the renderer
with a generic IPC error and the next launch silently honored a
never-confirmed config.
- Surface a Windows-side rollback message too, so disabling WSL with a
failing Windows backend produces the same toast/log behavior as the
WSL-enable failure case.
- Split ensureWslNodePty's behavior with an allowBuild flag: dev builds
still rebuild on demand, packaged builds only reuse a verified staged
binary. Add prepareWslNodePty.ts entry point so packagers can stage
the prebuild in CI via 'bun run prepare:wsl' instead of relying on a
cold-path build inside the desktop process.1 parent f8f2299 commit 85569b1
5 files changed
Lines changed: 281 additions & 63 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
218 | 218 | | |
219 | 219 | | |
220 | 220 | | |
| 221 | + | |
221 | 222 | | |
222 | 223 | | |
223 | 224 | | |
| |||
1427 | 1428 | | |
1428 | 1429 | | |
1429 | 1430 | | |
1430 | | - | |
1431 | | - | |
1432 | | - | |
1433 | | - | |
1434 | | - | |
1435 | | - | |
1436 | | - | |
| 1431 | + | |
| 1432 | + | |
| 1433 | + | |
| 1434 | + | |
| 1435 | + | |
| 1436 | + | |
| 1437 | + | |
1437 | 1438 | | |
1438 | 1439 | | |
1439 | 1440 | | |
| |||
1998 | 1999 | | |
1999 | 2000 | | |
2000 | 2001 | | |
2001 | | - | |
2002 | | - | |
2003 | | - | |
2004 | | - | |
2005 | | - | |
2006 | | - | |
2007 | | - | |
2008 | | - | |
2009 | | - | |
2010 | | - | |
2011 | | - | |
2012 | | - | |
2013 | | - | |
2014 | | - | |
| 2002 | + | |
| 2003 | + | |
| 2004 | + | |
| 2005 | + | |
| 2006 | + | |
| 2007 | + | |
| 2008 | + | |
| 2009 | + | |
| 2010 | + | |
| 2011 | + | |
| 2012 | + | |
| 2013 | + | |
| 2014 | + | |
| 2015 | + | |
| 2016 | + | |
| 2017 | + | |
| 2018 | + | |
| 2019 | + | |
| 2020 | + | |
| 2021 | + | |
| 2022 | + | |
| 2023 | + | |
| 2024 | + | |
| 2025 | + | |
| 2026 | + | |
| 2027 | + | |
| 2028 | + | |
| 2029 | + | |
| 2030 | + | |
| 2031 | + | |
| 2032 | + | |
| 2033 | + | |
| 2034 | + | |
| 2035 | + | |
| 2036 | + | |
| 2037 | + | |
2015 | 2038 | | |
2016 | 2039 | | |
2017 | 2040 | | |
| |||
2241 | 2264 | | |
2242 | 2265 | | |
2243 | 2266 | | |
| 2267 | + | |
| 2268 | + | |
2244 | 2269 | | |
2245 | 2270 | | |
2246 | 2271 | | |
2247 | 2272 | | |
2248 | | - | |
2249 | | - | |
2250 | | - | |
2251 | | - | |
| 2273 | + | |
| 2274 | + | |
| 2275 | + | |
2252 | 2276 | | |
2253 | | - | |
2254 | | - | |
| 2277 | + | |
2255 | 2278 | | |
2256 | 2279 | | |
2257 | 2280 | | |
2258 | 2281 | | |
2259 | 2282 | | |
2260 | 2283 | | |
2261 | 2284 | | |
2262 | | - | |
| 2285 | + | |
| 2286 | + | |
| 2287 | + | |
| 2288 | + | |
| 2289 | + | |
| 2290 | + | |
| 2291 | + | |
| 2292 | + | |
| 2293 | + | |
| 2294 | + | |
| 2295 | + | |
| 2296 | + | |
| 2297 | + | |
| 2298 | + | |
| 2299 | + | |
| 2300 | + | |
| 2301 | + | |
| 2302 | + | |
| 2303 | + | |
2263 | 2304 | | |
2264 | 2305 | | |
2265 | 2306 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| 9 | + | |
9 | 10 | | |
10 | 11 | | |
11 | 12 | | |
| |||
15 | 16 | | |
16 | 17 | | |
17 | 18 | | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
18 | 23 | | |
19 | 24 | | |
20 | 25 | | |
21 | 26 | | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
22 | 70 | | |
23 | 71 | | |
24 | 72 | | |
| |||
85 | 133 | | |
86 | 134 | | |
87 | 135 | | |
88 | | - | |
| 136 | + | |
89 | 137 | | |
90 | 138 | | |
91 | 139 | | |
92 | | - | |
93 | | - | |
94 | | - | |
95 | | - | |
96 | | - | |
97 | | - | |
98 | | - | |
99 | | - | |
100 | | - | |
101 | | - | |
102 | | - | |
103 | | - | |
104 | | - | |
105 | | - | |
| 140 | + | |
106 | 141 | | |
107 | 142 | | |
108 | 143 | | |
109 | 144 | | |
110 | | - | |
| 145 | + | |
111 | 146 | | |
112 | 147 | | |
113 | 148 | | |
114 | 149 | | |
115 | 150 | | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
116 | 220 | | |
117 | 221 | | |
118 | 222 | | |
| |||
169 | 273 | | |
170 | 274 | | |
171 | 275 | | |
172 | | - | |
173 | | - | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
174 | 279 | | |
175 | 280 | | |
176 | 281 | | |
| |||
0 commit comments