Reimplement #[bitcode(with_serde)]
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
Direzione di ricerca
La issue non indica file, test o punti di ingresso. Inizia confrontando l’implementazione attuale di 0.6 con la funzionalità precedente di 0.5, quindi determina come #[bitcode(with_serde)] dovrebbe supportare i campi serde::Serialize gestendo al contempo le limitazioni delle collection indicate. Il lavoro è completato quando la funzionalità è stata reimplementata per i tipi di terze parti richiesti e il suo comportamento è stato verificato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
There have been many requests for supporting 3rd party crates such as: time, rust_decimal, uuid, and chrono. Rather than implementing support manually for these crates and more, an easier solution is to allow types implementing serde::Serialize inside types implementing bitcode::Encode.
This was previously a feature in 0.5, but we didn't reimplement it in the 0.6 rewrite due due to technical limitations. I have since found a path forward and intend to add this feature to 0.6.
The downsides of using serde instead of implementing these types in native bitcode are:
- Worse performance
- Requiring
#[bitcode(with_serde)]annotations on every field where serde is used - Doesn't work well on collection types since it forces everything inside them to use serde
1 and 2 aren't much of an issue if serde is used infrequently. 3 poses more of an issue, but so far none of the types requested are collections. We could mitigate it by implementing some of the popular collections such as IndexMap.
- Lingua principale
- Rust
- Stelle
- 675
- Fork
- 61
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: 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 SoftbearStudios/bitcode
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
SoftbearStudios/bitcode#122 · 1 reazione ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
SoftbearStudios/bitcode#121 · 2 commenti ·
-
Implement #[bitcode(with = LocalType)] RemoteTypeForse già presa @finnbear l’ha presa 106 giorni fa. Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
SoftbearStudios/bitcode#115 · 1 reazione ·
-
Support for `nonmax` crate.Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
SoftbearStudios/bitcode#110 · 1 reazione ·
-
BUffer for serde?Forse di nuovo libera @caibear l’ha presa 232 giorni fa e non c’è nessuna pull request aperta. Aperta
SoftbearStudios/bitcode#102 · 1 commento · 1 assegnatario ·
Tutte le issue di SoftbearStudios/bitcode
Issue simili
-
C-bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
rust-lang/rust-analyzer#23501 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
[Bug]: Web chat input doesn't regain focus after a reply finishesForse già presa @GaijinSystems l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
zeroclaw-labs/zeroclaw#11658 ·
I maintainer di solito rispondono entro 2 giorni
-
good first issue help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
bytecodealliance/wasm-tools#2768 ·
I maintainer di solito rispondono entro 1 giorno