Skip to main content

Ethereum Development Framework (fork for LLL)

Project description

# PopuLLLus

**NOTE** from @veox:

This is a fork of [Populus](https://github.com/ethereum/populus) with some
rough commits to enable developing in LLL. It is the same as my
[`lll-to-merge`](https://github.com/veox/populus/tree/lll-to-merge) branch.

It will install as `populus`, not `populllus`! For this reason, it is
recommended installing inside a `virtualenv`.

Also, it will _still_ require specifying the `LLLBackend` manually in the
project config.

I never got to making its use sane; for example, it will proceed without
raising an exception even if `lllc` failed to compile a contract, and won't
even print what the compiler complained about.

I never got to proper integration into upstream Populus, since the latter
fell behind in maintenance, and is now in re-design/re-implementation phase
anyway.

I did, however, use this fork in a number of projects:

* https://gitlab.com/veox/lll-contracts
* https://gitlab.com/veox/lll-creation-patterns
* https://gitlab.com/veox/oobiqoo

Breaking this fork out as a standalone project allows me to make a PyPI
package, specify it as a dependency in those other codebases, and allow
for straightforward reproduction by others. In the end, this is the goal:
make the software easy to approach and hack on, is so you may wish.

Runnable CI is a bonus. :)

-----

The rest of README remains as-is since forked.

**Many other project-level documentation is outdated, too.**

-----
-----


## Documentation

[Documentation on ReadTheDocs](http://populus.readthedocs.org/en/latest/)


## Installation

```sh
pip install populus
```

## Development

```sh
pip install -e . -r requirements-dev.txt
```


### Running the tests

You can run the tests with:

```sh
py.test tests
```

Or you can install `tox` to run the full test suite.


### Releasing

Pandoc is required for transforming the markdown README to the proper format to
render correctly on pypi.

For Debian-like systems:

```
apt install pandoc
```

Or on OSX:

```sh
brew install pandoc
```

To release a new version:

```sh
bumpversion $$VERSION_PART_TO_BUMP$$
git push && git push --tags
make release
```


#### How to bumpversion

The version format for this repo is `{major}.{minor}.{patch}` for stable, and
`{major}.{minor}.{patch}-{stage}.{devnum}` for unstable (`stage` can be alpha or beta).

To issue the next version in line, use bumpversion and specify which part to bump,
like `bumpversion minor` or `bumpversion devnum`.

If you are in a beta version, `bumpversion stage` will switch to a stable.

To issue an unstable version when the current version is stable, specify the
new version explicitly, like `bumpversion --new-version 4.0.0-alpha.1 devnum`


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

populllus-2.2.2.tar.gz (54.0 kB view details)

Uploaded Source

Built Distribution

populllus-2.2.2-py3-none-any.whl (96.6 kB view details)

Uploaded Python 3

File details

Details for the file populllus-2.2.2.tar.gz.

File metadata

  • Download URL: populllus-2.2.2.tar.gz
  • Upload date:
  • Size: 54.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0

File hashes

Hashes for populllus-2.2.2.tar.gz
Algorithm Hash digest
SHA256 a9ea98e5b28f4835dec7fba94bead8f4b0222a92924b420089e50fb838ab7163
MD5 94967d9a3d94c7a6cddcfb2481283228
BLAKE2b-256 63ea5503eee2597de4d8464006bca61f7f57add1e8a19f1e5a97e684113c88b2

See more details on using hashes here.

File details

Details for the file populllus-2.2.2-py3-none-any.whl.

File metadata

  • Download URL: populllus-2.2.2-py3-none-any.whl
  • Upload date:
  • Size: 96.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0

File hashes

Hashes for populllus-2.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9b51cfffeaf2cadcb62e6ceb329284aa3a3ca5d6e4be4744e1d57bc7a9f415c6
MD5 b6d81c0e13f76e943ab74bfd5171e218
BLAKE2b-256 4b48b5beeb1e9a63345e84e4ae0d3f5715511f8c0938d34cc766f58752a8a6ee

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