Commit Graph

658 Commits

Author SHA1 Message Date
kalloc f399fe00f4 fix: fix links to examples and waku v2 spec 2023-04-20 08:58:10 -04:00
Richard Ramos 68b615a87e feat: improve metrics for filter, lightpush, dns discovery and store protocols 2023-04-20 08:57:22 -04:00
Jakub Sokołowski 6550565afc
ci: adjust Docker Jenkinsfile for releases
Changes:

* Rename `BRANCH` to `GIT_REF` to indicate tags can be used.
* Default to `stable` for `IMAGE_TAG` on release builds.
* Use `GIT_REF` for specific Docker image tag instead of commit.
* Adjust some comments and descriptions.

Resolves:
https://github.com/waku-org/go-waku/issues/516

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-04-18 20:43:48 +02:00
Richard Ramos 2c3566377a refactor: inject host on node start 2023-04-17 11:09:05 -04:00
Richard Ramos fbd58df2e8 refactor: initialize broadcaster on Start 2023-04-17 10:19:08 -04:00
Richard Ramos c559932931 chore: update flags 2023-04-17 10:07:15 -04:00
Richard Ramos 0b01e4bb16 refactor: rename filter to legacy filter and set filterv2 as filter 2023-04-17 10:07:15 -04:00
Richard Ramos c3ef173b2c feat: handle chain forks 2023-04-17 10:02:09 -04:00
Richard Ramos 5de3d9f619 feat(rest): store 2023-04-17 10:01:32 -04:00
Richard Ramos bbb558e685 feat(c-bindings): list pubsub topics 2023-04-17 09:56:22 -04:00
Richard Ramos c690b6c050 feat: dos protected topic relay msgs based on meta field 2023-04-17 09:56:13 -04:00
Richard Ramos e74f60f173 feat: enable webstransport 2023-04-14 12:34:47 -04:00
Richard Ramos 8af789bb63 chore: automate cc-test-reporter install 2023-04-14 12:08:48 -04:00
Jakub Sokołowski fd5865b1dc
ci: fix GOPATH, PATH, disable GOCCHE
Using `$HOME/go` is bad and you should feel bad.
Also, adding `/usr/loca/go/bin` is a terrible idea.
And `GOCACHE` is poisoning stuff for linter.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-04-14 17:54:18 +02:00
Jakub Sokołowski 234c2b0400
nix: install golangci-lint in devel shell
This way we don't need to depend on `make deps`.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-04-14 15:28:42 +02:00
Richard Ramos 801ec92c11 refactor: loading credentials and chat2 2023-04-11 10:39:07 -04:00
Richard Ramos 42c0e123d9 refactor: credentials 2023-04-11 10:39:07 -04:00
Richard Ramos 04c90657cd refactor: dynamic rln 2023-04-11 10:39:07 -04:00
harsh-98 6747603a73 refactor: fetch membership events 2023-04-10 11:39:15 -04:00
Richard Ramos 41691a44e5 fix: remove message cache on relay and fix proof validation 2023-04-04 14:20:41 -04:00
Richard Ramos 9c5d1e88b1 refactor: proof generation and merkleroot tracking 2023-04-04 14:20:41 -04:00
Richard Ramos be09f3f550 refactor: static RLN relay 2023-04-04 14:20:41 -04:00
Richard Ramos 6796936f5e chore: upgrade RLN dep 2023-04-04 14:20:41 -04:00
Jakub Sokołowski 14a6f45be4
ci: use Nix dev shell from flake for CI builds
Provides a more predicable build environment for CI.

