Skip to main content

Python wrapper and version management tool for ethereum-targeting compilers.

Project description

# ethcx

[![Pypi Status](https://img.shields.io/pypi/v/ethcx.svg)](https://pypi.org/project/ethcx/) [![Build Status](https://img.shields.io/github/workflow/status/ethpwn/ethcx/ethcx%20workflow)](https://github.com/ethpwn/ethcx/actions) [![Coverage Status](https://img.shields.io/codecov/c/github/ethpwn/ethcx)](https://codecov.io/gh/ethpwn/ethcx)

Python wrapper and version management tool for compilers target the ethereum platform.

Currently supports the solc Solidity compiler and the vyper compiler.

Forked from [py-solc-x](https://github.com/iamdefinitelyahuman/py-solc-x).

## Features

  • Full support for Solidity >=0.4.11 and Vyper

  • Install Solidity and Vyper on Linux, OSX and Windows

  • Compile Solidity from source on Linux and OSX

## Dependencies

ethcx allows the use of multiple versions of solc, and can install or compile them as needed. If you wish to compile from source you must first insall the required [solc dependencies](https://solidity.readthedocs.io/en/latest/installing-solidity.html#building-from-source).

For Vyper, ethcx can download and install all released versions of the vyper compiler binaries from [Github Release](https://github.com/vyperlang/vyper/releases).

## Installation

### From pypi

`bash pip install ethcx `

### Local (editable) install

`bash git clone https://github.com/ethpwn/ethcx.git cd ethcx pip install -e . `

## Documentation

Documentation is hosted at [Read the Docs](https://ethcx.readthedocs.io/en/latest/).

## Testing

ethcx is tested on Linux, OSX and Windows with solc versions >=0.4.11.

To run the test suite:

`bash pytest tests/ `

By default, the test suite installs all available solc versions for your OS. If you only wish to test against already installed versions, include the –no-install flag.

## Contributing

Help is always appreciated! Feel free to open an issue if you find a problem, or a pull request if you’ve solved an issue.

Please check out our [Contribution Guide](CONTRIBUTING.md) prior to opening a pull request.

## License

This project is licensed under the [MIT license](LICENSE).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ethcx-0.0.4.tar.gz (27.5 kB view details)

Uploaded Source

Built Distribution

ethcx-0.0.4-py3-none-any.whl (29.3 kB view details)

Uploaded Python 3

File details

Details for the file ethcx-0.0.4.tar.gz.

File metadata

  • Download URL: ethcx-0.0.4.tar.gz
  • Upload date:
  • Size: 27.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for ethcx-0.0.4.tar.gz
Algorithm Hash digest
SHA256 5d4c72ee653d4da0a3e678cba51cae1e5025e4642042a76c81086ebf31f4befd
MD5 1615c6db7b40c292437b7f058faab6f8
BLAKE2b-256 539fb440f6799aea111d2fa67b515a5cbb4b64ab89928698832d44057e10e1e6

See more details on using hashes here.

File details

Details for the file ethcx-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: ethcx-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 29.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for ethcx-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 d7452ca9ed43bbba6eb028a20ee94263a22831e315f8f81d6666b193e1682722
MD5 9574077f87e3a7909062825224601001
BLAKE2b-256 40993fd48905414fceac9b3dd9ae53193554d728ec8f5e5c8e9db8c7516b4770

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