Utvecklarna av programmeringsspråket Rust har varnat för att stödet för icke-kanoniska nedladdningar i crate.io-repositoriet kommer att upphöra den 20 november 2023. Dessa nedladdningar använder normaliserade paketnamn med ersatta tecken för understrykningar och bindestreck. Ändringen görs för att öka tillförlitligheten och optimera prestanda.
Tidigare har det inte spelat någon roll om understrykning eller bindestreck har angetts i namnet vid nedladdning – crate.io har automatiskt justerat sådana länkar till det nödvändiga formatet. Till exempel, för ett paket registrerat i repositoriet som heter "namn_paket" har nedladdning kunnat anges som "namn-paket" och vice versa. Det finns också skydd mot att registrera liknande namn, vilket hindrar registrering av ett paket med namnet "namn-paket" om det redan finns ett paket med namnet "namn_paket".
Närvaron av en normaliseringsprocess för namn kräver anrop av en speciell handler, vilket hindrar direkt användning av innehållsnätverk för att hantera nedladdningsförfrågningar av paket. Dessutom skapar mängden alternativ en extra belastning på backend och databaser. Logganalys visade att icke-kanoniska namn endast används i förfrågningar med User Agent cargo-binstall/1.1.2, Faraday v0.17.6, Go-http-client/2.0, GNU Guile och python-requests/2.31.0. Författaren till verktyget cargo-binstall, som används för att installera binära artefakter till paket, har redan gjort ändringar som tar hänsyn till det kommande avstängningen av stöd för icke-kanoniska namn.
Källa: opennet.ru
