La dualità del fixare #bug (o, in generale, far funzionare il #software?):
Perdi almeno 1 ora buona appresso ad un #glitch oscurissimo (spoiler: la codifica del testo centra sempre in tutti questi bug, in realtà estremamente stupidi), facendo svariati test e tentando varie opzioni prima sensate, e poi senza senso perché altrimenti non sai nemmeno come continuare. 🤥️
Nel frattempo si è fatto #tardi in culo, ti prepari per andare a #dormire e nel frattempo pensi, ma niente… a metà spegni ormai il PC, finisci di prepararti, e continui a #pensare, e solo a quel punto un’idea ovvia viene in testa. Troppo tardi ormai. 💀️
E poi ancora, perché le #incoerenze non sono mai abbastanza:
Giustamente nel letto ti irrequieti e non prendi #sonno, perché il cervello non prende pace senza vedere il #problema finalmente risolto dopo tutta la #pazzia passata, anche scommettendo che l’#idea appena venuta è giusta al 100%. 🥴
Però prima o poi il sonno lo prendi, e dopo ore arriva la #mattina dopo, in cui la sveglia suona e… pensi “zzzzzzz voglio stare nel lettino ancora, tanto la #rogna in mente l’ho risolta, chi me lo fa fare di ammazzarmi a prima mattina [prima mattina: le 9:30, ndr.]”. 🥹
Insomma, è una #condanna. Non se ne esce. Comunque si, il mio #errore era #stupido: stavo cercando di caricare #file nella galleria cloud di #WordPress tramite la #API REST, ma ricevevo sempre un rest_upload_sideload_error… controllo gli header, tutti giusti; cerco in giro, poca roba che non mi aiuta; provo #minuzie come mettere gli header lowercase, ancora niente; tento di settare a mano content-type parziali o estensioni file arbitrarie, e ovviamente non risolvo. 🤯️
Però, noto che un caricamento da curl, anziché dal mio #codice JS, va a buon fine. Allora, provo a caricare verso un server netcat in entrambi i modi, così da poter vedere al volo i dati della trasmissione #HTTP, e noto una differenza stronzetta: il corpo generato dal mio #server è molto più grosso del peso normale del file… quindi qualcosa lo sta corrompendo E qui, però, mi sono ribloccata. 🤔️
Solo poi, quando ormai avevo chiuso tutto come ho detto, ci ho pensato: ma io, nella parte del #programma che legge i #dati trasmessi dal client, vado a castare tutto ad una stringa; sarà questa la causa? …E, ricordandomi di altri #incidenti simili capitati in #NodeJS, capisco subito che è così. Detto in breve: la #codifica del testo centra sempre e rovina ogni cosa. Se esistesse solo l’ASCII, ecco che castare dati binari a stringhe non causerebbe alcun danno. E invece abbiamo deciso che i #computer devono supportare nella loro codifica migliaia di #caratteri discutibili, come tutti quelli emoji. E io, dopo aver apportato questo #fix, devo ora continuare a programmare. Non. Se. Ne. Esce. 😭️
Quando stavo componendo il post di prima, sembrava tutto ok, eccetto che cliccando sull’ #immagine allegata (perfettamente visibile) nella schermata di composizione, non riuscivo a vederla a schermo intero, e invece appariva un dialogo che diceva (tipo) che il file non era stato caricato correttamente… e cliccare “riprova” non risolveva nulla… 🤐
Però l’ho pubblicato l’ho stesso, perché nella #galleria cloud di #WordPress la #foto risultava. Eeee ho potuto però constatare un attimo dopo che nella pagina l’immagine non caricava, appunto. Il bridge RSS per Telegram ha mostrato questo #errore al posto suo, poi: 🥱
E infatti, è stato un mio #errore mesi fa nel configurare i #permessi per i #forum dedicati agli utenti, credo. Dovrei aver sistemato andando in ACP > Forums > Group forum permissions > Newly registered users > All forums > Forum permissions e settando il ruolo predefinito lì a Newly Registered User Access. 🤓️
Poi, ho controllato la lista utenti… c’erano pochi apparenti #spammer che si sono registrati addirittura mesi fa, abbastanza nelle ultime settimane, e una caterva negli ultimi giorni. In totale ~70, li ho fatti sparire tutti, sperando di non aver cancellato utenti reali nel frattempo (cosa che normalmente non penserei perché aiutoo nessuno si caga il mio forum, ma chissà se dopo il mio casino delle ultime settimane si è registrata gente che non ha mai neanche scritto… dovranno ricreare l’account, e magari io dovrei fare un post di avviso). 💀️
Poi, mi è venuta la #curiosità di vedere cosa avessero scritto gli spammer, ma a quanto pare purgando gli #utenti è sparito proprio tutto… fortunatamente, dare a #GoogleLens quella mezza schermata che ho inviato prima ci aiuta ad avere un’idea… #monnezza! 💩️