Metadata-Version: 2.1
Name: neos_common
Version: 0.14.3
Summary: Neos Common Code
Home-page: https://github.com/NEOS-Critical/neos-platform-common
License: closed
Requires-Python: >=3.10,<4.0
Classifier: License :: Other/Proprietary License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Provides-Extra: auth
Provides-Extra: config
Provides-Extra: kafka
Requires-Dist: auth-aws4 (>=0.1.1,<0.2.0)
Requires-Dist: confluent-kafka (==2.0.2) ; extra == "kafka"
Requires-Dist: fastapi (>=0,<1) ; extra == "auth"
Requires-Dist: httpx (>=0,<1)
Requires-Dist: multidict (>=6,<7)
Requires-Dist: pydantic (>=2,<3)
Requires-Dist: pydantic-settings (>=2.0.0,<3.0.0) ; extra == "config"
Requires-Dist: python-keycloak (>=3.9,<4.0) ; extra == "auth"
Project-URL: Repository, https://github.com/NEOS-Critical/neos-platform-common
Description-Content-Type: text/markdown

# NEOS Platform Common Code v0.14.3

## Prerequisites

The following packages are used across python repositories. A global install of them all is *highly* recommended.

* [Poetry](https://python-poetry.org/docs/#installation)
* [Invoke](https://www.pyinvoke.org/installing.html)

### WSL

If running on Windows, you may need to install `distutils` to install the service.

```bash
$ sudo apt-get install python3.8-distutils
```

## Initial setup

```bash
$ invoke install-dev
```

## Code Quality

### Tests

```bash
invoke tests
invoke tests-coverage
```

## Linting

```bash
invoke check-style
invoke isort
```

## Releases

Release management is handled using `changelog-gen`. The below commands will
tag a new release, and generate the matching changelog entries. Jenkins will
then publish the release to the artifact repository.

```bash
$ invoke release
$ invoke bump-patch
$ invoke bump-minor
$ invoke bump-major
> vX.Y.Z
```

