Skip to main content

Plugin for Ape Ethereum Framework for compiling Solidity contracts

Project description

Ape Solidity

Compile Solidity contracts.

Dependencies

  • python3 version 3.6 or greater, python3-dev

Installation

via pip

You can install the latest release via pip:

pip install ape-solidity

via setuptools

You can clone the repository and use setuptools for the most up-to-date version:

git clone https://github.com/ApeWorX/ape-solidity.git
cd ape-solidity
python3 setup.py install

Quick Usage

In your project, make sure you have a contracts/ directory containing Solidity files (.sol).

Then, while this plugin is installed, compile your contracts:

ape compile

The byte-code and ABI for your contracts should now exist in a __local__.json file in a .build/ directory.

Dependency Mapping

To configure import remapping, use your project's ape-config.yaml file:

solidity:
  import_remapping:
    - "@openzeppelin=path/to/open_zeppelin/contracts"

If you are using the dependencies: key in your ape-config.yaml, ape can automatically search those dependencies for the path.

dependencies:
  open_zeppelin: OpenZeppelin/openzeppelin-contracts@4.4.0

solidity:
  import_remapping:
    - "@openzeppelin=open_zeppelin/contracts"

Once you have your dependencies configured, you can import packages using your import keys:

import "@openzeppelin/token/ERC721/ERC721.sol";

Development

This project is in development and should be considered a beta. Things might not be in their final state and breaking changes may occur. Comments, questions, criticisms and pull requests are welcomed.

License

This project is licensed under the Apache 2.0.

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

ape-solidity-0.1.0b5.tar.gz (15.3 kB view details)

Uploaded Source

Built Distribution

ape_solidity-0.1.0b5-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file ape-solidity-0.1.0b5.tar.gz.

File metadata

  • Download URL: ape-solidity-0.1.0b5.tar.gz
  • Upload date:
  • Size: 15.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.12

File hashes

Hashes for ape-solidity-0.1.0b5.tar.gz
Algorithm Hash digest
SHA256 bb847d36469fa88cc0ee4263494ae4db297c78920e02f1dfc3f52c4bf03fe1da
MD5 a6b9d666dccfaa460c685dbf90adc36e
BLAKE2b-256 2448e43f41e9ebda04a44fd19faabf2e29354c278e5991ebaacffdf3b0bfd734

See more details on using hashes here.

File details

Details for the file ape_solidity-0.1.0b5-py3-none-any.whl.

File metadata

  • Download URL: ape_solidity-0.1.0b5-py3-none-any.whl
  • Upload date:
  • Size: 10.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.12

File hashes

Hashes for ape_solidity-0.1.0b5-py3-none-any.whl
Algorithm Hash digest
SHA256 c77b3ce344189ff7d694f19f3688f214e139df8ce0f3e4255fdda2d8d073cc96
MD5 ff50d831f728c30e580918052abccd45
BLAKE2b-256 d6881c76dd57032ada9d005c12a9ec65ca9e46db1137124349478cd83c1926b3

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