Complexity of async rust
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 30/100
Direção de pesquisa
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.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
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.
- Linguagem predominante
- Rust
- Estrelas
- 96
- Forks
- 2
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Preparar o ambiente
Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de channable/opsqueue
-
Make `submissions_canceled` and `add_chunks_done_to_submissions_failed` migrations bidirectionalAberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 74/100
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 66/100
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 55/100
-
bug
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
-
bug
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
Todas as issues de channable/opsqueue
Issues semelhantes
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
stellar/stellar-cli#2773 ·
Mantenedores costumam responder em até 2 dias
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
voidzero-dev/oxc-angular-compiler#511 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 86/100
yantrikos/yantrik-os#539 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
Mantenedores costumam responder em até 1 dia
-
documentation station:mac ui-dashboard
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 86/100
rolter-ai/rolter#2490 · 1 comentário ·
Mantenedores costumam responder em até 1 dia