Files
revng-revng/python
Giacomo Vercesi 05dc27715d Improve pipeline saving capabilities
This commit introduces some changes to how the revng pipeline handles
serializing to disk. Specificaly:

* Pipeline globals (specifically model.yml) are better handled if they
  are in a subdirectory. They are now saved in the "context"
  subdirectory.
* In python:revng.api the pipeline is serialized whenever there is a
  non-reproducible change to the state (e.g. binary upload or model
  change).
  In the case of analyses this is done conservatively by checking that
  the diff produced is not empty.
* The logic for computing a step's subdirectory has been moved to the
  pipeline runner, consequently if a step is asked to serialize it
  will not create any subdirectories.
* Functionality for saving a single step/context has been exposed in
  Pipeline C.
* Finally, all path concatenations are now handled by
  llvm::sys::path::append, for extra os-agnosticism.
2022-06-29 14:50:58 +02:00
..
2022-06-20 19:04:18 +02:00
2022-06-29 14:49:29 +02:00
2022-02-23 18:02:42 +01:00

rev.ng python package

This python package provides classes that can be used to represent, serialize and deserialize rev.ng models.

It also contains other modules related to various revng CLI tools.

How to install

You probably want to install this package in a virtualenv:

python -m venv <virtualenv_dir>
source <virtualenv_dir>/bin/activate

Installation

To build and install from source:

pip install .

Creating redistributable packages

This command will create a redistributable package in dist:

python setup.py bdist_wheel

The package can be installed using pip:

pip install dist/revng*.whl