Skip to content

A python library providing measures of multiway issue alignment.

License

Notifications You must be signed in to change notification settings

letiziaia/multiway-alignment

Repository files navigation

multiway-alignment Python 3.10+ License codecov DOI arXiv

multiway-alignment

This repository implements an algorithm for quantifying multiway alignment or higher-order alignment, that is, the alignment across n different issues or dimensions. You can refer to the paper for more details.

Structure of the repo

  • \multiway_alignment\: source code
  • \tests\: tests for the source code

Installing the package

From PIP

This package can be installed directly from the Python Package Index (PyPI) using pip from the command-line interface by executing the following command:

$ pip install multiway-alignment

Build from source

Alternatively, the package can be installed by first cloning the repository containing the source code and then installing the package locally in a chosen directory:

$ git clone git@github.com:letiziaia/multiway-alignment.git
$ cd multiway-alignment
$ pip install .

Setting up the development environment

python

You should have python >= 3.10 and pipenv installed.

# install dependencies (including dev)
$ pipenv install --dev

# activate environment
$ pipenv shell

Formatting

The project uses Black, flake8 and ruff code linting. All the code can be formatted by running python3 -m black . in root dir. Additional issues can be found by running python3 -m flake8 . and python3 -m ruff check . in root dir.

Tests

This code is built and tested for python 3.10, 3.11, 3.12, and 3.13.