node-datachannel 0.2.1 → 0.2.4
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/.github/workflows/build-linux.yml +2 -0
- package/.github/workflows/build-win.yml +1 -7
- package/CMakeLists.txt +2 -2
- package/README.md +18 -3
- package/lib/datachannel-stream.js +86 -0
- package/lib/index.d.ts +16 -2
- package/lib/index.js +3 -1
- package/node_modules/decompress-response/index.d.ts +14 -21
- package/node_modules/decompress-response/index.js +34 -16
- package/node_modules/decompress-response/license +1 -1
- package/node_modules/decompress-response/package.json +23 -17
- package/node_modules/decompress-response/readme.md +2 -6
- package/node_modules/detect-libc/README.md +124 -42
- package/node_modules/detect-libc/index.d.ts +11 -0
- package/node_modules/detect-libc/lib/detect-libc.js +166 -80
- package/node_modules/detect-libc/lib/process.js +16 -0
- package/node_modules/detect-libc/package.json +20 -20
- package/node_modules/{semver → lru-cache}/LICENSE +0 -0
- package/node_modules/lru-cache/README.md +166 -0
- package/node_modules/lru-cache/index.js +334 -0
- package/node_modules/lru-cache/node_modules/yallist/LICENSE +15 -0
- package/node_modules/lru-cache/node_modules/yallist/README.md +204 -0
- package/node_modules/lru-cache/node_modules/yallist/iterator.js +8 -0
- package/node_modules/lru-cache/node_modules/yallist/package.json +65 -0
- package/node_modules/lru-cache/node_modules/yallist/yallist.js +426 -0
- package/node_modules/lru-cache/package.json +74 -0
- package/node_modules/mimic-response/index.d.ts +2 -2
- package/node_modules/mimic-response/index.js +41 -2
- package/node_modules/mimic-response/package.json +17 -17
- package/node_modules/mimic-response/readme.md +22 -1
- package/node_modules/node-abi/.circleci/config.yml +63 -0
- package/node_modules/node-abi/.releaserc.json +9 -0
- package/node_modules/node-abi/abi_registry.json +45 -3
- package/node_modules/node-abi/index.js +5 -2
- package/node_modules/node-abi/node_modules/semver/CHANGELOG.md +111 -0
- package/node_modules/node-abi/node_modules/semver/LICENSE +15 -0
- package/node_modules/{semver → node-abi/node_modules/semver}/README.md +180 -26
- package/node_modules/node-abi/node_modules/semver/bin/semver.js +173 -0
- package/node_modules/node-abi/node_modules/semver/classes/comparator.js +135 -0
- package/node_modules/node-abi/node_modules/semver/classes/index.js +5 -0
- package/node_modules/node-abi/node_modules/semver/classes/range.js +510 -0
- package/node_modules/node-abi/node_modules/semver/classes/semver.js +287 -0
- package/node_modules/node-abi/node_modules/semver/functions/clean.js +6 -0
- package/node_modules/node-abi/node_modules/semver/functions/cmp.js +48 -0
- package/node_modules/node-abi/node_modules/semver/functions/coerce.js +51 -0
- package/node_modules/node-abi/node_modules/semver/functions/compare-build.js +7 -0
- package/node_modules/node-abi/node_modules/semver/functions/compare-loose.js +3 -0
- package/node_modules/node-abi/node_modules/semver/functions/compare.js +5 -0
- package/node_modules/node-abi/node_modules/semver/functions/diff.js +23 -0
- package/node_modules/node-abi/node_modules/semver/functions/eq.js +3 -0
- package/node_modules/node-abi/node_modules/semver/functions/gt.js +3 -0
- package/node_modules/node-abi/node_modules/semver/functions/gte.js +3 -0
- package/node_modules/node-abi/node_modules/semver/functions/inc.js +15 -0
- package/node_modules/node-abi/node_modules/semver/functions/lt.js +3 -0
- package/node_modules/node-abi/node_modules/semver/functions/lte.js +3 -0
- package/node_modules/node-abi/node_modules/semver/functions/major.js +3 -0
- package/node_modules/node-abi/node_modules/semver/functions/minor.js +3 -0
- package/node_modules/node-abi/node_modules/semver/functions/neq.js +3 -0
- package/node_modules/node-abi/node_modules/semver/functions/parse.js +33 -0
- package/node_modules/node-abi/node_modules/semver/functions/patch.js +3 -0
- package/node_modules/node-abi/node_modules/semver/functions/prerelease.js +6 -0
- package/node_modules/node-abi/node_modules/semver/functions/rcompare.js +3 -0
- package/node_modules/node-abi/node_modules/semver/functions/rsort.js +3 -0
- package/node_modules/node-abi/node_modules/semver/functions/satisfies.js +10 -0
- package/node_modules/node-abi/node_modules/semver/functions/sort.js +3 -0
- package/node_modules/node-abi/node_modules/semver/functions/valid.js +6 -0
- package/node_modules/node-abi/node_modules/semver/index.js +48 -0
- package/node_modules/node-abi/node_modules/semver/internal/constants.js +17 -0
- package/node_modules/node-abi/node_modules/semver/internal/debug.js +9 -0
- package/node_modules/node-abi/node_modules/semver/internal/identifiers.js +23 -0
- package/node_modules/node-abi/node_modules/semver/internal/parse-options.js +11 -0
- package/node_modules/node-abi/node_modules/semver/internal/re.js +182 -0
- package/node_modules/{semver → node-abi/node_modules/semver}/package.json +32 -23
- package/node_modules/node-abi/node_modules/semver/preload.js +2 -0
- package/node_modules/{semver → node-abi/node_modules/semver}/range.bnf +0 -0
- package/node_modules/node-abi/node_modules/semver/ranges/gtr.js +4 -0
- package/node_modules/node-abi/node_modules/semver/ranges/intersects.js +7 -0
- package/node_modules/node-abi/node_modules/semver/ranges/ltr.js +4 -0
- package/node_modules/node-abi/node_modules/semver/ranges/max-satisfying.js +25 -0
- package/node_modules/node-abi/node_modules/semver/ranges/min-satisfying.js +24 -0
- package/node_modules/node-abi/node_modules/semver/ranges/min-version.js +60 -0
- package/node_modules/node-abi/node_modules/semver/ranges/outside.js +80 -0
- package/node_modules/node-abi/node_modules/semver/ranges/simplify.js +44 -0
- package/node_modules/node-abi/node_modules/semver/ranges/subset.js +222 -0
- package/node_modules/node-abi/node_modules/semver/ranges/to-comparators.js +8 -0
- package/node_modules/node-abi/node_modules/semver/ranges/valid.js +11 -0
- package/node_modules/node-abi/package.json +20 -17
- package/node_modules/node-abi/test/index.js +7 -15
- package/node_modules/prebuild-install/CHANGELOG.md +24 -7
- package/node_modules/prebuild-install/README.md +24 -4
- package/node_modules/prebuild-install/asset.js +10 -10
- package/node_modules/prebuild-install/bin.js +13 -13
- package/node_modules/prebuild-install/download.js +22 -22
- package/node_modules/prebuild-install/log.js +4 -4
- package/node_modules/prebuild-install/package.json +18 -19
- package/node_modules/prebuild-install/proxy.js +10 -10
- package/node_modules/prebuild-install/rc.js +12 -12
- package/node_modules/prebuild-install/util.js +14 -14
- package/node_modules/simple-get/.github/dependabot.yml +15 -0
- package/node_modules/simple-get/.github/workflows/ci.yml +23 -0
- package/node_modules/simple-get/README.md +17 -3
- package/node_modules/simple-get/index.js +9 -0
- package/node_modules/simple-get/package.json +27 -13
- package/package.json +6 -5
- package/src/media-audio-wrapper.cpp +2 -2
- package/src/peer-connection-wrapper.cpp +63 -10
- package/src/peer-connection-wrapper.h +7 -2
- package/test/test.js +45 -0
- package/node_modules/detect-libc/.npmignore +0 -7
- package/node_modules/detect-libc/bin/detect-libc.js +0 -18
- package/node_modules/node-abi/.travis.yml +0 -17
- package/node_modules/semver/CHANGELOG.md +0 -39
- package/node_modules/semver/bin/semver +0 -160
- package/node_modules/semver/semver.js +0 -1483
package/test/test.js
CHANGED
|
@@ -145,4 +145,49 @@ describe('P2P', () => {
|
|
|
145
145
|
}, 12 * 1000);
|
|
146
146
|
|
|
147
147
|
});
|
|
148
|
+
});
|
|
149
|
+
|
|
150
|
+
function waitForGathering(peer) {
|
|
151
|
+
return new Promise((resolve) => {
|
|
152
|
+
peer.onGatheringStateChange((state) => {
|
|
153
|
+
if (state === 'complete') resolve();
|
|
154
|
+
});
|
|
155
|
+
// Handle race conditions where gathering has already completed
|
|
156
|
+
if (peer.gatheringState() === 'complete') resolve();
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
describe('DataChannel streams', () => {
|
|
161
|
+
|
|
162
|
+
test('can build an echo pipeline', async () => {
|
|
163
|
+
let clientPeer = new nodeDataChannel.PeerConnection("Client", { iceServers: [] });
|
|
164
|
+
let echoPeer = new nodeDataChannel.PeerConnection("Client", { iceServers: [] });
|
|
165
|
+
|
|
166
|
+
const echoStream = new nodeDataChannel.DataChannelStream(
|
|
167
|
+
echoPeer.createDataChannel("echo-channel")
|
|
168
|
+
);
|
|
169
|
+
echoStream.pipe(echoStream); // Echo all received data back to the client
|
|
170
|
+
|
|
171
|
+
await waitForGathering(echoPeer);
|
|
172
|
+
|
|
173
|
+
const { sdp: echoDescSdp, type: echoDescType } = echoPeer.localDescription();
|
|
174
|
+
clientPeer.setRemoteDescription(echoDescSdp, echoDescType);
|
|
175
|
+
await waitForGathering(clientPeer);
|
|
176
|
+
|
|
177
|
+
const { sdp: clientDescSdp, type: clientDescType } = clientPeer.localDescription();
|
|
178
|
+
echoPeer.setRemoteDescription(clientDescSdp, clientDescType);
|
|
179
|
+
|
|
180
|
+
const clientChannel = await new Promise((resolve) => clientPeer.onDataChannel(resolve));
|
|
181
|
+
|
|
182
|
+
const clientResponsePromise = new Promise((resolve) => clientChannel.onMessage(resolve));
|
|
183
|
+
clientChannel.sendMessage("test message");
|
|
184
|
+
|
|
185
|
+
expect(await clientResponsePromise).toBe("test message");
|
|
186
|
+
|
|
187
|
+
clientChannel.close();
|
|
188
|
+
await new Promise((resolve) => echoStream.on('end', resolve));
|
|
189
|
+
|
|
190
|
+
clientPeer.close();
|
|
191
|
+
echoPeer.close();
|
|
192
|
+
});
|
|
148
193
|
});
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
'use strict';
|
|
4
|
-
|
|
5
|
-
var spawnSync = require('child_process').spawnSync;
|
|
6
|
-
var libc = require('../');
|
|
7
|
-
|
|
8
|
-
var spawnOptions = {
|
|
9
|
-
env: process.env,
|
|
10
|
-
shell: true,
|
|
11
|
-
stdio: 'inherit'
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
if (libc.isNonGlibcLinux) {
|
|
15
|
-
spawnOptions.env.LIBC = process.env.LIBC || libc.family;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
process.exit(spawnSync(process.argv[2], process.argv.slice(3), spawnOptions).status);
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
language: node_js
|
|
2
|
-
cache:
|
|
3
|
-
directories:
|
|
4
|
-
- ~/.npm
|
|
5
|
-
notifications:
|
|
6
|
-
email: false
|
|
7
|
-
node_js:
|
|
8
|
-
- '14'
|
|
9
|
-
- '12'
|
|
10
|
-
- '10'
|
|
11
|
-
- '9'
|
|
12
|
-
- '8'
|
|
13
|
-
after_success:
|
|
14
|
-
- npm run travis-deploy-once "npm run semantic-release"
|
|
15
|
-
branches:
|
|
16
|
-
except:
|
|
17
|
-
- /^v\d+\.\d+\.\d+$/
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
# changes log
|
|
2
|
-
|
|
3
|
-
## 5.7
|
|
4
|
-
|
|
5
|
-
* Add `minVersion` method
|
|
6
|
-
|
|
7
|
-
## 5.6
|
|
8
|
-
|
|
9
|
-
* Move boolean `loose` param to an options object, with
|
|
10
|
-
backwards-compatibility protection.
|
|
11
|
-
* Add ability to opt out of special prerelease version handling with
|
|
12
|
-
the `includePrerelease` option flag.
|
|
13
|
-
|
|
14
|
-
## 5.5
|
|
15
|
-
|
|
16
|
-
* Add version coercion capabilities
|
|
17
|
-
|
|
18
|
-
## 5.4
|
|
19
|
-
|
|
20
|
-
* Add intersection checking
|
|
21
|
-
|
|
22
|
-
## 5.3
|
|
23
|
-
|
|
24
|
-
* Add `minSatisfying` method
|
|
25
|
-
|
|
26
|
-
## 5.2
|
|
27
|
-
|
|
28
|
-
* Add `prerelease(v)` that returns prerelease components
|
|
29
|
-
|
|
30
|
-
## 5.1
|
|
31
|
-
|
|
32
|
-
* Add Backus-Naur for ranges
|
|
33
|
-
* Remove excessively cute inspection methods
|
|
34
|
-
|
|
35
|
-
## 5.0
|
|
36
|
-
|
|
37
|
-
* Remove AMD/Browserified build artifacts
|
|
38
|
-
* Fix ltr and gtr when using the `*` range
|
|
39
|
-
* Fix for range `*` with a prerelease identifier
|
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
// Standalone semver comparison program.
|
|
3
|
-
// Exits successfully and prints matching version(s) if
|
|
4
|
-
// any supplied version is valid and passes all tests.
|
|
5
|
-
|
|
6
|
-
var argv = process.argv.slice(2)
|
|
7
|
-
|
|
8
|
-
var versions = []
|
|
9
|
-
|
|
10
|
-
var range = []
|
|
11
|
-
|
|
12
|
-
var inc = null
|
|
13
|
-
|
|
14
|
-
var version = require('../package.json').version
|
|
15
|
-
|
|
16
|
-
var loose = false
|
|
17
|
-
|
|
18
|
-
var includePrerelease = false
|
|
19
|
-
|
|
20
|
-
var coerce = false
|
|
21
|
-
|
|
22
|
-
var identifier
|
|
23
|
-
|
|
24
|
-
var semver = require('../semver')
|
|
25
|
-
|
|
26
|
-
var reverse = false
|
|
27
|
-
|
|
28
|
-
var options = {}
|
|
29
|
-
|
|
30
|
-
main()
|
|
31
|
-
|
|
32
|
-
function main () {
|
|
33
|
-
if (!argv.length) return help()
|
|
34
|
-
while (argv.length) {
|
|
35
|
-
var a = argv.shift()
|
|
36
|
-
var indexOfEqualSign = a.indexOf('=')
|
|
37
|
-
if (indexOfEqualSign !== -1) {
|
|
38
|
-
a = a.slice(0, indexOfEqualSign)
|
|
39
|
-
argv.unshift(a.slice(indexOfEqualSign + 1))
|
|
40
|
-
}
|
|
41
|
-
switch (a) {
|
|
42
|
-
case '-rv': case '-rev': case '--rev': case '--reverse':
|
|
43
|
-
reverse = true
|
|
44
|
-
break
|
|
45
|
-
case '-l': case '--loose':
|
|
46
|
-
loose = true
|
|
47
|
-
break
|
|
48
|
-
case '-p': case '--include-prerelease':
|
|
49
|
-
includePrerelease = true
|
|
50
|
-
break
|
|
51
|
-
case '-v': case '--version':
|
|
52
|
-
versions.push(argv.shift())
|
|
53
|
-
break
|
|
54
|
-
case '-i': case '--inc': case '--increment':
|
|
55
|
-
switch (argv[0]) {
|
|
56
|
-
case 'major': case 'minor': case 'patch': case 'prerelease':
|
|
57
|
-
case 'premajor': case 'preminor': case 'prepatch':
|
|
58
|
-
inc = argv.shift()
|
|
59
|
-
break
|
|
60
|
-
default:
|
|
61
|
-
inc = 'patch'
|
|
62
|
-
break
|
|
63
|
-
}
|
|
64
|
-
break
|
|
65
|
-
case '--preid':
|
|
66
|
-
identifier = argv.shift()
|
|
67
|
-
break
|
|
68
|
-
case '-r': case '--range':
|
|
69
|
-
range.push(argv.shift())
|
|
70
|
-
break
|
|
71
|
-
case '-c': case '--coerce':
|
|
72
|
-
coerce = true
|
|
73
|
-
break
|
|
74
|
-
case '-h': case '--help': case '-?':
|
|
75
|
-
return help()
|
|
76
|
-
default:
|
|
77
|
-
versions.push(a)
|
|
78
|
-
break
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
var options = { loose: loose, includePrerelease: includePrerelease }
|
|
83
|
-
|
|
84
|
-
versions = versions.map(function (v) {
|
|
85
|
-
return coerce ? (semver.coerce(v) || { version: v }).version : v
|
|
86
|
-
}).filter(function (v) {
|
|
87
|
-
return semver.valid(v)
|
|
88
|
-
})
|
|
89
|
-
if (!versions.length) return fail()
|
|
90
|
-
if (inc && (versions.length !== 1 || range.length)) { return failInc() }
|
|
91
|
-
|
|
92
|
-
for (var i = 0, l = range.length; i < l; i++) {
|
|
93
|
-
versions = versions.filter(function (v) {
|
|
94
|
-
return semver.satisfies(v, range[i], options)
|
|
95
|
-
})
|
|
96
|
-
if (!versions.length) return fail()
|
|
97
|
-
}
|
|
98
|
-
return success(versions)
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
function failInc () {
|
|
102
|
-
console.error('--inc can only be used on a single version with no range')
|
|
103
|
-
fail()
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
function fail () { process.exit(1) }
|
|
107
|
-
|
|
108
|
-
function success () {
|
|
109
|
-
var compare = reverse ? 'rcompare' : 'compare'
|
|
110
|
-
versions.sort(function (a, b) {
|
|
111
|
-
return semver[compare](a, b, options)
|
|
112
|
-
}).map(function (v) {
|
|
113
|
-
return semver.clean(v, options)
|
|
114
|
-
}).map(function (v) {
|
|
115
|
-
return inc ? semver.inc(v, inc, options, identifier) : v
|
|
116
|
-
}).forEach(function (v, i, _) { console.log(v) })
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
function help () {
|
|
120
|
-
console.log(['SemVer ' + version,
|
|
121
|
-
'',
|
|
122
|
-
'A JavaScript implementation of the https://semver.org/ specification',
|
|
123
|
-
'Copyright Isaac Z. Schlueter',
|
|
124
|
-
'',
|
|
125
|
-
'Usage: semver [options] <version> [<version> [...]]',
|
|
126
|
-
'Prints valid versions sorted by SemVer precedence',
|
|
127
|
-
'',
|
|
128
|
-
'Options:',
|
|
129
|
-
'-r --range <range>',
|
|
130
|
-
' Print versions that match the specified range.',
|
|
131
|
-
'',
|
|
132
|
-
'-i --increment [<level>]',
|
|
133
|
-
' Increment a version by the specified level. Level can',
|
|
134
|
-
' be one of: major, minor, patch, premajor, preminor,',
|
|
135
|
-
" prepatch, or prerelease. Default level is 'patch'.",
|
|
136
|
-
' Only one version may be specified.',
|
|
137
|
-
'',
|
|
138
|
-
'--preid <identifier>',
|
|
139
|
-
' Identifier to be used to prefix premajor, preminor,',
|
|
140
|
-
' prepatch or prerelease version increments.',
|
|
141
|
-
'',
|
|
142
|
-
'-l --loose',
|
|
143
|
-
' Interpret versions and ranges loosely',
|
|
144
|
-
'',
|
|
145
|
-
'-p --include-prerelease',
|
|
146
|
-
' Always include prerelease versions in range matching',
|
|
147
|
-
'',
|
|
148
|
-
'-c --coerce',
|
|
149
|
-
' Coerce a string into SemVer if possible',
|
|
150
|
-
' (does not imply --loose)',
|
|
151
|
-
'',
|
|
152
|
-
'Program exits successfully if any valid version satisfies',
|
|
153
|
-
'all supplied ranges, and prints all satisfying versions.',
|
|
154
|
-
'',
|
|
155
|
-
'If no satisfying versions are found, then exits failure.',
|
|
156
|
-
'',
|
|
157
|
-
'Versions are printed in ascending order, so supplying',
|
|
158
|
-
'multiple versions to the utility will just sort them.'
|
|
159
|
-
].join('\n'))
|
|
160
|
-
}
|