Skip to content

Commit 14cc9e5

Browse files
authored
chore: update native-abort-controller module (#3521)
To avoid extending built-in classes you now need to use named exports when importing `native-abort-controller`. Fixes #3509
1 parent 9b415fe commit 14cc9e5

File tree

13 files changed

+57
-35
lines changed

13 files changed

+57
-35
lines changed

package.json

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,17 +48,18 @@
4848
"prepare": "aegir build --no-bundle",
4949
"coverage": "npx nyc -r html npm run test:node -- --bail",
5050
"clean": "rimraf ./dist",
51-
"dep-check": "aegir dep-check -i ipfs-core -i rimraf -i ipfs-core-types"
51+
"dep-check": "aegir dep-check -i ipfs-core -i rimraf -i ipfs-core-types -i abort-controller"
5252
},
5353
"dependencies": {
54-
"any-signal": "^2.0.0",
54+
"abort-controller": "^3.0.0",
55+
"any-signal": "^2.1.2",
5556
"bignumber.js": "^9.0.0",
5657
"cids": "^1.1.5",
5758
"debug": "^4.1.1",
5859
"form-data": "^3.0.0",
5960
"ipfs-core-types": "^0.3.0",
6061
"ipfs-core-utils": "^0.7.0",
61-
"ipfs-utils": "^6.0.0",
62+
"ipfs-utils": "^6.0.1",
6263
"ipld-block": "^0.11.0",
6364
"ipld-dag-cbor": "^0.17.0",
6465
"ipld-dag-pb": "^0.20.0",
@@ -73,7 +74,7 @@
7374
"multicodec": "^2.0.1",
7475
"multihashes": "^3.0.1",
7576
"nanoid": "^3.1.12",
76-
"native-abort-controller": "~0.0.3",
77+
"native-abort-controller": "^1.0.3",
7778
"parse-duration": "^0.4.4",
7879
"stream-to-it": "^0.2.2",
7980
"uint8arrays": "^2.0.5"

src/add-all.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ const toCamel = require('./lib/object-to-camel')
55
const configure = require('./lib/configure')
66
const multipartRequest = require('./lib/multipart-request')
77
const toUrlSearchParams = require('./lib/to-url-search-params')
8-
const { anySignal } = require('any-signal')
9-
const AbortController = require('native-abort-controller')
8+
const abortSignal = require('./lib/abort-signal')
9+
const { AbortController } = require('native-abort-controller')
1010

1111
/**
1212
* @typedef {import('ipfs-utils/src/types').ProgressFn} IPFSUtilsHttpUploadProgressFn
@@ -20,7 +20,7 @@ module.exports = configure((api) => {
2020
async function * addAll (source, options = {}) {
2121
// allow aborting requests on body errors
2222
const controller = new AbortController()
23-
const signal = anySignal([controller.signal, options.signal])
23+
const signal = abortSignal(controller.signal, options.signal)
2424
const { headers, body, total, parts } =
2525
await multipartRequest(source, controller, options.headers)
2626

src/block/put.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ const multihash = require('multihashes')
66
const multipartRequest = require('../lib/multipart-request')
77
const configure = require('../lib/configure')
88
const toUrlSearchParams = require('../lib/to-url-search-params')
9-
const { anySignal } = require('any-signal')
10-
const AbortController = require('native-abort-controller')
9+
const abortSignal = require('../lib/abort-signal')
10+
const { AbortController } = require('native-abort-controller')
1111

1212
module.exports = configure(api => {
1313
/**
@@ -41,7 +41,7 @@ module.exports = configure(api => {
4141

4242
// allow aborting requests on body errors
4343
const controller = new AbortController()
44-
const signal = anySignal([controller.signal, options.signal])
44+
const signal = abortSignal(controller.signal, options.signal)
4545

4646
let res
4747
try {

src/config/replace.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ const uint8ArrayFromString = require('uint8arrays/from-string')
44
const multipartRequest = require('../lib/multipart-request')
55
const configure = require('../lib/configure')
66
const toUrlSearchParams = require('../lib/to-url-search-params')
7-
const { anySignal } = require('any-signal')
8-
const AbortController = require('native-abort-controller')
7+
const abortSignal = require('../lib/abort-signal')
8+
const { AbortController } = require('native-abort-controller')
99

1010
module.exports = configure(api => {
1111
/**
@@ -14,7 +14,7 @@ module.exports = configure(api => {
1414
const replace = async (config, options = {}) => {
1515
// allow aborting requests on body errors
1616
const controller = new AbortController()
17-
const signal = anySignal([controller.signal, options.signal])
17+
const signal = abortSignal(controller.signal, options.signal)
1818

1919
// @ts-ignore https://github.com/ipfs/js-ipfs-utils/issues/90
2020
const res = await api.post('config/replace', {

src/dag/put.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ const multihash = require('multihashes')
55
const configure = require('../lib/configure')
66
const multipartRequest = require('../lib/multipart-request')
77
const toUrlSearchParams = require('../lib/to-url-search-params')
8-
const { anySignal } = require('any-signal')
9-
const AbortController = require('native-abort-controller')
8+
const abortSignal = require('../lib/abort-signal')
9+
const { AbortController } = require('native-abort-controller')
1010
const multicodec = require('multicodec')
1111
const loadFormat = require('../lib/ipld-formats')
1212

@@ -48,7 +48,7 @@ module.exports = configure((api, opts) => {
4848

4949
// allow aborting requests on body errors
5050
const controller = new AbortController()
51-
const signal = anySignal([controller.signal, settings.signal])
51+
const signal = abortSignal(controller.signal, settings.signal)
5252

5353
// @ts-ignore https://github.com/ipfs/js-ipfs-utils/issues/90
5454
const res = await api.post('dag/put', {

src/dht/put.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,16 @@ const toCamel = require('../lib/object-to-camel')
66
const configure = require('../lib/configure')
77
const toUrlSearchParams = require('../lib/to-url-search-params')
88
const multipartRequest = require('../lib/multipart-request')
9-
const { anySignal } = require('any-signal')
10-
const AbortController = require('native-abort-controller')
9+
const abortSignal = require('../lib/abort-signal')
10+
const { AbortController } = require('native-abort-controller')
1111
module.exports = configure(api => {
1212
/**
1313
* @type {import('..').ImplementsMethod<'put', import('ipfs-core/src/components/dht')>}
1414
*/
1515
async function * put (key, value, options = {}) {
1616
// allow aborting requests on body errors
1717
const controller = new AbortController()
18-
const signal = anySignal([controller.signal, options.signal])
18+
const signal = abortSignal(controller.signal, options.signal)
1919

2020
// @ts-ignore https://github.com/ipfs/js-ipfs-utils/issues/90
2121
const res = await api.post('dht/put', {

src/files/write.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ const { mtimeToObject } = require('ipfs-core-utils/src/files/normalise-input/uti
55
const configure = require('../lib/configure')
66
const multipartRequest = require('../lib/multipart-request')
77
const toUrlSearchParams = require('../lib/to-url-search-params')
8-
const { anySignal } = require('any-signal')
9-
const AbortController = require('native-abort-controller')
8+
const abortSignal = require('../lib/abort-signal')
9+
const { AbortController } = require('native-abort-controller')
1010

1111
module.exports = configure(api => {
1212
/**
@@ -15,7 +15,7 @@ module.exports = configure(api => {
1515
async function write (path, input, options = {}) {
1616
// allow aborting requests on body errors
1717
const controller = new AbortController()
18-
const signal = anySignal([controller.signal, options.signal])
18+
const signal = abortSignal(controller.signal, options.signal)
1919

2020
// @ts-ignore https://github.com/ipfs/js-ipfs-utils/issues/90
2121
const res = await api.post('files/write', {

src/lib/abort-signal.js

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
'use strict'
2+
3+
const { anySignal } = require('any-signal')
4+
5+
/**
6+
* @typedef {AbortSignal | undefined} MaybeSignal
7+
*
8+
* @param {MaybeSignal[]} signals
9+
* @returns {AbortSignal[]}
10+
*/
11+
function filter (signals) {
12+
// @ts-ignore
13+
return signals.filter(Boolean)
14+
}
15+
16+
/**
17+
* @param {...AbortSignal|undefined} signals
18+
*/
19+
module.exports = (...signals) => {
20+
return anySignal(filter(signals))
21+
}

src/object/patch/append-data.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,14 @@ const CID = require('cids')
44
const multipartRequest = require('../../lib/multipart-request')
55
const configure = require('../../lib/configure')
66
const toUrlSearchParams = require('../../lib/to-url-search-params')
7-
const { anySignal } = require('any-signal')
8-
const AbortController = require('native-abort-controller')
7+
const abortSignal = require('../../lib/abort-signal')
8+
const { AbortController } = require('native-abort-controller')
99

1010
module.exports = configure(api => {
1111
return async (cid, data, options = {}) => {
1212
// allow aborting requests on body errors
1313
const controller = new AbortController()
14-
const signal = anySignal([controller.signal, options.signal])
14+
const signal = abortSignal(controller.signal, options.signal)
1515

1616
// @ts-ignore https://github.com/ipfs/js-ipfs-utils/issues/90
1717
const res = await api.post('object/patch/append-data', {

src/object/patch/set-data.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,14 @@ const CID = require('cids')
44
const multipartRequest = require('../../lib/multipart-request')
55
const configure = require('../../lib/configure')
66
const toUrlSearchParams = require('../../lib/to-url-search-params')
7-
const { anySignal } = require('any-signal')
8-
const AbortController = require('native-abort-controller')
7+
const abortSignal = require('../../lib/abort-signal')
8+
const { AbortController } = require('native-abort-controller')
99

1010
module.exports = configure(api => {
1111
return async (cid, data, options = {}) => {
1212
// allow aborting requests on body errors
1313
const controller = new AbortController()
14-
const signal = anySignal([controller.signal, options.signal])
14+
const signal = abortSignal(controller.signal, options.signal)
1515

1616
// @ts-ignore https://github.com/ipfs/js-ipfs-utils/issues/90
1717
const { Hash } = await (await api.post('object/patch/set-data', {

0 commit comments

Comments
 (0)