Die Entwickler der Programmiersprache Rust warnten am 20. November 2023 vor der Einstellung der UnterstĂŒtzung fĂŒr nicht-kanonische Downloads im Repository crate.io, bei denen normalisierte Paketnamen mit ersetzten Unterstrichen und Bindestrichen verwendet werden. Der Grund fĂŒr diese Ănderung ist der Wunsch, die ZuverlĂ€ssigkeit zu erhöhen und die Leistung zu optimieren.
Bislang war es unwichtig, ob ein Unterstrich oder ein Bindestrich im Namen beim Download angegeben wurde â crate.io hat solche Links automatisch in das erforderliche Format umgewandelt. Beispielsweise konnte fĂŒr ein im Repository veröffentlichtes Paket mit dem Namen âname_packageâ beim Download âname-packageâ angegeben werden und umgekehrt. Im Repository gibt es auch einen Schutz gegen die Veröffentlichung Ă€hnlicher Namen, der es nicht erlaubt, ein Paket mit dem Namen âname-packageâ zu veröffentlichen, wenn bereits ein Paket mit dem Namen âname_packageâ existiert.
Das Vorhandensein eines Namen-Normalisierungsverfahrens erfordert den Aufruf eines speziellen Handlers, wodurch eine direkte Nutzung von Content Delivery Networks zur Bearbeitung von Download-Anfragen fĂŒr Pakete nicht möglich ist. DarĂŒber hinaus fĂŒhrt die Durchsicht der Optionen zu einer zusĂ€tzlichen Belastung der Backends und Datenbanken. Die Analyse von Protokollen hat gezeigt, dass nicht-kanonische Namen nur in Anfragen mit dem User Agent cargo-binstall/1.1.2, Faraday v0.17.6, Go-http-client/2.0, GNU Guile und python-requests/2.31.0 verwendet werden. Der Autor des Tools cargo-binstall, das zur Installation binĂ€rer Artefakte fĂŒr Pakete verwendet wird, hat bereits Ănderungen vorgenommen, die die bevorstehende Einstellung der UnterstĂŒtzung fĂŒr nicht-kanonische Namen berĂŒcksichtigen.
Quelle: opennet.ru
