Metadata-Version: 2.5
Name: borco-core
Version: 0.2.0
Summary: Generic reusable Python library (no GUI dependencies)
Project-URL: Homepage, https://borco.github.io/rehuco/
Project-URL: Repository, https://github.com/borco/rehuco/tree/master/packages/borco-core
Project-URL: Issues, https://github.com/borco/rehuco/issues
Author-email: Ioan Calin <iborco@gmail.com>
License-Expression: MIT
License-File: LICENSE
Keywords: borco,core,library,utilities
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.14
Description-Content-Type: text/markdown

# borco-core

[![PyPI](https://img.shields.io/pypi/v/borco-core)](https://pypi.org/project/borco-core/)
[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://github.com/borco/rehuco/blob/master/LICENSE)
[![Python versions](https://img.shields.io/pypi/pyversions/borco-core)](https://pypi.org/project/borco-core/)

*Generic, reusable Python classes with no GUI dependencies.*

[View on PyPI](https://pypi.org/project/borco-core/) · [View on GitHub](https://github.com/borco/rehuco)

## Status

**Pre-alpha.** This package is **not rehuco-specific** — it is a home for generic, reusable code. It is currently
developed inside the [rehuco](https://borco.github.io/rehuco/) monorepo and will later move to its own repository.
If you use `borco-core` from PyPI, this move will be handled automatically.

## What it is

`borco-core` holds small, general-purpose building blocks that carry **no GUI (PySide/Qt) dependency**, so they
are usable on headless servers and low-spec hardware. Qt-dependent counterparts live in `borco-pyside`.

Currently provides:

- **`borco_core.atomic_write`** — crash-safe file writes: a temporary sibling, flushed and `fsync`ed, then
  replaced atomically.
- **`borco_core.logging`** — `LogScope`, nested scopes carried on log records, and
  `SharedRotatingFileHandler`, a rotating log file several processes can append to.
- **`borco_core.shared_read`** — `shared_read_open`, reading a file without blocking its rename on Windows.
- **`borco_core.file_holders`** — which processes hold a file open (Windows Restart Manager).
- **`borco_core.platforms`** — Windows registry, file association and shell context menus; Linux XDG
  desktop entries, MIME packages and icon-theme installation.

## Installation

```bash
pip install borco-core
```
