skillfed

plaster

A loader interface around multiple config file formats.

plaster v1.1.2 2.4M downloads/30d#3,087 on PyPI
Permissive license Abandoned released

What it is and what it does

Plaster is a configuration loader abstraction layer designed for applications that need to read settings from multiple config file formats (INI, YAML, TOML, etc.) through a single, consistent API. Rather than implementing format-specific parsing itself, plaster defines a standard interface and delegates actual parsing to pluggable loaders that register themselves via entry points. This separation allows applications to support multiple config formats without coupling to any single parser library.

The package is part of the Pylons ecosystem and is commonly used in Pyramid web applications. It handles URI parsing to identify which loader to use, manages loader discovery, and provides error handling for missing or ambiguous loaders. The core library is minimal and stable, focusing only on the loader interface contract; any format-specific behavior lives in separate loader implementations.

Use it for:

  • Load INI, YAML, or other config formats in a Pyramid or Pylons web application without hardcoding format assumptions.
  • Build an application that supports multiple config file formats by registering custom loaders as entry points.
  • Parse a config URI like 'ini://config.ini' or 'egg:myapp#config' to determine which loader to invoke.
  • Migrate from one config format to another without changing application code that calls plaster.
  • Discover available loaders at runtime to handle ambiguous or missing loader scenarios.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Plaster provides a unified loader interface for reading configuration files in multiple formats, delegating actual parsing to pluggable loaders registered via entry points.

Yes, if you are maintaining or extending an existing Pylons/Pyramid application that already uses plaster—it is stable and has no known vulnerabilities. No, if starting a new project: the package is abandoned (last release 2022-11-21), and modern Python config alternatives (tomllib, pydantic, dynaconf) are actively maintained. Install only when required by existing code or when the pluggable loader abstraction is a genuine architectural need.

Install

plaster on PyPI

pip

pip install plaster

uv

uv add plaster

poetry

poetry add plaster

Installing plaster

Before you install

Low install friction with a single lightweight runtime dependency (importlib-metadata). However, the package is abandoned—last release was 2022-11-21, over 1362 days ago—so no active maintenance or bug fixes should be expected.

License in practice

Licensed under MIT (permissive), so you can use, modify, and distribute this package freely in commercial and private projects without restriction.

Quickstart

pip install plaster

import plaster
loader = plaster.get_loader('config.ini', 'egg:myapp')
settings = loader.get_settings()

Requires Python 3.7 or later; does not support Python 2.7 or earlier 3.x versions.

Verify before relying

  • Whether the pluggable loader ecosystem for plaster is still actively maintained or has viable alternatives.
  • Whether abandonment affects real-world usage in existing Pylons/Pyramid applications that depend on it.

Package facts

License not declared (permissive)
Python support supports the current Python release (>=3.7)
Install friction low — pure-Python wheel
Runtime dependencies 1 — importlib-metadata
Maintenance abandoned — 1,362 days since the last release
First released
Downloads 2,393,112/month — #3,087 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: plaster-1.1.2-py2.py3-none-any.whl

Keywords: plaster, pastedeploy, ini, config

Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseNatural Language :: EnglishProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy

Tags

config file loaderconfiguration parser interfacemulti-format configpluggable config loaderini config loaderpastedeploy config
config-loaderpylons-ecosystem

More Software Development packages