@peerbit/libp2p-test-utils 2.1.1 → 2.1.3

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.
@@ -1,9 +1,9 @@
1
1
  import { createLibp2p } from "libp2p";
2
2
  import { noise } from "@dao-xyz/libp2p-noise";
3
- import { mplex } from "@libp2p/mplex";
4
3
  import { setMaxListeners } from "events";
5
4
  import { relay, transports } from "./transports.js";
6
5
  import { identify } from "@libp2p/identify";
6
+ import { yamux } from "@chainsafe/libp2p-yamux";
7
7
  export class TestSession {
8
8
  peers;
9
9
  constructor(peers) {
@@ -55,25 +55,26 @@ export class TestSession {
55
55
  const promises = [];
56
56
  for (let i = 0; i < n; i++) {
57
57
  const result = async () => {
58
+ const definedOptions = options?.[i] || options;
58
59
  const node = await createLibp2p({
59
60
  addresses: {
60
61
  listen: ["/ip4/127.0.0.1/tcp/0", "/ip4/127.0.0.1/tcp/0/ws"]
61
62
  },
62
- connectionManager: (options?.[i] || options)?.connectionManager ?? {
63
+ connectionManager: definedOptions?.connectionManager ?? {
63
64
  minConnections: 0
64
65
  },
65
- peerId: (options?.[i] || options)?.peerId,
66
- datastore: (options?.[i] || options)?.datastore,
67
- transports: (options?.[i] || options)?.transports ??
68
- transports((options?.[i] || options)?.browser),
66
+ peerId: definedOptions?.peerId,
67
+ datastore: definedOptions?.datastore,
68
+ transports: definedOptions?.transports ??
69
+ transports(definedOptions?.["browser"]),
69
70
  services: {
70
- relay: (options?.[i] || options)?.browser ? undefined : relay(),
71
+ relay: definedOptions?.["browser"] ? undefined : relay(),
71
72
  identify: identify(),
72
- ...(options?.[i] || options)?.services
73
+ ...definedOptions?.services
73
74
  },
74
75
  connectionEncryption: [noise()],
75
- streamMuxers: [mplex({ disconnectThreshold: 10 })],
76
- start: (options?.[i] || options)?.start
76
+ streamMuxers: definedOptions?.streamMuxers || [yamux()],
77
+ start: definedOptions?.start
77
78
  });
78
79
  return node;
79
80
  };
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/session.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peerbit/libp2p-test-utils",
3
- "version": "2.1.1",
3
+ "version": "2.1.3",
4
4
  "description": "Test utils for Peerbit",
5
5
  "type": "module",
6
6
  "private": false,
@@ -40,11 +40,10 @@
40
40
  "@dao-xyz/libp2p-noise": "^14.1.2",
41
41
  "@libp2p/circuit-relay-v2": "^1.0.13",
42
42
  "@libp2p/identify": "^1.0.12",
43
- "@libp2p/mplex": "^10.0.13",
44
- "@libp2p/tcp": "^9.0.13",
43
+ "@libp2p/tcp": "^9.0.15",
45
44
  "@libp2p/webrtc": "^4.0.13",
46
- "@libp2p/websockets": "^8.0.9",
47
- "libp2p": "^1.2.1"
45
+ "@libp2p/websockets": "^8.0.15",
46
+ "libp2p": "^1.2.3"
48
47
  },
49
48
  "devDependencies": {
50
49
  "@peerbit/time": "2.0.6"
@@ -52,5 +51,5 @@
52
51
  "localMaintainers": [
53
52
  "dao.xyz"
54
53
  ],
55
- "gitHead": "82d6f528faf0a4e060e400314bc01bc7260c41a5"
54
+ "gitHead": "eaabc8746086d126df86d4308ca1c4f65ac20f32"
56
55
  }
package/src/session.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  import { createLibp2p, Libp2p, Libp2pOptions, ServiceFactoryMap } from "libp2p";
2
2
  import { noise } from "@dao-xyz/libp2p-noise";
3
- import { mplex } from "@libp2p/mplex";
4
3
  import { setMaxListeners } from "events";
5
4
  import { relay, transports } from "./transports.js";
6
5
  import { identify } from "@libp2p/identify";
7
6
  import { CircuitRelayService } from "@libp2p/circuit-relay-v2";
8
7
  import type { Multiaddr } from "@multiformats/multiaddr";
8
+ import { yamux } from "@chainsafe/libp2p-yamux";
9
9
 
10
10
  type DefaultServices = { relay: CircuitRelayService; identify: any };
11
11
  type Libp2pWithServices<T> = Libp2p<T & DefaultServices>;
@@ -84,26 +84,28 @@ export class TestSession<T> {
84
84
  const promises: Promise<Libp2p<T>>[] = [];
85
85
  for (let i = 0; i < n; i++) {
86
86
  const result = async () => {
87
+ const definedOptions: Libp2pOptions<T> | undefined =
88
+ options?.[i] || options;
87
89
  const node = await createLibp2p<T>({
88
90
  addresses: {
89
91
  listen: ["/ip4/127.0.0.1/tcp/0", "/ip4/127.0.0.1/tcp/0/ws"]
90
92
  },
91
- connectionManager: (options?.[i] || options)?.connectionManager ?? {
93
+ connectionManager: definedOptions?.connectionManager ?? {
92
94
  minConnections: 0
93
95
  },
94
- peerId: (options?.[i] || options)?.peerId,
95
- datastore: (options?.[i] || options)?.datastore,
96
+ peerId: definedOptions?.peerId,
97
+ datastore: definedOptions?.datastore,
96
98
  transports:
97
- (options?.[i] || options)?.transports ??
98
- transports((options?.[i] || options)?.browser),
99
+ definedOptions?.transports ??
100
+ transports(definedOptions?.["browser"]),
99
101
  services: {
100
- relay: (options?.[i] || options)?.browser ? undefined : relay(),
102
+ relay: definedOptions?.["browser"] ? undefined : relay(),
101
103
  identify: identify(),
102
- ...(options?.[i] || options)?.services
103
- },
104
+ ...definedOptions?.services
105
+ } as any,
104
106
  connectionEncryption: [noise()],
105
- streamMuxers: [mplex({ disconnectThreshold: 10 })],
106
- start: (options?.[i] || options)?.start
107
+ streamMuxers: definedOptions?.streamMuxers || [yamux()],
108
+ start: definedOptions?.start
107
109
  });
108
110
  return node;
109
111
  };