{ "info": { "author": "Nick Gheorghita", "author_email": "nickg@ethereum.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6" ], "description": "twig\n====\n\n`Join the chat at\nhttps://gitter.im/ethereum/twig `__\n`Build Status `__ `PyPI\nversion `__ `Python\nversions `__ `Docs\nbuild `__\n\nA tool for Ethereum smart contract development.\n\nRead more in the `documentation on\nReadTheDocs `__. `View the change\nlog `__.\n\nQuickstart\n----------\n\n.. code:: sh\n\n pip install twig\n\nDeveloper Setup\n---------------\n\nIf you would like to hack on twig, please check out the `Ethereum\nDevelopment Tactical\nManual `__\nfor information on how we do:\n\n- Testing\n- Pull Requests\n- Code Style\n- Documentation\n\nDevelopment Environment Setup\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nYou can set up your dev environment with:\n\n.. code:: sh\n\n git clone git@github.com:ethereum/twig.git\n cd twig\n virtualenv -p python3 venv\n . venv/bin/activate\n pip install -e .[dev]\n\nTesting Setup\n~~~~~~~~~~~~~\n\nDuring development, you might like to have tests run on every file save.\n\nShow flake8 errors on file change:\n\n.. code:: sh\n\n # Test flake8\n when-changed -v -s -r -1 twig/ tests/ -c \"clear; flake8 twig tests && echo 'flake8 success' || echo 'error'\"\n\nRun multi-process tests in one command, but without color:\n\n.. code:: sh\n\n # in the project root:\n pytest --numprocesses=4 --looponfail --maxfail=1\n # the same thing, succinctly:\n pytest -n 4 -f --maxfail=1\n\nRun in one thread, with color and desktop notifications:\n\n.. code:: sh\n\n cd venv\n ptw --onfail \"notify-send -t 5000 'Test failure \u26a0\u26a0\u26a0\u26a0\u26a0' 'python 3 test on twig failed'\" ../tests ../twig\n\nRelease setup\n~~~~~~~~~~~~~\n\nFor Debian-like systems:\n\n::\n\n apt install pandoc\n\nTo release a new version:\n\n.. code:: sh\n\n make release bump=$$VERSION_PART_TO_BUMP$$\n\nHow to bumpversion\n^^^^^^^^^^^^^^^^^^\n\nThe version format for this repo is ``{major}.{minor}.{patch}`` for\nstable, and ``{major}.{minor}.{patch}-{stage}.{devnum}`` for unstable\n(``stage`` can be alpha or beta).\n\nTo issue the next version in line, specify which part to bump, like\n``make release bump=minor`` or ``make release bump=devnum``. This is\ntypically done from the master branch, except when releasing a beta (in\nwhich case the beta is released from master, and the previous stable\nbranch is released from said branch). To include changes made with each\nrelease, update \u201cdocs/releases.rst\u201d with the changes, and apply commit\ndirectly to master before release.\n\nIf you are in a beta version, ``make release bump=stage`` will switch to\na stable.\n\nTo issue an unstable version when the current version is stable, specify\nthe new version explicitly, like\n``make release bump=\"--new-version 4.0.0-alpha.1 devnum\"``\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ethereum/twig", "keywords": "ethereum", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "twig", "package_url": "https://pypi.org/project/twig/", "platform": "", "project_url": "https://pypi.org/project/twig/", "project_urls": { "Homepage": "https://github.com/ethereum/twig" }, "release_url": "https://pypi.org/project/twig/0.1.0a5/", "requires_dist": [ "eth-utils (<2,>=1)", "eth-typing (<2,>=1)", "ethpm (<1,>=0.1.4a7)", "pytest-ethereum (<1,>=0.1.3a1)", "web3[tester] (<5,>=4.7)", "vyper (<1,>=0.1.0b5)", "bumpversion (<1,>=0.5.3) ; extra == 'dev'", "pytest-watch (<5,>=4.1.0) ; extra == 'dev'", "wheel ; extra == 'dev'", "twine ; extra == 'dev'", "ipython ; extra == 'dev'", "pytest (==3.3.2) ; extra == 'dev'", "pytest-xdist ; extra == 'dev'", "tox (<3,>=2.9.1) ; extra == 'dev'", "black (<19,>=18.6b4) ; extra == 'dev'", "flake8 (==3.4.1) ; extra == 'dev'", "isort (<5,>=4.2.15) ; extra == 'dev'", "mypy (<0.600) ; extra == 'dev'", "Sphinx (<2,>=1.6.5) ; extra == 'dev'", "sphinx-rtd-theme (>=0.1.9) ; extra == 'dev'", "Sphinx (<2,>=1.6.5) ; extra == 'doc'", "sphinx-rtd-theme (>=0.1.9) ; extra == 'doc'", "black (<19,>=18.6b4) ; extra == 'lint'", "flake8 (==3.4.1) ; extra == 'lint'", "isort (<5,>=4.2.15) ; extra == 'lint'", "mypy (<0.600) ; extra == 'lint'", "pytest (==3.3.2) ; extra == 'test'", "pytest-xdist ; extra == 'test'", "tox (<3,>=2.9.1) ; extra == 'test'" ], "requires_python": ">=3.6, <4", "summary": "twig: A tool for Ethereum smart contract development.", "version": "0.1.0a5" }, "last_serial": 4555010, "releases": { "0.1.0a3": [ { "comment_text": "", "digests": { "md5": "0984b4d42c3674fc25e2a719edaed805", "sha256": "c60c426173dd0ee1170ff356f37a637dc9ad1db6cd96d7e613cfcdb1a6a04358" }, "downloads": -1, "filename": "twig-0.1.0a3-py3-none-any.whl", "has_sig": false, "md5_digest": "0984b4d42c3674fc25e2a719edaed805", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5, <4", "size": 2942, "upload_time": "2018-09-06T22:54:19", "url": "https://files.pythonhosted.org/packages/37/43/182dd720d8474653b01f9dcc575f34e6d8ce4acd61ca5f6dafd6340037e2/twig-0.1.0a3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c297044bb35a648f5bc25053e8d1dd3a", "sha256": "316d886b76fb315506a95614269916a68d0577a76883f637b002f8a284cc7f68" }, "downloads": -1, "filename": "twig-0.1.0a3.tar.gz", "has_sig": false, "md5_digest": "c297044bb35a648f5bc25053e8d1dd3a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5, <4", "size": 3580, "upload_time": "2018-09-06T22:54:20", "url": "https://files.pythonhosted.org/packages/ed/a9/c3a49e01a29a9b472587be8e382d83abc14e743201464ea401ba75b825c7/twig-0.1.0a3.tar.gz" } ], "0.1.0a4": [ { "comment_text": "", "digests": { "md5": "29de5bb3b969aa5b58ef117432393cf7", "sha256": "77b24c6dd1ad7bd72bafbeb0ece056ea572794e1e773b6218f58621cc126ffdd" }, "downloads": -1, "filename": "twig-0.1.0a4-py3-none-any.whl", "has_sig": false, "md5_digest": "29de5bb3b969aa5b58ef117432393cf7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6, <4", "size": 6063, "upload_time": "2018-11-30T15:05:41", "url": "https://files.pythonhosted.org/packages/55/95/670d0b51f7f427ed8845e72b881b4df785e9a0120744c823405ce595dedf/twig-0.1.0a4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6b6d58cc72b15567a838ac6db325167e", "sha256": "4421da6e7e1f888fa70d599dbee413658b5cf2b85f39abc24a4e0ca0d12e4359" }, "downloads": -1, "filename": "twig-0.1.0a4.tar.gz", "has_sig": false, "md5_digest": "6b6d58cc72b15567a838ac6db325167e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6, <4", "size": 4111, "upload_time": "2018-11-30T15:05:44", "url": "https://files.pythonhosted.org/packages/00/14/74ec108ba54b1992b3909908117e3a0bf4a2f84c0b9f5470400317678496/twig-0.1.0a4.tar.gz" } ], "0.1.0a5": [ { "comment_text": "", "digests": { "md5": "c0b1225e149305cffcf39df7a1b8fcd9", "sha256": "3ab824421267a8a4837453c26bfd4af77a9526d1947cce7804779e85551ec983" }, "downloads": -1, "filename": "twig-0.1.0a5-py3-none-any.whl", "has_sig": false, "md5_digest": "c0b1225e149305cffcf39df7a1b8fcd9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6, <4", "size": 6065, "upload_time": "2018-12-03T09:27:13", "url": "https://files.pythonhosted.org/packages/84/4b/bc336e0b098380b9c7beadbc215d93648d178c7049e3ea98c23d35575307/twig-0.1.0a5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5ec9952b4c30295aee65274ff3ee91fa", "sha256": "0fe58c094d9b6f48fd45f5eda8f223a105227f98c31866b3afce79d685790a4e" }, "downloads": -1, "filename": "twig-0.1.0a5.tar.gz", "has_sig": false, "md5_digest": "5ec9952b4c30295aee65274ff3ee91fa", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6, <4", "size": 4119, "upload_time": "2018-12-03T09:27:15", "url": "https://files.pythonhosted.org/packages/21/a0/1e45c8d5b5a577c1e50118bfb8edca207abc6bdaffb45614616e8fbd71ee/twig-0.1.0a5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c0b1225e149305cffcf39df7a1b8fcd9", "sha256": "3ab824421267a8a4837453c26bfd4af77a9526d1947cce7804779e85551ec983" }, "downloads": -1, "filename": "twig-0.1.0a5-py3-none-any.whl", "has_sig": false, "md5_digest": "c0b1225e149305cffcf39df7a1b8fcd9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6, <4", "size": 6065, "upload_time": "2018-12-03T09:27:13", "url": "https://files.pythonhosted.org/packages/84/4b/bc336e0b098380b9c7beadbc215d93648d178c7049e3ea98c23d35575307/twig-0.1.0a5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5ec9952b4c30295aee65274ff3ee91fa", "sha256": "0fe58c094d9b6f48fd45f5eda8f223a105227f98c31866b3afce79d685790a4e" }, "downloads": -1, "filename": "twig-0.1.0a5.tar.gz", "has_sig": false, "md5_digest": "5ec9952b4c30295aee65274ff3ee91fa", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6, <4", "size": 4119, "upload_time": "2018-12-03T09:27:15", "url": "https://files.pythonhosted.org/packages/21/a0/1e45c8d5b5a577c1e50118bfb8edca207abc6bdaffb45614616e8fbd71ee/twig-0.1.0a5.tar.gz" } ] }