semvec/pypi-packages huggingface dataset:
record-list 0.2.3
Record list with handy methods
Requires Python: >=3.10
Keywords: rlist, list

# rlist
`rlist` is a small Python library that provides the `rlist` type (record list), which 
is a plain Python list extended with a few handy methods for in-place manipulation.  
The methods are inspired by the corresponding Ruby array methods.  

**Documentation:** https://maxcode123.github.io/rlist/  

**Example**
```py
from rlist import rlist

people = [
  {"age": 29, "name": "John", "sex": "M"},
  {"age": 67, "name": "Paul", "sex": "M"},
  {"age": 39, "name": "George", "sex": "M"},
  {"age": 18, "name": "Mary", "sex": "F"},
  {"age": 45: "name": "Margaret", "sex":  "F"}
]

people.select(lambda p: p["age"] > 30).reject(lambda p: "l" in p["name"]).map(lambda p: p["sex"])
```


## Installation

```console
pip install record-list
```
fasjson 1.7.0
fasjson makes it possible for applications to talk to the fedora account system.
Requires Python: <4.0.0,>=3.9.0

# Fedora Account System / IPA JSON gateway

A JSON gateway to query FreeIPA, built for the Fedora Account System.

The documentation is available at https://fasjson.readthedocs.io/

![Tests & build status](https://github.com/fedora-infra/fasjson/actions/workflows/main.yml/badge.svg?branch=develop)
![Documentation](https://readthedocs.org/projects/fasjson/badge/?version=latest)


## TODO

- documentation
- HTTPS
pywarper 0.2.4
Conformal mapping-based warping of retinal morphologies.
Requires Python: >=3.10.0

# pywarper

[![PyPI version](https://badge.fury.io/py/pywarper.svg)](https://badge.fury.io/py/pywarper)

`pywarper` is a Python package for conformal mapping-based warping of retinal morphologies, based on the [MATLAB implementations](https://github.com/uygarsumbul/rgc) (Sümbül, et al. 2014). 

![](.github/banner.png)


## Installation

To install the latest tagged version:

```bash
pip install pywarper
```

Or to install the development version, clone the repository and install it with `pip install -e`:

```bash
git clone https://github.com/berenslab/pywarper.git
pip install -e pywarper
```

By default, `pywarper` uses `scipy.sparse.linalg.spsolve` to solve sparse matrices, which can be slow. For better performance, you can manually install the additional dependencies of [scikit-sparse](https://github.com/scikit-sparse/scikit-sparse) first:

```bash
# mac
brew install suite-sparse

# debian
sudo apt-get install libsuitesparse-dev
```

then:

```bash
pip install pywarper[scikit-sparse]
```

## Usage

See [example notebooks](https://github.com/berenslab/pywarper/blob/main/notebooks/) for usage.
ledmap 0.2a1
LED pixel mapper
Requires Python: >=3.13

# LED Pixel Mapper

Tools for working with pixel mappings.
Aimed at
[WLED](https://kno.wled.ge/advanced/mapping/)
and [ESPHome](https://esphome.io/components/display/addressable_light/#pixel_mapper).

We use [ADR](adr)s to capture the key decisions.
notion-to-md-py 0.1.4
A package to convert Notion content into Markdown format
Requires Python: >=3.7
Keywords: notion markdown converter python

# notion-to-md (Python Version)

This is the **Python implementation** of nodejs version of [notion-to-md](https://github.com/souvikinator/notion-to-md), 
a tool that converts Notion pages into Markdown files.

## Installation

Install the package via pip:

```bash
pip install notion-to-md-py
```

## Usage

### Sync Version

```python
from notion_client import Client
from notion_to_md import NotionToMarkdown


notion = Client(auth="your-auth-token")

n2m = NotionToMarkdown(notion)

# Export a page as a markdown blocks
md_blocks = n2m.page_to_markdown("page-id")

# Convert markdown blocks to string
md_str = n2m.to_markdown_string(md_blocks).get('parent')

# Write to a file
with open("output.md", "w") as f:
    f.write(md_str)
```

### Async Version
```python
import asyncio
from notion_client import AsyncClient
from notion_to_md import NotionToMarkdownAsync


notion = AsyncClient(auth="your-auth-token")

n2m = NotionToMarkdownAsync(notion)

# Export a page as a markdown blocks
md_blocks = asyncio.run(n2m.page_to_markdown("page-id"))

# Convert markdown blocks to string
md_str = n2m.to_markdown_string(md_blocks).get('parent')

# Write to a file
with open("output.md", "w") as f:
    f.write(md_str)
```

Replace `your-auth-token` and `page-id` with the appropriate values from your Notion account.

## Authentication with Notion API

1. Create an integration in your Notion account and get the `API key`.
2. Share your database with the integration to allow access.
3. Retrieve your `Database ID` and `Page ID` from the Notion app.


## Requirements

- Python 3.7 or later
- Notion API key

## Limitations

- The tool relies on the Notion API, and features are limited to what the API supports.
- Embedding or downloading files other than images is not supported.

## Contributing

Contributions are welcome! Feel free to open issues or submit pull requests to improve the functionality or fix bugs.

1. Fork the repository.
2. Create a new branch for your feature or bug fix.
3. Submit a pull request with a clear description of your changes.

## License

This project is licensed under the [MIT License](LICENSE).
propogation-exporter 0.1.0
Systemd journal reader and exporter
Requires Python: >=3.6

Propagation Exporter
====================

A small tool that watches systemd journal entries from `opendnssec-signer.service`, parses zone update stats, checks downstream DNS SOA serial propagation, and exposes Prometheus metrics.

Install
-------

This project uses `pyproject.toml`. Install in your environment of choice.

Run
---

- As a console script (recommended):

	propogation-exporter -c /etc/coralogix-exporter/zones.yaml --metrics-port 8000

- As a module:

	python -m propogation_exporter -c /etc/coralogix-exporter/zones.yaml

- Legacy script (still supported):

	python main.py -c /etc/coralogix-exporter/zones.yaml

Testing with uv
----------------

This project uses [uv](https://github.com/astral-sh/uv) for Python environment and dependency management in development.

- Install dev deps (once):

	uv sync --extra dev

- Run tests with coverage:

	uv run pytest -q --cov=propogation_exporter --cov-report=term-missing

- Optional: type and style checks:

	uv run mypy propogation_exporter
	uv run flake8 propogation_exporter

CLI options
-----------

- -c, --config-file: YAML with zones and nameservers
- --metrics-port: Prometheus HTTP port (default 8000)
- --zone / --ns: Ad-hoc SOA serial checks without systemd
- --stats-regex: Override the regex used to parse journal "[STATS]" lines.

Regex parsing
-------------

By default, the parser extracts zone, serial, and RR count from lines like:

	[STATS] example.com 2024072826 RR[count=4 time=0(sec)] ...

Default pattern:

	^\[STATS\]\s+(?P<zone>\S+)\s+(?P<serial>\d+)\s+RR\[count=(?P<rr_count>\d+)

You can override it via CLI `--stats-regex` or programmatically when creating `ZoneManager`.

Module layout
-------------

- propogation_exporter/
	- __init__.py: public exports
	- __main__.py: `python -m` entry
	- cli.py: argument parsing and app wiring
	- journal.py: systemd journal reader
	- zone.py: ZoneInfo, ZoneConfig, ZoneManager, and parsing
	- dns_utils.py: DNSChecker utilities
	- metrics.py: Prometheus metrics

Prometheus metrics
------------------

- zone_rr_count{zone}
- zone_in_sync{zone}
- zone_propagation_delay_seconds{zone, nameserver, serial}

Config file
-----------

YAML example:

	zones:
		example.com.:
			primary_nameserver: 192.0.2.1
			downstream_nameservers:
				- 192.0.2.2
				- 192.0.2.3

Notes
-----

- Ensure `systemd-python`, `dnspython`, `PyYAML`, and `prometheus-client` are available in the runtime environment.
ocpi-client 0.1.15
OCPI client
Requires Python: >=3.10
Keywords: OCPI

# OCPI Client

[OCPI](https://evroaming.org/ocpi/) client based on HTTPX, currently supporting OCPI 2.2.1.


## Usage

Here is a quick example of how to use the models to create an OCPI `Location` object.

```python
import ocpi_client

ocpi_client.put_loccation(...)
```