* When adding the dependency with 'librln' to 'libwaku', it is required
to remove the dependency with 'confutils' because the 'nim-confutils'
module prevents the creation of a dynamic library (libwaku.so.)
* waku_example.c: less code is needed because the Waku Thread attends
any Waku event whereas the main thread can have a blocking scanf
to retrieve user inputs.
* 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
* Simplifying libwaku.nim by extracting config parser to config.nim
* Adding json_base_event.nim
* Starting to control-version the libwaku.h
We are creating this libwaku.h inspired by the one that is automatically
generated by the nim compiler when `make libwaku` is invoked. Therefore,
the self-generated header is then placed in:
nimcache/release/libwaku/libwaku.h
* Better waku_example.c organization
* libwaku.nim: better memory management
We need to create a 'cstring' internally from the 'const char*' passed
from outside the library.
We invoke 'allocShared' in order to create the internal 'cstring',
and invoke 'deallocShared' in order to manually free the memory.
* feat(cbindings): first commit - waku relay (#1632)
* test_app.nim: fix compilation issue. App.init(..) -> App.new(..)
* Simplifying library name (libwaku) and standardizing function names (waku_*)
* Proper wrapper of the waku_node API and creation of the libwaku.a
* Rolling back changes that are not needed
* Rolling back changes that are out of the scope of this task
* wakunode.nim: Removing unnecessary import
* Aplying PR suggestions
* Renaming 'waku.h' -> 'libwaku.h'
* Use of 'isNil' instead of '== nil'
* libwaku.nim: explicitly setting waku_poll() as gcsafe
* Adding Dockerfile_with_heaptrack
* build: merge heaptrack dockerfile with production dockerfile (#1682)
* Avoid blindly copy /usr/lib/ and install only the needed libraries
* Adding heaptracker options in the Makefile
* Dockerfile simplification. (apk add libunwind)
* Dockerfile, Makefile: ++heaptrack params to nim build & 'heaptrack_support' in Nim compiler
* Dockerfile, Makefile: more convenient name for 'NIM_COMMIT' Docker arg
* Making 'NIM_COMMIT' more explicit
---------
Co-authored-by: Lorenzo Delgado <lorenzo@status.im>
Instead of ugly:
```
statusteam/nim-waku:wakunode2v0.16.0-1-gb495dd
```
Create better looking:
```
statusteam/nim-waku:wakunode2-v0.16.0-1-gb495dd
```
Annoys me every time I use it.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
* feat(ci): run experimental features in diff ci
* chore(ci): add EXPERIMENTAL flag
* chore(makefile): make compilation cleaner
* fix(rln-relay): remove onchain_rln flag
* fix(makefile): remove experimental_rln flag
Co-authored-by: Lorenzo Delgado <lorenzo@status.im>
* chore: build rln dependecies only when building v2
* chore(rln): deprecate ganache-cli; move installation from makefile to test + uninstall; gracefully terminate ganache
* chore: add package.json to gitignore
* fix(rln): move ganache package to build folder and remove package once uninstalled
* refactor(rln): (un)install/run/stop ganache with separate procs
Co-authored-by: Lorenzo Delgado <lorenzo@status.im>
Co-authored-by: Aaryamann Challani <43716372+rymnc@users.noreply.github.com>
* chore(ci): add zerokit test
* fix(ci): typo
* fix(Makefile): RLN points to zerokit, RLNKILIC points to kilic impl
* fix(ci): remove zerokit test workflow now that zerokit is default
* fix(Makefile): zerokit in ci
* fix(Makefile): do not compile kilic by default
* test(nix): add llvm to nix shell
* test(nix): clang
* fix(nix): mkShell
* fix(nix): mkShell
* fix(nix): err
* fix(nix): add binutils to macos nix shell
* fix(nix): test with musl-tools
* fix(nix): remove musl-tools
* fix(nix): add Security module
* fix(nix): gcc for linux, clang for macos
* test(Makefile): set CC to env
* Revert "test(Makefile): set CC to env"
This reverts commit fdab95f2cd0bdef916744d793ebf7005dd1d4396.
* test(nimbus-build-system): bad gcc
* fix(nix): remove optional for linux
* Revert "test(nimbus-build-system): bad gcc"
This reverts commit c6b81f8132.
* fix(nix): semicolon
Co-authored-by: G <28568419+s1fr0@users.noreply.github.com>
This is necessary for Nix builds because the sandbox there
does not contain `.git` directory or `git` command.
Also the quotes are pointless.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
NIM_PARAMS is and internal variable.
NIMFLAGS should be used outside of nimbus build system.
includes:
* fix(docker): copy RLN parameters.key into the container
* chore(makefile): NIMFLAGS in docker img rule
* chore(rln): add cleanrln to make rule
- add `cargo clean` to `make clean`
- add new `cleanrln` make rule that `cargo clean`s the rln vendor repo
* docs(rln): add trouble shooting section
- list `make cleanrln` as a solution to force rebuilding the rln crate