Commit Graph

864 Commits

Author SHA1 Message Date
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
Richard Ramos 2d2fbc7e47
fix: do not use a var to hold hash 2023-03-04 11:55:42 -04:00
Richard Ramos b20bf3dccd fix: use pool for all sha256 hash operations 2023-03-02 12:00:54 -04:00
Richard Ramos df2cccec04 fix: use sync.Pool for msgId hasher 2023-03-02 11:10:31 -04:00
Richard Ramos 93e8b34c1a fix: deps 2023-03-01 20:28:35 -04:00
Richard Ramos 7bc000b61f fix: use url-safe base64 encoding for noise 2023-02-28 14:14:22 -04:00
Richard Ramos 6e2a0ffeb4 refactor(px): use request-response instead of dialing back 2023-02-28 14:11:50 -04:00
Richard Ramos cedaa670c7
fix: logLevel 2023-02-24 12:02:00 -04:00
Richard Ramos 65441f60e0
chore: bump go-libp2p-pubsub 2023-02-24 11:59:53 -04:00
Richard Ramos f41055778c fix: use stdbase64 encoding 2023-02-23 19:45:46 -04:00
RichΛrd 042521e00b
fix: set a max length for the multiaddr field (#474) 2023-02-23 19:43:04 -04:00
RichΛrd f4e6441fbe
feat: 0.5.1 (#467) 2023-02-20 17:53:02 -04:00
RichΛrd a1edf45fad
fix: protocolID must be a string in the mobile API (#466) 2023-02-20 17:50:36 -04:00
Richard Ramos 54005c8733 fix: run instructions in NOISE 2023-02-20 12:31:04 -04:00
Richard Ramos 7426ca5845 fix: noise example 2023-02-20 10:53:30 -04:00
Richard Ramos 08bd3a6304 fix(c-bindings): check if ENR is nil 2023-02-20 10:42:35 -04:00
Richard Ramos 4804588197 fix(c-bindings): relayTopics should trigger signal handler 2023-02-17 13:32:37 -04:00
Richard Ramos 20f310a815 feat: 0.5.0 2023-02-17 11:10:57 -04:00
RichΛrd f08d8f293b fix: always return peerID and addresses when marshalling DnsDiscoveryItem 2023-02-17 11:05:28 -04:00
Richard Ramos abcadd1bcf feat(c-bindings): expose enrs via dns discovery 2023-02-17 11:05:28 -04:00
Richard Ramos 2c9df85c51 refactor(c-bindings): store waku state in single variable 2023-02-17 11:05:28 -04:00
Richard Ramos 8b5e22002c fix: use base64url encoding 2023-02-17 11:03:59 -04:00
Richard Ramos 053f3f2540 fix: convert pb.WakuMessage to RPCWakuMessage so version is included in replies 2023-02-16 23:37:19 -04:00
Richard Ramos 9c75a3325d fix: invalid in-memory db URL 2023-02-16 23:05:15 -04:00
Richard Ramos 0c1abb8114 fix: rest tests 2023-02-16 16:40:51 -04:00
Richard Ramos 9731810b8d chore: use go-chi for rest server instead of archived gorilla/rpc
- RPC server is not modified since it's going to be deprecated
2023-02-16 16:05:58 -04:00
Richard Ramos f0eaa84aad chore: upgrade dependencies 2023-02-16 12:22:47 -04:00
Richard Ramos 156db781f6 chore: switch to Google's Protobuf library 2023-02-16 11:37:59 -04:00
Richard Ramos 335f7b6771 test: filterv2 2023-02-15 17:36:30 -04:00
Richard Ramos 600a8f1c8d chore: tests for subscribers and subscrtiption maps 2023-02-15 17:36:30 -04:00
Richard Ramos b816434843 fix: pubsub topic and content topics are always required when doing filter requests 2023-02-15 17:36:30 -04:00
Richard Ramos 52f7c8d86e feat: improvements on filter protocol (client) 2023-02-15 17:36:30 -04:00
Richard Ramos f255adffd9 feat: improvements on filter protocol (server) 2023-02-15 17:36:30 -04:00
Richard Ramos c3be19f922 fix: encode waku message payloads in base64 2023-02-14 08:27:41 -04:00
Richard Ramos 78520e9280
fix: invalid length of multiaddr field (but loaded succesfully anyway) 2023-02-13 09:33:41 -04:00
Richard Ramos 11161b8919 feat(c-bindings): expose store protocol 2023-02-12 11:01:25 -04:00
Richard Ramos eb9e727b1b feat: advertise custom multiaddresses
This replaces the flag `--advertise-address` with `--ext-multiaddr`
2023-02-12 11:01:11 -04:00
Richard Ramos 57d707ff50
fix: enr multiaddr field should contain at least 2 chars to be valid 2023-02-09 18:02:20 -04:00
Richard Ramos 50e0e803eb fix: concurrent write on relay rpc/rest 2023-02-09 12:05:36 -04:00
Richard Ramos 2f009cb69f fix: basic2 example 2023-02-09 12:05:19 -04:00
RichΛrd c55a979af4
fix: close channel after waiting for goroutines to stop (#444) 2023-02-09 09:03:05 -04:00
RichΛrd 1cebf21942
fix: empty bytes in enr multiaddress (#442) 2023-02-09 08:33:07 -04:00
Andrea Maria Piana 7508b08c74
fix: check listener not nil (#437) 2023-02-07 18:27:22 -04:00
Richard Ramos cce85913e6 fix: enr exceeds 300 bytes 2023-02-07 09:51:55 -04:00
Richard Ramos c3b5ab95ab fix: try to include as many multiaddr as possible without exceeding max enr size 2023-02-01 21:11:16 -04:00