semvec/pypi-packages huggingface dataset:
umbral-pre 0.11.0
Implementation of Umbral proxy reencryption algorithm

# Python bindings for `umbral-pre`

[![pypi package][pypi-image]][pypi-link] [![Docs][rtd-image]][rtd-link] ![License][pypi-license-image]

This repo contains the Python bindings for the [main Rust project][umbral-pre].


## Build

You will need to have `setuptools-rust` installed. Then, for development you can just do `pip install -e .` as usual.

Building Linux wheels must be done via Docker (makefile under construction).
```bash
docker pull quay.io/pypa/manylinux2014_x86_64
docker run --rm -v `pwd`/..:/io quay.io/pypa/manylinux2014_x86_64 /io/umbral-pre-python/build-wheels.sh
```

## Development

Update `umbral-pre-python/stubtest-allowlist.txt` with:
```bash
cd umbral-pre-python
python -m mypy.stubtest umbral_pre --generate-allowlist > stubtest-allowlist.txt

```

[pypi-image]: https://img.shields.io/pypi/v/umbral-pre
[pypi-link]: https://pypi.org/project/umbral-pre/
[pypi-license-image]: https://img.shields.io/pypi/l/umbral-pre
[rtd-image]: https://readthedocs.org/projects/rust-umbral/badge/?version=latest
[rtd-link]: https://rust-umbral.readthedocs.io/en/latest/
[umbral-pre]: https://github.com/nucypher/rust-umbral/tree/master/umbral-pre
human-readable-time 0.1.4
A utility package for human-readable time conversion.


                    # زمان خوانا

                    این یک تابع پایتون است که عددی غیر منفی (ثانیه) را به عنوان ورودی می‌گیرد و زمان را با 
                    فرمت خوانا (ساعت:دقیقه:ثانیه) برمی‌گرداند.

                    ## چگونه استفاده کنیم

                    1. مخزن را در دستگاه محلی خود کلون کنید.
                    2. تابع `make_readable1` یا`make_readable2` را از ماژول `human_readable_time` وارد کنید.
                    3. تابع `make_readable1` یا`make_readable2` را فراخوانی کنید و تعداد ثانیه‌ها را به عنوان آرگومان ارسال کنید.

                    مثال:

                    ```python
                    from human_readable_time import make_readable1 #OR make_readable2

                    seconds = 3661
                    result = make_readable1(seconds)
                    print(result)  # خروجی: 01:01:01
                    ```

                    ## جزئیات تابع

                    تابع `make_readable1` یا `make_readable2` ساعت، دقیقه و ثانیه را از تعداد داده شده ثانیه‌ها محاسبه کرده
                    و آن‌ها را با رشته‌ی خوانا فرمت می‌کند. این تابع از تابع `divmod()` برای محاسبه کارآمد و f-string برای
                    فرمت‌بندی خروجی با صفر اولیه استفاده می‌کند.

                    # Human Readable Time

                    This is a Python function that takes a non-negative integer representing the number of seconds and
                    returns the time in a human-readable format (HH:MM:SS).

                    ## How to Use

                    1. Clone the repository to your local machine.
                    2. Import the `make_readable1` OR `make_readable2` function from the `human_readable_time` module.
                    3. Call the `make_readable1` OR `make_readable2` function and pass the number of seconds as an argument.

                    Example:

                    ```python
                    from human_readable_time import make_readable1 #OR make_readable2

                    seconds = 3661
                    result = make_readable1(seconds)
                    print(result)  # Output: 01:01:01
                    ```

                    ## Function Details

                    The `make_readable1` OR `make_readable2` functions calculates the hours, minutes, and seconds from 
                    the given number of seconds and formats them in a human-readable string. It uses the `divmod()` 
                    function for efficient calculation and f-string for formatting the output with leading zeros.
circleml 0.0.1
A machine learning library for Python.
Requires Python: >=3.7

<center>

![CircleAI Logo](assets/logo.svg)

# CircleAI

