|
| 1 | +<!-- markdownlint-disable first-line-h1 --> |
| 2 | +## Changes since 7.-1 |
| 3 | + |
| 4 | +### Added |
| 5 | + |
| 6 | +- abi.etherscan: Added `abi.etherscan` datasource to fetch ABIs from Etherscan. |
| 7 | +- api: Added `/performance` endpoint to request indexing stats. |
| 8 | +- cli: Added `report` command group to manage performance and crash reports created by DipDup. |
| 9 | +- config: Added `advanced.api` section to configure monitoring API exposed by DipDup. |
| 10 | +- config: Added `advanced.decimal_precision` field to overwrite precision if it's not guessed correctly based on project models. |
| 11 | +- config: Added `advanced.metrics` field to configure amount of gathered metrics. |
| 12 | +- config: Added `advanced.unsafe_sqlite` field to disable journaling and data integrity checks. |
| 13 | +- config: Added `http.alias` field to overwrite alias of datasource HTTP gateway. |
| 14 | +- database: Added `dipdup_meta` immune table to store arbitrary JSON values. |
| 15 | +- database: Added `dipdup_wipe` and `dipdup_approve` SQL functions to the schema. |
| 16 | +- database: Added experimental support for immune tables in SQLite. |
| 17 | +- env: Added `DIPDUP_DEBUG` environment variable to enable debug logging. |
| 18 | +- evm.node: Added `evm.node` datasource to receive events from Ethereum node and use web3 API. |
| 19 | +- evm.subsquid.events: Added `evm.subsquid.events` index to process event logs from Subsquid Archives. |
| 20 | +- evm.subsquid: Added `evm.subsquid` datasource to fetch historical data from Subsquid Archives. |
| 21 | +- models: Added optional `maxsize` meta field to `CachedModel` to limit the LRU cache size. |
| 22 | + |
| 23 | +### Fixed |
| 24 | + |
| 25 | +- ci: Fixed dipdup package metadata. |
| 26 | +- cli: Fixed `config export --full` command showing original config. |
| 27 | +- cli: Fixed `schema wipe` command crash due to `dipdup_meta` table being always immune. |
| 28 | +- cli: Fixed `schema wipe` command for SQLite databases. |
| 29 | +- cli: Fixed ordering of crash reports in `report` group commands. |
| 30 | +- cli: Generate base template from replay only when --base flag is set. |
| 31 | +- cli: Import package submodules before starting indexing to fail early on import errors. |
| 32 | +- cli: Keep the last 100 reports only. |
| 33 | +- cli: Remove cached jsonschemas when calling init --force. |
| 34 | +- cli: Use correct data path with timescaledb-ha Docker image. |
| 35 | +- codegen: Filter jsonschemas by prefixes supported by code generator. |
| 36 | +- config: Don't create empty SentryConfig if DSN is not set. |
| 37 | +- context: Share internal state between context instances. |
| 38 | +- database: Allow running project scripts and queries on SQLite. |
| 39 | +- database: Don't cleanup model updates on every loop. |
| 40 | +- database: Fixed `OperationalError` raised in some cases after calling `bulk_create`. |
| 41 | +- demos: Don't include database config in root config. |
| 42 | +- demos: Fixed decimal overflow in `demo_uniswap` project. |
| 43 | +- evm.node: Fixed incorrect log request parameters. |
| 44 | +- evm.node: Fixed keepalive loop for websocket connection. |
| 45 | +- evm.node: Fixed parsing empty realtime message payloads. |
| 46 | +- evm.node: Fixed parsing topics and integers in datasource models. |
| 47 | +- evm.node: Set `timestamp` field to the block timestamp. |
| 48 | +- evm.subsquid.events: Fixed incorrect log request parameters. |
| 49 | +- evm.subsquid.events: Fixed issue with determining the last level when syncing with node. |
| 50 | +- evm.subsquid.events: Sync to `last_level` if specified in config. |
| 51 | +- evm.subsquid: Create a separate aiohttp session for each worker. |
| 52 | +- hasura: Increated retry count for initial connection (healthcheck). |
| 53 | +- index: Fixed crash when parsing typed transactions with empty parameter. |
| 54 | +- index: Remove Python limitation on large int<->str conversions. |
| 55 | +- install: Fixed issue with interpreting user answers in some cases. |
| 56 | +- jobs: Don't add jobs before scheduler is started. |
| 57 | +- package: Create jsonschemas directory if not exists. |
| 58 | +- package: Create missing files from project base on init. |
| 59 | +- package: Create package symlink only when needed. |
| 60 | +- package: Don't create empty pyproject.toml during init. |
| 61 | +- package: Fixed discovery of the package when workdir is project root. |
| 62 | +- package: Fixed mypy command in default template. |
| 63 | +- package: Fixed package detection for poetry managed projects. |
| 64 | +- package: Update replay.yaml on init. |
| 65 | +- tezos.tzkt.events: Fixed parsing contract event data. |
| 66 | +- tezos.tzkt.operations: Fixed parsing operations with empty parameters. |
| 67 | +- tezos.tzkt: Fixed issue with processing rollbacks while sync is in progress. |
| 68 | +- tezos.tzkt: Fixed operation matching when contract code hash specified as a string. |
| 69 | +- tezos.tzkt: Fixed regression in `get_transactions` method pagination. |
| 70 | + |
| 71 | +### Changed |
| 72 | + |
| 73 | +- ci: Docker images are now based on Debian 12. |
| 74 | +- cli: Commands to manage local dipdup installation moved to the `self` group. |
| 75 | +- cli: `config env --file` option renamed to `--output`. |
| 76 | +- cli: `init --overwrite-types` flag renamed to `--force` and now also affects ABIs. |
| 77 | +- cli: `report` command renamed to `report ls`. |
| 78 | +- config: `advanced.rollback_depth` value set based on indexes used in the project if not set explicitly. |
| 79 | +- config: `logging` field now can contain either loglevel or name-loglevel mapping. |
| 80 | +- context: Signature of `add_contract` method has changed. |
| 81 | +- database: Querysets are no longer copied between chained method calls (`.filter().order_by().limit()`) |
| 82 | +- database: Store datasource aliases instead of URLs in `dipdup_head` table. |
| 83 | +- database: `EnumField` now uses `TEXT` type instead of `VARCHAR(n)`. |
| 84 | +- models: User models must use field classes from `dipdup.fields` module instead of `tortoise.fields`. |
| 85 | +- tezos.tzkt.head: Replaced `handlers` section with a single `callback` field in config. |
| 86 | +- tezos.tzkt: Signatures of `[get/iter]_similar_contracts` and `[get/iter]_originated_contracts` methods have changed. |
| 87 | + |
| 88 | +### Removed |
| 89 | + |
| 90 | +- ci: Docker images no longer contain git, poetry and custom scripts. |
| 91 | +- ci: `-slim` and `-pytezos` Docker images are no longer published. |
| 92 | +- cli: Removed `dipdup-install` alias to `dipdup.install`. |
| 93 | +- cli: Removed `status` command. |
| 94 | +- config: Removed `# dipdup: ignore` hint used to ignore typeclass during init. |
| 95 | +- config: Removed `advanced.metadata_interface` flag (always enabled). |
| 96 | +- config: Removed `similar_to` filter of `operation` index pattern. |
| 97 | +- sentry: Removed `crash_reporting` flag and built-in DSN. |
| 98 | + |
| 99 | +### Other |
| 100 | + |
| 101 | +- tzkt: Request plain values instead of mappings from TzKT when possible. |
0 commit comments