F. Eugene Aumson 3e0bd1f02d
Run CI in an environment that includes Python, and test generated code (#2072)
* CI: use a docker image that includes Python

So that tests of abi-gen generating Python can exercise the code being
generated.

* CI fix: disable old yarn permission denied hack

Motivated by CI failure of previous commit.

* CI fix: more resources for test-contracts-ganache

Motivated by CI failure of previous commit.

* CI fix: remove hack of permissions for python libs

Fix for previous CI run's failure of test-python.  Apparently we don't
need this in the docker container we've switched to.

* abi-gen/Py: minimum viable test of gen'd code

Ensure the code is parseable by running it through black.

* abi-gen/Py: expand Python linter usage

Make abi-gen filter its output through black, if its available in the
runtime environment.  Accordingly, stop having contract_wrappers.py's
setup.py pre_install run black on copied-over files.

Adds Pylint to the list of linters run against test-cli/output.

* abi-gen: re-enable Solidity linter

It was broken, running seemingly cleanly but not actually reading any
files, because it was targetting the wrong folder.

* abi-gen/test-cli/fixtures/sol: fix linter errors

* abi-gen/test-cli: disable pylint blackisted-name

* abi-gen/Py: rm unused var in contracts w/o methods

Remove unused variable from generated wrapper for contracts without any
methods.
2019-08-16 13:32:31 -04:00
..
2019-08-08 14:53:59 -04:00
2019-08-08 14:53:59 -04:00
2019-03-25 19:25:41 -04:00
2019-03-25 19:25:41 -04:00

0x-contract-wrappers

0x contract wrappers for those developing on top of 0x protocol.

Read the documentation

Installing

pip install 0x-contract-wrappers

Contributing

We welcome improvements and fixes from the wider community! To report bugs within this package, please create an issue in this repository.

Please read our contribution guidelines before getting started.

Install Code and Dependencies

Ensure that you have installed Python >=3.6 and Docker. Then:

pip install -e .[dev]

Test

Tests depend on a running ganache instance and with the 0x contracts deployed in it. For convenience, a docker container is provided that has ganache-cli and a snapshot containing the necessary contracts. A shortcut is provided to run that docker container: ./setup.py ganache. With that running, the tests can be run with ./setup.py test.

Clean

./setup.py clean --all

Lint

./setup.py lint

Build Documentation

./setup.py build_sphinx

More

See ./setup.py --help-commands for more info.