From ccbec8098ab0b0e228426e642b8b002967c66885 Mon Sep 17 00:00:00 2001 From: carlosmiei <43336371+carlosmiei@users.noreply.github.com> Date: Fri, 28 Nov 2025 12:44:15 +0000 Subject: [PATCH 1/5] fix(client): upgrade allTickers to miniTicker because stream was deprecated --- src/websocket.js | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/websocket.js b/src/websocket.js index 443cf64b..f57b868d 100644 --- a/src/websocket.js +++ b/src/websocket.js @@ -378,6 +378,33 @@ const ticker = (payload, cb, transform = true, variator) => { } const allTickers = (cb, transform = true, variator) => { + const w = new openWebSocket( + `${ + variator === 'futures' + ? endpoints.futures + : variator === 'delivery' + ? endpoints.delivery + : endpoints.base + }/!miniTicker@arr`, + ) + + w.onmessage = msg => { + const arr = JSONbig.parse(msg.data) + cb( + transform + ? variator === 'futures' + ? arr.map(m => futuresTickerTransform(m)) + : variator === 'delivery' + ? arr.map(m => deliveryTickerTransform(m)) + : arr.map(m => tickerTransform(m)) + : arr, + ) + } + + return options => w.close(1000, 'Close handle was called', { keepClosed: true, ...options }) +} + +const allTickersDeprecated = (cb, transform = true, variator) => { const w = new openWebSocket( `${ variator === 'futures' @@ -980,6 +1007,7 @@ export default opts => { bookTicker, ticker, allTickers, + allTickersDeprecated, // uses deprecated stream miniTicker, allMiniTickers, customSubStream, From 7ec8d9bdc8d8d6e6610afc00e7d6d145c17108d6 Mon Sep 17 00:00:00 2001 From: carlosmiei <43336371+carlosmiei@users.noreply.github.com> Date: Fri, 28 Nov 2025 12:56:29 +0000 Subject: [PATCH 2/5] rm comment --- src/websocket.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/websocket.js b/src/websocket.js index f57b868d..6df2f59f 100644 --- a/src/websocket.js +++ b/src/websocket.js @@ -1007,7 +1007,7 @@ export default opts => { bookTicker, ticker, allTickers, - allTickersDeprecated, // uses deprecated stream + allTickersDeprecated, miniTicker, allMiniTickers, customSubStream, From b74ac48a4a00a2fffaee6b405399d7f41c13ab8b Mon Sep 17 00:00:00 2001 From: carlosmiei <43336371+carlosmiei@users.noreply.github.com> Date: Fri, 28 Nov 2025 13:01:51 +0000 Subject: [PATCH 3/5] update test --- test/websockets/ticker.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/websockets/ticker.js b/test/websockets/ticker.js index c2d0e7e5..c4beebc7 100644 --- a/test/websockets/ticker.js +++ b/test/websockets/ticker.js @@ -135,7 +135,7 @@ test('[WS] allTickers', t => { return new Promise(resolve => { const clean = client.ws.allTickers(tickers => { t.truthy(Array.isArray(tickers)) - t.is(tickers[0].eventType, '24hrTicker') + t.is(tickers[0].eventType, '24hrMiniTicker') checkFields(t, tickers[0], ['symbol', 'priceChange', 'priceChangePercent']) clean() resolve() From f891bc9a5ec1c780085ee95606d9063f77a3bd06 Mon Sep 17 00:00:00 2001 From: carlosmiei <43336371+carlosmiei@users.noreply.github.com> Date: Fri, 28 Nov 2025 13:09:15 +0000 Subject: [PATCH 4/5] update tests --- test/websockets/ticker.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/websockets/ticker.js b/test/websockets/ticker.js index c4beebc7..8e415cf7 100644 --- a/test/websockets/ticker.js +++ b/test/websockets/ticker.js @@ -136,7 +136,7 @@ test('[WS] allTickers', t => { const clean = client.ws.allTickers(tickers => { t.truthy(Array.isArray(tickers)) t.is(tickers[0].eventType, '24hrMiniTicker') - checkFields(t, tickers[0], ['symbol', 'priceChange', 'priceChangePercent']) + checkFields(t, tickers[0], ['symbol', 'open', 'volume']) clean() resolve() }) From 929e6af8f9b8a6d14095b9bd76670b5c7e53b228 Mon Sep 17 00:00:00 2001 From: carlosmiei <43336371+carlosmiei@users.noreply.github.com> Date: Fri, 28 Nov 2025 13:13:07 +0000 Subject: [PATCH 5/5] missing file --- test/index.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/index.js b/test/index.js index 6c71fe07..5034d131 100644 --- a/test/index.js +++ b/test/index.js @@ -250,8 +250,8 @@ test('[WS] allTicker', t => { return new Promise(resolve => { client.ws.allTickers(tickers => { t.truthy(Array.isArray(tickers)) - t.is(tickers[0].eventType, '24hrTicker') - checkFields(t, tickers[0], ['symbol', 'priceChange', 'priceChangePercent']) + t.is(tickers[0].eventType, '24hrMiniTicker') + checkFields(t, tickers[0], ['symbol', 'open', 'volume']) resolve() }) })