![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/tetrahedronai/circle/tests.yml?style=for-the-badge)
![GitHub pull requests](https://img.shields.io/github/issues-pr/tetrahedronai/circle?style=for-the-badge)
![Codacy grade](https://img.shields.io/codacy/grade/81d90174a73440b2910a64b2b4794535?style=for-the-badge)
![Codacy coverage](https://img.shields.io/codacy/coverage/81d90174a73440b2910a64b2b4794535?style=for-the-badge)
![GitHub](https://img.shields.io/github/license/tetrahedronai/circle?style=for-the-badge)
![GitLab stars](https://img.shields.io/github/stars/tetrahedronai/circle?style=for-the-badge)

</center>

CircleAI is a Python framework designed to speed up your machine learning workflows. It's **PyPy compatible**, for JIT-compilation-accelerated performance.

## Contents
- [CircleAI](#circleai)
  - [Contents](#contents)
- [Installation](#installation)

# Installation

Run one of the following commands in your terminal.

```shell
pip install circleai
py -m pip install circleai # windows
python3 -m pip install circleai # if the above don't work
```
sanicargs 3.0.1
Parses query args or body parameters in sanic using type annotations
Requires Python: >=3.8,<4.0
Keywords: sanicargs,sanic,query,args,type annotations

[![Build Status](https://github.com/trustpilot/python-sanicargs/actions/workflows/tox.yaml/badge.svg)](https://github.com/trustpilot/python-sanicargs/actions/workflows/tox.yaml) [![Latest Version](https://img.shields.io/pypi/v/sanicargs.svg)](https://pypi.python.org/pypi/sanicargs) [![Python Support](https://img.shields.io/pypi/pyversions/sanicargs.svg)](https://pypi.python.org/pypi/sanicargs)

# Sanicargs
Parses query parameters and json body parameters for [Sanic](https://github.com/channelcat/sanic) using type annotations.

## Survey
Please fill out [this survey](https://docs.google.com/forms/d/e/1FAIpQLSdNLvB7NEJQhUyVdaZpBAgS0f1k9OywZp8xDqhaNY0rl-unZA/viewform?usp=sf_link) if you are using Sanicargs, we are gathering feedback :-)

## Install
Install with pip
```
$ pip install sanicargs
```

## Usage

Use the `parse_parameters` decorator to parse query parameters (GET) or body parameters (POST) and type cast them together with path params in [Sanic](https://github.com/channelcat/sanic)'s routes or blueprints like in this [example](https://github.com/trustpilot/python-sanicargs/tree/master/examples/simple.py) below:

```python
import datetime
from sanic import Sanic, response
from sanicargs import parse_parameters

app = Sanic("test_sanic_app")

@app.route("/me/<id>/birthdate", methods=['GET'])
@parse_parameters
async def test_datetime(req, id: str, birthdate: datetime.datetime):
    return response.json({
        'id': id, 
        'birthdate': birthdate.isoformat()
    })

if __name__ == "__main__":
  app.run(host="0.0.0.0", port=8080, access_log=False, debug=False)
```

Test it running with 
```bash
$ curl 'http://0.0.0.0:8080/me/123/birthdate?birthdate=2017-10-30'
```

### Query parameters

* **str** : `ex: ?message=hello world`
* **int** : `ex: ?age=100`
* **bool** : `ex: ?missing=false`
* **datetime.datetime** : `ex: ?currentdate=2017-10-30T10:10:30 or 2017-10-30`
* **datetime.date** : `ex: ?birthdate=2017-10-30`
* **List[str]** : `ex: ?words=you,me,them,we`

### JSON body parameters

{
  "message": "hello word",
  "age": 100,
  "missing": false,
  "currentDate": "2017-10-30",
  "currentDateTime": "2017-10-30T10:10:30",
  "words": ["you", "me", "them", "we"]
}

### Note about datetimes

Dates and datetimes are parsed without timezone information giving you a "naive datetime" object. See the note on [datetime.timestamp()](https://docs.python.org/3/library/datetime.html#datetime.datetime.timestamp) about handling timezones if you require epoch format timestamps.

### Important notice about decorators

The sequence of decorators is, as usual, important in Python.

You need to apply the `parse_parameters` decorator as the first one executed which means closest to the `def`.

### `request` is mandatory!

You should always have request as the first argument in your function in order to use `parse_parameters`.

**Note** that `request` arg can be renamed and even type-annotated as long as it is the first arg.