@libp2p/peer-store 11.2.1 → 11.2.2-3528df829
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +4 -4
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +30 -50
- package/dist/src/index.js.map +1 -1
- package/dist/src/store.d.ts +8 -7
- package/dist/src/store.d.ts.map +1 -1
- package/dist/src/store.js +23 -21
- package/dist/src/store.js.map +1 -1
- package/dist/src/utils/dedupe-addresses.d.ts +2 -1
- package/dist/src/utils/dedupe-addresses.d.ts.map +1 -1
- package/dist/src/utils/dedupe-addresses.js +2 -2
- package/dist/src/utils/dedupe-addresses.js.map +1 -1
- package/dist/src/utils/to-peer-pb.d.ts +2 -1
- package/dist/src/utils/to-peer-pb.d.ts.map +1 -1
- package/dist/src/utils/to-peer-pb.js +1 -1
- package/dist/src/utils/to-peer-pb.js.map +1 -1
- package/package.json +9 -9
- package/src/index.ts +35 -52
- package/src/store.ts +24 -21
- package/src/utils/dedupe-addresses.ts +3 -2
- package/src/utils/to-peer-pb.ts +4 -2
- package/dist/typedoc-urls.json +0 -10
package/dist/src/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* The peer store is where libp2p stores data about the peers it has encountered on the network.
|
|
5
5
|
*/
|
|
6
|
-
import type { ComponentLogger, Libp2pEvents, TypedEventTarget, PeerId, PeerStore } from '@libp2p/interface';
|
|
6
|
+
import type { ComponentLogger, Libp2pEvents, TypedEventTarget, PeerId, PeerStore, AbortOptions } from '@libp2p/interface';
|
|
7
7
|
import type { Multiaddr } from '@multiformats/multiaddr';
|
|
8
8
|
import type { Datastore } from 'interface-datastore';
|
|
9
9
|
export interface PersistentPeerStoreComponents {
|
|
@@ -16,7 +16,7 @@ export interface PersistentPeerStoreComponents {
|
|
|
16
16
|
* Return true to allow storing the passed multiaddr for the passed peer
|
|
17
17
|
*/
|
|
18
18
|
export interface AddressFilter {
|
|
19
|
-
(peerId: PeerId, multiaddr: Multiaddr): Promise<boolean> | boolean;
|
|
19
|
+
(peerId: PeerId, multiaddr: Multiaddr, options?: AbortOptions): Promise<boolean> | boolean;
|
|
20
20
|
}
|
|
21
21
|
export interface PersistentPeerStoreInit {
|
|
22
22
|
/**
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAU,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAuC,YAAY,EAA4B,MAAM,mBAAmB,CAAA;AAChM,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAA;IACtC,MAAM,EAAE,eAAe,CAAA;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAA;CAC3F;AAED,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,aAAa,CAAC,EAAE,aAAa,CAAA;IAE7B;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAwLD,wBAAgB,mBAAmB,CAAE,UAAU,EAAE,6BAA6B,EAAE,IAAI,GAAE,uBAA4B,GAAG,SAAS,CAE7H"}
|
package/dist/src/index.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* The peer store is where libp2p stores data about the peers it has encountered on the network.
|
|
5
5
|
*/
|
|
6
|
+
import { isPeerId } from '@libp2p/interface';
|
|
6
7
|
import { peerIdFromCID } from '@libp2p/peer-id';
|
|
7
8
|
import { RecordEnvelope, PeerRecord } from '@libp2p/peer-record';
|
|
8
9
|
import all from 'it-all';
|
|
@@ -23,118 +24,97 @@ class PersistentPeerStore {
|
|
|
23
24
|
}
|
|
24
25
|
[Symbol.toStringTag] = '@libp2p/peer-store';
|
|
25
26
|
async forEach(fn, query) {
|
|
26
|
-
this.
|
|
27
|
-
const release = await this.store.lock.readLock();
|
|
28
|
-
this.log.trace('forEach got read lock');
|
|
27
|
+
const release = await this.store.lock.readLock(query);
|
|
29
28
|
try {
|
|
30
29
|
for await (const peer of this.store.all(query)) {
|
|
31
30
|
fn(peer);
|
|
32
31
|
}
|
|
33
32
|
}
|
|
34
33
|
finally {
|
|
35
|
-
this.log.trace('forEach release read lock');
|
|
36
34
|
release();
|
|
37
35
|
}
|
|
38
36
|
}
|
|
39
37
|
async all(query) {
|
|
40
|
-
this.
|
|
41
|
-
const release = await this.store.lock.readLock();
|
|
42
|
-
this.log.trace('all got read lock');
|
|
38
|
+
const release = await this.store.lock.readLock(query);
|
|
43
39
|
try {
|
|
44
40
|
return await all(this.store.all(query));
|
|
45
41
|
}
|
|
46
42
|
finally {
|
|
47
|
-
this.log.trace('all release read lock');
|
|
48
43
|
release();
|
|
49
44
|
}
|
|
50
45
|
}
|
|
51
|
-
async delete(peerId) {
|
|
52
|
-
this.
|
|
53
|
-
const release = await this.store.lock.writeLock();
|
|
54
|
-
this.log.trace('delete got write lock');
|
|
46
|
+
async delete(peerId, options) {
|
|
47
|
+
const release = await this.store.lock.writeLock(options);
|
|
55
48
|
try {
|
|
56
|
-
await this.store.delete(peerId);
|
|
49
|
+
await this.store.delete(peerId, options);
|
|
57
50
|
}
|
|
58
51
|
finally {
|
|
59
|
-
this.log.trace('delete release write lock');
|
|
60
52
|
release();
|
|
61
53
|
}
|
|
62
54
|
}
|
|
63
|
-
async has(peerId) {
|
|
64
|
-
this.
|
|
65
|
-
const release = await this.store.lock.readLock();
|
|
66
|
-
this.log.trace('has got read lock');
|
|
55
|
+
async has(peerId, options) {
|
|
56
|
+
const release = await this.store.lock.readLock(options);
|
|
67
57
|
try {
|
|
68
|
-
return await this.store.has(peerId);
|
|
58
|
+
return await this.store.has(peerId, options);
|
|
69
59
|
}
|
|
70
60
|
finally {
|
|
71
61
|
this.log.trace('has release read lock');
|
|
72
62
|
release();
|
|
73
63
|
}
|
|
74
64
|
}
|
|
75
|
-
async get(peerId) {
|
|
76
|
-
this.
|
|
77
|
-
const release = await this.store.lock.readLock();
|
|
78
|
-
this.log.trace('get got read lock');
|
|
65
|
+
async get(peerId, options) {
|
|
66
|
+
const release = await this.store.lock.readLock(options);
|
|
79
67
|
try {
|
|
80
|
-
return await this.store.load(peerId);
|
|
68
|
+
return await this.store.load(peerId, options);
|
|
81
69
|
}
|
|
82
70
|
finally {
|
|
83
|
-
this.log.trace('get release read lock');
|
|
84
71
|
release();
|
|
85
72
|
}
|
|
86
73
|
}
|
|
87
|
-
async getInfo(peerId) {
|
|
88
|
-
const peer = await this.get(peerId);
|
|
74
|
+
async getInfo(peerId, options) {
|
|
75
|
+
const peer = await this.get(peerId, options);
|
|
89
76
|
return {
|
|
90
77
|
id: peer.id,
|
|
91
78
|
multiaddrs: peer.addresses.map(({ multiaddr }) => multiaddr)
|
|
92
79
|
};
|
|
93
80
|
}
|
|
94
|
-
async save(id, data) {
|
|
95
|
-
this.
|
|
96
|
-
const release = await this.store.lock.writeLock();
|
|
97
|
-
this.log.trace('save got write lock');
|
|
81
|
+
async save(id, data, options) {
|
|
82
|
+
const release = await this.store.lock.writeLock(options);
|
|
98
83
|
try {
|
|
99
|
-
const result = await this.store.save(id, data);
|
|
84
|
+
const result = await this.store.save(id, data, options);
|
|
100
85
|
this.#emitIfUpdated(id, result);
|
|
101
86
|
return result.peer;
|
|
102
87
|
}
|
|
103
88
|
finally {
|
|
104
|
-
this.log.trace('save release write lock');
|
|
105
89
|
release();
|
|
106
90
|
}
|
|
107
91
|
}
|
|
108
|
-
async patch(id, data) {
|
|
109
|
-
this.
|
|
110
|
-
const release = await this.store.lock.writeLock();
|
|
111
|
-
this.log.trace('patch got write lock');
|
|
92
|
+
async patch(id, data, options) {
|
|
93
|
+
const release = await this.store.lock.writeLock(options);
|
|
112
94
|
try {
|
|
113
|
-
const result = await this.store.patch(id, data);
|
|
95
|
+
const result = await this.store.patch(id, data, options);
|
|
114
96
|
this.#emitIfUpdated(id, result);
|
|
115
97
|
return result.peer;
|
|
116
98
|
}
|
|
117
99
|
finally {
|
|
118
|
-
this.log.trace('patch release write lock');
|
|
119
100
|
release();
|
|
120
101
|
}
|
|
121
102
|
}
|
|
122
|
-
async merge(id, data) {
|
|
123
|
-
this.
|
|
124
|
-
const release = await this.store.lock.writeLock();
|
|
125
|
-
this.log.trace('merge got write lock');
|
|
103
|
+
async merge(id, data, options) {
|
|
104
|
+
const release = await this.store.lock.writeLock(options);
|
|
126
105
|
try {
|
|
127
|
-
const result = await this.store.merge(id, data);
|
|
106
|
+
const result = await this.store.merge(id, data, options);
|
|
128
107
|
this.#emitIfUpdated(id, result);
|
|
129
108
|
return result.peer;
|
|
130
109
|
}
|
|
131
110
|
finally {
|
|
132
|
-
this.log.trace('merge release write lock');
|
|
133
111
|
release();
|
|
134
112
|
}
|
|
135
113
|
}
|
|
136
|
-
async consumePeerRecord(buf,
|
|
137
|
-
const
|
|
114
|
+
async consumePeerRecord(buf, arg1, arg2) {
|
|
115
|
+
const expectedPeer = isPeerId(arg1) ? arg1 : isPeerId(arg1?.expectedPeer) ? arg1.expectedPeer : undefined;
|
|
116
|
+
const options = isPeerId(arg1) ? arg2 : arg1 === undefined ? arg2 : arg1;
|
|
117
|
+
const envelope = await RecordEnvelope.openAndCertify(buf, PeerRecord.DOMAIN, options);
|
|
138
118
|
const peerId = peerIdFromCID(envelope.publicKey.toCID());
|
|
139
119
|
if (expectedPeer?.equals(peerId) === false) {
|
|
140
120
|
this.log('envelope peer id was not the expected peer id - expected: %p received: %p', expectedPeer, peerId);
|
|
@@ -143,7 +123,7 @@ class PersistentPeerStore {
|
|
|
143
123
|
const peerRecord = PeerRecord.createFromProtobuf(envelope.payload);
|
|
144
124
|
let peer;
|
|
145
125
|
try {
|
|
146
|
-
peer = await this.get(peerId);
|
|
126
|
+
peer = await this.get(peerId, options);
|
|
147
127
|
}
|
|
148
128
|
catch (err) {
|
|
149
129
|
if (err.name !== 'NotFoundError') {
|
|
@@ -152,7 +132,7 @@ class PersistentPeerStore {
|
|
|
152
132
|
}
|
|
153
133
|
// ensure seq is greater than, or equal to, the last received
|
|
154
134
|
if (peer?.peerRecordEnvelope != null) {
|
|
155
|
-
const storedEnvelope =
|
|
135
|
+
const storedEnvelope = RecordEnvelope.createFromProtobuf(peer.peerRecordEnvelope);
|
|
156
136
|
const storedRecord = PeerRecord.createFromProtobuf(storedEnvelope.payload);
|
|
157
137
|
if (storedRecord.seqNumber >= peerRecord.seqNumber) {
|
|
158
138
|
this.log('sequence number was lower or equal to existing sequence number - stored: %d received: %d', storedRecord.seqNumber, peerRecord.seqNumber);
|
|
@@ -165,7 +145,7 @@ class PersistentPeerStore {
|
|
|
165
145
|
isCertified: true,
|
|
166
146
|
multiaddr
|
|
167
147
|
}))
|
|
168
|
-
});
|
|
148
|
+
}, options);
|
|
169
149
|
return true;
|
|
170
150
|
}
|
|
171
151
|
#emitIfUpdated(id, result) {
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChE,OAAO,GAAG,MAAM,QAAQ,CAAA;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAgD5C;;GAEG;AACH,MAAM,mBAAmB;IACN,KAAK,CAAiB;IACtB,MAAM,CAAgC;IACtC,MAAM,CAAQ;IACd,GAAG,CAAQ;IAE5B,YAAa,UAAyC,EAAE,OAAgC,EAAE;QACxF,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAA;QAC9D,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAA;QAC/B,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAA;QAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IACpD,CAAC;IAEQ,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,oBAAoB,CAAA;IAEpD,KAAK,CAAC,OAAO,CAAE,EAAyB,EAAE,KAAiB;QACzD,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/store.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Peer as PeerPB } from './pb/peer.js';
|
|
2
2
|
import type { PersistentPeerStoreComponents, PersistentPeerStoreInit } from './index.js';
|
|
3
3
|
import type { PeerUpdate as PeerUpdateExternal, PeerId, Peer, PeerData, PeerQuery } from '@libp2p/interface';
|
|
4
|
+
import type { AbortOptions } from '@multiformats/multiaddr';
|
|
4
5
|
import type { Mortice } from 'mortice';
|
|
5
6
|
/**
|
|
6
7
|
* Event detail emitted when peer data changes
|
|
@@ -22,12 +23,12 @@ export declare class PersistentStore {
|
|
|
22
23
|
private readonly maxAddressAge;
|
|
23
24
|
private readonly maxPeerAge;
|
|
24
25
|
constructor(components: PersistentPeerStoreComponents, init?: PersistentPeerStoreInit);
|
|
25
|
-
has(peerId: PeerId): Promise<boolean>;
|
|
26
|
-
delete(peerId: PeerId): Promise<void>;
|
|
27
|
-
load(peerId: PeerId): Promise<Peer>;
|
|
28
|
-
save(peerId: PeerId, data: PeerData): Promise<PeerUpdate>;
|
|
29
|
-
patch(peerId: PeerId, data: Partial<PeerData
|
|
30
|
-
merge(peerId: PeerId, data: PeerData): Promise<PeerUpdate>;
|
|
31
|
-
all(
|
|
26
|
+
has(peerId: PeerId, options?: AbortOptions): Promise<boolean>;
|
|
27
|
+
delete(peerId: PeerId, options?: AbortOptions): Promise<void>;
|
|
28
|
+
load(peerId: PeerId, options?: AbortOptions): Promise<Peer>;
|
|
29
|
+
save(peerId: PeerId, data: PeerData, options?: AbortOptions): Promise<PeerUpdate>;
|
|
30
|
+
patch(peerId: PeerId, data: Partial<PeerData>, options?: AbortOptions): Promise<PeerUpdate>;
|
|
31
|
+
merge(peerId: PeerId, data: PeerData, options?: AbortOptions): Promise<PeerUpdate>;
|
|
32
|
+
all(options?: PeerQuery): AsyncGenerator<Peer, void, unknown>;
|
|
32
33
|
}
|
|
33
34
|
//# sourceMappingURL=store.d.ts.map
|
package/dist/src/store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/store.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,IAAI,IAAI,MAAM,EAAE,MAAM,cAAc,CAAA;AAK7C,OAAO,KAAK,EAAiB,6BAA6B,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AACvG,OAAO,KAAK,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAU,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/store.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,IAAI,IAAI,MAAM,EAAE,MAAM,cAAc,CAAA;AAK7C,OAAO,KAAK,EAAiB,6BAA6B,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AACvG,OAAO,KAAK,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAU,MAAM,mBAAmB,CAAA;AACpH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAE3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC;;GAEG;AACH,MAAM,WAAW,UAAW,SAAQ,kBAAkB;IACpD,OAAO,EAAE,OAAO,CAAA;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,IAAI,CAAA;CACX;AA4BD,qBAAa,eAAe;;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,SAAgB,IAAI,EAAE,OAAO,CAAA;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAe;IAC9C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;gBAEtB,UAAU,EAAE,6BAA6B,EAAE,IAAI,GAAE,uBAA4B;IAapF,GAAG,CAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IAc9D,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ9D,IAAI,CAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAa5D,IAAI,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;IAWlF,KAAK,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;IAY5F,KAAK,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;IAWjF,GAAG,CAAE,OAAO,CAAC,EAAE,SAAS,GAAG,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC;CA2EvE"}
|
package/dist/src/store.js
CHANGED
|
@@ -50,9 +50,9 @@ export class PersistentStore {
|
|
|
50
50
|
this.maxAddressAge = init.maxAddressAge ?? MAX_ADDRESS_AGE;
|
|
51
51
|
this.maxPeerAge = init.maxPeerAge ?? MAX_PEER_AGE;
|
|
52
52
|
}
|
|
53
|
-
async has(peerId) {
|
|
53
|
+
async has(peerId, options) {
|
|
54
54
|
try {
|
|
55
|
-
await this.load(peerId);
|
|
55
|
+
await this.load(peerId, options);
|
|
56
56
|
return true;
|
|
57
57
|
}
|
|
58
58
|
catch (err) {
|
|
@@ -62,47 +62,49 @@ export class PersistentStore {
|
|
|
62
62
|
}
|
|
63
63
|
return false;
|
|
64
64
|
}
|
|
65
|
-
async delete(peerId) {
|
|
65
|
+
async delete(peerId, options) {
|
|
66
66
|
if (this.peerId.equals(peerId)) {
|
|
67
67
|
return;
|
|
68
68
|
}
|
|
69
|
-
await this.datastore.delete(peerIdToDatastoreKey(peerId));
|
|
69
|
+
await this.datastore.delete(peerIdToDatastoreKey(peerId), options);
|
|
70
70
|
}
|
|
71
|
-
async load(peerId) {
|
|
71
|
+
async load(peerId, options) {
|
|
72
72
|
const key = peerIdToDatastoreKey(peerId);
|
|
73
|
-
const buf = await this.datastore.get(key);
|
|
73
|
+
const buf = await this.datastore.get(key, options);
|
|
74
74
|
const peer = PeerPB.decode(buf);
|
|
75
75
|
if (this.#peerIsExpired(peerId, peer)) {
|
|
76
|
-
await this.datastore.delete(key);
|
|
76
|
+
await this.datastore.delete(key, options);
|
|
77
77
|
throw new NotFoundError();
|
|
78
78
|
}
|
|
79
79
|
return pbToPeer(peerId, peer, this.peerId.equals(peerId) ? Infinity : this.maxAddressAge);
|
|
80
80
|
}
|
|
81
|
-
async save(peerId, data) {
|
|
82
|
-
const existingPeer = await this.#findExistingPeer(peerId);
|
|
81
|
+
async save(peerId, data, options) {
|
|
82
|
+
const existingPeer = await this.#findExistingPeer(peerId, options);
|
|
83
83
|
const peerPb = await toPeerPB(peerId, data, 'patch', {
|
|
84
|
+
...options,
|
|
84
85
|
addressFilter: this.addressFilter
|
|
85
86
|
});
|
|
86
87
|
return this.#saveIfDifferent(peerId, peerPb, existingPeer);
|
|
87
88
|
}
|
|
88
|
-
async patch(peerId, data) {
|
|
89
|
-
const existingPeer = await this.#findExistingPeer(peerId);
|
|
89
|
+
async patch(peerId, data, options) {
|
|
90
|
+
const existingPeer = await this.#findExistingPeer(peerId, options);
|
|
90
91
|
const peerPb = await toPeerPB(peerId, data, 'patch', {
|
|
92
|
+
...options,
|
|
91
93
|
addressFilter: this.addressFilter,
|
|
92
94
|
existingPeer
|
|
93
95
|
});
|
|
94
96
|
return this.#saveIfDifferent(peerId, peerPb, existingPeer);
|
|
95
97
|
}
|
|
96
|
-
async merge(peerId, data) {
|
|
97
|
-
const existingPeer = await this.#findExistingPeer(peerId);
|
|
98
|
+
async merge(peerId, data, options) {
|
|
99
|
+
const existingPeer = await this.#findExistingPeer(peerId, options);
|
|
98
100
|
const peerPb = await toPeerPB(peerId, data, 'merge', {
|
|
99
101
|
addressFilter: this.addressFilter,
|
|
100
102
|
existingPeer
|
|
101
103
|
});
|
|
102
104
|
return this.#saveIfDifferent(peerId, peerPb, existingPeer);
|
|
103
105
|
}
|
|
104
|
-
async *all(
|
|
105
|
-
for await (const { key, value } of this.datastore.query(mapQuery(
|
|
106
|
+
async *all(options) {
|
|
107
|
+
for await (const { key, value } of this.datastore.query(mapQuery(options ?? {}, this.maxAddressAge), options)) {
|
|
106
108
|
const peerId = keyToPeerId(key);
|
|
107
109
|
// skip self peer if present
|
|
108
110
|
if (peerId.equals(this.peerId)) {
|
|
@@ -111,20 +113,20 @@ export class PersistentStore {
|
|
|
111
113
|
const peer = PeerPB.decode(value);
|
|
112
114
|
// remove expired peer
|
|
113
115
|
if (this.#peerIsExpired(peerId, peer)) {
|
|
114
|
-
await this.datastore.delete(key);
|
|
116
|
+
await this.datastore.delete(key, options);
|
|
115
117
|
continue;
|
|
116
118
|
}
|
|
117
119
|
yield pbToPeer(peerId, peer, this.peerId.equals(peerId) ? Infinity : this.maxAddressAge);
|
|
118
120
|
}
|
|
119
121
|
}
|
|
120
|
-
async #findExistingPeer(peerId) {
|
|
122
|
+
async #findExistingPeer(peerId, options) {
|
|
121
123
|
try {
|
|
122
124
|
const key = peerIdToDatastoreKey(peerId);
|
|
123
|
-
const buf = await this.datastore.get(key);
|
|
125
|
+
const buf = await this.datastore.get(key, options);
|
|
124
126
|
const peerPB = PeerPB.decode(buf);
|
|
125
127
|
// remove expired peer
|
|
126
128
|
if (this.#peerIsExpired(peerId, peerPB)) {
|
|
127
|
-
await this.datastore.delete(key);
|
|
129
|
+
await this.datastore.delete(key, options);
|
|
128
130
|
throw new NotFoundError();
|
|
129
131
|
}
|
|
130
132
|
return {
|
|
@@ -138,11 +140,11 @@ export class PersistentStore {
|
|
|
138
140
|
}
|
|
139
141
|
}
|
|
140
142
|
}
|
|
141
|
-
async #saveIfDifferent(peerId, peer, existingPeer) {
|
|
143
|
+
async #saveIfDifferent(peerId, peer, existingPeer, options) {
|
|
142
144
|
// record last update
|
|
143
145
|
peer.updated = Date.now();
|
|
144
146
|
const buf = PeerPB.encode(peer);
|
|
145
|
-
await this.datastore.put(peerIdToDatastoreKey(peerId), buf);
|
|
147
|
+
await this.datastore.put(peerIdToDatastoreKey(peerId), buf, options);
|
|
146
148
|
return {
|
|
147
149
|
peer: bytesToPeer(peerId, buf, this.maxAddressAge),
|
|
148
150
|
previous: existingPeer?.peer,
|
package/dist/src/store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,OAAO,MAAM,SAAS,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAClD,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AACtC,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC9D,OAAO,EAAE,IAAI,IAAI,MAAM,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAA;AAC5F,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { AddressFilter } from '../index.js';
|
|
2
2
|
import type { Address as AddressPB } from '../pb/peer.js';
|
|
3
3
|
import type { PeerId, Address } from '@libp2p/interface';
|
|
4
|
-
|
|
4
|
+
import type { AbortOptions } from '@multiformats/multiaddr';
|
|
5
|
+
export declare function dedupeFilterAndSortAddresses(peerId: PeerId, filter: AddressFilter, addresses: Array<Address | AddressPB | undefined>, existingAddresses?: AddressPB[], options?: AbortOptions): Promise<AddressPB[]>;
|
|
5
6
|
//# sourceMappingURL=dedupe-addresses.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dedupe-addresses.d.ts","sourceRoot":"","sources":["../../../src/utils/dedupe-addresses.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,KAAK,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,eAAe,CAAA;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"dedupe-addresses.d.ts","sourceRoot":"","sources":["../../../src/utils/dedupe-addresses.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,KAAK,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,eAAe,CAAA;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAE3D,wBAAsB,4BAA4B,CAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,KAAK,CAAC,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC,EAAE,iBAAiB,CAAC,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAmD3N"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { InvalidParametersError } from '@libp2p/interface';
|
|
2
2
|
import { isMultiaddr, multiaddr } from '@multiformats/multiaddr';
|
|
3
|
-
export async function dedupeFilterAndSortAddresses(peerId, filter, addresses, existingAddresses) {
|
|
3
|
+
export async function dedupeFilterAndSortAddresses(peerId, filter, addresses, existingAddresses, options) {
|
|
4
4
|
const addressMap = new Map();
|
|
5
5
|
for (const addr of addresses) {
|
|
6
6
|
if (addr == null) {
|
|
@@ -12,7 +12,7 @@ export async function dedupeFilterAndSortAddresses(peerId, filter, addresses, ex
|
|
|
12
12
|
if (!isMultiaddr(addr.multiaddr)) {
|
|
13
13
|
throw new InvalidParametersError('Multiaddr was invalid');
|
|
14
14
|
}
|
|
15
|
-
if (!(await filter(peerId, addr.multiaddr))) {
|
|
15
|
+
if (!(await filter(peerId, addr.multiaddr, options))) {
|
|
16
16
|
continue;
|
|
17
17
|
}
|
|
18
18
|
const isCertified = addr.isCertified ?? false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dedupe-addresses.js","sourceRoot":"","sources":["../../../src/utils/dedupe-addresses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"dedupe-addresses.js","sourceRoot":"","sources":["../../../src/utils/dedupe-addresses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAMhE,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAE,MAAc,EAAE,MAAqB,EAAE,SAAiD,EAAE,iBAA+B,EAAE,OAAsB;IACnM,MAAM,UAAU,GAAG,IAAI,GAAG,EAAmB,CAAA;IAE7C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,SAAQ;QACV,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,YAAY,UAAU,EAAE,CAAC;YACzC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAC5C,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,sBAAsB,CAAC,uBAAuB,CAAC,CAAA;QAC3D,CAAC;QAED,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;YACrD,SAAQ;QACV,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,KAAK,CAAA;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAA;QACvC,MAAM,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAE1C,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;YACzB,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC,WAAW,IAAI,WAAW,CAAA;QAC5D,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE;gBACpB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,WAAW;aACZ,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;SAC5B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACb,OAAO,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAA;IACrE,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE;QACtC,6CAA6C;QAC7C,MAAM,QAAQ,GAAG,EAAE,CAAC,SAAS,EAAE,CAAA;QAE/B,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,MAAM,EAAE,CAAC,CAAC,CAAA;QAClD,CAAC;QAED,OAAO;YACL,WAAW;YACX,SAAS,EAAE,EAAE,CAAC,KAAK;SACpB,CAAA;IACH,CAAC,CAAC,CAAA;AACN,CAAC"}
|
|
@@ -2,7 +2,8 @@ import type { AddressFilter } from '../index.js';
|
|
|
2
2
|
import type { Peer as PeerPB } from '../pb/peer.js';
|
|
3
3
|
import type { ExistingPeer } from '../store.js';
|
|
4
4
|
import type { PeerId, PeerData } from '@libp2p/interface';
|
|
5
|
-
|
|
5
|
+
import type { AbortOptions } from '@multiformats/multiaddr';
|
|
6
|
+
export interface ToPBPeerOptions extends AbortOptions {
|
|
6
7
|
addressFilter?: AddressFilter;
|
|
7
8
|
existingPeer?: ExistingPeer;
|
|
8
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"to-peer-pb.d.ts","sourceRoot":"","sources":["../../../src/utils/to-peer-pb.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,KAAK,EAAO,IAAI,IAAI,MAAM,EAAE,MAAM,eAAe,CAAA;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAW,QAAQ,EAAc,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"to-peer-pb.d.ts","sourceRoot":"","sources":["../../../src/utils/to-peer-pb.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,KAAK,EAAO,IAAI,IAAI,MAAM,EAAE,MAAM,eAAe,CAAA;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAW,QAAQ,EAAc,MAAM,mBAAmB,CAAA;AAC9E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAE3D,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACnD,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,YAAY,CAAC,EAAE,YAAY,CAAA;CAC5B;AAED,wBAAsB,QAAQ,CAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CA8J/I"}
|
|
@@ -112,7 +112,7 @@ export async function toPeerPB(peerId, data, strategy, options) {
|
|
|
112
112
|
publicKey = publicKeyToProtobuf(peerId.publicKey);
|
|
113
113
|
}
|
|
114
114
|
const output = {
|
|
115
|
-
addresses: await dedupeFilterAndSortAddresses(peerId, options.addressFilter ?? (async () => true), addresses, options.existingPeer?.peerPB.addresses),
|
|
115
|
+
addresses: await dedupeFilterAndSortAddresses(peerId, options.addressFilter ?? (async () => true), addresses, options.existingPeer?.peerPB.addresses, options),
|
|
116
116
|
protocols: [...protocols.values()].sort((a, b) => {
|
|
117
117
|
return a.localeCompare(b);
|
|
118
118
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"to-peer-pb.js","sourceRoot":"","sources":["../../../src/utils/to-peer-pb.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"to-peer-pb.js","sourceRoot":"","sources":["../../../src/utils/to-peer-pb.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@libp2p/peer-store",
|
|
3
|
-
"version": "11.2.
|
|
3
|
+
"version": "11.2.2-3528df829",
|
|
4
4
|
"description": "Stores information about peers libp2p knows on the network",
|
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
|
6
6
|
"homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/peer-store#readme",
|
|
@@ -48,29 +48,29 @@
|
|
|
48
48
|
"test:electron-main": "aegir test -t electron-main"
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
|
-
"@libp2p/crypto": "
|
|
52
|
-
"@libp2p/interface": "
|
|
53
|
-
"@libp2p/peer-id": "
|
|
54
|
-
"@libp2p/peer-record": "
|
|
51
|
+
"@libp2p/crypto": "5.1.4-3528df829",
|
|
52
|
+
"@libp2p/interface": "2.10.2-3528df829",
|
|
53
|
+
"@libp2p/peer-id": "5.1.5-3528df829",
|
|
54
|
+
"@libp2p/peer-record": "8.0.30-3528df829",
|
|
55
55
|
"@multiformats/multiaddr": "^12.4.0",
|
|
56
56
|
"interface-datastore": "^8.3.1",
|
|
57
57
|
"it-all": "^3.0.8",
|
|
58
58
|
"mortice": "^3.0.6",
|
|
59
|
-
"multiformats": "^13.3.
|
|
59
|
+
"multiformats": "^13.3.6",
|
|
60
60
|
"protons-runtime": "^5.5.0",
|
|
61
61
|
"uint8arraylist": "^2.4.8",
|
|
62
62
|
"uint8arrays": "^5.1.0"
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
|
65
|
-
"@libp2p/logger": "
|
|
65
|
+
"@libp2p/logger": "5.1.18-3528df829",
|
|
66
66
|
"@types/sinon": "^17.0.4",
|
|
67
|
-
"aegir": "^47.0.
|
|
67
|
+
"aegir": "^47.0.14",
|
|
68
68
|
"benchmark": "^2.1.4",
|
|
69
69
|
"datastore-core": "^10.0.2",
|
|
70
70
|
"delay": "^6.0.0",
|
|
71
71
|
"p-defer": "^4.0.1",
|
|
72
72
|
"p-event": "^6.0.1",
|
|
73
|
-
"protons": "^7.6.
|
|
73
|
+
"protons": "^7.6.1",
|
|
74
74
|
"sinon": "^20.0.0"
|
|
75
75
|
},
|
|
76
76
|
"sideEffects": false
|