Skip to content

Commit 52aff75

Browse files
droserasproutigorseredabaitcode
authored
Bump version 8.2.0 (#1210)
Co-authored-by: Igor Sereda <[email protected]> Co-authored-by: Ilia Batii <[email protected]>
1 parent e54856f commit 52aff75

File tree

107 files changed

+529
-448
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

107 files changed

+529
-448
lines changed

.vscode/launch.json

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
}
3939
},
4040
{
41-
"name": "demo_substrate_events: run",
41+
"name": "demo_evm_events: run",
4242
"type": "debugpy",
4343
"request": "launch",
4444
"module": "dipdup",
@@ -48,15 +48,15 @@
4848
"run"
4949
],
5050
"console": "integratedTerminal",
51-
"cwd": "${workspaceFolder}/src/demo_substrate_events",
51+
"cwd": "${workspaceFolder}/src/demo_evm_events",
5252
"justMyCode": false,
5353
"env": {
5454
"DIPDUP_DEBUG": "1",
5555
"DIPDUP_NO_SYMLINK": "1"
5656
}
5757
},
5858
{
59-
"name": "demo_substrate_events: init",
59+
"name": "demo_evm_events: init",
6060
"type": "debugpy",
6161
"request": "launch",
6262
"module": "dipdup",
@@ -66,15 +66,15 @@
6666
"init"
6767
],
6868
"console": "integratedTerminal",
69-
"cwd": "${workspaceFolder}/src/demo_substrate_events",
69+
"cwd": "${workspaceFolder}/src/demo_evm_events",
7070
"justMyCode": false,
7171
"env": {
7272
"DIPDUP_DEBUG": "1",
7373
"DIPDUP_NO_SYMLINK": "1"
7474
}
7575
},
7676
{
77-
"name": "demo_evm_events: run",
77+
"name": "demo_evm_transactions: run",
7878
"type": "debugpy",
7979
"request": "launch",
8080
"module": "dipdup",
@@ -84,15 +84,15 @@
8484
"run"
8585
],
8686
"console": "integratedTerminal",
87-
"cwd": "${workspaceFolder}/src/demo_evm_events",
87+
"cwd": "${workspaceFolder}/src/demo_evm_transactions",
8888
"justMyCode": false,
8989
"env": {
9090
"DIPDUP_DEBUG": "1",
9191
"DIPDUP_NO_SYMLINK": "1"
9292
}
9393
},
9494
{
95-
"name": "demo_evm_events: init",
95+
"name": "demo_evm_transactions: init",
9696
"type": "debugpy",
9797
"request": "launch",
9898
"module": "dipdup",
@@ -102,15 +102,15 @@
102102
"init"
103103
],
104104
"console": "integratedTerminal",
105-
"cwd": "${workspaceFolder}/src/demo_evm_events",
105+
"cwd": "${workspaceFolder}/src/demo_evm_transactions",
106106
"justMyCode": false,
107107
"env": {
108108
"DIPDUP_DEBUG": "1",
109109
"DIPDUP_NO_SYMLINK": "1"
110110
}
111111
},
112112
{
113-
"name": "demo_evm_transactions: run",
113+
"name": "demo_evm_uniswap: run",
114114
"type": "debugpy",
115115
"request": "launch",
116116
"module": "dipdup",
@@ -120,15 +120,15 @@
120120
"run"
121121
],
122122
"console": "integratedTerminal",
123-
"cwd": "${workspaceFolder}/src/demo_evm_transactions",
123+
"cwd": "${workspaceFolder}/src/demo_evm_uniswap",
124124
"justMyCode": false,
125125
"env": {
126126
"DIPDUP_DEBUG": "1",
127127
"DIPDUP_NO_SYMLINK": "1"
128128
}
129129
},
130130
{
131-
"name": "demo_evm_transactions: init",
131+
"name": "demo_evm_uniswap: init",
132132
"type": "debugpy",
133133
"request": "launch",
134134
"module": "dipdup",
@@ -138,15 +138,15 @@
138138
"init"
139139
],
140140
"console": "integratedTerminal",
141-
"cwd": "${workspaceFolder}/src/demo_evm_transactions",
141+
"cwd": "${workspaceFolder}/src/demo_evm_uniswap",
142142
"justMyCode": false,
143143
"env": {
144144
"DIPDUP_DEBUG": "1",
145145
"DIPDUP_NO_SYMLINK": "1"
146146
}
147147
},
148148
{
149-
"name": "demo_evm_uniswap: run",
149+
"name": "demo_starknet_events: run",
150150
"type": "debugpy",
151151
"request": "launch",
152152
"module": "dipdup",
@@ -156,15 +156,15 @@
156156
"run"
157157
],
158158
"console": "integratedTerminal",
159-
"cwd": "${workspaceFolder}/src/demo_evm_uniswap",
159+
"cwd": "${workspaceFolder}/src/demo_starknet_events",
160160
"justMyCode": false,
161161
"env": {
162162
"DIPDUP_DEBUG": "1",
163163
"DIPDUP_NO_SYMLINK": "1"
164164
}
165165
},
166166
{
167-
"name": "demo_evm_uniswap: init",
167+
"name": "demo_starknet_events: init",
168168
"type": "debugpy",
169169
"request": "launch",
170170
"module": "dipdup",
@@ -174,15 +174,15 @@
174174
"init"
175175
],
176176
"console": "integratedTerminal",
177-
"cwd": "${workspaceFolder}/src/demo_evm_uniswap",
177+
"cwd": "${workspaceFolder}/src/demo_starknet_events",
178178
"justMyCode": false,
179179
"env": {
180180
"DIPDUP_DEBUG": "1",
181181
"DIPDUP_NO_SYMLINK": "1"
182182
}
183183
},
184184
{
185-
"name": "demo_starknet_events: run",
185+
"name": "demo_substrate_events: run",
186186
"type": "debugpy",
187187
"request": "launch",
188188
"module": "dipdup",
@@ -192,15 +192,15 @@
192192
"run"
193193
],
194194
"console": "integratedTerminal",
195-
"cwd": "${workspaceFolder}/src/demo_starknet_events",
195+
"cwd": "${workspaceFolder}/src/demo_substrate_events",
196196
"justMyCode": false,
197197
"env": {
198198
"DIPDUP_DEBUG": "1",
199199
"DIPDUP_NO_SYMLINK": "1"
200200
}
201201
},
202202
{
203-
"name": "demo_starknet_events: init",
203+
"name": "demo_substrate_events: init",
204204
"type": "debugpy",
205205
"request": "launch",
206206
"module": "dipdup",
@@ -210,7 +210,7 @@
210210
"init"
211211
],
212212
"console": "integratedTerminal",
213-
"cwd": "${workspaceFolder}/src/demo_starknet_events",
213+
"cwd": "${workspaceFolder}/src/demo_substrate_events",
214214
"justMyCode": false,
215215
"env": {
216216
"DIPDUP_DEBUG": "1",

CHANGELOG.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,17 @@ The format is based on [Keep a Changelog], and this project adheres to [Semantic
66

77
Releases prior to 7.0 has been removed from this file to declutter search results; see the [archived copy](https://github.com/dipdup-io/dipdup/blob/8.0.0b5/CHANGELOG.md) for the full list.
88

9-
## [Unreleased]
9+
## [8.2.0] - 2025-02-10
10+
11+
### Added
12+
13+
- starknet.node: Added methods for fetching contract ABIs for `init` command.
1014

1115
### Fixed
1216

1317
- cli: Fixed help message on `CallbackError` reporting `batch` handler instead of actual one.
18+
- starknet: Process all data types correctly.
19+
- starknet.node: Fetch missing block timestamp and txn id when synching with node.
1420
- substrate.subsquid: Fixed parsing nested structures in response.
1521
- substrate.subsquid: Fixed parsing for `__kind` junctions with multiple keys.
1622

@@ -26,7 +32,6 @@ Releases prior to 7.0 has been removed from this file to declutter search result
2632
### Other
2733

2834
- deps: `tortoise-orm` updated to 0.24.0.
29-
- starknet.node: Added methods for fetching contract ABI's
3035

3136
## [8.2.0rc1] - 2025-01-24
3237

@@ -613,7 +618,8 @@ Releases prior to 7.0 has been removed from this file to declutter search result
613618
[semantic versioning]: https://semver.org/spec/v2.0.0.html
614619

615620
<!-- Versions -->
616-
[Unreleased]: https://github.com/dipdup-io/dipdup/compare/8.2.0rc1...HEAD
621+
[Unreleased]: https://github.com/dipdup-io/dipdup/compare/8.2.0...HEAD
622+
[8.2.0]: https://github.com/dipdup-io/dipdup/compare/8.2.0rc1...8.2.0
617623
[8.2.0rc1]: https://github.com/dipdup-io/dipdup/compare/8.1.4...8.2.0rc1
618624
[8.1.4]: https://github.com/dipdup-io/dipdup/compare/8.1.3...8.1.4
619625
[8.1.3]: https://github.com/dipdup-io/dipdup/compare/8.1.2...8.1.3

docs/0.quickstart-substrate.md

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,6 @@ The recommended way to install DipDup CLI is [pipx](https://pipx.pypa.io/stable/
2626

2727
See the [Installation](../docs/1.getting-started/1.installation.md) page for all options.
2828

29-
After installation, run the following command to switch to the preview branch:
30-
31-
```shell [Terminal]
32-
dipdup self install -f -v 8.2.0rc1
33-
```
34-
3529
## Create a project
3630

3731
DipDup CLI has a built-in project generator. Run the following command in your terminal:

docs/1.getting-started/3.config.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,9 @@ DipDup allows you to customize the configuration for a specific environment or w
3838

3939
```shell [Terminal]
4040
dipdup -c dipdup.yaml -c configs/dipdup.sqlite.yaml run
41+
42+
# or, using a shorthand
43+
dipdup -C sqlite run
4144
```
4245

4346
Use `config export`{lang="sh"} and `config env`{lang="sh"} commands to check the resulting config used by DipDup.

docs/1.getting-started/4.package.md

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ The structure of the resulting package is the following:
2727
| `{{ project.package }} -> .` | A little helper, symlink to let you import the package from the root directory. |
2828
| `pyproject.toml` | Python package metadata (introduced in PEP 518; see [details](https://pip.pypa.io/en/stable/reference/build-system/pyproject-toml/)) |
2929
| `Makefile` | Makefile with shortcuts for common commands (run `make` for help) |
30-
| | |
30+
| `README.md` | Project README with a brief description and usage instructions |
3131

3232
Also, there are `.dockerignore`, `.gitignore` files and `py.typed` marker ([PEP 561](https://peps.python.org/pep-0561/)). Usually, you won't need to modify them.
3333

@@ -41,6 +41,49 @@ DipDup uses contract type information to generate [Pydantic](https://docs.pydant
4141

4242
This approach allows working with complex contract types with nested structures and polymorphic variants.
4343

44+
## Config snippets
45+
46+
`config/` directory contains environment-specific config snippets. They don't contain `package`/`spec_version` fields and can be used to extend/override the root config. See [Merging config files](../1.getting-started/3.config.md#merging-multiple-files) for details.
47+
48+
### Replay file
49+
50+
`config/replay.yaml` is a special file that contains options used during generation a new project. You can use it to create a new project with the same settings, or modify it to change chosen options.
51+
52+
## Dev tools
53+
54+
The `Makefile` contains shortcuts for all commands you might need during development! Run `make` without arguments to see the list of available commands:
55+
56+
```text
57+
58+
🚧 DipDup developer tools
59+
60+
help: Show this help (default)
61+
all: Run an entire CI pipeline
62+
63+
install: Install dependencies
64+
update: Update dependencies
65+
format: Format with all tools
66+
lint: Lint with all tools
67+
68+
black: Format with black
69+
ruff: Lint with ruff
70+
mypy: Lint with mypy
71+
72+
image: Build Docker image
73+
up: Start Compose stack
74+
down: Stop Compose stack
75+
```
76+
77+
See the file contents for details. Feel free to modify it to fit your workflow!
78+
79+
## Deploy recipes
80+
81+
The `deploy` directory contains:
82+
83+
- `Dockerfile`, a recipe to build a Docker image with your project. Usually, you won't need to modify it. See comments inside for details.
84+
- Compose files to run your project locally or in the cloud.
85+
- Default env variables for each environment. See [Environment variables](../1.getting-started/3.config.md#environment-variables) for details.
86+
4487
## Nested packages
4588

4689
Callbacks can be grouped into packages to organize the project structure. Add one or multiple dots to the callback name to define nested packages:

docs/13.troubleshooting.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,18 @@ We follow semantic versioning, so you can safely update to a new patch version w
4343

4444
### Enable debug logging
4545

46-
More logs can give you a clue about the reason for an issue. Enable them in config:
46+
More logs can give you a clue about the reason for an issue. Enable debug logging in config:
4747

4848
```yaml [dipdup.yaml]
4949
logging: DEBUG
5050
```
5151
52+
Or using env variable:
53+
54+
```shell [Terminal]
55+
export DIPDUP_DEBUG=1
56+
```
57+
5258
## Installation
5359

5460
## Config
@@ -78,17 +84,11 @@ dipdup -c . -c configs/dipdup.sqlite.yaml config env
7884
Exceptions that occurred during callback execution are reraised as `CallbackError`s. If you experience this issue, most likely your code is incorrect. Luckily, the Python ecosystem has lots of tools called linters to help you find mistakes. Default DipDup project template includes black, ruff and mypy to check your code for errors and type mismatches. You can run them with the following commands:
7985

8086
```shell [Terminal]
81-
# PDM
82-
pdm format
83-
pdm lint
84-
85-
# Manually
86-
black .
87-
ruff --fix .
88-
mypy .
87+
make format
88+
make lint
8989
```
9090

91-
See the `pyproject.toml` file in your project root for more details.
91+
See the `Makefile` file in your project root for more details.
9292

9393
### Inspect the package structure
9494

docs/15.glossary.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,8 @@ A tool for defining and managing multi-container Docker applications, using a YA
4646

4747
### environment variables
4848

49+
Variables used to define the environment in which a program runs, providing a way to configure settings, paths, and other system-specific information. Could be set with `export KEY=VALUE` in the terminal or defined in `.env` file.
50+
4951
### GraphQL
5052

5153
A query language and runtime for APIs that enables clients to request only the data they need, offering more flexibility and efficiency compared to traditional REST APIs.
@@ -72,8 +74,14 @@ A program that reads data from a blockchain and stores it in a database for quic
7274

7375
### job
7476

77+
A scheduled task that runs at specific intervals or times.
78+
7579
### JSONSchema
7680

81+
A a vocabulary that allows for the definition of the structure and validation of JSON data.
82+
83+
DipDup uses JSONSchema to validate the configuration file and generate types for the project.
84+
7785
### level
7886

7987
In DipDup, [block number](#block-number).
@@ -100,6 +108,8 @@ RPC stands for Remote Procedure Call. A protocol used to communicate with Tezos
100108

101109
### schema
102110

111+
Database schema, a collection of tables and their relationships that define the structure of a database.
112+
103113
### SDK
104114

105115
A toolkit for developing smart contract indexing applications.

0 commit comments

Comments
 (0)