markspanbroek
1a3003e043
Update to latest dagger-contracts ( #78 )
...
- StorageRequest struct has changed
- StorageRequested event has changed,
it no longer returns the entire request,
but only the id and the ask
2022-04-11 12:03:55 -06:00
markspanbroek
168468a3fd
[ci] Speed up CI by eliminating unnecessary runs ( #79 )
2022-04-11 12:01:32 -06:00
markspanbroek
03fa370624
Proving ( #66 )
...
* Add Proving object, which maintains contract id's to watch
* [proving] invoke callback when proof is required
# Conflicts:
# dagger/por/timing/periods.nim
# dagger/por/timing/prooftiming.nim
* [proving] check proof requirements for all our contracts
# Conflicts:
# tests/dagger/helpers/mockprooftiming.nim
* Update vendor/dagger-contracts
* [proving] call onProofRequired() when proof is required soon
* [proving] stop checking contracts that have ended
* [proving] Remove duplicated funcs
* [proving] Implement ProofTiming on top of smart contract
* [proving] Fix race condition in waitUntilNextPeriod()
Sometimes waitUntilNextPeriod would take a while to
determine the current period, leading to unexpected results.
Splits waitUntilNextPeriod() into getCurrentPeriod()
and waitUntilPeriod(), to ensure that we're really waiting
for the period that we think we're waiting for.
2022-04-08 15:58:16 -06:00
Dmitriy Ryajov
2e8b39cf7c
fix random failing test ( #77 )
2022-04-07 17:08:43 -06:00
Tanguy
aa50127c14
Compiler dagger.nim in the CI ( #71 )
2022-04-06 14:00:25 +02:00
Dmitriy Ryajov
ffa9b624f1
Integrate erasure ( #73 )
...
* wip: adding request for storage endpoint
* wire in erasure coding
* fix tests for erasure coding
* put type definitions into separate file
* integrate erasure coding
* change run/shutdown to start/stop
* temporary sleep, otherwise the fsstore blocks
2022-04-05 18:34:29 -06:00
Dmitriy Ryajov
22c6705312
rename storageproofs to por ( #74 )
2022-04-05 14:44:53 -06:00
Dmitriy Ryajov
49c41e27b7
Erasure coding dataset ( #72 )
...
* add erasure coding support
* add leopard support
* erasure coding tests
2022-04-05 13:12:59 -06:00
Dmitriy Ryajov
70e4b2e5eb
handle empty blocks ( #70 )
2022-04-05 08:24:48 -06:00
Dmitriy Ryajov
8ef8cfcd74
add sample proc with exclude array ( #68 )
2022-04-05 08:24:39 -06:00
Dmitriy Ryajov
3222f436cc
Protected manifest ( #69 )
...
* add protected manifes type
* encode protected manifest
* add empty block type handling
* add tests for protected manifest
2022-04-04 18:46:13 -06:00
Dmitriy Ryajov
8146198869
Update deps ( #67 )
...
* update nim-presto
* update asynctest to latest
* upgrading deps
2022-04-04 15:49:13 -06:00
Mark Spanbroek
befebcf325
[sales] Make storage available again when offer expires
2022-04-04 11:29:32 +02:00
Mark Spanbroek
55e326b467
[sales] Introduce Negotiation object
2022-04-04 11:29:32 +02:00
Mark Spanbroek
e46c9816fa
[sales] Make storage available again when offer declined
2022-04-04 11:29:32 +02:00
Mark Spanbroek
5d434f20d3
[sales] onSale() callback is optional
2022-04-04 11:29:32 +02:00
Mark Spanbroek
11f7b4b4d8
[sales] Clean up tests
2022-04-04 11:29:32 +02:00
Mark Spanbroek
3810889fcb
[sales] Do not call onSale() when someone else's offer is selected
2022-04-04 11:29:32 +02:00
Mark Spanbroek
71f25d40c7
[market] offerStorage() returns submitted offer
2022-04-04 11:29:32 +02:00
Mark Spanbroek
94e34e7d28
[market] requestStorage() returns submitted request
2022-04-04 11:29:32 +02:00
Mark Spanbroek
2ffde32772
[sales] call onSale() when offer has been selected
2022-04-04 11:29:32 +02:00
Mark Spanbroek
71baedb5ec
[sales] Set offer expiry timestamp
2022-04-04 11:29:32 +02:00
Mark Spanbroek
76be728f61
[sales] Availability.new -> Availability.init
2022-04-04 11:29:32 +02:00
Mark Spanbroek
291c506e0b
[market] Fix timing of test for slow CI
2022-04-04 11:29:32 +02:00
Mark Spanbroek
dd89a55351
[market] Add Market.getTime()
2022-04-04 11:29:32 +02:00
Mark Spanbroek
061b32296a
Introduce Sales
2022-04-04 11:29:32 +02:00
Mark Spanbroek
75ec8c0bfd
[market] wait until request/offer expires
2022-04-04 10:03:46 +02:00
Mark Spanbroek
8ff748eff8
[market] select a storage offer
2022-04-04 10:03:46 +02:00
Mark Spanbroek
5ea64522d8
[market] subscribe to offers for a certain request
2022-04-04 10:03:46 +02:00
Mark Spanbroek
0cee79b1a2
Update nim-ethers
2022-04-04 10:03:46 +02:00
Mark Spanbroek
9f76e714a2
[market] submit storage offers
2022-04-04 10:03:46 +02:00
Mark Spanbroek
e52153e2ba
[market] Require a storage contract with a signer
2022-04-04 10:03:46 +02:00
Mark Spanbroek
e78a0fb43e
[contracts] Wrap contracts in Market abstraction
2022-04-04 10:03:46 +02:00
Mark Spanbroek
bd8f4d5d74
[tests] Extract common examples into separate module
2022-04-04 10:03:46 +02:00
Mark Spanbroek
5b5f3335d6
[purchasing] Ignore offers that are about to expire
2022-04-04 10:03:46 +02:00
Mark Spanbroek
dcfd6be1c6
[purchasing] Ignore expired offers
2022-04-04 10:03:46 +02:00
Mark Spanbroek
fe23cb89d7
[purchasing] Select cheapest offer
2022-04-04 10:03:46 +02:00
Mark Spanbroek
03140fdf49
[purchasing] Add state to track purchase progress
2022-04-04 10:03:46 +02:00
Mark Spanbroek
04c291b05c
[purchasing] rename requests -> requested
2022-04-04 10:03:46 +02:00
Mark Spanbroek
7c9c244836
[purchasing] Remove PurchaseRequest; use StorageRequest
2022-04-04 10:03:46 +02:00
Mark Spanbroek
9ade3fdd37
[contracts] StorageRequest/Offer is object instead of tuple
2022-04-04 10:03:46 +02:00
Mark Spanbroek
5f10549f19
Introduce Purchasing and Market
2022-04-04 10:03:46 +02:00
Mark Spanbroek
a3fdd35f73
[contracts] Split marketplace.nim into requests.nim and offers.nim
2022-04-04 10:03:46 +02:00
Michael Bradley
e92fbd4ad1
[ci] use matrix.branch to specify NIM_COMMIT make var of nimbus-build-system ( #65 )
...
See: https://github.com/status-im/nimbus-build-system#nim_commit
2022-04-01 10:22:10 -06:00
Michael Bradley
1e5b41a447
add github.com/status-im/nim-leopard to vendor ( #61 )
...
* [leopard] add github.com/status-im/nim-leopard to vendor
* [leopard] specify absolute path for nimcache dir
* [leopard] make adjustments to nim-dagger CI GHA workflow
2022-03-30 09:34:47 -06:00
Dmitriy Ryajov
43cea1743a
Node storestream ( #62 )
...
* use storestream for retrieval
* use `len` prop on manifest
* remove read pattern
* make blocksize and chunksize consistent
* fix tests
* fix chunker tests - now padded by default
2022-03-29 20:43:35 -06:00
Mark Spanbroek
03c8ceccf9
[contracts] Separate nimble task to run all tests
...
A simple "nimble test" won't require you to run a hardhat
node with the contracts, but a "nimble testAll" will.
2022-03-28 11:59:01 +02:00
Mark Spanbroek
28294d431a
[contracts] Tests now also work in Windows
2022-03-28 11:59:01 +02:00
Mark Spanbroek
b8e013e439
[contracts] Add Readme
2022-03-28 11:59:01 +02:00
Mark Spanbroek
4fd92b52eb
[contracts] Install NodeJS in CI environment
2022-03-28 11:59:01 +02:00