{"categories":[{"label":"Monitoring","url":"https://skillfed.io/packages/category/system-monitoring"}],"enrichment":{"capability":"Proglog provides a unified progress logging interface that lets library authors expose progress bars and logs to users while letting those users control display format (console, notebook, web) and which bars to show or silence.","skillfed_tags":["progress-reporting","logging-abstraction","multi-environment"],"use_cases":["Building a library that runs nested loops or calls other libraries and wants to expose progress bars that users can silence or customize per-bar","Creating a web application that runs background jobs via Python-RQ and needs to report progress back to the frontend","Writing a tool that must work in console, Jupyter, and headless environments without changing code for each context","Aggregating logs and progress from multiple interdependent libraries into a single, user-controlled reporting stream","Adding callback hooks to react to progress updates (e.g., logging, metrics collection) without modifying core library code"],"what_it_does":"Proglog is a progress logging system that solves the problem of managing progress bars and logs across complex multi-library projects. Instead of each library implementing its own progress display, Proglog provides a unified logger interface that abstracts away whether output goes to a console, Jupyter notebook, web server, or custom handler. Libraries pass the logger through their call chain, and end users control which progress bars display, their update frequency, and output format\u2014all without libraries needing to know about the final display target.\n\nThe package wraps tqdm and provides logger classes like TqdmProgressBarLogger and RqWorkerBarLogger for different environments. It also supports custom loggers via subclassing ProgressBarLogger, callback functions on state changes, and arbitrary key-value logging beyond just progress bars. This makes it useful when building tools that orchestrate other libraries' long-running operations and need to expose unified, user-configurable progress reporting.","worth_installing":"Yes, if you are building a library or tool that needs to expose progress or logging to users across multiple environments (console, notebook, web). The permissive MIT license and low install friction (tqdm only) make it a safe choice. The aging maintenance status is a minor concern, but the recent commit and active repository suggest it is still functional; verify test coverage and whether your use case aligns with the documented logger types before committing to it for mission-critical infrastructure."},"id":"proglog","links":{"html":"https://skillfed.io/packages/proglog","md":"https://skillfed.io/packages/proglog.md","pypi":"https://pypi.org/project/proglog/"},"maintenance":{"status":"aging"},"meta":{"latest_release":"2025-05-09","license_spdx":"MIT","license_treatment":"permissive","name":"proglog","python_support":"unspecified","summary":"Log and progress bar manager for console, notebooks, web..."},"popularity":{"monthly_downloads":7084385,"position":1789,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"0.1.12"}
