Python TVM emulator
Project description
pytvm
:warning: WARNING: The pytvm library is currently in active development. Features and functionality may change frequently. Please keep this in mind when using this library.
pytvm - is a Python bindings to C++ TON Virtual Machine (TVM) emulator. pytvm allows you:
- Run Get-Methods locally (for trustless and fast data retrieval)
- Emulate messages (
Internal
andExternal
) - Emulate transactions
- Emulate transactions traces
Usage
Find examples in the examples folder.
Installation
From PyPi
pip install pytvm
From source
Currently, pytvm compatible with Python3.9 - Python3.11 on platforms:
- Linux (x86_64)
- Windows (x86_64)
- MacOS (x86_64, arm64)
If your system is not compatible with the pre-built wheels, you can install pytvm from source:
-
Compile
emulator
target TON Blockchain repo or downloadlibemulator
binaries from latest release. -
Install pytvm from source:
pip install pytvm
-
Create engine providing path to
libemulator
binaries toEmulatorEngineC
:
from pytvm.engine import EmulatorEngineC
from pytvm.transaction_emulator import TransactionEmulator
engine = EmulatorEngineC('path/to/libemulator.so')
emulator = TransactionEmulator(engine=engine)
Donation
TON wallet: EQBvW8Z5huBkMJYdnfAEM5JqTNkuWX3diqYENkWsIL0XggGG
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for pytvm-0.0.12-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3ee532e761dc9303fafc5f004baf1717eee992fbcf1e403330f1fb89f1e42d19 |
|
MD5 | 16906e5d0f4dfbd2d1c28bf7a90ede14 |
|
BLAKE2b-256 | 7e62e30b48780361fde448f00bdf968f1b76dc7085ffffe6c2e7394e495cfdf2 |
Hashes for pytvm-0.0.12-cp311-cp311-manylinux_2_27_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 672520b62f72fe5d052757f0c5e73a25c4e6480e81167ce351f3432f8d6cb253 |
|
MD5 | b724e60d35c63677f1b7516623fe7b98 |
|
BLAKE2b-256 | 62b794090995711e1443ba673d881ac4d21690b4ddf5607cc7cd68d0c73fc8d6 |
Hashes for pytvm-0.0.12-cp311-cp311-macosx_11_0_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d0f080afddf9d0454a74a3bdcc0e4a189335b56c230d67a6368141a589159b2e |
|
MD5 | 565267500aec098e812a35396bbbbbb4 |
|
BLAKE2b-256 | 0aad063ed780a7599c92691680cde6ffac3ab4d0645c0a057908ed66170cebed |
Hashes for pytvm-0.0.12-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7fbde9dcc90f51e7fd407ac0a068812d49686a266d26bba1154fe121fc8e4ea3 |
|
MD5 | 64644d40d87821980bd6c670c76d4668 |
|
BLAKE2b-256 | d23f43bfe0ea9242796201084b573e92608f821e8c151ba1cc30e6ea1529c839 |
Hashes for pytvm-0.0.12-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bcbfdc459af9a98b1859f46ec54373b4031465629eed7b12d229b497c7a912cd |
|
MD5 | 71ad09cf95ce47cd6e3df70102714d9a |
|
BLAKE2b-256 | 1d571e2d4db2ff32a8b49769a53fc7628ee5af0981feddfa55cf0f416042baf4 |
Hashes for pytvm-0.0.12-cp310-cp310-manylinux_2_27_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 674537d769116e378be75e33f36db2a2f1d85ab7ef8adb68c7f466775a92b41d |
|
MD5 | ba07e29c5504530217611a953e9737c2 |
|
BLAKE2b-256 | df499b3f19aa8e1566941e293efa29fd87440f684c874f25ad0e08fe773a1908 |
Hashes for pytvm-0.0.12-cp310-cp310-macosx_11_0_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 49b93e35e5c0988791a2d0bd379e545955b5c45b8acad6117afc36d2a6dc60fb |
|
MD5 | ca1ecf9d4081356d5ce5138c6773a856 |
|
BLAKE2b-256 | b7e10551cc45358dcd28f19db08bc7fc455bd785dac1514a3da831d989a78637 |
Hashes for pytvm-0.0.12-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9d21ebfe7cd2be6030ad63405e6973bc9612b99d8ea44112ce6301befd50ca3d |
|
MD5 | dc29f6f1caed470464cfa8dbab103a20 |
|
BLAKE2b-256 | 9dd401d650d7680f4e9e49937019ebbea016b82dc73cc39430bcf8e38a4e4560 |
Hashes for pytvm-0.0.12-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 32d63e1a073b9884a258ccd5e8a547da20f73692cca441c2f2daaf28c8f89e79 |
|
MD5 | 7b5cd37ac41c344e35303280619e88a9 |
|
BLAKE2b-256 | 934798f78dc2324d9ce13cdebd0234270ab7f07f4786620a3501c4d457da8f6a |
Hashes for pytvm-0.0.12-cp39-cp39-manylinux_2_27_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3173542a8a50003d32cd5e6621b2c798bcda7bf8df823926179e0ebe02f37ba7 |
|
MD5 | d06fbb762c39d1caa9c7fbf433bd16a9 |
|
BLAKE2b-256 | 13a90f673486228e4cc1137152f0fd242e6405a3d5228b9d78e5935a1c4f5f45 |
Hashes for pytvm-0.0.12-cp39-cp39-macosx_14_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9af65430539429c96ad26e476169f0e25c494ea4833324dcbd8cfad8c75fdc9b |
|
MD5 | 5e76473de317b160b29b81b53eb2c817 |
|
BLAKE2b-256 | 5999de076cc57a9e18004b5c9f146f53de75d2d4e72b6b93790aab0618d0ac25 |
Hashes for pytvm-0.0.12-cp39-cp39-macosx_11_0_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 04812bd887ed5069429d3263340ac7d2eab38e5ad5542be3485f5c9bf0b8ed01 |
|
MD5 | a212e7d233b67d46afa5e6ff7d3251ef |
|
BLAKE2b-256 | 2548d77f0d222427fffc9fd82f3e02733ad7bb180310ab1b21233ebac772cfa8 |