Depends on: https://github.com/status-im/status-jenkins-lib/pull/60

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-04-04 16:36:30 +02:00
harsh-98 70ddd48274 refactor: setting nodeKey via GOWAKU-NODEKEY env 2023-04-04 06:09:52 -04:00
Richard Ramos 3b3e3b6968 chore: use go 1.19 on CI 2023-04-03 10:43:01 -04:00
Richard Ramos e1276f65e4 chore: bump golangci-lint 2023-04-03 10:43:01 -04:00
Richard Ramos aa8f99ff72 chore: bump go-libp2p 2023-04-03 10:43:01 -04:00
Richard Ramos 98e14cf0f6
chore: add debug log to identify when peer is discovered 2023-03-31 08:44:01 -04:00
Richard Ramos 7c56ceb139 chore: remove swap protocol 2023-03-30 12:12:41 -04:00
Richard Ramos 56785d8aa7 fix: limit number of content topics per request and timeout message pushes 2023-03-30 12:10:04 -04:00
Richard Ramos dd9261c981 fix: simplify code by using mutex instead of channels 2023-03-30 12:00:19 -04:00
Richard Ramos c5faf8b9e9 fix: race condition deleting items from cache 2023-03-30 12:00:19 -04:00
Richard Ramos 144dfa5b7b feat: add WakuMessage validation in gossipsub
This also stores the waku message in a cache to avoid having to decode it twice
2023-03-30 12:00:19 -04:00
Richard Ramos 7b3f4aade7 chore: add coverage to gitignore 2023-03-30 09:03:04 -04:00
Richard Ramos ca20eb4a79 feat: connect to discovered peers 2023-03-29 08:59:36 -04:00
Richard Ramos 2b30726c14 feat: rendezvous client 2023-03-29 08:59:36 -04:00
Richard Ramos 21ad496d42 feat(c-bindings): seenTTL 2023-03-27 10:48:40 -04:00
Richard Ramos b540953f74 fix: bump go-libp2p-pubsub to stop memleak 2023-03-27 09:26:01 -04:00
RichΛrd 71d4ea317e
feat: 0.5.2 (#490) 2023-03-13 21:45:19 -04:00
RichΛrd 3c4a863cb7
feat(c-bindings): custom gossipsub params (#489) 2023-03-10 14:41:19 -04:00
RichΛrd 8826e2df66
feat: rendezvous server 2023-03-09 11:48:25 -04:00
Richard Ramos 63bb4509bf feat(filterv2): ping 2023-03-08 12:26:50 -04:00
Richard Ramos 4b52983fc4 fix: limit number of subscribers and criteria 2023-03-08 09:51:26 -04:00
Richard Ramos 45cc06a683
chore: downgrade go-ethereum to use same version as status-go 2023-03-08 09:15:39 -04:00
Richard Ramos aeddc7848a refactor: namespaced pubsub topics 2023-03-08 09:10:14 -04:00
Richard Ramos 3bba1a86f1 feat(message): added waku message deterministic hashing 2023-03-08 09:08:08 -04:00
Jakub Sokołowski 38de4938af
nix: fix nix run by setting mainProgram to waku
Otherwise it fails with:
```
 > nix run github:status-im/go-waku
error: unable to execute '/nix/store/xsmhw1yqz5w9bdgfsprxmhcycl7011wz-go-waku/bin/go-waku': No such file or directory

 > ls -l /nix/store/xsmhw1yqz5w9bdgfsprxmhcycl7011wz-go-waku/bin
total 37914
-r-xr-xr-x 1 root root 38775544 Jan  1  1970 waku
```

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-03-06 14:42:09 +01:00
Jakub Sokołowski 349e22bbe8
nix: add Nix flake to build node and library
This way we can build node or the library locally using:
```sh
nix build
nix build .#node
nix build .#library
```
Or just start a shell with Go `1.19.x` using:
```
nix develop
```
Which simply has the same environment as the build shell for the node.

One known snag is that there is currently no simple way to keep `vendorSha256`
updated to match the contents of `go.mod` and `go.sum`. For more details see:
https://discourse.nixos.org/t/how-should-i-build-a-go-package-from-local-source/19490/8

One way around this would be to have our own `vendor` folder, but that's
also a pretty ugly solution that requires manual updating.

Resolves:
https://github.com/waku-org/go-waku/issues/256

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-03-05 15:04:07 +01:00
Richard Ramos a19a3b5a79 feat: add meta field to WakuMessage 2023-03-04 13:27:36 -04:00