54 Commits

Author SHA1 Message Date
Ivan FB
96499cc735
feat: reliable channels bindings and vendor bump
Exposes the reliable-channel surface: channel_create / channel_send /
channel_close on WakuNodeHandle, backed by the logosdelivery_channel_*
FFI calls. Channel state is persisted, so re-creating a closed channel
resumes it rather than starting fresh, and send payloads travel
base64-encoded.

Adds the three channel lifecycle events (received / sent / error) to
WakuEvent, plus the messaging events (sent, error, propagated, received)
and connection status change, so callers can observe delivery rather
than only firing and hoping.

build.rs resolves the nimble package dirs and librln by scanning rather
than hardcoding, since their names carry versions and hashes that move
whenever nimble.lock does. It also checks make's exit status: a failed
build previously passed silently and the crate linked a stale library
from an earlier run.

Bumps the vendor submodule to master.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-16 00:44:30 +02:00
Darshan K
4ec20e2ebe
chore: upgrade to V0.36.0 (#123) 2025-11-13 00:12:21 +05:30
gabrielmer
57505a1c06
chore: update store json to camelCase (#117) 2025-04-11 14:26:07 +03:00
Ivan FB
1d95d05dd7
avoid closure to be dropped in release mode (#116) 2025-03-05 09:39:15 +01:00
Ivan FB
9c9900897e
Adapt for nwaku v0.35 (#114)
* build.rs: initialize submodules the first time cargo build is invoked in waku-sys
* messagehash.rs only contains a String as the hex representation of msg hash
* events.rs adapt test to parse message event containing msg-hash in hex string format
* bump nwaku to v0.35.0
* waku-sys/build.rs use STATIC=1 instead of STATIC=true
2025-02-12 10:06:16 +01:00
richΛrd
90577d1d58
feat: add discv5_bootstrap_nodes attribute to the config (#112) 2025-02-03 13:33:14 -04:00
Ivan FB
0c0b834aa0
Recover toy chat app powered by libwaku/nwaku (#105)
* bump nwaku to the current master branch ( commit: 625c8ee5 )
* make the waku crate to behave tokio-asynchronously
* use of store
* use of lightpush and filter
* add waku-bindings/src/general/messagehash.rs
* add waku-bindings/src/general/time.rs
* add waku-bindings/src/general/waku_decode.rs
* add WakuEvent management (WakuMessage, ConnectionChange, TopicHealthChange.)
* add waku-bindings/src/macros.rs
2025-01-10 15:19:31 +01:00
Ivan FB
fd7e73a7f0
Tic tac toe example (#104)
* update nwaku vendor to v0.33.1
* build.rs: add negentropy dependency and cmdCount cmdLine dependencies
* fix: call waku_setup when instantiating waku_new
* Properly decode a Vec<Multiaddr>
* First commit tic-tac-toe
* adding some simple game logic to coordinate the turns a little
* some logic to panic if a proper event callback hasn't been set
* restoring back the type state pattern introduced by Richard
* new PubsubTopic type
* fix clippy issues

---------

Co-authored-by: Richard Ramos <info@richardramos.me>
2024-11-28 10:35:41 +01:00
richΛrd
7a2e4d1d01
feat: RLN Relay (#101) 2024-04-01 15:15:50 -04:00
richΛrd
201a38a64e
feat: example app (#99) 2024-03-11 12:00:30 -04:00
richΛrd
69a48725ca
refactor: node handle constructor and messageHash on publish (#98)
* refactor: node handle constructor and messageId on publish
* refactor: add back typestate
* chore: rename messageId to messageHash
2024-03-01 11:31:00 -04:00
richΛrd
a10a5c2d22
refactor: use a enum for handling the responses, and don't ignore the return code (#97)
* refactor: handle return code and use an enum to handle responses
* fix: nwaku does not return an envelope hash on publish
2024-03-01 11:25:02 -04:00
richΛrd
646f6f0080
refactor: hide *mut c_void behind WakunodeContext (#96) 2024-02-26 11:13:30 -04:00
Richard Ramos
c434e9ebf5
refactor: remove getters 2024-02-22 10:57:02 -04:00
Richard Ramos
ac96b834a0
chore: use rust node address instead of fleet node in tests 2024-02-21 14:07:42 -04:00
Richard Ramos
79b8428bb5
feat: add listen addresses 2024-02-21 11:59:40 -04:00
Richard Ramos
9c696e6097
feat: expose waku_version 2024-02-20 16:06:03 -04:00
Richard Ramos
685a6aef0a
fix: event handler 2024-02-16 10:45:20 -04:00
Richard Ramos
1f9283a849
fix: event callback signature 2024-02-13 18:03:34 -04:00
Richard Ramos
5687e2585c
chore: make sure waku_new, waku_start and waku_stop work 2024-02-13 16:18:16 -04:00
Richard Ramos
1d8626b110
chore: remove code no longer needed (for now) 2024-02-12 20:13:49 -04:00
Richard Ramos
8755d9a7c8
refactor: remove unneeded functions and change some data types 2024-02-08 17:16:34 -04:00
Richard Ramos
9d73230c8a
chore: remove unneeded files (for now) 2024-02-08 17:15:49 -04:00
richΛrd
1ea96f80b2
feat: add dns discovery parameters (#85) 2024-02-06 13:38:51 -04:00
richΛrd
5aaafc7c20
fix: content topic should accept strings (#84) 2023-12-08 17:30:30 -04:00
richΛrd
dc32f22f4a
feat: add filterv2 functions (#75) 2023-11-07 15:50:35 -04:00
richΛrd
dc641645b9
refactor: use callbacks to interact with go-waku bindings and remove JsonResponse (#74) 2023-11-02 13:59:41 -04:00
richΛrd
190e1f6b09
fix: enable legacy filter (#78) 2023-10-04 08:45:49 -04:00
richΛrd
00bf354d43
fix: waku_peer_count conversion to usize (#76) 2023-10-01 15:40:33 -04:00
richΛrd
32bd05c6fc
feat: update go-waku version (#70)
- removes encoding functions from relay and lightpush
- adds `encode_symmetric` and `encode_asymmetric` to `WakuMessage`
- don't panic when unserializing json
2023-09-27 19:19:59 -04:00
Anton Iakimov
6b35fb7d62
update wakuv2 fleet DNS discovery enrtree
https://github.com/status-im/infra-misc/issues/171
2023-09-26 15:15:39 +02:00
richΛrd
a487f79179
feat: websockets support (#63) 2023-07-13 18:33:24 -04:00
RichΛrd
a4bfddece7
feat: update discv5 bootnodes (#62) 2023-06-12 09:46:13 -04:00
RichΛrd
ce9f71a592
Add new changes from go-waku (#58)
* feat: add ephemeral and meta fields
* feat: seenTTL
* feat: expose list of topics
2023-05-10 10:13:50 -04:00
gusto
54a80f83cc
Pass gossipsub params to go-waku node (#50)
* Pass gossipsub params to go-waku node

* Make gossipsub conf test run by default

* Use merge commit to master for go-waku

* Add tests for info logs
2023-03-13 10:51:15 +02:00
Daniel Sanchez
c4ea87d7e5
Beta 5 (#47)
* Missing decode calls

* Dangling double free on waku default pubsub topic

* Dangling double free on waku create pubsub topic

* Update deps
Fix update changes
Upgrade beta version

* Add extra info to dns discovery results

* Update vendor
2023-02-20 12:44:55 +01:00
Daniel Sanchez
3593ff18e6
Expose local archive query method (#44)
* Update vendor

* Expose local archive query
Update to beta4

* Update bindings package to beta4

* Update bindings package to beta4

* Make store response fields public

* Added store configuration

* Use decode response function
2023-02-15 10:57:39 +01:00
Daniel Sanchez
d1a467edcc
Free strings (#46)
* Free strings on discovery

* Free strings on filter

* Free strings on lightpush

* Added missing linking flags

* Free strings on management

* Fix management inner calls

* Free strings on peers

* Free strings on relay

* Free strings on store

* Free strings on decrypt

* Fix toychat example

* Fix tests

* Added decode_response method

* Use decode response

* Rename decode response util

* Use decode response in decrypt
2023-02-14 18:30:08 +01:00
gusto
4c71e135ab
Run clippy --fix for updated lint requirements (#43) 2023-01-27 01:06:21 -08:00
Daniel Sanchez
67e5aef69a
Beta3 (#42)
* Update waku to the latest main

* Update beta version

* Update deps

* Add relay topics config entry

* Update test config
2023-01-26 12:58:45 +01:00
Al Liu
6e93c4f2b6
Merge pull request #33 from waku-org/discv5
Fix #32: add discoveryV5 functions
2023-01-06 21:57:58 +13:00
Augustinas Bacvinka
b324908425 Run waku node related tests in sequence 2023-01-05 17:53:49 +02:00
Augustinas Bacvinka
333136a23f Use correct binding inside waku_stop method 2023-01-05 15:29:52 +02:00
al8n
f9b8c8eb43 remove discv5 apis 2023-01-05 22:53:30 +13:00
Petko Pavlovski
f70249b2cc
Derive missing copy clone and debug (#35) 2023-01-03 11:30:14 +01:00
al8n
464986791c fix lint 2022-12-22 04:42:36 +13:00
al8n
8089defcad try to fix discv5 test case 2022-12-22 04:40:06 +13:00
al8n
2171f6c69e add discv5 stuff in test 2022-12-22 01:57:05 +13:00
al8n
4dd59abf15 remove unused imports 2022-12-21 15:59:56 +13:00
al8n
7983add1ca embed discv5 functions to node initialized 2022-12-21 01:13:01 +13:00