semvec/pypi-packages huggingface dataset:
py-minisign 0.13.0
Python minisign library
Requires Python: >=3.9

py-minisign
===========

Missing python `minisign <https://github.com/jedisct1/minisign>`_ library.

Install
-------

.. code:: shell

    pip install py-minisign

Library
-------

.. code:: python

    import os
    import minisign

    # verify

    pk = minisign.PublicKey.from_base64(
        'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3')
    sig = minisign.Signature.from_bytes(
        b'untrusted comment: signature from minisign secret key\n'
        b'RWQf6LRCGA9i59SLOFxz6NxvASXDJeRtuZykwQepbDEGt87ig1BNpWaVWuNrm73YiIiJbq71Wi+dP9eKL8OC351vwIasSSbXxwA=\n'
        b'trusted comment: timestamp:1555779966\tfile:test\n'
        b'QtKMXWyYcwdpZAlPF7tE2ENJkRd1ujvKjlj1m9RtHTBnZPa5WKU5uWRs5GoP5M/VqE81QFuMKI5k/SfNQUaOAA=='
    )
    pk.verify(b'test', sig)

    # sign

    sk = minisign.SecretKey.from_file('/path/to/secret.key')
    sk.decrypt('strong_password')
    sig = sk.sign(b'very important data')

    # generate key pair

    key_pair = minisign.KeyPair.generate()
    sk = key_pair.secret_key
    pk = key_pair.public_key

    # save key

    sk.encrypt('strong_password')
    with open(os.open('/path/to/secret.key', os.O_CREAT | os.O_WRONLY, 0o600), 'wb') as f:
        f.write(bytes(sk))
pyulysses 0.10.0
Library to manage connection to Dremio via Apache Arrow Flight
Requires Python: <4.0,>=3.11

# PyUlysses

**PyUlysses** is a Python library for seamless connectivity to Dremio DataHub using Apache Arrow Flight. It provides an intuitive interface for executing SQL queries and managing data operations with built-in support for DuckDB integration.

[![Python Version](https://img.shields.io/badge/python-3.11%2B-blue.svg)](https://www.python.org/downloads/)
[![License](https://img.shields.io/badge/license-Apache%202.0-green.svg)](LICENSE)

## Architecture
```
┌─────────────────┐
│  Your Python    │
│  Application    │
└────────┬────────┘
         │
         │ PyUlysses
         ▼
┌─────────────────┐      Arrow Flight      ┌─────────────────┐
│   PyArrow       │◄────────────────────────►│  Dremio Server  │
│   Client        │                          │   (DataHub)     │
└────────┬────────┘                          └─────────────────┘
         │
         │ Zero-copy transfer
         ▼
┌─────────────────┐
│    DuckDB       │
│   Analytics     │
└─────────────────┘
```

## Features

✨ **Key Features:**
- High-performance Arrow Flight connectivity to Dremio
- Native DuckDB integration for query results
- Automatic retry logic with configurable timeouts
- Robust error handling and logging
- Secure authentication via PAT tokens
- Zero-copy data transfer with Apache Arrow
- Direct integration with analytical workflows

## Installation

### Virtual Environment (Recommended)

While optional, we **strongly recommend** using a virtual environment to isolate PyUlysses dependencies from your system Python installation.

#### Linux/macOS (Cortex)

```bash
# Create virtual environment
python3 -m venv venv

# Activate virtual environment
source venv/bin/activate

# Install lib
pip install pyulysses
```

#### Windows

```bash
# Create virtual environment
python -m venv venv

# Activate virtual environment (Command Prompt)
venv\Scripts\activate.bat

# Or PowerShell
venv\Scripts\Activate.ps1

# Install lib
pip install pyulysses
```

### Install dependencies

#### Using Pip
```bash
pip install -r requirements.txt
```

#### Using Poetry

```bash
poetry install --all-extras
```

## Quick Start

### 1. Configure Environment Variables

Create a `.env` file in your project root:

```bash
DREMIO_USERNAME=your_username
DREMIO_ACCESS_TOKEN=your_personal_access_token
DREMIO_HOST=dremio.example.com
DREMIO_PORT=9047
```

### 2. Basic Usage

```python
from pyulysses.connector.datahub_connector import Client

# Initialize client
client = Client()

# Execute query
result = client.query(""" SELECT * FROM your_table """)

# Display results
print(result)
```

## Documentation

Full documentation is available at `docs/` directory. To build and serve locally:

```bash
mkdocs serve
```

Then visit `http://localhost:8000`


## License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

## Authors

- Wallace Camargo - *Initial work*

## Support

For issues, questions, or contributions, please open an issue on GitLab.