Rust library support for humility - starting with `humility tasks`
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- rust
- Ambito
- backend-api-design
Direzione di ricerca
Inizia leggendo l’entry point CLI esistente per humility tasks e i relativi percorsi di inizializzazione di archive e probe. Usa come contesto per il confine della libreria le issue collegate di facade e la ricerca degli utilizzi di humility. Il lavoro è completato quando una libreria Rust espone humility tasks con il supporto di inizializzazione necessario e interfacce tipizzate per i chiamanti.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Currently, humility is accessible only as a CLI. For some usecases, it would be useful to interact with humility directly in Rust.
Our manufacturing systems currently shell out to the humility CLI wherever required, relying string parsing and manual error handling. A Rust library interface would provide: 1) structured error types, 2) typed return values eliminating parsing, and 3) compile-time interface guarantees. These mirror the general case for "why Rust?". Manufacturing systems need to handle errors properly and run reliably over long periods - Rust would help here & avoid risk of reliance on uncommitted string interfaces in shell. Some usage would remain in shell, some would move to Rust.
Manufacturing tooling would effectively build an application layer on top of humility. Initial implementation of a Humility library would expose humility tasks (effectively a ping check, also useful for https://github.com/oxidecomputer/facade/issues/297) along with necessary initialization support (archive, probe) and any scaffolding. Additional commands can be added as needed.
Example issues in facade that may benefit from humility Rust library:
- https://github.com/oxidecomputer/facade/issues/293
- https://github.com/oxidecomputer/facade/issues/295
- https://github.com/oxidecomputer/facade/issues/296
- https://github.com/oxidecomputer/facade/issues/297
- https://github.com/oxidecomputer/facade/issues/298
- https://github.com/oxidecomputer/facade/issues/299
- https://github.com/oxidecomputer/facade/issues/301
Humility usage in facade:
Example "humility application library" in DMAR Python:
- Lingua principale
- Rust
- Stelle
- 587
- Fork
- 64
- Merge medio
- 2g 15h
- PR unite (30g)
- 5
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 oxidecomputer/humility
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
oxidecomputer/humility#737 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 65/100
oxidecomputer/humility#730 · 1 commento ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
oxidecomputer/humility#729 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 42/100
oxidecomputer/humility#723 · 1 commento ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
oxidecomputer/humility#705 · 12 commenti ·
Tutte le issue di oxidecomputer/humility
Issue simili
-
agent:iq3-xxs area: cli duplication enhancement priority: P3 ready-for-agent
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
bytecodealliance/rustix#1703 ·
I maintainer di solito rispondono entro 3 giorni
-
bug discussion
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
medialab/xan#1201 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
farion1231/cc-switch#8298 ·
I maintainer di solito rispondono entro 1 giorno