769 Commits

Author SHA1 Message Date
Eric
367cf6a0bf
formatting 2025-01-22 19:38:30 +11:00
Eric
77e6d23f0e
CI: do not start hardhat for integration tests 2025-01-22 19:23:21 +11:00
Eric
e3b021e44f
automatically enable chronicles logs for the test harness when DEBUG_TESTHARNESS=1 2025-01-22 19:23:08 +11:00
Eric
53ca896bfc
format info blurbs 2025-01-22 19:22:36 +11:00
Eric
efd960fc7e
allow test parameters to be set from make testIntegration command 2025-01-22 17:55:31 +11:00
Eric
2faf617538
DIsable continuous updates by default (for CI) 2025-01-22 16:28:38 +11:00
Eric
d116878f17
fix rebase, formatting 2025-01-22 16:25:52 +11:00
Eric
ce5c146758
fix rebase 2025-01-22 16:06:43 +11:00
Eric
111fd90498
Use absolute path for binary when checking for existence 2025-01-22 15:46:55 +11:00
Eric
5b491b3705
fail early with message when hardhat binary not found
# Conflicts:
#	tests/integration/hardhatprocess.nim
2025-01-22 15:46:55 +11:00
Eric
4790b54fd2
remove unneeded sleep 2025-01-22 15:46:55 +11:00
Eric
4b62a0baf2
make onoutputline callback gcsafe 2025-01-22 15:46:55 +11:00
Eric
33340bd430
increase port distance per test run 2025-01-22 15:46:55 +11:00
Eric
f3554e7c41
add constructor param for continuous status update in terminal
# Conflicts:
#	tests/testIntegration.nim
2025-01-22 15:46:54 +11:00
Eric
fea4acbb89
fix nodeprocess not exiting 2025-01-22 15:46:54 +11:00
Eric
aebe655575
ensure timeouts work
Work around the AsyncProcess timeout not working correctly
2025-01-22 15:46:54 +11:00
Eric
f49a55e724
continually show test status updates
allows user to know which tests are still running
2025-01-22 15:46:54 +11:00
Eric
bfbb22b7b5
cleanup
# Conflicts:
#	tests/testIntegration.nim
2025-01-22 15:46:54 +11:00
Eric
3846ae08a0
lock hardhat start to avoid intermittent start failures 2025-01-22 15:46:54 +11:00
Eric
b5dcf8cea2
clean up 2025-01-22 15:46:53 +11:00
Eric
efcbcc7237
print hardhat testmanager errors and hardhat stdout when there is an error starting hardhat 2025-01-22 15:46:53 +11:00
Eric
84fb99189e
hang manager off IntegrationTest, cleanup
- add a TestManager property to IntegrationTest, so manager does not need to be passed into all functions
- cleanup:
  - remove unneeded stopHardhat function
  - add hardhat instance to manager outside of startHardhat
2025-01-22 15:46:53 +11:00
Eric
db7f19fba9
pass hardhat port to ethersuite
# Conflicts:
#	tests/ethertest.nim
2025-01-22 15:46:53 +11:00
Eric
235e960de4
reinstate removed types 2025-01-22 15:46:53 +11:00
Eric
513ff1f1c6
Add additional logging info print outs
# Conflicts:
#	tests/integration/testcli.nim
2025-01-22 15:46:52 +11:00
Eric
85db97d707
expect process exit code
prevents showing error in the logs when an expected process exit code is encountered

# Conflicts:
#	tests/integration/testcli.nim
2025-01-22 15:46:52 +11:00
Eric
05c002c973
stop hardhat and show logs
# Conflicts:
#	tests/integration/hardhatprocess.nim
2025-01-22 15:46:52 +11:00
Eric
95021aaa71
default test name to the filename of the integration test
# Conflicts:
#	tests/testIntegration.nim
2025-01-22 15:46:52 +11:00
Eric
2c31818f39
print start/finish stderr/stdout markers
# Conflicts:
#	tests/testIntegration.nim
2025-01-22 15:46:52 +11:00
Eric
9407c487ff
clean up 2025-01-22 15:46:51 +11:00
Eric
b959334f9d
stdout formatting for test results
# Conflicts:
#	tests/testIntegration.nim
2025-01-22 15:46:51 +11:00
Eric
d5e3d57b5a
prevent errors during node shutdown 2025-01-22 15:46:51 +11:00
Eric
82e0d81d61
test summary formatting 2025-01-22 15:46:51 +11:00
Eric
3212c3cf30
parallel tests running
- need to test with longer tests to ensure the parallelisation is truly happening
- is the +10 hardhat port needed?
- try with more integration tests

