Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
dc79ab8
Keep more details about index state
droserasprout Aug 10, 2021
4778c0d
WIP
droserasprout Aug 12, 2021
b36f17e
Hooks WIP
droserasprout Aug 16, 2021
9f26b86
Merge branch 'master' into feat/dipdup-state
droserasprout Aug 16, 2021
97d7714
WIP
droserasprout Aug 17, 2021
7677c14
WIP
droserasprout Aug 17, 2021
d688910
callback codegen WIP
droserasprout Aug 17, 2021
a614d5f
Finish callback codegen
droserasprout Aug 17, 2021
ac4bc8e
Update demos
droserasprout Aug 17, 2021
fc6b91c
Cleanup
droserasprout Aug 17, 2021
94e5c7b
Better template substitution
droserasprout Aug 17, 2021
e477b89
CallbackManager, rewrite config initialization
droserasprout Aug 17, 2021
61f004a
Rewrite config module
droserasprout Aug 17, 2021
50f6e50
Refactor codegen mixin, add locate
droserasprout Aug 18, 2021
4cdcfab
Finish and integrate CallbackManager
droserasprout Aug 18, 2021
c7fe177
Codegen fixes
droserasprout Aug 18, 2021
337d8a3
Fix
droserasprout Aug 18, 2021
af371a7
Dipdup models state wip
droserasprout Aug 18, 2021
fecb98e
`run` refactoring
droserasprout Aug 18, 2021
75efc33
Create context in callback manager
droserasprout Aug 18, 2021
86bcb2e
DB states wip
droserasprout Aug 18, 2021
374cc76
State initialization
droserasprout Aug 18, 2021
0a2f2dd
Fix head updating, state
droserasprout Aug 18, 2021
8437603
No more temporary states!
droserasprout Aug 18, 2021
bdcd35a
Bump mypy
droserasprout Aug 19, 2021
6569463
Lint
droserasprout Aug 19, 2021
bb45baa
Split execute_sql
droserasprout Aug 19, 2021
b06f914
Fix codegen, revert SQL execution logic, 20% cooler exceptions
droserasprout Aug 19, 2021
2ebb720
Fix rollback
droserasprout Aug 20, 2021
95e0161
Bump hasura, skip warning for missing default hooks
droserasprout Aug 20, 2021
d58cba0
Fix graceful shutdown 🎉🎉🎉
droserasprout Aug 20, 2021
55f1f7a
Fix PArentMixin generic
droserasprout Aug 20, 2021
5dc5a15
Merge branch 'master' into feat/dipdup-state
droserasprout Aug 24, 2021
2dc4c3f
DatabaseConfigurationError, refactoring
droserasprout Aug 24, 2021
3e800bf
Docs
droserasprout Aug 24, 2021
e75543b
dipdup.config refactoring
droserasprout Aug 24, 2021
878b0bc
Spawn indexes early
droserasprout Aug 24, 2021
1b9bdc6
useless initialize
droserasprout Aug 24, 2021
180c652
Resolve missing table names before Hasura does
droserasprout Aug 25, 2021
0136a19
Another jobs fix
droserasprout Aug 25, 2021
9b9b53a
Fix saving index states
droserasprout Aug 25, 2021
9cc57cb
Hook fixes
droserasprout Aug 25, 2021
1d05778
Less logs
droserasprout Aug 25, 2021
7f70b9c
Migrations
droserasprout Aug 30, 2021
2ef19bf
Migrate demos
droserasprout Aug 30, 2021
e3455cb
Cleanup
droserasprout Aug 30, 2021
f14a6df
Finish migrations :(
droserasprout Aug 30, 2021
637f90b
Logging regression
droserasprout Aug 30, 2021
67a7d97
pass reindex reason
droserasprout Aug 30, 2021
4f6a6b7
Fix spawning indexes, refactor formattedlogger creation
droserasprout Aug 30, 2021
819ad91
Fix SQL hooks
droserasprout Aug 30, 2021
9be4d26
Failed jobs raise exception in main loop
droserasprout Aug 30, 2021
3eeeb00
Bump
droserasprout Aug 31, 2021
96f5570
Bump
droserasprout Aug 31, 2021
062c995
Bump
droserasprout Aug 31, 2021
5d4bec4
Force public schema
droserasprout Aug 31, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
542 changes: 291 additions & 251 deletions poetry.lock

Large diffs are not rendered by default.

4 changes: 3 additions & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -47,12 +47,14 @@ black = "^20.8b1"
bump2version = "^1.0.1"
diff-cover = "^5.0.1"
isort = "^5.7.0"
mypy = "^0.812"
mypy = "^0.900"
pytest = "^3.0"
pytest-cov = "^2.4"
flake8 = "3.9.0"
flakehell = "^0.9.0"
testcontainers = "^3.4.1"
types-tabulate = "^0.8.2"
types-pytz = "^2021.1.2"

[tool.poetry.extras]
pytezos = ["pytezos"]
Expand Down
1 change: 0 additions & 1 deletion src/demo_hic_et_nunc/dipdup-docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ database:
user: ${POSTGRES_USER:-dipdup}
password: ${POSTGRES_PASSWORD:-changeme}
database: ${POSTGRES_DB:-dipdup}
schema_name: hic_et_nunc

hasura:
url: http://hasura:8080
Expand Down
1 change: 0 additions & 1 deletion src/demo_hic_et_nunc/dipdup-local.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ database:
user: ${POSTGRES_USER:-dipdup}
password: ${POSTGRES_PASSWORD:-changeme}
database: ${POSTGRES_DB:-dipdup}
schema_name: hic_et_nunc

hasura:
url: http://127.0.0.1:8080
Expand Down
2 changes: 1 addition & 1 deletion src/demo_hic_et_nunc/dipdup.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
spec_version: 1.1
spec_version: 1.2
package: demo_hic_et_nunc

database:
Expand Down
2 changes: 1 addition & 1 deletion src/demo_hic_et_nunc/docker/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ services:
retries: 5

hasura:
image: hasura/graphql-engine:v2.0.4
image: hasura/graphql-engine:v2.0.8
ports:
- 127.0.0.1:8080:8080
depends_on:
Expand Down
5 changes: 0 additions & 5 deletions src/demo_hic_et_nunc/handlers/on_configure.py

This file was deleted.

6 changes: 0 additions & 6 deletions src/demo_hic_et_nunc/handlers/on_rollback.py

This file was deleted.

7 changes: 7 additions & 0 deletions src/demo_hic_et_nunc/hooks/on_reindex.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
from dipdup.context import HookContext


async def on_reindex(
ctx: HookContext,
) -> None:
await ctx.execute_sql('on_reindex')
7 changes: 7 additions & 0 deletions src/demo_hic_et_nunc/hooks/on_restart.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
from dipdup.context import HookContext


async def on_restart(
ctx: HookContext,
) -> None:
await ctx.execute_sql('on_restart')
12 changes: 12 additions & 0 deletions src/demo_hic_et_nunc/hooks/on_rollback.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
from dipdup.context import HookContext
from dipdup.datasources.datasource import Datasource


async def on_rollback(
ctx: HookContext,
datasource: Datasource,
from_level: int,
to_level: int,
) -> None:
await ctx.execute_sql('on_rollback')
await ctx.reindex(reason='reorg message received')
5 changes: 4 additions & 1 deletion src/demo_hic_et_nunc/types/hen_minter/parameter/collect.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,12 @@

from __future__ import annotations

from pydantic import BaseModel
from pydantic import BaseModel, Extra


class CollectParameter(BaseModel):
class Config:
extra = Extra.forbid

objkt_amount: str
swap_id: str
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,13 @@

from __future__ import annotations

from pydantic import BaseModel
from pydantic import BaseModel, Extra


class MintOBJKTParameter(BaseModel):
class Config:
extra = Extra.forbid

address: str
amount: str
metadata: str
Expand Down
5 changes: 4 additions & 1 deletion src/demo_hic_et_nunc/types/hen_minter/parameter/swap.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,13 @@

from __future__ import annotations

from pydantic import BaseModel
from pydantic import BaseModel, Extra


class SwapParameter(BaseModel):
class Config:
extra = Extra.forbid

objkt_amount: str
objkt_id: str
xtz_per_objkt: str
11 changes: 10 additions & 1 deletion src/demo_hic_et_nunc/types/hen_minter/storage.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,22 +5,31 @@

from typing import Dict

from pydantic import BaseModel
from pydantic import BaseModel, Extra


class Royalties(BaseModel):
class Config:
extra = Extra.forbid

issuer: str
royalties: str


class Swaps(BaseModel):
class Config:
extra = Extra.forbid

issuer: str
objkt_amount: str
objkt_id: str
xtz_per_objkt: str


class HenMinterStorage(BaseModel):
class Config:
extra = Extra.forbid

curate: str
genesis: str
hdao: str
Expand Down
5 changes: 4 additions & 1 deletion src/demo_hic_et_nunc/types/hen_objkts/parameter/mint.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,13 @@

from typing import Dict

from pydantic import BaseModel
from pydantic import BaseModel, Extra


class MintParameter(BaseModel):
class Config:
extra = Extra.forbid

address: str
amount: str
token_id: str
Expand Down
20 changes: 19 additions & 1 deletion src/demo_hic_et_nunc/types/hen_objkts/storage.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,36 +5,54 @@

from typing import Any, Dict, List

from pydantic import BaseModel
from pydantic import BaseModel, Extra


class Key(BaseModel):
class Config:
extra = Extra.forbid

address: str
nat: str


class LedgerItem(BaseModel):
class Config:
extra = Extra.forbid

key: Key
value: str


class Key1(BaseModel):
class Config:
extra = Extra.forbid

operator: str
owner: str
token_id: str


class Operator(BaseModel):
class Config:
extra = Extra.forbid

key: Key1
value: Dict[str, Any]


class TokenMetadata(BaseModel):
class Config:
extra = Extra.forbid

token_id: str
token_info: Dict[str, str]


class HenObjktsStorage(BaseModel):
class Config:
extra = Extra.forbid

administrator: str
all_tokens: str
ledger: List[LedgerItem]
Expand Down
1 change: 0 additions & 1 deletion src/demo_quipuswap/dipdup-docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ database:
user: ${POSTGRES_USER:-dipdup}
password: ${POSTGRES_PASSWORD:-changeme}
database: ${POSTGRES_DB:-dipdup}
schema_name: quipuswap

hasura:
url: http://hasura:8080
Expand Down
2 changes: 1 addition & 1 deletion src/demo_quipuswap/dipdup.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
spec_version: 1.1
spec_version: 1.2
package: demo_quipuswap

database:
Expand Down
2 changes: 1 addition & 1 deletion src/demo_quipuswap/docker/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ services:
retries: 5

hasura:
image: hasura/graphql-engine:v2.0.4
image: hasura/graphql-engine:v2.0.8
ports:
- 127.0.0.1:8080:8080
depends_on:
Expand Down
5 changes: 0 additions & 5 deletions src/demo_quipuswap/handlers/on_configure.py

This file was deleted.

6 changes: 0 additions & 6 deletions src/demo_quipuswap/handlers/on_rollback.py

This file was deleted.

7 changes: 7 additions & 0 deletions src/demo_quipuswap/hooks/on_reindex.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
from dipdup.context import HookContext


async def on_reindex(
ctx: HookContext,
) -> None:
await ctx.execute_sql('on_reindex')
7 changes: 7 additions & 0 deletions src/demo_quipuswap/hooks/on_restart.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
from dipdup.context import HookContext


async def on_restart(
ctx: HookContext,
) -> None:
await ctx.execute_sql('on_restart')
12 changes: 12 additions & 0 deletions src/demo_quipuswap/hooks/on_rollback.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
from dipdup.context import HookContext
from dipdup.datasources.datasource import Datasource


async def on_rollback(
ctx: HookContext,
datasource: Datasource,
from_level: int,
to_level: int,
) -> None:
await ctx.execute_sql('on_rollback')
await ctx.reindex(reason='reorg message received')
5 changes: 4 additions & 1 deletion src/demo_quipuswap/types/fa12_token/parameter/transfer.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,13 @@

from __future__ import annotations

from pydantic import BaseModel, Field
from pydantic import BaseModel, Extra, Field


class TransferParameter(BaseModel):
class Config:
extra = Extra.forbid

from_: str = Field(..., alias='from')
to: str
value: str
11 changes: 10 additions & 1 deletion src/demo_quipuswap/types/fa12_token/storage.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,29 @@

from typing import Dict

from pydantic import BaseModel
from pydantic import BaseModel, Extra


class Balances(BaseModel):
class Config:
extra = Extra.forbid

approvals: Dict[str, str]
balance: str


class TokenMetadata(BaseModel):
class Config:
extra = Extra.forbid

map: Dict[str, str]
nat: str


class Fa12TokenStorage(BaseModel):
class Config:
extra = Extra.forbid

administrator: str
balances: Dict[str, Balances]
debtCeiling: str
Expand Down
8 changes: 7 additions & 1 deletion src/demo_quipuswap/types/fa2_token/parameter/transfer.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,22 @@

from typing import List

from pydantic import BaseModel
from pydantic import BaseModel, Extra


class Tx(BaseModel):
class Config:
extra = Extra.forbid

to_: str
token_id: str
amount: str


class TransferParameterItem(BaseModel):
class Config:
extra = Extra.forbid

from_: str
txs: List[Tx]

Expand Down
Loading