{ "info": { "author": "RChain Cooperative", "author_email": "rchain-makers@rchain.coop", "bugtrack_url": null, "classifiers": [], "description": "# pyrchain\n\nInterface to RChain RNode RPC.\n\n## Usage\n\nPyrchain is Python 3 library for interfacing with RChain RNode gRPC API. The\nlibrary is distributed via PyPI (https://pypi.org/project/pyrchain/). You can\ninstall it for current user by running:\n\n\tpip3 install --user pyrchain\n\nSee `setup.py` for information about 3rd party library dependencies.\n\nThe following snippet shows example usage of the API the library provides. It\nassumes that you have access to a running RNode instance on `localhost` with\ngRPC service listening on TCP port 40401 (default).\n\n\timport grpc\n\n\tfrom rchain.crypto import PrivateKey\n\tfrom rchain.client import RClient\n\tfrom rchain.vault import VaultAPI\n\n\tadmin_key = PrivateKey.generate()\n\talice_key = PrivateKey.generate()\n\n\twith grpc.insecure_channel('localhost:40401') as channel:\n\t client = RClient(channel)\n\n\t admin_vault_api = VaultAPI(client, admin_key)\n\t alice_vault_api = VaultAPI(client, alice_key)\n\n\t admin_vault_api.create_genesis_vault(None, 100_000)\n\t admin_vault_api.transfer(None, alice_key.get_public_key().get_address(), 1000)\n\t assert alice_vault_api.get_balance() == 1000\n\nSee `./examples/vaults.py` for complete example of vault API usage. See\n`rchain.client.RClient` class for available RPC API.\n\nTo run the example from this Git repository run:\n\n\tpipenv install\n\tpipenv run python examples/vaults.py\n\n## Development\n\nTo update protocol buffers from upstream run:\n\n\t./update-protobufs\n\t./update-generated\n\nThis first command will fetch latest RChain `*.proto` files from `dev` branch\ninto `./protobuf` directory. The second command will generate gRPC Python code\ncorresponding to the protcol buffers into `rchain.pb` package (`./rchain/pb`).\n\nTo run unit tests run:\n\n\tpipenv run python -m unittest rchain/*_test.py\n\n## References\n\n- https://github.com/rchain-community/rchain-api\n\n #### JavaScript API for RChain RNode RPC\n\n Includes Rholang parser. Has dApp users already.\n\n- https://github.com/rchain-community/rchain-grpc/\n\n #### Python API for RChain RNode RPC\n\n Seems to cover more of the available gRPC APIs. The author of pyrchain wasn't aware of rchain-grpc existence.\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/rchain/pyrchain", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "pyrchain", "package_url": "https://pypi.org/project/pyrchain/", "platform": "", "project_url": "https://pypi.org/project/pyrchain/", "project_urls": { "Homepage": "https://github.com/rchain/pyrchain" }, "release_url": "https://pypi.org/project/pyrchain/0.1.6/", "requires_dist": [ "grpcio", "protobuf", "ecdsa", "python-bitcoinlib", "cryptography", "eth-hash", "pycryptodome", "grpcio-tools ; extra == 'dev'", "mypy ; extra == 'dev'", "typing-extensions ; extra == 'dev'", "mypy-protobuf ; extra == 'dev'" ], "requires_python": "", "summary": "Interface to RChain RNode RPC", "version": "0.1.6" }, "last_serial": 5759546, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "1ba7b18b3428714109afde25fc8112ad", "sha256": "6b60dddb2aaf3a3d0d8e023af2742727e5ff6f13416fe9f692eedc5bd0b3deb7" }, "downloads": -1, "filename": "pyrchain-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "1ba7b18b3428714109afde25fc8112ad", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 48220, "upload_time": "2019-07-07T20:47:29", "url": "https://files.pythonhosted.org/packages/15/53/b5cca67c086066296bf2dfd59f1f6a6b965380aeba5d33f051ca3f9ac2f8/pyrchain-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "42b9c1e1834187b1bf6059265419fff7", "sha256": "60ad817806e852b55381430769e8d2255497867c793e59340567e7d6bc8dc13e" }, "downloads": -1, "filename": "pyrchain-0.1.1.tar.gz", "has_sig": false, "md5_digest": "42b9c1e1834187b1bf6059265419fff7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33421, "upload_time": "2019-07-07T20:47:32", "url": "https://files.pythonhosted.org/packages/04/c2/12d77ac34397cb0ca47a6ff7508031fafc3138de5b3805e0053e959c3442/pyrchain-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "8d9d22cf3df0429a4a1eddef6bb180c3", "sha256": "7239563ecc35092cdef6e8de735268175506b448300216464a9b61f6360ad4db" }, "downloads": -1, "filename": "pyrchain-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "8d9d22cf3df0429a4a1eddef6bb180c3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 48262, "upload_time": "2019-07-07T21:02:06", "url": "https://files.pythonhosted.org/packages/70/27/a9b3232529833b24000b87d2892439908b15ec7cb236f81e1f146ca0ce9b/pyrchain-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "999b64ce16d6990b7f015e796659b887", "sha256": "4b930278a8c8ebaad6854cc8ff9c56ce8f6ac7afcbf18b230af4a2d8b374411b" }, "downloads": -1, "filename": "pyrchain-0.1.2.tar.gz", "has_sig": false, "md5_digest": "999b64ce16d6990b7f015e796659b887", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33570, "upload_time": "2019-07-07T21:02:09", "url": "https://files.pythonhosted.org/packages/3e/54/9d35ec1b8d05fabbd51f7aa9c61b1372e33cd46610a0797877b94db8cb69/pyrchain-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "6752f8f89c1ecbc919fcb8d937302ef8", "sha256": "3c30b49e4915e45c90e47c713e779c7b3f9ff7728d6096af577b5f993da75c57" }, "downloads": -1, "filename": "pyrchain-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "6752f8f89c1ecbc919fcb8d937302ef8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 54651, "upload_time": "2019-07-09T23:51:44", "url": "https://files.pythonhosted.org/packages/44/10/c0672056f82a7922a4248c31d145e309867fd914588004c1820a28098a88/pyrchain-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c6dd5ea03f987f9d1d1af8bedf233f56", "sha256": "2b15e5764ce5c86a8aecb3edc853c9041818595599f91ddc7ab5843062950d49" }, "downloads": -1, "filename": "pyrchain-0.1.3.tar.gz", "has_sig": false, "md5_digest": "c6dd5ea03f987f9d1d1af8bedf233f56", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34795, "upload_time": "2019-07-09T23:51:45", "url": "https://files.pythonhosted.org/packages/26/05/d58e2562406eb8e13acc1728d9f909afe616bf8c27b3cc9ebfccc6e87471/pyrchain-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "49b97f69ba86a1630c6617015c98acbc", "sha256": "901e98376658d703a690a5f1d776f3f69e64253f701c9e3d6e75abfb07199259" }, "downloads": -1, "filename": "pyrchain-0.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "49b97f69ba86a1630c6617015c98acbc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 54782, "upload_time": "2019-07-10T22:41:14", "url": "https://files.pythonhosted.org/packages/33/1e/eec3892fe36111ef3a1bf2801f7f95e06390e0e02713a808cf4dbe698be3/pyrchain-0.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ce146aa6aa9d7871ef24d5ebebe38f6a", "sha256": "c92a51b4af175557bce22a8646789242b3b764870823506fafc75fe1d51f554e" }, "downloads": -1, "filename": "pyrchain-0.1.4.tar.gz", "has_sig": false, "md5_digest": "ce146aa6aa9d7871ef24d5ebebe38f6a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34964, "upload_time": "2019-07-10T22:41:15", "url": "https://files.pythonhosted.org/packages/34/05/6248156d3d5486d46a7710ef7199157e00aa59dbb1c029922e473162c238/pyrchain-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "e75cfcd0edb45904a7a5ad5b021a847e", "sha256": "6e9fac03f15272f081ccd4ab1e0ccfc434453fbc7b3e303b2f1323c63e284d69" }, "downloads": -1, "filename": "pyrchain-0.1.5-py3-none-any.whl", "has_sig": false, "md5_digest": "e75cfcd0edb45904a7a5ad5b021a847e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 54767, "upload_time": "2019-07-12T10:45:37", "url": "https://files.pythonhosted.org/packages/b3/fd/cdc503a9bca0c6f5b8ce29f41d5b8b19d770e9ba917105a7116337fdfbd6/pyrchain-0.1.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "60bba37dc266cc27df08f06f58d01be9", "sha256": "1072f33f14e26f70a98057dc79d43b3f298de0257d81ee00ed213dbc2e8738f7" }, "downloads": -1, "filename": "pyrchain-0.1.5.tar.gz", "has_sig": false, "md5_digest": "60bba37dc266cc27df08f06f58d01be9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34900, "upload_time": "2019-07-12T10:45:39", "url": "https://files.pythonhosted.org/packages/bc/3e/16208bb39b7eaf7821427f5001f1be6b1155cccc08bdf663134bb1ec04d3/pyrchain-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "0640fedb89c4731e12f492649bc37025", "sha256": "5e9851c2889e546d0579c34592fc272266117df508c5a1ff8dfc9d80b5419f1e" }, "downloads": -1, "filename": "pyrchain-0.1.6-py3-none-any.whl", "has_sig": false, "md5_digest": "0640fedb89c4731e12f492649bc37025", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 58079, "upload_time": "2019-08-30T10:11:55", "url": "https://files.pythonhosted.org/packages/d6/0a/7f8944a7fbf61f8cc93a58076c4fad276cf7a7d89631f124037192cb3793/pyrchain-0.1.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3c058d3e44ed9b0f82f2248c59387204", "sha256": "49fa1cc1124a82bd295a760bc307a7227e6e933bd9d8a13cd7880ea6e465f61a" }, "downloads": -1, "filename": "pyrchain-0.1.6.tar.gz", "has_sig": false, "md5_digest": "3c058d3e44ed9b0f82f2248c59387204", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37237, "upload_time": "2019-08-30T10:11:57", "url": "https://files.pythonhosted.org/packages/18/90/b47b81195d43784023dc0211180f80b1919ae17df76fe50f53523963e51b/pyrchain-0.1.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0640fedb89c4731e12f492649bc37025", "sha256": "5e9851c2889e546d0579c34592fc272266117df508c5a1ff8dfc9d80b5419f1e" }, "downloads": -1, "filename": "pyrchain-0.1.6-py3-none-any.whl", "has_sig": false, "md5_digest": "0640fedb89c4731e12f492649bc37025", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 58079, "upload_time": "2019-08-30T10:11:55", "url": "https://files.pythonhosted.org/packages/d6/0a/7f8944a7fbf61f8cc93a58076c4fad276cf7a7d89631f124037192cb3793/pyrchain-0.1.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3c058d3e44ed9b0f82f2248c59387204", "sha256": "49fa1cc1124a82bd295a760bc307a7227e6e933bd9d8a13cd7880ea6e465f61a" }, "downloads": -1, "filename": "pyrchain-0.1.6.tar.gz", "has_sig": false, "md5_digest": "3c058d3e44ed9b0f82f2248c59387204", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37237, "upload_time": "2019-08-30T10:11:57", "url": "https://files.pythonhosted.org/packages/18/90/b47b81195d43784023dc0211180f80b1919ae17df76fe50f53523963e51b/pyrchain-0.1.6.tar.gz" } ] }