Metadata-Version: 2.4
Name: bisecter
Version: 1.0
Summary: Allows to bisect over arbitrary number of arguments.
Author-email: Lukas Doktor <ldoktor@redhat.com>
License-Expression: GPL-2.0-or-later
Project-URL: Homepage, https://github.com/ldoktor/bisecter
Project-URL: Repository, https://github.com/ldoktor/bisecter
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: Natural Language :: English
Classifier: Operating System :: POSIX
Classifier: Topic :: Software Development :: Testing
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.8
Description-Content-Type: text/x-rst
License-File: LICENSE
Provides-Extra: yaml
Requires-Dist: PyYAML; extra == "yaml"
Provides-Extra: docs
Requires-Dist: Sphinx; extra == "docs"
Provides-Extra: dev
Requires-Dist: PyYAML; extra == "dev"
Requires-Dist: Sphinx; extra == "dev"
Dynamic: license-file

============
Introduction
============

This tool is inspired by the ``git bisect`` tool but allows to bisect over
multiple arbitrary lists of arguments like nightly builds, tool versions or
simply list of arguments.

Setup
=====

Bisecter is available from ``pip`` so one can install it by executing::

    python3 -m pip install bisecter

or to install directly the latest version from git::

    python3 -m pip install git+https://github.com/ldoktor/bisecter.git

Basic usage
===========

The workflow is similar to ``git bisect``, only when starting the bisection
one needs to specify the lists of arguments this bisection is going to use::

    bisecter start '20230101,20230102,20230103,20230104,20230105,20230106,20230107'
    bisecter run ./test.sh
    bisecter log

One can also manually tag variants::

    bisecter start '20230101,20230102,20230103,20230104,20230105,20230106,20230107'
    ./test.sh $(bisecter args)
    bisecter good
    ./test.sh $(bisecter args)
    bisecter bad
    ...

See ``bisecter --help`` for more details.
