diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 290ad02837..0bc3b42de8 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -6,3 +6,6 @@ updates: interval: daily time: "10:00" open-pull-requests-limit: 10 + commit-message: + prefix: "deps" + prefix-development: "deps(dev)" diff --git a/.gitignore b/.gitignore index db79d1f189..910f6339ea 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,8 @@ node_modules -coverage -.nyc_output +build +dist +.docs +.coverage +node_modules package-lock.json yarn.lock -docs -dist diff --git a/README.md b/README.md index 227cd11ae6..a70858d081 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,18 @@ # @libp2p/peer-collections [![libp2p.io](https://img.shields.io/badge/project-libp2p-yellow.svg?style=flat-square)](http://libp2p.io/) -[![IRC](https://img.shields.io/badge/freenode-%23libp2p-yellow.svg?style=flat-square)](http://webchat.freenode.net/?channels=%23libp2p) [![Discuss](https://img.shields.io/discourse/https/discuss.libp2p.io/posts.svg?style=flat-square)](https://discuss.libp2p.io) [![codecov](https://img.shields.io/codecov/c/github/libp2p/js-libp2p-peer-collections.svg?style=flat-square)](https://codecov.io/gh/libp2p/js-libp2p-peer-collections) -[![CI](https://img.shields.io/github/workflow/status/libp2p/js-libp2p-interfaces/test%20&%20maybe%20release/master?style=flat-square)](https://github.com/libp2p/js-libp2p-peer-collections/actions/workflows/js-test-and-release.yml) +[![CI](https://img.shields.io/github/actions/workflow/status/libp2p/js-libp2p-peer-collections/js-test-and-release.yml?branch=master\&style=flat-square)](https://github.com/libp2p/js-libp2p-peer-collections/actions/workflows/js-test-and-release.yml?query=branch%3Amaster) > Stores values against a peer id ## Table of contents - [Install](#install) + - [Browser ` +``` -## Example +## Description -```JavaScript -import { peerMap, peerSet, peerList } from '@libp2p/peer-collections' +We can't use PeerIds as collection keys because collection keys are compared using same-value-zero equality, so this is just a group of collections that stringifies PeerIds before storing them. -const map = peerMap() -map.set(peerId, 'value') +PeerIds cache stringified versions of themselves so this should be a cheap operation. -const set = peerSet() -set.add(peerId) +## API Docs -const list = peerList() -list.push(peerId) -``` +- ## License diff --git a/package.json b/package.json index 354faa9dec..d61bec1441 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "types": "./dist/src/index.d.ts", "files": [ "src", - "dist/src", + "dist", "!dist/test", "!**/*.tsbuildinfo" ], @@ -65,15 +65,15 @@ "release": "patch" }, { - "type": "chore", + "type": "docs", "release": "patch" }, { - "type": "docs", + "type": "test", "release": "patch" }, { - "type": "test", + "type": "deps", "release": "patch" }, { @@ -103,7 +103,11 @@ }, { "type": "docs", - "section": "Trivial Changes" + "section": "Documentation" + }, + { + "type": "deps", + "section": "Dependencies" }, { "type": "test", @@ -131,7 +135,8 @@ "test:firefox-webworker": "aegir test -t webworker -- --browser firefox", "test:node": "aegir test -t node --cov", "test:electron-main": "aegir test -t electron-main", - "release": "aegir release" + "release": "aegir release", + "docs": "aegir docs" }, "dependencies": { "@libp2p/interface-peer-id": "^1.0.4", diff --git a/src/list.ts b/src/list.ts index 48d8d14786..34c99eaf4b 100644 --- a/src/list.ts +++ b/src/list.ts @@ -9,6 +9,15 @@ import { mapIterable } from './util.js' * * PeerIds cache stringified versions of themselves so this * should be a cheap operation. + * + * @example + * + * ```JavaScript + * import { peerList } from '@libp2p/peer-collections' + * + * const list = peerList() + * list.push(peerId) + * ``` */ export class PeerList { private readonly list: string[] diff --git a/src/map.ts b/src/map.ts index ec5441e7fd..5989d37a12 100644 --- a/src/map.ts +++ b/src/map.ts @@ -9,6 +9,15 @@ import { mapIterable } from './util.js' * * PeerIds cache stringified versions of themselves so this * should be a cheap operation. + * + * @example + * + * ```JavaScript + * import { peerMap } from '@libp2p/peer-collections' + * + * const map = peerMap() + * map.set(peerId, 'value') + * ``` */ export class PeerMap { private readonly map: Map diff --git a/src/set.ts b/src/set.ts index 6aaf5a97e5..f7e1f0021a 100644 --- a/src/set.ts +++ b/src/set.ts @@ -9,6 +9,15 @@ import { mapIterable } from './util.js' * * PeerIds cache stringified versions of themselves so this * should be a cheap operation. + * + * @example + * + * ```JavaScript + * import { peerSet } from '@libp2p/peer-collections' + * + * const set = peerSet() + * set.add(peerId) + * ``` */ export class PeerSet { private readonly set: Set