diff --git a/docs/9.release-notes/1.v8.2.md b/docs/9.release-notes/1.v8.2.md index 0019e60ee..8e8b5bdf3 100644 --- a/docs/9.release-notes/1.v8.2.md +++ b/docs/9.release-notes/1.v8.2.md @@ -1,5 +1,5 @@ --- -title: "8.2" +title: "8.2 (rc)" description: DipDup 8.2 release notes --- @@ -7,5 +7,15 @@ description: DipDup 8.2 release notes # Release Notes: 8.2 +Today we are glad to present you DipDup 8.2. This release is all about one thing: indexing Substrate networks. + +If you're new to DipDup and want action, follow the [Substrate Quickstart Guide](../0.quickstart-substrate.md)! + +If you're familiar with DipDup, the process is very similar to indexing EVM and Starknet networks. Run the `dipdup new` command to initialize the project interactively, update the with your URLs/variables/addresses (in this case, pallets) to index, run `dipdup init`, and you're good to go. + +We support three sources of Substrate data. Squid Network provides all kinds of historical data in a very efficient format. For the blocks yet to be processed by Squid Network you can use Substrate node RPC. Indexing with node RPC is much slower, but allows to process blocks as soon as they are announced. Finally, an optional Subscan API connector is used to speed up the project initialization. + +This release is a pretty big milestone for us, but we decided to make it a minor one, since we follow the semantic versioning, and 8.2 doesn't introduce any changes that break backward compatibility. So, you can extend your existing projects with Substrate data right after the update. A if you're still on 7.x branch, it's a pretty good time for us to remind you to upgrade! :) + {{ #include 9.release-notes/_8.2_changelog.md }} {{ #include 9.release-notes/_footer.md }} diff --git a/src/dipdup/config/evm_etherscan.py b/src/dipdup/config/evm_etherscan.py index 834c72e62..2ff8ba722 100644 --- a/src/dipdup/config/evm_etherscan.py +++ b/src/dipdup/config/evm_etherscan.py @@ -1,5 +1,6 @@ from __future__ import annotations +import logging from typing import Literal from pydantic import ConfigDict @@ -8,6 +9,8 @@ from dipdup.config import DatasourceConfig from dipdup.config import HttpConfig +_logger = logging.getLogger(__name__) + @dataclass(config=ConfigDict(extra='forbid', defer_build=True), kw_only=True) class EvmEtherscanDatasourceConfig(DatasourceConfig): @@ -25,3 +28,9 @@ class EvmEtherscanDatasourceConfig(DatasourceConfig): api_key: str | None = None http: HttpConfig | None = None + + def __post_init__(self) -> None: + if self.kind == 'abi.etherscan': + _logger.warning( + '`abi.etherscan` datasource has been renamed to `evm.etherscan`. Please, update your config.' + ) diff --git a/tests/test_index/test_tzkt_operations.py b/tests/test_index/test_tzkt_operations.py index fd67d0780..64e47982e 100644 --- a/tests/test_index/test_tzkt_operations.py +++ b/tests/test_index/test_tzkt_operations.py @@ -50,7 +50,6 @@ async def test_ignored_type_filter( assert not hashes -@pytest.mark.skip('FIXME: Pydantic 2 migration mystery') async def test_get_origination_filters( tzkt: TezosTzktDatasource, index_config: TezosOperationsIndexConfig, @@ -112,7 +111,6 @@ async def test_get_origination_filters( assert hashes == set() -@pytest.mark.skip('FIXME: Pydantic 2 migration mystery') async def test_get_transaction_filters(tzkt: TezosTzktDatasource, index_config: TezosOperationsIndexConfig) -> None: index_config.types = (TezosOperationType.transaction,) index_config.contracts[2].code_hash = -680664524