# Conflicts:
#	tests/integration/hardhatprocess.nim
#	tests/integration/multinodes.nim
#	tests/integration/testcli.nim
#	tests/testIntegration.nim
2025-01-22 15:46:51 +11:00
Eric
9c3c2dd82f
fix(build): compilation on macos when including nim-nat-traversal
- removes the `VERSION` rename to `VERSION_temp` in the Makefile
- instead, relies on `-iqoute` to include the `nim-nat-traversal/vendor/libnatpmp-upstream` directory in the search paths. `-iquote` will match the `vendor/libnatpmp-upstream/VERSION` file for `#include "version"` and not `#include <version>`, the latter being what is included by the macos sdk and was causing issues with `-I`. The [gcc 14.2 docs](https://gcc.gnu.org/onlinedocs/gcc-14.2.0/cpp/Invocation.html#index-I) describe how `-iquote` alleviates this issue:
> Directories specified with -iquote apply only to the quote form of the directive, #include "file". Directories specified with -I, -isystem, or -idirafter apply to lookup for both the #include "file" and #include <file> directives.

For more info, please see https://github.com/status-im/nim-nat-traversal/pull/34.
2025-01-22 14:39:46 +11:00
Adam Uhlíř
e5df8c50d3
style: nph formatting (#1067)
* style: nph setup

* chore: formates codex/ and tests/ folder with nph 0.6.1
2025-01-21 20:54:46 +00:00
markoburcul
d114e6e942 nix: build nim compiler
Using nimbus build system since the codex now uses version of Nim >2.
Tested with nim versions(>2) in nixpkgs but none of them work thus the
removal of USE_SYSTEM_NIM and its logic.
Signed-off-by: markoburcul <marko@status.im>
2025-01-21 16:45:33 +01:00
markoburcul
893f6d02ab jenkins: create initial pipeline
Referenced issue: https://github.com/codex-storage/nim-codex/issues/940

Signed-off-by: markoburcul <marko@status.im>
2025-01-21 16:45:33 +01:00
Arnaud
389ab59aa7
Use custom error message (#1079) 2025-01-20 16:04:50 +00:00
Giuliano Mega
ac12de37b2
chore: delete leftover code from old threaded erasure coding backend (#1080) 2025-01-20 14:50:33 +00:00
Slava
833e253baa
feat: switch to github arm runners (#1077)
* feat: switch to github arm runners

* chore: fabiocaccamo/create-matrix-action
2025-01-20 14:42:01 +00:00
Arnaud
2ad7c31c85
Remove duplicate header (#971)
Co-authored-by: Giuliano Mega <giuliano.mega@gmail.com>
2025-01-16 13:51:07 +00:00
Arnaud
4606726e27
Add default Content-Disposition header for download (#981) 2025-01-16 13:25:26 +00:00
Adam Uhlíř
68ad804f9e
refactor: marketplace custom errors handling (#1061)
* refactor: marketplace custom errors handling

* chore: update contracts repo

* chore: update contracts submodule
2025-01-16 09:34:44 +00:00
Marko Burčul
39e8e6e6fa
nix: update readme (#1064)
Include the instructions for running nim-codex as a systemd service on
NixOS.

Signed-off-by: markoburcul <marko@status.im>
2025-01-14 08:21:11 +00:00
markoburcul
0cffa02748
nix: add codex service definition
Referenced issue: https://github.com/codex-storage/nim-codex/issues/940

Signed-off-by: markoburcul <marko@status.im>
2025-01-10 17:49:20 +01:00
markoburcul
3dc7224330
nix: update nix packages and dependencies in flake
Signed-off-by: markoburcul <marko@status.im>
2025-01-10 17:49:18 +01:00
Arnaud
f25c555d59
Chore/update nim version (#1052)
* Move to version 2.0.6

* Update nim-confutils submodule to latest version

* Update dependencies

* Update Nim version to 2.0.12

* Add gcsafe pragma

* Add missing import

* Update specific conf for Nim 2.x

* Fix method signatures

* Revert erasure coding attempt to fix bug

* More gcsafe pragma

* Duplicate code from libp2p because it is not exported anymore

* Fix camelcase function names

* Use alreadySeen because need is not a bool anymore

* newLPStreamReadError does not exist anymore so use another error

* Replace ValidIpAddress by IpAddress

* Add gcsafe pragma

* Restore maintenance parameter deleted by mistake when removing esasure coding fix attempt code

* Update method signatures

* Copy LPStreamReadError code from libp2p which was removed

* Fix camel case

* Fix enums in tests

* Fix camel case

* Extract node components to a variable to make Nim 2 happy

* Update the tests using ValidIpAddress to IpAddress

* Fix cast for value which is already an option

* Set nim version to 2.0.x for CI

* Set nim version to 2.0.x for CI

* Move to miniupnp version 2.2.4 to avoid symlink error

* Set core.symlinks to false for Windows for miniupnp >= 2.2.5 support

* Update to Nim 2.0.14

* Update CI nim versions to 2.0.14

* Try with GCC 14

* Replace apt-fast by apt-get

* Update ubuntu runner to latest

* Use Ubuntu 20.04 for coverage

* Disable CI cache for coverage

* Add coverage property description

* Remove commented test

* Check the node value of seen instead of using alreadySeen

* Fix the merge. The taskpool work was reverted.

* Update nim-ethers submodule

* Remove deprecated ValidIpAddress. Fix missing case and imports.

* Fix a weird issue where nim-confutils cannot find NatAny

* Fix tests and remove useless static keyword
2025-01-10 14:12:37 +00:00
Ben Bierens
caed3c07a3
Fix sending of WantBlocks messages and tracking of peerWants (#1019)
* sends wantBlock to peers with block. wantHave to everyone else

* Cleanup cheapestPeer. Fixes test for peers lists

* Fixes issue where peerWants are only stored for type wantBlock.

* Review comments by Dmitriy

* consistent logging of addresses

* prevents duplicate scheduling. Fixes cancellation

* fast

* Marks cancel-presence situation with todo comment.

* fixtest: testsales enable logging

* Review by Dmitriy: Remember peerWants only if we don't have them.

* rework `wantListHandler` handling

---------

Co-authored-by: Dmitriy Ryajov <dryajov@gmail.com>
2025-01-09 22:44:02 +00:00
munna0908
74c46b3651
network: support for uPnP and PMP nat traversal (#1050)
* add support for uPnP and PMP nat traversal

* update cli flags

* merge with master

* use listener address from switch

* update build script to rename version file

* fix styling issues

* update docker files

- remove Disc_ip env
- update CODE_NAT parsing logic

* code cleanup

* move nat flag parsing logic to conf.nim
2025-01-09 18:11:22 +00:00