Development#

HiperWalk is built upon several Python libraries. Before developing for HiperWalk, these libraries need to be installed. The required libraries include numpy, scipy, networkx, and matplotlib. To install these libraries, use the following commands:

pip3 install numpy
pip3 install scipy
pip3 install networkx
pip3 install matplotlib

The main branch is the main development area for new features. To contribute, first clone the repository.

git clone https://github.com/hiperwalk/hiperwalk.git

Next, make the desired modifications and submit a pull request.

Testing#

Tests are located in the hiperwalk/tests/ directory. If a complete installation (including HPC support) was performed, execute:

./run_all.sh

If you installed the standalone version (without HPC support), execute:

./run_nonhpc.sh

Bug Report and Contact#

To send a bug report or contribute to Hiperwalk or contact the developers, write an email to hiperwalk@gmail.com.

Documentation#

There are likely to be new features in the main branch. These features are documented online in the latest version.

Install Requirements#

To generate the current, under-development documentation locally, all HiperWalk requirements must be installed (see HiperWalk section in the installation guide).

Assuming that all HiperWalk requirements are installed (see TODO), the following commands install the remaining documentation-specific requirements.

sudo apt install python3-sphinx
sudo apt install graphviz
pip3 install numpydoc
pip3 install sphinx-autodoc-typehints
pip3 install pydata-sphinx-theme

Generate Documentation#

Within the hiperwalk/docs/ directory, execute:

./go

View Generated Documentation#

If the process was successful, the newly compiled documentation is now available for local access. To view (and test) it, open the file hiperwalk/docs/build/html/index.html in your preferred browser – for instance, by double-clicking on it.

Todo#

  • Releases notes.

  • The current version was tested with Ubuntu 20.04. Hiperwalk failed to be configured in Ubuntu 22.04.

  • The current version only works with GTK 3.0. Implementation using GTK 4.0 is postponed to the next release.