Skip to main content

An efficient derivation tree implementation for grammar fuzzing and other applications.

Project description

DerivationTree: An Efficient, Trie-Based Derivation Tree Implementation

Python Version Build Status Code style: black

TODO

Build, Run, Install

DerivationTree requires Python 3.10.

Install

Usually, a simple pip install derivationtree should suffice. We recommend installing DerivationTree inside a virtual environment (virtualenv):

python3.10 -m venv venv
source venv/bin/activate
pip install --upgrade pip
pip install derivationtree

Build

DerivationTree is built locally as follows:

git clone https://github.com/rindPHI/derivationtree.git
cd derivationtree/

python3.10 -m venv venv
source venv/bin/activate

pip install --upgrade pip
pip install --upgrade build
python3 -m build

Then, you will find the built wheel (*.whl) in the dist/ directory.

Testing & Development

For development, we recommend using DerivationTree inside a virtual environment ( virtualenv). By thing the following steps in a standard shell (bash), one can run the ISLa tests:

git clone https://github.com/rindPHI/derivationtree.git
cd derivationtree/

python3.10 -m venv venv
source venv/bin/activate

pip install --upgrade pip
pip install -r requirements_test.txt

# Run tests
pip install -e .[dev,test]
python3 -m pytest tests

Changelog

See CHANGELOG.md.

Copyright, Authors and License

Copyright © 2022 CISPA Helmholtz Center for Information Security.

The DerivationTree code and documentation was, unless otherwise indicated, authored by Dominic Steinhöfel.

DerivationTree is released under the GNU General Public License v3.0 ( see COPYING).

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

derivationtree-0.3.1.tar.gz (10.2 kB view hashes)

Uploaded Source

Built Distribution

derivationtree-0.3.1-py3-none-any.whl (9.5 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