Tracking issue for migrating from `hybrid-array` to const generic core arrays
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Refactoring
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- rust
- Ambito
- cryptography
Direzione di ricerca
Inizia leggendo le issue Rust #60551 e #76560, quindi esamina come i trait crate utilizzano i tipi ArraySize associati, hybrid-array e typenum. Il lavoro è completo quando le funzionalità fondamentali richieste sono disponibili e il repository può abbandonare gradualmente hybrid-array a favore di const generics e core arrays.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Note: continuation of #970
We recently replaced generic-array with hybrid-array, which hopefully improves overall ergonomics, but ideally we wouldn't need typenum at all and could express all of our constraints using const generics.
This issue tracks the features in core that would need to be stabilized before we can phase out hybrid-array in favor of const generics and core arrays:
The first issue (60551) is arguably the biggest blocker. All of the trait crates defined in this repo use associated ArraySize types which would be best replaced by associated constants. While it would be possible to switch from associated constants to const generic parameters, this has all the drawbacks of using explicit generic parameters versus families of them expressed as associated types. It becomes quite unwieldy when there are several of them involved. Our use cases benefit from these constants being "carried along" with another generic parameter, so it would be best to wait until this feature is implemented.
The second issue (76560) is important because we do quite a bit of arithmetic with typenum.
- Lingua principale
- Rust
- Stelle
- 756
- Fork
- 256
- Merge medio
- 2h 53m
- PR unite (30g)
- 1
Preparare l'ambiente
Non abbiamo ancora controllato i file di configurazione di questo progetto. Parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di RustCrypto/traits
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 52/100
RustCrypto/traits#2487 · 2 commenti ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
RustCrypto/traits#2482 · 5 commenti ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 32/100
RustCrypto/traits#2478 · 5 commenti ·
-
cipher
Difficoltà 4/5 3-5 giorni Idoneità per principianti 38/100
RustCrypto/traits#2424 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
RustCrypto/traits#2401 ·
Tutte le issue di RustCrypto/traits
Issue simili
-
`sysknife history --help` says --since takes ISO-8601, and the parser refuses offsets and bare datesApertabug easy good first issue help wanted
Difficoltà 1/5 1-3 ore Idoneità per principianti 94/100
lacs-project/sysknife#519 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
-
area:breg bug criticality:p3 triage:needs-implementation
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
registrystack/registry-stack#1699 ·
I maintainer di solito rispondono entro 1 giorno
-
documentation
Difficoltà 1/5 1-3 ore Idoneità per principianti 84/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
lbjlaq/Antigravity-Manager#3539 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno