{"name": "Log Cleaner", "package_name": "log_cleaner", "version": "2.2.1", "experimental": false, "qgis_min": "3.28.0", "qgis_max": "4.99.0", "downloads": 105, "uploaded_by": "yadda07", "upload_datetime": "2026-08-17T10:24:55.974479", "changelog": "2.2.0 - Profile-wide cache cleaning:\r\n        - Cache scope extended from python/plugins to the whole\r\ncurrent profile: python/ (plugins, expressions, startup) and\r\nprocessing/\r\n        - Directory junctions and symlinks are followed, with loop\r\nprotection by device/inode identity\r\n        - Read-only bytecode is now deleted after clearing the\r\nread-only attribute\r\n        - Removes .pyo files and leftovers from interrupted CPython\r\nwrites (module.pyc.<pid>)\r\n        - Own __pycache__ is no longer skipped: it is safe to delete\r\nsince bytecode inside __pycache__ is never importable without its\r\nsource\r\n        - Directories left in place are counted, shown in the status\r\nmessage and logged with their exact reason\r\n        - Locked files (real failures) are reported separately from\r\nforeign content (kept on purpose)\r\n        - Reported path lists are capped to keep memory bounded\r\n        - New core/cache_paths.py: scan root resolution and\r\n__pycache__ enumeration\r\n        - 24 regression tests covering scope, junctions, read-only,\r\nlocked files and foreign content", "external_deps": null, "download_url": "https://plugins.qgis.org/plugins/log_cleaner/version/2.2.1/download/"}