Metadata-Version: 2.3
Name: ahlbatross
Version: 0.1.2
Project-URL: Changelog, https://github.com/Hochfrequenz/ahlbatross/releases
Project-URL: Homepage, https://github.com/Hochfrequenz/ahlbatross
Author-email: Hochfrequenz Unternehmensberatung GmbH <info@hochfrequenz.de>
License: MIT
Keywords: ahb
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.11
Requires-Dist: pandas-stubs>=2.2.3.241009
Requires-Dist: pandas>=2.2.3
Requires-Dist: typer
Requires-Dist: xlsxwriter>=3.2.0
Provides-Extra: coverage
Requires-Dist: coverage==7.6.7; extra == 'coverage'
Provides-Extra: dev
Requires-Dist: pip-tools; extra == 'dev'
Provides-Extra: formatting
Requires-Dist: black==24.10.0; extra == 'formatting'
Requires-Dist: isort==5.13.2; extra == 'formatting'
Provides-Extra: linting
Requires-Dist: pylint==3.3.1; extra == 'linting'
Provides-Extra: packaging
Requires-Dist: build==1.2.2.post1; extra == 'packaging'
Requires-Dist: twine==5.1.1; extra == 'packaging'
Provides-Extra: spell-check
Requires-Dist: codespell==2.3.0; extra == 'spell-check'
Provides-Extra: tests
Requires-Dist: pytest==8.3.3; extra == 'tests'
Provides-Extra: type-check
Requires-Dist: mypy==1.13.0; extra == 'type-check'
Description-Content-Type: text/markdown

<img src="https://raw.githubusercontent.com/Hochfrequenz/ahlbatross/main/ahlbatross.png" alt="ahlbatross.png">

# AHlBatross

[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg?labelColor=30363D&color=fccccc)](LICENSE)
![Python Versions (officially) supported](https://img.shields.io/pypi/pyversions/ahlbatross.svg)
![Pypi status badge](https://img.shields.io/pypi/v/ahlbatross)
![Unittests status badge](https://github.com/Hochfrequenz/ahlbatross/workflows/Unittests/badge.svg)
![Coverage status badge](https://github.com/Hochfrequenz/ahlbatross/workflows/Coverage/badge.svg)
![Pylint status badge](https://github.com/Hochfrequenz/ahlbatross/workflows/Linting/badge.svg)
![Formatting status badge](https://github.com/Hochfrequenz/ahlbatross/workflows/Formatting/badge.svg)

Tool for **automatic AHB comparison** of consecutive `Formatversionen` provided by 
[machine-readable-anwendungshandbücher](https://github.com/Hochfrequenz/machine-readable_anwendungshandbuecher/).<br>
Highlighted changes between `PruefIDs` of various `Nachrichtenformate` are stored in the `.xlsx` files located inside 
the `./data/output/` [directory](https://github.com/Hochfrequenz/ahlbatross/tree/main/data/output).

<img width="75%" src="https://raw.githubusercontent.com/Hochfrequenz/ahlbatross/main/output.png" alt="output.png">

## Installation
Install it from [PyPI](https://pypi.org/project/ahlbatross/):

```shell
pip install ahlbatross
```

## Development Setup

To set up the python development environment, install the required dependencies via

```shell
$ tox -e dev
```

For local testing and code quality maintenance, run 

```shell
tox
```

Check out our [Python Template Repository](https://github.com/Hochfrequenz/python_template_repository#how-to-use-this-repository-on-your-machine) 
for detailed descriptions and step-by-step instructions.

### Release Workflow / CD
To publish a new version of this library on PyPI [create a new release](https://github.com/Hochfrequenz/ahlbatross/releases/new).
Use semantic versioning with leading `v`, e.g. `v1.2.3` and please include at least the autogenerated release notes.

## Contribute

Feel free to contribute to this project by opening a pull request against the main branch.
