semvec/pypi-packages huggingface dataset:
redis-unique-queue 0.0.5
A module that combines the use of redis in-built data types to build a unique queue for processing and expiry.
Requires Python: >=3.8

# redis-unique-queue

A module that combines the use of redis in-built data types to build a unique queue for processing and expiry.

# Usage

Items are put on the queue with an optional key. A duplicate key cannot be added until either:

- the previous key that was added has been fully processed.
- expiry_in_seconds have passed.

The unique queue creates 3 datastructures to ensure the keys are unique. To ensure the keys don't linger after usage, all commands reset the ttl on the datastructures.
Examples

```python

    import time

    import redis

    import redis_unique_queue

    expiry_in_seconds = 1
    conn = redis.Redis()
    uqueue = redis_unique_queue.Queue(redis_conn=conn, expiry_in_seconds=expiry_in_seconds)
    uqueue.put(100)
    print("Expected size 1:", uqueue.qsize())

    uqueue.put(100)  # not added again
    print("Expected size 1:", uqueue.qsize())

    uqueue.put(200)  # not added again
    print("Expected size 2:", uqueue.qsize())

    print("Expected item 100:", uqueue.get()) # get an item


    time.sleep(expiry_in_seconds) # go past expiry seconds to test

    # item 100 has expired

    print("Items that expired:", uqueue.clear_expired())  # [100] -> a list of items that expires

    print("Expected size 1:", uqueue.qsize())

    print("Expected item 200:", uqueue.get()) # we have finished handling 200


    uqueue.task_done(200)
    print("Expected size 0:", uqueue.qsize())

    print("Expected item None:", uqueue.get())
```
repo2llm 1.1.1
A tool to easily share repository contents with LLMs through the clipboard.
Requires Python: <4.0,>=3.11

# repo2llm

A simple tool to copy repository contents to your clipboard, useful for pasting into an LLM like Claude or ChatGPT.

## Installation

```bash
pip install repo2llm
```

## Usage

### Basic Usage
```bash
# Process current directory
repo2llm .

# Process specific directory
repo2llm /path/to/your/repo
```

### Advanced Options
```bash
# Add custom ignore patterns (supports wildcards)
repo2llm . --ignore "*.log"              # Ignore all .log files
repo2llm . --ignore "src/*.py"           # Ignore Python files in src directory
repo2llm . --ignore "**/test/**"         # Ignore anything in test directories
repo2llm . --ignore "build/**/*"         # Ignore all contents in build directory
repo2llm . --ignore "temp/"              # Ignore temp directory

# Multiple ignore patterns
repo2llm . --ignore "*.log" --ignore "temp/*" --ignore "**/test/*.py"

# Enable preview
repo2llm . --preview

# Customize preview length
repo2llm . --preview --preview-length 300

# Use custom config file
repo2llm . --config my-config.txt
```

The `--ignore` option supports glob-style patterns:
- `*` matches any characters except path separators
- `**` matches any characters including path separators (recursive)
- Patterns ending with `/` match directories
- Multiple patterns can be specified with multiple `--ignore` flags

## Configuration

### Default Ignore Patterns
The tool automatically ignores common development files and directories. See `repo2llm/constants.py` for the default list.

### Config File
You can create a `.repo2llm` file in your repository root to specify custom ignore patterns:

```text
# Development directories
.github/
.vscode/
node_modules/

# Build artifacts
dist/
build/
*.pyc

# Custom patterns
temp/
*.bak
```

The config file supports:
- One pattern per line
- Comments (lines starting with #)

## Development

### Tests

To run the test suite, run `poetry run pytest`

### Release

To release a new version, run the `scripts/version.py` script:

```bash
# For a patch update (0.1.0 -> 0.1.1)
poetry run python scripts/version.py patch --tag

# For a minor update (0.1.1 -> 0.2.0)
poetry run python scripts/version.py minor --tag

# For a major update (0.2.0 -> 1.0.0)
poetry run python scripts/version.py major --tag
```

### Contributing

Contributions are welcome, feel free to submit a PR.
memos-mcp-server 0.1.0
A MCP server for the Memos API
Requires Python: >=3.13

# memos-mcp-server

A [MCP(Model Context Protocol)](https://modelcontextprotocol.io) server for [Memos](https://github.com/usememos/memos).

## Tools

- `search_memos`: Search memos with keyword.
- `create_memo`: Create a new memo.

## Usage

```
{
    "mcpServers": [
        "memos": {
            "command": "uvx",
            "args": [
                "memos-mcp-server"
            ],
            "env": {
                "MEMOS_URL": "https://memos.example.com",
                "MEMOS_API_KEY": "your_api_key",
                "DEFAULT_TAG": "#mcp"
            }
        }
    ]
}
```
nobe-literate 0.1.4
A literate programming tool for publishing html documents as a library
Requires Python: >=3.9

# nobe

Nobe (short for [nota bene](https://en.wikipedia.org/wiki/Nota_bene))
is a literate programming tool to publish html documents from python code.

Install it (`pip install` or `uv add`) as [nobe-literate](https://pypi.org/project/nobe-literate/), import it as `nobe`.

You put your code in a file like [docs/example.py](docs/example.py),
you run it like a normal python script (e.g. `uv run python example.py`)
and you get out [example.html](https://pietroppeter.github.io/nobe/example.html).

One way to try this out is:

```
curl -O https://raw.githubusercontent.com/pietroppeter/nobe/refs/heads/main/docs/example.py
uv run --with nobe-literate example.py
open example.html
```

It starts as [nimib.py] without [nim] but the goal is to experiment freely with a [nimib]-like python api.

[nimib]: https://github.com/pietroppeter/nimib
[nimib.py]: https://github.com/nimib-land/nimib.py
[nim]: https://nim-lang.org/