{"categories":[{"label":"Application Frameworks","url":"https://skillfed.io/packages/category/software-development-libraries-application-frameworks/4"}],"enrichment":{"capability":"Persisting-theory provides a registry system for automatically discovering and accessing registered data across pluggable application components, similar to Django's autodiscovery pattern.","skillfed_tags":["plugin-system","registry-pattern","abandoned"],"use_cases":["Building plugin systems where components in separate packages self-register without central coordination.","Creating callback registries so different app modules can register handlers that others can discover and invoke.","Implementing a configuration or factory pattern where different packages register their implementations for later lookup.","Automating discovery of test fixtures, validators, or middleware across a modular application.","Managing multiple independent registries (e.g., one for handlers, one for validators) through a meta-registry."],"what_it_does":"Persisting-theory is a lightweight registry utility that automates the discovery and registration of data (functions, classes, or arbitrary values) across multiple application packages. It works by scanning designated modules in your app packages for registered items and making them accessible through a central registry object that behaves like an OrderedDict.\n\nThe package is designed for plugin-based architectures where different components need to register themselves without explicit imports. You define a Registry subclass, specify which module names to scan via the `look_into` attribute, decorate items with `@registry.register`, then call `autodiscover()` with your app names to populate the registry. It also supports validation and data transformation through overridable methods, and a meta-registry for managing multiple registries.","worth_installing":"No. While the package is lightweight and has no dependencies, it is abandoned (last release 2022-05-06, no maintenance for over 1561 days). For new projects, consider actively maintained alternatives. For existing code already using it, it may continue to work, but you will receive no updates for bugs or Python version incompatibilities."},"id":"persisting-theory","links":{"html":"https://skillfed.io/packages/persisting-theory","md":"https://skillfed.io/packages/persisting-theory.md","pypi":"https://pypi.org/project/persisting-theory/"},"maintenance":{"status":"abandoned"},"meta":{"latest_release":"2022-05-06","license_spdx":null,"license_treatment":"permissive","name":"persisting-theory","python_support":"unspecified","summary":"Registries that can autodiscover values accross your project apps"},"popularity":{"monthly_downloads":165716,"position":10519,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.0"}
