semvec/pypi-packages huggingface dataset:
rpi-vidlooper 0.6
Raspberry Pi GPIO-controlled video looper

# rpi-vidlooper

A video looper for the Raspberry Pi, controlled by GPIO pins. Designed to
run an unattended video display, where users can select the active video
by switch.

MIT licensed.

## Features

* Play videos using [OMXplayer](https://elinux.org/Omxplayer), a hardware-
assisted video player for smooth playback.
* Switch between 2 or more videos using hardware switches wired to the
Raspberry Pi's GPIO pins.
* Optionally, indicate the active video by LED. This can be used with
arcade-style switches which have built-in LEDs, or separate ones.
* Callback-based, rather than polling-based. This means that button
presses should always be acted upon.
* Thread locking, to avoid issues when buttons are pressed rapidly
and the video hasn't finished loading yet.

## Usage

I've published a two part tutorial on my [blog](https://alexlubbock.com):

* In [part 1](https://alexlubbock.com/raspberry-pi-video-player-hardware),
I cover the hardware parts list and build instructions, including a
3D-printed case
* In [part 2](https://alexlubbock.com/raspberry-pi-video-player-software),
I describe this `rpi-vidlooper` software tool and how to get it set up
and configured

On the hardware side, you'll need a Raspberry PI with several switches,
one for each video. Each switch should be connected to a GPIO pin, and
to ground. Optionally, you can set up an indicator LED for each video,
connected to a GPIO pin.

Install dependencies:

```
sudo apt-get update
sudo apt-get install python3-pip omxplayer fbi
```

Install rpi-vidlooper:

```
pip3 install rpi-vidlooper
```

This creates the `vidlooper` command. For usage help, see:

```
vidlooper --help
```

## Troubleshooting

### RuntimeError: No access to /dev/mem. Try running as root!

By default, you'll need to run `sudo vidlooper`, to gain access to the GPIO
pins and the graphics card (GPU) for `omxplayer`. Generally, this is not
recommended.

To avoid this, the user you want to run the vidlooper as will need to be
in the `gpio` group. For example, for the `pi` user, you'd need to do this:

```
sudo usermod -a -G gpio pi
```

See [further information on this issue](https://raspberrypi.stackexchange.com/questions/40105/access-gpio-pins-without-root-no-access-to-dev-mem-try-running-as-root).

### No rights to /dev/vchiq

See the [OMXplayer troubleshooting](https://elinux.org/Omxplayer) to fix
this issue. It's also possible to avoid by running `sudo vidlooper`, but
as above, this is not recommended.

## Further reading

* [Raspberry Pi Video Player Hardware tutorial](https://alexlubbock.com/raspberry-pi-video-player-hardware)
* [Raspberry Pi Video Player Software tutorial](https://alexlubbock.com/raspberry-pi-video-player-software)
* [Python on the Raspberry Pi](https://www.raspberrypi.org/documentation/linux/software/python.md)
* [OMXPlayer, a hardware-accelerated video player for Raspberry Pi](https://www.raspberrypi.org/documentation/raspbian/applications/omxplayer.md)
pypushover-logger 0.1.0
A Pushover logging handler
Requires Python: >=3.9,<4.0

pypushover-logger
=================

A simple logging handler that will push notification to Pushover.

All credits goes to: https://gist.github.com/snorrelo/28ab89d142ea93d363a34a8ce115b7cf

The code hosted here is simply a packaged and black-ed version of the code above.
apache-airflow-providers-aerofoil2 1.0.0
A convenient add-on for Apache Airflow
Requires Python: ~=3.7

# Aerofoil : Lifting Airflow
Aerofoil is an Apache Airflow plugin. It provides some very useful extensions, that are missing in the Airflow. The plugin is available with MIT license, the intention is to keep it simple and friendly. 

### Features:
##### Backfill UI: 
A convenient way to run Backfill DAG from UI. In most of the enterprise setup, DAG developers do not have access to Airflow servers to be able to run backfill jobs. This makes running backfill an expensive operation. With the Backfilll UI, Airflow users can submit backfill command from UI. The backfill itself runs as a Airflow DAG and is compatible with most production Airflow configurations. This is also the most used feature in Aerofoil.
##### My DAGs
Large Airflow installations can have hundreds of DAGs. This feature allows logged in user to view to see the DAG's authored by her/him. The DAG Author must be set correctly in the DAG file and it must match with the Airflow user name. 
##### Reset DAG History
Sometime complete DAG history needs to be reset. There is currently no way of clearing a DAGs history in Airflow. This functionality allows clearing/resetting DAGs history via a convenient UI.  

##### Fake Sucess
A shortcut to mark your DAG/Task runs successful. The Fake success is a powerful featurs, and to avoid misuse and Audit Trail is maintained. Adminstratos can always find out, who is trying to fake it. 

##### AerofoilBashOperator: 
Context aware BashOperator, that can take a context and pass it to callback e.g. `on_success_callback`, `on_failure_callback` etc. 

## Installation 
### Pre-requisite
- Working Airflow installation.
- works with any executor other than Sequential Executor or LocalExecutor (e.g. KubernetasExecutor, CeleryExecutor)
- Requires a non-sqlite database in the backend.

### Install Instructions:
- pip install apache-airflow-providers-aerofoil
- Add rquired tables to Airflow Metadata DB by executing src/aerofoil/models.sql
- Deploy DAG file in the src/aerofoil/aerofoil_backfill.py DAGs to  your Airflow (usually by putting the DAG in  Airflow's DAGs folder.
- Make sure the *__aerofoil_backfill__* 
- DAG is enabled.

## Backfilll Design:
When the user submits a backfill, it creates an entry in the `aerofoil_backfill` backfill table. *__aerofoil_backfill__*  DAG is scheduled to run every minute (which can be changed, by modifying the DAG). The Sesor in the DAG, picks up the entries in the DB and create dynamic task for each entry. The Backfill job itself runs as a Bash command in the executor. This provides a flexible and executor agnostic design.  

## Screenshots:
##### Aerofoil Menu
![img](screenshots/menu.png)
##### Backfill Screen
![img](screenshots/backfill.png)
##### Reset DAG Menu
![img](screenshots/reset.png)
##### Fake Success Menu
![img](screenshots/fake_success.png)

## Contribute:
If you find something missing and would like to contrinute, feel free to raise a pull request. If you find a bug and would like me to fix it, please feel free to raise an issue.
apache-airflow-providers-aerofoil 1.1.0
A convenient add-on for Apache Airflow
Requires Python: ~=3.7

# Aerofoil : Lifting Airflow
Aerofoil is an Apache Airflow plugin. It provides some very useful extensions, that are missing in the Airflow. The plugin is available with MIT license, the intention is to keep it simple and friendly. 

### Features:
##### Backfill UI: 
A convenient way to run Backfill DAG from UI. In most of the enterprise setup, DAG developers do not have access to Airflow servers to be able to run backfill jobs. This makes running backfill an expensive operation. With the Backfilll UI, Airflow users can submit backfill command from UI. The backfill itself runs as a Airflow DAG and is compatible with most production Airflow configurations. This is also the most used feature in Aerofoil.
##### My DAGs
Large Airflow installations can have hundreds of DAGs. This feature allows logged in user to view to see the DAG's authored by her/him. The DAG Author must be set correctly in the DAG file and it must match with the Airflow user name. 
##### Reset DAG History
Sometime complete DAG history needs to be reset. There is currently no way of clearing a DAGs history in Airflow. This functionality allows clearing/resetting DAGs history via a convenient UI.  

##### Fake Sucess
A shortcut to mark your DAG/Task runs successful. The Fake success is a powerful featurs, and to avoid misuse and Audit Trail is maintained. Adminstratos can always find out, who is trying to fake it. 

##### AerofoilBashOperator: 
Context aware BashOperator, that can take a context and pass it to callback e.g. `on_success_callback`, `on_failure_callback` etc. 

## Installation 
### Pre-requisite
- Working Airflow installation.
- works with any executor other than Sequential Executor or LocalExecutor (e.g. KubernetasExecutor, CeleryExecutor)
- Requires a non-sqlite database in the backend.

### Install Instructions:
- pip install apache-airflow-providers-aerofoil
- Add rquired tables to Airflow Metadata DB by executing src/aerofoil/models.sql
- Deploy DAG file in the src/aerofoil/aerofoil_backfill.py DAGs to  your Airflow (usually by putting the DAG in  Airflow's DAGs folder.
- Make sure the *__aerofoil_backfill__* 
- DAG is enabled.

## Backfilll Design:
When the user submits a backfill, it creates an entry in the `aerofoil_backfill` backfill table. *__aerofoil_backfill__*  DAG is scheduled to run every minute (which can be changed, by modifying the DAG). The Sesor in the DAG, picks up the entries in the DB and create dynamic task for each entry. The Backfill job itself runs as a Bash command in the executor. This provides a flexible and executor agnostic design.  

## Screenshots:
##### Aerofoil Menu
![img](screenshots/menu.png)
##### Backfill Screen
![img](screenshots/backfill.png)
##### Reset DAG Menu
![img](screenshots/reset.png)
##### Fake Success Menu
![img](screenshots/fake_success.png)

## Contribute:
If you find something missing and would like to contrinute, feel free to raise a pull request. If you find a bug and would like me to fix it, please feel free to raise an issue.
queclinkdoc 2.2
A simple, clean, friendly, and less-configured Sphinx theme

Queclinkdoc
===========

Queclinkdoc is a simple, clean, and less-configured theme for the `Sphinx <https://www.sphinx-doc.org>`_ documentation system developed by `Queclink Wireless Solutions Co., Ltd <https://www.queclink.com>`_.

We show the global **TOC** tree of the documentation in a drop-down list at the head of the page, and even if you browse to the end of the page, this TOC tree will still be fixed at the head, so you can jump to other pages at any time.

We recommend using *Google Chrome* or *Firefox* to read the generated documentation.

You can make and install **queclinkdoc** theme like this:

.. code-block:: Python

   py setup.py sdist
   py -m pip install dist\queclinkdoc-x.x.tar.gz

When using the `ref <https://www.sphinx-doc.org/en/master/usage/restructuredtext/roles.html#ref-role>`_ directive to jump to the top of the page, for a good experience, please name the label at the top of the page with **headlabel-** as a prefix, for example:

.. code-block::

   1 .. _headlabel-page-title:
   2
   3 Page Title
   4 ===========
   5

In addition, this theme supports the following custom HTML options:

- toc_background_color

  Used to specify the background color of the title area at the head of the page, the default is Blue (#2B579A), for example, you can change it to Green like this:

  .. code-block::

     html_theme_options = {
       'toc_background_color': '#008080',
     }

- zoomout_asize

  Can be *true* or *false*, default is *true*. The font size of the <a> tag whose first character is a capital letter will be reduced to 0.95em when it is true, and will not be reduced when it is false. You can change it to false like this:

  .. code-block::

     html_theme_options = {
       'zoomout_asize': 'false',
     }

`snapshot.png <snapshot.png>`_ is a snapshot of the **queclinkdoc** theme.

If you have any questions or suggestions, please contact us, thanks in advance.
japyconjugator 1.1.0
A python package for conjugating verbs in the Japanese language.
Requires Python: >=3

# japyconjugator
A python package for conjugating verbs and adjectives in the Japanese language

Usage:
```python3
import japyconjugator.verbs as verbs
verbs.conjugate('飲む', verbs.VerbClass.Godan, verbs.VerbForm.PlainPast, verbs.Polarity.Negative) # returns '飲まなかった'

import japyconjugator.adjectives as adj
adj.conjugate('元気', adj.AdjectiveClass.Na, adj.AdjectiveForm.PolitePast, adj.Polarity.Negative) # returns '元気じゃなかったです'
adj.conjugate('暑い', adj.AdjectiveClass.I, adj.AdjectiveForm.Connective, adj.Polarity.Affirmative) # returns '暑くて'
```
sempyver 0.1.0
Tool for teams to manage the CHANGELOG given a list of different changes.

<p align="center">
    <img src="https://github.com/ricardoleal20/SemPyVer/blob/main/docs/static/logo.png" />
</p>
<p align="center">
    <b>Tool for teams that manage the creation and modification of the </b>CHANGELOG<b> based on a specified set of changes.</b>
</p>

![PyPi version](https://img.shields.io/pypi/v/sempyver?label=PyPi%20version&logo=PyPi&style=for-the-badge)
![Python versions supported](https://img.shields.io/pypi/pyversions/sempyver?label=Python%20Versions%20Supported&logo=Python&style=for-the-badge)
![Deployed](https://img.shields.io/github/actions/workflow/status/ricardoleal20/SemPyVer/publish.yml?branch=main&label=LAST%20VERSION%20DEPLOYED%20%F0%9F%9A%80&logo=Github&style=for-the-badge)
![License](https://img.shields.io/github/license/ricardoleal20/SemPyVer?color=%23808000&label=%F0%9F%93%84%20LICENSE&style=for-the-badge)

## Installation

To install `SemPyVer`, you can do it through pip:

```
pip install sempyver
```

Please consider that it requires `Python >=3.8`

## Usage

#### __HELP PAGE STILL ON WORK__. Use `semver -help` for more information.

## Contributing

Everyone can contribute. Before contributing, please read our [code of conduct](CODE_OF_CONDUCT.md).

To contribute to `SemPyVer`, follow these steps:

1. Fork this repository.
2. Create a new branch.
3. Make your changes and commit them.
4. Push your changes to your fork.
5. Create a pull request.

## License

Project Name is released under the [MIT License](LICENSE).

## Inspiration

Inspired by [Changesets](https://github.com/changesets/changesets).
imaginairy-normal-map 0.0.3
Image-to-normal-map
Requires Python: >=3.7

# Image-to-Normal-Map
**Create normal maps from images (using AI)**

[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/estimating-and-exploiting-the-aleatoric/surface-normals-estimation-on-nyu-depth-v2-1)](https://paperswithcode.com/sota/surface-normals-estimation-on-nyu-depth-v2-1?p=estimating-and-exploiting-the-aleatoric)
[![PWC](https://img.shields.io/endpoint.svg?url=https://paperswithcode.com/badge/estimating-and-exploiting-the-aleatoric/surface-normals-estimation-on-scannetv2)](https://paperswithcode.com/sota/surface-normals-estimation-on-scannetv2?p=estimating-and-exploiting-the-aleatoric)

<img src="https://raw.githubusercontent.com/brycedrennan/imaginairy-normal-map/6b3b1692cbdc21d55c84a01e0b7875df030b6d79/tests/oval-office-large.jpg" width=45% ><img src="https://raw.githubusercontent.com/brycedrennan/imaginairy-normal-map/6b3b1692cbdc21d55c84a01e0b7875df030b6d79/tests/oval-office-large-normal.jpg" width=45%>

**Quick Start**
```bash
pip install imaginairy-normal-map
```

```python
from PIL import Image
from imaginairy_normal_map.model import create_normal_map_pil_img

img = Image.open("oval-office-large.jpg")
normal_img = create_normal_map_pil_img(img)
normal_img.save("oval-office-large-normal.jpg")
```


**This project was made to support the AI image generation project, [imaginAIry](https://github.com/brycedrennan/imaginAIry).**




**Credit to Gwangbin Bae, Ignas Budvytis, and Roberto Cipolla for creation of 
the [original algorithm and code](https://github.com/baegwangbin/surface_normal_uncertainty).**




<img width=70% src="https://github.com/baegwangbin/surface_normal_uncertainty/blob/main/figs/readme_scannet.png?raw=true">
<img width=100% src="https://github.com/baegwangbin/surface_normal_uncertainty/blob/main/figs/readme_generalize.png?raw=true">