{"categories":[{"label":"Utilities","url":"https://skillfed.io/packages/category/utilities/5"}],"enrichment":{"capability":"Provides type-checking and data-cleaning utility functions for Python, focused on handling type uncertainties like checking if something is list-like or dict-like, and cleaning null values from nested structures.","skillfed_tags":["type-checking","utilities"],"use_cases":["Normalize function arguments that might be a single item or a list using ensure_list to standardize handling","Validate or guard against type mismatches in data processing by checking is_listish or is_mapping","Clean API responses or configuration dictionaries by recursively removing null values with clean_dict","Generate consistent hashes of structured data for caching or deduplication using hash_data"],"what_it_does":"banal is a lightweight utility library that exports a handful of type-checking and data-manipulation functions designed to reduce boilerplate when working with uncertain types in Python. It solves the common problem of needing to check whether a value is list-like or dict-like, ensure a value is wrapped in a list, recursively remove null values from nested dictionaries, and generate SHA1 hashes from structured data. The library has no external dependencies\u2014it uses only the Python standard library\u2014and is fully type-annotated to pass mypy. It's intended as a shared commons module that projects can import to avoid duplicating these small but frequently needed utilities.\n\nThe package is actively maintained, supports Python 3.10 through 3.13, and carries no known security vulnerabilities. It is small and focused, with no complex dependency tree, making it a low-risk addition to any project that needs these specific helper functions.","worth_installing":"Yes. banal is a low-friction, zero-dependency utility library with active maintenance, no known vulnerabilities, and permissive MIT licensing. Install it if your project needs these specific type-checking or data-cleaning helpers and wants to avoid writing them yourself. The small scope and lack of external dependencies make it a safe, lightweight addition."},"id":"banal","links":{"html":"https://skillfed.io/packages/banal","md":"https://skillfed.io/packages/banal.md","pypi":"https://pypi.org/project/banal/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-04-14","license_spdx":null,"license_treatment":"permissive","name":"banal","python_support":"supports_current","summary":"Commons of banal micro-functions for Python."},"popularity":{"monthly_downloads":470604,"position":6483,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.1.2"}
