{ "info": { "author": "Meheret Tesfaye", "author_email": "meherett@zoho.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Build Tools" ], "description": "\n\n[![Build Status](https://travis-ci.com/cobraframework/cobra.svg?branch=master)](https://travis-ci.com/cobraframework/cobra)\n![PyPI Python Version](https://img.shields.io/pypi/pyversions/eth-cobra.svg)\n![PyPI License](https://img.shields.io/pypi/l/eth-cobra.svg?color=black)\n![PyPI Version](https://img.shields.io/pypi/v/eth-cobra.svg)\n[![Coverage Status](https://coveralls.io/repos/github/cobraframework/cobra/badge.svg?branch=master)](https://coveralls.io/github/cobraframework/cobra?branch=master)\n\n---\n\nA fast, flexible and simple development environment framework for Ethereum smart contract, testing and \ndeployment on Ethereum virtual machine(EVM).\n\nWith cobra you can get built-in smart contract compilation, linking, deployment, binary management, \nautomated contract testing with Unittest and PyTest frameworks, scriptable deployment & migrations framework \nand network management for deploying to many public & private networks like [INFURA](https://infura.io) or \n[Ganache CLI](https://github.com/trufflesuite/ganache-cli).\n\n## Dependency\n\nThis library requires the `solc` executable to be present.\n\nOnly versions `>=0.4.2` are supported and tested though this library may work\nwith other versions.\n\n* [solc](http://solidity.readthedocs.io/en/latest/installing-solidity.html): Ethereum solidity compiler.\n* [ganache-cli](https://github.com/trufflesuite/ganache-cli): A command-line version of Ethereum blockchain server.\n* [pip](https://pypi.org/project/pip/): To install packages from the Python Package Index and other indexes.\n* [python3](https://www.python.org/downloads/release/python-368/): version 3.6 or greater.\n\n## Installation\nPIP to install cobra globally. For Linux sudo may be required.\n```\n$ pip install eth-cobra\n```\n\n## Development\nWe welcome pull requests. To get started, just fork this repo, clone it locally, and run:\n```\n$ pip install -e . -r requirements.txt\n```\n\n## Quick Usage\n\nInitialize project structure \n\nA default set of contract and tests, run the following command: \n\n```\n$ cobra init\n```\n\nGet help:\n\n```\n$ cobra --help\n```\n\nFrom there, you can run `cobra compile`, `cobra deploy/migrate` and `cobra test --unittest/--pytest` \nto compile your contracts, deploy those contracts to the network, and run their associated unit tests.\n\n\n
\nadvanced cobra.yaml\n\n```yaml\ncompile:\n solidity_path: \"./contracts\" # global\n artifact_path: \"./build/contracts\"\n contracts: [\n contract: {\n solidity: \"Contract.sol\",\n solidity_path: \"./contracts/libs\", # detail\n import_remappings: [\n \"=/path/folder/contracts/\"\n ],\n allow_paths: [\n \"/path/folder/contracts/\"\n ]\n }\n ]\n\ndeploy:\n artifact_path: \"./build/contracts/\"\n contracts: [\n contract: {\n artifact: \"Contract.json\",\n links: [\"Contract.json\"]\n }\n ]\n\ntest:\n artifact_path: \"./build/contracts/\"\n test_paths: [\"./tests\"]\n contracts: [\n contract: {\n artifact: \"Contract.json\",\n links: [\"Contract.json\"]\n }\n ]\n\nnetwork:\n development: {\n url: \"https://ropsten.infura.io/...\",\n host: \"localhost\",\n port: 8545,\n hdwallet: {\n mnemonic: \"decide adjust legend nation type same task aim rigid lucky guilt close\", # or\n seed: \"decide adjust legend nation type same task aim rigid lucky guilt close\",\n password: \"meherett\",\n private: \"5f8935bb3b61b312ba1114cbf6f1ea30102383f2b043a1b213aa482132d25049\",\n gas: 3000000,\n gas_price: 1000000\n },\n protocol: \"HTTP\", # HTTP, HTTPS, WS(WebSocket) and ICP\n account: {\n address: \"0x6a373a75c388ac2d160f1d2b6d9ada34f29831cd\",\n gas: 3000000,\n gas_price: 1000000\n }\n }\n```\n
\n\n## Testing\nTests are still under development.\n\nYou can run the tests with:\n\n```\n$ pytest tests\n```\n\nOr use `tox` to run the complete suite against the full set of build targets, or pytest to run specific \ntests against a specific version of Python.\n\n## Meta\n\nMeheret Tesfaye \u2013 [@meherett](https://github.com/meherett) \u2013 meherett@zoho.com\n\nDistributed under the MIT license. See ``LICENSE`` for more information.\n\n[https://github.com/meherett](https://github.com/meherett)\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details\n\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/cobraframework/cobra", "keywords": "cobra", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "eth-cobra", "package_url": "https://pypi.org/project/eth-cobra/", "platform": "", "project_url": "https://pypi.org/project/eth-cobra/", "project_urls": { "Homepage": "https://github.com/cobraframework/cobra" }, "release_url": "https://pypi.org/project/eth-cobra/0.1.1/", "requires_dist": [ "colorama (==0.4.1)", "websockets (==6.0)", "cryptography (==2.5)", "cobra-hdwallet (==0.3.1)", "eth-abi (==1.2.2)", "eth-keyfile (==0.5.1)", "eth-tester (==0.1.0b33)", "eth-typing (==1.3.0)", "eth-utils (==1.4.1)", "py-evm (==0.2.0a33)", "py-solc (==3.2.0)", "pycryptodome (==3.7.3)", "pysha3 (==1.0.2)", "pytest (==3.10.1)", "pytest-console-scripts (==0.1.9)", "pytest-cobra (==1.0.1)", "PyYAML (==3.13)", "pytest-cov (==2.7.1)", "requests (==2.21.0)" ], "requires_python": ">=3.6,<4", "summary": "A fast, flexible and simple development environment framework for Ethereum smart contract, testing and deployment on Ethereum virtual machine(EVM). https://cobraframework.github.io", "version": "0.1.1" }, "last_serial": 5530272, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "38bd149d55a04d73297a68110d51c5fa", "sha256": "0e9a87bd647636764d84bb3ae9752d0e515ca09fe48726b2a994cc989b7af841" }, "downloads": -1, "filename": "eth_cobra-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "38bd149d55a04d73297a68110d51c5fa", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4", "size": 29315, "upload_time": "2019-07-14T07:14:15", "url": "https://files.pythonhosted.org/packages/52/f2/c299674a9661e50e1dfa843e7b5a32e6fe8dfdead57852313489c18af8c2/eth_cobra-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f4fd8ac90cecd827b41f5a590ff87490", "sha256": "39318ca4222ba79486e5b16d312426a20762d69e8e5e72bd9d2cd8774a46beb6" }, "downloads": -1, "filename": "eth-cobra-0.1.0.tar.gz", "has_sig": false, "md5_digest": "f4fd8ac90cecd827b41f5a590ff87490", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4", "size": 23044, "upload_time": "2019-07-14T07:14:20", "url": "https://files.pythonhosted.org/packages/84/3b/a32d28facab15c3fef0d3e183c679217297f1fe41030150ba7587751b256/eth-cobra-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "87d4ea11fef70a7f344e87e6a26c9103", "sha256": "e832f502b0b2a3afaf06988737a26f91bd2d94afeb307b4467c877fc014685e7" }, "downloads": -1, "filename": "eth_cobra-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "87d4ea11fef70a7f344e87e6a26c9103", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4", "size": 29279, "upload_time": "2019-07-14T08:14:07", "url": "https://files.pythonhosted.org/packages/e5/27/a2886d0626f61460ccd8baca54416166d7597a05c1e1e680c4c3103bcad2/eth_cobra-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "be75e809c6dec30d7ad28117c23e6fda", "sha256": "acd2f15971f2c028a95e775f328a29e13ce0b7e8afc0ebfe3779fbda68b478da" }, "downloads": -1, "filename": "eth-cobra-0.1.1.tar.gz", "has_sig": false, "md5_digest": "be75e809c6dec30d7ad28117c23e6fda", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4", "size": 22954, "upload_time": "2019-07-14T08:14:09", "url": "https://files.pythonhosted.org/packages/f3/62/f7d8b223026b314997a82cd65b27fd570996dfd149f1bf9dbec4aef56c1e/eth-cobra-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "87d4ea11fef70a7f344e87e6a26c9103", "sha256": "e832f502b0b2a3afaf06988737a26f91bd2d94afeb307b4467c877fc014685e7" }, "downloads": -1, "filename": "eth_cobra-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "87d4ea11fef70a7f344e87e6a26c9103", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4", "size": 29279, "upload_time": "2019-07-14T08:14:07", "url": "https://files.pythonhosted.org/packages/e5/27/a2886d0626f61460ccd8baca54416166d7597a05c1e1e680c4c3103bcad2/eth_cobra-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "be75e809c6dec30d7ad28117c23e6fda", "sha256": "acd2f15971f2c028a95e775f328a29e13ce0b7e8afc0ebfe3779fbda68b478da" }, "downloads": -1, "filename": "eth-cobra-0.1.1.tar.gz", "has_sig": false, "md5_digest": "be75e809c6dec30d7ad28117c23e6fda", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4", "size": 22954, "upload_time": "2019-07-14T08:14:09", "url": "https://files.pythonhosted.org/packages/f3/62/f7d8b223026b314997a82cd65b27fd570996dfd149f1bf9dbec4aef56c1e/eth-cobra-0.1.1.tar.gz" } ] }