SolidityFlattery

command module
v0.0.0-...-e9c1b44 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 25, 2021 License: Apache-2.0 Imports: 11 Imported by: 0

README

SolidityFlattery

Dedicated to all those who believe that the world is a disc supported on the back of four large elephants that are standing on the back of a huge tortoise.

Function

SolidityFlattery takes a solidity file and retrieves all its dependancies and stuffs them in a single file in the correct order for it to be verified on etherscan.

WHY?

Because part of the ethos of the smart contract blockchain relies upon being able to see and verify the contracts yourself. Etherscan require single files for verification. SolidityFlattery helps you create those files.

Also - because my MacBook hates Python and refuses to figure out how to run the version that BLOCKCAT put together.

And because it can be compiled into executables for any platform.

Installation

This is not intended as a library (no go getting required).

Just clone it and build it. Use of go modules should ensure that the dependencies are met.

You can build it yourself or download an executable (coming soon)

built using go v 1.14

> go build

or

> go install

which builds and installs to $GOBIN

Both of these create an executable based on your working directory name, probably SolidityFlattery :-)

Usage

Assuming that you have the executable on your path :

Assuming your contract is in mainfile.sol and you want to create consolidated.sol

SolidityFlattery -input mainfile.sol -output consolidated

This creates a flattened version of mainfile.sol with all includes in the file consolidated.sol and creates a log called consolidated.log

NOTE the output file must not exist. This is to prevent you from overwriting that file that you forgot to check into git after a tough night's coding.


Bugs / enhancements : please raise an issue or fork and issue a PR.

Dave Appleton.

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL