Graph theoretic classes and helper functions.
Project description
Graphworks
A Python module for efficient graph theoretic programming
NOTE This is a very old project I created for my undergrad capstone project. It's not in a working state at the moment, but I'm bringing it back to life.
Usage
TODO
Development
Requirements
- Python 3.8+
- virtualenv
- numpy
- graphviz
Install the required packages
pip install virtualenv
virtualenv env
Start the virtualenv
source ./env/bin/activate
You can deactivate the virtualenv with
deactivate
Lastly, install the required libraries
pip install -r requirements.txt
Building the package
- Update the version number in
setup.py
- Run
python setup.py sdist bdist_wheel
- Run
twine check dist/*
- Upload to test PyPi:
twine upload --repository-url https://test.pypi.org/legacy/ dist/*
- Upload to PyPi main:
twine upload --skip-existing dist/*
- To autopublish, tag commit with
git tag -a vX.Y.Z -m 'release message
- Then
git push --tags
Diagnostics
- Run the unit tests:
python -m unittest discover tests '*_tests.py'
- Run unit test coverage:
coverage run --source=graphworks/ -m unittest discover tests '*_tests.py'
- Generate test coverage reports (either works):
coverage report --omit="*/test*,*/venv/*"
coverage html --omit="*/test*,*/venv/*"
TODO
- Searching/Sorting
- https://www.python-course.eu/graphs_python.php
- Build out directed graphs algorithms
- Hierholzer’s Algorithm
- https://algs4.cs.princeton.edu/42digraph/
- Allow for weighted graph algorithms
- Jarnik's algorithm
- Dijkstra's algorithm
- C++ binaries for speeding up graph computations
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
graphworks-0.2.0.tar.gz
(14.4 kB
view details)
Built Distribution
File details
Details for the file graphworks-0.2.0.tar.gz
.
File metadata
- Download URL: graphworks-0.2.0.tar.gz
- Upload date:
- Size: 14.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 555a99b78d4e64c0a2b2cb7d973a3cb94d6fb766226c1532caff5dcddc46fc02 |
|
MD5 | f575391fde866a4f175f0280f44cd219 |
|
BLAKE2b-256 | c4f1bfdae261923a75e63b71ec38f73fc98a5843d2c13d36106bc768570c39fb |
File details
Details for the file graphworks-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: graphworks-0.2.0-py3-none-any.whl
- Upload date:
- Size: 18.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0ebbc1fde55a81f710d1deb3e0428a294035968b52fb79d8f12ad747c8d0f1f9 |
|
MD5 | 04975da96ed301a853c88daaa14d8482 |
|
BLAKE2b-256 | f395c981c18302660501eaa2e8ea4e2975258a104c0bafef5b7f752cc2c1f3eb |