Ghostty: Quando 37GB di RAM non bastano (e la colpa è dei semicoloni mancanti)

Ghostty: Quando 37GB di RAM non bastano (e la colpa è dei semicoloni mancanti)

E se ti dicessi che un terminale può ingoiare 37GB di RAM in dieci giorni? No, non è l’ultimo esperimento di Elon Musk per colonizzare Marte, ma un problema reale di Ghostty che ha tenuto svegli più notti di un bambino con i denti che spuntano.

La storia è questa: Ghostty, il terminale che prometteva di essere più veloce di un hacker con troppo caffè in corpo, aveva un buco nero nella gestione della memoria. Un bug vecchio come le prime righe di codice di Ghostty 1.0, ma che si è scatenato solo con l’arrivo di Claude Code, un po’ come quando scopri che la tua vecchia bicicletta va a pezzi solo perché hai messo le ruote da mountain bike.

Il problema? Una questione di pagine standard e non-standard, di memory pool e di scrollback pruning. Insomma, roba che fa impazzire anche i più esperti di Zig e che ha portato a un leak che avrebbe fatto arrossire un principiante. Il tutto perché Ghostty pensava che una pagina non-standard fosse standard e, beh, ha deciso di non liberare la memoria. Classico.

La soluzione? Semplice: non riutilizzare mai le pagine non-standard. Come quando decidi che la tua vecchia scheda video non è più abbastanza potente per giocare e la butti via invece di provare a overclockarla fino a farla esplodere.

Ma cosa significa per noi smanettoni? Prima di tutto, che anche i terminali più fighi hanno i loro problemi e che la gestione della memoria è una bestia difficile da domare. Secondo, che se vedete Ghostty mangiare RAM come se non ci fosse un domani, forse è il caso di aggiornare. Terzo, che i semicoloni mancanti sono ancora il vero male del mondo.

E poi, ammettiamolo, è sempre bello quando un bug viene risolto con una soluzione semplice e pulita. Un po’ come quando trovi la causa di un problema che ti ha fatto perdere ore di sonno e ti rendi conto che bastava una riga di codice in più.

Quindi, la prossima volta che il vostro terminale inizia a comportarsi come un adolescente in crisi d’identità, ricordatevi di Ghostty e del suo memory leak. E magari, per sicurezza, controllate i semicoloni.

Source: Finding and fixing Ghostty's largest memory leak

Lascia un commento