An open API service indexing awesome lists of open source software.

https://github.com/espenalbert/py-libs

Various python packages I want to share
https://github.com/espenalbert/py-libs

json pants-plugins pantsbuild pydantic python yaml

Last synced: 2 months ago
JSON representation

Various python packages I want to share

Awesome Lists containing this project

README

        












Coverage


Code style: black


License

pre-commit

# py-libs (drastic changes coming for v1.0.0)

- An experiment for sharing python packages
- ~~[compose_chart_export](./compose_chart_export/readme.md)~~
- `pip install compose-chart-export`
- ~~[docker_compose_parser](./docker_compose_parser/readme.md)~~
- `pip install docker-compose-parser`
- [model_lib-pydantic base models with convenient dump methods](./model-lib/readme.md)
- `pip install model-lib`
- [zero_lib-handy standalone scripts without 3rdparty dependencies](./zero-3rdparty/readme.md)
- `pip install zero-3rdparty`

## Hierarchy

```mermaid
flowchart TD
model_lib --> zero_3rdparty
compose_chart_export --> model_lib
docker_compose_parser --> model_lib
compose_chart_export --> docker_compose_parser
pants_py_deploy --> compose_chart_export
pants_py_deploy --> docker_compose_parser

click zero_3rdparty href "/py-libs/zero-3rdparty" "zero_3rdparty docs"
click model_lib href "/py-libs/model-lib" "model_lib docs"
click docker_compose_parser href "/py-libs/docker_compose_parser" "docker_compose_parser docs"
click compose_chart_export href "/py-libs/compose_chart_export" "compose_chart_export docs"
click pants_py_deploy href "/py-libs/_pants/pants_py_deploy" "pants_py_deploy docs"
```

- (Click) on a library to see the documentation
- The higher up in the hierarchy the more dependencies needs to be installed
- e.g., `zero_3rdparty` has no dependencies and `pants_py_deploy` depends on all the others

## Local Installation

- [Install `just`](https://just.systems/man/en/introduction.html)
- [Install `uv`](https://docs.astral.sh/uv/getting-started/installation/)

```sh
pre-commit install --hook-type pre-push
uv sync
code .
```

## Release process
1. Do changes on your branch
2. Bump the versions you want to deploy
```sh
just pkg-version z beta # alpha/patch,etc.
just pkg-version m beta
```
3. Merge and wait for release to complete