Web3.py
Project description
# Web3.py
[![Join the chat at https://gitter.im/pipermerriam/web3.py](https://badges.gitter.im/pipermerriam/web3.py.svg)](https://gitter.im/pipermerriam/web3.py?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![Build Status](https://travis-ci.org/pipermerriam/web3.py.png)](https://travis-ci.org/pipermerriam/web3.py)
A Python implementation of [web3.js](https://github.com/ethereum/web3.js)
* Python 2.7, 3.4, 3.5 support
Read more in the [documentation on ReadTheDocs](http://web3py.readthedocs.io/). [View the change log on Github](docs/releases.rst).
## Developer setup
If you would like to hack on web3.py, set up your dev environment with:
```sh
sudo apt-get install libssl-dev
# ^ This is for Debian-like systems. TODO: Add more platforms
git clone git@github.com:pipermerriam/web3.py.git
cd web3.py
virtualenv venv
. venv/bin/activate
pip install -r requirements-dev.txt
pip install -e .
```
For different environments, you can set up multiple virtualenvs, like:
**Python 2**
```sh
virtualenv -p python2 venvpy2
. venvpy2/bin/activate
pip install -r requirements-dev.txt
pip install -e .
```
**Docs**
```sh
virtualenv venvdocs
. venvdocs/bin/activate
pip install -r requirements-dev.txt
pip install -e .
```
### Testing Setup
During development, you might like to have tests run on every file save.
Show flake8 errors on file change:
```sh
# Test flake8
when-changed -r web3/ tests/ -c "clear; git diff HEAD^ | flake8 --diff"
```
You can use pytest-watch, running one for every python environment:
```sh
pip install pytest-watch
cd venv
ptw --onfail "notify-send -t 5000 'Test failure ⚠⚠⚠⚠⚠' 'python 3 test on web3.py failed'" ../tests ../web3
#in a new console
cd venvpy2
ptw --onfail "notify-send -t 5000 'Test failure ⚠⚠⚠⚠⚠' 'python 2 test on web3.py failed'" ../tests ../web3
```
Or, you can run multi-process tests in one command, but without color:
```sh
# in the project root:
py.test --numprocesses=4 --looponfail --maxfail=1
# the same thing, succinctly:
pytest -n 4 -f --maxfail=1
```
### Release setup
For Debian-like systems:
```
apt install pandoc
```
*TODO* other release instructions
[![Join the chat at https://gitter.im/pipermerriam/web3.py](https://badges.gitter.im/pipermerriam/web3.py.svg)](https://gitter.im/pipermerriam/web3.py?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![Build Status](https://travis-ci.org/pipermerriam/web3.py.png)](https://travis-ci.org/pipermerriam/web3.py)
A Python implementation of [web3.js](https://github.com/ethereum/web3.js)
* Python 2.7, 3.4, 3.5 support
Read more in the [documentation on ReadTheDocs](http://web3py.readthedocs.io/). [View the change log on Github](docs/releases.rst).
## Developer setup
If you would like to hack on web3.py, set up your dev environment with:
```sh
sudo apt-get install libssl-dev
# ^ This is for Debian-like systems. TODO: Add more platforms
git clone git@github.com:pipermerriam/web3.py.git
cd web3.py
virtualenv venv
. venv/bin/activate
pip install -r requirements-dev.txt
pip install -e .
```
For different environments, you can set up multiple virtualenvs, like:
**Python 2**
```sh
virtualenv -p python2 venvpy2
. venvpy2/bin/activate
pip install -r requirements-dev.txt
pip install -e .
```
**Docs**
```sh
virtualenv venvdocs
. venvdocs/bin/activate
pip install -r requirements-dev.txt
pip install -e .
```
### Testing Setup
During development, you might like to have tests run on every file save.
Show flake8 errors on file change:
```sh
# Test flake8
when-changed -r web3/ tests/ -c "clear; git diff HEAD^ | flake8 --diff"
```
You can use pytest-watch, running one for every python environment:
```sh
pip install pytest-watch
cd venv
ptw --onfail "notify-send -t 5000 'Test failure ⚠⚠⚠⚠⚠' 'python 3 test on web3.py failed'" ../tests ../web3
#in a new console
cd venvpy2
ptw --onfail "notify-send -t 5000 'Test failure ⚠⚠⚠⚠⚠' 'python 2 test on web3.py failed'" ../tests ../web3
```
Or, you can run multi-process tests in one command, but without color:
```sh
# in the project root:
py.test --numprocesses=4 --looponfail --maxfail=1
# the same thing, succinctly:
pytest -n 4 -f --maxfail=1
```
### Release setup
For Debian-like systems:
```
apt install pandoc
```
*TODO* other release instructions
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
web3-3.14.0.tar.gz
(45.8 kB
view details)
Built Distribution
web3-3.14.0-py3-none-any.whl
(62.5 kB
view details)
File details
Details for the file web3-3.14.0.tar.gz
.
File metadata
- Download URL: web3-3.14.0.tar.gz
- Upload date:
- Size: 45.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1396dfd745a3c57004f32fbe32ef9bfa23df15a2ca262c96135f3e061659fc02 |
|
MD5 | 70f760c75332de933271a2b9c1719977 |
|
BLAKE2b-256 | d279ebc1954b35f53e2e8eba5f16d7f9c334cd26b4fb8c24c187ee37d8b79e64 |
File details
Details for the file web3-3.14.0-py3-none-any.whl
.
File metadata
- Download URL: web3-3.14.0-py3-none-any.whl
- Upload date:
- Size: 62.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6d96a785cf2c9eb29ec52756f71c373ec8ebdcfc1cf02b7db3da9da38286fbb8 |
|
MD5 | 1ef36c237d4dd4b61d4f324dee7f6f4f |
|
BLAKE2b-256 | 06cf567faedf6b6cc7b9934b352f07fbb3058fb1ad9c3ee8d6aabb870b3d032d |