Skip to main content

A Rust library and Python extension for reading and converting configuration files (TOML, YAML, JSON, XML) into Python dictionaries. Powered by PyO3.

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

config_lang_serder

A Rust library and Python extension for reading and converting configuration files (TOML, YAML, JSON, XML) into Python dictionaries. Powered by PyO3, this project enables seamless integration of Rust's performance with Python's usability for configuration management.

Features

  • Read and parse TOML, YAML, JSON, and XML files
  • Unified API: Returns configuration as a Python dict regardless of format
  • High performance: Leverages Rust for fast parsing
  • Python bindings: Easily callable from Python via PyO3

Installation

by PyPI

uv pip install config-lang-reader
# or
pip install config-lang-reader

from source (via maturin or setuptools-rust)

Build and install with maturin:

maturin develop

Or build a wheel:

maturin build
pip install target/wheels/config_lang_serder-*.whl

Usage

Python

import config_lang_serder

# Automatically detects file type by extension
data = config_lang_serder.read('config.yaml')
print(data)

Current supported extensions: .toml, .yaml, .json, .xml

API

  • read(path: str) -> dict: Reads a config file and returns its contents as a Python dict. Supported extensions: toml, yaml, json, xml.
  • read_toml(path: str) -> dict
  • read_yaml(path: str) -> dict
  • read_json(path: str) -> dict
  • read_xml(path: str) -> dict

Development

  • Rust code in src/
  • Python bindings via PyO3
  • Tests in test.py and tests/

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

