nim-codex/codex
markspanbroek 29433bad9a
Fix concurrency issues (#993)
* Use http subscriptions instead of websocket for tests

To work around this issue when subscriptions are
inactive for more than 5 minutes:
https://github.com/NomicFoundation/hardhat/issues/2053

Use 100 millisecond polling; default polling interval
of 4 seconds is too close to the 5 second timeout for
`check eventually`.

* use .confirm(1) instead of confirm(0)

confirm(0) doesn't wait at all, confirm(1) waits
for the transaction to be mined

* speed up partial payout integration test

* update nim-ethers to version 0.10.0

includes fixes for http polling and .confirm()

* fix timing of marketplace tests

allow for a bit more time to withdraw funds

* use .confirm(1) in marketplace tests

to ensure that the transaction has been processed
before continuing with the test

* fix timing issue in validation unit test

* fix proof integration test

there were two logic errors in this test:
- a slot is freed anyway at the end of the contract
- when starting the request takes a long time, the
  first slot can already be freed because there were
  too many missing proofs

* fix intermittent error in contract tests

currentTime() doesn't always correctly reflect
the time of the next transaction

* reduce number of slots in integration test

otherwise the windows runner in the CI won't
be able to start the request before it expires

* fix timing in purchasing test

allow for a bit more time for a request to
be submitted

* fix timing of request submission in test

windows ci is so slow, it can take up to 40 seconds
just to submit a storage request to hardhat

* increase proof period to 90 seconds

* adjust timing of integration tests

reason: with the increased period length of 90 seconds, it
can take longer to wait for a stable challenge at the
beginning of a period.

* increase CI timeout to 2 hours

* Fix slow builds on windows

apparently it takes windows 2-3 seconds to
resolve "localhost" to 127.0.0.1 for every
json-rpc connection that we make 🤦
2024-11-25 11:23:04 +00:00
..
blockexchange Fix: null-ref in networkPeer (#937) 2024-10-07 08:50:54 +00:00
contracts Fix concurrency issues (#993) 2024-11-25 11:23:04 +00:00
erasure Bandaid for failing erasure coding (#855) 2024-07-03 14:44:00 +00:00
manifest feat: add metadata to the manifest (#960) 2024-10-25 13:43:19 +00:00
merkletree Block deletion with ref count & repostore refactor (#631) 2024-06-20 22:46:06 +00:00
purchasing feat: partial rewards and withdraws (#880) 2024-10-10 11:53:33 +00:00
rest feat: add metadata to the manifest (#960) 2024-10-25 13:43:19 +00:00
sales fix(slot-reservations): Avoid slot filled cancellations (#963) 2024-10-24 05:56:12 +00:00
slots Rework circuit downloader (#882) 2024-09-23 14:37:17 +00:00
stores Update advertising (#862) 2024-08-26 13:18:59 +00:00
streams Fix StoreStream so it doesn't return parity bytes (#838) 2024-06-21 11:09:59 +00:00
utils chore: update dependencies, especially nim-ethers to chronos v4 compatible version (#968) 2024-10-30 10:40:17 +00:00
blockexchange.nim Change every dagger to codex (#102) 2022-05-19 13:56:03 -06:00
blocktype.nim Chronos v4 Update (v3 Compat Mode) (#814) 2024-07-18 21:04:33 +00:00
chunker.nim Handles LPStreamError in chunker (#947) 2024-10-10 11:22:36 +00:00
clock.nim Revert "remove call to `waitFor` from clock.now and make it async (#691)" (#707) 2024-02-16 22:12:16 +00:00
codex.nim Validator - support partitioning of the slot id space (#890) 2024-10-02 22:00:40 +00:00
codextypes.nim wire in circom backend (#698) 2024-02-09 21:40:30 +00:00
conf.nim Validator - support partitioning of the slot id space (#890) 2024-10-02 22:00:40 +00:00
contracts.nim feat: contract address management (#405) 2023-05-03 09:24:25 +02:00
discovery.nim Update logging for download (#799) 2024-05-16 10:06:12 -07:00
erasure.nim Improving proc/func formatting consistency (#454) 2023-06-22 08:11:18 -07:00
errors.nim Build slots (#668) 2024-01-11 08:45:23 -08:00
indexingstrategy.nim Fix verifiable manifest initialization (#839) 2024-06-21 22:50:56 +00:00
logutils.nim refactor: use serde for json de/serialization instead of utils/json (#704) 2024-03-19 03:25:13 +00:00
manifest.nim Update multicodecs (#665) 2023-12-22 13:04:01 +01:00
market.nim feat(slot-reservations): support SlotReservationsFull event (#926) 2024-10-05 01:37:08 +00:00
merkletree.nim Build slots (#668) 2024-01-11 08:45:23 -08:00
namespaces.nim Blockexchange uses merkle root and index to fetch blocks (#566) 2023-11-14 13:02:17 +01:00
node.nim chore: update dependencies, especially nim-ethers to chronos v4 compatible version (#968) 2024-10-30 10:40:17 +00:00
periods.nim Validator (#387) 2023-04-19 15:06:00 +02:00
purchasing.nim feat: expiry specified with number of seconds (#793) 2024-05-06 17:35:46 +02:00
rng.nim track latest nim-libp2p's master branch (#248) 2022-11-02 11:40:28 -06:00
sales.nim feat(slot-reservations): support SlotReservationsFull event (#926) 2024-10-05 01:37:08 +00:00
slots.nim wire in circom backend (#698) 2024-02-09 21:40:30 +00:00
stores.nim Rework merkle tree (#654) 2023-12-21 06:41:43 +00:00
streams.nim adding AsyncStreamWrapper (#110) 2022-06-14 09:19:35 -06:00
systemclock.nim Revert "remove call to `waitFor` from clock.now and make it async (#691)" (#707) 2024-02-16 22:12:16 +00:00
units.nim Block deletion with ref count & repostore refactor (#631) 2024-06-20 22:46:06 +00:00
utils.nim Fixes active cancellation for pending want requests (#714) 2024-02-22 14:54:45 +00:00
validation.nim Validator - support partitioning of the slot id space (#890) 2024-10-02 22:00:40 +00:00
validationconfig.nim Validator - support partitioning of the slot id space (#890) 2024-10-02 22:00:40 +00:00