Bug in Koha mette in luce problemi con UTF-8 e USMARC
Durante la risoluzione di un insolito bug in Koha, è emersa la necessità di troncare una stringa a una lunghezza massima in byte e non in caratteri. Questo perché il formato USMARC in uso, risalente al gennaio 2000, è ottimizzato per ASCII ma problematico con Unicode. La differenza tra byte e caratteri è fondamentale: UTF-8 utilizza una lunghezza variabile, mentre formati più vecchi come ASCII impiegavano una lunghezza fissa di 8 bit per byte. Ad esempio, una stringa con caratteri speciali o emoji può richiedere più byte. “Hello🚲” occupa 9 byte nonostante abbia 6 caratteri. La gestione corretta dei byte è cruciale per evitare errori di memorizzazione.