duniter-gva merge requestshttps://git.duniter.org/nodes/rust/modules/duniter-gva/-/merge_requests2023-09-09T04:24:53+02:00https://git.duniter.org/nodes/rust/modules/duniter-gva/-/merge_requests/6Increase values of antispam2023-09-09T04:24:53+02:00pokaIncrease values of antispamhttps://git.duniter.org/nodes/rust/modules/duniter-gva/-/merge_requests/5feat(bma) add `get_written_transactions_for_bma()` and `get_pending_transacti...2023-06-11T18:19:33+02:00Benoit Lavenierfeat(bma) add `get_written_transactions_for_bma()` and `get_pending_transactions_for_bma()` - close #1add `get_written_transactions_for_bma()` and `get_pending_transactions_for_bma()` in DuniterModule trait - close #1add `get_written_transactions_for_bma()` and `get_pending_transactions_for_bma()` in DuniterModule trait - close #1Cédric MoreauCédric Moreauhttps://git.duniter.org/nodes/rust/modules/duniter-gva/-/merge_requests/4Edition cleanup2021-12-03T17:48:18+01:00Pascal EngélibertEdition cleanupSome cleanup to follow the language updates, new clippy lints and Rust 2021.
The crate `duniter-gva-gql` could not be migrated to 2021, probably because of an `async_graphql`'s macro.
`&[T]::try_into() -> [T; N]` is simpler and safer t...Some cleanup to follow the language updates, new clippy lints and Rust 2021.
The crate `duniter-gva-gql` could not be migrated to 2021, probably because of an `async_graphql`'s macro.
`&[T]::try_into() -> [T; N]` is simpler and safer than using `uninit`.https://git.duniter.org/nodes/rust/modules/duniter-gva/-/merge_requests/3idty_by_username2021-06-30T16:55:28+02:00Pascal Engélibertidty_by_usernameAdd `IdtyByUsername` GVA query.
J'ai dû ajouter la pubkey dans gva_identities pour le revert uniquement.
@libreloisAdd `IdtyByUsername` GVA query.
J'ai dû ajouter la pubkey dans gva_identities pour le revert uniquement.
@libreloishttps://git.duniter.org/nodes/rust/modules/duniter-gva/-/merge_requests/1WIP feat(db+indexer): certifications2021-05-21T20:31:43+02:00Pascal EngélibertWIP feat(db+indexer): certifications@librelois Voici un début.
* J'ai dû un peu modifier `gen_next_wot_id` car les deux premiers IDs générés étaient `0` (les tests ne généraient qu'une seule identité donc ça ne se voyait pas).
* J'ai aussi eu quelques problèmes de traits ...@librelois Voici un début.
* J'ai dû un peu modifier `gen_next_wot_id` car les deux premiers IDs générés étaient `0` (les tests ne généraient qu'une seule identité donc ça ne se voyait pas).
* J'ai aussi eu quelques problèmes de traits avec le schéma de db, donc j'ai dû créer des types wrappers pour les valeurs. Il voulait qu'ils implémentent `zerocopy::{AsBytes, FromBytes}` (j'ai réussi à faire ça uniquement avec `#[repr(packed)]`) et `Default`. Les contraintes pour `X` semblent être différentes si la valeur est `X` ou `Vec<X>` par exemple, c'est bizarre.
* À propos de `WotId`: Est-il judicieux de stocker des `usize` en db ? Ça peut causer des problèmes si on change d'architecture.
* J'ai un panic dans le test `test_update_certifications`: (peut-être à cause du `#[repr(packed)]` ?)
```
panicked at 'source slice length (33) does not match destination slice length (32)'
stack backtrace:
0: rust_begin_unwind
at /rustc/9bc8c42bb2f19e745a63f3445f1ac248fb015e53/library/std/src/panicking.rs:493:5
1: core::panicking::panic_fmt
at /rustc/9bc8c42bb2f19e745a63f3445f1ac248fb015e53/library/core/src/panicking.rs:92:14
2: core::slice::<impl [T]>::copy_from_slice::len_mismatch_fail
at /rustc/9bc8c42bb2f19e745a63f3445f1ac248fb015e53/library/core/src/slice/mod.rs:3041:13
3: core::slice::<impl [T]>::copy_from_slice
at /home/tuxmain/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/slice/mod.rs:3048:13
4: <duniter_gva_db::values::PublicKeyDb as kv_typed::from_bytes::FromBytes>::from_bytes
at /home/tuxmain/Documents/projets/duniter-gva/db/src/values.rs:75:9
5: <kv_typed::backend::memory::MemCol as kv_typed::backend::BackendCol>::get::{{closure}}::{{closure}}
at /home/tuxmain/.cargo/git/checkouts/duniter-core-11cd823ec7c898cf/56dd979/tools/kv_typed/src/backend/memory.rs:104:30
6: core::option::Option<T>::map
at /home/tuxmain/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/option.rs:487:29
7: <kv_typed::backend::memory::MemCol as kv_typed::backend::BackendCol>::get::{{closure}}
at /home/tuxmain/.cargo/git/checkouts/duniter-core-11cd823ec7c898cf/56dd979/tools/kv_typed/src/backend/memory.rs:102:13
8: <kv_typed::key::U64BE as kv_typed::as_bytes::AsBytes>::as_bytes
at /home/tuxmain/.cargo/git/checkouts/duniter-core-11cd823ec7c898cf/56dd979/tools/kv_typed/src/as_bytes.rs:81:17
9: <kv_typed::backend::memory::MemCol as kv_typed::backend::BackendCol>::get
at /home/tuxmain/.cargo/git/checkouts/duniter-core-11cd823ec7c898cf/56dd979/tools/kv_typed/src/backend/memory.rs:101:9
10: kv_typed::transactional_write::TxColRw<BC,E>::get
at /home/tuxmain/.cargo/git/checkouts/duniter-core-11cd823ec7c898cf/56dd979/tools/kv_typed/src/transactional_write.rs:76:38
11: duniter_gva_indexer::certifications::update_certifications
at ./src/certifications.rs:41:38
...
```
* Dans `db`, certains noms sont préfixés par `gva`, d'autres non. Puisqu'on est déjà dans `duniter-gva` je choisis de ne pas le faire, mais ça pourrait être harmonisé.
Voilà il y a des TODO un peu partout où j'ai des doutes, et je me lancerai dans le revert quand les tests de l'apply passeront. :smiley:
Edit: Chose étonnante, le pipeline a une erreur de compilation, alors que chez moi ça compile bien. (je suis bien en stable x86_64 1.52.1)