Danish Arora
4cf2ffefa7
feat!: add support for sharded pubsub topics & remove support for named pubsub topics ( #1697 )
...
* merge branches
* tests: use a generator for sharded pubsub topics
* fix namespace edge case
* move shardInfo to pubsubTopic logic in waku.ts
* simplify encoder/decoder creation logic + update tests
* sharding utils: add error handling
* remove redundant test util
* baseprotocol: create abstraction for initialising pubsub topics
* fix: `createDecoder` interface
* filter: createSubscription takes shardInfo instead of pubsubTopicStr
* fix: sharding utils for error handling
* SingleShardInfo: use a new interface instead of omitting and rename namespace
* change redundant namespaces
2023-11-28 15:57:18 +05:30
Sasha
7eb3375f50
feat!: export crypto primitives ( #1728 )
...
* export crypto primitives
* export crypto
* update imports
* fix size limit
* rename crypto.js
* move Signature type
* fix path
* fix: size-limit (#1734 )
* fix paths, revert change to config
---------
Co-authored-by: Danish Arora <35004822+danisharora099@users.noreply.github.com>
2023-11-28 01:02:12 +01:00
Danish Arora
3166a5135e
chore!: change all instances of PubSubTopic to PubsubTopic ( #1703 )
...
* rename all PubSub patterns
* feat: forbid identifiers with camelcase pubSub (#1709 )
---------
Co-authored-by: Arseniy Klempner <adklempner@gmail.com>
2023-11-14 18:52:52 +03:00
Danish Arora
0f7d63ef93
feat: Logger with log levels ( #1672 )
...
* setup a custom Logger with log level support
* refactor codebase for to use new Logger with log levels
* disallow usage of `debug` directly / only allow usage in/through custom Logger
* remove `debug` from logger
2023-10-20 16:36:47 +05:30
Danish Arora
9fe04d85f3
chore: use pubsubTopic/pubsubTopics across the codebase ( #1653 )
...
* chore: change all references of pubSubTopic to pubsubTopic
* change references of pubSubTopics to pubsubTopics
* flag words in cspell
2023-10-16 12:52:32 +05:30
Danish Arora
a3c45b6e1a
feat(static-sharding)!: allow multiple pubSubTopics ( #1586 )
...
* `ProtocolCreateOptions` now has `pubSubTopic` as `pubSubTopic[]`
* chore: update encoder & decoder to support `PubSubTopic`
* feat(protocols): allow multiple `PubSubTopic[]`
* feat(relay): allow multiple `PubSubTopic[]`
* chore(tests): update for new API
* chore: minor fixes
* chore: make store more robust
* fix(relay): correctly set types
* chore(address comments): update terminology around configured pubsub topics
* chore(address comments): minor refactoring
* chore(relay): split `subscribe` into smaller functions for readability & modularity
* chore(address comments): refactor `waitForGossipSubPeerInMesh`
* chore(store): only allow to query one `pubSubTopic`
* fix: `store` bug
* feat(tests): add some basic tests
* sharding utils
* address comments
* feat(relay): re-add API for `getMeshPeers`
* update error message
Co-authored-by: fryorcraken <110212804+fryorcraken@users.noreply.github.com>
* refactor for new API
* feat: simplify handling of observers (#1614 )
* refactor: simplify handling of observers
* refactor: Remove redundant PubSubTopic from Observer
* use `??` instead of `||`
* update `pubsubTopic` to `pubSubTopic`
* update `interval` typo
* change occurence of `pubsubTopic` to `pubSubTopic`
* relay: rm `getAllMeshPeers` and make `pubSubTopics` public
* relay: use `push_or_init_map` and move to `utils`
* fix: update API for tests
* fix: relay waitForRemotePeer
---------
Co-authored-by: fryorcraken <110212804+fryorcraken@users.noreply.github.com>
2023-09-27 15:28:07 +05:30
Sasha
020463c358
chore: update typescript ( #1528 )
...
* update typescript, define in root package.json
* update typedoc and fix typedoc comments
* update dev version of tsconfig
* set module and resolution for tsconfig dev
* bump ts plugins
* set order of typedoc generation
* turn off warnings as errors setting
2023-09-21 10:57:37 +02:00
Danish Arora
87717981eb
chore: upgrade libp2p and related deps ( #1482 )
...
* chore: update noise
* update: package.lock
* update: @chainsafe/libp2p-gossipsub
* rm unwanted libp2p interface deps & bump up libp2p
* refactor code for new deps
* update: new package.lock
* setup prettier, refactor eslint and rm trailing commas
* update package.lock
* fix build
* import type for interface
* fix imports for merge
* update typedoc exports
* add: CustomEvent import
* use new libp2p interface
* add aegir as dev dep for tests
2023-08-16 20:18:13 +05:30
Sasha
51f9261a16
chore: update dependencies ( #1460 )
...
* update to latest prettier
* fix with prettier: added trailing comma
* remove deps from test package, add sinon types, fix type hack in a test, update esling prettier config
* update typescript eslint plugins
* update package-locks
2023-08-11 15:14:02 +02:00
Danish Arora
376bcf2a0a
chore: new eslint rules ( #1416 )
...
* add new eslint rules
* remove eslint scripts for build-utils
* refactor all files to fix breaking changes with new rules
* add a basic eslintrc for build-utils
* test
* fix more linting errors
* test
* update package.lock
* update stopping container
* update px node spec
* enable tests
* fix: conn manager events
* fix: peer exchange
* increase timeout on px test
2023-07-24 16:04:24 +05:30
fryorcraken.eth
bd9d07394f
feat: ensure content topic is defined
...
Waku Messages are considered invalid if the content topic is undefined
or an empty string.
Avoid user error by throwing.
2023-04-04 14:56:59 +10:00
fryorcraken.eth
bd983ea48e
feat!: enable encoding of meta field
2023-03-14 11:21:09 +11:00
fryorcraken.eth
628ac50d71
feat!: expose pubsub topic in IDecodedMessage
...
Needed for deterministic message hash.
Ref: #1208
2023-03-13 13:49:24 +11:00
fryorcraken.eth
da1b18d995
feat: export Decoder, Encoder and DecodedMessage types from root
...
Fixes #1010
2023-03-08 09:52:27 +11:00
fryorcraken.eth
5cf8ed2030
chore!: update message.proto: payload and content topic are always defined
...
Ref: https://github.com/vacp2p/waku
2023-02-27 14:00:33 +11:00
Danish Arora
3b4bc8b25b
chore: update changelog & minor improvements ( #1153 )
...
* address comments from https://github.com/waku-org/js-waku/pull/1145
* fix: typedoc
* address comments in https://github.com/waku-org/js-waku/pull/1146#pullrequestreview-1286307508
- update changelog
- change naming for `EciesEncoderOptions` and
`SymmetricEncoderOptions`
2023-02-09 13:15:23 +05:30
Danish Arora
8910a6d76a
chore: move args for createEncoder into non-repeating options & fix typedoc ( #1146 )
...
* move args for `createEncoder` into non-repeating `options` & fix typedoc
* update tests with new API
2023-02-02 11:37:28 +05:30
fryorcraken.eth
bff9b857ec
fix: export Encoder and Decoder types
...
Enables API consumer to use the types.
2022-12-20 16:11:41 +11:00
fryorcraken.eth
75c8e2be8d
fix: incorrect proto import
2022-12-19 16:27:26 +11:00
fryorcraken.eth
574f3ee80f
refactor: remove waku_ from module names
...
This is redundant with the context (waku package).
2022-12-12 22:36:13 +11:00
fryorcraken.eth
cc691e26ce
feat: added I prefix to message/codec interfaces
...
To make it easier to differentiate with their implementations.
2022-12-12 22:13:46 +11:00
fryorcraken.eth
80d7215e15
doc: createEncoder and createDecoder
2022-12-05 16:05:20 +11:00
fryorcraken.eth
a4ddb45af1
chore: do not use Partial when not needed
2022-12-05 15:14:51 +11:00
fryorcraken.eth
f7fabec8b3
feat: easy import by having an export map for each type of encryption
2022-12-05 15:14:17 +11:00
fryorcraken.eth
563b66eab5
refactor: separate symmetric and asymmetric encoders
2022-12-05 09:34:17 +11:00
fryorcraken.eth
e65e0a0a80
refactor: move module that define cryptographic operations to crypto/
...
This is to prepare the split of encoder/decoder/message definition
from index.ts.
2022-12-05 09:34:17 +11:00
fryorcraken.eth
e6efd0438c
chore: make message-encryption compile
2022-11-04 11:38:32 +11:00