semvec/pypi-packages huggingface dataset:
swh.graph.libs 11.0.0
Rust libraries for the Software Heritage graph service (Luigi tasks)
Requires Python: >=3.9

Software Heritage - libraries for the graph service
===================================================

Rust libraries and utilities built around `swh-graph <https://docs.softwareheritage.org/devel/swh-graph/>`_.

* `swh-graph-stdlib <https://docs.rs/swh-graph-stdlib/>`_: algorithms to
  mine information from, and run common algorithms on, swh-graph
* `swh_graph_topology <https://docs.rs/swh_graph_topology>`_: currently
  just an implementation of reading nodes in (precomputed) topological order
fastapi-vue 1.1.1
Serves Vue assets on a FastAPI app. Use fastapi-vue-setup tool to add Vue build to your package.
Requires Python: >=3.11

# fastapi-vue

Runtime helpers for FastAPI + Vite/Vue projects.

## Overview

This package provides:

- `fastapi_vue.Frontend`: serves built SPA assets (with SPA support, caching, and optional zstd)
- `fastapi_vue.server.run`: a small Uvicorn runner with convenient `listen` endpoint parsing

## Quickstart

Serve built frontend assets from `frontend-build/`:

```python
from pathlib import Path
from contextlib import asynccontextmanager
from fastapi import FastAPI
from fastapi_vue import Frontend

frontend = Frontend(Path(__file__).with_name("frontend-build"), spa=True)

@asynccontextmanager
async def lifespan(app: FastAPI):
    await frontend.load()
    yield

app = FastAPI(lifespan=lifespan)

# Add API routes here...

# Final catch-all route for frontend files (keep at end of file)
frontend.route(app, "/")
```

## Frontend

`Frontend` serves a directory with:

- RAM caching, with zstd compression when smaller than original
- Browser caching: ETag + Last-Modified, Immutable assets
- Favicon mapping (serve PNG or other images there instead)
- SPA routing (serve browsers index.html at all paths not otherwise handled)

Dev-mode behavior with `FastAPI(debug=True)`: requests error HTTP 409 with a message telling you to use the Vite dev server instead. Avoids accidentally using outdated `frontend-build` during development.

- `directory`: Path on local filesystem
- `index`: Index file name (default: `index.html`)
- `spa`: Serve index at any path (default: `False`)
- `catch_all`: Register a single catch-all handler instead of a route to each file; default for SPA
- `cached`: Path prefixes treated as immutable (default: `/assets/`)
- `favicon`: Optional path or glob (e.g. `/assets/logo*.png`)
- `zstdlevel`: Compression level (default: 18)

ℹ️ Even when your page has a meta tag giving favicon location, browsers still try loading `/favicon.ico` whenever looking at something else. We find it more convenient to simply serve the image where the browser expects it, with correct MIME type. This also allows having a default favicon for your application that can be easily overriden at the reverse proxy (Caddy, Nginx) to serve the company branding if needed in deployment.

## Server runner

When you need more flexibility than `fastapi` CLI can provide (e.g. CLI arguments to your own program), you may use this convenience to run FastAPI app with Uvicorn startup on given `listen` endpoints. Runs in the same process if possible but delegates to `uvicorn.run()` for auto-reloads and multiple workers. This would typically be called from your CLI main, which can set its own env variables to pass information to the FastAPI instances that run (Python imports only work in same-process mode).

```python
from fastapi_vue import server

server.run("my_app.app:app", listen=["localhost:8000"])
```

- As a deployment option, environment `FORWARDED_ALLOW_IPS` controls `X-Forwarded` trusted IPs (default: `127.0.0.1,::1`).
dyslexai-taxonomy 0.1.0
Shared taxonomy definitions for computer vision inspection domains
Requires Python: >=3.10
Keywords: building-codes, computer-vision, detection, inspection, taxonomy

# dyslexai-taxonomy

Shared taxonomy definitions for computer vision inspection domains.

## Overview

This package provides standardized category definitions, compliance rules, and calibration data for computer vision models targeting inspection domains. Both data generation tools (kubric-stair) and runtime inference applications (spatial-vision-app) import from this shared taxonomy.

## Installation

```bash
pip install dyslexai-taxonomy
```

For development:

```bash
pip install -e ".[dev]"
```

## Usage

```python
from dyslexai_taxonomy import get_domain, list_domains

# List available domains
domains = list_domains()
# ['spatial_vision']

# Get a specific domain
domain = get_domain("spatial_vision")

# Access categories
coarse = domain.get_coarse_categories()
fine = domain.get_fine_categories()

# Get compliance rules for a category
rules = domain.get_compliance_rules("outlet")
```

