Metadata-Version: 2.4
Name: logrunner
Version: 0.0.4
Summary: logrunner.run([cmd]) wraps subprocess.run([cmd]) to allow continuous output as well as capture of stdout
Author-email: kagekirin <kagekirin@gmail.com>
Maintainer-email: kagekirin <kagekirin@gmail.com>
License-Expression: MIT
Project-URL: Homepage, https://github.com/KageKirin/py-logrunner
Project-URL: Documentation, https://github.com/KageKirin/py-logrunner
Project-URL: Repository, https://github.com/KageKirin/py-logrunner.git
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Provides-Extra: dev
Requires-Dist: pytest>=9.0; extra == "dev"
Requires-Dist: ruff; extra == "dev"
Dynamic: license-file

# Logrunner

`logrunner.run([cmd])` wraps `subprocess.run([cmd])` to allow continuous output as well as capture of stdout and stderr.

This function is intended for usage in CI and other process monitoring applications where
the process outputs need to be written for real-time error tracking
and captured for post-processing text analysis.

## ⚡ Usage

```python
import logrunner

(ret, out, err) = logrunner.run(["echo", "hello"])
# returns (0, "hello", "")

(ret, out, err) = logrunner.run(["ls", "/nonexistentpath"])
# return (1, "", "No such file or directory")
```

## 🔧 Building

```shell
uv build
```

## 🤝 Collaborate with My Project

Please refer to the [collaboration guidelines](./COLLABORATION.md) for details.
