Skip to main content

No project description provided

Project description

Flaterra

License: MIT CircleCI Codacy Badge PyPI Code style: black Maintainability Rating

Inspired by "earth" in Portuguese, terra and the flatness of the Earth.

Flaterra parses the provided Solidity source file and adds any other imported files. This is useful if you want to upload your source code to a block explorer for verification, use it with Remix or to run analysis on it, for example with MythX or Mythril.

A way to make Solidity source code flat like the earth.

Flat Earth

Install

Install it with pip from PyPI.

$ pip install --user flaterra

Usage

Specify the main contract you want flatten with --contract=.

$ flaterra --contract=ERC20.sol
INFO:root:Reading file .//ERC20.sol
INFO:root:Reading file .//./IERC20.sol
INFO:root:Reading file .//../../math/SafeMath.sol
INFO:root:Writing flattened file ERC20_flat.sol

It assumes the contract is in the current folder. If the contract is in another folder specify it with --folder=contracts/.

Details

It is able to read import formats like

import "./contract.sol";
import './another_contract.sol';
import {Contract1, Contract2} from "contracts.sol";

Pragmas are added only from the main Solidity file. These formats are supported.

pragma solidity 0.5.0;
pragma experimental ABIEncoderV2;

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

flaterra-0.1.7.tar.gz (3.7 kB view hashes)

Uploaded Source

Built Distribution

flaterra-0.1.7-py3-none-any.whl (4.3 kB view hashes)

Uploaded Python 3

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