Proto commits in ChainSafe/js-libp2p-gossipsub

These 13 commits are when the Protocol Buffers files have changed:

Commit:5481add
Author:Cayman
Committer:GitHub

feat: gossipsub 1.2: IDONTWANT (#498) * feat: gossipsub 1.2: IDONTWANT * chore: add unit test * chore: remove packageManager from package.json * chore: add idontwants cacheSize metric * chore: fix lint error * chore: make test less flaky * chore: fix comment

The documentation is generated from this commit.

Commit:18955dc
Author:tuyennhv
Committer:GitHub

feat!: switch back to protons (#468) * feat: protons 7.2.1 protons-runtime 5.1.0 * fix: remove protobufjs dependency * chore: bechmark messages at different lengths * fix: rebase errors and lint * chore: fix decodeControlGraft() type * chore: protons 7.2.1 and protons-runtime 5.1.0 * chore: rebase against master * feat: limit rpc fields using protons api * chore: remove unused code

Commit:2bc42ef
Author:Tuyen Nguyen

More debug for gossipsub, add dist

Commit:57ab517
Author:chad
Committer:chad

DO NOT MERGE FOR TESTING ONLY

Commit:9d83c53
Author:Cayman
Committer:Cayman

Add vanilla js source for npm install from github

Commit:bc29df3
Author:Cayman
Committer:Cayman

Add dandelion++

Commit:6bf0693
Author:Cayman
Committer:GitHub

chore: move ts/ to src/ (#250)

Commit:6785f17
Author:achingbrain

fix: update to esm libp2p and deps - Updates all deps to `@libp2p/*` versions - Updates config to output ESM - Makes the `GossipSub` class implement the `PubSub` interface so it can be used with `libp2p@next` - Removes the `libp2p` constructor arg as the components are injected by `libp2p` at runtime - Swaps protobufjs for protons BREAKING CHANGE: the output of this module is now ESM-only

Commit:baf84f8
Author:Lion - dapplion
Committer:GitHub

Add metrics and revamp logic (#206) * Add metrics and revamp logic Declare prometheus metrics in gossipsub Add missing metric labels Fix metrics types Add onReportValidation * Compile tests * Fix tests * Customize await policy * Run prettier on files * Relax heartbeat test condition * Re-add util package for browser testing * Remove unused dependencies * Add getMeshPeers * Fix rpc metric name * Improve metrics * More gossip promise metrics * Fix metrics typo * Clarify metrics names * Track metric of score deltas * Fix score metrics * Add buckets for gossipsub_score_cache_delta * Review PeerScore logic * Dump peer stats * Fix PeerStats constructor * Enable strict typescript checks * Fix compute-score logic * f * Fix peer stats types * Reenable go-gossipsub tests (#201) * Add checkReceivedSubscriptions * Add checkReceivedSubscriptions to 'test gossipsub multihops' * Add checkReceivedSubscriptions to 'test gossipsub tree topology' * test gossipsub star topology with signed peer records * Fix 'test gossipsub direct peers' * Fix 'test gossipsub flood publish' * Fix 'test gossipsub star topology with signed peer records' * 'direct peers' test: wait for subscriptions event again * 'direct peer': await for 2 peer:connect events * 'direct peers': add missing Promise.all * Expect topic peers to contain peer id * Fix test types * Set as connected in addPeer() * Prune publishedMessageIds * Fix markFirstMessageDelivery typo * Same logic in scoreMetrics * More metrics for p3 and p7 (#213) * Add behaviourPenalty metrics * Add duplicateMsgDelivery metric * Observe topic and peer in duplicateMsgDelivery topic * Remove peerId from duplicateMsgDelivery metric * Use min meshMessageDeliveriesWindow * Use topic label for duplicateMsgDelivery metric * Record duplicateMsgDelivery in all cases * Forward messages to floodsub peers (#214) * Forward messages to floodsub peers * Add comments Co-authored-by: Lion - dapplion <35266934+dapplion@users.noreply.github.com> * Add missing msgId in validateReceivedMessage (#215) * Fix 'test gossipsub opportunistic grafting' * Fix tests in browser * Fix tests suspended issue in browsers * Fix 'test gossipsub fanout expiry' go-gossipsub test * GossipsubIWantFollowupTime as a param (#216) * Increase resolution of delay metrics (#217) * Fix minMeshMessageDeliveriesWindow (#218) * Fix minMeshMessageDeliveriesWindow * Fix gossipsubIWantFollowupTime for metric * Fix tracer prune() * Change to maxMeshMessageDeliveriesWindow * Use maxMeshMessageDeliveriesWindowSec for metric * Rename gossipsubIWantFollowupMs option, revert/correct tracer.prune() logic * Reset behaviourPenalty histogram to track current count * publish(): return number of sent peers * Add getScore() * makePrune: update PeerStat so that we don't apply p3 penalty * Remove redundant this.score.prune() in heartbeat * Track iasked cache size per heartbeat and remove TODOs * validateReceivedMessage: check duplicate message first (#223) Co-authored-by: tuyennhv <vutuyen2636@gmail.com>

Commit:4e4f324
Author:dapplion

Exactly one topic

Commit:41232f5
Author:Vasco Santos
Committer:GitHub

chore: update deps and remove protons (#153)

Commit:4078505
Author:chainsafe

remove node_modules

This commit does not contain any .proto files.

Commit:4cf5010
Author:Mikerah

Added project structure and made changes to package.json