semvec/pypi-packages huggingface dataset:
puzzlepiece 1.0.1
A GUI-forward Python framework for automating experimental setups.
Requires Python: >=3.7

![Puzzlepiece](https://raw.githubusercontent.com/jdranczewski/puzzlepiece/refs/heads/main/docs/source/puzzlepiece.svg)

**Puzzlepiece is a GUI-forward Python framework for automating experimental setups.** It focuses on abstracting communication with a piece of hardware into **standard inputs, outputs, and actions**. It then automatically **generates GUI components** for them, minimising the need for boilerplate code. Puzzlepiece allows the user to bring diverse controls into a single, consolidated application, and automate their interaction or experiment using a unified API, either by making custom Pieces, or through a built-in script language,
or with Interactive Python.

See the documentation at https://puzzlepiece.readthedocs.io/ for features and examples of how to get started.

You can install puzzlepiece using pip:
```
pip install puzzlepiece
```

Check out the [`examples`](https://github.com/jdranczewski/puzzlepiece/tree/release/examples) folder for how to make an application (a Puzzle), and [`puzzlepiece/pieces/random_number.py`](https://github.com/jdranczewski/puzzlepiece/blob/release/puzzlepiece/pieces/random_number.py) for a simple example Piece. A Piece is a module that does a particular job (talks to a laser, scans a value, ...), and multiple of these brought together make up a Puzzle.

Created by Jakub Dranczewski as part of PhD work supported by the EU ITN EID project CORAL (GA no. 859841).
monaco-assets 0.5.1
Automatically download Monaco editor assets.
Requires Python: >=3.10
Keywords: monaco, assets

# Monaco Editor Assets

A Python package that provides easy access to Monaco Editor assets. Assets are
automatically downloaded on first use, eliminating the need to bundle large
files with the package. The assets can be served by a webserver on a custom port.

## Installation

```bash
python3 -m pip install monaco-assets
# or
uv pip install monaco-assets
```

## Quick Start

```python
import monaco_assets
server = monaco_assets.MonacoServer(port=8000)
```

Now, you can use `http://localhost:8000/min/vs/loader.js` in a webbrowser to see, e.g., loader.js.
Please note that there are no directory listings, one has to directly address the file(s).

## Cache Management

```python
import monaco_assets

# Clear cache to free space before uninstalling the package
monaco_assets.clear_cache()
```

## Cache Locations

Assets are cached in platform-appropriate directories using the `platformdirs` library

## How It Works

1. **First Use**: When `get_path()` is called for the first time, the package:
   - Downloads Monaco Editor from npmjs.org
   - Verifies the download integrity with SHA1 hash
   - Extracts assets to the user cache directory
   - Returns the path to the assets

2. **Subsequent Uses**: The package checks the cache and returns the existing assets path
   immediately.

## Download Issues

If asset download fails:

1. Check internet connectivity
2. Verify firewall settings allow access to registry.npmjs.org
3. Check disk space in cache directory

## Cache Issues

Clear and re-download if corrupted.

```python
monaco_assets.clear_cache()
assets_path = monaco_assets.get_path()
```

## Version Correspondence

Version correspondence will be ensured after initial bugfixes.

| Package Version | Monaco Editor Version |
| --------------- | --------------------- |
| 0.5.1           | 0.54.0                |

## Requirements

- Python 3.10+
- Internet connection (only for initial asset download)
- ~100MB disk space for Monaco Editor assets

## License

MIT License - see [LICENSE](license.txt) file for details.

Monaco Editor is licensed under the MIT License by Microsoft Corporation.
search-index 0.4.2
Search indices backed by Rust
Requires Python: >=3.12
Keywords: utilities, index, prefix, similarity, search

# Python package implementing search indices backed by Rust

## Installation

Make sure you have
[Faiss](https://github.com/facebookresearch/faiss/blob/main/INSTALL.md)
installed.

Install from PyPI (only built for Python 3.12+ on Linux)

```
pip install search-index
```

## Manual installation

Make sure you have Faiss and Rust installed, then do the following:

```bash
git clone https://github.com/bastiscode/search-index.git
cd search-index
pip install maturin[patchelf]
maturin develop --release
```

## Usage

See `build.py` and `query.py` for examples on how to build and query an index.

## Search indices

Prefix keyword index with one of the following score functions:

- keyword occurrence

Similarity index with one of the following index types:

- flat index (brute-force search)
- inverted index (bucket search)
- inverted index + HNSW

Both search indices also support searching only in a subset of the indexed records.
dramatiq-sqs-test 0.3.0.dev2
An Amazon SQS broker for Dramatiq.
Requires Python: >=3.10
Keywords: dramatiq, sqs

# dramatiq_sqs

A [Dramatiq] broker that can be used with [Amazon SQS].

This backend has a number of limitations compared to the built-in
Redis and RMQ backends:

* the max amount of time messages can be delayed by is 15 minutes,
* messages can be at most 1MiB large and
* messages must be processed within 12 hours of being pulled,
otherwise they will be redelivered.

The backend uses [boto3] under the hood.  For details on how
authorization works, check out its [docs].


## Installation

    pip install dramatiq_sqs


## Usage

``` python
import dramatiq

from dramatiq.middleware import AgeLimit, TimeLimit, Callbacks, Pipelines, Prometheus, Retries
from dramatiq_sqs import SQSBroker

broker = SQSBroker(
    namespace="dramatiq_sqs_tests",
    middleware=[
        Prometheus(),
        AgeLimit(),
        TimeLimit(),
        Callbacks(),
        Pipelines(),
        Retries(min_backoff=1000, max_backoff=900000, max_retries=96),
    ],
)
dramatiq.set_broker(broker)
```


## Usage with [ElasticMQ]

``` python
broker = SQSBroker(
    # ...
    endpoint_url="http://127.0.0.1:9324",
)
```

## Example IAM Policy

Here are the IAM permissions needed by Dramatiq:

``` json
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "sqs:CreateQueue",
                "sqs:ReceiveMessage",
                "sqs:DeleteMessage",
                "sqs:DeleteMessageBatch",
                "sqs:SendMessage",
                "sqs:SendMessageBatch"
            ],
            "Resource": ["*"]
        }
    ]
}
```

## License

dramatiq_sqs is licensed under Apache 2.0.  Please see
[LICENSE] for licensing details.


[Dramatiq]: https://dramatiq.io
[Amazon SQS]: https://aws.amazon.com/sqs/
[boto3]: https://boto3.readthedocs.io/en/latest/
[docs]: https://boto3.readthedocs.io/en/latest/guide/quickstart.html#configuration
[LICENSE]: https://github.com/Bogdanp/dramatiq_sqs/blob/master/LICENSE
[ElasticMQ]: https://github.com/adamw/elasticmq
redis-simple-mq 1.1.0
Simple message queue based on Redis.
Requires Python: >=3.8
Keywords: queue, redis

# redis-simple-mq

A simple message queue for Redis.

[![release](https://img.shields.io/pypi/v/redis-simple-mq?label=release)](https://pypi.org/project/redis-simple-mq/)
[![python](https://img.shields.io/pypi/pyversions/redis-simple-mq)](https://pypi.org/project/redis-simple-mq/)
[![pipeline](https://gitlab.com/ErikKalkoken/redis-simple-mq/badges/master/pipeline.svg)](https://gitlab.com/ErikKalkoken/redis-simple-mq/-/pipelines)
[![codecov](https://codecov.io/gl/ErikKalkoken/redis-simple-mq/branch/master/graph/badge.svg?token=M1IBQV97BE)](https://codecov.io/gl/ErikKalkoken/redis-simple-mq)
[![Documentation Status](https://readthedocs.org/projects/redis-simple-mq/badge/?version=latest)](https://redis-simple-mq.readthedocs.io/en/latest/?badge=latest)
[![license](https://img.shields.io/badge/license-MIT-green)](https://gitlab.com/ErikKalkoken/redis-simple-mq/-/blob/master/LICENSE)
[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/pre-commit/pre-commit)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![chat](https://img.shields.io/discord/790364535294132234)](https://discord.gg/zmh52wnfvM)

## Description

This is a light-weight message queue based on Redis.

Key features:

- Class based API to the queue with all basic queue functions
- Queue is implement as FIFO
- All messages are stored and retrieved as UTF-8 strings
- Bulk methods for enqueue and dequeue
- No limit on the number of parallel queues
- Fully tested

## Basic example

```python
from redis import Redis
from simple_mq import SimpleMQ

conn = Redis()
q = SimpleMQ(conn)
q.enqueue('Hello, World!')
message = q.dequeue()
print(message)
```

See also the examples folder for examples.