config_lang_serder-0.1.0.tar.gz (8.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

config_lang_serder-0.1.0-cp310-abi3-win_amd64.whl (462.3 kB view details)

Uploaded CPython 3.10+Windows x86-64

config_lang_serder-0.1.0-cp310-abi3-win32.whl (446.1 kB view details)

Uploaded CPython 3.10+Windows x86

config_lang_serder-0.1.0-cp310-abi3-musllinux_1_2_x86_64.whl (832.8 kB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ x86-64

config_lang_serder-0.1.0-cp310-abi3-musllinux_1_2_i686.whl (865.5 kB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ i686

config_lang_serder-0.1.0-cp310-abi3-musllinux_1_2_armv7l.whl (917.2 kB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARMv7l

config_lang_serder-0.1.0-cp310-abi3-musllinux_1_2_aarch64.whl (827.5 kB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARM64

config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (662.5 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ x86-64

config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl (732.4 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ s390x

config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (823.1 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ppc64le

config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (653.7 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARMv7l

config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (649.8 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

config_lang_serder-0.1.0-cp310-abi3-manylinux_2_5_i686.manylinux1_i686.whl (709.5 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.5+ i686

config_lang_serder-0.1.0-cp310-abi3-macosx_11_0_arm64.whl (592.9 kB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

config_lang_serder-0.1.0-cp310-abi3-macosx_10_12_x86_64.whl (615.1 kB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file config_lang_serder-0.1.0.tar.gz.

File metadata

  • Download URL: config_lang_serder-0.1.0.tar.gz
  • Upload date:
  • Size: 8.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.8.6

File hashes

Hashes for config_lang_serder-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a4fdbfb639aa95e9e9467f9a7af79eb829507419238307b85fefd6ec31d7872e
MD5 01fb27c4da0f77a84010c1e638b28a72
BLAKE2b-256 e4192f4af457f6a2d0d6dc796d01e66b0efd2e27ba33faa622b71641b7218d59

See more details on using hashes here.

File details

Details for the file config_lang_serder-0.1.0-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for config_lang_serder-0.1.0-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 b3e36ab1b79adbee5b913a5a9828320f341b47a5838fd2111067890d851ca670
MD5 56c8435c40f6541bc513f31507dda6a8
BLAKE2b-256 6c314cfb8f255192409c138cd21a7794c95b616734644b27251eeb8326fbdef0

See more details on using hashes here.

File details

Details for the file config_lang_serder-0.1.0-cp310-abi3-win32.whl.

File metadata

File hashes

Hashes for config_lang_serder-0.1.0-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 008bc6eb1716a34577e99609d4b80d344646987a9911cf536281657610ce3b65
MD5 5d900cfc71c38076efed85e84bc593df
BLAKE2b-256 8002a6db74c87afe8766e559fad884d2566b1c28b3a84449d2d27409feb4c765

See more details on using hashes here.

File details

Details for the file config_lang_serder-0.1.0-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for config_lang_serder-0.1.0-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 903f6022ccbe047f85e593790a7e5b4ac4825ab847b5593555e6a6c019576a78
MD5 d9b94974700afcc2c8e20b69df5c0754
BLAKE2b-256 428e28681a2c424ee19a7fd513bf656eea367924b3ba12e55ce269d7c2d6bd8c

See more details on using hashes here.

File details

Details for the file config_lang_serder-0.1.0-cp310-abi3-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for config_lang_serder-0.1.0-cp310-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 42f997692fb72e61ea06703a4e5b070c41800f95f7e0362ba55814141a428e6f
MD5 5309fdc967213ecc61f404d2ffc0b0ee
BLAKE2b-256 44cc927fac1cd8d3d165508acaea1b48260740a5aaa9bad8b0748c49e84d1655

See more details on using hashes here.

File details

Details for the file config_lang_serder-0.1.0-cp310-abi3-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for config_lang_serder-0.1.0-cp310-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 91f624d864908d45086997b26a17ecc8e03358051da7300fa130a86c2204ca75
MD5 ca10bc2827184988854914ea979eeff3
BLAKE2b-256 eefdb25ed24f437f0d2efd14d36c495a1c5dd266c5e5fcbcd402301a796f912a

See more details on using hashes here.

File details

Details for the file config_lang_serder-0.1.0-cp310-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for config_lang_serder-0.1.0-cp310-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 4064ced07859b550665bb7357563fb313dade83002389b6d122f47de1ba0d5d6
MD5 5233cfcef79b769840535d4413b99d3e
BLAKE2b-256 a9851cc244ffdce2b569c8762cd9bf1b2f4613758368f63958895d9ae25f929b

See more details on using hashes here.

File details

Details for the file config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c6938fc1d5e2dc2c52368232c91a9471d7c86c51643fbdf279cd467f20b7a91d
MD5 6e21d87491b199264cb9bdc029fe634f
BLAKE2b-256 ff0933d4179ee958f4ac1bf8bfb62758ffa92ada01328fdebcac71dc669bac98

See more details on using hashes here.

File details

Details for the file config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 b24e1ae1a36aba2167dca1fffd262c410ff02de7c830240c253bbf44228731b1
MD5 7b1ab733ba1d4fae8b4bfcbe85ed70d1
BLAKE2b-256 6d0d615054767cb4a3895419fc48c4dc2feeb7aada06bd849918bb3da509f7cd

See more details on using hashes here.

File details

Details for the file config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 868b9f69fa954d8ca70d6a08006f2efcad345e30d9e008d4a486560b2aaa6347
MD5 f00cbf01bd8bc102992ddf1d5d23db13
BLAKE2b-256 64dee0aa67570a43f6ad0eb8f6f637cb5fa85bda0c17c706b2b9979cc7a14670

See more details on using hashes here.

File details

Details for the file config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 b0b73bb1d9acdbced917b3e6541f0f93e4f965a7c1400a5ea582c5b5157b3c74
MD5 e73cb87131377766f21edf85ded0882a
BLAKE2b-256 dbb1951cffc9a5cd85550220716ae07592393721b1e2c4c6f8e6e95e737f1e76

See more details on using hashes here.

File details

Details for the file config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for config_lang_serder-0.1.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 dbd41fa502f345445f618bb180020380340fe9c2f48bb311179089cc7d74b847
MD5 e4d8c20f3f3af8a03021b1971aeb275a
BLAKE2b-256 a4e4d09ece85884d222e71cd2bbff0d9cd0c46bd550078726249fc9f2ad8dda9

See more details on using hashes here.

File details

Details for the file config_lang_serder-0.1.0-cp310-abi3-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for config_lang_serder-0.1.0-cp310-abi3-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 e11d742129bdace937b653317204eb9bec63504ad3e4524e79ec9760431ba889
MD5 e9c30ac7424743563108ea43e9522669
BLAKE2b-256 3b6d2d453d3f9f75889fead6f0da474c1d3fea296c313f1c79214ecf8f48f6ae

See more details on using hashes here.

File details

Details for the file config_lang_serder-0.1.0-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for config_lang_serder-0.1.0-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fe33a3022a38a4bab58eb84e30022c6dd294696d492d150b3edc87de31e2f170
MD5 57f96551201c447f22db688b8e2fac58
BLAKE2b-256 be70e65280519064e62c6d1d5b8c97b43d120920d23f0c884624ea03accb4b96

See more details on using hashes here.

File details

Details for the file config_lang_serder-0.1.0-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for config_lang_serder-0.1.0-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9bc9ca3bf3936ab77711745f0f305c8d19b659b2a8e908a9fcd0019f34798f3b
MD5 6f668cb223982e7667b2991edc6ebf59
BLAKE2b-256 62cb0cd37ebc10d28dd6f06e556242a137ea82413c1873ab44cf82eb56e669b1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page