Pêşdebirên zimanê Rust hişyarî dane ku piştgirî ji bo dakêşandinên ne-kanonîkî yên ku navên pakêtê yên normalkirî yên bi binî û xêzên ku di depoya crate.io de hatine veguheztin bikar tînin dê di 20-ê Mijdara 2023-an de were neçalak kirin. Sedemên çêkirina guherînê tê gotin ku çêtirkirina pêbaweriyê û xweşbînkirina performansê ye.
Heya nuha, ne girîng bû ku dema barkirinê di nav de xêzek an defek hate diyarkirin - crate.io bixweber girêdanên weha anî forma hewce. Mînakî, ji bo pakêtek "package_name" ku di depoyê de ye, di dema barkirinê de gengaz bû ku "package_name" were destnîşankirin û berevajî. Di depoyê de li hember şandina navên mîna hev jî parastin heye, ku destûr nade şandina pakêtek bi navê "pakêt-nav" heke jixwe pakêtek "pakêt-nav" hebe.
Hebûna pêvajoyek normalîzekirina navî hewce dike ku gazî rêvekerek taybetî bike, ku rê nade karanîna rasterast a torên radestkirina naverokê da ku daxwazên dakêşana pakêtan derxîne. Wekî din, hejmartina vebijarkan li ser pişt û databasan barek zêde diafirîne. Analîzkirina têketinan destnîşan kir ku navên ne-kanonîkî tenê di daxwaznameyên bi kargo-binstall/1.1.2, Faraday v0.17.6, Go-http-client/2.0, GNU Guile û python-daxwazên/2.31.0 de têne bikar anîn. Nivîskarê kargo-binstall, ku ji bo sazkirina hunerên binary ji bo pakêtan tê bikar anîn, berê guheztinan çêkiriye da ku paşerojê neçalakkirina piştgirîya navên ne-kanonîkî bigire ber çavan.
Source: opennet.ru
