Per review on #3916: the previous commit only patched the test
job's "Run tests" step. The build job (make V=1 all) and the
ci-daily.yml workflow run on the same heterogeneous runner pool
and compile secp256k1 the same way, so they hit the same asm
register-pressure failure intermittently.
Lift NIM_PARAMS to the workflow-level env: block in ci.yml so
both jobs inherit it, and drop the now-redundant per-step
export. Mirror the change in ci-daily.yml.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
The Makefile feeds nimble via the exported NIM_PARAMS variable
(see Makefile lines 115-152). NIMFLAGS alone is not propagated
to nim invocations like 'nimble testcommon', so the previous
commit had no effect on the make-driven test path. Setting
NIM_PARAMS ensures the flag reaches the nim compile line.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
GitHub-hosted runners pick up host-specific CPU features via
'-march=native', which combined with '-Og -O3' (emitted when
--debugger:native and --opt:speed are both active) exhausts the
register constraints in secp256k1's scalar_4x64_impl.h inline
assembly and breaks the build with "asm operand has impossible
constraints".
Using the existing 'disableMarchNative' escape hatch in
config.nims falls back to '-mssse3' (or '-march=x86-64-v2' with
'-d:marchOptimized'), which keeps register allocation
predictable across the heterogeneous runner pool.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
* Bump commit for vendor wakurlnv2contract
* Update RLN registration proc for contract updates
* add option to runAnvil for state dump or load with optional contract deployment on setup
* Code clean up
* Upodate rln relay tests to use cached anvil state
* Minor updates to utils and new test for anvil state dump
* stopAnvil needs to wait for graceful shutdown
* configure runAnvil to use load state in other tests
* reduce ci timeout
* Allow for RunAnvil load state file to be compressed
* Fix linting
* Change return type of sendMintCall to Futre[void]
* Update naming of ci path for interop tests
* avoid compile TRACE level to reduce libwaku size
* waku_rln_relay/constants.nim: avoid adding constant seq that is used in tests only
* ci:yml USE_LIBBACKTRACE=0 to force -d:debug when running tests
* undo apt install libpcre (not circuit-relay related.)
* nat.nim: protect against possible exceptions when calling getExternalIP
* new external CLI argument, isRelayClient
* waku factory change to mount circuit hop proto by default
* waku_node: move autonat_service to a separate module
* Prevent multiple nat module initialization that cause dead lock in nat refresh thread tear down during tests.
* NPROC to 1 to avoid parallel test runs can lead to timing and port allocation issues
Co-authored-by: gabrielmer <101006718+gabrielmer@users.noreply.github.com>
* ci.yml: avoid calling brew link libpq --force on macos
PRs started to fail due to that but we are not actually running
postgres tests on MacOS
* fix: remove brew linking for test job
* fix: conditional compilation for macos
* fix: remove autoformatted details
---------
Co-authored-by: rymnc <43716372+rymnc@users.noreply.github.com>
* chore(rln-relay-v2): additional testing
* fix: bump librln to v0.4.2 for v2
* fix: catch possible error from the copyFrom
* ci: rename step title for rln-version
* postgres: first step to implement partition management
* postgres_driver: use of times.now().toTime().toUnix() instead of Moment.now()
* postgres migrations: set new version to 2
* test_driver_postgres: use of assert instead of require and avoid using times.now()
* postgres_driver: better implementation of the reset method with partitions
* Remove createMessageTable, init, and deleteMessageTable procs
* postgres: ensure we use the version 15.4 in tests
* postgres_driver.nim: enhance debug logs partition addition
* ci.yml: ensure logs are printed without colors
* postgres_driver: starting the loop factory in an asynchronous task
* postgres_driver: log partition name and size when removing a partition
* libwaku.nim: unsubscribe -> unsubscribeAll to make it build properly
We introduced a change in the next PR
https://github.com/waku-org/nwaku/pull/1983/
that made the `libwaku` to stop building properly
(make libwaku) because a signature change in the
`unsubscribe` proc of waku/waku_relay/protocol.nim.
This commit is a temporary workaround to make it work,
and not block any ongoing PR tests,
although not exactly as it is expected because we are
unsubscribing from all topics.
* ci.yml: adds library/** to force tests when changes under that folder
* removing implicit dependency with libpq if postgres is not being used.
* We only run the postgres tests when explicitly willing to, i.e. make
POSTGRES=1 test. The reason is that the postgres tests expect a
database instance to be running locally.
* chore: remove v1 code
* chore: deprecate support for v1 compatibility from JSON-RPC API
* chore: remove v1 tests from JSON-RPC suite
* chore: remove wakubridge code
* chore: remove v1 compatibility functions
* chore: remove support for v1 payloads from chat2 app
* chore: remove v1 from CI processes
* fix: lingering references to private API functions
* fix: remove v1 compat from chat2
* fix: some more lingering references in tests
* Refactoring the Waku Archive. Simplifying the app.nim
This change is needed to accommodate the further PRs where we will integrate Postgres in `wakunode2`.