duniter issueshttps://git.duniter.org/nodes/typescript/duniter/-/issues2020-10-04T18:31:02+02:00https://git.duniter.org/nodes/typescript/duniter/-/issues/1381/node/sandboxes does not display certifications sandboxes2020-10-04T18:31:02+02:00Moul/node/sandboxes does not display certifications sandboxes```json
/node/sandboxes
{
"identities": {
"size": 5000,
"free": 4866
},
"memberships": {
"size": 5000,
"free": 4001
},
"transactions": {
"size": 200,
"free": 179
}
}
``````json
/node/sandboxes
{
"identities": {
"size": 5000,
"free": 4866
},
"memberships": {
"size": 5000,
"free": 4001
},
"transactions": {
"size": 200,
"free": 179
}
}
```2.0https://git.duniter.org/nodes/typescript/duniter/-/issues/1371Replacing naclb by node-sodium2019-05-07T22:08:29+02:00Cédric MoreauReplacing naclb by node-sodiumNaclb was a handmaid port dependency for fast, native C++ execution of Nacl (speed needed for PoW).
Today, it exists [node-sodium](https://github.com/paixaop/node-sodium) which seems to do this exact job and be maintained actively and b...Naclb was a handmaid port dependency for fast, native C++ execution of Nacl (speed needed for PoW).
Today, it exists [node-sodium](https://github.com/paixaop/node-sodium) which seems to do this exact job and be maintained actively and bases on stantard C++ libs.
Maybe we could replace naclb by node-sodium.Horizonhttps://git.duniter.org/nodes/typescript/duniter/-/issues/1363JSON blockchain archives are duplicated2020-10-04T18:31:40+02:00Pascal EngélibertJSON blockchain archives are duplicatedBoth `archives` and `g1` folders contain exactly the same data (excepted the `fork` value), so 260 MB could be saved by removing one of them.Both `archives` and `g1` folders contain exactly the same data (excepted the `fork` value), so 260 MB could be saved by removing one of them.2.0https://git.duniter.org/nodes/typescript/duniter/-/issues/1349Deno instead of Nodejs?2020-05-10T18:15:04+02:00MoulDeno instead of Nodejs?- [Deno website](https://deno.land/)
- [Deno repository](https://github.com/denoland/deno)
> A secure JavaScript/TypeScript runtime built with V8, Rust, and Tokio.
Deno would be able to interpret TypeScript directly.
No need for transp...- [Deno website](https://deno.land/)
- [Deno repository](https://github.com/denoland/deno)
> A secure JavaScript/TypeScript runtime built with V8, Rust, and Tokio.
Deno would be able to interpret TypeScript directly.
No need for transpilation to JavaScript.
This is the project from the same author of Node.js.
The project is still in early stage. But, it worth having a look.Horizonhttps://git.duniter.org/nodes/typescript/duniter/-/issues/1335Have command specific options2019-01-29T12:17:41+01:00MoulHave command specific optionscf https://www.npmjs.com/package/commander#command-specific-options
This is really annoying to find which option apply to which command.
There is some specifics option only for `sync` command for instance.
They should only be accessib...cf https://www.npmjs.com/package/commander#command-specific-options
This is really annoying to find which option apply to which command.
There is some specifics option only for `sync` command for instance.
They should only be accessible via `duniter sync -h` and not via `duniter -h`.
General options which can apply to many commands should stay at the root of the help.2.0https://git.duniter.org/nodes/typescript/duniter/-/issues/1207Planning the improvement of DUP protocol for duniter 2.02017-12-05T14:28:51+01:00ÉloïsPlanning the improvement of DUP protocol for duniter 2.0## Approved developments
- [ ] Pay to pubkey hash #1002
- [ ] Add function P2SH : Pay to script hash #1165
- [ ] Change handicap formula : replace the median by second tiercile #1169
## Developments under discussion
- [ ] Key ...## Approved developments
- [ ] Pay to pubkey hash #1002
- [ ] Add function P2SH : Pay to script hash #1165
- [ ] Change handicap formula : replace the median by second tiercile #1169
## Developments under discussion
- [ ] Key delegated to block computing #1208
2.0https://git.duniter.org/nodes/typescript/duniter/-/issues/1183Champs inutilisés en base de données2017-11-28T16:49:16+01:00Cédric MoreauChamps inutilisés en base de donnéesÀ la lecture du [Chapitre 7 - Base de données](https://duniter.org/fr/wiki/duniter/tutoriel-dev/chapitre-7-bdd/) du tuto de dev, on s'aperçoit qu'il y a plusieurs champs des tables de piscine qui ne sont plus exploitées.
Ces champs ne...À la lecture du [Chapitre 7 - Base de données](https://duniter.org/fr/wiki/duniter/tutoriel-dev/chapitre-7-bdd/) du tuto de dev, on s'aperçoit qu'il y a plusieurs champs des tables de piscine qui ne sont plus exploitées.
Ces champs ne servent plus, ils peuvent être supprimés.
Il faut tout de même vérifier avec les tests que cela est bien vrai (j'ai moi-même fait des recherches avant de noter l'inutilité de ces champs), mais ensuite il faut les retirer et mettre à jour le Chapitre 7 en conséquence.Horizonhttps://git.duniter.org/nodes/typescript/duniter/-/issues/1182Separate network key and block computing key2020-10-04T18:45:31+02:00ÉloïsSeparate network key and block computing keyTo allow anonymization of nodes on the network, a member should be able to use a non-member anonymous network key.
The key dedicated to signing the calculated blocks would never be shared on the network.
The blocks that the node will c...To allow anonymization of nodes on the network, a member should be able to use a non-member anonymous network key.
The key dedicated to signing the calculated blocks would never be shared on the network.
The blocks that the node will compute. It would submit them to the network via ws2p in the same way as it relays any other block received. For the nodes that receive its blocks, it would be impossible to know if they are blocks that he has calculated himself or that he simply relays.2.0https://git.duniter.org/nodes/typescript/duniter/-/issues/1179Create a synchronization mechanism via ws2p2020-10-04T18:45:53+02:00ÉloïsCreate a synchronization mechanism via ws2pThis requires creating a new type of WS2P connection specifically designed for sync, a kind of temporary websocket just the time to download chunk files.This requires creating a new type of WS2P connection specifically designed for sync, a kind of temporary websocket just the time to download chunk files.2.0https://git.duniter.org/nodes/typescript/duniter/-/issues/1165Add function P2SH : Pay to script hash2019-09-25T00:07:28+02:00ÉloïsAdd function P2SH : Pay to script hashThey allow transactions to be sent to a script hash instead of a public key hash (addresses starting with 1. To spend coins sent via P2SH, the recipient must provide a script matching the script hash and data which makes the script evalu...They allow transactions to be sent to a script hash instead of a public key hash (addresses starting with 1. To spend coins sent via P2SH, the recipient must provide a script matching the script hash and data which makes the script evaluate to true.
Pour qu'il soit possible de verser de la monnaie a un compte défini par un ensemble complexe de règles de déblocage sans connaitre cet ensemble de règles, il suffit d'en connaitre une adresse virtuelle qui serait publiée quelque part et qui contient le hash de l'ensemble des conditions de déblocage.
le compte `P2SH(A)` ne pourra consommer ses sources que s'il fourni un ensemble de conditions de déblocage qui à pour hash `A`.
La fonction `XHX()` ne peut pas assurée ce rôle car le script des conditions de déblocage peut contenir la fonction`XHX()`. Il faut donc une fonction a part dont l'usage récursif sera interdit : PS2H
Cf. comment le bitcoin gère cela : https://en.bitcoin.it/wiki/Pay_to_script_hash2.0https://git.duniter.org/nodes/typescript/duniter/-/issues/1162use --keyprompt in daemon mode2021-01-04T13:13:05+01:00Éloïsuse --keyprompt in daemon modeCurrently, the `--keyprompt` option works only in `direct_start` mode.Currently, the `--keyprompt` option works only in `direct_start` mode.Horizonhttps://git.duniter.org/nodes/typescript/duniter/-/issues/1152Change tx sandbox size2020-10-04T18:47:27+02:00ÉloïsChange tx sandbox sizehttps://forum.duniter.org/t/gbot-feeback-on-g1-test/3400/5?u=eloishttps://forum.duniter.org/t/gbot-feeback-on-g1-test/3400/5?u=elois1.10https://git.duniter.org/nodes/typescript/duniter/-/issues/1143Refactor `parsers` files2017-11-28T16:49:17+01:00Cédric MoreauRefactor `parsers` filesAll the parsing files would need a complete rewriting to allow a clearer implementation, with explicit manipulation of flow processing, which we could easily test component by component.
These files are here: https://github.com/dunite...All the parsing files would need a complete rewriting to allow a clearer implementation, with explicit manipulation of flow processing, which we could easily test component by component.
These files are here: https://github.com/duniter/duniter/tree/dev/app/lib/common-libs/parsersHorizonhttps://git.duniter.org/nodes/typescript/duniter/-/issues/1127'duniter logs' command takes too much RAM2017-11-28T16:49:17+01:00Cédric Moreau'duniter logs' command takes too much RAM*Created by: M5oul*
`duniter logs` is taking almost 100MB of memory.
![duniter_logs_ram_res](https://user-images.githubusercontent.com/4758871/30973770-4154a776-a46e-11e7-92aa-4a0c7eaf6060.png)
That is too much to display logs.
A...*Created by: M5oul*
`duniter logs` is taking almost 100MB of memory.
![duniter_logs_ram_res](https://user-images.githubusercontent.com/4758871/30973770-4154a776-a46e-11e7-92aa-4a0c7eaf6060.png)
That is too much to display logs.
A `grep` is much more lightweight!Horizonhttps://git.duniter.org/nodes/typescript/duniter/-/issues/1120Message « Peer with zero endpoints that is not already known »2020-03-31T23:01:25+02:00Cédric MoreauMessage « Peer with zero endpoints that is not already known »It is displayed at error level. It can be info or even debug.It is displayed at error level. It can be info or even debug.Horizonhttps://git.duniter.org/nodes/typescript/duniter/-/issues/1102WS2P: prevent JSON injection2017-11-28T16:49:16+01:00Cédric MoreauWS2P: prevent JSON injectionWS2P parses received JSON. We need to take a big care on the received JSON because it could carry invalid content.WS2P parses received JSON. We need to take a big care on the received JSON because it could carry invalid content.Horizonhttps://git.duniter.org/nodes/typescript/duniter/-/issues/1101Difficulties not updated with HEAD2017-11-28T16:49:16+01:00Cédric MoreauDifficulties not updated with HEAD*Created by: M5oul*
I noticed that the ID of the HEAD block issued by this ID is not displayed on `/blockchain/difficulties` when this ID was not on the current window. *Created by: M5oul*
I noticed that the ID of the HEAD block issued by this ID is not displayed on `/blockchain/difficulties` when this ID was not on the current window. Horizonhttps://git.duniter.org/nodes/typescript/duniter/-/issues/1100Allow certification cancelling2017-11-28T16:49:16+01:00Cédric MoreauAllow certification cancellingThe discussion is here: https://forum.duniter.org/t/annulation-de-certification/3233
It is still being discussed.The discussion is here: https://forum.duniter.org/t/annulation-de-certification/3233
It is still being discussed.Horizonhttps://git.duniter.org/nodes/typescript/duniter/-/issues/1099Have a dynamic stock of certifications2017-11-28T16:49:16+01:00Cédric MoreauHave a dynamic stock of certificationsThe discussion is here: https://forum.duniter.org/t/stock-de-certifications-dynamique/3232
For now this is still an under discussion feature.The discussion is here: https://forum.duniter.org/t/stock-de-certifications-dynamique/3232
For now this is still an under discussion feature.Horizonhttps://git.duniter.org/nodes/typescript/duniter/-/issues/1083Improve block generation speed2017-11-28T16:49:16+01:00Cédric MoreauImprove block generation speedOn low configurations like a Raspberry PI, generating a block (the phase before proof) is VERY long.
This is a big handicap, sometimes a dozen of seconds, for these nodes.
It seems that the WoT data is what is long to generate:
...On low configurations like a Raspberry PI, generating a block (the phase before proof) is VERY long.
This is a big handicap, sometimes a dozen of seconds, for these nodes.
It seems that the WoT data is what is long to generate:
```
2017-08-23T13:38:05+00:00 - debug: It already exists a written certification from 34k6isdkoYZjcEvS3qZqATeTYjY1b3K1gLyW1K77Pea4 which is not chainable yet
2017-08-23T13:38:05+00:00 - debug: It already exists a written certification from DymYJziyjC9pyupKNxT9iukEKrnFSGNCLnxFQtSWJSg5 which is not chainable yet
2017-08-23T13:38:05+00:00 - debug: It already exists a written certification from 5SwfQubSat5SunNafCsunEGTY93nVM4kLSsuprNqQb6S which is not chainable yet
2017-08-23T13:38:05+00:00 - debug: It already exists a written certification from BqegkjBDibg8iUQQnqDrvGLhgcTYTxBnz19LUBNKRdeN which is not chainable yet
2017-08-23T13:38:05+00:00 - debug: It already exists a written certification from 4rWREtAxNS2L427f4vG2LafZNZ9ZLj3cvFFxGyrtFzGL which is not chainable yet
2017-08-23T13:38:06+00:00 - debug: It already exists a written certification from 5SwfQubSat5SunNafCsunEGTY93nVM4kLSsuprNqQb6S which is not chainable yet
2017-08-23T13:38:06+00:00 - debug: It already exists a written certification from GwhyPg6tiESpArzQ2oXXNq7aHPFwBHxp21Eqkf2fvRQV which is not chainable yet
2017-08-23T13:38:06+00:00 - debug: It already exists a written certification from GudqRDfrUYfweHkbscitHiJTBL3UMYejKu3Us4kP3ds9 which is not chainable yet
2017-08-23T13:38:06+00:00 - debug: It already exists a written certification from 78jhpprYkMNF6i5kQPXfkAVBpd2aqcpieNsXTSW4c21f which is not chainable yet
2017-08-23T13:38:06+00:00 - debug: It already exists a written certification from DfAT7wGnRG4c3vnCDSfF5CW8HkwLRL6bMb1ykQPiAgCX which is not chainable yet
```Horizon