diff --git a/.github/workflows/check-sdk-tests.yml b/.github/workflows/check-sdk-tests.yml index cd1832d..6422ce7 100644 --- a/.github/workflows/check-sdk-tests.yml +++ b/.github/workflows/check-sdk-tests.yml @@ -269,7 +269,7 @@ jobs: - name: Install Bittensor SDK dependencies working-directory: ${{ github.workspace }}/bittensor - run: uv pip install --system '.[dev]' + run: uv pip install --system '.[dev]' torch - name: Clone async-substrate-interface repo run: git clone https://github.com/opentensor/async-substrate-interface.git diff --git a/CHANGELOG.md b/CHANGELOG.md index a157b62..3f90063 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # Changelog +## 1.5.15 /2025-12-22 +* Modifies the CachedFetcher to not keep pending exceptions by @thewhaleking in https://github.com/opentensor/async-substrate-interface/pull/253 + +**Full Changelog**: https://github.com/opentensor/async-substrate-interface/compare/v1.5.14...v1.5.15 + ## 1.5.14 /2025-12-04 * Update: Adds support for custom extrinsic `DecryptionFailed` by @ibraheem-abe in https://github.com/opentensor/async-substrate-interface/pull/247 diff --git a/async_substrate_interface/utils/cache.py b/async_substrate_interface/utils/cache.py index 5cf1fe4..d8b494a 100644 --- a/async_substrate_interface/utils/cache.py +++ b/async_substrate_interface/utils/cache.py @@ -321,7 +321,8 @@ async def __call__(self, *args: Any, **kwargs: Any) -> Any: future.set_result(result) return result except Exception as e: - future.set_exception(e) + self._inflight.pop(key, None) + future.cancel() raise finally: self._inflight.pop(key, None) diff --git a/pyproject.toml b/pyproject.toml index d260931..7eb8606 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "async-substrate-interface" -version = "1.5.14" +version = "1.5.15" description = "Asyncio library for interacting with substrate. Mostly API-compatible with py-substrate-interface" readme = "README.md" license = { file = "LICENSE" }