Complexity of async rust
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 30/100
Piste de recherche
The issue names OpsQueue and the async transaction function but no file or test. Start by tracing that function and related async call sites, then evaluate whether the async usage can be simplified or replaced. Done requires an agreed scope and measurable simplification, which the issue does not yet define.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
The complexity of OpsQueue in terms of the work being done is not particularly high, OpsQueue does not have many database tables, it performs some queries on these tables and provides a HTTP API and Rust/Python FFI layers.
However the complexity of some of the code that implements this work is quite high, the issue being that this raises the barrier to new contributors and increases time needed to implement new features or maintain existing ones. For example when reading the following code a new (or existing) contributor may begin to scratch their head 😃
async fn transaction<O, E, F>(&mut self, f: F) -> Result<O, E>
where
for<'t> F: FnOnce(Conn<Self::Writable, Tx<'t, '_>>) -> BoxFuture<'t, Result<O, E>>
+ Send
+ Sync
+ 't,
O: Send,
E: From<sqlx::Error> + Send,
The purpose of this issue is as a place to discuss whether it would be possible to simplify/replace any aspects of the code in relation to the async usage.
- Langage dominant
- Rust
- Étoiles
- 96
- Forks
- 2
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
Nous n'avons pas encore vérifié les fichiers d'installation de ce projet. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de channable/opsqueue
-
Make `submissions_canceled` and `add_chunks_done_to_submissions_failed` migrations bidirectionalOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
-
Difficulté 3/5 1-2 jours Accessibilité débutants 66/100
-
Difficulté 3/5 1-2 jours Accessibilité débutants 55/100
-
bug
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
-
bug
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
Toutes les issues de channable/opsqueue
Issues similaires
-
`sysknife history --help` says --since takes ISO-8601, and the parser refuses offsets and bare datesOuvertebug easy good first issue help wanted
Difficulté 1/5 1-3 heures Accessibilité débutants 94/100
lacs-project/sysknife#519 ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement
Difficulté 1/5 Moins d'une heure Accessibilité débutants 72/100
-
area:breg bug criticality:p3 triage:needs-implementation
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
registrystack/registry-stack#1699 ·
Les mainteneurs répondent en général sous 1 jour
-
documentation
Difficulté 1/5 1-3 heures Accessibilité débutants 84/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
lbjlaq/Antigravity-Manager#3539 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour