semvec/pypi-packages huggingface dataset:
compose-generator 0.2.0
Проект представляет собой генератор docker-compose.yml файла на основе настроек приложения
Requires Python: >=3.10

Этот проект представляет собой **генератор docker-compose.yml файла** на основе настроек приложения. Вот подробное описание:

## Основное назначение
Автоматическое создание `docker-compose.yml` файла с подстановкой всех переменных окружения из конфигурации приложения.

## Ключевые компоненты

### 1. `ConfigurationComponent`
- **Назначение**: Преобразует объекты конфигурации в строки переменных окружения
- **Функциональность**:
  - Извлекает префикс переменных окружения из конфигурации Pydantic
  - Генерирует строки в формате `VARIABLE_NAME: ${VARIABLE_NAME}`
  - Добавляет комментарии с названиями классов конфигурации

### 2. `Generator`
- **Назначение**: Основной класс для генерации docker-compose файла
- **Функциональность**:
  - Заменяет плейсхолдеры `[ENV]` и `[VERSION]` в шаблоне
  - Сохраняет форматирование и отступы
  - Записывает результат в файл `docker-compose.yml`

## Особенности реализации

### Автоматизация конфигурации
- Извлекает все переменные из объектов `BaseSettings`
- Сохраняет структуру и префиксы конфигурации
- Генерирует полный список переменных окружения

### Преимущества подхода
1. **Синхронизация** - версии и настройки всегда актуальны
2. **Безопасность** - не хранит чувствительные данные в репозитории
3. **Автоматизация** - исключает ручное редактирование
4. **Масштабируемость** - легко добавлять новые сервисы и настройки


Проект полезен для CI/CD процессов, где требуется автоматическое создание docker-compose файлов с актуальными настройками окружения.
webarenax 0.3
This is an unofficial, use-at-your-own risks port of the webarena benchmark, for use as a standalone library package.

**Warning: use at your own risks!**

