Skip to main content

pleroma

πλήρωμα — Greek; Sum total.

Base classes for mergeable entities. Provides MergeableMixin for dataclasses and MergeableModel for pydantic v2, with a composable last-non-None-wins merge strategy that can be customised at any granularity.

Full documentation: https://pleroma.readthedocs.io

Installation

pip install pleroma

With pydantic v2 support:

pip install "pleroma[pydantic]"

Quick start

import dataclasses
from pleroma import MergeableMixin

@dataclasses.dataclass
class Config(MergeableMixin):
    host: str | None = None
    port: int | None = None
    debug: bool | None = None

defaults = Config(host="localhost", port=8080, debug=False)
overrides = Config(port=9090)

result = Config.merge([defaults, overrides])
# Config(host='localhost', port=9090, debug=False)

License

MIT — see LICENSE.md.

Author

Jesús Alonso Abad

Release files for pleroma 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pleroma 0.2.0
File Size Uploaded
pleroma-0.2.0.tar.gz 732.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pleroma 0.2.0
File Interpreter ABI Platform
pleroma-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 739.1 kB

Release files / pleroma-0.2.0.tar.gz

Download URL pleroma-0.2.0.tar.gz
Size 732.7 kB
Tags Source
SHA-256 checksum
How to use checksums
a96994c589b8f995e618e5467e0a811029baf5d3d012c4f7b27515af6aad4a36
BLAKE2b-256 checksum
How to use checksums
249797c41baaad471da26acebd447556cf185f15fca37cda489a7e26feae8ad0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / pleroma-0.2.0-py3-none-any.whl

Download URL pleroma-0.2.0-py3-none-any.whl
Size 6.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6309fb2048c4f4260f71884f9e65d9327b72e6d275c6fa9fe04f9ca51235b12f
BLAKE2b-256 checksum
How to use checksums
45903e64eb4d8c6ff5e686c04f3078b08f931dc962ba07b9a579f9d3aa1af1ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page