Skip to main content

Python SCALE Codec Library

Project description

Python SCALE Codec

Travis CI Build Status Latest Version Supported Python versions License

Python SCALE Codec Library

Description

Most of the data that the Substrate RPCs output is encoded with the SCALE Codec. This codec is used by the Substrate nodes' internal runtime. In order to get to meaningful data this data will need to be decoded. The Python SCALE Codec Library will specialize in this task.

Documentation

https://polkascan.github.io/py-scale-codec/

Installation

pip install scalecodec

Examples

Decode a SCALE-encoded Compact<Balance>

RuntimeConfiguration().update_type_registry(load_type_registry_preset("default"))
RuntimeConfiguration().update_type_registry(load_type_registry_preset("kusama"))
obj = ScaleDecoder.get_decoder_class('Compact<Balance>', ScaleBytes("0x130080cd103d71bc22"))
obj.decode()
print(obj.value)

Add custom types to type registry

RuntimeConfiguration().update_type_registry(load_type_registry_preset("default"))

custom_types = {
    "types": {
        "MyCustomType": "u32",
        "CustomNextAuthority": {
          "type": "struct",
          "type_mapping": [
             ["AuthorityId", "AuthorityId"],
             ["weight", "AuthorityWeight"]
          ]
        }
    }   
}

RuntimeConfiguration().update_type_registry(custom_types)

Or from a custom JSON file

RuntimeConfiguration().update_type_registry(load_type_registry_preset("default"))
RuntimeConfiguration().update_type_registry(load_type_registry_file("/path/to/type_registry.json"))

License

https://github.com/polkascan/py-scale-codec/blob/master/LICENSE

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

scalecodec-0.10.0.tar.gz (81.3 kB view details)

Uploaded Source

Built Distribution

scalecodec-0.10.0-py3-none-any.whl (53.9 kB view details)

Uploaded Python 3

File details

Details for the file scalecodec-0.10.0.tar.gz.

File metadata

  • Download URL: scalecodec-0.10.0.tar.gz
  • Upload date:
  • Size: 81.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3

File hashes

Hashes for scalecodec-0.10.0.tar.gz
Algorithm Hash digest
SHA256 42ff5c5ffcc76056663967785b8bc232d91751c47aed5a95104b6b5d665f1a39
MD5 c3538a0fd1dea1fccef8c1790a5030b2
BLAKE2b-256 e0fbb3470c7b1f6d5907ebd50ae18d8d6c98a3d1f08179eec29908643631584a

See more details on using hashes here.

File details

Details for the file scalecodec-0.10.0-py3-none-any.whl.

File metadata

  • Download URL: scalecodec-0.10.0-py3-none-any.whl
  • Upload date:
  • Size: 53.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3

File hashes

Hashes for scalecodec-0.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f7d9a17750aaeaf145be8854a59ed79f759114536ecca159bceb0b0a01f7985f
MD5 e846993c787a3a0b9f9a3a243a652387
BLAKE2b-256 fc69acbf5780a818dae749bd763c18e34b2a0ce5e3b3a6d84e0c65b9a15a997b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page