Unofficial [WebArena](https://github.com/web-arena-x/webarena) port for compatibility with [BrowserGym](https://github.com/ServiceNow/BrowserGym). Changes below.

More flexible/recent dependencies
 - playwright>=1.32,<1.40
 - openai>=1
 - transformers
 - beartype>=0.12.0

Packaging into a single Python namespace
```bash
pip install libwebarena
```

```python
import webarena
import webarena.browser_env
import webarena.agent
import webarena.evaluation_harness
import webarena.llms
import webarena.llms.providers
```

Making `HTMLContentEvaluator` idempotent (`validate()` should not alter the browser's state)
skinoptics 0.0.8
SkinOptics: a python package with tools for building human skin computational models for Monte Carlo simulations of light transport
Requires Python: >=3.8

SkinOptics
==========

**SkinOptics** is an open source Python package with tools for building human skin computational
models for Monte Carlo simulations of light transport, as well as tools for analyzing simulation
outputs. It can also be used for teaching and exploring about Optical Properties and Colorimetry.

**SkinOptics** is under continuous development.

New features may be available in the future.

Please remember that **SkinOptics** is available without any warranty.

You can access **SkinOptics** documentation at https://skinoptics.readthedocs.io/.
pillow-mbm 0.2.0
Kerbal Space Program MBM file conversion plugin
Requires Python: >=3.10
Keywords: pillow, PIL, MBM, Texture, KSP

# Pillow-mbm
Pillow-mbm is a plugin for [pillow](https://pillow.readthedocs.io/en/stable/) 
that adds support for KSP's proprietary MBM texture format.

test/swis_mesh.mbm from [Coatl](https://forum.kerbalspaceprogram.com/topic/131145-wip-coatl-aerospace-probesplus-dev-thread-beta-10192020-18-110/) redistributed under CC-BY-NC-SA 4.0

## Installation

Install and update with [pip](https://pip.pypa.io/en/stable/getting-started/):

```shell
$ pip install -U pillow-mbm
```

Or with [uv](https://docs.astral.sh/uv/getting-started/):

```shell
$ uv tool install pillow-mbm
```

## Usage

To decode MBM files, use the `convert-mbm` command, along with a glob or a
list of files to decode. By default, it will convert to png in place.

```
Usage: convert-mbm [OPTIONS] [FILENAMES]...

  Decode Kerbal Space Program MBM files

Options:
  -f, --flip / -F, --no-flip  Vertically flip image after converting.
  -r, --remove                Remove input images after converting.
  -s, --suffix TEXT           Suffix to append to output file(s). Ignored if
                              output is a single file.

  -x, --extension TEXT        Extension to use for output. Ignored if output
                              is a single file. Output filetype is deduced
                              from this  [default: .png]

  -o, --output PATH           Output file or directory. If outputting to a
                              file, input filenames must be only a single
                              item. By default, files are decoded in place.

  --version                   Show the version and exit.
  --help                      Show this message and exit.
```
mediaflowvideo 1.0.2
Wagtail video plugin for Mediaflow
Requires Python: >=3.8

# Mediaflow video plugin for Wagtail


## Installation
      pip install mediaflowvideo

### Edit the settings file (mysite/settings/base.py):

 - Add "mediaflowvideo" to the array **INSTALLED_APPS** (near the top of the file)

- Add "mf-video" to the feature list for the Draftail Rich Text Editor 

      WAGTAILADMIN_RICH_TEXT_EDITORS = {
      	'default': {
      		'WIDGET': 'wagtail.admin.rich_text.DraftailRichTextArea',
      		'OPTIONS': {
      			'features': ['mf-video' .....]
      		}
      	}
      }


- Add your API keys
  
      MEDIAFLOW_CLIENT_ID = <YOUR SERVER ID>
      MEDIAFLOW_CLIENT_SECRET = <YOUR CLIENT SECRET>
      MEDIAFLOW_SERVER_KEY = <YOUR SERVER KEY>

  
### Using the plugin

TODO
passuth 0.3.2
A python package wrapping 'password-auth' rust crate for password hashing and verification.
Requires Python: >=3.9
Keywords: password, argon2, security, hashing, encryption

# passuth

Python wrapper module for rust crate [password-auth](https://crates.io/crates/password-auth).

It provides a simple and secure way to hash and verify passwords using the Argon2 algorithm, and includes a Fernet-compatible symmetric encryption helper.

## Note

It's my practical project for using Rust in Python, so it may not be the most efficient or optimized solution. You may use well-maintained libraries like `argon2-cffi` or `bcrypt` for production use.

## Usage

### Python API

```python
from passuth import generate_hash, verify_password

hashed = generate_hash("your_password")
print(hashed)
# $argon2id$v=19$m=19456,t=2,p=1$3IF6RWPqOkLk6ZboZ8rPqg$8eEHegumboozWtxJ6X4Fx1++zkvxiKUMIbP+BqgysIo

# To verify
is_valid = verify_password("your_password", hashed)
print("Password valid:", is_valid)
# Password valid: True
```

Accepted input types:

- generate_hash: str | bytes | bytearray | memoryview
- verify_password: str | bytes | bytearray | memoryview (password), str (hash)

#### Fernet (symmetric encryption)

```python
from passuth import Fernet

# Create with a random key
f = Fernet.new()
token = f.encrypt("my secret data")
data = f.decrypt(token)
print(data)  # b'my secret data'

# Or create from an existing key (base64 urlsafe string)
key = Fernet.generate_key()
f2 = Fernet(key)
```

Notes:

- Compatible with cryptography's Fernet tokens/keys in both directions.
- Instances are picklable and support copy/deepcopy.
- Errors (e.g., invalid key/token) raise ValueError.

### Command Line Interface

You can also use `passuth` from the command line:

Hash a password:

```sh
passuth generate your_password
# $argon2id$v=19$m=19456,t=2,p=1$g/wfcEvVbgfhR1ElhZZQ8Q$T0Ax8wFtAFXoRp87SKD7o9zBl3VwQU3/YX6ScRkY6Ts
```

Verify a password:

```sh
passuth verify your_password '$argon2id$v=19$m=19456,t=2,p=1$g/wfcEvVbgfhR1ElhZZQ8Q$T0Ax8wFtAFXoRp87SKD7o9zBl3VwQU3/YX6ScRkY6Ts'
# true
passuth verify wrong_password '$argon2id$v=19$m=19456,t=2,p=1$g/wfcEvVbgfhR1ElhZZQ8Q$T0Ax8wFtAFXoRp87SKD7o9zBl3VwQU3/YX6ScRkY6Ts'
# false
```

Replace `your_password` with your actual password and hash.

## Changelog

### v0.3.0

- New: Fernet symmetric encryption API (`passuth.Fernet`) with `generate_key()`, `new()`, `encrypt()`, `decrypt()`.
- New: Type hints and typings shipped (`passuth.pyi`, `py.typed`).
- Improved: Password inputs now accept bytes-like objects (`bytes`, `bytearray`, `memoryview`) in addition to `str`.
- Improved: Releases the GIL during heavy operations for better concurrency.
- Packaging: Prebuilt wheels include PyPy and CPython free-threading builds where available.

Migration: No breaking API changes from v0.2.0. Existing `generate_hash`/`verify_password` code continues to work. Use the new `Fernet` class for optional encryption needs.

### v0.2.0

- Password hashing (`generate_hash`) using Argon2id and verification (`verify_password`).
- Basic command-line interface: `passuth generate`, `passuth verify`.
esspolarization 25.10.0
Polarization data reduction for the European Spallation Source
Requires Python: >=3.11

[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](CODE_OF_CONDUCT.md)
[![PyPI badge](http://img.shields.io/pypi/v/esspolarization.svg)](https://pypi.python.org/pypi/esspolarization)
[![Anaconda-Server Badge](https://anaconda.org/conda-forge/esspolarization/badges/version.svg)](https://anaconda.org/conda-forge/esspolarization)
[![License: BSD 3-Clause](https://img.shields.io/badge/License-BSD%203--Clause-blue.svg)](LICENSE)

# ESSpolarization

## About

Polarization data reduction for the European Spallation Source

## Installation

```sh
python -m pip install esspolarization
```
gittable 0.2.0
Get stuff from Git
Requires Python: ~=3.9
Keywords: git

# gittable

[![test](https://github.com/enorganic/gittable/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/enorganic/gittable/actions/workflows/test.yml)
[![PyPI version](https://badge.fury.io/py/gittable.svg?icon=si%3Apython)](https://badge.fury.io/py/gittable)

The package provides a CLI and library for common interactions with a
Git repository, including: downloading select files from a (public or private)
Git repository, and tagging commits with your project/package version, when the
version has changed.

- [Documentation](https://enorganic.github.io/gittable/)
- [Contributing](https://enorganic.github.io/gittable/contributing)

## Installation

You can install `gittable` with pip:

```shell
pip3 install gittable
```
uyghur 0.1.2
All things you need for Uyghur Language.
Requires Python: >=3.8
Keywords: Uyghur, NPL

# 维吾尔文处理

[English](https://github.com/tcztzy/uyghur/blob/master/README.md)

## 动机

本人因课题需要，需要对维吾尔文进行自然语言处理，但维文的文本是自右向左排版的，在很多时候不利手动处理（如选中复制，虽然应避免手动处理，但仍有场景），而且与其他自左向右的文字混在一起时会出现一些问题（例如显示在在右侧的数字其实一个在句首一个在句末），且很多字母在词首词中词尾和单列时是不一样的，所以有些没有连字字体的系统需要单独定义字符。为了方便我这个小辣鸡我需要一个小工具转换老维文为拉丁维文。

## 术语

UEY
: 老维文，中国新疆官方唯一官方字母表，在公共媒体和日常生活中使用；

UKY
: 西里尔维文，在中亚尤其是哈萨克斯坦使用；

ULY
: 维吾尔语拉丁字母是在2008年推出的，只在计算机相关领域作为辅助书写系统使用，但在所有设备上扩大使用UEY键盘后，现在基本上已经废弃了。

UYY
: 新维字（也叫拼音Yeziⱪi或UPNY），这种字母也是基于拉丁文的，但现在大多数想用拉丁文打字的人都用ULY代替。

## 安装

```sh
$ pip install uyghur
```

## 用法

```python
from uyghur.conversion import uey2uly

print(uey2uly('پلام، جهان'))
```

## 测试

在 CPython 3.8/3.9/3.10 和 Pypy 3.8 测试，如需自行运行测试，执行下列命令

```shell
tox
```

## 待办

* [x] UEY2ULY
* [ ] ULY2UEY
* [ ] UEY2UKY
* [ ] UKY2UEY
* [ ] UEY2UYY
* [ ] UYY2UEY
* [ ] TEXT2SPEECH

## 参考文献

1. DB65/T 3690-2015 现行维吾尔文与拉丁维吾尔文编码字符转换规则
alecci 1.1.0
A compiler for the Alecci programming language
Requires Python: >=3.8
Keywords: compiler programming-language concurrency threading llvm

# Alecci Programming Language

A modern programming language with built-in concurrency support, compiled to native code via LLVM.

## Features

- 🚀 **High Performance**: Compiles to optimized native code via LLVM
- 🧵 **Built-in Concurrency**: Native threading, mutexes, barriers, and semaphores
- 🔧 **Modern Syntax**: Clean, readable syntax with type inference
- 🛡️ **Memory Safety**: Variant types and safe array operations
- 🔄 **Sanitizer Support**: Built-in ThreadSanitizer for race conditions and AddressSanitizer for memory safety

## Quick Start

### Installation

```bash
pip install alecci --break-system-packages
```

**Note**: If the `alecci` command is not found after installation, you may need to add the user bin directory to your PATH:

```bash
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
```

Alternatively, you can run the compiler directly:
```bash
python3 -m alecci
```

### Your First Program

Create a file called `hello.ale`:

```alecci
procedure main(argc, argv)
    print("Hello, Alecci!")
end procedure
```

Compile and run:

```bash
alecci hello.ale -o hello
./hello
```

#### Sanitizer Options

- **Thread Sanitizer (default)**: Detects race conditions and threading issues
  ```bash
  alecci hello.ale -o hello  # TSan enabled by default
  ```

- **AddressSanitizer**: Detects memory errors like buffer overflows
  ```bash
  alecci hello.ale --use-asan -o hello
  ```

- **No Sanitizer**: Disable all sanitizers for maximum performance
  ```bash
  alecci hello.ale --no-tsan -o hello
  ```

### Threading Example

```alecci
procedure worker(thread_number as int)
    print `Worker {thread_number} is running`
end procedure

procedure main(argc, argv)
    shared const thread_count := 4
    
    mutable threads := create_threads(thread_count, worker)
    join_threads(threads)
    
    print("All workers completed!")
end procedure
```

## Language Features

### Variables and Types
```alecci
mutable x := 42          // Mutable integer
const message := "Hello" // Immutable string
mutable arr := array(10, 0) // Array of 10 zeros
```

### Functions
```alecci
function add(a as int, b as int) -> int
    return a + b
end function
```

### Concurrency
```alecci
shared mutable counter := 0
shared mutable mtx := mutex()

procedure increment()
    lock(mtx)
    counter := counter + 1
    unlock(mtx)
end procedure
```

## Installation from Source

If you want to build from source:

```bash
git clone https://github.com/yourusername/alecci.git
cd alecci
pip install -e . --break-system-packages
```

If needed, add the local bin directory to your PATH:
```bash
export PATH="$HOME/.local/bin:$PATH"
```

## Requirements

- Python 3.8+
- LLVM 14+ (for llvmlite)
- GCC or Clang (for linking)

## Documentation

- [Language Reference](docs/language-reference.md)
- [Concurrency Guide](docs/concurrency.md)
- [Examples](examples/)

## License

MIT License - see [LICENSE](LICENSE) file for details.