semvec/pypi-packages huggingface dataset:
aws-cron-expression-validator 1.1.15
ValidatesAWS EventBridge cron expressions, which are similar to, but not compatible with Unix style cron expressions
Requires Python: >=3.10

![PyPI](https://img.shields.io/pypi/v/aws_cron_expression_validator)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/aws_cron_expression_validator)
![PyPI - Implementation](https://img.shields.io/pypi/implementation/aws_cron_expression_validator)
![PyPI - Wheel](https://img.shields.io/pypi/wheel/aws_cron_expression_validator)
![PyPI - Status](https://img.shields.io/pypi/status/aws_cron_expression_validator)
[![GitHub issues](https://img.shields.io/github/issues/grumbit/aws_cron_expression_validator)](https://github.com/grumbit/aws_cron_expression_validator/issues)
[![GitHub license](https://img.shields.io/github/license/grumbit/aws_cron_expression_validator)](https://github.com/grumbit/aws_cron_expression_validator/blob/master/LICENSE)
[![GitHub forks](https://img.shields.io/github/forks/grumbit/aws_cron_expression_validator)](https://github.com/grumbit/aws_cron_expression_validator/network)
[![GitHub stars](https://img.shields.io/github/stars/grumbit/aws_cron_expression_validator)](https://github.com/grumbit/aws_cron_expression_validator/stargazers)

# AWSCronExpressionValidator

Validates these [AWS EventBridge cron expressions](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-cron-expressions.html), which are similar to, but not compatible with Unix style cron expressions;

| Field        | Values          | Wildcards      |
| :----------- | :-------------- | :------------- |
| Minute       | 0-59            | , - \* /       |
| Hour         | 0-23            | , - \* /       |
| Day-of-month | 1-31            | , - \* ? / L W |
| Month        | 1-12 or JAN-DEC | , - \* /       |
| Day-of-week  | 1-7 or SUN-SAT  | , - \* ? L #   |
| Year         | 1970-2199       | , - \* /       |

- It appears AWS's wildcard support borrows heavily from Quartz Job Scheduler cron expressions. More documentation about wildcard handling than AWS provides is available in the [Cron Trigger Tutorial](http://www.quartz-scheduler.org/documentation/quartz-2.3.0/tutorials/crontrigger.html). _NB: AWS doesn't support seconds (i.e. AWS has 6 fields, while Quartz has 7), so ignore the first field in the Quartz documenation._

This was inspired by Niloy Chakraborty's [AWSCronValidator.py](https://gist.github.com/ultrasonex/e1fdb8354408a56df91aa4902d17aa6a) project.

# Installing

To install the library run;

```bash
pip install aws-cron-expression-validator
```

# Usage

```python
from aws_cron_expression_validator.validator import AWSCronExpressionValidator, AWSCronExpressionMinuteError

my_expression = "0 180 ? * MON-FRI *"
try:
    AWSCronExpressionValidator.validate(my_expression)
except AWSCronExpressionMinuteError as e:
    print(f"Oh no! My expression has an invalid minute field: {e}")
except ValueError as e:
    print(f"Oh no! My expression was invalid: {e}")
```
regridding 1.0.1
Numba-accelerated interpolation routines
Requires Python: >=3.10

# regridding

[![tests](https://github.com/sun-data/regridding/actions/workflows/tests.yml/badge.svg)](https://github.com/sun-data/regridding/actions/workflows/tests.yml)
[![codecov](https://codecov.io/gh/sun-data/regridding/graph/badge.svg?token=8W5I2EBDDX)](https://codecov.io/gh/sun-data/regridding)
[![Black](https://github.com/sun-data/regridding/actions/workflows/black.yml/badge.svg)](https://github.com/sun-data/regridding/actions/workflows/black.yml)
[![Ruff](https://github.com/sun-data/regridding/actions/workflows/ruff.yml/badge.svg)](https://github.com/sun-data/regridding/actions/workflows/ruff.yml)
[![Documentation Status](https://readthedocs.org/projects/regridding/badge/?version=latest)](https://regridding.readthedocs.io/en/latest/?badge=latest)
[![PyPI version](https://badge.fury.io/py/regridding.svg)](https://badge.fury.io/py/regridding)


Numba-accelerated multilinear and first-order conservative interpolation of Numpy arrays.

## Installation

`regridding` is published on the Python Package Index and can be installed using `pip`
```
pip install regridding
```

## Features

 - 1D linear interpolation
 - 2D first-order conservative resampling of logically-rectangular curvilinear grids

## Gallery

### 2D conservative resampling

[`regridding.regrid()`](https://regridding.readthedocs.io/en/latest/_autosummary/regridding.regrid.html)
can be used to perform flux-conserving 2D resampling using the `"conservative"` method.

![conservative resampling](https://regridding.readthedocs.io/en/latest/_images/regridding.regrid_1_0.png)
bafser-tgapi 1.8.0
bafser tg api
Requires Python: >=3.12

# bafser tgapi


## usage
* init project: `bafser init_project`
* set webhook: `bafser configure_webhook set`
* delete webhook: `bafser configure_webhook delete`
* get sticker file_id: `bafser stickers`

main.py
```py
import sys

import bafser_tgapi as tgapi
from bafser import AppConfig, create_app

from bot.bot import Bot
from scripts.init_db import init_db

app, run = create_app(__name__, AppConfig(DEV_MODE="dev" in sys.argv))
tgapi.setup(botCls=Bot, app=app)

DEVSERVER = "devServer" in sys.argv
if DEVSERVER:
    tgapi.set_webhook()
run(DEVSERVER, init_db)

if not DEVSERVER:
    if __name__ == "__main__":
        tgapi.run_long_polling()
    else:
        tgapi.set_webhook()

```

init_db.py
```py
from bafser import AppConfig
from sqlalchemy.orm import Session

from data.user import Roles, User


def init_db(db_sess: Session, config: AppConfig):
    u = User.new(db_sess, 12345, False, "Admin", "", "username", "en")
    u.add_role(u, Roles.admin)

    db_sess.commit()

```

data.user.py
```py
from bafser_tgapi import TgUserBase

from data import Roles


class User(TgUserBase):
    _default_role = Roles.user

```

data.msg.py
```py
from bafser_tgapi import MsgBase

from data import Tables


class Msg(MsgBase):
    __tablename__ = Tables.Msg

```

bot.py
```py
import bafser_tgapi as tgapi

from data.user import User


class Bot(tgapi.BotWithDB[User]):
    _userCls = User

```


## call other method
```py
import json

import bafser_tgapi as tgapi

ok, r = tgapi.call("getStickerSet", {
    "name": "AnimatedEmojies",
})
with open("r.json", "w") as f:
    json.dump(r, f)

```
jetsontools 0.1.2
Tools for working with NVIDIA Jetson devices.
Requires Python: <=3.13,>=3.8

# jetsontools

[![](https://img.shields.io/pypi/pyversions/jetsontools.svg)](https://pypi.org/pypi/trtutijetsontoolsls/)
![PyPI](https://img.shields.io/pypi/v/jetsontools.svg?style=plastic)
[![CodeFactor](https://www.codefactor.io/repository/github/justincdavis/jetsontools/badge)](https://www.codefactor.io/repository/github/justincdavis/jetsontools)

![MyPy](https://github.com/justincdavis/jetsontools/actions/workflows/mypy.yaml/badge.svg?branch=main)
![Ruff](https://github.com/justincdavis/jetsontools/actions/workflows/ruff.yaml/badge.svg?branch=main)
![PyPi Build](https://github.com/justincdavis/jetsontools/actions/workflows/build-check.yaml/badge.svg?branch=main)

Tools for working with NVIDIA Jetson devices.
viessmann-gridbox-connector 2.0.0
Connector for Viessmann Gridbox to fetch live data from your Photovoltaic System

# Viessmann Gridbox Connector

### **<h3 style="text-align: center;">This is not an official Viessmann library</h3>**

Harness the power of your photovoltaic system with the GridboxConnector library. This versatile tool taps into the same REST API as the official dashboard and app, providing you with direct access to your data from the cloud.<br>

Whether you're a developer looking to integrate solar data into your own project, or a power user seeking command-line access, GridboxConnector has you covered. With its dual functionality, you can either embed it into your Python project as a library or use it as a standalone command-line interface (CLI) tool.<br>

**Take control of your solar data with GridboxConnector, and unlock the full potential of your photovoltaic system.**<br><br>
![Screenshot vom mygridbox](images/screenshot.png)

## Installation

```script shell
pip install viessmann-gridbox-connector
```

## Usage

You can use the CLI to retrieve live data from the Viessmann Gridbox API or use the GridboxConnector class in your own code. <br>
Use your Login data from the App or from https://mygridbox.viessmann.com/login

### CLI

```script shell
pip install viessmann-gridbox-connector
viessmann --username <username> --password <password>
```

### in your code

```python
from viessmann_gridbox_connector import GridboxConnector
from importlib.resources import path
import json

with path('viessmann_gridbox_connector', 'config.json') as config_file:
    with open(config_file, 'r') as file:
        data = json.load(file)
        data["login"]["username"] = "username"
        data["login"]["password"] = "password"
        connector = GridboxConnector(data)
        # Retrieve live data
        live_data = connector.retrieve_live_data()
        print(live_data)
```

### Example Output

```script json
{
    "consumption": 496,
    "directConsumption": 413,
    "directConsumptionEV": 0,
    "directConsumptionHeatPump": 0,
    "directConsumptionHeater": 0,
    "directConsumptionHousehold": 413,
    "directConsumptionRate": 1,
    "grid": 83,
    "gridMeterReadingNegative": 4318200000,
    "gridMeterReadingPositive": 14499360000,
    "measuredAt": "2023-08-04T11:29:43Z",
    "photovoltaic": 413,
    "production": 413,
    "selfConsumption": 413,
    "selfConsumptionRate": 1,
    "selfSufficiencyRate": 0.8326612903225806,
    "selfSupply": 413,
    "totalConsumption": 496
}
```

## Dependencies

- requests

## Contributing

If you'd like to contribute to viessmann-gridbox-connector, please follow these steps:

Fork the repository.
Create a new branch for your feature or bug fix.
Make your changes and write tests if possible.
Run tests and ensure they pass.
Submit a pull request.

## License

This project is licensed under the MIT License - see the LICENSE file for details.
inkcord 0.1.0
A api wrapper made from the standard python namespace packages, nothing else
Requires Python: >=3.8
Keywords: discord, standard, api

# inkcord
![CodeFactor Grade](https://img.shields.io/codefactor/grade/github/sunset-hue/inkcord?style=for-the-badge)
![Static Badge](https://img.shields.io/badge/Documentation-v0.1.0-orange?style=for-the-badge)

A discord API wrapper made from standard libraries, not requiring any dependencies (except websocket, since it's really complicated to implement)

## Why use this wrapper?
uhh it's cool and also it doesn't really require a lot of package downloading and downloads a lot faster
The structure of this library is a bit of discord.py inspiredness and the rest is my dumb design

## Usage
You can check [the documentation](https://inkcord-docs.github.io) for documentation, and how to make your first bot with it.