{"categories":[{"label":"Software Development","url":"https://skillfed.io/packages/category/software-development/13"}],"enrichment":{"capability":"Loads and merges multiple YAML configuration files hierarchically with variable interpolation via Jinja2, supporting different merge strategies.","skillfed_tags":["configuration-management","yaml-processing"],"use_cases":["Manage environment-specific configuration by layering base, environment, and host-level YAML files in order.","Build templated configuration where values reference other config keys using Jinja2 syntax (e.g., `{{ first }}`)","Merge default application settings with user overrides while preserving nested structure integrity.","Load configuration from multiple sources (files or strings) and combine them into a single OrderedDict.","Customize merge behavior for primitive values or use alternative YAML loaders via callback functions."],"what_it_does":"HiYaPyCo is a Python library for managing configuration through hierarchical overlay of YAML files. It reads multiple YAML files and merges them according to a chosen strategy (simple replacement, deep merge, or list substitution), then optionally interpolates variables using Jinja2 templates. The library is designed to replicate Puppet's Hiera-style configuration management for Python applications.\n\nThe package depends on PyYAML for YAML parsing and Jinja2 for template variable substitution. It preserves dictionary ordering during load and merge operations, which is important for interpolation to work correctly. Configuration can be loaded from files or YAML strings, and the merge behavior is customizable through method selection and callback functions.","worth_installing":"Yes, if you need hierarchical YAML configuration merging with templating. The package is stable (Production/Stable classifier), actively maintained, has no known vulnerabilities, and low install friction. The GPLv3 license is a blocker only if you cannot distribute under copyleft terms. It is well-suited for application configuration management but adds a dependency for a focused use case\u2014evaluate whether built-in config tools or simpler alternatives meet your needs first."},"id":"hiyapyco","links":{"html":"https://skillfed.io/packages/hiyapyco","md":"https://skillfed.io/packages/hiyapyco.md","pypi":"https://pypi.org/project/hiyapyco/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2024-10-20","license_spdx":null,"license_treatment":"copyleft","name":"HiYaPyCo","python_support":"unspecified","summary":"Hierarchical Yaml Python Config"},"popularity":{"monthly_downloads":225756,"position":9214,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.7.0"}
