From 17678f1819e157cead0b3522545db2168ae026d8 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 25 Apr 2026 08:48:46 +0200 Subject: [PATCH] refactor: make klines_last_request private --- freqtrade/exchange/exchange_ws.py | 6 +++--- tests/exchange/test_exchange_ws.py | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/freqtrade/exchange/exchange_ws.py b/freqtrade/exchange/exchange_ws.py index 147541895..9da963184 100644 --- a/freqtrade/exchange/exchange_ws.py +++ b/freqtrade/exchange/exchange_ws.py @@ -29,7 +29,7 @@ class ExchangeWS: self._klines_watching: set[PairWithTimeframe] = set() self._klines_scheduled: set[PairWithTimeframe] = set() self.klines_last_refresh: dict[PairWithTimeframe, float] = {} - self.klines_last_request: dict[PairWithTimeframe, float] = {} + self._klines_last_request: dict[PairWithTimeframe, float] = {} self._thread = Thread(name="ccxt_ws", target=self._start_forever) self._thread.start() @@ -130,7 +130,7 @@ class ExchangeWS: for p in list(self._klines_watching): _, timeframe, _ = p timeframe_s = timeframe_to_seconds(timeframe) - last_refresh = self.klines_last_request.get(p, 0) + last_refresh = self._klines_last_request.get(p, 0) if last_refresh > 0 and (dt_ts() - last_refresh) > ((timeframe_s + 20) * 1000): logger.info(f"Removing {p} from websocket watchlist.") self._klines_watching.discard(p) @@ -238,7 +238,7 @@ class ExchangeWS: return with self._state_lock: self._klines_watching.add((pair, timeframe, candle_type)) - self.klines_last_request[(pair, timeframe, candle_type)] = dt_ts() + self._klines_last_request[(pair, timeframe, candle_type)] = dt_ts() # asyncio.run_coroutine_threadsafe(self.schedule_schedule(), loop=self._loop) asyncio.run_coroutine_threadsafe(self._schedule_while_true(), loop=self._loop) self.cleanup_expired() diff --git a/tests/exchange/test_exchange_ws.py b/tests/exchange/test_exchange_ws.py index 827102442..90987fc8a 100644 --- a/tests/exchange/test_exchange_ws.py +++ b/tests/exchange/test_exchange_ws.py @@ -27,7 +27,7 @@ def test_exchangews_init(mocker): assert exchange_ws._klines_watching == set() assert exchange_ws._klines_scheduled == set() assert exchange_ws.klines_last_refresh == {} - assert exchange_ws.klines_last_request == {} + assert exchange_ws._klines_last_request == {} # Cleanup exchange_ws.cleanup() @@ -120,7 +120,7 @@ def test_exchangews_schedule_ohlcv_loop_not_ready(mocker, caplog): exchange_ws.schedule_ohlcv("ETH/BTC", "1m", CandleType.SPOT) assert exchange_ws._klines_watching == set() - assert exchange_ws.klines_last_request == {} + assert exchange_ws._klines_last_request == {} assert run_threadsafe.call_count == 0 assert log_has_re("Websocket loop not ready. Could not schedule ETH/BTC, 1m", caplog)