Commit Graph

2314 Commits

Author SHA1 Message Date
dasman
653670fc3f darkirc: revert start IRC after DAG sync and queue user messages until synced successfully 2024-06-26 14:41:16 +03:00
draoi
958361c953 net: simplfy fetch_last() method and fix lilith's usage 2024-06-26 10:24:06 +02:00
draoi
6a0d4cfe7d net: simplify update_last_seen() method
Also fix its usage by Lilith
2024-06-26 10:01:42 +02:00
draoi
dbf5c6bc8f hosts: use sync Mutex for HostRegistry
We don't need to use an AsyncMutex here since we're not holding across .await points or for long periods of time.

Using a sync Mutex here also fixes some really weird fairness behaviors we observed in the smol::lock::Mutex where writers in the priority queue were occasionally getting ignored. This was apparently not a deadlock since subsequent and prior readers and writers were able to access the data with no problems.
2024-06-26 08:52:46 +02:00
skoupidi
235ba3f644 darkfid: purge current forks on network dc 2024-06-25 16:00:38 +03:00
skoupidi
df95f854a7 darkfid/task: use network disconnect subscription 2024-06-25 14:27:02 +03:00
dasman
01d57d5877 darkirc: start IRC server task after the DAG has been synced 2024-06-25 03:20:38 +03:00
skoupidi
c43c293a09 darkfid/task/consensus.rs: properly handle the proposals subscription 2024-06-24 20:59:05 +03:00
skoupidi
dfc3918ec7 darkfid/task/consensus.rs: gracefully handle network disconnects for replicator 2024-06-24 20:47:57 +03:00
darkfi
6ac471f999 wallet: switch from harfbuzz_rs to harfbuzz_sys 2024-06-24 17:11:06 +02:00
darkfi
8937d3fa15 wallet: add commented harfbuzz-sys code that doesn't work on android due to needing a recent version of cargo, while APK tools use an older one 2024-06-24 14:40:32 +02:00
darkfi
5b8b609797 wallet: cleanup FFI mess for font stuff 2024-06-24 10:28:19 +02:00
darkfi
85db1d7382 wallet: correctly handle alpha transparency in ansi_texture() on android 2024-06-23 14:58:10 +02:00
darkfi
1c54568fd1 wallet: fix text anti-aliasing calc, conversion from PixelMode::Gray was wrong 2024-06-23 14:18:55 +02:00
darkfi
cbff8febe1 wallet: for labels, create a texture atlas so quads can be batched as a single draw call 2024-06-23 13:41:22 +02:00
darkfi
061f50c2a0 wallet: add android terminal texture display 2024-06-22 19:23:18 +02:00
darkfi
eb2241ed13 wallet: add text rendering and a label widget 2024-06-22 18:51:26 +02:00
dasman
2d68d9d054 tau: ignore any colon that isn't part of known attributes 2024-06-21 05:21:36 +03:00
dasman
273a046b8a tau: print and error and exxit if attributes are invalid, instead of assert 2024-06-20 17:34:09 +03:00
darkfi
2e66e9d6c6 wallet: working z_index in renderer 2024-06-20 15:44:44 +02:00
skoupidi
0c5bf14eee darkfid/drk: fmt 2024-06-20 16:03:32 +03:00
skoupidi
3cb2054928 drk: use per network configuration 2024-06-20 16:03:03 +03:00
skoupidi
01caf27291 darkfid: fixed txs_batch_size arg parsing 2024-06-20 16:03:03 +03:00
skoupidi
186e3302d3 darkfid: moved all relative args under blockchain config args 2024-06-20 16:03:03 +03:00
darkfi
563f04f963 wallet: +bugfix on_modify tasks were being dropped 2024-06-20 15:00:06 +02:00
darkfi
794a32f8b6 wallet: enable zmq backend network access 2024-06-20 13:48:39 +02:00
skoupidi
109b902b01 darkfid: optional mining reward spend hook and user data added 2024-06-20 14:18:27 +03:00
skoupidi
3f31e393e1 contract/money/client/pow_reward: minor cleanup 2024-06-20 14:18:27 +03:00
darkfi
33a67b239b wallet: Mesh::on_modify rect property calls redraw 2024-06-20 12:27:36 +02:00
darkfi
7bc9e3c10c wallet: janny clean up warnings and comment unused mods 2024-06-20 11:52:39 +02:00
darkfi
751037d44f wallet: migrate widgets to src/ui/ 2024-06-20 11:27:45 +02:00
darkfi
9565b6a390 wallet: split event streams into separate publishers to avoid waking sleeping tasks uncessarily 2024-06-20 11:10:53 +02:00
darkfi
f4f7a258e9 wallet: make some common gadgets useful and clean up the code 2024-06-20 10:52:56 +02:00
skoupidi
8c33d59f40 chore: updated all repo references to codeberg 2024-06-19 20:51:25 +03:00
skoupidi
79f9cd24c5 darkfid: optional bootstrap timestamp added 2024-06-19 17:37:02 +03:00
skoupidi
934d8f1a42 validator: check block timestamp is after genesis 2024-06-19 17:37:02 +03:00
skoupidi
82a56cd2c2 validator: properly handle gas limit checks 2024-06-19 12:00:21 +03:00
darkfi
c85e8e3f28 wallet: fix mesh matrix transform calc 2024-06-19 10:21:49 +02:00
dasman
b4bf8e2740 darkirc: fix history replay for DMs 2024-06-19 04:20:14 +03:00
darkfi
cfd1e65c39 wallet: live resizing of layers 2024-06-18 12:55:17 +02:00
darkfi
8f88b3a77f wallet: UI drawing responds to property changes 2024-06-17 20:32:23 +02:00
darkfi
5e1c43af36 wallet: improve RenderApi. now each call is paired with a unique u64 ID which is used to modify the call without knowing its location in the draw tree. 2024-06-15 12:16:08 +02:00
darkfi
f6dc235f93 wallet: construct app and carefully manage resources 2024-06-15 07:29:20 +02:00
skoupidi
1f4d72d3ad drk: restructer as a library 2024-06-14 15:05:10 +03:00
skoupidi
90b024f5fc darkfid/tests: use diff p2p ports on nodes of each test so they communicate with the ones expected when running concurently 2024-06-13 16:59:15 +03:00
kalm
cff9d0e7f5 validator/consensus: gas-based limit for unproposed transactions retrieval
Gas-based limit implementation to retrieve unproposed transactions. The limit is maintained by the constant 'GAS_LIMIT_UNPROPOSED_TXS', currently calculated as the product of the average total gas used and a gas limit multiplier equivalent to the existing TX_CAP value (i.e, 50).

The average total gas was obtained through analysis of empirical transaction test data, using a gas analysis tool.

The aim of this approach is to allow a gradual and controlled transition towards an optimal gas-based system. This minimizes potential adverse effects brought by changes to TX_CAP's implementation and provides the benefits of using gas to limit the number of txs received. This implementation will be fine-tuned until the discovery of the most efficient formula for determining the unproposed transactions' gas limit.

Tests have been added to verify the implementation's correctness by running transactions against it. To run the tests, run the following command from the bin/darkfid directory:

cargo test --release --bin darkfid tests::unproposed_txs
2024-06-13 05:27:05 -07:00
darkfi
a3db035ffa wallet: properly handle app cleanup (accidental cargo fmt so just check main.rs) 2024-06-13 11:46:07 +02:00
darkfi
6d295ab1ca wallet: migrate to using async slots/signals and zmq debug backend 2024-06-12 16:47:04 +02:00
darkfi
927dfa7270 wallet: replace crossbeam::SkipMap<..> with Mutex<HashMap<...>> 2024-06-12 13:47:10 +02:00
skoupidi
37a864c89f darkfid/tests/harness: init an empty fork when generating node 2024-06-12 13:29:27 +03:00