### Direct imports

```python
from dyslexai_taxonomy.domains.spatial_vision import (
    COARSE_CATEGORIES,
    FINE_CATEGORIES,
    get_coarse_for_fine,
    get_compliance_rules,
    CALIBRATION_ANCHORS,
)

# Get parent category for a fine category
coarse = get_coarse_for_fine("gfci")  # Returns "outlet"

# Get standard dimensions for calibration
outlet_dims = CALIBRATION_ANCHORS["outlet"]
```

## Architecture

```
dyslexai-taxonomy (standalone)
       ↑                    ↑
       │                    │
kubric-stair          spatial-vision-app
(data generation)     (runtime inference)
```

Both projects import from dyslexai-taxonomy independently. Neither depends on the other.

## Domains

### spatial_vision

Home inspection and code compliance domain.

**Coarse Categories (15-18):**
- Wall components: outlet, switch, vent, panel, thermostat, junction_box
- Openings: door, window, cabinet_door
- Vertical transport: stair, ramp
- HVAC equipment: furnace, water_heater, ac_unit
- Safety: smoke_detector, co_detector
- Background: wall_surface, floor_surface

**Fine Categories (150+):**
Each coarse category expands to multiple fine subcategories. For example:
- outlet → duplex, gfci, usb, 240v, outdoor...
- stair → straight, l_shaped, spiral, exterior...

**Compliance Rules:**
- NEC (National Electrical Code)
- IRC (International Residential Code)
- ADA (Americans with Disabilities Act)
- NFPA (Fire safety)

## License

Apache-2.0
convert-poetry2uv 0.3.12
Poetry to uv tool. To migrate from a poetry managed repo to uv.
Requires Python: >=3.10

# convert-poetry2uv

The convert_poetry2uv.py script is meant to easily convert the pyproject.toml to be consumed by `uv` instead of `poetry`.

> Poetry v2 came out after this tool. The tool has been modified to work with poetry v2 format as well. Please create an issue/PR if you find any issues.

It has a dry-run flag, to have a temporary file to validate the output. When not running the dry-run the original file is saved with a .org extension.

    uv run convert_poetry2uv.py <path to file> [-n]

You may need to make some manual changes.
The layout might not be exactly to your liking. I would recommend using [Even better toml](https://marketplace.visualstudio.com/items?itemName=tamasfe.even-better-toml) in VSCode. Just open the newly generated toml file and save. It will format the file according to the toml specification.

## Caveats
* If you were using the poetry build-system, it is removed in the generated pyproject.toml.
* if you had optional dev groups, the dev group libraries will be used, the optional flag is removed

# Using as a tool
The script can be run as a tool using [`uvx`](https://docs.astral.sh/uv/guides/tools/)

    uvx convert-poetry2uv --help

## uv instructions
Once the pyproject.toml is converted, you can use `uv` to manage your project. To start fresh, the .venv directory is removed followed by the creation and sync of the .venv directory.

    rm -rf .venv
    uv venv   # or 'uv venv -p 3.12' to specify a python version
    uv sync

With this you are good to go and are able to validate the migration was a success.

## Pypi
The script is also available on pypi as [convert-poetry2uv](https://pypi.org/project/convert-poetry2uv/)

    pip install convert-poetry2uv

# Contribute
Though I've tried to make it as complete as possible, it is not guaranteed to work for all cases. Feel free to contribute to the code or create an issue with the toml file that is not converted correctly.

## Versions/Releases

The version is automatically updated with `python-semantic-release`. Take note of the `pyproject.toml` to see which keywords can be added to the commit message to ensure the correct version is released. The release is created when merged to main.

## Trusted Publisher

> Note to self: When a new github workflow is required, don't forget to add the new workflow to the trusted publisher list.

# Links
* [Writing pyproject.toml](https://packaging.python.org/en/latest/guides/writing-pyproject-toml/)
* [uv pyproject.toml](https://docs.astral.sh/uv/concepts/projects/layout/)
* [Poetry pyproject.toml](https://python-poetry.org/docs/pyproject/)
* [Real python blog: Python and toml](https://realpython.com/python-toml/#write-toml-documents-with-tomli_w)
* [tomlkit docs](https://tomlkit.readthedocs.io/en/latest/quickstart/#)
* [Taskfile installation](https://taskfile.dev/installation/)
* [uv installation](https://docs.astral.sh/uv/getting-started/installation/)