De ontwikkelaars van de programmeertaal Rust hebben gewaarschuwd dat op 20 november 2023 de ondersteuning voor niet-canonieke downloads in de crate.io-repository zal worden uitgeschakeld, waarbij genormaliseerde pakketnamen met gewijzigde underscore- en koppelteken-symbolen worden gebruikt. De reden voor deze wijziging is de wens om de betrouwbaarheid te verhogen en de prestaties te optimaliseren.
Tot nu toe maakte het niet uit of er een underscore of een koppelteken in de naam stond bij het uploaden ā crate.io bracht dergelijke links automatisch in de juiste vorm. Bijvoorbeeld, voor een in de repository geüploade pakket met de naam 'pakket_naam' kon bij het uploaden 'pakket-naam' worden opgegeven en vice versa. In de repository is ook een bescherming aanwezig tegen het plaatsen van soortgelijke namen, die voorkomt dat er een pakket met de naam 'pakket-naam' wordt geplaatst als er al een pakket 'pakket_naam' bestaat.
Het hebben van een normalisatieprocedure voor namen vereist het aanroepen van een speciale handler, waardoor het niet mogelijk is om netwerken voor contentlevering (CDN) direct te gebruiken om verzoeken voor het downloaden van pakketten af te handelen. Bovendien creƫert het doorlopen van de opties een extra belasting voor de backend en databases. Analyse van de logboeken toonde aan dat niet-canonieke namen alleen worden gebruikt in aanvragen met User Agent cargo-binstall/1.1.2, Faraday v0.17.6, Go-http-client/2.0, GNU Guile en python-requests/2.31.0. De auteur van de tool cargo-binstall, die wordt gebruikt voor het installeren van binaire artefacten aan pakketten, heeft al wijzigingen aangebracht die rekening houden met de aanstaande stopzetting van de ondersteuning voor niet-canonieke namen.
Bron: opennet.ru
