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.9-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4949ad64904f0a026b7aa68535b77b0871b2d2507194df10cd529fd64790b318 |
|
MD5 | cff5131f0776352f6a9c04c1e2cb5153 |
|
BLAKE2b-256 | fc28c3f050f78fbb2349eef7599cf02c5de9684685d8e9c21825103389b77483 |
Hashes for pytvm-0.0.9-cp311-cp311-manylinux_2_27_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a991b2adc0651f677f4fe3150c2574241de0d22c164a380bc8d2da36c3b4b520 |
|
MD5 | 8b0c14d3ea1fede9d9e13665ac7dacfc |
|
BLAKE2b-256 | cd62d9d501b0e6c72c020439529c288292fd61e9e29b6041991b5f7a056ece8f |
Hashes for pytvm-0.0.9-cp311-cp311-macosx_13_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6fdc8c8ea7faec0ef9c574d9422531f3d370701a43791902625093df8d0d7e09 |
|
MD5 | baa1b857ae628a71603dbb94e6561b05 |
|
BLAKE2b-256 | a7c615542397f40b1e4d4de913fde62f335de9b740c194e7f3dd31e2ca11e908 |
Hashes for pytvm-0.0.9-cp311-cp311-macosx_11_0_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 63ab1664a18d444f306f5cd9e5081bf313331fcadcd3d3af9cfb82f0d5f90b9d |
|
MD5 | 88c2e1b528022d525ef34ecfa979cf82 |
|
BLAKE2b-256 | 8c0a445762203cdbaea50417950503b388f62da7357f7991a9eb62c40bcd99b9 |
Hashes for pytvm-0.0.9-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 537a748af3590d5c95b0209bce338be2c1779bb5724a65785b56ebb86c50d418 |
|
MD5 | d5520ed57d1fd0d89901521506693712 |
|
BLAKE2b-256 | 224bc4a5bdc050f779f50e148307af94a1196b8bfd425e5d08e8f869393266a3 |
Hashes for pytvm-0.0.9-cp310-cp310-manylinux_2_27_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ee2379e02bd7b1006b486d81405e6b969349e8c8fe0aee15188cb2a49c4767fe |
|
MD5 | b7c8b91828f41f65b2be6a760d9525a7 |
|
BLAKE2b-256 | 868f4a57969e63f44c7f3eae529667bc09ab03189ae7dde504c722a236eeb0e0 |
Hashes for pytvm-0.0.9-cp310-cp310-macosx_13_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 679d0fb5b93ee6272f25e0ce7ad36c7b904dc255974702713743fe83a2a1ae3b |
|
MD5 | fd548b3c074959c70416d1fb0bb25aec |
|
BLAKE2b-256 | a53117441327e4aff4189b4dc563e4024c2e3d1ca6ef33f35a1fcb45c5f750d9 |
Hashes for pytvm-0.0.9-cp310-cp310-macosx_11_0_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d5b95f359b19f96e4b480521eca4ac51434fd03671f197eb07e32d297994b4be |
|
MD5 | 9933c7e729ac54a096e31cd604fa3c60 |
|
BLAKE2b-256 | 0d1878021a3c6d7e2d524cb1ece2d7b2b35cca3a32453bb9e30229d90b41c286 |
Hashes for pytvm-0.0.9-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 895c404bc3a112c0c6bf40ac2e6936d845b6e1d5440dc2d7a7cb00e02021a682 |
|
MD5 | cc8ea42aab0e39f5461c83cf462c021d |
|
BLAKE2b-256 | 83b51f1476c8ce38b38e8083e4a3aa38b909f18ad2237571a45851c10e927eae |
Hashes for pytvm-0.0.9-cp39-cp39-manylinux_2_27_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce6f236d02655d048f149e4d456842bbdcd9e60ec313f6e795d7c607b49c59a5 |
|
MD5 | c5f9c090defd37e568890c8957f8cdfe |
|
BLAKE2b-256 | 0957e1176c92a231819403cf18b4f6246efc027489d2ecbce970464cbe7205eb |
Hashes for pytvm-0.0.9-cp39-cp39-macosx_14_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4a3ef659b30a7d2ceddb8279ef12729b618fe1b83b7603a459217c8d276e2167 |
|
MD5 | d221690e70fcb50b0a470f0ae383e232 |
|
BLAKE2b-256 | 909c4c75c6befb0d80de7893a56b96df56a2e4c658fa66f693718e3f6138aeae |
Hashes for pytvm-0.0.9-cp39-cp39-macosx_11_0_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 52bbc45efc8018c53e116189ae29bf0b9cc432a081f0146e32aff65c958be6e1 |
|
MD5 | 6431a034c6dbe54fb939336903058ba8 |
|
BLAKE2b-256 | a790798a4327ffaea1ab6cb12f2cb6568246a89b2d12ad3ca5265fef22c805e4 |